1460715486-4e7f02a6-25d3-4947-9bd0-80914f828548

1. An autonomous agricultural machine for performing processing of a crop, the agricultural machine comprising:
a movable agricultural device for performing an agricultural operation;
an outlet for discharging the processed crop from the agricultural machine; and
a protecting element for protecting the outlet, the protecting element having such a flexibility and such a weight that the processed crop is not harmfully influenced by the protecting element.
2. The agricultural machine as claimed in claim 1, wherein the protecting element is movably disposed on the agricultural machine.
3. The agricultural machine as claimed in claim 2, wherein the agricultural machine further comprises a stop for blocking a movement of the protecting element through the outlet into the agricultural machine.
4. The agricultural machine as claimed in claim 1, wherein the agricultural machine further comprises a movement detector for detecting an object that moves through the outlet into the agricultural machine.
5. The agricultural machine as claimed in claim 3, wherein the agricultural machine further comprises a movement detector for detecting an object that moves through the outlet into the agricultural machine.
6. The agricultural machine as claimed in claim 1, wherein the agricultural machine further comprises a pressure sensor for detecting a pressure on the protecting element in a direction towards the agricultural machine.
7. The agricultural machine as claimed in claim 4, wherein the agricultural machine further comprises a pressure sensor for detecting a pressure on the protecting element in a direction towards the agricultural machine.
8. The agricultural machine as claimed in claim 5, wherein the movement detector comprises a pressure sensor for detecting a pressure exerted by the protecting element against the stop.
9. The agricultural machine as claimed in claim 2, wherein the protecting element is a dragging flap or a dragging plate.
10. The agricultural machine as claimed in claim 5, wherein the protecting element is a dragging flap or a dragging plate.
11. The agricultural machine as claimed in claim 8, wherein the protecting element is a dragging flap or a dragging plate.
12. A method of safeguarding operation of an autonomous agricultural machine for performing processing of a crop, the machine having an outlet for discharging the processed crop from the agricultural machine, the method comprising:
providing a protecting element for protecting the outlet, the protecting element having such a flexibility and such a weight that the processed crop is not harmfully influenced by the protecting element;
detecting an object that attempts to move through the outlet into the agricultural machine; and
automatically interrupting operation of the machine on detection of the object.
13. The method as claimed in claim 12, wherein the autonomous agricultural machine further comprises a pressure sensor and the detection of the object is by detecting pressure on the protecting element in a direction towards the agricultural machine.

The claims below are in addition to those above.
All refrences to claim(s) which appear below refer to the numbering after this setence.

