{ "cells": [ { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "slide" }, "tags": [] }, "source": [ "# Testing Graphical User Interfaces\n", "\n", "In this chapter, we explore how to generate tests for Graphical User Interfaces (GUIs), abstracting from our [previous examples on Web testing](WebFuzzer.ipynb). Building on general means to extract user interface elements and activate them, our techniques generalize to arbitrary graphical user interfaces, from rich Web applications to mobile apps, and systematically explore user interfaces through forms and navigation elements." ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.373604Z", "iopub.status.busy": "2025-01-16T10:12:34.373516Z", "iopub.status.idle": "2025-01-16T10:12:34.443029Z", "shell.execute_reply": "2025-01-16T10:12:34.442753Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [ { "data": { "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 1, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from bookutils import YouTubeVideo\n", "YouTubeVideo('79-HRgFot4k')" ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "**Prerequisites**\n", "\n", "* We build on the Web server introduced in the [chapter on Web testing](WebFuzzer.ipynb)." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "skip" } }, "source": [ "## Synopsis\n", "\n", "\n", "To [use the code provided in this chapter](Importing.ipynb), write\n", "\n", "```python\n", ">>> from fuzzingbook.GUIFuzzer import \n", "```\n", "\n", "and then make use of the following features.\n", "\n", "\n", "This chapter demonstrates how to programmatically interact with user interfaces, using Selenium on Web browsers. It provides an experimental `GUICoverageFuzzer` class that automatically explores a user interface by systematically interacting with all available user interface elements.\n", "\n", "The function `start_webdriver()` starts a headless Web browser in the background and returns a _GUI driver_ as handle for further communication.\n", "\n", "```python\n", ">>> gui_driver = start_webdriver()\n", "The geckodriver version (0.34.0) detected in PATH at /Users/zeller/bin/geckodriver might not be compatible with the detected firefox version (135.03); currently, geckodriver 0.35.0 is recommended for firefox 135.*, so it is advised to delete the driver in PATH and retry\n", "\n", "```\n", "We let the browser open the URL of the server we want to investigate (in this case, the vulnerable server from [the chapter on Web fuzzing](WebFuzzer.ipynb)) and obtain a screenshot.\n", "\n", "```python\n", ">>> gui_driver.get(httpd_url)\n", ">>> Image(gui_driver.get_screenshot_as_png())\n", "```\n", "![](PICS/GUIFuzzer-synopsis-1.png)\n", "\n", "The `GUICoverageFuzzer` class explores the user interface and builds a _grammar_ that encodes all states as well as the user interactions required to move from one state to the next. It is paired with a `GUIRunner` which interacts with the GUI driver.\n", "\n", "```python\n", ">>> gui_fuzzer = GUICoverageFuzzer(gui_driver)\n", ">>> gui_runner = GUIRunner(gui_driver)\n", "```\n", "The `explore_all()` method extracts all states and all transitions from a Web user interface.\n", "\n", "```python\n", ">>> gui_fuzzer.explore_all(gui_runner)\n", "```\n", "The grammar embeds a finite state automation and is best visualized as such.\n", "\n", "```python\n", ">>> fsm_diagram(gui_fuzzer.grammar)\n", "```\n", "![](PICS/GUIFuzzer-synopsis-2.svg)\n", "\n", "The GUI Fuzzer `fuzz()` method produces sequences of interactions that follow paths through the finite state machine. Since `GUICoverageFuzzer` is derived from `CoverageFuzzer` (see the [chapter on coverage-based grammar fuzzing](GrammarCoverageFuzzer.ipynb)), it automatically covers (a) as many transitions between states as well as (b) as many form elements as possible. In our case, the first set of actions explores the transition via the \"order form\" link; the second set then goes until the \"\" state.\n", "\n", "```python\n", ">>> gui_driver.get(httpd_url)\n", ">>> actions = gui_fuzzer.fuzz()\n", ">>> print(actions)\n", "fill('city', 'U')\n", "fill('email', 'r@z')\n", "fill('name', 'H')\n", "check('terms', True)\n", "fill('zip', '3')\n", "submit('submit')\n", "click('order form')\n", "fill('city', 'q')\n", "fill('email', 'v@p')\n", "fill('name', 's')\n", "check('terms', True)\n", "fill('zip', '4')\n", "submit('submit')\n", "\n", "\n", "```\n", "These actions can be fed into the GUI runner, which will execute them on the given GUI driver.\n", "\n", "```python\n", ">>> gui_driver.get(httpd_url)\n", ">>> result, outcome = gui_runner.run(actions)\n", ">>> Image(gui_driver.get_screenshot_as_png())\n", "```\n", "![](PICS/GUIFuzzer-synopsis-3.png)\n", "\n", "Further invocations of `fuzz()` will further cover the model – for instance, exploring the terms and conditions.\n", "\n", "Internally, `GUIFuzzer` and `GUICoverageFuzzer` use a subclass `GUIGrammarMiner` which implements the analysis of the GUI and all its states. Subclassing `GUIGrammarMiner` allows extending the interpretation of GUIs; the `GUIFuzzer` constructor allows passing a miner via the `miner` keyword parameter.\n", "\n", "A tool like `GUICoverageFuzzer` will provide \"deep\" exploration of user interfaces, even filling out forms to explore what is behind them. Keep in mind, though, that `GUICoverageFuzzer` is experimental: It only supports a subset of HTML form and link features, and does not take JavaScript into account.\n", "\n", "![](PICS/GUIFuzzer-synopsis-4.svg)\n", "\n" ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": true, "run_control": { "read_only": false }, "slideshow": { "slide_type": "slide" } }, "source": [ "## Automated GUI Interaction\n", "\n", "In the [chapter on Web testing](WebFuzzer.ipynb), we have shown how to test Web-based interfaces by directly interacting with a Web server using the HTTP protocol, and processing the retrieved HTML pages to identify user interface elements. While these techniques work well for user interfaces that are based on HTML only, they fail as soon as there are interactive elements that use JavaScript to execute code within the browser, and generate and change the user interface without having to interact with the browser." ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": true, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "In this chapter, we therefore take a different approach to user interface testing. Rather than using HTTP and HTML as the mechanisms for interaction, we leverage a dedicated _UI testing framework_, which allows us to\n", "\n", "* query the program under test for available user interface elements, and\n", "* query the UI elements for how they can be interacted with.\n", "\n", "Although we will again illustrate our approach using a Web server, the approach easily generalizes to _arbitrary user interfaces_. In fact, the UI testing framework we use, *Selenium*, also comes in variants that run for Android apps." ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": true, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "### Our Web Server, Again\n", "\n", "As in the [chapter on Web testing](WebFuzzer.ipynb), we run a Web server that allows us to order products." ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "button": false, "execution": { "iopub.execute_input": "2025-01-16T10:12:34.463221Z", "iopub.status.busy": "2025-01-16T10:12:34.463096Z", "iopub.status.idle": "2025-01-16T10:12:34.465200Z", "shell.execute_reply": "2025-01-16T10:12:34.464959Z" }, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "import bookutils.setup" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.466732Z", "iopub.status.busy": "2025-01-16T10:12:34.466640Z", "iopub.status.idle": "2025-01-16T10:12:34.468176Z", "shell.execute_reply": "2025-01-16T10:12:34.467932Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from typing import Set, FrozenSet, List, Optional, Tuple, Any" ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.469671Z", "iopub.status.busy": "2025-01-16T10:12:34.469575Z", "iopub.status.idle": "2025-01-16T10:12:34.471102Z", "shell.execute_reply": "2025-01-16T10:12:34.470890Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "import os\n", "import sys" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.472616Z", "iopub.status.busy": "2025-01-16T10:12:34.472539Z", "iopub.status.idle": "2025-01-16T10:12:34.474229Z", "shell.execute_reply": "2025-01-16T10:12:34.474010Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "# ignore\n", "if 'CI' in os.environ:\n", " # Can't run this in our continuous environment,\n", " # since it can't run a headless Web browser\n", " sys.exit(0)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.475715Z", "iopub.status.busy": "2025-01-16T10:12:34.475628Z", "iopub.status.idle": "2025-01-16T10:12:34.973298Z", "shell.execute_reply": "2025-01-16T10:12:34.973014Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from WebFuzzer import init_db, start_httpd, webbrowser, print_httpd_messages\n", "from WebFuzzer import print_url, ORDERS_DB" ] }, { "cell_type": "code", "execution_count": 7, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.975190Z", "iopub.status.busy": "2025-01-16T10:12:34.975082Z", "iopub.status.idle": "2025-01-16T10:12:34.976647Z", "shell.execute_reply": "2025-01-16T10:12:34.976432Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "import html" ] }, { "cell_type": "code", "execution_count": 8, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.978279Z", "iopub.status.busy": "2025-01-16T10:12:34.978168Z", "iopub.status.idle": "2025-01-16T10:12:34.980633Z", "shell.execute_reply": "2025-01-16T10:12:34.980398Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "db = init_db()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "This is the address of our web server:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.982123Z", "iopub.status.busy": "2025-01-16T10:12:34.982024Z", "iopub.status.idle": "2025-01-16T10:12:34.994864Z", "shell.execute_reply": "2025-01-16T10:12:34.994353Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/html": [ "
http://127.0.0.1:8800
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "httpd_process, httpd_url = start_httpd()\n", "print_url(httpd_url)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Using `webbrowser()`, we can retrieve the HTML of the home page, and use `HTML()` to render it." ] }, { "cell_type": "code", "execution_count": 10, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:34.997227Z", "iopub.status.busy": "2025-01-16T10:12:34.997008Z", "iopub.status.idle": "2025-01-16T10:12:34.999252Z", "shell.execute_reply": "2025-01-16T10:12:34.998973Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from IPython.display import display, Image" ] }, { "cell_type": "code", "execution_count": 11, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.000764Z", "iopub.status.busy": "2025-01-16T10:12:35.000671Z", "iopub.status.idle": "2025-01-16T10:12:35.002218Z", "shell.execute_reply": "2025-01-16T10:12:35.001986Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from bookutils import HTML, rich_output" ] }, { "cell_type": "code", "execution_count": 12, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.003584Z", "iopub.status.busy": "2025-01-16T10:12:35.003509Z", "iopub.status.idle": "2025-01-16T10:12:35.018229Z", "shell.execute_reply": "2025-01-16T10:12:35.017831Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:35] \"GET / HTTP/1.1\" 200 -\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "\n", "
\n", " Fuzzingbook Swag Order Form\n", "

\n", " Yes! Please send me at your earliest convenience\n", " \n", "
\n", " \n", " \n", " \n", "
\n", " \n", " \n", "
\n", "
\n", " \n", " \n", " \n", "
\n", " .
\n", " \n", "

\n", "
\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "HTML(webbrowser(httpd_url))" ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "### Remote Control with Selenium\n", "\n", "Let us take a look at the GUI above. In contrast to the [chapter on Web testing](WebFuzzer.ipynb), we do not assume we can access the HTML source of the current page. All we assume is that there is a set of *user interface elements* we can interact with." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "[Selenium](https://www.seleniumhq.org) is a framework for testing Web applications by _automating interaction in the browser_. Selenium provides an API that allows one to launch a Web browser, query the state of the user interface, and interact with individual user interface elements. The Selenium API is available in a number of languages; we use the [Selenium API for Python](https://selenium-python.readthedocs.io/index.html)." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "A Selenium *web driver* is the interface between a program and a browser controlled by the program.\n", "The following code starts a Web browser in the background, which we then control through the web driver." ] }, { "cell_type": "code", "execution_count": 13, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.020051Z", "iopub.status.busy": "2025-01-16T10:12:35.019933Z", "iopub.status.idle": "2025-01-16T10:12:35.058447Z", "shell.execute_reply": "2025-01-16T10:12:35.058143Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from selenium import webdriver" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We support both Firefox and Google Chrome." ] }, { "cell_type": "code", "execution_count": 14, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.060460Z", "iopub.status.busy": "2025-01-16T10:12:35.060343Z", "iopub.status.idle": "2025-01-16T10:12:35.062047Z", "shell.execute_reply": "2025-01-16T10:12:35.061787Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "BROWSER = 'firefox' # Set to 'chrome' if you prefer Chrome" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Setting up Firefox" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "For Firefox, you have to make sure the [geckodriver program](https://github.com/mozilla/geckodriver/releases) is in your path." ] }, { "cell_type": "code", "execution_count": 15, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.063626Z", "iopub.status.busy": "2025-01-16T10:12:35.063521Z", "iopub.status.idle": "2025-01-16T10:12:35.065085Z", "shell.execute_reply": "2025-01-16T10:12:35.064847Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "import shutil" ] }, { "cell_type": "code", "execution_count": 16, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.066500Z", "iopub.status.busy": "2025-01-16T10:12:35.066398Z", "iopub.status.idle": "2025-01-16T10:12:35.068329Z", "shell.execute_reply": "2025-01-16T10:12:35.068075Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "if BROWSER == 'firefox':\n", " assert shutil.which('geckodriver') is not None, \\\n", " \"Please install the 'geckodriver' executable \" \\\n", " \"from https://github.com/mozilla/geckodriver/releases\"" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Setting up Chrome" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "For Chrome, you may have to make sure the [chromedriver program](https://chromedriver.chromium.org) is in your path." ] }, { "cell_type": "code", "execution_count": 17, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.069819Z", "iopub.status.busy": "2025-01-16T10:12:35.069713Z", "iopub.status.idle": "2025-01-16T10:12:35.071440Z", "shell.execute_reply": "2025-01-16T10:12:35.071170Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "if BROWSER == 'chrome':\n", " assert shutil.which('chromedriver') is not None, \\\n", " \"Please install the 'chromedriver' executable \" \\\n", " \"from https://chromedriver.chromium.org\"" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Running a Headless Browser" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The browser is _headless_, meaning that it does not show on the screen." ] }, { "cell_type": "code", "execution_count": 18, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.073098Z", "iopub.status.busy": "2025-01-16T10:12:35.072996Z", "iopub.status.idle": "2025-01-16T10:12:35.074806Z", "shell.execute_reply": "2025-01-16T10:12:35.074417Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "HEADLESS = True" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "**Note**: If the notebook server runs locally (i.e. on the same machine on which you are seeing this), you can also set `HEADLESS` to `False` and see what happens right on the screen as you execute the notebook cells. This is very much recommended for interactive sessions." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Starting the Web driver\n", "\n", "This code starts the Selenium web driver." ] }, { "cell_type": "code", "execution_count": 19, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.076488Z", "iopub.status.busy": "2025-01-16T10:12:35.076398Z", "iopub.status.idle": "2025-01-16T10:12:35.079206Z", "shell.execute_reply": "2025-01-16T10:12:35.078978Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def start_webdriver(browser=BROWSER, headless=HEADLESS, zoom=1.4):\n", " # Set headless option\n", " if browser == 'firefox':\n", " options = webdriver.FirefoxOptions()\n", " if headless:\n", " # See https://www.browserstack.com/guide/firefox-headless\n", " options.add_argument(\"--headless\")\n", " elif browser == 'chrome':\n", " options = webdriver.ChromeOptions()\n", " if headless:\n", " # See https://www.selenium.dev/blog/2023/headless-is-going-away/\n", " options.add_argument(\"--headless=new\")\n", " else:\n", " assert False, \"Select 'firefox' or 'chrome' as browser\"\n", "\n", " # Start the browser, and obtain a _web driver_ object such that we can interact with it.\n", " if browser == 'firefox':\n", " # For firefox, set a higher resolution for our screenshots\n", " options.set_preference(\"layout.css.devPixelsPerPx\", repr(zoom))\n", " gui_driver = webdriver.Firefox(options=options)\n", "\n", " # We set the window size such that it fits our order form exactly;\n", " # this is useful for not wasting too much space when taking screen shots.\n", " gui_driver.set_window_size(700, 300)\n", "\n", " elif browser == 'chrome':\n", " gui_driver = webdriver.Chrome(options=options)\n", " gui_driver.set_window_size(700, 210 if headless else 340)\n", "\n", " return gui_driver" ] }, { "cell_type": "code", "execution_count": 20, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:35.080891Z", "iopub.status.busy": "2025-01-16T10:12:35.080761Z", "iopub.status.idle": "2025-01-16T10:12:38.873199Z", "shell.execute_reply": "2025-01-16T10:12:38.872520Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "The geckodriver version (0.34.0) detected in PATH at /Users/zeller/bin/geckodriver might not be compatible with the detected firefox version (135.03); currently, geckodriver 0.35.0 is recommended for firefox 135.*, so it is advised to delete the driver in PATH and retry\n" ] } ], "source": [ "gui_driver = start_webdriver(browser=BROWSER, headless=HEADLESS)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We can now interact with the browser programmatically. First, we have it navigate to the URL of our Web server:" ] }, { "cell_type": "code", "execution_count": 21, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:38.876394Z", "iopub.status.busy": "2025-01-16T10:12:38.876182Z", "iopub.status.idle": "2025-01-16T10:12:38.978162Z", "shell.execute_reply": "2025-01-16T10:12:38.977706Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We see that the home page is actually accessed, together with a (failing) request to get a page icon:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:38.980643Z", "iopub.status.busy": "2025-01-16T10:12:38.980493Z", "iopub.status.idle": "2025-01-16T10:12:38.992402Z", "shell.execute_reply": "2025-01-16T10:12:38.986107Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:38] \"GET / HTTP/1.1\" 200 -\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:38] \"GET /favicon.ico HTTP/1.1\" 404 -\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print_httpd_messages()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "To see what the \"headless\" browser displays, we can obtain a screenshot. We see that it actually displays the home page." ] }, { "cell_type": "code", "execution_count": 23, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:38.995625Z", "iopub.status.busy": "2025-01-16T10:12:38.995473Z", "iopub.status.idle": "2025-01-16T10:12:39.049977Z", "shell.execute_reply": "2025-01-16T10:12:39.049563Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydB5gUxdaG6xquOYs5YE4YMGBCFDFjRsUcMGcUA2IOmHMOiKISzBhAFHNCEQQDooJiVlTMOf79Fv+ZW9vbPdOzO7O7M/PV8/i4zHRXV71VXVNfnVOn/vNvlJySCIiACIiACIiACIiACIiACIiACIhAZgL/kZjOzEoXioAIiIAIiIAIiIAIiIAIiIAIiIAnIDGtjiACIiACIiACIiACIiACIiACIiACRRKQmC4SmC4XAREQAREQAREQAREQAREQAREQAYlp9QEREAEREAEREAEREAEREAEREAERKJKAxHSRwHS5CIiACIiACIiACIiACIiACIiACEhMqw+IgAiIgAiIgAiIgAiIgAiIgAiIQJEEJKaLBKbLRUAEREAEREAEREAEREAEREAEREBiWn1ABERABERABERABERABERABERABIokIDFdJDBdLgIiIAIiIAIiIAIiIAIiIAIiIAIS0+oDIiACIiACIiACIiACIiACIiACIlAkgeLE9H/+U2T2ulwEREAEREAEREAEREAEREAEREAEKojAv/9mKqzEdCZMukgEREAEREAEREAEREAEREAERKAmCEhM10Qzq5IiIAIiIAIiIAIiIAIiIAIiIAKlJCAxXUqayksEREAEREAEREAEREAEREAERKAmCDSJmM74kJoArkqKgAiIgAiIgAiIgAiIgAiIgAhUHoF4bLCMOrdxe6YzPqTyaKrEIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUGg2sT033//7f7999+StN20007r/hMHVJKcmyeTb7/91t19991u/vnnd507d3bTTTdd8xSkwFP/+ecfx39JqaWWOV+V8vXJpqjPF1984caPH+//+/DDD91CCy3kll12WbfMMsu41q1b+34wZcoUd+KJJ7oDDjjArbPOOi2yX7TkQk2cONG9/vrr7uuvv3a//PKLH4NatWrlFltsMdeuXTs344wzNmvxC42LTdEPGwugUB2Kyb/axvZi6q5rRUAEREAEREAESkigmsT0559/7oVCqdKrr77q2rZtW6rsmjWfF154wbVv3z5XhkUWWcS98847buaZZ27WciU9vEePHu7SSy9NLNfYsWPdqquu2uLKnK9A++23n7v11lsTL/nrr78cE/typN9//92dfvrp7oILLshlP9tss7kff/yxzr+32247L7Kfe+45N2DAALfbbruVozhVl+f333/vrrzySt+277//ft76denSxS9WrLXWWs3CYdttt3UPPfRQ4rOXXHJJ99577zVLubI+VGN7VlK6TgREQAREQAREoEkJVJOY/u2339zzzz/vRo8e7Xr27JnKcZ999nFLLLGEYzLMJO3TTz/1QiKeqklM77LLLt4qHabbbrvN7bXXXk3a37I87K233vJi+uabb653+UsvveTWXnvtLNm0mGvGjBnjTj75ZPfII4/UK1O5xDSW5s0228zRh0n0+fPOO88tuOCC3nKKFfWEE06o1+8lprN1mzvuuMMddthhdRYm9txzT3f00Uf7sYWFqscff9wvZoSJ9/CGG25wc845Z7YHlegqLOdvv/22u/DCC+u1eSWIaY3tJeoIykYEREAEREAERKC0BKpJTIdkbrzxRnfwwQfXg7X++ut7wR1Pn3zyibvmmmvc+eefn/uqmsQ01lwEVJiOP/54P7luiYnJ80wzzVSvaCNGjKhIN+Rx48a5Nm3aNJmYRuhdd911/nmbbrqpGzZsmJtmmmnqPB8hj9g799xzc59LTOd/G9h+wMJIOE5wB+PNgQceWO/mZ5991m244YZ1PsfF/uGHH/Zu9k2dnnzySdepU6c6j60EMa2xval7ip4nAiIgAiIgAiKQiUC1immsgauvvno9BkceeaR3zUxLZ511Vs6aVE1imsn/SSedVKfaLd1leqWVVnJYqcNUqWI6bXGgHJbpeN+/5ZZb3L777pva53faaSd37733+u8lpvMPm2eeeaY744wz6lzUrVu3RC8Ku+j+++93O+64Y5172GbB+MK+6qZMSeNipYlpje1N2WP0LBEQAREQAREQgbwEqlVM49K4wgorFC2mETdrrLGGt+JWk5gm+Bhuvtdff72fwGOVPuSQQ1r025FkTa9EN28gN6WYji+cYKHO19a4hOOazF7qgQMHul133bVF94vmKtyQIUPc1ltvXe/xjDXLLbdc3mLx/bvvvlvnmg022MA9/fTT9TwGylm/1157za222mp1HlFpYlpjezl7iPIWAREQAREQAREoioDEtHN33nmnm3feeXPuj7g+EyyomsS0dYo///zTB7yKu/wW1Wma6GKJ6YaB7tq1q7vrrrtyN6+yyiru5ZdfzhtRGndvvDJkmU5mznuz/PLL1ws0tvHGG7snnniiYEPZmBK/kHbaeeedC95fqgtqTUzX0theqj6ifERABERABERABIogUOtimj2QBAM69NBDc1GPcS3GxZh9riuuuGIRNKv/UizcX375pT/yJ2lPcxoBLP7sSyfC9HzzzefmmmuugrAKielvvvnGUR6sqsUuDlAOLIW0/aKLLlqwLEkXEMCOKM6LL764m3vuufPm0ZSW6Q4dOtQLMsVxV0SdTrOgEs156aWXbhFimjblOC/6F8e4FdPPrBHIg+CCs88+u89j+umnb1Ab2023336723vvvevlgdv3aaedVjDvSZMmOSzA8cRnBAfLegQfR25RL/ov/b5Q+uyzz/wldspBQ8U0z/3444/dH3/84d/9//73v4Uenfr9r7/+6qPH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5BuPC9iQYIarO8ymTJniF3XwIGCxh+jqxSbiA7DAQYC1uAXf8uIoJdys41sCkp6FKzRWe4Q3VlfaAsFniyqIc6yDWP8QfRwbFrq94pKPSM1n4U56bhggrlgG4fVY2Flsok9RBvrXTDPN5MvI4h6WyYacGd6YMsEUiyv7/enjNk7xzmBJZrGF9s+SCIpG3Xg3EY/cS1/Psu0gS/4t6RqC31FP6gsr24KSdKxZSyq3yiICIiACIiACItBMBCSmmwl8FT8WQYGV2AJHMflGWIUJ0YfoiO8zDwMZVTEiVa2EBLC8Y1XECwMr3GqrrVYvd0QS2xRCrxJZ7ErYCMpKBERABERABERABGqRgMR0LbZ6eevMkVFYC0ndunWrF405fDpnA4d7XuPRz8tbUuVe6QTiQbfsbPCkemHhRnSzXYBEwDUCfimJgAiIgAiIgAiIgAiIQIMISEw3CJtuSiGAG3G4rxCXUtvbmgYt3Cta6AgggReBkECPHj18ED0Se345RixfCvf1EijL7hVVERABERABERABERABESiagMR00ch0Qx4CWP+Ipm3RbYn2S6CnpEA97MXkuB6CGJHC86EFWQSyECBAFlGuLbHPvkuXLom3sm+cI7UICMXea/a8ZwkglaUcukYEREAEREAEREAERKAGCUhM12Cjl7nKRF7mLN4wIBRHXxGEiXOmJ0+e7D777DMvatjDSlRhoiKnnYFb5uIq+womwIIMgcTCaN8Ex2KrAcHV+J6+xhFDdrQcnhIcPZQ1AFcF41HRRUAEREAEREAEREAEyklAYrqcdGs3b47V4SzfESNG+KjZ7I0mwjCJiM0IHaKeE5l5++23rxegrHbJqeYNIcDCzMMPP+zGjx/vLc6ff/65z4bI5VifWcjhTOrNNtvM9zslERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABEagWAiNHvuYmTJjkpptuOvf5519WS7VUDxEQAREomsACC7Ry//zzj1tmmdZurbVWLfp+3SACDSIgMd0gbLpJBERABERABJqVwM033+XatFnWzT77bG6eeeZq1rLo4SIgAiLQ3AT+/fdf980337nvvvvBjR8/0XXrtnNzF0nPrwUCEtO10MqqowiIgAiIQDUR6Nv3LteuXVs333zzVFO1VBcREAERKAkBPHVeffUNt99+EtQlAapM0glITKt3iIAIiIAIiEDlEHj55bEuMsC4JZdcrHIKrZKKgAiIQBMTmDjxAzf99NPK5buJudfc4ySma67JVWEREAEREIEKJtC//wNu9dXbyLW7gttQRRcBESg/ga+//saNHTvO7b77duV/mJ5QuwSqTUz/8ccfiY1JcJZpppkm992ff/4ZrexHS/tB+u9//1vSjvDFF1+4H3/8MQqEsEzefP/66y8fMCGe/hM1zvTTT596788//+yefvpp98svv7idd5YbS6kab8qUKe6RRx5xXbp0cTPNNFOpslU+VUgg7R3knbz33nvdGmus4VZcccUqrHnlVama2uTOOx92HTuuV3mNoBKLgAiIQBMSYJ7/9NMjXNeuWzfhU/WomiNQTWL622+/dcsvv7z78su6EU0333xzd+GFF7pVVlkl174nnniiu/XWW3PXzjfffO6pp54q2cSXidsCCyzgxfQbb7wRBYlpk9q3Tj/9dHf99dfXK7fdsMEGGzjqcNhhh7m55poritj6uTvwwAPdkCFD/CW77rqrGzhwYM313VJXGAHdu3dv98ILL/isv/vuOzfHHHOU+jHKrwoIFHoHb7jhBnfIIYe4RRZZxH388cdVUOPKr0I1tcnll/eNLC3bV36jVEANWOjmPxbklaqDAEaXUhtPqoNMddZiwIDBrnv3btVZOdWqZRCoJjENUQbJs88+251zzjke8GyzzRZF9vsm8Yfw6quvdkceeaQ76qij3KWXXuqmnXbakjXKmDFjIje81X1+d911V0HL8Ycffuhat27tr99yyy3dTTfd5Pjs9ddfdyeccIIX5dTl1VdfdUsvvbT74Ycf3KGHHuoGDBggMV2iVvv999/diBEjIotPR58jVseZZ565RLm3jGywus8zjwIWlaI18r2DeIzQj/baay932223leJxiXmw4MO4UMqxq2yFbeaMm6pNmqKaxYrpqd42Q6PflA/cr7/+4hZeeBG3/vrtowXm5j065rXXxqYuIsOR37ollliyKZAmPgMPtk6dNnRTpnwTLbK+5Oacc86yleWLLz6Pfs/7+2csuuj/9sLzNxyaSszvt9/ekVvsGDdmzBtF1RVjxqhRr2S6Z+ONO2Uesz777DM3evSoyCjxuvcupM+utdZarlWr+eo8K2u5J0x4122xxaZu3XXXc3fcISNEpgar8Iskpiu8ASuh+NUmpmHOKvKOO+7oHnjgAd8El19+uTv66KPrNAdCCSv2yiuv7B5++OE6LuClaLd33nnH508aPHiw2267wvs15p9/fj+xQCRfe+21uWJ88MEH3qqOoOb/r732mv+Oaw4//HCJ6VI02P/ngUfBLLPM4v/122+/uRlmmKGEuTdvVrgdP/PMM+7KK69s3oJU0dPzvYNMxPNt02gsBvrn+uuv7z1U8IJRKkyg3G1SuASluaIYMX3vvXdHXk2HJD546623cTfc0KfJhFq8EIcccqC7//77UqGcccZZ0e/h4aWB1oBcfv75pyjI2+L+zlGjxkYid9EG5JLtlttv7+eOO+7Y1IuvueY6t9NOu2TLrBFXbbPNVm7kyJfd5MlTisrllVdGuq233jLTPZMmfZxpofrBBx+IvPDqWxRnnXVWd+ONN0cLHZvknpe13C+9NCKaj23tFl+8dVTP0QXLy3zy4osvjMR7qygq9P4Fr9cFLY+AxHTLa5OqK1E1imkaKe7y/e6779bZu4y1F9fqiRMnRkeL1F3hLEUj//TTT95iNPVHeJTfO1koLbfcco5y4s59zTXX1Ll87733drfffrv/jJXaBRdcMJoETXUllZt3IbLZv//1119zP/J4OZRTDGUvVeOvtMUdPDEkphvP03JozneQceK6667z2z4kpkvXppWQU1Yx/dxzz0YCbAdfpYMPPtRtuOFGbt5553XPP/+c69//DvfeexPdPvvsF22DurhZqm1iunfv8x2LyfHEgvQyyyzbLGWzh37yySfRwuqvkXU4f+yTxhbSxHTHjhvnRBseBU88MTxa8H/IZ//gg0Pc2muv09hH5b0/qyiNZ4KnzjPPPJ37+I8/fveLOAsttJA766zedS7fcsutCi7gjB492m211Wb+vgsuuCiyJK8fGUr+jng8Hnkfnuk/HzFiZLTYsZT/u5hyY+VecMGF/LtQKBHTZuGF54+2AK4UbQV8ttDl+r4FEpCYboGNUm1FqlYxTTs9/vjjbtNNN/VNhgUHqxzukAzSa665phs0aFAUlKBrnSYlaBji99NPP3VLLbVUNPnYsJ6gYqWSfbXssV5iiSX8dbho86MRptlnn91bk7NOdvOJaSzrJoLefvttx7X5JvL8AGDBZr827mHrrbde9KNT313uxRdf9K7NX331lbekd+rUKXH1nWdi6WcPMdZxVobDPejUOwu7tPcHi/z999/vWIRYddVVvaClzGHKkv/777/vHnvsMb/IgAvsE0884cu11VZb+baKJ8QzbfnKK6/4yRz9xDwKsohpyste6+23395h9Ro5cqTDk2Dbbbd1c889t3/c33//7fMfP36873d4Q8QT+dAvEb0s7tDv2B+fJX3//ffuvvvuc5MmTfIB01i4od8TwI701ltveZdjGG+zzTZ+sYa+GefLtfQb2zNuz+batm3b+n+yzYA+TSKwFqv1lig72xK+/vprz5BtDuGeczjBm0T/XWmllfx79vLLL+fyWG211er0U9ruwQcfdAcddJBnQx6d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/fTT63z+3nvv+b2BH3/8scOyvf766ye6ir/++us+8M0666zjJk6c6PceLr744m6DDTbI5ffVV1+5xx57zM0555z+89lnn71eG77zzjveev7rr7+6lVde2a255pr1rrnnnnu82+VOO+1Ux/Iev1A/Ao16RXSzCFQdgUJjQiEx/eabb/qxcMstt6zDhqBgo0eP9kHBGOewWhPQjG02FvyR8RHXcNzFGf+SrN7s3eZe8lh++eVdp06d3KKLLlqvHd566y3H2MzzLKWJaQKT9e/f36266qpu7bXXztumhfhUXYdQhURABDQmqA+IgAg0jEAtiWkmcFidcePGdZEUD0iWJKbvvfdeL1iPOOIIL6KvuOIKL5LDe/msb9++DjF91FFHOaLcXn755blGWWuttbwlnL2IgwYNyn2+yiqruBdeeMHNOuus/rM//vjDHXfcce7+++93HTp08M95//33fVTa2267zc0444z+uldeecW1a9fO/801+SaHmhg27N3QXSJQrQQKjQmFxHTPnj19TInTTjvNIyLI4zXXXOODf7G/mrHSLNt8z95qFjEfeOABd/LJJ9fBOm7cOLfiiivmPjv22GPdZZdd5vMjnXfeee7777/34pqFTsbIK6+80t1+++1+vO3SpYtjYdFSmpi+9NJLfXA10m+//eZmmGGG1OYtxKda+4XqJQIikExAY4J6hgiIQCqBWhPTG220kZ+AYZ2wFAYki4tpAtpgicaKgmWDCSTWF6wpTBqxwpCYKJ599tn+SBYSVm+EM1YYRPGXX37pPydgzmGHHeYnhB07dvSiHpG81157+e+5h7ywzMwxxxzu22+/dQhurmN/Is8g4XpJuUiI7SWWWEITQ73nIiACmQgUmhiGYrp3795urrnm8vliZWarDMHJzjzzzJyYfvvtt911113nRS6JbTSXXHKJW3DBBd3uu+/uhg8f7j/HJZwxDG+dfffd1z300ENedHOSAomFwXXXXdd79the7LvvvtsxLjN2nn/++X7sfOONN7yXEd9lFdMPPvig22677bxwf+211/Iee1iITybIukgERKBqCGhMqJqmVEVEoPQEalFMQ9EmaPwdBiSLi2nEMEIVyzGu19NNN53jLNZpp53WNwYTOwuAgzUFqwpWZI5ssYQl5txzz/WCGeFsCesOE0ITyePHj/cTvTPOOMPv+bOEpfqOO+7w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QATyEpCYrv4O8uqr46LzWn+MzqxeU4K6+ptbNRSBVAJMCl94YVR0BN/srm3bFUUqhYDGTHUNERABCGjMVD8QAREoSEBiuiCiqrhg9Og33bvvvu8mT/66KuqjSoiACBRPYP7554nOpF9GQjoDOo2ZGSDpEhGocgIaM6u8gVU9ESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6cpp71KjX3YQJk6KI3FMqp9AqqQiIQEkJtGo1j1thhaXd6quvVNJ8lVnLIqDxvmW1h0ojAs1FQGN+c5HXc0UgIwGJ6YygmvmyUaPecL/88qtbb73V3XTTTdfMpdHjRUAEmosA556++OJoN+usM7s11li5uYqh55aRgMb7MsJV1iJQYQQ05ldYg6m4tUdAYroy2nzgwAfczjt3lpCujOZSKUWgrASYXN1zz1C3227blvU5yrx5CGi8bx7ueqoIZCXw5ZffZL20wdfNN9/cuXs15jcYo24UgfITkJguP+NSPOHyy/u67t27lSIr5SECIlAFBDQmVEEjplRBbVu9bauaVQeBphbTUNO4UB19R7WoQgIS05XRqBpEK6OdVEoRaCoCGhOainTTP0dt2/TM9UQRKIaAxHQxtHStCFQ5AYnpymhgTa4qo51UShFoKgIaE5qKdNM/R23b9Mz1RBEohoDEdDG0dK0IVDmBWhXTv/zyi3vnnXfc33//7RZffHHXqlUr39Jff/21+/77791SSy3l//3ZZ5+5YcOGuW222SZ3TXN0CU2umoO6nikCLZdAucYExkT+y5oIiPjPP//4/+LpP9EPzLTTTuv++uuvxOy4d5pppsn6qNTrvvnmGzdx4kQ344wzuiWWWMLNNtts/toJEya4eeed180111yNfoZlMGXKFPfII4+4Ll26uJlmmqlk+YYZlatty1JYZSoCNUigGDH99tvvuU8++dwtssiCbvnlp84ts6RwzzTXa1zIQk3XiEAzEKglMf3HH3+4888/3/Xv39+9++67njaTrh9//NH/f7PNNnNvvPGG69q1qzvrrLP89/x91113uYMOOsjdcMMNzdBCUx+pQbTZ0OvBItAiCZRrTDj55JPdueeem7nOffr0cZ9++mmdcdXG1k022cSdcsop7qijjnIvvPBCYp5LLrmka9eunTv44IPdRhttlPm5X375pTvxxBPd0KFDHX+HaZFFFvF5PfDAA+6+++5zlKOxCQHdu3fvXD2+++47N8ccczQ228T7y9W2ZSmsMhWBGiSQVUy/8877bvTo13OE2rVbzS29dOtMxCSmM2HSRSLQ/ARqRUyPHz/e7bnnnu7VV191K664orv++uujY2XWcDPPPLP74IMPXN++fd3ZZ5/tG+SYY45xl156qf/7wgsv9BO2G2+80R144IF1Ggxx/vvvv+esIOVsTU2uyklXeYtA5REo15iw1157uTvuuMMLxy233NItuuii3rps6bXXXnMdO3b0/1xnnXXcc889508Z+Pfff6Oj+9ZzL730kv/uo48+8vdaYkHypptu8v8cPny4/+7tt992gwYN8v/Fx958LfLwww+73Xff3S+E7rLLLl6wr7DCCv4W8uzVq5d76KGH/L8HDx7stttuu0Y3MGP9iBEjcnX/+eef/e9HOVK52rYcZVWeIlCLBLKI6YkTP3QjR47xeOafv5WbPPkr//faa7eNvB8XL4hNYrogIl0gAi2DQC2I6c8//9wtt9xyfuLF5PDOO+9MFMB8vuuuu7pDDjnEXXfddbkG+vPPP930009fr8Gwtmy44Ybe3a/cSZOrchNW/iJQWQTKNSa0b9/e7bfffm7//fevB4TtMWuttZZ76623/He4VtuWGP592GGH+bETT58ffvihzv233nqrz5f0ySefuIUXXtj/jQg/6aST3AUXXOD/jTV5223Tj/x67LHH3Oabb+6vPf300/1/uJOHCTf17t27u6uvvtoNHDjQj+ulSNR/lllm8Vn99ttvboYZZihFtvXyKFfblqWwylQEapBAITH94YefRF4sozyZtm1Xihb7lnHjx09wY8aM85+tv/6a0RbDRfKSk5iuwY6lKlcmgVoQ03vssYcbMGCAb6APP/zQLbbYYqmN1alTJ7fQQgu522+/PW+DYknZbbfdorNe75GYrsyur1KLQEUTKJfgwmKMWLZ9xyEkFhCvuuoq/1G/fv3c3nvvXYchXj2XX355ophmrNx555399biFM85aIn7F8ssv7/95xBFH5J4RbyDELAuj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IIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgz0FlzAAAAk9JREFUTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QOCYhGkXuNEEBBBAAAEEEEAAAQQQQAABBLwCubkhYUTkmhLSK/VFeRN7yG/khQgggAACCCCAAAIIIIAAAgiUAIEQIzJhugT0JVVEAAEEEEAAAQQQQAABBBAIkwBhOkzQ3AYBBBBAAAEEEEAAAQQQQMA9AkclTLuHh5YggAACCCCAAAIIIIAAAgggUGyB/wc7WChH3utN3QAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "source": [ "### Filling out Forms\n", "\n", "To interact with the Web page through Selenium and the browser, we can _query_ Selenium for individual elements. For instance, we can access the UI element whose `name` attribute (as defined in HTML) is `\"name\"`." ] }, { "cell_type": "code", "execution_count": 24, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.051817Z", "iopub.status.busy": "2025-01-16T10:12:39.051677Z", "iopub.status.idle": "2025-01-16T10:12:39.053619Z", "shell.execute_reply": "2025-01-16T10:12:39.053256Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from selenium.webdriver.common.by import By" ] }, { "cell_type": "code", "execution_count": 25, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.055937Z", "iopub.status.busy": "2025-01-16T10:12:39.055669Z", "iopub.status.idle": "2025-01-16T10:12:39.096070Z", "shell.execute_reply": "2025-01-16T10:12:39.093240Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "name = gui_driver.find_element(By.NAME, \"name\")" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Once we have an element, we can interact with it. Since `name` is a text field, we can send it a string using the `send_keys()` method; the string will be translated into appropriate keystrokes." ] }, { "cell_type": "code", "execution_count": 26, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.100825Z", "iopub.status.busy": "2025-01-16T10:12:39.100672Z", "iopub.status.idle": "2025-01-16T10:12:39.199765Z", "shell.execute_reply": "2025-01-16T10:12:39.199446Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "name.send_keys(\"Jane Doe\")" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "In the screenshot, we can see that the `name` field is now filled:" ] }, { "cell_type": "code", "execution_count": 27, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.202169Z", "iopub.status.busy": "2025-01-16T10:12:39.201889Z", "iopub.status.idle": "2025-01-16T10:12:39.224342Z", "shell.execute_reply": "2025-01-16T10:12:39.223984Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydB7gUtdeH87eLXQTsYEGxC3ZQFLtiR8WuYO8o9t6wF+wdO/auiL2goAiKFRUUGyIg2Hv75g2e/XLnzuzO3rt7y+4vz8MD7M5kkjeZbH45Jyf/+zdKTkkEREAEREAEREAEREAEREAEREAERCAzgf9JTGdmpQtFQAREQAREQAREQAREQAREQAREwBOQmFZHEAEREAEREAEREAEREAEREAEREIEiCUhMFwlMl4uACIiACIiACIiACIiACIiACIiAxLT6gAiIgAiIgAiIgAiIgAiIgAiIgAgUSUBiukhgulwEREAEREAEREAEREAEREAEREAEJKbVB0RABERABERABERABERABERABESgSAIS00UC0+UiIAIiIAIiIAIiIAIiIAIiIAIiIDGtPiACIiACIiACIiACIiACIiACIiACRRKQmC4SmC4XAREQAREQAREQAREQAREQAREQAYlp9QEREAEREAEREAEREAEREAEREAERKJJAcWL6f/8rMntdLgIiIAIiIAIiIAIiIAIiIAIiIALNiMC//2YqrMR0Jky6SAREQAREQAREQAREQAREQAREoCoISExXRTOrkiIgAiIgAiIgAiIgAiIgAiIgAqUkIDFdSprKSwREQAREQAREQAREQAREQAREoCoINIiYzviQqgCuSoqACIiACIiACIiACIiACIiACDQ/AvHYYBl1bv32TGd8SPOjqRKLgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBQGJ6apoZlVSBERABERABERABERABERABESglAQkpktJU3mJgAiIgAiIgAiIgAiIgAiIgAhUBYFKE9N///23+/fff0vSdtNPP737XxxQSXJunEy+/fZbd++997o2bdq47t27uxlmmKFxClLgqf/884/jT1JqqmXOV6V8fbIh6vP111+70aNH+z+fffaZW3DBBd1SSy3l2rdv79q1a+f7wZQpU9yxxx7r9tlnH7fmmms2yX7RlAs1duxY9/bbb7tvvvnG/fLLL34MatWqlVt00UXd6quv7maZZZZGLX6hcbEh+mF9ARSqQzH5V9rYXkzdda0IiIAIiIAIiEAJCVSSmJ4wYYIXCqVKb7zxhuvYsWOpsmvUfF555RW39tpr58qw8MILuw8//NC1aNGiUcuV9PC+ffu6iy++OLFco0aNciuttFKTK3O+AvXq1cvdfPPNiZf89ddfjol9OdLvv//uTj31VHfeeeflsp9jjjncjz/+WOP/W2+9tRfZQ4YMcQMHDnQ777xzOYpTcXl+//337rLLLvNt+8knn+StX48ePfxixWqrrdYoHLbaaiv36KOPJj578cUXdx9//HGjlCvrQzW2ZyWl60RABERABERABBqUQCWJ6d9++829/PLLbuTIke64445L5bjnnnu6xRZbzDEZZpI2fvx4LyTiqZLE9I477uit0mG69dZb3e67796g/S3Lw95//30vpm+88cZal7/66qtujTXWyJJNk7nmzTffdCeeeKJ74oknapWpXGIaS/PGG2/s6MMk+vw555zjFlhgAW85xYp6zDHH1Or3EtPZus3tt9/uDjrooBoLE7vttps7/PDD/djCQtUzzzzjFzPCxHt47bXXurnnnjvbg0p0FZbzDz74wJ1//vm12rw5iGmN7SXqCMpGBERABERABESgtAQqSUyHZK677jq3//7714LVpUsXL7jj6csvv3RXXnmlO/fcc3NfVZKYxpqLgArT0Ucf7SfXTTExeZ511llrFW3YsGHN0g35vffec8svv3yDiWmE3tVXX+2ft9FGG7nBgwe76aabrsbzEfKIvbPPPjv3ucR0/reB7QcsjITjBHcw3uy77761bn7ppZfcuuuuW+NzXOwfe+wx72bf0Om5555zG2ywQY3HNgcxrbG9oXuKnicCIiACIiACIpCJQKWKaayBnTp1qsXg0EMP9a6ZaemMM87IWZMqSUwz+T/++ONrVLupu0wvt9xyDit1mJqrmE5bHCiHZTre92+66Sa31157pfb57bff3t1///3+e4np/MPm6aef7k477bQaF/Xu3TvRi8IuevDBB912221X4x62WTC+sK+6IVPSuNjcxLTG9obsMXqWCIiACIiACIhAXgKVKqZxaVxmmWWKFtOIm1VWWcVbcStJTBN8DDffa665xk/gsUofcMABTfrtSLKmN0c3byA3pJiOL5xgoc7X1riE45rMXuo777zT7bTTTk26XzRW4R5//HG3xRZb1Ho8Y83SSy+dt1h8/9FHH9W4Zp111nEvvPBCLY+BctbvrbfeciuvvHKNRzQ3Ma2xvZw9RHmLgAiIgAiIgAgURUBi2rm7777bzTfffDn3R1yfCRZUSWLaOsWff/7pA17FXX6L6jQNdLHEdN1A9+zZ091zzz25m1dccUX32muv5Y0ojbs3XhmyTCcz573p0KFDrUBj66+/vnv22WcLNpSNKfELaacddtih4P2luqDaxHQ1je2l6iPKRwREQAREQAREoAgC1S6m2QNJMKADDzwwF/UY12JcjNnnuuyyyxZBs/IvxcI9adIkf+RP0p7mNAJY/NmXToTp1q1bu3nmmacgrEJieurUqY7yYFUtdnGAcmAppO0XWWSRgmVJuoAAdkRxbtu2rZt33nnz5tGQlumuXbvWCjLFcVdEnU6zoBLNeckll2wSYpo25Tgv+hfHuBXTz6wRyIPggnPOOafPY8YZZ6xTG9tNt912m9tjjz1q5YHb9ymnnFIw73HjxjkswPHEZwQHy3oEH0duUS/6L/2+UPrqq6/8JXbKQV3FNM/94osv3B9//OHf/ZlmmqnQo1O///XXX330ePKpy2kC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C9iQYIarO8ymTJniF3XwIGCxh+jqxSbiA7DAQYC1uAXf8uIoJdys41sCkp6FKzRWe4Q3VlfaAsFniyqIc6yDWP8QfRwbFrq94pKPSM1n4U56bhggrlgG4fVY2Flsok9RBvrXrLPO6svI4h6WybqcGV6fMsEUiyv7/enjNk7xzmBJZrGF9s+SCIpG3Xg3EY/cS1/Psu0gS/5N6RqC31FP6gsr24KSdKxZUyq3yiICIiACIiACItBIBCSmGwl8BT8WQYGV2AJHMflGWIUJ0YfoiO8zDwMZVTAiVa2EBLC8Y1XECwMr3Morr1wrd0QS2xRCrxJZ7ErYCMpKBERABERABERABKqRgMR0NbZ6eevMkVFYC0m9e/euFY05fDpnA4d7XuPRz8tbUuXe3AnEg27Z2eBJ9cLCjehmuwCJgGsE/FISAREQAREQAREQAREQgToRkJiuEzbdlEIAN+JwXyEupba3NQ1auFe00BFAAi8CIYG+ffv6IHok9vxyjFi+FO7rJVCW3SuqIiACIiACIiACIiACIlA0AYnpopHphjwEsP4RTdui2xLtl0BPSYF62IvJcT0EMSKF50MLsghkIUCALKJcW2KffY8ePRJvZd84R2oREIq91+x5zxJAKks5dI0IiIAIiIAIiIAIiEAVEpCYrsJGL3OVibzMWbxhQCiOviIIE+dMT5w40X311Vde1LCHlajCREVOOwO3zMVV9s2YAAsyBBILo30THIutBgRX43v6GkcM2dFyeEpw9FDWAFzNGI+KLgIiIAIiIAIiIAIiUE4CEtPlpFu9eXOsDmf5Dhs2zEfNZm80EYZJRGxG6BD1nMjM22yzTa0AZdVLTjWvCwEWZh577DE3evRob3GeMGGCz4bI5VifWcjhTOqNN97Y9zslERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABERABERABERABERABEag3AYnpeiNUBiIgAiIgAiIgAiIgAiIgAiIgAtVGQGK62lpc9RUBERABEagUAsOHv+XGjBnnZphhBjdhwqRKqZbqIQIiIAJFE5h//lbun3/+ce3bt3OrrbZS0ffrBhGoEwGJ6Tph000iIAIiIAIi0KgEbrzxHrf88ku5Oeecw7VsOU+jlkUPFwEREIHGJvDvv/+6qVO/c99994MbPXqs6917h8Yukp5fDQQkpquhlVVHERABERCBSiIwYMA9bvXVO7rWrVtWUrVUFxEQAREoCQE8dd544x3Xq5cEdUmAKpN0AhLT6h0iIAIiIAIi0HwIvPbaKBcZYNziiy/afAqtkoqACIhAAxMYO/ZTN+OM08vlu4G5V93jJKarrslVYREQAREQgWZM4I47HnadOi0v1+5m3IYqugiIQPkJfPPNVDdq1Htul122Lv/D9ITqJVBpYvqPP/5IbEyCs0w33XS57/78889oZT9a2g/STDPNVNKO8PXXX7sff/wxCoTQPm++f/31lw+YEE//ixpnxhlnTL33559/di+88IL75Zdf3A47yI2lVI03ZcoU98QTT7gePXq4WWedtVTZKp8KJJD2DvJO3n///W6VVVZxyy67bAXWvPlVqZLa5O67H3PdunVufo2gEouACIhAAxJgnv/CC8Ncz55bNOBT9aiqI1BJYvrbb791HTp0cJMm1Yxouskmm7jzzz/frbjiirn2PfbYY93NN9+cu7Z169bu+eefL9nEl4nb/PPP78X0O++8EwWJWT61b5166qnummuuqVVuu2GdddZx1OGggw5y88wzTxSxdYLbd9993eOPP+4v2Wmnndydd95ZdX231BVGQPfr18+98sorPuvvvvvOzTXXXKV+jPKrAAKF3sFrr73WHXDAAW7hhRd2X3zxRQXUuPlXoZLapH//AZGlZZvm3yjNoAYsdPOHBXmlyiCA0aXUxpPKIFOZtRg48CHXp0/vyqycatU0CFSSmIYog+SZZ57pzjrrLA94jjnmiCL7TU38IbziiivcoYce6g477DB38cUXu+mnn75kjfLmm29GbnidfH733HNPQcvxZ5995tq1a+ev32yzzdz111/v+Oztt992xxxzjBfl1OWNN95wSy65pPvhhx/cgQce6AYOHCgxXaJW+/33392wYcMii083nyNWxxYtWpQo96aRDVb3li0VsKgUrZHvHcRjhH60++67u1tvvbUUj0vMgwUfxoVSjl1lK2wjZ9xQbdIQ1SxWTE/zthkU/aZ86n799Re30EILuy5d1o4WmBv36Ji33hqVuogMR37rFlts8YZAmvgMPNg22GBdN2XK1GiR9VU399xzl60sX389Ifo9v8M/Y5FF/n8vPP+GQ0OJ+V699ojcYt90b775TlF1xZgxYsTrme5Zf/0NMo9ZX331lRs5ckRklHjbexfSZ1dbbTXXqlXrGs/KWu4xYz5ym266kVtrrc7u9ttlhMjUYM38IonpZt6AzaH4lSamYc4q8nbbbecefvhh3wT9+/d3hx9+eI3mQChhxV5hhRXcY489VsMFvBTt9uGHH/r8SQ899JDbeuvC+zXatGnjJxaI5KuuuipXjE8//dRb1RHU/P3WW2/577jm4IMPlpguRYP9lwceBbPNNpv/32+//eZmnnnmEubeuFnhdvziiy+6yy67rHELUkFPz/cOMhHPt02jvhjon126dPEeKnjBKBUmUO42KVyC0lxRjJi+//57I6+mAxIfvMUWW7prr72hwYRavBAHHLCve/DBB1KhnHbaGdHv4cGlgVaHXH7++acoyFtbf+eIEaMikbtIHXLJdstt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f3631FJLuTfffNO1aBGFvG2GqT5i+plnnvHWqY033rjJ1hyLFO0Tprnmmsu36WyzRSY2JREQgVQC+cS03XTooYe6K664wv+XMaFTp07+33jvsOA4ZswYd/jhh/tFx+eff75RaJ9//vnu2GOPddddd50X0aQffvjBHXjggW7gwIES043SKnqoCFQmAYnpymxX1UoESkKgGsQ0oP4XVHThhRf2Ymy++aKoO7G09tpre1F2+eWXl4RvY2RSHzHdpk0b9+uvv/pJaVNNTJ7333//xOKtttpqbtttt/WTbFxQlURABGoSyCKmw3fsyy+/dAsttFAtjM8++6w76aST3LBhwxoNMdtzZpxxxhrPv+qqq9zBBx8sMd1oraIHi0DlEZCYrrw2VY1EoGQEqklMY3H+6KOPPLuNNtrIDRo0qNae6O22284tv/zy7owzzigZ44bOqFrE9AEHHOA22GADby0bN26c3ydpLv247V988cUNjV7PE4EmTyCLmL7ppptc797TolmPHz/eLbhgdHZWLP3+++/eat29e/cmVWdcvhkb5ObdpJpFhRGBZk1AYrpZN58KLwLlJVBNYvrJJ5905513nnvuueisqCgdffTRDlfBMO24445uueWWc6eeemqNzz/++GO/N/CLL75wWLa7dOmS6Cr+9ttv+8A3a665phs7dqzfe9i2bVu3zjpRpJ//0uTJk91TTz3l5p57bv/5nHPOWauRP/zwQ289x0q8wgoruFVXXbXWNffdd58Xkttvv30Ny3u5xDRWIOqPK3ySCzzu4XgA8Id/f/bZZw5LdyF3+c8//9xP1meYYYZMnd2sZgMGDHC9evWq1U6dO3d2kyZNcmeffbbf956UsLa1bNnSzTprdH5YgVRs+Qrlp+9FoDEJlEJMv/vuu34s2GyzzWpUhS0YI0eO9EHBGOewWhPQjG02FvyR8RHXcNzFGf+SrN7s3eZe8ujQoYNfNFtkkUVqYXv//fcdYzPPs5QmpglMdscdd7iVVlrJrbHGGnmbQBPnxuyherYIND0CGhOaXpuoRCLQZAhUk5hmAofVGTduxBQpHpAsSUzff//9XrAecsghXkRfeumlXiSH9/IZ4g4xfdhhh3kX4/79++faGfdjLOHsRbzrrrtyn6+44orulVdecbPPPrv/7I8//nBHHXWUe/DBB13Xrl39cz755BMflfbWW291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92l1bjVrJKSjwGN4ryiJgAiIgAiIgAiIgAjUgYDEdB2gNbNbpv4WRfeORDV7JpVEQASqm8BMUcyEpeZxbt5ZqpuDai8CIiACIiACIiAC9SYgMV1vhM0mg18jF+9f+BPtncZSpSQCIlAdBPBEYa80EbtnVYDq6mh01VIEREAEREAERKD8BCSmy89YTxABERABERABERABERABERABEagwAhLTzadBR4x4240ZMy6KLjul+RRaJRUBESgpgVatWrplllnSdeoUnXWnVLEENN5XbNOqYiJQFAGN+UXh0sUi0PAEJKYbnnldnjhixDvul19+dZ07d3IzzCA/zbow1D0iUAkEOPd06NCRbvbZW7hVVlmhEqqkOsQIaLxXlxABETACGvPVF0SgiROQmG7iDfRf8e6882G3ww7dJaSbR3OplCJQVgJMru67b5DbeeetyvocZd44BDTeNw53PVUEshKYNGlq1kvrfF3r1tFxC/8ljfl1xqgbRaD8BCSmy8+4FE/o33+A69OndymyUh4iIAIVQEBjQgU0YkoV1LaV27aqWWUQaGgxDTWNC5XRd1SLCiQgMd08GlWDaPNoJ5VSBBqKgMaEhiLd8M9R2zY8cz1RBIohIDFdDC1dKwIVTkBiunk0sCZXzaOdVEoRaCgCGhMainTDP0dt2/DM9UQRKIaAxHQxtHStCFQ4gWoV07/88ov78MMP3d9//+3atm3rWrVq5Vv6m2++cd9//71bYokl/P+/+uorN3jwYLflllvmrmmMLqHJVWNQ1zNFoOkSKNeYwJjIn6yJgIj//POP/xNP/4t+YKaffnr311/RAfcJiXunm266rI9KvW7q1Klu7NixbpZZZnGLLbaYm2OOOfy1Y8aMcfPNN5+bZ5556v0My2DKlCnuiSeecD169HCzzjpryfINMypX25alsMpUBKqQQDFi+oMPPnZffjnBLbzwAq5Dh2lzyywp3DPN9RoXslDTNSLQCASqSUz/8ccf7txzz3V33HGH++ijjzxtJl0//vij/3vjjTd277zzjuvZs6c744wz/Pf8+5577nH77befu/baaxuhhaY9UoNoo6HXg0WgSRIo15hw4oknurPPPjtznW+44QY3fvz4GuOqja0bbrihO+mkk9xhhx3mXnnllcQ8F198cbf66qu7/fff36233nqZnztp0iR37LHHukGDBjn+HaaFF17Y5/Xwww+7Bx54wFGO+iYEdL9+/XL1+O6779xcc81V32wT7y9X25alsMpUBKqQQFYx/eGHn7iRI9/OEVp99ZXdkku2y0RMYjoTJl0kAo1PoFrE9OjRo91uu+3m3njjDbfsssu6a665JjpWZhXXokUL9+mnn7oBAwa4M8880zfIEUcc4S6++GL/7/PPP99P2K677jq377771mgwxPnvv/+es4KUszU1uSonXeUtAs2PQLnGhN13393dfvvtXjhuttlmbpFFFvHWZUtvvfWW69atm//vmmuu6YYMGeJPGfj333+jo/s6u1dffdV/9/nnn/t7LbEgef311/v/Pv300/67Dz74wN11113+T3zszdcijz32mNtll138QuiOO+7oBfsyyyzjbyHPE044wT366KP+/w899JDbeuut693AjPXDhg3L1f3nn3/2vx/lSOVq23KUVXmKQDUSyCKmx479zA0f/qbH06ZNKzdx4mT/7zXW6Bh5P7YtiE1iuiAiXSACTYNANYjpCRMmuKWXXtpPvJgc3n333YkCmM932mknd8ABB7irr74610B//vmnm3HGGWs1GNaWdddd17v7lTtpclVuwspfBJoXgXKNCWuvvbbr1auX23vvvWsBYXvMaqut5t5//33/Ha7VtiWG/x900EF+7MTT54cffqhx/8033+zzJX355ZduoYUW8v9GhB9//PHuvPPO8//HmrzVVulHfj311FNuk0028deeeuqp/g/u5GHCTb1Pnz7uiiuucHfeeacf10uRqP9ss83ms/rtt9/czDPPXIpsa+VRrrYtS2GVqQhUIYFCYvqzz76MvFhGeDIdOy4XLfa1d6NHj3Fvvvme/6xLl1WjLYYL5yUnMV2FHUtVbp4EqkFM77rrrm7gwIG+gT777DO36KKLpjbWBhts4BZccEF322235W1QLCk777xzdNbrfRLTzbPrq9Qi0KwJlEtwYTFGLNu+4xASC4iXX365/+iWW25xe+yxRw2GePX0798/UUwzVu6www7+etzCGWctEb+iQ4cO/r+HHHJI7hnxBkLMsjCKGMfD6O23365hNQ+vJ/YFdbnkkksSFwbq0vi//vprzhqNZ1LSImtd8o3fU662LUXZlIcIiICLtpaknzM9fvzX7sUXp3nodOq0Qo190uyffuONd/x36667ZrSoOH8qTolp9TQRaCYEKl1M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", "text/plain": [ "" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Similarly, we can fill out the email, city, and ZIP fields:" ] }, { "cell_type": "code", "execution_count": 28, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.226638Z", "iopub.status.busy": "2025-01-16T10:12:39.226478Z", "iopub.status.idle": "2025-01-16T10:12:39.241440Z", "shell.execute_reply": "2025-01-16T10:12:39.241174Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "email = gui_driver.find_element(By.NAME, \"email\")\n", "email.send_keys(\"j.doe@example.com\")" ] }, { "cell_type": "code", "execution_count": 29, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.243161Z", "iopub.status.busy": "2025-01-16T10:12:39.243062Z", "iopub.status.idle": "2025-01-16T10:12:39.253167Z", "shell.execute_reply": "2025-01-16T10:12:39.252880Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "city = gui_driver.find_element(By.NAME, 'city')\n", "city.send_keys(\"Seattle\")" ] }, { "cell_type": "code", "execution_count": 30, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.255085Z", "iopub.status.busy": "2025-01-16T10:12:39.254954Z", "iopub.status.idle": "2025-01-16T10:12:39.264107Z", "shell.execute_reply": "2025-01-16T10:12:39.263818Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "zip = gui_driver.find_element(By.NAME, 'zip')\n", "zip.send_keys(\"98104\")" ] }, { "cell_type": "code", "execution_count": 31, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.265939Z", "iopub.status.busy": "2025-01-16T10:12:39.265832Z", "iopub.status.idle": "2025-01-16T10:12:39.286477Z", "shell.execute_reply": "2025-01-16T10:12:39.286200Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBbhctdaGc3HnIqW4FilwcS1aHIoXv1hxp7g7xd21eIu7FJdCC6WFogVaKA4Firv++03vOn9OTmZmz5k5NvOt5+nTOTPZ2cmX7Ox8y/KvfzJxEiEgBISAEBACQkAICAEhIASEgBAQAkIgNwL/EpnOjZUKCgEhIASEgBAQAkJACAgBISAEhIAQ8AiITGsiCAEhIASEgBAQAkJACAgBISAEhIAQKBMBkekyAVNxISAEhIAQEAJCQAgIASEgBISAEBACItOaA0JACAgBISAEhIAQEAJCQAgIASEgBMpEQGS6TMBUXAgIASEgBISAEBACQkAICAEhIASEgMi05oAQEAJCQAgIASEgBISAEBACQkAICIEyERCZLhMwFRcCQkAICAEhIASEgBAQAkJACAgBISAyrTkgBISAEBACQkAICAEhIASEgBAQAkKgTAREpssETMWFgBAQAkJACAgBISAEhIAQEAJCQAiITGsOCAEhIASEgBAQAkJACAgBISAEhIAQKBOB8sj0v/5VZvUqLgSEgBAQAkJACAgBISAEhIAQEAJCoAMh8M8/uRorMp0LJhUSAkJACAgBISAEhIAQEAJCQAgIgbpAQGS6LoZZnRQCQkAICAEhIASEgBAQAkJACAiBaiIgMl1NNFWXEBACQkAICAEhIASEgBAQAkJACNQFAq1CpnPepC4AVyeFgBAQAkJACAgBISAEhIAQEAJCoOMhEOcGy8lzK4uZznmTjoemWiwEhIAQEAJCQAgIASEgBISAEBACdYGAyHRdDLM6KQSEgBAQAkJACAgBISAEhIAQEALVREBkuppoqi4hIASEgBAQAkJACAgBISAEhIAQqAsERKbrYpjVSSEgBISAEBACQkAICAEhIASEgBCoJgIi09VEU3UJASEgBISAEBACQkAICAEhIASEQF0gIDJdF8OsTgoBISAEhIAQEAJCQAgIASEgBIRANREQma4mmqpLCAgBISAEhIAQEAJCQAgIASEgBOoCAZHpuhhmdVIICAEhIASEgBAQAkJACAgBISAEqomAyHQ10VRdQkAICAEhIASEgBAQAkJACAgBIVAXCIhM18Uwq5NCQAgIASEgBISAEBACQkAICAEhUE0ERKariabqEgJCQAgIASEgBISAEBACQkAICIG6QEBkui6GWZ0UAkJACAgBISAEhIAQEAJCQAgIgWoiIDJdTTRVlxAQAkJACAgBISAEhIAQEAJCQAjUBQIi03UxzOqkEBACQkAICAEhIASEgBAQAkJACFQTAZHpaqKpuoSAEBACQkAICAEhIASEgBAQAkKgLhAQma6LYVYnhYAQEAJCQAgIASEgBISAEBACQqCaCIhMVxNN1SUEhIAQEAJCQAgIASEgBISAEBACdYGAyHRdDLM6KQSEgBAQAkJACAgBISAEhIAQEALVREBkuppoqi4hIASEgBAQAkJACAgBISAEhIAQqAsERKbrYpjVSSEgBISAEBACQkAICAEhIASEgBCoJgIi09VEU3UJASEgBISAEBACQkAICAEhIASEQF0gIDJdF8OsTgoBISAEhIAQEAJCQAgIASEgBIRANREQma4mmqpLCAgBISAEhIAQEAJCQAgIASEgBOoCgVoj03/99Zf7559/qjJ2448/vvtXDFBVam6bSr755ht32223uc6dO7sePXq4CSaYoG0aUuKuf//9t+NfStprm4t1qdicbI3+fP75527EiBH+3wcffOBmnnlmN99887l5553XzTnnnH4ejB071h122GFul112ccstt1y7nBftuVGjRo1yr776qvvqq6/czz//7NegTp06udlnn90ts8wybpJJJmnT5pdaF1tjHlYKQKk+lFN/ra3t5fRdZYWAEBACQkAICIEqIlBLZPqzzz7zRKFa8tJLL7nFF1+8WtW1aT3PPfecW3HFFRvaMOuss7q3337bTTbZZG3artTNDzroIHfOOeck2zV8+HC36KKLtrs2F2tQr1693LXXXpss8ueffzo29i0hv/32mzvuuOPc6aef3lD9lFNO6X744YdGf2+00UaeZA8cOND169fPbb311i3RnJqr87vvvnMXXHCBH9v33nuvaP969uzplRVLL710m+Cw4YYbuvvuuy9577nnntu9++67bdKuvDfV2p4XKZUTAkJACAgBISAEWhWBWiLTv/76q3v22WfdsGHD3OGHH14Qxx122MHNNddcjs0wm7RPPvnEE4lYaolMb7HFFt4qHcr111/vtttuu1adb3lu9uabb3oyffXVVzcp/vzzz7tll102TzXtpszLL7/sjjrqKPfQQw81aVNLkWkszWuttZZjDiPM+VNPPdXNNNNM3nKKFfXQQw9tMu9FpvNNmxtvvNHttddejRQT2267rdt///392oKi6rHHHvPKjFB4Di+//HL373//O9+NqlQKy/lbb73lzjjjjCZj3hHItNb2Kk0EVSMEhIAQEAJCQAhUF4FaItMhMldccYXbfffdm4C1wgoreMIdy8cff+wuvvhid9pppzX8VEtkGmsuBCqUQw45xG+u26OweZ500kmbNG3w4MEd0g35jTfecAsvvHCrkWmI3qWXXurvt+aaa7oBAwa48cYbr9H9IfKQvVNOOaXhe5Hp4k8D4QcoRsJ1gitYb3bdddcmFz/zzDNulVVWafQ9Lvb333+/d7NvbXniiSfc6quv3ui2HYFMa21v7Zmi+wkBISAEhIAQEAK5EKhVMo01cIkllmiCwb777utdMwvJiSee2GBNqiUyzeb/iCOOaNTt9u4yvdBCCzms1KF0VDJdSDnQEpbpeO5fc801bscddyw45zfbbDN3xx13+N9FposvmyeccII7/vjjGxXaaaedkl4UVuiuu+5ym266aaNrCLNgfSGuujUltS52NDKttb01Z4zuJQSEgBAQAkJACBRFoFbJNC6NXbt2LZtMQ26WXHJJb8WtJTJN8jHcfC+77DK/gccqvccee7TrpyNlTe+Ibt6A3JpkOlacYKEuNta4hOOaTCx1//793VZbbdWu50VbNe6BBx5w66+/fpPbs9bMP//8RZvF7++8806jMiuttJJ76qmnmngMtGT/XnnlFbfYYos1ukVHI9Na21tyhqhuISAEhIAQEAJCoCwERKadu+WWW9z000/f4P6I6zPJgmqJTNuk+OOPP3zCq9jlt6xJ00qFRaabB/SWW27pbr311oaLF1lkEffCCy8UzSiNuzdeGbJMpzHnuVlggQWaJBpbbbXV3OOPP15yoGxNiQsyTptvvnnJ66tVoN7IdD2t7dWaI6pHCAgBISAEhIAQKAOBeifTxECSDGjPPfdsyHqMazEuxsS5LrjggmWgWftFsXB/8cUX/sifVExzIQSw+BOXTobpGWaYwU0zzTQlwSpFpr/++mtHe7CqlqscoB1YChn72WabrWRbUgVIYEcW5znmmMNNO+20RetoTcv0yiuv3CTJFMddkXW6kAWVbM5dunRpF2SaMeU4L+YXx7iVM89sEKiD5IJTTTWVr2PCCSds1hjbRTfccIPbfvvtm9SB2/exxx5b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ASEgBISAEBACQkAICAEhIAQqRkBkumIIVYEQEAJCQAgIASEgBISAEBACQkAI1BsCItP1NuLqrxAQAkJACAgBISAEhIAQEAJCQAhUjIDIdMUQqgIhIASEgBAQAkJACAgBISAEhIAQqDcERKbrbcTVXyEgBISAEBACQkAICAEhIASEgBCoGAGR6YohVAVCQAgIASEgBISAEBACQkAICAEhUG8IiEzX24irv0JACAgBISAEhIAQEAJCQAgIASFQMQIi0xVDqAqEgBAQAkJACAgBISAEhIAQEAJCoN4QEJmutxFXf4WAEBACQkAICAEhIASEgBAQAkKgYgREpiuGUBUIASEgBISAEBACQkAICAEhIASEQL0hIDJdbyOu/goBISAEhIAQEAJCQAgIASEgBIRAxQiITFcMoSoQAkJACAgBISAEhIAQEAJCQAgIgXpDQGS63kZc/RUCQkAICAEhIASEgBAQAkJACAiBihEQma4YQlUgBISAEBACQkAICAEhIASEgBAQAvWGgMh0vY24+isEhIAQEAJCQAgIASEgBISAEBACFSMgMl0xhKpACAgBISAEhIAQEAJCQAgIASEgBOoNAZHpehtx9VcICAEhIASEgBAQAkJACAgBISAEKkZAZLpiCFWBEBACQkAICAEhIASEgBAQAkJACNQbAiLT9Tbi6q8QEAJCQAjUCgJDhrziRo4c7SaYYAL32Wdf1Eq31A8hIASEQNkIzDhjJ/f333+7eeed0y299KJlX68LhECzEBCZbhZsukgICAEhIASEQJsicPXVt7qFF57PTTXVlG666aZp07bo5kJACAiBtkbgn3/+cV9//a379tvv3YgRo9xOO23e1k3S/esBAZHpehhl9VEICAEhIARqCYG+fW91yyyzuJthhulqqVvqixAQAkKgKgjgqfPSS6+5Xr1EqKsCqCopjIDItGaHEBACQkAICIGOg8ALLwx3mQHGzT337B2n0WqpEBACQqCVERg16n034YTjy+W7lXGvu9uJTNfdkKvDQkAICAEh0IERuOmme9wSSyws1+4OPIZquhAQAi2PwFdffe2GD3/DbbPNRi1/M92hfhGoNTL9+++/JweT5CzjjTdew29//PFHptnPVPuBTDTRRFWdCJ9//rn74YcfskQI8xat988///QJE2L5VzY4E044YcFrf/rpJ/fUU0+5n3/+2W2+udxYqjV4Y8eOdQ899JDr2bOnm3TSSatVreqpQQQKPYM8k3fccYdbcskl3YILLliDPe94XaqlMbnllvtd9+7dOt4gqMVCQAgIgVZEgH3+U08NdltuuX4r3lW3qjsEaolMf/PNN26BBRZwX3zROKPp2muv7c444wy3yCKLNIzvYYcd5q699tqGsjPMMIN78sknq7bxZeM244wzejL92muvZUliFi44t4477jh32WWXNWm3XbDSSis5+rDXXnu5aaaZJsvY+pnbdddd3QMPPOCLbLXVVq5///51N3er3WEIdJ8+fdxzzz3nq/7222/d1FNPXe3bqL4aQKDUM3j55Ze7PfbYw80666zuo48+qoEed/wu1NKYnHde38zSsnHHH5QO0AMU3fxDIS+pDQQwulTbeFIbyNRmL/r1u9v17r1TbXZOvWofCNQSmQZRFsmTTjrJnXzyyR7gKaecMsvs93XyRXjRRRe5fffd1+23337unHPOceOPP37VBuXll1/O3PCW8PXdeuutJS3HH3zwgZtzzjl9+XXXXdddeeWVju9effVVd+ihh3pSTl9eeukl16VLF/f999+7Pffc0/Xr109kukqj9ttvv7nBgwdnFp/uvkasjpNNNlmVam8f1WB1n246JSyqxmgUewbxGGEebbfddu7666+vxu2SdaDwYV2o5trVYo1t44pba0xao5vlkulx3jYPZu+U990vv/zsZpllVrfCCitmCua2PTrmlVeGF1QigyPvurnmmrs1IE3eAw+21VdfxY0d+3WmZH3e/fvf/26xtnz++WfZ+/wmf4/ZZvv/WHg+g0NrkflevbbP3GJfdi+//FpZfcWYMXToi7muWW211XOvWZ9++qkbNmxoZpR41XsXMmeXXnpp16nTDI3ulbfdI0e+49ZZZ023/PLd3I03ygiRa8A6eCGR6Q4+gB2h+bVGpsEcLfKmm27q7rnnHj8E5513ntt///0bDQdECSv2f/7zH3f//fc3cgGvxri9/fbbvn7k7rvvdhttVDpeo3Pnzn5jAUm+5JJLGprx/vvve6s6hJr/X3nlFf8bZfbee2+R6WoM2P/qwKNg8skn93/9+uuvbuKJJ65i7W1bFW7HTz/9tLvgggvatiE1dPdizyAb8WJhGpXCwPxcYYUVvIcKXjCS0gi09JiUbkF1SpRDpu+447bMq2mP5I3XX38Dd/nlV7UaUYsbscceu7q77rqzICjHH39i9j7cuzqgNaOWn376MUvyNoe/cujQ4RnJna0ZteS75IYbrnMHH3xgwcIXX3yp22yzLfJVVkGpDTZYzw0Z8oIbM2ZsWbW8+OIQt/766+a6ZvToj3Ipqu+9957MC6+pRXGKKaZwV1xxdaboWKPhfnnb/fzzg7P92PpujjnmzPo5rGR72U+eddYZGXnvlGWF3rlkeRVofwiITLe/Mam5FtUimWaQYpfvd955p1HsMtZeXKtHjRqVHS3SWMNZjUH+8ccfvcVo3Et4qI+dLCXzzz+/o524c1988cWNim+//fbuhhtu8N+hqZ1pppmyTdA4V1K5eZdCNv/vv/zyS8NLHi+HliRD+VtVeUlT7uCJITJdOZ5WQ1s+g6wTl156qQ/7EJmu3ph2hJrykumBA5/JCNgmvku7776nW2WVVd3000/vnn12oLvpphvdu++Ocjvs0CsLgzqrTbptZLpPn9McyuRYUEjPO+98bdI2u+nHH3+cKVZ/yazDxXOfVNpII9Pdu6/WQNrwKHj88Uczhf99vvp7733ALbvscpXequj1eUlpXAmeOk8//VTD17///ptX4sw888zuxBP7NCq+7rrrlVTgDBs2zK233lr+utNPPzOzJK+QGUr+yvB4LPM+PMF/P3jwkEzZMY//XE67sXLPNNPM/lkoJeS0mWWWzlkI4EJZKOAzpYrr93aIgMh0OxyUWmtSrZJpxumxxx5za665ph8yLDhY5XCHZJFeaqml3M0335wlJdiy0ZCSNAzy+8knn7h55pkn23ys0oRQoakkrpYY67nmmsuXw0Wbl0YoU001lbcm593sFiPTWNaNBL311luOssU28rwAsGATr417WLdu3bKXTlN3uUGDBnnX5i+//NJb0ldfffWk9p17YuknhhjrOJrhMAadfufBrtDzg0X+rrvucighFl10UU9oaXMoeep/77333COPPOKVDLjAPv74475d6623nh+rWCDPjOWLL77oN3PME/MoyEOmaS+x1htvvLHD6jVkyBCHJ8GGG27opp12Wn+7v/76y9c/YsQIP+/whoiFepiXkF6UO8w74uPzyHfffefuvPNON3r0aJ8wDcUN854Edsibb77pXY7BeIMNNvDKGuZmjC9lmTcWM273puziiy/u/yTMgDmNkFgLbb0JbScs4auvvvIYEuYQ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oCIEWmpNOOqoo9wpp5ySu21XXXWV++STTxqtq7a2rrHGGu7oo492++23n3vuucx/OSFzzz23W2aZZdzuu+/uVl111dz3/eKLL9xhhx3mHnzwQcfnUGaddVZf1z333OPuvPNORzsqFQh0nz59Gvrx7bffuqmnro6Ppch0paOj64VA6yKQl0y//fZ7btiwVxsat8wyi7kuXebM1ViR6VwwqZAQaHsE6oVMjxgxwm277bbupZdecgsuuKC77LLLsmNllnSTTTaZe//9913fvn3dSSed5AfkgAMOcOecc47/fMYZZ/gN2xVXXOF23XXXRgMGOf/tt98arCAtOZqlNs4oAYYNG+ZeffVV17lzZ9+3bt26+f61N3n22WezLMRbuyOOOMLttdde7a15ao8Q6BAIlFoTmtuJ7bbbzt14442eOK677rputtlm89Zlk1deecV1797d/7nccsu5gQMH+lMG/vnnH7/mPP/88/63Dz/80F9rgkLyyiuzM58yefTRR/1vb731lrv55pv9v3jtLdb++++/322zzTZeEbrFFlt4wt61a1d/CXUeeeSR7r777vN/33333W6jjTZqLhwN17HWDx48uKHvP/30U9XW13LJNPcGZxQUWP0XWWQRt+GGG7qJJkqfofXjjz/6d9/LL7/sJpxwwuyM8iXcYost5i35KWEsn3zySffLL794pcTkk2f+pIHwOx5brOXgQl2MQ6H7h9cOGjTIffPNN27iiSeuipKj4oFVBUKgGQjkIdOjRn3ghgx52dfeuXMnN2bMl/7zsssunnk/Zun6S4jIdCmE9LsQaCcI1AOZ/uyzz9z888/vN15sDm+55ZYkAeb7rbbayu2xxx7u0ksvbRihP/74w29AYsHassoqq3h3v5aWQhtnNlJsJE8//fQmTUBpgGWmS5cuLdY8XDtPOOEET+BjYjx69Gh37bXX+g03uJs89thjbs011/ReAigqJEJACJSPQEuR6RVXXNH16tXL7bzzzk0aRXjM0ksv7d58803/G67VFhLD36wBrJ14+nz/fZYhJxDWAupFPv74YzfLLLP4zxAzFGu2hrFmQQwLySOPPOLWXntt//Nxxx3n/+FOHgpu6r1793YXXXSR69+/v1/XqyH034jlr7/+6glhNaQcMo3yd6WVVvIYhgJB7tevn3/XhQKBBs+4PO+He++9t9H4cR1W/l12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PmNGthXKIZf6+fNr58ryjbs0btNkTB83LuSunqj4LOgYikJMB1mSqO7ccyM3IqZMyTbt24fG6zcPEh2PnwOs+ZdeusFtdtCwUs+YUTuhjO+FedfoHBEQAREQAREQAREolQQkphOflpIS07glN23a1GXL/uuvv2zm3J1dp/MS04sXL7buubu640gqRiZvRLVvuE3jPr3XXnvZREQ/5SrD9corr7ikZL60VixK8cR0otcmtjuRceECj5Weklvjxo2L6IoX09Fx49H9DVqmCyumEx1XPGaxxHTQihhL+JBI6vLLN7jYXv5Wi1tMIxyvu66KK6O1YkWOtSxvcBmgaRs31rUl2WL/vZAciyRZiF7EL21HxbSPBQ6KWH93L6a/+KJmniWZdtlltct0fdddVewGU2Tnly/PMS+8sMUl9apRI2TJ9QnJgqP0lt9gjedExWdBx1AUYpq+H3bYWhuznm3zIVS2lQIiXeRfeSXTXHLJhgiPhETH88sv22z8eXbYdfz997eaf/3L1nSzDb5wVhMBERABERABERCBtCEgMZ34VOcnpr247Natmy1VNDTfC/tM1tHuyz5mmpJT5557rot19vHA33//vSvntN4WJeZ+uHJTJqtr16657udFKB8sWrTIJSDzDddqrkMjQzVWX1/XetSoUU5oT5s2LW55LM7z4yW2OlibOtFrc/1ExoUl3rt3kym8Y8eOrt+4s7MZQPbx0aNHh13YBUHG9wAAGbxJREFUY4GnlJYv9UU28j333DN8WKLzkOi44pUUww26SpWQaPv119quhjOte/cNtuRVprPuffRRTedOTKPuNOWyLrigcrhclBfT33xTK1dN4Xgx0z/8kG3rJa/NlSmbWsqtW0e6eZ966nobAlDZsgzF2WJxJoaXGNnFi+vY2OLYtaZPOGGdyxh+1lmVrPAPZQbv33+Lyz4e7V4eS7gF2Xg3b6zj550XKmlFhm1qVofm3dixrHalokaPrhHua6x5v/zyjdYDI5ThnNrelMaiMfarrtpoM9tXdVZ0L3pxicY1OtiaNAndK8i8uMbw00/bbN3w3DHTDz202eZI2GRFcCVbMi/E1zff9759q9m/5VBs/csvb3Eu9jRc3HF19w2LMuXOgknsEh3PtGnZbnPHu7tzzbfeyrQZ4zfYua5sy/RtF+5UCWBTjzAT7xETa470OxEQAREQAREQAREoswQkphOfurzENNbjnXbayV2sRYsWLr45vwWkz0T92GOPmTvvvDPcEf/7xx9/3MVGY0n12aepNX3KKafYkkYfuJrRWFyJFcYV+rnnnosYjC+ThWs4Scmi20UXXWRjHV9zv0aUch2EO2KTmtPt27ePC2ft2rXhclzR2bw5KZFrJzouko5R0gtXb9qTTz5pSzvtYUXb2y7DuWfOPeEVrzVp0sQJ7+OOO86KvrNcBvA333zTlhAKZQTPbx4SHVdeT5QXZog2hOfEiVku2zKxy75RvsrXmubnDz8MZUmmBnTt2iG35VjZvAcOzLTCOyQ+fUZsfqakVqdOIeuhj9XmZyzOZ5wR+r0/HjG9dOk256qNGzox1A0arLLWx0qutnW85rNm8zmWXvr60Ueh2si0O+6oYuewghO+VauGNhSC7ttBV2sfB42Qx00cV28aibco6UWSNG8tR6hfdFFld/1Y7a+/cuymz+pwfC+lt2rUKOcydweFKW7LLVqEjkMQIgxp48dnmWOPXedEKmKVBpPiGsPYsVl20yAUvx3M+B7cWCCGffz4rdbtvqr9u8+wG1Lr7N9tlt0A256cDFdvrkP/qZM9ZEgN90wtWZJjDjpojaulPXVqLZfxvSDjQUwfcsjaCAv+889vMddfv9FmaK9tNwJCG0Rs3vmyftG5H+I+RPpABERABERABERABMoaAYnpxGcslpgmGzWWFxKBIWx9o7QUrtV9+/bNdQNKTmEN9eKQAy677DKXnZvff/fdd+Fz+B3lq6jjfPvtt7t74O6M+ObeJBQjIzfCO1heiwtQvgrrM3HRJ5xwQq5+YNmlpBXX9o0FMLHUeSUlI6kZcdYIU986d+7sLORV//YDTvTaiY4L4U3MMvegMWb+jSCmtjW1uXGv3n333eNOKAnYsMLTiCXn32RLL8g8JDqueJ3o12+L7UPIYkgt6KFDa7hEZMSxnnnmurD4DD0TlV0ZJD4nFvnGGzdEfI7QfuedGs71+tlnN7vs2bg000hohuD+7LMsZ9Hc/lyWsxsINewzluVKRvlHlrhm3IGfeWazE2a044+vaPlutSIzwyYBq5FnVu/Fi3Ns3epQPWss7D16VLLXr2o9JkK/oxY0GbmvuGJDWBxjLb3llqouG3f37uvDfaeE12uv1XCWaO/mTrmu0LwbO+9VXL+or33ppZVdNundd4+f/Io63rir+1rbXIcayXfeWSUiRp0yWBddtL2/TZqUt5tWmU60skGAGP3jj23OrdkL/KIcQ58+m+3cZEZweOqpas6avmpVjhOxeAjQhg6tbj1NytuEhJsixkUZsuHDa7rSYpvstN9110ZXs5xNB0qAjR691c3rSy9VdywLOh6exU6d1rk+8vxWqlTOzcXTTzO320u1UXnAJ/n79NNP7T2Pj/t3qQ9EQAREQAREQAREoMwSSAcx3a/f6za5U7Z1GT3dWo/jZ/XNaxKXL19lE3+NcNbma689v0TmG1dlhGO9evXC9+fflK/yLtrRHUO4169fP1wTOlbHN9q0x8RNY/3G4uvrRxfFIBO5dkHGxfUWLlzoXMyZCyxgPjY8kf4Sc56ZmVmgc4qaGdZS24WY4vT337fZuPgcay3PsBbUREZUtMcgwBDniNjFi7fZElXl7d9MbNfuWHfGwlu/frkIkYoQrFs38WvE5m1c5vNmzcq7OtkI3113Ldg1sZZjmfXXiEdu2bIcg2s8wrFVq4xc2b0LS5zs4jsyBuLriVlu2rS8qRxZYjzPLrFh8v33WfYdaKy7f8YOzQXeAvzHxgJj4We8BbBwRzey5rP5l9cGV2FZ6jwREAEREAEREAERKBUE0kFMDx06ygqDZUXCu0mTRtYSFiovpSYCIiACIiACIiACIiACIiACIpCmBNJBTK9du966YX9tLSmLbfKikAtrQRuW3z32aGyOPvpQ6x4ZP3a0oNfV8elBoFy5UJywmgikMoGcnMJ5/qQyE41NBERABERABEQghQmkg5hO4enT0ERABERABERABERABERABERABEqCgMR0SVDXPUVABERABERABERABERABERABMo0AYnpMj196rwIiIAIiIAIiIAIiIAIiIAIiEBJEJCYLgnquqcIiIAIiIAIiIAIiIAIiIAIiECZJpCqYnrKlG/Nzz/Pd+WTliz5s0zPUap2vmHD+q5WdvPmTW1d5ANTdZgalwiIgAiIgAiIgAiIgAiIQCoSSEUxPWDAUNO6dQtTq1bNQteVTsW5Lm1jysnJMStXrrY1jdea2bPnmYsv7lbauqj+iIAIiIAIiIAIiIAIiIAIiEBsAqkmpl95Zahp166NadBgJ015GSKA98D06d+biy6SoC5D06auioAIiIAIiIAIiIAIiED6EkglMT158kxjjZ1mr712T98JLcMjnzfvN1OxYoZcvsvwHKrrIiACIiACIiACIiACIpA2BFJJTL/55numbdvWcu0uo0/v8uUrzcyZs8w55/yrjI5A3RYBERABERABERABERABEUgbAqkkpt9++0Nz7LGHp83cpdpAiaEeP/4rc/bZXVJtaBqPCIiACIiACIiACIiACIhAqhFIJTHdp88r1qp5WqpNUVqNZ/DgkebGGy9OqzFrsCIgAiIgAiIgAiIgAiIgAmWQQLqJ6aVLl5jBg980derUMU2ahGKry5cvb1q02Mf+u0muGbzoovOt6/EMM2PG92Vwdoumy+ee293MnTvXTJkyrWgumMdVJKaLHbFuIAIiIAIiIAIiIAIiIAIiUBQE0k1Mv/HG6+aWW3rGRNe4cWPz8suvmoMPPiT8+SmndLIicrJZtmxFUeAuk9f45z+PM999921SGEhMl8lHRJ0WAREQAREQAREQAREQgfQjkK5i+uijj7FlmELuxAsWLDAjRw631ucZ7t+ffTbO7L//Ae5niWljJKbT772gEYuACIiACIiACIiACIiACORDIF3FdJ8+z5vu3c+JoPPwww+afv36miuuuMo89NAj+YrpDRs2mOXL/zK77rqbqVChQp6kV65cabZt22Z23nnnPI/bsGG92bhxo6lfv0Ghnt1Vq1a58+rWrRvzfPqAWzttzZo1ZtWqlaZp0z0jjl2/fp1Zu3adadSokSlnH5D8xPQff/xhGjZsGJMB96NxT35euPB327d6platWjH7J8t0oaZdJ4mACIiACIiACIiACIiACCSbgMT0duI//fSTOfroDqZly1Zm3LiJccX0N99MMbfddov58cdZ4ZM7depsEOi1a9eOmMKXX/6vefvtt5ybNA1X8uuuu8FcfPGlEcdNnDjBCfkJE8a739OHHj3OM5deellCj8R//vOSeeutweE+cT6bBZdffmX4/Pfff89cdtnF5uGHHzOffPKxmTQpNEbvwj5jxnTz5JOP27GPdb/feef6dkx9zVNPPZHLzXvTpk3m0UcfMqNGfWgWL15satSoYY455lhz330Pmj322CN8zzZt9jeZmVvt5sTDjtn69evNY489aS65JHL8/gSJ6YSmWweJgAiIgAiIgAiIgAiIgAiUNAGJ6e0z4MX0AQccaD79NCQoo928f/ttvmnfPhRTfd55F5gGDRqYsWM/cy7iRxxxlBk2bET4ggMGvGzuuut2J0pPP/10JyoRn1iz77zzbpu1OhS7/e23M80JJ3R0gvS0085wgnzEiGFOpPbq1cece+55eT4mCOl77707fB8OHjFihLsPwvnyy69w5w8fPsxcddXl7j5VqlQ1xx9/vBX3u5rbb7/TLFmyxP77WHdOx47HmzZt2pqvvvrSfPHFJHc8ItiLbizMV199hb3HcBdfjoiePftHM3r0KNOs2d72/5+4BG80xDTjoHXocISB7cknd7IMD405Jonpkn4j6P4iIAIiIAIiIAIiIAIiIAIJEZCY3o7poYceMP37P28F5zXmgQcech9Ei+mPPx5tPvpotOnS5VTr/nyCOyY7O9sccshBTjT+/PN858KM6/PBBx/ohOjEiV9aV/Bd3bFkE+/QISQkv/9+tqlWrZo5/PD25pdf5jkR6pOfLVu21Bx33DFO3M6b95upWbNmzPlcuHChuzeCfcyYcdbdulH4Ph07hsTx9Onfuft7Mb3HHk3Nhx+OthsBu4Svef3111gL+hCbnO02c+utt4d/T7I2krbRvJj2Fm6s8SRsy8jIcJ8/91xva3V+xNx0083mjjvucr/zYhq3edzn82sS0/kR0uciIAIiIAIiIAIiIAIiIAKlgkC6immsyN7VeMGC35zQxBUb8fvBB6OdmzUt0QRkPXveYN58c5BzD+dcrLSU1brvvgfMNddcFzHXCO21a9eYvfZqZoi7btmyhTnppE7m9dffiDju6aefNM8885TrT7t27WM+Lx99NMpceOH5TvyzCRBsbAywQTBw4CBz4oknh8U0luiePW+JONYL+kWLlkXEPq9evdrss08zd6wX0/fff6956aUXIhK18Tmx3nvu2cS6yh9jhg4dFiGm589f6DYO8msS0/kR0uciIAIiIAIiIAIiIAIiIAKlgkC6iulY8LHYvvTSf03btm3DH8cS05MmfW4tux+YadOmOms01l/fvJh+4onHTO/evWwc81BrYe4Yd64//3yC6dr1DPc51uVg89d9/PEnc8VY++OIcX722Wdi3mfMmM/MOeecHbY2e8v0c8/1M//+d/fwrUh6ttdee1grchvz8cef5eqrty57MX3UUYebOXPm5Nlnf6yPmZ4166eEnneJ6YQw6SAREAEREAEREAEREAEREIGSJpCuYhoX7QsuuMjhx015n332DbtiB+ckWkxjfcYKTcO63apVKxcfjKileTHtrcqDBr0VdgePNdfjx48zZ5/d1X10ww03RRzy++8LnCv2CSecaO91ZMxHheRgvXo9naeYxm0b9+2iEtPHHnuUS3R25ZVXm8qVK0f0a/bs2Wa//fazseL3uN9LTJf0X7juLwIiIAIiIAIiIAIiIAIiUCwE0lVMxyqNFQtwtJj2ZaK8aPbnkCWbWGL/e7Jln39+D5to7B6baCxSJBMPvW7dOufmvWLFCtO69b6G+ONXXx1Y4Dn2bt733/+gTQp2bcT5ZAen3Fe0m3e0ZZqTCuLmTbIzkp6NHTvBbia0zrPPEtMFnlKdIAIiIAIiIAIiIAIiIAIiUBYISEznPUvRYtq7PM+c+YOrw0ybO3euOfLIw9zPXkyTHfugg1q7GOyxYyeGy0XhFu6P9QnI/DXff39URJZrEnqRUZsYZ7Jrx2rBRGeTJn0d7pO/D1m4Z8z43pXkimeZ5ro33HCtGTLkLRdLzf1887Hg/Nu7bvvrEOc9YMCr4Rjr33//3SYeu9XGTe9py2Y94S4hMV0W3gLqowiIgAiIgAiIgAiIgAiIQIEJSEwXTEzfffcdNoP1f61b+D4uadj69etcFmxEa1BM8/OgQQPNzTff5GKhTznlVFO+fDnz3nvvuRjru+++11x//Y3uHOpWd+lysvu5a9ezbHmpZrYk1ReuDjTJzP73vzGmYsWKcTsaLMHFfWgffPC+u08w3jovMU2WcZ/9+9hjj7MlrA4wkydPNl9//VWu0lhZWVmuXjVJ1ih1xfGbN2+2CdjecBzI8O37ITFd4D9JnSACIiACIiACIiACIiACIlAWCEhM5z1L//pXFycovVWWjNV33nmbs+L6RjwyWblffLG/GT9+kosZ9u3111+18cxvujrUNIQ11l+fSdwfN3bsGJche8KE8eFze/Q414ru+8xOO+2U76OEoB4yZLDLSE5D5Hbvfk5E4jIvpvv1e8F063Z2rmtS75rYbxKX0bBm9+7d1zzxxKOu/54Bn8HhkUcedGXCfB1pakyzSdC5c5fwtdu1O9ixUQKyfKdQB4iACIiACIiACIiACIiACJQlAukmpotqbjIzM82ff/5p6tevnysJV6x7rFmzxtWjrlevXp5d2LRpk1m1apVNPNYgokRVov3mPrTatWsnekqu48jujQCuX7+BKRf9gMS4KjHglStXcYnYdrQpm/eOEtT5IiACIiACIiACIiACIiACSSEgMZ0UzLpJggQkphMEpcNEQAREQAREQAREQAREQARKlkAqiekhQz6w8buHJ2RNLVnqunssAjk5OTaB25e2BvYpAiQCIiACIiACIiACIiACIiACpZtAKonpwYPfs9mjW9sY47qlG7p6F5PA8uUrzbff/mhjvUNJ1NREQAREQAREQAREQAREQAREoNQSSCUxPWXKtyYrK9vsvXfTUstbHYtPYN68+S5r+T/+cYAwiYAIiIAIiIAIiIAIiIAIiEDpJpBKYhrSr7zyjjn44P1tveUGpRu8ehdBYPHipWbmzB/NhRd2FRkREAEREAEREAEREAEREAERKP0EUk1Me0G9337NbEbrWs7lO5GM1KV/plKvh8RIr1ixyqxevcbMnfurFdLdUm+QGpEIiIAIiIAIiIAIiIAIiEBqEkhFMc1MTZky08ybt8BkZGSYJUv+TM3JK+OjatSovtm2Lcc0a7aHadfuwDI+GnVfBERABERABERABERABEQgrQikqphOq0nUYEVABERABERABERABERABERABJJLQGI6ubx1NxEQAREQAREQAREQAREQAREQgRQgIDGdApOoIYiACIiACIiACIiACIiACIiACCSXgMR0cnnrbiIgAiIgAiIgAiIgAiIgAiIgAilAQGI6BSZRQxABERABERABERABERABERABEUguAYnp5PLW3URABERABERABERABERABERABFKAgMR0CkyihiACIiACIiACIiACIiACIiACIpBcAhLTyeWtu4mACIiACIiACIiACIiACIiACKQAAYnpFJhEDUEEREAEREAEREAEREAEREAERCC5BCSmk8tbdxMBERABERABERABERABERABEUgBAhLTKTCJGoIIiIAIiIAIiIAIiIAIiIAIiEByCUhMJ5e37iYCIiACIiACIiACIiACIiACIpACBCSmU2ASNQQREAEREAEREAEREAEREAEREIHkEpCYTi5v3U0EREAEREAEREAEREAEREAERCAFCEhMp8AkaggiIAIiIAIiIAIiIAIiIAIiIALJJSAxnVzeupsIiIAIiIAIiIAIiIAIiIAIiEAKEJCYToFJ1BBEQAREQAREQAREQAREQAREQASSS0BiOrm8dTcREAEREAEREAEREAEREAEREIEUICAxnQKTqCGIgAiIgAiIgAiIgAiIgAiIgAgkl4DEdHJ5624iIAIiIAIiIAIiIAIiIAIiIAIpQEBiOgUmUUMQAREQAREQAREQAREQAREQARFILgGJ6eTy1t1EQAREQAREQAREQAREQAREQARSgIDEdApMooYgAiIgAiIgAiIgAiIgAiIgAiKQXAIS08nlrbuJgAiIgAiIgAiIgAiIgAiIgAikAAGJ6RSYRA1BBERABERABERABERABERABEQguQQkppPLW3cTAREQAREQAREQAREQAREQARFIAQIS0ykwiRqCCIiACIiACIiACIiACIiACIhAcglITCeXt+4mAiIgAiIgAiIgAiIgAiIgAiKQAgQkplNgEjUEERABERABERABERABERABERCB5BKQmE4ub91NBERABERABERABERABERABEQgBQhITKfAJGoIIiACIiACIiACIiACIiACIiACySUgMZ1c3rqbCIiACIiACIiACIiACIiACIhAChCQmE6BSdQQREAEREAEREAEREAEREAEREAEkktAYjq5vHU3ERABERABERABERABERABERCBFCAgMZ0Ck6ghiIAIiIAIiIAIiIAIiIAIiIAIJJeAxHRyeetuIiACIiACIiACIiACIiACIiACKUBAYjoFJlFDEAEREAEREAEREAEREAEREAERSC4Bienk8tbdREAEREAEREAEREAEREAEREAEUoCAxHQKTKKGIAIiIAIiIAIiIAIiIAIiIAIikFwCEtPJ5a27iYAIiIAIiIAIiIAIiIAIiIAIpAABiekUmEQNQQREQAREQAREQAREQAREQAREILkEJKaTy1t3EwEREAEREAEREAEREAEREAERSAECEtMpMIkaggiIgAiIgAiIgAiIgAiIgAiIQHIJSEwnl7fuJgIiIAIiIAIiIAIiIAIiIAIikAIESkRMpwA3DUEEREAEREAEREAEREAEREAEREAEwgRychKCUS7HtoSO5KBoxZ7wiTpQBERABERABERABERABERABERABMoAgQQlssR0GZhLdVEEREAEREAEREAEREAEREAERCBJBCSmkwRatxEBERABERABERABERABERABEUgdAsUiplMHj0YiAiIgAiIgAiIgAiIgAiIgAiIgAoUm8P8/6N5kk21JkgAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The check box for terms and conditions is not filled out, but clicked instead using the `click()` method." ] }, { "cell_type": "code", "execution_count": 32, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.288464Z", "iopub.status.busy": "2025-01-16T10:12:39.288328Z", "iopub.status.idle": "2025-01-16T10:12:39.503728Z", "shell.execute_reply": "2025-01-16T10:12:39.503434Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "terms = gui_driver.find_element(By.NAME, 'terms')\n", "terms.click()" ] }, { "cell_type": "code", "execution_count": 33, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.505632Z", "iopub.status.busy": "2025-01-16T10:12:39.505514Z", "iopub.status.idle": "2025-01-16T10:12:39.525171Z", "shell.execute_reply": "2025-01-16T10:12:39.524805Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZhcNduG8+HOhxR3irtDgULxUry4F3cr7lbcXYu3SHEr7hRKC0ULtFAcChR3/c+dfu/+2Wxm5szuzMrM814XF9szOTnJk5ycPK/lP/9m4iRCQAgIASEgBISAEBACQkAICAEhIASEQG4E/iMynRsrFRQCQkAICAEhIASEgBAQAkJACAgBIeAREJnWRBACQkAICAEhIASEgBAQAkJACAgBIVAmAiLTZQKm4kJACAgBISAEhIAQEAJCQAgIASEgBESmNQeEgBAQAkJACAgBISAEhIAQEAJCQAiUiYDIdJmAqbgQEAJCQAgIASEgBISAEBACQkAICAGRac0BISAEhIAQEAJCQAgIASEgBISAEBACZSIgMl0mYCouBISAEBACQkAICAEhIASEgBAQAkJAZFpzQAgIASEgBISAEBACQkAICAEhIASEQJkIiEyXCZiKCwEhIASEgBAQAkJACAgBISAEhIAQEJnWHBACQkAICAEhIASEgBAQAkJACAgBIVAmAuWR6f/8p8zqVVwICAEhIASEgBAQAkJACAgBISAEhEAHQuDff3M1VmQ6F0wqJASEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRahUznfEhdAK5OCgEhIASEgBAQAkJACAgBISAEhEDHQyDODZaT57YsZjrnQzoemmqxEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwREputimNVJISAEhIAQEAJCQAgIASEgBISAEKgkAiLTlURTdQkBISAEhIAQEAJCQAgIASEgBIRAXSAgMl0Xw6xOCgEhIASEgBAQAkJACAgBISAEhEAlERCZriSaqksICAEhIASEgBAQAkJACAgBISAE6gIBkem6GGZ1UggIASEgBISAEBACQkAICAEhIAQqiYDIdCXRVF1CQAgIASEgBISAEBACQkAICAEhUBcIiEzXxTCrk0JACAgBISAEhIAQEAJCQAgIASFQSQREpiuJpuoSAkJACAgBISAEhIAQEAJCQAgIgbpAQGS6LoZZnRQCQkAICAEhIASEgBAQAkJACAiBSiIgMl1JNFWXEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRqjUz//fff7t9//63I2I077rjuPzFAFam5bSr59ttv3W233eamn35616NHDzfeeOO1TUNKPPWff/5x/JeS9trmYl0qNidboz9ffPGFGz58uP/vww8/dDPNNJObd9553TzzzOPmmGMOPw/GjBnjDjvsMLfLLru45Zdfvl3Oi/bcqJEjR7rXXnvNff311+6XX37xa1CnTp3cbLPN5pZddlk30UQTtWnzS62LrTEPWwpAqT6UU3+tre3l9F1lhYAQEAJCQAgIgQoiUEtk+vPPP/dEoVLy8ssvuyWWWKJS1bVpPc8995xbaaWVGtowyyyzuHfeecdNMskkbdqu1MN79+7tzjnnnGS7hg0b5hZbbLF21+ZiDerVq5e79tprk0X++usvx8a+GvL777+74447zp1++ukN1U8++eTuxx9/bPTvDTfc0JPsZ555xvXr189ttdVW1WhOzdX5/fffuwsuuMCP7fvvv1+0fz179vTKimWWWaZNcNhggw3cvffem3z2XHPN5d577702aVfeh2ptz4uUygkBISAEhIAQEAKtikAtkenffvvNPfvss27o0KHu8MMPL4jjDjvs4Oacc07HZphN2qeffuqJRCy1RKY333xzb5UO5frrr3fbbbddq863PA976623PJm++uqrmxR/4YUX3HLLLZenmnZT5pVXXnFHHXWUe/DBB5u0qVpkGkvzWmut5ZjDCHP+1FNPdTPOOKO3nGJFPfTQQ5vMe5HpfNPmxhtvdHvttVcjxcS2227r9t9/f7+2oKh69NFHvTIjFN7Dyy+/3P33v//N96AKlcJy/vbbb7szzjijyZh3BDKttb1CE0HVCAEhIASEgBAQApVFoJbIdIjMFVdc4XbfffcmYK244oqecMfyySefuIsvvtiddtppDT/VEpnGmguBCuWQQw7xm+v2KGyeJ5544iZNGzRoUId0Q37zzTfdwgsv3GpkGqJ36aWX+uetueaabuDAgW6cccZp9HyIPGTvlFNOabguMl38bSD8AMVIuE5wB+vNrrvu2uTmp59+2q2yyiqNruNif99993k3+9aWxx9/3K2++uqNHtsRyLTW9taeKXqeEBACQkAICAEhkAuBWiXTWAOXXHLJJhjsu+++3jWzkJx44okN1qRaItNs/o844ohG3W7vLtMLLbSQw0odSkcl04WUA9WwTMdz/5prrnE77rhjwTm/6aabuttvv93/LjJdfNk84YQT3PHHH9+o0E477ZT0orBCd955p9tkk00a3UOYBesLcdWtKal1saORaa3trTlj9CwhIASEgBAQAkKgKAK1SqZxaVxggQXKJtOQm6WWWspbcWuJTJN8DDffyy67zG/gsUrvscce7frtSFnTO6KbNyC3JpmOFSdYqIuNNS7huCYTS92/f3+35ZZbtut50VaNu//++916663X5PGsNfPNN1/RZvH7u+++26jMyiuv7J588skmHgPV7N+rr77qFl988UaP6GhkWmt7NWeI6hYCQkAICAEhIATKQkBk2rlbbrnFTTvttA3uj7g+kyyolsi0TYo///zTJ7yKXX7LmjStVFhkunlAb7HFFu7WW29tuHnRRRd1L774YtGM0rh745Uhy3Qac96b+eefv0misdVWW8099thjJQfK1pS4IOO02Wablby/UgXqjUzX09peqTmieoSAEBACQkAICIEyEKh3Mk0MJMmA9txzz4asx7gW42JMnOuCCy5YBpq1XxQL95dffumP/EnFNBdCAIs/celkmJ5uuuncVFNNVRKsUmT6m2++cbQHq2q5ygHagaWQsZ911llLtiVVgAR2ZHGeffbZ3dRTT120jta0THft2rVJkimOuyLrdCELKtmcO3fu3C7INGPKcV7ML45xK2ee2SBQB8kFp5hiCl/H+OOP36wxtptuuOEGt/322zepA7fvY489tmTd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CAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACQkAICAEhIASEgBAQAi1GQGS6xRCqAiEgBISAEBACQkAICAEhIASEgBCoNwREputtxNVfISAEhIAQEAJCQAgIASEgBISAEGgxAiLTLYZQFQgBISAEhIAQEAJCQAgIASEgBIRAvSEgMl1vI67+CgEhIASEgBAQAkJACAgBISAEhECLERCZbjGEqkAICAEhIASEgBAQAkJACAgBISAE6g0Bkel6G3H1VwgIASEgBISAEBACQkAICAEhIARajIDIdIshVAVCQAgIASEgBISAEBACQkAICAEhUG8IiEzX24irv0JACAgBISAEhIAQEAJCQAgIASHQYgREplsMoSoQAkJACAgBISAEhIAQEAJCQAgIgXpDQGS63kZc/RUCQkAICAEhIASEgBAQAkJACAiBFiMgMt1iCFWBEBACQkAICAEhIASEgBAQAkJACNQbAiLT9Tbi6q8QEAJCQAgIASEgBISAEBACQkAItBgBkekWQ6gKhIAQEAJCQAgIASEgBISAEBACQqDeEBCZrrcRV3+FgBAQAkJACAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACtYLA4MGvuhEjRrnxxhvPff75l7XSLfVDCAgBIVA2AjPM0Mn9888/bp555nDLLLNY2ffrBiHQLAREppsFm24SAkJACAgBIdCmCFx99a1u4YXndVNMMbmbZpqp2rQtergQEAJCoK0R+Pfff90333znvvvuBzd8+Ei3006btXWT9Px6QEBkuh5GWX0UAkJACAiBWkKgb99b3bLLLuGmm26aWuqW+iIEhIAQqAgCeOq8/PLrrlcvEeqKAKpKCiMgMq3ZIQSEgBAQAkKg4yDw4ovDXGaAcXPNNVvHabRaKgSEgBBoZQRGjvzAjT/+uHL5bmXc6+5xItN1N+TqsBAQAkJACHRgBG666W635JILy7W7A4+hmi4EhED1Efj662/csGFvuq233rD6D9MT6heBWiPTf/zxR3IwSc4yzjjjNPz2559/Zpr9TLUfyAQTTFDRifDFF1+4H3/8MUuEME/Rev/66y+fMCGW/2SDM/744xe89+eff3ZPPvmk++WXX9xmm8mNpVKDN2bMGPfggw+6nj17uoknnrhS1aqeGkSg0DvIO3n77be7pZZayi244II12POO16VaGpNbbrnPdevWpeMNglosBISAEGhFBNjnP/nkILfFFuu14lP1qLpDoJbI9Lfffuvmn39+9+WXjTOarr322u6MM85wiy66aMP4HnbYYe7aa69tKDvddNO5J554omIbXzZuM8wwgyfTr7/+epYkZuGCc+u4445zl112WZN22w0rr7yyow977bWXm2qqqbKMrZ+7XXfd1d1///2+yJZbbun69+9fd3O30h2GQPfp08c999xzvurvvvvOTTnllJV+jOqrAQRKvYOXX36522OPPdwss8ziPv744xroccfvQi2NyXnn9c0sLRt1/EHpAD1A0c1/KOQltYEARpdKG09qA5na7EW/fne5Aw7YqTY7p161DwRqiUyDKIvkSSed5E4++WQP8OSTT55l9vsm+SG86KKL3L777uv2228/d84557hxxx23YoPyyiuvZG54S/r6br311pKW4w8//NDNMcccvnz37t3dlVde6bj22muvuUMPPdSTcvry8ssvu86dO7sffvjB7bnnnq5fv34i0xUatd9//90NGjQos/h08zVidZxkkkkqVHv7qAar+zTTKGFRJUaj2DuIxwjzaLvttnPXX399JR6XrAOFD+tCJdeuqjW2jSturTFpjW6WS6bHets8kH1TPnC//vqLm3nmWdyKK66UKZjb9uiYV18dVlCJDI586+acc67WgDT5DDzYVl99FTdmzDeZkvUF99///rdqbfnii8+z7/lN/hmzzvr/sfD8DQ6tReZ79do+c4t9xb3yyutl9RVjxpAhL+W6Z7XVVs+9Zn322Wdu6NAhmVHiNe9dyJxdZpllXKdO0zV6Vt52jxjxrltnnTXdCit0cTfeKCNErgHr4IVEpjv4AHaE5tcamQZztMibbLKJu/vuu/0QnHfeeW7//fdvNBwQJazYiyyyiLvvvvsauYBXYtzeeecdXz9y1113uQ03LB2vMf300/uNBST5kksuaWjGBx984K3qEGr+/+qrr/rfKLP33nuLTFdiwP5XBx4Fk046qf/Xb7/95iaccMIK1t62VeF2/NRTT7kLLrigbRtSQ08v9g6yES8WptFSGJifK664ovdQwQtGUhqBao9J6RZUpkQ5ZPr222/LvJr2SD54vfXWd5dfflWrEbW4EXvssau78847CoJy/PEnZt/DvSsDWjNq+fnnn7Ikb7P7O4cMGZaR3FmbUUu+W2644Tp38MEHFSx88cWXuk033TxfZS0otf7667rBg190o0ePKauWl14a7NZbr3uue0aN+jiXovqee+7OvPCaWhQnm2wyd8UVV2eKjjUanpe33S+8MCjbj63nZp99jqyfQ0u2l/3kWWedkZH3TllW6J1LlleB9oeAyHT7G5Oaa1EtkmkGKXb5fvfddxvFLmPtxbV65MiR2dEijTWclRjkn376yVuMxn6Eh/jYyVIy33zzOdqJO/fFF1/cqPj222/vbrjhBn8NTe2MM86YbYLGupLKzbsUsvl///XXXxs+8ng5VJMM5W9Vy0uacgdPDJHpluNpNbTlO8g6cemll/qwD5Hpyo1pR6gpL5l+5pmnMwK2se/S7rvv6VZZZVU37bTTumeffcbddNON7r33RrodduiVhUGd1SbdNjLdp89pDmVyLCik55ln3jZpmz30k08+yRSrv2bW4eK5T1raSCPT3bqt1kDa8Ch47LFHMoX/vb76e+653y233PItfVTR+/OS0rgSPHWeeurJhst//PG7V+LMNNNM7sQT+zQq3r37uiUVOEOHDnXrrruWv+/008/MLMkrZoaSvzM8Hs28D0/w1wcNGpwpO+b2f5fTbqzcM844k38XSgk5bWaeefosBHChLBTw6VLF9Xs7REBkuh0OSq01qVbJNOP06KOPujXXXNMPGRYcrHK4Q7JIL7300u7mm2/OkhJs0WhISRoG+f3000/d3HPPnW0+VmlCqNBUEldLjPWcc87py+GizUcjlCmmmMJbk/NudouRaSzrRoLefvttR9liG3k+AFiwidfGPaxLly7ZR6epu9zzzz/vXZu/+uorb0lfffXVk9p3nomlnxhirONohsMYdPqdB7tC7w8W+TvvvNOhhFhsscU8oaXNoeSp//3333cPP/ywVzLgAvvYY4/5dq277rp+rGKBPDOWL730kt/MMU/MoyAPmaa9xFpvtNFGDqvX4MGDHZ4EG2ywgZt66qn94/7++29f//Dhw/28wxsiFuphXkJ6Ue4w74iPzyPff/+9u+OOO9yoUaN8wjQUN8x7Etghb731lnc5BuP111/fK2uYmzG+lGXeWMy4PZuySyyxhP8nYQbMaYTEWmjrTWg7YQlff/21x5AwhzDm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q2vHHXf0a+X888/f3Oo77H2EAaB8bUvvig4LXh02vNSaWYeQqMtCQAgYAvVEptkEvfvuu77ra665pnvggQeaxERvsskmbuGFF3YnnnhizUyScj4CHYlM77HHHm711Vf31rJRo0b5OElz6cdt/5xzzqmZMVRHhEAlESi1JlxzzTVup53GngCANXOmmWZq8vjff//dW6179OhRyaa1uC5cvlkbquHmjRJ21llnTSpiSzW8tck0HgSHHnqou+yyyxxKxh122MEttthibvLJJ3dDhw51L774orewozx9+OGH3fLLL1+qCzX1u8h0TQ1n1TtTas2segP0ACEgBNovAvVEph966CF3+umnOzT1yCGHHOJwFQxl88039654xx13XKPr7733no8N/Pjjjx2W7RVXXDHpKv7aa6/5xDdsTEaOHOljD2effXa38sorN9T31Vdf+c3Lf//7X399iimmaDJBsHywcWOjs8gii7ill166SZkBAwZ4Irnppps2srzHBcv5CBQj01iB6D+u8CkXeNzD8QDgP/7+8MMPHfWVcpf/6KOP/GZ9vPHGy/WimNWsb9++rlevXk3GqUuXLu7LL790p5xyio97TwnWtmmmmcZNPPHEJZ9ZbvtKVqgCQqCNESi1JpQi02+88YZfC7p3796oJ4RgQNSwvrLOYbUmoRlhNhZrzPqIlReyx/qXsnoTu8291IHVFKUZJDaWt956y7E28zyTQmSaxGQ33XSTJ5TLLbdc0REolqDN1rg8Q4hLNZZz1po8ZDrvugSmYD3bbLMVbMbOO+/sWCNPOukkd/jhhyfXV+pgDPluoYhcZ511kvURAoUVd7LJJmv0O98f/kt5AYXfg/AmxoH6aHtqzec+qw8PKeZJOEd4Hu1m7Z566qmbtDe8n+8nYzDHHHM0+UaWItN5MC42B8aMGeO/g2FyvFT5v//+279LzO9xxx032R8uggl957tKeEX4XaUv9JO9RqqOPHNVZYojUGrNFH5CQAjUMQL1RKbZwGF1xo2bTQsSJyRLkenbb7/dE9Z99tnHk+jzzz/fk+TwXq6xcWFTst9++/kP33nnndcws7AMYAknFvHmm29uuL7ooou65557rmGTQoKbgw8+2N15552ua9eu/jnvv/++z0p7/fXXu4kmmsjfi8vesssu6/+mTLHNYTkfgRSZ5kOP2+S9997b0G5iKGkP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4AG31VYbVPU5qrxtENB63za466lCIC8CX375Td6izS433XRTN9yrNb/ZMOpGIVB9BESmq49xJZ5w3nl93QEH7FSJqlSHEBACNYCA1oQaGMQCXdDY1u7Yqme1gUBrk2lQ07pQG3NHvahBBESmO8agahHtGOOkVgqB1kJAa0JrId36z9HYtj7meqIQKAcBkely0FJZIVDjCIhMd4wB1uaqY4yTWikEWgsBrQmthXTrP0dj2/qY64lCoBwERKbLQUtlhUCNI1CvZPqXX35x77zzjvv777/d7LPP7jp16uRH+uuvv3bff/+9m3vuuf2/P/vsMzdw4EC3/vrrN5RpiymhzVVboK5nCoH2i0C11gTWRP7LKyRE/Oeff/x/sfwn+8CMO+647q+//kpWx73jjDNO3kcVLPfNN9+4kSNHuokmmsjNOeecbvLJJ/dlR4wY4aaddlo31VRTtfgZVsGYMWPcgw8+6Hr27OkmnnjiitUbVlStsa1KY1WpEKhDBMoh02+//Z775JPP3SyzzOjmn3/s3jKPhDHTlNe6kAc1lRECbYBAPZHpP/74w5122mnupptucu+++65Hm03Xjz/+6P+/1lpruddff91tscUW7sQTT/S/8/ett97qdtttN3f55Ze3wQiNfaQW0TaDXg8WAu0SgWqtCUcddZQ75ZRTcvf5qquucp9++mmjddXW1jXWWMMdffTRbr/99nPPPfdcss655prLLbvssm733Xd3q666au7nfvnll+6www5zDzzwgOPvUGaZZRZf19133+3uuOMORztaKhDoPn36NPTju+++c1NOOWVLq03eX62xrUpjVakQqEME8pLpd9553w0d+loDQssuu7jr3HmOXIiJTOeCSYWEQNsjUC9kevjw4W7bbbd1L7/8sltwwQXdZZddlh0rs5SbZJJJ3AcffOD69u3rTjrpJD8gBx54oDvnnHP832eccYbfsF1xxRVu1113bTRgkPPff/+9wQpSzdEstblCCTB06FD32muvuemnn973rUuXLr5/7U2effbZLAvxVu6II45we+21V3trntojBDoEAqXWhOZ2YrvttnM33nijJ47du3d3s846q7cum7z66quuW7du/p/LL7+8e+aZZ/wpA//++69fc1544QX/20cffeTvNUEheeWVV/p/PvLII/63t99+2918883+v3jtLdb+++67z229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OLKLn8gYEF+PmOW6daOlnGeJcb9dwobJunXZKsGdKHf/mBOaC3gL4D9sLGAs+BneArBwezdkzcfmn78NrsKy5HkkQAIkQAIkQAIkUCIIRIKYvn/SARm7JN9qfCLg77s8Qd7r7UoAxkYCJEACJEACJEACJEACJEACJBChBCJBTB9KzZUBnx2UL9amSXKay00y1Ias313PrSgjb6oqVeJYTzVUfpF+fFSUK06YjQScTCAvz3c9byePm2MjARIgARIgARKIUAKRIKYjdGo5bBIgARIgARIgARIgARIgARIggeIiQDFdXGR5XRIgARIgARIgARIgARIgARIgAccSoJh27NRyYCRAAiRAAiRAAiRAAiRAAiRAAsVFgGK6uMjyuiRAAiRAAiRAAiRAAiRAAiRAAo4l4FQxvXz5Wvntt226fNKePX87dv5K88Bq1Kima2U3aFBX1UVuXpqHwr6TAAmQAAmQAAmQAAmQAAlEGgEniukPPpgmTZs2lMTEBFUjl9llS+oznZeXJ4cOHVY1jVNk48at0rdvz5LaVfaLBEiABEiABEiABEiABEiABDwJOE1Mjx8/TVq1aiHVq1flVJciAvAeWLVqnfTpQ0FdiqaNXSUBEiABEiABEiABEiCByCXgJDG9bNkaUcZOqVfv9Mid0FI88q1b/5TY2Bi6fJfiOWTXSYAESIAESIAESIAESCBiCDhJTE+a9Lmcf35TunaX0qf3wIFDsmbNern55mtL6QjYbRIgARIgARIgARIgARIggYgh4CQxPXXqV9K27SURM3dOGyhiqBct+lFuuqmr04bG8ZAACZAACZAACZAACZAACTiNgJPE9MiR45VV8zqnTVFEjWfy5FnyyCN9I2rMHCwJkAAJkAAJkAAJkAAJkEApJBBpYnrv3j0yefIkSUpKkjp1XLHV0dHR0rBhI/XvOgVmsE+f25Tr8WpZvXpdKZzdounyLbf0ki1btsjy5SuL5oJ+rkIxXeyIeQMSIAESIAESIAESIAESIIGiIBBpYvqTTz6WgQMH2KKrVauWjBv3oVxwQUv35926dVYicpns23ewKHCXymv861/t5Jdf1oaFAcV0qXxE2GkSIAESIAESIAESIAESiDwCkSqmr7jiSlWGyeVOvH37dpk1a4ayPq/W//7224Vy7rnN9M8U0yIU05H3XuCISYAESIAESIAESIAESIAE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SIAESIAESIAEHECAYtoBk8ghkAAJkAAJkAAJkAAJkAAJkAAJhJcAxXR4efNuJEACJEACJEACJEACJEACJEACDiBAMe2ASeQQSIAESIAESIAESIAESIAESIAEwkuAYjq8vHk3EiABEiABEiABEiABEiABEiABBxCgmHbAJHIIJEACJEACJEACJEACJEACJEAC4SVAMR1e3rwbCZAACZAACZAACZAACZAACZCAAwhQTDtgEjkEEiABEiABEiABEiABEiABEiCB8BKgmA4vb96NBEiABEiABEiABEiABEiABEjAAQQoph0wiRwCCZAACZAACZAACZAACZAACZBAeAlQTIeXN+9GAiRAAiRAAiRAAiRAAiRAAiTgAAIU0w6YRA6BBEiABEiABEiABEiABEiABEggvAQopsPLm3cjARIgARIgARIgARIgARIgARJwAAGKaQdMIodAAiRAAiRAAiRAAiRAAiRAAiQQXgIU0+HlzbuRAAmQAAmQAAmQAAmQAAmQAAk4gADFtAMmkUMgARIgARIgARIgARIgARIgARIILwGK6fDy5t1IgARIgARIgARIgARIgARIgAQcQIBi2gGTyCGQAAmQAAmQAAmQAAmQAAmQAAmElwDFdHh5824kQAIkQAIkQAIkQAIkQAIkQAIOIEAx7YBJ5BBIgARIgARIgARIgARIgARIgATCS4BiOry8eTcSIAESIAESIAESIAESIAESIAEHEKCYdsAkcggkQAIkQAIkQAIkQAIkQAIkQALhJUAxHV7evBsJkAAJkAAJkAAJkAAJkAAJkIADCFBMO2ASOQQSIAESIAESIAESIAESIAESIIHwEqCYDi9v3o0ESIAESIAESIAESIAESIAESMABBCimHTCJHAIJkAAJkAAJkAAJkAAJkAAJkEB4CVBMh5c370YCJEACJEACJEACJEACJEACJOAAAhTTDphEDoEESIAESIAESIAESIAESIAESCC8BCimw8ubdyMBEiABEiABEiABEiABEiABEnAAAYppB0wih0ACJEACJEACJEACJEACJEACJBBeAhTT4eXNu5EACZAACZAACZAACZAACZAACTiAAMW0AyaRQyABEiABEiABEiABEiABEiABEggvAYrp8PLm3UiABEiABEiABEiABEiABEiABBxAgGLaAZPIIZAACZAACZAACZAACZAACZAACYSXAMV0eHnzbiRAAiRAAiRAAiRAAiRAAiRAAg4gQDHtgEnkEEiABEiABEiABEiABEiABEiABMJLgGI6vLx5NxIgARIgARIgARIgARIgARIgAQcQoJh2wCRyCCRAAiRAAiRAAiRAAiRAAiRAAuElQDEdXt68GwmQAAmQAAmQAAmQAAmQAAmQgAMIUEw7YBI5BBIgARIgARIgARIgARIgARIggfASoJgOL2/ejQRIgARIgARIgARIgARIgARIwAEEKKYdMIkcAgmQAAmQAAmQAAmQAAmQAAmQQHgJUEyHlzfvRgIkQAIkQAIkQAIkQAIkQAIk4AACJ0VMO4Abh0ACJEACJEACJEACJEACJEACJEACbgJ5eUHBiMpTLagjcZC3Yg/6RB5IAiRAAiRAAiRAAiRAAiRAAiRAAqWAQJASmWK6FMwlu0gCJEACJEACJEACJEACJEACJBAmAhTTYQLN25AACZAACZAACZAACZAACZAACTiHQLGIaefg4UhIgARIgARIgARIgARIgARIgARIoNAE/h+YpfRVuzDe+AAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The form is now fully filled out. By clicking on the `submit` button, we can place the order:" ] }, { "cell_type": "code", "execution_count": 34, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.526852Z", "iopub.status.busy": "2025-01-16T10:12:39.526733Z", "iopub.status.idle": "2025-01-16T10:12:39.561895Z", "shell.execute_reply": "2025-01-16T10:12:39.561447Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "submit = gui_driver.find_element(By.NAME, 'submit')\n", "submit.click()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We see that the order is being processed, and that the Web browser has switched to the confirmation page." ] }, { "cell_type": "code", "execution_count": 35, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.564173Z", "iopub.status.busy": "2025-01-16T10:12:39.564022Z", "iopub.status.idle": "2025-01-16T10:12:39.567523Z", "shell.execute_reply": "2025-01-16T10:12:39.566922Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:39] INSERT INTO orders VALUES ('tshirt', 'Jane Doe', 'j.doe@example.com', 'Seattle', '98104')\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:39] \"GET /order?item=tshirt&name=Jane+Doe&email=j.doe%40example.com&city=Seattle&zip=98104&terms=on&submit=Place+order HTTP/1.1\" 200 -\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print_httpd_messages()" ] }, { "cell_type": "code", "execution_count": 36, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.570137Z", "iopub.status.busy": "2025-01-16T10:12:39.570012Z", "iopub.status.idle": "2025-01-16T10:12:39.587434Z", "shell.execute_reply": "2025-01-16T10:12:39.587113Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZRsxfX1C3fn4U5wgjsBgru7u7u7SyC4JUhwdydYcH04PCAEdw0SCC4fv8p35n+mpm73vT3dIz37rMUCpq9U7ZJ79rEa6tffJEiEgBAQAkJACAgBISAEhIAQEAJCQAgIgdIIDCUyXRorXSgEhIAQEAJCQAgIASEgBISAEBACQiAiIDKtiSAEhIAQEAJCQAgIASEgBISAEBACQqAiAiLTFQHT5UJACAgBISAEhIAQEAJCQAgIASEgBESmNQeEgBAQAkJACAgBISAEhIAQEAJCQAhUREBkuiJgulwICAEhIASEgBAQAkJACAgBISAEhIDItOaAEBACQkAICAEhIASEgBAQAkJACAiBigiITFcETJcLASEgBISAEBACQkAICAEhIASEgBAQmdYcEAJCQAgIASEgBISAEBACQkAICAEhUBEBkemKgOlyISAEhIAQEAJCQAgIASEgBISAEBACItOaA0JACAgBISAEhIAQEAJCQAgIASEgBCoiUI1MDzVUxcfrciEgBISAEBACQkAICAEhIASEgBAQAv0IgV9/LdVYkelSMOkiISAEhIAQEAJCQAgIASEgBISAEBgQCIhMD4hhVieFgBAQAkJACAgBISAEhIAQEAJCoJkIiEw3E009SwgIASEgBISAEBACQkAICAEhIAQGBAI9QqZLvmRAAK5OCgEhIASEgBAQAkJACAgBISAEhED/QyCtDVaS53YvZ7rkS/ofmmqxEBACQkAICAEhIASEgBAQAkJACAwIBESmB8Qwq5NCQAgIASEgBISAEBACQkAICAEh0EwERKabiaaeJQSEgBAQAkJACAgBISAEhIAQEAIDAgGR6QExzOqkEBACQkAICAEhIASEgBAQAkJACDQTAZHpZqKpZwkBISAEhIAQEAJCQAgIASEgBITAgEBAZHpADLM6KQSEgBAQAkJACAgBISAEhIAQEALNREBkuplo6llCQAgIASEgBISAEBACQkAICAEhMCAQEJkeEMOsTgoBISAEhIAQEAJCQAgIASEgBIRAMxEQmW4mmnqWEBACQkAICAEhIASEgBAQAkJACAwIBESmB8Qwq5NCQAgIASEgBISAEBACQkAICAEh0EwERKabiaaeJQSEgBAQAkJACAgBISAEhIAQEAIDAgGR6QExzOqkEBACQkAICAEhIASEgBAQAkJACDQTAZHpZqKpZwkBISAEhIAQEAJCQAgIASEgBITAgEBAZHpADLM6KQSEgBAQAkJACAgBISAEhIAQEALNREBkuplo6llCQAgIASEgBISAEBACQkAICAEhMCAQEJkeEMOsTgoBISAEhIAQEAJCQAgIASEgBIRAMxEQmW4mmnqWEBACQkAICAEhIASEgBAQAkJACAwIBESmB8Qwq5NCQAgIASEgBISAEBACQkAICAEh0EwERKabiaaeJQSEgBAQAkJACAgBISAEhIAQEAIDAgGR6QExzOqkEBACQkAICAEhIASEgBAQAkJACDQTAZHpZqKpZwkBISAEhIAQEAJCQAgIASEgBITAgEBAZHpADLM6KQSEgBAQAkJACAgBISAEhIAQEALNREBkuplo6llCQAgIASEgBISAEBACQkAICAEhMCAQaDcy/dNPPzV13Ib6DaBhhhkm/PLLL/GfnAw77LBNfWdPPqyoX9bvnmzLQHnX559/Hp588snw8ssvh3HGGSdMO+20YY455hgo3R8Q/ay1X1QFYOihhw780y7y448/hptuuil89tlnYc011wxjjDFGn+1a0feEbwJ7ZH+Tn3/+Ofz6669dmt0bc4y2PP300+G1114Ln376afj+++/DCCOMEMYdd9y4J84666y9Ou/BiTYWSV+bA8zVu+66K7z66qthtdVWCxNNNFF/m55qrxAQAkKgfyLQbmR6nnnmCY8//njTBmPZZZcNt956a/ywP/fcc9nn5pSTpjWgxQ8q6tdiiy0W/vGPf7T47QPr8ZDntdZaKzuPINPnnXdemGWWWQYWKG3a21r7RdUun3LKKWHHHXeselufvP7LL7+MROnjjz/uaN8TTzwR5pxzzj7X3htvvDGsvPLK2XaddtppYfvtt+9zba7VoA8++KCQYB155JFhv/3265H+vP766+GYY44Jl112Wfjqq68K3znaaKOFTTfdNOy5555hkkkm6ZG2+ZcwL+eee+7C91555ZXRGNQX5O23345t9evqsMMOCwceeGBfaJ7aIASEgBBobwTajUyjlD311FOdBm2++eaLnj9Ido5o80HEGv7YY491uXfppZcOt912W7jlllvCn/70p/DQQw91mRD9mUzfcMMNYa+99gr/+te/OvVLZLq56/6tt94KGHpM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xPnLL7+MeAwaNCiml1C3gVQFjjjCgy0RAkJACAgBISAEhEBpBESmS0OlC4WAEBACQkAICAEhIASEgBAQAkJACPwPAZFpzQQhIASEgBAQAkJACAgBISAEhIAQEAIVERCZrgiYLhcCQkAICAEhIASEgBAQAkJACAgBISAyrTkgBISAEBACQkAICAEhIASEgBAQAkKgIgIi0xUB0+VCQAgIASEgBISAEBACQkAICAEhIAREpjUHhIAQEAJCQAgIASEgBISAEBACQkAIVERAZLoiYLpcCAgBISAEhIAQEAJCQAgIASEgBISAyLTmgBAQAkJACAgBISAEhIAQEAJCQAgIgYoIiExXBEyXCwEhIASEgBAQAkJACAgBISAEhIAQEJnWHBACQkAICAEhIASEgBAQAkJACAgBIVARAZHpioDpciEgBISAEBACQkAICAEhIASEgBAQAiLTmgNCQAgIASEgBISAEBACQkAICAEhIAQqIiAyXREwXS4EhIAQEAJCQAgIASEgBISAEBACQkBkWnNACAgBISAEhIAQEAJCQAgIASEgBIRARQREpisCpsuFgBAQAkJACAgBISAEhIAQEAJCQAiITGsOCAEhIASEgBAQAkJACAgBISAEhIAQqIiAyHRFwHS5EBACQkAICAEhIASEgBAQAkJACAgBkWnNASEgBISAEBACQkAICAEhIASEgBAQAhUREJmuCJguFwJCQAgIASEgBISAEBACQkAICAEhIDKtOSAEhIAQEAJCQAgIASEgBISAEBACQqAiAiLTFQHT5UJACAgBISAEhIAQEAJCQAgIASEgBESmNQeEgBAQAkJACAgBISAEhIAQEAJCQAhUREBkuiJgulwICAEhIASEgBAQAkJACAgBISAEhIDItOaAEBACQkAICAEhIASEgBAQAkJACAiBigiITFcETJcLASEgBISAEBACQkAICAEhIASEgBAQmdYcEAJCQAgIASEgBISAEBACQkAICAEhUBGBdiLTP//8c+CfVIYbbrj4919++aXLb0MPPXQYdthh49/5/aeffup0DfcOlYJUEePuXP7++++H2267Lay44oph0KBBHY/673//G+69997wzTffhDXXXLPj77T/iSeeCI8++mjYZZdduvPqXrn31VdfDU8//XSnPpVpyHvvvReeeeaZMGTIkPDPf/4zTDTRROH3v/99mHHGGcMss8xS5hEtvearr74K//jHPyq9Y9JJJw1zzjlnpXtacTFr57LLLguPPfZY2GyzzcLss8/eitd0eubjjz8eGNOcsGZHGWWUMP3004eJJ5645W2xF7zxxhvh2Wef7Xgfe8Pyyy9f+f0ff/xxePjhhyvfN9tss4Upppii5n3sF9dcc01cB1988UXEaIYZZgh/+MMfwrnnnhv/vdhii4UU3zHHHDP88Y9/rPns3pgHlUGqeMOPP/4Yfv311y53seczvn1Nfvjhh2yThhlmmMA/fU2Kvl/NbOe///3v8NJLL4Xvv/8+zDrrrGHccccNX375ZXj99dd7ZK+q0peXX3453HHHHWHttdcO4403XpVbG772gw8+CG+99VaYaqqp6r7z888/j7ixLqaeeupOOkdRA8D9008/rbsXv/3224H5+7vf/a50X1ibTz75ZNz3GFeJEBACQqBPItBOZPr8888Pm266aSecURz5+w033BCOOeaY8O6773b8Psccc4Q99tgjrLvuuvFvfOg22WSTSEQRPnZXXnllWGSRRXpt7Pjo0oatttoqnHnmmYEP45ZbbhluueWW2KZ11lknEh1k8803D1dddVWAuI022mjhP//5T6+1u+qLjzvuuHD22WeHf/3rX4Fx4QNaRviQH3nkkeHwww+Ply+00EKRiEN8/va3v0UsIDx//etfA+S0twRl5uijjw5nnHFGlyZAYhgvyONTTz3V8TvjSR96WzDmLLvssh1r4p133gnDDz98S5tFv88555yOtWgvm3vuuaNixTy3Ncr4b7HFFi1tDw+/6667wvrrrx8gw0ija4znLLnkkh3t5TkTTjhhnPsmKL787aGHHur423nnnRf3pyLhuauttlr8ebvttovE+fnnnw/77bdfxy3gyrw67bTTwo477tjxd3AdPHhwTQybOQ9Y3zPNNFMYccQRWz5utV5w6KGHhgsvvDASCBP2fXBkz+hLgjFj9dVXj9+ynNDuCSaYIMw777xh1VVXDYsuumiv45t+v5qJJ3iw9g8++OCOvYC1ifF05JFHjuTxkksuaeYrG34W+/6xxx7bMc9eeOGFaOhtpWCYBn+MahhlWb/sKeydqYEZEr3PPvuEs846Kyy44IKRfKMrYTw95ZRTovEyFYjxRRddFPeXbbfdNhxyyCHZ7rCOTjrppE6Oin333bfUns1+hb7DezbY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kenW4qunCwEhIASEgBAQAkJACAgBISAEhEAbIiAy3YaDqi4JASEgBISAEBACQkAICAEhIASEQGsREJluLb56uhAQAkJACAgBISAEhIAQEAJCQAi0IQIi0204qOqSEBACQkAICAEhIASEgBAQAkJACLQWAZHp1uKrpwsBISAEhIAQEAJCQAgIASEgBIRAGyIgMt2Gg6ouCQEhIASEgBAQAkJACAgBISAEhEBrERCZbi2+eroQEAJCQAgIASEgBISAEBACQkAItCEC7USmf/7558A/qQw33HDx77/88kuX34Yeeugw7LDDxr/z+08//dTpGu4dKgWpDeeBulQOga+++iq8/PLL4YsvvggTTzxxmHbaacMwwwxTePOvv/4afvzxx+zv6dz64Ycfulw3/PDDl2uYrqqEwA/f/RSGPPh2mGjqscMEU45Z6d7uXvzhG1+EIQ+/HUYadfgw7ZwThUGTjN7dR7bk/u+++y48//zzYe65527J8/VQISAEhIAQEAJCQAj0ewTaiUyff/75YdNNN+00Josttljg7zfccEM45phjwrvvvtvx+xxzzBH22GOPsO6668a/QZI22WST8Oijj8b/H2+88cKVV14ZFllkkX4/zupA9xG48MILw5577hnmn3/+8NFHH8V5whzi7zPNNFP2Bc8991zYYYcdwgMPPNDp9yWXXDKcfvrpYZpppol//+abbyJpefHFFzuum3HGGcNFF10U3yFpDgIQ2QsOvSc8eedr8YH7XrR6mH2xKZvz8BJPOWuvO8K7r/w7TD3rBOGWs5+Mdxx/9yZh0unGLXF3z16yzDLLhNtvvz2cd955cV+UCAEhIASEgBAQAkJACCQItBOZpmtPP/10B/mYaqqpwmuv/U9pRj788MNIWIxQf/nll2H00Tt7hfBgzzLLLOGdd96JxGaSSSZpyZzBC/n999+H0UYbrSXP10ObiwDEGRLNvLA5se2224YzzjgjMM/w4I088siFLz366KPDvvvuG38/99xzuxh97Marr746rLnmmmG77baLZFvSXAR++eXX8NkHX4V9lr04/Off34QDLl8zzLLQ5M19ScHTHrnp5XDiNjeFk+7fLHrELzzs3nDzmU+EQ69dJ8wwb2v2me50zCJyMAadeuqp3XmU7hUCQkAICAEhIASEQHsi0G5kmlHC23z88cfHAXvrrbfCZJNN1jF4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7vPsc5b1NJx9ff+Jnufee+55nfM4+z6fz/f73b350qfuab539wPl/Sd94rUl4E6OHP9H//njZs2KdeVX+byttvqlUQD+tebQ419Wfjaf883CZZ+55B9Gx7y7+cnD65u3nX9Ac+l7V5b/znjnR1/drL7mW82dq+5rXvDi7Zv9j3pJ85ETbhp/nW22fXqz9JrXN3eMwv9VH7xtg6953uePetyDiqVLlzannXZa+btKldogQIAAAQIECBCYEBhqmE44qJXZdjt32nVTYcxIdTahK223Galkpu26VqsfeuihUtnOZz388MNlgalajWy/76677iqBs1a7ExIS9hI8alBvt43X9slUfg866KA578k8CMjnJYBnZDXpBMRUd1N9T6jJSLjKXPCEyswDT0hOC3vOPSNzyDPvN5+VIJORULxw4cLy2oTpM888syzglhBUQ08CaVZIj1lWRo9fKrc5hwSvVHrjl8/JSODdb7/9Zj2nVDJzXRLKM2KbyniqrrWym++f803APfnkk8vr8h1r230eiKSqXkcqpAnxxxxzTPnRAQccUAJ++7ukSpvrnS2taqU13z/vycOJJUuWlPfmwUkeoOS8EybSgTBbxXm33XYrDzkS3rPy+1zjiYTpOvWgfT55yJBwXRcpqx0PqQLnIUUeFORcEqTzECgV4XZ3xuR3zQOJPABavXp1ua8y0tlR/zsPbPIQJiNWeTBTw3T9rHjkwUgN03l/rktdHT8PHXL9E7CzINvBBx88lezeO/+1Oemgvylzmd+//PWje6wpFeVzjr6uBMUE5dOvO7z57ijE3jwK05+76pvlc1JB3uuwFzefX/6t8t4/OWmP5sLjbxwFzLuaD968qATMjKzo/Y7dLi3/3V7867K/XFW2yzrj+sObp2+zdfPfP/xJc+I+V5TgfMiSlzYHvXXXUpG+8PgbxgH2sHf/YakE373m/uY9lx886zZbCbyLXvjhcsyPr1tSwn8d8z3fB+5/aFR1v6/J96zjzWfu29x5yz82P3lkfXnIcMuyrzc3XjbTdZOF1RYt3bN51qgCfv6friiBPSNV+8Pes1vz7B22aS58543lYcReb3hxs/hD+29wPfI3f/TRR5fOg7m6LqZeRD8kQIAAAQIECGwJAkMN07l2qRjnH+4ZCcgJUWmNToUyewMnmGak7TkBMW2oqc5mO6yMBNZUXlPdTftr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gY4CwnRHMC8nQIAAAQIECBAgQIAAAQLCtHuAAAECBAgQIECAAAECBAh0FBCmO4J5OQECBAgQIECAAAECBAgQEKbdAwQIECBAgAABAgQIECBAoKOAMN0RzMsJECBAgAABAgQIECBAgIAw7R4gQIAAAQIECBAgQIAAAQIdBYTpjmBeToAAAQIECBAgQIAAAQIEhGn3AAECBAgQIECAAAECBAgQ6CggTHcE83ICBAgQIECAAAECBAgQICBMuwcIECBAgAABAgQIECBAgEBHAWG6I5iXEyBAgAABAgQIECBAgAABYdo9QIAAAQIECBAgQIAAAQIEOgoI0x3BvJwAAQIECBAgQIAAAQIECAjT7gECBAgQIECAAAECBAgQINBRQJjuCOblBAgQIECAAAECBAgQIEBAmHYPECBAgAABAgQIECBAgACBjgLCdEcwLydAgAABAgQIECBAgAABAsK0e4AAAQIECBAgQIAAAQIECHQUEKY7gnk5AQIECBAgQIAAAQIECBAQpt0DBAgQIECAAAECBAgQIECgo4Aw3RHMywkQIECAAAECBAgQIECAgDDtHiBAgAABAgQIECBAgAABAh0FhOmOYF5OgAABAgQIECBAgAABAgSEafcAAQIECBAgQIAAAQIECBDoKCBMdwTzcgIECBAgQIAAAQIECBAgIEy7BwgQIECAAAECBAgQIECAQEcBYbojmJcTIECAAAECBAgQIECAAAFh2j1AgAABAgQIECBAgAABAgQ6CgjTHcG8nAABAgQIECBAgAABAgQICNPuAQIECBAgQIAAAQIECBAg0FFAmO4I5uUECBAgQIAAAQIECBAgQECYdg8QIECAAAECBAgQIECAAIGOAsJ0RzAvJ0CAAAECBAgQIECAAAECwrR7gAABAgQIECBAgAABAgQIdBQQpjuCeTkBAgQIECBAgAABAgQIEBCm3QMECBAgQIAAAQIECBAgQKCjgDDdEczLCRAgQIAAAQIECBAgQIDA/0uYxk6AAAECBAgQIECAAAECBIYk8Nhj8zqbpzw2GvN6ZV40mdjn/UYvJECAAAECBAgQIECAAAECTwKBeUZkYfpJcC19RQIECBAgQIAAAQIECBDoSUCY7gnaYQgQIECAAAECBAgQIEBgOAK/kDA9HB5nQoAAAQIECBAgQIAAAQIENlmgW5v3Jh/GGwkQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAEhOnhXEtnQoAAAQIECBAgQIAAAQI9CQjTPUE7DAECBAgQIECAAAECBAgMR0CYHs61dCYECBAgQIAAAQIECBAg0JOAMN0TtMMQIECAAAECBAgQIECAwHAE/g+r/JOSpuPnAgAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 36, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Navigating\n", "\n", "Just as we fill out forms, we can also navigate through a website by clicking on links. Let us go back to the home page:" ] }, { "cell_type": "code", "execution_count": 37, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.589242Z", "iopub.status.busy": "2025-01-16T10:12:39.589118Z", "iopub.status.idle": "2025-01-16T10:12:39.611566Z", "shell.execute_reply": "2025-01-16T10:12:39.611151Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.back()" ] }, { "cell_type": "code", "execution_count": 38, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.613436Z", "iopub.status.busy": "2025-01-16T10:12:39.613315Z", "iopub.status.idle": "2025-01-16T10:12:39.636797Z", "shell.execute_reply": "2025-01-16T10:12:39.636499Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZhcNduG8+HOhxR3irtDgULxUry4F3cr7lbcXYu3SHEr7hRKC0ULtFAcChR3/c+dfu/+2Wxm5szuzMrM814XF9szOTnJk5ycPK/lP/9m4iRCQAgIASEgBISAEBACQkAICAEhIASEQG4E/iMynRsrFRQCQkAICAEhIASEgBAQAkJACAgBIeAREJnWRBACQkAICAEhIASEgBAQAkJACAgBIVAmAiLTZQKm4kJACAgBISAEhIAQEAJCQAgIASEgBESmNQeEgBAQAkJACAgBISAEhIAQEAJCQAiUiYDIdJmAqbgQEAJCQAgIASEgBISAEBACQkAICAGRac0BISAEhIAQEAJCQAgIASEgBISAEBACZSIgMl0mYCouBISAEBACQkAICAEhIASEgBAQAkJAZFpzQAgIASEgBISAEBACQkAICAEhIASEQJkIiEyXCZiKCwEhIASEgBAQAkJACAgBISAEhIAQEJnWHBACQkAICAEhIASEgBAQAkJACAgBIVAmAuWR6f/8p8zqVVwICAEhIASEgBAQAkJACAgBISAEhEAHQuDff3M1VmQ6F0wqJASEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRahUznfEhdAK5OCgEhIASEgBAQAkJACAgBISAEhEDHQyDODZaT57YsZjrnQzoemmqxEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwREputimNVJISAEhIAQEAJCQAgIASEgBISAEKgkAiLTlURTdQkBISAEhIAQEAJCQAgIASEgBIRAXSAgMl0Xw6xOCgEhIASEgBAQAkJACAgBISAEhEAlERCZriSaqksICAEhIASEgBAQAkJACAgBISAE6gIBkem6GGZ1UggIASEgBISAEBACQkAICAEhIAQqiYDIdCXRVF1CQAgIASEgBISAEBACQkAICAEhUBcIiEzXxTCrk0JACAgBISAEhIAQEAJCQAgIASFQSQREpiuJpuoSAkJACAgBISAEhIAQEAJCQAgIgbpAQGS6LoZZnRQCQkAICAEhIASEgBAQAkJACAiBSiIgMl1JNFWXEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRqjUz//fff7t9//63I2I077rjuPzFAFam5bSr59ttv3W233eamn35616NHDzfeeOO1TUNKPPWff/5x/JeS9trmYl0qNidboz9ffPGFGz58uP/vww8/dDPNNJObd9553TzzzOPmmGMOPw/GjBnjDjvsMLfLLru45Zdfvl3Oi/bcqJEjR7rXXnvNff311+6XX37xa1CnTp3cbLPN5pZddlk30UQTtWnzS62LrTEPWwpAqT6UU3+tre3l9F1lhYAQEAJCQAgIgQoiUEtk+vPPP/dEoVLy8ssvuyWWWKJS1bVpPc8995xbaaWVGtowyyyzuHfeecdNMskkbdqu1MN79+7tzjnnnGS7hg0b5hZbbLF21+ZiDerVq5e79tprk0X++usvx8a+GvL777+74447zp1++ukN1U8++eTuxx9/bPTvDTfc0JPsZ555xvXr189ttdVW1WhOzdX5/fffuwsuuMCP7fvvv1+0fz179vTKimWWWaZNcNhggw3cvffem3z2XHPN5d577702aVfeh2ptz4uUygkBISAEhIAQEAKtikAtkenffvvNPfvss27o0KHu8MMPL4jjDjvs4Oacc07HZphN2qeffuqJRCy1RKY333xzb5UO5frrr3fbbbddq863PA976623PJm++uqrmxR/4YUX3HLLLZenmnZT5pVXXnFHHXWUe/DBB5u0qVpkGkvzWmut5ZjDCHP+1FNPdTPOOKO3nGJFPfTQQ5vMe5HpfNPmxhtvdHvttVcjxcS2227r9t9/f7+2oKh69NFHvTIjFN7Dyy+/3P33v//N96AKlcJy/vbbb7szzjijyZh3BDKttb1CE0HVCAEhIASEgBAQApVFoJbIdIjMFVdc4XbfffcmYK244oqecMfyySefuIsvvtiddtppDT/VEpnGmguBCuWQQw7xm+v2KGyeJ5544iZNGzRoUId0Q37zzTfdwgsv3GpkGqJ36aWX+uetueaabuDAgW6cccZp9HyIPGTvlFNOabguMl38bSD8AMVIuE5wB+vNrrvu2uTmp59+2q2yyiqNruNif99993k3+9aWxx9/3K2++uqNHtsRyLTW9taeKXqeEBACQkAICAEhkAuBWiXTWAOXXHLJJhjsu+++3jWzkJx44okN1qRaItNs/o844ohG3W7vLtMLLbSQw0odSkcl04WUA9WwTMdz/5prrnE77rhjwTm/6aabuttvv93/LjJdfNk84YQT3PHHH9+o0E477ZT0orBCd955p9tkk00a3UOYBesLcdWtKal1saORaa3trTlj9CwhIASEgBAQAkKgKAK1SqZxaVxggQXKJtOQm6WWWspbcWuJTJN8DDffyy67zG/gsUrvscce7frtSFnTO6KbNyC3JpmOFSdYqIuNNS7huCYTS92/f3+35ZZbtut50VaNu//++916663X5PGsNfPNN1/RZvH7u+++26jMyiuv7J588skmHgPV7N+rr77qFl988UaP6GhkWmt7NWeI6hYCQkAICAEhIATKQkBk2rlbbrnFTTvttA3uj7g+kyyolsi0TYo///zTJ7yKXX7LmjStVFhkunlAb7HFFu7WW29tuHnRRRd1L774YtGM0rh745Uhy3Qac96b+eefv0misdVWW8099thjJQfK1pS4IOO02Wablby/UgXqjUzX09peqTmieoSAEBACQkAICIEyEKh3Mk0MJMmA9txzz4asx7gW42JMnOuCCy5YBpq1XxQL95dffumP/EnFNBdCAIs/celkmJ5uuuncVFNNVRKsUmT6m2++cbQHq2q5ygHagaWQsZ911llLtiVVgAR2ZHGeffbZ3dRTT120jta0THft2rVJkimOuyLrdCELKtmcO3fu3C7INGPKcV7ML45xK2ee2SBQB8kFp5hiCl/H+OOP36wxtptuuOEGt/322zepA7fvY489tmTd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CAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACQkAICAEhIASEgBAQAi1GQGS6xRCqAiEgBISAEBACQkAICAEhIASEgBCoNwREputtxNVfISAEhIAQEAJCQAgIASEgBISAEGgxAiLTLYZQFQgBISAEhIAQEAJCQAgIASEgBIRAvSEgMl1vI67+CgEhIASEgBAQAkJACAgBISAEhECLERCZbjGEqkAICAEhIASEgBAQAkJACAgBISAE6g0Bkel6G3H1VwgIASEgBISAEBACQkAICAEhIARajIDIdIshVAVCQAgIASEgBISAEBACQkAICAEhUG8IiEzX24irv0JACAgBISAEhIAQEAJCQAgIASHQYgREplsMoSoQAkJACAgBISAEhIAQEAJCQAgIgXpDQGS63kZc/RUCQkAICAEhIASEgBAQAkJACAiBFiMgMt1iCFWBEBACQkAICAEhIASEgBAQAkJACNQbAiLT9Tbi6q8QEAJCQAgIASEgBISAEBACQkAItBgBkekWQ6gKhIAQEAJCQAgIASEgBISAEBACQqDeEBCZrrcRV3+FgBAQAkJACAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACtYLA4MGvuhEjRrnxxhvPff75l7XSLfVDCAgBIVA2AjPM0Mn9888/bp555nDLLLNY2ffrBiHQLAREppsFm24SAkJACAgBIdCmCFx99a1u4YXndVNMMbmbZpqp2rQtergQEAJCoK0R+Pfff90333znvvvuBzd8+Ei3006btXWT9Px6QEBkuh5GWX0UAkJACAiBWkKgb99b3bLLLuGmm26aWuqW+iIEhIAQqAgCeOq8/PLrrlcvEeqKAKpKCiMgMq3ZIQSEgBAQAkKg4yDw4ovDXGaAcXPNNVvHabRaKgSEgBBoZQRGjvzAjT/+uHL5bmXc6+5xItN1N+TqsBAQAkJACHRgBG666W635JILy7W7A4+hmi4EhED1Efj662/csGFvuq233rD6D9MT6heBWiPTf/zxR3IwSc4yzjjjNPz2559/Zpr9TLUfyAQTTFDRifDFF1+4H3/8MUuEME/Rev/66y+fMCGW/2SDM/744xe89+eff3ZPPvmk++WXX9xmm8mNpVKDN2bMGPfggw+6nj17uoknnrhS1aqeGkSg0DvIO3n77be7pZZayi244II12POO16VaGpNbbrnPdevWpeMNglosBISAEGhFBNjnP/nkILfFFuu14lP1qLpDoJbI9Lfffuvmn39+9+WXjTOarr322u6MM85wiy66aMP4HnbYYe7aa69tKDvddNO5J554omIbXzZuM8wwgyfTr7/+epYkZuGCc+u4445zl112WZN22w0rr7yyow977bWXm2qqqbKMrZ+7XXfd1d1///2+yJZbbun69+9fd3O30h2GQPfp08c999xzvurvvvvOTTnllJV+jOqrAQRKvYOXX36522OPPdwss8ziPv744xroccfvQi2NyXnn9c0sLRt1/EHpAD1A0c1/KOQltYEARpdKG09qA5na7EW/fne5Aw7YqTY7p161DwRqiUyDKIvkSSed5E4++WQP8OSTT55l9vsm+SG86KKL3L777uv2228/d84557hxxx23YoPyyiuvZG54S/r6br311pKW4w8//NDNMcccvnz37t3dlVde6bj22muvuUMPPdSTcvry8ssvu86dO7sffvjB7bnnnq5fv34i0xUatd9//90NGjQos/h08zVidZxkkkkqVHv7qAar+zTTKGFRJUaj2DuIxwjzaLvttnPXX399JR6XrAOFD+tCJdeuqjW2jSturTFpjW6WS6bHets8kH1TPnC//vqLm3nmWdyKK66UKZjb9uiYV18dVlCJDI586+acc67WgDT5DDzYVl99FTdmzDeZkvUF99///rdqbfnii8+z7/lN/hmzzvr/sfD8DQ6tReZ79do+c4t9xb3yyutl9RVjxpAhL+W6Z7XVVs+9Zn322Wdu6NAhmVHiNe9dyJxdZpllXKdO0zV6Vt52jxjxrltnnTXdCit0cTfeKCNErgHr4IVEpjv4AHaE5tcamQZztMibbLKJu/vuu/0QnHfeeW7//fdvNBwQJazYiyyyiLvvvvsauYBXYtzeeecdXz9y1113uQ03LB2vMf300/uNBST5kksuaWjGBx984K3qEGr+/+qrr/rfKLP33nuLTFdiwP5XBx4Fk046qf/Xb7/95iaccMIK1t62VeF2/NRTT7kLLrigbRtSQ08v9g6yES8WptFSGJifK664ovdQwQtGUhqBao9J6RZUpkQ5ZPr222/LvJr2SD54vfXWd5dfflWrEbW4EXvssau78847CoJy/PEnZt/DvSsDWjNq+fnnn7Ikb7P7O4cMGZaR3FmbUUu+W2644Tp38MEHFSx88cWXuk033TxfZS0otf7667rBg190o0ePKauWl14a7NZbr3uue0aN+jiXovqee+7OvPCaWhQnm2wyd8UVV2eKjjUanpe33S+8MCjbj63nZp99jqyfQ0u2l/3kWWedkZH3TllW6J1LlleB9oeAyHT7G5Oaa1EtkmkGKXb5fvfddxvFLmPtxbV65MiR2dEijTWclRjkn376yVuMxn6Eh/jYyVIy33zzOdqJO/fFF1/cqPj222/vbrjhBn8NTe2MM86YbYLGupLKzbsUsvl///XXXxs+8ng5VJMM5W9Vy0uacgdPDJHpluNpNbTlO8g6cemll/qwD5Hpyo1pR6gpL5l+5pmnMwK2se/S7rvv6VZZZVU37bTTumeffcbddNON7r33RrodduiVhUGd1SbdNjLdp89pDmVyLCik55ln3jZpmz30k08+yRSrv2bW4eK5T1raSCPT3bqt1kDa8Ch47LFHMoX/vb76e+653y233PItfVTR+/OS0rgSPHWeeurJhst//PG7V+LMNNNM7sQT+zQq3r37uiUVOEOHDnXrrruWv+/008/MLMkrZoaSvzM8Hs28D0/w1wcNGpwpO+b2f5fTbqzcM844k38XSgk5bWaeefosBHChLBTw6VLF9Xs7REBkuh0OSq01qVbJNOP06KOPujXXXNMPGRYcrHK4Q7JIL7300u7mm2/OkhJs0WhISRoG+f3000/d3HPPnW0+VmlCqNBUEldLjPWcc87py+GizUcjlCmmmMJbk/NudouRaSzrRoLefvttR9liG3k+AFiwidfGPaxLly7ZR6epu9zzzz/vXZu/+uorb0lfffXVk9p3nomlnxhirONohsMYdPqdB7tC7w8W+TvvvNOhhFhsscU8oaXNoeSp//3333cPP/ywVzLgAvvYY4/5dq277rp+rGKBPDOWL730kt/MMU/MoyAPmaa9xFpvtNFGDqvX4MGDHZ4EG2ywgZt66qn94/7++29f//Dhw/28wxsiFuphXkJ6Ue4w74iPzyPff/+9u+OOO9yoUaN8wjQUN8x7Etghb731lnc5BuP111/fK2uYmzG+lGXeWMy4PZuySyyxhP8nYQbMaYTEWmjrTWg7YQlff/21x5AwhzDm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q2vHHXf0a+X888/f3Oo77H2EAaB8bUvvig4LXh02vNSaWYeQqMtCQAgYAvVEptkEvfvuu77ra665pnvggQeaxERvsskmbuGFF3YnnnhizUyScj4CHYlM77HHHm711Vf31rJRo0b5OElz6cdt/5xzzqmZMVRHhEAlESi1JlxzzTVup53GngCANXOmmWZq8vjff//dW6179OhRyaa1uC5cvlkbquHmjRJ21llnTSpiSzW8tck0HgSHHnqou+yyyxxKxh122MEttthibvLJJ3dDhw51L774orewozx9+OGH3fLLL1+qCzX1u8h0TQ1n1TtTas2segP0ACEgBNovAvVEph966CF3+umnOzT1yCGHHOJwFQxl88039654xx13XKPr7733no8N/Pjjjx2W7RVXXDHpKv7aa6/5xDdsTEaOHOljD2effXa38sorN9T31Vdf+c3Lf//7X399iimmaDJBsHywcWOjs8gii7ill166SZkBAwZ4Irnppps2srzHBcv5CBQj01iB6D+u8CkXeNzD8QDgP/7+8MMPHfWVcpf/6KOP/GZ9vPHGy/WimNWsb9++rlevXk3GqUuXLu7LL790p5xyio97TwnWtmmmmcZNPPHEJZ9ZbvtKVqgCQqCNESi1JpQi02+88YZfC7p3796oJ4RgQNSwvrLOYbUmoRlhNhZrzPqIlReyx/qXsnoTu8291IHVFKUZJDaWt956y7E28zyTQmSaxGQ33XSTJ5TLLbdc0REolqDN1rg8Q4hLNZZz1po8ZDrvugSmYD3bbLMVbMbOO+/sWCNPOukkd/jhhyfXV+pgDPluoYhcZ511kvURAoUVd7LJJmv0O98f/kt5AYXfg/AmxoH6aHtqzec+qw8PKeZJOEd4Hu1m7Z566qmbtDe8n+8nYzDHHHM0+UaWItN5MC42B8aMGeO/g2FyvFT5v//+279LzO9xxx032R8uggl957tKeEX4XaUv9JO9RqqOPHNVZYojUGrNFH5CQAjUMQL1RKbZwGF1xo2bTQsSJyRLkenbb7/dE9Z99tnHk+jzzz/fk+TwXq6xcWFTst9++/kP33nnndcws7AMYAknFvHmm29uuL7ooou65557rmGTQoKbgw8+2N15552ua9eu/jnvv/++z0p7/fXXu4kmmsjfi8vesssu6/+mTLHNYTkfgRSZ5kOP2+S9997b0G5iKGkP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4AG31VYbVPU5qrxtENB63za466lCIC8CX375Td6izS433XRTN9yrNb/ZMOpGIVB9BESmq49xJZ5w3nl93QEH7FSJqlSHEBACNYCA1oQaGMQCXdDY1u7Yqme1gUBrk2lQ07pQG3NHvahBBESmO8agahHtGOOkVgqB1kJAa0JrId36z9HYtj7meqIQKAcBkely0FJZIVDjCIhMd4wB1uaqY4yTWikEWgsBrQmthXTrP0dj2/qY64lCoBwERKbLQUtlhUCNI1CvZPqXX35x77zzjvv777/d7LPP7jp16uRH+uuvv3bff/+9m3vuuf2/P/vsMzdw4EC3/vrrN5RpiymhzVVboK5nCoH2i0C11gTWRP7LKyRE/Oeff/x/sfwn+8CMO+647q+//kpWx73jjDNO3kcVLPfNN9+4kSNHuokmmsjNOeecbvLJJ/dlR4wY4aaddlo31VRTtfgZVsGYMWPcgw8+6Hr27OkmnnjiitUbVlStsa1KY1WpEKhDBMoh02+//Z775JPP3SyzzOjmn3/s3jKPhDHTlNe6kAc1lRECbYBAPZHpP/74w5122mnupptucu+++65Hm03Xjz/+6P+/1lpruddff91tscUW7sQTT/S/8/ett97qdtttN3f55Ze3wQiNfaQW0TaDXg8WAu0SgWqtCUcddZQ75ZRTcvf5qquucp9++mmjddXW1jXWWMMdffTRbr/99nPPPfdcss655prLLbvssm733Xd3q666au7nfvnll+6www5zDzzwgOPvUGaZZRZf19133+3uuOMORztaKhDoPn36NPTju+++c1NOOWVLq03eX62xrUpjVakQqEME8pLpd9553w0d+loDQssuu7jr3HmOXIiJTOeCSYWEQNsjUC9kevjw4W7bbbd1L7/8sltwwQXdZZddlh0rs5SbZJJJ3AcffOD69u3rTjrpJD8gBx54oDvnnHP832eccYbfsF1xxRVu1113bTRgkPPff/+9wQpSzdEstblCCTB06FD32muvuemnn973rUuXLr5/7U2effbZLAvxVu6II45we+21V3trntojBDoEAqXWhOZ2YrvttnM33nijJ47du3d3s846q7cum7z66quuW7du/p/LL7+8e+aZZ/wpA//++69fc1544QX/20cffeTvNUEheeWVV/p/PvLII/63t99+2918883+v3jtLdb+++67z229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Mc1oZ8/+0RpwFpsmTXaLiZ8ujITEdGGE9LkIlBECEtMlNxG4+g0YMMDt0OOWTAwzLsu+hvL23EmLq+2hp3NFIP0I6J2QfnPqR6S5Td+51cjSg0BRxHRxRywxXVxyOk8EUkxAYrrkgBP/F6zFSgzd9pTDCvZMi6uSmyddSQTSgYDeCekwi+Fj0Nym79xqZOlBQGI6PeZRoxCBEiEgMV0iGN1FiEEmgdnMmTNdhleyfPsazdt7lyFD3rQJbrrauO5K23spnS8CIlDOCWzenGPL2I2yycJOLecjUffDCOh9r+dCBMo2gVSLab3zy/bzoN5lOAGJ6fLxAHz55UybBGeNK6cgQV0+5ky9FIHSIMCiipIrdevWsSVXWpbGLXTNHUxA7/sdPAG6vQiUIQJ655ehyVBXRCCMgMR0+Xkupk371tYU/cmWYfmj/HRaPRUBEShRArvuurPZb7/mEtIlSrXsXUzv+7I3J+qRCOwIAnrn7wjquqcIFIGAxHQRYOlQERABERABERABERABERABERABEYCAxLSeAxEQAREQAREQAREQAREQAREQAREoIgGJ6SIC0+EiIAIiIAIiIAIiIAIiIAIiIAIiIDGtZ0AEREAEREAEREAEREAEREAEREAEikhAYrqIwHS4CIiACIiACIiACIiACIiACIiACEhM6xkQAREQAREQAREQAREQAREQAREQgSISkJguIjAdLgIiIAIiIAIiIAIiIAIiIAIiIAIS03oGREAEREAEREAEREAEREAEREAERKCIBDJBTC/fYMy17xrz7mxjVmwsIqCth9evZswp+xvzaBdjdqpevGvoLBEQAREQAREQAREQAREQAREQgTQhkAli+sIRxjw3rWQm7LL2xjx1auy1srOzQy9esWJFU6lSpYQ33rhxo5k4caLZe++9zT777FMyHcywq8BwzJgxZt999y02Q81D+Xto7LTbed9s5z3LznvF8jcA2+OwMaxfb8zw4dnmoIOyTMuWWUmNa/r0XDN7dq4544wqpkqVpE7RQSIgAiIgAiIgAiIgAiVBIBPEdKP7jVm6tiRoGbNrLWOW3LTtWrm5uebss882H3/8sfntt9+iHyCQ+f19992X78YrVqwwF154oRk5cqT77O233zYnn3xyyXQwQ64yd+5c07t3b/POO++4EY8ePdqcdNJJRRq95qFIuMrEwXPnbrHz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n5SYDm4qeDGN1RzrOfG9CNlg82J60qTadt7DxTTu3DVrrnCW+tWrt3kixPebpGkdO0ZczzdsqG9zBcQe0a/fBmvh3eissdOmReYoTHyWxBgKE9PeZT7Yw3gxjXt65cqRjYkxY2o71/Vg854K/M57SCQ7Hs6ZMIEEd2ui8frwf+GFmlZkJ9itKM7LReeIgAiIgAiIgAiIQHkgkGlimjmpv9UK3TRkff2HXYD/ZbAxP0cMVaFtR4hpkosdcsghLq4a0UeCLy/24sU0nSaZFm7eJNu6+eabnQglC3ilrdmWLrnkEvOf//zHJRIjvrk4LZGYLsq1kxkXWbexfpONu3fv3jFdLY6YDsaYc7FkxXRRxhXGMyimV66sZ+PUK0TjpTk+J6d+1M070XyUtpj2933lleyYBGd33VXdJlALT0jHOViWzz57rd282ezcf487rpJL3oXrdzKW6TAhips72bf796/urPPBloyYxlJer17kDxkX+kTZyKdPz7VCOeJSP29e3XxZvnGXxm2ajOnjxkXc1ZMVn0UdQ0mI6SBLEtWde27sRsSUKbmmQ4fIeP3mQbLj8XOANf+ii9a5zQ4aVurp0+smlfG9OO8anSMCIiACIiACIiACZZJAJoppJqL5zjb7tY2Prh/wmKSe9OH/trGaCwueqlSLadySmzZt6rJl//777zZz7i6ugwWJ6UWLFln33N3dcSQVI5M3oto33KZxn957771tIqLZ+cpwPffccy4pmS+tFUYkkZhO9trEdiczLlzgsdJTcmvcuHExXfFiOj5uPL6/Qct0ccV0suNKxCxMTAetiGHCh0RSl1yyzsX28rda2mIa4Xj11dVcGa1ly/KsZXmdywBNW7++vi3JFv63QXIskmQhehG/tO0V0z4WOChi/d29mP7kk9oFlmTaddeVLtP1zTdXsxtMsZ3/44888+STm1xSr1q1IpZcn5AsOEpv+Q3WeE5WfBZ1DCUhpun7oYeutjHruTYfQlVbKSDWRf6557LNhReui/FISHY8P/64xcaf50Zdx99+e7M59VRb0802+MJZTQREQAREQAREQAQyhkCmimm34LTx0xMuti6RW/MSnTnEmOGx+a1Cn4NEYtqLy27dutlSRcMKfYZ8Jut492UfM03JqXPPPdfFOvt44G+++caVc1prixJzP1y5KZN15pln5rufF6F8sHDhQpeA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8KdOLZlr6SoiIAIiIAIiIAIiIAIiIAIiIALllEAmiOnl1trWe5Qxb8+yMaM23rE4jXJaXfezsapdjdkpQUbj4lxX52QGgQoVInHCaiKQzgTy8hLX807ncWtsIiACIiACIiACGUogE8R0hk6thi0CIiACIiACIiACIiACIiACIlBaBCSmS4usrisCIiACIiACIiACIiACIiACIpC2BCSm03ZqNTAREAEREAEREAEREAEREAEREIHSIiAxXVpkdV0REAEREAEREAEREAEREAEREIG0JZCuYnrKlK/MDz/Mc+WTFi/+LW3nrzwPrFGjBq5WdvPmTW1d5LbleSjquwiIgAiIgAiIgAiIgAiIQKYRSEcx/eyzw0zr1i1MnTq1bY1cZZctq890Xl6eWb58pa1pvNrMmjXX9OrVrax2Vf0SAREQAREQAREQAREQAREQgVgC6Samn3tumGnfvp1p2HBnTXU5IoD3wJdffmN69pSgLkfTpq6KgAiIgAiIgAiIgAiIQOYSSCcxPXnyDGONnWbvvffI3AktxyOfO/dnU7lylly+y/EcqusiIAIiIAIiIAIiIAIikDEE0klMv/rqW+bAA1vLtbucPr1//LHczJgx05xzzqnldATqtgiIgAiIgAiIgAiIgAiIQMYQSCcx/frr75pjjjksY+Yu3QZKDPX48Z+Zs8/umm5D03hEQAREQAREQAREQAREQATSjUA6iemBA5+zVs3T0m2KMmo8Q4a8aa69tldGjVmDFQEREAEREAEREAEREAERKIcEMk1ML1my2AwZ8qqpV6+eadIkEltdsWJF06LFvvbfTfLNYM+e/7Cux9PN9OnflMPZLZkun3tud/P999+bKVOmlcwFC7iKxHSpI9YNREAEREAEREAEREAEREAESoJAponpl19+0fTp0zsU3W677WaeeeZ5c9BBB0c/P/nkzlZETjZLly4rCdzl8hp//Wsn8/XXX6WEgcR0uXxE1GkREAEREAEREAEREAERyDwCmSqmjzrqaFuGKeJOPH/+fPPmmyOs9Xm6+/dHH40zBxzQxv0sMW2MxHTmvRc0YhEQAREQAREQAREQAREQgUIIZKqYHjjwCdO9+zkxdO6++04zaNDj5tJLLzd33XVPoWJ63bp15o8/fje77/4nU6lSpQJJL1++3GzZssXssssuBR63bt1as379etOgQcNiPbsrVqxw59WvXz/0fPqAWztt1apVZsWK5aZp071ijl27do1ZvXqNady4salgH5DCxPSvv/5qGjVqFMqA+9G4Jz8vWPCL7dtOpk6dOqH9k2W6WNOuk0RABERABERABERABERABFJNQGJ6G/HZs2ebo47qaFq2bGXGjZuYUEx/8cUU07dvH/PddzOjJ3fu3MUg0OvWrRszhc888x/z+uuvOTdpGq7kV199jenV66KY4yZOnOCE/IQJ493v6UOPHueZiy66OKlH4t//ftq89tqQaJ84n82CSy65LHr+22+/ZS6+uJe5++77zAcfvG8mTYqM0buwT5/+pXnwwfvt2Me63++ySwM7psfNQw89kM/Ne8OGDebee+8yo0a9axYtWmRq1apljj76GHPbbXeaPffcM3rPdu0OMNnZm+3mxN2O2dq1a8199z1oLrwwdvz+BInppKZbB4mACIiACIiACIiACIiACOxoAhLT22bAi+k2bdqaDz+MCMp4N++ff55nOnSIxFSfd975pmHDhmbs2I+ci/jhhx9phg8fGb3gs88+Y26++QYnSv/2t785UYn4xJp900232KzVkdjtr76aYY4//lgnSE877XQnyEeOHO5Eav/+A825555X4GOCkO7X75bofTh45MiR7j4I50suudSdP2LEcHP55Ze4+1SrVt0cd9xxVtzvbm644SazePFi++9j3DnHHnucadfuQPPZZ5+aTz6Z5I5HBHvRjYX5iisutfcY4eLLEdGzZn1nRo8eZZo128f+/wOX4I2GmGYctI4dDzewPemkzpbhIaFjkpje0W8E3V8EREAEREAEREAEREAERCApAhLT2zDdddcdZvDgJ6zgvNLcccdd7oN4Mf3++6PNe++NNl27nmLdn493x+Tm5pqDD/6zE40//DDPuTDj+nzQQW2dEJ048VPrCr67O5Zs4h07RoTkN9/MMjVq1DCHHdbB/PjjXCdCffKzpUuXmE6djnbidu7cn03t2rVD53PBggXu3gj2MWPGWXfrxtH7HHtsRBx/+eXX7v5eTO+5Z1Pz7ruj7UbArtFr/vOfV1oL+lCbnK2vuf76G6K/J1kbSdtoXkx7CzfWeBK2ZWVluc8fe2yAtTrfY6677l/mxhtvdr/zYhq3edznC2sS04UR0uciIAIiIAIiIAIiIAIiIAJlgkCmimmsyN7VeP78n53QxBUb8fvOO6OdmzUt2QRkvXtfY1599RXnHs65WGkpq3XbbXeYK6+8OmauEdqrV68ye+/dzBB33bJlC3PiiZ3Niy++HHPcww8/aB555CHXn/btO4Q+L++9N8pccME/nPhnEyDY2Bhgg+Cll14xJ5xwUlRMY4nu3btPzLFe0C9cuDQm9nnlypVm332buWO9mL799n7m6aefjEnUxufEeu+1VxPrKn+0GTZseIyYnjdvgds4KKxJTBdGSJ+LgAiIgAiIgAiIgAiIgAiUCQKZKqbD4GOxffrp/5gDDzww+nGYmJ406WNr2X3HTJs21Vmjsf765sX0Aw/cZwYM6G/jmIdZC/OxCef6448nmDPPPN19jnU52Px177//wXwx1v44YpwfffSR0PuMGfOROeecs6PWZm+ZfuyxQebvf+8evRVJz/bee09rRW5n3n//o3x99dZlL6aPPPIwM2fOnAL77I/1MdMzZ85O6nmXmE4Kkw4SAREQAREQAREQAREQARHY0QQyVUzjon3++T0dftyU9913v6grdnBO4sU01mes0DSs261atXLxwYhamhfT3qr8yiuvRd3Bw+Z6/Phx5uyzz3QfXXPNdTGH/PLLfOeKffzxJ9h7HRH6qJAcrH//hwsU07ht475dUmL6mGOOdInOLrvsClO1atWYfs2aNcvsv//+Nlb8Vvd7iekd/Reu+4uACIiACIiACIiACIiACJQKgUwV02GlscIAx4tpXybKi2Z/DlmyiSX2vydb9j/+0cMmGrvVJhqLFcnEQ69Zs8a5eS9btsy0br2fIf74+edfKvIcezfv22+/0yYFuyrmfLKDU+4r3s073jLNSUVx8ybZGUnPxo6dYDcTWhfYZ4npIk+pThABERABERABERABERABESgPBCSmC56leDHtXZ5nzPjW1WGmff/99+aIIw51P3sxTXbsP/+5tYvBHjt2YrRcFG7h/lifgMxf8+23R8VkuSahFxm1iXEmu3ZYCyY6mzTp82if/H3Iwj19+jeuJFciyzTXveaaq8zQoa+5WGru55uPBeff3nXbX4c472effT4aY/3LL7/YxGPX27jpvWzZrAfcJSSmy8NbQH0UAREQAREQAREQAREQAREoMgGJ6aKJ6VtuudFmsP6PdQvf1yUNW7t2jcuCjWgNiml+fuWVl8y//nWdi4U++eRTTMWKFcxbb73lYqxvuaWf+ec/r3XnULe6a9eT3M9nnnmWLS/VzJak+sTVgSaZ2f/+N8ZUrlw5YUeDJbi4D+2dd9529wnGWxckpsky7rN/H3NMJ1vCqo2ZPHmy+fzzz/KVxsrJyXH1qkmyRqkrjt+4caNNwPay40CGb98Pieki/0nqBBEQAREQAREQAREQAREQgfJAQGK64Fk69dSuTlB6qywZq2+6qa+z4vpGPDJZuZ96arAZP36Sixn27cUXn7fxzK+6OtQ0hDXWX59J3B83duwYlyF7woTx0XN79DjXiu7bzM4771zoo4SgHjp0iMtITkPkdu9+TkziMi+mBw160nTrdna+a1LvmthvEpfRsGYPGPC4eeCBe13/PQM+g8M999zpyoT5OtLUmGaToEuXrtFrt29/kGOjBGSFTqEOEAEREAEREAEREAEREAERKE8EMk1Ml9TcZGdnm99++800aNAgXxKusHusWrXK1aPeaaedCuzChg0bzIoVK2zisYYxJaqS7Tf3odWtWzfZU/IdR3ZvBHCDBg1NhfgHJOSqxIBXrVrNJWLb3qZs3ttLUOeLgAiIgAiIgAiIgAiIgAikhIDEdEow6yZJEpCYThKUDhMBERABERABERABERABEdixBNJJTA8d+o6N3z0sKWvqjqWuu4cRyMvLswncPrU1sE8WIBEQAREQAREQAREQAREQAREo2wTSSUwPGfKWzR7d2sYY1y/b0NW7UAJ//LHcfPXVdzbWO5JETU0EREAEREAEREAEREAEREAEyiyBdBLTU6Z8ZXJycs0++zQts7zVscQE5s6d57KW/+UvbYRJBERABERABERABERABERABMo2gXQS05B+7rk3zEEHHWDrLTcs2+DVuxgCixYtMTNmfGcuuOBMkREBERABERABERABERABERCBsk8g3cS0F9T779/MZrSu41y+k8lIXfZnKv16SIz0smUrzMqVq8z33/9khXS39BukRiQCIiACIiACIiACIiACIpCeBNJRTDNTU6bMMHPnzjdZWVlm8eLf0nPyyvmoGjduYLZsyTPNmu1p2rdvW85Ho+6LgAiIgAiIgAiIgAiIgAhkFIF0FdMZNYkarAiIgAiIgAiIgAiIgAiIgAiIQGoJSEynlrfuJgIiIAIiIAIiIAIiIAIiIAIikAYEJKbTYBI1BBEQAREQAREQAREQAREQAREQgdQSkJhOLW/dTQREQAREQAREQAREQAREQAREIA0ISEynwSRqCCIgAiIgAiIgAiIgAiIgAiIgAqklIDGdWt66mwiIgAiIgAiIgAiIgAiIgAiIQBoQkJhOg0nUEERABERABERABERABERABERABFJLQGI6tbx1NxEQAREQAREQAREQAREQAREQgTQgIDGdBpOoIYiACIiACIiACIiACIiACIiACKSWgMR0annrbiIgAiIgAiIgAiIgAiIgAiIgAmlAQGI6DSZRQxABERABERABERABERABERABEUgtAYnp1PLW3URABERABERABERABERABERABNKAgMR0GkyihiACIiACIiACIiACIiACIiACIpBaAhLTqeWtu4mACIiACIiACIiACIiACIiACKQBAYnpNJhEDUEEREAEREAEREAEREAEREAERCC1BCSmU8tbdxMBERABERABERABERABERABEUgDAhLTaTCJGoIIiIAIiIAIiIAIiIAIiIAIiEBqCUhMp5a37iYCIiACIiACIiACIiACIiACIpAGBCSm02ASNQQREAEREAEREAEREAEREAEREIHUEpCYTi1v3U0EREAEREAEREAEREAEREAERCANCEhMp8EkaggiIAIiIAIiIAIiIAIiIAIiIAKpJSAxnVreupsIiIAIiIAIiIAIiIAIiIAIiEAaEJCYToNJ1BBEQAREQAREQAREQAREQAREQARSS0BiOrW8dTcREAEREAEREAEREAEREAEREIE0ICAxnQaTqCGIgAiIgAiIgAiIgAiIgAiIgAikloDEdGp5624iIAIiIAIiIAIiIAIiIAIiIAJpQEBiOg0mUUMQAREQAREQAREQAREQAREQARFILQGJ6dTy1t1EQAREQAREQAREQAREQAREQATSgIDEdBpMooYgAiIgAiIgAiIgAiIgAiIgAiKQWgIS06nlrbuJgAiIgAiIgAiIgAiIgAiIgAikAQGJ6TSYRA1BBERABERABERABERABERABEQgtQQkplPLW3cTAREQAREQAREQAREQAREQARFIAwIS02kwiRqCCIiACIiACIiACIiACIiACIhAaglITKeWt+4mAiIgAiIgAiIgAiIgAiIgAiKQBgQkptNgEjUEERABERABERABERABERABERCB1BKQmE4tb91NBERABERABERABERABERABEQgDQhITKfBJGoIIiACIiACIiACIiACIiACIiACqSUgMZ1a3rqbCIiACIiACIiACIiACIiACIhAGhCQmE6DSdQQREAEREAEREAEREAEREAEREAEUktAYjq1vHU3ERABERABERABERABERABERCBNCAgMZ0Gk6ghiIAIiIAIiIAIiIAIiIAIiIAIpJaAxHRqeetuIiACIiACIiACIiACIiACIiACaUBAYjoNJlFDEAEREAEREAEREAEREAEREAERSC0BienU8tbdREAEREAEREAEREAEREAEREAE0oDADhHTacBNQxABERABERABERABERABERABERCBKIG8vKRgVMizLakjOShesSd9og4UAREQAREQAREQAREQAREQAREQgXJAIEmJLDFdDuZSXRQBERABERABERABERABERABEUgRAYnpFIHWbURABERABERABERABERABERABNKHQKmI6fTBo5GIgAiIgAiIgAiIgAiIgAiIgAiIQLEJ/D944bRVsQmp0wAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 38, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We can query the web driver for all elements of a particular type. Querying for HTML anchor elements (``) for instance, gives us all links on a page." ] }, { "cell_type": "code", "execution_count": 39, "metadata": { "button": false, "execution": { "iopub.execute_input": "2025-01-16T10:12:39.638765Z", "iopub.status.busy": "2025-01-16T10:12:39.638615Z", "iopub.status.idle": "2025-01-16T10:12:39.643587Z", "shell.execute_reply": "2025-01-16T10:12:39.643309Z" }, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "links = gui_driver.find_elements(By.TAG_NAME, \"a\")" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We can query the attributes of UI elements – for instance, the URL the first anchor on the page links to:" ] }, { "cell_type": "code", "execution_count": 40, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.645294Z", "iopub.status.busy": "2025-01-16T10:12:39.645183Z", "iopub.status.idle": "2025-01-16T10:12:39.655193Z", "shell.execute_reply": "2025-01-16T10:12:39.654926Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "'http://127.0.0.1:8800/terms'" ] }, "execution_count": 40, "metadata": {}, "output_type": "execute_result" } ], "source": [ "links[0].get_attribute('href')" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "What happens if we click on it? Very simple: We switch to the Web page being referenced." ] }, { "cell_type": "code", "execution_count": 41, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.656810Z", "iopub.status.busy": "2025-01-16T10:12:39.656697Z", "iopub.status.idle": "2025-01-16T10:12:39.684338Z", "shell.execute_reply": "2025-01-16T10:12:39.683941Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "links[0].click()" ] }, { "cell_type": "code", "execution_count": 42, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.686686Z", "iopub.status.busy": "2025-01-16T10:12:39.686434Z", "iopub.status.idle": "2025-01-16T10:12:39.689360Z", "shell.execute_reply": "2025-01-16T10:12:39.689073Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/html": [ "
127.0.0.1 - - [16/Jan/2025 11:12:39] \"GET /terms HTTP/1.1\" 200 -\n",
       "
" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "print_httpd_messages()" ] }, { "cell_type": "code", "execution_count": 43, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.690895Z", "iopub.status.busy": "2025-01-16T10:12:39.690783Z", "iopub.status.idle": "2025-01-16T10:12:39.703871Z", "shell.execute_reply": "2025-01-16T10:12:39.703532Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBXhcx9WGxyzbsiyHmbGhhpkahuZ3A07SMDTM7GADDTM70DAzN5yGyU3D2DA5ZJRkyZL1zzs3ZzU7e+/uvdKKz3mePLF2L8x8AzvfwT7NVoyKIqAIKAKKgCKgCCgCioAioAgoAoqAIqAIpEagj5Lp1FjphYqAIqAIKAKKgCKgCCgCioAioAgoAoqAQ0DJtE4ERUARUAQUAUVAEVAEFAFFQBFQBBQBRSAjAkqmMwKmlysCioAioAgoAoqAIqAIKAKKgCKgCCgCSqZ1DigCioAioAgoAoqAIqAIKAKKgCKgCCgCGRFQMp0RML1cEVAEFAFFQBFQBBQBRUARUAQUAUVAEVAyrXNAEVAEFAFFQBFQBBQBRUARUAQUAUVAEciIgJLpjIDp5YqAIqAIKAKKgCKgCCgCioAioAgoAoqAkmmdA4qAIqAIKAKKgCKgCCgCioAioAgoAopARgSUTGcETC9XBBQBRUARUAQUAUVAEVAEFAFFQBFQBJRM6xxQBBQBRUARUAQUAUVAEVAEFAFFQBFQBDIikI1M9+mT8fF6uSKgCCgCioAioAgoAoqAIqAIKAKKgCLQjRBobk7VWCXTqWDSixQBRUARUAQUAUVAEVAEFAFFQBFQBHoFAkqme8UwaycVAUVAEVAEFAFFQBFQBBQBRUARUATKiYCS6XKiqc9SBBQBRUARUAQUAUVAEVAEFAFFQBHoFQh0CJlO+ZJeAbh2UhFQBBQBRUARUAQUAUVAEVAEFAFFoPshEOYGS8lz2xYznfIl3Q9NbbEioAgoAoqAIqAIKAKKgCKgCCgCikCvQEDJdK8YZu2kIqAIKAKKgCKgCCgCioAioAgoAopAORFQMl1ONPVZioAioAgoAoqAIqAIKAKKgCKgCCgCvQIBJdO9Ypi1k4qAIqAIKAKKgCKgCCgCioAioAgoAuVEQMl0OdHUZykCioAioAgoAoqAIqAIKAKKgCKgCPQKBJRM94ph1k4qAoqAIqAIKAKKgCKgCCgCioAioAiUEwEl0+VEU5+lCCgCioAioAgoAoqAIqAIKAKKgCLQKxBQMt0rhlk7qQgoAoqAIqAIKAKKgCKgCCgCioAiUE4ElEyXE019liKgCCgCioAioAgoAoqAIqAIKAKKQK9AQMl0rxhm7aQioAgoAoqAIqAIKAKKgCKgCCgCikA5EVAyXU409VmKgCKgCCgCioAioAgoAoqAIqAIKAK9AgEl071imLWTioAioAgoAoqAIqAIKAKKgCKgCCgC5URAyXQ50dRnKQKKgCKgCCgCioAioAgoAoqAIqAI9AoElEz3imHWTioCioAioAgoAoqAIqAIKAKKgCKgCJQTASXT5URTn6UIKAKKgCKgCCgCioAioAgoAoqAItArEFAy3SuGWTupCCgCioAioAgoAoqAIqAIKAKKgCJQTgSUTJcTTX2WIqAIKAKKgCKgCCgCioAioAgoAopAr0BAyXSvGGbtpCKgCCgCioAioAgoAoqAIqAIKAKKQDkRUDJdTjT1WYqAIqAIKAKKgCKgCCgCioAioAgoAr0CASXTvWKYtZOKgCKgCCgCioAioAgoAoqAIqAIKALlREDJdDnR1GcpAoqAIqAIKAKKgCKgCCgCioAioAj0CgSUTPeKYdZOKgKKgCKgCCgCioAioAgoAoqAIqAIlBMBJdPlRFOfpQgoAoqAIqAIKAKKgCKgCCgCioAi0CsQ6GlkuqmpyTQ3N5dl7Pr162f6hACV5cmd85Dx48ebu+66y8w666xms802M/379++chpR46/Tp0w3/xUlXbXOxLhWbk+XuD3Of95VTeto6KCc2PeVZpfbNcs9TcPv111/NBx98YL799ltTWVlpllhiCTPffPOZvn375sH6/vvvm7feesvsuOOO3Q7uUusxaW19/vnn5v777zdrrLGGWWmlldrc72nTppmHHnrI/Pbbb2abbbYxw4cPb/Mz9QGKgCKgCCgCioAiYBHoSWT6hx9+MHPMMUfZxvU///mPWXbZZcv2vM580EsvveQOZiJzzTWX+fjjj82QIUM6s1mx7z788MPN+eefH/vdf//7X7PMMst0uTYXa9Buu+1mrr/++thLGhsbDQfqcsljjz1mNt1003I9zj3nlVdeMausskpZn6kP61oIbLHFFo5sxckCCyxg/ve//5WlwU888YS5+OKLzRtvvGF++umn2GeuueaaZr311jNbb721mWmmmcyf//xnd325lKRl6UjKh7z55ptmxRVXTLz6zjvvdOTWF/Y+9kCR7bbbztx2220p31h42cSJE80iiyyShzftWn755Vv9TL1REVAEFAFFQBFQBH5HoCeR6alTp5oXX3zRjB071hxzzDGJY7zLLruY+eef33DIgIB/99135oUXXii4vieR6VGjRjmrtC833nij2WmnnbrcWsBaxYHy2muvLWjbq6++alZeeeUu1+ZiDcKqdtxxxxmIbigdQaaHDRvmCMncc89tzjrrrII28P1+++1nvvjiC9fGyZMn512jZLpbTbdWNfazzz4zH330kTn77LML9sJykOlffvnFHHHEEeaGG27ItW+55ZYzI0eONGuttZazTLO2n376aXPffffF9qE7kuna2lpnVX/ttdfyCLJ0MCTTDQ0Nbp2GigbGZ8EFF4zFhXdcd911ZuONN4695oorrnDr25fdd989dn9t1eTRmxQBRUARUAQUgd6MQE8i0/44XnXVVWbvvfcuGNrVV1/dEe5QcDW87LLLzJlnnpn7qieRaay577zzTl63jzzySHd47oqCYmTw4MEFTeuuxA5X1SWXXLLdyfQjjzxiNt9889x7zjvvPHPAAQeYgQMHus9w8Q8P6ksvvbR5++233ffg/o9//MOcdtppuWfg1bDaaqt1xWmibSozAs8884yzCvvSVjJ9zz33GLwzfCXNOuusY/71r3+ZQYMGFfTgjjvuMFhjQ+mOZNrvA55BrCVfbr/9drPtttvmPsL1HWt8KHgN+Ova/148X5KuQYnBPuCLv+bLPIX0cYqAIqAIKAKKQO9CoKeSaawBWD5COfDAA52bYZKccsop5qSTTnJf9yQyjZJg9OjRed3u6i7TxFBipfalu5LpJOVAuS3TDz/8sLNCI5deeqnZf//98/ArRablYjw7xIqtZLr3/CbE7ZttIdMPPvig+b//+788AHE5xgo9YsSIRGBpB5ZWX/HT3cn0lltuWWB1D8k0gGy44YbmySefzGGD58jPP/8cq3i45pprzN/+9jd3bRKZfvnllw1KZF/i9obeM8u1p4qAIqAIKAKKQBkR6KlkGpfFxRdfvACpUmQackMsGVbcnkSmST52xhlnmCuvvNLMPPPMBqv0PvvsU8aZVP5HxVnTu6ObN8h0FJnmQE386yabbGIeffTRgkFJS6YhLgsttJAhERKeHOFhvPyjrU/sCgjgofDHP/4xrymtJdMffvih+cMf/lDQrbvvvttstdVWJbsbksCeSKbjYqZRIOIdcuuttxos+Mcff3yBtwDg8fvkxz0Xs15fdNFFTokMKUfBduyxxxpIuooi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XbsSpmNSf++99+yII46wQw891EaOHBnTWTnNP0Xgq0SYviURphscUMtufPmUWC5ryYJfres+/WIN8LF0jJMggAACCCCAAAII/CUQUpjOq/78maxE6+8FhWn9/o8//nAbkOm/X375pX311VfuOw0bNrTGjRvbJptsktXtog2uRo0aZWeffbbNnTvX3nrrLfvll1/s8MMPd8eJtoLCtAK+vjtnzhyrWbOmHXTQQet931/32LFjbfz48VamTBlr2bKl7bjjjutd66+//urWCU+dOtWqVq1qzZs3t2222SarPun6hwwZYt99951tvvnmts8++7gKb6nITSMrXYeut23btu6/b7/9tm222WZ2zDHHZH0uXZCuceLEibZ48WLbdddd3RrnrbfeOt+1anz10EQ/32OPPey1115zm85p/bnfSE7fVwX666+/tgYNGjgfXVu6MJ2Nz4IFC9xSgPPOO89d4//+9z/XN798oDBMfX7lypXuY/Xr13f31rx58+zTTz9NfrVRo0ZWp06d5N/Vz48//tiF/5122sl23nlnN77Vq1fPdzpdj/YK0PHlse+++xZ2OcnfL1++3H33m2++sdhsg1IAACAASURBVEqVKrnvy8s33Yv6N+FbmzZtnKVmcshNbdNNN7Vjjz0233UXNj6ZLvCHGUvs+0mLEuuLV1r1XSpZnT22SzsdevbkRbZg1lLbr1Vdmzxmjs2estgOPnG35MZeyxLfnzxmrs2Zsshq1qtipcuUst6dX0sbplf9tsZmTlxgOvdWVcpbg/1rrbdBmKaKfzrsW9ur+Y5WqnQpG/P6VKtRt7I1PLDWel1ZtWKNTfl0rs2d9pM9ffP7bo1017tbus/Vql/FKlevkPxOSfR37R9/2jefzLFqO1a0KtW3slmTFtqsbxZag6a1rNpOFfOda8rn86x6nUpuunuZsnmzdWgIIIAAAggggAACxRAILUynUhQWpvV5BeHTTjvNvv/+exfKFAhfeeUV23PPPe3pp5+2vfbaK6OwKuF33323ff7551ahQgXr3Lmz3Xvvvfk+r02wLr/88uTPMoXpwYMH28knn2wXXnihC9Fa66t14NqkTNflm8K6//upp55qH3zwgavIK7gryPpQqWtSiNT1a6r766+/7q7x5ZdftqOOOqrAu0YmCrP77befXXTRRe74Wueta3vggQfcd9VPTZ3X9SjMN23a1G6++ebkcRXMdA1at15QU6i79NJL7fHHH7czzzzTBfFBgwa5rzz22GNuB26tc9e5nnzySXe+//znP+4zCt9q6rf6pAcaCrqyaNWqlQ0bNsz1Wy01TBfmo9D44IMPJt0eeughO+usvA2sirL+WsdRvxYuXOjuA90PCui6fr/sQJuk6d5R07p6BW5dr5YtvPrqq85B9+QJJ5zgPrN69Wq74oor3M8OOeQQd59oeYOsdM/KsKCmqe+nn366VatWzTkptMtD31ef9eDlhx9+cPf2fffd5w71008/udCthwMa+3feecfdT7rebMcn3TWt/HW1PXnDCBs56Gs75KQGtkm5svbxa5PdRy+4p1VyB+63nphgH7z0jc34coHtf2w9K79lORsx6Cv3ubaX7G8drjzYJieC7O1nDrbdD6ptjQ7bySaMmGnj3pnhPpNamZ7+xYJEyH7VdmxQ1YVkfW6zLTaxywe0ccF57rc/2ZuPjnPXotB94f2tbeDV77g/qz0x6SLbYuv8a5+X/7zSnrx+pC2a+4tN+WyeO96+R+7iPt/0mHrWtHVdK4n+HnPevrbJpmVsxPNf2bKfVth5dx5po4dOta8/np0kPvqcvU3/d2/XoYmdzBcmf97itD3t/LsL/vdf4M3DLxFAAAEEEEAAAQTyBDb2ML106VJXLVRlb9asWS4sqN1111121VVXubAwZcqU9SqC/v5RFVRroG+44Qb3I1XvtNGZKrlXXnmlC3lqqvApnKulC9MKJKpEK1jq1VkKoAoz2kQtugu1NtTS9SogK0ipcq6fKRTpuz5468GAKplPPPGEderUyZ1XoUjhTX1SRXP77bfP+M+gdevWLjT5kKoPqjqqwCYzVYZ1fddff70LemraGf26665zQVFBTeEx9UFAuhOqsqkdzvVQQMFQTaHY/1mBWBvLqeKpvqifarfccour8KoK7SvUCvAnnXSSvfjii8kZCgqpukYFbE35VsvGR/1QgPb904MFzTyQqY6lNffZtksuucTuv//+ZJj23zv44INdBToapv29p35uueWWbqaEHhDo3P5VanrAIY/Ro0e7sVCY1f2lBw3XXnuts8nUVBHXwwD1QaFaMw00M0NBXeOg32npg6rQP/74o7u31HyY1p917hYtWiTDtO6JwsZnl13yQmVqu+OsITb+vZl24+AOicpwTfdrheIb2uY9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", "text/plain": [ "" ] }, "execution_count": 43, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Okay. Let's get back to our home page again." ] }, { "cell_type": "code", "execution_count": 44, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.705783Z", "iopub.status.busy": "2025-01-16T10:12:39.705649Z", "iopub.status.idle": "2025-01-16T10:12:39.727405Z", "shell.execute_reply": "2025-01-16T10:12:39.727087Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.back()" ] }, { "cell_type": "code", "execution_count": 45, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.729334Z", "iopub.status.busy": "2025-01-16T10:12:39.729216Z", "iopub.status.idle": "2025-01-16T10:12:39.731004Z", "shell.execute_reply": "2025-01-16T10:12:39.730675Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "print_httpd_messages()" ] }, { "cell_type": "code", "execution_count": 46, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.732705Z", "iopub.status.busy": "2025-01-16T10:12:39.732585Z", "iopub.status.idle": "2025-01-16T10:12:39.756566Z", "shell.execute_reply": "2025-01-16T10:12:39.756237Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZhcNduG8+HOhxR3irtDgULxUry4F3cr7lbcXYu3SHEr7hRKC0ULtFAcChR3/c+dfu/+2Wxm5szuzMrM814XF9szOTnJk5ycPK/lP/9m4iRCQAgIASEgBISAEBACQkAICAEhIASEQG4E/iMynRsrFRQCQkAICAEhIASEgBAQAkJACAgBIeAREJnWRBACQkAICAEhIASEgBAQAkJACAgBIVAmAiLTZQKm4kJACAgBISAEhIAQEAJCQAgIASEgBESmNQeEgBAQAkJACAgBISAEhIAQEAJCQAiUiYDIdJmAqbgQEAJCQAgIASEgBISAEBACQkAICAGRac0BISAEhIAQEAJCQAgIASEgBISAEBACZSIgMl0mYCouBISAEBACQkAICAEhIASEgBAQAkJAZFpzQAgIASEgBISAEBACQkAICAEhIASEQJkIiEyXCZiKCwEhIASEgBAQAkJACAgBISAEhIAQEJnWHBACQkAICAEhIASEgBAQAkJACAgBIVAmAuWR6f/8p8zqVVwICAEhIASEgBAQAkJACAgBISAEhEAHQuDff3M1VmQ6F0wqJASEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRahUznfEhdAK5OCgEhIASEgBAQAkJACAgBISAEhEDHQyDODZaT57YsZjrnQzoemmqxEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwREputimNVJISAEhIAQEAJCQAgIASEgBISAEKgkAiLTlURTdQkBISAEhIAQEAJCQAgIASEgBIRAXSAgMl0Xw6xOCgEhIASEgBAQAkJACAgBISAEhEAlERCZriSaqksICAEhIASEgBAQAkJACAgBISAE6gIBkem6GGZ1UggIASEgBISAEBACQkAICAEhIAQqiYDIdCXRVF1CQAgIASEgBISAEBACQkAICAEhUBcIiEzXxTCrk0JACAgBISAEhIAQEAJCQAgIASFQSQREpiuJpuoSAkJACAgBISAEhIAQEAJCQAgIgbpAQGS6LoZZnRQCQkAICAEhIASEgBAQAkJACAiBSiIgMl1JNFWXEBACQkAICAEhIASEgBAQAkJACNQFAiLTdTHM6qQQEAJCQAgIASEgBISAEBACQkAIVBIBkelKoqm6hIAQEAJCQAgIASEgBISAEBACQqAuEBCZrothVieFgBAQAkJACAgBISAEhIAQEAJCoJIIiExXEk3VJQSEgBAQAkJACAgBISAEhIAQEAJ1gYDIdF0MszopBISAEBACQkAICAEhIASEgBAQApVEQGS6kmiqLiEgBISAEBACQkAICAEhIASEgBCoCwRqjUz//fff7t9//63I2I077rjuPzFAFam5bSr59ttv3W233eamn35616NHDzfeeOO1TUNKPPWff/5x/JeS9trmYl0qNidboz9ffPGFGz58uP/vww8/dDPNNJObd9553TzzzOPmmGMOPw/GjBnjDjvsMLfLLru45Zdfvl3Oi/bcqJEjR7rXXnvNff311+6XX37xa1CnTp3cbLPN5pZddlk30UQTtWnzS62LrTEPWwpAqT6UU3+tre3l9F1lhYAQEAJCQAgIgQoiUEtk+vPPP/dEoVLy8ssvuyWWWKJS1bVpPc8995xbaaWVGtowyyyzuHfeecdNMskkbdqu1MN79+7tzjnnnGS7hg0b5hZbbLF21+ZiDerVq5e79tprk0X++usvx8a+GvL777+74447zp1++ukN1U8++eTuxx9/bPTvDTfc0JPsZ555xvXr189ttdVW1WhOzdX5/fffuwsuuMCP7fvvv1+0fz179vTKimWWWaZNcNhggw3cvffem3z2XHPN5d577702aVfeh2ptz4uUygkBISAEhIAQEAKtikAtkenffvvNPfvss27o0KHu8MMPL4jjDjvs4Oacc07HZphN2qeffuqJRCy1RKY333xzb5UO5frrr3fbbbddq863PA976623PJm++uqrmxR/4YUX3HLLLZenmnZT5pVXXnFHHXWUe/DBB5u0qVpkGkvzWmut5ZjDCHP+1FNPdTPOOKO3nGJFPfTQQ5vMe5HpfNPmxhtvdHvttVcjxcS2227r9t9/f7+2oKh69NFHvTIjFN7Dyy+/3P33v//N96AKlcJy/vbbb7szzjijyZh3BDKttb1CE0HVCAEhIASEgBAQApVFoJbIdIjMFVdc4XbfffcmYK244oqecMfyySefuIsvvtiddtppDT/VEpnGmguBCuWQQw7xm+v2KGyeJ5544iZNGzRoUId0Q37zzTfdwgsv3GpkGqJ36aWX+uetueaabuDAgW6cccZp9HyIPGTvlFNOabguMl38bSD8AMVIuE5wB+vNrrvu2uTmp59+2q2yyiqNruNif99993k3+9aWxx9/3K2++uqNHtsRyLTW9taeKXqeEBACQkAICAEhkAuBWiXTWAOXXHLJJhjsu+++3jWzkJx44okN1qRaItNs/o844ohG3W7vLtMLLbSQw0odSkcl04WUA9WwTMdz/5prrnE77rhjwTm/6aabuttvv93/LjJdfNk84YQT3PHHH9+o0E477ZT0orBCd955p9tkk00a3UOYBesLcdWtKal1saORaa3trTlj9CwhIASEgBAQAkKgKAK1SqZxaVxggQXKJtOQm6WWWspbcWuJTJN8DDffyy67zG/gsUrvscce7frtSFnTO6KbNyC3JpmOFSdYqIuNNS7huCYTS92/f3+35ZZbtut50VaNu//++916663X5PGsNfPNN1/RZvH7u+++26jMyiuv7J588skmHgPV7N+rr77qFl988UaP6GhkWmt7NWeI6hYCQkAICAEhIATKQkBk2rlbbrnFTTvttA3uj7g+kyyolsi0TYo///zTJ7yKXX7LmjStVFhkunlAb7HFFu7WW29tuHnRRRd1L774YtGM0rh745Uhy3Qac96b+eefv0misdVWW8099thjJQfK1pS4IOO02Wablby/UgXqjUzX09peqTmieoSAEBACQkAICIEyEKh3Mk0MJMmA9txzz4asx7gW42JMnOuCCy5YBpq1XxQL95dffumP/EnFNBdCAIs/celkmJ5uuuncVFNNVRKsUmT6m2++cbQHq2q5ygHagaWQsZ911llLtiVVgAR2ZHGeffbZ3dRTT120jta0THft2rVJkimOuyLrdCELKtmcO3fu3C7INGPKcV7ML45xK2ee2SBQB8kFp5hiCl/H+OOP36wxtptuuOEGt/322zepA7fvY489tmTd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CAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACQkAICAEhIASEgBAQAi1GQGS6xRCqAiEgBISAEBACQkAICAEhIASEgBCoNwREputtxNVfISAEhIAQEAJCQAgIASEgBISAEGgxAiLTLYZQFQgBISAEhIAQEAJCQAgIASEgBIRAvSEgMl1vI67+CgEhIASEgBAQAkJACAgBISAEhECLERCZbjGEqkAICAEhIASEgBAQAkJACAgBISAE6g0Bkel6G3H1VwgIASEgBISAEBACQkAICAEhIARajIDIdIshVAVCQAgIASEgBISAEBACQkAICAEhUG8IiEzX24irv0JACAgBISAEhIAQEAJCQAgIASHQYgREplsMoSoQAkJACAgBISAEhIAQEAJCQAgIgXpDQGS63kZc/RUCQkAICAEhIASEgBAQAkJACAiBFiMgMt1iCFWBEBACQkAICAEhIASEgBAQAkJACNQbAiLT9Tbi6q8QEAJCQAgIASEgBISAEBACQkAItBgBkekWQ6gKhIAQEAJCQAgIASEgBISAEBACQqDeEBCZrrcRV3+FgBAQAkJACAgBISAEhIAQEAJCoMUIiEy3GEJVIASEgBAQAkJACAgBISAEhIAQEAL1hoDIdL2NuPorBISAEBACtYLA4MGvuhEjRrnxxhvPff75l7XSLfVDCAgBIVA2AjPM0Mn9888/bp555nDLLLNY2ffrBiHQLAREppsFm24SAkJACAgBIdCmCFx99a1u4YXndVNMMbmbZpqp2rQtergQEAJCoK0R+Pfff90333znvvvuBzd8+Ei3006btXWT9Px6QEBkuh5GWX0UAkJACAiBWkKgb99b3bLLLuGmm26aWuqW+iIEhIAQqAgCeOq8/PLrrlcvEeqKAKpKCiMgMq3ZIQSEgBAQAkKg4yDw4ovDXGaAcXPNNVvHabRaKgSEgBBoZQRGjvzAjT/+uHL5bmXc6+5xItN1N+TqsBAQAkJACHRgBG666W635JILy7W7A4+hmi4EhED1Efj662/csGFvuq233rD6D9MT6heBWiPTf/zxR3IwSc4yzjjjNPz2559/Zpr9TLUfyAQTTFDRifDFF1+4H3/8MUuEME/Rev/66y+fMCGW/2SDM/744xe89+eff3ZPPvmk++WXX9xmm8mNpVKDN2bMGPfggw+6nj17uoknnrhS1aqeGkSg0DvIO3n77be7pZZayi244II12POO16VaGpNbbrnPdevWpeMNglosBISAEGhFBNjnP/nkILfFFuu14lP1qLpDoJbI9Lfffuvmn39+9+WXjTOarr322u6MM85wiy66aMP4HnbYYe7aa69tKDvddNO5J554omIbXzZuM8wwgyfTr7/+epYkZuGCc+u4445zl112WZN22w0rr7yyow977bWXm2qqqbKMrZ+7XXfd1d1///2+yJZbbun69+9fd3O30h2GQPfp08c999xzvurvvvvOTTnllJV+jOqrAQRKvYOXX36522OPPdwss8ziPv744xroccfvQi2NyXnn9c0sLRt1/EHpAD1A0c1/KOQltYEARpdKG09qA5na7EW/fne5Aw7YqTY7p161DwRqiUyDKIvkSSed5E4++WQP8OSTT55l9vsm+SG86KKL3L777uv2228/d84557hxxx23YoPyyiuvZG54S/r6br311pKW4w8//NDNMcccvnz37t3dlVde6bj22muvuUMPPdSTcvry8ssvu86dO7sffvjB7bnnnq5fv34i0xUatd9//90NGjQos/h08zVidZxkkkkqVHv7qAar+zTTKGFRJUaj2DuIxwjzaLvttnPXX399JR6XrAOFD+tCJdeuqjW2jSturTFpjW6WS6bHets8kH1TPnC//vqLm3nmWdyKK66UKZjb9uiYV18dVlCJDI586+acc67WgDT5DDzYVl99FTdmzDeZkvUF99///rdqbfnii8+z7/lN/hmzzvr/sfD8DQ6tReZ79do+c4t9xb3yyutl9RVjxpAhL+W6Z7XVVs+9Zn322Wdu6NAhmVHiNe9dyJxdZpllXKdO0zV6Vt52jxjxrltnnTXdCit0cTfeKCNErgHr4IVEpjv4AHaE5tcamQZztMibbLKJu/vuu/0QnHfeeW7//fdvNBwQJazYiyyyiLvvvvsauYBXYtzeeecdXz9y1113uQ03LB2vMf300/uNBST5kksuaWjGBx984K3qEGr+/+qrr/rfKLP33nuLTFdiwP5XBx4Fk046qf/Xb7/95iaccMIK1t62VeF2/NRTT7kLLrigbRtSQ08v9g6yES8WptFSGJifK664ovdQwQtGUhqBao9J6RZUpkQ5ZPr222/LvJr2SD54vfXWd5dfflWrEbW4EXvssau78847CoJy/PEnZt/DvSsDWjNq+fnnn7Ikb7P7O4cMGZaR3FmbUUu+W2644Tp38MEHFSx88cWXuk033TxfZS0otf7667rBg190o0ePKauWl14a7NZbr3uue0aN+jiXovqee+7OvPCaWhQnm2wyd8UVV2eKjjUanpe33S+8MCjbj63nZp99jqyfQ0u2l/3kWWedkZH3TllW6J1LlleB9oeAyHT7G5Oaa1EtkmkGKXb5fvfddxvFLmPtxbV65MiR2dEijTWclRjkn376yVuMxn6Eh/jYyVIy33zzOdqJO/fFF1/cqPj222/vbrjhBn8NTe2MM86YbYLGupLKzbsUsvl///XXXxs+8ng5VJMM5W9Vy0uacgdPDJHpluNpNbTlO8g6cemll/qwD5Hpyo1pR6gpL5l+5pmnMwK2se/S7rvv6VZZZVU37bTTumeffcbddNON7r33RrodduiVhUGd1SbdNjLdp89pDmVyLCik55ln3jZpmz30k08+yRSrv2bW4eK5T1raSCPT3bqt1kDa8Ch47LFHMoX/vb76e+653y233PItfVTR+/OS0rgSPHWeeurJhst//PG7V+LMNNNM7sQT+zQq3r37uiUVOEOHDnXrrruWv+/008/MLMkrZoaSvzM8Hs28D0/w1wcNGpwpO+b2f5fTbqzcM844k38XSgk5bWaeefosBHChLBTw6VLF9Xs7REBkuh0OSq01qVbJNOP06KOPujXXXNMPGRYcrHK4Q7JIL7300u7mm2/OkhJs0WhISRoG+f3000/d3HPPnW0+VmlCqNBUEldLjPWcc87py+GizUcjlCmmmMJbk/NudouRaSzrRoLefvttR9liG3k+AFiwidfGPaxLly7ZR6epu9zzzz/vXZu/+uorb0lfffXVk9p3nomlnxhirONohsMYdPqdB7tC7w8W+TvvvNOhhFhsscU8oaXNoeSp//3333cPP/ywVzLgAvvYY4/5dq277rp+rGKBPDOWL730kt/MMU/MoyAPmaa9xFpvtNFGDqvX4MGDHZ4EG2ywgZt66qn94/7++29f//Dhw/28wxsiFuphXkJ6Ue4w74iPzyPff/+9u+OOO9yoUaN8wjQUN8x7Etghb731lnc5BuP111/fK2uYmzG+lGXeWMy4PZuySyyxhP8nYQbMaYTEWmjrTWg7YQlff/21x5AwhzDm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q2vHHXf0a+X888/f3Oo77H2EAaB8bUvvig4LXh02vNSaWYeQqMtCQAgYAvVEptkEvfvuu77ra665pnvggQeaxERvsskmbuGFF3YnnnhizUyScj4CHYlM77HHHm711Vf31rJRo0b5OElz6cdt/5xzzqmZMVRHhEAlESi1JlxzzTVup53GngCANXOmmWZq8vjff//dW6179OhRyaa1uC5cvlkbquHmjRJ21llnTSpiSzW8tck0HgSHHnqou+yyyxxKxh122MEttthibvLJJ3dDhw51L774orewozx9+OGH3fLLL1+qCzX1u8h0TQ1n1TtTas2segP0ACEgBNovAvVEph966CF3+umnOzT1yCGHHOJwFQxl88039654xx13XKPr7733no8N/Pjjjx2W7RVXXDHpKv7aa6/5xDdsTEaOHOljD2effXa38sorN9T31Vdf+c3Lf//7X399iimmaDJBsHywcWOjs8gii7ill166SZkBAwZ4Irnppps2srzHBcv5CBQj01iB6D+u8CkXeNzD8QDgP/7+8MMPHfWVcpf/6KOP/GZ9vPHGy/WimNWsb9++rlevXk3GqUuXLu7LL790p5xyio97TwnWtmmmmcZNPPHEJZ9ZbvtKVqgCQqCNESi1JpQi02+88YZfC7p3796oJ4RgQNSwvrLOYbUmoRlhNhZrzPqIlReyx/qXsnoTu8291IHVFKUZJDaWt956y7E28zyTQmSaxGQ33XSTJ5TLLbdc0REolqDN1rg8Q4hLNZZz1po8ZDrvugSmYD3bbLMVbMbOO+/sWCNPOukkd/jhhyfXV+pgDPluoYhcZ511kvURAoUVd7LJJmv0O98f/kt5AYXfg/AmxoH6aHtqzec+qw8PKeZJOEd4Hu1m7Z566qmbtDe8n+8nYzDHHHM0+UaWItN5MC42B8aMGeO/g2FyvFT5v//+279LzO9xxx032R8uggl957tKeEX4XaUv9JO9RqqOPHNVZYojUGrNFH5CQAjUMQL1RKbZwGF1xo2bTQsSJyRLkenbb7/dE9Z99tnHk+jzzz/fk+TwXq6xcWFTst9++/kP33nnndcws7AMYAknFvHmm29uuL7ooou65557rmGTQoKbgw8+2N15552ua9eu/jnvv/++z0p7/fXXu4kmmsjfi8vesssu6/+mTLHNYTkfgRSZ5kOP2+S9997b0G5iKGkP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4AG31VYbVPU5qrxtENB63za466lCIC8CX375Td6izS433XRTN9yrNb/ZMOpGIVB9BESmq49xJZ5w3nl93QEH7FSJqlSHEBACNYCA1oQaGMQCXdDY1u7Yqme1gUBrk2lQ07pQG3NHvahBBESmO8agahHtGOOkVgqB1kJAa0JrId36z9HYtj7meqIQKAcBkely0FJZIVDjCIhMd4wB1uaqY4yTWikEWgsBrQmthXTrP0dj2/qY64lCoBwERKbLQUtlhUCNI1CvZPqXX35x77zzjvv777/d7LPP7jp16uRH+uuvv3bff/+9m3vuuf2/P/vsMzdw4EC3/vrrN5RpiymhzVVboK5nCoH2i0C11gTWRP7LKyRE/Oeff/x/sfwn+8CMO+647q+//kpWx73jjDNO3kcVLPfNN9+4kSNHuokmmsjNOeecbvLJJ/dlR4wY4aaddlo31VRTtfgZVsGYMWPcgw8+6Hr27OkmnnjiitUbVlStsa1KY1WpEKhDBMoh02+//Z775JPP3SyzzOjmn3/s3jKPhDHTlNe6kAc1lRECbYBAPZHpP/74w5122mnupptucu+++65Hm03Xjz/+6P+/1lpruddff91tscUW7sQTT/S/8/ett97qdtttN3f55Ze3wQiNfaQW0TaDXg8WAu0SgWqtCUcddZQ75ZRTcvf5qquucp9++mmjddXW1jXWWMMdffTRbr/99nPPPfdcss655prLLbvssm733Xd3q666au7nfvnll+6www5zDzzwgOPvUGaZZRZf19133+3uuOMORztaKhDoPn36NPTju+++c1NOOWVLq03eX62xrUpjVakQqEME8pLpd9553w0d+loDQssuu7jr3HmOXIiJTOeCSYWEQNsjUC9kevjw4W7bbbd1L7/8sltwwQXdZZddlh0rs5SbZJJJ3AcffOD69u3rTjrpJD8gBx54oDvnnHP832eccYbfsF1xxRVu1113bTRgkPPff/+9wQpSzdEstblCCTB06FD32muvuemnn973rUuXLr5/7U2effbZLAvxVu6II45we+21V3trntojBDoEAqXWhOZ2YrvttnM33nijJ47du3d3s846q7cum7z66quuW7du/p/LL7+8e+aZZ/wpA//++69fc1544QX/20cffeTvNUEheeWVV/p/PvLII/63t99+2918883+v3jtLdb+++67z229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AaeK6bCaRA6WBEiABEiABEiABEiABEiABEggtAQopkPLm3cjARIgARIgARIgARIgARIgARJwAAGKaQdMIodAAiRAAiRAAiRAAiRAAiRAAiQQWgIU06HlzbuRAAmQAAmQAAmQAAmQAAmQAAk4gADFtAMmkUMgARIgARIgARIgARIgARIgARIILQGK6dDy5t1IgARIgARIgARIgARIgARIgAQcQIBi2gGTyCGQAAmQAAmQAAmQAAmQAAmQAAmElgDFdGh5824kQAIkQAIkQAIkQAIkQAIkQAIOIEAx7YBJ5BBIgARIgARIgARIgARIgARIgARCS4BiOrS8eTcSIAESIAESIAESIAESIAESIAEHEKCYdsAkcggkQAIkQAIkQAIkQAIkQAIkQAKhJUAxHVrevBsJkAAJkAAJkAAJkAAJkAAJkIADCFBMO2ASOQQSIAESIAESIAESIAESIAESIIHQEqCYDi1v3o0ESIAESIAESIAESIAESIAESMABBCimHTCJHAIJkAAJkAAJkAAJkAAJkAAJkEBoCVBMh5Y370YCJEACJEACJEACJEACJEACJOAAAhTTDphEDoEESIAESIAESIAESIAESIAESCC0BCimQ8ubdyMBEiABEiABEiABEiABEiABEnAAAYppB0wih0ACJEACJEACJEACJEACJEACJBBaAhTToeXNu5EACZAACZAACZAACZAACZAACTiAAMW0AyaRQyABEiABEiABEiABEiABEiABEggtAYrp0PLm3UiABEiABEiABEiABEiABEiABBxAgGLaAZPIIZAACZAACZAACZAACZAACZAACYSWAMV0aHnzbiRAAiRAAiRAAiRAAiRAAiRAAg4gQDHtgEnkEEiABEiABEiABEiABEiABEiABEJLgGI6tLx5NxIgARIgARIgARIgARIgARIgAQcQoJh2wCRyCCRAAiRAAiRAAiRAAiRAAiRAAqElQDEdWt68GwmQAAmQAAmQAAmQAAmQAAmQgAMIUEw7YBI5BBIgARIgARIgARIgARIgARIggdASoJgOLW/ejQRIgARIgARIgARIgARIgARIwAEEKKYdMIkcAgmQAAmQAAmQAAmQAAmQAAmQQGgJUEyHljfvRgIkQAIkQAIkQAIkQAIkQAIk4AACFNMOmEQOgQRIgARIgARIgARIgARIgARIILQEKKZDy5t3IwESIAESIAESIAESIAESIAEScAABimkHTCKHQAIkQAIkQAIkQAIkQAIkQAIkEFoCFNOh5c27kQAJkAAJkAAJkAAJkAAJkAAJOIAAxbQDJpFDIAESIAESIAESIAESIAESIAESCC0BiunQ8ubdSIAESIAESIAESIAESIAESIAEHECAYtoBk8ghkAAJkAAJkAAJkAAJkAAJkAAJhJYAxXRoefNuJEACJEACJEACJEACJEACJEACDiBAMe2ASeQQSIAESIAESIAESIAESIAESIAEQkuAYjq0vHk3EiABEiABEiABEiABEiABEiABBxCgmHbAJHIIJEACJEACJEACJEACJEACJEACoSVAMR1a3rwbCZAACZAACZAACZAACZAACZCAAwjcEzHtAG4cAgmQAAmQAAmQAAmQAAmQAAmQAAm4Cdy6FRCM+26pFtCROMhbsQd8Ig8kARIgARIgARIgARIgARIgARIggThAIECJTDEdB+aSXSQBEiABEiABEiABEiABEiABEggRAYrpEIHmbUiABEiABEiABEiABEiABEiABJxDIEbEtHPwcCQkQAIkQAIkQAIkQAIkQAIkQAIkEGUC/wemMg1kUUarpwAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 46, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Writing Test Cases\n", "\n", "The above calls, interacting with a user interface automatically, are typically used in *Selenium tests* – that is, code snippets that interact with a website, occasionally checking whether everything works as expected. The following code, for instance, places an order just as above. It then retrieves the `title` element and checks whether the title contains a \"Thank you\" message, indicating success." ] }, { "cell_type": "code", "execution_count": 47, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.758324Z", "iopub.status.busy": "2025-01-16T10:12:39.758173Z", "iopub.status.idle": "2025-01-16T10:12:39.761246Z", "shell.execute_reply": "2025-01-16T10:12:39.760946Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def test_successful_order(driver, url):\n", " name = \"Walter White\"\n", " email = \"white@jpwynne.edu\"\n", " city = \"Albuquerque\"\n", " zip_code = \"87101\"\n", "\n", " driver.get(url)\n", " driver.find_element(By.NAME, \"name\").send_keys(name)\n", " driver.find_element(By.NAME, \"email\").send_keys(email)\n", " driver.find_element(By.NAME, 'city').send_keys(city)\n", " driver.find_element(By.NAME, 'zip').send_keys(zip_code)\n", " driver.find_element(By.NAME, 'terms').click()\n", " driver.find_element(By.NAME, 'submit').click()\n", "\n", " title = driver.find_element(By.ID, 'title')\n", " assert title is not None\n", " assert title.text.find(\"Thank you\") >= 0\n", "\n", " confirmation = driver.find_element(By.ID, \"confirmation\")\n", " assert confirmation is not None\n", "\n", " assert confirmation.text.find(name) >= 0\n", " assert confirmation.text.find(email) >= 0\n", " assert confirmation.text.find(city) >= 0\n", " assert confirmation.text.find(zip_code) >= 0\n", "\n", " return True" ] }, { "cell_type": "code", "execution_count": 48, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:39.763036Z", "iopub.status.busy": "2025-01-16T10:12:39.762943Z", "iopub.status.idle": "2025-01-16T10:12:40.119273Z", "shell.execute_reply": "2025-01-16T10:12:40.118930Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 48, "metadata": {}, "output_type": "execute_result" } ], "source": [ "test_successful_order(gui_driver, httpd_url)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "In a similar vein, we can set up automated test cases for unsuccessful orders, canceling orders, changing orders, and many more. All these test cases would be automatically run after any change to the program code, ensuring the Web application still works." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Of course, writing such tests is quite some effort. Hence, in the remainder of this chapter, we will again explore how to automatically generate them." ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "## Retrieving User Interface Actions\n", "\n", "To automatically interact with a user interface, we first need to find out which elements there are, and which user interactions (or short *actions*) they support." ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "source": [ "### User Interface Elements\n", "\n", "We start with finding available user elements. Let us get back to the order form." ] }, { "cell_type": "code", "execution_count": 49, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.121419Z", "iopub.status.busy": "2025-01-16T10:12:40.121290Z", "iopub.status.idle": "2025-01-16T10:12:40.141603Z", "shell.execute_reply": "2025-01-16T10:12:40.141148Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "code", "execution_count": 50, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.143643Z", "iopub.status.busy": "2025-01-16T10:12:40.143512Z", "iopub.status.idle": "2025-01-16T10:12:40.169736Z", "shell.execute_reply": "2025-01-16T10:12:40.169208Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydB5gUxdaG6xquOYs5YE4YMGBCFDFjRsUcMGcUA2IOmHMOiKISzBhAFHNCEQQDooJiVlTMOf79Fv+ZW9vbPdOzO7O7M/PV8/i4zHRXV71VXVNfnVOn/vNvlJySCIiACIiACIiACIiACIiACIiACIhAZgL/kZjOzEoXioAIiIAIiIAIiIAIiIAIiIAIiIAnIDGtjiACIiACIiACIiACIiACIiACIiACRRKQmC4SmC4XAREQAREQAREQAREQAREQAREQAYlp9QEREAEREAEREAEREAEREAEREAERKJKAxHSRwHS5CIiACIiACIiACIiACIiACIiACEhMqw+IgAiIgAiIgAiIgAiIgAiIgAiIQJEEJKaLBKbLRUAEREAEREAEREAEREAEREAEREBiWn1ABERABERABERABERABERABERABIokIDFdJDBdLgIiIAIiIAIiIAIiIAIiIAIiIAIS0+oDIiACIiACIiACIiACIiACIiACIlAkgeLE9H/+U2T2ulwEREAEREAEREAEREAEREAEREAEKojAv/9mKqzEdCZMukgEREAEREAEREAEREAEREAERKAmCEhM10Qzq5IiIAIiIAIiIAIiIAIiIAIiIAKlJCAxXUqayksEREAEREAEREAEREAEREAERKAmCDSJmM74kJoArkqKgAiIgAiIgAiIgAiIgAiIgAhUHoF4bLCMOrdxe6YzPqTyaKrEIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUGg2sT033//7f7999+StN20007r/hMHVJKcmyeTb7/91t19991u/vnnd507d3bTTTdd8xSkwFP/+ecfx39JqaWWOV+V8vXJpqjPF1984caPH+//+/DDD91CCy3kll12WbfMMsu41q1b+34wZcoUd+KJJ7oDDjjArbPOOi2yX7TkQk2cONG9/vrr7uuvv3a//PKLH4NatWrlFltsMdeuXTs344wzNmvxC42LTdEPGwugUB2Kyb/axvZi6q5rRUAEREAEREAESkigmsT0559/7oVCqdKrr77q2rZtW6rsmjWfF154wbVv3z5XhkUWWcS98847buaZZ27WciU9vEePHu7SSy9NLNfYsWPdqquu2uLKnK9A++23n7v11lsTL/nrr78cE/typN9//92dfvrp7oILLshlP9tss7kff/yxzr+32247L7Kfe+45N2DAALfbbruVozhVl+f333/vrrzySt+277//ft76denSxS9WrLXWWs3CYdttt3UPPfRQ4rOXXHJJ99577zVLubI+VGN7VlK6TgREQAREQAREoEkJVJOY/u2339zzzz/vRo8e7Xr27JnKcZ999nFLLLGEYzLMJO3TTz/1QiKeqklM77LLLt4qHabbbrvN7bXXXk3a37I87K233vJi+uabb653+UsvveTWXnvtLNm0mGvGjBnjTj75ZPfII4/UK1O5xDSW5s0228zRh0n0+fPOO88tuOCC3nKKFfWEE06o1+8lprN1mzvuuMMddthhdRYm9txzT3f00Uf7sYWFqscff9wvZoSJ9/CGG25wc845Z7YHlegqLOdvv/22u/DCC+u1eSWIaY3tJeoIykYEREAEREAERKC0BKpJTIdkbrzxRnfwwQfXg7X++ut7wR1Pn3zyibvmmmvc+eefn/uqmsQ01lwEVJiOP/54P7luiYnJ80wzzVSvaCNGjKhIN+Rx48a5Nm3aNJmYRuhdd911/nmbbrqpGzZsmJtmmmnqPB8hj9g799xzc59LTOd/G9h+wMJIOE5wB+PNgQceWO/mZ5991m244YZ1PsfF/uGHH/Zu9k2dnnzySdepU6c6j60EMa2xval7ip4nAiIgAiIgAiKQiUC1immsgauvvno9BkceeaR3zUxLZ511Vs6aVE1imsn/SSedVKfaLd1leqWVVnJYqcNUqWI6bXGgHJbpeN+/5ZZb3L777pva53faaSd37733+u8lpvMPm2eeeaY744wz6lzUrVu3RC8Ku+j+++93O+64Y5172GbB+MK+6qZMSeNipYlpje1N2WP0LBEQAREQAREQgbwEqlVM49K4wgorFC2mETdrrLGGt+JWk5gm+Bhuvtdff72fwGOVPuSQQ1r025FkTa9EN28gN6WYji+cYKHO19a4hOOazF7qgQMHul133bVF94vmKtyQIUPc1ltvXe/xjDXLLbdc3mLx/bvvvlvnmg022MA9/fTT9TwGylm/1157za222mp1HlFpYlpjezl7iPIWAREQAREQAREoioDEtHN33nmnm3feeXPuj7g+EyyomsS0dYo///zTB7yKu/wW1Wma6GKJ6YaB7tq1q7vrrrtyN6+yyiru5ZdfzhtRGndvvDJkmU5mznuz/PLL1ws0tvHGG7snnniiYEPZmBK/kHbaeeedC95fqgtqTUzX0theqj6ifERABERABERABIogUOtimj2QBAM69NBDc1GPcS3GxZh9riuuuGIRNKv/UizcX375pT/yJ2lPcxoBLP7sSyfC9HzzzefmmmuugrAKielvvvnGUR6sqsUuDlAOLIW0/aKLLlqwLEkXEMCOKM6LL764m3vuufPm0ZSW6Q4dOtQLMsVxV0SdTrOgEs156aWXbhFimjblOC/6F8e4FdPPrBHIg+CCs88+u89j+umnb1Ab2023336723vvvevlgdv3aaedVjDvSZMmOSzA8cRnBAfLegQfR25RL/ov/b5Q+uyzz/wldspBQ8U0z/3444/dH3/84d/9//73v4Uenfr9r7/+6qPH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5BuPC9iQYIarO8ymTJniF3XwIGCxh+jqxSbiA7DAQYC1uAXf8uIoJdys41sCkp6FKzRWe4Q3VlfaAsFniyqIc6yDWP8QfRwbFrq94pKPSM1n4U56bhggrlgG4fVY2Flsok9RBvrXTDPN5MvI4h6WyYacGd6YMsEUiyv7/enjNk7xzmBJZrGF9s+SCIpG3Xg3EY/cS1/Psu0gS/4t6RqC31FP6gsr24KSdKxZSyq3yiICIiACIiACItBMBCSmmwl8FT8WQYGV2AJHMflGWIUJ0YfoiO8zDwMZVTEiVa2EBLC8Y1XECwMr3GqrrVYvd0QS2xRCrxJZ7ErYCMpKBERABERABERABGqRgMR0LbZ6eevMkVFYC0ndunWrF405fDpnA4d7XuPRz8tbUuVe6QTiQbfsbPCkemHhRnSzXYBEwDUCfimJgAiIgAiIgAiIgAiIQIMISEw3CJtuSiGAG3G4rxCXUtvbmgYt3Cta6AgggReBkECPHj18ED0Se345RixfCvf1EijL7hVVERABERABERABERABESiagMR00ch0Qx4CWP+Ipm3RbYn2S6CnpEA97MXkuB6CGJHC86EFWQSyECBAFlGuLbHPvkuXLom3sm+cI7UICMXea/a8ZwkglaUcukYEREAEREAEREAERKAGCUhM12Cjl7nKRF7mLN4wIBRHXxGEiXOmJ0+e7D777DMvatjDSlRhoiKnnYFb5uIq+womwIIMgcTCaN8Ex2KrAcHV+J6+xhFDdrQcnhIcPZQ1AFcF41HRRUAEREAEREAEREAEyklAYrqcdGs3b47V4SzfESNG+KjZ7I0mwjCJiM0IHaKeE5l5++23rxegrHbJqeYNIcDCzMMPP+zGjx/vLc6ff/65z4bI5VifWcjhTOrNNtvM9zslERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABEagWAiNHvuYmTJjkpptuOvf5519WS7VUDxEQAREomsACC7Ry//zzj1tmmdZurbVWLfp+3SACDSIgMd0gbLpJBERABERABJqVwM033+XatFnWzT77bG6eeeZq1rLo4SIgAiLQ3AT+/fdf980337nvvvvBjR8/0XXrtnNzF0nPrwUCEtO10MqqowiIgAiIQDUR6Nv3LteuXVs333zzVFO1VBcREAERKAkBPHVeffUNt99+EtQlAapM0glITKt3iIAIiIAIiEDlEHj55bEuMsC4JZdcrHIKrZKKgAiIQBMTmDjxAzf99NPK5buJudfc4ySma67JVWEREAEREIEKJtC//wNu9dXbyLW7gttQRRcBESg/ga+//saNHTvO7b77duV/mJ5QuwSqTUz/8ccfiY1JcJZpppkm992ff/4ZrexHS/tB+u9//1vSjvDFF1+4H3/8MQqEsEzefP/66y8fMCGe/hM1zvTTT596788//+yefvpp98svv7idd5YbS6kab8qUKe6RRx5xXbp0cTPNNFOpslU+VUgg7R3knbz33nvdGmus4VZcccUqrHnlVama2uTOOx92HTuuV3mNoBKLgAiIQBMSYJ7/9NMjXNeuWzfhU/WomiNQTWL622+/dcsvv7z78su6EU0333xzd+GFF7pVVlkl174nnniiu/XWW3PXzjfffO6pp54q2cSXidsCCyzgxfQbb7wRBYlpk9q3Tj/9dHf99dfXK7fdsMEGGzjqcNhhh7m55poritj6uTvwwAPdkCFD/CW77rqrGzhwYM313VJXGAHdu3dv98ILL/isv/vuOzfHHHOU+jHKrwoIFHoHb7jhBnfIIYe4RRZZxH388cdVUOPKr0I1tcnll/eNLC3bV36jVEANWOjmPxbklaqDAEaXUhtPqoNMddZiwIDBrnv3btVZOdWqZRCoJjENUQbJs88+251zzjke8GyzzRZF9vsm8Yfw6quvdkceeaQ76qij3KWXXuqmnXbakjXKmDFjIje81X1+d911V0HL8Ycffuhat27tr99yyy3dTTfd5Pjs9ddfdyeccIIX5dTl1VdfdUsvvbT74Ycf3KGHHuoGDBggMV2iVvv999/diBEjIotPR58jVseZZ565RLm3jGywus8zjwIWlaI18r2DeIzQj/baay932223leJxiXmw4MO4UMqxq2yFbeaMm6pNmqKaxYrpqd42Q6PflA/cr7/+4hZeeBG3/vrtowXm5j065rXXxqYuIsOR37ollliyKZAmPgMPtk6dNnRTpnwTLbK+5Oacc86yleWLLz6Pfs/7+2csuuj/9sLzNxyaSszvt9/ekVvsGDdmzBtF1RVjxqhRr2S6Z+ONO2Uesz777DM3evSoyCjxuvcupM+utdZarlWr+eo8K2u5J0x4122xxaZu3XXXc3fcISNEpgar8Iskpiu8ASuh+NUmpmHOKvKOO+7oHnjgAd8El19+uTv66KPrNAdCCSv2yiuv7B5++OE6LuClaLd33nnH508aPHiw2267wvs15p9/fj+xQCRfe+21uWJ88MEH3qqOoOb/r732mv+Oaw4//HCJ6VI02P/ngUfBLLPM4v/122+/uRlmmKGEuTdvVrgdP/PMM+7KK69s3oJU0dPzvYNMxPNt02gsBvrn+uuv7z1U8IJRKkyg3G1SuASluaIYMX3vvXdHXk2HJD546623cTfc0KfJhFq8EIcccqC7//77UqGcccZZ0e/h4aWB1oBcfv75pyjI2+L+zlGjxkYid9EG5JLtlttv7+eOO+7Y1IuvueY6t9NOu2TLrBFXbbPNVm7kyJfd5MlTisrllVdGuq233jLTPZMmfZxpofrBBx+IvPDqWxRnnXVWd+ONN0cLHZvknpe13C+9NCKaj23tFl+8dVTP0QXLy3zy4osvjMR7qygq9P4Fr9cFLY+AxHTLa5OqK1E1imkaKe7y/e6779bZu4y1F9fqiRMnRkeL1F3hLEUj//TTT95iNPVHeJTfO1koLbfcco5y4s59zTXX1Ll87733drfffrv/jJXaBRdcMJoETXUllZt3IbLZv//1119zP/J4OZRTDGUvVeOvtMUdPDEkphvP03JozneQceK6667z2z4kpkvXppWQU1Yx/dxzz0YCbAdfpYMPPtRtuOFGbt5553XPP/+c69//DvfeexPdPvvsF22DurhZqm1iunfv8x2LyfHEgvQyyyzbLGWzh37yySfRwuqvkXU4f+yTxhbSxHTHjhvnRBseBU88MTxa8H/IZ//gg0Pc2muv09hH5b0/qyiNZ4KnzjPPPJ37+I8/fveLOAsttJA766zedS7fcsutCi7gjB492m211Wb+vgsuuCiyJK8fGUr+jng8Hnkfnuk/HzFiZLTYsZT/u5hyY+VecMGF/LtQKBHTZuGF54+2AK4UbQV8ttDl+r4FEpCYboGNUm1FqlYxTTs9/vjjbtNNN/VNhgUHqxzukAzSa665phs0aFAUlKBrnSYlaBji99NPP3VLLbVUNPnYsJ6gYqWSfbXssV5iiSX8dbho86MRptlnn91bk7NOdvOJaSzrJoLefvttx7X5JvL8AGDBZr827mHrrbde9KNT313uxRdf9K7NX331lbekd+rUKXH1nWdi6WcPMdZxVobDPejUOwu7tPcHi/z999/vWIRYddVVvaClzGHKkv/777/vHnvsMb/IgAvsE0884cu11VZb+baKJ8QzbfnKK6/4yRz9xDwKsohpyste6+23395h9Ro5cqTDk2Dbbbd1c889t3/c33//7fMfP36873d4Q8QT+dAvEb0s7tDv2B+fJX3//ffuvvvuc5MmTfIB01i4od8TwI701ltveZdjGG+zzTZ+sYa+GefLtfQb2zNuz+batm3b+n+yzYA+TSKwFqv1lig72xK+/vprz5BtDuGeczjBm0T/XWmllfx79vLLL+fyWG211er0U9ruwQcfdAcddJBnQx6dO3cuGNQvS18pxM0KxTvEohtt/Oyzz7o333wz2q+6u2+ffO/g5MmT3dChQ6OJ8X71mpG6sBUEHvQH+kU8pb0TjD8sBl5yySX+FrZ6UBbaPWyPpL7DhJc+yrMZszbZZJPEfkYbc824ceN8P6aMSYHUsrxvCALeyTBRXwIzsrWCvmtp4403zomqLGMYi6ZY5rmPiTF9lz7aoUMH7woaT41pE8r65JNPel5rr722H1v5N32ZcTNpDyb9G960N3Um/kWSt0uW/hDWJYuYRgRuuOH6fky96aa+0ZhU1zvqq6++dBtt1CF6X7/yYhpRbYk+ZgE78YCYPPkL7xqez9WY9uK9I05A1mRiOhRFSfcSRIj/wiCidp0FErXxzq5NK4PlkRT00+4hr3h+dl+8LPzO8B6zoGX3JD0b3tNMM21umw3PD59jYvryy69yu+22e50sTjnlpKgNb3THHNPD9ezZq172/MbQ1xZeeOGC7tOFrk0TpfnaIKm+/H4uuuiC3i17+PAns3aJ3HXnnnu2u+KKy93VV18bbZOrO0/r27ePO+mkE6NxsKfr0eN4f0+83F9+OTl612ZMjHsSZx+vGy73tM18883vf9epB2L6iSee9s9K6odFV1A3NBkBiekmQ127D6pmMU2rYoljbzQJMYoLNZNOhBXu12EiIBn7p7fYYgsfNOill17yghGRZ0KUySgiYKONNvJCnDxuvvlmfw2T7TC1b9/eT+748coy+OYT0+uuu64vD4lJHRO3tIk8E0aiezMJop4IECbHF1xwgZ+EWzr22GPdZZddlrOCn3feeQ6BgbimjpZ22WUXLxAJ2vbee+/5/x9zzDF+n7mlLOzS3jLah33u5557rp9o9ujRw0+MmchnzZ/J+kknneQn0iTaJd4eiFkTylzDZBP3eyaBiDVEEt4KlvgRTZs8Ujbq37dvX385jAkKR56WCAqHmNx3333r7Au844473B577JG7DqHNtgQWEegnDz30kPdquOeee9xmm01dmU9LiDxEK8KBvn733Xd7cXXEEUe4q666yt9GW5EXZWOiy3Po1/COJ1gQEM++Q0CRD2KFxAIVZUW0wRiRRd/q3r27Z8Ee4RlnnNEvVJF4NyzSPG3E94hE2vjiiy/2k2+upYwkYgUccMABXnzRL4wFnhp4Z5DWWWcd30fTUpa+mIUbz+zXr59fCKEOLCpQH9Ipp5zi+2zSO0gb3HLLLb5PkMJTA5hgHnfccX68QPDxTiNIyZ+91bAj5XsnKM+pp57qHn30UX8tCyeMB+eff37eQIcsnO2www4+mCHjSZ8+ffz7ctppp7kzz5xq6bE2pn8iDhgLWTQ0BpSLxZ5i3jfEHGOL9SkWImh7vGvob7xz9N0999zT9zX2jBYaw1g4YouLMaZdCB4IS0vhe9aYNoEt7zD9nb7eq1cvv1BpASB5Hu/+jTfeWKdL8m/amneRhTrajPvZVsSCEClrf4j39Sxi+u6774yefVhUtoOiGCLnJb4u7EXdaqvNvcX6rrvu9deYay3WwBdeeN7/2xLi5dhjj6sjGj/4YFLUtud4iyFtPe+8rfy4etppZ+b6c+LDow+ziukbbrguyu+UaGy7s45rL9tyllhiUf8Z35E6duwQLSD+77cjfPZSSy3tXnzx5Wjx+MvoXVkhrVhu//0PiOp0gf++Q4f1vFB9770P/b979ToxGgf6uDvvvCfqc2dHC4hTt12xwIzw23LLqW1raeDAAVHfuD5XpjXWWDMaO3p77ptttkXkcdbfX5pPTOMKDyu8C846a2o8GBLssdI+/fRTnj1lYD/yySefGi2W1V08znptkpgeMuRh163bPpHhYOloUf2hevuVk0A2VkwfeujB0ULbPdFv1/3RIlSHOo9g8eL999+Lfidnd4stNnV/uZV76NBHo3newT4+AAkRfOONfXIeDhgO2rRZ3i8uscgUtmnfvv2isfB0f+9WW3X23ghXXnl5veoV6wKfxEef5SfAe/X448P9No+kU1XoA9ddd020ILxpwdgPEtPqbWUnUO1imr3RCAebZO2///4+IBiW1tCSjNhgQmuRt1m53GmnnfykF2slFimEDlHBEZNMivjhYqLMxAjrU/x4Kib/iGkEaJaUJqYRN2edddb//+De7iedpKSJPJNTxFK7du28uGF11Szx3MMEHIHGJJ4JdShMmHAinKkfE3OSXWf38dlFF13kxbW5omdll8QAjqymY3lHnNgzmcwbtyz5kw8iEqsriTZn8YRgW1ipaQf+j1ssiYUGFgz4wafNLbAME3AEHymfmMbVHibduk3dz4VIRcRhfcJiaHVZdtllvUCAM0Lk5JNP9mIEsUCywHOILybsJPb4Iy4R1FisEB1pCYs7giJsHzwl6O9hNHIEAILGRGxqhv//BQsReCLQt5n8W6J/YalEZCLMSFtvvbUXFnh+IBBJzz33XO5vrLME1SOZh0W8HLbwZGIaqyj9y8QriwW8Y3BC2Fv/jNcjS1/hPc7CjTqw+GSLWIhA+gx15/nUP+kdRGgNHz7cHX/8VItJKKYRjVgzEbYstGBZpa+y0GECPcs7wTWIexKWX/OCSGtX+jjPQXDSF0j2bvM34hRLNV4C9FUYs3DC+EGb0x9oY757/vnn/cS9mPcNBoh4uPDOWLvybIQ64xUseA+zjGH0MzyIsPRaYvGK8rFoiEBnAdTGkMa2CYtnjOe2WMf7zTjMosLBBx/si/DRRx/lvHoQ0nxOH6Jvkxg36U+Ui8Uc2GbpD0ltmkVMn3rqyV7EIfo22mhqUMV4ol2WXrq1/3jixA98me67795oAnuQ/32bf/4F/Ps9YcKEyMti6ukR119/U9T3d/R/M8YgCnEXR3yssMKKUf9+3Hs1sL8XcZnPWttYMc3v+5JLLlZHTN92261R0NFv61R15MiXvNinjLfccpsPLomlN57uumuQrwtCGkFNiotp9jUjfOGz6qqrRX1u3VyduZ59uOzHJZkI5Vr2p2PpfPTRR3xAMzwCsohpGO++e1cfhOv++x+MPIrW93kjCjt33sILv0033cyttlrbqH+O9vXk+YhKc2Mu5tq4mB42bGjktbCX98BA2FKHLKmxYvqWW26OrPAneAF/7bXX+/rlS1ZuWHfosGFU3uX9QhDtyQLPqFFjvChLEtNhm9LnMZassspq0dxkIT8+XXDBeb69jzyye5THjH5RQ6m8BGwxkC0BvLPhOML8fL/99nH0zSTPhXjJJKbL21bKPSJQ7WKaRmbiiiC2FAoXPsPSS7TMFVZYIbcvmc9xPzRxxmSCaxCbZuUw8YPFgjziLuNnnHGGn7AOGzYsU18zMY0AY7KPkEIIY8lDWDGBCwOpJU3kEdAsGODeHFqXEXlM2Ckz9bcJLILA3Cxtcs2k18qM+IQBlheCLWGpRUgiJhCrxbBLgmCTfKyrTLRNFDB5N65Z24YfSdv/jki1FWtELkKMPoAQIJlgxaKKdd4SllITr/nENNczoFsUZdybzX073C8f7tVnUmSu21xDoDPbC4/lw/Lib9tjH++rcYZYiVnwYXKOiCZhTURcs4BgrtwmphF4LAgVSuECDG7ivBskxAOLTLhyY7HDcoxLO+KLPhcm8wphoQGxRt/BAsp7ERfTJt5NTJMPwsU4UB6Ljp9W9mL6YlZuV1xxhbe68/6xABJfIU/zDsELwtyiTUzbZ9SfhR1LWC9ZxLFFlkLvBPeFYprTCgptCUB8Mp7wXpj1m3IRb4GFRazPvHssxNGXWTwMhSp90tx3GWN4n4p53ygzebJ9gRSWmYUjJt62OJd1DCMfxjj6J8J+t91283nzLuBCTgoj8jemTcjLPHnwYqHdLVngSMYv3OZ5NxDM/B26sPM59WcrQ//+/f22D/pIof6Q1N+ziGlELgLstdfejLwM0hfkunTZIRoXn40WUkZ5a6aJaQTZo48+nutbgwYNjH5/jki06GFpPeigqX2axZC9997Di7p8Qp5rTUyfd94F9RYNWfTafPOpi3BplukkMR3nhctup04do/Fq+miB6OnU0wyeffaZaEF8Ry9w+/W7PedNliamsWwSvM28zmADIyz6++7bzf8+LLPMEn7hCWGLRZrEQi7PIchXkpjmGhYiuP/tt8d7izZC7uyzz41E9f88mkwAhq7O3HvRRRf4gFnhXvhirg3F9KOPDvNtiav2oEF3F3USRGPFNF4H++67V24fNv2RRSEWE1g8sECh1t5WbjwnTjzxpFw32GKLTfzizrBhw6PtSqvnFdMseLBYFMZK0Z7ppBGo/J/h0Um8hxdfxBByWDR3mGpsIdlCIX2BBZ5Cp1lITJe/vWr+CbUgpmlkrI1MWJkU48ocrnKFwgEhm5SY/CBI77zzTj8BJSFaEQdYVpMSwgDrSTjxytfhQjHNM/iRxnq++OKL+0lYfK9d0kQeYYPASasH4gqBRoKD/SAhvrDoYEkJI4bj7m6iFDGKCA33dxbDLqnuUy0jS3tLKmIC622XLl1yE5Ri8seyZWKcBQjbP4qARhjABEFBMtEQd88PA5DxI1pokLZ98VjAwj3p1r8QIaEHhF2PaKd8ln9aezGBN8tXEj8mXLQjYgqhhNUUTwYSlmX6A8nENJYx2jlLYh8oVtTQoo/4p51w0yWxLQLLe1Jgs3ARyxYVihHTLP5Y9NzQuptW9mL6SlZuuKAj0nBbjW8LoRxpYprFN2tTK3vocZDkbYDIZZGLiVy+d4LnFiOmWfxijIp7GcQ5hgtJSXEebJHGjvsq5n3jWXBo06aNF78IZxbpmDDjTo5Xg+3LL2YMS3qPmYTZ9gzqZIGtGtMmLBzx7mBdjm9xsfeEaPks0piHDx4qvL9pKWt/SNqLnUVMr7TS8t76+emnk/PudT7qqMOj37VBueBWJqaPPrp7NG6cmis+onTVVdvU2QNrLtWff/5Vna1Mzz33TDQR3jG6/5RIgE/dwpGUCkXzNnfahoppBF2XLtt74frYY094S3JSwqugY8cNIrE4r78uPAIrTUwPHHiXd6m2ZO7xRx55dORlclq0gPh+ZLVeq87ig12LQNhhh21TxTTimYQQt4RVnUUHWxihXPyexds3SfwVc62JUo6N2nPP3fx7OWjQPUUfC5ZPTLOw9MknH9drCkFZ6QAAIABJREFUiplnnqXO3IXxYfDg+93Agf19G4YJxrC2ZOUOPQP47tJLL/aW5auuuiYyhuyaV0yHln/LV2I69fUt+xf8zhGEjvmDxRK49da+0WLJ8b6fDB36WC7Qb77CSEyXvan0gFoR0zbpR0yz7zlMNmFmz23SPtLwWlaVEReIFktYNrEYx93ZEDNYmXDfzJLy7ZlOuj9pIm8uvtTRoomnPRtLHu6WuP/ihourJRboUExzL2IJfpa4hoki+RfDLq0cTKQJjGWBrRDtWJMRFMXknza5x0KLq6WJ6XCyHRfBoZjOstc9TUzb52liGoHDjzQLFbgwE6SooQkXVEQqrqw9e/b0e285UzdJTIcu/IWeFwbwQ5QQFI56jR071i9GkNgygEUO65qJeMsXq5FNCm2faDFiOrSGZhHTxfQVypiFmy2elUJME68B92Pc8hGm+VK+d4L7QjFt7tFp+bEgguBjGwpbXNJSuPjBe2AWbLuePb/nnHOO9xBg4SLr+xY+z9yfscgSo4A2Y/wM+38xY1iSmA49RgqJ6WLaJE1M2ztgYtr6OJ485J+Winl2PI8sYhohNHz4Y/585HyRqDfddGO/73f8+Al+MdLEdFIgrPnnnycX1dj2K1M23GjDhIgnYem7+eZbUxmYmL744kvrWc9ZTLajjxoqpm1/c1JdrFD09W237ewZPP30c95VPUxpYjoeNI0I0Zts0tHv8eRIL3OPjluOydtcjQu5edOX6cN33HFb9Jt7kXe1fuqp53x0cY7sQugOG/Z4Pb7WphxB9e+//2S+ljHeRKllesUVV0cGhKleH8WkfGL6sssuibzb6sfswHqPFT8psZ1l1KiRkTGgb8RgakAzFhe6dZvqjm/l/uKLr+vMxRDjBx98QCSqr4hileyZV0y/9NIr9c41l5guptVLfy0GHbwL8GY68sijIo/IK7yHBP0+61F1EtOlbxflGCMgMe28yx373xB0RA7OkrByY1kxAcieZiabYWJyisuhBU4qlG8pxDSDCxa9QsdxIRRxS2cCaO6J5vodF9OUm/zYx8wKIYmgR+yFRWwUyy6JAxMGAk9ZUB+sn7hm4X6aNf+sk3ssuWZ5YBIfRv0tlZg21898YprJBvtUSVms4EncbI8r7vr0SSZDtoe5sWIaAYtLKm6/CARcZ3Hvt3POKY+5Z+OlQUCrMIXRdxH3eFeUU0wX8x5n5VZKMY17MN4qiEdcxwultHcCT4dQTId745PyRLyzbST0zEi6jvfNXOltD3V4HQtouKSzn5D3Muv7FubBIp9FeGeRi8Uf9lDblhmuzTqGcW1jxXQxbZJVTFMnvD+SjjgMWRTz7Hh7ZRHTuPri8ouYRdQmJRM89KkxY97wl5iYThJRoZgOz2COW58Zzz7+GGtvpzquyfEyNH7P9NRzoMMAZPaMe+65KwpSd2jBo7+OPfZof0xYuBc8LGeamI4Lr7iYHjt2TOSmvknkFbdP5Mnzv2Cd5D1u3JuRVXvDTHumrSzmjo/gX2yxxf1e8Wxi+t/M1yaJaZ7/7LMveiFfTMonplmMe+21MfWyY79y585bF3yMWSfXX7991F+nBshLi0IuMV0QZ4u/gHeJBS8MQHhockRcoT30YaUkplt8E1d+ASWm6wbisb3RYcsyycSigwWXCSUurbjesVKKlRZXYRIr9eGeSiYUCIqsZxWXQkxbYKU0ccMED+skwXpw/cUN0Y7YSRLTWBRxX8aSxB5iJom2aIBLOO6UBDIjFWKX9LZgGcbSiWs3icUMrIAkgiWxFzdr/sVM7s1yzD700HMgFNN2fEa+tzzNMp1FTOPmbX2DM8QtsJw9D5HEhBtBlxTEh5VaxDjCCkuHBZsplZimHGbtxQuBRRaCcFkcAb4nEjQMw6BKVn4725p/m9uwien4XvWkPdPFWqbDgFr5+iL7xrNyK6WYDgNQsU85Pi6wVxihyQJGvneC97YYMR26N4eB6qyd4EZAQRYTzZOA8cG2s9h1tr/fXPqLed/Cdwg3aVyc6U8s1FgwR7sm6xhGGzZWTGdtE8anrGKabTQWmDDcbmL1wzqPpwwLhxaQLF9/sLExZJhFTBPoau+994w8jtaOFk0HJx7dRYAy9h9ut932UbCyqZHqs4pprjWhOWHCpEwnVsTH0qxi2o5CCgODkZe5UsfFtAlbxObgwQ+nRhXH4tujxzF+vzf7vpNSQ8U0vyWtWy/irfbPPz+iTlwDInBfffWVRYnpHXfczkdXN1fkYly3i7nWROkHH3ziXay7dz/SBzSLu7/n+13ku8bsmWauceKJx0WeUHN4K388WTR2i87O9xLThVqksr8nmF+fPjdGRpeDMi24hLWVmK7stq+I0teKmMbqiUtzkps3rtvsS2big4sxQWMskBViDzc+AnJhmWM/H+55Fp0YCy8WH/b84rob7oXEjZSJImeS5otoah3FLDJJQjipM+EySlkIisakn2RulPwdHg2DsEf0IGq4xlwTw3vZx8gxLqEFi0kvFrIwejJ7eMmDvYEIt6zskurACjWCkf9bYiKPaKMsTHaz5s/ihgnKcBKLFQ1RHtbL+oNZwG1fcygAC1n8KG8hN+8wwm94vfUV9uMiWCkHFkSzDLJXjv2X++yzT51jtEKG5r7OZxaFnvtwk6X+tA/Bwkh4TuCGnbVv2XPoNxyvZkd+haKda3DVtcBr8aBVFhk9dJG2aPhhkDuslSyYsJeW9sb6SQr3TGdZ2Mj6HsPGIiwX4maLCWleK0nvIGVHHFnQNnNRZzxgzzAJQcoilglqE1a8B1yX751g2wUr9OaGzdiTdIZ62IYs1FlcAjxRELKMXbiTM4bQdiwA4X1CMK+kgHI2PrHoRtyEYt63sN/SzhYcMTzCza7JOoZxfZKYDtmEbt6NaRNYEzSP4/Die6YJ7sbCorl5hwHQiNWAhwgxDVhsxXuChTM8NQhAlqU/xN3tqXcWMc3zdtxxW+/hQ2Tq3r3Pr/M7ZAG3yO+RR4bnxp5ixLQFtjr99DOjRbYjcs2Me/nNN98U/V5uXxLLtJWVwFPs5bVkZxGHYppFno037uC3c2FRTYtpQoDDLbfc1C82YN1MW/RuqJimjOztxIrKMw4//IioH8ztXe+vuuoKX4VCbt5cw9hH/bt2nTqW47qNBfmEE46Ltpvd4s9ZxpXcEu7TuFHvt9/+0e/21GCTxVwbF6VE1CayNuz79bujYBwRK0djxDR52DaFpDPSr7nmqug3jUCO/wtMVS4xDf8FF5y6jeHDDz8teNxbONbp75ZBQGK6ZbRDVZeiFsQ0k0b2A9uxJlhhEGhhsojPfIbgRiwjhLDaEGyJiRQJMc0EjQkpViQm8AghBAOTJEsW9Id/h0cDpXUmJvgWKAdBxYS10NnUJghDkchEEiuyHQXGUTFYDQlKhtUcsYiLs1kIKQ91Y+KBmDPRhKsizAhqhfUxPHsaKyKTfixeTPSyskuquwWNCi1htkfbokhnzT8Ul6H7drjn27wHQqEGH/bLw5vozVjLSLizshc+fl611YOFFvZ1kxDsXE8KLXZh24dtTFA0Fm5CYcG9BImys6YLBYwKo4PTZxB8tDPtwiIO+RMNmzqFR37hZsxkHg8Di5adb5Bj7ydn+qbtubW+BEe4s58JywLl5/1hMm+RxlmUsoUoRAkeHoh+FgHgQx54P7AIEO7ZzhLNmzpk6SvFcDPLO2OCRTAPWSW9g3xv+5T5O4xcTRRsykiirrQR/Zb3FVYsvGV5J7jfxC3Cl0UxBDFiLSmF5eF7+gvvAMxDrwjGNsYT+g/vDWKXRH/p2LFjnUBzxbxv8TJZ0K5w/71dk3UMY+w1T6Aw2Fform7vWWPbhPttATJ8L8P4C8TbYBwh2eKV1cnamX+zWGKR3rP0h6T2zCKmue/LLyd7V2N+j7CQbrHFln78R5zZ+ci33npbnbORixHT8SOXiJbMFgGOtcHL4fHHn6q3BzWsT1bLNGPqmmuu5scJzg3GbZ1xmn3JpFBMH3hgN38kEmdnc2xVmLB0HnDAgX5hY621VvcB2vbcc+96gpvFHosk3hgxzTi4zz57+sjmYcLCzn7utGjeXbtODXKKdfvJJ5/IBSI7/vgTo8XGE/x3LGZtueVm/misjh039oHhaFP2E2Oxfeihobno28VcGxelvI9EVSYAWDxSdlLftM8aK6aff/45HzyOhJCnb5FeeWWkryP9a/Dgh6LF3FX85+US0+TNee30aTwdOnTYyAfWU6ocAhLTldNWFVvSahfTuDEzWTeRaA2FZYwAXqGoxnLN5DhMCA+sSBZ1GWshk0gSR58wgWXySdCncAWcCTSighSeNZrUUTh7mImr7b/mGo6hwToV34fNd0zq2e/MBNkSkzVEDxYnjvBB+PBcS1hI2K9p+56YXLFPkUUBFgOwSBFEChHDZ1yPwIUd7u38qBM0iYUIfpgJwGbWPZ6RhV1S3REOuHUyqWcfNuIKplgowyjWhfLnyCaiDJMPCaHCIggTO1sI4XNEBIITSzSWIVxZTTzDHBda3JjpH7ZX2/Z4huXneYhBxLC1F5ZfWOL6b+XgO8qBBY362CIH1+HGTn9DgOLKGfZR8sCKG0aVTeLH0WV27jlinsk8K+kIVgQgbYcQnjoZXTP3fLYtxM9FT8qfz2wRIN+ikB1nxDNZfEAwkPCYsAUHy58+jcCnv9Me9H/eKaJlY4lnUYDzosN3gnypB/UplAr1Fe4vxI1AW2xx4F2wRJ/CQwNu+d5BxDKi1voA/Yq2xAuByTULNHbeufUd3k0LSpb1nSDyPWMTiXeHNs3XX3ivEG9hH2SfO7zDhHs919k4gGjnnaHdeJdY7GnI+xY+g7ZGfKYF3is0hvGusIBpC6T0DzwaGJPgHLKnPbD8N6ZN7Cg1qwMxCvhtYHHVxg++M1GPNwK/L7hx27hObAZ+J5Zffvkciiz9Iam/ZxXT3Dtx4oRoK0uvXNAmyw/X3ZNOOjl3ZrR9bmI66fzWpZZa3O/XfeqpZ3PFwtX6vPN6e8Fo0afbt+8QLSicHXkgTPXESEvsaWZvczyYV9L1tPURRxzqzw0mMYZffPFl/gzmUEyvt97auWvi+VBnoj2bm3BaucJjpYhY/tFHH0Z5fugvN2t8PGo0R1hxrQUgC/NG8CICGZvXWWc9b1leaaXlond+K38MF4mzq8k7nqjn6quvEbVTl3p738m3d++zc+wRmLA4+eTT6hkMsl673XZbRwt7I6J5xJRcUex4MRYf8AxA3BZK9O1FFlkgdV93ofv5Hnf9o446wh8PFiZE7dVXX1cnsF5SubnnoYcejH5n94t+c6YGUmNutsIKeBluF82J+uZtU3sm5ejVq2cuonjIJks9dE3zEpCYbl7+NfH0ahfTxTYibq0E2WIyhFt3/FgSRCXWEKxbCFKsySaa489i0GZ1lqNfmiPxfFwO2VtobuvxcsSPaOJ7hJedW8uqNO5v/B9LPT/WuLInWc0LsUtigGXHomYTtZG/WeBIcrlrSP5ZuLM4gGUeV1naHVf48DirLHmU4hr4YulhwcP2rmbJl7YhcrYdC8Y9/Ju+Gz8vE2s6/SF+zFq+5+CxwMILIsuOHEq6nskTCxT0KSw7ae6V3ItVEcFki1kWkTrLdogsTLL0lazcsjyv2GuwjOF2zHsGg/B9KuadoL8wxuRjHS8b/Zt74t458etoH9z4Eei0Z5K7cbH1tusRFZTdvHHS8skyhjW0DPH78rVJQ59BPVnQg2Ha7wR5F/vsYsS0lR0r9ccffxIt6PzhuSOKCx39V0y96be8+/RpxGK5Er+9f/zxe3S04HyZtk+VqxxZ8h0woH8UXPJPf250yKRPn5siwduznot2ljyTrqGf8b7SroU82oq5tqHlKfV9P/30o/e4om7LLLNsWftXvrIz/+M3qpRjYalZKb/6BCSm1SvKTkBiuuyI9QARqFgCLC4QhRvvAVz/lURABJqfQEPEdPOXuvZKYFZsLLkcyzTbbLNHwcieiyyiN3grPsdAcRyUkgiIQPkISEyXj61y/n8CEtPqCiIgAiEB3Clx4yc4ElY1XKuTohKLmgiIQPMQGDToocileL0Wb5ltHjot56l4Xxx7bPdoW8SweoWK71VvOaVWSUSgeghgEHjqqRcjF//k4wGrp6aqSbMSkJhuVvx6uAi0OALsx2f/rSWivIfHYbW4AqtAIlBjBAYMeCDai9omch2fq8ZqXpnVJfAne73ZTrTsssv5rTyzzDJLZVZGpRaBCiLw9dffRGeavxXF0ti2gkqtolYcAYnpimsyFVgEykoAyzRnMRM4ifNyDznkkLI+T5mLgAgUR2DkyNeivbh/RwGYWhd3o64WAREQgRoiMHHiJB87Zq21pkZ9VxKBshCQmC4LVmUqAiIgAiIgAmUj0Lfv3dF+25WjgJDzle0ZylgEREAEKpXAZ5994caOfSsKoDr1jHYlESgbAYnpsqFVxiIgAiIgAiJQNgII6hVWWMrNMcfs3uW7VNHwy1ZgZSwCIiACZSTAHukpU76NTtz5PjqZ5/1ISO9cxqcpaxH4fwIS0+oKIiACIiACIlCZBEaOHBsdgfihP+bq88+/rMxKqNQiIAIiUAICCy7YKjrP/V+31FKLu3btVi1BjspCBDIQkJjOAEmXiIAIiIAIiIAIiIAIiIAIiIAIiEBIQGJa/UEEREAEREAEREAEREAEREAEREAEiiQgMV0kMF0uAiIgAiIgAiIgAiIgAiIgAiIgAhLT6gMiIAIiIAIiIAIiIAIiIAIiIAIiUCQBiekigVXo5aNGve4mTJjkJk+eUqE1ULFFQAQaS6BVq3mi6M9Lu9VXX6mxWVX9/Rozq76JVUERKEhAY2ZBRLpABERAYrr6+8CoUW+4X3751a233upuuummq/4Kq4YiIAKJBP788y/34ouj3ayzzuzPKFZKJqAxUz1DBEQAAhoz1Q9EQAQKEpCYLoio4i8YOPABt/POnSWkK74lVQERaDwBJof33DPU7bbbto3PrEpz0JhZpQ2raolAAwhozGwANN0iArVEQGK6+lv78sv7uu7du1V/RVVDERCBTAQ0JuTHJD6ZupEuEoGaIaAxoWaaWhUVgeIJSEwXz6zS7tCPQKW1mMorAuUloDFBYrq8PUy5i0B1EdCYWV3tqdqIQEkJVLOY/vfff6P9Ln/W4fXf//43kR/XcX2YpplmmqpwjdaPQElfGWUmAhVPIG1M+Oeff9xff/2VuX7NOUZ+9tlnbtiwYW6bbbZxrVq1ypX5559/dk8//XQUJ+KXaHvLzpnrEl6oMbNB2HSTCFQtAY0JVdu0qpgINJ5ANYvpb775xu25557ukUceyYEaOHCg23XXXeuBO+aYY9zNN9/sfvzxR//dfPPN50466aTIPbp74yE3cw76EWjmBtDjRaCFEUgbE1588UXXo0cP99JLL2Uq8eabb+4FbXOkrl27urvuussddNBB7oYbbnCff/65O/DAA92QIUN8cRjnGe8bkjRmNoSa7hGB6iWgMaF621Y1E4FGE6hmMW1wmFxtvfXWOVavvvqqa9u2bT12kydPdgsssIBbdtll3ZgxY9zMM8/caL4tIQP9CLSEVlAZRKDlECg0Jhx55JHu6quv9gV+/PHHo6O0Vvd/473DguOECRPc0Ucf7Rcdn3rqqWap2IUXXuhOPPFEd+ONN3oRTfrhhx/coYce6gYMGCAx3SytooeKQHUSKDRmVmetVSsREIFMBGpBTAPiP0FFF1lkES+W55133nqM2rdv74X2VVddlYlfJVykH4FKaCWVUQSajkChMQGBevDBB/sCffLJJ27hhReuV7gnnnjCnXLKKW7EiBFNV/DYk9ieM/3009f59Nprr3WHH364xHSztYoeLALVR6DQmFl9NVaNREAEMhOoJTGNxfndd9/1bDbddFM3dOjQenuid9xxR9emTRt31llnZWbY0i/Uj0BLbyGVTwSalkChMeGWW25x3bpNPQHg008/dQsttFC9Av7+++/eat25c+emLXyBp+Hyfcghh0hMt6hWUWFEoLIJFBozK7t2Kr0IiECjCNSSmH700UfdBRdc4J588knP7Pjjj3e4CoZpl112cSuttJI7/fTT63z+3nvv+b2BH3/8scOyvf766ye6ir/++us+8M0666zjJk6c6PceLr744m6DDTbI5ffVV1+5xx57zM0555z+89lnn71eG77zzjveev7rr7+6lVde2a255pr1rrnnnnu82+VOO+1Ux/Iev1A/Ao16RXSzCFQdgUJjQiEx/eabb/qxcMstt6zDhqBgo0eP9kHBGOewWhPQjG02FvyR8RHXcNzFGf+SrN7s3eZe8lh++eVdp06d3KKLLlqvHd566y3H2MzzLKWJaQKT9e/f36266qpu7bXXztumhfhUXYdQhURABDQmqA+IgAg0jEAtiWkmcFidcePGdZEUD0iWJKbvvfdeL1iPOOIIL6KvuOIKL5LDe/msb9++DjF91FFHOaLcXn755blGWWuttbwlnL2IgwYNyn2+yiqruBdeeMHNOuus/rM//vjDHXfcce7+++93HTp08M95//33fVTa2267zc0444z+uldeecW1a9fO/801+SaHmhg27N3QXSJQrQQKjQmFxHTPnj19TInTTjvNIyLI4zXXXOODf7G/mrHSLNt8z95qFjEfeOABd/LJJ9fBOm7cOLfiiivmPjv22GPdZZdd5vMjnXfeee7777/34pqFTsbIK6+80t1+++1+vO3SpYtjYdFSmpi+9NJLfXA10m+//eZmmGGG1OYtxKda+4XqJQIikExAY4J6hgiIQCqBWhPTG220kZ+AYZ2wFAYki4tpAtpgicaKgmWDCSTWF6wpTBqxwpCYKJ599tn+SBYSVm+EM1YYRPGXX37pPydgzmGHHeYnhB07dvSiHpG81157+e+5h7ywzMwxxxzu22+/dQhurmN/Is8g4XpJuUiI7SWWWEITQ73nIiACmQgUmhiGYrp3795urrnm8vliZWarDMHJzjzzzJyYfvvtt911113nRS6JbTSXXHKJW3DBBd3uu+/uhg8f7j/HJZwxDG+dfffd1z300ENedHOSAomFwXXXXdd79the7LvvvtsxLjN2nn/++X7sfOONN7yXEd9lFdMPPvig22677bxwf+211/Iee1iITybIukgERKBqCGhMqJqmVEVEoPQEalFMQ9EmaPwdBiSLi2nEMEIVyzGu19NNN53jLNZpp53WNwYTOwuAgzUFqwpWZI5ssYQl5txzz/WCGeFsCesOE0ITyePHj/cTvTPOOMPv+bOEpfqOO+7w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QATyEpCYrv4O8uqr46LzWn+MzqxeU4K6+ptbNRSBVAJMCl94YVR0BN/srm3bFUUqhYDGTHUNERABCGjMVD8QAREoSEBiuiCiqrhg9Og33bvvvu8mT/66KuqjSoiACBRPYP7554nOpF9GQjoDOo2ZGSDpEhGocgIaM6u8gVU9ESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6cpp71KjX3YQJk6KI3FMqp9AqqQiIQEkJtGo1j1thhaXd6quvVNJ8lVnLIqDxvmW1h0ojAs1FQGN+c5HXc0UgIwGJ6YygmvmyUaPecL/88qtbb73V3XTTTdfMpdHjRUAEmosA556++OJoN+usM7s11li5uYqh55aRgMb7MsJV1iJQYQQ05ldYg6m4tUdAYroy2nzgwAfczjt3lpCujOZSKUWgrASYXN1zz1C3227blvU5yrx5CGi8bx7ueqoIZCXw5ZffZL20wdfNN9/cuXs15jcYo24UgfITkJguP+NSPOHyy/u67t27lSIr5SECIlAFBDQmVEEjplRBbVu9bauaVQeBphbTUNO4UB19R7WoQgIS05XRqBpEK6OdVEoRaCoCGhOainTTP0dt2/TM9UQRKIaAxHQxtHStCFQ5AYnpymhgTa4qo51UShFoKgIaE5qKdNM/R23b9Mz1RBEohoDEdDG0dK0IVDmBWhXTv/zyi3vnnXfc33//7RZffHHXqlUr39Jff/21+/77791SSy3l//3ZZ5+5YcOGuW222SZ3TXN0CU2umoO6nikCLZdAucYExkT+y5oIiPjPP//4/+LpP9EPzLTTTuv++uuvxOy4d5pppsn6qNTrvvnmGzdx4kQ344wzuiWWWMLNNtts/toJEya4eeed180111yNfoZlMGXKFPfII4+4Ll26uJlmmqlk+YYZlatty1JYZSoCNUigGDH99tvvuU8++dwtssiCbvnlp84ts6RwzzTXa1zIQk3XiEAzEKglMf3HH3+4888/3/Xv39+9++67njaTrh9//NH/f7PNNnNvvPGG69q1qzvrrLP89/x91113uYMOOsjdcMMNzdBCUx+pQbTZ0OvBItAiCZRrTDj55JPdueeem7nOffr0cZ9++mmdcdXG1k022cSdcsop7qijjnIvvPBCYp5LLrmka9eunTv44IPdRhttlPm5X375pTvxxBPd0KFDHX+HaZFFFvF5PfDAA+6+++5zlKOxCQHdu3fvXD2+++47N8ccczQ228T7y9W2ZSmsMhWBGiSQVUy/8877bvTo13OE2rVbzS29dOtMxCSmM2HSRSLQ/ARqRUyPHz/e7bnnnu7VV191K664orv++uujY2XWcDPPPLP74IMPXN++fd3ZZ5/tG+SYY45xl156qf/7wgsv9BO2G2+80R144IF1Ggxx/vvvv+esIOVsTU2uyklXeYtA5REo15iw1157uTvuuMMLxy233NItuuii3rps6bXXXnMdO3b0/1xnnXXcc889508Z+Pfff6Oj+9ZzL730kv/uo48+8vdaYkHypptu8v8cPny4/+7tt992gwYN8v/Fx958LfLwww+73Xff3S+E7rLLLl6wr7DCCv4W8uzVq5d76KGH/L8HDx7stttuu0Y3MGP9iBEjcnX/+eef/e9HOVK52rYcZVWeIlCLBLKI6YkTP3QjR47xeOafv5WbPPkr//faa7eNvB8XL4hNYrogIl0gAi2DQC2I6c8//9wtt9xyfuLF5PDOO+9MFMB8vuuuu7pDDjnEXXfddbkG+vPPP930009fr8Gwtmy44Ybe3a/cSZOrchNW/iJQWQTKNSa0b9/e7bfffm7//fevB4TtMWuttZZ76623/He4VtuWGP592GGH+bETT58ffvihzv233nqrz5f0ySefuIUXXtj/jQg/6aST3AUXXOD/jTV5223Tj/x67LHH3Oabb+6vPf300/1/uJOHCTf17t27u6uvvtoNHDjQj+ulSNR/lllm8Vn99ttvboYZZihFtvXyKFfblqWwylQEapBAITH94YefRF4sozyZtm1Xihb7lnHjx09wY8aM85+tv/6a0RbDRfKSk5iuwY6lKlcmgVoQ03vssYcbMGCAb6APP/zQLbbYYqmN1alTJ7fQQgu522+/PW+DYknZbbfdorNe75GYrsyur1KLQEUTKJfgwmKMWLZ9xyEkFhCvuuoq/1G/fv3c3nvvXYchXj2XX355ophmrNx555399biFM85aIn7F8ssv7/95xBFH5J4RbyDELAuj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", "text/plain": [ "" ] }, "execution_count": 50, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Using `find_elements(By.TAG_NAME, )` (and other similar `find_elements_...()` functions), we can retrieve all elements of a particular type, such as HTML `input` elements." ] }, { "cell_type": "code", "execution_count": 51, "metadata": { "button": false, "execution": { "iopub.execute_input": "2025-01-16T10:12:40.171813Z", "iopub.status.busy": "2025-01-16T10:12:40.171664Z", "iopub.status.idle": "2025-01-16T10:12:40.176525Z", "shell.execute_reply": "2025-01-16T10:12:40.176245Z" }, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "ui_elements = gui_driver.find_elements(By.TAG_NAME, \"input\")" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "For each element, we can retrieve its HTML attributes, using `get_attribute()`. We can thus retrieve the `name` and `type` of each input element (if defined)." ] }, { "cell_type": "code", "execution_count": 52, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.178197Z", "iopub.status.busy": "2025-01-16T10:12:40.178102Z", "iopub.status.idle": "2025-01-16T10:12:40.259184Z", "shell.execute_reply": "2025-01-16T10:12:40.258819Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Name: name | Type: text | Text: \n", "Name: email | Type: email | Text: \n", "Name: city | Type: text | Text: \n", "Name: zip | Type: number | Text: \n", "Name: terms | Type: checkbox | Text: \n", "Name: submit | Type: submit | Text: \n" ] } ], "source": [ "for element in ui_elements:\n", " print(\"Name: %-10s | Type: %-10s | Text: %s\" %\n", " (element.get_attribute('name'),\n", " element.get_attribute('type'),\n", " element.text))" ] }, { "cell_type": "code", "execution_count": 53, "metadata": { "button": false, "execution": { "iopub.execute_input": "2025-01-16T10:12:40.261040Z", "iopub.status.busy": "2025-01-16T10:12:40.260894Z", "iopub.status.idle": "2025-01-16T10:12:40.264421Z", "shell.execute_reply": "2025-01-16T10:12:40.264145Z" }, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "ui_elements = gui_driver.find_elements(By.TAG_NAME, \"a\")" ] }, { "cell_type": "code", "execution_count": 54, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.266052Z", "iopub.status.busy": "2025-01-16T10:12:40.265964Z", "iopub.status.idle": "2025-01-16T10:12:40.280381Z", "shell.execute_reply": "2025-01-16T10:12:40.280065Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Name: | Type: | Text: terms and conditions\n" ] } ], "source": [ "for element in ui_elements:\n", " print(\"Name: %-10s | Type: %-10s | Text: %s\" %\n", " (element.get_attribute('name'),\n", " element.get_attribute('type'),\n", " element.text))" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### User Interface Actions\n", "\n", "Similarly to what we did in the [chapter on Web fuzzing](WebFuzzer.ipynb), our idea is now to mine a _grammar_ for the user interface – first for an individual user interface *page* (i.e., a single Web page), later for all pages offered by the application. The idea is that a grammar defines _legal sequences of actions_ – clicks and keystrokes – that can be applied on the application." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We assume the following actions:\n", "\n", "1. `fill(, )` – fill the UI input element named `` with the text ``.\n", "1. `check(, )` – set the UI checkbox `` to the given value `` (True or False)\n", "1. `submit()` – submit the form by clicking on the UI element ``.\n", "1. `click()` – click on the UI element ``, typically for following a link." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "This sequence of actions, for instance would fill out the order form:\n", "\n", "```python\n", "fill('name', \"Walter White\")\n", "fill('email', \"white@jpwynne.edu\")\n", "fill('city', \"Albuquerque\")\n", "fill('zip', \"87101\")\n", "check('terms', True)\n", "submit('submit')\n", "```" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Our set of actions is deliberately defined to be small – for real user interfaces, one would also have to define interactions such as swipes, double clicks, long clicks, right button clicks, modifier keys, and more. Selenium supports all of this; but in the interest of simplicity, we focus on the most important set of interactions." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" }, "toc-hr-collapsed": false }, "source": [ "### Retrieving Actions\n", "\n", "As a first step in mining an action grammar, we need to be able to retrieve possible interactions. We introduce a class `GUIGrammarMiner`, which is set to do precisely that." ] }, { "cell_type": "code", "execution_count": 55, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.282338Z", "iopub.status.busy": "2025-01-16T10:12:40.282209Z", "iopub.status.idle": "2025-01-16T10:12:40.284399Z", "shell.execute_reply": "2025-01-16T10:12:40.284035Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner:\n", " \"\"\"Retrieve a grammar of possible GUI interaction sequences\"\"\"\n", "\n", " def __init__(self, driver, stay_on_host: bool = True) -> None:\n", " \"\"\"Constructor.\n", " `driver` - a web driver as produced by Selenium.\n", " `stay_on_host` - if True (default), no not follow links to other hosts.\n", " \"\"\"\n", " self.driver = driver\n", " self.stay_on_host = stay_on_host\n", " self.grammar: Grammar = {}" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "source": [ "#### Excursion: Implementing Retrieving Actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Our first task is to obtain the set of possible interactions. Given a single UI page, the method `mine_input_actions()` of `GUIGrammarMiner` returns a set of *actions* as defined above. It first gets all `input` elements, followed by `button` elements, finally followed by links (`a` elements), and merges them into a set. (We use a `frozenset` here since we want to use the set as an index later.)" ] }, { "cell_type": "code", "execution_count": 56, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.286558Z", "iopub.status.busy": "2025-01-16T10:12:40.286409Z", "iopub.status.idle": "2025-01-16T10:12:40.288889Z", "shell.execute_reply": "2025-01-16T10:12:40.288633Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def mine_state_actions(self) -> FrozenSet[str]:\n", " \"\"\"Return a set of all possible actions on the current Web site.\n", " Can be overloaded in subclasses.\"\"\"\n", " return frozenset(self.mine_input_element_actions()\n", " | self.mine_button_element_actions()\n", " | self.mine_a_element_actions())\n", "\n", " def mine_input_element_actions(self) -> Set[str]:\n", " return set() # to be defined later\n", "\n", " def mine_button_element_actions(self) -> Set[str]:\n", " return set() # to be defined later\n", "\n", " def mine_a_element_actions(self) -> Set[str]:\n", " return set() # to be defined later" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "##### Input Element Actions\n", "\n", "Mining input actions goes through the set of input elements, and returns an action depending on the input type. If the input field is a text, for instance, the associated action is `fill()`; for checkboxes, the action is `check()`." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The respective values are placeholders depending on the type; if the input field is a number, for instance, the value becomes ``. As these actions later become part of the grammar, they will be expanded into actual values during grammar expansion." ] }, { "cell_type": "code", "execution_count": 57, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.290531Z", "iopub.status.busy": "2025-01-16T10:12:40.290420Z", "iopub.status.idle": "2025-01-16T10:12:40.291933Z", "shell.execute_reply": "2025-01-16T10:12:40.291693Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from selenium.common.exceptions import StaleElementReferenceException" ] }, { "cell_type": "code", "execution_count": 58, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.293381Z", "iopub.status.busy": "2025-01-16T10:12:40.293293Z", "iopub.status.idle": "2025-01-16T10:12:40.296371Z", "shell.execute_reply": "2025-01-16T10:12:40.296140Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def mine_input_element_actions(self) -> Set[str]:\n", " \"\"\"Determine all input actions on the current Web page\"\"\"\n", "\n", " actions = set()\n", "\n", " for elem in self.driver.find_elements(By.TAG_NAME, \"input\"):\n", " try:\n", " input_type = elem.get_attribute(\"type\")\n", " input_name = elem.get_attribute(\"name\")\n", " if input_name is None:\n", " input_name = elem.text\n", "\n", " if input_type in [\"checkbox\", \"radio\"]:\n", " actions.add(\"check('%s', )\" % html.escape(input_name))\n", " elif input_type in [\"text\", \"number\", \"email\", \"password\"]:\n", " actions.add(\"fill('%s', '<%s>')\" % (html.escape(input_name), html.escape(input_type)))\n", " elif input_type in [\"button\", \"submit\"]:\n", " actions.add(\"submit('%s')\" % html.escape(input_name))\n", " elif input_type in [\"hidden\"]:\n", " pass\n", " else:\n", " # TODO: Handle more types here\n", " actions.add(\"fill('%s', <%s>)\" % (html.escape(input_name), html.escape(input_type)))\n", " except StaleElementReferenceException:\n", " pass\n", "\n", " return actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Applied on our order form, we see that the method gets us all input actions:" ] }, { "cell_type": "code", "execution_count": 59, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.297911Z", "iopub.status.busy": "2025-01-16T10:12:40.297820Z", "iopub.status.idle": "2025-01-16T10:12:40.336489Z", "shell.execute_reply": "2025-01-16T10:12:40.336149Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "{\"check('terms', )\",\n", " \"fill('city', '')\",\n", " \"fill('email', '')\",\n", " \"fill('name', '')\",\n", " \"fill('zip', '')\",\n", " \"submit('submit')\"}" ] }, "execution_count": 59, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)\n", "gui_grammar_miner.mine_input_element_actions()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "##### Button Element Actions\n", "\n", "Mining buttons works similarly:" ] }, { "cell_type": "code", "execution_count": 60, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.338252Z", "iopub.status.busy": "2025-01-16T10:12:40.338137Z", "iopub.status.idle": "2025-01-16T10:12:40.340705Z", "shell.execute_reply": "2025-01-16T10:12:40.340431Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def mine_button_element_actions(self) -> Set[str]:\n", " \"\"\"Determine all button actions on the current Web page\"\"\"\n", "\n", " actions = set()\n", "\n", " for elem in self.driver.find_elements(By.TAG_NAME, \"button\"):\n", " try:\n", " button_type = elem.get_attribute(\"type\")\n", " button_name = elem.get_attribute(\"name\")\n", " if button_name is None:\n", " button_name = elem.text\n", " if button_type == \"submit\":\n", " actions.add(\"submit('%s')\" % html.escape(button_name))\n", " elif button_type != \"reset\":\n", " actions.add(\"click('%s')\" % html.escape(button_name))\n", " except StaleElementReferenceException:\n", " pass\n", "\n", " return actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Our order form has no `button` elements. (The `submit` button is an `input` element, and was handled above)." ] }, { "cell_type": "code", "execution_count": 61, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.342427Z", "iopub.status.busy": "2025-01-16T10:12:40.342317Z", "iopub.status.idle": "2025-01-16T10:12:40.346586Z", "shell.execute_reply": "2025-01-16T10:12:40.346322Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "set()" ] }, "execution_count": 61, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)\n", "gui_grammar_miner.mine_button_element_actions()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "##### Link Element Actions\n", "\n", "When following links, we need to make sure that we stay on the current host – we want to explore a single website only, not all the Internet. To this end, we check the `href` attribute of the link to check whether it still points to the same host. If it does not, we give it a special action `ignore()`, which, as the name suggests, will later be ignored as it comes to executing these actions. We still return an action, though, as we use the set of actions to characterize a state in the application." ] }, { "cell_type": "code", "execution_count": 62, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.348159Z", "iopub.status.busy": "2025-01-16T10:12:40.348060Z", "iopub.status.idle": "2025-01-16T10:12:40.349843Z", "shell.execute_reply": "2025-01-16T10:12:40.349589Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from urllib.parse import urljoin, urlsplit" ] }, { "cell_type": "code", "execution_count": 63, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.351443Z", "iopub.status.busy": "2025-01-16T10:12:40.351350Z", "iopub.status.idle": "2025-01-16T10:12:40.353909Z", "shell.execute_reply": "2025-01-16T10:12:40.353671Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def mine_a_element_actions(self) -> Set[str]:\n", " \"\"\"Determine all link actions on the current Web page\"\"\"\n", "\n", " actions = set()\n", "\n", " for elem in self.driver.find_elements(By.TAG_NAME, \"a\"):\n", " try:\n", " a_href = elem.get_attribute(\"href\")\n", " if a_href is not None:\n", " if self.follow_link(a_href):\n", " actions.add(\"click('%s')\" % html.escape(elem.text))\n", " else:\n", " actions.add(\"ignore('%s')\" % html.escape(elem.text))\n", " except StaleElementReferenceException:\n", " pass\n", "\n", " return actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To check whether we can follow a link, the method `follow_link()` checks the URL:" ] }, { "cell_type": "code", "execution_count": 64, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.355644Z", "iopub.status.busy": "2025-01-16T10:12:40.355528Z", "iopub.status.idle": "2025-01-16T10:12:40.357687Z", "shell.execute_reply": "2025-01-16T10:12:40.357453Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def follow_link(self, link: str) -> bool:\n", " \"\"\"Return True iff we are allowed to follow the `link` URL\"\"\"\n", "\n", " if not self.stay_on_host:\n", " return True\n", "\n", " current_url = self.driver.current_url\n", " target_url = urljoin(current_url, link)\n", " return urlsplit(current_url).hostname == urlsplit(target_url).hostname" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "In our application, we would not be allowed to follow a link to `foo.bar`:" ] }, { "cell_type": "code", "execution_count": 65, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.359595Z", "iopub.status.busy": "2025-01-16T10:12:40.359406Z", "iopub.status.idle": "2025-01-16T10:12:40.361410Z", "shell.execute_reply": "2025-01-16T10:12:40.361043Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)" ] }, { "cell_type": "code", "execution_count": 66, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.363418Z", "iopub.status.busy": "2025-01-16T10:12:40.363272Z", "iopub.status.idle": "2025-01-16T10:12:40.366889Z", "shell.execute_reply": "2025-01-16T10:12:40.366606Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "False" ] }, "execution_count": 66, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner.follow_link(\"ftp://foo.bar/\")" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Following a link to `localhost`, though, works well:" ] }, { "cell_type": "code", "execution_count": 67, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.368674Z", "iopub.status.busy": "2025-01-16T10:12:40.368544Z", "iopub.status.idle": "2025-01-16T10:12:40.371949Z", "shell.execute_reply": "2025-01-16T10:12:40.371617Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 67, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner.follow_link(\"https://127.0.0.1/\")" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "When adapting this for other user interfaces, similar measures would be taken to ensure we stay in the same application." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Running this method on our page gets us the set of links:" ] }, { "cell_type": "code", "execution_count": 68, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.373738Z", "iopub.status.busy": "2025-01-16T10:12:40.373614Z", "iopub.status.idle": "2025-01-16T10:12:40.386995Z", "shell.execute_reply": "2025-01-16T10:12:40.386690Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "{\"click('terms and conditions')\"}" ] }, "execution_count": 68, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)\n", "gui_grammar_miner.mine_a_element_actions()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "source": [ "#### End of Excursion" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Let us show `GUIGrammarMiner` in action, using its `mine_state_actions()` method to retrieve all elements from our current page. We see that we obtain input element actions, button element actions, and link element actions." ] }, { "cell_type": "code", "execution_count": 69, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.388951Z", "iopub.status.busy": "2025-01-16T10:12:40.388821Z", "iopub.status.idle": "2025-01-16T10:12:40.454278Z", "shell.execute_reply": "2025-01-16T10:12:40.453937Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "frozenset({\"check('terms', )\",\n", " \"click('terms and conditions')\",\n", " \"fill('city', '')\",\n", " \"fill('email', '')\",\n", " \"fill('name', '')\",\n", " \"fill('zip', '')\",\n", " \"submit('submit')\"})" ] }, "execution_count": 69, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)\n", "gui_grammar_miner.mine_state_actions()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We assume that we can identify a user interface *state* from the set of interactive elements it contains – that is, the current Web page is identified by the set above. This is in contrast to [Web fuzzing](WebFuzzer.ipynb), where we assumed the URL to uniquely characterize a page – but with JavaScript, the URL can stay unchanged although the page contents change, and UIs other than the Web may have no concept of unique URLs. Therefore, we say that the way a UI can be interacted with uniquely defines its state." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Models for User Interfaces" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### User Interfaces as Finite State Machines\n", "\n", "Now that we can retrieve UI elements from a page, let us go and systematically explore a user interface. The idea is to represent the user interface as a *finite state machine* – that is, a sequence of *states* that can be reached by interacting with the individual user interface elements." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Let us illustrate such a finite state machine by looking at our Web server. The following diagram shows the states our server can be in:" ] }, { "cell_type": "code", "execution_count": 70, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.456463Z", "iopub.status.busy": "2025-01-16T10:12:40.456327Z", "iopub.status.idle": "2025-01-16T10:12:40.457965Z", "shell.execute_reply": "2025-01-16T10:12:40.457701Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "# ignore\n", "from graphviz import Digraph" ] }, { "cell_type": "code", "execution_count": 71, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.459497Z", "iopub.status.busy": "2025-01-16T10:12:40.459393Z", "iopub.status.idle": "2025-01-16T10:12:40.460861Z", "shell.execute_reply": "2025-01-16T10:12:40.460563Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "# ignore\n", "from GrammarFuzzer import dot_escape" ] }, { "cell_type": "code", "execution_count": 72, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.462441Z", "iopub.status.busy": "2025-01-16T10:12:40.462346Z", "iopub.status.idle": "2025-01-16T10:12:40.937357Z", "shell.execute_reply": "2025-01-16T10:12:40.936958Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\\<start\\>\n", "\n", "<start>\n", "\n", "\n", "\n", "\\<Order Form\\>\n", "\n", "<Order Form>\n", "\n", "\n", "\n", "\\<start\\>->\\<Order Form\\>\n", "\n", "\n", "\n", "\n", "\n", "\\<Terms and Conditions\\>\n", "\n", "<Terms and Conditions>\n", "\n", "\n", "\n", "\\<Order Form\\>->\\<Terms and Conditions\\>\n", "\n", "\n", "click('Terms and conditions')\n", "\n", "\n", "\n", "\\<Thank You\\>\n", "\n", "<Thank You>\n", "\n", "\n", "\n", "\\<Order Form\\>->\\<Thank You\\>\n", "\n", "\n", "fill(...)\n", "submit('submit')\n", "\n", "\n", "\n", "\\<Terms and Conditions\\>->\\<Order Form\\>\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "\\<Thank You\\>->\\<Order Form\\>\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ignore\n", "dot = Digraph(comment=\"Finite State Machine\")\n", "dot.node(dot_escape(''))\n", "dot.edge(dot_escape(''),\n", " dot_escape(''))\n", "dot.edge(dot_escape(''),\n", " dot_escape(''), \"click('Terms and conditions')\")\n", "dot.edge(dot_escape(''),\n", " dot_escape(''), r\"fill(...)\\lsubmit('submit')\")\n", "dot.edge(dot_escape(''),\n", " dot_escape(''), \"click('order form')\")\n", "dot.edge(dot_escape(''),\n", " dot_escape(''), \"click('order form')\")\n", "display(dot)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Initially, we are in the `` state. From here, we can click on `Terms and Conditions`, and we'll be in the `Terms and Conditions` state, showing the page with the same title. We can also fill out the form and place the order, having us end in the `Thank You` state (again showing the page with the same title). From both `` and ``, we can return to the order form by clicking on the `order form` link." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### State Machines as Grammars\n", "\n", "To systematically explore a user interface, we must retrieve its finite state machine, and eventually cover all states and transitions. In the presence of forms, such an exploration is difficult, as we need a special mechanism to fill out forms and submit the values to get to the next state. There is a trick, though, which allows us to have a single representation for both states and (form) values. We can *embed the finite state machine into a grammar*, which is then used for both states and form values." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To embed a finite state machine into a grammar, we proceed as follows:\n", "\n", "1. Every _state_ $\\langle s \\rangle$ in the finite state machine becomes a _symbol_ $\\langle s \\rangle$ in the grammar.\n", "2. Every _transition_ in the finite state machine from $\\langle s \\rangle$ to $\\langle t \\rangle$ and actions $a_1, a_2, \\dots$ becomes an _alternative_ of $\\langle s \\rangle$ in the form $a_1, a_2, dots$ $\\langle t \\rangle$ in the grammar." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The above finite state machine thus gets encoded into the grammar\n", "\n", "```\n", " ::= \n", " ::= click('Terms and Conditions') | \n", " fill(...) submit('submit') \n", " ::= click('order form') \n", " ::= click('order form') \n", "```" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Expanding this grammar gets us a stream of actions, navigating through the user interface:\n", "\n", "```\n", "fill(...) submit('submit') click('order form') click('Terms and Conditions') click('order form') ...\n", "```\n", "\n", "This stream is actually _infinite_ (as one can interact with the UI forever); to have it end, one can introduce an alternative `` that simply expands to the empty string, without having any expansion (state) follow." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" }, "tags": [] }, "source": [ "### Retrieving State Grammars\n", "\n", "Let us extend `GUIGrammarMiner` such that it retrieves a grammar from the user interface in its _current state_." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Excursion: Implementing Extracting State Grammars" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" }, "tags": [] }, "source": [ "We first define a constant `GUI_GRAMMAR` that serves as template for all sorts of input types. We will use this to fill out forms." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "\\todo{}: Have a common base class `GrammarMiner` with `__init__()` and `mine_grammar()`" ] }, { "cell_type": "code", "execution_count": 73, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.939411Z", "iopub.status.busy": "2025-01-16T10:12:40.939282Z", "iopub.status.idle": "2025-01-16T10:12:40.941140Z", "shell.execute_reply": "2025-01-16T10:12:40.940912Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from Grammars import new_symbol" ] }, { "cell_type": "code", "execution_count": 74, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.942894Z", "iopub.status.busy": "2025-01-16T10:12:40.942765Z", "iopub.status.idle": "2025-01-16T10:12:40.944762Z", "shell.execute_reply": "2025-01-16T10:12:40.944404Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from Grammars import nonterminals, START_SYMBOL\n", "from Grammars import extend_grammar, unreachable_nonterminals, crange, srange\n", "from Grammars import syntax_diagram, is_valid_grammar, Grammar" ] }, { "cell_type": "code", "execution_count": 75, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.946812Z", "iopub.status.busy": "2025-01-16T10:12:40.946672Z", "iopub.status.idle": "2025-01-16T10:12:40.949441Z", "shell.execute_reply": "2025-01-16T10:12:40.949118Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " START_STATE = \"\"\n", " UNEXPLORED_STATE = \"\"\n", " FINAL_STATE = \"\"\n", "\n", " GUI_GRAMMAR: Grammar = ({\n", " START_SYMBOL: [START_STATE],\n", " UNEXPLORED_STATE: [\"\"],\n", " FINAL_STATE: [\"\"],\n", "\n", " \"\": [\"\"],\n", " \"\": [\"\", \"\"],\n", " \"\": [\"\", \"\", \"\"],\n", " \"\": crange('a', 'z') + crange('A', 'Z'),\n", "\n", " \"\": [\"\"],\n", " \"\": [\"\", \"\"],\n", " \"\": crange('0', '9'),\n", "\n", " \"\": srange(\". !\"),\n", "\n", " \"\": [\"@\"],\n", " \"\": [\"\", \"\"],\n", "\n", " \"\": [\"True\", \"False\"],\n", "\n", " # Use a fixed password in case we need to repeat it\n", " \"\": [\"abcABC.123\"],\n", "\n", " \"\": [\"\"],\n", " })" ] }, { "cell_type": "code", "execution_count": 76, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:40.950921Z", "iopub.status.busy": "2025-01-16T10:12:40.950814Z", "iopub.status.idle": "2025-01-16T10:12:41.008131Z", "shell.execute_reply": "2025-01-16T10:12:41.007909Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "start\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "state" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "unexplored\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "end\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "text\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "string" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "string\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "character\n", "\n", "string\n", "character" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "character\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "letter\n", "\n", "digit\n", "\n", "special" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "letter\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "e\n", "\n", "d\n", "\n", "c\n", "\n", "b\n", "\n", "a\n", "\n", "f\n", "\n", "g\n", "\n", "h\n", "\n", "i\n", "\n", "j\n", "\n", "\n", "o\n", "\n", "n\n", "\n", "m\n", "\n", "l\n", "\n", "k\n", "\n", "p\n", "\n", "q\n", "\n", "r\n", "\n", "s\n", "\n", "t\n", "\n", "\n", "y\n", "\n", "x\n", "\n", "w\n", "\n", "v\n", "\n", "u\n", "\n", "z\n", "\n", "A\n", "\n", "B\n", "\n", "C\n", "\n", "D\n", "\n", "\n", "I\n", "\n", "H\n", "\n", "G\n", "\n", "F\n", "\n", "E\n", "\n", "J\n", "\n", "K\n", "\n", "L\n", "\n", "M\n", "\n", "N\n", "\n", "\n", "S\n", "\n", "R\n", "\n", "Q\n", "\n", "P\n", "\n", "O\n", "\n", "T\n", "\n", "U\n", "\n", "V\n", "\n", "W\n", "\n", "X\n", "\n", "\n", "Y\n", "\n", "Z" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "number\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "digits" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "digits\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "digit\n", "\n", "digits\n", "digit" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "digit\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "0\n", "\n", "1\n", "\n", "\n", "2\n", "\n", "3\n", "\n", "\n", "4\n", "\n", "5\n", "\n", "\n", "6\n", "\n", "7\n", "\n", "\n", "8\n", "\n", "9" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "special\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", ".\n", "\n", " \n", "\n", "!" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "email\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "letters\n", "@\n", "letters" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "letters\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "letter\n", "\n", "letters\n", "letter" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "boolean\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "True\n", "\n", "False" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "password\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "abcABC.123" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "hidden\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "string" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "syntax_diagram(GUIGrammarMiner.GUI_GRAMMAR)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The method `mine_state_grammar()` goes through the actions mined from the page (using `mine_state_actions()`) and creates a grammar for the current state. For each `click()` and `submit()` action, it assumes a new state follows, and introduces an appropriate state symbol into the grammar – a state symbol that now will be marked as ``, but will be expanded later as the appropriate state is seen." ] }, { "cell_type": "code", "execution_count": 77, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.009997Z", "iopub.status.busy": "2025-01-16T10:12:41.009851Z", "iopub.status.idle": "2025-01-16T10:12:41.013391Z", "shell.execute_reply": "2025-01-16T10:12:41.013146Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIGrammarMiner(GUIGrammarMiner):\n", " def new_state_symbol(self, grammar: Grammar) -> str:\n", " \"\"\"Return a new symbol for some state in `grammar`\"\"\"\n", " return new_symbol(grammar, self.START_STATE)\n", "\n", " def mine_state_grammar(self, grammar: Grammar = {},\n", " state_symbol: Optional[str] = None) -> Grammar:\n", " \"\"\"Return a state grammar for the actions on the current Web site.\n", " Can be overloaded in subclasses.\"\"\"\n", "\n", " grammar = extend_grammar(self.GUI_GRAMMAR, grammar) # type: ignore\n", "\n", " if state_symbol is None:\n", " state_symbol = self.new_state_symbol(grammar)\n", " grammar[state_symbol] = []\n", "\n", " alternatives = []\n", " form = \"\"\n", " submit = None\n", "\n", " for action in self.mine_state_actions():\n", " if action.startswith(\"submit\"):\n", " submit = action\n", "\n", " elif action.startswith(\"click\"):\n", " link_target = self.new_state_symbol(grammar)\n", " grammar[link_target] = [self.UNEXPLORED_STATE]\n", " alternatives.append(action + '\\n' + link_target)\n", "\n", " elif action.startswith(\"ignore\"):\n", " pass\n", "\n", " else: # fill(), check() actions\n", " if len(form) > 0:\n", " form += '\\n'\n", " form += action\n", "\n", " if submit is not None:\n", " if len(form) > 0:\n", " form += '\\n'\n", " form += submit\n", "\n", " if len(form) > 0:\n", " form_target = self.new_state_symbol(grammar)\n", " grammar[form_target] = [self.UNEXPLORED_STATE]\n", " alternatives.append(form + '\\n' + form_target)\n", "\n", " alternatives += [self.FINAL_STATE]\n", "\n", " grammar[state_symbol] = alternatives # type: ignore\n", "\n", " # Remove unused parts\n", " for nonterminal in unreachable_nonterminals(grammar):\n", " del grammar[nonterminal]\n", "\n", " assert is_valid_grammar(grammar)\n", "\n", " return grammar" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To better see the state structure, the function `fsm_diagram()` shows the resulting state grammar as a finite state machine. (This assumes that the grammar actually encodes a state machine.)" ] }, { "cell_type": "code", "execution_count": 78, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.015149Z", "iopub.status.busy": "2025-01-16T10:12:41.015067Z", "iopub.status.idle": "2025-01-16T10:12:41.016686Z", "shell.execute_reply": "2025-01-16T10:12:41.016403Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from collections import deque" ] }, { "cell_type": "code", "execution_count": 79, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.018559Z", "iopub.status.busy": "2025-01-16T10:12:41.018463Z", "iopub.status.idle": "2025-01-16T10:12:41.020215Z", "shell.execute_reply": "2025-01-16T10:12:41.019956Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from bookutils import unicode_escape" ] }, { "cell_type": "code", "execution_count": 80, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.021690Z", "iopub.status.busy": "2025-01-16T10:12:41.021605Z", "iopub.status.idle": "2025-01-16T10:12:41.024490Z", "shell.execute_reply": "2025-01-16T10:12:41.024254Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def fsm_diagram(grammar: Grammar, start_symbol: str = START_SYMBOL) -> Any:\n", " \"\"\"Produce a FSM diagram for the state grammar `grammar`.\n", " `start_symbol` - the start symbol (default: START_SYMBOL)\"\"\"\n", "\n", " from graphviz import Digraph\n", " from IPython.display import display\n", "\n", " def left_align(label: str) -> str:\n", " \"\"\"Render `label` as left-aligned in dot\"\"\"\n", " return dot_escape(label.replace('\\n', r'\\l')).replace(r'\\\\l', '\\\\l')\n", "\n", " dot = Digraph(comment=\"Grammar as Finite State Machine\")\n", "\n", " symbols = deque([start_symbol])\n", " symbols_seen = set()\n", "\n", " while len(symbols) > 0:\n", " symbol = symbols.popleft()\n", " symbols_seen.add(symbol)\n", " dot.node(symbol, dot_escape(unicode_escape(symbol)))\n", "\n", " for expansion in grammar[symbol]:\n", " assert type(expansion) == str # no opts() here\n", "\n", " nts = nonterminals(expansion)\n", " if len(nts) > 0:\n", " target_symbol = nts[-1]\n", " if target_symbol not in symbols_seen:\n", " symbols.append(target_symbol)\n", "\n", " label = expansion.replace(target_symbol, '')\n", " dot.edge(symbol, target_symbol, left_align(unicode_escape(label)))\n", "\n", " return display(dot)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### End of Excursion" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Let us show `GUIGrammarMiner()` in action. Its method `mine_state_grammar()` extracts the grammar for the current Web page:" ] }, { "cell_type": "code", "execution_count": 81, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.026228Z", "iopub.status.busy": "2025-01-16T10:12:41.026127Z", "iopub.status.idle": "2025-01-16T10:12:41.073624Z", "shell.execute_reply": "2025-01-16T10:12:41.073325Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_grammar_miner = GUIGrammarMiner(gui_driver)\n", "state_grammar = gui_grammar_miner.mine_state_grammar()" ] }, { "cell_type": "code", "execution_count": 82, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.075576Z", "iopub.status.busy": "2025-01-16T10:12:41.075418Z", "iopub.status.idle": "2025-01-16T10:12:41.078263Z", "shell.execute_reply": "2025-01-16T10:12:41.077994Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "{'': [''],\n", " '': [''],\n", " '': [''],\n", " '': [''],\n", " '': ['', ''],\n", " '': ['', '', ''],\n", " '': ['a',\n", " 'b',\n", " 'c',\n", " 'd',\n", " 'e',\n", " 'f',\n", " 'g',\n", " 'h',\n", " 'i',\n", " 'j',\n", " 'k',\n", " 'l',\n", " 'm',\n", " 'n',\n", " 'o',\n", " 'p',\n", " 'q',\n", " 'r',\n", " 's',\n", " 't',\n", " 'u',\n", " 'v',\n", " 'w',\n", " 'x',\n", " 'y',\n", " 'z',\n", " 'A',\n", " 'B',\n", " 'C',\n", " 'D',\n", " 'E',\n", " 'F',\n", " 'G',\n", " 'H',\n", " 'I',\n", " 'J',\n", " 'K',\n", " 'L',\n", " 'M',\n", " 'N',\n", " 'O',\n", " 'P',\n", " 'Q',\n", " 'R',\n", " 'S',\n", " 'T',\n", " 'U',\n", " 'V',\n", " 'W',\n", " 'X',\n", " 'Y',\n", " 'Z'],\n", " '': [''],\n", " '': ['', ''],\n", " '': ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'],\n", " '': ['.', ' ', '!'],\n", " '': ['@'],\n", " '': ['', ''],\n", " '': ['True', 'False'],\n", " '': [\"click('terms and conditions')\\n\",\n", " \"fill('city', '')\\nfill('email', '')\\nfill('name', '')\\ncheck('terms', )\\nfill('zip', '')\\nsubmit('submit')\\n\",\n", " ''],\n", " '': [''],\n", " '': ['']}" ] }, "execution_count": 82, "metadata": {}, "output_type": "execute_result" } ], "source": [ "state_grammar" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To better see the structure of the state grammar, we can visualize it as a state machine. We see that it nicely reflects what we can see from our Web server's home page:" ] }, { "cell_type": "code", "execution_count": 83, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.079971Z", "iopub.status.busy": "2025-01-16T10:12:41.079842Z", "iopub.status.idle": "2025-01-16T10:12:41.524345Z", "shell.execute_reply": "2025-01-16T10:12:41.523976Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "start\n", "\n", "<start>\n", "\n", "\n", "\n", "state\n", "\n", "<state>\n", "\n", "\n", "\n", "start->state\n", "\n", "\n", "\n", "\n", "\n", "state-1\n", "\n", "<state-1>\n", "\n", "\n", "\n", "state->state-1\n", "\n", "\n", "click('terms and conditions')\n", "\n", "\n", "\n", "state-2\n", "\n", "<state-2>\n", "\n", "\n", "\n", "state->state-2\n", "\n", "\n", "fill('city', '<text>')\n", "fill('email', '<email>')\n", "fill('name', '<text>')\n", "check('terms', <boolean>)\n", "fill('zip', '<number>')\n", "submit('submit')\n", "\n", "\n", "\n", "end\n", "\n", "<end>\n", "\n", "\n", "\n", "state->end\n", "\n", "\n", "\n", "\n", "\n", "unexplored\n", "\n", "<unexplored>\n", "\n", "\n", "\n", "state-1->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-2->unexplored\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fsm_diagram(state_grammar)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "From the start state (``), we can go and either click on \"terms and conditions\", ending in ``, or fill out the form, ending in ``." ] }, { "cell_type": "code", "execution_count": 84, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.526276Z", "iopub.status.busy": "2025-01-16T10:12:41.526147Z", "iopub.status.idle": "2025-01-16T10:12:41.528628Z", "shell.execute_reply": "2025-01-16T10:12:41.528367Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "[\"click('terms and conditions')\\n\",\n", " \"fill('city', '')\\nfill('email', '')\\nfill('name', '')\\ncheck('terms', )\\nfill('zip', '')\\nsubmit('submit')\\n\",\n", " '']" ] }, "execution_count": 84, "metadata": {}, "output_type": "execute_result" } ], "source": [ "state_grammar[GUIGrammarMiner.START_STATE]" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Both these states are yet unexplored:" ] }, { "cell_type": "code", "execution_count": 85, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.530163Z", "iopub.status.busy": "2025-01-16T10:12:41.530059Z", "iopub.status.idle": "2025-01-16T10:12:41.531970Z", "shell.execute_reply": "2025-01-16T10:12:41.531740Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "['']" ] }, "execution_count": 85, "metadata": {}, "output_type": "execute_result" } ], "source": [ "state_grammar['']" ] }, { "cell_type": "code", "execution_count": 86, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.533435Z", "iopub.status.busy": "2025-01-16T10:12:41.533332Z", "iopub.status.idle": "2025-01-16T10:12:41.535206Z", "shell.execute_reply": "2025-01-16T10:12:41.534991Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "['']" ] }, "execution_count": 86, "metadata": {}, "output_type": "execute_result" } ], "source": [ "state_grammar['']" ] }, { "cell_type": "code", "execution_count": 87, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.536725Z", "iopub.status.busy": "2025-01-16T10:12:41.536629Z", "iopub.status.idle": "2025-01-16T10:12:41.538540Z", "shell.execute_reply": "2025-01-16T10:12:41.538280Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "['']" ] }, "execution_count": 87, "metadata": {}, "output_type": "execute_result" } ], "source": [ "state_grammar['']" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Given the grammar, we can use any of our grammar fuzzers to create valid input sequences:" ] }, { "cell_type": "code", "execution_count": 88, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.540341Z", "iopub.status.busy": "2025-01-16T10:12:41.540199Z", "iopub.status.idle": "2025-01-16T10:12:41.542043Z", "shell.execute_reply": "2025-01-16T10:12:41.541752Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from GrammarFuzzer import GrammarFuzzer" ] }, { "cell_type": "code", "execution_count": 89, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.543840Z", "iopub.status.busy": "2025-01-16T10:12:41.543725Z", "iopub.status.idle": "2025-01-16T10:12:41.547055Z", "shell.execute_reply": "2025-01-16T10:12:41.546788Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "fill('city', '.')\n", "fill('email', 'EB@iYN')\n", "fill('name', '.')\n", "check('terms', True)\n", "fill('zip', '3')\n", "submit('submit')\n", "\n" ] } ], "source": [ "gui_fuzzer = GrammarFuzzer(state_grammar)\n", "while True:\n", " action = gui_fuzzer.fuzz()\n", " if action.find('submit(') > 0:\n", " break\n", "print(action)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "These actions, however, must also be _executed_ such that we can explore the user interface. This is what we do in the next section." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Executing User Interface Actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "To execute actions, we introduce a `Runner` class, conveniently named `GUIRunner`. Its `run()` method executes the actions as given in an action string." ] }, { "cell_type": "code", "execution_count": 90, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.548623Z", "iopub.status.busy": "2025-01-16T10:12:41.548544Z", "iopub.status.idle": "2025-01-16T10:12:41.550079Z", "shell.execute_reply": "2025-01-16T10:12:41.549825Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from Fuzzer import Runner" ] }, { "cell_type": "code", "execution_count": 91, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.551563Z", "iopub.status.busy": "2025-01-16T10:12:41.551480Z", "iopub.status.idle": "2025-01-16T10:12:41.553631Z", "shell.execute_reply": "2025-01-16T10:12:41.553268Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIRunner(Runner):\n", " \"\"\"Execute the actions in a given action string\"\"\"\n", "\n", " def __init__(self, driver) -> None:\n", " \"\"\"Constructor. `driver` is a Selenium Web driver\"\"\"\n", " self.driver = driver" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### Excursion: Implementing Executing UI Actions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The way we implement `run()` is fairly simple: We introduce four methods named `fill()`, `check()`, `submit()` and `click()`, and run `exec()` on the action string to have the Python interpreter invoke these methods." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Running `exec()` on third-party input is dangerous, as the names of UI elements may contain valid Python code. We restrict access to the four functions defined above, and also set `__builtins__` to the empty dictionary such that built-in Python functions are not available during `exec()`. This will prevent accidents, but as we will see in the [chapter on information flow](InformationFlow.ipynb), it is still possible to inject Python code. To prevent such injection attacks, we use `html.escape()` to quote angle and quote characters in all third-party strings." ] }, { "cell_type": "code", "execution_count": 92, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.555323Z", "iopub.status.busy": "2025-01-16T10:12:41.555230Z", "iopub.status.idle": "2025-01-16T10:12:41.558160Z", "shell.execute_reply": "2025-01-16T10:12:41.557848Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def run(self, inp: str) -> Tuple[str, str]:\n", " \"\"\"Execute the action string `inp` on the current Web site.\n", " Return a pair (`inp`, `outcome`).\"\"\"\n", "\n", " def fill(name, value):\n", " self.do_fill(html.unescape(name), html.unescape(value))\n", "\n", " def check(name, state):\n", " self.do_check(html.unescape(name), state)\n", "\n", " def submit(name):\n", " self.do_submit(html.unescape(name))\n", "\n", " def click(name):\n", " self.do_click(html.unescape(name))\n", "\n", " exec(inp, {'__builtins__': {}},\n", " {\n", " 'fill': fill,\n", " 'check': check,\n", " 'submit': submit,\n", " 'click': click,\n", " })\n", "\n", " return inp, self.PASS" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "To identify elements in an action, we first search them by their name, and then by the displayed link text." ] }, { "cell_type": "code", "execution_count": 93, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.560073Z", "iopub.status.busy": "2025-01-16T10:12:41.559949Z", "iopub.status.idle": "2025-01-16T10:12:41.561744Z", "shell.execute_reply": "2025-01-16T10:12:41.561414Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from selenium.common.exceptions import NoSuchElementException\n", "from selenium.common.exceptions import ElementClickInterceptedException, ElementNotInteractableException" ] }, { "cell_type": "code", "execution_count": 94, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.563558Z", "iopub.status.busy": "2025-01-16T10:12:41.563436Z", "iopub.status.idle": "2025-01-16T10:12:41.565651Z", "shell.execute_reply": "2025-01-16T10:12:41.565271Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def find_element(self, name: str) -> Any:\n", " \"\"\"Search for an element named `name` on the current Web site.\n", " Matches can occur by name or by link text.\"\"\"\n", "\n", " try:\n", " return self.driver.find_element(By.NAME, name)\n", " except NoSuchElementException:\n", " return self.driver.find_element(By.LINK_TEXT, name)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The implementations of the actions simply defer to the appropriate Selenium methods, introducing explicit delays such that the page can reload and refresh." ] }, { "cell_type": "code", "execution_count": 95, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.567620Z", "iopub.status.busy": "2025-01-16T10:12:41.567484Z", "iopub.status.idle": "2025-01-16T10:12:41.570975Z", "shell.execute_reply": "2025-01-16T10:12:41.570708Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from selenium.webdriver.support.ui import WebDriverWait" ] }, { "cell_type": "code", "execution_count": 96, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.572557Z", "iopub.status.busy": "2025-01-16T10:12:41.572453Z", "iopub.status.idle": "2025-01-16T10:12:41.574135Z", "shell.execute_reply": "2025-01-16T10:12:41.573898Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " # Delays (in seconds)\n", " DELAY_AFTER_FILL = 0.1\n", " DELAY_AFTER_CHECK = 0.1\n", " DELAY_AFTER_SUBMIT = 1.5\n", " DELAY_AFTER_CLICK = 1.5" ] }, { "cell_type": "code", "execution_count": 97, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.575485Z", "iopub.status.busy": "2025-01-16T10:12:41.575392Z", "iopub.status.idle": "2025-01-16T10:12:41.577302Z", "shell.execute_reply": "2025-01-16T10:12:41.577028Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def do_fill(self, name: str, value: str) -> None:\n", " \"\"\"Fill the text element `name` with `value`\"\"\"\n", "\n", " element = self.find_element(name)\n", " element.send_keys(value)\n", " WebDriverWait(self.driver, self.DELAY_AFTER_FILL)" ] }, { "cell_type": "code", "execution_count": 98, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.578867Z", "iopub.status.busy": "2025-01-16T10:12:41.578763Z", "iopub.status.idle": "2025-01-16T10:12:41.580944Z", "shell.execute_reply": "2025-01-16T10:12:41.580638Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def do_check(self, name: str, state: bool) -> None:\n", " \"\"\"Set the check element `name` to `state`\"\"\"\n", "\n", " element = self.find_element(name)\n", " if bool(state) != bool(element.is_selected()):\n", " element.click()\n", " WebDriverWait(self.driver, self.DELAY_AFTER_CHECK)" ] }, { "cell_type": "code", "execution_count": 99, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.582621Z", "iopub.status.busy": "2025-01-16T10:12:41.582526Z", "iopub.status.idle": "2025-01-16T10:12:41.584661Z", "shell.execute_reply": "2025-01-16T10:12:41.584301Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def do_submit(self, name: str) -> None:\n", " \"\"\"Click on the submit element `name`\"\"\"\n", "\n", " element = self.find_element(name)\n", " element.click()\n", " WebDriverWait(self.driver, self.DELAY_AFTER_SUBMIT)" ] }, { "cell_type": "code", "execution_count": 100, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.586350Z", "iopub.status.busy": "2025-01-16T10:12:41.586249Z", "iopub.status.idle": "2025-01-16T10:12:41.588329Z", "shell.execute_reply": "2025-01-16T10:12:41.588043Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIRunner(GUIRunner):\n", " def do_click(self, name: str) -> None:\n", " \"\"\"Click on the element `name`\"\"\"\n", "\n", " element = self.find_element(name)\n", " element.click()\n", " WebDriverWait(self.driver, self.DELAY_AFTER_CLICK)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "#### End of Excursion" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Let us try out `GUIRunner` and its `run()` method. We create a runner on our Web server, and let it execute a `fill()` action:" ] }, { "cell_type": "code", "execution_count": 101, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.589961Z", "iopub.status.busy": "2025-01-16T10:12:41.589837Z", "iopub.status.idle": "2025-01-16T10:12:41.675625Z", "shell.execute_reply": "2025-01-16T10:12:41.675250Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "code", "execution_count": 102, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.677819Z", "iopub.status.busy": "2025-01-16T10:12:41.677614Z", "iopub.status.idle": "2025-01-16T10:12:41.679887Z", "shell.execute_reply": "2025-01-16T10:12:41.679515Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_runner = GUIRunner(gui_driver)" ] }, { "cell_type": "code", "execution_count": 103, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.681890Z", "iopub.status.busy": "2025-01-16T10:12:41.681704Z", "iopub.status.idle": "2025-01-16T10:12:41.712040Z", "shell.execute_reply": "2025-01-16T10:12:41.711769Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "(\"fill('name', 'Walter White')\", 'PASS')" ] }, "execution_count": 103, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_runner.run(\"fill('name', 'Walter White')\")" ] }, { "cell_type": "code", "execution_count": 104, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.713607Z", "iopub.status.busy": "2025-01-16T10:12:41.713487Z", "iopub.status.idle": "2025-01-16T10:12:41.735500Z", "shell.execute_reply": "2025-01-16T10:12:41.735127Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydB7gUNduG89nF9lmwKxZUUCygYhexK3ZU7AoW7KLYe8NesHcUC6CioCJiLygogmJFBcWGCopdsfvPnfO9+2fnzO7OnrN7yu6T6+ICdmcyyZ1MNk/eN2/+82+UnJIIiIAIiIAIiIAIiIAIiIAIiIAIiEBqAv+RmE7NSheKgAiIgAiIgAiIgAiIgAiIgAiIgCcgMa2OIAIiIAIiIAIiIAIiIAIiIAIiIAJFEpCYLhKYLhcBERABERABERABERABERABERABiWn1AREQAREQAREQAREQAREQAREQAREokoDEdJHAdLkIiIAIiIAIiIAIiIAIiIAIiIAISEyrD4iACIiACIiACIiACIiACIiACIhAkQQkposEpstFQAREQAREQAREQAREQAREQAREQGJafUAEREAEREAEREAEREAEREAEREAEiiQgMV0kMF0uAiIgAiIgAiIgAiIgAiIgAiIgAhLT6gMiIAIiIAIiIAIiIAIiIAIiIAIiUCSB4sT0f/5TZPa6XAREQAREQAREQAREQAREQAREQASaEYF//01VWInpVJh0kQiIgAiIgAiIgAiIgAiIgAiIQFUQkJiuimZWJUVABERABERABERABERABERABEpJQGK6lDSVlwiIgAiIgAiIgAiIgAiIgAiIQFUQaBAxnfIhVQFclRQBERABERABERABERABERABEWh+BOKxwVLq3PrtmU75kOZHUyUWAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgIS01XRzKqkCIiACIiACIiACIiACIiACIhAKQlITJeSpvISAREQAREQAREQAREQAREQARGoCgKVJqb//vtv9++//5ak7WaeeWb3nzigkuTcOJl899137v7773eLLLKI69Kli5tlllkapyAFnvrPP/84/iSlplrmfFXK1ycboj5fffWVmzBhgv/zySefuMUXX9ytuOKKboUVVnDLLLOM7wfTp093J510kjvooIPcuuuu2yT7RVMu1KRJk9ybb77pvvnmG/frr7/6Mahly5Zu6aWXdh07dnRzzDFHoxa/0LjYEP2wvgAK1aGY/CttbC+m7rpWBERABERABESghAQqSUx/+eWXXiiUKr322muuffv2pcquUfN56aWX3IYbbpgpw5JLLunef/9916JFi0YtV9LDe/fu7a644orEco0fP96tvvrqTa7M+QrUvXt3d8cddyRe8tdffzkm9uVIv//+uzvrrLPcxRdfnMl+nnnmcT/99FPW/3fccUcvskeOHOkGDBjg9txzz3IUp+Ly/OGHH9zVV1/t2/ajjz7KW7+uXbv6xYq11167UTjssMMO7pFHHkl89nLLLec+/PDDRilX2odqbE9LSteJgAiIgAiIgAg0KIFKEtO//fabe/HFF924cePcySefnJPj/vvv75ZddlnHZJhJ2pQpU7yQiKdKEtO77767t0qH6c4773T77rtvg/a3NA979913vZi+7bbbal3+8ssvu3XWWSdNNk3mmtdff92ddtpp7rHHHqtVpnKJaSzNW265paMPk+jzF154oVtsscW85RQr6oknnlir30tMp+s2d999tzv88MOzFib22Wcfd8wxx/ixhYWqp556yi9mhIn38KabbnL//e9/0z2o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QAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREQAREQAREQAREQAREoN4EJKbrjVAZiIAIiIAIiIAIiIAIiIAIiIAIVBsBielqa3HVVwREQAREoFIIjBnzhps4cbKbZZZZ3JdfTquUaqkeIiACIlA0gUUXben++ecft8IKy7i111696Pt1gwjUiYDEdJ2w6SYREAEREAERaFQCt912n2vXbkU377zzuAUXnL9Ry6KHi4AIiEBjE/j333/dt99+777//kc3YcIk16PHbo1dJD2/GghITFdDK6uOIiACIiAClUSgX7/7XMeO7d3CCy9YSdVSXURABESgJATw1Hnttbdc9+4S1CUBqkxyE5CYVu8QAREQAREQgeZD4JVXxrvIAOOWW27p5lNolVQEREAEGpjApEkfu1lnnVku3w3MveoeJzFddU2uCouACIiACDRjAvfc85Dr0KGdXLubcRuq6CIgAuUn8M0337rx499xe+21Y/kfpidUL4FKE9N//PFHYmMSnGWmmWbKfPfnn39GK/vR0n6QZptttpJ2hK+++sr99NNPUSCEFfLm+9dff/mACfH0n6hxZp111pz3/vLLL+65555zv/76q9ttN7mxlKrxpk+f7h577DHXtWtXN+ecc5YqW+VTgQRyvYO8kw888IBbc8013corr1yBNW9+VaqkNrn33mGuc+f1m18jqMQiIAIi0IAEmOc/99xo163bdg34VD2q6ghUkpj+7rvvXJs2bdy0adkRTbfaait3ySWXuNVWWy3TvieddJK74447MtcuvPDC7tlnny3ZxJeJ26KLLurF9FtvvRUFiWmXs2+dddZZ7sYbb6xVbrtho402ctTh8MMPd/PPP38UsfVLd/DBB7tHH33UX7LHHnu4gQMHVl3fLXWFEdB9+vRxL730ks/6+++/d/PNN1+pH6P8KoBAoXfwpptucoceeqhbcskl3WeffVYBNW7+VaikNunbt19kadmp+TdKM6gBC938YUFeqTIIYHQptfGkMshUZi0GDBjqevXqUZmVU62aBoFKEtMQZZA877zz3Pnnn+8BzzPPPFFkv28TfwivvfZad9RRR7mjjz7aXXHFFW7mmWcuWaO8/vrrkRteB5/ffffdV9By/Mknn7hlllnGX7/NNtu4W265xfHZm2++6U488UQvyqnLa6+95lq3bu1+/PFHd9hhh7kBAwZITJeo1X7//Xc3evToyOLT2eeI1bFFixYlyr1pZIPVfcEFFbCoFK2R7x3EY4R+tO+++7o777yzFI9LzIMFH8aFUo5dZStsI2fcUG3SENUsVkzXeNsMj35TPnYzZvzqllhiSbfBBhtGC8yNe3TMG2+Mz7mIDEd+65ZddrmGQJr4DDzYNtusk5s+/dtokfVl99///rdsZfnqqy+j3/N7/DOWWur/98Lzbzg0lJjv3n2/yC32dff6628VVVeMGWPHvprqnk033Sz1mPXFF1+4cePGRkaJN713IX127bXXdi1bLpz1rLTlnjjxA7f11lu49dZb3919t4wQqRqsmV8kMd3MG7A5FL/SxDTMWUXeZZdd3EMPPeSboG/fvu6YY47Jag6EElbsVVdd1Q0bNizLBbwU7fb+++/7/ElDhw51O+5YeL/GIoss4icWiOTrr78+U4yPP/7YW9UR1Pz9xhtv+O+45ogjjpCYLkWD/S8PPArmmmsu/7/ffvvNzT777CXMvXGzwu34+eefd1dffXXjFqSCnp7vHWQinm+bRn0x0D832GAD76GCF4xSYQLlbpPCJSjNFcWI6QceuD/yajo08cHbbbe9u+mmWxtMqMULceihB7shQx7MCeXss8+Nfg+PKA20OuTyyy8/R0HeWvk7x44dH4ncpeqQS7pb7rqrvzv++ONyXnzddTe4XXfdPV1m9bhq++23dWPGvOKmTp1eVC6vvjrGbbfdNqnumTz5s1QL1Q8//FDkhVfbojj33HO7m2++LVro2DzzvLTlfvnl0dF8bDvXqtUyUT3HFSwv88nLLrskEu8to6jQBxa8Xhc0PQIS002vTSquRJUopmmkuMv3Bx98kLV3GWsvrtWTJk2KjhbJXuEsRSP//PPP3mJU8yM81u+dLJRWWmklRzlx577uuuuyLt9vv/3cXXfd5T9jpXaxxRaLJkE1rqRy8y5ENv33M2bMyPzI4+VQTjGUvlT1v9IWd/DEkJiuP0/LoTHfQcaJG264wW/7kJguXZs2h5zSiumRI1+IBNjOvko9ex7mOnXaxC200ELuxRdHunvuudt9+OEkt//+3aNtUJc1SrVNTPfpc5FjMTmeWJBeYYUVG6Vs9tDPP/88WlidEVmH88c+qW8hTUx37rxpRrThUfD0009GC/6P+OwffvhRt84669b3UXnvTytK45ngqfP8889lPv7jj9/9Is7iiy/uzj23T9bl22yzbcEFnHHjxrltt93S33fxxZdGluQNIkPJ3xGPpyLvw3P856NHj4kWO5b3/y6m3Fi5F1tscf8uFErEtFliiUWiLYCrRFsBXyh0ub5vggQkpptgo1RakSpVTNNOTz31lNtiiy18k2HBwSqHOySD9FprreUGDRoUBSXoltWkBA1D/E6ZMsUtv/zy0eSjUy1BxUol+2rZY73sssv663DR5kcjTPPOO6+3Jqed7OYT01jWTQS99957jmvzTeT5AcCCzX5t3MPWX3/96EentrvcqFGjvGvz119/7S3pm222WeLqO8/E0s8eYqzjrAyHe9Cpdxp2ud4fLPJDhgxxLEKsvvrqXtBS5jClyf+jjz5yTzzxhF9kwAX26aef9uXadtttfVvFE+KZtnz11Vf9ZI5+Yh4FacQ05WWv9U477eSweo0ZM8bhSbDDDju4BRZYwD/u77//9vlPmDDB9zu8IeKJfOiXiF4Wd+h37I9Pk3744Qf34IMPusmTJ/uAaSzc0O8JYEd69913vcsxjLfffnu/WEPfjPPlWvqN7Rm3Z3Nt+/bt/X/ZZkCfJhFYi9V6S5SdbQnffPONZ8g2h3DPOZzgTaL/rrLKKv49e+WVVzJ5rLHGGln9lLZ7+OGH3SGHHOLZkEeXLl0KBvVL01cKcbNC8Q6x6EYbv/DCC+7tt9+O9qvu5dsn3zs4depUN3z48Ghi3L1WM1IXtoLAg/5Av4inXO8E4w+LgZdffrm/ha0elIV2D9sjqe8w4aWP8mzGrM033zyxn9HGXPPOO+/4fkwZkwKppXnfEAS8k2GivgRmZGsFfdfSpptumhFVacYwFk2xzHMfE2P6Ln1044039q6g8VSfNqGszzzzjOe1zjrr+LGV/9OXGTeT9mDSv+FNe1Nn4l8kebuk6Q9hXdKIaURgp04b+DH1llv6RWNStnfU119Pc5tssnH0vn7txTSi2hJ9zAJ24gExdepX3jU8n6sx7cV7R5yAtMnEdCiKku4liBB/wiCidp0FErXxzq7NVQbLIynop91DXvH87L54Wfid4T1mQcvuSXo2vGeaaebMNhueHz7HxHTfvte4PffcKyuL008/JWrDm92xx/Z2J598aq3s+Y2hry2xxBIF3acLXZtLlOZrg6T68vu51FKLebfsJ598Jm2XyFx3wQXnuauu6uuuvfb6aJtc9jytX79b3SmnnBSNgye73r1P8PfEyz1t2tToXZsjMe5JnH28brjc0zYLL7yI/12nHojpp59+zj8rqR8WXUHd0GAEJKYbDHX1PqiSxTStiiWOvdEkxCgu1Ew6EVa4X4eJgGTsn95666190KCXX37ZC0ZEnglRJqOIgE022cQLcfK47bbb/DVMtsO04YYb+skdP15pBt98Ynq99dbz5SExqWPilmsiz4SR6N5MgqgnAoTJ8cUXX+wn4ZaOO+44d+WVV2as4BdeeKFDYCCuqaOl3Xff3QtEgrZ9+OGH/u9jjz3W7zO3lIZdrreM9mGf+wUXXOAnmr179/YTYybyafNnsn7KKaf4iTSJdom3B2LWhDLXMNnE/Z5JIGINkYS3giV+RHNNHikb9e/Xr5+/HMYEhSNPSwSFQ0wecMABWfsC7777brf33ntnrkNosy2BRQT6ySOPPOK9GgYPHuy23LJmZT5XQuQhWhEO9PX777/fi6sjjzzSXXPNNf422oq8KBsTXZ5Dv4Z3PMGCgHj2HQKKfBArJBaoKCuiDcaILPpWr169PAv2CM8xxxx+oYrEu2GR5mkjvkck0saXXXaZn3xzLWUkESvgoIMO8uKLfmEs8NTAO4O07rrr+j6aK6Xpi2m48cz+/fv7hRDqwKIC9SGdfvrpvs8mvYO0we233+77BCk8NYAJ5vHHH+/HCwQf7zSClPzZWw07Ur53gvKcccYZ7vHHH/fXsnDCeHDRRRflDXTIwtnOO+/sgxkyntx6663+fTnzzDPdOefUWHqsjemfiAPGQhYNjQHlYrGnmPcNMcfYYn2KhQjaHu8a+hvvHH13n3328X2NPaOFxjAWjtjiYoxpF4IHwtJS+J7Vp01gyztMf6evn3rqqX6h0gJA8jze/ZtvvjmrS/J/2pp3kYU62oz72VbEghApbX+I9/U0Yvr++++Nnn14VLZDohgiFya+LuxF3XbbrbzF+r77HvDXmGst1sCXXnrR/98S4uW4447PEo0ffzw5atvzvcWQtl5ooZZ+XD3zzHMy/Tnx4dGHacX0TTfdEOV3ejS23Zvl2su2nGWXXcp/xnekzp03jhYQ//+3I3z28su3dqNGvRItHk+L3pW2uYrlDjzwoKhOF/vvN954fS9UP/zwE///U089KRoHbnX33js46nPnRQuINduuWGBG+G2zTU3bWho4cEDUN27MlGnNNdeKxo4+nvuWW24deZzd4y/NJ6ZxhYcV3gXnnlsTD4YEe6y0zz33rGdPGdiPfNppZ0SLZdmLx2mvTRLTjz46zPXosX9kOGgdLao/Umu/chLI+orpww7rGS20DY5+u4ZEi1AbZz2CxYuPPvow+p2c1y29dM3+civ38OGPR/O8nj4+AAkRfPPNt2Y8HDActGvXxi8uscgUtmm/fv2jsfAsf++223bx3ghXX923VvWKdYFP4qPP8hPgvXrqqSf9No+kU1XoAzfccF20ILxFwdgPEtPqbWUnUOlimr3RCAebZB144IE+IBiW1tCSjNhgQmuRt1m53HXXXf2kF2slFimEDlHBEZNMivjhYqLMxAjrU/x4Kib/iGkEaJqUS0wjbs4999z//eDe5SedpKSJPJNTxFLHjh29uGF11Szx3MMEHIHGJJ4JdShMmHAinKkfE3OSXWf38dmll17qxbW5oqdll8QAjqymY3lHnNgzmcwbtzT5kw8iEqsriTZn8YRgW1ipaQf+xi2WxEIDCwb84NPmFliGCTiCj5RPTONqD5MePWr2cyFSEXFYn7AYWl1WXHFFLxDgjBA57bTTvBhBLJAs8Bziiwk7iT3+iEsENRYrREeuhMUdQRG2D54S9PcwGjkCAEFjIjZnhv/7goUIPBHo20z+LdG/sFQiMhFmpO22284LCzw/EIikkSNHZv6NdZageiTzsIiXwxaeTExjFaV/mXhlsYB3DE4Ie+uf8Xqk6Su8x2m4UQcWn2wRCxFIn6HuPJ/6J72DCK0nn3zSnXBCjcUkFNOIRqyZCFsWWrCs0ldZ6DCBnuad4BrEPQnLr3lB5GpX+jjPQXDSF0j2bvNvxCmWarwE6KswZuGE8YM2pz/Qxnz34osv+ol7Me8bDBDxcOGdsXbl2Qh1xitY8B6mGcPoZ3gQYem1xOIV5WPREIHOAqiNIfVtExbPGM9tsY73m3GYRYWePXv6Inz66acZrx6ENJ/Th+jbJMZN+hPlYjEHtmn6Q1KbphHTZ5xxmhdxiL5NNqkJqhhPtEvr1sv4jydN+tiX6cEHH4gmsIf437dFFlnUv98TJ06MvCxqTo+48cZbor6/i/83YwyiEHdxxEfbtitH/fsp79XA/l7EZT5rbX3FNL/vyy23dJaYvvPOO6Kgo99lVXXMmJe92KeMt99+pw8uiaU3nu67b5CvC0IaQU2Ki2n2NSN84bP66mtEfW69TJ25nn247MclmQjlWvanY+l8/PHHfEAzPALSiGkY77VXNx+Ea8iQhyOPog183ojCLl229sJviy22dGus0T7qn+N8PXk+otLcmIu5Ni6mR4wYHnkt7Os9MBC21CFNqq+Yvv322yIr/IlewF9//Y2+fvmSlRvWG2/cKSpvG78QRHuywDN27OtelCWJ6bBN6fMYS1ZbbY1obrK4H58uvvhC395HHdUrymMOv6ihVF4CthjIlgDe2XAcYX7evfv+jr6Z5LkQL5nEdHnbSrlHBCpdTNPITFwRxJZC4cJnWHqJltm2bdvMvmQ+x/3QxBmTCa5BbJqVw8QPFgvyiLuMn3322X7COmLEiFR9zcQ0AozJPkIKIYwlD2HFBC4MpJY0kUdAs2CAe3NoXUbkMWGnzNTfJrAIAnOztMk1k14rM+ITBlheCLaEpRYhiZhArBbDLgmCTfKxrjLRNlHA5N24pm0bfiRt/zsi1VasEbkIMfoAQoBkghWLKtZ5S1hKTbzmE9Ncz4BuUZRxbzb37XC/fLhXn0mRuW5zDYHObC88lg/Li3/bHvt4X40zxErMgg+Tc0Q0CWsi4poFBHPlNjGNwGNBqFAKF2BwE+fdICEeWGTClRuLHZZjXNoRX/S5MJlXCAsNiDX6DhZQ3ou4mDbxbmKafBAuxoHyWHT8XGUvpi+m5XbVVVd5qzvvHwsg8RXyXN4heEGYW7SJafuM+rOwYwnrJYs4tshS6J3gvlBMc1pBoS0BiE/GE94Ls35TLuItsLCI9Zl3j4U4+jKLh6FQpU+a+y5jDO9TMe8bZSZPti+QwjKzcMTE2xbn0o5h5MMYR/9E2O+5554+b94FXMhJYUT++rQJeZknD14stLslCxzJ+IXbPO8Ggpl/hy7sfE792cpwzz33+G0f9JFC/SGpv6cR04hcBNgbb7wdeRnkXpDr2nXnaFx8IVpIGeutmSamEWSPP/5Upm8NGjQw+v05MtGih6X1kENq+jSLIfvtt7cXdfmEPNeamL7wwotrLRqy6LXVVjWLcLks00liOs4Ll93NNuscjVezRgtEz+U8zeCFF56PFsR38QK3f/+7Mt5kucQ0lk2Ct5nXGWxghEX/gAN6+N+HFVZY1i88IWyxSJNYyOU5BPlKEtNcw0IE97/33gRv0UbInXfeBZGo/n+PJhOAoasz91566cU+YFa4F76Ya0Mx/fjjI3xb4qo9aND9RZ0EUV8xjdfBAQfsm9mHTX9kUYjFBBYPLFCotbeVG8+Jk046JdMNtt56c7+4M2LEk9F2pQ55xTQLHiwWhbFStGc6aQQq/2d4dBLvYdQoDCGHR3OHGmMLyRYK6Qss8BQ6zUJiuvztVfVPqAYxTSNjbWTCyqQYV+ZwlSsUDgjZpMTkB0F67733+gkoCdGKOMCympQQBlhPwolXvg4XimmewY801vNWrVr5SVh8r13SRB5hg8DJVQ/EFQKNBAf7QUJ8YdHBkhJGDMfd3UQpYhQRGu7vLIZdUt1rLCOtvSUVMYH1tmvXrpkJSjH5Y9kyMc4ChO0fRUAjDGCCoCCZaIi754cByPgRLTRI2754LGDhnnTrX4iQ0APCrke0Uz7LP1d7MYE3y1cSPyZctCNiCqGE1RRPBhKWZfoDycQ0ljHaOU1iHyhW1NCij/innXDTJbEtAst7UmCzcBHLFhWKEdMs/lj03NC6m6vsxfSVtNxwQUek4bYa3xZCOXKJaRbfrE2t7KHHQZK3ASKXRS4mcvneCZ5bjJhm8YsxKu5lEOcYLiQlxXmwRRo77quY941nwaFdu3Ze/CKcWaRjwow7OV4Nti+/mDEs6T1mEmbbM6iTBbaqT5uwcMS7g3U5vsXF3hOi5bNIYx4+eKjw/uZKaftD0l7sNGJ6lVXaeOvnlClT8+51PvroI6LftUGZ4FYmpo85plc0bpyRKT6idPXV22XtgTWX6i+//DprK9PIkc9HE+FdovtPjwR4zRaOpFQomre509ZVTCPounbdyQvXJ5542luSkxJeBZ07bxSJxYX8deERWLnE9MCB93mXakvmHn/UUcdEXiZnRguIH0VW67WzFh/sWgTCzjvvkFNMI55JCHFLWNVZdLCFEcrF71m8fZPEXzHXmijl2Kh99tnTv5eDBg0u+liwfGKahaXPP/+slY3qogAAIABJREFUVlO0aDFX1tyF8WHo0CFu4MB7fBuGCcawtmTlDj0D+O6KKy7zluVrrrkuMobskVdMh5Z/y1diOufrW/Yv+J0jCB3zB4slcMcd/aLFkhN8Pxk+/IlMoN98hZGYLntT6QHVIqZt0o+YZt9zmGzCzJ7bpH2k4bWsKiMuEC2WsGxiMY67syFmsDLhvpkm5dsznXR/0kTeXHypo0UTz/VsLHm4W+L+ixsurpZYoEMxzb2IJfhZ4homiuRfDLtc5WAiTWAsC2yFaMeajKAoJv9ck3sstLhampgOJ9txERyK6TR73XOJafs8l5hG4PAjzUIFLswEKaprwgUVkYor68knn+z33nKmbpKYDl34Cz0vDOCHKCEoHPUaP368X4wgsWUAixzWNRPxli9WI5sU2j7RYsR0aA1NI6aL6SuUMQ03WzwrhZgmXgPux7jlI0zzpXzvBPeFYtrco3Plx4IIgo9tKGxxyZXCxQ/eA7Ng2/Xs+T3//PO9hwALF2nft/B55v6MRZYYBbQZ42fY/4sZw5LEdOgxUkhMF9MmucS0vQMmpq2P48lD/rlSMc+O55FGTCOEnnzyCX8+cr5I1Ftssanf9zthwkS/GGliOikQ1iKLLJiJamz7lSkbbrRhQsSTsPTddtsdORmYmL7ssitqWc9ZTLajj+oqpm1/c1JdrFD09R126OIZPPfcSO+qHqZcYjoeNI0I0Ztv3tnv8eRIL3OPjluOydtcjQu5edOX6cN3331n9Jt7qXe1fvbZkT66OEd2IXRHjHiqFl9rU46g+vfff1JfyxhvotQyveqqayMDQo3XRzEpn5i+8srLI++22jE7sN5jxU9KbGcZO3ZMZAzoFzGoCWjG4kKPHjXu+Fbur776Jmsuhhjv2fOgSFRfFcUq2SevmH755VdrnWsuMV1Mq5f+Wgw6eBfgzXTUUUdHHpFXeQ8J+n3ao+okpkvfLsoxRkBi2nmXO/a/IeiIHJwmYeXGsmICkD3NTDbDxOQUl0MLnFQo31KIaQYXLHqFjuNCKOKWzgTQ3BPN9Tsupik3+bGPmRVCEkGP2AuL2CiWXRIHJgwEnrKgPlg/cc3C/TRt/mkn91hyzfLAJD6M+lsqMW2un/nENJMN9qmS0ljBk7jZHlfc9emTTIZsD3N9xTQCFpdU3H4RCLjO4t5v55xTHnPPxkuDgFZhCqPvIu7xriinmC7mPU7LrZRiGvdgvFUQj7iOF0q53gk8HUIxHe6NT8oT8c62kdAzI+k63jdzpbc91OF1LKDhks5+Qt7LtO9bmAeLfBbhnUUuFn/YQ21bZrg27RjGtfUV08W0SVoxTZ3w/kg64jBkUcyz4+2VRkzj6ovLL2IWUZuUTPDQp15//S1/iYnpJBEViunwDOa49Znx7LPPsPZuluWaHC9D/fdM15wDHQYgs2cMHnxfFKTusIJHfx133DH+mLBwL3hYzlxiOi684mJ6/PjXIzf1zSOvuP0jT57/D9ZJ3u+883Zk1e6Uas+0lcXc8RH8Sy/dyu8VTyem/019bZKY5vkvvDDKC/liUj4xzWLcG2+8Xis79it36bJdwceYdXKDDTaM+mtNgLxcUcglpgvibPIX8C6x4IUBCA9NjogrtIc+rJTEdJNv4uZfQInp7EA8tjc6bFkmmVh0sOAyocSlFdc7Vkqx0uIqTGKlPtxTyYQCQZH2rOJSiGkLrJRL3DDBwzpJsB5cf3FDtCN2ksQ0FkXcl7EksYeYSaItGuASjjslgcxIhdglvS1YhrF04tpNYjEDKyCJYEnsxU2bfzGTe7Mcsw899BwIxbQdn5HvLc9lmU4jpnHztr7BGeIWWM6eh0hiwo2gSwriw0otYhxhhaXDgs2USkxTDrP24oXAIgtBuCyOAN8TCRqGYVAlK7+dbc3/zW3YxHR8r3rSnuliLdNhQK18fZF942m5lVJMhwGo2KccHxfYK4zQZAEj3zvBe1uMmA7dm8NAddZOcCOgIIuJ5knA+GDbWew6299vLv3FvG/hO4SbNC7O9CcWaiyYo12TdgyjDesrptO2CeNTWjHNNhoLTBhuN7H6YZ3HU4aFQwtIlq8/2NgYMkwjpgl0td9++0QeR+tEi6ZDE4/uIkAZ+w933HGnKFhZTaT6tGKaa01oTpw4OdWJFfGxNK2YtqOQwsBg5GWu1HExbcIWsTl06LCcUcWx+Pbufazf782+76RUVzHNb8kyyyzprfYvvjg6K64BEbivvfbqosT0Lrvs6KOrmytyMa7bxVxrovTjjz/3Lta9eh3lA5rF3d/z/S7yXX32TDPXOOmk4yNPqPm8lT+eLBq7RWfne4npQi3SvL8nmN+tt94cGV0OSbXgEtZWYrp5t32zKH21iGmsnrg0J7l547rNvmQmPrgYEzTGAlkh9nDjIyAXljn28+GeZ9GJsfBi8WHPL6674V5I3EiZKHImab6IptZRzCKTJISTOhMuo5SFoGhM+knmRsm/w6NhEPaIHkQN15hrYngv+xg5xiW0YDHpxUIWRk9mDy95sDcQ4ZaWXVIdWKFGMPK3JSbyiDbKwmQ3bf4sbpigDCexWNEQ5WG9rD+YBdz2NYcCsJDFj/IWcvMOI/yG11tfYT8ugpVyYEE0yyB75dh/uf/++2cdoxUyNPd1PrMo9NyHmyz1p30IFkbCcwI37LR9y55Dv+F4NTvyKxTtXIOrrgVeiwetssjooYu0RcMPg9xhrWTBhL20tDfWT1K4ZzrNwkba9xg2FmG5EDdbTMjltZL0DlJ2xJEFbTMXdcYD9gyTEKQsYpmgNmHFe8B1+d4Jtl2wQm9u2Iw9SWeoh23IQp3FJcATBSHL2IU7OWMIbccCEN4nBPNKCihn4xOLbsRNKOZ9C/st7WzBEcMj3OyatGMY1yeJ6ZBN6OZdnzaBNUHzOA4vvmea4G4sLJqbdxgAjVgNeIgQ04DFVrwnWDjDU4MAZGn6Q9zdnnqnEdM8b5dddvAePkSm7tPnoqzfIQu4RX6PPfZkZuwpRkxbYKuzzjonWmQ7MtPMuJffdtst0e/lTiWxTFtZCTzFXl5LdhZxKKZZ5Nl00439di4sqrlimhDgcJtttvCLDVg3cy1611VMU0b2dmJF5RlHHHFk1A8W8K7311xzla9CITdvrmHso/7dutWM5bhuY0E+8cTjo+1mt/tzlnElt4T7NG7U3bsfGP1u1wSbLObauCglojaRtWHfv//dBeOIWDnqI6bJw7YpJJ2Rft1110S/aQRy/P/AVOUS0/BfbLGabQyffDKl4HFv4VinfzcNAhLTTaMdKroU1SCmmTSyH9iONcEKg0ALk0V85jMEN2IZIYTVhmBLTKRIiGkmaExIsSIxgUcIIRiYJFmyoD/8PzwaKFdnYoJvgXIQVExYC51NbYIwFIlMJLEi21FgHBWD1ZCgZFjNEYu4OJuFkPJQNyYeiDkTTbgqwoygVlgfw7OnsSIy6cfixUQvLbukulvQqNASZnu0LYp02vxDcRm6b4d7vs17IBRq8GG/PLyJ3oy1jIQ7K3vh4+dVWz1YaGFfNwnBzvWk0GIXtn3YxgRFY+EmFBbcS5AoO2u6UMCoMDo4fQbBRzvTLizikD/RsKlTeOQXbsZM5vEwsGjZ+QY59n5ypm+uPbfWl+AId/YzYVmg/Lw/TOYt0jiLUrYQhSjBwwPRzyIAfMgD7wcWAcI922mieVOHNH2lGG5meWdMsAjmIaukd5DvbZ8y/w4jVxMFmzKSqCttRL/lfYUVC29p3gnuN3GL8GVRDEGMWEtKYXn4nv7COwDz0CuCsY3xhP7De4PYJdFfOnfunBVorpj3LV4mC9oV7r+3a9KOYYy95gkUBvsK3dXtPatvm3C/LUCG72UYf4F4G4wjJFu8sjpZO/N/Fkss0nua/pDUnmnENPdNmzbVuxrze4SFdOutt/HjP+LMzke+4447s85GLkZMx49cIloyWwQ41gYvh6eeerbWHtSwPmkt04ypa621hh8nODcYt3XGafYlk0IxffDBPfyRSJydzbFVYcLSedBBB/uFjbXX7uADtO2zz361BDeLPRZJvD5imnFw//338ZHNw4SFnf3cuaJ5d+tWE+QU6/YzzzydCUR2wgknRYuNJ/rvWMzaZpst/dFYnTtv6gPD0absJ8Zi+8gjwzPRt4u5Ni5KeR+JqkwAsHik7KS+aZ/VV0y/+OJIHzyOhJCnb5FefXWMryP9a+jQR6LF3NX85+US0+TNee30aTwdNt54Ex9YT6n5EJCYbj5t1WxLWuliGjdmJusmEq2hsIwRwCsU1ViumRyHCeGBFcmiLmMtZBJJ4ugTJrBMPgn6FK6AM4FGVJDCs0aTOgpnDzNxtf3XXMMxNFin4vuw+Y5JPfudmSBbYrKG6MHixBE+CB+eawkLCfs1bd8Tkyv2KbIowGIAFimCSCFi+IzrEbiww72dH3WCJrEQwQ8zAdjMuscz0rBLqjvCAbdOJvXsw0ZcwRQLZRjFulD+HNlElGHyISFUWARhYmcLIXyOiEBwYonGMoQrq4lnmONCixsz/cP2atsez7D8PA8xiBi29sLyC0tc/60cfEc5sKBRH1vk4Drc2OlvCFBcOcM+Sh5YccOoskn8OLrMzj1HzDOZZyUdwYoApO0QwjWT0bUyz2fbQvxc9KT8+cwWAfItCtlxRjyTxQcEAwmPCVtwsPzp0wh8+jvtQf/nnSJaNpZ4FgU4Lzp8J8iXelCfQqlQX+H+QtwItMUWB94FS/QpPDTglu8dRCwjaq0P0K9oS7wQmFyzQGPnnVvf4d20oGRp3wki3zM2kXh3aNN8/YX3CvEW9kH2ucM7TLjXc52NA4h23hnajXeJxZ66vG/hM2hrxGeuwHuFxjDeFRYwbYGU/oFHA2MSnEP2tAeW//q0iR2lZnUgRgG/DSyu2vjBdybq8Ubg9wU3bhvXic3A70SbNm0yKNL0h6T+nlZMc++kSROjrSynZoI2WX647p5yymmZM6PtcxPTSee3Lr98K79f99lnX8gUC1frCy/s4wWjRZ/ecMONowWF8yIPhBpPjFyJPc3sbY4H80q6nrY+8sjD/LnBJMbwyy670p/BHIrp9ddfJ3NNPB/qTLRncxPOVa7wWCkiln/66SdRnp/4y80aH48azRFWXGsByMK8EbyIQMbmdddd31uWV1llpeid39Yfw0Xi7Gryjifq2aHDmlE7da219518+/Q5L8MegQmL0047s5bBIO21O+64XbSwNzqaR0zPFMWOF2PxAc8AxG2hRN9ecslFc+7rLnQ/3+Ouf/TRR/rjwcKEqL322huyAusllZt7Hnnk4eh3tnv0m1MTSI25Wdu2eBnuGM2J+uVtU3sm5Tj11JMzEcVDNmnqoWsal4DEdOPyr4qnV7qYLrYRcWslyBaTIdy648eSICqxhmDdQpBiTTbRHH8Wgzarsxz90hiJ5+NyyN5Cc1uPlyN+RBPfI7zs3FpWpXF/428s9fxY48qeZDUvxC6JAZYdi5pN1Eb+zQJHkstdXfJPw53FASzzuMrS7rjCh8dZpcmjFNfAF0sPCx62dzVNvrQNkbPtWDDu4f/03fh5mVjT6Q/xY9byPQePBRZeEFl25FDS9UyeWKCgT2HZyeVeyb1YFRFMtphlEanTbIdIwyRNX0nLLc3zir0Gyxhux7xnMAjfp2LeCfoLY0w+1vGy0b+5J+6dE7+O9sGNH4FOeya5Gxdbb7seUUHZzRsnVz5pxrC6liF+X742qeszqCcLejDM9TtB3sU+uxgxbWXHSv3ZZ59HCzp/eO6I4kJH/xVTb/ot7z59GrFYrsRv7x9//B4dLbhwqu1T5SpHmnwHDLgnCi75pz83OmRy6623RIL35Fou2mnyTLqGfsb7SrsW8mgr5tq6lqfU9/3880/e44q6rbDCimXtX/nKzvyP36hSjoWlZqX8ahOQmFavKDsBiemyI9YDRKDZEmBxgSjceA/g+q8kAiLQ+ATqIqYbv9TVVwKzYmPJ5VimeeaZNwpGNjKyiN7krfgcA8VxUEoiIALlIyAxXT62yvl/BCSm1RVEQARCArhT4sZPcCSsarhWJ0UlFjUREIHGITBo0CORS/H6Td4y2zh0ms5T8b447rhe0baIEbUKFd+r3nRKrZKIQOUQwCDw7LOjIhf/5OMBK6emqkmjEpCYblT8ergINDkC7Mdn/60loryHx2E1uQKrQCJQZQQGDHgo2ovaLnIdn7/Kat48q0vgT/Z6s51oxRVX8lt55pprruZZGZVaBJoRgW+++TY60/zdKJbGDs2o1CpqsyMgMd3smkwFFoGyEsAyzVnMBE7ivNxDDz20rM9T5iIgAsURGDPmjWgv7t9RAKZlirtRV4uACIhAFRGYNGmyjx2z9to1Ud+VRKAsBCSmy4JVmYqACIiACIhA2Qj063d/tN921Sgg5MJle4YyFgEREIHmSuCLL75y48e/GwVQrTmjXUkEykZAYrpsaJWxCIiACIiACJSNAIK6bdvl3XzzzetdvksVDb9sBVbGIiACIlBGAuyRnj79u+jEnR+ik3k+ioT0bmV8mrIWgf8RkJhWVxABERABERCB5klgzJjx0RGIn/hjrr78clrzrIRKLQIiIAIlILDYYi2j89z/dcsv38p17Lh6CXJUFiKQgoDEdApIFXLJjL+i80z586dz0VijJAIiUCUEZvqPcy1mjf7M4tyc0R8lERABERABERABERCBEhCQmC4BxCaexbe/Off+d879+XcTL6iKJwIiUHYCs83s3IpREOgF5ij7o/QAERABERABERABEahsAhLTldu+f/7j3KRIRH89o6aOM8/k3NyRdWqe2aJ/R5YqJREQgeog8HfkifLTHzV/zCul5ZzOtY5E9azRuKAkAiIgAiIgAiIgAiJQBwIS03WA1kxueWe6c9MjIY2L54KRFWrKt85NjP78Frl6K4mACFQXgTki9+4VFnBuyejPN5G3CqK6ZQvn2kb/VxIBERABERABERABEagDAYnpOkBrBrd8/atzEyLhjDX692jivNe9zk39uRkUXEUUAREoK4HF53Hunj2iRbb/7Z1uu2AkqiMrtVI2gbFj33QTJ052U6dGq5JKIiACVUmgZcsFo4j5rV2HDqtUZf1VaREQgRQEJKZTQGqGl7w21bmfo0Bj80UT5s63OPddJKjbLeLc1is4N1fk5q0kAiJQXQR+iVy8R0x07u1obFgwskg/c5Bz30djBNs+2uuo4qzOMHbsW+7XX2e49dfv4GaZRRHbqutNUW1F4P8J/PnnX27UqHFu7rlb+HPdlURABESgFgGJ6crrFOyPHDWlxr37s8iosmdkld6olXMvHFJ5dVWNREAEiiOw8c3OjfzEufsi6/TikYs37t7rLe7cLNo7nQE5cOBDbrfdukhIF9e1dLUIVCQBBPXgwcPdnnvuUJH1U6VEQATqSUBiup4Am+Dt7JNmv/SCkevm/eOdO+cZ567c1rleGzTBwqpIIiACDUqg70vOHTs8Ghc2c26X1Zwj2n+7hRTdO2yEvn37uV69ejRou+hhIiACTZeAxoSm2zYqmQg0OgGJ6UZvgpIXYPIPkUX6J+eWnc+5a6OJ8yUjnbt5J+cOXrvkj1KGIiACzYzALa86d8hQ507cyLkj13du8o/OLRXto2a8UKohoImzeoIIiIAW2NQHREAEUhGoZDH977//uj//jDYFBmm22ZI3DHMd14dppplmapZufhOj47C+/CWK3Bsde9M3EtIS06leBV0kAlVBIBTTvSJBzXix2Fw148U///zj/vorfbj/xhwjv/jiCzdixAi3/fbbu5YtW2ba7pdffnHPPfdctOf518hVe7c6tanEdJ2w6SYRqFgCGhMqtmlVMRGoP4FKFtPffvut22effdxjjz2WATVw4EC3xx7RZsFYOvbYY91tt93mfvopMulGaeGFF3annHJK5OrXq/6QGzgHiekGBl7gcb///rubffbZm1ahVJqqJZBPTI8aNcr17t3bvfzyy6n4bLXVVl7QNkbq1q2bu++++9whhxzibrrpJvfll1+6gw8+2D366KO+OIzzjPd1SZo414Wa7hGByiWgMaFy21Y1E4F6E6hkMW1wmFxtt912GVavvfaaa9++fS12U6dOdYsuuqhbccUV3euvv+5atIhC3jbDlEZMv/rqq27atGmuU6dOUZTKubNq+eGHH7r33nvPrbTSSq5169ZZ3/3888/u+eefd/PPP38U6TbyEU2ZdtllF8czP/vss5R3lP4yJv1E5t18881rZT5mzBj39ddf+zpRtzB9+umn7q233vIsYPLiiy9GgUj29Isthx9+eN6C8v0NN9zgXnjhBbfRRpEZUEkEGplAPjFtRTvqqKPctdde6//71FNPRcfCdPD/xnuHBceJEye6Y445xi86Pvvss41So0suucSddNJJ7uabb/YimvTjjz+6ww47zA0YMEBiulFaRQ8VgcokIDFdme2qWolASQhUg5gG1H+Cii655JJeLC+0UBR1J5Y23HBDL7SvueaakvBtjEzSiGkTeQ8//LB3kwzTAQcc4Pr37+/23Xdfd+edd2Z9N2zYMH/9oYce6kVi2gTXl156KcuV/vbbb3cff/yxnxA3xMLF8ssv7z766CP3zTffuAUXjA7X/V9CILCIwuJCv379XPfu3bOqdeKJJ7pLL73UW7mwdiEutthiC3fRRRf5sudLm222mXvmmWcy93It4gM3VPJq27ZtWoS6TgRKQiCNmEag9uzZ0z/v888/d0sssUStZz/99NPu9NNPd6NHjy5JueqSCdtzZp111qxbr7/+enfEEUdITNcFqO4RARFIJCAxrY4hAiKQk0A1iWkszh988IFngRgaPnx4rT3RWFDbtWvnzj333Gbba9KI6QcffNB17drVnXDCCQ4LjyX2TP73v//11qd55pnHff/99459kZYQj1w/ePBgf3/alCSmTWhOnz7dLbBAdEZPmROWtKuvvto98sgjWZ4K7777rltllVX803fffXd3773RWWJBWnPNNR3eDLiRIrqLEdNYyrDyr7322pkFnT59+ngRkrSQUWYEyl4EXBoxzUJXjx410aynTJniFl88Ojsrlti+wLvQpUuXJkUVl28W++Tm3aSaRYURgWZNQGK6WTefCi8C5SVQTWL68ccfdxdffLG3FJLiQtLEFMLqrLPOygKP6zNuwrgpY9neYIMNEl3F33zzTR/4Zt1113WTJk3yew9btWqV5eKLO/ETTzzhRSuuv/POO2+tRn7//fe99XzGjBlu1VVXdWuttVataxC0WFV33XXXLMt7GjGNgMUy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58477zzfIMcee6y74oor/L8vueQSP2G7+eab3cEHH5zVYIjz33//PWMFKWdranJVTrrKWwSaH4FyjQn77ruvu/vuu71w3GabbdxSSy3lrcuW3njjDde5c2f/33XXXdeNHDnSnzLw77//Rkf3re9efvll/92nn37q77XEguQtt9zi//vkk0/679577z03aNAg/yc+9uZrkWHDhrm99trLL4TuvvvuXrC3bdvW30Kep556qnvkkUf8/4cOHep23HHHejcwY/3o0aMzdf/ll1/870c5UrnathxlVZ4iUI0E0ojpSZM+cWPGvO7xLLJISzd16tf+3+us0z7yfmxVEJvEdEFEukAEmgaBahDTX375pVtppZX8xIvJ4b333psogPl8jz32cIceeqi74YYbMg30559/ullnnbVWg2Ft6dSpk3f3K3fS5KrchJW/CDQvAuUaEzbccEPXvXt3d+CBB9YCwvaYtdde27377rv+O1yrbUsM/z/88MP92Imnz48//ph1/x133OHzJX3++eduiSWW8P9GhJ9yyinu4osv9v/HmrzDDrmP/HriiSfcVltt5a8966yz/B/cycOEm3qvXr3ctdde6wYOHOjH9VIk6j/XXHP5rH777Tc3++yzlyLbWnmUq23LUlhlKgJVSKCQmP7kk88jL5axnkz79qtEi30ruAkTJrrXX3/Hf7bBBmtFWwyXzEtOYroKO5aq3DwJVIOY3nvvvd2AAQN8A33yySdu6aWXztlYm222mVt88cXdXXfdlbdBsaTsueee0VmvgyWmm2fXV6lFoFkTKJfgwmKMWLZ9xyEkFhCvueYa/1H//v3dfvvtl8UQr56+ffsmimnGyt12281fj1s446wl4le0adPG//fII4/MPCPeQIhZFkYR43gYvfnmm1lW8/B6Yl9QlyuvvDJxYaAujT9jxoyMNRrPpKRF1rrkG7+nXG1birIpDxEQARdtLcl9zvSUKV+555+v8dDp0GHVrH3S7J9+7bW3/HedOq0bLSoumhOnxLR6mgg0EwKVLqZHjRoVrQBuUHCSZs313HPPeZfvO++8M9OCTCw//PBDH4SMFE4KcSfcaKONfNAbLN+4/oWJ7wiw89FHH7nPPvvMf8UkcoUVVvD/HjNmjBs/frx3WZx77rlz9hpNrprJC6ViikADESjXmIDFlUBe8fToo4+67bbbzn+MazWe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QHQQ09FiI7lIEiABEiABEiABEiABEiABEiAB7xGgmPYea45EAiRAAiRAAiRAAiRAAiRAAiRgEQIU0xbZSC6DBEiABEiABEiABEiABEiABEjAewQopr3HmiORAAmQAAmQAAmQAAmQAAmQAAlYhIBVxfSuXQfk+PFTqnzSxYtXLLJb1lpGypTJVK3srFkzSKFC71lrcVwNCZAACZAACZAACZAACZCAtQlYUUxPnbpAcufOJvHjvx3qutLW3vXIsboXL17IjRu35NatO+Lvf0JatqwbOSbGWZAACZAACZAACZAACZAACZBASASsJqanTVsghQvnk+TJk4S0dP4eiQjAe2DfvoPSogUFdSTaFk6FBEiABEiABEiABEiABEjAHQEriemdO/eLYeyUTJnSccOjIIETJ05L7Ngx6fIdBfeOUyYBEiABEiABEiABEiCBaEfASmJ6zpylkj9/brp2R9Gr+Nq1G7J//yFp1OijKLoCTpsESIAESIAESIAESIAESCDaELCSmJ4/f4WULVss2uyd1RaKGOqNG3dI/frVrbY0rocESIAESIAESIAESIAESMBqBKwkpkePnmZYNWtZbYui1Xrmzl0inTu3jFZr5mJJgARIgARIgARIgARIgASiIIHoJqYvXbooc+fOkYQJE0ratLbY6hgxYki2bNmNv9MG2cEWLZoZrsd+4ud3MArubthMuUmThnLs2DHZtWtv2HQYTC8U0+GOmAOQAAmQAAmQAAmQAAmQAAmEBYHoJqZnzZoh3bp1dYkuderUMmXKdClQoKD99xo1qhoicqdcvnw9LHBHyT4qViwnf/11wCsMKKaj5CXCSZMACZAACZAACZAACZBA9CMQXcV06dJljDJMNnfiM2fOyJIliwzrs5/6e+3aDZInT171mWJahGI6+t0XuGISIAESIAESIAESIAESIIEQCERXMT169E/SsGEjJzqDBg2QcePGyhdffCkDB34Xopi+f/++XLt2Vd55J43EihUrWNI3btyQ58+fS9KkSYM97v79e/LgwQNJlix5qK7dmzdvqvMSJUrk8nzMAW7taLdv35abN29IhgwZnY69d++u3LlzV1KlSiWvGRdISGL63LlzkjJlSpcMMB4axsTngICzxtwSS/z48V3Oj5bpUG07TyIBEiABEiABEiABEiABEvA2AYrpl8SPHDkipUsXl5w5c8mG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imnv8uZoJEACJEACJEACJEACJEACJEACFiBAMW2BTeQSSIAESIAESIAESIAESIAESIAEvEuAYtq7vDkaCZAACZAACZAACZAACZAACZCABQhQTFtgE7kEEiABEiABEiABEiABEiABEiAB7xKgmPYub45GAiRAAiRAAiRAAiRAAiRAAiRgAQIU0xbYRC6BBEiABEiABEiABEiABEiABEjAuwQopr3Lm6ORAAmQAAmQAAmQAAmQAAmQAAlYgADFtAU2kUsgARIgARIgARIgARIgARIgARLwLgGKae/y5mgkQAIkQAIkQAIkQAIkQAIkQAIWIEAxbYFN5BJIgARIgARIgARIgARIgARIgAS8S4Bi2ru8ORoJkAAJkAAJkAAJkAAJkAAJkIAFCFBMW2ATuQQSIAESIAESIAESIAESIAESIAHvEqCY9i5vjkYCJEACJEACJEACJEACJEACJGABAhTTFthELoEESIAESIAESIAESIAESIAESMC7BCimvcubo5EACZAACZAACZAACZAACZAACViAAMW0BTaRSyABEiABEiABEiABEiABEiABEvAuAYpp7/LmaCRAAiRAAiRAAiRAAiRAAiRAAhYgQDFtgU3kEkiABEiABEiABEiABEiABEiABLxLgGLau7w5GgmQAAmQAAmQAAmQAAmQAAmQgAUIUExbYBO5BBIgARIgARIgARIgARIgARIgAe8SoJj2Lm+ORgIkQAIkQAIkQAIkQAIkQAIkYAECFNMW2EQugQRIgARIgARIgARIgARIgARIwLsEKKa9y5ujkQAJkAAJkAAJkAAJkAAJkAAJWIAAxbQFNpFLIAESIAESIAESIAESIAESIAES8C4Bimnv8uZoJEACJEACJEACJEACJEACJEACFiBAMW2BTeQSSIAESIAESIAESIAESIAESIAEvEuAYtq7vDkaCZAACZAACZAACZAACZAACZCABQhQTFtgE7kEEiABEiABEiABEiABEiABEiAB7xKgmPYub45GAiRAAiRAAiRAAiRAAiRAAiRgAQIU0xbYRC6BBEiABEiABEiABEiABEiABEjAuwQopr3Lm6ORAAmQAAmQAAmQAAmQAAmQAAlYgADFtAU2kUsgARIgARIgARIgARIgARIgARLwLgGKae/y5mgkQAIkQAIkQAIkQAIkQAIkQAIWIEAxbYFN5BJIgARIgARIgARIgARIgARIgAS8S4Bi2ru8ORoJkAAJkAAJkAAJkAAJkAAJkIAFCESImLYANy6BBEiABEiABEiABEiABEiABEiABOwEXrwwBeO1F0YzdSQOCqzYTZ/IA0mABEiABEiABEiABEiABEiABEggChAwKZEppqPAXnKKJEACJEACJEACJEACJEACJEACXiJAMe0l0ByGBEiABEiABEiABEiABEiABEjAOgTCRUxbBw9XQgIkQAIkQAIkQAIkQAIkQAIkQAKhJvB/HcBnsAbKLCoAAAAASUVORK5CYII=", "text/plain": [ "" ] }, "execution_count": 104, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "A `submit()` action submits the order. (Note that our Web server does no effort whatsoever to validate the form.)" ] }, { "cell_type": "code", "execution_count": 105, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.737760Z", "iopub.status.busy": "2025-01-16T10:12:41.737547Z", "iopub.status.idle": "2025-01-16T10:12:41.783313Z", "shell.execute_reply": "2025-01-16T10:12:41.782959Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "(\"submit('submit')\", 'PASS')" ] }, "execution_count": 105, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_runner.run(\"submit('submit')\")" ] }, { "cell_type": "code", "execution_count": 106, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.784895Z", "iopub.status.busy": "2025-01-16T10:12:41.784785Z", "iopub.status.idle": "2025-01-16T10:12:41.798134Z", "shell.execute_reply": "2025-01-16T10:12:41.797735Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZQcRdu2C4fAiyZYcHeX4G7BCRDc3YJbcHd3l+DuQUNwggaCQ3B3lyB/rsr/zFdbWz3TPTuzmZ296xwOsNN6VXV33Y/VKP8Nb05NBERABERABERABERABERABERABEQgN4FRJKZzs9KGIiACIiACIiACIiACIiACIiACIuAJSExrIIiACIiACIiACIiACIiACIiACIhAQQIS0wWBaXMREAEREAEREAEREAEREAEREAERkJjWGBABERABERABERABERABERABERCBggQkpgsC0+YiIAIiIAIiIAIiIAIiIAIiIAIiIDGtMSACIiACIiACIiACIiACIiACIiACBQlITBcEps1FQAREQAREQAREQAREQAREQAREQGJaY0AEREAEREAEREAEREAEREAEREAEChKQmC4ITJuLgAiIgAiIgAiIgAiIgAiIgAiIgMS0xoAIiIAIiIAIiIAIiIAIiIAIiIAIFCRQTEyPMkrBw2tzERABERABERABERABERABERABEehABP77L9fFSkznwqSNREAEREAEREAEREAEREAEREAEOgUBielO0c26SREQAREQAREQAREQAREQAREQgVoSkJiuJU0dSwREQAREQAREQAREQAREQAREoFMQaBcxnfMknQK4blIEREAEREAEREAEREAEREAERKDjEYhrg+XUuW3Lmc55ko5HU1csAiIgAiIgAiIgAiIgAiIgAiLQKQhITHeKbtZNioAIiIAIiIAIiIAIiIAIiIAI1JKAxHQtaepYIiACIiACIiACIiACIiACIiACnYKAxHSn6GbdpAiIgAiIgAiIgAiIgAiIgAiIQC0JSEzXkqaOJQIiIAIiIAIiIAIiIAIiIAIi0CkISEx3im7WTYqACIiACIiACIiACIiACIiACNSSgMR0LWnqWCIgAiIgAiIgAiIgAiIgAiIgAp2CgMR0p+hm3aQIiIAIiIAIiIAIiIAIiIAIiEAtCUhM15KmjiUCIiACIiACIiACIiACIiACItApCEhMd4pu1k2KgAiIgAiIgAiIgAiIgAiIgAjUkoDEdC1p6lgiIAIiIAIiIAIiIAIiIAIiIAKdgoDEdKfoZt2kCIiACIiACIiACIiACIiACIhALQlITNeSpo4lAiIgAiIgAiIgAiIgAiIgAiLQKQhITHeKbtZNioAIiIAIiIAIiIAIiIAIiIAI1JKAxHQtaepYIiACIiACIiACIiACIiACIiACnYKAxHSn6GbdpAiIgAiIgAiIgAiIgAiIgAiIQC0JSEzXkqaOJQIiIAIiIAIiIAIiIAIiIAIi0CkISEx3im7WTYqACIiACIiACIiACIiACIiACNSSgMR0LWnqWCIgAiIgAiIgAiIgAiIgAiIgAp2CgMR0p+hm3aQIiIAIiIAIiIAIiIAIiIAIiEAtCUhM15KmjiUCIiACIiACIiACIiACIiACItApCEhMd4pu1k2KgAiIgAiIgAiIgAiIgAiIgAjUkoDEdC1p6lgiIAIiIAIiIAIiIAIiIAIiIAKdgkCziem///67pv02ynBAo402mvv333/9P6k2+uij1/Sc7XmwrPuy+27Pa+ks5/r+++/dCy+84N566y03ySSTuFlmmcUtsMACneX2O8V9lntfFAUw6qijOv5pljZs2DB31113ue+++85tsMEGboIJJmjYW8v6nvBN4B3Z0do///zj/vvvv1aXPTLGGNfy0ksvuffee89988037s8//3RjjTWW69q1q38nzjvvvCN13MOJa8xqjTYGGKsPPfSQe/fdd916663nppxyyo42PHW9IiACItAxCTSbmF5kkUXcc889V7POWG211dy9997rP+yvvPJK8ripyUnNLqDOB8q6r+WXX949/PDDdT575zo84nnDDTdMjiPE9OWXX+7mmWeezgWlSe+23Pui6C2fddZZbvfddy+6W0Nu/+OPP3qh9NVXX5Wu7/nnn3cLLrhgw13vnXfe6dZee+3kdZ1zzjlu1113bbhrLndBn3/+eabAOvbYY93BBx/cLvczdOhQd+KJJ7rrrrvO/fzzz5nn/N///ue23nprt99++7mpppqqXa4tPAnjcuGFF84874033uiNQY3QPvroI3+t4XN11FFHuUMPPbQRLk/XIAIiIALNTaDZxDSTshdffLFFp/Xo0cN7/hDZKaHNBxFr+LPPPttq31VWWcX179/f3XPPPe744493Tz75ZKsB0ZHF9B133OH2339/9/bbb7e4L4np2j73H374ocPQY5MdJoewv/vuu93hhx/uT8bkEa/CpJNOWtuT62jtTuCZZ55xQ4YM8e8MxEOq8YwtueSS3iP3xRdfuM8++8yxXyww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MUuOP8L5xx9/9Dy6devm00uo20CqAksc4cFWEwEREAEREAEREIHcBCSmc6PShiIgAiIgAiIgAiIgAiIgAiIgAiIwgoDEtEaCCIiACIiACIiACIiACIiACIiACBQkIDFdEJg2FwEREAEREAEREAEREAEREAEREAGJaY0BERABERABERABERABERABERABEShIQGK6IDBtLgIiIAIiIAIiIAIiIAIiIAIiIAIS0xoDIiACIiACIiACIiACIiACIiACIlCQgMR0QWDaXAREQAREQAREQAREQAREQAREQAQkpjUGREAEREAEREAEREAEREAEREAERKAgAYnpgsC0uQiIgAiIgAiIgAiIgAiIgAiIgAhITGsMiIAIiIAIiIAIiIAIiIAIiIAIiEBBAhLTBYFpcxEQAREQAREQAREQAREQAREQARGQmNYYEAEREAEREAEREAEREAEREAEREIGCBCSmCwLT5iIgAiIgAiIgAiIgAiIgAiIgAiIgMa0xIAIiIAIiIAIiIAIiIAIiIAIiIAIFCUhMFwSmzUVABERABERABERABERABERABERAYlpjQAREQAREQAREQAREQAREQAREQAQKEpCYLghMm4uACIiACIiACIiACIiACIiACIiAxLTGgAiIgAiIgAiIgAiIgAiIgAiIgAgUJCAxXRCYNhcBERABERABERABERABERABERABiWmNAREQAREQAREQAREQAREQAREQAREoSEBiuiAwbS4CIiACIiACIiACIiACIiACIiACEtMaAyIgAiIgAiIgAiIgAiIgAiIgAiJQkIDEdEFg2lwEREAEREAEREAEREAEREAEREAEJKY1BkRABERABERABERABERABERABESgIAGJ6YLAtLkIiIAIiIAIiIAIiIAIiIAIiIAISExrDIiACIiACIiACIiACIiACIiACIhAQQLNJKb/+ecfxz9xG2OMMfzf//3331a/jTrqqG700Uf3f+f3v//+u8U27DtKDKkg47Zs/tlnn7n+/fu7Nddc03Xr1q10qF9//dU9+uij7rfffnMbbLBB6e9c//PPP++eeeYZt+eee7bl1CNl33fffde99NJLLe4pz4V8+umn7uWXX3ZDhgxxb775pptyyind3HPP7eaYYw43zzzz5DlEXbf5+eef3cMPP1zoHFNPPbVbcMEFC+1Tj415dq677jr37LPPum222cbNP//89ThNi2M+99xzjj5NNZ7Zcccd180222yue/fudb8WO8H777/vBg8eXDof74bVV1+98Pm/+uor99RTTxXeb7755nPTTTdd2f14X9xyyy3+Ofjhhx88o9lnn90tueSS7rLLLvP/Xn755V3Md8IJJ3TLLrts2WOPjHFQGFLOHUbmt6JR3tF//fVX8ns42mijuWHDhiVJjjnmmC2+NeE31b6l/I13+O+//+7HW6XGtryze/Xq5cLjV9qv2t/b+3zVXqf2EwEREAER6CAEmklMX3HFFW7rrbduQZ6JI3+/44473Iknnug++eST0u8LLLCA23fffd3GG2/s//bWW2+5rbbaygtR2qSTTupuvPFGt8wyy4y03uzdu7e/hh122MFdeOGF7vPPP3fbb7+9u+eee/w1bbTRRl7o0Lbddlt30003OYTb//73P/fTTz+NtOsueuJTTjnFXXzxxe7tt9929MsLL7yQ6xB//vmnO/bYY93RRx/tt19qqaW8EEf4XHLJJZ4Fguf88893iNOR1T788EN3wgknuAsuuKDVJSBi6C/E44svvlj6nf7kHkZ2w5iz2mqrlZ6Jjz/+uO6TXu770ksvLT2LxmDhhRf2gpJxbs8o/b/ddtvVHdNDDz3kNt10U4cYplX7jHGclVZaqXS9HGeKKabwY9/aDDPM4P/25JNPlv52+eWX+/dTVuO46623nv95l1128ULm1VdfdQcffHBpF7gyrs455xy3++67l/4O10GDBpVlWMtxwPM955xzurHHHrvu/ZY6wcj6VjTKOxpjAs9R+D3ke3fAAQe4TTbZxI+z+++/vwU63qtw69Kli//7UUcd5Xhv846l8fs000zjrr76av+M7LPPPv73cg3hjSGHY1x77bWlb3G9BkV7n69e96HjioAIiIAINBCBZhLTYMXqjBijMSF97733SrS/+OILx6TRJhA//vijG3/88Vv0BpMMPJkIhtdff91NNdVUI7W3TjrpJD/Bueiii7yIpiGSd955Zz/5CMX0L7/84q688kq32267VT3RH1k3i4f9zDPP9BP/Hj16uKeffrripSCY11lnHffKK6/4bfG8hcYUhGno2cWgstZaa1U8bj03OOyww0rCn/MwaUUkWWMSesghh3jDQqOIaYw4O+20U+kav/76a9e1a9d6YvLHhsVkk03W4jzffPONm2SS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r7+6Rx991NE/4Vq1LN1DfjOVueO1tlPXyrrlVOjeeOONlQdd787U8UVABERABERABERABNqXQGcR04iGBRZYwK9vilDpqI21cKl6fMIJJ7gtttjCffDBB75wE8sNPffcc27WWWftULd24YUXup122smvN/vxxx93qGuv9mLpQ9aJJn+YvkNoPv74426fffbxfUiDyw477FDtKXLtl7qOzz//3G2//fbunnvu8cfYaKON3HXXXef/m7VTb7rpJn/djDfWR89qCOhjjz3WPfnkk34T1qet1drkuW5OG4mACIiACIiACIiACIhAvQl0FjGNMLn44ovdHnvs4c4888x6Y63b8bkH7mXw4MG+YBNt//33dyeffLI77bTT3F577VW3c7f1wHjTEWFhpWa8n1R43nzzzd1VV13V1lN0mP179uzpnnjiCe/9xciDx/frr7/2Fa4x+LSHmAZWfB38DZG88847e6EfiulffvnFXXnllW633XarKKZ//PHHkke6M4hpPPCTTDJJrvH3119/eeMCz4KaCIiACIiACIiACIhABybQGcT0N99847p161bqpe+++85NNNFEHa7XWHZj0kkndXPOOad7+umnS9dPLbjXXnvNe9ypjtyIjWtfYoklvMdz8sknb3GJw4YNc2OMMUYjXnZdryl13xtuuKH3/raXmOYGU9dx3nnnuV133bWFmGbbV155xacUVPJMsy0Cs2vXrp5hM3umSVMYOHCgXx87T8Ogt8wyy/gQfzUREAEREAEREAEREIEOTKAziOlTTjnFe26/+uor31Onnnqq23vvvTtcrw0ZMsTNPffcbpNNNnHXXHNNh7r+XXbZxYenE0Yci+kOdSN1vtjevXu7G2+8sV3FdOqWLPw+9EyzHUabueaaK5eY/v77793EE0/c1GL6rbfecrPNNptfHzuPmL7++ut9WP/NN98sMV3nZ0mHFwEREAEREAEREIG6E2h2MU347PTTT+8OPfRQH1Z79dVXe+/up59+WlXBLkJgBw0a5MjBZm3cFVdcMenlRjS+/PLLbujQoX67+eabz3Xv3r1Vf/I76+6SN0wY9MMPP+y++OILH37LdVujWFX//v19GPfqq6/ujjzyyNJveP0wFIwyvDPXXnvt0t/JiX3kkUfcBBNM4EX4HXfc4b2QCCSKlRG2S27rOuus4//OfZGDvdZaa5VE0D//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0x2lp3SdIiACIiACIiACIiACIiACIiACDUNAYrphukIXIgIiIAIiIAIiIAIiIAIiIAIi0FEISEx3lJ7SdYqACIiACIiACIiACIiACIiACDQMAYnphukKXYgIiIAIiIAIiIAIiIAIiIAIiEBHIdBMYvqff/5x/BO3McYYw//933//bfXbqKOO6kYffXT/d37/+++/W2zDvqPEkDpK5+o6a07g559/dm+99Zb74YcfXPfu3d0ss8ziRhtttMzz/Pfff27YsGHJ3+Ox9ddff7Xabswxx6z5PeiAzv31x99uyBMfuSlnnNhNPv2E7Yrki/d/cEOe+siNM96YbpYFp3Tdphq/Xc+f92R//PGHe/XVV93CCy+cdxdtJwIiIAIiIAIiIAKdi0AziekrrrjCbb311i06cPnll3f8/Y477nAnnnii++STT0q/L7DAAm7fffd1G2+8sf8bImmrrbZyzzzzjP//SSed1N14441umWWW6VyDQnebJHDVVVe5/fbbzy222GLuyy+/9OOEMcTf55xzzuQ+r7zyitttt93c448/3uL3lVZayZ177rlu5pln9n//7bffvGh5/fXXS9vNMccc7uqrr/bnUKsNAYTslUcOcC88+J4/4EFX93LzLz99bQ6e4ygX7f+A++Sdb92M807u7rn4Bb/HqY9s5aaetWuOvdt3k1VXXdXdf//97vLLL/fvRTUREAEREAEREAEREIGIQDOJaW7tpZdeKomPGWaYwb333ohJM+2LL77wgsUE9Y8//ujGH7+lVwgP9jzzzOM+/vhjL2ymmmqquowZvJB//vmn+9///leX4+ugtSWAcEZEMy5sTOy8887uggsucIwzPHhdunTJPOkJJ5zgDjroIP/7ZZdd1sroYzvefPPNboMNNnC77LKLF9tqtSXw77//ue8+/9kduFo/99O3v7lDrt/AzbPUtLU9ScbRnr7rLXf6Tne5Mx7bxnvErzrqUXf3hc+7I2/dyM2+aH3eM225MYvIwRh09tlnt+VQ2lcEREAEREAEREAEmpNAs4lpeglv86mnnuo77MMPP3TTTDNNqfPOP/98L1RojzzyiFtuueVadCxhuZNPPrnbf//93T777FO3Tt9jjz28x7tXr151O4cOXDsCNqZeeOGFkrFm0KBBbtFFF/UnefLJJ93iiy+eecJ77rnHrbHGGv53hLntF++Ah3rcccf1kRRrrbVW7W5AR2pB4NB1rnVvPfeZO+zGDd1cS/zf+6GemE7d/g737L3vuH7v7enGHHtEasmfvw9zY40zRj1PW/WxMTSS1rDXXnu50047rerjaEcREAEREAEREAERaFoCzSimCdeebbbZfJ8de+yx7uCDDy713/fff+8mnnhi//+bb765D9ENm3kgP/roIzf11FPXpd+vv/56H1qOF1Jiui6Ia37QY445xh166KFu7733LhlqyK8n75l2++23u7XXXjvzvA888IBbZZVV/O+hIE/tgEfw0UcfVXpBzXvx/w5oYvqIm3u7ORarz3MeX36fpS51nw/93l0zdC83xljZefZ1vO1Ch15kkUXcc889504//XS35557FtpXG4uACIiACIiACIhApyDQjGKajlt66aV9niohuXinKTRmbcEFF3Qvvvii/9/vvvvOTTTRRKXfdt99dzdkyBA3YMCA0t8IFe/fv38pxHeJJZZw888/f4vxQcg2nm6OhdeRsF/+f9ZZZ3UrrLCCs0JSFsbLzoj8pZZayk0//fR+u3KN3Fu8lj169HDvvvuu925OO+20fn9rX3/9tUO0TTjhhP7vcQg7233++efu5ZdfdkOHDnXTTTedm2+++XwhrbgREn/nnXe6HXbYweeS33fffW711Vcv5fgiJAcPHuzvkwJueGUJd87TuA+O98Ybb/hcY4wbhFDD6JZbbnFhIS7+jgHkzTffbHFohCn7PfXUU75/abCBJY0Q/ltvvdW9//77bpxxxnH0OXnKqWJyzz77rB8Pv//+u99u3nnn9QzDxjghdxTBPNNMM/mfPvvssxK7Tz/91E055ZSZt19UTD/22GMt+pYDwwCP9QQTTOBTEcYbbzz/77DRb88//7zjemaccUYvyE3w5+kb+pqx9s0333iDFPnanM8a/QYnGmOW/uNcMLTGmArHAmOEMbvOOus47ovna5NNNmnx3KWu7fdf/nLvD/nKffLWN268Ccd208zezU01yyStNv3hq1/d8w+861bcbF732XvfuZceed8tsMIMbooZRjzXw4NN3Hsvf+7eeelz98/f/w73RE/rLu37oPdMp8Q0x+C8f/3+9/BzdvX5zWEjVHzIkx+5Lv8by00zW1f3/P3vDi9c+K9bYu3Z3Gij/997xvah0BkFz07Y8lb/p/0uW8eNMeZobqLJxnPTztGtdOi894s3Gw/3vMtM50YZdRT3zPDw8e4zT+LmXHyEUeC7L35xQ1/50i208ow+lP3tFz4bft//uQVXnMGNPvy8NI7x2pMfu99//cvNvshUbuIpxmvFddNNN3XXXnutjH55HhxtIwIiIAIiIAIi0DkJNKuYpnDTFlts4Ts1DOdGXIUTfXJed9xxR78dImGyySZzZ511VqngDuJu/fXX90WkENFnnnmmF7LXXXed22ijjXwFcIrz4JkkJBKBjMgkrNfa9ttv7y666CL3yy+/eBGB15FtESpTTDGF22yzzfyxUo3zkWOLwCE0HKPAGWecUdqUHPB7773XYQTA420NkUXoMYKLxnVyX4Rsrrbaal4o3XTTTT5//Mgjj3QHHnigF7OIvnPOOcfdddddPp+bvF3jiFh9+umnffEt8nqp9ot4RWBxPxR4Izy+XGPb3r17uwMOOMDNNddc7uSTT/bX+dVXX7lu3bq5iy++2At42pZbbul/RxjDn2JItPPOO88z4/oQ5IRPI8ARdAhahBtsYQMX7hNREOd+wmTXXXd111xzjWfAsTg/jSrdiMjjjjvOrbjiislbsoJ39CnHKNfaKqY33HBD98EHH3huGHf4dxx+y/UwRigcRW4345RxcNttt1U0dNB/eB8Za0RsjD322KXxdOmll/r+pnEf/E5/kQZxyimn+FoEjD2uhwbD7bbbzo+dK6+80ns32R/jDseiHXLIIe7oo4/ORPbK4x+6s3a9x0046bhuvuWm88LvvcFfuB5rzOK2PXZFN0HXLm7wwA9c/8tf8sXExh53DLfdcSu5c/rc64858wJTuGPv2tSL2IsPfHC4+HzbrddnMff3n3+7/le87EUm7YhbNnJz9BiRr/z3X//4POZB/d9xcyw6tXv7xc/cVx/96M+525k9/bHuvuh59+iNQ4bnXf/iNj5wKffkHW+6j9742u/f99r1vcCNG+f/+fvf3TN3v+1/4nijjz7acAE8seu152L+b3nul8Jl91z0wvBzvuH++HWY2+2snu6Sgx70/03b64K13MCbhrgXHx7qpp9rUrfq1gu48/fpX7qc8Sfp4g6/aUP33HDxf/2JT7S4zNMGbN3KUHH44Ye7o446yj9XeKnVREAEREAEREAEREAEIgLNKqYRB+aZDcO5CdfFw0jDO4voIuyWhieTsGvzVv/000/es82xfv31V19gyryR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gAABAgQIECBAgAABAsK0Z4AAAQIECBAgQIAAAQIECFQKCNOVYC4nQIAAAQIECBAgQIAAAQLCtGeAAAECBAgQIECAAAECBAhUCgjTlWAuJ0CAAAECBAgQIECAAAECwrRngAABAgQIECBAgAABAgQIVAoI05VgLidAgAABAgQIECBAgAABAsK0Z4AAAQIECBAgQIAAAQIECFQKCNOVYC4nQIAAAQIECBAgQIAAAQLCtGeAAAECBAgQIECAAAECBAhUCgjTlWAuJ0CAAAECBAgQIECAAAECwrRngAABAgQIECBAgAABAgQIVAoI05VgLidAgAABAgQIECBAgAABAsK0Z4AAAQIECBAgQIAAAQIECFQKCNOVYC4nQIAAAQIECBAgQIAAAQLCtGeAAAECBAgQIECAAAECBAhUCgjTlWAuJ0CAAAECBAgQIECAAAECwrRngAABAgQIECBAgAABAgQIVAoI05VgLidAgAABAgQIECBAgAABAsK0Z4AAAQIECBAgQIAAAQIECFQKCNOVYC4nQIAAAQIECBAgQIAAAQLCtGeAAAECBAgQIECAAAECBAhUCgjTlWAuJ0CAAAECBAgQIECAAAEC/5cwjZ0AAQIECBAgQIAAAQIECPQkcO7cjlpz0blZ2dGVuWgxse/4gy4kQIAAAQIECBAgQIAAAQIXgMAOI7IwfQH0pVskQIAAAQIECBAgQIAAgUYCwnQjaNUQIECAAAECBAgQIECAQD8C/5Mw3Q+PlhAgQIAAAQIECBAgQIAAgV0L1E3z3nU1PkiAAAECBAgQIECAAAECBPoREKb76UstIUCAAAECBAgQIECAAIFGAsJ0I2jVECBAgAABAgQIECBAgEA/AsJ0P32pJQQIECBAgAABAgQIECDQSECYbgStGgIECBAgQIAAAQIECBDoR0CY7qcvtYQAAQIECBAgQIAAAQIEGgkI042gVUOAAAECBAgQIECAAAEC/QgI0/30pZYQIECAAAECBAgQIECAQCMBYboRtGoIECBAgAABAgQIECBAoB8BYbqfvtQSAgQIECBAgAABAgQIEGgkIEw3glYNAQIECBAgQIAAAQIECPQjIEz305daQoAAAQIECBAgQIAAAQKNBITpRtCqIUCAAAECBAgQIECAAIF+BITpfvpSSwgQIECAAAECBAgQIECgkYAw3QhaNQQIECBAgAABAgQIECDQj4Aw3U9fagkBAgQIECBAgAABAgQINBIQphtBq4YAAQIECBAgQIAAAQIE+hEQpvvpSy0hQIAAAQIECBAgQIAAgUYCwnQjaNUQIECAAAECBAgQIECAQD8CwnQ/faklBAgQIECAAAECBAgQINBIQJhuBK0aAgQIECBAgAABAgQIEOhHQJjupy+1hAABAgQIECBAgAABAgQaCQjTjaBVQ4AAAQIECBAgQIAAAQL9CAjT/fSllhAgQIAAAQIECBAgQIBAIwFhuhG0aggQIECAAAECBAgQIECgHwFhup++1BICBAgQIECAAAECBAgQaCQgTDeCVg0BAgQIECBAgAABAgQI9CMgTPfTl1pCgAABAgQIECBAgAABAo0EhOlG0KohQIAAAQIECBAgQIAAgX4EhOl++lJLCBAgQIAAAQIECBAgQKCRgDDdCFo1BAgQIECAAAECBAgQINCPgDDdT19qCQECBAgQIECAAAECBAg0EhCmG0GrhgABAgQIECBAgAABAgT6ERCm++lLLSFAgAABAgQIECBAgACBRgLCdCNo1RAgQIAAAQIECBAgQIBAPwLCdD99qSUECBAgQIAAAQIECBAg0EhAmG4ErRoCBAgQIECAAAECBAgQ6EdAmO6nL7WEAAECBAgQIECAAAECBBoJCNONoFVDgAABAgQIECBAgAABAv0ICNP99KWWECBAgAABAgQIECBAgEAjAWG6EbRqCBAgQIAAAQIECBAgQKAfAWG6n77UEgIECBAgQIAAAQIECBBoJCBMN4JWDQECBAgQIECAAAECBAj0IyBM99OXWkKAAAECBAgQIECAAAECjQSE6UbQqiFAgAABAgQIECBAgACBfgSE6X76UksIECBAgAABAgQIECBAoJGAMN0IWjUECBAgQIAAAQIECBAg0I+AMN1PX2oJAQIECBAgQIAAAQIECDQSEKYbQauGAAECBAgQIECAAAECBPoREKb76UstIUCAAAECBAgQIECAAIFGAsJ0I2jVECBAgAABAgQIECBAgEA/AsJ0P32pJQQIECBAgAABAgQIECDQSECYbgStGgIECBAgQIAAAQIECBDoR0CY7qcvtYQAAQIECBAgQIAAAQIEGgkI042gVUOAAAECBAgQIECAAAEC/QgI0/30pZYQIECAAAECBAgQIECAQCMBYboRtGoIECBAgAABAgQIECBAoB8BYbqfvtQSAgQIECBAgAABAgQIEGgkIEw3glYNAQIECBAgQIAAAQIECPQjIEz305daQoAAAQIECBAgQIAAAQKNBITpRtCqIUCAAAECBAgQIECAAIF+BITpfvpSSwgQIECAAAECBAgQIECgkYAw3QhaNQQIECBAgAABAgQIECDQj4Aw3U9fagkBAgQIECBAgAABAgQINBIQphtBq4YAAQIECBAgQIAAAQIE+hH4NxubwcBuDqn8AAAAAElFTkSuQmCC", "text/plain": [ "" ] }, "execution_count": 106, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Of course, we can also execute action sequences generated from the grammar. This allows us to fill the form again and again, using values matching the type given in the form." ] }, { "cell_type": "code", "execution_count": 107, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.799953Z", "iopub.status.busy": "2025-01-16T10:12:41.799830Z", "iopub.status.idle": "2025-01-16T10:12:41.834554Z", "shell.execute_reply": "2025-01-16T10:12:41.834259Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "code", "execution_count": 108, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.836998Z", "iopub.status.busy": "2025-01-16T10:12:41.836839Z", "iopub.status.idle": "2025-01-16T10:12:41.838942Z", "shell.execute_reply": "2025-01-16T10:12:41.838638Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer = GrammarFuzzer(state_grammar)" ] }, { "cell_type": "code", "execution_count": 109, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.840459Z", "iopub.status.busy": "2025-01-16T10:12:41.840351Z", "iopub.status.idle": "2025-01-16T10:12:41.843576Z", "shell.execute_reply": "2025-01-16T10:12:41.843260Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "while True:\n", " action = gui_fuzzer.fuzz()\n", " if action.find('submit(') > 0:\n", " break" ] }, { "cell_type": "code", "execution_count": 110, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.845137Z", "iopub.status.busy": "2025-01-16T10:12:41.845025Z", "iopub.status.idle": "2025-01-16T10:12:41.846968Z", "shell.execute_reply": "2025-01-16T10:12:41.846604Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "fill('city', 'S0.')\n", "fill('email', 'o@i')\n", "fill('name', 'MF')\n", "check('terms', False)\n", "fill('zip', '7')\n", "submit('submit')\n", "\n" ] } ], "source": [ "print(action)" ] }, { "cell_type": "code", "execution_count": 111, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.848345Z", "iopub.status.busy": "2025-01-16T10:12:41.848243Z", "iopub.status.idle": "2025-01-16T10:12:41.910826Z", "shell.execute_reply": "2025-01-16T10:12:41.910517Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "(\"fill('city', 'S0.')\\nfill('email', 'o@i')\\nfill('name', 'MF')\\ncheck('terms', False)\\nfill('zip', '7')\\nsubmit('submit')\\n\",\n", " 'PASS')" ] }, "execution_count": 111, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_runner.run(action)" ] }, { "cell_type": "code", "execution_count": 112, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.912442Z", "iopub.status.busy": "2025-01-16T10:12:41.912316Z", "iopub.status.idle": "2025-01-16T10:12:41.926019Z", "shell.execute_reply": "2025-01-16T10:12:41.925669Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZQbR9N2O8wch5k5DjMzcxxmZmZmZmZmRoeZHE4cZsY3zPj7dv7SV9vbI412tfJa+9Q5Pralwds9o36qqqsH+3eABZkIiIAIiIAIiIAIiIAIiIAIiIAIiEBpAoNJTJdmpQ1FQAREQAREQAREQAREQAREQAREIBKQmFZHEAEREAEREAEREAEREAEREAEREIE6CUhM1wlMm4uACIiACIiACIiACIiACIiACIiAxLT6gAiIgAiIgAiIgAiIgAiIgAiIgAjUSUBiuk5g2lwEREAEREAEREAEREAEREAEREAEJKbVB0RABERABERABERABERABERABESgTgIS03UC0+YiIAIiIAIiIAIiIAIiIAIiIAIiIDGtPiACIiACIiACIiACIiACIiACIiACdRKQmK4TmDYXAREQAREQAREQAREQAREQAREQAYlp9QEREAEREAEREAEREAEREAEREAERqJNAfWJ6sMHqPLw2FwEREAEREAEREAEREAEREAEREIFBiMC//5a6WInpUpi0kQiIgAiIgAiIgAiIgAiIgAiIQI8gIDHdI5pZNykCIiACIiACIiACIiACIiACItBIAhLTjaSpY4mACIiACIiACIiACIiACIiACPQIAk0R0yVP0iOA6yZFQAREQAREQAREQAREQAREQAQGPQJpbbCSOrdzc6ZLnmTQo6krFgEREAEREAEREAEREAEREAER6BEEJKZ7RDPrJkVABERABERABERABERABERABBpJQGK6kTR1LBEQAREQAREQAREQAREQAREQgR5BQGK6RzSzblIEREAEREAEREAEREAEREAERKCRBCSmG0lTxxIBERABERABERABERABERABEegRBCSme0Qz6yZFQAREQAREQAREQAREQAREQAQaSUBiupE0dSwREAEREAEREAEREAEREAEREIEeQUBiukc0s25SBERABERABERABERABERABESgkQQkphtJU8cSAREQAREQAREQAREQAREQARHoEQQkpntEM+smRUAEREAEREAEREAEREAEREAEGklAYrqRNHUsERABERABERABERABERABERCBHkFAYrpHNLNuUgREQAREQAREQAREQAREQAREoJEEJKYbSVPHEgEREAEREAEREAEREAEREAER6BEEJKZ7RDPrJkVABERABERABERABERABERABBpJQGK6kTR1LBEQAREQAREQAREQAREQAREQgR5BQGK6RzSzblIEREAEREAEREAEREAEREAERKCRBCSmG0lTxxIBERABERABERABERABERABEegRBCSme0Qz6yZFQAREQAREQAREQAREQAREQAQaSUBiupE0dSwREAEREAEREAEREAEREAEREIEeQUBiukc0s25SBERABERABERABERABERABESgkQQkphtJU8cSAREQAREQAREQAREQAREQARHoEQQkpntEM+smRUAEREAEREAEREAEREAEREAEGklAYrqRNHUsERABERABERABERABERABERCBHkGg1cT0X3/91dB2G2wAoCGGGCL8888/8U/OhhxyyIaes5kHK7ovu+9mXktPOde3334bnn322fDGG2+EMcYYI0w11VRh1lln7Sm33yPus9r7ol4Agw8+eOBPq9iff/4Zbr311vDNN9+ENdZYI4wyyijd9taKfk/4TeAdOajZ33//Hf799992lz0w+hjX8vzzz4d33nknfP311+H3338PwwwzTBhzzDHjO3HmmWceqP0eTlxjkXW3PkBfvffee8Pbb78dVl111TDeeOMNat1T1ysCIiACgyaBVhPTc845Z3j66acb1hjLLLNMuOOOO+IP+0svvZQ9bm5w0rAL6OIDFd3XoosuGu67774uPnvPOjziec0118z2I8T0hRdeGGaaaaaeBaVF77ba+6LeWz7llFPC9ttvX+9u3XL777//PgqlL7/8snJ9zzzzTJhtttm63fXecsstYaWVVspe12mnnRa23XbbbnfN1S7os88+KxRYhx9+eNhnn32acj/vvvtuOProo8OVV14Zfvzxx8JzjjTSSGHjjTcOu+++e5hgggmacm3+JPTLOeaYo/C811xzTXQGdQf78MMP47X65+qQQw4J+++/f3e4PF2DCIiACLQ2gVYT0wzKnnvuuTaNNvfcc8fIHyI7J7T5QcQb/tRTT7Xbd6mllgp9+/YNt99+ezjyyCPDY4891q5DDMpi+uabbw577LFHePPNN9vcl8R0Y5/7Dz74IODoscEOg0PY33bbbeHAAw+MJ2PwSFRhrLHGauzJdbSmE3jyySdD//794zsD8ZAznrH5558/RuQ+//zz8Omnnwb2SwVGK4npM888M2yzzTZtcGyyySbh/PPPb3ob1TrhV199Fa9r7733brfpscceG3bbbbdah+hW39PPzj333KxjphlimsjpfvvtF4W0N0Tf6quvHn+D+/XrF9+JZ511VrttEPtEg5tlv/zyS4ycMy7Ydddd2522O4npPffcMxxzzDHtrpHsj9FGG61ZyHQeERABEeiZBFpZTBMBQQRPMcUUsXEvueSSsOGGG7ZraFIOl19++fg5A2Ci0R9//HH8v4lp/v3AAw8EBsCpDcpimns5++yzw1ZbbdXmtiSmG/s+SCOVRFsY/KSZFFdddVXo06dPY0+uow00Aq+++mqYfvrps+cnSjvyyCO3+e6nn34Kl156aWBwbKK6lcQ0AvT4449vc89kY7z44osDrY1qnXjJJZcM99xzT5vNeHZ5hgdF4/2CEPTW1WL6u+++C2uttVa466672pwXx/css8zSDiN8eQa8rbDCCuGKK64II444YtOx4/RKHend6V3N+IWxTmrdNeuj6Q2oE4qACIhAVxJoNTFtomW66aYL999/fxh77LEr+MqIaTYmOjjffPPFKOISSywR7r777niMTz75JJtuNqiLaTgttthibbqZxHTjnrqXX365Xfr2UUcdFQeLiCkfibzxxhvDyiuv3LiT60gDlQDvhtx8Zxx9pP0XmX8mW0lMP/744/Hd6q27p0zvsssu4cQTT2xzzYOymD744IPDQQcd1DQxTUQapzR92tvFF18cNthgg8JnYOeddw4nnXRSm+9Ju7/++uubGqHmApiDzLvZW3cS00T24ZJakbNioL4UdXIREAERaDUCrSqmSZeca6652jRXWTHNTvxQrr322hLTrdbhB8L9XHTRRXHunzcbjPsIDA4gBj8U4ZG1DoHUYcKd1RLTbLPDDjuEU089NbSSmOa+Tj755HhPpFEz75j0XaY4dFcjxfeEE05oc3mDYpq33UCzxfRee+3VLrWbaS7vvfdeqFa8s2iON9NiUmdAV/ednJjuTmneTNWiT6aGo3ZgRPK7uj10fBEQARHoVgRaUUzzI81cofSHuh4xzf5UWvYRWkWmu1XXHWQuJpey6CNbTCn43//+F4vcyVqPQFkxjQOQtHDmEGP8f5555mk5Mc29Ue2cSslDDTVUt29wiemONxFZXlNOOWW7A5RNK1966aXbpYZzMGpQTDTRRB2/sDr37O5i+rrr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/33k0atXrzi9hLoNTFVgiSMi2DIREAEREAEREAERKE1AYro0Km0oAiIgAiIgAiIgAiIgAiIgAiIgAv8RkJhWTxABERABERABERABERABERABERCBOglITNcJTJuLgAiIgAiIgAiIgAiIgAiIgAiIgMS0+oAIiIAIiIAIiIAIiIAIiIAIiIAI1ElAYrpOYNpcBERABERABERABERABERABERABCSm1QdEQAREQAREQAREQAREQAREQAREoE4CEtN1AtPmIiACIiACIiACIiACIiACIiACIiAxrT4gAiIgAiIgAiIgAiIgAiIgAiIgAnUSkJiuE5g2FwEREAEREAEREAEREAEREAEREAGJafUBERABERABERABERABERABERABEaiTgMR0ncC0uQiIgAiIgAiIgAiIgAiIgAiIgAhITKsPiIAIiIAIiIAIiIAIiIAIiIAIiECdBCSm6wSmzUVABERABERABERABERABERABERAYlp9QAREQAREQAREQAREQAREQAREQATqJCAxXScwbS4CIiACIiACIiACIiACIiACIiACEtPqAyIgAiIgAiIgAiIgAiIgAiIgAiJQJwGJ6TqBaXMREAEREAEREAEREAEREAEREAERkJhWHxABERABERABERABERABERABERCBOglITNcJTJuLgAiIgAiIgAiIgAiIgAiIgAiIgMS0+oAIiIAIiIAIiIAIiIAIiIAIiIAI1ElAYrpOYNpcBERABERABERABERABERABERABCSm1QdEQAREQAREQAREQAREQAREQAREoE4CEtN1AtPmIiACIiACIiACIiACIiACIiACIiAxrT4gAiIgAiIgAiIgAiIgAiIgAiIgAnUSkJiuE5g2FwEREAEREAEREAEREAEREAEREAGJafUBERABERABERABERABERABERABEaiTQCuJ6b///jvwJ7Whhhoqfv7PP/+0+27wwQcPQw45ZPyc7//6668227DvYCmkOhl3ZvNPP/009O3bN6ywwgqhV69elUP9/PPP4cEHHwy//PJLWGONNSqfc/3PPPNMePLJJ8NOO+3UmVMPlH3ffvvt8Pzzz7e5pzIX8sknn4QXXngh9O/fP7z++uthvPHGCzPOOGOYbrrpwkwzzVTmEF26zY8//hjuu+++us4x4YQThtlmm62ufbpiY56dK6+8Mjz11FNhk002CbPMMktXnKbNMZ9++ulAm+aMZ3aEEUYI00wzTRh//PG7/FrsBO+991548cUXK+fj3bDccsvVff4vv/wyPP7443Xv17t37zDJJJNU3Y/3xfXXXx+fg++++y4ymnbaacP8888fLrjggvj3oosuGlK+o446alh44YWrHntg9IO6IZXcIfeu53eAvlXL/vzzz/Dvv/9WNrN9cr8vRcfyvzu5bXgH8h5bbbXVwtBDD13rkjr0/YcffhjefPPNMOKII8Z35PDDDx/eeeedMMwww4QJJpgge0z2+eOPP8IUU0zRoXOW2Snlm+5Ti12Zc2gbERABERABEWgYgVYS0xdddFHYeOON27Bh4MjnN998czj66KPDxx9/XPl+1llnDbvttltYe+2142dvvPFG2GijjaIQxcYaa6xwzTXXhIUWWqhhvOs9UJ8+feI1bLHFFuHss88On332Wdh8883D7bffHg+11lprRaGDbbrppuHaa68NCLeRRhop/PDDD/WebqBtf9xxx4Vzzz03Du5ol2effbbUtfz+++/h8MMPD4ceemjcfoEFFohCHOFz3nnnRRYInjPPPDMgTgeWffDBB+Goo44KZ511VrtLQMTQXojH5557rvI97ck9DGzDmbPMMstUnomPPvqoywb4dq/c9/nnn195Fu3zOeaYIwpK+rk9o7T/Zptt1uWY7r333rDuuusGxDDW0WeM4yyxxBKV6+U44447buz7ZpNNNln87LHHHqt8duGFF8b3U5Fx3FVXXTV+vc0220Th/PLLL4d99tmnsgtc6VennXZa2H777Sufw7Vfv35VGTayH/B8Tz/99GHYYYft8nbLnQCxuueee4Z77rmn8vXOO+8cTjjhhKrX8+2334bRRx+9TdttuOGG0XHH78u7775b6n4OOuigcOCBB2a3RZTj3ODddcUVV1R+n0oduMRG33zzTdh6663j74r1Y85Fn3zttdfCAQccEH9jvPH+POmkk9o4m/fee++GP3c8W2OPPXbVu6Bvn3766SXuVJuIgAiIgAiIQBMItJKYBheDJMQYxoAUT7vZ559/Hhg0mqD+/vvvw8gjj9yGMtEXvPQIhldffbXQQ9+EpomnOOaYY+Kg75xzzqkMcBDJDIYYaHkx/dNPP4WLL744bLfddh0e6DfrvtLzEGE/+eST48B/7rnnDk888UTNS0Ewr7zyyuGll16K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foZI2mijjcKTTz4Z/z/WWGOFa665Jiy00EIt1OK6lY4SuOSSS8Luu+8e5plnnvDFF1/EfkIf4vPpp58+e9iXXnopbLfdduGRRx5p8/0SSywRTj/99DDllFPGz3/55ZcoWl599dXKdtNNN1249NJL4zlkjSGAkL344AfCs/e8Ew+496WrhVkWnbQxBy9xlHP2uDt8/Nb/wuQzjxNuP/fZuMfx928UJpx6zBJ7N3eTpZdeOtx1113hwgsvjO9FmQiIgAiIgAiIgAiIQEKglcQ0t/b8889XxMdkk00W3nnnv0Ez9vnnn0fBYoL6+++/DyOP3DYqRAR7pplmCh999FEUNhNMMEGX9BmikL///nsYaaSRuuT4OmhjCSCcEdH0C+sTW2+9dTjrrLMC/YwI3vDDD1940qOOOirsvffe8fsLLrigndPHdrzuuuvCGmusEbbZZpsotmWNJfDPP/+Gbz77Mey1zGXhh//9Eva7ao0w0wITN/YkBUd74tY3wolb3RpOeniTGBG/5JAHw21nPxMOvmGtMO1cXfOe6cyNWUYOzqBTTz21M4fSviIgAiIgAiIgAiLQmgRaTUzTSkSbjz/++NhgH3zwQZhoookqjXfmmWdGoYLdf//9YZFFFmnTsKTljjPOOGGPPfYIu+66a5c1+g477BAj3quttlqXnUMHbhwB61PPPvtsxVnTr1+/MNdcc8WTPPbYY2HeeectPOHtt98ell9++fg9wtz2S3cgQj3CCCPETIoVV1yxcTegI7UhsP/KV4Q3nv40HHDNmmGG+f7v/dCVmI7f/Obw1B1vhcve2SkMPex/U0t+//XPMMxwQ3XlaTt8bByNTGvYeeedwwknnNDh42hHERABERABERABEWhZAq0opknXnmaaaWKbHX744WGfffaptN+3334bRh999Pj/9ddfP6boerMI5IcffhgmnHDCLmn3q666KqaWE4WUmO4SxA0/6GGHHRb233//sMsuu1QcNcyvZ94zdtNNN4WVVlqp8Lx33313WGqppeL3XpDndiAi+OCDD2p6QcNb8f8OaGL6oOv6hOnm6ZrnPL38HRc4P3z27rfh8nd3DkMNUzzPvgtvu65DzznnnOHpp58OJ554Ythpp53q2lcbi4AIiIAIiIAIiECPINCKYpqGW3DBBeM8VVJyiU5TaMxsttlmC88991z87zfffBNGG220ynfbb7996N+/f3jggQcqn5Eq3rdv30qK73zzzRdmmWWWNv2DlG0i3RyLqCNpv/x/6qmnDosttliwQlKWxsvOiPwFFlggTDrppHG7asbcW6KWc889d3j77bdjdHPiiSeO+5t99dVXAdE26qijxs/TFHa2++yzz8ILL7wQ3n333TDJJJOE3r17x0JaqZESf8stt4QtttgiziW/8847w3LLLVeZ44uQfPHFF+N9UsCNqCzpzmWM++B4r732WpxrjHODFGoYXX/99cEX4uJzHCCvv/56m0MjTNnv8ccfj+2LwQaWGCn8N9xwQ3jvvffCcMMNF2hz5innisk99dRTsT/8+uuvcbuZZ545MvRGP2HuKIJ5iimmiF99+umnFXaffPJJGG+88Qpvv14x/fDDD7dpWw4MAyLWo4wySpyKMOKII8a/vdFuzzzzTOB6Jp988ijITfCXaRvamr729ddfR4cU87U5nxntBieMPkv7cS4YmtGnfF+gj9BnV1555cB98Xyts846bZ673LX9+tMf4b3+X4aP3/g6jDjqsGGiaXuFCaYao92m3335c3jm7rfD4uvNHD5955vw/P3vhVkXmyyMO9l/z/WAZJPwzgufhbee/yz8/dc/AyLRE4fz970nRqZzYppjcN4/fv1rwDnHjPObvZEq3v+xD8PwIw0TJppmzPDMXW8PKFz4T5hvpWnCEEP+33vG9qHQGQXPjtrwhvjR7hesHIYaeogw2tgjhomn61U5dNn7JZpNhHvmhSYJgw0+WHhyQPr4+FOOEaaf9z+nwDef/xTefemLMPuSk8dU9jef/XTAff8bZlt8sjDkgPNiHOOVxz4Kv/78R5h2zgnC6OOO2I7ruuuuG6644go5/co8ONpGBERABERABESgZxJoVTFN4aYNNtggNqpP50Zc+YE+c1633HLLuB0iYeyxxw6nnHJKpeAO4m711VePRaQQ0SeffHIUsldeeWVYa621YgVwivMQmSQlEoGMyCSt12zzzTcP55xzTvjpp5+iiCDqyLYIlXHHHTest9568Vg543zMsUXgkBqOU+Ckk06qbMoc8DvuuCPgBCDibYbIIvUYwYVxndwXKZvLLLNMFErXXnttnD9+8MEHh7322iuKWUTfaaedFm699dY4n5t5u8YRsfrEE0/E4lvM66XaL+IVgcX9UOCN9PhqxrZ9+vQJe+65Z5hh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bkQECBAgQIAAAQLXEBCm3R5nUaD15m3zVWuKeuu3m7bfut+KaFVYq6rVJ039P4tm+kyAAAECBAgQIECAwExAmHY7nFWBiohVsb1CZO2/3fr122+/fbdd2fG9uM+qkX4TIECAAAECBAgQIHCCgDDt1iBAgAABAgQIECBAgAABAgsFhOmFYA4nQIAAAQIECBAgQIAAAQLCtHuAAAECBAgQIECAAAECBAgsFBCmF4I5nAABAgQIECBAgAABAgQICNPuAQIECBAgQIAAAQIECBAgsFBAmF4I5nACBAgQIECAAAECBAgQICBMuwcIECBAgAABAgQIECBAgMBCAWF6IZjDCRAgQIAAAQIECBAgQICAMO0eIECAAAECBAgQIECAAAECCwWE6YVgDidAgAABAgQIECBAgAABAsK0e4AAAQIECBAgQIAAAQIECCwUEKYXgjmcAAECBAgQIECAAAECBAgI0+4BAgQIECBAgAABAgQIECCwUECYXgjmcAIECBAgQIAAAQIECBAgIEy7BwgQIECAAAECBAgQIECAwEIBYXohmMMJECBAgAABAgQIECBAgIAw7R4gQIAAAQIECBAgQIAAAQILBYTphWAOJ0CAAAECBAgQIECAAAECwrR7gAABAgQIECBAgAABAgQILBQQpheCOZwAAQIECBAgQIAAAQIECAjT7gECBAgQIECAAAECBAgQILBQQJheCOZwAgQIECBAgAABAgQIECAgTLsHCBAgQIAAAQIECBAgQIDAQgFheiGYwwkQIECAAAECBAgQIECAgDDtHiBAgAABAgQIECBAgAABAgsFhOmFYA4nQIAAAQIECBAgQIAAAQLCtHuAAAECBAgQIECAAAECBAgsFBCmF4I5nAABAgQIECBAgAABAgQICNPuAQIECBAgQIAAAQIECBAgsFBAmF4I5nACBAgQIECAAAECBAgQICBMuwcIECBAgAABAgQIECBAgMBCAWF6IZjDCRAgQIAAAQIECBAgQICAMO0eIECAAAECBAgQIECAAAECCwWE6YVgDidAgAABAgQIECBAgAABAsK0e4AAAQIECBAgQIAAAQIECCwUEKYXgjmcAAECBAgQIECAAAECBAgI0+4BAgQIECBAgAABAgQIECCwUECYXgjmcAIECBAgQIAAAQIECBAgIEy7BwgQIECAAAECBAgQIECAwEIBYXohmMMJECBAgAABAgQIECBAgIAw7R4gQIAAAQIECBAgQIAAAQILBYTphWAOJ0CAAAECBAgQIECAAAECwrR7gAABAgQIECBAgAABAgQILBQQpheCOZwAAQIECBAgQIAAAQIECAjT7gECBAgQIECAAAECBAgQILBQQJheCOZwAgQIECBAgAABAgQIECDw/xKmsRMgQIAAAQIECBAgQIAAgS0JPPPMqXrzvGcO2qmO7KDjif3UL3QgAQIECBAgQIAAAQIECBC4CQROGZGF6ZvgWvqIBAgQIECAAAECBAgQILCSgDC9ErTTECBAgAABAgQIECBAgMB2BP5PwvR2ePSEAAECBAgQIECAAAECBAhct8Cyad7XfRovJECAAAECBAgQIECAAAEC2xEQprdzLfWEAAECBAgQIECAAAECBFYSEKZXgnYaAgQIECBAgAABAgQIENiOgDC9nWupJwQIECBAgAABAgQIECCwkoAwvRK00xAgQIAAAQIECBAgQIDAdgSE6e1cSz0hQIAAAQIECBAgQIAAgZUEhOmVoJ2GAAECBAgQIECAAAECBLYjIExv51rqCQECBAgQIECAAAECBAisJCBMrwTtNAQIECBAgAABAgQIECCwHQFhejvXUk8IECBAgAABAgQIECBAYCUBYXolaKchQIAAAQIECBAgQIAAge0ICNPbuZZ6QoAAAQIECBAgQIAAAQIrCQjTK0E7DQECBAgQIECAAAECBAhsR0CY3s611BMCBAgQIECAAAECBAgQWElAmF4J2mkIECBAgAABAgQIECBAYDsCwvR2rqWeECBAgAABAgQIECBAgMBKAsL0StBOQ4AAAQIECBAgQIAAAQLbERCmt3Mt9YQAAQIECBAgQIAAAQIEVhIQpleCdhoCBAgQIECAAAECBAgQ2I6AML2da6knBAgQIECAAAECBAgQILCSgDC9ErTTECBAgAABAgQIECBAgMB2BITp7VxLPSFAgAABAgQIECBAgACBlQSE6ZWgnYYAAQIECBAgQIAAAQIEtiMgTG/nWuoJAQIECBAgQIAAAQIECKwkIEyvBO00BAgQIECAAAECBAgQILAdAWF6O9dSTwgQIECAAAECBAgQIEBgJQFheiVopyFAgAABAgQIECBAgACB7QgI09u5lnpCgAABAgQIECBAgAABAisJCNMrQTsNAQIECBAgQIAAAQIECGxHQJjezrXUEwIECBAgQIAAAQIECBBYSUCYXgnaaQgQIECAAAECBAgQIEBgOwLC9HaupZ4QIECAAAECBAgQIECAwEoCwvRK0E5DgAABAgQIECBAgAABAtsREKa3cy31hAABAgQIECBAgAABAgRWEhCmV4J2GgIECBAgQIAAAQIECBDYjoAwvZ1rqScECBAgQIAAAQIECBAgsJKAML0StNMQIECAAAECBAgQIECAwHYEhOntXEs9IUCAAAECBAgQIECAAIGVBITplaCdhgABAgQIECBAgAABAgS2IyBMb+da6gkBAgQIECBAgAABAgQIrCQgTK8E7TQECBAgQIAAAQIECBAgsB0BYXo711JPCBAgQIAAAQIECBAgQGAlAWF6JWinIUCAAAECBAgQIECAAIHtCAjT27mWekKAAAECBAgQIECAAAECKwkI0ytBOw0BAgQIECBAgAABAgQIbEdAmN7OtdQTAgQIECBAgAABAgQIEFhJQJheCdppCBAgQIAAAQIECBAgQGA7AsL0dq6lnhAgQIAAAQIECBAgQIDASgLC9ErQTkOAAAECBAgQIECAAAEC2xEQprdzLfWEAAECBAgQIECAAAECBFYSEKZXgnYaAgQIECBAgAABAgQIENiOgDC9nWupJwQIECBAgAABAgQIECCwkoAwvRK00xAgQIAAAQIECBAgQIDAdgSE6e1cSz0hQIAAAQIECBAgQIAAgZUEhOmVoJ2GAAECBAgQIECAAAECBLYjIExv51rqCQECBAgQIECAAAECBAisJCBMrwTtNAQIECBAgAABAgQIECCwHQFhejvXUk8IECBAgAABAgQIECBAYCUBYXolaKchQIAAAQIECBAgQIAAge0ICNPbuZZ6QoAAAQIECBAgQIAAAQIrCQjTK0E7DQECBAgQIECAAAECBAhsR0CY3s611BMCBAgQIECAAAECBAgQWElAmF4J2mkIECBAgAABAgQIECBAYDsCwvR2rqWeECBAgAABAgQIECBAgMBKAsL0StBOQ4AAAQIECBAgQIAAAQLbEfgfFq+ywIODuRQAAAAASUVORK5CYII=", "text/plain": [ "" ] }, "execution_count": 112, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Exploring User Interfaces\n", "\n", "So far, our grammar retrieval and execution of actions is limited to the current user interface state (i.e., the current page shown). To systematically explore a user interface, we must explore all states, notably those ending in `` – and whenever we reach a new state, again retrieve its grammar such that we may be able to reach other states. Since some states can only be reached by generating inputs, test generation and user interface exploration _take place at the same time._ \n", "\n", "Consequently, we introduce a `GUIFuzzer` class, which generates inputs for all forms and follows all links, and which updates its grammar (i.e., its user interface model as a finite state machine) every time it encounters a new state. " ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Excursion: Implementing GUIFuzzer" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Exploring states and updating the grammar at the same time is a fairly complex operation, so we need to introduce quite a number of methods before we can put this to use. The `GUIFuzzer` constructor sets three important attributes:\n", "\n", "1. `state_symbol`: This holds the symbol of the current state (e.g. ``).\n", "2. `state`: This holds the set of actions for the current state, as returned by the `GUIGrammarMiner` method `mine_state_actions()`.\n", "3. `states_seen`: This maps the states seen (as in `state`) to the respective symbols.\n", "\n", "Let us show these three attributes after initialization." ] }, { "cell_type": "code", "execution_count": 113, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.927891Z", "iopub.status.busy": "2025-01-16T10:12:41.927776Z", "iopub.status.idle": "2025-01-16T10:12:41.929235Z", "shell.execute_reply": "2025-01-16T10:12:41.929015Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from Grammars import is_nonterminal" ] }, { "cell_type": "code", "execution_count": 114, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.930566Z", "iopub.status.busy": "2025-01-16T10:12:41.930490Z", "iopub.status.idle": "2025-01-16T10:12:41.932058Z", "shell.execute_reply": "2025-01-16T10:12:41.931816Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from GrammarFuzzer import GrammarFuzzer" ] }, { "cell_type": "code", "execution_count": 115, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.933493Z", "iopub.status.busy": "2025-01-16T10:12:41.933409Z", "iopub.status.idle": "2025-01-16T10:12:41.936626Z", "shell.execute_reply": "2025-01-16T10:12:41.936327Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GrammarFuzzer):\n", " \"\"\"A fuzzer for GUIs, using Selenium.\"\"\"\n", "\n", " def __init__(self, driver, *,\n", " miner: Optional[GUIGrammarMiner] = None,\n", " stay_on_host: bool = True,\n", " log_gui_exploration: bool = False,\n", " disp_gui_exploration: bool = False,\n", " **kwargs) -> None:\n", " \"\"\"Constructor.\n", " `driver` - the Selenium driver to use.\n", " `miner` - the miner to use (default: `GUIGrammarMiner(driver)`)\n", " `stay_on_host` - if True (default), do not explore external links.\n", " `log_gui_exploration` - if set, print out exploration steps.\n", " `disp_gui_exploration` - if set, display screenshot of current Web page\n", " as well as FSM diagrams during exploration.\n", " Other keyword arguments are passed to the `GrammarFuzzer` superclass.\n", " \"\"\"\n", "\n", " self.driver = driver\n", "\n", " if miner is None:\n", " miner = GUIGrammarMiner(driver)\n", "\n", " self.miner = miner\n", " self.stay_on_host = True\n", " self.log_gui_exploration = log_gui_exploration\n", " self.disp_gui_exploration = disp_gui_exploration\n", " self.initial_url = driver.current_url\n", "\n", " self.states_seen = {} # Maps states to symbols\n", " self.state_symbol = self.miner.START_STATE\n", " self.state: FrozenSet[str] = self.miner.mine_state_actions()\n", " self.states_seen[self.state] = self.state_symbol\n", "\n", " grammar = self.miner.mine_state_grammar()\n", " super().__init__(grammar, **kwargs)" ] }, { "cell_type": "code", "execution_count": 116, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.938206Z", "iopub.status.busy": "2025-01-16T10:12:41.938096Z", "iopub.status.idle": "2025-01-16T10:12:41.958403Z", "shell.execute_reply": "2025-01-16T10:12:41.958042Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The initial state symbol is always ``:" ] }, { "cell_type": "code", "execution_count": 117, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:41.960324Z", "iopub.status.busy": "2025-01-16T10:12:41.960189Z", "iopub.status.idle": "2025-01-16T10:12:42.098365Z", "shell.execute_reply": "2025-01-16T10:12:42.098036Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "''" ] }, "execution_count": 117, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer = GUIFuzzer(gui_driver)\n", "gui_fuzzer.state_symbol" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The current state is characterized by the available UI actions:" ] }, { "cell_type": "code", "execution_count": 118, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.100120Z", "iopub.status.busy": "2025-01-16T10:12:42.100002Z", "iopub.status.idle": "2025-01-16T10:12:42.102485Z", "shell.execute_reply": "2025-01-16T10:12:42.102176Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "frozenset({\"check('terms', )\",\n", " \"click('terms and conditions')\",\n", " \"fill('city', '')\",\n", " \"fill('email', '')\",\n", " \"fill('name', '')\",\n", " \"fill('zip', '')\",\n", " \"submit('submit')\"})" ] }, "execution_count": 118, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.state" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "`states_seen` maps this state to its symbol:" ] }, { "cell_type": "code", "execution_count": 119, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.104034Z", "iopub.status.busy": "2025-01-16T10:12:42.103921Z", "iopub.status.idle": "2025-01-16T10:12:42.105912Z", "shell.execute_reply": "2025-01-16T10:12:42.105703Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "''" ] }, "execution_count": 119, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.states_seen[gui_fuzzer.state]" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The `restart()` method gets us back to the initial URL and resets the state. This is what we use with every new exploration." ] }, { "cell_type": "code", "execution_count": 120, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.107308Z", "iopub.status.busy": "2025-01-16T10:12:42.107215Z", "iopub.status.idle": "2025-01-16T10:12:42.108990Z", "shell.execute_reply": "2025-01-16T10:12:42.108781Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def restart(self) -> None:\n", " \"\"\"Get back to original URL\"\"\"\n", "\n", " self.driver.get(self.initial_url)\n", " self.state = frozenset(self.miner.START_STATE)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "When producing a sequence of actions from the grammar, we want to know which final state we are to be in. We can retrieve this path from the _derivation tree_ produced – it is the last symbol being expanded." ] }, { "cell_type": "code", "execution_count": 121, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.110484Z", "iopub.status.busy": "2025-01-16T10:12:42.110380Z", "iopub.status.idle": "2025-01-16T10:12:42.118792Z", "shell.execute_reply": "2025-01-16T10:12:42.118474Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "while True:\n", " action = gui_fuzzer.fuzz()\n", " if action.find('click(') >= 0:\n", " break" ] }, { "cell_type": "code", "execution_count": 122, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.120371Z", "iopub.status.busy": "2025-01-16T10:12:42.120287Z", "iopub.status.idle": "2025-01-16T10:12:42.122053Z", "shell.execute_reply": "2025-01-16T10:12:42.121838Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from GrammarFuzzer import display_tree, DerivationTree" ] }, { "cell_type": "code", "execution_count": 123, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.123432Z", "iopub.status.busy": "2025-01-16T10:12:42.123355Z", "iopub.status.idle": "2025-01-16T10:12:42.580058Z", "shell.execute_reply": "2025-01-16T10:12:42.579577Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "0\n", "<start>\n", "\n", "\n", "\n", "1\n", "<state>\n", "\n", "\n", "\n", "0->1\n", "\n", "\n", "\n", "\n", "\n", "2\n", "click('terms and conditions')\\n\n", "\n", "\n", "\n", "1->2\n", "\n", "\n", "\n", "\n", "\n", "3\n", "<state-1>\n", "\n", "\n", "\n", "1->3\n", "\n", "\n", "\n", "\n", "\n", "4\n", "<unexplored>\n", "\n", "\n", "\n", "3->4\n", "\n", "\n", "\n", "\n", "\n", "5\n", "\n", "\n", "\n", "4->5\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 123, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tree = gui_fuzzer.derivation_tree\n", "display_tree(tree)" ] }, { "cell_type": "code", "execution_count": 124, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.581986Z", "iopub.status.busy": "2025-01-16T10:12:42.581838Z", "iopub.status.idle": "2025-01-16T10:12:42.584461Z", "shell.execute_reply": "2025-01-16T10:12:42.584152Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def fsm_path(self, tree: DerivationTree) -> List[str]:\n", " \"\"\"Return sequence of state symbols.\"\"\"\n", "\n", " (node, children) = tree\n", " if node == self.miner.UNEXPLORED_STATE:\n", " return []\n", " elif children is None or len(children) == 0:\n", " return [node]\n", " else:\n", " return [node] + self.fsm_path(children[-1])" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "This is the path in the finite state machine towards the \"fuzzed\" state:" ] }, { "cell_type": "code", "execution_count": 125, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.586450Z", "iopub.status.busy": "2025-01-16T10:12:42.586334Z", "iopub.status.idle": "2025-01-16T10:12:42.691709Z", "shell.execute_reply": "2025-01-16T10:12:42.691232Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "['', '', '']" ] }, "execution_count": 125, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer = GUIFuzzer(gui_driver)\n", "gui_fuzzer.fsm_path(tree)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "This is its last element:" ] }, { "cell_type": "code", "execution_count": 126, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.693803Z", "iopub.status.busy": "2025-01-16T10:12:42.693680Z", "iopub.status.idle": "2025-01-16T10:12:42.695624Z", "shell.execute_reply": "2025-01-16T10:12:42.695372Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def fsm_last_state_symbol(self, tree: DerivationTree) -> str:\n", " \"\"\"Return current (expected) state symbol\"\"\"\n", "\n", " for state in reversed(self.fsm_path(tree)):\n", " if is_nonterminal(state):\n", " return state\n", "\n", " assert False" ] }, { "cell_type": "code", "execution_count": 127, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.697098Z", "iopub.status.busy": "2025-01-16T10:12:42.696994Z", "iopub.status.idle": "2025-01-16T10:12:42.788536Z", "shell.execute_reply": "2025-01-16T10:12:42.788234Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "''" ] }, "execution_count": 127, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer = GUIFuzzer(gui_driver)\n", "gui_fuzzer.fsm_last_state_symbol(tree)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "As we run (`run()`) the fuzzer, we create an action (via `fuzz()`) and retrieve and update the state symbol (`state_symbol`) we are supposed to be in after running this action. After actually running the action in the given `GUIRunner`, we retrieve and update the current state, using `update_state()`." ] }, { "cell_type": "code", "execution_count": 128, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.790668Z", "iopub.status.busy": "2025-01-16T10:12:42.790533Z", "iopub.status.idle": "2025-01-16T10:12:42.793108Z", "shell.execute_reply": "2025-01-16T10:12:42.792856Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def run(self, runner: GUIRunner) -> Tuple[str, str]: # type: ignore\n", " \"\"\"Run the fuzzer on the given GUIRunner `runner`.\"\"\"\n", " assert isinstance(runner, GUIRunner)\n", "\n", " self.restart()\n", " action = self.fuzz()\n", " self.state_symbol = self.fsm_last_state_symbol(self.derivation_tree)\n", "\n", " if self.log_gui_exploration:\n", " print(\"Action\", action.strip(), \"->\", self.state_symbol)\n", "\n", " result, outcome = runner.run(action)\n", "\n", " if self.state_symbol != self.miner.FINAL_STATE:\n", " self.update_state()\n", "\n", " return self.state_symbol, outcome" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "When updating the current state, we check whether we are in a new or in a previously seen state, and invoke `update_new_state()` or `update_existing_state()`, respectively." ] }, { "cell_type": "code", "execution_count": 129, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.794622Z", "iopub.status.busy": "2025-01-16T10:12:42.794520Z", "iopub.status.idle": "2025-01-16T10:12:42.796595Z", "shell.execute_reply": "2025-01-16T10:12:42.796372Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def update_state(self) -> None:\n", " \"\"\"Determine current state from current Web page\"\"\"\n", "\n", " if self.disp_gui_exploration:\n", " display(Image(self.driver.get_screenshot_as_png()))\n", "\n", " self.state = self.miner.mine_state_actions()\n", " if self.state not in self.states_seen:\n", " self.states_seen[self.state] = self.state_symbol\n", " self.update_new_state()\n", " else:\n", " self.update_existing_state()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Finding a new state means that we mine a new grammar for the newly found state, and update our existing grammar with it." ] }, { "cell_type": "code", "execution_count": 130, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.798113Z", "iopub.status.busy": "2025-01-16T10:12:42.798008Z", "iopub.status.idle": "2025-01-16T10:12:42.800041Z", "shell.execute_reply": "2025-01-16T10:12:42.799762Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def set_grammar(self, new_grammar: Grammar) -> None:\n", " \"\"\"Set grammar to `new_grammar`.\"\"\"\n", "\n", " self.grammar = new_grammar\n", "\n", " if self.disp_gui_exploration and rich_output():\n", " display(fsm_diagram(self.grammar))" ] }, { "cell_type": "code", "execution_count": 131, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.801838Z", "iopub.status.busy": "2025-01-16T10:12:42.801700Z", "iopub.status.idle": "2025-01-16T10:12:42.804024Z", "shell.execute_reply": "2025-01-16T10:12:42.803797Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def update_new_state(self) -> None:\n", " \"\"\"Found new state; extend grammar accordingly\"\"\"\n", "\n", " if self.log_gui_exploration:\n", " print(\"In new state\", unicode_escape(self.state_symbol),\n", " unicode_escape(repr(self.state)))\n", "\n", " state_grammar = self.miner.mine_state_grammar(grammar=self.grammar, \n", " state_symbol=self.state_symbol)\n", " del state_grammar[START_SYMBOL]\n", " del state_grammar[self.miner.START_STATE]\n", " self.set_grammar(extend_grammar(self.grammar, state_grammar))\n", "\n", " def update_existing_state(self) -> None:\n", " pass # See below" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "If we find an existing state, we need to _merge_ both states. If, for instance, we find that we are in existing `` rather than in the expected ``, we replace all instances of `` in the grammar by ``. The method `replace_symbol()` takes care of the renaming; `update_existing_state()` sets the grammar accordingly." ] }, { "cell_type": "code", "execution_count": 132, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.805598Z", "iopub.status.busy": "2025-01-16T10:12:42.805495Z", "iopub.status.idle": "2025-01-16T10:12:42.807046Z", "shell.execute_reply": "2025-01-16T10:12:42.806846Z" }, "slideshow": { "slide_type": "skip" }, "tags": [] }, "outputs": [], "source": [ "from Grammars import exp_string, exp_opts" ] }, { "cell_type": "code", "execution_count": 133, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.808480Z", "iopub.status.busy": "2025-01-16T10:12:42.808395Z", "iopub.status.idle": "2025-01-16T10:12:42.811042Z", "shell.execute_reply": "2025-01-16T10:12:42.810738Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "def replace_symbol(grammar: Grammar, \n", " old_symbol: str, new_symbol: str) -> Grammar:\n", " \"\"\"Return a grammar in which all occurrences of `old_symbol` are replaced by `new_symbol`\"\"\"\n", "\n", " new_grammar: Grammar = {}\n", "\n", " for symbol in grammar:\n", " new_expansions = []\n", " for expansion in grammar[symbol]:\n", " new_expansion_string = exp_string(expansion).replace(old_symbol, new_symbol)\n", " if len(exp_opts(expansion)) > 0:\n", " new_expansion = (new_expansion_string, exp_opts(expansion))\n", " else:\n", " new_expansion = new_expansion_string # type: ignore\n", " new_expansions.append(new_expansion)\n", "\n", " new_grammar[symbol] = new_expansions # type: ignore\n", "\n", " # Remove unused parts\n", " for nonterminal in unreachable_nonterminals(new_grammar):\n", " del new_grammar[nonterminal]\n", "\n", " return new_grammar" ] }, { "cell_type": "code", "execution_count": 134, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.812728Z", "iopub.status.busy": "2025-01-16T10:12:42.812627Z", "iopub.status.idle": "2025-01-16T10:12:42.814942Z", "shell.execute_reply": "2025-01-16T10:12:42.814686Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUIFuzzer(GUIFuzzer):\n", " def update_existing_state(self) -> None:\n", " \"\"\"Update actions of existing state\"\"\"\n", "\n", " if self.log_gui_exploration:\n", " print(\"In existing state\", self.states_seen[self.state])\n", "\n", " if self.state_symbol != self.states_seen[self.state]:\n", " if self.log_gui_exploration:\n", " print(\"Replacing expected state %s by %s\" %\n", " (self.state_symbol, self.states_seen[self.state]))\n", "\n", " new_grammar = replace_symbol(self.grammar, self.state_symbol, \n", " self.states_seen[self.state])\n", " self.state_symbol = self.states_seen[self.state]\n", " self.set_grammar(new_grammar)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "This concludes our definitions for `GUIFuzzer`." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### End of Excursion" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Let us put `GUIFuzzer` to use, enabling its logging mechanisms to see what it is doing." ] }, { "cell_type": "code", "execution_count": 135, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.816643Z", "iopub.status.busy": "2025-01-16T10:12:42.816530Z", "iopub.status.idle": "2025-01-16T10:12:42.843129Z", "shell.execute_reply": "2025-01-16T10:12:42.842606Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "code", "execution_count": 136, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.845076Z", "iopub.status.busy": "2025-01-16T10:12:42.844955Z", "iopub.status.idle": "2025-01-16T10:12:42.962095Z", "shell.execute_reply": "2025-01-16T10:12:42.961804Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer = GUIFuzzer(gui_driver, log_gui_exploration=True, disp_gui_exploration=True)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Running it the first time yields a new state:" ] }, { "cell_type": "code", "execution_count": 137, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:42.963991Z", "iopub.status.busy": "2025-01-16T10:12:42.963876Z", "iopub.status.idle": "2025-01-16T10:12:43.490975Z", "shell.execute_reply": "2025-01-16T10:12:43.490653Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Action click('terms and conditions') -> \n" ] }, { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBXhcx9WGxyzbsiyHmbGhhpkahuZ3A07SMDTM7GADDTM70DAzN5yGyU3D2DA5ZJRkyZL1zzs3ZzU7e+/uvdKKz3mePLF2L8x8AzvfwT7NVoyKIqAIKAKKgCKgCCgCioAioAgoAoqAIqAIpEagj5Lp1FjphYqAIqAIKAKKgCKgCCgCioAioAgoAoqAQ0DJtE4ERUARUAQUAUVAEVAEFAFFQBFQBBQBRSAjAkqmMwKmlysCioAioAgoAoqAIqAIKAKKgCKgCCgCSqZ1DigCioAioAgoAoqAIqAIKAKKgCKgCCgCGRFQMp0RML1cEVAEFAFFQBFQBBQBRUARUAQUAUVAEVAyrXNAEVAEFAFFQBFQBBQBRUARUAQUAUVAEciIgJLpjIDp5YqAIqAIKAKKgCKgCCgCioAioAgoAoqAkmmdA4qAIqAIKAKKgCKgCCgCioAioAgoAopARgSUTGcETC9XBBQBRUARUAQUAUVAEVAEFAFFQBFQBJRM6xxQBBQBRUARUAQUAUVAEVAEFAFFQBFQBDIikI1M9+mT8fF6uSKgCCgCioAioAgoAoqAIqAIKAKKgCLQjRBobk7VWCXTqWDSixQBRUARUAQUAUVAEVAEFAFFQBFQBHoFAkqme8UwaycVAUVAEVAEFAFFQBFQBBQBRUARUATKiYCS6XKiqc9SBBQBRUARUAQUAUVAEVAEFAFFQBHoFQh0CJlO+ZJeAbh2UhFQBBQBRUARUAQUAUVAEVAEFAFFoPshEOYGS8lz2xYznfIl3Q9NbbEioAgoAoqAIqAIKAKKgCKgCCgCikCvQEDJdK8YZu2kIqAIKAKKgCKgCCgCioAioAgoAopAORFQMl1ONPVZioAioAgoAoqAIqAIKAKKgCKgCCgCvQIBJdO9Ypi1k4qAIqAIKAKKgCKgCCgCioAioAgoAuVEQMl0OdHUZykCioAioAgoAoqAIqAIKAKKgCKgCPQKBJRM94ph1k4qAoqAIqAIKAKKgCKgCCgCioAioAiUEwEl0+VEU5+lCCgCioAioAgoAoqAIqAIKAKKgCLQKxBQMt0rhlk7qQgoAoqAIqAIKAKKgCKgCCgCioAiUE4ElEyXE019liKgCCgCioAioAgoAoqAIqAIKAKKQK9AQMl0rxhm7aQioAgoAoqAIqAIKAKKgCKgCCgCikA5EVAyXU409VmKgCKgCCgCioAioAgoAoqAIqAIKAK9AgEl071imLWTioAioAgoAoqAIqAIKAKKgCKgCCgC5URAyXQ50dRnKQKKgCKgCCgCioAioAgoAoqAIqAI9AoElEz3imHWTioCioAioAgoAoqAIqAIKAKKgCKgCJQTASXT5URTn6UIKAKKgCKgCCgCioAioAgoAoqAItArEFAy3SuGWTupCCgCioAioAgoAoqAIqAIKAKKgCJQTgSUTJcTTX2WIqAIKAKKgCKgCCgCioAioAgoAopAr0BAyXSvGGbtpCKgCCgCioAioAgoAoqAIqAIKAKKQDkRUDJdTjT1WYqAIqAIKAKKgCKgCCgCioAioAgoAr0CASXTvWKYtZOKgCKgCCgCioAioAgoAoqAIqAIKALlREDJdDnR1GcpAoqAIqAIKAKKgCKgCCgCioAioAj0CgSUTPeKYdZOKgKKgCKgCCgCioAioAgoAoqAIqAIlBMBJdPlRFOfpQgoAoqAIqAIKAKKgCKgCCgCioAi0CsQ6GlkuqmpyTQ3N5dl7Pr162f6hACV5cmd85Dx48ebu+66y8w666xms802M/379++chpR46/Tp0w3/xUlXbXOxLhWbk+XuD3Of95VTeto6KCc2PeVZpfbNcs9TcPv111/NBx98YL799ltTWVlpllhiCTPffPOZvn375sH6/vvvm7feesvsuOOO3Q7uUusxaW19/vnn5v777zdrrLGGWWmlldrc72nTppmHHnrI/Pbbb2abbbYxw4cPb/Mz9QGKgCKgCCgCioAiYBHoSWT6hx9+MHPMMUfZxvU///mPWXbZZcv2vM580EsvveQOZiJzzTWX+fjjj82QIUM6s1mx7z788MPN+eefH/vdf//7X7PMMst0uTYXa9Buu+1mrr/++thLGhsbDQfqcsljjz1mNt1003I9zj3nlVdeMausskpZn6kP61oIbLHFFo5sxckCCyxg/ve//5WlwU888YS5+OKLzRtvvGF++umn2GeuueaaZr311jNbb721mWmmmcyf//xnd325lKRl6UjKh7z55ptmxRVXTLz6zjvvdOTWF/Y+9kCR7bbbztx2220p31h42cSJE80iiyyShzftWn755Vv9TL1REVAEFAFFQBFQBH5HoCeR6alTp5oXX3zRjB071hxzzDGJY7zLLruY+eef33DIgIB/99135oUXXii4vieR6VGjRjmrtC833nij2WmnnbrcWsBaxYHy2muvLWjbq6++alZeeeUu1+ZiDcKqdtxxxxmIbigdQaaHDRvmCMncc89tzjrrrII28P1+++1nvvjiC9fGyZMn512jZLpbTbdWNfazzz4zH330kTn77LML9sJykOlffvnFHHHEEeaGG27ItW+55ZYzI0eONGuttZazTLO2n376aXPffffF9qE7kuna2lpnVX/ttdfyCLJ0MCTTDQ0Nbp2GigbGZ8EFF4zFhXdcd911ZuONN4695oorrnDr25fdd989dn9t1eTRmxQBRUARUAQUgd6MQE8i0/44XnXVVWbvvfcuGNrVV1/dEe5QcDW87LLLzJlnnpn7qieRaay577zzTl63jzzySHd47oqCYmTw4MEFTeuuxA5X1SWXXLLdyfQjjzxiNt9889x7zjvvPHPAAQeYgQMHus9w8Q8P6ksvvbR5++233ffg/o9//MOcdtppuWfg1bDaaqt1xWmibSozAs8884yzCvvSVjJ9zz33GLwzfCXNOuusY/71r3+ZQYMGFfTgjjvuMFhjQ+mOZNrvA55BrCVfbr/9drPtttvmPsL1HWt8KHgN+Ova/148X5KuQYnBPuCLv+bLPIX0cYqAIqAIKAKKQO9CoKeSaawBWD5COfDAA52bYZKccsop5qSTTnJf9yQyjZJg9OjRed3u6i7TxFBipfalu5LpJOVAuS3TDz/8sLNCI5deeqnZf//98/ArRablYjw7xIqtZLr3/CbE7ZttIdMPPvig+b//+788AHE5xgo9YsSIRGBpB5ZWX/HT3cn0lltuWWB1D8k0gGy44YbmySefzGGD58jPP/8cq3i45pprzN/+9jd3bRKZfvnllw1KZF/i9obeM8u1p4qAIqAIKAKKQBkR6KlkGpfFxRdfvACpUmQackMsGVbcnkSmST52xhlnmCuvvNLMPPPMBqv0PvvsU8aZVP5HxVnTu6ObN8h0FJnmQE386yabbGIeffTRgkFJS6YhLgsttJAhERKeHOFhvPyjrU/sCgjgofDHP/4xrymtJdMffvih+cMf/lDQrbvvvttstdVWJbsbksCeSKbjYqZRIOIdcuuttxos+Mcff3yBtwDg8fvkxz0Xs15fdNFFTokMKUfBduyxxxpIuooioAgoAoqAIqAItBEBJdPG4FaIa524N+L6fPTRR/coMi3ThKyuJLwKM+a2cRq1y+1KprPDKpbAJMtTWjLNm8U6TT4BP3ld9lbpHd0FgXKSadySCTsIhVwVVVVVqSA58cQTzamnnuqu7S1kWoCpr6+PtUbzPQnhCL3wLffFyDT3UCGBrO0DBgxIhb1epAgoAoqAIqAIKAIpEOjtZJoDRnV1tdl3331zbq1YBnAxJs41zrKSAtYeewkWbg5w88wzT2xMc1LHsfgTl84BcZZZZinq4inPKEWmKfNCe0gml1U5QDs++eQTN/Yk/GmNQAqw3M4777xmhhlmKPqIjrJMP/DAAy6pE3M4zjMjC5l+/vnnzdprr+2SJ/nleSA133zzjSFZEvNA4rFbg2FdXZ356quv3HOyZpaXe0leNfvss8dmRYc8MO+Yf4xTmhJP3EP/+L9/D0m0KJU344wztqar7h6SRX3//feOGDIWaUllsReyh3366aeu3BHPzFLOj7YgUgWhXGQaD5JVV121oNmU5CMUIa0QZz3nnHO6eOs0ZJr+ME54VWSdT3FtYp9gjTO/2CvSCveR0I+kYUJe49y84yzTpd5Be1iXzGtfSpHpUs8Nv2f+0wfWDnimWTul3pH196M912Kptur3ioAioAgoAopAKgR6O5mWGMGjjjoqL9MxWb45QBFDHXf4g0A899xz7oCx8847u0y4cUKWVYg5QimqrNmzt99+e3PooYe2+l7iE08++eTYtmH1wXrEAYe4RghfKLQXRQPJ2ah7Sp9FcEHEfZBkNnHCAZj7rr76ancg9QUXQ9651FJL5X1OnKQ8L45MkyCJGF4ssJTLQXgWGYGJC49L8iUvgPwRB0w/cJEUkftxfeeQWkzGjRtnTjjhBJd12O8TpcbWXXddZ0WDgIVSikxDPg466KDEV+MaC+EsJRBMlAwQkDjJQqY5yNJfIVqQauYSbt9+Mqm//vWvhrm06KKL5l7573//24USxAnXEheK++o555yTu4R5duGFF7pxTCJcTz31lPnyyy+dm2po9WRc+LyiosJMmTLFPZv168thhx3mxi+OGEFOGIMwmzTzkfkF8dl1111jM6IXGxfayxogvjWuHBTVBXgu68mXpL2Ha8ABokPYxr333pt7LnOZ/tGPuORe3MvYgRPrQAgZSsMddtjBjUtYyqk1bt7sp/7YSr9wNSbUJotQVo6QBfCPE9YyWJFPwceXcSPcgfkWEmuSdqEsDWWxxRYzVDlgf+H/JE8TAYdzzz3X/OUvf0lsPtnw8Wzy90lc2snmz94Qzi2fTBcbb9qB0g/XeeZJ3DyifaLoIYSHdibt6+z74BInxHGPGTMmrw9cR6gHv3XEaPsKm/b4/WivtZhl3um1ioAioAgoAopAKgR6O5nmAElsWkimBTwOP7i7YsUMpaamxh3ScBOn7JR/8JJrfateXCIYDigc7LEIhZYGngGxwOW8tfdiCTr44IMNJDQUiD6H+EmTJrmyNRz4QznkkEPcwQ2M4oTDO6QyzEALOeRg7pMuDtckHUI5EJZfkmdTOocDGxJHpktN6iTrDKVlIH1CwFEygAvZc/1DJWQRohFnhaFGLsoFOchusMEG7pkcnKXkD3jcdNNNBUmXSpFp3DYhzJQE8w/K1NwloRiH43LEOGYh04I1linmISRNBDdywgUgwAjeBig5sGAh9IeEd2E5Nr5jnpFgKY4ccYifbbbZXDZxGSt/zLmHMm9JwjtZy5Ao5mCcQEYgo359bxRdECmRjTbayI0h88aveZ60TyS1x49rFaI733zzuXJJ5DDwBUUPzxeB0DEffcWPfIeyAUVb0jr6+9//nkuk6L8DYs+eECb2k2toY/jM1pBpLLKhAo13tMYSm4QtFnmUeShIRJiPeFGguJDM2SgKeK8oNbkW7FHcxGW2Z62FpaT8NqBI+9Of/lTQLDJms49mER8PlBvs9XG/NXgesLYguox7KWF97rjjjm6P88uRyX0ocFBS+MK4o4SRz5kLKMQg6MxDwQqSTtlCSSBX7t+P9lqLpTDT7xUBRUARUAQUgVYh0FvJNAcx6m9SNggpdkhOKmskZJr7IRy4+oYHUZ9MQ8Y4pCOQBogsFm4splhow0MUBIVDFK6gbbmX98WRKCHTMnGSrEl8T2Z0rHMcQEOBZPkWwK+//tpZiH0s/GvEFdl/zjbbbOMsaVg9eA+SRKY52HGgI5Y3zFbNfXgJ+FZSrKsLL7xwXnv8TOaQZ5/YcCC//PLL87oJ+YI8izA2WAZRpmDBJabYJ29hlt5SZFqe67uCcmDFgpbFbbfUJtAaMn3BBRfkERawkjruJErCwoxgnQcD3ypOHoI4RU5SO1He8D5c6JPcasEeogChjCMeKEr4HEUVcyru/bfddlte+SW/bBFECcIk4rs+ZyHTuBxD0GUdhPMqrmTR448/7pRQIngZFHMrp14wBDmuj1gMfQzZZ3D9D0kuY8i+hPU3zlqZlUzj4ox3QJwkEdFS8zbue6ou+PsOFmAUUgieRewB/h4U1mr2M9+Hz2eOUZ6La0K8VlllFWcF9wUCylr1hfmHRZo5iAIxLE3ItaFygTayV4UiZJq9hr2EcQ+VUfy96aabulspKyihL1I6y39mSKb5PWTf9Ut3+XkXKGOGgkoEBQV7qB9/Xa7fj/ZYi62ZX3qPIqAIKAKKgCKQCoHeRqY5BGChGDt2bN4hqdghmYOGb8USYH0yzWe4KHMY9sUn01i5IUsh+cS6AokIBTLFoQlpy73cTxwtJNaXkExDMLC0hoJFWSwuKCBCqw0WPKwqIn55MfkM6624UIMbca6+hFY5vosj0+F1hx9+eJ7lkPs4BNMXESzdWItFIA4cDkXefffdAld1f9xwnUY54B+qw3aEuPiKEN6ThkzjQooliHtxk/YtpQWD0soPspJpCGHoMg4pEPd82um7J6MgYl6J+CW2/CYzr1kLYe1cn1xAhkKyjAsypA9PCBRYzJHQyopFDRdwrPoIbsUQA1/89Q7xEld2rgnnM5+JwiULmY6zIjKHiPFHQgUNn2GZ9Gvd8xnuvaHXCgQX4oMVn7lFaEFoZQ2rEVx11VVm7733zsMBZeIll1yS+yyO4Gcl05B76WM4TctVji8uU3hYNg8PBt8zAg8PrP0iKP3iQjIYf0g53ilxewP3+/HbSfjzfMnH8N133zllUyhxpbHilGdCpuX+cE/j8ySvHMY3DCEJyTRrVn5r5B3se6IUob/E5PvKCSzxvldAOX4/2mstFgCvHygCioAioAgoAuVCoLeR6STcSh2S4w44IZmOy17rkzIIHYcgDptyiOMAjPteaNEm3g/CL+7GbbmXPm+99dYFbughmcZdHSLqC9YVYmRF4hILoaDw4w9xswxddCFFvsUFa7vfZ/qLBdCXUgnIuJb3+Mmx5H45fNJ2IVXyXUhYsNiF8aVY4t98801nFT799NOdhckXLFa4y4qUek8pMo0rMYoBiCBzJi55WDnWfFYyjeIERYEvZISXeRkSJ9o/YcKEnFUM3MAvFCyuuIkynwi1gGTutddeziot8a1x4x8SpjirG54LvoX15ptvLshV4BNmFD3Eu/tCrD/uvmLdw1IOMfITFZYaj7j3+vPmxx9/dHkZfMH7AS8UX+JcpnGTX3/99XOXYZEkXtcXFFxS4xlihHt5SLjxruBzkXLUmY57hjw/fF8pDJO+j/N4CC3xpdZtEsH193UswXEhH5SYktAWvFhCD5k99tjDuZr7EqfQ7AgyzVwWDyxpj0+mwY3fI38/Zv/j98eXOMxRtskcLsfvR3utxdbOM71PEVAEFAFFQBEoiUBvI9MccrD+YV1Dqy4Wn44g07yLw6RP7jick0QoFNw2/QN+W+7l2a0l02G9YmJhJS5W2ozFhezHIlj+Q2thaFmJI3WQWt9tMA2Z5lCLJTcULPkcXv3SOnINh8vQuh5n/aNP9I2sxGH8LcTfT7xGRmqflPAu36JXjEyTlEksPCFZLLmAM16QlUyHYwBZJkZShMzJ1C33xccmjkyHChruxcockpa48Q8tm8QGhwn2Qq8BwgEkdEDa6WeVRmkSJt3iOggFXhYQVZQqkCz+nzZLNEnQ/Dh3/s08kVhTiC3j4UuomOK7ODId1luPUyqQ50Dia+MIbjiWvKsc2bzDmFe/f1iU2+pxEefZEteXW265xYUD+IKCRJRDSWQ6zBoet2YkAz3PjsvSTV6APffcM+/dabN5l9syXYpMx3lIEHYTupGj7ArzavjhEnFkOuvvR3utxYzbpF6uCCgCioAioAikR6C3kWlcPiEvCIddDuxYxTqCTIejkmTBiXMzbeu95SLTYMXh3pfQDTR0r+Ta0DIdHhghxFjq/M/TkGmeHXf4FNf0NO7tPCNOAYD1j/jZOBf/UDmQROrFypVEpmmnn/U6zqKVfjWXvjILmU4Kb/DLxUGCQ1dsvCiExMSRafpLxuNSkoZMQ6Qh1L6EZDrOa8An0+wDuHknJfNCaYKrbEjIS7Wf71HIkG0bRRFrEPdnMKPsGGSXUA5fWkummTf//Oc/857lEx2s1GEWahQIr7/+et495SDTWDqTSsWFSoA0GKbZ+9g/yI3gS1yffUVOW8i078Idt3eEse+0q6uS6Tg38DBcg/aj8MNzxBeUlaLMSkOmS/1+tOdabM1c03sUAUVAEVAEFIGSCPRmMg04cgDoaDKN9QMLtZ/wRQYrJJ7hILbm3o4k03HurcS5SgIbDr3EevoSl/QrLZlefvnlCzIeSyxonFUvTD5FO+Jc0zlkbrHFFrFxlf5hmvtDK6T0TeJWk8h03AKNc/0suZBTXpCFTOMNEVeDmwRMcQoGaQLkVlyQ48h0XFxwXPM7ikzz7jDJWlx7SCJFPHNr62qTkZ+5R3blJOLeXmQ6rn9hojX6XA4ynaSE4fn+PpByyhZcFhebGxfX7Sdt9B9C+1DAlYNMJ/UVbwgSafnSVcl0nHeUb8GXPsStZRQ0KIv831K/z6FluhSZ7qi12Nq5p/cpAoqAIqAIKAIFCPR2Ml1bW2uGDh3a4ZbpOC0+g5PGateaezuSTBNnSLIfP4bTt7bHuR3GZflNS6YhvCTf8QX3XBK9xblvh7Hi3OdnkJXnQJxwk41LUuQnkuJ6mUfhAkNZstpqqyUmIIvbknBZhdQkJXFqyzaWhUwnkY2w78Xa013INH2gHJdf/iuuX0klp4phgBst8xGCJUIGdBQOYW3p9iLTYeZr2hEXn10OMs2z44gjn5M5nGRubZE4Mh1nmY5zX+a9EvNfDjId53LOO2Td+/3sqmSapHQkp/MlzjIdN4f8ZI7lsExLG9prLbZl3um9ioAioAgoAopALAK9nUwDCpZNDra4hyZJORKQybM5gGFJCZMBhTGVcW1p7b0dSaZpN4SaMlp+3VWsFMQg+3F3/M0hDMIZSloyTWw5iWt8EetuXNKcG2+8sSAhVdy7cBOlzWFyMt5D7DhjKJJUwkgSFSVZpimFQ9/DuYD1F1dgP4a8HFtYFjIdl5iNNpARGWVJGulOZJr+QCbJrB/OJ7+vkjytVP9x5yasJMyJwLjilRJnpWsvMi2Z4v02x8Wul4tMx5WK4t1hJv1SGMZ9H+e2H0emUbChaPPFx7ccZDopQRlEnr3Hl65KpuMStZHZOwxBiMv0jreG1GEvJ5ku91pszTzTexQBRUARUAQUgVQIKJk2BpddSEuYWdcHsJxkOq50FO8iKywudyLEolGOxC+b1dp7O5pM0wcOmrRdyhKhLCBZFWWViDMkYzXJnZLiK9OS6bjrSGSDkiQuzi8uOVCcO7jUq46LiQwTKcUdzP2kSMUSkEEOQgsl+GG9PPXUU1Ot47QXZSHTPDMOF7H6p3lndyDTZCQmYR0JlkR5AeHFOkbcfChChkv1n3rcoRXWx64jyXRc/DD1uEkW5ku5yDSeGnhWhEoi3vXrr78mrvk4TFEgUsqOOtJIXH6CuARkceSOWH4pk1cOMk174vaHsH4013VVMh03NyiRSAI3X+Iy+5OxnHh9pBxkur3WYqm1qt8rAoqAIqAIKAKtRkDJdDro4sg0WY39bL2lSmPxpqQarBxsKS8lGY1JXDTPPPM4CyqW1Lbe29FkGjKL+yAxw1iNICDUDc4iacg0LptxMawyNnG1fiGoEFWRuBqqtJmYYchVXEwh9ZX9hFRkh6e9vpCIjQMmUqo01ujRowvqC3NfmNU9C35x12Yl03Eu9GCDokGyUst7iB/FhR8vDynt1R3ItJCJuKRR1GYniZ0vYVm0pDGJCzHw39GRZDpuftLu+vr6vPVTjtJYgkdcNm2+y+IqT2w5yeJwkSfBGlnLkTglT9iXuHASMnkTD4yUi0zH7a0oYsJyeu1Npn2PERQQhC8hpbJ5x1UiQLn37LPP5k3tuH76NefLQabbay22dd/U+xUBRUARUAQUgUQEeiqZTsqU/be//a0gPizN9Ig7vPklgKhDSxKrMLNxmHBn2223LSg5wvuJL954441zTcE9FIuun6ypLffGHeTC2OE44pkmgUxYGgurrZ/xubUZquPINK6bKC1E4kqp4F5+8MEHu0uwjlPayq977SsouCYu0ZafkTru0O0f7HlGHHZ+xm/q/MaVVJL4TYgA84fDqS8QV5QsUtM2zVxNuiYpWVKci6w8I85Vlu/CMcUlHOUJ7r2+teqYY44pCJ846KCDzEUXXVSyK3EWv7A0VjmyecsB3ld++I0LSwKFLv5xHUkabxKBiacJSjLq/fqS1s07LKEWl83bL43F2JO9G+WWL2HIQ5znS1g7vOTA/X4BSiqsmXGl/yQxX7FnoXjEGs21uIfjPTB48GB3CwqNMNQgTNwYKsFQWL777rs55YEoLMM2ZC2NFbdGCAHB6i/KUSz0lBQME8+F3ki0pbWlsWTfk98+cTXnd4TfE1/8OtN8TgJOKguIxO0J4W9guAeU4/ejPdZi2vmq1ykCioAioAgoAq1CoKeSaQ5wvsu0gEOZGw4bffv2zYRXXIklDnO4cUIeSVYVEmleQCIXskJXVlYarJlx7rw+YeXQCwGRg40ckNpyL8/EhT10ufTLmtBWiHtYsijMkoulNIwFDF0sIbJSfkxAJj5zzjnndPHHWHs5ZHIfhJn/llxyyYIxiSPToVU5dD2EjKDk8GsWjx071qywwgp540195BlnnNF9FlrQaCuWMP9QC/nz3e3DeFNqyvoxhiSygpiIJCl3/GReHPT92tVyL/MMC2ncITvLJIaU4PoeJ8WSiiUpcSAnfIfbLRhCFEL30DhvDb8sVVL7k0qNgYMfB0vMJmvEF8jvmDFjch898sgjeQoYviAmHUKK+G6uvuVSHiCKLf6m9jSKmVL7R1IsLXMehR5x1ygeQuF7siOzX9DGpFj8MElI/kYAACAASURBVCN9XAK9sJ46ceB+7XrezfpG4cdYEv6AQiROwJ15mHUOEjdO/K24Vsuz6SckdO211y54HaW1aAvWXeYURBpMQmVUuCf7+xlKKvYUf0/GZV+yzPPSuHnB51Jfnn8nJRYM68zH5W2g/Ycffrhzayfrta/Qk06TUf2uu+7Kub3j8SFeHT4wYdvjlEhcz1zFQlxdXe0Uc+y3O+ywgyvD5ku4f4EzZN//jfDfGXpUMX7ke4B0i5Tj96M91mLshNYPFQFFQBFQBBSBciHQk8g0rrS4E0MacJtNEjJLc8CgPBOHilIHY54TRyKzjAGHEUhAaHnkGWj4cemG0GCh9g80EnsXRyzT3EuiI4ggZD8ULMokj6FdWKhwfY6LceRQuP/++xssrRB9sAgFosk1HMh23nnngsNzKawgWJQMEoLL9X6fObRJ2zj8Y7XkgA2ZEoGIglecO3loNdluu+1cPDKkmvkgzwYvrqXusC+QAvDxk9QRE0tfmXNk/RahLBfKkIqKCvcR85Es7XG4Qayw1KIEQGFCu+LGgPkMWZBnlsJTvsdCSmZhxo4kVMyxOOH9YDnffPO5NSEWQK6l/jcKlA8++KDoa8kOLUQQEsic8sfHvxkyAAEB71CwxIMf8yEU2obCB1ILQWDehdY+Dvoocxgb3KrJQhxHZHgOMbSvvfZaXg1mxgAlTVVVlSHLPIRIhGvxIEgjSRmt5V4Ua0mJzrAcEu/PfAuJEPdjZab9tAXi6St65PkQZbJnY3GXPS4uh0CavnBN6KWS9j6uY19jXYTzDwyYWyj7fvjhB2fNpbSeCOuGBFm+cky+Q+ECTn7VAMgYijPG31cMhnkSINLMwbh5gUKI71hrvBsFSyhggSJVyl+xNpjPcWs3DU7kTWDessZRXIQCTswFmXtJmcrlPp4HDigx2GPiBC8JFE+ipEDhhyu3jBH7KUop9mT2dskfwF6Ml4AkjcSrply/H++99167rMU0Y6DXKAKKgCKgCCgCrUKgJ5FpEonFlTEqBgyH2TjrSNw9uK9yGA0P7xysOLxxoOWQxqGIgwZucVhjIWYcrEkmllUgahzY0hD+8Nnciwszh8NiAtGHRBUTDmccrEILk3+PlL0hWZDUlM7SXw7/WDvE+iVkGnd0iBGHWg7kcQJh4nBbrAYwz8bF+9VXX419BmSZ58Qd3OUGatfyjLhDM+OOdXqbbbbJe35c6Rn/AqxWWHbj3MD963yLWVpck+JCi90fV+ecAzOHefAJhX5jiWdtSP3pJKtfeG/oUsv3afDCGl1qraNcgxDEeYxIO5jTkAPGAMsr8aNxCi/mJqR25ZVXTgu9U9TwzHC+8T6UI8xllFlY9HyByDGXITBhySL/OpQXWJ+xKhcTcPAz0idl2kaJQDzzYost5h5HOwmRoO8o3lC4+KEoqYH4/ULmEPskSqykOtvyTEgy2aOxLhcTvG5QFjL34oQ2Y8UPPT7i4tn9+1GUkV8Aq3qShHW6x40b55RhoYIE/FAOsYdCYBGUISgE2Xf5fWCesLaKjbdf05lnsB5RbvrCmGGZhnzHxUKHfQnd7RkXlHtxXhPci+KR30E/7CTNe9L+fjBe7bEWs85VvV4RUAQUAUVAEUiNQE8i06k73YYLcUF8+eWX3WGQAwWkWUgQn0Pmll122RypaMOruu2tuLiSKKgY8U7qHK7OcoC+++67nXV64YUXzl0OMcDFEmLJe8gMDpkoRoDDd2HRgjBhBSGJFu/AtbIYEfefAQHkAEk7IOgciHkGh+bWKD2600BPmTLFYcc4kYUdCzH9zur+25X6jMIJayAknnnE31igcRVG8HRgfmT1CuBe5gr7AtZ29gmew/z2yS1km7mEazfWxKyJ+lqDJR4LWCJRtrAGZB9jTeFdwLiiDGwPgQCzfvGWwBLNGgIPMv3zTkIRILtZBM8RXKTBEUUXRBUCjfdRRwt7AxZv5hJjjbcOwrpBwYL7finFWdo201fCWCDyzC367HuVpH1OeB0JzFjjtJk5IaE4eGu0p7TnWmzPduuzFQFFQBFQBHoxAkqme/Hgt1PXOeBhWZMYYg7mkllWXsmBGlIbWg395FXt1Dx9rCKgCCgCioAioAgoAoqAIqAIKAJtR0DJdNsx1CfkI0DJKBJ4IbhJ+om5QqywTIlbKd+F2c8VW0VAEVAEFAFFQBFQBBQBRUARUAS6JAJKprvksHTbRpG51o+nw2WUGLhiglunlOwh2RWxiiqKgCKgCCgCioAioAgoAoqAIqAIdGkElEx36eHpdo0jdpGYT8kIS5IksmMTXxsK8bdk2ZXkQX596G7XcW2wIqAIKAKKgCKgCCgCioAioAj0LgSUTPeu8e6I3lKqhvrafsZrSl/NP//8LtEQyXK+//57l6SHRG5koKUmc1KN245os75DEVAEFAFFQBFQBBQBRUARUAQUgUwIKJnOBJdenBIByuBQ8/mVV15xWbOJjSaDMEJNWTL3kvWczLYjR44sSFCW8jV6mSKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkIKJnuHNz1rYqAIqAIKAKKgCKgCCgCioAioAgoAt0YASXT3XjwtOmKgCKgCCgCioAioAgoAoqAIqAIKAKdg4CS6c7BXd+qCCgCioAioAgoAoqAIqAIKAKKgCLQjRFQMt2NB0+brggoAoqAIqAIKAKKgCKgCCgCioAi0DkI9CQy3dzcbKZNm5YJyL59+5r+/fub6dOnm7feesvU1dWZNdZYI9Mz9OLOR6C2tta8+OKL5tNPPzVLL720WWmllcygQYMyNey3334zTzzxhPm///s/M3jw4KL38r577rnHLL/88uYPf/hDpvd0tYvHjx9v7r//frP++uubueeeu0s0rz3wHTdunHnyySfNwgsvbFZeeeVcP7///nvzr3/9y/z5z382M888c5fof0c04rPPPnN73jbbbNMRr8v0jq7Stix7QqYOprjY/pyZb7+dbr75ZrqZcca+Zr75+to9Lbrxtdea7B7Xz4S/3yke226XfP99s11H0+w6GmDXUZ92e0/WB//2W7P57LPppqLCmPnn72eGDYue8Omn081MM/UxI0Z0nbZm7Vt3uv6dd5rMIov0c+PQkWJ/qu1vdYP9re5nf6v75V5tj3zmjTeaDOfGVVbp3yFN6iprhL43NrZ02R6D7Tk4HoKGhsLP+1kY+a8jhfb+73/Tzfjx082cc/Y1c8zR17WBz99+u8mNr0p6BB5+eJpdi33sua91c//jj6fb8/I0s+22A80ss+geWvBjzA94CuljN6B0V/KwVjL2FO3Iu4SD4XLLLZfptlGjRjkCcdNNN5mffvrJHH744ebcc8/N9Ay9uHMR+Oijjxx5ZuzuvPNO88EHH5i//vWv5pZbbknVsDfeeMPd+8ILL7jrf/31VzPDDDMUvXfMmDFmn332MXPNNZc97H6T6j1d9aJjjjnGnHXWWWaDDTZwyoSuIOXEl3FlfBlnhGfvtddeuW5uu+22bt7wGd/1dGF/u/rqq80nn3zi9suxY8d2mS53lba1Zk8oF4hvvdVkRo+uNS+/3GgmTzaO/PF/ZOml+5kll+xnbr21wdTUjDBDhpTrrW1/zrbb1th11GDX0SC7jjq3YT/91GyOPrrWPProNPu7nn9UmWuuPmaddQaYBx5oMPfeO6zVh8m2I9Z7njB1qrEH7vHmoouGmt12G9ihHR8zpt7+Vtfa3+o+9re62pGvvfeuMXfd1eDW1cknDzYnntgxDL+rrBH2lkMOqXXKBJEPPxxuFlvMsmpPpkwxZtSoKeaxx1qMVIss0tdceeVQs+66rSNhWQf/jjsazHnnTc211d8P//SnqA21tc3mlVeqsj66117//vtN9ndkkuv/l18ON/POmz/uxYC58sp6c845U83nn1uNjJX336/KU1L1WlBbyXO7JJl+9dVXzaqrrupIwaGHHmq1V3Paw8YQZ4lCRo8ebXbZZRer2RpvF94r5rDDDnPWqMsvv9wcdNBB5r777utVZBrSOOOMM3bI3G+vdzVYtemKK65olllmGXPjjTdazeX/zLLLLmtWW201Z21MEr89NTU1hrmDZRZJQ6afe+45+2Oyrtlpp53ce7uzoHTYcccdzUknnWT+/ve/t2tX0s6DcuLbaE9PP//8sz1Ar+MIZEimzz77bHvwPtpcddVV5m9/+1u79r8rPByr/0UXXWSOPfZYa5FZxe2FXUU6s21t3RPaiiGHfA6NxxxT5x512mmDzQ47DHQWaaxrb7zRaHbfvSZ3iPn552pnWe0M+fXXZvvbkf/us8+eatdRnV1HQ+w6yuYVVM4+YHH561+nOKI0atRAc/zxFWbxxSOr1UcfNdl5X2ceeigiB/ffX2k9kQaU8/X6rBgEbrmlwf7G1NhDd1/z3nvDU3lUxM2x6Pe5cO4VA/255xrtb/Vk+1s90P5WD3WXfvXVdLu2asxLLzW2G5nuymsEDDCHsRbOPNNqOqxAkl9/vcoMH164pzzyyDSz+eZTzK67DjT//OfQVOPX1oUwfnyzOeCAWqc4hEBfffVQs956A9ye98svkRfMTjvVuNcwr95/f3hbX9lr7mdu/uEPE01lZR/z7rvDMyll8VSAjC+3XETGlUz/Pm16EpnmAI6V6fPPPzdDh0abJgZ0XLmR888/35FskTPPPNM888wzzhqHReTII4/sNWQaF+V///vf5uKLL273DQSCu/3229uN+vWyv+udd95xRNongvX19c51v1+CH1JSe/r8vhjSkGk6QkjBgAE94yDWEX3JOufK3Sa8UO66664CMt3TxjLNInvqqaec0nHNNdc0zz//fJpbOuyazmhbufaEtoB03HF15vTTo4Pto49Wmk02KdxbJkxotp9Ptsq/JvP118OtV1V6i0Jb2ubfi6vl9ttPcQfvUIiy6swt8YknGs1GG0Vm/JNOqrD/DS44+DdZYxxWuUsvrTe33TbUbLddx1pKyzUO3ek5K600KWdZfOqpYZYUFbdq3nPPNHs+mWbPJ/keDsXmXjE84ubl4YfX2TPh1HYh0115jfg44R79xz9GpAhBsXTvvZX2zJyPpo1+tIRrvPU8GWrDgtp/veCGvtZak52yA4+CZ5+tMgstVLjXffBBk1UIT7JhJX2tIUXJdJY9gX2QI2841mmfUVU13ikslUz/jlhPItMQYw7LV1xxRW4+FCPTHKCwVBNrC9HGFbQ3uHl//PHH1p1nMXPggQe2O5nG0sSBfYr1F+K95RbGG5J08sknW1etE0s+vlh7spLpki/TC3IIdOScS4Jd3LlDy3RvHKann37aeWJgrX/22We7FAQd3bausCe8916TWWqp6FB7wAGDzCWXJLtJv/hio91TJ1sr63Cz6KIdS6axkK+55iS7nzfb/bxrHV5p26KLTrBx5lhd+pp33hmeGNc5cWKzVURMMBdcMMTssUfnWdG71MJrp8YQ3w/hIa4Sl/vNNhtgHn64MvFtxGIutthEez4ZlEemyz33jjqqzrmrltvNu9ztbKdhcY8VMk34CDHtSBIeffqMtzlHOiYs4uqr6224iF3QVkoReBSQZ55ZZyZNGtGeUOmzAwSUTAeA9CQyTddIJCaWaP4uRqb5HhdQrJghmSYBzuOPP25mnXVWq0VdzyYpKVyoP/74o3nzzTfNd999ZxZccEGz9tprZ7JUvv/++y5eERfUP/3pT87C6rddhgoiggX2l19+cSSYOMfhw/MPMlhjUSbQTpIrvfvuu+7vRRdd1LV/4MBIm0g8Me7JxIfj4r7ffvuZqqoq5xYtUqpfYEq/iRXecsst3f/BqsJmFtlss81yWE2cONGMHDnS4DEwyyyzmBtuuMG9gkM8mBeTH374wfz3v/91XgbzzTef1Z7+0bnti/BO8LvjjjvM9ddfb/7yl7/k4mDXWmst594fSqn2+GSaBGTgx/sJHVhhhRUKnkdCq0cffdTGgO2W9x3YEjKAAoExpS0+vnH9BtPXXnvNuZhvuummbvzwmGCcN95444LEYIzRgw8+6PrM/Hjssccc9hLSwDvSzBtpC/Od5G2bbLJJXvN4hiTmW2qppWJx4AbWAJ4HXA9WKFAkAVyaOReHSRK+kB/6++GHH5ollljCxbczRjLHk+ZVMTJNG1GusSZ8YX9grv/nP/9xng4bbbSRm4+hMNasZfrPXGcvCPcMwkseeeQRt9Znmmkmq3V/yT2X+UqoQijkAnjggQfcHCCpXmVlpfu/L6XWqlzL3oEF+r333nMJ8+gLa7cUmQZnkjIi7CXgzVgzV0VYmwsssID7M+3e4PchS9vS4Jxmbcj7y70nMF/efvttt37Z41j3gk3SvOTzjTeebPfQKCPQN98Mt9aY4iQZt9Urrhiai3F8990ml2Rr5MgBdpwb7Tg3WVfngbnkWsQ+jh3baOdnk52ffe387B+beItYyldeISyi2T67n7MgivUbAjpy5BS7nzc6YnTDDZH31/rrD8glL8JShFWOJGTI3XdPsx48LTHL88zT16y+erT34zo6aVL03RJL9HPx4CIQqrfearRzz1glQz+7p5ROLnTWWS0u8nfdVWm23rq419Cpp051iYx2373F0oalhffixjjDDH3cu/2kVdI+XPLBAWsZ+EBK/vvfJruW++dZ0OgH1jVcaElyFf7sQWCI9+Q7xu/VVxtd/OKaa7b8PjIWJPqpru7jPq+qKnTDTdtu4hx51j77DDJ4OTz9dKP58cfp9jdngE3OVjjnPvpouostx/WX8cEt1B+nYnNavtt55xo7B4z1hBlgFReRW26SIoj5w9yGdDOH9ttvkOsv86PY3Pvxx2b7exjF64M5Mb6Q9oUXjvo0blyzi5/347V9Mn300RVuPn7+eZPd5/rZNgywfY16gDLgu++i+FDmxDrr9DfEgPM8EebRyiv3M61ZIz6GtP2ddxqdGzPrb7nl+hW4XeOe/eabTS4x4ZZbDnD/f/zxKJkUfc6SUE/INFbdVVedlMsv8OCDlbk1LO2DPN1//zD7+1V4dkvTbntEtWeqaa59K6/c3+6RTfbvRqcQxH379yOqzQVhzOyzR1bPUkox2oY7+AorTCqwTKdpE/eTFI69kfnGWmP/Y31vvnlLm1CQPPvsNNumZrsGB9h9I38Nsr8+9liDnaMD3Vx//fVGG4s83WyxxQA3ZxAswYTqfPjhdLefsbeEIsnUwIa9YrXV+tvfj/x1idUe3FiTPIP1yTvxsJH95bvvml0b2O9XWKG/2zfCfLz06ZFHGlx/ZputpT+0gTAY9sCGhmb3jk02GZhbD/58UMu0N4I9jUyHk7MUmZbrhUzvscceVrP9rSOHIhw+iakdJmlA7RcQOOKsIToQO77noAuJKnV44nCKBfyhhx5yz5gwYYJ17zvdHcJJfDPPPPO4V0+2M/WQQw6xMSr/dLG5kNXbb7/dfXfttde6LLwoD3bddVeXjZnriYPkMMehXYQ4UOJBEdzc7777btdHkmdB9mg370dK9euCCy5wigfuh1hA3E855ZQ8rOgDBPK6666zrnSXOsKAQPYgPPQhifjQH1zPaSfEDuUB1mfeh/WZZFnc+/LLL5vLLrvMER3iYBdZZJEc0Tv++ONtjNziBRtVqfYImb7yyitdcjFfiItmDBDaw7MgGoifi4/+nnrqqQ5PyCTjDHGC+CcJccqMp2CKYgQFhAjzDlKFEgSCzTuYO3wOBjvvvLO7VOJf08wbrufgT1+JmWb+ksWceYQQi37EEUe4+QzZ43sUC8w5sGAuijC3uPaAAw5wyqcTTjjBzcWHH37YjXmpORfiUgxfMIcUE+O85JJLWsvCOY6UosAolYk7JNP0kblG8kGUVVtttZVbGyKMx3bbbef+JEyBsAjaBhlmfxCFEPMdYirKMBkbnrXhhhuaL774wuy///65+cJY/+Mf/3B4itx88802hm+H3N94W3z55Zeun5B8/g+OrD2RUmtVriMBG+NAu9mvUADRRqQUmWa+Me/95IyQVdawhMyQzGzPPfe0Vr70e0Nr2lYK5zRrI5xr5doTeC7KH9bHVHvSnn/++d14sw5I7nfUUUeFr879zSGrf//x7m8Oz2PHpk+kc9ll9ZbU1jsX2m22GeCIx7XXRul3iRU+9dTB7rstt5xs52d/59LHQYmfsrvvHmbnZ8vB+LDDau0Y1ts9JVJEnnFGnSMHJPaBzFx3XYPde6ba/TyyYHFw5wB8442Vdh+ZatdRg7NubbXVAPvsiIncfnuDXTstcY133FHpEqghL7zQ6Fw56fOtt1a6QzXxeEccUWv3nQb73QBHLiGA9I33FMsEvcUWU3Kx0L/9Vp2JVNCep55qtGtwij1Y9rXrZIA7PAuul1461CkQOLhjzbz22npHPEi0RoIkDrciBx00yFpVK+w+NSWHFd8RR048OXLRRfX2d73e4cX1jMuFF1q28busuGI/u06H2efUOgxFILIvvVSVd7BN027c30lqJ2NHrDjk1JcwARWJpyAERx892O5BTS4e/tBDB9k9KH1yOUju7LNPsHvnMJttuX+OJCV5Xxx6aK2dOw3OuwD3XuYsfV544X6xc2+PPSrsGEzNzenLLhtqfw+j+bbKKv1sXpwKN28lgVZzc4tRRMg0sdQoPCShEvei/AD/BRfEw6HJzcknn2x0bXn77So3T4nlPfXUOncfiqtbbhnaqjXC+yAlhxxSY+dEg4vthhjffns0H669tsW1+oILpjrXdPDZaKP+jpSeckoUGoJAPt94I30MrJDp+voRdm40WkL9e6ZD+6xwPsSR6TTthvztumuNPVtECd+OPbbCKZ9QXoj4awNFwYorRl46Rx1VYffP4pVV8iZxBiyZE+yftIM96IADKlxOChHW+zPPcPaaZgjB8UVcmyGcjAfjhjz2WKVd5zVufEQIJYH4goGfDPHmm4e6nBgiKHy22WaK/f1odlUHIOfgRf/Bgb2Hd11/fb17/umnD3Z7g3gUPP54tJ9fdVW9m6/0Z9ZZ+9rzWK17Dt4g7Nmvv95kFbE8J2oz81kUZCg88Dwip8Cllw6xisUm+zsw1Y5HP6t4q8pVQuA+tUwHM0/JdASIkGn+DYGFTFEyh8M0B8nbbrstd7DmkMyhCesDB3oI4NZbb+2Ix+qrr+4sQHEWZoGegzlWTw7wkA8EaySHL94rbuqbb765I8Uc4iE0CAdj+TeHYggnRA1CJaQVMkdCKQ6Xe++9t7vv66+/zlk3IdxnnHFGgUt7mn5xkMadGkKAcOiHPPE5ZCDEiiRgtBHCDskvJeedd54jZvQBUoxwSMXaCbmBTNN2keOOO84RV/oEQSklxdojZBqlBmMAOeWZJKhDQQKpQegHJZaIsUeETHNwxnp+8MEHu/YjkFBwkXvj2ocFksO2EBwS5TGezD8UIZAu2gQpw/IJgRb8sWhiGYcUQJbIA5B23hCTjDWV50HmfDJNCABzFKUFllGsqowhY8C4SP8g0swx5qWUlIPg0h8ww+INrklzLg6PJHy5FssonhSSNEswB8M55pij6PDHkWnWMGQHkuyTaazfWGIhyKxrYuP5bLbZZnMESfaDr776ylmqwR+lFnLhhRc6oomyg/HCQo3SB2u9CPczv3g3Cg1/fkkiRQg7ZBwBU8g1Y4WkWavsQVjvUQbSNzKWy74E+WUOMWdwqy4mzGeUDmEIDOONIkPINPM1y96QpW1pcGYPKrU24vpZjj0BxRRzhaoCKD+Z86wt8WjxxzJsA4fxBRec6D6GNN55Z7ILbHgvhPSoo2pdDDXCoR7iC8E+88wh7pA433wT7fwc6pIHRfOz3s7PWncw+vjjaktw+jjSykEaAiJZccl2PGpUjSVRFfZZ0YGWpD+bbDIlRyr4DGKBJeWss+rsOpqWR6b5HjdMDqOQoy+/rM65XnNwm3nm8fawOiyXGRjyiPXq5ZejREgcIJdeeqI7PIpyIGmuzjrrBHdYpV9ZXT7FFRmrGzG9nIuw0EA4OWyDy4svRiTquecoBxMlOEMgO3/5ywD7faO1REUElYP4GWcMcZ4CkAOJ48YCiKUJ8g0Rw7qNHHlkhXNrxlq01lotYP8I3gAAIABJREFUFkKwxzrLe9ddd5LDgSRaEC4kbbtxy4f87bdf5DrL4Zl4ZJLIkekaMom1+oorIqIs80EO6HyGEgFyLcqWpHHwP2fsb7mlPpd0TAgs1/z6a3XOauffQ1IsDvCHH15hc9m0EKm4ucdh/7LLUG5ExIBD/267DbLzvd7ubQOsImeg/a2eZvGNyFAcmeZzlASbbTbQWfL23z/CCA+KF16I5sK99zKv8+c915x88lSbtLMuR6b5rDVrhORezDOUDng3IKJs4t+SQwEr6okn1ub6S4K9E06osOevZqcIYv5nyQPgk2kUY5BC8R4IE5LFkem07YZ0ouQQZQ5Kvh13HOi8JPbeO8JbckCglBOFyOWXDzH77pstDCNtm/C6gFRefHGktNhgg/42AeQQux/2dQkMUZ4gEFDai8cIhBhlJN4srHvGA68AIeHscddfX+kszySTxPsFActLLhnq9hFyNbAfskeMG1ftvmevWWaZifb3o38uwdvYsViVI6UC65BSiOwbu+7asvfQLrwmnn9+mttH2TvBk3m7xhrRPGLdsu7Ydz77bLgrt0hZwPXWizYwn0zLtf5ey3q4/PL6gjweSqYdfC2iZDrCQsh0aJ2CqGAB4pCIZRSr4UILLeQsn1i0RO69917nMo3gLss1cQJBwe0a6yLWKhHICOWcIIt8DrHaYostYg+7EB3ux7IMwcJCRmZyLENheR/IOgQX8ifZqoXYQAbJZIxk6RfWS9yqIQD0VQ7oIVY8NwuZ5jAurtwQF7/Ws8RG80wO4ViskfYg05A5caeFDIrrNFm/xX1ciABtEDINMeM+3PDBW8pr4eouFt/YSWE/JLsySpwwIZT/HsgQShyUJtS3Rjiw++Xgss4bngGRxvooZFreicXct9Cj5OBaiD0KDtxzmQPMK+a/CJ/j5oz7r5Qni5tzSVjIGEv9bt/yD5GGzKKIwu0coV14eIhHR9Jzk9y8IYOsG3/ts9bpP6EGkCQRxolkhYQX4MKL0oN9ANdnSXjHv2V8fJKNIgB38ltvvdVZupG4+YUih70ERQqKHNY3awNFCaQ2y1plD2FOMD6sWRGSwaEATEOmBYuQTDOv8ZgQMs2zs+wNWdqWFudiayNpXqQh06X2BAg0Xk0oJhhnEVEComhhLsQJlsUNNogONljSzjsvmyUGKycJtSCR48aNsPtmy1s4lHI4/e67FhLL4Wv55aNDmpBsLLAkiYIUkoAIEUKFBexf/4qKM8cRBXmbxDn6lmm+w5V7+PAJ7jKfnN133zT7e1frXH45h+D+SIbZv/99sCN2IlhZbr65Ie/wGeIICR06NLLui/UwabzjPl9mmUnOwvP888PyXKxxl5xrrqjtZDEWN2GxgkMsIbsikmjLv5bvwBsi4fcfK+Nhh9UVKFAkEZ2ffZpnkOUdV3b/oJul3biwzjJL1Jevvhpu98vIfRQL1W671Tjy+OKL0ThfcUW9I95YDCE0uI9CHIhNDZOCJeGMAoC4dGJwZTxxZV944UhxdM45g+3eXViSSsg0Coazzy5OpnkOuMp8xqsDBZIvMq/4LI5M+3Oea3wyJ6QEEgP5COfWJZfU29+e2pJkWtoTt0YgZ8wnFDlPP/17EfTfb0C5BPmCpH3xRbUbh/vvn2bX6RRHjj79dHgugRRjyFhS5gvM00hIprlH3sm//YRkIZnO2m7xfAlL54kSTOKxTzyxLkdCH3ig0rlKp5WsbRIrOHvnr7+OyCVPlESGPu60QbKa+0pHLO/9+kV7zzvvVOXct3H9HjYs+vyTT4bnQg4IrxgxIlqHU6aMsPtWixKD8UcZKrLCCpEiEUUoezWCgg9rOWODh4kIoQELLDDBhd3IHs53fL722pPseay/854QETLsk2nmWjT+QywPifY1qdKAQhXlXni/JiD7HREl0xEQQqZ9l+hoIkVlc4Sk+tYGXIvjBAIRF2PLtRBlDsjEl8bFScrzIAeXXHJJbJIwrIVYwBFcnCF7WAKxXoWuoBB3CDyHZ1xRESE23INlDMnSL9x3iS2F7Pjuy1iIIbe0HdKByEE1TT1bOeCDa5isDHItGdo5uEqccmvJdFx7xDKNBXDeeed17ffDBLCOCWFDiSDjL2SP/6NEEUsyCg8IWjEvBRlv5gRzA0s/RM0XrJOQ89NOO83hi3WY2ujSPv/arPOGe3kfHhhCpn3L6uyzz14wxXHxxuUWIkV78SZAmVNM4uZcsevj8OV6SKZ4bjB3cS2Pi4+Pe3YSmYbk7L777nlkmhwIjGOT9cFNGj88UoRAJ+0F4CLeIZBylABYuiGiCM8Xd3Esqyi/CBuRecY6Zzz8/STtWqUPotAJ3eAlyVe5yXTavQFPh7Rty4JzsbWRNN+K7VFp9wRRDCTNAxQvSWQaEgcpQkICVXRR/f6luFKHhyv/kIdlJE4g73vvHR2acOkeOjSKncPaAnHDOuYTCCHTce7ouNNioQnJNM87+OBaZwHyLe+bbjrFZSzHIov4FnOsQ6Hg+vrGG1W52Mrwezkc+hafNPiJKzLX/vBDdV78IJ9JPLs/NrhAY4X3rcRcu/XWU+xv7bSCpEly/T33VLo4VwRrD1YfsXJJW3E9pSRQ6Aot1+MWftFFQ5w1EhfqtO3Gyj/DDNH1P/1Ubb0CorGWhHbMEUkqRxzuPPNEpBeSfeGFQ1LFrft4i2fDxInVeXHeYjlknL79trog+7uQ6dDFN2nuYWmbe+6orT5ZlrZghVtkkcLvxUqO9RsruIiP05VXDnHrozVkOu0agYxDysOEa7SHHAarrx4p2oSQUfrtz3+eUlAOSjxAZH74Y5H07zgyjRJk/fUnu7WPSEKykExnbbfgHYYKoKQAX1kbMs95N9ZfP6dBqT5lbZPsveGeIZ/7a4J3J30ue494nkg7SdqGoMycY46WuGS5/scfq+1vfh+nTEERkLRPEzstZHrffWutN1u9U2rJ3sk7ZL2hjGVfLyWixPDJNPdISTeUoHfe2WDHv84R+lDRq5bpAGEl0xEgSWRa3I6FTBMriFUJV1yJMy41af3vxTXSt6zF3S8ECusYZZ98wUJKMiJE4lKTyLQ8J45MoyTA2oVk6VfSgRn3a0hTa8k0bQFXCAQZ1kMhyRQusL4SoL3JNG2QA3UpMs21uOSjaMB6itAXPBuSPBWkj8XItChgRFGC5ROvBMS32vJ31nnDPSGZ3nfffZ3rMWEHxNgmiVgsaTv3FBMh0/6cK3Z9EpkmXAGLKmQewUqO8kq8Loo9My2ZFsUNbtqTJrWUDQmfLaQXpViasm9xZNonikKmeQ+KNNaRCEo+9iLalHat0iZyGogngd9+IdOUxyIcpJhksUyn3RuytC0LzsXWRlIfs5JpnhPuCaJ8Yb74uTWKAvv7l1J2hj9xU40rOVXsOcTsbrddTYGlQghR2mfidk0sMLHSJJzBrfBvf6stC5nGzXPJJaO1xMGSxDbzzz/RWk2qc/Wq5ZBI3CExy1mF+GshACGBK/Ysn7DU1Y0oiMs+4YQ6q8icmhfPnkSmqXuLFT3MQEzcOEoPPzFaEplmDPbcs5BMEwuJC6eQ7KztTiLTuHivscZkd5D3M7SL1bVlDxrk3GC91DFFh4hn8uxiEpepWci0H17AM5LItO89UA4yzbuWWGKi9SKa7sqr4SnRnmR6ww0nO5di3sP7fCEZV2VlRMgk5jWJTOMaD3ZCpv354T/Td52OI9NcS/wu4RUS40tCMtzI/QRkWdudRKblOUKmn3220Vrpo/PTMcdU2P0onZWd67O2KYlMS0b5cE2QIG+JJSYVrJUkMi2fJ5Hp77+PwmwI8yHch/CUUusLjxE8R0IyLSEHaV3jk8g0Hiy4e992GxnVK1yiQmK1S5FpEuP17RvNVV+yhi5l3fe7zPVKpqOhSEumObgTjwxhIptyVsH9E1dEcdlNul9cKHEdvOaaa/Iu862lJKrCpbatZDpLv9IemGl0Fsu0EAiIIgfoUCQWmIRnxGkjXY1M0yZIETGpkgQOMkNG7GIxvcXINJZNYpMlNKAYYcg6b2hvSKZRHOG6S9gArudJQkgC1mGsxRLLm3Rtucg0z8fNGQWTeFXwGeQQK2sxSUumyfBcXR3FMoF10rhJHC/XETObVNdc2pSFTHMPcdbE2+N9gkB8yZPAeKXZg1CGkIsBCS3snU2ms7QtC86dRabxFMEqzpiJi3/RyRh8KYd3PpYDVtr7k8g0SWSIl47m54jEMlHR/DAuDhirqrhbiut3OSzTvEMsUByOsX6ROfn661vcDimFgxss5aoOOSRbnCTPFzdS/h2XjTgJT+Jul1suIvpffDHcYpZvFSf28Ygj6lwW52efjdxwk8i0uNW3hUxL3GpomQ7JdNZ2ZyXT0R7U5EjUJ59E2ayJKyUxV4liHC5xEZgyl8Ja6HhMrLzyRBdzHqfo6QpkWjwMJAyiPcm0uO3uscdAe9ZrWQ/g7ROU554b5rLwpyXTZNUnLj8U6kQTB4wkkWm+893n5Rm4IUs276ztTkumIfKzzRZ5UGDdxxslbS3krG1qbzIthLUUmSYcAuvvm29W2d+P4pULksi0hIEQdpImr0EcmcYlfOWVJ7n1TUgKeyFEmprsacg0ydeI//aFbOC+50fSPtztP1cyHQ1hWjItyYG4Jy42GtIEUfaTZPmTRGL/JPOy/x0HXrHcQRhJ8uQncZJrpWYvf1NCiqRIbSXTWfrVXmT6qaeecoQB8a3A0m+J/yb5Eu7TSFci0yQZI8ZW2oayBddphERmEMokKUamxVWfxHbEVBcjDMT2Z5k3tCck034CMRJ7kXzLF9zsSUqGFQ73aCQumzYKADwxCAcoF5mWZHO8k/hj4oAhm2ncldOSaZ4tcy0usR0x4YwX3wk2xE1DcH0hSz+KCfDFkpmWTLO+WPfgRpI4lAaiPCK3Am7heGkgxfagXXbZJZfV3k9iyH2tIdMoVlCwiMTFTKfdG5hXknG/VNtQVKTFmdjyJK+NpLVXDsu0JJBMUn6icGJvjyurRrsk1o9/hzGFce2mNI+tbuZcZJPINIeaAQMiS8FNNw11CX/y52ezfVeNvb/SeihFVi3/wFRuMk2M9JZbTnGxzwiWKEmSw99+ohziqINtxyVHIikZbuRx4lsosSi9917hM/z7ICrENXJQF+tfXPImIci+G25XINO+1TJNu7OQaQgbMbmUBaPsDi7/WOgRP7lR0poifhf3aonBDq8jMROxscgrrwxzpcFEOptMMy8gc1hlhdwImSZb9vvvt5QlLRYzndbNW2KEJUGUfyYXCynYSAhCWjKdNDb+50KYa2pG2HCpwjtuuaXB7hstGa59Mp213WnJNK1AeYUSC7n11qEukVwxwSWZSgZZ29RVyDQhL2QXT1KoQKDx1IDcJpFpCbMBJz+MQ3BDGcd+K6X+4si0WPb9WPW0ZDrNfOvR1/R0Mk2ZEklkhRsxB5o4EQIBOZBMyVwnMdNySOJ5xNNCHnDhJbEPlkcEMoWbLYczv96v/z6xAPMZh1OSGWHRwpoJ4SLzL0SaerCSYElIlDwnTBjF5yQHQiEQxkyT+ZsDuO/mzfOx7PkHvyz9EpIYxkzLc303byznlHRKsjb72OBeS5+JVZX4YPmeOGbKzYA1SZvElVKso2ndh4u1R1w3GUe/bq7EzNIu2oD4ZEBcrYllhTzxfxGyNpNYjtheLO9JImTaz6gtcwoXcV/54seF4iYs7eb6rPOGe0IyTRw8WeoRkt3hXixkBms7ihv6SDtknkPyiaFm/jKOzHMIJniDX9ycK7axxuHL9fSVWtwSbysuwHFx9uHzhUzjwi5xzFyD5wdu1D72Yp3nez9hGNjg0o7SAtdyQj5wu2ZeYm2VZHDUQyZHAYRWSl7FkWms7FJmTNy8iZHm3xKCQRvEO4FEfHhopNmDmKtkJGfeomygfVKSThJmpcllIHsgpfDY2xAUKRB6FBrsnSSBQ9LuDRDkLG1Li3OxtZE038qxJ0hWe97hlzmjnyi3UHpKecKkdohVJZpzyQdISMrIkZPt70WULVpipqmTikXWF3EvhsA+9tiwXHImSCTlsnbZZZArzyKHKLID33FHZB2T2F3f1ZHs09QBJjHPN99E3hsi11xT79zCw9ht+R5SRjIvSArPlMRj8r3vCg5xxaVYCDWJf8haPnbs8KLlsSQZG8/E3fXcc1ue4beVwzdtpV4spZ522KHGZbuOSwIlViMsZFLvOolMb7ttjYszDMmtfJ7GzZt4SFze/ezatH3MmHqXedu3WGdpN7GQM81UGDMtbrX+OBO/Tv1pyeIe7UG1ruxOqRreEl7gZ5AP5zzJzOacM2pL6AZKqaeTTqorIBZJc8+PmZ4+fYRLZucLWZsXXzx9zLTMQ6y3uFYjkoyPf1NGiszXkG5yBJD0i9h/Mm4jWdcINeGXWiryjAgT4BEyQOiAv6YefJDkU4Ux04JblphpGXti18PayYKhn4HdJ9NZ2411E2IWxkxLeIafT4D1SaI69gr2LhIgLrtsvMUWEkqWbRQf5H3IgmUSmZa+oeAgDjrco0L371Ju3pKpXJ4j14sXknid8L1fMguFKN4FP/zQnCurJ+Ew558/2GLZEhbgJ/ejrjSEmJreJGckoz6J9fBuECu/tOE//6ly2PrKV7L6S9JAFKAoQkNPGbn/vfei0om9Xno6mfaT9ZBkCXITJ1L+JYwhlIRO/ufEwEoCLEgdpZ+I5cS6CzmG2CYJ5AdLo9QR5n4yQFNiBkKAZVPIv8QqQuyIMZxxxhmdpYqasbwLKzixeojEyvId1iHET26ERY945GixRtmbESxNtAXLF9mo0/RLYqNp+88//+zqKSNiqfKxEhLM92BJsigs6eAdJ751+rXXXnOlZhAhY5AJYmZF5J1kucYjoJQktYe5QbsQ4rUlwRukRpJwMUYkEkIkKzv//u233xyJlLnml1ET13VIR1zta2mvkGn+lpJnPFfG2k9Y52MUZvPm/izzhutDMs1nkpmdfzP/wIP+Q8yYe8Ti+uMi/ZDr+BviKRm5k+ZckktsHL48EzINmcWtnH+zBiCEEGKUQ8VEXHFREJAVW0Tw8okl85q1JbHvYECeAnId+EooxtXP3sx4oTwgg7a/Fn2lnp+wTdrvzzvINGSd8l/ybOY5Y40lGvKddg+S7O48HzLMuicTu79HoexBGSUZ7EMMxXLL5yjrIOSsQxQGKBXBBus56zLL3pClbVjj0+Bcam3EzY9y7AkoRZjrUjsc5Re40Ef2c7yJJHQgaY5iOSSBDgdohMMM2ZQ5qEAqv/hiuj0UNdjfmDrnCr3HHtG+K9YYYu1++SU66ItIjJ/8DUGQWtM+WZB4O67DJY/DLHVOpV4qsYuUbeHQRawzwqF9yJA+ri7zwQcPypUJKlYrW5Ik+dlifTwkIzGfcZAl+ZXUAH711Sq77xQ/tHEgxKKFyyPC/f/4x2Cbybafs2oTD/jAAw2u9NK66/a3uSGGOpdGknktssgE53p8ySVD3MEREWLkW6VxU5533sgtU5IzSR8ka3cY7ytu/NSGHT06OgBLXzn4QqJExF0zxJFyZpBcXK2feCK6Pku7JTaa+4jLx8Ua8WOja2ujbPC8hxJMUmOc61D2jB3baPeg6kSFBh4Tu+wSKRRCYuiPM/+WONGwPUIg+Zx5TimyE04Y7GLr4+Ye60Oy4cdl8xarMs/z64+PHl3nPDLIzIyiqbq6j4sPRVGC+zN9Zw5G9zXb90fkH6UV9Z0hcZ9+2pSLK0bxQHZylAlZ14isP97H2NBXlE+bbTbZEfm33hrual4jEhvNev/55xH2/BUhK8o4f36EmId/UzucbM3XXNOyn4TXsKY23TSK6/bJNNdlabco7Px9h/CS/v0j7xl/bfA3Wdh33LGlVjtzAaXFwgv3dcSPMaLGOHPtqaeqXI6HrG268cYGN18R3zrP2GItRsaPr3ZzAxHvGv963OkXWijaEwkDIRwkuq8l4Z+UNuNzFARYhRE8N9ijyFdBJQOpdc6cXGCBfvb3o8Guxz4ul4G0YdVVJ7lSiHFKS1GoyBjK/snfftZtv/qBxOJzjeQ5QIFBSTI8F1h/7IsoUEeNGuR+l/g9kjl+992Vid5C0o5e8f+eSqbJFosliizIvkBY/Qy7fIflCOtTywRc3R2CODSTeVdknXXWsYvlWfcn1mviYn2BmHJQLxU7ieWOslQQKBHIHFmKwwOXWJAgrhyoJXs2BEiSWmEB89uJ6yttIcMsh38ROcSDDdmB5eDnx2+X6pdY8H2sIDLUHsb6LSLkFqst/5bv6DcWt2IZriFr3IOVib402AA7rPO4d0vdXf4Ga79/kHg8C8AySeLag4smcwVigIA1Vn5cMqV2tnyOxZU5wP/leqzuWO+YWzyLz2kLpIN2gplvCY1rm5BpsYgLUeGAjoVXLJ64tUPQheTRVhKUhWEFaeaNtCOOTKO0QeEhmbO5ln4SS+0nJQPPMWPGOGu1tImEXDfeeGOufBn3FptzIR6szzh8sU5SGgvB6go2WMoZIzCRrNjh88h+DwH35wo5D8g4j6s2lmURcAY7rMiEGmCx9vcQrIwopfw1jqID137mqwj3MSdYz3yO1VvqwDNmWHJxgadP/jyCJKPUYjzrbGYqsIbsYY2/4YYbcrW8s+xBeAxgaZf30Ef2DNYslnPINN4joTu/jyPKNvBijLmfeYhyhVJYPAM8IbLMg7R7A9dlaVspnNOujXB+lGNPoP8oKdi38AQSwWODNYMVPq2QlfX44+tycar+fZTxGT16sCNC/iFXruEwzqGeuEiR119vsvNzco4Y8zkknbJDckDDUkj9Ug7MHKSwVpMQidhRPoPw3XZbpctIu802UWw1QvkirCPEK2Mhb1lH/VwpqWWWySe/WFjmmGNCYo1hCASZv0mwI8Ih7uqrh2ZKSkbMLiVe4hJgQVLBEHdx//yDm/huu7X0l1hfDrMQORQMKCFQaOy7b42NJ4wCAyE0WPcPPrjC1SHG0iWCxfWCC4a6WHS/HRxGa2qanaVIBII2ZsxQV+OXg7yP44MPDnP4QhpEKFd2882V1tLcx4b9lG43pX522imqQ4wwT7Daf/FFk4uH9N/30EPD3LtIRFdX1+xwp740lu0bbhia55rvz02INEoGeQfz6MQTB+dK7Mi1jM1++9XkaqPL5xIrDwmhvq4QC4k/xxIczj0UIZdeOjVX85vx2H//lqRV4IYCStrEXDr77CHObZg5f8IJtS4Gme/B5Oefp9u9eqDLlj7DDPkmbtYlig7aRd8OOqjCKbp23nmKmwOQxA02iJRVrVkjEitPH0aOHGjPetFcIgxjoYUiIi2hEIIZZIk46+OPr82tSb4rlfSJ5GTEt5JkTYQ1/tBDlU7pFArKhBVXnOTWocRMyzVp2i3WTbmHfYzxJou1v2bCTNTkVkB5cPnlU3Nj6LcNKzehKXPNlZ/nIE2bsJITviBzgz2VrPWUKsQzQoSxvuUWFOkkiavLzTVySVDT/Oqrp+ZwZH6ddNJgOz/6Onzl2TyLrPHLLNPfngVrcnObZ6Ps23PPQS7pG/NGkihyD2MC5osuiifPdJe/QGp18z1tZp9dcslon2WN4MGCF8/vOXDdNTfeWGnPYxFGJDiksoLgznzbZ5+oDN3zz0fzghwJWN8PPLDCkfbVVotq3PO7wZ5+yil1ub5x/377VeR5sRRMoN7wQU8l0x0xdrjwEa/JYQx3V3GhTPtuSCKEljI4xcr7QGyo/YuVFOuM1GJO+56462g77swQRrEsy3Vt7Vfc+yAEEItS1hm5F0zBBkscxAnFQSklRRY8srYnzbPxBJBET7gf82/ccYuRFHmuHzONFZe+gxWxu62VtPNGyDSkSupCyztR/OByjeWdvhQrE0XNc9qMB0XWOZe2jxBMLLOsBWKSWTtSMi3tM7Jeh0szbrpYqpMIO8/EOwWLNsRJsu1nfRfXY+VkzvB/nsmz8I6Iwz7LWkU5wD4z88wzO6syXjKinEjTTqzrEEYpG4eChPH2wwzSPCfumixtKxfOYTvKtSfgUUIoCnurhAC1BhesBx991GQxn+7c9RZaqJ8jT62Vr7+e7iyziy7az86p+Kdg6aRkEvHYIpAb3u8L5AoiLmQ8S5sg1GSwLSbSd94777x9UycgCp+JwgH3R/qOxR7CJPWVk97PoRY3T/oGWbLbTbeQcrYbSxnWJ/4PdpWVfdyYpU0E1VbAGDcsfsSIiuVVntmWuZfULoj11KnN7n3F+ghZoV3MI64jbh1CH7aR97SmnSiTPvywyXkcMPeSXK/bim9r7gcjvBbCvYBndUS7UeaADXsD5aTYD6nRnCQd0abW4FjqHhQX7FnMRckvUeqe8Hu8Z1D8sYfh5ZBFmONR2b2W+1iPKMuSfjeyPL/HXqtkuscOrXasGyFQLAFZe3dDXLDDBFPt/V59viKgCCgCioAioAgoAoqAItCtEVAy3a2HTxvfQxCQ2GrchXFnb0/B2sw7iOnFikxIAK7Vpcq1tWeb9NmKQG9FoE+fwtqcvRUL7bcioAgoAopAz0MgrgZ8j+qlkukeNZzamW6IAK66xP1CZom7JmY2a8hAlm4TX0/MLLG7JMwjlp4wBeJfi7kxZ3mHXqsIKAKKgCKgCCgCioAioAj0eASUTPf4IdYOdmEEINJkWfaTV1HDmYRlpbJTt7ZbxB2TKIrkaMTfkySJZG5tifNtbVv0PkVAEVAEFAFFQBFQBBQBRaDbIqBkutsOnTZcEVAEFAFFQBFQBBQBRUARUAQUAUWgsxBQMt1ZyOt7FQFFQBFQBBQBRUARUAQUAUVAEVAEui0CPZlMSyp9yjtQG42yIhMnUnJpull22ZbaH6SRp/YhNRXXWCMquN6VxVa1seUqmmyd3fwannFtpnQDRddra6lh11J7lPIC99zTYJZfvl/ecygn8Oqrja7WIHX0Oloov0ApGH980rSBMaYu42KL9bPlf9LcYVwD3TdiAAAgAElEQVSdVsY+FNYEZUF6szAO//rXNFs/eIArldOV5OOPp5snnphm67cOTCwdQXkH5nKcUPbHL/0Tdw37AWWJttpqoCupo6IIKAKKgCKgCCgCioAioAjEEgf/Qw6hKaSPrQOc7koe1krGnqIdsZfY8r62EPrUXOF1arVRPB1yCNFaYIF+tp5uVKDuiCPqzE031bvvDz+8whVW7+pyySX1tsB6na0jV+1qHMYJtTwpvv7IIxGj2G67gea221qK8lHYfZ99am2x+z7mm2+qXV27446rM4891uCKvV988RAbRzuoQ6FASbDMMhNNQ0Oza1Ma+fbb6eagg2rNU09NM3/8Y39X8J4i81deOdTMNltxEnjKKVPtPKh3BepFKEC//voDzM03V6Ym5Wna2d2u2XbbGpsQrcHstdcgM2ZMSu1EO3fyyivrzTnnTHXKMOT996sSFUrUatxxxxo7n/MZ9eqr9zd///tgO8bJSjMULNXV4906uPXWoWb77ZVNt/PQ6uMVAUVAEVAEFAFFQBHongi0kud2aTJ96aX1lgjWGg7OEMi55+5rvvpquk26VOcIwppr9rfJlyxrsiJk7L77pnULMo2iYJFFJjpCcc89lTYrc7IJddKkZrPvvrWWEDQUkOnnnms066472ey000Bz441DDc+lUPuGG04yH3wwvVPI9F571Zqrr67PEfxSKwrr+pprTjKfftpkPQuGmwUXjMZ5qaUmmiWW6GeeeabKDC6hG0EltNpqk6w13gJg5euvh7v50lqZMKHZZsnuU9Ly2drnt8d9eHDMOGO+4uHss6eao4+uM1ddNcQqZTpWqZLUx4aGyPtgueUmlSTT8oy77mowo0ZZ9wwru+wy0Fx/fYtCqRiWm246xbz44jTr1VFl39fxHhrtMc76TEVAEVAEFAFFQBFQBBSBMiPQE8n0rLNOcJbmBx+sdG6qIrj1jho1xbzxRmOe5fPcc6eaI4+s6xZkGksbB30EZcGLL0ZKgSS5/PJ6s//+tQVkmutxgw3dmffeu9YSqPoOJ9MoM7bcMuqXWMtLTXUUBVgrjzqqwpx1VgtrPvHEOnPqqVPNoYcOMuefX9qqut9+teaKK+otCTZm0qQRpV6b+P3UqYzJJOsNMKykVbzVLynzjf/733RreZ1iXn+9quDJcfOjzK9v1eOqqiKrcTHLtDz4gw+arGIlIt/XXTfU7LpreitzV+1/q0DTmxQBRUARUAQUAUVAEVAEyo9ATyPTxERXV09wQF166RBLJPOtap9+Ot1ZdpuaRpi+vxsgzz9/qiXS3YNMQ6THjm10ygIEErTiismWM3HnDt28k2aSEMuOdPP+7rtms/jiE8zllw+1lvKaVGQal/Bhw8a7bnzyyXBbJ7nFmvzll9PN/PNPdOR43LgRJa3Thx5aay68sO1kWrD74YfqbkGmxbI/ZUqz+fjj4eXfXNrpiVnItKx3mnLnnUPz8ga0U/P0sYqAIqAIKAKKgCKgCCgCvQWBnkamcVfu3z8iWZCphx4aZtZeOz8+8thj68zxxw/OxcSGZJr44ccfn2ZmnbWvWW+9/mbEiHwXWAj7vfdOszHLTZao9bFJvPqbDTboXxAa/u67TS4WeeTIAdatvNG8916T+etfB+aeByGEGH/8cZNNpNTXtTN8lz8PhRi8/XaVfd9kR6jFTTtpvhYj0+PGNZtHH51mdtutxVoXkumff262bt+RC7QIic/8pFQkhHrrrUabwM1YF+t+ZoUV0rvFEp+68caTrUKgv9lvvwpLpCekItPgv9VWkSV7+vQRBdgL4Qq9E+JwKkamx49vdnHnf/rTAJfA7qWXGs1//tNo1lprQE6JQR8IITjvPGuatkKcLePIvBCc8Ip4++0mw5wgzn211frb2P18d3Ke88wzUfI3cHzggQbnPYAihHtw7Sfx1j77DDK4kz/9dKN1zZ9uPRUGWOVB/rN430MPTXNu0cSg87xNNhloa0lHCDCHR46cYt2YG10SrxtuiNyfiReXOHzGHcu1790h+DHm77zTaH75pdklfcMVmnb7QlK4Z56Z5rBYeeX+ru/0b9FFWVcDChJ7pV1XHUGmGQvWbGVln4L5DLZvvsk8aHLu/BttNMDMN19haECa9Z1lTMH2o4+mu3khCQJpX5gokHAN2vfdd9Nt6EM/t6/09oR6veX3XPupCCgCioAioAgoAh2MQE8j08B32GG15oIL7En+dzn99MHOhTspK6+Q6T32GOhiqB9/3J6Wf5c//KGvjacd7og5AjlebrmJjvwdeGCFISaTmOQDDhhkLrkkcim+7LJ6S07qrTt5k7WEDTBVVX3MtdfagE8rxx9fYV2QB7vvttxysk241d9ZyCE+vOPuu4fZuOX45EhYzyFyzz47zCYgi2JakW+/rTZzzhmfbCuOTNPm665ryCVnam5ucW0OyTSE+5RT6qzVuN4RppEjB7qETAst1NeSNBK41Zr77mtw5JIs4JAD+nzjjZWmoqL0ZAb7W25pMK+8UmUg7mnJ9BlnTDUoRSASKBdCWWaZSZbsNVmcBlsX/uINiSPTX3wx3bnHSwKra68dapPa1eWSX/G+m28eanbYYaAbyxNOqM3NGxQrAwf2MWeeOdgsuWQ/ax0nk/oUM3VqsyW9/XJJ3nBNx0Udwg4O119fb8ey2TBfb7+9wbUfOf30IXZe1Dvyhtx/f6Ujwr58+OFwS2ojQgeJJZac+HG8M8hMDV54MDz9dJWbZ4z/pZdOzT1zs80icsu4XXnlVJuUL3r/VlsNsO/+nYHbZ+NefcghNeaf/2xwipyKij62rdFaAyMyxkNEd921xrYzSmZ37LEVTpEgyfC4ljhs4rFF0qwrubY9yTReEhdfHI0FyqrQu4X9Ybvtohhs1sG//z3N7gEoW/rb8R+WU0SUWt9PPNFoRo+uTT2mvI8QFbwujj56sFVyNLn1H4YyXH99g03IV2MVVANsKMt0lwuANXLffZUFypvSq1OvUAQUAUVAEVAEFAFFQBEoikBPJNO4r+666xR3yBVZZJG+7rAfV/pKyDTXHnLIIGv5qzDff8+heYo7UJPEDOsggps1BIuDs5DeBReMEoJNmFDtLEZklD7qqNpcUius0STEgmCfeeYQR0rnm29iXgwnbsaQOojOxx9Xm9lnzyfHkBJIBMQGgkO7iA1HTjihwhLe+ExbcWQaYvPkk9NcnDhSjExjTV9vvcn2gF5hjjmmIi+xFknesDy+/HKV6zekcOmlJzpCKEqDYpMPkrf22pMsGR3urJUQmbRk+uCDay3pqU+MG19rrcluHBjPCy4oHjcdR6aJf8a6t+aaFvjfhXmwyir9bXz2VBerjWX5f/+L3KNlfPj3r79WmxlmiMYPKyYZyldaqb8loEOdBX3s2CZr7YzieJlHK61EsrRGN2d5DoLCBcvi889Pc5nFUVSg6EAgR7jhkzSMjOxYy7FWX3FF1E8yXmMp98cAxQAKkUcfrbQW6iiPAKWvNtlkSp5CAgUJFuSzzqpz6yck05tvPsWR4n//e5hVoERKH3AGb0Sej0V8551rcmSR/uy440BnWScuH/GTvaVZVxEy0TpIGzOd1c0b6zj37LDDFJfl3SfT7CuLLjrBKcAgp1h7+Wy22aL2yD6BEqPU+qaqAEq4tGPK+K+66uS8fYdxhlxfdlk07nffPc0pbd59t8opcVBqbL31FNvWaW6dkHRRQlsES/2/IqAIKAKKgCKgCCgCikAbEOiJZBo4yNIMeTjggOjgLoKV7OSTB+eVlBIyHRKH3XarsRaqBnPiidE9CEmyOJx+9lmUPRrBTRlr9ksvDXPuu8hFF9VbIheR4zBuF5KB5e+776pz5BTitPzyyYmSIMUk1sIKLS6b0j7e8eOPI2JLOSW5eX/44XRbVmiia2sSmcY1eIstJtsM20NdTV9f5H7KDEHkRLBU33xzg3MdHjcuubwVJGTZZSc6jwHKLyFZyLRguNFG/S0pLEzCtuGGk63CAII60CktikkxN+8llpjospv7JZKwoi68cIRdTU2Eu0+mf/utOueujwV3jz1qrEV4mFOoiKywQqR08NuHtfmBB6a50l5Yn33Baj/LLJHy5Kuvhpt55onmHvOTeeAno5Ns9j4RFE8GrOVHHx1Z6uPItLyTrOpkV/fXBN4TW2wxxVlh6Y8vKFZ4L8njpGSbeIiE5bUkQeCTTw7LlahKu654Z3uSaenTDjvUOLLrY3jyyVNtWa0689//Vrm69SKs9XPPrTN33FHp1n/a9Z1lTEmQB/HGon/55UPc/kUt8DPPrHOKFbwRFlpogs090M/uLS1z5957Wwj7p58Odx4lKoqAIqAIKAKKgCKgCCgCZUKgp5JpgQeCtv/+NY6kiODOfc01LQRLyHToeioExCcDWHuwXhEHigXqhhsacvWsH3ig0pKNyOqHm+7229cUECPu79cviunGWh4nhx1WYa13LQQVxcBii020lr1Bzgot8vrrTTYWNSLgV189xOy5Z2EJoyQy7Vvs4sg0LsG4qhJLu/POhRmQfUv67LMX9gP33zfeqEp0rYd8gR+YyRzMQqaxvGKZW2ed/s7tPZQ11pjsLLannTbY1s/O7uYtzxN3cSyRxL4jflz+jz9WWw+BPolkGvIJCU0aa8iXkH3JTh6X/A2r/wwzRGT6p5+qc7HYL74YWc95vp9ETMpdUR6NcnAnn4wiptmGQFTY2O5IMSRkGk+JsWPzXeVxA99995o8Mk09b2qcU3+cNvry8suNltBH1mlJCCdjFLoi4+mAJd4v7ZZ2XfH8jiDTQoh9Mi0eKH7ywnDeZVnfWcYUl+155okUOChOLrxwSF4st+/tkDTXbrmlMlM+g9jNST9UBBQBRUARUAQUAUVAEWhBoKeTaekp1lIyRYv4ccZJZJqEUkccUecsp2PGtJAHXFghJ7hLH3PMYBtnWu8SOflk+o47qO1cSKblUAxZjStHFDc3IR4QkGLCAZq42dCNs7VkWt61yir9rEtvISkW4vfYY5UuPjOLCAHENd13Z8dSRxw0lnYpabX11gNtdvbCeHCxvibhKCS4VC1u2l3MMh1Hpn3CFEemx4+vzrVZCBgltyTuPgmrYpnUk4gXCgMUByGZBkuUDbfdhoW5wiUsY563hUyLtR9vhJNOyldQ1NilVVkZKYkefrjSEIOdRKblOeHYpFlXnUWm8aQYOnR8yfJpWdZ31jFFkYFCQwTl33nnDXFtEuXd6NEVLuZeRRFQBBQBRUARUAQUAUWgAxDoaWQaArHhhgPy3DAFxtNPn2qtlFGcMK6S++4bWXKzkOnXXmuycbOTzF/+MsDFsuLiK3Gkaci0xFPy3sbGEXkxyEnDjfsvJPmMMwpjf0kmdsIJUZ/8OG55VmvJNK7A110XJWE66KBB1m09/924AOMKTDwycclZRA7+ae756KMonjoUPA3AJak2tLgSp6lFXG4yLbHztHnuuSc4i/Cbb1ZZN/7iWc7LRabJsI3HAq7AzAkyTcscbwuZFjf00LODfuI90bdvRKafey7KoJ+FTKddVzy/vSzTkNuhQ/s4b4rQMu2X3CM8Y4454hP+ZVnfWck0fX/zzaZcPDd/k+zu0UeHWRfzBuu5UuMyr5PBXkURUAQUAUVAEVAEFAFFoAMQ6GlkevToOldu6oknCl1/iTGcc87CpF1pyfRvvzVbYjLBufT+/HO1K5WEZCHTJKQaMCAiHTfdNNQlZfIFC+Jee9W4+EvGRtyxn3pqmCvTFYp/yCexFAmgfGktmcaNd9ll++UScPlJ2Hi+JLkiCReENyy9Q6wwScmIuQ2FPpJ8LBTIBeWuIMgPPBCNHyWVUFiEQtmhOeaIEj+F2cx/+KHZfheN89SpI8ygEly/Pcm0JNZKIqAQaBQXEN5ykWmx/PrKnXKQaWL2Tz11qku8Rs4Af++gVBahCIjU2U5LprOsK57fHmQad3ji4HF3n2uuvgVkmveKgoa8C//4R771FwUGORr4Lu36Zh3Eue7HeRs8/PA0hztl6SiXRhI8UaK98EKURZwEZUhcbDTrDXf/M85Qq3XhbqKfKAKKgCKgCCgCioAi0EoEehqZvvbaehs7XGszEVfaTLb5RO7ZZxtt8qTowOlbcYUY7r77QJfxW0RipoUIySGX7yVjLqRuwQUnOAuu/06xvsZZioil5nuSdD322DCX3RvhWZTL2mWXQa7kEkJsMSWGvvyyJVlZONSS/InP33mnytUUFiHrNC7Zo0YNtAS9pW/Uq1188cIEZGHcrmDD8157rcplnkZwyV1yyShemxha3E2FUJPtmWzmY8cOT1UeS9oqGcpJYvXNN4XJy8iYTu1fEnQRs37SSXU2i/nUgszh99wzzWUxpuwU5adKiZDYOCt3nJs3yZ4qKiKFiLh5+599/vnwXN3nq66qz2WvllJa3IdS5dRT6yzxbM6ViBLszz9/sHU9z3ejJgZ6ppkKY6ZlToubt6+sIbu3JIeTBF9+CTdCE9Zdd3JsXe9rrqm3ya5q82L+yey+1FLRmJMZes01W5Q7EkbhJ0+jlBskPoyZlkzr4uadZV3xbiHT771XlZfULW6c/Xl6++2FifS4hxj4vfeuseXZGu28jrKzSwIyP35dvDH43k9IxzsYuxNPHOwSqqVd32nHlPeRo4Ca4iSQEyErOvOLfWfzzQeYeeeN9iFiqu+9t9LtLwi1wlGwkKhv4YUjLw+I/P33T3PVDTQpWakdQr9XBBQBRUARUAQUAUUgAYGeRqZ9wnzOOYPtIbnCWTrJPr3ffjUutpl4Tqx2/X7nnFJmCZdJ36ItCZfkcw6gI0ZEhAYCDFEmudSnnzY5CymHWFx5cYkWKx7v/uWXEXmJuD74oMmSgIiUILRHak3zb2JOEXF9jcue7A+nxGfzGWSGg7TETu+5Z42rcR3G1Ppx2H72aUnchQs8rvDEB+PeK3WwOZBLxnLJJs57sZrRf4gRpPfVV6usVbm4W3M4JUuR6UUXnejKFUkMOxZNyCD1kEWJwDj88Y+RkoCYdMpHFRPck1dbbVKujJmfKZvyWIMHR6SZpF24SCNY+ZZbLhq/F18c5vqNiEs344XyAuJPOSyypoMJQgz6Agv0s3g22Gf3cUnDJCZ81VWjdsRl8/YJJ/0iVhzx42hra0fYZxoXQ831kCnGkfrUzz03zc1RFBWjRlH+bZBTfsw/f4QVrvxDhvSxZZ76moMPHmRzAkSZq8PkZPI54y34YindbLPJrnzXW2+1ZLkXC7k/p/3kbcT2EuObZV1RCkraLGXiio0vYRCjRkW5EujzEUdE5d1qapqd8urDD5ssMa53md8p/SaWW8HQV8gQh47iTMqXgUFlZR83/3zPg7TrO8uYQqZPPLHW1WOXrPCsS7xwPv202imtJLM7fWXf2WSTgbb8WJObU+eeO9hlzhcRBZxf3q3oQtEvFQFFQBFQBBQBRUARUAQKEehpZPqLL6ZbsjLRHW4ff3yai1eFVEDUEA7Mxx032B6CIyzEAiXIQIweeqjSlTOiBJaIZI2mRM3RR9e6AzWfjR492BLOZlevlwPsaacNsWS4wR3ORTiwYlHaZpsWl24ycW+11WTXPhESCp199mBHrsQyKN9hBSSjdEgOsf7dfHMU2ywCYXruuSrnLg5p9vsGQb7++npzyy0NuXu4/oADKlx2Z5QNItTHPuecIe45WJt9LChrBBFFEQEm/rsppZU1KRn3C5lOOuBDnGmfX1cb13CsitRERmEA2UbJgUUR1+liAlmkRJkQXa5lDNdYY4Ajz8SgQkTl8yOOGOwsedtvH9UfR8Du+usrnQu+JEXjcxQwd95Z6cZy3LhmV/+Xesz+eIIT8eB4CVDXWN7FNZBliDj1gp94otEmz2t5J/ice+4QW4KqyRKkKF4egfg+9NAw64LdZK3KNQ4LMDnwwApH0FEaMN+YZ5dcMsQpeGgXlnzkyCMrnEWcklZ4Tvx/e3cCbtX0/3H820BEpJI0iKgoQxnKlBBKhoiSsVCkjPEnmaefKZGxlNmPDIXQj1CIhAZCk0oalEpSVEr6n8+6zzr2PZ1z77ndezZW7/U8/0fde87ee73W7vf8P/u71trR4+pa/Oug/Ou+ZHXCCZu6WQpqWprgq5y+Eu6PoT0GtL5eu5srfPrmH1IU9u9K+wVoKrMeUnl7nb9bt83yVWv9cXVf6Bqi93PypBn+MGJEBWeizQWj/371+rUhQyq45QZaEy3b6O/1Dm09FPAP53T4wv59F3VM86Zor7SVK9e5f1t6qKDKtnbb1z3pm5+ZE+2i3DV7JHp9mq4vSz3cUUCnIYAAAggggAACCGyAQGhhWpUvVYb8VGetZZw6dW1iamipRFWpTNr1t0Vl05ReVbYqVfqr6qndjPX/iKeuHS7s2LNn/5lYf70uEarKJAN+Yd/5p/1eOx1PmbLWTb2uXbv0ejuKl9T1rk7kO01Z3XXX0vnW6+r4/nc1apRyY/13NY2lrkXXkdpUSdc7qhXy/RTcXF2nHnQsWLAu327pmgKuart/kOTPrWCm0J9u1/RM16dqtKq6Oocqpen6W9S+leS/q6Keu6if1xprTdHXu+YV8jO1kvr3LRv9b4v+q2OqIq6d8FN379d1aJynTVvrHnbVrVsm4+vpNFtHD2YK21OgqDZ8HgEEEEAAAQQQ2GgEQgvTG83A0VEEEEAAAQQQQAABBBBAAIG/TyCkMF2qVN76VhoCCCCAQPYC69Ztk/2H+SQCCCCAAAIIIIBAnkBIYZoxRQABBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICQBwnRIo0lfEEAAAQQQQAABBBBAAAEEYhEgTMfCzEkQQAABBBBAAAEEEEAAAQRCEiBMhzSa9AUBBBBAAAEEEEAAAQQQQCAWAcJ0LMycBAEEEEAAAQQQQAABBBBAICSBkML0unXrbM2aNUUantKlS1vZsmWL9J3ifvi3336z999/31asWGHt2rUr7uH4fhYC06dPtwkTJuCdhVWIH1nw3VL77usf7YDj6sfavT/XrrOZX/1o0yfMt6q1trZ6+1a3LStuFus1cDIEEEAAAQQQQACBHAmEFKYVlvbee+8iSbVv395eeOGFIn1nQz88f/5869Kli7355pvuEB06dLDnn39+Qw/H97IQ6N27tw0YMMCmTZvm7o1x48Zl8S0+EorA0Ec+t/eem2jzZ/5sO+1e1e58+6zYuvb7yjV2zXHP2c57bWfLl6yyscOnW6Xtt7T7P+psm24W7wO82DrNiRBAAAEEEEAAgY1JIKQwPWbMGDvggAPsyCOPtMsuu8xq1Khh5cuXt7p167ohvfrqq61jx472888/2yeffGI9evSw4447zoYOHRrbkC9btswuuOACe+655wjTMair+t+3b1/r1auX7b///m7caRuPgALtsIHj7fk7Rlndvbe3214/PbbOD+z1ro15Y5oN+LKbrfn9D7up3Qs2Z+pi6ze2q5Xfqlxs18GJEEAAAQQQQAABBHIkEFKY1tTpU045xWbOnGlbbLGFE9PUb03lVuvTp48L2b7dcccdNmLECBs+fHiOdNMf9uGHH7bu3bsTpmNSf/fdd90DlmbNmtmHH34Y01k5zT9FYOKo7+3WDi/Zrk1q2M2vnBrLZSX+Z8c61u9rtRtsa7e8epo7559/rrM/Vq+lKh3LCHASBBBAAAEEEEAgBoGQwrSC8UsvvWSPPPJIUq6gMD1jxgxXqf7oo49ikP7rFP3797euXbsSpmNSf++99+yII46wQw891EaOHBnTWTnNP0Xgq0SYviURphscUMtufPmUWC5ryYJfres+/WIN8LF0jJMggAACCCCAAAII/CUQUpjOq/78maxE6+8FhWn9/o8//nAbkOm/X375pX311VfuOw0bNrTGjRvbJptsktXtog2uRo0aZWeffbbNnTvX3nrrLfvll1/s8MMPd8eJtoLCtAK+vjtnzhyrWbOmHXTQQet931/32LFjbfz48VamTBlr2bKl7bjjjutd66+//urWCU+dOtWqVq1qzZs3t2222SarPun6hwwZYt99951tvvnmts8++7gKb6nITSMrXYeut23btu6/b7/9tm222WZ2zDHHZH0uXZCuceLEibZ48WLbdddd3RrnrbfeOt+1anz10EQ/32OPPey1115zm85p/bnfSE7fVwX666+/tgYNGjgfXVu6MJ2Nz4IFC9xSgPPOO89d4//+9z/XN798oDBMfX7lypXuY/Xr13f31rx58+zTTz9NfrVRo0ZWp06d5N/Vz48//tiF/5122sl23nlnN77Vq1fPdzpdj/YK0PHlse+++xZ2OcnfL1++3H33m2++sdhsg1IAACAASURBVEqVKrnvy8s33Yv6N+FbmzZtnKVmcshNbdNNN7Vjjz0233UXNj6ZLvCHGUvs+0mLEuuLV1r1XSpZnT22SzsdevbkRbZg1lLbr1Vdmzxmjs2estgOPnG35MZeyxLfnzxmrs2Zsshq1qtipcuUst6dX0sbplf9tsZmTlxgOvdWVcpbg/1rrbdBmKaKfzrsW9ur+Y5WqnQpG/P6VKtRt7I1PLDWel1ZtWKNTfl0rs2d9pM9ffP7bo1017tbus/Vql/FKlevkPxOSfR37R9/2jefzLFqO1a0KtW3slmTFtqsbxZag6a1rNpOFfOda8rn86x6nUpuunuZsnmzdWgIIIAAAggggAACxRAILUynUhQWpvV5BeHTTjvNvv/+exfKFAhfeeUV23PPPe3pp5+2vfbaK6OwKuF33323ff7551ahQgXr3Lmz3Xvvvfk+r02wLr/88uTPMoXpwYMH28knn2wXXnihC9Fa66t14NqkTNflm8K6//upp55qH3zwgavIK7gryPpQqWtSiNT1a6r766+/7q7x5ZdftqOOOqrAu0YmCrP77befXXTRRe74Wueta3vggQfcd9VPTZ3X9SjMN23a1G6++ebkcRXMdA1at15QU6i79NJL7fHHH7czzzzTBfFBgwa5rzz22GNuB26tc9e5nnzySXe+//znP+4zCt9q6rf6pAcaCrqyaNWqlQ0bNsz1Wy01TBfmo9D44IMPJt0eeughO+usvA2sirL+WsdRvxYuXOjuA90PCui6fr/sQJuk6d5R07p6BW5dr5YtvPrqq85B9+QJJ5zgPrN69Wq74oor3M8OOeQQd59oeYOsdM/KsKCmqe+nn366VatWzTkptMtD31ef9eDlhx9+cPf2fffd5w71008/udCthwMa+3feecfdT7rebMcn3TWt/HW1PXnDCBs56Gs75KQGtkm5svbxa5PdRy+4p1VyB+63nphgH7z0jc34coHtf2w9K79lORsx6Cv3ubaX7G8drjzYJieC7O1nDrbdD6ptjQ7bySaMmGnj3pnhPpNamZ7+xYJEyH7VdmxQ1YVkfW6zLTaxywe0ccF57rc/2ZuPjnPXotB94f2tbeDV77g/qz0x6SLbYuv8a5+X/7zSnrx+pC2a+4tN+WyeO96+R+7iPt/0mHrWtHVdK4n+HnPevrbJpmVsxPNf2bKfVth5dx5po4dOta8/np0kPvqcvU3/d2/XoYmdzBcmf97itD3t/LsL/vdf4M3DLxFAAAEEEEAAAQTyBDb2ML106VJXLVRlb9asWS4sqN1111121VVXubAwZcqU9SqC/v5RFVRroG+44Qb3I1XvtNGZKrlXXnmlC3lqqvApnKulC9MKJKpEK1jq1VkKoAoz2kQtugu1NtTS9SogK0ipcq6fKRTpuz5468GAKplPPPGEderUyZ1XoUjhTX1SRXP77bfP+M+gdevWLjT5kKoPqjqqwCYzVYZ1fddff70LemraGf26665zQVFBTeEx9UFAuhOqsqkdzvVQQMFQTaHY/1mBWBvLqeKpvqifarfccour8KoK7SvUCvAnnXSSvfjii8kZCgqpukYFbE35VsvGR/1QgPb904MFzTyQqY6lNffZtksuucTuv//+ZJj23zv44INdBToapv29p35uueWWbqaEHhDo3P5VanrAIY/Ro0e7sVCY1f2lBw3XXnuts8nUVBHXwwD1QaFaMw00M0NBXeOg32npg6rQP/74o7u31HyY1p917hYtWiTDtO6JwsZnl13yQmVqu+OsITb+vZl24+AOicpwTfdrheIb2uY9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", "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "In new state frozenset({\"ignore('Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.')\", \"click('order form')\"})\n" ] }, { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "start\n", "\n", "<start>\n", "\n", "\n", "\n", "state\n", "\n", "<state>\n", "\n", "\n", "\n", "start->state\n", "\n", "\n", "\n", "\n", "\n", "state-1\n", "\n", "<state-1>\n", "\n", "\n", "\n", "state->state-1\n", "\n", "\n", "click('terms and conditions')\n", "\n", "\n", "\n", "state-2\n", "\n", "<state-2>\n", "\n", "\n", "\n", "state->state-2\n", "\n", "\n", "fill('city', '<text>')\n", "fill('email', '<email>')\n", "fill('name', '<text>')\n", "check('terms', <boolean>)\n", "fill('zip', '<number>')\n", "submit('submit')\n", "\n", "\n", "\n", "end\n", "\n", "<end>\n", "\n", "\n", "\n", "state->end\n", "\n", "\n", "\n", "\n", "\n", "state-1->end\n", "\n", "\n", "\n", "\n", "\n", "state-3\n", "\n", "<state-3>\n", "\n", "\n", "\n", "state-1->state-3\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "unexplored\n", "\n", "<unexplored>\n", "\n", "\n", "\n", "state-2->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-3->unexplored\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "None" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "('', 'PASS')" ] }, "execution_count": 137, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.run(gui_runner)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The next actions fill out the order form." ] }, { "cell_type": "code", "execution_count": 138, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.492659Z", "iopub.status.busy": "2025-01-16T10:12:43.492534Z", "iopub.status.idle": "2025-01-16T10:12:43.548397Z", "shell.execute_reply": "2025-01-16T10:12:43.548081Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Action click('terms and conditions') -> \n" ] }, { "data": { "text/plain": [ "('', 'PASS')" ] }, "execution_count": 138, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.run(gui_runner)" ] }, { "cell_type": "code", "execution_count": 139, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.550028Z", "iopub.status.busy": "2025-01-16T10:12:43.549915Z", "iopub.status.idle": "2025-01-16T10:12:43.601476Z", "shell.execute_reply": "2025-01-16T10:12:43.600926Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Action click('terms and conditions') -> \n" ] }, { "data": { "text/plain": [ "('', 'PASS')" ] }, "execution_count": 139, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.run(gui_runner)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "At this point, our GUI model is fairly complete already. In order to systematically cover _all_ states, random exploration is not efficient enough, though." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Covering States\n", "\n", "During exploration as well as during testing, we want to _cover_ all states and transitions between states. How can we achieve this?" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "It turns out that _we already have this._ Our `GrammarCoverageFuzzer` from the [chapter on coverage-based grammar testing](GrammarCoverageFuzzer.ipynb) strives to systematically _cover all expansion alternatives_ in a grammar. In the finite state model, these expansion alternatives translate into transitions between states. Hence, applying the coverage strategy from `GrammarCoverageFuzzer` to our state grammars would automatically cover one transition after another." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "How do we get these features into `GUIFuzzer`? Using _multiple inheritance_, we can create a class `GUICoverageFuzzer` which combines the `run()` method from `GUIFuzzer` with the coverage choices from `GrammarCoverageFuzzer`." ] }, { "cell_type": "code", "execution_count": 140, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.604115Z", "iopub.status.busy": "2025-01-16T10:12:43.603971Z", "iopub.status.idle": "2025-01-16T10:12:43.964921Z", "shell.execute_reply": "2025-01-16T10:12:43.964603Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from GrammarCoverageFuzzer import GrammarCoverageFuzzer" ] }, { "cell_type": "code", "execution_count": 141, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.966887Z", "iopub.status.busy": "2025-01-16T10:12:43.966624Z", "iopub.status.idle": "2025-01-16T10:12:43.968662Z", "shell.execute_reply": "2025-01-16T10:12:43.968382Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "from bookutils import inheritance_conflicts" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Since the `__init__()` constructor is defined in both superclasses, we need to define our own constructor that serves both:" ] }, { "cell_type": "code", "execution_count": 142, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.970073Z", "iopub.status.busy": "2025-01-16T10:12:43.969973Z", "iopub.status.idle": "2025-01-16T10:12:43.973470Z", "shell.execute_reply": "2025-01-16T10:12:43.973224Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "text/plain": [ "['__init__']" ] }, "execution_count": 142, "metadata": {}, "output_type": "execute_result" } ], "source": [ "inheritance_conflicts(GUIFuzzer, GrammarCoverageFuzzer)" ] }, { "cell_type": "code", "execution_count": 143, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.974886Z", "iopub.status.busy": "2025-01-16T10:12:43.974783Z", "iopub.status.idle": "2025-01-16T10:12:43.976675Z", "shell.execute_reply": "2025-01-16T10:12:43.976440Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "class GUICoverageFuzzer(GUIFuzzer, GrammarCoverageFuzzer):\n", " \"\"\"Systematically explore all states of the current Web page\"\"\"\n", "\n", " def __init__(self, *args, **kwargs):\n", " \"\"\"Constructor. All args are passed to the `GUIFuzzer` superclass.\"\"\"\n", " GUIFuzzer.__init__(self, *args, **kwargs)\n", " self.reset_coverage()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "With `GUICoverageFuzzer`, we can set up a method `explore_all()` that keeps on running the fuzzer until there are no unexplored states anymore:" ] }, { "cell_type": "code", "execution_count": 144, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.978358Z", "iopub.status.busy": "2025-01-16T10:12:43.978261Z", "iopub.status.idle": "2025-01-16T10:12:43.980784Z", "shell.execute_reply": "2025-01-16T10:12:43.980520Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "class GUICoverageFuzzer(GUICoverageFuzzer):\n", " def explore_all(self, runner: GUIRunner, max_actions=100) -> None:\n", " \"\"\"Explore all states of the GUI, up to `max_actions` (default 100).\"\"\"\n", "\n", " actions = 0\n", " while (self.miner.UNEXPLORED_STATE in self.grammar and \n", " actions < max_actions):\n", " actions += 1\n", " if self.log_gui_exploration:\n", " print(\"Run #\" + repr(actions))\n", " try:\n", " self.run(runner)\n", " except ElementClickInterceptedException:\n", " pass\n", " except ElementNotInteractableException:\n", " pass\n", " except NoSuchElementException:\n", " pass" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Let us use this to fully explore our Web server:" ] }, { "cell_type": "code", "execution_count": 145, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:43.982345Z", "iopub.status.busy": "2025-01-16T10:12:43.982255Z", "iopub.status.idle": "2025-01-16T10:12:44.001912Z", "shell.execute_reply": "2025-01-16T10:12:44.001460Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)" ] }, { "cell_type": "code", "execution_count": 146, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:44.004369Z", "iopub.status.busy": "2025-01-16T10:12:44.004218Z", "iopub.status.idle": "2025-01-16T10:12:44.099781Z", "shell.execute_reply": "2025-01-16T10:12:44.099498Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer = GUICoverageFuzzer(gui_driver)" ] }, { "cell_type": "code", "execution_count": 147, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:44.101875Z", "iopub.status.busy": "2025-01-16T10:12:44.101682Z", "iopub.status.idle": "2025-01-16T10:12:44.912673Z", "shell.execute_reply": "2025-01-16T10:12:44.912391Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer.explore_all(gui_runner)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Success! We have covered all states:" ] }, { "cell_type": "code", "execution_count": 148, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:44.914669Z", "iopub.status.busy": "2025-01-16T10:12:44.914546Z", "iopub.status.idle": "2025-01-16T10:12:45.310245Z", "shell.execute_reply": "2025-01-16T10:12:45.309769Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "start\n", "\n", "<start>\n", "\n", "\n", "\n", "state\n", "\n", "<state>\n", "\n", "\n", "\n", "start->state\n", "\n", "\n", "\n", "\n", "\n", "state-1\n", "\n", "<state-1>\n", "\n", "\n", "\n", "state->state-1\n", "\n", "\n", "click('terms and conditions')\n", "\n", "\n", "\n", "state-2\n", "\n", "<state-2>\n", "\n", "\n", "\n", "state->state-2\n", "\n", "\n", "fill('city', '<text>')\n", "fill('email', '<email>')\n", "fill('name', '<text>')\n", "check('terms', <boolean>)\n", "fill('zip', '<number>')\n", "submit('submit')\n", "\n", "\n", "\n", "end\n", "\n", "<end>\n", "\n", "\n", "\n", "state->end\n", "\n", "\n", "\n", "\n", "\n", "state-1->state\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "state-1->end\n", "\n", "\n", "\n", "\n", "\n", "state-2->state\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "state-2->end\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fsm_diagram(gui_fuzzer.grammar)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We can retrieve the expansions covered so far, which of course cover all states." ] }, { "cell_type": "code", "execution_count": 149, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:45.312115Z", "iopub.status.busy": "2025-01-16T10:12:45.311982Z", "iopub.status.idle": "2025-01-16T10:12:45.314983Z", "shell.execute_reply": "2025-01-16T10:12:45.314668Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "{' -> False',\n", " ' -> True',\n", " ' -> ',\n", " ' -> ',\n", " ' -> ',\n", " ' -> 0',\n", " ' -> 1',\n", " ' -> 2',\n", " ' -> 3',\n", " ' -> 4',\n", " ' -> 5',\n", " ' -> 6',\n", " ' -> 7',\n", " ' -> 8',\n", " ' -> 9',\n", " ' -> ',\n", " ' -> ',\n", " ' -> @',\n", " ' -> ',\n", " ' -> A',\n", " ' -> B',\n", " ' -> D',\n", " ' -> H',\n", " ' -> J',\n", " ' -> K',\n", " ' -> L',\n", " ' -> M',\n", " ' -> P',\n", " ' -> Q',\n", " ' -> W',\n", " ' -> Y',\n", " ' -> b',\n", " ' -> g',\n", " ' -> h',\n", " ' -> l',\n", " ' -> m',\n", " ' -> n',\n", " ' -> q',\n", " ' -> t',\n", " ' -> v',\n", " ' -> y',\n", " ' -> ',\n", " ' -> ',\n", " ' -> ',\n", " ' -> .',\n", " ' -> ',\n", " ' -> ',\n", " ' -> ',\n", " \" -> click('order form')\\n\",\n", " ' -> ',\n", " ' -> ',\n", " \" -> click('order form')\\n\",\n", " ' -> ',\n", " ' -> ',\n", " ' -> ',\n", " \" -> click('terms and conditions')\\n\",\n", " \" -> fill('city', '')\\nfill('email', '')\\nfill('name', '')\\ncheck('terms', )\\nfill('zip', '')\\nsubmit('submit')\\n\",\n", " ' -> ',\n", " ' -> ',\n", " ' -> ',\n", " ' -> '}" ] }, "execution_count": 149, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.covered_expansions" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Still, we haven't seen all expansions covered. A few digits and letters remain to be used." ] }, { "cell_type": "code", "execution_count": 150, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:45.316539Z", "iopub.status.busy": "2025-01-16T10:12:45.316425Z", "iopub.status.idle": "2025-01-16T10:12:45.319136Z", "shell.execute_reply": "2025-01-16T10:12:45.318878Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "text/plain": [ "{' -> C',\n", " ' -> E',\n", " ' -> F',\n", " ' -> G',\n", " ' -> I',\n", " ' -> N',\n", " ' -> O',\n", " ' -> R',\n", " ' -> S',\n", " ' -> T',\n", " ' -> U',\n", " ' -> V',\n", " ' -> X',\n", " ' -> Z',\n", " ' -> a',\n", " ' -> c',\n", " ' -> d',\n", " ' -> e',\n", " ' -> f',\n", " ' -> i',\n", " ' -> j',\n", " ' -> k',\n", " ' -> o',\n", " ' -> p',\n", " ' -> r',\n", " ' -> s',\n", " ' -> u',\n", " ' -> w',\n", " ' -> x',\n", " ' -> z',\n", " ' -> ',\n", " ' -> !',\n", " \" -> click('order form')\\n\",\n", " \" -> click('order form')\\n\"}" ] }, "execution_count": 150, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_fuzzer.missing_expansion_coverage()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "Running the fuzzer again and again will eventually cover these expansions too, leading to letter and digit coverage within the order form." ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "slide" } }, "source": [ "## Exploring Large Sites\n", "\n", "Our GUI fuzzer is robust enough to handle exploration even on nontrivial sites such as [fuzzingbook.org](https://www.fuzzingbook.org). Let us demonstrate this:" ] }, { "cell_type": "code", "execution_count": 151, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:45.320678Z", "iopub.status.busy": "2025-01-16T10:12:45.320578Z", "iopub.status.idle": "2025-01-16T10:12:48.048089Z", "shell.execute_reply": "2025-01-16T10:12:48.047732Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(\"https://www.fuzzingbook.org/html/Fuzzer.html\")" ] }, { "cell_type": "code", "execution_count": 152, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:48.050663Z", "iopub.status.busy": "2025-01-16T10:12:48.050434Z", "iopub.status.idle": "2025-01-16T10:12:48.229692Z", "shell.execute_reply": "2025-01-16T10:12:48.229261Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "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CZBAQhKgmE7Iy8pBkQAJkAAJkAAJkAAJkAAJkAAJxJMAxXQ86bJtEiABEiABEiABEiABEiABEiCBhCRAMZ2Ql5WDIgESIAESIAESIAESIAESIAESiCcBiul40mXbJEACJEACJEACJEACJEACJEACCUmAYjohLysHRQIkQAIkQAIkQAIkQAIkQAIkEE8CFNPxpMu2SYAESIAESIAESIAESIAESIAEEpIAxXRCXlYOigRIgARIgARIgARIgARIgARIIJ4EKKbjSZdtkwAJkAAJkAAJkAAJkAAJkAAJJCQBiumEvKwcFAmQAAmQAAmQAAmQAAmQAAmQQDwJUEzHky7bJgESIAESIAESIAESIAESIAESSEgCFNMJeVk5KBIgARIgARIgARIgARIgARIggXgSoJiOJ122TQIkQAIkQAIkQAIkQAIkQAIkkJAEKKYT8rJyUCRAAiRAAiRAAiRAAiRAAiRAAvEkQDEdT7psmwRIgARIgARIgARIgARIgARIICEJ5Nu6deuhhBwZB0UCJEACJEACJEACJEACJEACJEACcSJAMR0nsGyWBEiABEiABEiABEiABEiABEggcQlQTCfuteXISIAESIAESIAESIAESIAESIAE4kSAYjpOYNksCZAACZAACZAACZAACZAACZBA4hKgmE7ca8uRkQAJkAAJkAAJkAAJkAAJkAAJxIkAxXScwLJZEiABEiABEiABEiABEiABEiCBxCVAMZ2415YjIwESIAESIAESIAESIAESIAESiBMBiuk4gWWzJEACJEACJEACJEACJEACJEACiUuAYjpxry1HRgIkQAIkQAIkQAIkQAIkQAIkECcCFNNxAstmSYAESIAESIAESIAESIAESIAEEpcAxXTiXluOjARIgARIgARIgARIgARIgARIIE4EKKbjBJbNkgAJkAAJkAAJkAAJkAAJkAAJJC4BiunEvbYcGQmQAAmQAAmQAAmQAAmQAAmQQJwIUEzHCSybJQESIAESIAESIAESIAESIAESSFwCFNOJe205MhIgARIgARIgARIgARIgARIggTgRoJiOE1g2SwIkQAIkQAIkQAIkQAIkQAIkkLgEKKYT99pyZCRAAiRAAiRAAiRAAiRAAiRAAnEiQDEdJ7BslgRIgARIgARIgARIgARIgARIIHEJUEwn7rXlyEiABEiABEiABEiABEiABEiABOJEgGI6TmDZLAmQAAmQAAmQAAmQAAmQAAmQQOISoJhO3GvLkZEACZAACZAACZAACZAACZAACcSJAMV0nMCyWRIgARIgARIgARIgARIgARIggcQlQDGduNeWIyMBEiABEiABEiABEiABEiABEogTAYrpOIFlsyRAAiRAAiRAAiRAAiRAAst9yZAAACAASURBVCRAAolLgGI6ca8tR0YCJEACJEACJEACJEACJEACJBAnAhTTcQLLZkmABEiABEiABEiABEiABEiABBKXAMV04l5bjowESIAESIAESIAESIAESIAESCBOBAKJ6ZSUlDh1g82SAAmQAAmQAAmQAAmQAAmQAAmQQM4TSEtL89UJimlfmFiJBEiABEiABEiABEiABEiABEggGQhQTCfDVeYYSYAESIAESIAESIAESIAESIAEQiVAMR0qTjZGAiRAAiRAAiRAAiRAAiRAAiSQDAQoppPhKnOMJEACJEACJEACJEACJEACJEACoRKgmA4VJxsjARIgARIgARIgARIgARIgARJIBgIU08lwlTlGEiABEiABEiABEiABEiABEiCBUAlQTIeKk42RAAmQAAmQAAmQAAmQAAmQAAkkAwGK6WS4yhwjCZAACZAACZAACZAACZAACZBAqAQopkPFycZIgARIgARIgARIgARIgARIgASSgQDFdDJcZY6RBEiABEiABEiABEiABEiABEggVAIU06HiZGMkQAIkQAIkQAIkQAIkQAIkQALJQIBiOhmuMsdIAiRAAiRAAiRAAiRAAiRAAiQQKgGK6VBxsjESIAESIAESIAESIAESIAESIIFkIEAxnQxXmWMkARIgARIgARIgARIgARIgARIIlQDFdKg42RgJkAAJkAAJkAAJkAAJkAAJkEAyEKCYToarzDGSAAmQAAmQAAmQAAmQAAmQAAmESoBiOlScbIwESIAESIAESIAESIAESIAESCAZCFBMJ8NV5hhJgARIgARIgARIgARIgARIgARCJUAxHSpONkYCJEACJEACJEACJEACJEACJJAMBCimk+Eqc4wkQAIkQAIkQAIkQAIkQAIkQAKhEqCYDhUnGyMBEiABEiABEiABEiABEiABEkgGAhTTyXCVOUYSIAESIAESIAESIAESIAESIIFQCVBMh4qTjZEACZAACZAACZAACZAACZAACSQDAYrpZLjKHCMJkAAJkAAJkAAJkAAJkAAJkECoBCimQ8XJxkiABEiABEiABEiABEiABEiABJKBAMV0MlxljpEESIAESIAESIAESIAESIAESCBUAhTToeJkYyRAAiRAAiRAAiRAAiRAAiRAAslAgGI6Ga4yx0gCJEACJEACJEACJEACJEACJBAqAYrpUHGyMRIgARIgARIgARIgARIgARIggWQgQDGdDFeZYyQBEiABEiABEiABEiABEiABEgiVAMV0qDjZGAmQAAmQAAmQAAmQAAmQAAmQQDIQoJhOhqvMMZIACZAACZAACZAACZAACZAACYRKgGI6VJxsjARIgARIgARIgARIgARIgARIIBkIUEwnw1XmGEmABEiABEiABEiABEiABEiABEIlQDEdKk42RgIkQAIkQAIkQAIkQAIkQAIkkAwEKKaT4SpzjCRAAiRAAiRAAiRAAiRAAiRAAqESoJgOFScbIwESIAESIAESIAESIAESIAESSAYCFNPJcJU5RhIgARIgARIgARIgARIgARIggVAJUEyHipONkQAJkAAJkAAJkAAJkAAJkAAJJAMBiulkuMocIwmQAAmQAAmQAAmQAAmQAAmQQKgEKKZDxcnGSIAESIAESIAESIAESIAESIAEkoEAxXQyXGWOkQRIgARIgARIgARIgARIgARIIFQCFNOh4mRjJEACJEACJEACJEACJEACJEACyUCAYjoZrjLHSAIkQAIkQAIkQAIkQAIkQAIkECoBiulQcbIxEiABEiABEiABEiABEiABEiCBZCBAMZ0MV5ljJAESIAESIAESIAESIAESIAESCJUAxXSoONkYCZAACZAACZAACZAACZAACZBAMhCgmE6Gq8wxkgAJkAAJkAAJkAAJkAAJkAAJhEqAYjpUnGyMBEiABEiABEiABEiABEiABEggGQhQTCfDVeYYSYAESIAESIAESIAESIAESIAEQiVAMR0qTjZGAiRAAiRAAiRAAiRAAiRAAiSQDAQoppPhKnOMJEACJEACJEACJEACJEACJEACoRKgmA4VJxsjARIgARIgARIgARIgARIgARJIBgIU08lwlTlGEiABEiABEiABEiABEiABEiCBUAlQTIeKk42RAAmQAAmQAAmQAAmQAAmQAAkkAwGK6WS4yhwjCZAACZAACZAACZAACZAACZBAqAQopkPFycZIgARIgARIgARIgARIgARIgASSgQDFdDJcZY6RBEiABEiABEiABEiABEiABEggVAIU06HiZGMkQAIkQAIkQAIkQAIkQAIkQALJQIBiOhmuMsdIAiRAAiRAAiRAAiRAAiRAAiQQKgGK6VBxsjESIAESIAESIAESIAESIAESIIFkIEAxnQxXmWMkARIgARIgARIgARIgARIgARIIlQDFdKg42RgJkAAJkAAJkAAJkAAJkAAJkEAyEKCYToarzDGSAAmQAAmQAAmQAAmQAAmQAAmESoBiOlScbIwESIAESIAESIAESIAESIAESCAZCFBMJ8NV5hhJgARIgARIgARIgARIgARIgARCJUAxHSpONkYCJEACJEACJEACJEACJEACJJAMBCimk+Eqc4wkQAIkQAIkQAIkQAIkQAIkQAKhEqCYDhUnGyMBEiABEiABEiABEiABEiABEkgGAhTTyXCVOUYSIAESIAESIAESIAESIAESIIFQCVBMh4qTjZEACZAACZAACZAACZAACZAACSQDAYrpZLjKHCMJkAAJkAAJkAAJkAAJkAAJkECoBCimQ8XJxkiABEiABEiABEiABEiABEiABJKBAMV0MlzlBBpj2ob1svLbUZK6crmkbdwgBYoWldJHNpEqXXpIidp1E2ikHAoJxEZg9+pVsnXuLNm9bp1+1gj+vWvVctm3bavkL5IiBVJSJF+Bgnrf1JFWjzwd28lcjuY9Gze02dpwbplPGPS2ubNlzc9jZfeaVbJvx3YpXKaslDmquVQ/4SQpVKp0tnLhyUiABEiABJKbQFKJ6UMH9suuFcvjesWLlCvPH/M4Ed7893SZdtt1jq23euQpqdShc5zOzmatBPZs2mi8xAYp+QoUkPwFC0m+ggX1z4Iq5ooaiyEs8SEwe+gTsuKrzzwbL1q1mnR+/0vPetFU4D0bDTXnY3DP7U/dFW6jPlpLqVBR5rwwJMfnE7q6ZOR7Mu+1F2x7XbhsOWn3/OtSrHpNH6NiFRIgARIgARKInUBSienU1Stl4sVnxk7NpYXqvU6WZncPiOs5krXxiZeebexIOxW8SHX9aLQh1ljiS2DmEwNl1fffhHISWBSkVK4ipRs0krItjpZyzVtJ/sKFQ2k7mRv5/c6bZNOf0zwRxFNM8571xB+owtRrL5XtC+YGOiaMyi0HDJYVo7/I8fm0e91amXDBaa5DqtrtBGnR/9Ewhs02SIAESIAESMCTQFKJ6c0z/pRpt1/vCSWWCpWP7yZHP/R4LE3wWBsC2JEZ16eHJ5vj3/uMuxKelGKvAAsB7DrGoxQsVkzqnHORfi6UgsWKx+MUSdHm+PNOEZhYe5V4iWnes17kg38/4aLT1bR5dfADYzyi2V0PyIK3huXofMIQ1v8ySabf3891NFhU7fbZmBhHzMNJgARIgARIwB+BpBLTq378VmYOfsgfmShrUUxHCc7jsJ1LFsnkqy7wbPxYNfEr27SFZz1WiI2AX6EWy1nwUnz0wCd4PaOACJeW73se5+vIeIlp3rO+8AeqlFNiuukd98mspwf56mu85hNOvuLrz2X2s96L1b3H/SaSL5+v/rISCZAACZAACcRCIKnE9KIRw2XB8Fdj4eV5LMW0J6KoKuzZsll+Pqu357HHj/hcilWr4VmPFaIncGi/CrUT/Am16M9y+MiUipWk45sfSsESJWNtKqmOxzWCmbcf64F4iR/es+FPuRwT0/3uk9Vjx+TofALNdZN+lr8G3O0KljvT4c87tkgCJEACJOBMIKnENIKWIHhJPAvFdPzoeu2Gwjy4+6ixRoRilvgR2Ld9m4w7vWf8ThDRcvUTT5Nmd/bPtvMlzIkOHRJY4/z7/FMatCrVcVjxEtM4Ie/ZcGdTTolpmHlX73VKjs8nRBSfcPEZrlCrdO4u8PFmIQESIAESIIHsIJBUYvpA2m4jIumq776KG1uK6bihlQ2/TpY/77vd8QQt1Ve9ivqss8SfAOIPzHjkftmrFgPZUdq/8raRAo0lOAEvc+t4imnes8Gvl9sROSqme59qdC0n5xPOv+DNV2TR+2/ZYsKCaofX3pei1aqHC56tkQAJkAAJkIADgaQS0yYDmD7OGjLINTJ0xXYdpGHfmxwnzsJ3Xpd1E3/K8j3FdHzvtR2LF6q54Xeybc4s2b97txQuW1ZK1KwtNU4+XUrUOSK+J2frmQggwNSyTz+Uhe+96Uqm3QtvSgF9yZWDB+Wgmh8f2JMm+7ZuMYIJ+Y0I3vSO+6XGSX14BaIgsHvtaplw4emOR8ZTTOOkvGejuGgOh9iJ6WZ3PSjF9RkYWX7931WuJ65/WV+p0KZdljoL3h6WJWq3sTOdLqZzej6hwxt+myrrJo+XHQvnyyF9rhTVbAAl6zWQWn3ONnJOs5AACZAACZBAdhFISjENuH8/2l/W/PSDI+f6l1wl9a+41vF7/Jj/ee+tFNPZNVN5nlxJYOfSxTL5yvNd+9bz2wlGTmm7guNnPzNYtsz627UNRPdudP0tuZJBbu9UbhA/uZ1RXulfpJhGsEUEXbQrk684T3YuW+I4tOb3DpRqPU/M8j3uxd9u7pvp/3ObmM4r14v9JAESIAESSHwCFNMO19hLTCPAz8+aeibSzJU704l/03CE/xGIVUyjJaT6gUhwKxXatpc2jz9H9FEQoJiOAlouPWSvWnQg13La+rWyZ9NGqdShsxGkL0wxjbbWT5kgiI2QUqmKseuLP83c75xPuXRysFskQAIkQAI5QoBiOkoxjcOseasRQbR49ZpSuVMXI0du2sb1kqrBUnavWyNp+vKTqoIBLyGH9u2TfIUKSX79FChcRMq3OVZqnXZWll4gtc3O5cv0pWmdHr/GaAdt7Nm4waibv0gR43j82UB30CPN/CDyDx44EPqkKqImdPkKHg7wZZjr7tgR+jkK6JgKlSyV0e5uZbB7jbLUF8jda5WF8TnM0uCQkiIFiqQYJovVe5+SqT8H1BR81wrluEHbQDt6LF5E9+9OlfwaqAwviPl1PHXOvUhKNWiUcSzGlrpyhbGzk7p6pf5/PilUooTxUlm2aXMpVKp0KOPes3mTbF8wT/CSjJfX/am7jLEXqVBRUspXVNPF+hm7uvD537dzZ6bzFtD+h9WXaAYUhpjGeX+96UrZqqb7TgWCoctHozO+xv2xC/eH5lE2rq3eY7hH9m7balxX4x7T61rpuE5StVuvjON2aIq1rbP/OZyrV1PnFC5dWqp06ekoSCL7g2uQumqlMad2rVph3Me474tWrS7F9FOgqP0OvC+2aq6KCNh4dhj3vX727dxh5NrGnMCnWI2aUqJWnUBpf6IRP+C7Z8sWX902KxXRZ2C+AgWMfybyPZu6crlgHsHNYe+2bXJw7x4pUq68MYdSKlaWknXr6QM6v8EBz0c8S6wF1xO+vfEu0e5Me/Ur6HwCp13KDM/TVH1u51M2hYqXkKJVqhpp73xF6tdgerjn8BuQtg73u/4G4DdB73sU/A4Yv6n6O1Dn7AulzFHNMg0Dv4f4PbY+K/C7fFDnOY7LX/Dw73GTW+/OdA8bfdfnjHFuPWd+rVOweHEpUbuulG7UxDhfGCW75pRxX2/WZ0z6c9P4LdTghIVLl9HfkVL6Z9nDvz86l3E/s5AACZAACXgToJh2YOS1M20ehpdfvBiYq/bm/0+99lIVSXM9r0D1nidJs3sfylJv27x/5ZfrL/M8HhXaDh0m5ZofnaluvALVHPPUi1K+dVvjXDCTh7l82CXSdHHipWe7+reb56+pixJH6cuQtSz7bKT8+9Iznl1s9dgQKd+yjfrwjpaln3/keT4I71qnnXnYjzdgPlO8YC//6lPDXxgvUV6lxsl9pKCaSS/VsUSWcke3kbZDXvZqIm7fhyWmkcZp05/THPsZKaa3z58rU6+71HNcdc+7WI689mbB/TRn6BP655wsx7Qe9IxUbNfRsS1cr6Ufj5BVP3xjvIS6lWI1aknjG251bc96PBZR1vz8o6waM9rX8wLHYuGu4rEd5IgLLrX1lY3sX1Dxg+O3zZ0tv9xwhSdfa4UOmsLMEJJaEu2exYLa0o/fl7Wamskr6B7mag31L96u/ryICxBZGlx5ndS7+MpAbKOpnJNiuu1TL8mqcWN0Xn99eOHKpeB5X/vM83RRq4djLSwwjT8380KpU+UW/R/VBbQTMn09/YE7dLd9oidGZIM4kJYmyz4fqff7t57XGr+FuJblWrTybDuyQnbOKfDDb+GSj0b47id+47AYiUXq0o0aM0uGb3KsSAIkkGwEKKYdrrhfMe00Ycae0sU1HY15nJOYRnCzvx66x9d8tBPTXilpfDVsUwnBbszdX6TdmTn4oWibcjzOmif0kO6uf9+zva9z2InpuSqk7URoZIN4cUhdtdzXNbMeW6nD8Zq26QHfu8Mrvxklc195NvB5nAAkhJjWXaexp3Z1ZVKpfSfBgodZ/OSbRV1YiRTTyL5znnvScQ5ZF4isleDKseLbUTJfU+q5pZayaxgBDBvfeLsU013ryII5DauWlZpVwC1ug59JjyBS+LiVaMT02gnjZMbAe/10IaOOuSiRSPfswb17BSkVl+kCW1gl0cV0tJxqnX6ONLruliwL02hv6+yZ4hVQzTyvnZj2Wlgwj4Wbll1gUa8x4R6sd/EVvgRnds4p7KwvevcNX7+BbmN08q/34sLvSYAESCAZCFBMO1zlWMQ0fsDG9XFeZbee0klML/3kfRVd/nxE7cT0T2f19lxVj2aCW1/esbM684mB0TTjecwJYyYZJnXYCcTCgJ9iJ6b/vO82Tak1xc/hUdeBcGo96Fn349WEd+6rz8lSjX4dZvES0/vVTDhNfSvzq/ktojaHnYM7jJ3p5V99ZuwauxUIaQhqswS5P7x4t33mFSnXsnWmajsWLZC/VEz6sRxwah+mvMe9NkLFfI1MVRYMf1UWjRju1S3f3yOnLnLrOpVoxDR2sOYNe953H1Cxyc13CgRRotyzeI7/9eBdguwPYRaKaWeaTotDQaygsohpffaO6ZE1anmY1xRtwQIGljBuJTvnFFxS/rjrZs/gjn44WBfR/dRnHRIgARJIJgIU0w5X21VM607aXwPulk3Tpxk+chAp1Xr0zvDNRLqOKde4/6iap3US03Oef0qWf/mJr7mYnTvTSI+CyK4oq8d9L/88dvjvYZfOI74wcoXaRZZ1OpedmPZrbhpr/1sPHqqmt8c5NrNEzYTnvRpMnPjpk5OYhsn0bN2NjRSDSCF25DX/U7+4kn6a96wTq5heqxYYMzwsMGA22/mDLzMtBAS5P7wGgWjIMDU1y271rfxF0wp5mfN6tYvvkRu7/cuaE9fiCoBFMiwGhFUg2jt/MMrROiIaMY3FDSxyBClmxPWEuGf1GT+9v5oG25hpB2FiV5di2pkg5nKXj78x4gRYy+IP3pb5b/hzZ4kU02kaZ2T8uSfHetl8Hd/t8++dU3Nl85zCQhDSh4VRvFxhwjgH2yABEiCBvEqAYtrhyrmJ6Q2/TpY/77s905HW1D27li9Vf8PLfZmGOonphWqatfDt13zNKzsxPe2260LfUUFnrFGVsWOD88SjIDcxgsjA7xz+536KnZiOF4fI/lTr3kua3/+IbTexyzml70V+hhC4jp2YxvybdPm5jm3BnxAvnGEUP2K67bOvaqCeIsbpDukL5V4NbJWqwbvWT53oa462fOhxqaLml9aC3NYL3xoWxhCk/StvG6LX6J+adk/SVF+x7EhHdgrjt/pUBrm3/Q7QLXVYNGIaps1LRr7n9/RGPXNXMRHu2RVffy6zn3080Pj9VqaYdifV6Ppb1T3jwkyVVqlLxMyn/D2zIsU0op5jcTuMxTGva9y03/2CGBd2JTvnVJAFfa8x4fvjhr2bKUCnn2NYhwRIgASShQDFtMOVxm5YcUTNtSk7Fi/M8sMc+TKLKM3zh70g8Ct2K05iGsdgd3HWM4M8A7jYiWm8eOAFxK7AJxmRjhGVu2DRYlJII3kiwqpbACizHesOrNtLOnYYCmpgNpT8GvHUjN4KX0yvgl1CmN6aUcMRPGXuy0Nl7fixrofaiWlEL10x+ktXn1mnRjEH9u/a6WtRBG30HvtrRhRfa5szHr7Ps++oj0AvpRo01OjAe42ot34C5tiJ6fmvvySLP3zHlVW3z8YYgaxiLX7EdCznQEA5XFe74vf+8Dp/BzXFLlm/oVENPu2zhjzmdYhhVo1oxIgm7DUvrdYcaBgm3jD1dro3EQytaKXKxlzarYGv4E7hVRCAEM8BuxKNmMaiwvcnOFtaRJ6n0Q23SZ2zNN94+g58Xr5nndIeRo4Z9w8WSRDNfS+iPmvkfz8m4ckopmG95RWIzORb8oj60uGND7JM5a3/zlJ3kCc9A/XZ+UwjiODCd16LyvcdvwNegQfNzkbGdjD/P7vn1NyXn3V1KQKjyp26GpHMdYXTyCaB2CKwALArPb4a5y/quteDit+TAAmQQAISoJgO6aI67QwhcM2/L/4XOCnydG5iGnWRVuXXG68UCHinYiemnV7Y7fL1IiL5b7dc47kbF+nP5vbC3e7F4VKmSdNMXYbZOsxz3QpeULEKnlIha+7URSPeUhHyiuPhdmLarOw3GixEUt3zL9GoxPUzAuFglX/20MddUzfhPJ3f/9Iw+bcWP+fFMVg8KFq5aqZjkXJn5Xdfuy4E2IlpP+Z97V7S69M48/WJ5laIp5j28gf3e394javj8JFSos4RRoqj8Rf0cd3BQqC6lgMGZfKDRpqk3++40fE4XF/MDbOsGP2FzH5msG23qp94mga0yxwhH4J9+v23uz4DsHjVY/R42zajEdOLP3xX5r/+ois6sKh5yumCoE1IrWNX8uI968f1AIEHWz7wmBHXwVrgEwsh47YAkixiGosreCYjZoCZMm3zX3/ILN3x97L86P2TfWR/LI7+eX8/2TjtF8e5aSemzcpY+MLiplc54oLLNFPDabpghjgTmu5NBScsaWbpfeu2wx2ZdSDjvD7cWcKcU1OuvtDxeYGo6S0fHJQFgdNzAr+JiMvAQgIkQAIkYE+AYjqkmeEkpr2icnuJaXTPK22QnZhe/eN38s/gAVlGhxV/rPybBS9/MIV2E+uoiyBbrR55OuOlyDzeLmp4tZ4nCqJ/WgtSpMx80t4M2lrv2Odek7LNWtpeFaQmmvm4c8AzNzGNl6Ex3Y91vdp2CwDmAUhjMvHiM12Pb/Pk88busrW4CSezXtdPvpUi5SvYtu3lf2onOKfry6aXr6dpRh/r9I+nmEbfkP6p/mXX2Eb4NfvudX+gHgRtvYuuMF7s8cIL8XdQ85Qjrzdyh2OHBjvdaMutRN4/Zl2vyPbdR43L8FN3i0xc//JrpP6lV2fpgp9UYNZzWBsIKqYRaXza7de7cqjcsYvxgm2KJKfKefGeRbo/tyjrkZYzkWP38u9NdDFtBN4b9p5tJHuwgqCe1u8G1/nlthOK3xH8njgVNzHt9TxFajukGsQzwq543ec4puc3E7Lkm8/uOeUWgPTwgvV7umBdMcsQZ2usBMSMsBYsLpdvdUysPxU8ngRIgAQSlgDFdEiXNreJaaSngan57nVrDFNUvFCXqn9kpiBZB3bvVvFwo+eOK14sICIKlSyVhRbESBraX7/OOBdW7cECL1Rm8Ztmp/FN/Yx8ozn1Yt7rx6mu0a6n3XqtbP7nL8f+YbU/Mleqm7k9GnJdANDvvV7+7MS0l4kfzttVzbyL5AEzb/QVQdOa9nPeTfIS0xCo9S663DOSuZd5vNsODeY9XmCdilWE4978WQMi2e1w4UUe19SueKXbc/JrDCKmYUmBGAVuu2+wODnm6ZekgOY+9yrxFtPxuGe90gq6iTXwSHYxHWmJYTdHvLJNdHzrIylRu67t9IqnmPayhoH1yg+9/8sqYNfBLh+PzmJZld1zym1nGn2GoD7yupulipp6+7mPve5zfk8CJEACyUyAYjqkq5/bxLSfYWHnGjvYXsXqU+pVN/J7v8G33AJ4mW3m9Is5IpcjgrlTQZRz+Mdai1c0ca8d4mjE9La5szUA3hWO/bQz9Q96Xc368d6ZNs/jlufUS0zbWW7YjdfrBbSJ+m/XcvDfRgqysac5p6fKEjFcF56wmBVZites5Sj6f7u5r2uam8hzmG37FdNw24C5utuCEYQSLDj8LsTktXsWC5A/n32i4+2ARcKun37nKkAopjO7NdjB/OX6y2XbvDmOnN0WlXJSTKPDXotax7/7qWCH2yw5Mae8fqus4LFIWKHNsYb/v7Xf0f4m8DgSIAESSDYCFNMhXfG8JqaXj/rUV1CuZvcMkOonRJdWBCbkU6+71DPwDHYg2r/8dhbTuMhLk9Mv5nNfGaopjbIGxjH72eSWu6RWn7MzdXtMt7auM6znt2oS6LLDF42YxgnB6l/1T9+fmprp/PDLQz/tfNKjuRWyS0xjJ6Wr7vjY5ckORUz7cAOAj3Cpho0M32oI4QNpafrRP/fskX07t7vOczsXgKC8vSLTxyqm4SMNX2mnAiHZ/pV3pHjN2r67ntfuWa9I5NiVx2KCW6GY9hbTXq4obqkGc1pMey26dXj9fSlZr0HGFMmJObXwndc14Nrrvu9TsyKes3DhqNypi1Ropb9dGgSRhQRIgARIwJ0AxbQDH/gVl7HknrVW26IpoXZq5FZryUti2s1n0zqmWqefI01uvjO6e+jgQZk+4C7PiNSGf92r7/paEc/pF3MvsQFWYGYW+OT+0KuDKz+nQDvmQdGKaRyPncadVepg+wAAIABJREFUmiYLQXsO7t1nRJ928s2O7iKL+BHTHd78UApaFgwOqBjdCxcENSne/Mc0z4j3Zt9gWmznuxeGmPbaWY6Wj3mcW55WXJ+0jRs1YvA6SVu/Vv++Qa/ZwSynXP7lx65RhWMR00hHhMB1bsWpfbdj8to96+UvDqFx9MNPUkxfeLojAz9m3n9pbnnEE3EquVlMww0CAtmpRIrpnJhTOzUo4uSrLojpsYV3oAZXXS+IUM5CAiRAAiTgTIBi2oGNW55pux/HvCKmYXKGnMdeOTexA9P2mVddAz+53ViL3tfI2286R942j2316BCpdJy/H+u89mK+d9tW+emMExwxuUVgDkNMZ8eDz4+Y9tp9R3A37Lp6pZ9x8i8PQ0x7mULHytLOnxmWG4j2H80Okl1/ohXTaAtzMdKKwXoOu6CCfpjktXsW6eimP3CH49D8uKNwZ9p7ZzqZxHROzan5b7zsmOrKz71r1kFk84Z9bwxyCOuSAAmQQFIRoJiOQkzjkLkvPaP+i/8YUYKLVa0u8EOFz1Fkyalo3nbDwg7Y73fdbERTdSt4se741seOEU297hA/UZHRhtuChd058tqLuVdaLJjUId+zW4llZ9rrOoXxfRhiGv2Any4CvLkVp+BAYYhpL1PMWFjhOnd+/4tM5vwrv/lS4DbgJmCDnjOeYhp9cQpw5tbPvHbPeqVOqt7rZGl2d9YsCVYGFNMU01Yz75yaU3BBma1pyPzERfF61tS/4lrj95qFBEiABEggKwGKaYdZEVToOU2u3CSmvaIVm2NAzuNyLVtHdb8gcviUq873FAlIIdV68DOeEZatnchrL+ZepsPZsTO9b/s2w2wYKYyQFgopoMIsYYlp9MkrWBuC4yC4T2QJQ0z7DZQXlB2uccsHBxuLbWZB2jL4jIZdohXTWBBExPOZgx9y7RLqddCUOgVLlPTd9bx2z274bar8ee+tjuPzk3OXYppi2iqmc3pOIZ3Xv8896fmb7HVTh5UBwus8/J4ESIAE8hoBiukkEdPrp0xQ80Vv/+dG199ipLaKphzcu1d+u+Ua1yitaBeptpDnsnCZsoFOk9dezGEJ8H3P41zHeML3U1wFbrQ70xun/SKzn9OcoWtWZzo/oo3jGtulOQt0MdIrhymm4bO7bvJ4127Y+ZiHIab9mHnXPPVMTS/X0BemfPkLSErlylL6yCaZWMNaYfLl58b8YmvXiVjEdOf3vzR8pr34G2JSU8BJvny+OOS1e9bLQgLWR22ffdV17BTTFNNWMZ0b5hSCJq7/ZbKs/GaUbPzjV1/3bmQlmHrD5JuFBEiABEggMwGK6RwW08hLbLycupRYxULqyuVGVG0vk1KjLw885vtFObLLc4Y+Icu/+szzHkNE4NJHNvasF1khr72Yo/9e0bwRGRj+6U4lGjHtJXD9zDm/F8frXGjHy2faPNef990mG36dkiNiet+OHTKuj3NqK3SqRf9HpGq3Xn7R2NbDy+ysIXqPuRQEuap9xrkaMK6a7gKXyKiJ3WzMB6cSq5hGPIVJl57l+Zxo/L87jP75KXntnt2xcL5MueZix6EZqbHUNaNAkRTHOhTTFNNWMZ3b5tTerVtk0/TfZaNaYaybMt7zfjcnerRxE/w8J1iHBEiABPIyAYpph6uXXWbe5ZofLciD61ZiEdNI4fPLDZdniT4eeT6Y0B736jsaiKh4VPMZpmReZqJouNmd/aX6iadFdw5N9zTz8YGOxzoFqDIO8JH6qNePU13NzoNG88ZpvfKpekVMj0ZMe/UT/QrLZC9MMe2Vv9UpSnAs90fGZNLo82NP6+b6YlnnnAt1V9/ZBNjPpJ4x8F5ZO2GcY1VEzm316NO2C1rxTo2FTq2b9LP8NeBuz6G0e0kXgRo7LwKZDeQ1Mb0/dZfmEe7qOv6WAwYLduidCsU0xbRVTOfmOQXrqS2zZ8qacd/Liq8/d533sLJp/8rbns8GViABEiCBZCNAMe1wxUMT02q26pZyBibPXT4a7TrvYhELELgQum4FAZLaPf+6FKteM1O1NT99Lwve1v+vVt3wty2mPpNlm7WU0o2OylTPr7/pERdcqlFBb8p0LIKk/Kk7bgc0H3LxGjWN8yCFU5VuJ2TZ/clrL+YYqJ/deicfdUQDR6Tn5V9+4nj57IJy+THX9SuGvB6IYYlpvMghWI5bcTKxjeX+sJ7Pz844zKEh6qMtP53V2zWSftM77pcaJ/WxbT47xDRO7OeZgecWUgAVKlXaFUVevGcnXHS6a87wErXrSuvHh0rRylWzjH3XimUy+5nBslnTJzqVBldeJ/UuvjLaKeT7uMlXnOe6iNr83oGC3cagxcslgqmxMueZBt+cmFPb5s0xfletpYSmuypcuoztJcdu9e93OEftxrzv+NZHQacL65MACZBAwhOgmHa4xHXOOl8a3XBb1CbPZrN+cjq3HfKyQBTZFUTG/nvQg64v4NjZxg53ZFk+6lOZo4FH3ArMFtu98KaUqFsvU7Xd69bIhAuyvtRHBuBBeh+YkEf65kaes9ZpZ0mTWzSPbYSv5b8vDjHSA0WWDm98IMhzaS158cXc7449dj2x04cXHeRf3rFgniz99EPPB5CdmIY5MIJcuRVc8zJHNfNs36tCrGIaAdJWfT9aI1s/53UqIz2Lnc9eWGLaa0cRHYSgb6FuGUV0Acqt7Fi8UJZ+NEJqnXmu4TdtFq/ddwQCq3/p1bZN/3Zz37iaeZsnxT09Sf26vdLnGbvojzwlkj+/I4q8eM/OfOpRWfXdV57PzSMuvNx4bhYoXERS16ySLSqgV+sOn1ehmBZJptRYmA/ZPadgkfbjyZ2zTMX6l/UVfJyKm1tSxXYdpPWgZ72mN78nARIggaQjkHRiGmZN6yZPkDnPP+X5sogdW/gvVu99ii+TRrvZg9y54887xXVi4TwNdbeirApiBIbas2Wz7Fq+1HewEBxfUaMFV+3eS8qrKM9XoKD4EfHo1HGvviulGjaSQ/v3ywENUmKWecNesDX7KtWgkZEixyhqGjt9wF2CPJpuxUgnc+cDhpA+sCdNDulxKHs0yjRe2u1K60HPSMV2HTO+wnGIRm4nvM1KWFBorn6tKRUqZWnSy1waBxzz9EtSvtUxtv2BwPhn8ABXn16Ms/GNt2eKdrx/104Ze2q3uD1Y7MT03Jef9RTiYZh5Y4cK+cThB+xWmt31oOYrPxxF/ODefcb83rd9q7Fr5uUjbW2388ivpWilyplOhT4g3RviAjgVuDBU0hfBci3bqGVFC8fga7tXr5IJF5/h61rBcqV0k2aSov0pmFJU4G+ctmGd7NSdyQ1TJ2UE4UPQsqNuuyejTS9BjIqRKagQtOzf55/2DA5mPAeO7aB+3T0zngNwb1jz8w/y96N6/zkUuwU1v+ntsAuJBbaaupsOztaSV+/ZzTP+lGm3X+9rHkRTKd5iGtxX//Ctt6WH/lY0vPqGYL9tUc4nKyf8Jk7vf4cgHZ1Twc59vYuv0OdGkUxVcJ/NeOge10WlOmdfIGBcQO9La8FvP34/3BbuMJ/bPP6cFK9Z27ZreM78qkE23Raamtx8p9Q89YxMLkPZPafW/IR7vn+WMThlREBFLAT985jzcyKW4KTR3Cc8hgRIgATyCoGkEtOpq1YYP+J4iQ9asCMFE8xIU2ivdvxEdPZqI8j3MMOC6eWUqy/0XCxAu3h58NpVtp7fms7Jz04ejsXO3K4VS30HOsExTW69W7CbjYLd3XmvPu9rPKiPlXe8jCEdFMY28+lHPXNrm2OEOIVfN4I/GUWF/6IP3pEFw1/xdRnAp/FNdxgLMGbxY+rtq3GbSnZietu8f9VX2znqqrGj+NiQaE9p+J8vev9t30yiP9F/RyK1FF5yzQL3ALwUe/n52Z0bVgDY4baLJu+1YxbNWKwB2JBbeuknH3g2g9RxGCMWcaJ5XnV65xPjfoPJsZtosXakqrpWNLnlbl1sOJz6CguObi4GkYOo3vMk474tULRo3r5n9Z6fqIt8bgs0nhfQpUI8xTQWDeHz7mVVYO0e3G/qX3aNCtfCrsPCcyWW+YRsD4jnsPSzkb7wwZXgqNvv0wWi4wS/owuGD5PFH77j61gsLB2lllCVjz+8kInFoVnPDPL9W4f4G42uuzlDkCPN4b8vDPF0mTI7B5Popnf0/8/6J5vnlNtOOIIHYlG8gP5WYeFl76ZNuqg5WRB13K3AX9pqZePrQrASCZAACSQBgaQS03527NyueTXd+W1+/yOBp4VX/tzADbocADG9ddY/nhGDYzln91HjjBduL5PVWM5h+ldvmTnDSLcVtJir6NGwt/r8+Ym+bNe31oOHGi+BKH7NZoOOEfXtxDT+H7sMc54dnGUBA7uIjW/qJ0XKV4jmdMYxeFGH7292FbwYt3/5bfVRrZJxyqBCL7KvWPTo+PYnasVQMdNXEK7wNQ2zWKOAr/7xO8PCId7luNdHyNS+zlGpnc5vNeWEGJ/S90LfAgRtYn7VPvO8PH/P+rXsieY6xlNM/6FWGtGkPjrmqRelfOu2jsOB6PrxxOMDD9c6n2BZ5FcMW0/UcfhIjTo9QRa86W9B03osYkMUKVdBXZaCB720WpVgx9aPCX8koG5f/JDho5ydcyraeeB0geFyBYsZWL2xkAAJkAAJZCaQVGJ6ycj3ZN5rL0Q9B5B/GSItaPHrNxu0Xbv6ENOpq1bqDny/MJqzbQO7XjCDw+43fEPjUbDL1ezeh2TrnFny603Bg/WY6Xu8gvDY9d1qCrdqzGiZ+eTDgYcY+XK6ff5c+WvgPYGEiZ+TOolpHIvdnF0rV+ifB+Tgvn2GGA2a29uuD2jv+57t/XQv5joQvRDSxWvVydRWrAtjaKz7qLG2Jt/RXnOnwcJV5OiHD8cuQL7XX//X1/ducbQAO+lzYFIUiwKVOhyvftAaTTy9+HGPsPYRC461zjgvIe7ZeC18xFNMz3xioMYg+CbwtLGLUZGpEd1ZHdOjXeB2rfNp4duvycJ33wjcxvHvfWa4Zs0b9nzgYyEA4fYTzeIfdnDxO4ISLdfItIDZNaeiWUR2g2v+5ge+ADyABEiABJKAQFKJaSc/Ir/XOUh+VWubEB8QntGYa/rtm1kPYhov7FOvvTToob7rmz+sfqJG+240oqIpptPUr3r8uScHbqbVo0Ok0nGdZPoDd3j6dEc2bjWDjtbX7fh3P83qQ6pmuwuGv+rpzxxksG5iOkg7Qet6RacN2p5dfaRQq3fR5UaE98gC30cEr4u2WN0V7NqAeTN2v8MoENIQ1GaBnzeeB1553+3OjX77OQ73KKLkBzVVhr+pEXjRUoLsKMK9AiayiXLPIhDj7CGDo9rtdZo78RTTiP6PT9DitLBkbScagWadT6vGfK0Lk8Etu04YM9kIqIi0ckFL9y9/NBbMxnQ/NuihRho8uISgRMMVFjXdNCd5ZMmOOeWVNSAIjBb9H9U4DCcEOYR1SYAESCCpCCSVmA66yxI5ExC5tlKHrBEy/cwYpKn4877bA/myoV2YHCPC76Zpv3iameFFGzsMBYoWk5/OiN+PH3YK4Dvu1//TD5/IOkbQsrvVHDbKHRGk7UGuz2j6aERy10BiKEGCUlnH0PO7iVlSe5nfw3R9naZMw64+PpH+jXgJK1WvoaZIOs3wf3dLV5JTYtorgnY019w8BmbCeAnP8Fu3aQxB77BQEm3JFEjPoZHNf/1hCOpoF8FgNnvkNTcZ/omRBSafs9SXP0jbeBa01EjiSzRK+NrxY12HDjENKxyv4ICRjdgtGJqLc376aqT26n1qVLuYufae1RgBqzWg0xb1Kd25ZJFt8Ctcm3JNW0r1k/tovRmu8QTiKaajtaro/dM0z1spmoVJ63zC/TSt3w2e57FWMAUpfj9/uf7yQMeisjmuaKyojh74hFTudDjnuFdUeruOlW3aQo7VlJO2Jc5zCpzBO5YC9i3ue9jV/D+W9nksCZAACSQKgaQS007pnvxeTDPytd/6kfX27dghS0a+I2v0Rdgt6BdEcckjGkgNjQhaTVeEvaJzw7TSiOTd+ljJX+hw1GS3FBfR9t88rvMHmmtXA3TFujvo1o8a+lLatN/9RpVoTLXNnZZodhgRkbu2CmoUmEf/0KtDIGROOxJOjSA9FHbgCxYvISnqy5yv4H9+aV4voAhU1ebJ4OaPgQZkU3nWkEEaxfvLmJpBgKFS9Y800gsVr11HStSqa7gPYP57Fb+5zZ3aqdKlhyFMPYsu5qybOlFWjx0jm/741XNXGMLZiKzfo7cgCJFbgRn+qjHfyHwNbucWMApBf6ppe4gQjOjGK78dpUL8sSxNY95VOu54w1cfUb2NYE8+0qtZGzItOiIbRxAzP9YupntDQt+zKoR2a0RqROpHKrsiZcpmSg/mtYvZ4MrrjUjV8Sh+o7Bbzw1/WCzCepVoXCus8yl19UqZePGZXqfJ9L2ZWx4ZAH4OGKfBumAWTWBB6+89gnNNu/XaQH3PWBD2c1Qc5tS2ubMF1nhbZv6dkV3AT1ewCFj9hJN1IaFLlojofo5nHRIgARJINgJJJaZz08XFjufu9WuN4FT7d+3SH60UYxe6WNXqxm6kXcGOZqqaiKZoQBX4vuLluXDp0gwKkpsubMh98fK3r3Hy6brocF/IZ2VztgRUWO/S1DhIz4P7Nl/+ArIvVQVVqTKGKWmxatWj9knfu22rmmSvEAgOpI4rVKqU0SYWFyDYrAXCYuNvUzUFWwkpVKKkUa+g/llUFyfccj7zqmYPAa+cwsgWABcGFhLwSyDWOYXUl3i27NWFW2QJwDsHclGjYPHSWMjV50ex6jX4PuH3orAeCZAACaQToJjmVCCBOBOAj+zsoU9kOUv9S/tKmSZNXc++aMRww8/aqRx5zf+k7vmXxHkEbJ4EkosAUgUtU7/5yNLywcGelhNeJrZthw6Tcs2PTi6gHK2RfopzihOBBEiABBKPAMV04l1TjiiXEXASxGb6L6fuwgwYQX/cXAKsfn25bNjsDgnkWQJOgrj1oGekYruOjuPyE2Oh6yffxpSaLs9CTfKOc04l+QTg8EmABBKWAMV0wl5aDixXEFCT3fGa4zRNfSwjizUFl11f/fh7d3hthJSs3zBXDJWdIIFEIIDFK0SrtyvWdEmR32Px65/BDxl+qk7FK4p8IvDjGLIS4JzirCABEiCBxCVAMZ2415YjywUEYOI94UL7F3N0r/Lx3TTYXH0pqUG4ELCqkPrH7l6zSlZ8M8pXgK8eo39Ws9PiuWCk7AIJJAYBtzgFEMOI8Ix71gicpz7tCBCZumKZLHhrmG2kbysVmHfDzJsluQhwTiXX9eZoSYAEkosAxXRyXW+ONpsJRBMF1m8X61/WV/BhIQESCI/AohFvuaa2iuVMiLyPCPwsyUWAcyq5rjdHSwIkkFwEKKaT63pztNlMYPW47+Wfxx4I/ayI/N5x+EjHXNahn5ANkkCSEAgj7Zsdqqqa5rBF/0eThCKHaSXAOcX5QAIkQAKJS4BiOnGvLUeWCwis+u4rQVqTsEvrwUONfMIsJEAC4RKYqX7PMMsNu3T5eLSkVND0ZSxJR4BzKukuOQdMAiSQRAQoppPoYnOo2U9gx+KFMkvF9LZ5c0I5OXw2G11/m9Q4uU8o7bEREiCBzATWTvxJ5r70jG3QwGhYIRZCk9vuYTqsaOAlyDGcUwlyITkMEiABErAhQDHNaUEC2UBg29zZsnzUp7Ju0s+yPzU1qjPWPe9iOeLCy6VQyVJRHc+DSIAE/BFAZO4Nv07Re/Yz2fjHr/4OiqiFha8jr7tFapx4qhGkjCW5CXBOJff15+hJgAQSlwDFdOJeW44sFxLACxV2q1NXrdSdr3XG7tfutWtk97q1+n/LDaGNl/Bi1WtppOBaUqxaDSmm/tFlNQpwseo1c+GI2CUSSGwCB9J2y7b5c/UeXSNp6w/fs2nr1xr533cuW2IMvnDZclJc789i1WtIUdyz+qnYtj0XvhJ7akQ9Os6pqNHxQBIgARLIdQQopnPdJWGHkpkAxDZ3sZJ5BnDseY0A79m8dsVyf385p3L/NWIPSYAESMAkQDHNuUACJEACJEACJEACJEACJEACJEACAQlQTAcExuokQAIkQAIkQAIkQAIkQAIkQAIkQDGdF+bAwYOydvJ42Tz9d0ldu1oO7tsnRStVlnKtjpFqmrs03mbBCJ61c+kSw2dwt57f8BVcsUwO7kmT/EVSpECKfgoXkWo9TzQCZLGQgBuBg3v3yCady/A/3Q0fVJ1XqWtW6Ufnts6pgsVLGPOqYNFiUrBECWk75GUCJQESIAESIAESIAESIIFcR4BiOtddkogOqZD+s38/I7KsXSnbtIUco2Ijf6FCcRvJhItONwS0V6l56plylKaAyckCX7NdK5ZH1QUsCBQqVcoQc5IvX1Rt8CBvAlic+eWGK7wrptfo/dM033VZMTYC0dw/+fLnl+K16sR2Yh5NAiRAAiRAAiRAAnmQAMV0Lr9oa8ePlRkP3+fay6Nuv1dqnnJGXEaCl+vvex7nq+3cIKZTV6+UiRef6au/bpUQnTelQiUpWrmKlG3WUso0bS6lGzSSfAWZ4iZWuGsnjJMZA+/13QzFtG9UMVeM9v7p9cNU3hsx02cDJEACJEACJEACeY0AxXQuv2Lzhj0vSz4a4drL6r1OlmZ3D4jLSGDaPeGCPr7azg1ievOMP2Xa7df76m/QSkhZVeeci6TmaWdJERXbLNERwHzGvPZbKKb9koq9XrT3T+cPvpSiVarF3gG2QAIkQAIkQAIkQAJ5iADFdC6/WNiVxu60Wynfuq0c89SLcRnJ5n/+kmm3Xuur7dwgplf9+K3MHPyQr/7GUqlpv/ukxsmnx9JE0h47Z+gTsvyrz3yPn2LaN6qYK0Z7/xz73GuGBQcLCZAACZAACZAACSQTAYrpXH61574yVJZ+8oFrL/3sTO/bsV1mPj5Q8KdZilWv4bmjnbpqhbHTm7ZhvSep3CCmF40YLguGv+rZ1zAq1L/iWql/yVVhNJVUbSwf9anMee5J32OmmPaNKuaK0d4/Lfo/IlW79Yr5/GwgHAKrvv9GVn7zZabGGva9kQse4eBlKyRAAiRAAiSQQYBiOpdPhtU/fif/DHY34W5yy11Sq8/ZjiM5sHu3/HH3zbJl1t+Z6pQ8or50eMNdqOOAA2m7ZfEH7whetN1KbhDT8157QZaMfC/brmr7V96R0kc2zrbzJcqJNv/1hyx4a1iWOWk3Porp7Lvq0d4/R916t+H+wJLzBNZN+ln+GnB3lo60emyIVGrfKec7yB6QAAmQAAmQQAIRoJjO5Rfz0IED8nu/GwTm1nallAbFavfim67RvBe+/ZosfPeNLIf7FdPmgSu+/lxmP/u4I7HcIKYh/Oe8MERWffdVtlzZci1aSdtns2cnPFsGlM0n2b5grky99lLXs1JMZ99Fieb+qXP2BdLw6hslf+HC2ddRnsmWwL4dO2Rcn+6231FMc9KQAAmQAAmQQPgEKKbDZxp6i4iojR3qTbqbB7NrlGJVq0tZFXLVe53iKqQhxidc2MfWTDuomPbyp8wNYtqEv/nv6TJryCBJXemcJqtiuw7SsO9NxiHIb7x36xbZu2WzbJ07R7Bw4Ld0/WwMA5L5hRVRb3/qLhl7SleK6Sj5xeswP/cPFpKa3f0gA4/F6yJE0e6qMaNl5pMPU0xHwY6HkAAJkAAJkEA0BCimo6GWh47BS/G0266z7XEii2kM+O9H+8uan35wvFrwd4bfs13Zn5oqi98fLos/fNfzatNf1BORYwWK6ejZxfvIWO6fePeN7dsTwLMez3y7wp1pzhoSIAESIAESCJ8AxXT4THNVi/PfeFn9nd+mmLYh4CamjeqHDhm7PAjm41YaXHmd1Lv4ylx13fNKZyimc++VopjOvdfGfgHQ3cqDYjpvXU/2lgRIgARIIG8QSBoxjSjWB/bsCXRVCpcqbe8HqCLLtuTLl+W/D+7dI3u3/xdB208HUspXkIP79squ5ctk9/p1krZ+raSuWS2716ySPZs3Sv6ChbRfRQzz7vxFishRt90jhUqWytT0vu3bNP3Q5xqM6x3BLqtdKVG7rrRxSalVqEQJKZBSNOPQQGbeyiht0wY1s16hpukrJW3jeqPPaLNE3XoatKuJq3m6H05edcIQAzsWzpcp11zseqo6Z50vjW683as7Gd9jLiI6uvHRa7tn8yYpUCRFCpUqJQVLlJSUCpWkdMNGkq9gQV9t7l69SufJ2sOfdfpZu0b2KPt8+fMbcwXtFK9RSyD6rQXXJHXFctm5bIns3bZVChQtKoV1HsEPH9coX4ECvs7vVQnjTV29UnbpXMAchm9t0UpVJKViZUHu7slXXeDaRDQ+0/D93TbvX4PDPr3/9mof8uXLL8WqVZfiNWtJseo19dzFvbqe8X00jNGHHYsWCvzC9+r9WEivbcGSJQ0XjTKNj1K+ztf3gLodbJ09U3mtNu4j3OuFS5fROVJaimk+55L1GogOyHf/o6kY7f0DV4lUnZNpG9Ydno+aqz5N/zyo7irGM0vnZAF9FjTRoGWYc2bBPMEzb9cKfe7pMXheFCxeXPCcKt2oiXGPeJX9O3fILnWFSTOemzj/GuN+OKDPYfPcmH/1L73amANm2YM+q0sIPnjmplSspPOktnHfFPbIKX9wrz6r0We9/zBOnBPP6716X+MezKdjxnjxrG50w216f1fMMgzj/Ea/D9+/BjdtY3/qTu13YeNY9B/PTbuFO+QHX/T+W7Lpz2mOiJrdPUCQRtGuoJ9FypV3xQt3oz2bN6c/uw7/LuG35fC8LKV/ljV+h4oouyIezLyuI78nARIgARIggbxCIGnE9G839/UVOdh64Vo+OEiqdOmR6Vqumzxe/nrwLtvr2+TmO6XW6edk+m7VmK91d/ORQPOhy8ejZeusfwQ5pv2ULh+NNl7+zLLym1HqL/yYn0Nd6zTLMYv8AAAgAElEQVS760Gp3vuUjDpeYhp5l2v0PlVWjxsjq3/4xlHEmw0ismz9y/sa4i0eJVoxYO0LXpR/6N3RtXt1zrlQGl1/q2MdLKisnzpJVn77lWz841ffQwWfWmecIxXatHM+RhctxnQ/1rNN06R/+/y5snjku7Jx2lTX6wORi/M3uOr6qHxi92zaKAvfe1MQWRjiKpbiV0wbsQXUrH+VcnYydbX2AyIJkdiPuPByKdu0RWiMIWwQ9M8paCBOBL6VO/eQGieemuncWLxZ8sn7RowEt4L7vUqXnlJbF3KKVqocC17HY6O9f6Y/cIesnzLRs0/dR43VTAFpsuzzkbLqh2895wmEIIQkfLWdCtLieWUdwLHtXnjTWDBCmja4czgtOGZcq05dDSEcuWiJ7zf8NlX+vNf5/rf2tdM7nxgiPbJMv7+frP9lkiezcke3kbZDXs6ohwWxfx570Nd8d2sc90I3jf1gV3COZZ+NlCUfjfDsn1kBz/RKx3Uynl2lGzV2XTjy3SgrkgAJkAAJkEAuJJA0YnrsKV08xV3k9UFeziMuuCzTf895/ilZ/uUntpcS4gOmdNbiFEnbbS7gRW/LzBmCNDV+ilVMYwdtwsVn+DnMs05QMe3ZoEOFZnf2l+onnhbt4Y7HRSsGrA1CCP/Q2z2dDBZQsJASWXYsXqgm4qONfK9uL+teA6/csYsR6Klg8RJZqmJH6+ezens1YXxfoW17FdG/+KprVoLowzyofHw3X8dhN3apvngvePMVX/X9VPIjprFIgUjz2M2LpiCtU0NdOLATS0EY41phwS1IaXbXA1KpQ2f5V58tq8d9H+RQY9f06IFPuC8GBGrxv8rR3j+TrzjPsHbwKphT6yb+5FUty/f1L+urovoKW4Hm1WezMVynTdOnBbovDdYPPZ4lV3OQvOlOYnripWe7Bks0+x0pprFQiwXbWIudmIalwCLNAoH7OZbS/N6BUq3nibE0wWNJgARIgARIINcSSAoxDSEDMR202EWnnnDR6a4v7L1+mJrJPBc5or12mSL7hYBWm/+ZISu++sxXl61i2s9Oqq9GtVJ2iWn0B7steFEMs3i9WHv6TGtn/Jh5w1y1VkSOXYi7P+66ObThOAn2bXNnyy83XBHaeZwawgJPmaOauZ5nx6IF8vtd//PcYQzaWS8xvezzj+TfFzMvYgU9B+pDUGBhp2K7zJYI2cU4mj6bx3T+4MuoLAjczhnV/XPwoIzp4WJJEcsgLcceee3NUve8rO4Xv1x/uZr3zwnpLPbNwK0Gvw1mmTfsed+7trZiOgCzSDEN64+Fmq891hIpprEohufXlll/x9p0lt+RmBtkAyRAAiRAAiSQiwgkhZjeuXSxTL7y/MDYYVZ4jMWnePfa1Zpm6nTXdiJFx683XSlb58wKdO6GV99gpMFy83+zNhhp5u13Z8irU9kppiNZe/XNz/dRiQFrw/qSO0Mjgq8dP9b1dG2feUXKtWydqQ7Muqf37+enm77rHPvca1l2xdZOGCczBt7ru41oK8JXs/0rbzsejnvjlxuvDF1I44RuYnq5LjjNGfpEtMOyPa7j8JFSos4RGd9lF+NYBlG918lqvTAgliayHBvN/ZO2cYOMP/fkUPvh1Fi3z7+XwmXKZvo6GgukaDprXbyA249fawQ7MR2EWaSYXj9lgkx/IKtVTNAxRYrpIGPyOlfrQc9kWaDyOobfkwAJkAAJkEBeIZAUYhrBYSZdltmX2c8Fging0Q8/mVEVUZ1nPjHQ9VD4mNa76L+dwj/uuSWwaW3j/90h2zXXMXyU/ZRIMQ1z1zXqt+zHtBhmvE6lyS13ZzLP8/KZ9tNXtzoQaxBtYZVoxIB5bvgJLhrxli/rAPh+RpoHw2922u3XhzUUox27VGZYcPn9zsO5suNdOr39sRSvVSfradRve+p1lxmBtuJRnMS0H6uBaPpjcH5N/UM1KBNKdjKOpr/mMT2/m+grSJffc0Rz/8BXHgH7YvWT99PHpv3ulxon98lU1a+5tJ/23eogPkTTfodjWmAxB4s6foqdmA7CLFJMI2jZ1GsvMU4dy/O+cLkKcvy7nxrthH1fHTfs3bjFxfDDnHVIgARIgARIIJ4EkkJMAyCCAc1RkenHlw/1j7jgUqmneYit0axnDn7IU+AiOE7bZ1/NuGYwu57/5suy9JMPfF3HRtffInXOuchIy4RgSnOeHez5khQpps0T7ViySKa4REoOO8905AAh1OHni6jVfopXIC8/bVjreImBKp2762LBScYhB9JSNaL1Ntm3dYtsVTNRv77FWPiofca5WbqG+TbtVvsc1qhcrXsvwywX0YyxM4XdTz8C5IQxk4wox9aCF+rZ+kLv15LBPDbo9UEApjpnZ428jcBJCKDkVTDfzOBRRuRxRKjXHW0vEeAkpv0EFcQYy7VoLSmVq8hO9WF3Cwpm7T8sUqyRj6NljB2/gxqZ22uMTuwQaMzv/RPZZ6/r4fW91/3j5Caxb8cOWfjOaxpY7COvU2T5Psh47WJUHNy3T5Z++oHMf/2lwOcOcgDmVbcvfszISLBWfb/nPPek5z3s5DNtMHt7mCz74mPXbkSKaWtlBKx0s6Lxmxpr7svPKsMPHfvRov+jUlkDsiG6OH6n9uozE37VTikYe3w1zshSwEICJEACJEACiUggacQ0Lh6i/cL89q8BdzteS7zMdXj9fSMFTaaiJr9jT+vm66W45zcTMqV8QTsQDlP6Xuh4fP0rrpU6KsoiXzoQBGbCBae5njc3iWm8ZDa46gZ92epipHgyuWNXf9bT7hHGIy0BYr3hvMRArO0jYm37l4fbBkJycy3AHMM1s5YDu3fLnOef9Mxp7bY7POeFpx2D45nngrhrqCmy4BdcRFOwoSANE4IozXv1eVckCBIHn+LI4sdPtdm9D0n19IUL6/HR5pmGXyzO61YQoRuWJVZTYKTomnbbdZ4C1XYuqnDww7ho1WpGdPfyavpv3s8Q47OeetSXmAenuudfolYAtQ/PLX32IDAZ4i+4lSOv+Z9xXFjF6/7xijkAYecnIwGCPNY46TRjcclIx6ac10+dKLOeGewqTu3uI3Ps8N+f0lcXJT0KFtQQ7wDXDO0d2LNXMyn8rf2+1/NZH+nesX/XTsHOuNuimJOYNrvpxSw7xPSUqy8UBE+0K8hugSwXkcXJBQp8Ww4Y7HUZ+D0JkAAJkAAJ5FkCSSWmzavktqMFMdjjK40wm27imfFypi8XeMnwU+x2iBDQ5ceTOtseDoHT9eNvHPP6/qTRmt1e0HKLmMau49EPP6Umz/a7EAvfeV13rF53RAhxCpPAsIqXGIjlPHj5PubJFzLlqrW25xYFPNJ6wTwOwnLiJWe5Xms3/0PsDM1/47+0OZHjw4swIkdbrS2sdWaq2Fv13VeOWMo0aSrtXhye6XuYw48/97/0aXYHu4muaMX0rCGDjCjpTgXCCMLFbqzI4TvlqvM9xVKvHzWYYEQuaC/GVbudYDCOtB5AP3eqpYhXTm1E5saun12Z+9IzrpGV7QImxjLHve4fLzGN4FV41jqVYprDGYEHrWn9rHX9uJXYLVyiDeRN/+mME1yHj0VTI1+3TfETdM7OKsXLzNxLTHsxyw4x7fZ7g9+q44a9Z5srG9YxyCZhLVjcKd/qmFimIY8lARIgARIggVxNICnFNHJm/qsvpk6l41sfSYnadTN9DfO7f3Xnz09B3loEEbMWt5ckp0jN5vF5RUx7vcx7+a4bCxmjx/tB7KuOlxjw1YhNJWPRQEVPFuuFiLr/PPaAbaojpPbBx644HWPWdTIrx/deQq+B7kgjT69T2axB76b1yzxvrXWxgND5/cwCFqmN/nroHleUnT8cJUUrV7WtE62Y9oqq78YYHfEyZUWdjm9+aOQitpZYGY8/7xTXXfEOb3xg+MbbFS/f7bCD+HndP7GKaTdhiPH7SUvX5ePRGRYwVmZeYtrPs8Zrjtk97xJBTLvtTIMxBPWR190sVXTRx2lhLtpnK48jARIgARIggbxGICnFtFcu5sgo1rio8AmFb6ifYrfDCp/pua8MtT3cy9cxUcQ0zCDHnuqer9jOJ9gPc7s6XmIgaLt4Aa+rJql1z704w1fSrQ34EuITWVIqVHT0IfTKS26X+9xsP1aht2v5Upl0eVb/b7N9u1y0mNNu8QC8/PKjEdMI2PTzOYd93Z2K1w7g9vlzNWjapa5tIEVd1W69MtWJlbGXn3fbocOkXPOjbfvlFRjKK+J60Pnudf/EW0yjv17RuRE0CzvckSUMMe1lCWC3eJEIYtprQc/KGmbcFdoca8RCsLsOQecc65MACZAACZBAXiOQlGIaF8lt9R0RYhEp1iwIavNDrw6Brm1k2hakL0KQqcgSGcjG7iSJIqYxtjHd2rpyDDNYjZcYCHJBDV963TWMjNodpA0/db3yxsZTTEcjQKY/cIesnzLRcWjIBYycwE4lGjHtJ1J6rx9/cXSbMPviJdSa3HKX1OpzdqauxyqmvXi55VuHeTriJzgViBkzIrOfueZVx+v+yQ4x7bVL6mSqHc1cjuSxZOR7Mu+1Fxwx2S1eJIKY9nLHcQKCxTbEGkC8jAqt9Dkf4SrlNd/4PQmQAAmQAAnkRQJJK6YXvf+WLHjzFdtrFvlS6mSijR1op3RAkb6PToLYT35Yiunobi0vMRC01Qpt2knTu/rbmpV6tqVBlfboLnXa+nX6WWv8eUAjvUeWTdOnuUbljqeY3r9zhwbZ6+46lMjI2ohY7hYhu2Hfm4zI+GGK6XWTfnYNIujHhBf98RI+kWnucEysYhom8TCNdyptHn9OKrRtb/u1l3+6W0Auz/lpU8Hr/skOMT312ktdU67FU0zDJx+++U7FbvHCa055WUzkBp9pP779XvMJFim4fxBxnYUESIAESIAEEplA0opprxcG686y025h/cuvkaUfj7ANZGT1g3aKdIqJ1erR/7d3HuBW1FobjqJiw4IKKqgoKvbesaAI9t57ufaGvV977/W3994VvYodbNgbir0gomDFyrXBP+941zZnTmYmyT77tL3W8/ioZ89kki8rK+tLVlbONl1WKHY4lEzHDcEyMiDXn1E6O1kfJMm7yJpcJCygLJuE4nKllY+QQf6LRweZD665tDSDtE95rY1MP7PTFoXXzS10cHIX8NoN7wK22xmzMz1q0P1m2Bkn5sJFvgPyHpQJWb2/e+PV3MfQDxYDbKk1mV7y1PPMTMuuEEWmXWH4ZRgU/V42fto7mU4zqCd5D/LEtXjRHsg07SWRYd5VVyE6RaZ2bJaKIqAIKAKKgCLQXhGoWzJNhxY5PrZTm7f7xjOf3Hq90yG3kzVxB+nrOUma+j2YXKM1eTExUzIdN/xCyYBPNm1qQhIvknmVyffDXjdvnnZcei1aU0lrI9Nlusk1OmQRz5MYMl2WQNCXVL52zKFmzDODc+vWc5ud0t01JdNuiNo7mR75wD3m7eR6rjxxJeRrL2Sa2yfePve0ZCHwoapNF9c+oisqioAioAgoAopAe0Sgrsn0h9dcZth1dsnc2+9i2HkuutJq1TsfMh/deHXu3b783rHzDOm5O87fZcX3Ds4ywtJarsYqy+ZN+1vTmWkXGRg16IFk1/OE0rHeJ7nKjERieUI0Auc9//z119KyQh5oa2Q6735paXMMmR458C7DNTx54hvuXLYzzVlvznwrma5PMl12dth1VVx7IdPS41xP9s75Z1Rtx1a9a5DpmJypVlEEFAFFQBFQBNobAnVNpn94b7gZuueOzj6Vu4A5D8rOdFbEYf8sceyH5zj2cifw8/vsbMYOf6tRGa5swa7KKJmOG3ahO9N8ZXxyjnlwkuSp6F5vnptj4y3M/PsclFsx9Ar9amppbWS6jDwUXeUFNjFkuiz8lnKzZ7td/VBWd1eIuoZ5/4Nke9+Zfuvsk5O7zO/LHcJdeq9sljix4XWJZTrVFs5MZxvMFWVfDX0mxeKbl5+PMmlFdiuqQH1JEVAEFAFFQBFoJQjUNZk2SVKoJzZdK5c49X/42eTan5vS82NZmWW1/mbRo08yY98eZp7f1x3CRjhwz213Mo+s6T4T3fe+x5Ps0J1KVUHJdClEzgdiyDQFfXrnLek9xGXCncuEemal7IopnidBD/rRqec8ZrJppzNmoonSYj657cbCs4qtjUyXLRqU3fccQ6a/fv4Z88qRBxZ2T997Hy29B7wsm7cshtkfUjJdP2S6LJN4zD3TvZO7yztl7i639as1JCArGlhc9fftqy+Zb154zox5drD3jvWs/dYyixxxfJlJ1d8VAUVAEVAEFIE2h0B9k+mku9695PyUMLtk+UuuTRJHXWa+eXFoo5/n2+sA02PTrcyEP/80D/d3Jwxid3ve3fYxz++9c6P3Z1qut1nylHLCxotKpuPGVSyZhuAN3nydUkcxLxP7Z/fdaYYnoZF5wpnela693XnNVktejRWTzfvlwwc4x4e0natyFj8hH4sYMk0GfbI8FwmOOw58nvw84hND8rQiWfWOB03HGWZs8IiS6fog0z+8+7YZutdOhfqx8KHHmG5rrtvgmbKd6aKrzyiotZNpu7EkV/w+WUz+MknUNvL+uwuxauo70ONmBH1LEVAEFAFFQBFoegTqnkznhXED9Xx77p+Q7fOcqC+TZHTuvMji6W9Fd8fOt+eAlLBnZeFD/504Yut59WityLTv2VKpJOfnhp16XG6d28OZaWlc2XlJeW7Fq281U/eYqwEmw04/3ox6+D+5OBXt0rQ1Mv3eZReku+lFsvoDgw3XVbkkhkz73PvONWZLnXFBbrU+vPZy8+H1V+b+7kouxcNKpv+BrD2HeQ878yQz6qGBhXq9ys1JZMrMDSNTyrLbl+UQqCWZLltgshvLEZW/Mvkepk6iadIoGoewW/3SwflZu30z7HtNiPqQIqAIKAKKgCLQihCoezLN6vrjG6zu3IVkBzHv7Gz/QU+biSfrmHYlThfOl0vyypDkZD66UCsyzbd9Q83TdrYzMu3K1iz9Qb+De5m4kshxnU7RFVtyHt9VdhnJa21h3iwasHhQJAsfcrTpttb6zkd8QuJd55/z8hDYH1nmnEtM58WWbPTd37771jy76zaF5+J7bLZNspg2oNG7Sqb/gaS9kumvnh2SLJAeUqjTrjumeeHlQ/crPFfMAiwLsS7546cf0yNFRbu8nRdfyrC77ZLXTzjSjB78WG69fW8h+GvcOPPoOqs0KqfsyEZRcsmQSKwym6u/KwKKgCKgCCgCrQmBuifTdAaZgckQ7CtdV17NLH7caZXHcc6fTM5e+0qRQ5Ut46ePPzQv7LdLYchxuuPQdw1jJp64wev//earJFy5YRhitvxu/dY2PXfYxUyUvPvziE/TpFk/vveOmT5x+uxMxiShef+Ki82nd92a20zatchRJxp2vF3yQ1Lu0D13KISJhD7pvdv/O0Psi6n9HAskY54ZYoZfcGZpIjHuje6y/IqGM/BTzd6jwec4N8356TLh+qTZ1t2osmvjs6udjUz467f/mo9vujbNDl8mXZZfyXTt09d07d2nsuP75y8/p1fZfPnEI7mvo7cLHnB47u4SxxkI2y6SZS+4wky/0KKVR3zCpXl4qdPONzMus3zlPY5HjLjn9tzID7sOZE3uutJqqV5MNdsc6U9l12PJ+0ufdbGZYYmlK8X9+sXn5qVD9im9rmzlG+82U87avQEU1WL836+/Mq8efbAhTD1PJM+CLNT9A9gEM/rpJ3Ov2OM5dv+XTogWIbXViO/4Ybex1x4DnPdiU8aIu29zRuVI3dj9Ry+kT7N1/vXzz8zzA3YrHMML7HeImW29jcxEHSZp8Dr3xj+xUf9cGMCKiAlb0jvhk/FTFH0jz+fdn+4zl7AAN8cmWya72rMYM8GYX0eNTMKl3zSf3HJd6dESvs/467LiKsmVc/3MFF26VpqAvfvs3jsK20yej05zz5ti+uMH7yX2/h3z8ycfpUcxJptu+vRdbAhHZLKSt4DAc2VJAVmYYoFKRRFQBBQBRUARaG8IKJlOepQMpewo+IrrrFzZNTt22TiAs2+4WeHnfkucneEJOSq6B9cuAAd6oWQHkMRWFRk/3gxafTnfZjV4DmdztXseNRNPOml61+i7l55fSkylAHYwIAUTdeiQ/gkSQWZc19lzV+VwFmlLnpNd1CAcUwgLJC9Uuq+zgZl/rwNNhyn+vveb662GbL2hdzHz7Lyn6bn1DmnmW0L/y4Q+6zD55Gb8H787s72XvS87vpCWD66+xMsRp1/n3WXvBvoHVm+ffUp6XtNH2GVa8MAjkqvB/l40KUvUJGXijE82zTRJe/8sJJR5dbBDr8vIkl0G0SHT9po/JdA+esG92NyPbUs1GJMh/v0rLipciLK/xWLUggceWSGpP334fjJ+TvHODp8umux/WIUc+fSpPBMzfliIWmDAoZUcAN++8qJ565xTShcs5Juzrb+JmW+P/ZKx8Pe44+z+OxeenUbC+AikfqGDjzbTLbhw5XEf/WAsTNltdjNF15kNiyyMd5+r7NDDla+700w0SUMCz8c/Tggxi47NISygsngpwnELjl3EiD0nFYW4z7HR5oYFyA4JdiwA/v7tt4aEgByXKhLyj1S7yBPTLn1HEVAEFAFFQBGoNQJKphOEcXaf2Li/lyNFh/S5/YEKkZAOKks6ZXek66xdtqPZPcMpDRUykEOARYZss6G3U5v91hInnmkmTc7IvbDfrqHVMPYdvWUZn12Fu3aOfCrhu5ucVxYkCjIlUnb+OVsOOzBdV1o1iIT7tMv1DGS6wxRTGsI7Q8W+lq0sq7WrbDuhUIjuh9bTfj57jvmDqy4xH910TTVFNnoX4t37ypsb3IlL6Gw1GEOuIFmhwnn8qWab3Tzcz53gsKi8onDgovdix4+QsXFjRpshydVyoWLnWyg7JpFX9mr3PFKJuvAh06F1lOeXPPU85248v4956gnz2nGHxxYd9F6WTMfqKR+1zzSXhaoHVTJ5mAXeFS67vlH0QGg5+rwioAgoAoqAItAaEVAy/b9e8SVNrMrjGGTF14nMez9bXlmW5Dxlyp4vJckS53BjhHDintvtXJrV1lX2/HsfmIYyIpBx311PKQtSs9pdg4Kr/cmtN5j3Lr8w+D15wU4sx99+SkIgn/3XVt7lSbvfufCsNIy5lgKZnqTTNOa1Yw4N/sxiyTGFmZMdTKTsTL6rcKIHCPlGCNl+bo/tDUcSailZMs0i2NC9dmzS72bDwmkP0SHVYFx2Dj4Ps5VvuCvZOZ3NFJ1FzXu3LAFb3nux40f0yTfXQPb77HhyJznia4uzZfR7cEhld7tWZHqhg4403dfJj1ZhLDy1w6bRC5gh4ydLpjlzzUKGz+666zuye1yWkTykjjxbdrd2aHn6vCKgCCgCioAi0JoQUDL9v97wSTrDo3PvuJuZe/tdnH3okxSpKIGUXWjZ+TdXBdgBYFfNlmodrFVuGRi108Sudpfefyex4Qyib8im1D3kXLnd3rzzfr6DznV3dFG29my50m4yTr94wO5R4du+dYVMc/6x7JqoIseZ317cf/fSMM1sGZy1JzOxCOcuXz32MMM511qJK8P2uK/GmFePPKBqQk0kxBInn2NIDpcVn6u4ijAeNeh+M+yMf8JxffHpP+iZJMnhZGn/Fp2zdpU3exI6vUAS6h0qseNnuYuvNtPNv1CysjLBDOq7bOhn05sTemy2dfqeT86B7Aeyi29NTabRjwUGHFZ43ZrUaXSyO/16M+xOZ8l0it0NV5kPk+scY2TunXY3JJWLWVzL+x5ntDkGoKIIKAKKgCKgCLRXBJRM/69n8zKYZju+6OwX91W7rsGyy1jxmtvSkLoy+fSOm72SM9nlZBOjyW+cCce5892xgLR0X2sDM+vqayTnCWeJco7ZvWcXPtY55towknSFStnVMmXlZcPkeT6kzN6X35gSXIQEcMPPPT05Q/102Wcb/L7wYcea8cl5RJIZFQlkeqYVVi5MtJT3/qrJrn/HZPcfgehB+ELEldmXMfRecja4KAmS6xtdeq9svnr2qdLP52VB53qtdy46J7gN8kG+P9/u+xnOdLsklpgJxt+99rJ58aC9SttnP2CTw9ePP8KMHvJ40Pv2MYuQF0N03S7XPvrie4befn/x409Pj0cgox5JMsSfVpwhPtsmO1KC32L7zIVVj023SiJ0dknOhHfygzJZUOCe+c8CklpKwWS9J2LklSP2L/0WCSLpZ1sYg8POOCFIX0iI1m2NdQzRDJwDR1fR2WoE/V30yBPMDEsuU00x+q4ioAgoAoqAItDqEVAybXVRmdOanuMd+ESjrNlSBMl7ntpuk9xOL8qGmn1pTJK597Vkpy9E5txyO9Nrt32dr0Dsxjw92Hz13FNpsp0/kmy3kGucnqmTDMkQaO5M5axlZ7I1W5nBy+5OdX2w772PmkmnmfZv59jj+qRsGbJLEtJ+nh035stkJ32D0NfS54tCy313b/ve91glEZNUAsf0vcsvKkwgBf440WS87dh5BvPLyBHm6R3cSeq6rtgnzUAOkebe15gw4DUff6GSMZ0M4h9cfWkQZq4kfFLA1y88Z0Y+cHe6W0zSL5eQZCtt7xbbJfkHZkrDqF3J9uiT7muum55jl8WZvIqyKz4iyWbM4kXed+Vdvj/TcismJGJdQ7bwMqkGY8bbU9tuXPaJBr/bCwckL/v4lsZHS4oKXOzYUw0kKVRix88ajw6tJBzkzDBnh0NkhUuTxbd5/158I5kV4y1EIIMsQolUS6ZZ8Jx2vgVMj023Np16zhNSlcqzJFwcce/tSYKuZwvfZ+xDZCHHkkH+1aMOci7CMYd0X2s9MwuZvJP3nJKQee59Jvv72CSpIMks5YpH2jVl99nMlLN0Sxd1iR6SLN52WT+8+3aa1fv7YW94J77jfchzt/7rJAsjfSoh91Hg6UuKgCKgCCgCikAbQUDJtDteMpIAACAASURBVNVROL2/jMwPU500yUSchjIWCLvAE/4a73wC0hDrmLURfdJqFiDw13/HJdfgJDqWkL6/xv1qJplq6pR4s/vvcoxHDXogzfbNM5NM3clMlvy7Y6JDhP62FWGn7JfPR6SLA2TxnrJb98SJn6vRLh9nTb944mHToePk6aIGu+Y4+ZMm7Y65Jo3FIwj1H0lmaI46mPET0m9yxnyKJAv5FLN2aysQaj0jEPAh0+ym//7dd+a3774xv48dm4zHqdLr8SC0dhLHiM83eIVxT+6FP378MdXHCckREBZzuBqLse/KCs64GT3ksXTcd5x+hmRMTJ+Mh86Vq/CqrVPI+4xN5sbff/zB0JY/f/klsV/j0iJYYMaO0R7GdvaKspDv6LOKgCKgCCgCikBbREDJdFvsNa2zIqAIKAKKQC4CZWQ69rYAhVwRUAQUAUVAEVAEFAEbASXTqg+KgCKgCCgC7QoBJdPtqju1MYqAIqAIKAKKQKtFQMl0q+0arZgioAgoAopADAJKpmNQ03cUAUVAEVAEFAFFIBQBJdOhiOnzioAioAgoAq0WARLfkVRv9ODHCuvIVYIkLpt51X5JErwurbY9WjFFQBFQBBQBRUARaL0IKJluvX2jNVMEFAFFQBEIQCDmjmqKL8pOH/B5fVQRUAQUAUVAEVAE6gwBJdN11uHaXEVAEVAE2isCMVeYgYUmJGuvGqHtUgQUAUVAEVAEaouAkuna4qulKwKKgCKgCDQTAkO22bD0jnFXVQj57n3lzc1US/2MIqAIKAKKgCKgCLQXBJRMt5ee1HYoAoqAIlDnCLx86H7mm5efD0ah64p9zOInnBH8nr6gCCgCioAioAgoAvWNgJLp+u5/bb0ioAgoAu0GgeHnnW4+G3hXcHvm3HI702u3fYPf0xcUAUVAEVAEFAFFoL4RUDJd3/2vrVcEFAFFoN0g8M2LQ83XLz4X3J6uvVcxnRdfKvg9fUERUAQUAUVAEVAE6hsBJdP13f/aekVAEVAEFAFFQBFQBBQBRUARUAQUgQgElExHgKavKAKKgCKgCCgCioAioAgoAoqAIqAI1DcCSqbru/+19YqAIqAIKAKKgCKgCCgCioAioAgoAhEIKJmOAE1fUQQUAUVAEVAEFAFFQBFQBBQBRUARqG8ElEzXd/9r6xUBRUARUAQUAUVAEVAEFAFFQBFQBCIQUDIdAZq+oggoAoqAIqAIKAKKgCKgCCgCioAiUN8IKJmu7/7X1isCioAioAgoAoqAIqAIKAKKgCKgCEQgoGQ6AjR9RRFQBBQBRUARUAQUAUVAEVAEFAFFoL4RUDJd3/2vrVcEFAFFQBFQBBQBRUARUAQUAUVAEYhAQMl0BGj6iiKgCCgCioAioAgoAoqAIqAIKAKKQH0joGS6vvtfW68IKAKKgCKgCCgCioAioAgoAoqAIhCBgJLpCND0FUVAEVAEFAFFQBFQBBQBRUARUAQUgfpGQMl0ffe/tl4RUAQUAUVAEVAEFAFFQBFQBBQBRSACASXTEaDpK4qAIqAIKAKKgCKgCCgCioAioAgoAvWNgJLp+u5/bb0ioAgoAoqAIqAIKAKKgCKgCCgCikAEAkqmI0DTVxQBRUARUAQUAUVAEVAEFAFFQBFQBOobASXT9d3/2npFQBFQBBQBRUARUAQUAUVAEVAEFIEIBJRMR4CmrygCioAioAgoAoqAIqAIKAKKgCKgCNQ3Akqm67v/tfWKgCKgCCgCioAioAgoAoqAIqAIKAIRCCiZjgBNX1EEFAFFQBFQBBQBRUARUAQUAUVAEahvBJRM13f/a+sVAUVAEVAEFAFFQBFQBBQBRUARUAQiEFAyHQGavqIIKAKKgCKgCCgCioAioAgoAoqAIlDfCCiZru/+19YrAoqAIqAIKAKKgCKgCCgCioAioAhEIKBkOgI0fUURUAQUAUVAEVAEFAFFQBFQBBQBRaC+EVAyXd/9r61XBBQBRUARUAQUAUVAEVAEFAFFQBGIQEDJdARo+ooioAgoAoqAIqAIKAKKgCKgCCgCikB9I6Bkur77X1uvCCgCioAioAgoAoqAIqAIKAKKgCIQgYCS6QjQqn1lxIgR5rvvvjM9evQw008/fbXFNdv7v/32mxk+fLiZaqqpzLzzztts39UP1QaBsWPHmk8++cTMMMMMZvbZZ6985N133zXjxo0zCy20kJl00klr83EtNReBtmofWlOX/vLLL+aNN94wv/76q5ltttlSezXRRBMFV1FtXjBkuS98/vnn5uuvv25z817TIaAlKQJtCwG1f22rv9R3aLn+qjsy/c4775i//vrLzDPPPKZjx44tgvxmm21m7r//fnP77beb9ddf37sOF154oYEAHXHEEWaSSSbxfq+pHnzttdfM8ssvb+aff37Df6u0HQQ++uijlCDPNddcZsopp0wrftFFF5mDDz7Y7LXXXuacc86pNGbyySdP//vTTz81M888c9tpZCur6fvvv28uvfRSw3hn3PhKrH3wLb+9P3fCCSeYU045pUEz77nnHrPWWmsFN70t2bxYfQsGJfIF0etbbrnFbLTRRpGl6GuKQG0QaGn/qjatqq7U5rZ/Dz/8sHnsscfMgAEDTPfu3aurfBt++7PPPjM//vijdwtmmWWWdFNEfQdvyJr8wboj0zPNNJP56aefzNtvv2169uzZ5ID6FBij8N98803FuDz55JNBzrlPnXyeaW7D6lMnfcYPARZA2IV+5JFHzMorr5y+pGTaD7vYpw499FBzwQUXmH79+qWLZ74SYx98y27vz910003mX//6V9rMTTbZxCy99NJm2LBhBkdZFpFCMGhLNi9W30LwqOZZJdPVoKfv1hKB1uBf1bJ9sWU3t/1bfPHFDRteJ510UrrQX6+y4447mltvvdW7+fgZu+22m5Jpb8Sa/kEl002Pqfnjjz/MrLPOao466iiz//77N/pCjLM8YcKEdBebULknnniiRcLDm9uwxnQN2P7555+GnSiVfxBYccUV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", "text/plain": [ "" ] }, "execution_count": 152, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "code", "execution_count": 153, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:48.232039Z", "iopub.status.busy": "2025-01-16T10:12:48.231880Z", "iopub.status.idle": "2025-01-16T10:12:48.233886Z", "shell.execute_reply": "2025-01-16T10:12:48.233576Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "book_runner = GUIRunner(gui_driver)" ] }, { "cell_type": "code", "execution_count": 154, "metadata": { "button": false, "execution": { "iopub.execute_input": "2025-01-16T10:12:48.235846Z", "iopub.status.busy": "2025-01-16T10:12:48.235705Z", "iopub.status.idle": "2025-01-16T10:12:53.023964Z", "shell.execute_reply": "2025-01-16T10:12:53.023683Z" }, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "subslide" } }, "outputs": [], "source": [ "book_fuzzer = GUICoverageFuzzer(gui_driver, log_gui_exploration=True) # , disp_gui_exploration=True)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We explore the first few states of the site, defined in `ACTIONS`:" ] }, { "cell_type": "code", "execution_count": 155, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:53.026146Z", "iopub.status.busy": "2025-01-16T10:12:53.025995Z", "iopub.status.idle": "2025-01-16T10:12:53.028191Z", "shell.execute_reply": "2025-01-16T10:12:53.027787Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "ACTIONS = 5" ] }, { "cell_type": "code", "execution_count": 156, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:12:53.030172Z", "iopub.status.busy": "2025-01-16T10:12:53.030003Z", "iopub.status.idle": "2025-01-16T10:13:20.010312Z", "shell.execute_reply": "2025-01-16T10:13:20.010015Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Run #1\n", "Action click('discussed above') -> \n", "In existing state \n", "Replacing expected state by \n", "Run #2\n", "Action click('use the code provided in this chapter') -> \n", "In new state frozenset({\"ignore('installation instructions')\", \"click('the chapter on fuzzers')\", \"click('')\", \"click('Fuzzer')\", \"ignore('official instructions')\", \"click('Cite')\", \"ignore('apt.txt file in the binder/ folder')\", \"ignore('Last change: 2023-11-11 18:18:06+01:00')\", \"ignore('Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License')\", \"ignore('Pipenv')\", \"ignore('')\", \"ignore('bookutils')\", \"click('fuzzingbook.Fuzzer')\", \"click('The Fuzzing Book')\", \"ignore('requirements.txt file within the project root folder')\", \"ignore('MIT License')\", \"ignore('the project page')\", \"ignore('Imprint')\", \"ignore('pyenv-win')\", \"ignore('bookutils.setup')\", \"click('fuzzingbook.')\"})\n", "Run #3\n", "Action click('Intro_Testing') -> \n", "In existing state \n", "Replacing expected state by \n", "Run #4\n", "Action click('chapter on mining function specifications') -> \n", "In new state frozenset({\"click('ExpectError')\", \"ignore('Last change: 2024-11-09 17:07:29+01:00')\", \"ignore('itertools')\", \"ignore('showast')\", \"ignore('curated list')\", \"click('symbolic fuzzing')\", \"click('Cite')\", \"ignore('tempfile')\", \"click('part on semantic fuzzing techniques')\", \"ignore('Ernst et al, 2001')\", \"ignore('Use the notebook')\", \"click('symbolic')\", \"ignore('MonkeyType')\", \"ignore('DAIKON dynamic invariant detector')\", \"click('introduction to testing')\", \"click('Grammars')\", \"click('The Fuzzing Book')\", \"click('GrammarFuzzer')\", \"click('symbolic interpretation')\", \"click('domain-specific fuzzing techniques')\", \"click('Intro_Testing')\", \"ignore('subprocess')\", \"click('fuzzingbook.DynamicInvariants')\", \"click('our chapter with the same name')\", \"click('concolic fuzzer')\", \"click('concolic')\", \"click('chapter on testing')\", \"ignore('code snippet from StackOverflow')\", \"ignore('Pacheco et al, 2005')\", \"ignore('sys')\", \"ignore('ast')\", \"ignore('"The state of type hints in Python"')\", \"click('chapter on coverage')\", \"ignore('functools')\", \"ignore('Ammons et al, 2002')\", \"ignore('Mypy')\", \"click('the next part')\", \"ignore('')\", \"ignore('Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License')\", \"click('chapter on information flow')\", \"ignore('typing')\", \"ignore('bookutils.setup')\", \"ignore('bookutils')\", \"ignore('MIT License')\", \"ignore('PyAnnotate')\", \"ignore('Imprint')\", \"click('')\", \"ignore('inspect')\", \"click('use the code provided in this chapter')\", \"click('Coverage')\"})\n", "Run #5\n", "Action click('chapter on testing') -> \n", "In new state frozenset({\"click('ExpectError')\", \"check('11b29b38-9eb5-11ef-9f1d-6298cf1a578f', )\", \"ignore('Beizer et al, 1990')\", \"click('Timer')\", \"click('Cite')\", \"click('Timer module')\", \"check('1251ba2e-9eb5-11ef-9f1d-6298cf1a578f', )\", \"ignore('random')\", \"ignore('Use the notebook')\", \"click('use fuzzing to test programs with random inputs')\", \"ignore('Shellsort')\", \"click('The Fuzzing Book')\", \"click('import it')\", \"ignore('Newton\\xe2\\x80\\x93Raphson method')\", \"click('00_Table_of_Contents.ipynb')\", \"ignore('Python tutorial')\", \"submit('')\", \"ignore('math.isclose()')\", \"click('Web Page')\", \"ignore('Pezz\\xc3\\xa8 et al, 2008')\", \"ignore('"Effective Software Testing: A Developer's Guide"')\", \"click('Background')\", \"ignore('Maur\\xc3\\xadcio Aniche, 2022')\", \"ignore('Last change: 2023-11-11 18:18:06+01:00')\", \"check('119cfd32-9eb5-11ef-9f1d-6298cf1a578f', )\", \"ignore('Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License')\", \"ignore('')\", \"ignore('bookutils')\", \"ignore('bookutils.setup')\", \"ignore('MIT License')\", \"ignore('Myers et al, 2004')\", \"ignore('Imprint')\", \"click('')\", \"click('Guide for Authors')\"})\n" ] } ], "source": [ "book_fuzzer.explore_all(book_runner, max_actions=ACTIONS)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "After the first `ACTIONS` actions already, we can see that the finite state model is quite complex, with dozens of transitions still left to explore. Most of the yet unexplored states will eventually merge with existing states, yielding one state per chapter. Still, following _all_ links on _all_ pages will take quite some time." ] }, { "cell_type": "code", "execution_count": 157, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:20.012452Z", "iopub.status.busy": "2025-01-16T10:13:20.012307Z", "iopub.status.idle": "2025-01-16T10:13:20.496698Z", "shell.execute_reply": "2025-01-16T10:13:20.496299Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "start\n", "\n", "<start>\n", "\n", "\n", "\n", "state\n", "\n", "<state>\n", "\n", "\n", "\n", "start->state\n", "\n", "\n", "\n", "\n", "\n", "state->state\n", "\n", "\n", "click('discussed above')\n", "\n", "\n", "\n", "state->state\n", "\n", "\n", "click('Intro_Testing')\n", "\n", "\n", "\n", "state-1\n", "\n", "<state-1>\n", "\n", "\n", "\n", "state->state-1\n", "\n", "\n", "click('A Fuzzing Architecture')\n", "\n", "\n", "\n", "state-2\n", "\n", "<state-2>\n", "\n", "\n", "\n", "state->state-2\n", "\n", "\n", "click('ExpectError')\n", "\n", "\n", "\n", "state-3\n", "\n", "<state-3>\n", "\n", "\n", "\n", "state->state-3\n", "\n", "\n", "click('runtime verification')\n", "\n", "\n", "\n", "state-4\n", "\n", "<state-4>\n", "\n", "\n", "\n", "state->state-4\n", "\n", "\n", "click('Cite')\n", "\n", "\n", "\n", "state-5\n", "\n", "<state-5>\n", "\n", "\n", "\n", "state->state-5\n", "\n", "\n", "click('chapter on mining function specifications')\n", "\n", "\n", "\n", "state-6\n", "\n", "<state-6>\n", "\n", "\n", "\n", "state->state-6\n", "\n", "\n", "click('use grammars to specify the input format and thus get many more valid inputs')\n", "\n", "\n", "\n", "state-8\n", "\n", "<state-8>\n", "\n", "\n", "\n", "state->state-8\n", "\n", "\n", "click('The Fuzzing Book')\n", "\n", "\n", "\n", "state-9\n", "\n", "<state-9>\n", "\n", "\n", "\n", "state->state-9\n", "\n", "\n", "click('"Introduction to Software Testing"')\n", "\n", "\n", "\n", "state-11\n", "\n", "<state-11>\n", "\n", "\n", "\n", "state->state-11\n", "\n", "\n", "click('use the code provided in this chapter')\n", "\n", "\n", "\n", "state-12\n", "\n", "<state-12>\n", "\n", "\n", "\n", "state->state-12\n", "\n", "\n", "click('Introduction to Testing')\n", "\n", "\n", "\n", "state-13\n", "\n", "<state-13>\n", "\n", "\n", "\n", "state->state-13\n", "\n", "\n", "click('use mutations on existing inputs to get more valid inputs')\n", "\n", "\n", "\n", "state-14\n", "\n", "<state-14>\n", "\n", "\n", "\n", "state->state-14\n", "\n", "\n", "click('chapter on testing')\n", "\n", "\n", "\n", "state-15\n", "\n", "<state-15>\n", "\n", "\n", "\n", "state->state-15\n", "\n", "\n", "click('')\n", "\n", "\n", "\n", "state-16\n", "\n", "<state-16>\n", "\n", "\n", "\n", "state->state-16\n", "\n", "\n", "click('reduce failing inputs for efficient debugging')\n", "\n", "\n", "\n", "state-17\n", "\n", "<state-17>\n", "\n", "\n", "\n", "state->state-17\n", "\n", "\n", "click('chapter on information flow')\n", "\n", "\n", "\n", "state-18\n", "\n", "<state-18>\n", "\n", "\n", "\n", "state->state-18\n", "\n", "\n", "click('fuzzingbook.Fuzzer')\n", "\n", "\n", "\n", "state-19\n", "\n", "<state-19>\n", "\n", "\n", "\n", "state->state-19\n", "\n", "\n", "check('19b2920c-9eb5-11ef-aaff-6298cf1a578f', <boolean>)\n", "check('19bb868c-9eb5-11ef-aaff-6298cf1a578f', <boolean>)\n", "submit('')\n", "\n", "\n", "\n", "end\n", "\n", "<end>\n", "\n", "\n", "\n", "state->end\n", "\n", "\n", "\n", "\n", "\n", "unexplored\n", "\n", "<unexplored>\n", "\n", "\n", "\n", "state-1->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-2->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-3->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-4->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-5->end\n", "\n", "\n", "\n", "\n", "\n", "state-10\n", "\n", "<state-10>\n", "\n", "\n", "\n", "state-5->state-10\n", "\n", "\n", "click('ExpectError')\n", "\n", "\n", "\n", "state-26\n", "\n", "<state-26>\n", "\n", "\n", "\n", "state-5->state-26\n", "\n", "\n", "click('symbolic fuzzing')\n", "\n", "\n", "\n", "state-27\n", "\n", "<state-27>\n", "\n", "\n", "\n", "state-5->state-27\n", "\n", "\n", "click('Cite')\n", "\n", "\n", "\n", "state-28\n", "\n", "<state-28>\n", "\n", "\n", "\n", "state-5->state-28\n", "\n", "\n", "click('part on semantic fuzzing techniques')\n", "\n", "\n", "\n", "state-29\n", "\n", "<state-29>\n", "\n", "\n", "\n", "state-5->state-29\n", "\n", "\n", "click('symbolic')\n", "\n", "\n", "\n", "state-30\n", "\n", "<state-30>\n", "\n", "\n", "\n", "state-5->state-30\n", "\n", "\n", "click('introduction to testing')\n", "\n", "\n", "\n", "state-31\n", "\n", "<state-31>\n", "\n", "\n", "\n", "state-5->state-31\n", "\n", "\n", "click('Grammars')\n", "\n", "\n", "\n", "state-32\n", "\n", "<state-32>\n", "\n", "\n", "\n", "state-5->state-32\n", "\n", "\n", "click('The Fuzzing Book')\n", "\n", "\n", "\n", "state-33\n", "\n", "<state-33>\n", "\n", "\n", "\n", "state-5->state-33\n", "\n", "\n", "click('GrammarFuzzer')\n", "\n", "\n", "\n", "state-34\n", "\n", "<state-34>\n", "\n", "\n", "\n", "state-5->state-34\n", "\n", "\n", "click('symbolic interpretation')\n", "\n", "\n", "\n", "state-35\n", "\n", "<state-35>\n", "\n", "\n", "\n", "state-5->state-35\n", "\n", "\n", "click('domain-specific fuzzing techniques')\n", "\n", "\n", "\n", "state-36\n", "\n", "<state-36>\n", "\n", "\n", "\n", "state-5->state-36\n", "\n", "\n", "click('Intro_Testing')\n", "\n", "\n", "\n", "state-37\n", "\n", "<state-37>\n", "\n", "\n", "\n", "state-5->state-37\n", "\n", "\n", "click('fuzzingbook.DynamicInvariants')\n", "\n", "\n", "\n", "state-38\n", "\n", "<state-38>\n", "\n", "\n", "\n", "state-5->state-38\n", "\n", "\n", "click('our chapter with the same name')\n", "\n", "\n", "\n", "state-39\n", "\n", "<state-39>\n", "\n", "\n", "\n", "state-5->state-39\n", "\n", "\n", "click('concolic fuzzer')\n", "\n", "\n", "\n", "state-40\n", "\n", "<state-40>\n", "\n", "\n", "\n", "state-5->state-40\n", "\n", "\n", "click('concolic')\n", "\n", "\n", "\n", "state-41\n", "\n", "<state-41>\n", "\n", "\n", "\n", "state-5->state-41\n", "\n", "\n", "click('chapter on testing')\n", "\n", "\n", "\n", "state-42\n", "\n", "<state-42>\n", "\n", "\n", "\n", "state-5->state-42\n", "\n", "\n", "click('chapter on coverage')\n", "\n", "\n", "\n", "state-43\n", "\n", "<state-43>\n", "\n", "\n", "\n", "state-5->state-43\n", "\n", "\n", "click('the next part')\n", "\n", "\n", "\n", "state-44\n", "\n", "<state-44>\n", "\n", "\n", "\n", "state-5->state-44\n", "\n", "\n", "click('chapter on information flow')\n", "\n", "\n", "\n", "state-45\n", "\n", "<state-45>\n", "\n", "\n", "\n", "state-5->state-45\n", "\n", "\n", "click('')\n", "\n", "\n", "\n", "state-46\n", "\n", "<state-46>\n", "\n", "\n", "\n", "state-5->state-46\n", "\n", "\n", "click('use the code provided in this chapter')\n", "\n", "\n", "\n", "state-47\n", "\n", "<state-47>\n", "\n", "\n", "\n", "state-5->state-47\n", "\n", "\n", "click('Coverage')\n", "\n", "\n", "\n", "state-6->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-8->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-9->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-11->end\n", "\n", "\n", "\n", "\n", "\n", "state-7\n", "\n", "<state-7>\n", "\n", "\n", "\n", "state-11->state-7\n", "\n", "\n", "click('the chapter on fuzzers')\n", "\n", "\n", "\n", "state-20\n", "\n", "<state-20>\n", "\n", "\n", "\n", "state-11->state-20\n", "\n", "\n", "click('')\n", "\n", "\n", "\n", "state-21\n", "\n", "<state-21>\n", "\n", "\n", "\n", "state-11->state-21\n", "\n", "\n", "click('Fuzzer')\n", "\n", "\n", "\n", "state-22\n", "\n", "<state-22>\n", "\n", "\n", "\n", "state-11->state-22\n", "\n", "\n", "click('Cite')\n", "\n", "\n", "\n", "state-23\n", "\n", "<state-23>\n", "\n", "\n", "\n", "state-11->state-23\n", "\n", "\n", "click('fuzzingbook.Fuzzer')\n", "\n", "\n", "\n", "state-24\n", "\n", "<state-24>\n", "\n", "\n", "\n", "state-11->state-24\n", "\n", "\n", "click('The Fuzzing Book')\n", "\n", "\n", "\n", "state-25\n", "\n", "<state-25>\n", "\n", "\n", "\n", "state-11->state-25\n", "\n", "\n", "click('fuzzingbook.')\n", "\n", "\n", "\n", "state-12->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-13->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-14->end\n", "\n", "\n", "\n", "\n", "\n", "state-48\n", "\n", "<state-48>\n", "\n", "\n", "\n", "state-14->state-48\n", "\n", "\n", "click('ExpectError')\n", "\n", "\n", "\n", "state-49\n", "\n", "<state-49>\n", "\n", "\n", "\n", "state-14->state-49\n", "\n", "\n", "click('Timer')\n", "\n", "\n", "\n", "state-50\n", "\n", "<state-50>\n", "\n", "\n", "\n", "state-14->state-50\n", "\n", "\n", "click('Cite')\n", "\n", "\n", "\n", "state-51\n", "\n", "<state-51>\n", "\n", "\n", "\n", "state-14->state-51\n", "\n", "\n", "click('Timer module')\n", "\n", "\n", "\n", "state-52\n", "\n", "<state-52>\n", "\n", "\n", "\n", "state-14->state-52\n", "\n", "\n", "click('use fuzzing to test programs with random inputs')\n", "\n", "\n", "\n", "state-53\n", "\n", "<state-53>\n", "\n", "\n", "\n", "state-14->state-53\n", "\n", "\n", "click('The Fuzzing Book')\n", "\n", "\n", "\n", "state-54\n", "\n", "<state-54>\n", "\n", "\n", "\n", "state-14->state-54\n", "\n", "\n", "click('import it')\n", "\n", "\n", "\n", "state-55\n", "\n", "<state-55>\n", "\n", "\n", "\n", "state-14->state-55\n", "\n", "\n", "click('00_Table_of_Contents.ipynb')\n", "\n", "\n", "\n", "state-56\n", "\n", "<state-56>\n", "\n", "\n", "\n", "state-14->state-56\n", "\n", "\n", "click('Web Page')\n", "\n", "\n", "\n", "state-57\n", "\n", "<state-57>\n", "\n", "\n", "\n", "state-14->state-57\n", "\n", "\n", "click('Background')\n", "\n", "\n", "\n", "state-58\n", "\n", "<state-58>\n", "\n", "\n", "\n", "state-14->state-58\n", "\n", "\n", "click('')\n", "\n", "\n", "\n", "state-59\n", "\n", "<state-59>\n", "\n", "\n", "\n", "state-14->state-59\n", "\n", "\n", "click('Guide for Authors')\n", "\n", "\n", "\n", "state-60\n", "\n", "<state-60>\n", "\n", "\n", "\n", "state-14->state-60\n", "\n", "\n", "check('11b29b38-9eb5-11ef-9f1d-6298cf1a578f', <boolean>)\n", "check('1251ba2e-9eb5-11ef-9f1d-6298cf1a578f', <boolean>)\n", "check('119cfd32-9eb5-11ef-9f1d-6298cf1a578f', <boolean>)\n", "submit('')\n", "\n", "\n", "\n", "state-15->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-16->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-17->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-18->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-19->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-10->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-26->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-27->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-28->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-29->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-30->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-31->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-32->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-33->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-34->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-35->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-36->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-37->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-38->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-39->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-40->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-41->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-42->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-43->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-44->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-45->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-46->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-47->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-7->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-20->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-21->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-22->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-23->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-24->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-25->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-48->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-49->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-50->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-51->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-52->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-53->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-54->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-55->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-56->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-57->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-58->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-59->unexplored\n", "\n", "\n", "\n", "\n", "\n", "state-60->unexplored\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# Inspect this graph in the notebook to see it in full glory\n", "fsm_diagram(book_fuzzer.grammar)" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "We now have all the basic capabilities we need: We can automatically explore large websites; we can explore \"deep\" functionality by filling out forms; and we can have our coverage-based fuzzer automatically focus on yet unexplored states. Still, there is a lot more one can do; the [exercises](#Exercises) will give you some ideas." ] }, { "cell_type": "code", "execution_count": 158, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:20.498770Z", "iopub.status.busy": "2025-01-16T10:13:20.498630Z", "iopub.status.idle": "2025-01-16T10:13:24.601333Z", "shell.execute_reply": "2025-01-16T10:13:24.601016Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.quit()" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Synopsis\n", "\n", "This chapter demonstrates how to programmatically interact with user interfaces, using Selenium on Web browsers. It provides an experimental `GUICoverageFuzzer` class that automatically explores a user interface by systematically interacting with all available user interface elements." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The function `start_webdriver()` starts a headless Web browser in the background and returns a _GUI driver_ as handle for further communication." ] }, { "cell_type": "code", "execution_count": 159, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:24.603142Z", "iopub.status.busy": "2025-01-16T10:13:24.603023Z", "iopub.status.idle": "2025-01-16T10:13:27.817516Z", "shell.execute_reply": "2025-01-16T10:13:27.816768Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "The geckodriver version (0.34.0) detected in PATH at /Users/zeller/bin/geckodriver might not be compatible with the detected firefox version (135.03); currently, geckodriver 0.35.0 is recommended for firefox 135.*, so it is advised to delete the driver in PATH and retry\n" ] } ], "source": [ "gui_driver = start_webdriver()" ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We let the browser open the URL of the server we want to investigate (in this case, the vulnerable server from [the chapter on Web fuzzing](WebFuzzer.ipynb)) and obtain a screenshot." ] }, { "cell_type": "code", "execution_count": 160, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:27.820313Z", "iopub.status.busy": "2025-01-16T10:13:27.820145Z", "iopub.status.idle": "2025-01-16T10:13:27.986377Z", "shell.execute_reply": "2025-01-16T10:13:27.985728Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydB5gUxdaG6xquOYs5YE4YMGBCFDFjRsUcMGcUA2IOmHMOiKISzBhAFHNCEQQDooJiVlTMOf79Fv+ZW9vbPdOzO7O7M/PV8/i4zHRXV71VXVNfnVOn/vNvlJySCIiACIiACIiACIiACIiACIiACIhAZgL/kZjOzEoXioAIiIAIiIAIiIAIiIAIiIAIiIAnIDGtjiACIiACIiACIiACIiACIiACIiACRRKQmC4SmC4XAREQAREQAREQAREQAREQAREQAYlp9QEREAEREAEREAEREAEREAEREAERKJKAxHSRwHS5CIiACIiACIiACIiACIiACIiACEhMqw+IgAiIgAiIgAiIgAiIgAiIgAiIQJEEJKaLBKbLRUAEREAEREAEREAEREAEREAEREBiWn1ABERABERABERABERABERABERABIokIDFdJDBdLgIiIAIiIAIiIAIiIAIiIAIiIAIS0+oDIiACIiACIiACIiACIiACIiACIlAkgeLE9H/+U2T2ulwEREAEREAEREAEREAEREAEREAEKojAv/9mKqzEdCZMukgEREAEREAEREAEREAEREAERKAmCEhM10Qzq5IiIAIiIAIiIAIiIAIiIAIiIAKlJCAxXUqayksEREAEREAEREAEREAEREAERKAmCDSJmM74kJoArkqKgAiIgAiIgAiIgAiIgAiIgAhUHoF4bLCMOrdxe6YzPqTyaKrEIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUFAYrommlmVFAEREAEREAEREAEREAEREAERKCUBielS0lReIiACIiACIiACIiACIiACIiACNUGg2sT033//7f7999+StN20007r/hMHVJKcmyeTb7/91t19991u/vnnd507d3bTTTdd8xSkwFP/+ecfx39JqaWWOV+V8vXJpqjPF1984caPH+//+/DDD91CCy3kll12WbfMMsu41q1b+34wZcoUd+KJJ7oDDjjArbPOOi2yX7TkQk2cONG9/vrr7uuvv3a//PKLH4NatWrlFltsMdeuXTs344wzNmvxC42LTdEPGwugUB2Kyb/axvZi6q5rRUAEREAEREAESkigmsT0559/7oVCqdKrr77q2rZtW6rsmjWfF154wbVv3z5XhkUWWcS98847buaZZ27WciU9vEePHu7SSy9NLNfYsWPdqquu2uLKnK9A++23n7v11lsTL/nrr78cE/typN9//92dfvrp7oILLshlP9tss7kff/yxzr+32247L7Kfe+45N2DAALfbbruVozhVl+f333/vrrzySt+277//ft76denSxS9WrLXWWs3CYdttt3UPPfRQ4rOXXHJJ99577zVLubI+VGN7VlK6TgREQAREQAREoEkJVJOY/u2339zzzz/vRo8e7Xr27JnKcZ999nFLLLGEYzLMJO3TTz/1QiKeqklM77LLLt4qHabbbrvN7bXXXk3a37I87K233vJi+uabb653+UsvveTWXnvtLNm0mGvGjBnjTj75ZPfII4/UK1O5xDSW5s0228zRh0n0+fPOO88tuOCC3nKKFfWEE06o1+8lprN1mzvuuMMddthhdRYm9txzT3f00Uf7sYWFqscff9wvZoSJ9/CGG25wc845Z7YHlegqLOdvv/22u/DCC+u1eSWIaY3tJeoIykYEREAEREAERKC0BKpJTIdkbrzxRnfwwQfXg7X++ut7wR1Pn3zyibvmmmvc+eefn/uqmsQ01lwEVJiOP/54P7luiYnJ80wzzVSvaCNGjKhIN+Rx48a5Nm3aNJmYRuhdd911/nmbbrqpGzZsmJtmmmnqPB8hj9g799xzc59LTOd/G9h+wMJIOE5wB+PNgQceWO/mZ5991m244YZ1PsfF/uGHH/Zu9k2dnnzySdepU6c6j60EMa2xval7ip4nAiIgAiIgAiKQiUC1immsgauvvno9BkceeaR3zUxLZ511Vs6aVE1imsn/SSedVKfaLd1leqWVVnJYqcNUqWI6bXGgHJbpeN+/5ZZb3L777pva53faaSd37733+u8lpvMPm2eeeaY744wz6lzUrVu3RC8Ku+j+++93O+64Y5172GbB+MK+6qZMSeNipYlpje1N2WP0LBEQAREQAREQgbwEqlVM49K4wgorFC2mETdrrLGGt+JWk5gm+Bhuvtdff72fwGOVPuSQQ1r025FkTa9EN28gN6WYji+cYKHO19a4hOOazF7qgQMHul133bVF94vmKtyQIUPc1ltvXe/xjDXLLbdc3mLx/bvvvlvnmg022MA9/fTT9TwGylm/1157za222mp1HlFpYlpjezl7iPIWAREQAREQAREoioDEtHN33nmnm3feeXPuj7g+EyyomsS0dYo///zTB7yKu/wW1Wma6GKJ6YaB7tq1q7vrrrtyN6+yyiru5ZdfzhtRGndvvDJkmU5mznuz/PLL1ws0tvHGG7snnniiYEPZmBK/kHbaeeedC95fqgtqTUzX0theqj6ifERABERABERABIogUOtimj2QBAM69NBDc1GPcS3GxZh9riuuuGIRNKv/UizcX375pT/yJ2lPcxoBLP7sSyfC9HzzzefmmmuugrAKielvvvnGUR6sqsUuDlAOLIW0/aKLLlqwLEkXEMCOKM6LL764m3vuufPm0ZSW6Q4dOtQLMsVxV0SdTrOgEs156aWXbhFimjblOC/6F8e4FdPPrBHIg+CCs88+u89j+umnb1Ab2023336723vvvevlgdv3aaedVjDvSZMmOSzA8cRnBAfLegQfR25RL/ov/b5Q+uyzz/wldspBQ8U0z/3444/dH3/84d/9//73v4Uenfr9r7/+6qPH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5BuPC9iQYIarO8ymTJniF3XwIGCxh+jqxSbiA7DAQYC1uAXf8uIoJdys41sCkp6FKzRWe4Q3VlfaAsFniyqIc6yDWP8QfRwbFrq94pKPSM1n4U56bhggrlgG4fVY2Flsok9RBvrXTDPN5MvI4h6WyYacGd6YMsEUiyv7/enjNk7xzmBJZrGF9s+SCIpG3Xg3EY/cS1/Psu0gS/4t6RqC31FP6gsr24KSdKxZSyq3yiICIiACIiACItBMBCSmmwl8FT8WQYGV2AJHMflGWIUJ0YfoiO8zDwMZVTEiVa2EBLC8Y1XECwMr3GqrrVYvd0QS2xRCrxJZ7ErYCMpKBERABERABERABGqRgMR0LbZ6eevMkVFYC0ndunWrF405fDpnA4d7XuPRz8tbUuVe6QTiQbfsbPCkemHhRnSzXYBEwDUCfimJgAiIgAiIgAiIgAiIQIMISEw3CJtuSiGAG3G4rxCXUtvbmgYt3Cta6AgggReBkECPHj18ED0Se345RixfCvf1EijL7hVVERABERABERABERABESiagMR00ch0Qx4CWP+Ipm3RbYn2S6CnpEA97MXkuB6CGJHC86EFWQSyECBAFlGuLbHPvkuXLom3sm+cI7UICMXea/a8ZwkglaUcukYEREAEREAEREAERKAGCUhM12Cjl7nKRF7mLN4wIBRHXxGEiXOmJ0+e7D777DMvatjDSlRhoiKnnYFb5uIq+womwIIMgcTCaN8Ex2KrAcHV+J6+xhFDdrQcnhIcPZQ1AFcF41HRRUAEREAEREAEREAEyklAYrqcdGs3b47V4SzfESNG+KjZ7I0mwjCJiM0IHaKeE5l5++23rxegrHbJqeYNIcDCzMMPP+zGjx/vLc6ff/65z4bI5VifWcjhTOrNNtvM9zslERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABERABERABERABERABEWg0AYnpRiNUBiIgAiIgAiIgAiIgAiIgAiIgArVGQGK61lpc9RUBERABEagWAiNHvuYmTJjkpptuOvf5519WS7VUDxEQAREomsACC7Ry//zzj1tmmdZurbVWLfp+3SACDSIgMd0gbLpJBERABERABJqVwM033+XatFnWzT77bG6eeeZq1rLo4SIgAiLQ3AT+/fdf980337nvvvvBjR8/0XXrtnNzF0nPrwUCEtO10MqqowiIgAiIQDUR6Nv3LteuXVs333zzVFO1VBcREAERKAkBPHVeffUNt99+EtQlAapM0glITKt3iIAIiIAIiEDlEHj55bEuMsC4JZdcrHIKrZKKgAiIQBMTmDjxAzf99NPK5buJudfc4ySma67JVWEREAEREIEKJtC//wNu9dXbyLW7gttQRRcBESg/ga+//saNHTvO7b77duV/mJ5QuwSqTUz/8ccfiY1JcJZpppkm992ff/4ZrexHS/tB+u9//1vSjvDFF1+4H3/8MQqEsEzefP/66y8fMCGe/hM1zvTTT596788//+yefvpp98svv7idd5YbS6kab8qUKe6RRx5xXbp0cTPNNFOpslU+VUgg7R3knbz33nvdGmus4VZcccUqrHnlVama2uTOOx92HTuuV3mNoBKLgAiIQBMSYJ7/9NMjXNeuWzfhU/WomiNQTWL622+/dcsvv7z78su6EU0333xzd+GFF7pVVlkl174nnniiu/XWW3PXzjfffO6pp54q2cSXidsCCyzgxfQbb7wRBYlpk9q3Tj/9dHf99dfXK7fdsMEGGzjqcNhhh7m55poritj6uTvwwAPdkCFD/CW77rqrGzhwYM313VJXGAHdu3dv98ILL/isv/vuOzfHHHOU+jHKrwoIFHoHb7jhBnfIIYe4RRZZxH388cdVUOPKr0I1tcnll/eNLC3bV36jVEANWOjmPxbklaqDAEaXUhtPqoNMddZiwIDBrnv3btVZOdWqZRCoJjENUQbJs88+251zzjke8GyzzRZF9vsm8Yfw6quvdkceeaQ76qij3KWXXuqmnXbakjXKmDFjIje81X1+d911V0HL8Ycffuhat27tr99yyy3dTTfd5Pjs9ddfdyeccIIX5dTl1VdfdUsvvbT74Ycf3KGHHuoGDBggMV2iVvv999/diBEjIotPR58jVseZZ565RLm3jGywus8zjwIWlaI18r2DeIzQj/baay932223leJxiXmw4MO4UMqxq2yFbeaMm6pNmqKaxYrpqd42Q6PflA/cr7/+4hZeeBG3/vrtowXm5j065rXXxqYuIsOR37ollliyKZAmPgMPtk6dNnRTpnwTLbK+5Oacc86yleWLLz6Pfs/7+2csuuj/9sLzNxyaSszvt9/ekVvsGDdmzBtF1RVjxqhRr2S6Z+ONO2Uesz777DM3evSoyCjxuvcupM+utdZarlWr+eo8K2u5J0x4122xxaZu3XXXc3fcISNEpgar8Iskpiu8ASuh+NUmpmHOKvKOO+7oHnjgAd8El19+uTv66KPrNAdCCSv2yiuv7B5++OE6LuClaLd33nnH508aPHiw2267wvs15p9/fj+xQCRfe+21uWJ88MEH3qqOoOb/r732mv+Oaw4//HCJ6VI02P/ngUfBLLPM4v/122+/uRlmmKGEuTdvVrgdP/PMM+7KK69s3oJU0dPzvYNMxPNt02gsBvrn+uuv7z1U8IJRKkyg3G1SuASluaIYMX3vvXdHXk2HJD546623cTfc0KfJhFq8EIcccqC7//77UqGcccZZ0e/h4aWB1oBcfv75pyjI2+L+zlGjxkYid9EG5JLtlttv7+eOO+7Y1IuvueY6t9NOu2TLrBFXbbPNVm7kyJfd5MlTisrllVdGuq233jLTPZMmfZxpofrBBx+IvPDqWxRnnXVWd+ONN0cLHZvknpe13C+9NCKaj23tFl+8dVTP0QXLy3zy4osvjMR7qygq9P4Fr9cFLY+AxHTLa5OqK1E1imkaKe7y/e6779bZu4y1F9fqiRMnRkeL1F3hLEUj//TTT95iNPVHeJTfO1koLbfcco5y4s59zTXX1Ll87733drfffrv/jJXaBRdcMJoETXUllZt3IbLZv//1119zP/J4OZRTDGUvVeOvtMUdPDEkphvP03JozneQceK6667z2z4kpkvXppWQU1Yx/dxzz0YCbAdfpYMPPtRtuOFGbt5553XPP/+c69//DvfeexPdPvvsF22DurhZqm1iunfv8x2LyfHEgvQyyyzbLGWzh37yySfRwuqvkXU4f+yTxhbSxHTHjhvnRBseBU88MTxa8H/IZ//gg0Pc2muv09hH5b0/qyiNZ4KnzjPPPJ37+I8/fveLOAsttJA766zedS7fcsutCi7gjB492m211Wb+vgsuuCiyJK8fGUr+jng8Hnkfnuk/HzFiZLTYsZT/u5hyY+VecMGF/LtQKBHTZuGF54+2AK4UbQV8ttDl+r4FEpCYboGNUm1FqlYxTTs9/vjjbtNNN/VNhgUHqxzukAzSa665phs0aFAUlKBrnSYlaBji99NPP3VLLbVUNPnYsJ6gYqWSfbXssV5iiSX8dbho86MRptlnn91bk7NOdvOJaSzrJoLefvttx7X5JvL8AGDBZr827mHrrbde9KNT313uxRdf9K7NX331lbekd+rUKXH1nWdi6WcPMdZxVobDPejUOwu7tPcHi/z999/vWIRYddVVvaClzGHKkv/777/vHnvsMb/IgAvsE0884cu11VZb+baKJ8QzbfnKK6/4yRz9xDwKsohpyste6+23395h9Ro5cqTDk2Dbbbd1c889t3/c33//7fMfP36873d4Q8QT+dAvEb0s7tDv2B+fJX3//ffuvvvuc5MmTfIB01i4od8TwI701ltveZdjGG+zzTZ+sYa+GefLtfQb2zNuz+batm3b+n+yzYA+TSKwFqv1lig72xK+/vprz5BtDuGeczjBm0T/XWmllfx79vLLL+fyWG211er0U9ruwQcfdAcddJBnQx6d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/fTT63z+3nvv+b2BH3/8scOyvf766ye6ir/++us+8M0666zjJk6c6PceLr744m6DDTbI5ffVV1+5xx57zM0555z+89lnn71eG77zzjveev7rr7+6lVde2a255pr1rrnnnnu82+VOO+1Ux/Iev1A/Ao16RXSzCFQdgUJjQiEx/eabb/qxcMstt6zDhqBgo0eP9kHBGOewWhPQjG02FvyR8RHXcNzFGf+SrN7s3eZe8lh++eVdp06d3KKLLlqvHd566y3H2MzzLKWJaQKT9e/f36266qpu7bXXztumhfhUXYdQhURABDQmqA+IgAg0jEAtiWkmcFidcePGdZEUD0iWJKbvvfdeL1iPOOIIL6KvuOIKL5LDe/msb9++DjF91FFHOaLcXn755blGWWuttbwlnL2IgwYNyn2+yiqruBdeeMHNOuus/rM//vjDHXfcce7+++93HTp08M95//33fVTa2267zc0444z+uldeecW1a9fO/801+SaHmhg27N3QXSJQrQQKjQmFxHTPnj19TInTTjvNIyLI4zXXXOODf7G/mrHSLNt8z95qFjEfeOABd/LJJ9fBOm7cOLfiiivmPjv22GPdZZdd5vMjnXfeee7777/34pqFTsbIK6+80t1+++1+vO3SpYtjYdFSmpi+9NJLfXA10m+//eZmmGGG1OYtxKda+4XqJQIikExAY4J6hgiIQCqBWhPTG220kZ+AYZ2wFAYki4tpAtpgicaKgmWDCSTWF6wpTBqxwpCYKJ599tn+SBYSVm+EM1YYRPGXX37pPydgzmGHHeYnhB07dvSiHpG81157+e+5h7ywzMwxxxzu22+/dQhurmN/Is8g4XpJuUiI7SWWWEITQ73nIiACmQgUmhiGYrp3795urrnm8vliZWarDMHJzjzzzJyYfvvtt911113nRS6JbTSXXHKJW3DBBd3uu+/uhg8f7j/HJZwxDG+dfffd1z300ENedHOSAomFwXXXXdd79the7LvvvtsxLjN2nn/++X7sfOONN7yXEd9lFdMPPvig22677bxwf+211/Iee1iITybIukgERKBqCGhMqJqmVEVEoPQEalFMQ9EmaPwdBiSLi2nEMEIVyzGu19NNN53jLNZpp53WNwYTOwuAgzUFqwpWZI5ssYQl5txzz/WCGeFsCesOE0ITyePHj/cTvTPOOMPv+bOEpfqOO+7w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QATyEpCYrv4O8uqr46LzWn+MzqxeU4K6+ptbNRSBVAJMCl94YVR0BN/srm3bFUUqhYDGTHUNERABCGjMVD8QAREoSEBiuiCiqrhg9Og33bvvvu8mT/66KuqjSoiACBRPYP7554nOpF9GQjoDOo2ZGSDpEhGocgIaM6u8gVU9ESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6pppblRUBERABERABERABERABERABESgFAYnpUlBUHiIgAiIgAiIgAiIgAiIgAiIgAjVFQGK6cpp71KjX3YQJk6KI3FMqp9AqqQiIQEkJtGo1j1thhaXd6quvVNJ8lVnLIqDxvmW1h0ojAs1FQGN+c5HXc0UgIwGJ6YygmvmyUaPecL/88qtbb73V3XTTTdfMpdHjRUAEmosA556++OJoN+usM7s11li5uYqh55aRgMb7MsJV1iJQYQQ05ldYg6m4tUdAYroy2nzgwAfczjt3lpCujOZSKUWgrASYXN1zz1C3227blvU5yrx5CGi8bx7ueqoIZCXw5ZffZL20wdfNN9/cuXs15jcYo24UgfITkJguP+NSPOHyy/u67t27lSIr5SECIlAFBDQmVEEjplRBbVu9bauaVQeBphbTUNO4UB19R7WoQgIS05XRqBpEK6OdVEoRaCoCGhOainTTP0dt2/TM9UQRKIaAxHQxtHStCFQ5AYnpymhgTa4qo51UShFoKgIaE5qKdNM/R23b9Mz1RBEohoDEdDG0dK0IVDmBWhXTv/zyi3vnnXfc33//7RZffHHXqlUr39Jff/21+/77791SSy3l//3ZZ5+5YcOGuW222SZ3TXN0CU2umoO6nikCLZdAucYExkT+y5oIiPjPP//4/+LpP9EPzLTTTuv++uuvxOy4d5pppsn6qNTrvvnmGzdx4kQ344wzuiWWWMLNNtts/toJEya4eeed180111yNfoZlMGXKFPfII4+4Ll26uJlmmqlk+YYZlatty1JYZSoCNUigGDH99tvvuU8++dwtssiCbvnlp84ts6RwzzTXa1zIQk3XiEAzEKglMf3HH3+4888/3/Xv39+9++67njaTrh9//NH/f7PNNnNvvPGG69q1qzvrrLP89/x91113uYMOOsjdcMMNzdBCUx+pQbTZ0OvBItAiCZRrTDj55JPdueeem7nOffr0cZ9++mmdcdXG1k022cSdcsop7qijjnIvvPBCYp5LLrmka9eunTv44IPdRhttlPm5X375pTvxxBPd0KFDHX+HaZFFFvF5PfDAA+6+++5zlKOxCQHdu3fvXD2+++47N8ccczQ228T7y9W2ZSmsMhWBGiSQVUy/8877bvTo13OE2rVbzS29dOtMxCSmM2HSRSLQ/ARqRUyPHz/e7bnnnu7VV191K664orv++uujY2XWcDPPPLP74IMPXN++fd3ZZ5/tG+SYY45xl156qf/7wgsv9BO2G2+80R144IF1Ggxx/vvvv+esIOVsTU2uyklXeYtA5REo15iw1157uTvuuMMLxy233NItuuii3rps6bXXXnMdO3b0/1xnnXXcc889508Z+Pfff6Oj+9ZzL730kv/uo48+8vdaYkHypptu8v8cPny4/+7tt992gwYN8v/Fx958LfLwww+73Xff3S+E7rLLLl6wr7DCCv4W8uzVq5d76KGH/L8HDx7stttuu0Y3MGP9iBEjcnX/+eef/e9HOVK52rYcZVWeIlCLBLKI6YkTP3QjR47xeOafv5WbPPkr//faa7eNvB8XL4hNYrogIl0gAi2DQC2I6c8//9wtt9xyfuLF5PDOO+9MFMB8vuuuu7pDDjnEXXfddbkG+vPPP930009fr8Gwtmy44Ybe3a/cSZOrchNW/iJQWQTKNSa0b9/e7bfffm7//fevB4TtMWuttZZ76623/He4VtuWGP592GGH+bETT58ffvihzv233nqrz5f0ySefuIUXXtj/jQg/6aST3AUXXOD/jTV5223Tj/x67LHH3Oabb+6vPf300/1/uJOHCTf17t27u6uvvtoNHDjQj+ulSNR/lllm8Vn99ttvboYZZihFtvXyKFfblqWwylQEapBAITH94YefRF4sozyZtm1Xihb7lnHjx09wY8aM85+tv/6a0RbDRfKSk5iuwY6lKlcmgVoQ03vssYcbMGCAb6APP/zQLbbYYqmN1alTJ7fQQgu522+/PW+DYknZbbfdorNe75GYrsyur1KLQEUTKJfgwmKMWLZ9xyEkFhCvuuoq/1G/fv3c3nvvXYchXj2XX355ophmrNx555399biFM85aIn7F8ssv7/95xBFH5J4RbyDELAuj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IIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgz0FlzAAAAk9JREFUTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QIAw7YJOpAkIIIAAAggggAACCCCAAALhFSBMh9ebuyGAAAIIIIAAAggggAACCLhAgDDtgk6kCQgggAACCCCAAAIIIIAAAuEVIEyH15u7IYAAAggggAACCCCAAAIIuECAMO2CTqQJCCCAAAIIIIAAAggggAAC4RUgTIfXm7shgAACCCCAAAIIIIAAAgi4QOCYhGkXuNEEBBBAAAEEEEAAAQQQQAABBLwCubkhYUTkmhLSK/VFeRN7yG/khQgggAACCCCAAAIIIIAAAgiUAIEQIzJhugT0JVVEAAEEEEAAAQQQQAABBBAIkwBhOkzQ3AYBBBBAAAEEEEAAAQQQQMA9AkclTLuHh5YggAACCCCAAAIIIIAAAgggUGyB/wc7WChH3utN3QAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "execution_count": 160, "metadata": {}, "output_type": "execute_result" } ], "source": [ "gui_driver.get(httpd_url)\n", "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The `GUICoverageFuzzer` class explores the user interface and builds a _grammar_ that encodes all states as well as the user interactions required to move from one state to the next. It is paired with a `GUIRunner` which interacts with the GUI driver." ] }, { "cell_type": "code", "execution_count": 161, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:27.989095Z", "iopub.status.busy": "2025-01-16T10:13:27.988947Z", "iopub.status.idle": "2025-01-16T10:13:28.164387Z", "shell.execute_reply": "2025-01-16T10:13:28.163950Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer = GUICoverageFuzzer(gui_driver)" ] }, { "cell_type": "code", "execution_count": 162, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:28.166880Z", "iopub.status.busy": "2025-01-16T10:13:28.166741Z", "iopub.status.idle": "2025-01-16T10:13:28.168554Z", "shell.execute_reply": "2025-01-16T10:13:28.168276Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_runner = GUIRunner(gui_driver)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The `explore_all()` method extracts all states and all transitions from a Web user interface." ] }, { "cell_type": "code", "execution_count": 163, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:28.170497Z", "iopub.status.busy": "2025-01-16T10:13:28.170358Z", "iopub.status.idle": "2025-01-16T10:13:29.452472Z", "shell.execute_reply": "2025-01-16T10:13:29.452113Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_fuzzer.explore_all(gui_runner)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "The grammar embeds a finite state automation and is best visualized as such." ] }, { "cell_type": "code", "execution_count": 164, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:29.454835Z", "iopub.status.busy": "2025-01-16T10:13:29.454704Z", "iopub.status.idle": "2025-01-16T10:13:30.051751Z", "shell.execute_reply": "2025-01-16T10:13:30.051332Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "start\n", "\n", "<start>\n", "\n", "\n", "\n", "state\n", "\n", "<state>\n", "\n", "\n", "\n", "start->state\n", "\n", "\n", "\n", "\n", "\n", "state-1\n", "\n", "<state-1>\n", "\n", "\n", "\n", "state->state-1\n", "\n", "\n", "click('terms and conditions')\n", "\n", "\n", "\n", "state-2\n", "\n", "<state-2>\n", "\n", "\n", "\n", "state->state-2\n", "\n", "\n", "fill('city', '<text>')\n", "fill('email', '<email>')\n", "fill('name', '<text>')\n", "check('terms', <boolean>)\n", "fill('zip', '<number>')\n", "submit('submit')\n", "\n", "\n", "\n", "end\n", "\n", "<end>\n", "\n", "\n", "\n", "state->end\n", "\n", "\n", "\n", "\n", "\n", "state-1->state\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "state-1->end\n", "\n", "\n", "\n", "\n", "\n", "state-2->state\n", "\n", "\n", "click('order form')\n", "\n", "\n", "\n", "state-2->end\n", "\n", "\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "fsm_diagram(gui_fuzzer.grammar)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "The GUI Fuzzer `fuzz()` method produces sequences of interactions that follow paths through the finite state machine. Since `GUICoverageFuzzer` is derived from `CoverageFuzzer` (see the [chapter on coverage-based grammar fuzzing](GrammarCoverageFuzzer.ipynb)), it automatically covers (a) as many transitions between states as well as (b) as many form elements as possible. In our case, the first set of actions explores the transition via the \"order form\" link; the second set then goes until the \"\" state." ] }, { "cell_type": "code", "execution_count": 165, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:30.053905Z", "iopub.status.busy": "2025-01-16T10:13:30.053747Z", "iopub.status.idle": "2025-01-16T10:13:30.080951Z", "shell.execute_reply": "2025-01-16T10:13:30.078818Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "fill('city', 'U')\n", "fill('email', 'r@z')\n", "fill('name', 'H')\n", "check('terms', True)\n", "fill('zip', '3')\n", "submit('submit')\n", "click('order form')\n", "fill('city', 'q')\n", "fill('email', 'v@p')\n", "fill('name', 's')\n", "check('terms', True)\n", "fill('zip', '4')\n", "submit('submit')\n", "\n" ] } ], "source": [ "gui_driver.get(httpd_url)\n", "actions = gui_fuzzer.fuzz()\n", "print(actions)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "These actions can be fed into the GUI runner, which will execute them on the given GUI driver." ] }, { "cell_type": "code", "execution_count": 166, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:30.084663Z", "iopub.status.busy": "2025-01-16T10:13:30.084315Z", "iopub.status.idle": "2025-01-16T10:13:30.677827Z", "shell.execute_reply": "2025-01-16T10:13:30.677468Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.get(httpd_url)\n", "result, outcome = gui_runner.run(actions)" ] }, { "cell_type": "code", "execution_count": 167, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:30.679731Z", "iopub.status.busy": "2025-01-16T10:13:30.679576Z", "iopub.status.idle": "2025-01-16T10:13:30.693807Z", "shell.execute_reply": "2025-01-16T10:13:30.693489Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [ { "data": { "image/png": "iVBORw0KGgoAAAANSUhEUgAAA9MAAAEtCAYAAAALCjMFAAAgAElEQVR4XuydBZRbR9K2ezcMG7TDnA0nG2ZmZmZmcJiZmZmZmZnR4cRJNsycDTP+fjp/6avp6StdzWhIeuscH9vSxaf7XvVbVV39j78GW5CJgAiIgAiIgAiIgAiIgAiIgAiIgAiUJvAPienSrLShCIiACIiACIiACIiACIiACIiACEQCEtPqCCIgAiIgAiIgAiIgAiIgAiIgAiJQJwGJ6TqBaXMREAEREAEREAEREAEREAEREAERkJhWHxABERABERABERABERABERABERCBOglITNcJTJuLgAiIgAiIgAiIgAiIgAiIgAiIgMS0+oAIiIAIiIAIiIAIiIAIiIAIiIAI1ElAYrpOYNpcBERABERABERABERABERABERABCSm1QdEQAREQAREQAREQAREQAREQAREoE4CEtN1AtPmIiACIiACIiACIiACIiACIiACIiAxrT4gAiIgAiIgAiIgAiIgAiIgAiIgAnUSqE9M/+MfdR5em4uACIiACIiACIiACIiACIiACIhAHyLw11+lLlZiuhQmbSQCIiACIiACIiACIiACIiACItASBCSmW6KZdZMiIAIiIAIiIAIiIAIiIAIiIAKNJCAx3UiaOpYIiIAIiIAIiIAIiIAIiIAIiEBLEOgWMV3yJC0BXDcpAiIgAiIgAiIgAiIgAiIgAiLQ9wiktcFK6tzOzZkueZK+R1NXLAIiIAIiIAIiIAIiIAIiIAIi0BIEJKZbopl1kyIgAiIgAiIgAiIgAiIgAiIgAo0kIDHdSJo6lgiIgAiIgAiIgAiIgAiIgAiIQEsQkJhuiWbWTYqACIiACIiACIiACIiACIiACDSSgMR0I2nqWCIgAiIgAiIgAiIgAiIgAiIgAi1BQGK6JZpZNykCIiACIiACIiACIiACIiACItBIAhLTjaSpY4mACIiACIiACIiACIiACIiACLQEAYnplmhm3aQIiIAIiIAIiIAIiIAIiIAIiEAjCUhMN5KmjiUCIiACIiACIiACIiACIiACItASBCSmW6KZdZMiIAIiIAIiIAIiIAIiIAIiIAKNJCAx3UiaOpYIiIAIiIAIiIAIiIAIiIAIiEBLEJCYbolm1k2KgAiIgAiIgAiIgAiIgAiIgAg0koDEdCNp6lgiIAIiIAIiIAIiIAIiIAIiIAItQUBiuiWaWTcpAiIgAiIgAiIgAiIgAiIgAiLQSAIS042kqWOJgAiIgAiIgAiIgAiIgAiIgAi0BAGJ6ZZoZt2kCIiACIiACIiACIiACIiACIhAIwlITDeSpo4lAiIgAiIgAiIgAiIgAiIgAiLQEgQkpluimXWTIiACIiACIiACIiACIiACIiACjSQgMd1ImjqWCIiACIiACIiACIiACIiACIhASxCQmG6JZtZNioAIiIAIiIAIiIAIiIAIiIAINJKAxHQjaepYIiACIiACIiACIiACIiACIiACLUFAYrolmlk3KQIiIAIiIAIiIAIiIAIiIAIi0EgCEtONpKljiYAIiIAIiIAIiIAIiIAIiIAItASBZhPTv//+e0Pb7R+DAQ0xxBDhzz//jH9yNuSQQzb0nN15sKL7svvuzmtplXN99dVX4emnnw6vvvpqGH300cPkk08eZppppla5/Za4z2rvi3oB/POf/wz8aRb77bffwk033RS+/PLLsOqqq4aRRx65195a0e8Jvwm8I/ua/fHHH+Gvv/5qd9k90ce4lmeffTa8+eab4Ysvvgi//PJLGGaYYUK/fv3iO3H66afv0X4PJ66xyHpbH6Cv3n333eGNN94IK620UhhnnHH6WvfU9YqACIhA3yTQbGJ6ttlmC08++WTDGmPJJZcMt956a/xhf+GFF7LHzQ1OGnYBXXygovtaaKGFwj333NPFZ2+twyOeV1tttWw/Qkyfd9554T//+U9rQWnSu632vqj3lk888cSw7bbb1rtbr9z+m2++iULps88+q1zfU089FWaeeeZed7033nhjWH755bPXdfLJJ4ett966111ztQv6+OOPCwXWIYccEvbcc89uuZ+33norHHHEEeGyyy4L3333XeE5//Wvf4UNN9ww7LLLLmG88cbrlmvzJ6FfzjrrrIXnvfLKK6MzqDfYe++9F6/VP1cHHnhg2GeffXrD5ekaREAERKC5CTSbmGZQ9swzz7RptDnmmCNG/hDZOaHNDyLe8CeeeKLdvosvvni4/fbbwy233BIOO+yw8Mgjj7TrEH1ZTN9www1h1113Da+99lqb+5KYbuxz/+677wYcPTbYYXAI+5tvvjnst99+8WQMHokqjDHGGI09uY7W7QQef/zxMGjQoPjOQDzkjGdsnnnmiRG5Tz75JHz00UeB/VKB0Uxi+rTTTgtbbbVVGxwbbbRROOecc7q9jWqd8PPPP4/Xtccee7Tb9Kijjgo777xzrUP0qu/pZ2eddVbWMdMdYprI6d577x2FtDdE3yqrrBJ/gwcOHBjfiaeffnq7bRD7RIO7y3788ccYOWdcsNNOO7U7bW8S07vttls48sgj210j2R+jjjpqdyHTeURABESgNQk0s5gmAoII/ve//x0b98ILLwzrr79+u4Ym5XCZZZaJnzMAJhr9wQcfxP+bmObf9913X2AAnFpfFtPcyxlnnBG22GKLNrclMd3Y90EaqSTawuAnzaS4/PLLw+qrr97Yk+toPUbg5ZdfDtNMM032/ERpRxpppDbfff/99+Giiy4KDI5NVDeTmEaAHnPMMW3umWyM559/vsfaqNaJF1tssXDXXXe12Yxnl2e4LxrvF4Sgt64W019//XVYY401wh133NHmvDi+Z5xxxnYY4csz4G3ZZZcNl156aRhxxBG7HTtOr9SR3pve1YxfGOuk1luzPrq9AXVCERABEehKAs0mpk20TD311OHee+8NY445ZgVfGTHNxkQH55577hhFXHTRRcOdd94Zj/Hhhx9m0836upiG08ILL9ymm0lMN+6pe/HFF9ulbx9++OFxsIiY8pHI6667LqywwgqNO7mO1KMEeDfk5jvj6CPtv8j8M9lMYvrRRx+N71ZvvT1lescddwzHHXdcm2vuy2L6gAMOCPvvv3+3iWki0jil6dPeLrjggrDeeusVPgM77LBDOP7449t8T9r9Nddc060Rai6AOci8m731JjFNZB8uqRU5K3r0paiTi4AIiECzEWhWMU265Oyzz96mucqKaXbih3LNNdeUmG62Dt8D93P++efHuX/ebDDuIzA4gBj8UIRH1jwEUocJd1ZLTLPNdtttF0466aTQTGKa+zrhhBPiPZFGzbxj0neZ4tBbjRTfY489ts3l9cU0b7uB7hbTu+++e7vUbqa5vP3226Fa8c6iOd5Mi0mdAV3dd3JiujeleTNViz6ZGo7anojkd3V76PgiIAIi0KsINKOY5keauULpD3U9Ypr9qbTsI7SKTPeqrttnLiaXsugjW0wp+N///heL3Mmaj0BZMY0DkLRw5hBj/H/OOedsOjHNvVHtnErJQw01VK9vcInpjjcRWV6TTTZZuwOUTStfYokl2qWGczBqUEwwwQQdv7A69+ztYvrqq69uVwytt0+fqLMJtLkIiIAI9F4CzSammZ84wwwzhEsuuaQd9HrENDsvuOCCYYQRRogFUbAyYvrXX3+NS32MPfbYYZRRRind8CwXgyeeOZMUoELIN2LpFYQaaXZEAoqiAM2Q5k1xHYqowXz88ccvzb07Ntxrr73CoYce2uZU9aSJNvrefvrpp8pgdPjhh+8OBDXPwfxhCnVNOOGEYbTRRqu5fXdtwLNDpVwip/379+/QacuKaTJh6MMsm4YhNlne5qCDDgqbbbZZh87drDshxl9//fW4rBZTecq+K9nv008/jc5W2pOiV7WWHaslpu15mmSSScLQQw9dN3IKz7E0FLU9OvI80k9wINNXOUatpRq7MzK98cYbh3PPPbcdE35z+H2tZRdffHFYd91122225ZZbhlNPPbXW7pXv63mOed/Cc9JJJ604ezoqpjkv4wHGEYwJOlpAjekijA+4toknnrjdfeOMpS97YxoR04lkIiACIiACXUyg2cQ0A6XhhhuuXWEfMNYrpimaQuSEH0KsmphmfUdSFylmZkbaLimNiyyySLYVERCI/lNOOSVGpFJjvjaDEebQ+tRfCo0wIMoZxX2mnHLKOMePatH+uBwLUZdWi64lphm0kKqcM37AWTqsjJHq/NJLLxVuyiDhiiuuCNdee212EPDYY4+1GYzguKAy7PXXX9+mCjvCZ7755osFguaff/4256vG7uyzz45zm5nDSV/JGam366yzTpnbjQXrbrvttnD//fe3qyJPmq8tu0M1+XQJlo7c2wMPPFBYFGnfffcNFFKimq5PB2RQyrzEWiKAtbG53p9//rnw3ln2iwJTOA/Sgk3cH/3cG88qS7ewBJuveI3jh4E2IhJx7Y3Kv+bc8p9z/XBGSDAP87///W/2Oll+DIcbzzY8ckYxH3jR52lvm9O+9NJLxwF8vRGxMmKaQTdOBKJ4Jqa5NkQWDiIKNxU98x3pt6TepnNYa3VqroHKwLTNDz/8UGvzyvfcE89UUf8x3uxQ1L58xzsWkUOlZ94RVhmf551+RFvlpkggNq+66qrY79OVHjguha3mmmuuNqKaPkJ7YzkxjTNsrLHGiu9vX1SL+eDMsUZ8VTOug3vlneaXM+L9QwFM+l8tYc1UJIpH0u+9cQ08A5tuumnWyVBLTPM7QZ2HnC211FKlU6x5hxVNWUH8lXGaIUStgKi/HtqcdxLPZqOeY97VtKvnufLKK8f3Ge+idM50tTRvigjSNr5oGddMJXuePe9oX3vttaNjKDV+p3nXkaFCm9hvOSuTHH300e2cEWmRNN7BRWOP0g+vNhQBERABEahNoNnEdLU7rldMp8cqEtMMZjfZZJPCU+fmbzMQ4MfPfiDxIrOsF1EKBK8fYDHYY/BoEQcEKcu1eOFuJz/zzDOjOMqJc7aZd955A6LLR3JqiemHH344isI0urrWWmvFOeUbbLBB7Y42eAuEftFyMgwgOR5Clftj8OvFA3xYZsium/RBtrelzhCnAwYMiOnSDETNOAZzMo0d1drZLickbPBBkSTS5tKiQxyTQUxumZQcgGr367dPC/F09N4YeNIvYJcaS+Jwf2kVX7Zj0Fcr8vntt9/GgmnpkjV2HgaJVOulf7GUHPxsuSPEMWmdvtgQRf2IOFk/px/Rngxk4YEx+GRQ6tf6ZUDLYDRdyo3tEXgIEBwyMMgV5GGZGyqo4xRgniGCOV2Kior/s8wyS3YJIe6R9XHrsTJimncI4oeBshfTdp5G99s0fZaoKpE45lemosGuAb7DDjtsu+gaAnDccccN9JHc0oEUn6JNeO6sbT0/eJuzjrWdeWZzohdhQfS+aG1i5tHaMnN2fOZlIyheeOGFyilZuQDBiXOHd3POeKfheMFyYrpW+3MPOK7SqDeRcRysCG4zHFr0SfqA8cMRy7OaqwTP/eM4MGY8JzgOyWbivPZMrbjiivEZTJdGqiWm6d+873n2zDgHTDhmmYgy+3Ev/MalhkjEkVbGcDgXZXjx7p922mkb8hyXfVf7a86JaX7X6V/2nuW5ol/y/NrSVfaONGcJ/ZA5+ekSenDCIc5Uj9RoD9j433EEv//ts/dhGc7aRgREQAREoBMEJKZDFKW2NFY1lEVimn0YUOK150c0/VHkx/PBBx9sc2jvRUYIIn4tBYzrWW655dpsz8CMH0tv6XJL/jsEOIOrXEQ59VjXEtMclzU3iRwzUGOAwECLaE69htjffPPN2+2GwCea7A0GsEAIemcFAzGiXX5Q/dxzz1XmHCOeEd5maUogA1oGaOmgPOVCRgCDGW/1iGlY0a5cP0u6eEO8IgywKaaYIqYAYp29N45BZfZ6oo7bb7991nGQa1uumYhYavQPMkLMYGz9GQZTTTVV5TsijIhnMwaNRBwZXBJF5NnwIietmouzhUF0an7waJHetI1NTNu+iHyerbKGyKmWXZE7Ti0xTVvR17jWIjHNcRvZbxmgw5jz4XSYaKKJ4qUTac1lXli/h7EVNEL8E+0l1RqjT9PXU/PMyU5J30leTLOv1asoahPmlL/zzjvZPo6YMfFFX+I+zeHG8RDRDz30UBQhPJ9+tQe+J4OC55E+aO+pIjGNuMSJRPotLLwDlGMhxlNHI2KfiLQZkU8cTxjH4dy+z+JYw8lhRh/gPemdFr4aOo4sHJNm9FfejX5uei0xzb5+BQKeVVK1cYrVY7k1xdm/TPE9O09RNXy+JwWcqC7Wmec4VyCSfkJEmsg6VcW9M8auLSem7TfLtqGd7HfSv5fJesBBbhlB9Mn0949jIJqLnEf8VvgsM3+MOeaYI2Y9yERABERABLqBgMR058U0KVgMHBiw5JZBohn98lnvv/9+u1RRxJaJKyI8NkC1LpAbZDPYQ5ymxo+qRQRIvU0jlWl14FpimnQ9InJErHAMkCrd0eq7iBxEua3jbde+zTbbxMrFZmxHtIv5iJa6b98R4fRRE78WeDoQtH1SEZUrbJOK6VzhsHrEtJ07N2e6qBpwI+4tVz2Xa0GEkH6aOo7qqUpLOiKD4dTSY9j6ygwafVo27YkQ9g4nUvWJEpulg3AGjJzX1mT2Qt1fRxqJybVx2g/oyzlHGs8bzwnMfBQ87adlXtE5Mc3zQ1vAyYu9amKaczWq3xLx5Nw+3ZZ6DQi3VBTiPMOBQFTaBChiAwehRV6JphPNT43sAz9lgmecqKq3VEzzHXUP0ncE14E4Ib2azAKmAKTX6pcCYpoFBSS9IWRJCTczp4L9P32X8HlOTKfbEVH3GRTsh/ik38INe+WVVwLi1huCB+Fjlr6vcYpybDMEuhWos894puwc/M7w2+EFGFFXHwmvJabJjuI9zzPKfryras0rzz0HsE4zBdgOh8XAgQPLPDpxGxweaTvzOZlDOAKxjj7HRf2IOglWe6PIiZ46+XjP0V5mPONMJzF2aeTYO1vYLs0g4Dgcg6wOHAfeIZtzSNAPLNqt+dKlu5c2FAEREIHOE5CY7ryYpiiIeZiJhuQKwDAYsAJGRFXSIiLpjx8RijSV1Z+HlicqgvDwRpqXT49mIOSFCtviafdLvVQT0xRGQ+QTvWIATfpfR4W0XSdpxaTCpcZg3uan20CYgTdpkWaknDPQ85ayy83VQ6Q89dRTlbQ4BBQDMG+pmIZRmtLdlWK6UfeWE+/cJxE/BmxEJInoMFgmmsigtNb8TM9p9dVXb5cu7tdjZ1sbSNNv/PxRpgpwfd4YhNr8VD4vwyFXcCoV07k2TsU06eYIo9TsmogWWvo5ET/6Yq46cbU3cU5MF21fS0w3qt8iUIiG8yya8e5Is1/4jgga6b0YfQbB7Z1/CDieyVyKtxcl7E9KKw4JbzkxzTnSDJ/0+SQTiPeRN+onmKhlykNagIkIq1+mLteX0/m8tQqQcf4iB48XTLmMER9J5zjVng+2xYHghXKuv+TOg0C27JdqYtoLaYQq78Cyxd3SPk1aPw6p1PwKGdWeG/uO6U+5tH//W9fR55gaCCzP5g3nOCn33nJZSqmYTvtsep9pMTXeK1Yold++3O+q/bbxmwZPptngkMFBgmMtNbsGH7Uvw1jbiIAIiIAIdIKAxHTnxbSPOtMUOU96upQHRVN8kSYfTeYYFjnyTZumdeXEdBrxzM0TR0D5QXSRmCZl0IQ018EcLYsOdqLLxYrlVClO09eINluKqaWMErXzEa/cgJ8BOiy85SJbZARYqmKjREkZDmUj0426t9z5cIQgUr0R/a9V+Td3f0VzIZmzTfSQ54GiQcxXxYlkUTOOlUYC+ez555+P0yTMeFYs7dg+47gc36yrxXS6PitOpY4u45QT09wPDiPSeJlTyfOPdZeYZm460S2eQ6yo0FM6RQWHBe3P55bWj6iwrBrfXxBtfg4n33VGTKe1J3Ip417kE1VN6x6kYjp3DJ4TnhezMmK66J1tjkufHm/HRTyRheQtl2aP4xGnaTo9gv0oXpjWQcil2zMPmuwirEhMk5LOfGicuAhBztdRIc15ilKv601BzjmWOT6OEsQmViSmaz3HuSrd6bQijl+rmjeOjrSgWlpfgSlDiHLf/uzHdJgiMU1xRp9dUeudbZkrPr28TQfTf0RABERABBpPQGK6e8R0GqFhEMV84FdffTVG5WafffbYuMzNIhKUq9zbETGNQPWFnziHDc6sN+XENINJBto+RdyL3c72xNxA1wQf6Wo4JBDE6fzUXIQgNzcx54zwka3eKKYbdW85MU2BIiuA09m2Y//cfH0rAGXrI6dZBUXRO1JhfcVeRHhacZ5z+shzV4rpRq/PWmvONFyIzhJN6i4xnfaBnFhgG9K3uaYiK0oNp/0Q6Da/2vZvpJjOLbvkRWMu6piK6VVWWaVdoTqfKs51lxXTuWORzcBqB88++2w7jrlCXETWLQvAmNl7MZci7wul2fa5d6uP4ubENL8J/A74bCjS0lkZoqOWS33nWPXMmWb7ojRv/3uUE9NlnuPc7wTV2dMK4bXENFlP6YoMXLtP68eZmzqQyb4gS61ITFs2Udk2IMpOvyf7LV0JoewxtJ0IiIAIiECdBCSme0ZM+2Zi0ElEgj+5KsW2bXeK6aJulAqfOrtbZXObU5vuzwCOPwxeSDEksuMtl/7pB9C2LdVx/VxUPmcwaimmvVFMN+recmK60XPoiN6kFcARB8wvRLhTUT7NKsChlBvgpY6mooGlFzldKaZrCdp6+3wtMc3xLBpf69xd0W+JfuWW0GFurlVkL7pnHCg5xx8ZMbn1gbtTTBP1T1PyqSfgixPmop5pNLOsmM7VKjDhyDuKtF5vabYF3xVFWHG4kH2TVtNPHaMcI/f8I9Bx0mI5MZ1rX8Qo0yJ8Zkk9fT/Hn/3rqebN9kXRcebs25SfHLdaz1KRcy/NEuMaaonpouwMn+GQsmMuNVkF1AAoeuel0wBq8bdpXemUsFr76XsREAEREIFOEJCY7jkxzVq4FF/y1W0ZgDI3ivmAadGV3iCmGaBQNKfWusRluiTVSy291bZH9DEIY64twszSUO37XPp2LjKdrrnJ/j4tsCtESdE9l03zbtS9dYeYzhXJ4/4pUkcmBPMzybrwViSmLTpj21IZ3ObO+/196mKziWnukz5LVkZuaSzj0Oh+S9ooWQa5pfRyz59vDyqwIwhT4x2BIyVXtKo7xbQ988ydNvPF7MgC4t695VZNKCumcSClzr8FFlggpvPnxHROVOZSubk+phkQdUwLTuYi02nFcPb3BdPKimn2S+trlHmv2zZF9UP4PnVYFB03V3HdtqV4mK1j3RExnUu959i5FOlaYpoiYZZGb9fHlCKi0WWsUWIa8c04oTMZBWWuV9uIgAiIgAg4AhLTPSOmSTckTdGbn++cS23rTjHNgJiBb26Ny0ZFOXMDEFsKJK0CbZxyxXVyUbBcGrIvTtRoUVLtpVJWTDfq3rpDTHO/uTn71n5pBWG2zxWG43Oba20Mi5ZGIv27X79+cbNmFNNENpmK0J1iOpcKDV/mu7LEXDXLrRTA9rnInh2nu8U056X2A2n05pwk4oojj6igd1iSCs09m0Czay4rpg8++OA2lcLZ35blyxXVy4np3LKIthxbrjhZLntg5513jgWqvHlRnBPTFKnEAZY6AzhGWiCwngFU0fSBsnN6iyL1vngX19MRMV0k9nFo8C72VktMFy1tlRazK2LXKDFdT9toWxEQAREQgQYRkJjufjGdG1hZBMOatafFtFUizQ0QucbcvLJ6uySRBQaUuXU0WXuVNVhTy80HzBWMyaVMkwlAWifWG8V0o+6tu8R0bh6otVdRVDM3RzGdm5lbiiYt1tSMYhonAn/8/PG0/zey337xxRcxspw+f37db85PhgGp+6QYW6ZIbtkptk0LYpFajEAkewTrCTHNean9gPjH6EsUT8PhxjJtvBPmn3/+wmheWTGdE7G2fFOuDkCuAFnOwUhRRuYH5+ZTp6KS+8s5uahObc7bogJkOHMoYOULYxov3p1pllCZ931u5Qr2S5dnLDpWURGztGhhR8Q058y9j3JLBdYS00XLZz3wwAPZ9aPT+22EmKYSOxldCHhqsPj1xsu0lbYRAREQARHoIIFWEtOkU/tlUQwZVTaXW265mgSLfjDLVPP280I32WSTdnMR0/TC3iKmSQNF6KfL3jAQZP4019kZIxLk5zDa4C2tAm3nyM1NYzkf+Jnl1lpFILBurVVkzokSltnxy41099JYjbq37hLT8M7NTS/KKmB7InXpvM90wJlLv0UIITTMcmKa1HO/vExHl8aqNdey3v5eZs502WM2st9uu+224eSTT2536rQGgRU1MmdUtdRwn2XAnNSpppoqrrVLVg3W3WKapc1wUvFsYQj73Lri1fiXFdO5tvHzenMOvnRua44PlbyZG52rcp86YbmPXCE0nqnpppsu3ma1pbH4jaPNUgcLzlUEK5Wn6zWWk7P1oG1fou2DBg2qWi2cyDFzztMl0jbddNN26e4dFdM5VjiQ0+X7aonpovnXVoAuZUY6NitqbL755nG5ws6KaZ67GWecsU270W9ZylEmAiIgAiLQxQRaSUzzw0KEJbW0wmsRcuY/TTDBBO2+LiOmfXXN3FzhZZddNlD9FKOCNRGT1NI075wwoWKzv8dcNe90aaxcASK/RmbRsjkMFEgBzM2NLNttc0VqGOTn1iflmAywSD33xcWYZ06qtxmimfnH3tJK5LnojV9ii8ERkRw/n53jpQWMytxnzmGQOgAaeW+5QkhpZe0y111mm5yDqiirgOPlHFLp85dzKqSF73LCxEerWMYNoZ8W9KOyso/YsNZ4Kq7qrTZcjRPvhtzzUc98Sn/8RvXbnMOC87BsEY4zu2Yv4KwYEs4Q3j2pMTeZVGQz+gGRau+cQLzzfHsru840tRq4PrNcNW+/NJI4Rc0AACAASURBVBbzz1lWz+aDwxynZr3LPeXEdFodHwdDunQa610TTTbjXcl73hv90xdJS9/p9MUXX3yxUqOCdGymA5nlUsXTZyNdNzlXNM4LSGu3tH1xevJuqddgM9dcc7UrCFkru4koK2LXGxWzWdZt+OGHb/N5R5/jXFo92RpkY9iygTh2yRZJHQxMkfDPQS4zgYtMf3s++eSTOIedZ9CcHDicENWpsW0Zh3VuLGDv245kFNTbxtpeBERABFqaQCuJ6dzSQzR+Otgo6hC5H2y29esXFxVP8oN4ouD8iKfGoJIfTiIRudRnIkZEBhigYjPPPHOgwrG3tLprLgqRpmLmllxJB/u56s2cNzc3tt4HytbGtP0GDhyYXWbEvmdOqV97ms9JWR199NHjJularVRUZU6bH0Tn7plBFOmQRDiJGhCpTo2ICnPqmF9Y1nKD/qI+14h7y0XIqkWLy95HbjuK+MDC+iuR4aKsAts/jVSla2CnmRv77LNPOPDAA9ucPvcsI1RwXJA2TrG5XGV8CjbR9rZkE/2XQXBqjaqGS/TNIoLpOeDUv3//uvA3ot8i8HGWIUpS84IVEcq6wzavmP1IIWUpn/T9RLvzHhx55JHjIb0g86Jy7bXXDgheb2n7F82ZTyPmuSKD3iFGink6VQRxSno3Fap5lyKAmSNNNBbRz3e2frZdY05MpxHhXHo2BdrS9dLTfuuXrKLIGE5U32/9cn5cD9wRdn6ut98mTaumXXBY+qXmcs9O+j7KtRPnTx0aZTsvTgycWL7QHdfE+47fmtS4ZtrD9zPmujP/Pffu7cxzTB9PnwWcC7Q7/Z1K6OnKEFwvzxDTB2x9ad6FFP7CmZsa/WXRRRcNLKFFkUaMYnJE2TF+82x5TL8v1dRxCtayXIS9M+1V63z6XgREQAREwBFodjFNaiKDa4RwtWVeiJZQdITBFgOr1NgfYZr7UWXeGt8xQCMygxhODY86A3x+gHOpfH57BhekhuYq7PIdAxqieVRtTY3BE1FdKiozmKSgTO7HnW2I6BKVJtqRptJxXLbhR5rKykQRbM5hes7cHLN6HjI/F7BsVDCNXlJJlWgvoprBuw02WTqFbVPvPB5/zpVzWpS59jL3jLjg3PDNGZXc6RdE2/wAvqP3hgghQp8rIsT56aMMHG05mTL3WWYbP9e7WlaBHYtIFWn53L8ZUS/6LGmxa665ZuVzljIjEpcuz5NbG73Mtdo2DNZ5jniGcn2f/sT1MJc2jYKVOc+jjz4aM0x45nPH5xiIAzIGEKc4xkyIVjt+I/ot4pFnJGdktvAMEZ32UztsGaecsOQ4PEs4A0mrJuXWC0Ki6UyZIEJn4iE9N3OLyZihXegXqeBme54Vrg9xgXMvTR1mG66Teba8q8iaSIs81mo79kfs0DZm/p4RgPZuIdOJfoJDE/HpHUoIfxxYqTF3Gk7eUcf7D+cg71u/FnyuFgTHo1YB72XrV1wrzj+ciaTk25xnrpV7ISqMUaOC356c84htyRrgmnmP8G//fNp98PvDb6HnU4upfU/0lYJpJib5nPPiXKM/8g7EGY0jhsi/dxjwW0VGRPos8i7hfdmZ5zh1GpW9H9uOGii2BBZOWxjW+l3xGU4IecYN6Vx1jo9DgW1xHFVz4PLOp5p8amk2W733pu1FQAREQARKEGh2MW3z/UqgiJukKcO2X27ZIn9MxABRZQYLRWap06QQk5aVLnPCfgwQma/FDzwDeW94yImcImzTNUvTcxJZ45rT5bX8dvzwI1xyYtu2IxKGcyG3Dq1tk1svtSxvtiMiwyCNa60n0s3Am/Z6/PHHs6dDsDHIsnS9dCMED3Po0wgmA0UEHFFFBtIYgyUKFcGUQQ08SKesZrkoYm57XxjNvu/IvRVlTqTnTKcl1NNWuW199LVWVoHfH9FF++X6KE4hnF+WhZE7L88CQj4duBIBQ5jwLMGEYyEoaK9xxx03OlZ4FnNrXqfnSdfKLsuq1vsiPQ6RdyLwZayz/ZZ045wQrXZue3cVZfdU25coH0W00ihtug+iFMGUey/atkT3EISI92qGcGQeqlV/L8PVb+PnfpuYRrAgenDCIKJz/Zb+ihD1keD03Lz/EZD03ZyR/YIYryZY6fM4YtJpKHY8xCnPh7//3JzrXBtQQyS3drhtm1vbuh6+1Egg1TyXGZEeh2eZ6L1P7/fbMPXAIsPVrqHWc4zopE3Ta+K3jd8CBDMOHwynDoXL6M+8S8iIYa1oM45F2+BwTY3j0T/8VJNchlm6H86oIicp21J8jMi2/y1Pp3zV00baVgREQAREoA4CzS6m60DR7ZsSMedHHuFLehjpoKOMMkrlOhBU/IjjfSf9jx/Leuf7dftNdfCElupda23b3OGJ9jD3DFHHvDNSNXEAlFkLG7YwJqJGBJ5Bmw2EifzQBkRy09TPDt5m3bt15t7qPlkHd8AZAmtbwqeewyDsGeQz3xnWDFBpPwadZebiM5hGXCIuEA6IZote8TnXRWGejhROquc+unvb3t5vu5tH0flqZQEV7WdFv/ieVFtSeHEomFG7ASfcc889F/sYtTTo/7n10YvOQRviSKPvI8wRaAhoL8xqceS6mFPN+49rsgrlZDb1duPdRoYJjgv+zbPM+5vnmPc3qdFlhHIj75N3Eb/JOGD5zbXK+vAlY4Pfh7KZKrQp/YN6D7zPiDKXmf/c0fthehKOdlLTyd7gfDIREAEREIFuICAx3Q2QdYoKAdL4iEAhcGzgyY8/A6h0Lrew9T4CRF2YC0paqkX8SVldaqmlQlqQp/ddva6olQiwrjnRRCuahaAhM8EbUWJEXDqlxpajaiVeulcREAEREAEREIEOEJCY7gA07dIhAlQr93M1iSQTjbGCVEQpmNMr650E/JJbCBMyK4jKWeovcyLLzPvtnXenq2o2AqTOW10JosZEmK3wXHqvZDYwL5UIJNaRqv3Nxk/3IwIiIAIiIAIiUIKAxHQJSNqkIQTSuWHMy6NgFSnupLeT8tisaewNAdiDB8lVWL7vvvtiYTCWKqNQGHPEZSLQWwiQ8mziuMzScH5JOYpk4SSSiYAIiIAIiIAIiEBVAhLT6iDdRSAV0xRyYS4rBcRYKixd77e7rkvnqU0gtw4qyw5RxI65gR2Z6177rNpCBDpOwC+5R4FDlifMLVPGXGOKslEMjwg1hR6pKF1mzn7Hr057ioAIiIAIiIAINAUBiemmaMY+cRNUPGcd4NQ0V7pPNF9YbLHFssu3+LV9+8ad6CpbgQCFnxDUfmkyCkjNMMMMcelBajVQBZkCXlYFmWXsWAWACvAyERABERABERABEahJQGK6JiJt0CACVK9lPVSWfaFqKlGixRdfPKYIN1u15QYh61WHITrNMkekd7PsEGm0rJmbW0+3V124LqZlCfDOuf3222OfZY4/wvmbb76JPPr37x+nl1C3gakKLHFEBFsmAiIgAiIgAiIgAqUJSEyXRqUNRUAEREAEREAEREAEREAEREAEROBvAhLT6gkiIAIiIAIiIAIiIAIiIAIiIAIiUCcBiek6gWlzERABERABERABERABERABERABEZCYVh8QAREQAREQAREQAREQAREQAREQgToJSEzXCUybi4AIiIAIiIAIiIAIiIAIiIAIiIDEtPqACIiACIiACIiACIiACIiACIiACNRJQGK6TmDaXAREQAREQAREQAREQAREQAREQAQkptUHREAEREAEREAEREAEREAEREAERKBOAhLTdQLT5iIgAiIgAiIgAiIgAiIgAiIgAiIgMa0+IAIiIAIiIAIiIAIiIAIiIAIiIAJ1EpCYrhOYNhcBERABERABERABERABERABERABiWn1AREQAREQAREQAREQAREQAREQARGok4DEdJ3AtLkIiIAIiIAIiIAIiIAIiIAIiIAISEyrD4iACIiACIiACIiACIiACIiACIhAnQQkpusEps1FQAREQAREQAREQAREQAREQAREQGJafUAEREAEREAEREAEREAEREAEREAE6iQgMV0nMG0uAiIgAiIgAiIgAiIgAiIgAiIgAhLT6gMiIAIiIAIiIAIiIAIiIAIiIAIiUCcBiek6gWlzERABERABERABERABERABERABEZCYVh8QAREQAREQAREQAREQAREQAREQgToJSEzXCUybi4AIiIAIiIAIiIAIiIAIiIAIiIDEtPqACIiACIiACIiACIiACIiACIiACNRJQGK6TmDaXAREQAREQAREQAREQAREQAREQAQkptUHREAEREAEREAEREAEREAEREAERKBOAhLTdQLT5iIgAiIgAiIgAiIgAiIgAiIgAiIgMa0+IAIiIAIiIAIiIAIiIAIiIAIiIAJ1EmgmMf3HH38E/qQ21FBDxc///PPPdt/985//DEMOOWT8nO9///33Ntuw7z9SSHUy7szmH330Ubj99tvDsssuG/r371851A8//BDuv//+8OOPP4ZVV1218jnX/9RTT4XHH388bL/99p05dY/s+8Ybb4Rnn322zT2VuZAPP/wwPPfcc2HQoEHhv//9bxhnnHHCdNNNF6aeeurwn//8p8whunSb7777Ltxzzz11nWP88ccPM888c137dMXGPDuXXXZZeOKJJ8JGG20UZpxxxq44TZtjPvnkk4E2zRnP7AgjjBCmnHLKMO6443b5tdgJ3n777fD8889Xzse7Yemll677/J999ll49NFH695vhhlmCBNNNFHV/XhfXHPNNfE5+PrrryOjqaaaKswzzzzh3HPPjX8vtNBCIeU7yiijhAUWWKDqsXuiH9QNqZt24L0LZ55P3jF91f7666/w9NNPx37Vr1+/vnobum4REAEREAER6DkCzSSmzz///LDhhhu2gcnAkc9vuOGGcMQRR4QPPvig8v1MM80Udt5557DmmmvGz1599dWwwQYbRCGKjTHGGOHKK68M888/f4810Oqrrx6vYbPNNgtnnHFG+Pjjj8Omm24abrnllnhNa6yxRhQ62MYbbxyuuuqqgHD717/+Fb799tseu+56T3z00UeHs846K7z22muBdmGAV8Z++eWXcMghh4SDDjoobj7vvPNGIY7wOfvssyMLBM9pp50WEKc9Ze+++244/PDDw+mnn97uEhAxtBfi8Zlnnql8T3tyDz1tOHOWXHLJyjPx/vvvh6GHHrpLL4v7PueccyrPop1s1llnjQN/+rk9o7T/Jpts0qXXw8HvvvvusPbaawfEMNbRZ4zjLLroopXr5Thjjz127Ptmk0wySfzskUceqXx23nnnxfdTkXHclVZaKX691VZbReH84osvhj333LOyC1zpVyeffHLYdtttK5/DdeDAgVUZNrIf8HxPM800Ydhhh+3yduuKE/Au3mKLLcJ4440XeB76qtEf+D256KKLwjrrrNNXb0PXLQIiIAIiIAI9R6CZxDQUiWoixjAGpG+++WYF7ieffBIYNJqg/uabb8JII43UBj7RFyKZDJBefvnlOFjqSTvyyCPDbrvtFs4888w46MEQyVtuuWW49NJL24jp77//PlxwwQVhm2226fBAv6fulUjPCSecEAf+c8wxR3jsscdqXgqCeYUVVggvvPBC3JbIm3emIEx9ZBeHynLLLVfzuF25wb777lsR/pwHcYRIMkOo7b333tGx0FvEtAkHu8bPP/+8W6JYsBhzzDHbNMcXX3wRRh999ChsvSDlGcFZ0dV22GGHVcRpZ8U0zjrugwyKa6+9Nqy88sqVyz/++OPDgAEDApHmBRdcMAptnAtkBuTsyy+/jE4GnEcXXnhhWHfddSub8Q4km4DvTEzzJc8KjkasjJhuVD/AWTnnnHNGh5m9q2u1G1F2eA8xxBC1Nu2W78kKol3gDO++aDiPyVzAJKb7YgvqmkVABERABHoFgWYT00Al2nzMMcdEvkQEJ5hgggprIpREbbB77703Doi8kfY21lhjhV133TXstNNOvaKNfvvtt0BKqbdTTz01bL311m3ENN8jLKeffvo+J6a5dhNIRJcffPDBquxJyV944YVjqjuGGGCQTgqwt5NOOilst9128SMG4z3tIKHPcd1mORFIe+NQQAD1hsj0V199FciQuOuuu8Khhx4a9thjj257LmabbbaYkmwGG6Zl8LePjtO2CEqbstFVF+gFZUfF9J133hkWX3zx2BdJwcaKxDTfIahJZ/dCOL0/389zItW+98fgHXfUUUdVnp9akelG9AMcJDgP+LusmP7555/D3HPPHbNxeDf3Fsu9l3vLtdW6jl9//TU6NCwTRmK6FjF9LwIiIAIiIAIFBJpRTHuPOymgPs2RAeFoo40WaeSiChY1ee+993o0LbhWh7VBvU/zZp+XXnopTDvttH1STDOneJFFFolzN++7776qCCw90Ta67bbbwhJLLNFuHxMi9gXpygzKe2oefDUxTd8jI4I0dZw+iI3eIKaNHVkb3R0ZLBLTXBNZBz4tnvn2k046aa1Hp1PfN0JMky6No45n1ayamGYb+vYqq6xSmM5OFgOZGRj/JrPB93EE6WSTTRb233//+D1Wr5jubD8gE4j7sGk0ZcU0zk+eB6a49CYx3amO1MM785tIbQ2eF6aeSEz3cIPo9CIgAiIgAn2XQDOKaVpjvvnmCw899FBM0yY67SOWfhBONGvUUUetNCDzCCne48UcRb0oPMT8QyJfc801V0whr2YM7H1EjYJJSy21VGWup+1LoSzmZJOifdNNN8WPhx9++LD88stXDk8Ei1RNipCZNVJMU7CLFOiRRx45priPOOKI7Yp2kSLP4It5vQzAuOY0Wv7WW28Fom7MJSQtE3HMftz3xBNP3A4XKbtEoOFNER+EGnM+y4hp0n9t7ioHtvTfXJsQgbEBPN/TlkQV0/RM2p5pAtdff32cc01KOO2QphpT/I20e47Jv4kyct1limFVE9M77rhjZH/ggQfG+3nllVfCO++8E+BqhqOEdGDSgBEnZhNOOGFlPi3X7wtlpUy4d8513HHHVZ1XT1/g2XjggQcqhyAavPvuu8fr6ig/nF0IP/7m+WMuO5FHyyDB2cUzhlUT074P5CLTiP9LLrkk9jH6OGKS85Ban0awy26bE9OI4quvvroNZtJniebnjDR5rocMDLNaYhqnAe8FS8tNj8u0Dz8fn1oRRJ19GjVZK/Qve3elYppnl3ahj/K84qijHRDlZIDk+gHOqtThw3QUptIw5QQBvMMOO0QHH8+JfycyR5d3CU7NnBOE7BOu0bKMmNZCf+T97Ysx0o+4N54Z+HDPvMvKWpn3X+5Yn376abj11lvbTC0hs4n3JE4x3gn8fccdd8S54dRu8L81ta6P9z7tzjHou7xHcUAwzaEzRc9oR35LuO+DDz44Oiokpmu1hr4XAREQAREQgQICzSqmGRyst9568a59OjciyQthBqCbb7553O6nn36KwunEE0+sCBMGTEQKiewwwCQCytxDipkx0CsyBkCrrbZaRcRxDQhQBIjN62VgzzxhBoek3XFM5tQy95MBKNfBfTBQRED5AXujxDTXiDAi3RjBzt+c+9hjj63cGvMqSZUmqsR9ISIRWtddd11kySCc1F+LEiLmmMvsDWHohQCODgaXDPo5LoNScybUEtP/+9//2szZrZVuyz1awSquiUE5A/u99tqrjQBBPFx++eVtrpt5rYhZnCHY66+/HpZZZpk4hxVWVMDdZZddYrE60mQRtdWsSEzjGPj3v/8dK7Ajps2IolMgjz6H0RcpSIfzA0FsQtsXbaNIFveIWCOlHIeGF1rcO9FR6gVwXPhQKZo0e67PjH5IGzFP14sg+ir7dYSfTU/gHAzouRb6jt0fn9MnrPJ5kZi+4oorotgzu/HGG9s4mxBWa621VkxN5zkjIosDAp78n/5AgS+snm1zYpr9eU5pD4z+QJvVU/W8lpiu2qkGf+nfd35b+gvtxNSP1LyY5hnCqYGA80aEm+JuOLxy/YBaB8bW9uP9gaPGjHcE7wrOh7A0o50RhkTpZ5999nbXR5/bZ599KvswRx5nDv0ScU6f4XnBAYAgR7Da88v8cr/KQRG/Mu+/dF/6DnUO+C3AENAY98x7E0cC/Zp78s8yAph7wilSzSiqyFQlnBEwwyFM+9qzSRVxKzRXq1+k35OZxXuY98GKK64YpzxJTNdLUduLgAiIgAiIgCPQrGKagZYVF/Pp3HjireATQsSLEBvQWrSaiDSDUAb0DNiI0BAZmGWWWSJBBoaLLbZYYX8iImaVwLkeokIYEVCq6aYFphgkMbhhMMYAjUg4ApvBW1eIaUtp9/dBNAtxfcopp8RrRcAzKOVaGMASLSLdlMExooR75N4QbzYXHaGNI4CBMlFqKhLzN4M2DGHNwJJ7Qhha1gCDdgbBXkzl4HI8KhWbpYXm0n2Mt31OZJVCUmkKOIIYkUmk0RdwQmQiSmkT2hNHAMagl8E9jgPELffkU3dz156KaQbdZFHgVEFQIx78AJxjeGeAiWk+R4Ra0S3fj4mow976rF2fXQ9OD4Qe/dmKtpEZQXTQov3eiUCb+GrZiGmyEurlx9QJ72wgy4HMDJwSFNrDaBcim1w/loppospE1CzTgH7FPizt5I32u/jii+NHLOnFcdjP5iiTcYDTB6tn26I0b4Q0EVocS8x3r9c6K6Z5V+E88RkY/hqIXMPY3kF858U0/8eRhwOC95JVEecZf/jhh+OhivqBnzpj56SdrLgZQh0HGBF5n71RJs3bv8c5hk3R4Tw4tXCOEGnlGcJ4Nu3fOOisCn2uPcq8/3L7kfWBkwanCWZimucBhnDCeG55nnFmWRV4Vl7wTqDc8XECI56JcFsBRZy5ww03XNy8M2KabAnaw7IJJKbrfVK1vQiIgAiIgAgkBJpVTHObDOjw7mMIZFL/GMxT7ZqUYhsMsT4xohnRgThC4GEIDQaWRMlYxsUMMY3gTSsxp52LQRYClGiPH0QxuLcBNyLGop6cn2iGL/BEZIhlsbpCTFsxNsQLEUNSXxkQItAQw4hFoqUIEAZ3Zgz8TTgTqWUbBsoIMMwXfbPlyvygHLFHFJrjEB0xY5CIUK8lpmHJoN+slohlQIsTxczmmaciwK6HdvPTAuhDDHC9EMZhYKnURNYskk/EmpTMIkvFNFEnBIJVJM+JaV912Ytp0l+JYGFeTJNpQSYBfTatek1bk6KOUwTRwXQGhHFaZRwhigDAUt4mpuvlR8q1X36H1Go447jhmcQsam78UjGNIwwRzrNpUXn2QVBbJBgRQkE6M4TIMMMME9ea9+ndpC7z7JXdFkdKTkzjnOH5QdTVE432faSzYppjITx5V6TZFXaeySefPGZPWAq0F9P+GSKCT3QZ45kmO6daP/BCj+3MeYkDDi484zgdU+dLvWLaT8nh/cF7JPeuMOcZzxaZSEVF6Wq9/wof4sFfmEOQbUxM828cNNwvDj7ejfYesWeY5+yAAw4oPDTrj/OuzL3TbHpSR8U0WVGcm987BDUmMV2tlfWdCIiACIiACJQg0Mxi2gsJBsFTTDFFnI/LAIvBNVExjIEj0TGK2/jlk0z0MQjNGfMJ/bJGuW1swEaKIlErzKdk2lw10qeZM2rROjsWxye9sivEtJ2TczGAYxBtUXc+81H4IgYIJPbxworops1pJKpFxIz9mdtYtB3nswJktcS0DTiNUa21Xm1+sG2/3377xdTUVAzefPPNMa0ZsxRo/m1LEvm1eREZVsiJyL6luJvwLnr0itK8ibARaWuEmLZzU20YZ45fvxhBY+nNth2i1M9ZTSujlxXTtfilIhdBT3ScIoEsB4aly6IVpXkTpeT5s3tDHJiY9ank6RQAP88apxHfUxUfq7Ut74hUTLMvx6F/M9++VgpvUb+oJaZ5pjh/aryjvEOK78muYFtz0Ph9cFpQ2RvzYto7Y8yBxzYdEdPpEnV2/kaKaZxF3AfCGcefN/9+qObcqvX+K2orPkco2zvRi2meAaYvpGKYKvik23PdZKEUmb2r0qk2bE82DhkDHRHTtjwaEXWfUi8xXa2V9Z0IiIAIiIAIlCDQzGKa1EfSChmIMlgkmkgKsxUXY94Z6coMohnME70kworQxhAYCA3WdTZPfgmkbTbxgo0BGBELIr3M72Owa/ODSe1lXqJFxe0gXSmmOYdfUof/E7kk4sn9EuFi7ieRcgaD1axIJFtKtolpImMM5vwg3Y5rYto7HnLnzKWV+gFtuo+P7PIdbU4WQL1imgEuDgcMPhYV9uejGrkVz8pde7UCZLAmqp2medcbmbbz+ogvnxG9JYqamj0H9jlt5u+hUWKaNsJhZOu8m+PI0lo5P04OnB1m1QqQpRXdLSLqMwXSfoZDzQQ4mSVkBVhWQa1teRbTtZY9S4SJTY+o9z1RS0ynDg87PpFGop045ejT9p6CNdFbnl0/D9rfY1eJ6aJU5s6KaZ5XS+cn0o0wTPsLXCgKaOns3sGTa5Nq779qbVivmLb1yWuJabsvskd4F3vrjJjmuGQY4HzwhqOQdHccthRq5PcJZ6ZMBERABERABESgJIFmFtMgYAkQBjJmDIgZRGMWDbTvfNSGzyjIw8Dfz10ribXNZqReEu3hWoi8Mf+UubUMXEjN5N+sd02UFzHmravFNOfi/kjpNZGBmGW+IUWeSMsl0kKBp2pWVkxTtIeqtJil+dpxy4pptveiiP+n64n7ayWF30fpcKiQ7l+vmEa4MHg3o2AdTpF6rJqYpq3JmmiEmKYolvUvro/oPZkBaeQ0vZ50qTX2bZSY5li0A04DBB5ZALSjiVn+T2Tf5kuzfTUxnc6dtwwF305ptNkcZBwb5wgpz9amtbblOlMxjYAmEm5mjpp6+gTbdlZMwxFnYFp0C4ci0XPEmRlik37Q18Q0KwRYirrVAUjrTnCPfpoGqfxWt6KoTYref9XWLO8qMc3vANfsa0zYdXdGTPt+X61v5paLrLcva3sREAEREAERdmg0ggAAIABJREFUaCkCzS6mSb30y8P46IaPXNPoFK/xha0QfYi/ogEbA2nSKSeaaKKqfYYKrogCButEHhETRDUtpc+qi/s5dnbArhTTRG04NymJpART7Iw0Y2PBYJJoBWZzo/2NwpZIOs6KsmLaF4HyhYM4bj1iOp0LXLS0C9EYvzatTwutV0wzj9gXJksjuJa2XG0N62pimrmn/EmLaXUkMo2A8iKPdkJosZwWopX0eyuw5yOXiHn6M6myZCaQQttIMY0DhUrCOK5w1DDVgqwFKgzT1/xcdfpENTGdVvS2LA8K9lH8ycxnLfj0fSLb/L/strwH0jRv5vFyXivYxTOOcwxHXD1WS0zDDWdXmoFBNXmizYhpMl6sqJo/Nw5Bu56+HJn2Ytrm+PP+YhlC/8zhNLKVA6qtTV3r/ed/C9K27CoxbZX4LZPHn7czYproM86/1IjM4wAiY4XoNf3D1weppw9rWxEQAREQARFoSQLNLqZpVIti5qJuVpyKQQRpiBQmMyOaY8tm+YJMiJCDDjoorqHqIz7VOpBf29oGhYgYG7iQWm1L6/jjWCqrrz7M9wgSKvQiBBAVZqSKTzfddO3mf+aujZRlKs1aRWi24X65JwQJc3iJ4JImz5xqBvxWZIw5eAy+mJ+Jg8AvV+XnTJNST9qgDQ5hR3uQtsrnOCso+oZZwTc/f7MaU19grijyigDiuBgDbyKjVvANIeSjoKTFcs9YKro4DvdMsTUz5hYjOnE6sEQQbcEcVjIRiizNhsjN+Uz3tfmhfO6XDWMAjAME84NvCqOx1JUZbYejCMFx9NFHxzmbzBf1c4vZlqkO9GsEG9kIOCHof2nhMCtAVi8/2h4+tDmMEKa1jOfDi32roM5+6drKtswdzxd9zCqTWxVoXxka0YvjgOe97Lb0FXvuOL9FstMUbGoE4DSpFtlM7zt11DCtwhcirMXJ3nG+5oPtw3vK6kMQjbY+g0PP1nD2BfX8e89H64v6AX3fninOWeTYStO8cZ7xruL9Y9eR3iftbdkfcLb16u09x/asKODX7DaW6TszPXat9x/FEIvMOwW9g4MMHs6bzpkm24TpC7XSvFley34HvLPOikHiGEnnTPN8wJJofb1OHJu6onWmaz1h+l4EREAEREAECgi0gpgm/RHRnJs/Z4Oy3CCHAQyDIqsaTIo2ggzRxTIlREDSKGJRRzOhmFZzpaIyQscLUH8MS1lNBaYtI5VGMPygvFpUhnMwmOR6HnvssYqoZ0BG4TEiLwxirRq3iQeWmmGJIyIdCDPmp2I+5ZZ50VYh2c9JZNANN6vEy35UYibaSwTZjsXnVOsm6s8gv8hIV0UcWASWNWcpZkUKK1FiBrZWnAl+sLGlkTimCX07PgNZjpGKRKq+29JN1pdsH5wLpJHiVOBaEVHmHEivm+giheQQPGaIFYStpa/m7jVdkgheHIvlyLzRx4hswZRUUTPal7nKRKcZPCOuuQaEia3vzH1QoZiaAdwrx7K+mhZwQ0gg3urlZ0sR2XXRR+hjVBOHA22EgOGZw/wyR7YPUXLWJYczzhS7fqZQ0PZmtqQb/2ceM1kkVi2ez/x0j3q2TQW8VZhO56fbXObCzuu+wMlA9oEt5cVXOE1wOpSdRmBiGo4UPbRK7Byb54oMA95dOFqYT8zzwXJv1k/Yj6kB9N10ySyb217UDyi+Z0s4ce1sxxJ7aZYB10Jb+2eH9yeOFf/sp8xsug3ONxxWiGeEvb0buS/eOTg7yLAh84K+RuaML6yXHrfM+6+o/XyGia8ybnOj4enrb1haeq16ELzTuB9zBPE+Yl4/WSLmVPJimnaEIc8B52S/sn2Ge5OYLvOEahsREAEREAERqEKgFcQ0g3/SRW2wmOIg+sUA1NYn9d8j8kiPtbWF+Y4oCHOgGcCWNQY7FENDpFJR2IxBEvOTWbYkPS8DKb/MDWKDCA7RQwZzZogjBCXVprkuMwZlCIyidU0ZTDL4I/0PgcJcYqJ4zFv1KY6pmOP4CE+iqkT2qFKOwLMBIOdFaBP584Nkrh8hTZQMMccg2vbhOwphER1df/31o5hm/qAffBexRsiS1mxOD6KqDKSt0BWROAb4PlKYCgA7NkWNbE1Yfz5YDRgwIKZGI5xoG28IOyK+trZ5eq1F5/NtRRqvz4yw7xAIRMb98mQIBoQCIgmHCn2R/oXYY454NaM/EyH2Keu57elTDNZt2Sq/DRH5XKG1avwQymQQ1DKibPS51Fng90P8kxFBMTv6Ue5ZZCqAtSXPLM8wgoPjWgaCHbPMtmmxKvbleDgh6L/Wl+2YtdahZzsi3YhXcwqkbLwjpxo37p8/CDiEJHxwSiDAuC6cCUS7zWlDWyDKvPEeoZ9RjCo1+jb9PzWes9xyYLkCg+yLo8ZXJafteG9Ve859FX3EKE4hc2Kak5J2QLDaOu9k6/gskhy7su+/dF/eJYh5a2/6NPfF+4a2NIMnmR280zxrv7xd7rroT9yL1bDg+caJxx8ya9LItKV/cywcXDhiypqJ6TLrX5c9prYTAREQAREQgZYi0ApimgZlgOKjkr6RmXPHPNFqaZlEH2w7S3Wut6OQ5mjplrYvQolq4T7duN7jdnR7Iu8MYvmbaDMRK5ZNSiNKHB8RaXM2ETFF0dd6r4XCYUSSWUqLNbcRb0WCtNaxmQONeOBeOAZigjT13P3UOlat74myk5lAhJjzdHRJpFrn8d8z39miwogJ+hP35ueE13O8ntjW0l2rnZu51N5x0JnrpD/hZOHZJRKPwMo5LDhHPdt25pq6Yl+itTgWWIkAQY3TDicZ/Z8/ZZxSXXFduWPioORdQnuUca5wDO6J6QU4jFLjHcr7nSkrOEZz2+Suo573X3ex8edhWgnvFVvKzgoppmKadxCOSxw6/N0TvyU9wUfnFAEREAEREIFeQaBVxHSvgK2LEIEWJmBp3kQRySawKClzTnGqEPEntZmpBGRryERABP6PQJGYZgsykHDupRlO4icCIiACIiACItDFBCSmuxiwDi8CIhAJ7LXXXjHVmGkADPzTTBCmWpCOTOp6uh6uEIpAqxOw5a3SyDQp+M8991x0RnVHhkyrt4PuXwREQAREQATaEJCYVocQARHoDgIUtmMePPODmdfJH1vvm7V+mcuMiGY+flEqdndcp84hAr2NgF/5gargfr17preMOuqove2SdT0iIAIiIAIi0BoEJKZbo511lyLQGwggpClYx9xv5nwzx5dINTULqIZO1XGZCIjA/xGguBlFIalbYcYqBX5JQ/ESAREQAREQARHoIQIS0z0EXqcVAREQAREQAREQAREQAREQARHouwQkpvtu2+nKRUAEREAEREAEREAEREAEREAEeohAK4npJ554Ii4f0wz29ddfx1RZlkJhHVIqvVZb2qu33jNLTFFQZ+aZZ45LTLWKsT4v7bfyyiu3WWaMZYNYq9nWUO5qHkXX8cMPP4T7778/0D6si2tGqinzm6nMna61nbtW1i2nQveaa66pedBd3ZgNOj7V1UnBp3+y9BrLibHcVFcsMdegS9ZhREAEREAEREAERKBnCLSKmEY0sA4n65siVPqqsRYuVY+ZL7feeuuFd955JxZuYrmhJ598MkwxxRR96tbOOOOMsMUWW8T1Zt9///0+de0dvVjakHWimT9M2yE0H3roobDTTjvFNsTgstlmm3X0FKX2y13Hxx9/HDbddNNwyy23xGOsscYa4bLLLov/3njjjcNVV10Vr5v+xvroRYaAZrmeRx55JG7Cmr6NWpu81M1po7oJ0AcpbEUfpI15JqkOzTsT22OPPcIuu+yiYld1k9UOIiACIiACIiACTUugVcQ0wuSss84K2223XWApkb5q3AP38vzzz8eCTdiuu+4ajjrqqHDssceGHXbYodfeGtF0RJiv1Ez0kwrP6667bkutkbrUUkuFhx9+OEZ/cfIQ8f38889jhWvES3eIaTpKeh18hkjecssto9D3Yvr777+PhZC22WabmmL6m2++qUSkW0FME4EfffTRSz17v/76a3Qu8Cz0BiMbYvfddw/nn39+mGOOOeLyZfRJWwecvvnoo4+GAw44IApt1gCfZ555esOl6xpEQAREQAREQAREoGcJtIKY/uKLL0L//v0roL/88ss+GV35+eefwxhjjBGmmWaa8Nhjj1Xuh7TMl156KUbcqY7cG41rn3vuuWPEc6yxxmpzib/99lsYaqiheuNld+k15e57tdVWi9Hf7hLT3GDuOk499dSw9dZbtxHTbPvCCy/EKQW1ItNsi8Ds169fZNjMkWmmKTzwwANxfewyhkNv/vnnjyn+PW2kc88444zhs88+i87GDTfcsGo6Pv0C4f3iiy/GZc1kIiACIiACIiACItDSBFpBTB999NExcsuAETvmmGPCjjvu2OfafdCgQWG66aYLa621Vrjkkkv61PVvtdVWMT2dNOJUTPepG+nii1199dXDlVde2a1iOndLln7vI9Ns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do7IJlLKetxdaaTMps4CUn6pkM0SZT1pRIZxFNH2tap1k6HAVAjmR5sAr3XtrF2NcKMvwgGHQtE9d+T41c5P+5LpwfUOM8wwtS41ZptwjWRypMK0kf2d95TvhzUv7P9vwLMLf6Lx9CfarNa7y8+ZRigzrYUl87jHIuM8OIEQ7TIREAEREAEREAER6JMEJKb7ZLPpokVABESg1xCoVoCs11ykLkQEREAEREAEREAEGk1AYrrRRHU8ERABEWgtAr7wYFpsrrVI6G5FQAREQAREQARaioDEdEs1t25WBERABBpO4JRTTokV6zFSvKtNgWn4yXVAERABERABERABEegpAhLTPUVe5xUBERCBvk+AYoe2pjd3QyXw+eefv65q9H2fgu5ABERABERABESgJQlITLdks+umRUAEREAEREAEREAEREAEREAEOkNAYroz9LSvCIiACIjrJV7JAAAgAElEQVSACIiACIiACIiACIhASxKQmG7JZtdNi4AIiIAIiIAIiIAIiIAIiIAIdIaAxHRn6GlfERABERABERABERABERABERCBliQgMd2Sza6bFgEREAEREAEREAEREAEREAER6AwBienO0NO+IiACIiACIiACIiACIiACIiACLUlAYrolm103LQIiIAIiIAIiIAIiIAIiIAIi0BkCEtOdoad9RUAEREAEREAEREAEREAEREAEWpKAxHRLNrtuWgREQAREQAREQAREQAREQAREoDMEJKY7Q0/7ioAIiIAIiIAIiIAIiIAIiIAItCQBiemWbHbdtAiIgAiIgAiIgAiIgAiIgAiIQGcISEx3hp72FQEREAEREAEREAEREAEREAERaEkCEtMt2ey6aREQAREQAREQAREQAREQAREQgc4QkJjuDD3tKwIiIAIiIAIiIAIiIAIiIAIi0JIEJKZbstl10yIgAiIgAiIgAiIgAiIgAiIgAp0hIDHdGXraVwREQAREQAREQAREQAREQAREoCUJSEy3ZLPrpkVABERABERABERABERABERABDpDQGK6M/S0rwiIgAiIgAiIgAiIgAiIgAiIQEsSkJhuyWbXTYuACIiACIiACIiACIiACIiACHSGgMR0Z+hpXxEQAREQAREQAREQAREQAREQgZYkIDHdks2umxYBERABERABERABERABERABEegMAYnpztDTviIgAiIgAiIgAiIgAiIgAiIgAi1JQGK6JZtdNy0CIiACIiACIiACIiACIiACItAZAhLTnaGnfUVABERABERABERABERABERABFqSQDOJ6T/++CPwJ7Whhhoqfv7nn3+2++6f//xnGHLIIePnfP/777+32YZ9/5FCasmeopuGwHfffRdeffXV8PXXX4dxxx03TD755GGIIYYohPPXX3+F3377Lft92rd+/fXXdtsNPfTQAt8FBH79+fcw6OH3wjiTjhbGmniULjhD8SE/efvrMOjR98JwIw4dJp95nNB/vJG69fxlT/bzzz+HF198Mcw666xld9F2IiACIiACIiACItBaBJpJTJ9//vlhww03bNOACy20UODzG264IRxxxBHhgw8+qHw/00wzhZ133jmsueaa8TNE0gYbbBAef/zx+P8xxhgjXHnllWH++edvrU6hu80SuPDCC8Muu+wS5pxzzvDpp5/GfkIf4vNpppkmu88LL7wQttlmm/DQQw+1+X7RRRcNp5xySphsssni5z/++GMULS+//HJlu6mnnjpcdNFF8RyyxhBAyF5wwH3h6bvejAfc46KVw4wLTdyYg5c4ypm73hk+eP1/YdLpxwq3nPV03OOYezcI40/Rr8Te3bvJEkssEe64445w3nnnxfeiTAREQAREQAREQAREICHQTGKaW3v22Wcr4mOSSSYJb77596AZ++STT6JgMUH9zTffhJFGahsVIoL9n//8J7z//vtR2Iw33nhd0meIQv7yyy/hX//6V5ccXwdtLAGEMyKafmF9Yssttwynn356oJ8RwRt++OELT3r44YeHPfbYI35/7rnntnP62I5XX311WHXVVcNWW20VxbassQT+/POv8OXH34Xdl7w4fPu/H8Pel68a/jPvhI09ScHRHrvp1XDcFjeF4x/cKEbELzzw/nDzGU+FA65dI0w1e9e8ZzpzY5aRgzPopJNO6syhtK8IiIAIiIAIiIAINCeBZhPTtBLR5mOOOSY22LvvvhsmmGCCSuOddtppUahg9957b1hwwQXbNCxpuWONNVbYddddw0477dRljb7ddtvFiPfKK6/cZefQgRtHwPrU008/XXHWDBw4MMw+++zxJI888kiYa665Ck94yy23hGWWWSZ+jzC3/dIdiFCPMMIIMZNiueWWa9wN6EhtCOyzwqXh1Sc/CvteuVqYdu7/ez90JaZjNr0hPHHr6+HiN7cPQw/799SSX376LQwz3FBdedoOHxtHI9Madthhh3Dsscd2+DjaUQREQAREQAREQASalkAzimnStaeccsrYZoccckjYc889K+331VdfhdFGGy3+f911140put4sAvnee++F8ccfv0va/fLLL4+p5UQhJaa7BHHDD3rwwQeHffbZJ+y4444VRw3z65n3jF1//fVh+eWXLzzvnXfeGRZffPH4vRfkuR2ICN5///2aXtDwVvy/A5qY3v/q1cPUc3bNc55e/oB5zwkfv/VVuOStHcJQwxTPs+/C267r0LPNNlt48sknw3HHHRe23377uvbVxiIgAiIgAiIgAiLQEgSaUUzTcPPNN1+cp0pKLtFpCo2ZzTzzzOGZZ56J//3yyy/DqKOOWvlu2223DYMGDQr33Xdf5TNSxW+//fZKiu/cc88dZpxxxjb9g5RtIt0ci6gjab/8f4oppggLL7xwsEJSlsbLzoj8eeedN0w88cRxu2rG3FuilnPMMUd44403YnRzwgknjPubff755wHRNsooo8TP0xR2tvv444/Dc889F956660w0UQThRlmmCEW0kqNlPgbb7wxbLbZZnEu+W233RaWXnrpyhxfhOTzzz8f75MCbkRlSXcuY9wHx3vllVfiXGOcG6RQw+iaa64JvhAXn+MA+e9//9vm0AhT9nv00Udj+2KwgSVGCv+1114b3n777TDccMMF2px5yrlick888UTsDz/99FPcbvrpp48MvdFPmDuKYP73v/8dv/roo48q7D788MMwzjjjFN5+vWL6wQcfbNO2HBgGRKxHHnnkOBVhxBFHjH97o92eeuqpwPVMOumkUZCb4C/TNrQ1fe2LL76IDinma3M+M9oNThh9lvbjXDA0o0/5vkAfoc+usMIKgfvi+VprrbXaPHe5a/vp+1/D24M+Cx+8+kUYcZRhwwRT9Q/jTT56u02//uyH8NSdb4RF1pk+fPTml+HZe98OMy08SRh7kr+f68HJJuHN5z4Orz/7cfjj9z8HR6InDOfsdVeMTOfENMfgvL/+9Pvgc/aL85u9kSo+6JH3wvD/GiZMMGW/8NQdbwwuXPhnmHv5KcMQQ/7fe8b2odAZBc8OX//a+NEu564Qhhp6iDDqmCOGCafuXzl02fslmk2Ee/r5Jwr/+Oc/wuOD08fHnWz0MM1cfzsFvvzk+/DWC5+GWRab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lxMgQIAAAQIECBAgQIAAAWHaM0CAAAECBAgQIECAAAECBCoFhOlKMJcTIECAAAECBAgQIECAAAFh2jNAgAABAgQIECBAgAABAgQqBYTpSjCXEyBAgAABAgQIECBAgAABYdozQIAAAQIECBAgQIAAAQIEKgWE6UowlxMgQIAAAQIECBAgQIAAAWHaM0CAAAECBAgQIECAAAECBCoFhOlKMJcTIECAAAECBAgQIECAAAFh2jNAgAABAgQIECBAgAABAgQqBYTpSjCXEyBAgAABAgQIECBAgAABYdozQIAAAQIECBAgQIAAAQIEKgWE6UowlxMgQIAAAQIECBAgQIAAAWHaM0CAAAECBAgQIECAAAECBCoFhOlKMJcTIECAAAECBAgQIECAAAFh2jNAgAABAgQIECBAgAABAgQqBYTpSjCXEyBAgAABAgQIECBAgAABYdozQIAAAQIECBAgQIAAAQIEKgWE6UowlxMgQIAAAQIECBAgQIAAAWHaM0CAAAECBAgQIECAAAECBCoFhOlKMJcTIECAAAECBAgQIECAAIH/S5jGToAAAQIECBAgQIAAAQIEehI4d26l1lx0blZWujIXLSb2lT/oQgIECBAgQIAAAQIECBAgcAEIrBiRhekLoC99RQIECBAgQIAAAQIECBBoJCBMN4JWDQECBAgQIECAAAECBAj0I/A/CdP98GgJAQIECBAgQIAAAQIECBDYtkDdNO9tV+ODBAgQIECAAAECBAgQIECgHwFhup++1BICBAgQIECAAAECBAgQaCQgTDeCVg0BAgQIECBAgAABAgQI9CMgTPfTl1pCgAABAgQIECBAgAABAo0EhOlG0KohQIAAAQIECBAgQIAAgX4EhOl++lJLCBAgQIAAAQIECBAgQKCRgDDdCFo1BAgQIECAAAECBAgQINCPgDDdT19qCQECBAgQIECAAAECBAg0EhCmG0GrhgABAgQIECBAgAABAgT6ERCm++lLLSFAgAABAgQIECBAgACBRgLCdCNo1RAgQIAAAQIECBAgQIBAPwLCdD99qSUECBAgQIAAAQIECBAg0EhAmG4ErRoCBAgQIECAAAECBAgQ6EdAmO6nL7WEAAECBAgQIECAAAECBBoJCNONoFVDgAABAgQIECBAgAABAv0ICNP99KWWECBAgAABAgQIECBAgEAjAWG6EbRqCBAgQIAAAQIECBAgQKAfAWG6n77UEgIECBAgQIAAAQIECBBoJCBMN4JWDQECBAgQIECAAAECBAj0IyBM99OXWkKAAAECBAgQIECAAAECjQSE6UbQqiFAgAABAgQIECBAgACBfgSE6X76UksIECBAgAABAgQIECBAoJGAMN0IWjUECBAgQIAAAQIECBAg0I+AMN1PX2oJAQIECBAgQIAAAQIECDQSEKYbQauGAAECBAgQIECAAAECBPoREKb76UstIUCAAAECBAgQIECAAIFGAsJ0I2jVECBAgAABAgQIECBAgEA/AsJ0P32pJQQIECBAgAABAgQIECDQSECYbgStGgIECBAgQIAAAQIECBDoR0CY7qcvtYQAAQIECBAgQIAAAQIEGgkI042gVUOAAAECBAgQIECAAAEC/QgI0/30pZYQIECAAAECBAgQIECAQCMBYboRtGoIECBAgAABAgQIECBAoB8BYbqfvtQSAgQIECBAgAABAgQIEGgkIEw3glYNAQIECBAgQIAAAQIECPQjIEz305daQoAAAQIECBAgQIAAAQKNBITpRtCqIUCAAAECBAgQIECAAIF+BITpfvpSSwgQIECAAAECBAgQIECgkYAw3QhaNQQIECBAgAABAgQIECDQj4Aw3U9fagkBAgQIECBAgAABAgQINBIQphtBq4YAAQIECBAgQIAAAQIE+hEQpvvpSy0hQIAAAQIECBAgQIAAgUYCwnQjaNUQIECAAAECBAgQIECAQD8CwnQ/faklBAgQIECAAAECBAgQINBIQJhuBK0aAgQIECBAgAABAgQIEOhHQJjupy+1hAABAgQIECBAgAABAgQaCQjTjaBVQ4AAAQIECBAgQIAAAQL9CAjT/fSllhAgQIAAAQIECBAgQIBAIwFhuhG0aggQIECAAAECBAgQIECgHwFhup++1BICBAgQIECAAAECBAgQaCQgTDeCVg0BAgQIECBAgAABAgQI9CMgTPfTl1pCgAABAgQIECBAgAABAo0EhOlG0KohQIAAAQIECBAgQIAAgX4EhOl++lJLCBAgQIAAAQIECBAgQKCRgDDdCFo1BAgQIECAAAECBAgQINCPgDDdT19qCQECBAgQIECAAAECBAg0EhCmG0GrhgABAgQIECBAgAABAgT6ERCm++lLLSFAgAABAgQIECBAgACBRgLCdCNo1RAgQIAAAQIECBAgQIBAPwLCdD99qSUECBAgQIAAAQIECBAg0EhAmG4ErRoCBAgQIECAAAECBAgQ6EdAmO6nL7WEAAECBAgQIECAAAECBBoJCNONoFVDgAABAgQIECBAgAABAv0ICNP99KWWECBAgAABAgQIECBAgEAjAWG6EbRqCBAgQIAAAQIECBAgQKAfgX8Dmi66otH8dtkAAAAASUVORK5CYII=", "text/plain": [ "" ] }, "execution_count": 167, "metadata": {}, "output_type": "execute_result" } ], "source": [ "Image(gui_driver.get_screenshot_as_png())" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Further invocations of `fuzz()` will further cover the model – for instance, exploring the terms and conditions." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "fragment" } }, "source": [ "Internally, `GUIFuzzer` and `GUICoverageFuzzer` use a subclass `GUIGrammarMiner` which implements the analysis of the GUI and all its states. Subclassing `GUIGrammarMiner` allows extending the interpretation of GUIs; the `GUIFuzzer` constructor allows passing a miner via the `miner` keyword parameter." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "A tool like `GUICoverageFuzzer` will provide \"deep\" exploration of user interfaces, even filling out forms to explore what is behind them. Keep in mind, though, that `GUICoverageFuzzer` is experimental: It only supports a subset of HTML form and link features, and does not take JavaScript into account." ] }, { "cell_type": "code", "execution_count": 168, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:30.695879Z", "iopub.status.busy": "2025-01-16T10:13:30.695757Z", "iopub.status.idle": "2025-01-16T10:13:30.698164Z", "shell.execute_reply": "2025-01-16T10:13:30.697609Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "# ignore\n", "from ClassDiagram import display_class_hierarchy\n", "from Fuzzer import Fuzzer, Runner\n", "from Grammars import Grammar, Expansion\n", "from GrammarFuzzer import GrammarFuzzer, DerivationTree" ] }, { "cell_type": "code", "execution_count": 169, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:30.700144Z", "iopub.status.busy": "2025-01-16T10:13:30.700006Z", "iopub.status.idle": "2025-01-16T10:13:31.725197Z", "shell.execute_reply": "2025-01-16T10:13:31.724739Z" }, "slideshow": { "slide_type": "subslide" } }, "outputs": [ { "data": { "image/svg+xml": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIFuzzer\n", "\n", "\n", "GUIFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "restart()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "fsm_last_state_symbol()\n", "\n", "\n", "\n", "fsm_path()\n", "\n", "\n", "\n", "set_grammar()\n", "\n", "\n", "\n", "update_existing_state()\n", "\n", "\n", "\n", "update_new_state()\n", "\n", "\n", "\n", "update_state()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GrammarFuzzer\n", "\n", "\n", "GrammarFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "fuzz()\n", "\n", "\n", "\n", "fuzz_tree()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIFuzzer->GrammarFuzzer\n", "\n", "\n", "\n", "\n", "\n", "Fuzzer\n", "\n", "\n", "Fuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "fuzz()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "runs()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GrammarFuzzer->Fuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer\n", "\n", "\n", "GUICoverageFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "explore_all()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer->GUIFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GrammarCoverageFuzzer\n", "\n", "\n", "GrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer->GrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "SimpleGrammarCoverageFuzzer\n", "\n", "\n", "SimpleGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GrammarCoverageFuzzer->SimpleGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "TrackingGrammarCoverageFuzzer\n", "\n", "\n", "TrackingGrammarCoverageFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "SimpleGrammarCoverageFuzzer->TrackingGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "TrackingGrammarCoverageFuzzer->GrammarFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUIRunner\n", "\n", "\n", "GUIRunner\n", "\n", "\n", "\n", "DELAY_AFTER_CHECK\n", "\n", "\n", "\n", "DELAY_AFTER_CLICK\n", "\n", "\n", "\n", "DELAY_AFTER_FILL\n", "\n", "\n", "\n", "DELAY_AFTER_SUBMIT\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "do_check()\n", "\n", "\n", "\n", "do_click()\n", "\n", "\n", "\n", "do_fill()\n", "\n", "\n", "\n", "do_submit()\n", "\n", "\n", "\n", "find_element()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Runner\n", "\n", "\n", "Runner\n", "\n", "\n", "\n", "FAIL\n", "\n", "\n", "\n", "PASS\n", "\n", "\n", "\n", "UNRESOLVED\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIRunner->Runner\n", "\n", "\n", "\n", "\n", "\n", "GUIGrammarMiner\n", "\n", "\n", "GUIGrammarMiner\n", "\n", "\n", "\n", "FINAL_STATE\n", "\n", "\n", "\n", "GUI_GRAMMAR\n", "\n", "\n", "\n", "START_STATE\n", "\n", "\n", "\n", "UNEXPLORED_STATE\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "follow_link()\n", "\n", "\n", "\n", "mine_a_element_actions()\n", "\n", "\n", "\n", "mine_button_element_actions()\n", "\n", "\n", "\n", "mine_input_element_actions()\n", "\n", "\n", "\n", "mine_state_actions()\n", "\n", "\n", "\n", "mine_state_grammar()\n", "\n", "\n", "\n", "new_state_symbol()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Legend\n", "Legend\n", "• \n", "public_method()\n", "• \n", "private_method()\n", "• \n", "overloaded_method()\n", "Hover over names to see doc\n", "\n", "\n", "\n" ], "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIFuzzer\n", "\n", "\n", "GUIFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "restart()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "fsm_last_state_symbol()\n", "\n", "\n", "\n", "fsm_path()\n", "\n", "\n", "\n", "set_grammar()\n", "\n", "\n", "\n", "update_existing_state()\n", "\n", "\n", "\n", "update_new_state()\n", "\n", "\n", "\n", "update_state()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GrammarFuzzer\n", "\n", "\n", "GrammarFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "fuzz()\n", "\n", "\n", "\n", "fuzz_tree()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIFuzzer->GrammarFuzzer\n", "\n", "\n", "\n", "\n", "\n", "Fuzzer\n", "\n", "\n", "Fuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "fuzz()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "runs()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GrammarFuzzer->Fuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer\n", "\n", "\n", "GUICoverageFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "explore_all()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer->GUIFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GrammarCoverageFuzzer\n", "\n", "\n", "GrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUICoverageFuzzer->GrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "SimpleGrammarCoverageFuzzer\n", "\n", "\n", "SimpleGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GrammarCoverageFuzzer->SimpleGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "TrackingGrammarCoverageFuzzer\n", "\n", "\n", "TrackingGrammarCoverageFuzzer\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "SimpleGrammarCoverageFuzzer->TrackingGrammarCoverageFuzzer\n", "\n", "\n", "\n", "\n", "\n", "TrackingGrammarCoverageFuzzer->GrammarFuzzer\n", "\n", "\n", "\n", "\n", "\n", "GUIRunner\n", "\n", "\n", "GUIRunner\n", "\n", "\n", "\n", "DELAY_AFTER_CHECK\n", "\n", "\n", "\n", "DELAY_AFTER_CLICK\n", "\n", "\n", "\n", "DELAY_AFTER_FILL\n", "\n", "\n", "\n", "DELAY_AFTER_SUBMIT\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "do_check()\n", "\n", "\n", "\n", "do_click()\n", "\n", "\n", "\n", "do_fill()\n", "\n", "\n", "\n", "do_submit()\n", "\n", "\n", "\n", "find_element()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Runner\n", "\n", "\n", "Runner\n", "\n", "\n", "\n", "FAIL\n", "\n", "\n", "\n", "PASS\n", "\n", "\n", "\n", "UNRESOLVED\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "run()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "GUIRunner->Runner\n", "\n", "\n", "\n", "\n", "\n", "GUIGrammarMiner\n", "\n", "\n", "GUIGrammarMiner\n", "\n", "\n", "\n", "FINAL_STATE\n", "\n", "\n", "\n", "GUI_GRAMMAR\n", "\n", "\n", "\n", "START_STATE\n", "\n", "\n", "\n", "UNEXPLORED_STATE\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "__init__()\n", "\n", "\n", "\n", "follow_link()\n", "\n", "\n", "\n", "mine_a_element_actions()\n", "\n", "\n", "\n", "mine_button_element_actions()\n", "\n", "\n", "\n", "mine_input_element_actions()\n", "\n", "\n", "\n", "mine_state_actions()\n", "\n", "\n", "\n", "mine_state_grammar()\n", "\n", "\n", "\n", "new_state_symbol()\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "Legend\n", "Legend\n", "• \n", "public_method()\n", "• \n", "private_method()\n", "• \n", "overloaded_method()\n", "Hover over names to see doc\n", "\n", "\n", "\n" ], "text/plain": [ "" ] }, "execution_count": 169, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# ignore\n", "display_class_hierarchy([GUIFuzzer, GUICoverageFuzzer,\n", " GUIRunner, GUIGrammarMiner],\n", " public_methods=[\n", " Fuzzer.__init__,\n", " Fuzzer.fuzz,\n", " Fuzzer.run,\n", " Fuzzer.runs,\n", " Runner.__init__,\n", " Runner.run,\n", " GUIRunner.__init__,\n", " GUIRunner.run,\n", " GrammarFuzzer.__init__,\n", " GrammarFuzzer.fuzz,\n", " GrammarFuzzer.fuzz_tree,\n", " GUIFuzzer.__init__,\n", " GUIFuzzer.restart,\n", " GUIFuzzer.run,\n", " GUIGrammarMiner.__init__,\n", " GrammarCoverageFuzzer.__init__,\n", " GUICoverageFuzzer.__init__,\n", " GUICoverageFuzzer.explore_all,\n", " ],\n", " types={\n", " 'DerivationTree': DerivationTree,\n", " 'Expansion': Expansion,\n", " 'Grammar': Grammar\n", " },\n", " project='fuzzingbook')" ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": true, "run_control": { "read_only": false }, "slideshow": { "slide_type": "slide" } }, "source": [ "## Lessons Learned\n", "\n", "* _Selenium_ is a powerful framework for interacting with user interfaces, especially Web-based user interfaces.\n", "* A _finite state model_ can encode user interface states and transitions.\n", "* Encoding user interface models into a _grammar_ integrates generating text (for forms) and generating user interactions (for navigating)\n", "* To systematically explore a user interface, cover all _state transitions_, which is equivalent to covering all _expansion alternatives_ in the equivalent grammar." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "We are done, so we clean up. We shut down our Web server, quit the Web driver (and the associated browser), and finally clean up temporary files left by Selenium." ] }, { "cell_type": "code", "execution_count": 170, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:31.727772Z", "iopub.status.busy": "2025-01-16T10:13:31.727618Z", "iopub.status.idle": "2025-01-16T10:13:31.730085Z", "shell.execute_reply": "2025-01-16T10:13:31.729651Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "httpd_process.terminate()" ] }, { "cell_type": "code", "execution_count": 171, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:31.732169Z", "iopub.status.busy": "2025-01-16T10:13:31.731883Z", "iopub.status.idle": "2025-01-16T10:13:32.339358Z", "shell.execute_reply": "2025-01-16T10:13:32.339068Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "gui_driver.quit()" ] }, { "cell_type": "code", "execution_count": 172, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:32.341548Z", "iopub.status.busy": "2025-01-16T10:13:32.341380Z", "iopub.status.idle": "2025-01-16T10:13:32.343357Z", "shell.execute_reply": "2025-01-16T10:13:32.343026Z" }, "slideshow": { "slide_type": "skip" } }, "outputs": [], "source": [ "import os" ] }, { "cell_type": "code", "execution_count": 173, "metadata": { "execution": { "iopub.execute_input": "2025-01-16T10:13:32.345126Z", "iopub.status.busy": "2025-01-16T10:13:32.344989Z", "iopub.status.idle": "2025-01-16T10:13:32.347169Z", "shell.execute_reply": "2025-01-16T10:13:32.346860Z" }, "slideshow": { "slide_type": "fragment" } }, "outputs": [], "source": [ "for temp_file in [ORDERS_DB, \"geckodriver.log\", \"ghostdriver.log\"]:\n", " if os.path.exists(temp_file):\n", " os.remove(temp_file)" ] }, { "cell_type": "markdown", "metadata": { "button": false, "new_sheet": false, "run_control": { "read_only": false }, "slideshow": { "slide_type": "slide" } }, "source": [ "## Next Steps\n", "\n", "From here, you can learn how to\n", "\n", "* [fuzz in the large](FuzzingInTheLarge.ipynb). running a myriad of fuzzers on the same system" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Background\n", "\n", "Automatic testing of graphical user interfaces is a rich field – in research as in practice.\n", "\n", "Coverage criteria for GUIs as well as how to achieve them were first discussed in \\cite{Memon2001}. Memon also introduced the concept of *GUI Ripping* \\cite{Memon2003} – the process in which the software's GUI is automatically traversed by interacting with all its user interface elements.\n", "\n", "The CrawlJax tool \\cite{Mesbah2012} uses dynamic state changes in Web user interfaces to identify candidate elements to interact with. As our approach above, it uses the set of interactable user interface elements as a state in a finite-state model.\n", "\n", "The [Alex framework](https://learnlib.github.io/alex/) uses a similar approach to learn automata for web applications. Starting from a set of test inputs, it produces a mixed-mode behavioral model of the application." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "slide" } }, "source": [ "## Exercises\n", "\n", "As powerful as our GUI fuzzer is at this point, there are still several possibilities left for further optimization and extension. Here are some ideas to get you started. Enjoy user interface fuzzing!" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 1: Stay in Local State\n", "\n", "Rather than having each `run()` start at the very beginning, have the miner start from the current state and explore states reachable from there." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 2: Going Back\n", "\n", "Make use of the web driver `back()` method and go back to an earlier state, from which we could again start exploration. (Note that a \"back\" functionality may not be available on non-Web user interfaces.)" ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 3: Avoiding Bad Form Values\n", "\n", "Detect that some form values are _invalid_, such that the miner does not produce them again." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 4: Saving Form Values\n", "\n", "Save _successful_ form values, such that the tester does not have to infer them again and again." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 5: Same Names, Same States\n", "\n", "When the miner finds a link with a name it has already seen, it is likely to lead to a state already seen, too; therefore, one could give its exploration a lower priority." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 6: Combinatorial Coverage\n", "\n", "Extend the grammar miner such that for every boolean value, there is a separate value to be covered." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 7: Implicit Delays\n", "\n", "Rather than using _explicit_ (given) delays, use _implicit_ delays and wait for specific elements to appear. these elements could stem from previous explorations of the state." ] }, { "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 8: Oracles\n", "\n", "Extend the grammar miner such that it also produces _oracles_ – for instance, checking for the presence of specific UI elements." ] }, { "attachments": {}, "cell_type": "markdown", "metadata": { "slideshow": { "slide_type": "subslide" } }, "source": [ "### Exercise 9: More UI Elements\n", "\n", "Run the miner on a website of your choice. Find out which other types of user interface elements and actions need to be supported." ] } ], "metadata": { "ipub": { "bibliography": "fuzzingbook.bib", "toc": true }, "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.8" }, "toc": { "base_numbering": 1, "nav_menu": {}, "number_sections": true, "sideBar": true, "skip_h1_title": true, "title_cell": "", "title_sidebar": "Contents", "toc_cell": false, "toc_position": {}, "toc_section_display": true, "toc_window_display": true }, "toc-autonumbering": false, "vscode": { "interpreter": { "hash": "4185989cf89c47c310c2629adcadd634093b57a2c49dffb5ae8d0d14fa302f2b" } } }, "nbformat": 4, "nbformat_minor": 4 }