U.S. patent number 5,983,227 [Application Number 08/873,975] was granted by the patent office on 1999-11-09 for dynamic page generator.
This patent grant is currently assigned to Yahoo, Inc.. Invention is credited to Farzad Nazem, Ashvinkumar P Patel.
United States Patent |
5,983,227 |
Nazem , et al. |
November 9, 1999 |
Dynamic page generator
Abstract
An custom page server is provided with user preferences
organized into templates stored in compact data structures and the
live data used to fill the templates stored local to the page
server which is handing user requests for custom pages. One process
is executed on the page server for every request. The process is
provided a user template for the user making the request, where the
user template is either generated from user preferences or
retrieved from a cache of recently used user templates. Each user
process is provided access to a large region of shared memory which
contains all of the live data needed to fill any user template.
Typically, the pages served are news pages, giving the user a
custom selection of stock quotes, news headlines, sports scores,
weather, and the like. With the live data stored in a local, shared
memory, any custom page can be built within the page server,
eliminating the need to make requests from other servers for
portions of the live data. While the shared memory might include
RAM (random access memory) and disk storage, in many computer
systems, it is faster to store all the live data in RAM.
Inventors: |
Nazem; Farzad (Redwood City,
CA), Patel; Ashvinkumar P (Milpitas, CA) |
Assignee: |
Yahoo, Inc. (Santa Clara,
CA)
|
Family
ID: |
25362722 |
Appl.
No.: |
08/873,975 |
Filed: |
June 12, 1997 |
Current U.S.
Class: |
1/1; 709/217;
707/E17.117; 715/206; 715/205; 707/999.01; 707/999.104 |
Current CPC
Class: |
G06F
16/972 (20190101); G06F 40/186 (20200101); G06F
16/9537 (20190101); G06F 40/166 (20200101); G06F
40/197 (20200101); G06F 40/143 (20200101); G06Q
30/02 (20130101); Y10S 707/99945 (20130101); Y10S
707/99933 (20130101); H04W 4/02 (20130101); H04L
67/18 (20130101) |
Current International
Class: |
G06F
17/30 (20060101); G06F 017/30 () |
Field of
Search: |
;707/10,104,200,500,513,517 ;395/200.47,200.48,200.49
;705/1,10 |
References Cited
[Referenced By]
U.S. Patent Documents
Foreign Patent Documents
|
|
|
|
|
|
|
0749081A1 |
|
Dec 1996 |
|
EP |
|
WO 97/17662 |
|
May 1997 |
|
WO |
|
Other References
Garris, John, "Grab That Database", PC Magazine, vol. 15, No. 15,
Sep. 10, 1996, p. NE1-NE7. .
Chesnais et al., "The Fishwrap Personalized News System", IEEE,
D-7803-27560X/95, Jun.,1995, pp. 275-282. .
Yuri Quintana, University of Western Ontario, "Knowledge-Based
Information Filtering of Financial Information," XP-002057953, May,
1997, pp. 279-285..
|
Primary Examiner: Lintz; Paul R.
Attorney, Agent or Firm: Albert; Philip H. Townsend and
Townsend and Crew LLP
Claims
What is claimed is:
1. A server system for serving a customized information page to a
user at a browser on request, comprising:
a database of user configurations;
means for obtaining information from the user referencing a record
in the database of user configurations, the record being a record
for the user;
means for generating a template based on the record for the
user;
a plurality of user processes, one process per user accessing the
server system;
a shared memory;
a data structure within the shared memory for storing the dynamic
information needed to generate the customized information page;
response means for responding to a request with an information page
containing dynamic information from the data structure formatted
according to the template generated for the user making the
request;
configuration generating means for generating default user
configurations based on user demographic information, including
means for determining a default list of cities for a weather report
and sports teams for sports reporting based on the user demographic
information, wherein the means for determining the default list of
cities and default lists of sports teams uses user postal code
information;
means for translating postal code information to user geographic
position;
means for comparing the user geographic position to geographic
positions assigned to each city and sports team; and
means for determining a threshold distance from the user geographic
position that is greater than or equal to a distance to a
predetermined nonzero number of cities and a predetermined nonzero
number of sports team geographic positions.
2. Using a page server, a method of providing real-time responses
to user requests for customized pages, the method comprising the
steps of:
obtaining user preferences, wherein a user's user preferences
indicate items of interest to that user;
obtaining real-time information from information sources;
storing the real-time information in a storage device;
combining the user preferences for the user and a template to form
a template program specific to the user;
receiving, from a user and at the server, a user request for a
customized page customized according to the user preferences;
executing the template program specific to the user using the
real-time information stored in the storage device as input to the
template program to generate the customized page; and
providing the user with the customized page, wherein the steps of
executing and providing are performed in real-time response to
receipt of the user request in the step of receiving and wherein
the customized page includes at least one item of real-time
information selected from the storage device.
3. The method of claim 2, wherein the real-time information
comprises stock quotes, sports scores and news headlines.
4. The method of claim 2, wherein the step of storing the real-time
information in a storage device is a step of storing the real-time
information in a memory having a capacity to simultaneously contain
all of the real-time information that could be required for
execution of the template program.
5. The method of claim 2, wherein the server simultaneously handles
more than one thousand user requests using a plurality of servers,
the method further comprising a step of assigning a user request to
one of the plurality of servers.
6. The method of claim 2, further comprising a step of template
programs for users for whom user requests have been recently
serviced.
7. The method of claim 2, further comprising a step of generating a
default user configuration for a user based on demographic
information of that user.
8. The method of claim 7, wherein the step of generating a default
user configuration comprises the steps of:
determining a default list of cities for a weather report based on
user demographic information; and
determining one or more sports teams for sports reporting based on
user demographic information.
9. The method of claim 8, wherein the steps of determining comprise
the steps of:
obtaining user postal code information;
translating the postal code information to user geographic
position;
comparing the user geographic position to geographic positions
assigned to each city and sports team; and
determining a threshold distance from the user geographic position
which is greater than or equal to a distance to a predetermined
nonzero number of cities and a predetermined nonzero number of
sports team geographic positions.
Description
COPYRIGHT NOTICE
A portion of the disclosure of this patent document contains
material which is subject to copyright protection. The copyright
owner has no objection to the xerographic reproduction by anyone of
the patent document or the patent disclosure in exactly the form it
appears in the Patent and Trademark Office patent file or records,
but otherwise reserves all copyright rights whatsoever.
BACKGROUND OF THE INVENTION
The present invention relates to the field of customized
information presentation. More specifically, one embodiment of the
invention provides a custom page server which can quickly serve
custom pages and is scalable to handle many users
simultaneously.
Web servers for serving static documents ("Web pages") over the
global Internet are known. While static documents are useful in
many applications where the information to be presented to each
requesting user is the same, some applications require
customization to appeal to users. For example, in presenting news
to users, custom pages present news which is more relevant to the
requesting users than static pages. With static pages, a user will
often have to scroll through many topics not of interest to that
user to get to the information of interest. With custom pages, the
information is filtered according to each user's interest.
Customizing a server response based on the requester is known,
however known systems do not scale well. One method of serving
custom pages is to execute a script, such as a CGI (Common Gateway
Interface) script, or other program to collect the information
necessary to generate the custom page. For example, if the custom
page is a news page containing stock quotes, sports scores and
weather, the script might poll a quote server to obtain the quotes
of interest, poll a sports score server to obtain the scores of
interest and poll a weather server to obtain the weather. With this
information, the server generates the custom page and returns it to
the user. This approach is useful where there are not many
requesters and where the attendant delay is acceptable to users.
While it may be the case that current users are willing to wait
while pages load in their browsers, growing impatience with waiting
will turn users away from such servers, especially as use
increases.
One approach to avoiding long waits is to transfer the custom
information in non-real-time, so that the information is stored
local to the user as it arrives and is presented to the user on
request. A disadvantage of such a system is that the networks used
by the user become clogged with data continually streaming to the
user and require large amounts of local storage. Another
disadvantage is that the locally stored information will become out
of date as the server receives new data.
From the above it is seen that an improved system for delivering
custom pages is needed.
SUMMARY OF THE INVENTION
An improved custom page server is provided by virtue of the present
invention. In one embodiment, user preferences are organized into
templates stored in compact data structures and the live data used
to fill the templates is stored local to the page server which is
handing user requests for custom pages. One process is executed on
the page server for every request. The process is provided a user
template for the user making the request, where the user template
is either generated from user preferences or retrieved from a cache
of recently used user templates. Each user process is provided
access to a large region of shared memory which contains all of the
live data needed to fill any user template. Typically, the pages
served are news pages, giving the user a custom selection of stock
quotes, news headlines, sports scores, weather, and the like. With
the live data stored in a local, shared memory, any custom page can
be built within the page server, eliminating the need to make
requests from other servers for portions of the live data. While
the shared memory might include RAM (random access memory) and disk
storage, in many computer systems, it is faster to store all the
live data in RAM.
If the volume of requests becomes too great for one page server to
handle, the system is easily scaled by adding additional page
servers. Each page server maintains its own copy of the live data
in its shared memory, and needs to maintain only the user templates
for the requests it is handling, so no communication between page
servers is needed.
A further understanding of the nature and advantages of the
inventions herein may be realized by reference to the remaining
portions of the specification and the attached drawings.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram of a client-server architecture according
to one embodiment of the present invention;
FIG. 2 is a schematic diagram showing how a user's custom page is
generated from a user configuration, a global template and live
data.
FIG. 3 is an illustration of a global front page template as might
be used to generate user templates.
FIG. 4 is an illustration of a user template generated from the
global front page template of FIG. 3 as might be used to generate a
custom user page.
FIG. 5 is an illustration of a user page generated using the global
template of FIG. 4.
FIG. 6 is an illustration of how intelligent defaults are
selected.
Two appendices are included at the end of this description.
Appendix A is a full listing of the user template shown in part in
FIG. 4. Appendix B is an HTML source code listing of the HTML page
used to generate the browser display shown in FIG. 5.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
FIG. 1 shows a client-server system 100 which is used to display
custom news pages. A custom news page is displayed on a browser 102
which obtains the page from a page server 104 via Internet 106.
While only one browser 102 is shown, a typical system will have
many browsers connecting and disconnecting to the system.
The art of client-server systems using HTTP (HyperText Transport
Protocol) messaging or other protocols is well known and will not
be addressed in detail here. Essentially, browser 102 makes a
request for a particular page by specifying a Uniform Resource
Locator ("URL") for the page. In the example shown in FIG. 1, the
request is directed to the URL "http:/my.yahoo.com/". Normally,
this URL is directed to the root directory of a machine named
my.yahoo.com. As is the convention in Internet communications,
browser 102 submits the domain portion ("my.yahoo.com") of the URL
to a name server, such as name server 108, to determine an actual
address for the page server 104. Name server 108 returns an IP
(Internet Protocol) address to browser 102 directing it to a page
server 104. Where multiple page servers 104 are used, name server
108 returns IP addresses in a round-robin fashion to distribute the
load over multiple page servers. Alternatively, name server 108
might distribute the load more deterministic by tracking browser
addresses and hashing the browser address to select a page server
104. It is deterministic in that any given browser always accesses
the same page server 104. This allows for more efficient caching of
user templates, since more cache hits are likely where a given
browser always returns to one page server.
When a page server receives the URL for its root directory, it
interprets that as a request for the user's custom summary page.
The user is determined not from the URL, but from a "cookie"
provided by browser 102 with the URL. Cookies are strings of data
stored by browsers and sent along with any request to a URL having
a domain associated with the cookie.
Page servers 104 obtain the live data from many disparate sources
and reformat the data into a form suitable for use by the page
server. Page servers 104 are coupled, via a network, to edit
servers 112, which are used when a user changes his or her user
template. The user templates are stored in a user configuration
database 116 and are stored and provided to edit servers by a
network appliance 114 written for this purpose. Network appliance
114 is a process tuned to quickly locate files in large directories
(N400 files/directory) and return them to the edit servers or page
servers. One embodiment of network appliance 114 is the F330
fault-tolerant scalable server supplied by Network Appliance, of
Mountain View, Calif.
In a specific embodiment, page servers 104 are microcomputers
running the Unix.RTM. operating system with 64 to 128 megabytes of
shared memory, page servers 104 and edit servers 112 are coupled
using TCP/IP (Transport Control Protocol/Internet Protocol) and the
user configuration database 116 is a Unix file structure which
stores each user configuration in a text file. The particular file
used by a user is a combination of the user's user name and a hash
result, to allow for quick access when many user configurations are
stored. For example, the user configuration for summary "front"
page for a user "ash802" might be stored at /de/13/y.ash802, where
"de" and "13" are hash results of a hash of the user name
"ash802".
FIG. 2 shows in more detail the generation of a custom page for a
user, using a front page generator 200 and page server 104. Front
page generator 200 generates a user template 202 from a global
front page template 204 and a user configuration record 206. FIG. 3
shows an example of a global front page template. User
configuration record 206 is a record selected from user
configuration database 116. The record might have been obtained
from a cache, but in the preferred embodiment, the records are not
cached, the user templates are.
Page server 104 is shown comprising a page generator 210, a shared
memory 212 for storing live data and a cache 214 for caching user
templates such as user template 202. Page generator 210 generates a
custom front page 218 from a user template and the live data stored
in shared memory 212. Although not shown, custom pages other than
the front page can be generated in a similar fashion. Using user
templates and a shared memory for the live data, page server 104
can quickly build custom pages in response to a user request. Where
the user template is cached, the page can be generated entirely
within page server 104.
Shared memory 212 is organized as a set of memory mapped files.
With memory mapped files, the operating system maintains the data
in permanent storage, but permanently caches the files in shared
memory 212. This allows for quick recovery should a page server
crash, since all of the shared memory can simply be reloaded from
the permanent storage. This is a great feature from a user
convenience standpoint, since the user will never be faced with a
situation where they have to wait for a server to rebuild a page
for them by querying the various data providing servers, such as
sports server 230, stock server 232 and news server 234. As should
be apparent from this description and FIG. 2, page generator 210
can generate custom front page 218 much more quickly using shared
memory 212 as compared with using servers 230, 232, 234 and page
template 202. One reason for this is that the time it takes to
retrieve data from shared memory 212 does not appreciably increase
relative to the bandwidth delay time when more data is retrieved.
For example, if stock server 232 were queried for each individual
stock quote, a page with fifty stock quotes might take ten times as
long to generate as a page with five stock quotes.
One aspect of the present invention is the realization that every
piece of information a person can request on a page is storable in
a shared memory closely coupled to a page generator. For example,
page server 104 shown in FIG. 2 can accommodate 65,000 different
symbols for which quotes are provided. In one embodiment, all of
the stock information for all 65,000 symbols is stored in a 13 to
14 megabytes section of the shared memory. Where shared memory 212
is a 64 MB or 128 MB memory, this leaves sufficient room for other
data, such as news headlines, sport scores, and memory used by the
operating system for each process running on page server 104. In
some embodiments, shared memory 212 is large enough to also
accommodate more than just news headlines. For example, news
summaries (as described further in connection with FIG. 5) can be
stored in shared memory 212 for quick access.
As shown in FIG. 2, the user's front page template 202 does not
need to be generated each time, but rather is stored in cache 214.
In a preferred embodiment, user templates are stored in cache 214
for long enough to be reused. Some users might choose to access
their front page only infrequently, while others might choose to
access their front page hourly. Since the pages are customized and
dynamic, the user would see different information each time, but
the same user template would be used each time. Of course, when the
user edits his or her template, any cached copy of a user template
is flushed. A garbage-collection process may also flush the cache
of user pages which have been inactive for several days. In one
implementation, cache 214 would accommodate 60,000 to 70,000 user
templates. Where a particular page server is assigned on a random
round robin basis, multiple page servers may cache their own copy
of a given user template, but where a user is directed always to a
particular server (except in the case where the particular server
fails and a secondary server is used), that page server will be the
only one which needs to cache that users user template. Even where
the round robin name server scheme is used, some browsers may cache
IP addresses, even longer than the specified "time to live"
variable associated with the IP address, in order to save the time
required to obtain an IP address each time. With such a browser,
the user is effectively directed to the same page server each time
and the server side of the page serving system does not need to
direct users to particular page servers. With newer browsers,
however, the "time to live" variable is honored and new requests
are made for IP addresses after the "time to live" has expired. In
these cases, if the assignment of a user to a single page server is
desired, name server 108 (see FIG. 1) will use the user name from
the provided cookie or the user's IP address to assign a page
server based on a hash of the user name or IP address.
FIG. 3 is an illustration of global user template 204. Global user
template 204 is an HTML (HyperText Markup Language) document with
additional tags as placeholders for live data. Several placeholders
302 are shown in FIG. 3.
FIG. 4 is an illustration of user template 202 as might be
generated from global user template 204 (see FIG. 3) and a user
configuration record 206. A full listing of user template 202 is
included herewith in Appendix A. User template 202 is determined by
the user configuration and is independent of the live data,
therefore it can be cached without needing to be updated, unless
the user chooses to edit the configuration information. Preferably,
the user templates are cached rather than the user configuration,
to save a step and reduce the time to respond to a request for the
page. Caching is more effective where the typical user makes
several requests in a short time span and then doesn't make any
requests for a long period of time.
Essentially, user template 202 contains the information about the
user which does not change until the user changes his or her
preferences. Of course, the system operator could choose to make
changes to how the system operates, thus requiring changes to the
user preferences and user templates. User template 202 is shown
comprising internal variables such as a time zone and demographic
information. The demographic information, on the second line in
FIG. 4 is used for selection of an advertisement which will be part
of the custom page. In this example, the advertisement is targeted
by the demographic information in the user template
":M,85,95035,T,*" indicating that a suitable ad should be targeted
to a male user, age 85, located in zip code 95035, etc. As shown,
the portfolio section contains selected stock symbols, the
scoreboard section contains selected team symbols, and the weather
section contains selected weather cities/zip codes.
The selections of stock quote symbols, team scores, and weather
cities are set by the user. In a preferred embodiment, intelligent
defaults are selected by the system prior to user selection, so
that users unfamiliar with the customization process will
nonetheless be able to view non empty custom pages. This is
described in further detail below in connection with FIG. 6.
FIG. 5 is an illustration of a user front page 218 returned by page
server 104. User front page 218 as shown in FIG. 5 includes many
elements, some of which are described here in further detail. User
front page 218 is built according to a user template and live data.
The user template specifies, for example which quotes are shown in
the portfolio module, which cities are displayed in the weather
module, etc. Each of the modules 504 can be customized by a user
and moved about front page 218. The modules 504 are also reusable,
in that any customized module which appears on multiple pages can
be edited from any one of those pages and the edits will be
reflected on each of the pages. Other custom pages for the user can
be viewed by selecting one of the page buttons 502 appearing below
the header. Other pages and utilities can be selected using the
buttons 508 which are part of the header.
In addition to all of the live date shown in FIG. 5 being stored in
the shared memory, summaries from each of the major news topics can
also be stored in the shared memory and viewed by pressing on the
news topic header, such as news topic header 506. As should be
noted, the page generator can also intelligently display dates 510
customized for a particular user, using a time zone variable in the
user template. This time zone variable is shown as the first line
in user template 202 in FIG. 4. In addition to being able to modify
each of the modules, in many cases the order of appearance of the
modules is customizable. For example, the order of the various
sections of user template 202 shown in FIG. 4 is not fixed.
The preference editing process can be initiated by the user
pressing the appropriate edit button 512. As explained above, once
the editing process is complete, the user template is flushed from
the cache and regenerated. Since each of the news stories is
essentially a static page linked to a headline shown in the news
section, these can simply be linked to static pages on a news
server.
Referring now to FIG. 6, an illustration of intelligent defaulting
for populating a user template, and consequently a user summary
page. As part of a registration process, a user indicates, among
other things, his or her zip code. This zip code is used to locate
an approximate longitude and latitude for the user using a zip code
lookup table 602. This allows the user's location to be located on
a map 604. Map 604 provides city boundaries and, with team location
table 606, also provides locations for various sports teams which
can be selected in a sports module. In selecting a default
predetermined number of cities and sports teams for inclusion as
initial selections for a particular user, a circle is drawn around
the user and increased in diameter until the circle envelopes a
suitable predetermined number of cities and sports teams. In this
way, each user is guaranteed a default number of nearby teams and
cities for sports and weather, respectively. While this assumes
that the user is interested in only the teams nearest the user, the
system can be arranged to provide intelligent defaults where
geographic anomalies are known to exist. Geographic anomalies occur
in communities which have more loyalty to distant teams than nearby
teams, such as might occur when the distant team is much better
than the nearby team or when the nearby team recently moved to a
distant location. In any case, the user is allowed customize his or
her pages beginning with the intelligent defaults selected.
Other intelligent defaults can be provided in other contexts. For
example, the header of user front page 218 includes a button 508
labelled "myweb" which, when pressed, would lead the user to a
custom listing of web sites. The initial defaults for that custom
listing of web sites might be generated based on the keywords of
interest to that user or based on the news topics, sports teams or
weather cities selected by the user.
The above description is illustrative and not restrictive. Many
variations of the invention will become apparent to those of skill
in the art upon review of this disclosure. The scope of the
invention should, therefore, be determined not with reference to
the above description, but instead should be determined with
reference to the appended claims along with their full scope of
equivalents.
APPENDIX A
__________________________________________________________________________
Listing of a User Template
__________________________________________________________________________
<!-- timezone: -8,PT 0 --> <!-- ad:M,85,95035,T,* 792
--> <!-- portfolio:Quotes,pf.sub.-- 1,1, DJI, NYA, IXIC, SPX,
XAX,YHOO,NSCP,IOM,NSC P,YHOO 2836 --> <!--
scoreboard:NCAAFSSC,NHLSAN,MLSSAN,NCAAFSSS,ALOAK,NBAGSW,NFLOAK,NCAAFCCD,NF
LSFO,NLSFO 3803 --> <!-- weather:f,30901,uk.sub.--
londo,94601,95101 4368 - - > <!-- mode.sub.--
bar:"FRONT.sub.-- PAGE1",.hier=News+Summary%3aEdit&.done=http:
//my.yahoo.com/ news/summary.html?v 4538 --> <!--
summary2:3,rt,rw,z0000,mlb,re,vf 4597 --> <!-- motd:us.sub.--
motn.html 4696 --> <html> <head> <title>My
Yahoo!news summary for ash802</title> </head>
<body> <center> <map name="top"><area
shape=rect coords="0,0,45,66"
href="/news/summary.html?v"><area shape=rect
coords="45,0,90,66" href="/intemet/directory.html?v"><area
shape=rect coords="90,0,135,66" href="/contacts/white.sub.--
pages.html?v"><area shape=rect coords="135,0,346,66"
href="/?myHome"><area shape=rect coords="346,0,389,66"
href="/help/news/summary.html"><area shape=rect
coords="389,0,431,66"
href="http://edit.my.yahoo.com/config/eval.sub.--
profi1e"><area shape=rect coords="431,0,477,66"
href="http://edit.my.yahoo.com/config/toffly"> </map>
<center><a href="/bin/top.sub.-- menu"><img border=0
height=62 width=477 ismap usemap="#top"
src="http://www.yahoo.com/images/my/banner/news1.gif" alt="My
Yahoo!"></a></center> <p>
<center><form
action="http://search.my.yahoo.com/search/my"> <font
size="-2">[ <a
href="http://edit.my.yahoo.com/config/set.sub.--
attr?attr=sloc&value=b&.d one=htt
p://my.yahoo.com/news/summary.html?v">move to bottom</a> ]
</font><input size=25 name=p> <font
size="-1"> <input type=submit value=Search><input
type=hidden name=n value="25"> <a
href="http://search.my.yahoo.com/search/my/options">Options</a></font></fo
rm></center><p> <center> <table border=0
cellspacing=0 cellpadding=2> <tr> <td
align=center><font
color="#000000"><b>Sections:</b> </font></td>
<td align=center bgcolor="#dcdcdc"><font
color="#000000"><b>Front Page</b></font></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/business/summary.html?v">Business</a></td>
<td> .linevert split. </td> <td
align=center><a href="/news/portfolio.sub.--
summary.html?v">Portfolios</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/entertainment/summary.html?v">Entertainment</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/sports/summary.html?v">Sports</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/technology/summary.html?v">Technology</a></td>
</tr> </table> </center> </center>
<table border=1 cellpadding=4 cellspacing=0 width="100%">
<tr><td align=center valign=top width="1%"> <a
href="http://edit.my.yahoo.com/config/eval.sub.--
left?mode=left.sub.-- nsum&.done=http%
3a%2f%2fmy%2eyahoo%2ecom%2fnews%2fsummary%2ehtml%3fv"><img
border=0 src="http://www.yahoo.com/images/my/left.gif"alt="edit
left"></a> <table border=0 cellpadding=1 cellspacing=0
width="100%"> <tr bgcolor="#dcdcdc"><td colspan=4
width="100%"><table border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><b><font
size="+1">P<font
size="+0">ORTFOLIOS</font></font></b></td><td
align=right><a
href="http://edit.my.yahoo.com/config/eval.sub.--
quotes?.done=http://my.y ahoo.co m/news/summary.html?v"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<tr><td align=center colspan=4><form method=get
action="http://quote.yahoo.com/quotes"><font
size="-1"><input type=text size=10 name=symbols><input
type=submit value="Get Quotes"><br><font
size="0">quotes delayed 20 minutes - <a href="/fin.sub.--
disclaimer.html">disclaimer</a><br>click on symbol
for detailed quote + news<br><b>*</b> indicates
new news during last
24hrs<font></form></td></tr></table>
<hr size=0><table border=0 cellpadding=1 cellspacing=0
width="100%"> <tr bgcolor="#dcdcdc"><td colspan=5
width="100%"><table border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><a
href="/sum/?http://sports.yahoo.com/"><b><font
size="+1">S<font
size="+0">COREBOARD</font></font></b></a></td><td
align=right><a
href="http://edit.my.yaho9.com/config/set.sub.--
sports?.done=http://my.ya hoo.com /news/summary.html?y"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<hr size=0><table border=0 cellpadding=2 cellspacing=0
width="100%"> <tr bgcolor="#dcdcdc"><td colspan=3
width="100%"><table border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><a
href="/my/?http://weather.yahoo.com/"><b><font
size="+1">W<font
size="+0">EATHER</font></font></b></a></td><td
align=right><a
href="http://edit.my.yahoo.com/config/set.sub.--
wni?.done=http://my.yahoo .com/ne ws/summary.html?v"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<tr><td align=center colspan=3><font size=0>click
on city for extended forecast</font></td></tr>
</table> <hr size=0> <p></td> <td
align=center valign=top width="100%"> <table border=1
cellpadding=2 cellspacing=0 width="100%"> </table>
</td></tr> </table> <center> <table
border=1 cellpadding=2 cellspacing=0 width="100%">
</table> </center> <p> <hr> <center>
<table border=0 cellpadding=0 cellspacing=0 width="100%">
<tr> <td align=left valign=top><tabie border=0
cellpadding=0 cellspacing=0> <tr><td align=left
valign=bottom><a href="/my/?http://www.yahoo.com/"><img
border=0 height=47 width=47
src="http://www.yahoo.com/images/my/yahoo.gif"
alt="Yahoo!"></a></td> <td>
</td> <td align=left valign=bottom
width="100%"><font size="-1"><i>Copyright ©
1994-1997 Yahoo! Inc. All rights
reserved.</i><br>Portions copyright © 1997 Reuters Ltd.
All rights reserved.<br> Portions copyright © 1997
SportsTicker Enterprises LP. All rights reserved.<br>
Portions copyright © 1997 Weathernews Inc. All rights
reserved.<br> Portions copyright © 1997 Business Wire. All
rights reserved.<br> Portions copyright © 1997 PR Newswire.
All rights reserved.<br> Questions, comments, or suggestions?
Send us <a
href="http://my.yahoo.com/feedback.html">feedback</a>.</font></td>
</tr> </table> </tp> <td>
</td> <td align=right><a
href="/bin/logout.sub.-- menu"><img border=0 height=68
width=100 ismap usemap="#logout"
src="http://www.yahoo.com/images/my/logout.gif" alt="Change
User"></a></td> </tr> </table>
</center> <map name=logout> <area coords="0,0,50,68"
href="/my/?http://www.yahoo.com/"> <area coords="51,0,100,68"
href="http://edit.my.yahoo.com/config/login?logout=1">
</map> </body> </html>
__________________________________________________________________________
APPENDIX B
__________________________________________________________________________
Listing of a User Page
__________________________________________________________________________
<html> <head> <title>My Yahoo! news summary for
ash802</title> </head> <body> <center>
<map name="top"><area shape=rect coords="0,0,45,66"
href="/news/summary.html?v"><area shape=rect
coords="45,0,90,66" href="/internet/directory.html?v"><area
shape=rect coords="90,0,135,66" href="/contacts/white.sub.--
pages.html?v"><area shape=rect coords="135,0,346,66"
href="/?myHome"><area shape=rect coords="346,0,389,66"
href="/help/news/summary.html"><area shape=rect
coords="389,0,431,66"
href="http://edit.my.yahoo.com/config/eval.sub.--
profi1e"><area shape=rect coords="431,0,477,66"
href="http://edit.my.yahoo.com/config/toffly"> </map>
<center><a href="/bin/top.sub.-- menu"><img border=0
height=62 width=477 ismap usemap="#top"
src="http://www.yahoo.com/images/my/banner/news1.gif" alt="My
Yahoo!"></a></center> <font
size="-5"><p></font><!-- SpaceID=0 noad -->
<font size="-5"><p></font> <p>
<center><form
action="http://search.my.yahoo.com/search/my"><font
size="-2">[ <a
href="http://edit.my.yahoo.com/config/set.sub.--
attr?attr=sloc&value=b&.d one=http://my.y
ahoo.com/news/summary.html?v">move to bottom</a> ]
</font><input size=25 name=p> <font
size="-1"> <input type=submit value=Search><input
type=hidden name=n value="25"> <a
href="http://search.my.yahoo.com/search/my/options"
>Options</a></font></form></center><p>
<center> <table border=0 cellspacing=0 cellpadding=2>
<tr> <td align=center><font
color="#000000"><b>Sections:</b> </font>
</td> <td align=center bgcolor="#dcdcdc"><font
color="#000000"><b>Front Page</b></font></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/business/summary.html?v">Business</a></td>
<td> .linevert split. </td> <td
align=center><a href="/news/portfolio.sub.--
summary.html?v">Portfolio s</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/entertainment/summary.html?v">Entertainment</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/sports/summary.html?v">Sports</a></td>
<td> .linevert split. </td> <td
align=center><a
href="/news/technology/summary.html?v">Technology</a><
/td> </tr> </table> </center> </center>
<table border=1 cellpadding=4 cellspacing=0 width="100%">
<tr><td align=center valign=top width="1%"> <a
href="http://edit.my.yahoo.com/config/eval.sub.--
left?mode=left.sub.-- nsum&.done=http%3a%2f%2f
my%2eyahoo%2ecom%2fnews%2fsummary%2ehtml%3fv"><img border=0
src="http://www.yahoo.com/images/my/left.gif" alt="edit
left"></a> <table border=0 cellpadding=1 cellspacing=0
width="100%"> <tr bgcolor="#dcdcdc"><td colspan=4
width="100%"><table border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><b><font
size="+1">P<font
size="+0">ORTFOLIOS</font></font></b></td><td
align=riqht><a
href="http://edit.my.yahoo.com/config/eval.sub.--
quotes?.done=http://my.y ahoo.com/news/s ummary.html?v"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<tr><td valign=top width="10%"><nobr><a
href="http://edit.my.yahoo.com/config/set.sub.-- portf.sub.--
expand?port= Quotes&expand=0&.done=
http://my.yahoo.com/news/summary.html?v"><img align=absmiddle
border=0 height=11 width=11
src="http://www.yahoo.com/images/my/arrowdown.gif"
alt="edit"></a></td><td valign=top
width="30%"><nobr><b><a
href="http://quote.yahoo.com/portfolio?view&key=pf.sub.--
1">Quotes</a></b ></nobr></td><t d
width="30%"></td><td
width="30%"><big></td></tr> <tr><td
align=left valign=top width="10%"><nobr><font
size<"-
1"> <br> <br> <br> <br> <br>*<br>*<br>*<br>*<br>*
<br></fo nt></nobr></td><td valign=top
width="30%"><nobr><font size="-1"><a
href="http://quote.yahoo.com/quotes?SYMBOLS=
DJI&detailed=t">DJIA</a><br> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=
NYA&detailed=t">NYSE</a><b r> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=
IXIC&detailed=t">NASDAQ</a ><br> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=
SPX&detailed=t">S&P 500</a><br> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=
XAX&detai1ed=t">AMEX</a><b r> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=YHOO&detailed=t">YHOO</a><b
r> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=NSCP&detailed=t">NSCP</a><b
r> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=IOM&detailed=t">IOM</a><br>
<a
href="http://quote.yahoo.com/quotes?SYMBOLS=NSCP&detailed=t">NSCP</a><b
r> <a
href="http://quote.yahoo.com/quotes?SYMBOLS=YHOO&detailed=t">YHOO</a><b
r> </font></nobr></td><td align=right
valign=top width="30%"><nobr><font size="-
1">7312.15<br>442.36<br>1384.91<br>845.48<br>609.02<br>32
1/2<br>29 1/4<br>19 1/4<br>29 1/4<br>32
1/2<br></font></nobr></td><td
align=right valign=top width="30%"><nobr><font
size="-1"><font size="-1"
color="#007f00">+22.75</font><br><font size="-1"
color="#007f00">+0.82</font><br><font size="-1"
color="#7f0000">- 19.88</font><br><font size="-1"
color="#7f0000">-0.88</font><br><font size="-1"
color="#007f00">+1.85</font><br><font size="-1"
color="#7f0000">- 5/8</font><br><font size="-1"
color="#7f0000">-5/8</font><br><font size="-1"
color="#007f00">+1/2</font><br><font size="-1"
color="#7f0000">- 5/8</font><br><font size="-1"
color="#7f0000">-
5/8</font><br></font></nobr></td></tr>
<tr><td align=center colspan=4><form method=get
action="http://quote.yahoo.com/quotes"><font
size="-1"><input type=text size=10 name=symbols><input
type=submit value="Get Quotes"><br><font
size="0">quotes delayed 20 minutes - <a href="/fin.sub.--
disclaimer.html">disclaimer</a>< br>click on symbol
for detailed quote + news<br><b>*</b> indicates
new news during last
24hrs<font></form></td></tr></table>
<hr size=0><table border=0 cellpadding=1 cellspacing=0
width="100%"> <tr bgcolor="#dcdcdc"><td colspan=5
width="100%"><table border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><a
href="/sum/?http://sports.yahoo.com/"><b><font
size="+1">S<font
size="+0">COREBOARD</font></font></b></a></td><td
align=right><a
href="http://edit.my.yahoo.com/config/set.sub.--
sports?.done=http://my.ya hoo.com/news/su mmary.html?v"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<tr><td colspan=5><b><font
size="-1">TODAY</font></b></td></tr>
<tr><td valign=top><font size=-1><a
href="http://sports.yahoo.com/al/">AL</a></font></td><td
valign=top><font size=-
1>Detroit<br><b>Oakland</b></font
></td><td align=right valign=top><font size=-
1>8<br>9</font></td><td
valign=top> </td><td valign=top><font
size=-1><a
href="http://sports.yahoo.com/al/rcps/970603/detoak.html">F</a></font></td
></tr> <tr><td valign=top><font
size=-1><a
href="http://sports.yahoo.com/nl/">NL</a></font></td><td
valign=top><font size=- 1>San
Francisco<br><b>Florida</b></font></td><td
align=right valign=top><font
size=-1>9<br>1</font></td><td
valign=top> </td><td valign=top><font size=-
1><a
href="http://sports.yahoo.com/nl/rcps/970603/sfofla.html">F</a></font></td
></tr> <tr><td colspan=5><b><font
size="-1">YESTERDAY</font></b></td></tr>
<tr><td valign=top><font size=-1><a
href="http://sports.yahoo.com/al/">AL</a></font></td><td
valign=top><font size=-
1>Detroit<br><b>Oakland</b></font></td><td
align=right valign=top><font size=-
1>8<br>7</font></td><td
valign=top> </td><td valign=top><font
size=-1><a
href="http://sports.yahoo.com/al/rcps/970602/detoak.html">F</a></font></td
></tr> <tr><td valign=top><font
size=-1><a
href="http://sports.yahoo.com/nl/">NL</a></font></td><td
valign=top><font size=- 1>San
Francisco<br><b>Florida</b></font></td><td
align=right valign=top><font
size=-1>2<br>4</font></td><td
valign=top> </td><td valign=top><font size=-
1><a
href="http://sports.yahoo.com/nl/rcps/970602/sfofla.html">F</a></font></td
></tr> </table> <hr size=0><table border=0
cellpadding=2 cellspacing=0 width="100%"> <tr
bgcolor="#dcdcdc"><td colspan=3 width="100%"><table
border=0 cellpadding=2 cellspacing=0
width="100%"><tr><td width="100%"><a
href="/my/?http://weather.yahoo.com/"><b><font
size="+1">W<font size="+0
">EATHER</font></font></b></a></td><td
align=right><a
href="http://edit.my.yahoo.com/config/set.sub.--
wni?.done=http://my.yahoo .com/news/summa ry.html?v"><img
align=absmiddle border=0 height=13 width=25
src="http://www.yahoo.com/images/my/personalize.gif"
alt="edit"></a></td></tr></table></td></tr>
<tr><td><a
href="http://weather.yahoo.com/forecast/Augusta.sub.-- GA.sub.--
US.sub.-- f.html"><font size="-1">Augusta,
GA</font></a></td><td align=right><font
size="-1">63...78 F</font></td><td
align=right><font size="-1"><img height=24 width=32
src="http://www.yahoo.com/images/my/wni/87.gif"
alt="Showers"></font></td> </tr>
<tr><td><a
href="http://weather.yahoo.com/forecast/London.sub.-- UK.sub.--
f.html"><font size="- 1">London,
UK</font></a></td><td align=right><font
size="-1">50...73 F</font></td><td
align=right><font size="-1"><img height=24 width=32
src="http://www.yahoo.com/images/my/wni/87.gif"
alt="Showers"></font></td> </tr>
<tr><td><a
href="http://weather.yahoo.com/forecast/Oakland.sub.-- CA.sub.--
US.sub.-- f.html"><font size="-1">Oakiand,
CA</font></a></td><td align=right><font
size="-1">59...70 F</font></td><td
align=right><font size="-1"><img height=24 width=32
src="http://www.yahoo.com/images/my/wni/66.gif" alt="Partly
Cloudy"></font></td></tr>
<tr><td><a
href="http://weather.yahoo.com/forecast/San.sub.-- Jose.sub.--
CA.sub.-- US.sub.-- f.html"><font size="-1">San Jose,
CA</font></a></td><td align=right><font
size="-1">54...75 F</font></td><td
align=right><font size="-1"><img height=24 width=32
src="http://www.yahoo.com/images/my/wni/82.gif"
alt="Rain"></font></td></t r> <tr><td
align=center colspan=3><font size=0>click on city for
extended forecast</font></td></tr> </table>
<hr size=0> <p></td> <td align=center
valign=top width="100%"> <center> <table border=1
cellpadding=4 cellspacing=0 width="100%"> <tr> <td
bgcolor="#000000"> <table border=0 cellpadding=0
cellspacing=0 width="100%"><tr> <td align=left
valign=bottom><font color="#ffffff"
size="+1"><nobr><b>F</b></nobr></font><font
color="#ffffff"><b><nobr>RONT</nobr>
<nobr>PAGE</nobr></b>- Jun 3
7:40pm</font></td> <td align=right><a
href="http://edit.my.yahoo.com/config/edit.sub.--
news?.hier=News+Summary% 3aEdit&.done=ht
tp://my.yahoo.com/news/summary.html?v"><img align=right
border=0 height=15 width=66 vspace=2
src="http://www.yahoo.com/images/my/edit.sub.-- topics.gif"
alt="edit
topics"></a></td></tr> </table>
</td> </tr> </table> </center> <table
border=1 cellpadding=2 cellspacing=0 width="100%">
<tr><td bgcolor="#dcdcdc" colspan=2><a
href="/news/top.sub.-- stories .html?v"><b><font
size="+1">B</font>reaking News</b></a>
<i>Jun 3 5:03pm</i></td></tr>
<tr><td colspan=2><ul> <li><a
href="http://www.yahoo.com/headlines/970603/news/stories/bombing.su
b.-- 61.html" >Judge Moves to Avoid McVeigh `Lynching`</a>
<li><a href=
"http://www.yahoo.com/headiines/970603/news/stories/bombingappeals.sub.--
1.html">McVeigh 's Expected Appeals May Last Years</a>
<li><a
href="http://www.yahoo.com/headlines/970603/news/stories/bombingpenalty.su
b.-- 1.html">Ex perts: Plea for Mercy is McVeigh's Best
Hope</a> </ul></td></tr> <tr><td
bgcolor="#dcdcdc" colspan=2><a
href="/news/world.html?v"><b><font
size="+1">W</font>orld</b></a>
<i>Jun 3 2:09pm</i></td></tr>
<tr><td colspan=2><ul> <li><a
href="http://www.yahoo.com/headlines/970603/international/stories/canada.s
ub.-- 6.html">C anadian Liberals Face Thorny Issues</a>
<li><a
href="http://www.yahoo.com/headlines/970603/international/stories/nato.sub
.-- 10.html">U. S. Advocates Ready for NATO Expansion
Fight</a> <li><a
href="http://www.yahoo.com/headlines/970603/international/stories/leone.su
b.-- 11.html">U .S. Ferries More Foreigners from Sierra
Leone</a> </ul></td></tr> <tr><td
bgcolor="#dcdcdc" colspan=2><a
href="http://biz.yahoo.com/news/z0000.html"><b><font
size="+1">U</font>.S. Stock News and
Report</b></a>
<i></i></td></tr> <tr><td
colspan=2><ul> <li><a
href="http://biz.yahoo.com/finance/97/06/03/crdm.sub.-- y001.sub.--
1.html">Cardima Inc IPO range reduced - underwriter</a>
<li><a
href="http://biz.yahoo.com/finance/97/06/03/luk.sub.-- wtsc.sub.--
1.html">AMEX to trade Leucadia, West TeleServices
options</a> <li><a
href="http://biz.yahoo.com/finance/97/06/03/acv.sub.-- acva.sub.--
1.html">CBOE to trade options on Alberto-Culver Class
A</a> </ul></td></tr> <tr><td
bgcolor="#dcdcdc" colspan=2><a
href="/news/sports/mlb.html?v"><b>< font
size="+1">M</font>ajor League
Baseball</b></a> <i>Jun 3
5:15pm</i></td></tr> <tr><td
colspan=2><ul> <li><a
href="http://sports.yahoo.com/mlb/lgns/970603/draftlist.html">1997
baseball free agent draft first round selections</a>
<li><a
href="http://sports.yahoo.com/nl/lgns/970603/nlstars.html">Mike
Piazza leads balloting in NL All-Star voting</a>
<li><a
href="http://sports.yahoo.com/nl/lgns/970603/nlvotes.html">National
League All-Star voting results</a>
</ul></td></tr> <tr><td
bgcolor="#dcdcdc" colspan=2><a
href="/news/entertainment/top.sub.--
stories.html?v"><b><font
size="+1">E</font>ntertainment Top
Stories</b></a> <i>Jun 3
6:35pm</i></td></tr> <tr><td
colspan=2><ul> <li><a
href="http://www.yahoo.com/headlines/970603
/entertainment/summary.sub.-- 1.html#head1ine.sub.-- 1">Clinton
Reflects on Music </a> <li><a
href="http://www.yahoo.com/headlines/970603
/entertainment/summary.sub.-- 1.html#head1ine.sub.-- 2">Gifford:
Marriage is Solid </a> <li><a
href="http://www.yahoo.com/headlines/970603
/entertainment/summary.sub.-- 1.html#headline.sub.--
3">Rockabilly Legend Hospitalized </a>
</ul></td></tr> <tr><td
bgcolor="#dcdcdc" colspan=2><a
href="/news/entertainment/movies.html?v"><b><font
size="+1">M</font>ovies Film</b></a>
<i>Jun 3 10:13am</i></td></tr>
<tr><td colspan=2><ul> <li><a
href="http.//www.yahoo.com/headlines/970603/entertainment
/stories/film.sub.-- cage.sub.-- 1.html">FEATURE: Nicolas Cage
Asks, Where Are The Heroes?</a> <li><a
href="http://www.yahoo.com/headlines/970663/entertainment
/stories/film.sub.-- cassavetes.sub.-- 1.html">Nick Cassavetes
Updates Father's `Bookie`</a> <li><a
href="http://www.yahoo.com/headlines/970603/entertainment
/stories/film.sub.-- boxoffice.sub.-- 9.html">`Lost World` Props
Up Slow Box Office</a> </ul></td></tr>
</table> </td></tr> </table> <center>
<table border=1 cellpadding=2 cellspacing=0 width="100%">
<tr bgcolor="#f0f8ff"> <td align=center
colspan=2><table border=0 cellpadding=2 cellspacing=0
width="100%"> <tr><td align=left
width="60%"><font
size="-1"><b>TIP </b>clicking on the My Yahoo!
logo at the top will reload and update your default
page.</font></td><td align=center width="28%"
nowrap><font size="-1"><a
href="http://bwguide.yahoo.com/bwguide/start.html">Yahoo!
Backweb Channel Guide</a><br><a
href="http://www.yahoo.com/docs/info/outreach/">Yahoo! Community
Relations</a></font><br><br><font
size="-1"><a
href="/motn/?http://local.yahoo.com/local/">Get Local</a>·
<a href="/motn/?http://my.yahoo.com/ticker.html">News
Ticker</a>· <a
href="/motn/?http://fool.yahoo.com/fool">Motley
Fool</a></font></td></tr>
</table></td> </tr> </table>
</center> <p> <hr> <center> <table
border=0 cellpadding=0 cellspacing=0 width="100%"> <tr>
<td align=left valign=top><table border=0 cellpadding=0
cellspacing=0> <tr><td align=left
valign=bottom><a href="/my/?http://www.yahoo.com/"><img
border=0 height=47 width=47
src="http://www.yahoo.com/images/my/yahoo.gif"
alt="Yahoo!"></a></td> <td>
</td> <td align=left valign=bottom
width="100%"><font size="-1"><i>Copyright ©
1994-1997 Yahoo! Inc. All rights
reserved.</i><br>Portions copyright © 1997 Reuters Ltd.
All rights reserved.<br> Portions copyright © 1997
SportsTicker Enterprises LP. All rights reserved. <br>
Portions copyright © 1997 Weathernews Inc. All rights
reserved.<br> Portions copyright © 1997 Business Wire. All
rights reserved.<br> Portions copyright © 1997 PR Newswire.
All rights reserved.<br> Questions, comments, or suggestions?
Send us <a
href="http://my.yahoo.com/feedback.html">feedback</a>.</font></td>
</tr> </table> </td> <td>
</td> <td align=right><a
href="/bin/logout.sub.-- menu"><img border=0 height=68
width=100 ismap usemap="#logout"
src="http://www.yahoo.com/images/my/logout.gif" alt="Chan ge
User"></a></td> </tr> </table>
</center> <map name=logout> <area coords="0,0,50,68"
href="/my/?http://www.yahoo.com/"> <area coords="51,0,100,66"
href="http://edit.my.yahoo.com/config/login?log out=1">
</map> </body> </html>
__________________________________________________________________________
* * * * *
References