From: sci.math on 22 Jun 2010 10:53 This Summer Microsoft has reignited a solution to the P Versus NP problem. Bill Gates had some years publicly at a conference said to an audience we dont know if P = NP however we do know the binary is available. It turns out the one who solved it, a 31 year-old Analyst working for one of the biggest Media Companies in the world (chose to remain anonymous). This is the code Microsoft put out as being sent to them by "WM" as they call him. Said Bill Gates, And I got a call from Steve [Ballmer] and Steve said, will you look at this, and when I did say yes, he started laughing." <begin MS-DOS code present in P Versus NP program in resolution> X:\Windows\RM>cmd /? Starts a new instance of the Windows command interpreter CMD [/A | /V] [/Q] [/D] [/E:ON | /E:OFF] [/F:ON | /F:OFF] [/V:ON | / V:OFF] [[/S] [C | /K] string] /C Carries out the command specified by string then terminates /K Carries out the command specified by string but remains /S Modifies the treatment of string after /C or /K <see below> /Q Turns echo off /D Disable execution of AutoRun commands from registry <see below> /A Causes the output of internal commands to a pipe or file to be ANSI /U Causes the output of internal commands to a pipe or file to be Unicode /T:fg Sets the foreground/background colors <see COLOR /? for more info> /E:ON Enable command extensions <see below> /E:OFF Disable command extensions <see below> /F:ON Enable file and directory name completion characters <see below> /F:OFF Disable file and directory environment variable expansion using ! as the delimiter. For example, /V:ON would allow !var! to expand the variable var at execution time, which is quite a different thing when inside of a FOR loop. Press any key to continue . . . _ loop. /V:OFF Disable delayed environment expansion. Note that multiple commands separated by the command separator '&&' are accepted for string if surrounded by quotes. Also, for compatibility reasons, /X is the same as /E:ON, /Y is the same as /E:OFF and /R is the same as /C. Any other switches are ignored. If /C or /K is specified, then the remainder of the command line after the switch is processed as a command line, where the following logic is used to process quote (' ') characters: 1. If all of the following conditions are met, then quote characters on the command line are preserved: -- no /S switch -- exactly two quote characters -- no special characters between the two quote characters, where special is one of: &< >< >@^! -- there are one or more whitespace characters between the two character groups -- the string between the two quote characers is the name of an executable file. Press any key to continue . . . _ 2. Otherwise, old behavior is to see if the first character is a quote character and if so, strip the leading character and remove the last quote character on the command line, preserving any text after the last quote character. If /D was NOT specified on the command line, then when CMD.EXE starts, it looks for the following REG_SZ/REG_EXPAND_SZ registry variables, and if either or both are present, they are executed first. HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor\AutoRun and/or HKEY_CURRENT_USER\Software\Microsoft\Command Processor\AutoRun Command Extensions are enabled by default. You may also disable extensions for a particular invocation by using the /E:OFF switch. You can enable or disable extensions for all invocations of CMD.EXE on a machine an/or user logon session by setting either or both of the following REG_DWORD values in the registry using REGEDIT.EXE: HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor \EnableExtensions Press any key to continue . . . _ and/or HKEY_CURRENT_USER\Software\Microsoft\Command Procesor \EnableExtension to either 0x1 or 0x0. The user specific setting takes precedence over the machine setting. The command line switches take precedence over the registry settings. In a batch file, the SETLOCAL ENABLEEXTENSIONS or DISABLEEXTENSIONS arguments takes precedence over the /E:ON or /E:OFF switch. See SETLOCAL /? for details. The command extensions involve changes and/or additions to the following commands: DEL or ERASE COLOR CD or CHDIR MD or MKDIR PROMPT PUSHD POPD SET SETLOCAL Press any key to continue . . . _ SETLOCAL ENDLOCAL IF FOR CALL SHIFT GOTO START (also includes changes to externam command invocation) ASSOC FTYPE To get specific details, type commandname /? to view the specifics. Delayed environment variable expansion is NOT enabled by default. You can enable or disable delayed environment variable expansion for a particular invocation of CMD.EXE with the /V:ON or /V:OFF switch. You can enable or disable delayed expansion for all invocations of CMD.EXE on a following REG_DWORD values in the registry using REGEDIT.EXE: HKEY_LOCAL_MACHINE\Software\Command Processor\DelayedExpansion and/or Press any key to continue . . . _ HKEY_CURRENT_USER\Software\Microsft\Command Processor \DelayedExpansion to either 0x1 or 0x0. The specific setting takes precedence over the machine setting. The command line switches take precedence over the registery settings. In a batch file the SETLOCAL ENABLEDELAYEDEXPANSION or DISABLEDELAYEDEXPANSION arguments takes precedence over the /V:ON or /V:OFF switch. See SETLOCAL /? for details. If delayed environment variable expansion is enabled, then the exclamation character can be used to substitute the value of environment variable at execution time. You can enable or disable file name completion for a particular invocation of CMD.EXE with the /F:ON or F:OFF siwtch. You can enable or disable completion for all invocation of CMD.EXE on a machine and/ or values in the registry using REGEDIT.EXE: HKEY_LOCAL_MACHINE\Software\Microsoft\Command Processor \CompletionChar HKEY_LOCAL_MACHINE\Softare\Microsoft\Command Processor \PathCompletionChar Press any key to continue . . . _ and/or HKEY_CURRENT_USER\Software\Microsoft\Command Processor \CompletionChar HKEY_CURRENT_USER\Software\Microsoft\Command Processor \PathCompletionChar with the hex value of a control character to use for a particular function (e.g. 0x4 is a Ctrl-D and 0x6 is Ctrl-F). The user specific settings take precedence over the machine setting. The command line switches take precedence over the registry settings. If completion is enabled with /F:ON switch, the two control characters used are Ctrl-D for directory name completion and Ctrl-F for the registry, use the value for pace (0x20) as it is not a valid control character. Completion is invoked when you type either of the two control characters. The completion function takes the path string to the left of the cursor appends a wild card character to it if none is already present and builds up a list of paths match. It then displays the first matching path. Thereafter, repeated pressing of the same control character will cycle thruogh the list of matching paths. Pressing the Press any key to contine . . . _ present and builds up a list of paths match It then displays the first maching path. If no paths match, it just beeps and leaves the display alone. Thereafter, repeated pressing of the same control character will cycle through the list of matching paths. Pressing the Shift key with the control character will move through the list backwards. If you edit the line in any way and press the control character again, the saved list of matching paths is discarded and a new one generated. The same occurs if you switch between file and directory name completion. The only difference between the two control characters is the file completion character matches bothfile and directory names, while the directory completion character only matches directory names. If file completion is used on any of the build in directory commands (CD, MD or RD) then directory completion is assumed. The completion code deals correctly with file names contain spaces or other special characters by placing quotes around the matching path. Alsok if ou back up, then invoke the completion from within a line, the text to the right of the cursor at the point completion was ivoked is discarded. The special characters require quotes: <space> &<>[]<>^=;'+,'~ X:\Windows\RM^A <end MS-DOS code present in P Versus NP program in resolution> [pressing return after 'A' singular OS] <!--- Base/Calendar API Cold Fusion Event Search Demonstration by Marc Scaletta This is completely open - feel free to use it however you please. ---> <html> <head> <title>Google Base/Calendar Event Scheduler</title> <style type="text/css"> a { text-decoration: none; } a:hover { text-decoration: underline; } </style> </head> <body link="#1122CC" bgcolor="#AABBCC"> <cfif (isdefined("addtocal"))> <!--- If we're adding the current data to the calendar, skip the search and process that data --- > <cfif isdefined("when")> <!--- If there's a date... ---> <cfset startdate=trim(mid(when, 1, find(" ", when)))> <!--- Start date starts at the beginning, ends at the first space ---> <cfset enddate=trim(mid(when, find(" ", when) + 1, len(when)))> <!--- End date is the rest of it ---> <cfif startdate EQ ""> <!--- If the event JUST has a start date, startDate will be empty right now ---> <cfif mid(enddate, 12, 8) EQ "00:00:00"> <!--- If enddate has no time specified, chop it off ---> <cfset enddate = mid(enddate, 1, 10)> <cfelse> <!--- If there is a time, chop the "z" off the end so Calendar uses the local time zone ---> <cfset enddate=mid(enddate, 1, len(enddate) -1)> </cfif> <cfset startdate = enddate> <cfelse> <!--- Event has both start end end times, chop off the "z" ---> <cfset startdate=mid(startdate, 1, len(startdate) -1)> <cfset enddate=mid(enddate, 1, len(enddate) -1)> </cfif> </cfif> <!--- Set up the initial Calendar XML entry ---> <cfset xmlentry="<entry xmlns='http://www.w3.org/2005/Atom' xmlns:gd='http://schemas.google.com/g/2005'> <category scheme='http:// schemas.google.com/g/2005##kind' term='http://schemas.google.com/g/ 2005##event'></category> <title type='text'>#urldecode(title)#</ title>"> <cfif isdefined("link")> <!--- If there's a link, add it to the entry ---> <cfset xmlentry = xmlentry & "<content type='text'><! [CDATA[#urldecode(link)#]]></content>"> </cfif> <cfif isdefined("where")> <!--- If there's a location, add it to the entry ---> <cfset xmlentry = xmlentry & "<gd:where valueString='#urldecode(where)#'></gd:where>"> </cfif> <cfif isdefined("when")> <!--- If there's a time, add it to the entry ---> <cfset xmlentry = xmlentry & "<gd:when startTime='#startdate#'"> <cfif startDate NEQ endDate> <cfset xmlentry = xmlentry & " endTime='#enddate#'"> </cfif> <cfset xmlentry = xmlentry & "></gd:when>"> </cfif> <cfset xmlentry = xmlentry & "</entry>"> <!--- Send the entry to Google Calendar ---> <cfhttp url="http://www.google.com/calendar/feeds/default/private/ full" method="post" redirect="no"> <cfhttpparam type="header" name="Content-Type" value="application/atom+xml"> <cfhttpparam type="header" name="Authorization" value="AuthSub token=#token#"> <cfhttpparam type="Body" value="#xmlentry#"> </cfhttp> <cfoutput> <!--- Debugging code - checking HTTP status code and other information ---> <!--- <font size=-1>#cfhttp.header#<br>#cfhttp.statusCode#<br><br>#title#<br>#where#<br>#when#<br><br></ font> ---> <cfif ((left(cfhttp.statusCode,3) EQ "302"))> <!--- If Google Calendar gives us a redirect, redirect ---> <cfset redir=#cfhttp.responseHeader["location"]#> <!--- Get redirect location ---> <cfhttp url="#redir#" method="post" redirect="no"> <!--- Send the old entry to the new location ---> <cfhttpparam type="header" name="Content-Type" value="application/atom+xml"> <cfhttpparam type="header" name="Authorization" value="AuthSub token=#token#"> <cfhttpparam type="Body" value="#xmlentry#"> </cfhttp> <center> <font size=+2 color="##4466DD" face="verdana"><b>CalendarMeIn</b></ font><br> Google Base/Google Calendar Event Scheduler <font color="##787878">BETA</font> <br><br><br><br>The event "#title#" has been added to your calendar! <br><br> <a href="http://calendar.google.com">View Calendar</a> <br> <a href="eventscheduler.cfm?token=#token#&search=1">Back to Event Search</ a> </center><br><br> <!--- If Calendar returns a "500", "404" or "400" code, we have a problem... ---> <cfelseif ((left(cfhttp.statusCode,3) EQ "500") or (left(cfhttp.statusCode,3) EQ "400") or (left(cfhttp.statusCode,3) EQ "404"))> <b><font size=+1>Unable to add event to Google Calendar. Please make sure you have a Google Calendar account set up and that you are logged into it. Please visit <a href="http://calendar.google.com" target="_blank">calendar.google.com</a> to sign up, then refresh this page to try again.</font></b> <cfelse> Error - status:<br> #cfhttp.header# </cfif> <!--- More debugging code ---> <!--- #xmlentry#<br> <font size=-1>#cfhttp.header# - #cfhttp.filecontent#</font> ---> </cfoutput> <cfelseif (isdefined("token") or isdefined("Cookie.calendartoken"))> <!--- If "token" is defined or if the token cookie exists, we can proceed ---> <cfif isdefined("Cookie.calendartoken")> <!--- If there's a cookie with the token in it, grab it ---> <cfset token = Cookie.calendartoken> <cfset search="1"> <!--- Tells the app that we DO have a reusable token ---> </cfif> <cfif not isdefined("search")> <!--- If we don't have a reusable token, upgrade the one we have ---> <cfoutput> <cfhttp method="get" url="http://www.google.com/accounts/ AuthSubSessionToken"> <cfhttpparam type="header" name="Content-Type" value="application/atom+xml"> <cfhttpparam type="header" name="Authorization" value="AuthSub token=#token#"> <cfhttpparam name="X-Google-Key" type="Header" value="key=CMvMkYLGFRDV8Omq-_____8BGJv3tDY"> </cfhttp> <cfset tk = cfhttp.fileContent><br> <cfset startindex=find("=", tk)> <cfset endindex=len(tk)> <cfset token=trim(mid(tk,startindex+1,endindex))> <cfcookie name="calendartoken" value=#token#> <!--- Once we get the token, set a session cookie so we don't have to keep getting it ---> </cfoutput> </cfif> <br> <FORM name="gbsearch" action="eventscheduler.cfm"> <!--- Submits the query to this same form, getting the Base results ---> <table border="0" cellspacing="6" cellPadding="0" align=center> <tr><td rowspan="3" valign="top" width=200> <div style='padding:1px; width: 100%;border:1px solid black;text- align:center;background-color:#F1F1FF;'> <font size=+2 color="#4466DD" face="verdana"><b>CalendarMeIn</b></ font><br> Google Base/Google Calendar Event Scheduler <font color="#787878">BETA</font></div></td> <td rowspan="3"> </td> <td style="font-size:80%"> Event Type: <br><select name="eventType"> <option value="">All</option> <option value="Art ">- Art</option> <option value="Class OR Lesson OR Lecture">- Classes and Lectures</option> <option value="Comedy OR Stand-up OR Standup ">- Comedy</option> <option value="Food OR Cuisine ">- Food</option> <option value="Festival OR Fair ">- Festivals and Fairs</option> <option value="Music OR Concert ">- Music</option> <option value="Reading OR Signing ">- Readings and Signings</ option> <option value="Shopping OR Sale OR Market ">- Shopping</option> </select> or other: <INPUT name="textQuery" type="text" size="20" <cfoutput><cfif isdefined("textQuery")>value="#textQuery#"</cfif></ cfoutput>> <button type="submit" >Search for events</ BUTTON></td></tr> <tr> <td style="font-size:80%"> Location:<br> <select name="miles"> <option value="5">Within 5 miles</option> <option value="10">Within 10 miles</option> <option value="25">Within 25 miles</option> <option value="50">Within 50 miles</option> </select> of <input name="location" type="text" size="20" <cfoutput><cfif isdefined("location")>value="#location#"</cfif></ cfoutput>><font color="#222222"> (leave blank for anywhere)</font> </td> </tr> <tr><td style="font-size:80%"> When:<br><select name="dateMonth"> <option value="00">Any</option> <option value="01">January</option> <option value="02">February</option> <option value="03">March</option> <option value="04">April</option> <option value="05">May</option> <option value="06">June</option> <option value="07">July</option> <option value="08">August</option> <option value="09">September</option> <option value="10">October</option> <option value="11">November</option> <option value="12">December</option> </select> <select name="dateDay"> <option value="00">Any</option> <option value="01">1</option> <option value="02">2</option> <option value="03">3</option> <option value="04">4</option> <option value="05">5</option> <option value="06">6</option> <option value="07">7</option> <option value="08">8</option> <option value="09">9</option> <option value="10">10</option> <option value="11">11</option> <option value="12">12</option> <option value="13">13</option> <option value="14">14</option> <option value="15">15</option> <option value="16">16</option> <option value="17">17</option> <option value="18">18</option> <option value="19">19</option> <option value="20">20</option> <option value="21">21</option> <option value="22">22</option> <option value="23">23</option> <option value="24">24</option> <option value="25">25</option> <option value="26">26</option> <option value="27">27</option> <option value="28">28</option> <option value="29">29</option> <option value="30">30</option> <option value="31">31</option> </select> <select name="dateYr"> <option value="2006">2006</option> <option value="2007">2007</option> <option value="2008">2008</option> <option value="2009">2009</option> <option value="2010">2010</option> </select> </td> </tr> </table> <input type=hidden name="token" <cfoutput>value="#token#"</ cfoutput>> <input type=hidden name="search" value="1"> </FORM> <cfif not isdefined("st")> <!--- Set up the search index ---> <cfset st = "0"> </cfif> <cfoutput> <!--- Initial query string setup ---> <cfset queryString="http://www.google.com/base/feeds/snippets?start- index=#1 + st * 15#&max-results=15&bq="> </cfoutput> <cfif isdefined("location")> <!--- If this field is present, then we have an actual search query ---> <cfif isdefined("textQuery")> <!--- If the user wants to refine by text, add it ---> <cfset querystring = queryString & eventType & textQuery & " "> </cfif> <cfset queryString = queryString & "[item type:events and activities] "> <!--- Restrict items to events ---> <cfoutput> <cfif location NEQ ""> <!--- If location actually has a value, add it ---> <cfset queryString = queryString & "%5Blocation%3A%40%22#location# %22%2B#miles#mi%5D"> </cfif> </cfoutput> <!--- Only return items AFTER today ---> <cfset queryString = queryString & "[event_date_range > " & dateformat(now(), "YYYY-MM-DD") & "] "> <cfif (dateDay EQ "00") or (dateMonth EQ "00") or (dateYr EQ "0000")> <!--- If user specified a date range, add that too ---> <cfif (dateDay EQ "00") and (dateMonth EQ "00") and (dateYr EQ "0000")> No date specified!<br> <cfelseif (dateDay EQ "00") and (dateMonth EQ "00")> <cfset queryString = queryString & "[event_date_range: #dateYr#Z]"> <cfelseif (dateDay EQ "00")> <cfset queryString = queryString & "[event_date_range: #dateYr#- #dateMonth#Z]"> </cfif> <cfelse> <cfset queryString = queryString & "[event_date_range: #dateYr#- #dateMonth#-#dateDay#Z]"> </cfif> <!--- If you want to restrict to results from one provider, you can enter the CID here. The easiest way to find the CID is to search for an item from them on Google Base, then click "all items from this author" then copy the value in the "authorid=" field in the URL. ---> <!--- <cfset queryString = queryString & " [customer id: CustomerIdValue]"> ---> <!--- Text used for debugging, shows entire query string ---> <!--- <cfoutput>#queryString#</cfoutput> ---> <cfoutput> <br><br><center> <cfhttp method="Get" url="#queryString#"> <!--- Send out the query to Base ---> <cfhttpparam name="X-Google-Key" type="Header" value="key=CMvMkYLGFRDV8Omq-_____8BGJv3tDY"> </cfhttp> <cfset resultsList = xmlparse(cfhttp.fileContent)> <!--- More debugging code, dumps the XML results ---> <!--- <cfdump var="#resultsList#"> ---> <br> </cfoutput> <cfif isdefined("resultsList.feed.entry")> <!--- If there are results, display them ---> <div style='padding:0px; width: 72%;background-color:#555555;'> <cfloop index="loopIndex" from="1" to="#arraylen(resultsList.feed.entry)#"> <cfset currentResult = resultsList.feed.entry[loopIndex]> <!--- Store the current product in a temporary variable ---> <cfoutput> <cfset addEventURL="http://www.dealmein.net/basecalendar/ eventscheduler.cfm? addtocal=1&token=#token#&title=#urlencodedformat(currentResult.title.xmltext)#"> <cfif isdefined("currentResult.location")> <!--- If there's a location, add it to the query ---> <cfset addEventURL=(addEventURL & "&where=#urlencodedformat(currentResult.location.xmltext)#")> </cfif> <cfif isdefined("currentResult.event_date_range")> <!--- If there's a date, add it to the query and format the dates for display ---> <cfset addEventURL=(addEventURL & "&when=#urlencodedformat(currentResult.event_date_range.xmltext)#")> <cfset startdate=trim(mid(currentResult.event_date_range.xmltext, 1, find(" ", currentResult.event_date_range.xmltext)))> <cfset enddate=trim(mid(currentResult.event_date_range.xmltext, find(" ", currentResult.event_date_range.xmltext) + 1, len(currentResult.event_date_range.xmltext)))> <cfif startdate EQ ""> <cfset startdate = enddate> </cfif> </cfif> <cfif isdefined("currentResult.link")> <!--- If there's a link, add it to the query ---> <cfset addEventURL=(addEventURL & "&link=#urlencodedformat(currentResult.link.xmlattributes.href)#")> </cfif> <div style='padding:3px;border:1px solid darkblue;background- color:##AABBFF;text-align:left;position: relative;top: -5px;left: -3px;'><b> #currentResult.title.xmltext#</b></div> <div style='background-color:##F1F1FF;border:1px solid gray;position: relative;top:-1px;left:-1px;'> <table width="98%" cellpadding="2" cellspacing="2"><tr><td><font size=-1> <b>Link:</b> <a href="#currentResult.link.xmlattributes.href#">#currentResult.link.xmlattributes.href#</ a><br> <cfif isdefined("currentResult.location")> <!--- If there's a location, display it ---> <b>Where:</b> <a href="http://maps.google.com/maps? f=q&hl=en&q=#urlencodedformat(currentResult.location.xmltext)#">#currentResult.location.xmltext#</ a><br> </cfif> <cfif isdefined("currentResult.event_date_range")> <!--- If there are dates, format and display them ---> <cfif startdate NEQ enddate> <cfset startyear=mid(startdate, 1, 4)> <cfset startmonth=mid(startdate, 6, 2)> <cfset startday=mid(startdate, 9, 2)> <cfset starttime=mid(startdate, 12,5)> <cfset endyear=mid(enddate, 1, 4)> <cfset endmonth=mid(enddate, 6, 2)> <cfset endday=mid(enddate, 9, 2)> <cfset endtime=mid(enddate, 12,5)> <b>When:</b> #startmonth#/#startday#/#startyear# #starttime# - #endmonth#/#endday#/#endyear# #endtime#<br><br> <cfelse> <cfset startyear=mid(startdate, 1, 4)> <cfset startmonth=mid(startdate, 6, 2)> <cfset startday=mid(startdate, 9, 2)> <b>When:</b> #startmonth#/#startday#/#startyear#<br><br> </cfif> </cfif> <cfif #currentResult.content.xmltext# EQ ""> <!--- If there is a value in the description, display it ---> <b>Description:</b> (no description given) <cfelse> <b>Description:</b> #currentResult.content.xmltext# </cfif> </font><br><br></td><td rowspan="2" width="5%"> <center><a href="#addEventURL#"><img src="calendar.jpeg" alt="Add to calendar" border="0" align="center"><br><font size="-2" face="verdana">Add To<br>Calendar</font></a></center> </td></tr></table> </div> </cfoutput> </cfloop> </div> <cfoutput><br> <cfif not st LT 1> <!--- Display "previous" and "next" links ---> <a href="eventscheduler.cfm? token=#token#&search=1&st=#st-1#&location=#location#&textQuery=#textQuery#&dateMonth=#dateMonth#&dateDay=#dateDay#&dateYr=#dateYr#&eventType=#eventType#&miles=#miles#"><font color="##111177">(Previous Page)</font></a> </cfif> <cfif ((st+1) * 15) LT #resultsList.feed.totalResults.XMLText#> <a href="eventscheduler.cfm?token=#token#&search=1&st=#st +1#&location=#location#&textQuery=#textQuery#&dateMonth=#dateMonth#&dateDay=#dateDay#&dateYr=#dateYr#&eventType=#eventType#&miles=#miles#"><font color="##111177">(Next Page)</font></a> </cfif> </cfoutput> <cfelse> <!--- If there are no results, tell the user ---> Unfortunately, no results matching your query were able to be found.<br><br> <b>Tips:</b><br> - Try using a more general search term, or a search category instead.<br> - Make sure your date is not in the past, and not too far into the future.<br> - Make sure your location is spelled correctly.<br> </cfif> <br><br><br><br> <font size=-1>Search results by the awesome power of <a href="http://base.google.com">Google Base</a>!</font> </cfif> <cfelse><br><br> <!--- If there's not even an initial one-use token set up, authorize---> <centeR>In order for the Google Base/Calendar event scheduler to work, you'll <br>need to approve access to your Calendar account for this website. <br>Please <a href="https://www.google.com/accounts/ AuthSubRequest?next=http://www.people4m.com/basecalendar/ eventscheduler.cfm&scope=http%3A%2F%2Fwww.google.com%2Fcalendar%2Ffeeds %2F&session=1&secure=0">click here</A> to authorize.<br><hr width=20%><br><b>Security information:</b> This application uses Google Base to search for events, and allows you to add them to your Google Calendar by simply clicking a button next to the search listing. In order to do this, this site must be allowed write access to your Google Calendar account. We do this by redirecting you to an authorization page on Google.com, which will pass back to us a unique key that we can use to write to your Calendar. Our site will never see any part of your Google Account information, and we do not store access keys on our server - they're used only through URL parameters and local cookies. More information about Google Account Authentication can be found <a href="http://code.google.com/apis/ accounts/AuthForWebApps.html">here</a>. Access can be revoked at any time through your "my accounts" page on Google. </cfif> </body> </html>
From: porky_pig_jr on 22 Jun 2010 13:47 On Jun 22, 10:53 am, "sci.math" <marty.musa...(a)gmail.com> wrote: > This Summer Microsoft has reignited a solution to the P Versus NP > problem. To Pee or To Not Pee: this is the question.
|
Pages: 1 Prev: Geometry terminology Next: First off Han, if you want to be right, it's "Time is reflexive." |