A three-dimensional network mapping system that includes a database; a web crawler interfacing with the database, the web crawler adapted to visit a website and download website content data relating to the website to the database; and a user interface interfacing with the database, the user interface adapted to form a three-dimensional website map by orienting the website content data in an organized three-dimensional web page structure representing a layout of the website. A three-dimensional network mapping method is also disclosed.
|
19. A three-dimensional network mapping method, comprising:
obtaining website content data comprising web pages of each of a plurality of websites corresponding to a plurality of website domains and downloading the website content data to a database;
forming a three-dimensional (3d) representation of each of the plurality of website domains by orienting the web pages of each of the plurality of websites in an organized three-dimensional (3d) web page structure representing a layout of the plurality of websites in a three-dimensional (3d) space;
interfacing an interest value engine with a network controller, wherein the interest value engine:
monitors a level of user interest and maintains a plurality of interest values corresponding to the plurality of website domains that are periodically adjusted based on respective amounts of time each of the plurality of website domains has been selected by a user,
determines a first interest value associated with a first website domain of the plurality of website domains based on an amount of time the first website domain has been currently selected by the user, determines a second interest value that is smaller than the first interest value of one or more other website domains linked via one or more uniform resource locator (URL) links to the first website domain, normalizes the first interest value and the second interest value across the first website domain and the one or more other website domains linked to the first website domain such that a total interest value assigned does not exceed a predefined cap, and retrieves additional information on one of the first website domain and the one or more other website domains when the one of the first website domain and the other website domains accumulates a certain interest value;
organizing the web pages of the website content data with respect to each other in the 3d space by using simulated physics forces;
hiding a 3d representation of the first website domain by disabling all display elements associated with the first website domain when the first interest value falls below a predefined interest value;
enabling the 3d representation of the first website domain by enabling all display elements associated with the first website domain when the first interest value rises above the predefined interest value.
26. A three-dimensional network mapping system, comprising:
a database;
a computer configured to execute:
a web crawler interfacing with the database, the web crawler adapted to visit a website corresponding to a website domain and download website content data comprising web pages relating to the website to the database,
the web crawler including a user interface interfacing with the database, the user interface adapted to form a three-dimensional (3d) representation of the website domain by orienting the web pages in an organized three-dimensional (3d) web page structure representing a layout of the website in a three-dimensional (3d) space;
wherein the user interface comprises a network controller interfacing with the database, a galaxy controller interfacing with the network controller and a user input controller interfacing with the galaxy controller, the galaxy controller adapted to place the web pages and three-dimensional (3d) representations of one or more uniform resource locator (URL) links between the web pages into the 3d space and coordinate relationships of said web pages to each other in the 3d space, the galaxy controller further adapted to organize the web pages with respect to each other in the 3d space by using simulated physics forces;
an interest value engine interfacing with the network controller, the interest value engine adapted to run periodically, increment an interest value of the website domain by a certain amount based on an amount of time that a user has selected the website domain, increment an interest value of other website domains that are linked via one or more of the one or more URL links by a smaller amount, normalize interest values across the website domain and the other website domains linked to the website domain such that a total interest value does not exceed a predefined cap, and transmit a request to the network controller to retrieve additional information on one of the website domain and the other website domains when one of the website domain and the other website domains accumulates a certain interest value;
a domain concealment component interfacing with the galaxy controller, the domain concealment component adapted to hide the 3d representation of the website domain by disabling all display elements associated with the website domain; and
a domain display component interfacing with the galaxy controller, the domain display component adapted to enable the 3d representation of all display elements of the website domain;
wherein the simulated physics forces comprise formulae: (a) Compression Force=website domain position*−1*compression constant; (b) Origin force=position of the website domain (ignoring a vertical component)*cohesion constant; and (c) Cross domain pull/push Force=h*(r*s/m)−p, wherein the cross domain pull/push force is calculated for the website domain ‘d’ and the other website domains ‘od’, heading ‘h’ is a vector from ‘od’ to ‘d’, ‘s’ is a size (number of pages) of website domain ‘d’, repulsion ‘r’ and pull ‘p’ are constants, and ‘m’ is a magnitude of ‘h’.
1. A three-dimensional network mapping system, comprising:
a database;
a computer configured to execute:
a web crawler interfacing with the database, the web crawler adapted to visit a plurality of websites corresponding to a plurality of website domains and download website content data comprising web pages of each of the plurality of websites to the database;
a user interface interfacing with the database, the user interface adapted to form a three-dimensional (3d) representation each of the plurality of website domains by orienting the web pages of each of the plurality of websites in an organized three-dimensional (3d) web page structure representing a layout of the plurality of websites in a three-dimensional (3d) space;
wherein the user interface comprises a network controller interfacing with the database, a galaxy controller interfacing with the network controller, and a user input controller interfacing with the galaxy controller and the network controller, the galaxy controller adapted to place the web pages of each of the plurality of websites and three-dimensional (3d) representations of uniform resource locater (URL) links between the web pages into the 3d space and coordinate relationships of said web pages to each other in the 3d space, wherein the galaxy controller is further adapted to organize the web pages with respect to each other in the 3d space by using simulated physics forces;
an interest value engine interfacing with the network controller, the interest value engine adapted to monitor usage and maintain a plurality of interest values corresponding to the plurality of website domains that are periodically adjusted based on respective amounts of time each of the plurality of website domains has been selected by a user,
wherein the interest value engine is further adapted to: determine a first interest value associated with a first website domain of the plurality of website domains based on an amount of time the first website domain has been currently selected by the user, determine a second interest value that is smaller than the first interest value of one or more other website domains that are linked via one or more of the URL links to the first website domain, normalize the first interest value and the second interest value across the first website domain and the one or more other website domains linked to the first website domain such that a total interest value does not exceed a predefined cap, and transmit a request to the network controller to retrieve additional information on one of the first website domain and the one or more other website domains when the one of the first website domain and the one or more other website domains accumulates a certain interest value;
a domain concealment component interfacing with the galaxy controller and the interest value engine, the domain concealment component adapted to hide a 3d representation of the first website domain by disabling all display elements associated with the 3d representation of the first website domain, the interest value engine being further adapted to send a message to the domain concealment component to remove all display elements associated with the 3d representation of the first website domain from display when the first interest value of the first website domain falls below a predefined interest value; and
a domain display component interfacing with the galaxy controller, the domain display component adapted to enable display of at least one display element associated with the 3d representation of the first website domain, the interest value engine being further adapted to send a message to the domain display component to display the 3d representation of the first website domain when the first interest value of the first website domain rises above the predefined interest value.
8. A three-dimensional network mapping system, comprising:
a database;
a computer configured to execute:
a web crawler interfacing with the database, the web crawler adapted to visit a plurality of websites corresponding to a plurality of website domains and download website content data comprising web pages of each of the plurality of websites to the database; and
a user interface interfacing with the database, the user interface adapted to form a three-dimensional (3d) representation of each of the plurality of website domains by orienting the web pages of each of the plurality of websites in an organized three-dimensional (3d) web page structure representing a layout of the plurality of websites in a three-dimensional (3d) space, the user interface including:
a network controller interfacing with the database,
a galaxy controller interfacing with the network controller, the galaxy controller having a spawner domain component interfacing with the network controller and adapted to place the web pages of each of the plurality of websites into the 3d space, the galaxy controller adapted to coordinate relationships of the web pages of the plurality of websites to each other in the 3d space, wherein the galaxy controller is further adapted to organize the web pages of each of the plurality of websites with respect to each other in the 3d space by using simulated physics forces,
a user input controller interfacing with the galaxy controller, wherein the user input controller includes controls for expanding or contracting a field of view,
a domain controller interfacing with the user input controller and the galaxy controller, wherein the domain controller is adapted to coordinate movement of the web pages in the 3d space; and
wherein the galaxy controller further comprises an interest value engine interfacing with the network controller, the interest value engine adapted to monitor usage and maintain a plurality of interest values corresponding to the plurality of website domains that are periodically adjusted based on respective amounts of time each of the plurality of website domains has been selected by a user, wherein the interest value engine is further adapted to:
determine a first interest value associated with a first website domain of the plurality of website domains based on an amount of time the first website domain has been currently selected by the user, determine a second interest value that is smaller than the first interest value of one or more other website domains that are linked via one or more uniform resource locator (URL) links to the first website domain, normalize the first interest value and the second interest value across the first website domain and the one or more other website domains linked to the first website domain such that a total interest value assigned to a particular website domain does not exceed a predefined cap, and transmit a request to the network controller to retrieve additional information on one of the first website domain and the one or more other website domains when the one of the first website domain and the one or more other website domains accumulates a certain interest value;
a domain concealment component interfacing with the galaxy controller, the domain concealment component adapted to hide a 3d representation of the first website domain by disabling all display elements associated with the 3d representation of the first website domain, the interest value engine being further adapted to send a message to the domain concealment component to remove the 3d representation of the first website domain from display when the first interest value falls below a predefined interest value; and
a domain display component interfacing with the galaxy controller, the domain display component adapted to enable display of at least one display element associated with the 3d representation of the first website domain, the interest value engine being further adapted to send a message to the domain display component to display the 3d representation of the first website domain when the first interest value rises above the predefined interest value.
14. A three-dimensional network mapping system, comprising:
a database;
a computer configured to execute:
a web crawler interfacing with the database, the web crawler adapted to visit a plurality of websites corresponding to a plurality of website domains and download website content data comprising web pages of each of the plurality of websites to the database;
a user interface interfacing with the database, the user interface adapted to form a three-dimensional (3d) representation each of the plurality of website domains by orienting the web pages of each of the plurality of websites in an organized three-dimensional (3d) web page structure representing a layout of the plurality of website domains in a three-dimensional (3d) space, and the user interface including:
a network controller interfacing with the database,
a galaxy controller interfacing with the network controller, the galaxy controller having:
a progenitor component interfacing with the network controller, the progenitor component adapted to load a predetermined starting website,
a spawner domain component interfacing with the progenitor component and adapted to place the web pages of each of the plurality of websites into the 3d space, the galaxy controller adapted to coordinate relationships of the web pages of each of the plurality of websites to each other in the 3d space,
a data recipient component interfacing with the network controller and the spawner domain component, the data recipient component adapted to receive the website content data from the network controller and transmit the website content data to the spawner domain component,
a domain controller interfacing with the spawner domain component and the data recipient component, the domain controller adapted to coordinate movement of the web pages within the 3d space,
a system forces application component, the system forces application component adapted to apply forces on a 3d representation of a particular website domain when a user zooms the particular website domain into system view,
a galaxy forces application component, the galaxy forces application component adapted to apply forces on a 3d representation of a particular website domain when the user zooms the particular website domain into galaxy view,
an interest value engine interfacing with the network controller, the interest value engine adapted to monitor usage and maintain a plurality of interest values corresponding to the plurality of website domains that are periodically adjusted based on respective amounts of time each of the plurality of website domains has been selected by the user,
wherein the interest value engine is further adapted to: determine a first interest value associated with a first website domain of the plurality of website domains based on an amount of time the first website domain has been currently selected by the user, determine a second interest value that is smaller than the first interest value of one or more other website domains that are linked via one or more uniform resource locator (URL) links to the first website domain, normalize the first interest value and the second interest value across the first website domain and the one or more other website domains linked to the first website domain that are currently monitored by the interest value engine such that a total interest value assigned to the plurality of website domains does not exceed a predefined cap, and transmit a request to the network controller to retrieve additional information on one of the first website domain and the one or more other website domains when the one of the first website domain and the one or more other website domains accumulates a certain interest value, the galaxy controller further adapted to organize the web pages with respect to each other in the 3d space by using simulated physics forces;
a domain concealment component interfacing with the galaxy controller and the interest value engine, the domain concealment component adapted to hide a 3d representation of one of the other website domains when it receives a message from the interest value engine by disabling all display elements associated with the 3d representation of the one of the other website domains, the interest value engine being further adapted to send a message to the domain concealment component to remove the 3d representation of the one of the other website domains from display when the second interest value of the one of the other website domains falls below a predefined interest value;
a domain display component interfacing with the galaxy controller, the domain display component adapted to enable display of at least one display element associated with the 3d representation of the first website domain, the interest value engine being further adapted to send a message to the domain display component to display the 3d representation of the first website domain when the first interest value of the first website domain rises above the predefined interest value, and
a user input controller interfacing with the galaxy controller, the user input controller includes controls for expanding or contracting a field of view.
2. The system of
3. The system of
4. The system of
5. The system of
6. The system of
7. The system of
9. The system of
10. The system of
11. The system of
12. The system of
13. The system of
15. The system of
16. The system of
17. The system of
18. The system of
a system structure component interfacing with the galaxy controller, the system structure component adapted to create web pages and place them in the 3d space; and
a system concealment component interfacing with the galaxy controller, the system concealment component adapted to hide the created web pages from view.
20. The method of
21. The method of
22. The method of
23. The method of
24. The method of
25. The method of
|
Illustrative embodiments of the disclosure generally relate to systems and methods for mapping the Internet and other networks. More particularly, illustrative embodiments of the disclosure relate to a three-dimensional network mapping system and method for three-dimensional mapping of web pages from the Internet or other network.
A conventional web browser displays web pages on a website one page at a time. A user can sequentially access the web pages by clicking a forward or backward button on the browser. If numerous web pages are sequentially accessed and viewed, the user may be required to click the backward button on the browser multiple times to reach a page which was previously accessed. Moreover, in some instances a user may desire to access and view web pages from multiple websites simultaneously.
In computer graphics, objects are represented three-dimensionally on a two-dimensional computer screen, enabling a viewer to comprehend more than one view of the object. Three-dimensional objects are generated using a collection of points in three-dimensional space and may be connected with triangles, lines or other entities. Methods are known for generating three-dimensional object data models which utilize point clouds and geometric shapes.
A three-dimensional network mapping system and method for three-dimensional mapping of web pages from the Internet or other network may be desirable for some applications.
Illustrative embodiments of the disclosure are generally directed to a three-dimensional network mapping system. An illustrative embodiment of the three-dimensional network mapping system includes a database; a web crawler interfacing with the database, the web crawler adapted to visit a website and download website content data relating the website to the database; and a user interface interfacing with the database, the user interface adapted to form a three-dimensional website domain by orienting the website content data in an organized three-dimensional organizational structure representing a layout of the website in a simulated three-dimensional environment.
Illustrative embodiments of the disclosure are further generally directed to a three-dimensional network mapping method. An illustrative embodiment of the method includes obtaining website content data relating to a website and forming a three-dimensional website domain by orienting the website content data in an organized three-dimensional web page structure representing a layout of the website in three-dimensional space.
Illustrative embodiments of the disclosure will now be described, by way of example, with reference to the accompanying drawings, in which:
The following detailed description is merely exemplary in nature and is not intended to limit the described embodiments or the application and uses of the described embodiments. As used herein, the word “exemplary” or “illustrative” means “serving as an example, instance, or illustration.” Any implementation described herein as “exemplary” or “illustrative” is non-limiting and is not necessarily to be construed as preferred or advantageous over other implementations. All of the implementations described below are exemplary implementations provided to enable persons skilled in the art to practice the disclosure and are not intended to limit the scope of the appended claims. Moreover, the illustrative embodiments described herein are not exhaustive and embodiments or implementations other than those which are described herein and which fall within the scope of the appended claims are possible. Furthermore, there is no intention to be bound by any expressed or implied theory presented in the preceding technical field, background, brief summary or the following detailed description.
Referring initially to
According to implementation of the system 100, websites may be attracted to each other when there is a link between them. The linked websites may be repelled by any non-linked websites which approach them in the three-dimensional space. Other simulated physical forces may also be applied to the websites, creating an organized three-dimensional website structure that represents the layout of the website or linked websites. A similar structure may also be created that shows how websites fit in with other websites to which they link.
As illustrated in
The web crawler 101 may be hosted on a cloud server. The web crawler 101 is programmed to visit websites, download website content data 105 and “fuzz” the data 105. Fuzzing is a method which is used by web crawlers to throw away irrelevant bits of data and keep only important data. The web crawler 101 collects and stores the website content data 105 and store the data 105 in the database 102. The website content data 105 which the web crawler 101 collects and stores may include information regarding the size of the website, which pages the website contains, any links to other websites and any security vulnerabilities. The system may be implemented using any type of crawler known by those skilled in the art as long as the crawler is capable of supplying the required website content data 105.
The database 102 may be any type of database which is capable of storing the required website content data 105. In some embodiments, the database 102 may be a distributed “HBase” infrastructure which spreads the database across multiple servers for efficiency. HBase is a non-relational, distributed database modeled after Google's BigTable and written in Java. The database 102 stores the website content data 105 that the web crawler 101 collects and distributes the website content data 105 to the user interface 103 when a user (not illustrated) at the user interface 103 requests the website content data 105 in a three-dimensional format.
The user interface 103 may connect to the database 102 over the Internet. The user interface 103 may be configured to transmit to the database 102 an information packet 104 which requests website content data 105 that relates to the structure of a website obtained by the web crawler 101 and stored in the database 102. The information packet 104 may also request website content data 105 which specifies other details about the website that were requested by the user and are to be downloaded to the user interface 103. The database 102 is adapted to respond to the information packet 104 by transmitting the website content data 105 to the user interface 103. The user interface 103 may be configured to organize the website content data 105 and display the website content data 105 to the user in a three-dimensional format.
Referring next to
The network controller 201 of the user interface 103 may communicate with the database 102 (
The galaxy controller 202 of the user interface 103 may place the web pages into three-dimensional space and coordinate the relationships of multiple domains, websites or web pages in a website to each other in the three-dimensional space. The domain controller 203 of the user interface 103 may coordinate the movement and behavior of web pages and links between web pages within a domain.
The input controller 204 of the user interface 103 may process user input. The user controls 205 of the input controller 204 may include controls for rotating the view, zooming in and out, clicking on objects, dragging objects and double-clicking on objects, for example and without limitation. The user controls 205 may vary depending on the type of device (computer/laptop, web browser, smart phone, etc.) on which the system 100 is deployed.
When the user zooms in or out past a certain defined zoom level the input controller 204 may send a message to the galaxy controller 202 telling it to behave in either System View, if the screen has been zoomed in close, or Galaxy View, if it is further away.
Referring next to
The progenitor component 301 of the galaxy controller 202 may load a predetermined starting domain or website. The progenitor component 301 may also transmit a query to the network controller 201 for additional information on the domain.
The interest value engine 302 of the galaxy controller 202 may start when the application is initiated and may be configured to run periodically, such as every two seconds, for example and without limitation. The interest value engine 302 may add interest to whichever domain the user is focusing on (currently-focused domain) and may also add a smaller amount of interest to the domains that are linked to the currently-focused domain. The interest value engine 302 may normalize the total interest values across all domains such that the total interest assigned does not exceed a defined cap. When a domain accumulates sufficient interest value, the interest value engine 302 may transmit a request to the network controller 201 to retrieve additional information on that domain.
The data recipient component 304 of the galaxy controller 202 may receive website content data 105 (
The system forces application component 305 applies forces that act on the 3D website domain when the user zooms the 3D website domain into system view. Forces in the 3D environment are created by defining a direction and a strength (together these two elements are called a vector) and telling the 3D engine to apply that force to a specific object in 3D space. The system forces application component 305 may load when the application loads and may continually update the forces periodically (forces may be recalculated as often as 50 times per second, for example and without limitation). The system forces application component 305 may apply the following forces to every 3D website domain:
(1). Compression: Force=The domain's position*−1*compression constant;
(2). Cross domain pull/push: Force=h*(r*s/m)−p. This calculation is called for each domain that exists (d) and other domains that also exist (od). Heading (h) is the vector from od to d. (s) is the size (number of pages) of d. Repulsion (r) and Pull (p) are constants. (m) is the magnitude of h.
(3). Domain separator: Force=h*(r/m). This calculation is called for each domain that is currently showing pages (d) and other domains that exist (od). Heading (h) is the vector from od to d, ignoring the vertical axis. (m) is the magnitude of h.
The galaxy forces application component 306 may load when the application loads and may continually update the forces (forces may be recalculated as often as 50 times per second, for example and without limitation). The galaxy forces application component 306 may apply the forces that act on the domain when the user zooms the 3D website domain into galaxy view. The galaxy forces application component 306 may apply the following forces to every domain:
(1). Compression: Force=The domain's position*−1*compression constant;
(2). Origin force: The position of the current domain in focus (ignoring the vertical component) times the cohesion constant;
(3). Cross domain pull/push: Force=h*(r*s/m)−p. This calculation is called for each domain that exists (d) and other domains that also exist (od). Heading (h) is the vector from od to d. (s) is the size (number of pages) of d. Repulsion (r) and Pull (p) are constants. (m) is the magnitude of h.
Referring next to
The domain concealment component 401 may disable all the display elements associated with a 3D website domain. The domain display component 402 may enable all the display elements associated with the current domain project. The system structure component 403 may hide the domain object and create all the pages associated with the current domain object. The system structure component 403 may launch the pages in a random direction in three-dimensional space, and the forces that are applied cause the launched pages to structure themselves. The system concealment component 404 may delete all the pages from view and show the domain object. The galaxy forces application component 405 may load when the domain is first spawned and may continually periodically update the forces (such as 50 times per second, for example and without limitation). The galaxy forces application component 405 may apply the forces that act on the pages associated with a domain when the domain is not spawned. In some embodiments, no pages may exist in this view; therefore, forces may not be applied to the pages. The system forces application component 406 may load when the domain is first spawned and may continually and periodically update the forces (such as 50 times per second, for example and without limitation). The system forces application component 406 may apply the forces that act on the pages associated with a domain when the domain is spawned. The system forces application component 406 may apply the following forces to every domain:
(1). Heading: Force on home=h*c. (h) is the vector of the domain position excluding the y axis. (c) is the cohesion constant;
(2). Buoyancy: Force=−y−(s−d)*h*b. (y) is the y value of the position of page. Surface (s) is a constant. Height of one level (h) is a constant. Depth (d) is how high the object should float. Buoyancy force (b) defines how much effect buoyancy should have and is a constant;
(3). Push/pull to home: Force=h*(r/m)−c. Every page receives a force attracting them to a particular distance away from the home page. Heading (h) is the vector from the current page to the home page. Repulsion (r) and cohesion (c) are constants. The magnitude of h is (m);
(4). Repulsion: Force=h*(r/m). This is applied from every page (p) to every other page (op). Heading (h) is the vector from p to op. Repulsion (r) is a constant. The magnitude of h is (m).
(5). Pull: Force (from)=−h*p; Any two pages that are linked are pulled closer to each other. Heading (h) is the vector from the origin of the link to the destination. Pull (p) is a constant;
(6). Pull: Force (to)=h*p.
Referring next to
Referring next to
While the embodiments of the disclosure have been described above, it will be recognized and understood that various modifications can be made and the appended claims are intended to cover all such modifications which may fall within the spirit and scope of the disclosure.
Patent | Priority | Assignee | Title |
Patent | Priority | Assignee | Title |
6205485, | Mar 27 1997 | JLB Ventures LLC | Simulcast WEB page delivery using a 3D user interface system |
6300957, | Jul 29 1998 | SAP America, Inc | Mapping a node-link structure to a rendering space beginning from any node |
6470383, | Oct 15 1996 | HEWLETT-PACKARD DEVELOPMENT COMPANY, L P | System and methods for generating and displaying web site usage data |
8111255, | Apr 27 2007 | HIGHBRIDGE PRINCIPAL STRATEGIES, LLC, AS COLLATERAL AGENT | Mobile communication terminal for controlling display information |
8456467, | Nov 11 2011 | GOOGLE LLC | Embeddable three-dimensional (3D) image viewer |
8694531, | Aug 15 2008 | System and method for analyzing and matching digital media libraries | |
20020174087, | |||
20030130982, | |||
20030208323, | |||
20070276807, | |||
20080235622, | |||
20080266289, | |||
20090089714, | |||
20100153372, | |||
20110221745, | |||
20120158715, | |||
20130024764, | |||
20130090101, | |||
20130144566, | |||
20130166568, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Date | Maintenance Fee Events |
Aug 05 2022 | SMAL: Entity status set to Small. |
Feb 14 2023 | MICR: Entity status set to Micro. |
Mar 04 2023 | M3551: Payment of Maintenance Fee, 4th Year, Micro Entity. |
Mar 04 2023 | M3554: Surcharge for Late Payment, Micro Entity. |
Date | Maintenance Schedule |
Aug 06 2022 | 4 years fee payment window open |
Feb 06 2023 | 6 months grace period start (w surcharge) |
Aug 06 2023 | patent expiry (for year 4) |
Aug 06 2025 | 2 years to revive unintentionally abandoned end. (for year 4) |
Aug 06 2026 | 8 years fee payment window open |
Feb 06 2027 | 6 months grace period start (w surcharge) |
Aug 06 2027 | patent expiry (for year 8) |
Aug 06 2029 | 2 years to revive unintentionally abandoned end. (for year 8) |
Aug 06 2030 | 12 years fee payment window open |
Feb 06 2031 | 6 months grace period start (w surcharge) |
Aug 06 2031 | patent expiry (for year 12) |
Aug 06 2033 | 2 years to revive unintentionally abandoned end. (for year 12) |