A method and system are disclosed for delivering interactive links for presenting applications and second information at a client computer from remote sources in a network-configured computer processing system. In one embodiment, the method includes retrieving over a first communication connection, in response to a request of a client computer, informational content having computer program code embedded therein, and executing the embedded computer program code for establishing a second communication connection to an application server. The method further includes retrieving over the second communication connection first information including presentational information for presenting the application and the second information. The method also includes presenting the application and the second information based upon the presentational information, and storing on the client computer an interactive link for selectively re-establishing the second communication connection to the applicati... |
Citations|
| US5805815 | Dec 18, 1995 | Sep 8, 1998 | AT&T Corp. | Method and apparatus for providing interim data displays while awaiting of retrieval linked information | | US5838916 | Mar 14, 1997 | Nov 17, 1998 | | Systems and methods for executing application programs from a memory device linked to a server | | US5877765 | Sep 11, 1995 | Mar 2, 1999 | Microsoft Corporation | Method and system for displaying internet shortcut icons on the desktop | | US5890161 | Oct 28, 1997 | Mar 30, 1999 | Microsoft Corporation | Automatic transaction processing of component-based server applications | | US5903901 | Sep 12, 1996 | May 11, 1999 | Kabushiki Kaisha Toshiba | Message transmission scheme and page processing scheme for hypermedia document processing system | | US5915112 | Jan 2, 1996 | Jun 22, 1999 | International Business Machines Corporation | Remote procedure interface with support for multiple versions | | US5940074 | Nov 22, 1996 | Aug 17, 1999 | WebTV Networks, Inc. | Remote upgrade of software over a network | | US6009410 | Oct 16, 1997 | Dec 28, 1999 | AT&T Corporation | Method and system for presenting customized advertising to a user on the world wide web | | US6035324 | Aug 28, 1997 | Mar 7, 2000 | International Business Machines Corporation | Client-side asynchronous form management | | US6065043 | Jul 2, 1998 | May 16, 2000 | | Systems and methods for executing application programs from a memory device linked to a server | | US6115741 | Jul 16, 1999 | Sep 5, 2000 | | Systems and methods for executing application programs from a memory device linked to a server |
Referenced by|
| US6918113 | Apr 5, 2001 | Jul 12, 2005 | Endeavors Technology, Inc. | Client installation and execution system for streamed applications | | US6920502 | Jul 17, 2001 | Jul 19, 2005 | Netilla Networks, Inc. | APPARATUS AND ACCOMPANYING METHODS FOR PROVIDING, THROUGH A CENTRALIZED SERVER SITE, AN INTEGRATED VIRTUAL OFFICE ENVIRONMENT, REMOTELY ACCESSIBLE VIA A NETWORK-CONNECTED WEB BROWSER, WITH REMOTE NETWORK MONITORING AND MANAGEMENT CAPABILITIES | | US6928439 | Dec 21, 2000 | Aug 9, 2005 | International Business Machines Corporation | Computer system with access control mechanism | | US6941354 | May 1, 2001 | Sep 6, 2005 | NEC Corporation | Mobile terminal permitting selection of communication channel for receiving message attachments | | US6954800 | Apr 4, 2001 | Oct 11, 2005 | Broadcom Corporation | Method of enhancing network transmission on a priority-enabled frame-based communications network | | US6959320 | May 15, 2001 | Oct 25, 2005 | Endeavors Technology, Inc. | Client-side performance optimization system for streamed applications | | US6976061 | May 24, 2000 | Dec 13, 2005 | Sun Microsystems, Inc. | Resource adapter and XML descriptor for use in a client server environment utilizing an enterprise information system | | US6976079 | Sep 29, 2000 | Dec 13, 2005 | International Business Machines Corporation | System and method for upgrading software in a distributed computer system | | US6996599 | Sep 21, 2000 | Feb 7, 2006 | Microsoft Corporation | System and method providing multi-tier applications architecture | | US7035912 | Jan 26, 2001 | Apr 25, 2006 | Abaco.P.R., Inc. | Method and apparatus allowing a limited client device to use the full resources of a networked server | | US7043524 | Nov 6, 2001 | May 9, 2006 | OmniShift Technologies, Inc. | Network caching system for streamed applications | | US7062567 | Feb 14, 2001 | Jun 13, 2006 | | Intelligent network streaming and execution system for conventionally coded applications | | US7085852 | Mar 1, 2002 | Aug 1, 2006 | Sun Microsystems, Inc. | Deterministic immutable access elimination for efficient distributed state saves | | US7120896 | Oct 31, 2001 | Oct 10, 2006 | Vitria Technology, Inc. | Integrated business process modeling environment and models created thereby | | US7146335 | Mar 15, 2001 | Dec 5, 2006 | E*Trade Group, Inc., A Corp. of California | Online trading system having ally-initiated trading | | US7185272 | Jul 27, 2004 | Feb 27, 2007 | | Method for automatically filling in web forms | | US7240058 | Mar 1, 2002 | Jul 3, 2007 | Sun Microsystems, Inc. | Lock mechanism for a distributed data system | | US7240162 | Nov 12, 2004 | Jul 3, 2007 | Stream Theory, Inc. | System and method for predictive streaming | | US7254116 | Apr 4, 2001 | Aug 7, 2007 | Broadcom Corporation | Method and apparatus for transceiver noise reduction in a frame-based communications network | | US7320035 | Mar 1, 2002 | Jan 15, 2008 | Sun Microsystems, Inc. | Object mutation determination for incremental state saves | | US7363345 | Dec 17, 2002 | Apr 22, 2008 | AOL LLC, a Delaware Limited Liability Company | Electronic notification delivery mechanism selection based on recipient presence information and notification content | | US7370329 | Mar 1, 2002 | May 6, 2008 | Sun Microsystems, Inc. | System and method for state saves in a distributed data system | | US7388853 | Apr 4, 2001 | Jun 17, 2008 | Broadcom Corporation | Method for providing dynamic adjustment of frame encoding parameters in a frame-based communications network | | US7406106 | Apr 4, 2001 | Jul 29, 2008 | Broadcom Corporation | Method of sharing information among a plurality of stations in a frame-based communications network | | US7421662 | Oct 11, 2005 | Sep 2, 2008 | Sprint Communications Company L.P. | Automating interaction with a host computing device | | US7451176 | Nov 14, 2005 | Nov 11, 2008 | Microsoft Corporation | System and method providing multi-tier applications architecture | | US7451196 | Dec 14, 2001 | Nov 11, 2008 | Stream Theory, Inc. | Method and system for executing a software application in a virtual environment | | US7472157 | May 8, 2001 | Dec 30, 2008 | H.E.B., LLC | Architecture for a system of portable information agents | | US7480936 | Jan 15, 2003 | Jan 20, 2009 | Xerox Corporation | Generic application architecture suitable for firewall traversal | | US7483961 | Nov 23, 2004 | Jan 27, 2009 | Microsoft Corporation | Method and apparatus for controlling execution of an application | | US7496631 | Jun 13, 2003 | Feb 24, 2009 | AOL LLC | Delivery of an electronic communication using a lifespan | | US7502838 | Nov 24, 2003 | Mar 10, 2009 | Droplets, Inc. | System and method for delivering remotely stored applications and information | | US7512991 | Dec 12, 2001 | Mar 31, 2009 | International Business Machines Corporation | Methods, systems, signals and media for encouraging users of computer readable content to register | | US7536404 | Feb 27, 2002 | May 19, 2009 | Siemens Product Lifecycle Management Software, Inc. | Electronic files preparation for storage in a server | | US7543032 | Oct 19, 2005 | Jun 2, 2009 | Canyonbridge, Inc. | Method and apparatus for associating messages with data elements | | US7564962 | Dec 19, 2003 | Jul 21, 2009 | Nortel Networks Limited | Providing user information and control over a contact within a contact centre | | US7577751 | Apr 6, 2005 | Aug 18, 2009 | Stream Theory, Inc./Endeavors Technologies, Inc. | Software streaming system and method | | US7610352 | Sep 9, 2002 | Oct 27, 2009 | MECA Communications, Inc. | Sharing skins | | US7614003 | Oct 23, 2006 | Nov 3, 2009 | Adobe Systems Incorporated | Rendering hypertext markup language content | | US7640306 | Nov 18, 2003 | Dec 29, 2009 | AOL LLC | Reconfiguring an electronic message to effect an enhanced notification | | US7660876 | Feb 27, 2002 | Feb 9, 2010 | Siemens Product Lifecycle Management Software Inc. | Electronic file management | | US7681112 | May 30, 2003 | Mar 16, 2010 | Adobe Systems Incorporated | Embedded reuse meta information | | US7694152 | Feb 3, 2005 | Apr 6, 2010 | International Business Machines Corporation | Memory controller with performance-modulated security | | US7711748 | Feb 2, 2006 | May 4, 2010 | | Method and apparatus for simplified access to online services | | US7725590 | Apr 18, 2003 | May 25, 2010 | Computer Associates Think, Inc. | Web services broker | | US7734914 | Sep 2, 2005 | Jun 8, 2010 | Adobe Systems Incorporated | System and method for allowing applications to securely access files | | US7768543 | Mar 16, 2006 | Aug 3, 2010 | Citrix Online, LLC | System and method for dynamically altering videoconference bit rates and layout based on participant activity | | US7774753 | Nov 18, 2005 | Aug 10, 2010 | Adobe Systems Incorporated | System and method for communicating data among two or more programs | | US7779085 | Jul 17, 2006 | Aug 17, 2010 | Research In Motion Limited | Automatic mobile device configuration | | US7788346 | Mar 1, 2002 | Aug 31, 2010 | Oracle America, Inc. | System and method for state data back-up in a distributed data system | | US7791559 | Sep 14, 2006 | Sep 7, 2010 | Citrix Systems, Inc. | System and method for multiple display support in remote access software | | US7793232 | Mar 7, 2006 | Sep 7, 2010 | Apple Inc. | Unified interest layer for user interface | | US7802262 | Nov 15, 2005 | Sep 21, 2010 | Adobe Systems Incorporated | System and method for communicating state and title information between a browser and a rich internet application with browser forward and back button support | | US7805523 | Feb 25, 2005 | Sep 28, 2010 | | Method and apparatus for partial updating of client interfaces | | US7813964 | Jan 6, 2006 | Oct 12, 2010 | Oracle America, Inc. | Click and run software purchasing | | US7822005 | Apr 14, 2008 | Oct 26, 2010 | Broadcom Corporation | Method for providing dynamic adjustment of frame encoding parameters in a frame-based communications network | | US7836428 | Mar 15, 2005 | Nov 16, 2010 | Bungee Labs, Inc. | Declarative computer programming language method and system | | US7870537 | Dec 7, 2005 | Jan 11, 2011 | AT&T Intellectual Property I, L.P. | System and method for real-time applications modification | | US7873910 | Mar 7, 2006 | Jan 18, 2011 | Apple Inc. | Configuration bar for lauching layer for accessing user interface elements | | US7877437 | Sep 12, 2001 | Jan 25, 2011 | H.E.B., LLC | Method and apparatus for a distributable globe graphical object | | US7886226 | Apr 24, 2007 | Feb 8, 2011 | Adobe Systems Incorporated | Content based Ad display control | | US7900245 | Oct 15, 2002 | Mar 1, 2011 | Sprint Spectrum L.P. | Method and system for non-repeating user identification in a communication system | | US7912924 | Nov 6, 2007 | Mar 22, 2011 | Adobe Systems Incorporated | Adding functionality with respect to one or more web pages | | US7913248 | Mar 25, 2005 | Mar 22, 2011 | Adobe Systems Incorporated | System and method for installing one or more programs, and at least a portion of their environment | | US7921174 | Sep 14, 2010 | Apr 5, 2011 | | Electronic communication reminder technology | | US7925694 | Oct 19, 2007 | Apr 12, 2011 | Citrix Systems, Inc. | Systems and methods for managing cookies via HTTP content layer | | US7930273 | Oct 19, 2007 | Apr 19, 2011 | Adobe Systems Incorporated | Version management for application execution environment | | US7930343 | May 16, 2008 | Apr 19, 2011 | Honeywell International Inc. | Scalable user interface system | | US7934210 | Mar 25, 2005 | Apr 26, 2011 | Adobe Systems Incorporated | System and method for updating one or more programs and their environment | | US7937698 | Aug 2, 2007 | May 3, 2011 | International Business Machines Corporation | Extensible mechanism for automatically migrating resource adapter components in a development environment | | US7945847 | Jun 26, 2007 | May 17, 2011 | International Business Machines Corporation | Recasting search engine results as a motion picture with audio | | US7966599 | Aug 29, 2006 | Jun 21, 2011 | Adobe Systems Incorporated | Runtime library including a virtual file system | | US7978617 | Sep 15, 2006 | Jul 12, 2011 | Citrix Systems, Inc. | Methods for providing performance improvement recommendations | | US7984384 | Feb 9, 2009 | Jul 19, 2011 | Apple Inc. | Web view layer for accessing user interface elements | | US7991734 | Mar 7, 2008 | Aug 2, 2011 | Microsoft Corporation | Remote pointing | | US8001199 | Nov 25, 2009 | Aug 16, 2011 | AOL Inc. | Reconfiguring an electronic message to effect an enhanced notification | | US8001458 | Nov 15, 2005 | Aug 16, 2011 | Adobe Systems Incorporated | System and method for communicating state and title information between a browser and a rich Internet application | | US8015504 | Mar 25, 2005 | Sep 6, 2011 | Adobe Systems Incorporated | System and method for communicating information over a network | | US8020089 | Jul 5, 2007 | Sep 13, 2011 | Adobe Systems Incorporated | Rendering hypertext markup language content | | US8024523 | Apr 4, 2008 | Sep 20, 2011 | Endeavors Technologies, Inc. | Opportunistic block transmission with time constraints | | US8037485 | Sep 4, 2007 | Oct 11, 2011 | Adobe Systems Incorporated | Abstracting data acquisition and management | | US8046418 | Mar 24, 2011 | Oct 25, 2011 | | Electronic communication reminder technology | | US8051175 | Dec 23, 2008 | Nov 1, 2011 | Envoii Technologies, LLC | Architecture for a system of portable information agents | | US8054241 | Oct 2, 2006 | Nov 8, 2011 | Citrix Systems, Inc. | Systems and methods for multiple display support in remote access software | | US8054310 | Jun 18, 2007 | Nov 8, 2011 | International Business Machines Corporation | Recasting a legacy web page as a motion picture with audio | | US8077632 | Dec 12, 2005 | Dec 13, 2011 | Citrix Systems, Inc. | Automatic LAN/WAN port detection | | US8078972 | Sep 15, 2006 | Dec 13, 2011 | Citrix Systems, Inc. | Methods and interfaces for displaying performance data related to a current remote access session | | US8090877 | Jan 26, 2009 | Jan 3, 2012 | Citrix Systems, Inc. | Systems and methods for fine grain policy driven cookie proxying | | US8108488 | Nov 18, 2002 | Jan 31, 2012 | JackBe Corporation | System and method for reducing bandwidth requirements for remote applications by utilizing client processing power | | US8117623 | Nov 18, 2005 | Feb 14, 2012 | Adobe Systems Incorporated | System and method for providing notices to users of a computer program in a flexible way | | US8131848 | Sep 29, 2009 | Mar 6, 2012 | | Image analysis and communication device control technology | | US8131875 | Nov 26, 2007 | Mar 6, 2012 | Adobe Systems Incorporated | Device profile assignment based on device capabilities | | US8136100 | Jul 5, 2007 | Mar 13, 2012 | Adobe Systems Incorporated | Software installation and icon management support | | US8146084 | Feb 21, 2007 | Mar 27, 2012 | Adobe Systems Incorporated | Loading applications in non-designated isolation environments | | US8156467 | Aug 27, 2007 | Apr 10, 2012 | Adobe Systems Incorporated | Reusing components in a running application | | US8166165 | Mar 13, 2007 | Apr 24, 2012 | Adobe Systems Incorporated | Securing event flow in a user interface hierarchy | | US8169436 | Jan 27, 2009 | May 1, 2012 | Citrix Systems, Inc. | Methods and systems for remoting three dimensional graphics | | US8171470 | Aug 29, 2006 | May 1, 2012 | Adobe Systems Incorporated | Software installation and support | | US8176466 | Dec 6, 2007 | May 8, 2012 | Adobe Systems Incorporated | System and method for generating an application fragment | | US8191008 | Oct 3, 2005 | May 29, 2012 | Citrix Systems, Inc. | Simulating multi-monitor functionality in a single monitor environment | | US8191060 | Aug 29, 2006 | May 29, 2012 | Adobe Systems Incorporated | Software installation using template executables | | US8200828 | Oct 30, 2009 | Jun 12, 2012 | Citrix Systems, Inc. | Systems and methods for single stack shadowing | | US8219676 | Jun 22, 2010 | Jul 10, 2012 | Citrix Systems, Inc. | Systems and methods for web logging of trace data in a multi-core system | | US8224917 | Sep 24, 2011 | Jul 17, 2012 | Google Inc. | Electronic communication reminder technology | | US8230096 | Jan 14, 2005 | Jul 24, 2012 | Citrix Systems, Inc. | Methods and systems for generating playback instructions for playback of a recorded computer session | | US8230417 | Jun 8, 2007 | Jul 24, 2012 | Adobe Systems Incorporated | Combined application and execution environment install | | US8233392 | Jul 28, 2004 | Jul 31, 2012 | Citrix Systems, Inc. | Transaction boundary detection for reduction in timeout penalties | | US8234657 | Sep 16, 2010 | Jul 31, 2012 | Adobe Systems Incorporated | System and method for communicating state and title information between a browser and a rich internet application with browser forward and back button support | | US8238241 | Jul 28, 2004 | Aug 7, 2012 | Citrix Systems, Inc. | Automatic detection and window virtualization for flow control | | US8244051 | Mar 15, 2006 | Aug 14, 2012 | Microsoft Corporation | Efficient encoding of alternative graphic sets | | US8244875 | Mar 6, 2006 | Aug 14, 2012 | ANXeBusiness Corporation | Secure network computing |
Claims1. In a network configured computer processing system having a plurality of client computers and a plurality of host computers, a method for delivering interactive links for presenting applications and information from remote sources on the network, the method comprising: - retrieving, in response to a request of a client computer, over a first communication connection first information having computer program code embedded therein and executing the embedded computer program code for establishing a second communication connection to a second host computer;
- sending second information relating to the operating environment of the client computer, from the client computer to the second host computer;
- retrieving, over the second communication connection, third information including presentation information for presenting an application and fourth information, the presentation information being based on the second information;
- presenting, at the client computer, the application and the fourth information based upon the presentational information; and
- storing, on the client computer, an interactive link for selectively re-establishing the second communication connection to the second host computer for retrieving the third information and presenting the application and the fourth information.
2. The method as claimed in claim 1, wherein the presentational information includes at least one of instructions for rendering components of the presented application, default parameters and data values exhibited within the components, and application-specific business logic for processing input to the presented application. 3. The method as claimed in claim 1, comprising: - downloading to the client computer a graphical representation of the interactive link;
- associating, at the client computer, the graphical representation with a file containing information representing the operating environment of the client computer and a network address of the second host computer; and
- displaying the graphical representation on the client computer.
4. The method as claimed in claim 3, comprising allowing a user of the client computer to drag and drop the graphical representation onto the client computer. 5. The method as claimed in claim 3, wherein the graphical representation includes information for identifying the presented application and the fourth information invoked by the interactive link and a symbol for indicating that the graphical representation is of an interactive link. 6. The method as claimed in claim 5, wherein the information for identifying is comprised of at least one of an icon and a label representing a commercially recognizable brand name of at least one of the presented application and the fourth information. 7. The method as claimed in claim 5, wherein the symbol is comprised of a teardrop-shaped symbol. 8. The method as claimed in claim 3, wherein the file further contains instructions for rendering components of the presented application, default parameters and data values exhibited within the components, and application-specific business logic for processing input to the presented application, and wherein the instructions override at least a portion of the third information retrieved from the second host computer. 9. The method as claimed in claim 3, comprising: - the user selecting the graphical representation; and
- in response to the selection, accessing the contents of the file associated with the graphical representation and reestablishing the second communication connection to the second host computer for retrieving the third information and presenting the application and the fourth information associated to the interactive link.
10. The method as claimed in claim 9, comprising: - storing, at the second host computer, information representing a first operating state of the application and the fourth information presented to the user; and in response to the selection of the graphical representation, presenting the first operating state information as the application and the fourth information are again presented to the user.
11. The method as claimed in claim 10, wherein the first operating state information is presented to the user at any one of the plurality of client computers. 12. The method as claimed in claim 1, comprising transmitting a copy of the interactive link to a next client computer such that the next client computer is operable for selectively establishing a communication connection to the second host computer for retrieving the third information and presenting, at the next client computer, the application and the fourth information. 13. The method as claimed in claim 12, comprising storing information for tracking transmissions of interactive links between the plurality of client computers. 14. The method as claimed in claim 13, wherein the information for tracking comprises a global unique identifier that is assigned to the interactive link and information for identifying each client computer that has received the interactive link. 15. The method as claimed in claim 1, wherein the network configured computer processing system includes an Internet connection and the client computer includes a desktop-based repository for links to the present applications and the fourth information and an Internet-based repository for the links, and wherein the storing of the interactive link comprises selectively storing the interactive link in one of the desktop-based repository and the internet-based repository. 16. The method as claimed in claim 1, wherein the network configured computer processing system includes an Internet connection and the client computer includes a desktop-based repository for links to the presented applications and the fourth information and an Internet-based repository for the links, and wherein the storing of the interactive link comprises storing the interactive link in both of the desktop-based repository and the internet-based repository. 17. A network configured computer processing system, comprising: - a plurality of client computers, each having an application program code, an operating system program code and a presentation client program code operating thereon, said application program code for requesting informational content stored remotely across said network;
- a first server computer for storing said informational content, a predetermined portion of said informational content having computer program code embedded therein, said first server for delivering said informational content in response to requests from said client computers;
- a second server computer for storing applications and second information invoked by said embedded computer program code and first information including presentational information for presenting said invoked applications and second information, the presentational information including information relating to the operating environment of a requesting client computer;
- a communication connection established between the requesting client computer and said second server by said operating system program code, said presentation client program code and said embedded computer program code, said communication connection for receiving said first information and for presenting said invoked application and said second information at said requesting client computer; and
- an interactive link, stored at said requesting client computer, for selectively re-establishing said communication connection for receiving said first information and for presenting said invoked application and said second information from said second server computer.
18. The system as claimed in claim 17, wherein said presentational information includes at least one of instructions for rendering components of said presented application and said second information, default parameters and data values exhibited within said components, and application-specific business logic for processing input to said presented application. 19. The system as claimed in claim 17, wherein said interactive link includes a graphical representation displayed on said client computer and a file containing information representing the operating environment of said requesting client computer and a network address of said second server computer. 20. The system as claimed in claim 19, wherein said graphical representation includes a symbol for indicating that said graphical representation is of an interactive link and at least one of an icon and a label representing a commercially recognizable brand name of at least one of said presented applications and said second information. 21. The system as claimed in claim 17, comprising: - a data repository for storing, at said second server computer, information representing a first operating state of said applications and said second information presented to a particular user at a client computer; and
- means for retrieving and presenting said first operating state information from said data repository as said invoked application and said second information is re-presented to said particular user.
22. The system as claimed in claim 17, comprising means for transmitting and storing a copy of said interactive link to a next client computer such that said next client computer is operable for selectively invoking said applications and said second information and for forming said communication connection between said next client computer and said second server computer. 23. The system as claimed in claim 22, comprising a data repository for storing information for tracking transmissions of said interactive links between said plurality of client computers. 24. The system as claimed in claim 17, wherein said network further includes an Internet connection and said client computers include a desktop-based repository for said inactive links to said presented applications and said second information and an Internet-based repository for said interactive links, and wherein said interactive links are selectively stored in one of said desktop-based repository and said Internet-based repository. 25. The system as claimed in claim 17, wherein said network further includes an Internet connection and said client computers include a desktop-based repository for said inactive links to said presented applications and said second information and an Internet-based repository for said interactive links, and wherein said interactive links are selectively stored in both of said desktop-based repository and said Internet-based repository. 26. A computer processing system, comprising: - a plurality of client computers;
- a plurality of server computers;
- a network operatively coupling said plurality of client computers to said plurality of server computers; and
- computer program code for presenting over said network, in response to a selection of an interactive link, applications and first information stored in a first of said plurality of server computers, said computer program code comprising:
- a plurality of computer program code segments embedded with informational content stored at a second of said plurality of server computers and delivered to a requesting one of said plurality of client computers;
- an operating system program code segment, one executable at each of said plurality of client computers; and
- a plurality of presentation client computer program code segments, one executable at each of said plurality of client computers, for retrieving presentational information and presenting at each of said client computers, in cooperation with said operating system computer program code segment, said applications and said first information based on said presentational information.
|