1. A method of crawling a graphical user interface (GUI) based application, the method comprising:
performing a first-time crawl of a first sequence of actions of a graphical user interface (GUI) based application, the first-time crawl being a first time that the first sequence of actions is crawled, the first sequence of actions being a prefix of a second sequence of actions that includes one or more additional actions than the first sequence of actions;
extending the first-time crawl by the one or more additional actions such that the second sequence of actions is crawled during the first-time crawl
determining a first inputoutput sequence associated with the first sequence of actions based on the first-time crawl; and
determining a second inputoutput sequence associated with the second sequence of actions based on the first-time crawl.
2. The method of claim 1, further comprising:
determining that a state of the GUI-based application encountered during the first-time crawl of the first sequence of actions has not been previously observed; and
extending the first-time crawl based on the determination that the state has not been previously observed.
3. The method of claim 2, wherein extending the first-time crawl includes extending the first-time crawl by at least two actions based on the determination that the state has not been previously crawled such that the second sequence of actions includes at least two more actions than the first sequence of actions.
4. The method of claim 2, wherein determining that the state has not been previously observed is based on encountering a screen that has not been previously observed.
5. The method of claim 1, further comprising:
executing an L* algorithm with respect to the GUI-based application;
obtaining a response to a query generated by the L* algorithm using one or more of the first inputoutput sequence and the second inputoutput sequence;
obtaining an output of the L* algorithm based on the response; and
generating a deterministic finite-state machine model for the GUI-based application based on the output of the L* algorithm.
6. The method of claim 5, further comprising:
receiving a plurality of queries output by the L* algorithm, each of the plurality of queries including a sequence of actions of the GUI-based application;
determining that a first query of the plurality of queries is a prefix of one or more prefixes of a second query of the plurality of queries;
performing an on-demand crawl of the second query;
determining a first-query inputoutput sequence of the first query and a second-query inputoutput sequence of the second query from the on-demand crawl and based on the determination that the first query is the prefix of the second query such that a first response to the first query and a second response to the second query are both generated from the on-demand crawl.
7. The method of claim 6, further comprising:
modifying an observation table of the L* algorithm based on one or more of the first-query inputoutput sequence and the second-query inputoutput sequence before crawling one or more other queries of the plurality of queries; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent before crawling the one or more other queries of the plurality of queries.
8. The method of claim 5, further comprising:
receiving a plurality of queries output by the L* algorithm, each of the plurality of queries including a sequence of actions of the GUI-based application;
obtaining a response to a query of the plurality of queries;
modifying an observation table of the L* algorithm based on the response to the query before crawling one or more other queries of the plurality of queries; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent before crawling the one or more other queries of the plurality of queries.
9. The method of claim 8, further comprising generating a new plurality of queries when the modified observation table is not closed and consistent.
10. A method of crawling a graphical user interface (GUI) based application, the method comprising:
receiving a plurality of queries for crawling a graphical user interface (GUI) based application, each of the plurality of queries including a sequence of actions of the GUI-based application;
determining that a first query of the plurality of queries is a prefix of one or more prefixes of a second query of the plurality of queries;
performing an on-demand crawl of the second query;
determining a first-query inputoutput sequence of the first query and a second-query inputoutput sequence of the second query from the on-demand crawl and based on the determination that the first query is the prefix of the second query such that a first response to the first query and a second response to the second query are both generated from the on-demand crawl.
11. The method of claim 10, further comprising:
generating the plurality of queries with an L* algorithm;
modifying an observation table of the L* algorithm based on one or more of the first-query inputoutput sequence and the second-query inputoutput sequence; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent.
12. The method of claim 10, further comprising:
generating the plurality of queries with an L* algorithm;
modifying an observation table of the L* algorithm based on one or more of the first-query inputoutput sequence and the second-query inputoutput sequence; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent before crawling one or more other queries of the plurality of queries.
13. One or more processors configured to execute computer instructions to cause a system to perform operations for crawling a graphical user interface (GUI) based application, the operations comprising:
performing a first-time crawl of a first sequence of actions of a graphical user interface (GUI) based application, the first-time crawl being a first time that the first sequence of actions is crawled, the first sequence of actions being a prefix of a second sequence of actions that includes one or more additional actions than the first sequence of actions;
extending the first-time crawl by the one or more additional actions such that the second sequence of actions is crawled during the first-time crawl
determining a first inputoutput sequence associated with the first sequence of actions based on the first-time crawl; and
determining a second inputoutput sequence associated with the second sequence of actions based on the first-time crawl.
14. The one or more processors of claim 13, wherein the operations further comprise:
determining that a state of the GUI-based application encountered during the first-time crawl of the first sequence of actions has not been previously observed; and
extending the first-time crawl based on the determination that the state has not been previously observed.
15. The one or more processors of claim 14, wherein extending the first-time crawl includes extending the first-time crawl by at least two actions based on the determination that the state has not been previously crawled such that the second sequence of actions includes at least two more actions than the first sequence of actions.
16. The one or more processors of claim 14, wherein determining that the state has not been previously observed is based on encountering a screen that has not been previously observed.
17. The one or more processors of claim 13, wherein the operations further comprise:
executing an L* algorithm with respect to the GUI-based application;
obtaining a response to a query generated by the L* algorithm using one or more of the first inputoutput sequence and the second inputoutput sequence;
obtaining an output of the L* algorithm based on the response; and
generating a deterministic finite-state machine model for the GUI-based application based on the output of the L* algorithm.
18. The one or more processors of claim 17, wherein the operations further comprise:
receiving a plurality of queries output by the L* algorithm, each of the plurality of queries including a sequence of actions of the GUI-based application;
determining that a first query of the plurality of queries is a prefix of one or more prefixes of a second query of the plurality of queries;
performing an on-demand crawl of the second query;
determining a first-query inputoutput sequence of the first query and a second-query inputoutput sequence of the second query from the on-demand crawl and based on the determination that the first query is the prefix of the second query such that a first response to the first query and a second response to the second query are both generated from the on-demand crawl.
19. The one or more processors of claim 18, wherein the operations further comprise:
modifying an observation table of the L* algorithm based on one or more of the first-query inputoutput sequence and the second-query inputoutput sequence before crawling one or more other queries of the plurality of queries; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent before crawling the one or more other queries of the plurality of queries.
20. The one or more processors of claim 17, wherein the operations further comprise:
receiving a plurality of queries output by the L* algorithm, each of the plurality of queries including a sequence of actions of the GUI-based application;
obtaining a response to a query of the plurality of queries;
modifying an observation table of the L* algorithm based on the response to the query before crawling one or more other queries of the plurality of queries; and
executing the L* algorithm with respect to the GUI-based application using the modified observation table to determine whether the modified observation table is closed and consistent before crawling the one or more other queries of the plurality of queries.