{ "cells": [ { "metadata": {}, "cell_type": "markdown", "source": "# Generuj zestaw zadań", "id": "e6685f821bf3b135" }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Wskazówka\n", ":class: tip\n", "\n", "[![Binder](https://mybinder.org/badge_logo.svg)](https://mybinder.org/v2/gh/DyonOylloug/generator_zadan/HEAD?labpath=docs%2Fgeneruj_zestaw.ipynb) <- interaktywna sesja notebooka\n", "\n", "```" ], "id": "ca8a7b6043e294a0" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-07T19:34:56.878144Z", "start_time": "2024-12-07T19:34:54.040347Z" } }, "cell_type": "code", "source": [ "import os\n", "import sys\n", "from random import choice\n", "\n", "import ipywidgets as widgets\n", "from IPython.display import display, Image, Markdown, Latex\n", "from pdf2image import convert_from_path\n", "\n", "import generator_zadan.generatory as gz\n", "\n", "print(gz.__version__)" ], "id": "e09fa3157fc76075", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "0.2.9\n" ] } ], "execution_count": 1 }, { "metadata": {}, "cell_type": "markdown", "source": [ "---\n", "\n", "## Wybierz zadania\n" ], "id": "c7b6887d61c3d313" }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Wskazówka\n", ":class: tip\n", "> - Można komórki uruchamiać wielokrotnie. Aż się trafi ciekawszy przykład.\n", "> - Można zmieniać parametry funkcji generujących.\n", "> - Zmień __`zadanie_nr`__ na odpowiednio rozróżnialne __`zadanie_1`__, __`zadanie_2`__ itp. Tylko te będą potem przekazywane do funkcji generującej zestaw. Domyślnie pięć zadań. Można to zmienić niżej przy wywołaniu funkcji ***generuj_LaTeX()***.\n", "> - Na potrzeby dokumentacji na początku numery ustawione ma pierwszych pięć przykładów. \n", "\n", "```" ], "id": "92a5e20e31055a8b" }, { "metadata": {}, "cell_type": "markdown", "source": "### Liczby zespolone", "id": "200f7a6af031672a" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie liniowe", "id": "6d953d959dd85432" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T19:41:17.742137Z", "start_time": "2024-11-27T19:41:14.207617Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rownanie_liniowe()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\n')[2] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_1 = zadanie" ], "id": "5449b3729c720f05", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwiązać równanie w zbiorze liczb zespolonych. Sprawdzić rozwiązanie." }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\t\\left(8 - 4i\\right)z = 6 - 2i+\\left(6 - 5i\\right)z$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$z=2 - 2i.$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 2 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie kwadratowe", "id": "a2a3c96cb612544a" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T19:41:28.123984Z", "start_time": "2024-11-27T19:41:27.669763Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rownanie_kwadratowe()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\n')[2] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_2 = zadanie" ], "id": "63ea204b35f34245", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwiązać równanie w zbiorze liczb zespolonych. Sprawdzić jedno z rozwiązań." }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\t\\left(1 - i\\right)z^2 + \\left(1 - 11 i\\right) z + \\left(-12 - 16 i\\right)=0$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\Delta = -8-6i, \\quad \\sqrt{\\Delta}=\\pm( 1 - 3 i), \\quad z_{1}=-4 + 3 i, \\quad z_{2}=-2 + 2 i$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 4 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Pierwiastek zespolony", "id": "33923be2cec66dd9" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-26T20:59:26.215822Z", "start_time": "2024-11-26T20:59:23.297300Z" } }, "cell_type": "code", "source": [ "zadanie = gz.pierwiastek_zespolony(stopien=choice([3, 4]), nr_zadania=1234)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "temp = zadanie[1].split('\\n\\t')[2] + zadanie[1].split('\\n\\t')[5][4:]\n", "display(Latex(f'$${temp}$$'))\n", "display(Markdown(f'![](./pics//rozklad_pierwiastkow1234.png)'))\n", "print(\"\\033[32m*\\033[0m\" * 95)\n", "zadanie_3 = zadanie" ], "id": "9474837fa71f3d66", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć wszystkie zadane pierwiastki zespolone i zaznaczyć je na płaszczyźnie zespolonej" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\t\\sqrt[\\leftroot{2}\\uproot{-4} \\displaystyle ^{3}]{\\left(-1 + \\sqrt{3} i \\right) \\left(\\frac{27 \\sqrt{3}}{4} - \\frac{27 i}{4} \\right)}\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\sqrt[\\leftroot{2}\\uproot{-4} \\displaystyle ^{3}]{27 i}=\\left\\{ - 3 i, \\ - \\frac{3 \\sqrt{3}}{2} + \\frac{3 i}{2}, \\ \\frac{3 \\sqrt{3}}{2} + \\frac{3 i}{2}\\right\\}.$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "![](./pics//rozklad_pierwiastkow1234.png)" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\n" ] } ], "execution_count": 27 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie zespolone ze sprzężeniem", "id": "fafbf5e0aaf89dd3" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T10:45:53.402262Z", "start_time": "2024-11-27T10:45:53.134039Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rownanie_ze_sprzezeniem(calkowite=choice([False, True]), kwadratowe=choice([False, True]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\n')[2] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "rozwiazanie = zadanie[1].replace('$ \\\\\\\\ \\n$', ' $ ').replace('$\\\\\\\\\\n$', ' $ ').replace('$ \\\\\\\\\\n$', ' $ ').split('$')\n", "for i in range(1, len(rozwiazanie) - 1):\n", " display(Latex('$$' + rozwiazanie[i] + '$$'))\n", "zadanie_2 = zadanie" ], "id": "fed64507b29eaad3", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwiązać równanie w zbiorze liczb zespolonych" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\tz \\left(1 - 4 i\\right) + \\left(-1 - 5 i\\right) \\overline{z} + 2 + 5 i = 0$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left(-1 - 5 i\\right) \\left(x - i y\\right) + \\left(1 - 4 i\\right) \\left(x + i y\\right) + 2 + 5 i = 0, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ - i \\left(9 x + y \\left(-2 - i\\right) - 5 + 2 i\\right) = 0, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left\\{\n\t\\begin{array}{c}\n\t\t2 - y = 0\\\\\n\t\t- 9 x + 2 y + 5 = 0\n\t\\end{array}\n\\right. $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ z = \\left\\{ x : 1, \\ y : 2\\right\\}.$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 7 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Obszar zespolony", "id": "ca38ed1076be1123" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-27T17:21:57.399281Z", "start_time": "2024-09-27T17:21:54.113823Z" } }, "cell_type": "code", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Zaznaczyć na płaszczyźnie zespolonej obszar spełniający warunek" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\t\\left|z-2 - 2 i\\right| \\geq 3\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\begin{gather*}\n\t\t\\left(x - 2\\right)^{2} + \\left(y - 2\\right)^{2}\\geq9\n\t\\end{gather*}$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "![](./pics//obszar0.png)" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 2, "source": [ "zadanie = gz.obszar_zespolony(typ=choice([1, 2, 3, 4, 5]), nr_zadania=1234)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$$\\\\begin{gather*}' + zadanie[1].split('{gather*}')[1] + '{gather*}$$'))\n", "display(Markdown(f'![](./pics//obszar1234.png)'))\n", "zadanie_4 = zadanie" ], "id": "ce45879c406a855" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Działania w różnych postaciach", "id": "113481fd48b1f3d8" }, { "metadata": { "ExecuteTime": { "end_time": "2024-10-27T18:06:09.365363Z", "start_time": "2024-10-27T18:05:22.728712Z" } }, "cell_type": "code", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\frac{\\left(2 - 2 i\\right)\\left(3 + 3 i\\right)}{4 - \\frac{4 \\sqrt{3} i}{3}} + \\frac{2\\left(\\cos\\left(\\frac{5 \\pi}{3}\\right) + i \\, \\sin\\left(\\frac{5 \\pi}{3}\\right)\\right)\\cdot 3\\left(\\cos\\left(- \\frac{14 \\pi}{3}\\right) + i \\, \\sin\\left(- \\frac{14 \\pi}{3}\\right)\\right)}{4\\left(\\cos\\left(- \\frac{5 \\pi}{3}\\right) + i \\, \\sin\\left(- \\frac{5 \\pi}{3}\\right)\\right)} - \\frac{4\\,e^{- 3 \\pi\\, i}\\cdot 5\\,e^{2 \\pi\\, i}}{5\\,e^{- \\frac{13 \\pi}{3}\\, i}}. $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wynik zapisać w postaci algebraicznej, trygonometrycznej i wykładniczej." }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\n", "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\frac{7}{2} + \\frac{7 \\sqrt{3} i}{2}, \\qquad 7 \\left(\\cos\\left(\\frac{\\pi}{3}\\right) + i\\,\\sin\\left(\\frac{\\pi}{3}\\right)\\right), \\qquad 7 e^{\\frac{\\pi}{3}\\,i}$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\u001B[32m*\u001B[0m\n" ] } ], "execution_count": 4, "source": [ "zadanie = gz.dzialania_zespolone()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4]))\n", "print(\"\\033[34m*\\033[0m\" * 95)\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$$' + zadanie[1].split('$')[1] + '$$'))\n", "print(\"\\033[32m*\\033[0m\" * 95)\n", "zadanie_5 = zadanie" ], "id": "d5abe39b137160cc" }, { "metadata": {}, "cell_type": "markdown", "source": "### Macierze", "id": "6e3dd4a5c695230a" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Wyznacznik", "id": "356c77f73d4e271a" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-07T19:40:24.365123Z", "start_time": "2024-12-07T19:40:24.228209Z" } }, "cell_type": "code", "source": [ "zadanie = gz.wyznacznik(wymiar=choice([4,5,6]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:30].replace('A', '*A*')))\n", "display(Latex(zadanie[0][30:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace(\"$\", \"$$\")))\n", "zadanie_nr = zadanie" ], "id": "8fff78eee3310db7", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć wyznacznik macierzy *A*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\n\t\\[\n\t\t\\textnormal{A=} \\left[\\begin{matrix}-2 & 1 & 2 & -2 & 0 & -1\\\\-1 & 0 & -2 & 3 & -2 & 1\\\\-1 & -1 & 1 & -1 & 2 & -2\\\\3 & -2 & 0 & -1 & 1 & 2\\\\2 & 1 & 1 & -2 & -2 & 1\\\\-1 & 3 & -2 & 3 & 3 & 3\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det(A)= 0$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 3 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie macierzowe", "id": "32759ff628403709" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T19:41:44.328932Z", "start_time": "2024-11-27T19:41:43.827897Z" } }, "cell_type": "code", "source": [ "print(\"\\033[34m** Zadanie **\" + '*' * 81 + '\\033[0m')\n", "zadanie = gz.rownanie_macierzowe()\n", "display(Markdown(zadanie[0].split(':')[0]))\n", "display(Latex(zadanie[0].split(':')[1]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace('$ \\\\\\\\ \\n\\t$', ',\\\\quad ').replace('$', '$$')))\n", "zadanie_3 = zadanie" ], "id": "b1c732f6ba6212e9", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ***********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwiązać równanie" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\n\t\\[\n\t\t\\left[\\begin{matrix}1 & -1 & -1 & 1 & 0\\\\-1 & 1 & 0 & 2 & 2\\end{matrix}\\right]\\cdot \n\t\t\\left[\\begin{matrix}-2 & 1 & -2 & 0 & -2\\\\-1 & 1 & -2 & 0 & 0\\end{matrix}\\right]^T + \n\t\t3X=\n\t\t\\left[\\begin{matrix}-1 & -1\\\\-1 & -1\\\\-1 & 1\\\\0 & -1\\\\0 & 1\\end{matrix}\\right]^T \\cdot\n\t\t\\left[\\begin{matrix}-1 & 0\\\\-1 & -1\\\\0 & 1\\\\0 & 1\\\\1 & -2\\end{matrix}\\right] \\cdot X\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left[\\begin{matrix}-1 & 0\\\\-1 & 2\\end{matrix}\\right] + \n\t3X=\n\t\\left[\\begin{matrix}2 & 0\\\\3 & -1\\end{matrix}\\right] \\cdot X, \\quad \n\t\\left[\\begin{matrix}-1 & 0\\\\-1 & 2\\end{matrix}\\right] = \n\t\\left[\\begin{matrix}-1 & 0\\\\3 & -4\\end{matrix}\\right] \\cdot X ,\\quad X=\\frac{1}{4}\\left[\\begin{matrix}4 & 0\\\\4 & -2\\end{matrix}\\right].$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 5 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Wyznacznik z parametrem", "id": "ae175fbb12e39851" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T19:42:16.136231Z", "start_time": "2024-11-27T19:42:16.095930Z" } }, "cell_type": "code", "source": [ "zadanie = gz.wyznacznik_parametr(wymiar=choice([2, 3, 4]), gotowiec=True)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:91].replace('\\\\ ', ' ').replace('$', '*')))\n", "display(Latex(zadanie[0][91:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace('$ \\\\\\\\ \\n\\t$', ',\\\\quad ').replace('$', '$$')))\n", "zadanie_4 = zadanie" ], "id": "d31f4b2d63b140d9", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Dla jakich rzeczywistych wartości parametru *x* wyznacznik macierzy *A* jest różny od zera?" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\n\t\\[\n\t\t\\textnormal{A=}\n\t\t\\left[\\begin{matrix}-3 & x - 2 & 1\\\\1 & 2 x + 1 & x + 1\\\\3 & 3 & 3\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det A=3 x^{2} - 21 x \\neq 0, \\quad x\\neq 0, \\ x\\neq 7, \\ $$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 11 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Macierz odwrotna z parametrem", "id": "1b8029e290f37927" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-27T19:42:40.254609Z", "start_time": "2024-11-27T19:42:36.847473Z" } }, "cell_type": "code", "source": [ "zadanie = gz.macierz_odwrotna_parametr(wymiar=choice([2, 3, 4]), gotowiec=True)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:79].replace('$', '*')))\n", "display(Latex(zadanie[0][79:].split('W')[0]))\n", "display(Markdown('W' + zadanie[0][79:].split('W')[1].replace('$', '*')))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "rozwiazanie = zadanie[1].replace('$\\\\\\\\\\n\\t$', ' $ ').split('$')\n", "for i in range(1, len(rozwiazanie) - 1):\n", " display(Latex('$$' + rozwiazanie[i] + '$$'))\n", "zadanie_5 = zadanie" ], "id": "e71af03aa056326b", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Dla jakich rzeczywistych wartości parametru *x* macierz *A* posiada odwrotność?" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\n\t\\[\n\t\t\\textnormal{A=}\\left[\\begin{matrix}x - 2 & x + 1\\\\2 & 2 x + 2\\end{matrix}\\right]\n\t\\]\n" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć macierz odwrotną dla *x=2.* " }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det A=2 x^{2} - 4 x - 6\\neq 0, \\quad \n\tx\\neq -1\\ \\textnormal{oraz} \\ x\\neq 3, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ A(2)= \\left[\\begin{matrix}0 & 3\\\\2 & 6\\end{matrix}\\right],\\ \n\t\\det A(2)=-6,\\ \n\tA^{-1}=- \\frac{1}{6}\\left[\\begin{matrix}6 & -3\\\\-2 & 0\\end{matrix}\\right].$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 14 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Wektor własne", "id": "3010127a4d59e647" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:07.970031Z", "start_time": "2024-09-25T07:25:07.912834Z" } }, "cell_type": "code", "source": [ "zadanie = gz.wartosci_wlasne(wymiar=choice([2, 3, 4]), zespolone=choice([False, True]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:51]))\n", "display(Latex(zadanie[0][51:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].split(', \\quad')[0].replace(\"$\", \"$$\")))\n", "display(Markdown(\"Wartości własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[1] + \"$$\"))\n", "display(Markdown(\"Wektory własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[3] + \"$$\"))\n", "zadanie_nr = zadanie" ], "id": "b56c24c55e327704", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć wartości własne i wektory własne macierzy" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": " \n\t\\[\n\t\t\\textnormal{A=} \\left[\\begin{matrix}1 & -1 & -1 & 3\\\\-2 & -1 & -1 & 0\\\\2 & 2 & 2 & 1\\\\0 & 3 & 3 & -1\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det\\left(\\lambda \\mathbb{I} - A \\right) = \\lambda^{4} - \\lambda^{3} - 4 \\lambda^{2} + 4 \\lambda$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wartości własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left\\{ -2 : 1, \\ 0 : 1, \\ 1 : 1, \\ 2 : 1\\right\\}, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wektory własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left[ \\left( -2, \\ 1, \\ \\left[ \\left[\\begin{matrix}- \\frac{10}{9}\\\\- \\frac{23}{18}\\\\\\frac{17}{18}\\\\1\\end{matrix}\\right]\\right]\\right), \\ \\left( 0, \\ 1, \\ \\left[ \\left[\\begin{matrix}0\\\\-1\\\\1\\\\0\\end{matrix}\\right]\\right]\\right), \\ \\left( 1, \\ 1, \\ \\left[ \\left[\\begin{matrix}\\frac{1}{2}\\\\-1\\\\1\\\\0\\end{matrix}\\right]\\right]\\right), \\ \\left( 2, \\ 1, \\ \\left[ \\left[\\begin{matrix}2\\\\- \\frac{5}{2}\\\\\\frac{7}{2}\\\\1\\end{matrix}\\right]\\right]\\right)\\right]$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 10 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Rząd macierzy", "id": "9a2a41aa10ace55f" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-27T17:22:07.955317Z", "start_time": "2024-09-27T17:22:07.932760Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rzad_macierzy()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:25].replace('A', '*A*')))\n", "display(Latex(zadanie[0][25:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace(\"$\", \"$$\")))\n", "zadanie_nr = zadanie" ], "id": "e28efaa57ef234ba", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć rząd macierzy *A*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\n\t\\[\n\t\t\\textnormal{A=} \\left[\\begin{matrix}2 & -1 & 3 & 1 & -1 & 2\\\\0 & 1 & 3 & 0 & 3 & -2\\\\3 & 1 & -1 & 1 & 0 & -2\\\\-2 & -1 & 0 & 2 & -2 & -1\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$R(A)= 4$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 3 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Diagonalizacja macierzy", "id": "3cbe73968108312b" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:08.123294Z", "start_time": "2024-09-25T07:25:08.066168Z" } }, "cell_type": "code", "source": [ "zadanie = gz.diagonalizacja_macierzy(choice([2, 3, 4]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:53]))\n", "display(Latex(zadanie[0][53:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].split(', \\quad')[0].replace(\"$\", \"$$\")))\n", "display(Markdown(\"Wartości własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[1] + \"$$\"))\n", "display(Markdown(\"Wektory własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[3] + \"$$\"))\n", "display(Markdown(\"Diagonalizacja:\"))\n", "try:\n", " display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[5]\n", " + '\\quad ' + (zadanie[1].split(', \\quad')[1]).split(\"$\")[7] + \"$$\"))\n", "except Exception:\n", " display(Markdown(\"Macierz nie jest diagonalizowalna\"))\n", "zadanie_nr = zadanie" ], "id": "6131594766ee9356", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Przeprowadzić diagonalizację macierzy (jeśli możliwa)" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": " \n\t\\[\n\t\t\\textnormal{A=} \\left[\\begin{matrix}1 & 2 & 2\\\\3 & -1 & -1\\\\-2 & 1 & 1\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det\\left(\\lambda \\mathbb{I} - A \\right) = \\lambda^{3} - \\lambda^{2} - 2 \\lambda$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wartości własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left\\{ -1 : 1, \\ 0 : 1, \\ 2 : 1\\right\\}, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wektory własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left[ \\left( -1, \\ 1, \\ \\left[ \\left[\\begin{matrix}\\frac{1}{3}\\\\- \\frac{4}{3}\\\\1\\end{matrix}\\right]\\right]\\right), \\ \\left( 0, \\ 1, \\ \\left[ \\left[\\begin{matrix}0\\\\-1\\\\1\\end{matrix}\\right]\\right]\\right), \\ \\left( 2, \\ 1, \\ \\left[ \\left[\\begin{matrix}- \\frac{4}{3}\\\\- \\frac{5}{3}\\\\1\\end{matrix}\\right]\\right]\\right)\\right]$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Diagonalizacja:" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$A = P\\,D\\,P^{-1}: \\quad P=\\left[\\begin{matrix}1 & 0 & -4\\\\-4 & -1 & -5\\\\3 & 1 & 3\\end{matrix}\\right],\\quad D=\\left[\\begin{matrix}-1 & 0 & 0\\\\0 & 0 & 0\\\\0 & 0 & 2\\end{matrix}\\right]$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 12 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Diagonalizacja z wielokrotnymi wartościami własnymi ", "id": "1131aa71c7f9c14" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:12.520478Z", "start_time": "2024-09-25T07:25:08.179473Z" } }, "cell_type": "code", "source": [ "zadanie = gz.diagonalizacja_macierzy_z_wielokrotnym_wartosciami_wlasnymi(choice([2, 3, 4]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0][:39]))\n", "display(Latex(zadanie[0][39:]))\n", "print(\"\\033[34m*\\033[0m\" * 95)\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].split(', \\quad')[0].replace(\"$\", \"$$\")))\n", "display(Markdown(\"Wartości własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[1] + \"$$\"))\n", "display(Markdown(\"Wektory własne\"))\n", "display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[3] + \"$$\"))\n", "display(Markdown(\"Diagonalizacja:\"))\n", "try:\n", " display(Latex(\"$$\" + (zadanie[1].split(', \\quad')[1]).split(\"$\")[5]\n", " + '\\quad ' + (zadanie[1].split(', \\quad')[1]).split(\"$\")[7] + \"$$\"))\n", "except Exception:\n", " display(Markdown(\"Macierz nie jest diagonalizowalna\"))\n", "zadanie_nr = zadanie" ], "id": "7a582c07dd4eb72", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Przeprowadzić diagonalizację macierzy\n\t" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "\\[\n\t\t\\textnormal{A=} \\left[\\begin{matrix}-2 & 2 & 0\\\\0 & 3 & 0\\\\0 & 0 & -2\\end{matrix}\\right]\n\t\\]" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\u001B[34m*\u001B[0m\n", "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det\\left(\\lambda \\mathbb{I} - A \\right) = \\lambda^{3} + \\lambda^{2} - 8 \\lambda - 12$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wartości własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left\\{ -2 : 2, \\ 3 : 1\\right\\}, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wektory własne" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left[ \\left( -2, \\ 2, \\ \\left[ \\left[\\begin{matrix}1\\\\0\\\\0\\end{matrix}\\right], \\ \\left[\\begin{matrix}0\\\\0\\\\1\\end{matrix}\\right]\\right]\\right), \\ \\left( 3, \\ 1, \\ \\left[ \\left[\\begin{matrix}\\frac{2}{5}\\\\1\\\\0\\end{matrix}\\right]\\right]\\right)\\right]$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Diagonalizacja:" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$A = P\\,D\\,P^{-1}: \\quad P=\\left[\\begin{matrix}1 & 0 & 2\\\\0 & 0 & 5\\\\0 & 1 & 0\\end{matrix}\\right],\\quad D=\\left[\\begin{matrix}-2 & 0 & 0\\\\0 & -2 & 0\\\\0 & 0 & 3\\end{matrix}\\right]$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 13 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Regresja", "id": "ce81fcf42d5351c1" }, { "metadata": { "ExecuteTime": { "end_time": "2024-11-27T10:46:27.918077Z", "start_time": "2024-11-27T10:46:27.181939Z" } }, "cell_type": "code", "source": [ "zadanie = gz.regresja(stopien=1, nr_zadania=1234)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\', '')))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "temp = zadanie[1].split('_L')[0].split('[\\n\\t\\t')[1] + '_L'\n", "display(Latex(f'$${temp}$$'))\n", "display(Latex(f\"$${zadanie[1].split('_L')[1][12:].split('raisebox')[0][:-11]}$$\"))\n", "display(Markdown(f'![](./pics//regresja1234.png)'))\n", "zadanie_5 = zadanie" ], "id": "a523f49d5f83434c", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć prostą regresji dla punktów " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\t(-5,0),\\ (2,3),\\ (1,1),\\ (-4,-2),\\ (-2,-1).\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left[\\begin{matrix}-5 & 1\\\\2 & 1\\\\1 & 1\\\\-4 & 1\\\\-2 & 1\\end{matrix}\\right]\n\t\t\\cdot \\left[\\begin{matrix} a \\\\ b \\end{matrix}\\right]\n\t\t\\simeq \\left[\\begin{matrix}0\\\\3\\\\1\\\\-2\\\\-1\\end{matrix}\\right]\n\t\t\\quad \\Biggm/ \\cdot \\left(\\left(A^T A \\right)^{-1} A^T \\right)_L$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left[\\begin{matrix} a \\\\ b \\end{matrix}\\right] = \n\t\t \\left[\\begin{matrix} \\frac{1}{2} \\\\ 1 \\end{matrix}\\right]$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "![](./pics//regresja1234.png)" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 10 }, { "metadata": {}, "cell_type": "markdown", "source": "### Układy równań liniowych", "id": "ed041be275eb03d8" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Układ Cramera", "id": "49a1746cae7c7adf" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.167544Z", "start_time": "2024-09-25T07:25:12.533207Z" } }, "cell_type": "code", "source": [ "zadanie = gz.uklad_Cramera(choice([2, 3, 4, 5]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].split('$')[0] +\n", " '*' + zadanie[0].split('$')[1].split('$')[0] + '*'))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace('$ \\\\\\\\ \\n\\t$', ',\\\\quad ').replace('$', '$$')))\n", "zadanie_nr = zadanie" ], "id": "fb9db48fec4f734a", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Z układu równań wyznaczyć niewiadomą *u*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\t\\left\\{\n\t\t\t\\begin{matrix}\n\t\t\t\tt + 3 x + y + 2 z = 3 \\\\ \n\t\t\t\t- 3 u - 2 y + z = -1 \\\\ \n\t\t\t\t- 2 t - u - y + 3 z = 1 \\\\ \n\t\t\t\t3 t - u + 2 x - 2 y - 3 z = -3 \\\\ \n\t\t\t\t4 t - u + 3 x + 2 y - z = 2 \\\\ \n\t\t\t\\end{matrix}\n\t\t\\right.\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\det(A) = -4,\\ \\det(A_u)=-4,\\ u = 1$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 14 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Układ nieoznaczony", "id": "9342255bdf531150" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.343099Z", "start_time": "2024-09-25T07:25:13.179727Z" } }, "cell_type": "code", "source": [ "zadanie = gz.uklad_rownan_nieoznaczony()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0].replace('\\\\ ', ' ')))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].replace('$ \\\\\\\\ \\n\\t$', ',\\\\quad ').replace('$', '$$')))\n", "zadanie_nr = zadanie" ], "id": "1edae10760f2a91c", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwiązać układ równań. Jeśli możliwe podać trzy przykładowe rozwiązania. Jedno rozwiązanie sprawdzić. " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\t\\left\\{\n\t\t\t\\begin{matrix}\n\t\t\t\tt - y - z = -4 \\\\ \n\t\t\t\t3 t + x - y + 2 z = -1 \\\\ \n\t\t\t\t2 t + x + 2 z = 1 \\\\ \n\t\t\t\t- 6 t - 2 x + 2 y - 3 z = 4 \\\\ \n\t\t\t\t- 3 t - x + y - 2 z = 1 \\\\ \n\t\t\t\\end{matrix}\n\t\t\\right.\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\left\\{ t = y - 2, \\ x = 1 - 2 y, \\ z = 2\\right\\}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 15 }, { "metadata": {}, "cell_type": "markdown", "source": "### Geometria analityczna", "id": "475145fc6380a639" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie prostej", "id": "7bfeb0581947fc1f" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.684415Z", "start_time": "2024-09-25T07:25:13.355030Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rownanie_prostej()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[6]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_nr = zadanie" ], "id": "7e85d20973ad3dfb", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć równanie prostej przechodzącej przez punkty" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP_1 = (5, 1, 4), \\quad P_2 = (5, 3, 5).$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć odległość wyznaczonej prostej od punktu" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP_3 = (1, 5, 1).$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$l\\colon \\frac{x - 5}{0}= \\frac{y - 1}{2}= \\frac{z - 4}{1}; \\qquad d(P_3,l) = 6$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 16 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Równanie płaszczyzny", "id": "986d67807361e2e0" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.847310Z", "start_time": "2024-09-25T07:25:13.695031Z" } }, "cell_type": "code", "source": [ "zadanie = gz.rownanie_plaszczyzny()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[6]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_nr = zadanie" ], "id": "afabcb0490f9eaa1", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć równanie płaszczyzny przechodzącej przez punkty" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP_1 = (-3, -2, 1), \\quad P_2 = (3, -3, -3), \\quad P_3 = (0, -2, -3).$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć odległość wyznaczonej płaszczyzny od punktu" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP_4 = (3, 2, 3).$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\pi\\colon 4 x + 12 y + 3 z + 33=0; \\qquad d(P_4,\\pi) = 6$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 17 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Punkty symetryczny do płaszczyzny", "id": "9e2498526fc2871d" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.909133Z", "start_time": "2024-09-25T07:25:13.860254Z" } }, "cell_type": "code", "source": [ "zadanie = gz.punkt_symetryczny_do_plaszczyzny()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[6]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown(zadanie[1].split('$')[0]))\n", "display(Latex('$$' + zadanie[1].split('$')[1] + '$$'))\n", "display(Markdown(zadanie[1].split('$')[4][2:]))\n", "display(Latex('$$' + zadanie[1].split('$')[5] + ' \\quad ' + zadanie[1].split('$')[3] + '$$'))\n", "display(Markdown(zadanie[1].split('$')[6][6:]))\n", "display(Latex('$$' + zadanie[1].split('$')[7] + '$$'))\n", "zadanie_nr = zadanie" ], "id": "96c88e82c933041d", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć punkt symetryczny do punktu" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP = (-2, -1, -1)$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "względem płaszczyzny" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\pi\\colon - x - y - z + 5 = 0.$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Prosta prostopadła: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\frac{x + 2}{-1}= \\frac{y + 1}{-1}= \\frac{z + 1}{-1}= t,$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "\\\nPunkt przecięcia to: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$P_p =(1,2,2), \\quad t_p=-3$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": " \nPunkt symetryczny to: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$P_s = (4,5,5)$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 18 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Punkty symetryczny do prostej", "id": "6e45a9ef1e15047b" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:13.962105Z", "start_time": "2024-09-25T07:25:13.928204Z" } }, "cell_type": "code", "source": [ "zadanie = gz.punkt_symetryczny_do_prostej()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[6]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown(zadanie[1].split('$')[0]))\n", "display(Latex('$$' + zadanie[1].split('$')[1].split('\\\\quad')[0] + '$$'))\n", "display(Markdown(zadanie[1].split('$')[2][8:]))\n", "display(Latex('$$' + zadanie[1].split('$')[3] + ' \\quad ' + zadanie[1].split('$')[1].split('\\quad')[1] + '$$'))\n", "display(Markdown(zadanie[1].split('$')[4][12:]))\n", "display(Latex('$$' + zadanie[1].split('$')[5] + '$$'))\n", "zadanie_nr = zadanie" ], "id": "3e0283d4a703b0ac", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć punkt symetryczny do punktu" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tP = (5, 5, 4)$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "względem prostej" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tl\\colon \\frac{x + 3}{1}= \\frac{y + 3}{1}= \\frac{z - 5}{-2}.$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Płaszczyzna prostopadła: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\pi\\colon x + y - 2 z - 2 = 0, $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Punkt przecięcia to: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$P_p =(0,0,-1), \\quad t_p=3$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Punkt symetryczny to: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$P_s = (-5,-5,-6)$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 19 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Proste skośne", "id": "eed5a4a5decccb25" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:25.595640Z", "start_time": "2024-09-25T07:25:13.973965Z" } }, "cell_type": "code", "source": [ "zadanie = gz.odleglosc_prostych_skosnych()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[3]) + '$$'))\n", "display(Markdown(zadanie[0].split('\\n\\t')[4][3:]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown('Płaszczyzna zawierająca *l2* i równoległa do *l1* to'))\n", "display(Latex('$$' + (zadanie[1].split('$')[5]) + '$$'))\n", "display(Markdown('Odległość prostych skośnych to'))\n", "display(Latex('$$' + (zadanie[1].split('$')[7]) + '$$'))\n", "display(Markdown('Punkty realizujące minimalną odległość to'))\n", "display(Latex('$$' + (zadanie[1].split('$')[9]).replace('\\\\ ', '\\qquad ') + '$$'))\n", "zadanie_nr = zadanie" ], "id": "6d4fa2126c85917f", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć odległość prostych skośnych" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tl_1\\colon \\frac{x - 3}{4}=\\frac{y - 4}{1}=\\frac{z + 1}{3}, \\quad $$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tl_2\\colon \\frac{x - 1}{4}=\\frac{y - 1}{3}=\\frac{z - 4}{5}.$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć punkty realizujące minimalną odległość." }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Płaszczyzna zawierająca *l2* i równoległa do *l1* to" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\pi\\colon - 4 x - 8 y + 8 z - 20=0$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Odległość prostych skośnych to" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$d(l_1,l_2)=6;$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Punkty realizujące minimalną odległość to" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$ P_3=(1,\\frac{7}{2},- \\frac{5}{2}),\\qquad P_4=(-1,- \\frac{1}{2},\\frac{3}{2})$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 20 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Kąty w trójkącie", "id": "d9811786cfcf0e97" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:28.252646Z", "start_time": "2024-09-25T07:25:25.948310Z" } }, "cell_type": "code", "source": [ "zadanie = gz.katy_w_trojkacie(prosty=choice([False, True]), calkowite=choice([False, True]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown('Wyznaczyć miary kątów wewnętrznych trójkąta *ABC*, gdzie'))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown('Sprawdzić, czy sumują się do 180\\u00b0'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_nr = zadanie" ], "id": "139210171c77c0d", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć miary kątów wewnętrznych trójkąta *ABC*, gdzie" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tA = (2, 4, -1),\\ B = (2, -2, 3),\\ C = (2, -1, -2)$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Sprawdzić, czy sumują się do 180°" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\alpha = 45.00^{\\circ},\\ \\beta = 45.00^{\\circ},\\ \\gamma = 90.00^{\\circ}.$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 21 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Pole trójkąta", "id": "c63a611fece77618" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:28.572724Z", "start_time": "2024-09-25T07:25:28.418876Z" } }, "cell_type": "code", "source": [ "zadanie = gz.pole_trojkata(calkowite=choice([False, True]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(\n", " f'Wyznaczyć pole trójkąta *ABC* oraz długość wysokości opuszczonej z wierzchołka *{zadanie[0].split(\"ka \")[1].split(\" dla\")[0]}*' + ' dla'))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1].replace('\\\\ \\\\', '\\qquad') + '$'))\n", "zadanie_nr = zadanie" ], "id": "3a4b4aec80644542", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć pole trójkąta *ABC* oraz długość wysokości opuszczonej z wierzchołka *C* dla" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tA = (2, 3, -1),\\ B = (2, 3, 1),\\ C = (-3, 3, -3)$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$P=5,\\qquad h_C=5$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 22 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Płaszczyzna styczna", "id": "af87c3f75306266f" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:29.431755Z", "start_time": "2024-09-25T07:25:28.862790Z" } }, "cell_type": "code", "source": [ "zadanie = gz.plaszczyzna_styczna()\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(\n", " f'Wyznaczyć płaszczyznę styczną do powierzchni'))\n", "display(Latex('$$' + (zadanie[0].split('$$')[1]) + '$$'))\n", "display(Markdown('w punkcie'))\n", "display(Latex('$' + zadanie[0].split('punkcie ')[1] + '$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1].replace('\\\\ \\\\', '\\qquad') + '$'))\n", "zadanie_nr = zadanie" ], "id": "1c7fe7d5a193a1ed", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć płaszczyznę styczną do powierzchni" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$f(x,y)=\\frac{\\sqrt{- 4 x^{2} + 2 y^{2}}}{- 4 x - 4 y}$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "w punkcie" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$P=(-1,-2,f(-1,-2)).$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$z = \\frac{2 x}{9} - \\frac{y}{9} + \\frac{1}{6}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 23 }, { "metadata": {}, "cell_type": "markdown", "source": "### Granice", "id": "623ec82fba5315c5" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Granice ciągów", "id": "a0979c91daf7a633" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-12-04T07:20:57.842185Z", "start_time": "2024-12-04T07:20:57.087048Z" } }, "cell_type": "code", "source": [ "zadanie = gz.granica_ciagu(typ=choice([0, 1, 2, 3]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_1 = zadanie" ], "id": "da99c8ad97058032", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć granicę" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\lim\\limits_{n \\rightarrow \\infty} \\left(\\sqrt{3 n^{2} - 2 n - 2} - \\sqrt{3 n^{2} + 2 n + 3} \\right) $$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$- \\frac{2 \\sqrt{3}}{3}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 3 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Granice funkcji", "id": "ecf81fd5ff4d1990" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-12-07T13:29:39.553616Z", "start_time": "2024-12-07T13:29:39.409620Z" } }, "cell_type": "code", "source": [ "zadanie = gz.granica_funkcji(typ=2) # typ=choice(range(12))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_2 = zadanie" ], "id": "ae2c5d9bcdff6d80", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć granicę" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\lim\\limits_{{x \\rightarrow 1^{+}}} \\frac{\\ln{\\left(x \\right)}}{\\sqrt{x^{2} - 1}} $$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$0$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 2 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Asymptoty", "id": "8222c000d2e85b21" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-07T13:29:47.519675Z", "start_time": "2024-12-07T13:29:47.168385Z" } }, "cell_type": "code", "source": [ "zadanie = zadanie = gz.asymptoty(typ=choice(range(1,11))) # typ=choice(range(1,11))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex(zadanie[1].split('\\\\\\\\')[0]))\n", "for i in range(1,len(zadanie[1].split('\\\\\\\\'))):\n", " display(Markdown((zadanie[1].split('\\\\\\\\')[i].split('$')[0])))\n", " display(Latex('$' + zadanie[1].split('\\\\\\\\')[i].split('$')[1] + '$'))\n", "zadanie_2 = zadanie" ], "id": "7257539dd7991db4", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć wszystkie asymptoty funkcji" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tf(x)= x e^{- \\frac{1}{x}}.$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$D_f\\colon \\mathbb{R} \\setminus \\left\\{0\\right\\}.$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Asymptota pionowa lewostronna w " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$x_0=0.$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Asymptota ukośna w plus i minus nieskończoności o równaniu " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$y=x - 1.$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 4 }, { "metadata": {}, "cell_type": "markdown", "source": "### Styczna i normalna", "id": "ec17e22b7ed5bfda" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-12-04T07:22:15.994106Z", "start_time": "2024-12-04T07:22:15.962698Z" } }, "cell_type": "code", "source": [ "zadanie = gz.styczna_normalna(typ=choice([1, 2]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "display(Markdown('w punkcie o współrzędnej'))\n", "display(Latex('$ x_0' + zadanie[0].split('x_0')[1]))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown('Prosta styczna: '))\n", "display(Latex('$$' + zadanie[1].split('$')[1][:-1] + '$$'))\n", "display(Markdown('Prosta normalna: '))\n", "display(Latex('$$' + zadanie[1].split('$')[3] + '$$'))\n", "zadanie_3 = zadanie" ], "id": "7bce9e2d52ee171a", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Wyznaczyć równanie stycznej i normalnej do wykresu funkcji" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tf(x) = \\sqrt{- x^{2} + 4 x - 2}$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "w punkcie o współrzędnej" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$ x_0 = 3.$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Prosta styczna: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$y = 4 - x$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Prosta normalna: " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$y = x - 2$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 14 }, { "metadata": {}, "cell_type": "markdown", "source": "### Monotonicznoźć", "id": "f53318a7df11ec88" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-12-04T07:22:59.016077Z", "start_time": "2024-12-04T07:22:58.762510Z" } }, "cell_type": "code", "source": [ "zadanie = gz.monotonicznosc(choice([1, 2, 3]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown('$$' + zadanie[1].split('$')[1] + '$$'))\n", "display(Markdown('$$' + zadanie[1].split('$')[3].split('\\\\implies')[0] + '\\\\implies' + '$$'))\n", "display(Markdown('$$' + '\\\\implies' + zadanie[1].split('$')[3].split('\\\\implies')[1] + '$$'))\n", "display(Markdown('$$' + zadanie[1].split('$')[5].split('\\\\implies')[0] + '\\\\implies' + '$$'))\n", "display(Markdown('$$' + '\\\\implies' + zadanie[1].split('$')[5].split('\\\\implies')[1] + '$$'))\n", "display(Markdown('$$' + zadanie[1].split('$')[7].replace('\\\\left\\\\{', '\\\\left\\\\lbrace').replace('\\\\right\\\\}',\n", " '\\\\right\\\\rbrace') + '$$'))\n", "zadanie_4 = zadanie" ], "id": "967f8c2facdf9ef1", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Zbadać monotoniczność i ekstrema funkcji" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\tf(x)=\\frac{- 2 x^{2} - x - 2}{3 - 2 x} $$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "$$f'(x)=\\frac{\\left(2 x - 7\\right) \\left(2 x + 1\\right)}{\\left(2 x - 3\\right)^{2}}$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$f'(x) > 0 \\textnormal{ dla: }\\frac{7}{2} < x \\vee x < - \\frac{1}{2}\\implies$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$\\implies f(x) \\textnormal{ rośnie dla } x \\in \\left( -\\infty, - \\frac{1}{2} \\right)\\textnormal{ oraz } x \\in \\left(\\frac{7}{2}, \\infty \\right)$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$f'(x) < 0 \\textnormal{ dla: }x > - \\frac{1}{2} \\wedge x < \\frac{7}{2} \\wedge x \\neq \\frac{3}{2} \\implies$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$\\implies f(x) \\textnormal{ rośnie dla } x \\in \\left(- \\frac{1}{2},\\frac{3}{2} \\right)\\textnormal{ oraz } x \\in \\left(\\frac{3}{2},\\frac{7}{2} \\right)$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$f'(x) = 0 \\textnormal{ dla } x \\in \\left\\lbrace - \\frac{1}{2}, \\ \\frac{7}{2}\\right\\rbrace \\implies f_{\\max}\\left(- \\frac{1}{2}\\right) = - \\frac{1}{2} \\textnormal{ oraz } f_{\\min}\\left(\\frac{7}{2}\\right) = \\frac{15}{2}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 21 }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:23:12.457195Z", "start_time": "2024-12-04T07:23:12.262431Z" } }, "cell_type": "code", "source": [ "zadanie_5 = gz.asymptoty(typ=6)\n", "zadanie_5" ], "id": "505d0577283ad3fc", "outputs": [ { "data": { "text/plain": [ "('Wyznaczyć wszystkie asymptoty funkcji\\n\\t\\\\[\\n\\t\\tf(x)= \\\\frac{x + 2 e^{- x}}{x + 1}.\\n\\t\\\\]\\n',\n", " '$D_f\\\\colon \\\\mathbb{R}\\\\setminus \\\\left\\\\{-1\\\\right\\\\}.$\\\\\\\\Asymptota pionowa dwustronna w $x_0=-1.$ \\\\\\\\Asymptota pozioma w plus nieskończoności o równaniu $y=1.$ ')" ] }, "execution_count": 23, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 23 }, { "metadata": {}, "cell_type": "markdown", "source": "### Całki nieoznaczone", "id": "22a53cf59d9f596c" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Przez podstawianie i przez części", "id": "fd34a60e81d26975" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:31.794074Z", "start_time": "2024-09-25T07:25:31.449629Z" } }, "cell_type": "code", "source": [ "zadanie = gz.calka_nieoznaczona(typ=choice([1, 2, 3, 4]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$$' + zadanie[1].split('=')[1] + '$'))\n", "zadanie_nr = zadanie" ], "id": "2a9374610434009e", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć całkę" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\int \\left(- 2 x^{2} - 2 x\\right) \\cos{\\left(x \\right)} \\, dx $$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$ \\left(- 4 x - 2\\right) \\cos{\\left(x \\right)} + \\left(- 2 x^{2} - 2 x + 4\\right) \\sin{\\left(x \\right)} + C$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 28 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Wymierne", "id": "507adf6dc0c4691b" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:25:32.174775Z", "start_time": "2024-09-25T07:25:31.947726Z" } }, "cell_type": "code", "source": [ "zadanie = gz.calka_wymierna(wlasciwy=choice([False, True]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n\\t')[0]))\n", "display(Latex('$$' + (zadanie[0].split('\\n\\t')[2]) + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1] + '$'))\n", "zadanie_nr = zadanie" ], "id": "8a17fb33ba4e09e9", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć całkę" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\t\\int \\frac{- 4 x^{3} + 3 x^{2} - 8 x + 4}{x^{4} - 16} \\, dx $$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$$\\int \\left(\\frac{1 - x}{x^{2} + 4} - \\frac{2}{x + 2} - \\frac{1}{x - 2}\\right)\\,dx = - \\ln{\\left(x - 2 \\right)} - 2 \\ln{\\left(x + 2 \\right)} - \\frac{\\ln{\\left(x^{2} + 4 \\right)}}{2} + \\frac{\\arctan{\\left(\\frac{x}{2} \\right)}}{2} + C$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 29 }, { "metadata": {}, "cell_type": "markdown", "source": "### Całki oznaczone", "id": "bdc13d50b2902e9e" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Pole obszaru", "id": "51e21bece2f7f728" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-25T07:47:38.928220Z", "start_time": "2024-09-25T07:47:23.937683Z" } }, "cell_type": "code", "source": [ "zadanie = gz.pole_obszaru(typ=choice([1, 2, 3, 4, 5]))\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].replace('\\\\[', '$$').replace('\\\\]', '$$')))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Markdown(zadanie[1].replace('$', '$$').replace('\\,', '')))\n", "zadanie_nr = zadanie" ], "id": "4f82841256dee42", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie 1 **********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć pole obszaru ograniczonego wykresami krzywych\n\t$$\n\t\t f(x) = \\frac{3}{x} \\quad \\textnormal{ oraz } \\quad g(x) = - 2 x^{2} + 5 x + 4 \n\t$$\n" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Pole obszaru to $$\\int\\limits_{1/2}^{3}\\left(- 2 x^{2} + 5 x + 4 - \\frac{3}{x}\\right)dx = - 3 \\ln{\\left(3 \\right)} - 3 \\ln{\\left(2 \\right)} + \\frac{335}{24}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 38 }, { "metadata": {}, "cell_type": "markdown", "source": "### Całki podwójne", "id": "e4d748b56b9e4eca" }, { "metadata": {}, "cell_type": "markdown", "source": "#### Po trójkącie", "id": "f8e6ec693af5d42b" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-11-08T11:26:47.142749Z", "start_time": "2024-11-08T11:26:44.329018Z" } }, "cell_type": "code", "source": [ "zadanie = gz.calka_podwojna(typ=1, nr_zadania=1234)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].replace('\\\\,', '').replace('$', '*', ).replace('**', '$$', 2)))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "img1 = open(f'pics/calka_podwojna1234x.png', 'rb').read()\n", "wi1 = widgets.Image(value=img1, format='jpg', width=300, height=400)\n", "img2 = open(f'pics/calka_podwojna1234y.png', 'rb').read()\n", "wi2 = widgets.Image(value=img2, format='jpg', width=300, height=400)\n", "a = [wi1, wi2]\n", "wid = widgets.HBox(a)\n", "display(wid)\n", "print(len(zadanie[1].split('$')))\n", "if len(zadanie[1].split('$')) == 5:\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[1]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[3].split('$')[0] + '$$'))\n", "else:\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[1]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[3].split('$')[0] + '$$'))\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[5]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[7].split('$')[0] + '$$'))\n", "zadanie_nr = zadanie" ], "id": "b37b6ca382f549dd", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć $$\\iint\\limits_D\\left(x - y + 1\\right)dxdy$$ gdzie *D* - trójkąt *ABC* dla *A=(-2,1), B=(4,-3), C=(4,-1)*" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "HBox(children=(Image(value=b'\\x89PNG\\r\\n\\x1a\\n\\x00\\x00\\x00\\rIHDR\\x00\\x00\\x01\\xc2\\x00\\x00\\x01\\xc2\\x08\\x06\\x00\\x…" ], "application/vnd.jupyter.widget-view+json": { "version_major": 2, "version_minor": 0, "model_id": "d0ac36ea25a7455f823afa25650c9c19" } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "9\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Względem *Ox:*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$\\int\\limits_{-2}^{4}\\left(\\int\\limits_{- \\frac{2 x}{3} - \\frac{1}{3}}^{\\frac{1}{3} - \\frac{x}{3}}\\left(x - y + 1\\right)dy\\right)dx\n\t=\\ldots=\\int\\limits_{-2}^{4}\\left(\\frac{x^{2}}{2} + \\frac{4 x}{3} + \\frac{2}{3}\\right)dx = \\ldots = 24$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "Względem *Oy:*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$\\int\\limits_{-3}^{-1}\\left(\\int\\limits_{- \\frac{3 y}{2} - \\frac{1}{2}}^{4}\\left(x - y + 1\\right)dx\\right)dy + \\int\\limits_{-1}^{1}\\left(\\int\\limits_{- \\frac{3 y}{2} - \\frac{1}{2}}^{1 - 3 y}\\left(x - y + 1\\right)dx\\right)dy\n\t=\\ldots=\\int\\limits_{-3}^{-1}\\left( - \\frac{21 y^{2}}{8} - \\frac{15 y}{4} + \\frac{99}{8} \\right)dy + \\int\\limits_{-1}^{1}\\left( \\frac{39 y^{2}}{8} - \\frac{27 y}{4} + \\frac{15}{8} \\right)dy = \\ldots = 24$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 6 }, { "metadata": {}, "cell_type": "markdown", "source": "#### Po obszarze ograniczonym krzywymi", "id": "e8b8625e9c805ff2" }, { "metadata": { "tags": [ "hide-input" ], "ExecuteTime": { "end_time": "2024-09-27T17:22:39.941811Z", "start_time": "2024-09-27T17:22:36.229980Z" } }, "cell_type": "code", "source": [ "zadanie = gz.calka_podwojna(typ=2, nr_zadania=1111) # nr by wykluczyć zduplikowanie wykresu\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(\n", " zadanie[0].split('krzywymi')[0].replace('\\\\,', '').replace('$', '*', ).replace('**', '$$', 2) + 'krzywymi'))\n", "display(Markdown('$$' + zadanie[0].split('$')[7] + '\\\\quad \\\\text{' + zadanie[0].split('$')[8][1:] + '} \\\\quad ' +\n", " zadanie[0].split('$')[9] + '$$'))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "img1 = open(f'pics/calka_podwojna1111x.png', 'rb').read()\n", "wi1 = widgets.Image(value=img1, format='jpg', width=300, height=400)\n", "img2 = open(f'pics/calka_podwojna1111y.png', 'rb').read()\n", "wi2 = widgets.Image(value=img2, format='jpg', width=300, height=400)\n", "a = [wi1, wi2]\n", "wid = widgets.HBox(a)\n", "display(wid)\n", "print(len(zadanie[1].split('$')))\n", "if len(zadanie[1].split('$')) == 5:\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[1]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[3].split('$')[0] + '$$'))\n", "else:\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[1]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[3].split('$')[0] + '$$'))\n", " display(Markdown(f'Względem *{zadanie[1].split(\"$\")[5]}*'))\n", " display(Markdown('$$' + zadanie[1].split('$')[7].split('$')[0] + '$$'))\n", "zadanie_nr = zadanie" ], "id": "3fd097f7da71ed9b", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Obliczyć $$\\iint\\limits_D\\left(2 y\\right)dxdy$$ gdzie *D* - obszar ograniczony krzywymi" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$y=\\frac{3 x^{2}}{2} - 3 x - 3\\quad \\text{ oraz } \\quad y=3 - 3 x$$" }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "HBox(children=(Image(value=b'\\x89PNG\\r\\n\\x1a\\n\\x00\\x00\\x00\\rIHDR\\x00\\x00\\x01\\xc2\\x00\\x00\\x01\\xc2\\x08\\x06\\x00\\x…" ], "application/vnd.jupyter.widget-view+json": { "version_major": 2, "version_minor": 0, "model_id": "83e523224d4a4e4fb0dc5afa30d1e85e" } }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "5\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Względem *Ox:*" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "$$\\int\\limits_{-2}^{2}\\left(\\int\\limits_{\\frac{3 x^{2}}{2} - 3 x - 3}^{3 - 3 x}\\left(2 y\\right)dy\\right)dx\n\t=\\ldots=\\int\\limits_{-2}^{2}\\left(- \\frac{9 x^{4}}{4} + 9 x^{3} + 9 x^{2} - 36 x\\right)dx = \\ldots = \\frac{96}{5}$$" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 5 }, { "metadata": {}, "cell_type": "markdown", "source": "### Szeregi Fouriera", "id": "611a1603f6fd6dd2" }, { "metadata": { "ExecuteTime": { "end_time": "2024-09-27T17:22:54.674922Z", "start_time": "2024-09-27T17:22:42.091187Z" } }, "cell_type": "code", "source": [ "zadanie = gz.szereg_Fouriera(\n", " typ_l=choice([0, 1, 2, 3, 4]),\n", " typ_p=choice([0, 1, 2, 3, 4]),\n", " bez_wykresu=True,\n", " tylko_koncowy=True,\n", " nr_zadania=123)\n", "print(f\"\\033[34m** Zadanie **\" + '*' * 82 + '\\033[0m')\n", "display(Markdown(zadanie[0].split('\\n')[0]))\n", "display(Latex('$$' + zadanie[0].split('\\[')[1].split('\\]')[0] + '$$'))\n", "display(Markdown(zadanie[0].split('\\n')[7].replace('$', '$$')))\n", "print(\"\\033[32m** Rozwiązanie **\" + '*' * 78 + '\\033[0m')\n", "display(Latex('$' + zadanie[1].split('$')[1] + '$'))\n", "display(Latex('$' + zadanie[1].split('$')[3] + '$'))\n", "display(Markdown(f'![](./pics//szereg_Fouriera_{123}_funkcja.png)'))\n", "display(Markdown(f'![](./pics//szereg_Fouriera_{123}_inf.png)'))\n", "zadanie_5 = zadanie" ], "id": "6030e97bd991244e", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001B[34m** Zadanie ************************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/markdown": "Rozwinąć w szereg Fouriera funkcję " }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$$\n\t\tf(x)=\\left\\{\\begin{matrix}\n\t\t\tx + 1 & \\textnormal{ dla } & x\\in\\left(- \\frac{\\pi}{2},0\\right)\\\\\n\t\t\t-1 & \\textnormal{ dla } & x\\in\\left[0,\\frac{\\pi}{2}\\right]\n\t\t\\end{matrix}\\right.\n\t$$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "o okresie zasadniczym $$2T=\\pi.$$ Naszkicować wykres funkcji, do której zbieżny jest uzyskany szereg." }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\u001B[32m** Rozwiązanie ********************************************************************************\u001B[0m\n" ] }, { "data": { "text/plain": [ "" ], "text/latex": "$a_0=- \\frac{\\pi}{4},\\quad a_n=\\frac{1 - \\left(-1\\right)^{n}}{2 \\pi n^{2}},\\quad b_n=\\frac{2 \\left(- \\frac{\\left(-1\\right)^{n} \\pi}{4} + \\left(-1\\right)^{n} - 1\\right)}{\\pi n},$" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/latex": "$S(x) = \\frac{2 \\left(-2 + \\frac{\\pi}{4}\\right) \\sin{\\left(2 x \\right)}}{\\pi} - \\frac{\\sin{\\left(4 x \\right)}}{4} + \\frac{2 \\left(-2 + \\frac{\\pi}{4}\\right) \\sin{\\left(6 x \\right)}}{3 \\pi} + \\frac{\\cos{\\left(2 x \\right)}}{\\pi} + \\frac{\\cos{\\left(6 x \\right)}}{9 \\pi} - \\frac{\\pi}{8} + \\dots $" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "![](./pics//szereg_Fouriera_123_funkcja.png)" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/plain": [ "" ], "text/markdown": "![](./pics//szereg_Fouriera_123_inf.png)" }, "metadata": {}, "output_type": "display_data" } ], "execution_count": 6 }, { "metadata": {}, "cell_type": "markdown", "source": [ "---\n", "\n", "## Ustaw nazwy" ], "id": "5dc817ea97ab66bc" }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Wskazówka\n", ":class: tip\n", "\n", "> Nazwy mogą być puste, tzn. ''. Nie wszystkie, bo na ich podstawie tworzona jest nazwa pliku.\n", "> \n", "> 'kolor_odpowiedzi' jest ważny dla pliku tex:\n", "> - 'red' - odpowiedzi ukryte, ale dostępne po kliknięciu,\n", "> - 'white' - ukrywa, ale zostawia miejsce,\n", "> - 'brak' - ukrywa i chowa miejsce,\n", "> - dla innych kolorów odpowiedzi są pokazywane, ale można je ukryć po kliknięciu.\n", ">\n", "> Dlatego potrzebna jest dwukrotna kompilacja i potrzebny jest czytnik pdf z obsługą warst i JavaScript. Zalecam Adobe Acrobat Reader \n", "\n", "```\n" ], "id": "521cc21f07383cf6" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:20.065428Z", "start_time": "2024-12-04T07:25:20.059593Z" } }, "cell_type": "code", "source": [ "# bez podkreśleń !!! bo są błędy w kompilacji z podkreśleniami\n", "kierunek = 'Teleinformatyka' # np. AiR \n", "grupa = 'Grupa-2' # np. Grupa-11\n", "przedmiot = 'Wprowadzenie do analizy' # np. Algebra\n", "semestr = 'Sem 1' # np. Semestr-1 \n", "kolokwium = 'Kol 1' # np. Kolokwium nr 2\n", "data = '03 grudnia 2024' # tego już w nazwie pliku nie będzie\n", "kolor_odpowiedzi = 'brak'\n", "\n", "nazwa_pliku = f'{kierunek}-{grupa}-{przedmiot}-{semestr}-{kolokwium}'\n" ], "id": "d771398ed607d314", "outputs": [], "execution_count": 30 }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:21.005368Z", "start_time": "2024-12-04T07:25:20.994229Z" } }, "cell_type": "code", "source": "nazwa_pliku", "id": "ad78cc4b08194d4a", "outputs": [ { "data": { "text/plain": [ "'Teleinformatyka-Grupa-2-Wprowadzenie do analizy-Sem 1-Kol 1'" ] }, "execution_count": 31, "metadata": {}, "output_type": "execute_result" } ], "execution_count": 31 }, { "metadata": {}, "cell_type": "markdown", "source": [ "---\n", "\n", "## Generuj plik LaTeX z wybranych zadań" ], "id": "a0b7605ed4e08dfc" }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Wskazówka\n", ":class: tip\n", "\n", "> Wynik jest gotową zawartością pliku LaTeX.\n", "> \n", "> W mybinder (interaktywna sesja) można skopiować.\n", "> \n", "> Kompilować dwukrotnie pdflatex.\n", "> \n", "> W przypadku zadań z obrazkami trzeba też je pobierać w odpowiednie miejsce.\n", "> \n", "> Lepiej po prostu wygenerować pdf poniżej.\n", "\n", "```" ], "id": "40a07fabed117e71" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:22.283547Z", "start_time": "2024-12-04T07:25:22.275037Z" } }, "cell_type": "code", "source": [ "# Wynik jest gotową zawartością pliku LaTeX. Można skopiować i wkleić. \n", "# Kompilować dwukrotnie pdflatex.\n", "LaTeX_source = gz.generuj_LaTeX(kierunek,\n", " grupa,\n", " przedmiot,\n", " semestr,\n", " kolokwium,\n", " data,\n", " kolor_odpowiedzi,\n", " zadanie_1, zadanie_2, zadanie_3, zadanie_4, zadanie_5)\n", "print(LaTeX_source)" ], "id": "3e909f0406dbf9b9", "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "% !TeX spellcheck = pl_PL-Polish\n", "\\documentclass[a4paper,12pt]{article}\n", "\\linespread{1.3} %odstepy miedzy liniami\n", "\\usepackage[a4paper, lmargin=2cm, rmargin=2cm, tmargin=2cm, bmargin=2cm]{geometry}\n", "\\usepackage{amsfonts}\n", "\\usepackage{amsmath}\n", "\\usepackage{color}\n", "\\usepackage{enumitem}\n", "\\usepackage{fancyhdr}\n", "\\usepackage{float}\n", "\\usepackage{graphicx}\n", "\\usepackage{ifthen}\n", "\\usepackage[utf8]{inputenc}\n", "\\usepackage{lmodern}\n", "\\usepackage{ocgx}\n", "\\usepackage{polski}\n", "\\usepackage{tcolorbox}\n", "\\tcbuselibrary{most}\n", "\\tcbuselibrary{skins}\n", "\\tcbuselibrary{raster}\n", "% brak - bez odpowiedzi i bez miejsca, white - bez odpowiedzi z miejscem, red = odpowiedzi ukryte ale dostepne\n", "\\newcommand{\\kolorodpowiedzi}{brak}\n", "\\renewcommand{\\footrulewidth}{0.4pt}% linia pozioma na końcu strony - default is 0pt\n", "\\DeclareFontShape{OMX}{cmex}{m}{n}\n", " {<-7.5> cmex7\n", " <7.5-8.5> cmex8\n", " <8.5-9.5> cmex9\n", " <9.5-> cmex10}{}\n", "\\DeclareSymbolFont{largesymbols}{OMX}{cmex}{m}{n}\n", "\n", "\n", "\\newcommand{\\ukryte}{1} % domyślnie odpowiedzi są do pokazywania po kliknięciu\n", "\\ifthenelse{\\equal{\\kolorodpowiedzi}{red}} % ukrywamy od pokazywania gdy kolor jest red\n", "\t{\\renewcommand{\\ukryte}{0}}{}\n", "\n", "\\newcommand{\\zOdpowiedziami}[3]{\n", "\t\\ifthenelse{\\equal{#1}{brak}}{}{\n", "\t\t\\ifthenelse{\\equal{#1}{white}}{\\vphantom{#3}}{\n", "\t\t\t\\switchocg{#2}{\\textcolor{\\kolorodpowiedzi}{\\\\Rozwiązanie: }}\n", "\t\t\t\t\\begin{ocg}{Warstwa odpowiedzi}{#2}{\\ukryte}\n", "\t\t\t\t\t\\textcolor{\\kolorodpowiedzi}{#3}\n", "\t\t\t\t\\end{ocg}}}}\n", "\n", "\\pdfinfo{/Author (https://generator-zadan.readthedocs.io)}\n", "\n", "\\begin{document}\n", " \\pagestyle{fancy}\n", " \\setlength{\\headheight}{27.29453pt}\n", " \\fancyhead{}\n", " \\fancyhead[L]{\\textbf{Teleinformatyka\\\\Wprowadzenie do analizy - Grupa-2}}\n", " \\fancyhead[R]{\\textbf{Kol 1\\\\ 03 grudnia 2024}}\n", " \\fancyfoot{}\n", " \\fancyfoot[R]{\\tiny\\textbf{4 grudnia 2024, 08:25}}\n", "% \\hspace{1cm}\n", " \\begin{enumerate}[label= \\textbf{Zadanie \\arabic*. }, leftmargin=1cm, align=left, itemsep=0pt]\n", "\t\t\\item Obliczyć granicę\n", "\t\t\t\\[\n", "\t\t\t\t\\lim\\limits_{n \\rightarrow \\infty} \\left(\\sqrt{3 n^{2} - 2 n - 2} - \\sqrt{3 n^{2} + 2 n + 3} \\right) \n", "\t\t\t\\]\n", "\n", "\t\t\t\\zOdpowiedziami{\\kolorodpowiedzi}{ocg0}\n", "\t\t\t\t{$- \\frac{2 \\sqrt{3}}{3}$}\n", "\n", "\t\t\\item Obliczyć granicę\n", "\t\t\t\\[\n", "\t\t\t\t\\lim\\limits_{{x \\rightarrow 1^{+}}} \\frac{\\ln{\\left(x \\right)}}{\\sqrt{x^{2} - 1}} \n", "\t\t\t\\]\n", "\n", "\t\t\t\\zOdpowiedziami{\\kolorodpowiedzi}{ocg1}\n", "\t\t\t\t{$0$}\n", "\n", "\t\t\\item Wyznaczyć równanie stycznej i normalnej do wykresu funkcji\n", "\t\t\t\\[\n", "\t\t\t\tf(x) = \\sqrt{- x^{2} + 4 x - 2}\n", "\t\t\t\\]\n", "\t\t w punkcie $x_0 = 3.$\n", "\t\t\t\\zOdpowiedziami{\\kolorodpowiedzi}{ocg2}\n", "\t\t\t\t{Styczna: $y = 4 - x,$ \\quad\n", "\t\t\tNormalna: $y = x - 2$}\n", "\n", "\t\t\\item Zbadać monotoniczność i ekstrema funkcji\n", "\t\t\t\\[\n", "\t\t\t\tf(x)=\\frac{- 2 x^{2} - x - 2}{3 - 2 x} \n", "\t\t\t\\]\n", "\n", "\t\t\t\\zOdpowiedziami{\\kolorodpowiedzi}{ocg3}\n", "\t\t\t\t{$f'(x)=\\frac{\\left(2 x - 7\\right) \\left(2 x + 1\\right)}{\\left(2 x - 3\\right)^{2}}$\\newline\n", "\t\t\t$f'(x) > 0 \\textnormal{ dla: }\\frac{7}{2} < x \\vee x < - \\frac{1}{2}\\implies f(x) \\textnormal{ rośnie dla } x \\in \\left( -\\infty, - \\frac{1}{2} \\right)\\textnormal{ oraz } x \\in \\left(\\frac{7}{2}, \\infty \\right)$\\newline\n", "\t\t\t$f'(x) < 0 \\textnormal{ dla: }x > - \\frac{1}{2} \\wedge x < \\frac{7}{2} \\wedge x \\neq \\frac{3}{2} \\implies f(x) \\textnormal{ rośnie dla } x \\in \\left(- \\frac{1}{2},\\frac{3}{2} \\right)\\textnormal{ oraz } x \\in \\left(\\frac{3}{2},\\frac{7}{2} \\right)$\\newline\n", "\t\t\t$f'(x) = 0 \\textnormal{ dla } x \\in \\left\\{ - \\frac{1}{2}, \\ \\frac{7}{2}\\right\\} \\implies f_{\\max}\\left(- \\frac{1}{2}\\right) = - \\frac{1}{2} \\textnormal{ oraz } f_{\\min}\\left(\\frac{7}{2}\\right) = \\frac{15}{2}$}\n", "\n", "\t\t\\item Wyznaczyć wszystkie asymptoty funkcji\n", "\t\t\t\\[\n", "\t\t\t\tf(x)= \\frac{x + 2 e^{- x}}{x + 1}.\n", "\t\t\t\\]\n", "\n", "\t\t\t\\zOdpowiedziami{\\kolorodpowiedzi}{ocg4}\n", "\t\t\t\t{$D_f\\colon \\mathbb{R}\\setminus \\left\\{-1\\right\\}.$\\\\Asymptota pionowa dwustronna w $x_0=-1.$ \\\\Asymptota pozioma w plus nieskończoności o równaniu $y=1.$ }\n", "\n", " \\end{enumerate}\n", "\\end{document}\n" ] } ], "execution_count": 32 }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Wskazówka\n", ":class: tip\n", "\n", "Poniżej można zapisać gotowy plik na dysku. Można go edytować. \n", "W mybinder można go pobrać w menu po lewej stronie z katalogu wygenerowane. \n", "Kompilować dwukrotnie.\n", "\n", "```" ], "id": "90c5ffcb997a03dc" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:23.128478Z", "start_time": "2024-12-04T07:25:23.123512Z" } }, "cell_type": "code", "source": [ "if not os.path.exists('wygenerowane'):\n", " os.makedirs('wygenerowane')\n", " print(\" ! Tworzę katalog wygenerowane \", file=sys.stderr)\n", "with open(f'./wygenerowane/{nazwa_pliku}.tex', 'w',\n", " encoding='utf-8') as LaTeX_file:\n", " print(LaTeX_source, file=LaTeX_file)" ], "id": "b0d3947f4938122d", "outputs": [], "execution_count": 33 }, { "metadata": {}, "cell_type": "markdown", "source": [ "---\n", "\n", "## Generuj plik Pdf z pliku Latex" ], "id": "5654250ece733965" }, { "metadata": {}, "cell_type": "markdown", "source": [ "\n", "```{admonition} Wskazówka\n", ":class: tip\n", "\n", "Można wygenerować gotowego pdf-a.\n", " \n", "W mybinder (interaktywna sesja) plik pdf jest w menu po lewej. Można pobrać. \n", "W mybinder wszystkie pakiety LaTeX-a są zainstalowane. U siebie pewnie trzeba będzie coś doinstalować. \n", "\n", "Kompilacja wykonuje się dwukrotnie.\n", "\n", "```\n", "\n", "```{admonition} Uwaga\n", ":class: attention\n", "Przy ponownej kompilacji online pliku z taką samą nazwą podgląd pdf-a w przeglądarce może pokazywać poprzednią wersję. \n", "\n", "Trzeba wygenerowanego pdf-a pobrać na dysk lokalny i tam go oglądać.\n", "Albo podejrzeć niżej pdf-a przetworzonego na jpg.\n", "```\n" ], "id": "b129b40b982120cc" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:26.993751Z", "start_time": "2024-12-04T07:25:24.241362Z" } }, "cell_type": "code", "source": [ "import subprocess\n", "\n", "for i in range(2):\n", " result = subprocess.run(\n", " 'cd wygenerowane && pdflatex \"' + f'{nazwa_pliku}' + '\".tex',\n", " capture_output=True,\n", " shell=True)\n", "\n", "# w razie problemów poniżej można zobaczyć komunikaty\n", "# trzeba odkomentować \n", "\n", "# for i in str(result).split(', '):\n", "# print(i.replace('\\\\n', '\\n'))" ], "id": "86469940cc43c2f4", "outputs": [], "execution_count": 34 }, { "metadata": {}, "cell_type": "markdown", "source": [ "```{admonition} Uwaga\n", ":class: attention\n", "\n", "To co widać niżej to jest obraz stworzony z pdf-a.\n", "Kolor odpowiedzi jest 'blue' - czyli widoczne, do ukrycia po kliknięciu (w pliku pdf).\n", "Kolor można zmieniać w pliku tex. \n", "\n", "Widoczna jest tylko pierwsza strona. \n", "\n", "```" ], "id": "85028946c1b64a27" }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-04T07:25:30.635790Z", "start_time": "2024-12-04T07:25:29.090293Z" } }, "cell_type": "code", "source": [ "image = convert_from_path(f'wygenerowane/{nazwa_pliku}.pdf')\n", "image[0].save(f'wygenerowane/{nazwa_pliku}.png')\n", "display(Image(f'wygenerowane/{nazwa_pliku}.png', width=800))" ], "id": "763e92f1aeb5b4cb", "outputs": [ { "data": { "image/png": "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YsWKtra29+7dS01NLdYdFdTdu3c7duwok8kIIXfu3Dl16lRp1SQsLGzBggV2dnYrVqworTr81JMnT8aNGyeRSPbu3duuXTu2fu7cueHh4VOnTrW1td20adPYsWMVt23ZsqWRkdHJkyffv3+v/B5r1ao1ZcqU27dv79u3L9cMWVlZbm5uGRkZc+bM0dfXL+gRlZaNGzd6enoKhcI/plGekp49e3b06NEBAwa0bdu2tOsCAAAAAABQRDj4E/EjER07dvTz81PM8/jxY343vd69e5dM3VxcXNhOJRJJyew0f05OTqxKampq6enpJVwBmUz27NmzOXPmaGtrE0Latm1bwhVQ3vnz57W0tJo0aRIfH59rBqlUOmXKFELI3LlzZTJZrnm+f/9O3+0CvdUymYx2qHz58qVcEjvhN2/erHyBpevevXvq6urGxsZ37twp7bqUKKlUamlpSQgpV65cdnZ2aVcHAAAAAACgaKAV258pPT2dLqxevXrJkiWKGbKyskaNGkXbbRFCTExM9u7dWzJ1K1OmTMnsSHlmZmZs2cDAgMa5SsCUKVOio6Ojo6NDQkISExNLZqequH379oABA4yNjS9evGhiYpJrHjU1tR07dgQHB2/atElLS2v16tWKeQp3DggEAkNDw7S0NMUkQ0NDuqCjo1OIkkve9+/fBw0aVK1atatXr1avXr20q1Oi1NTUaEtDoVD4i/QTBwAAAAAAUB1CbH8mGmJr1arVokWLcs2waNGi0NBQ9nL37t3ly5cvocr9ehYtWuTj4/PmzRtdXd39+/eX2G3/9+/fs7Ozq1at2rt372bNmhXrQHiqi46OHjZsmEwm27RpU8WKFfPJqaamdujQoerVq69du7ZVq1YdO3aUy1DofpF5bThw4EChUBgdHT1u3LjClVySRCJRv3796tev7+npaWRkVNrVKQU3b948ffp0hw4dMO4hAAAAAAD8MXB782eio6qtX78+1xkbHz58uH37dvayf//+AwcOLLnK/XrMzMwCAgI+f/5sbm5ekiN5Xb58mS1LpdIS22/hLF26NDY21sLCYujQoT/NXLly5f79+58+fXratGnBwcHFHbVUU1Pr169fse6iCJ0+fbpp06aurq5/bRsua2vr+fPnl3YtAAAAAAAAilIu8Rf4A6Snp5cpU6Z58+aKSRkZGaNHj+b+N5OsmZnZ7t27S7Z2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c8UVV+Q+fa+99rr55puvu+66oUOHDh06dPvttz/ggAOOPfbY888/P/fS1N122y0tTamioqKzzz577dq155577kbG3KtXrxEjRjz++OO33HJL9kv/97//PTszY9Ztt902evToefPmXXbZZZdddlmTJk0OP/zw0047rXv37tnVMDbbP/7xj9/85jcNGjTY+CLLlfrkk0/SH25z585N1/EoJy0mn332WXbu/I3bZ599stV+/vz5kydPnj179vLly997772kwlv3nHPOefbZZ1955ZW77rrrrrvuKiwsPPTQQ48//viLLrqo0tNS/RNe7lMoV+tyVf+7sjr23nvvkSNHvvXWW2VlZdWPTemcjBt5J6QPffzxxwsXLsxd+7I6Nu+k1YjN/lqsXLny9NNPHzNmTFVHmDx58ldffVXVS7Ru3bqqn34AANsWV7F9x61YsSJbCpIkad68+Z///OdK9/zss88qXto2bdq0yy67bL/99ttjjz169OgxZsyY/Pz8ww8/fNddd630IIsXL87+Obuy3qZ68cUXu3fv3rRp0/322+/qq6/+8MMPd9xxx9x1SL/WRu5F3STLly/P/fPgymRXl8u9hqs6MpnMyy+//MQTT+S+Slbu2csu0Ln1SO/tWrVq1WuvvZYkyQcffLDvvvuWu3Ihnfkr+b+L3crKymbOnJldCa6i888/Py8v76WXXspecbl8+fKlS5du/Fev2bNnp3dKDhgwoNLrAXNt6r1FEydO7Nq16x577NGvX7/i4uJTTjkl97spa8WKFevWrUuSpNxdqF9r/fr1Z5999ldffdW1a9fcOQorqubJ2eyRbFx6r+jTTz+d3fLaa6916tQpnQ4peyFbSUnJrFmzKn4V+vTp8+qrrx588MFJkqxfv/7dd9/9y1/+cuCBB/bu3bvira+pq666atq0aa1bty6XU8s58cQT99xzzyVLluRePztkyJCKVa5Jkybvvffe5Zdfnl6L+uWXXw4fPvy3v/3twQcfnM78tdn69+//z3/+8yc/+cmSJUvOP//8TX169k7kRo0a1anMf//3f7/88su5qzR+rXXr1t1zzz37779/p06dXn/99X322ed3v/tdpZfX5efnjxgxYuDAgU2aNEmSZNWqVWPGjLnuuuvatGmT++XOqv4Jz7XddttVdSd+sqXv+EsveCwpKcnOv1Yd6T+QZFfvrSh7D+Pnn3++qUPavJNWIzbvazFv3rxTTz311FNPLSgouP322yu9oPvLL79M/7BlfzQBAGxtXMX2HXf55Zfn/krwyCOPVHpx2eLFi1euXJn7/76lpaVXXHHFX//617Kystq1aw8cOLBHjx7ZOyXTWZMrKiwsTH/DT5Jkw4YNm3rHyqJFi371q1+lFxQ0a9bs1Vdf7dSpU+S2l6Dcm1X33HPPctNRBV133XXpZV+tWrWaNm1adgWJVO5nvW7duk26IuNbkN5ZliTJsGHDTj755GHDhlWcUOmII45o0qTJl19++c9//vOOO+74z3/+k96VVpW99967U6dOo0aNevjhh2+55ZYkSZ588snu3btv5CklJSVdunRZtWrVmWeeed5552W3L126dOedd97Ib/Vfq6ys7Morr7z33ns7d+48ZcqU7PxxH3zwQcWdsz10/fr1m/QqvXv3njx5csuWLXPneFqzZk1BQUG5Ql3Nk7PZI9m4M844o1evXh999NHUqVMPOuigd95555BDDikoKOjSpcu111779NNP33DDDUmSvPLKKyeeeGKlR+jcuXPnzp2/+OKLN954Y8KECS+99NL06dPvuuuuhg0bVrwQb/jw4QMHDtx+++2fffbZbPUoKSlZu3Ztxan0zj///D59+gwaNCid7Wvq1Klt2rSptJXsuOOOf/nLX+6666533nnnrbfeeuutt1588cX333//lFNO+eijjzb7WrZVq1YNGTJk8eLF+++///PPP//444+fe+651X96tt0ccMABFWd73AxTpkz5+c9/vnjx4r/+9a/dunXLfhdUdYVdfn7+RRdddNFFF3300UdvvvnmuHHjRowYsXjx4m7duu25557lvmc36YTXiOxlepv0bzy1atUqKSnZyL2Q2VtoN+Pfb7b+kxY0bty4l156ab/99lu1alXfvn27des2efLkcn+jZT/csj+aAAC2NlvRL+1scSNGjMidZbxXr17p3PwVpeuN5l7FdvHFF99///1lZWX16tV74403LrrookpnIisn9/bG6k95liopKenUqVPa1/bbb7933nmnc+fONduVmjdvnv0taJOuiaiO7PIIs2bNmjRpUrlHs6UySZLddtttq+prSZLsvffe6cT/w4cP37Bhw9ixY8vNwJUkSV5eXnpl38yZM6dNm1ZphisnvR7tkUceSSfmf/7556taNCN13XXXvf32282bNy83z9FZZ5216Z/T/6N3794DBgw4+uijR4wYUen6DLnq1KmTXgRUbm2EjXvppZfuvffegoKCIUOG5Ibve+65Z+LEiRX3r87J2byRfK3CwsJ0EYn0grUhQ4ak17W1aNHiyCOPnDFjRnoh2JAhQyre+/bGG29kP52mTZv+6le/6t+//4cffphennbPPfeUm9J+/vz5PXv2TJLk9ttvz50b6z//+U+5dVdSv/3tb2vVqvXmm2+mU0kOGjToggsuqLhb9urdWrVqHXnkkVdeeeU///nPjz766NBDD124cGFVN8hnTZ8+/ZJLLqm4vWHDhunMU7vuuuvDDz+cJMlll11WbumMjdtrr73SS4e2yE+Y+fPnd+zYcc6cOcOGDevevfvXVuaHHnoo+4N6n332Oe+88x577LFZs2Z17969rKys0pkNq3nCa0q6LPUuu+zytTMVPPjgg9k7c9O/uVauXFnVzunNvPn5+V+7OEaXLl0qztW4lZy0b2jlnCuuuCK9RvK666477LDDpk+ffs0115TbJzud4pb90QQAsLXZun5vZwtavnx57l1LLVu23MhM8OmE+tkrRL744otss+jevXvFRdYqzkWVyp3lLZ36p/qGDh2aXW/hhhtuKDffzaYGuy1i++23z35Gc+bMKTdLeq733ntv8uTJm3Tw7K9qtWvXrjg9zfz587N/TifwzpX+DnzKKaf84x//2KQX3YLSXrZkyZK//e1vzZs3r/Qamey9okOHDp0yZcrX3uz205/+tGnTpgsWLBg+fPi///3vo446aiOTW40aNeruu+/Oz89/+umny12CtHr16sglbJ9//nn6HXHLLbeUG0C5d/4jjzySzj+Yvk8qTWOpRYsW5c70/+WXX/bo0SOTydxyyy3lVlSYPXt2pTdiV/PkbOpIqim7ruiGDRvefvvtI488Mnf7M88889VXXy1btqxigPjwww/LLYmQJMl222138cUX9+jRY/ny5blBqqys7Jxzzlm2bNmJJ55Ybk63qk7LbrvtlpbcBx98cM2aNXPmzKl0UYsBAwZUDB8tW7ZM79372m/e3HUAcuW+zX72s5+de+65q1evTr+yGz9gVsOGDdOVYXInsixn2bJlFdfWrFS/fv2WL1/+4x//uOJ6suXeur///e+TJBkzZszo0aPL7dmgQYNHHnlk7733rvS0VPOE15R0ydRKlxUuJ/drlH7XlFuGNVc6/ehRRx31teWu0i/9t3nSNvKjb5Pi72a8YkFBweDBg+vWrXvfffeVe1+1adMm7Zgb+dGUuygTAMA2SmL7zrrkkkuys5/k5eU99thj2TuSyrnxxhvfeeedJOcqthkzZmR/T6hYf9auXVtVPrv00kuzl/yk065XtGrVqkq35y6hUPFFx40bV+mzvmnXX3999gqySpc7SJJkxYoVJ5544qYu1PijH/0oSZJTTz311VdfrTiRee7ZSy9fyiopKfnJT37y5JNPvvTSS2eddVZ63d+3L3tJ2lVXXVXV5WnHHntsuhTsf//3f1e6YGI5BQUF6WRngwYNeuihh3Lv/Sxn0aJF3bp1y2Qy119/fbl72RYsWBC8WGP8+PHp3N4V1/ubOnVq7ocLFy5M5/C+7rrr6tWrN27cuNw2muvSSy/NJp6ysrLf/OY3ixcv7tixY8WFLN59991KW1I1T84mjaT6Tj755IYNG86bN+/WW2/NvWIxXW/02WefHTZsWFWXHA4dOrTS7pC241122SW75dZbb3399dd32223J554olwpeOedd6qaAvLCCy9MkuSpp5566KGH0hvxKiotLc1eN5qrRYsWLVq0aNy4ce7GBg0aJP/vEopLly7NXdS4Kvfee2+LFi3Gjh07YMCAr905684778zPz3/xxRermlG+S5cuVX01y3nzzTeTyt63SYW3bnZ92EozfUFBwdFHH13utGRV54R/o5YuXVrpLH5jx46dNm3aDjvscOONN+Zuz/7dV9XX9Kqrrtpll13efvvtqr41Ro4cmZeX169fv9yNFd8nSZKUm3Ih61s7aeknW+l7aVP/3WsztG3b9q677spkMueee265qwJvv/32pOqfBuvXr08vXwUA2KZJbN9Nzz33XO5k1RdffHHFK6GSJJkxY8ZZZ5118803px9mfzFo3bp1dtrjN954o9yzBg0alL3po9xvFw0bNnz00UfT340feOCBijVt8ODBub/R5U7Lkru8YLkXLSsr++tf/5qdKX8jM+ZscQceeGD2FrO+fftWvJCtuLj4/PPP37BhQ8VbYzbu0ksvbdmy5erVq4844ohyD73//vvpr8pJkvTq1evYY4/NffSTTz759NNPsx+OHDlyk153SznggAPSufZLS0urugG5oKAgzS4rVqz42rtEU+edd15+fv7//u//rl27tqp7sjKZTPfu3RcsWHDMMcdcd9115R598MEHK6aB9BfOSn/trLgx/c05+X/Xu0iNGzeusLCwtLQ0rXirVq1Ku0/Lli379u1bWlpa7nf71Icffli/fv2mTZumH951112jR4/eZZddnnrqqXK3AL/++uuffPJJVfOCVefkbNJIqq927drpNYm33npruspBatdddz3++OO/+OKL66+/vtxiqVnz58//+9//XnH7ggUL2rVrl/2x8+abb9588815eXlPPPFEuZq2evXqp59+uqqVHDt06NC2bdtVq1b9+c9/PvPMM6v6FO67776K80CVlpYuXbq03IWE6ZLEudF/+vTp5VbqqPQd1aBBg3RavWuvvTa9nKqcdP9yeejwww+/4oorZs+eXWmmf+ONNxo1arSRFTnLDSCp7H07ceLE9J73tWvXpv/N1qV//etflV69tWDBgnKnJauaJzzJ+XwrVpXsqav4Dfi1C4kuX748ndwgV1lZ2U033ZQkyR133FHudGWvFM79ms6YMSO7Wsiuu+56//33FxUV3X333RVfbvTo0e+8887vf//79HrDrPR9MmfOnOxloZlMpqSkpNLLS6t/0r7WRn6aJUnStm3b5P/ubM01c+bMNLNWehHrJv2E3Pizfv/73x955JHz5s1Lr5TMOuuss9J5DwcPHlzxUI899tg555xT1QtV9dJVrZcCAFBjMnznrFmzJvd30by8vEsuueSa/9O7d++LLrrol7/8ZcW1Hd99993sQQYMGJD9PaF3794rV67MZDILFizo06fPQQcdNHHixOw1JmeccUa/fv3Gjx+ffe5TTz2VNo7DDz98woQJ6e9Xs2fPvvjii3fZZZfcBQe7dOlyzz33zJw5M5PJlJaWZldYq1ev3lNPPbV+/fpMJjNt2rTTTz/9N7/5TXaNhbp16/bq1euee+6ZO3duJpN54okn0mmzsoe9/fbbBwwYMH369Ewm89Zbbw0YMODSSy/NPtq1a9cBAwaMGDEifdEBAwYMGDAgezb23XffAQMG/M///E/uKf2f//mftGg0bdp00KBBc+fOLSkpWbRo0TPPPHPwwQc3atTozTff3Iyv1Ntvv92oUaM2bdoMGTJk1apVmUxm3bp1//jHP9LptLbffvurr756w4YN5Z61evXqbANKkuTpp5/ejJfeItIVD84666yN7DNixIgkSZo0aZK+DaojrXLpF6hS99xzT5IkO+20U/oGyNqwYcOf//zn2rVr//rXv87dPnXq1PTtesstt5SWluY+9OGHH9aqVStJkuuvv76kpCTdWFJSksaF888/P3fn/v37P/HEE+mvxyNGjNiwYcNpp52W/bxKS0v/8Ic/5OXlXXXVVdlDZTKZmTNnnnrqqQsWLEg/HDduXPqd9fzzz5f7vF5++eWmTZvusccekZNT/ZFsqnT12IMPPrjc9r/97W9Jkpx88smVPmvQoEFJkvzgBz947733crfPnz+/adOmo0ePTj/M3mR65ZVXljvCjBkz0gz9ySefVDW29Mbeq666qqoddt9993r16vXq1Sv3hGQymRtuuOHHP/5xuTdnuvxIixYt1q5dm8lkSkpKTjjhhDVr1uTuM3z48PQbcOLEibnbsxeL/eAHPxgzZkxRUVH2oeXLl6dR5le/+tW6detyn7Vu3boLLrigbt26zzzzTO728ePHd+jQYfHixVV9XuUMGzasoKBghx12+Pjjj7MbFyxY8LOf/eztt9/Oy8s7/PDDN2zYkK4imslk0h+5HTt2XLp0ae5xRo0ateuuuy5cuLCqF/raE57JZDZs2JBdEHbs2LG5D5WVlWV74osvvljuoezCMs8//3y5L03250mHDh2mTJmS3Z4uzltQUHDDDTdU+qMm/evjV7/6Vfrhl19+efrpp5fb5+67765Tp84TTzyRu3HixIm77rprjx49vvrqq4qHTavQAw88kH74wgsv9OvXr6oTUp2T9rWKi4t79OiRJEmzZs1mzZpVcYcNGzYcdthheXl5ue+BpUuXduvWLT0J9erVmzRpUu5TioqK0m7epEmTL774otzL/fa3v02SpHHjxvPmzct9aPXq1elfu2eeeWbu+7mkpCRb2y+99NIvv/wy+9CiRYs6d+5cv379wYMH5x5qxIgR3bt3r/iXXXrp30033VRu+0a+lQAAapbE9h30xRdflFvMq5rS1JU1YcKEs88+O11VMy8vb+eddy4sLPzDH/6Q5rannnpqn332qV27dvrcXr165T532bJlF198cVr66tSps/POOzdr1uzCCy9csmRJerNbrueeey77xGeeeaZz587pYnC1atUqLCzcc88977vvvrKysuLi4muvvbZZs2ZpocjPzx8yZEgmk9lvv/3q16/foEGDwsLChg0bFhYWNmjQoE6dOs8++2wmk7n++uvr1q1b7tF69eqlYaioqKhWrVr169cv9+hxxx1X7qyuXbv25ptvzu2D6S85V1xxxWY3i0wms2TJkp49e6afUTac1apV66yzzqr016fUK6+80rp165122ukPf/hD9dPVFjdhwoQkSdLzXJWioqIGDRpcdNFF1T/syy+/3Lx584q/bqXWrVuXnqgf/OAHJ/6fzp07H3nkkdk7na+44op054EDB6Zf09yvb+fOnTOZzKOPPlrxoezXfe3atb///e8bNmzYsWPHgQMH3n///Wefffbjjz+eyWQ+++yzfffdNz8//9BDDx01alS54Y0cObJ169YHHnjgNddc8+c//7l79+6//vWv02+ZVKdOnZIkqV+/fnbwJ5xwwrHHHpu9w/qHP/zhZp+cTRrJptqwYUPTpk3vvvvucttXrlxZr169qlLvgw8+2KFDh0WLFp1xxhnnn3/+gw8+OGjQoEsvvfSII47IPXvpMqlJknTo0CF7Zjp06LDPPvtkL/TbyOCXLVtWr1699A73SqUrFD/zzDPHH398v379nnzyyX79+h1//PGXX375ihUrKu4/bNiwPfbY4+CDD+7Xr9+pp5760ksvZR+68sor03dL9m3ToEGDP//5z5lM5oMPPqhVq9YOO+yQvqkaNGhQu3btzz//fPr06blvtgYNGtStW/fEE08s96IvvPDCXnvtdeyxx/br1+/uu+8+44wzzjvvvErLzka89tprhx12WGFh4TXXXPO3v/2td+/ev/71r9NYdscdd+Tn5zdp0uQ3v/lNmhq7dOly/fXXT5069cc//vGf/vSnv/3tb/379+/atetPf/rTjZzMTDVO+Nlnn13um6uwsPDmm2/OZDI9evQodwILCwv79OmTyWR+//vfp+cz99xedtll2cOmiW3vvfdetmzZueeee8EFFzz88MMDBgz44Q9/eMghh0yYMGEjY77xxhvr1at36qmn3nbbbSeccMLs2bMr7jN16tSjjjqqQ4cOd95554ABA84666w2bdoMGzasqmOuWbPmF7/4Rf369X/3u99df/31Z5111kaKz9eetK/VqlWrimf1wAMPLLfbwoULu3fvvttuu/Xp0+fxxx+/+uqrTz/99E8++eS5557L/uWVn5//8ssvZzKZZs2alTtmw4YNx4wZk8lk9t5778LCwnIv9/LLLy9ZsqTiD8/GjRunr/6rX/2qbt262Yfq1at34YUXZsdWVlbWv3//Ro0ade7cuV+/fv369fv5z39+4403VvoXWcXEVs1vJQCAmpKXqfaszHw/lZWVLVy4cOnSpYWFhc2aNdukpS0zmcyXX365dOnSZs2aZe99mzt37po1a+rWrVunTp26devWrVs32+myiouLFy5cuGLFiiZNmlQ1H1BNWbly5cKFC9evX9+4ceOq7lzbVOvXr//oo48++uijgoKC3Xff/ZBDDqnO+q1bgyuvvPLWW2/deNK9//77O3TokC45Vx0vv/zypEmT+vTpsyUGGFJcXDxt2rQFCxbstttu+++/f/bTzGQyc+fO3X333Su+dVMfffTRp59+Wrdu3X333XdLvUlSm3pytuxIPvjgg5YtW1Z8c06aNOnAAw+s9P64BQsW1KlTJ62fn3766fvvv9+gQYM2bdpsxs2qG7Fs2bLu3bu/8MILVe3w0UcfpX28qKho4sSJy5cvb9my5d57772Rt25xcfHkyZNXr17dvn37r53kfgv68MMPP/vss3r16h1wwAHVmQCuUnPnzp01a9b69evbtWu35557ZrevXr169erV2ZOf3gCbl5eXyWSmTJkyd+7cJk2atGnTJnd16Up97Qn/hrz44ounnnrq3nvvna4cunDhwvfff7+srKxNmza5n2ZVli1b9t5779WqVevwww9PL1+t1Pz58z/++OOSkpIWLVqU+2eVSs2ZM+fjjz9u1qzZxn/Kfcsnbfny5bNmzVqwYEGTJk0OOeSQvLy8L7/88v333995550bNWqU/pvZtzOSikpLSydPnrxgwYJGjRodeOCBVU0U26tXr0GDBt10002V3vYOALAVktiArcsZZ5wxcODA9G5ZynFyKtW/f/8999wzu4It37SaOuHlEtu2xbt0U1144YUPPvhg3759b7jhhpoeCwBAtVRy0QFATZk3b16tWrUkpEo5OZXKZDLDhw9Pp4rjW+CEbwYnrTrS2yuyF8unq3Nkl1cCANj6WVEUqDGvvfZa48aNb7vttuyWQYMGXX755TU3oq2Ik1OpJUuWtGjR4uSTT85uee2110466aSN3PdHxFZ1wreV6+63qpO2rVi8eHGrVq1atWq1aNGidEu6hPeBBx5Yo+MCANgEEhtQY1555ZUlS5ZkJyeaPHny7NmzjzzyyJod1VbCyanU+PHj58yZM2rUqK+++ipJklWrVt1xxx0XX3xxTY/rO2urOuErVqxI/7uVt7at6qRtKyZOnPjpp59+9tlnkyZNSpJk9erVEyZM6Ny580EHHVTTQwMAqC43igI1pmvXro8++uitt96aJMmECRP69u379NNP1/SgthZOTqWOO+64vfba67zzzqtfv/78+fMvu+yy22+/varp0onbSk74X/7yl9mzZ6drYi5ZsuSkk0464IADzj777EMPPfRbHkl1bCUnbdty7LHHtmvXbo899jj22GNXrlx5ySWX7LHHHn/9619relwAAJvAcgdATZo8efK99967Zs2a/fff/49//GP9+vVrekRbESenUgsXLrzrrrs+/fTTpk2bXnnllaZq+qZtDSf8qaeeWrNmTUFBQbr+aSaTKS4u7tixY/WXKv6WbQ0nbZuzfPnyhx56aMqUKSUlJYcccsjFF19cg8ueAgBsBokNAAAAAELMxQYAAAAAIRIbAAAAAIRIbAAAAAAQIrEBAAAAQIjEBgAAAAAhEhsAAAAAhEhsAAAAABAisQEAAABAiMQGAAAAACESGwAAAACESGwAAAAAECKxAQAAAECIxAYAAAAAIRIbAAAAAIRIbAAAAAAQIrEBAAAAQIjEBgAAAAAhEhsAAAAAhEhsAAAAABAisQEAAABAiMQGAAAAACESGwAAAACESGwAAAAAECKxAQAAAECIxAYAAAAAIRIbAAAAAIRIbAAAAAAQIrEBAAAAQIjEBgAAAAAhEhsAAAAAhEhsAAAAABAisQEAAABAiMQGAAAAACESGwAAAACESGwAAAAAECKxAQAAAECIxAYAAAAAIRIbAADbnuLi4tLS0poeBQDA/6egpgcAAADVVVxcfMsttzz99NMrVqxYt25du3btDj744D/96U9t27atkfGUlpY+9thjkydPzs/P79mz5yGHHPLcc8/97//+b506dXr27NmuXbsaGRUA8O1zFRsAANuGWbNmde7cubCwcOLEicuXL//ss88uuuiif/zjHwcccMA111yTyWS+5fEUFRX16NGjdevWDzzwQMeOHY8++ugbbrhhxowZAwYM+Oijj7p27fotjwcAqEF53/7/iwAA8H1TXFxcu3btyBFKSkrat28/cODAI488Mnf71KlT27dvX1xcfOedd1599dWxYW6aa6+99oQTTjjuuOOSJFm1alXDhg332WefadOmLV++fPfddz/nnHP+9re/fZvjAQBqkKvYAAD4Zj366KPnnHNO8CD9+/c/44wzyvW1JEkOOuigiy66KEmS6667bsqUKZt9/PXr1xdXQ+5TysrK0r6WJMkHH3yQJEn37t3z8/N32WWXhQsX6msA8L0isQEA8M1asmTJkiVLggcZPHjwHnvsUVRUVPGh8847L0mSkpKSRx55ZPMOPmTIkB2r54ILLsg+64477sj++d///neSJNni1qhRo80bCQCwjbLcAQAAW7uioqKPP/64Z8+eQ4YMGTlyZLlHW7VqlZ+fv2HDhkmTJm3e8bt06dKlS5fICF9//fX69esfdthhkYMAANsuV7EBALC1KysrS/8wefLkio9uv/32hYWFSZKsXbv2Wx3W/9mwYcObb7555JFHFhT8f/+AvXjx4nnz5tXIYACAGuEqNgCA77VMJjN8+PCxY8du2LDh9NNP79ixY7r9tddee+mllzKZzIknnnjCCSfU7CDr1av34IMPjhgxolevXhUfXbly5fLly5MkadeuXVVHKCoqGj169JtvvrlkyZIWLVp07dq1ZcuWkSEtXrz4uuuu69at249+9KM333xz9erV7du3zz56ww03XH755ZHjAwDbFlexAQB8fxUVFXXr1m3+/Pl9+vTp3r179+7db7nlliRJevfuPWHChKuvvrpHjx6/+93v7rzzzpoeadKzZ89hw4b95Cc/qfhQ9v7Q//qv/6r4aFlZ2b333tu2bdsXX3yxS5cu/fv379ixY5cuXV577bXIeJ566qmHHnronXfeSZLknnvuady4cWlpafrQyJEjGzRo0LZt28jxAYBti6vYAAC+p8rKyn79619fe+21hx56aJIkjRs37t69+80335wkSZ06dfr06ZMkyS9/+cv58+ePHj26d+/eNTzcqj366KNJkuyxxx4XXnhhuYeWL19+5plnTp48+ZVXXjn88MPTjUceeeTAgQMvvPDCTp06bfaLduzY8Yc//GEmk+nevXvPnj1vvPHGbt261atXb/ny5TvssMPWECUBgG+TxAYA8D318MMPn3baaWlfS7Vo0aK0tPTuu+9euHBhuiWTyeTn51dMV1uP2bNnDx06NEmSe+65p379+rkPrV279pRTThk3btyLL76Y7WupXXbZZcGCBZHXPfjggydNmjRjxoxzzz23YcOGSZJ88MEHn3zySYsWLbbffvvIkQGAbZHEBgDwfbR+/frHH3983LhxuRtnzZqVJMlpp51Wt27ddMvYsWO/+uqrNCFtnXr16lVcXPzHP/7x7LPPLvdQnz59xo0b99Of/vTkk08u99DQoUNPPfXU+Ku3adMm++e8vLzcDwGA7xWJDQDg+2jZsmWXXXZZXl5e7sa33norSZLc+c4KCgq25r72l7/8ZeTIkeeff37FGzNnzpx5//33J0lSbtmBFStW3HPPPSNHjhw1atS3Nk4A4DsvL5PJ1PQYAACoeUVFRTvuuGNxcfGcOXOaN2++Sc+9884777333qr+x3LNmjXr16/feeedq3r6YYcd9sILL2zacJNk1KhRJ5100gUXXHD//feXa4VJkvTt2/emm26qXbv2Qw89tN12261bt27OnDmffPLJypUrf/KTn1xyySVu5wQAtiBXsQEAkCRJMn78+OLi4latWm1qX0uSpEuXLq1bt64qsf3rX/+aMmVK3759q3p6y5YtN/UVp0yZcuaZZ1511VV33HFHpTu89NJLSZIcd9xxjRo1SpJk9913b9++fbt27ZQ1AOCbILEBAJAkSTJ27NgkSTp06LAZz23evPlGwtzMmTM///zzX/ziF5s9tnI+++yzU045pU+fPldffXVV+8ydOzdJkp/+9KennHLKlnpdAICqbFfTAwAAYKvw+uuvJ0ly3HHH1fRAvsbSpUtPPvnk66+/vmJfGzhwYPbPK1asSJJk3333/TbHBgB8b0lsAAAkxcXF48ePT5LkmGOOyd0+a9asjVwp9u1bt27daaed9oc//OHCCy8s99DKlStzVzBo0aJFkiS77LLLtzk8AOB7S2IDAPg+mj9//pAhQ4qKitIPR48enS53sOeee+buNmDAgJNOOqkmBliJDRs2dO3a9be//e3vfve7io++9dZbbdu2zX7Yrl27JEmWLFlS1dGuueaatCoCAMSZiw0A+F4bNGhQ8+bNTz755MhBvvrqqyuuuKJ///477LDDlhrYN2revHlt27Zdt27dk08++Zvf/CZJkieffLJevXqFhYW5u02fPn3ZsmWbNzvbN+Giiy7KZDK1a9d++umnsxvLyspKS0tXr1791FNPXXTRRdntvXr1eu655957772OHTtWPNSVV15Zt27dI4444tsYNwDwPSCxAQDfNdOnT3/vvff23HPPww8/fON79uvXb9KkSf/85z+Dr1i/fv2f/exnnTp1evXVVxs2bBg82rdg9uzZ69ata9CgQdqYXn311f33379FixZ33nnnnDlz0gvZ5s+f36dPn9zZzWpW3759H3rooSRJhg8fXtU+uVexde7c+bTTThs4cGDPnj1z0+GkSZPuuOOOzp07V3opHADA5smram11AIBtTiaTufDCC997771evXp9+umnEydOHDp0aJ06dSrdefDgwX379n333XfLXbq12a655ppp06a98MIL2223tc/FUVJSctZZZ9WuXfvUU0+dOnXqihUrHnzwwfXr13fr1m3x4sXdunWbMWPG9OnTH3744UaNGsVf7s4773zllVfGjBmz2Uf4/PPPmzVr9rW7LVmyJHfApaWl11xzzejRo88555zGjRvPnDlz0qRJ+++/f+/evXfaaafNHgwAQEUSGwDw3fGnP/1p0KBBM2fOLCgo+NGPfvTBBx+8+OKLld4EOnXq1B//+Mdjxow5+OCDt9Srl5aWduzY8bjjjrvlllu21DG/UdOnT585c2arVq3SactSM2bMmDlz5l577ZW7MSie2CKKioqmTJmyYsWKPfbYY7/99tv6AygAsC1yoygA8B0xderUO+64o2vXro0aNRo+fPgHH3yQl5fXpEmTintmMpkLLrjg/PPP34J9LUmSgoKCgQMHHnrooV27dt1nn3224JG/IW3bts29szLVpk2bNm3abNkXys/Pz8/P37LHrL46deqYcw0A+KZJbADAd8STTz6ZJEn79u2TJDn++ONvvPHGo4466oc//GHFPR955JF333136NChW3wMBxxwQIcOHS699NJRo0Zt8YNvu04//fT999+/pkcBAPANcqMoAPAdccABB7z//vv/+c9/jjrqqI3sVlZW1rp16yOOOCJ3VcotaOTIkSeccMKoUaM6der0TRwfAICtkMQGAHwXrFy5cuedd06SZNWqVfXr19/IniNGjPjpT3/69ttv/9d//dc3NJh99933wAMPfPbZZ7+h4wMAsLUx2ysA8F3w7rvvlpWVtWnTZuN9LUmSRx55ZPfdd//m+lqSJJ07d37uueeWLVv2zb0EAABbFYkNAPgumDp1apIkX7t8QXFx8WuvvbbxO0njjj766OLi4ueff/4bfRUAALYeljsAALZh77///qxZs5IkefXVV9Mtw4cPT5KksLCwQ4cOFff/97///dVXX1UnsX311VeDBw+ePHnyzjvv3K1bt3bt2iVJUlpa+swzz4wfP37nnXfu0qXLfvvtV+lzjz766CRJ3njjjR49emzmJwYAwDbFVWwAwDZs+PDhzz777LPPPvvvf/87SZJly5alH7788suV7j9+/PgkSb42sc2ZM+fss89u2rTp7bfffvDBB7dv3/7VV19du3btmWeeWadOndtuu+3AAw884ogj3njjjUqfvvvuu7dq1aqqRwEA+O6x3AEAsM1bt25dgwYNNmzYsGjRosaNG29kzy5dujz77LPLli3baaedqtrn888/P++8855++unsPkcfffSiRYuOOeaYrl27Hn/88atXr959993Xrl3br1+/a6+9ttKDnHDCCSNHjly7dm3dunUjnxoAANsEV7EBANu8999/f8OGDU2aNNl4X0uS5OOPP87Ly2vYsOFG9vnTn/5077335ja4Fi1afPLJJ3PmzDn++OOTJCktLc3Pz0/vFa3qIOnypnPnzq3mpzBy5Mh69erV2lw77bTT0qVLq/laAABsceZiAwC2eVOmTEmqsdZBkiSLFy8uLCzcbrsq/5VxypQp+fn5rVu3zt2YTvd29tlnpx/utNNOX3zxRa1atWrXrl3VcRo1apQkydy5c9u2bVudT+G4444bNWpUaWlpdXauaIcddkhfEQCAGiGxAQDbvDSxHXTQQV+755o1azZyi2iSJEuWLPnDH/6Qu6WoqGjy5MlJknTq1Cm7cYcddtj4C6VXsa1evfprh5SqXbv2j370o2ruDADA1kZiAwC2edW/im3NmjUtWrTYyA65HS01fvz44uLili1bbvyJ5aQhb+3atdV/CgAA2y6JDQDYtmUymffeey+pXmIrKCgoKirapOOPHTs2SZKOHTtu0rPWrVuXJMlG7iStQaWlpbVq1arpUXwvpAuL5eVZYQwAvvskNgBg2zZz5sw1a9bssMMO5SZQq1T9+vWXLVu2ScdPE1uHDh026VnLly9PkqRBgwab9KxvR0FBgeLzbXK2AeD7QGIDALZt6URpBx100EYWMcjaZZddZs2alclk8vLyqnPw4uLiCRMmJEly3HHHbdKo0sRWWFhYzf3feuutyy+/vKSkZJNeJatBgwbPP//8jjvuuHlPBwAgSGIDALZtaWI75JBDqrPzXnvtNWPGjNWrV1czfo0fP76oqKhFixbNmjXL3f73v/99u+22++Uvf1nVE9PEVp0L61Jt27b97W9/G1lRtGHDhpv3XAAA4iQ2AGDbtkmJrVWrVkmSLFy4sKrE9u677y5YsOCUU05JP3zxxReTymZ5Gzhw4PDhwzfyQl9++eXOO+/cuHHj6owqSZJGjRpdcMEF1dyZ74ANGzYsWrSoSZMmNT0QAGDL+Pr7KQAAtmZpYjvssMOqs3P79u2TJHn77bcrfXTo0KGHHXbYqaeeOm/evCRJiouL08RWrscNHjz4jDPOSNcMrdT69esnT5580EEHVfuT4Ptl9erVe++9d7Nmze67776aHgsAsGVIbADANmz+/PmLFi3aYYcd9t133+rsn06p9uabb1b66AcffJAkyb777tu0adMkSW699db777+/ffv2//73v7P7vP7662PHjr3kkks28iqTJ08uKio64YQTqv+J8L3y7rvvfvbZZ2VlZcOGDavpsQAAW4YbRQGAbdi7776bJEn79u2rs9ZBkiTNmzdv3bp1VYmtZ8+ew4YNO+WUU5566qkxY8YcfvjhHTp0ePbZZ0877bTzzjvvyCOPHDduXP369R966KGNv9xbb72VJMnJJ5+86Z8Q3wvHHHPMz3/+8/fee++Pf/xjTY8FANgyJDYAYBs2ceLEJEk6dOhQ/af06NHjuuuuW7p0aaNGjco99IMf/GDy5MnvvPPO0qVL77jjjnSerBYtWkydOvXtt99esWLFzTffXJ3Js15//fV99933gAMO2JRPhZpUWlpaUPDt/Y9xfn7+v/71r2/t5QCAb4EbRQGAbVia2H7xi19U/ynnnntufn7+k08+Wemj22233eGHH37SSSflprS8vLz27dufcMIJ1elr8+bNe/HFFy+++OLqD4kaVFpaetNNNx1zzDE1PRAAYNuWl8lkanoMAACbYN68ec2aNcvLy8tkMo0aNWrTps348eM36QjnnnvumDFjZs2alZ+fv8WHd/XVVz/yyCPz5s2rX7/+Fj84W8rKlSvnzJnz6quvPvbYYx9//PHBBx+crpsBALB5XMUGAGxLevbs2bx588suuyxJkokTJy5fvvyCCy7Y1IPccccdy5cv/+c//7nFh7dmzZqHHnrotttu09e+IcXFxfGDnHjiic2bNz/vvPOWL1+eroABABAksQEA24yysrKnnnoqSZIddtghSZK///3vP/7xj3v06LGpx9ltt9369u172223lZSUbNkR9u/fv3Xr1ueff/6WPSypRx999Jxzzokf55VXXlm5cuWECRNuu+22li1bxg8IACCxAQDbjO222+7oo48+77zzbr755rFjxw4ePPixxx7Ly8vbjENddtllzZs337LrOb7++uv333//kCFDqrm8KZtqyZIlS5YsqelRAABUwv//AQDbkmHDhjVq1KhLly5DhgwZP378Zl+ClJeXN3jw4Ndee23o0KFbZGALFizo1q3bM888s/fee2+RAwIAsA359tYmBwCI22mnnW6//fYtcqjCwsIxY8acddZZ7dq123///SOHKikp6dmz5wMPPNCpU6ctMjYAALYtEhsA8P3VuHHjV155ZeHChcHjZDKZBx54YM8999wio9pGZTKZ4cOHjx07dsOGDaeffnrHjh3T7a+99tpLL72UyWROPPHEE044oWYHCQDwDXGjKADwvVa7du3mzZsHD7L99tt/z/taUVFRt27d5s+f36dPn+7du3fv3v2WW25JkqR3794TJky4+uqre/To8bvf/e7OO++s6ZECAHwjXMUGAEBIWVnZr3/962uvvfbQQw9NkqRx48bdu3e/+eabkySpU6dOnz59kiT55S9/OX/+/NGjR/fu3buGhwsA8A2Q2AAACHn44YdPO+20tK+lWrRoUVpaevfdd2dvws1kMvn5+RdeeGENjREA4JslsQEAsPnWr1//+OOPjxs3LnfjrFmzkiQ57bTT6tatm24ZO3bsV1991bBhwxoYIgDAN89cbAAAbL5ly5ZddtlleXl5uRvfeuutJEl+8pOfZLcUFBToawDAd5ir2AAA2Hy77757ly5dcrcUFRVNmDAhSZIOHTps6tHuvPPOe++9N5PJVPromjVr1q9f36RJk6qefthhh73wwgub+qIAAHESGwAAW9L48eOLi4tbtWq1GUu1dunSpXXr1lUltn/9619Tpkzp27dvVU9v2bLlpr4iAMAWIbEBALAljR07NtmsS9iSJGnevPlGwtzMmTM///zzX/ziF5s9NgCAb4i52AAA2JJef/31JEmOO+64mh4IAMC3R2IDAGCLKS4uHj9+fJIkxxxzTO72WbNmXX311TU0KACAb5zEBgDA5ps/f/6QIUOKiorSD0ePHl1UVLTjjjvuueeeubsNGDDgpJNOqokBAgB8GyQ2AAA207x589q0adO1a9d//OMf6ZYnn3yyXr16hYWFubtNnz592bJlmzc72zettLQ0+18AgM0msQEAsJlmz569bt26Bg0aHHHEEUmSvPrqq/vvv/8ll1wyd+7cOXPmpPvMnz+/T58+/fv3r9GRViKTyXz66aevvPJKkiSzZs0aM2ZMSUlJTQ8KANhWWVEUAIDNdNRRR/385z+vXbv2hAkTHnrooRUrVjz44IPr16+fPXt2jx49unXrNmPGjOnTpz/88MONGjWq6cH+/91000333Xff+vXr8/Ly8vLyGjZsmMlkfv7zn2cymYKCghYtWkyaNKmmxwgAbGPyMplMTY8BAIBt2PTp02fOnNmqVat27dplN86YMWPmzJl77bVX7sagO++885VXXhkzZsyWOiAAwJbiKjYAAELatm3btm3bchvbtGnTpk2bLftC+fn5+fn5W/aYAABbhMQGAMC24fTTT99///1rehQAAJVwoygAAAAAhFhRFAAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEN/5y3UAACLiSURBVIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYAAAAACBEYgMAAACAEIkNAAAAAEIkNgAAAAAIkdgAAAAAIERiAwAAAIAQiQ0AAAAAQiQ2AAAAAAiR2AAAAAAgRGIDAAAAgBCJDQAAAABCJDYAAAAACJHYgP9fe3canGV1KHD8ZJGQl7AaRggBFGUtjEDBggutDktcEGyLigg61Q4opiIu0NKhLG0pVaculBZ1tIqEitSpKBSs2IoVN1DsiGwFB2QphipFEghL3vvhmZubCxYCx5Yqv98Hxjyc57zn5PUL/3kWAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKNknegH8W2RkZJzoJQAAAAD/J51On+gl8G+U4QsGAAAAgBhuFAUAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUbJP9AIAAADgxKioqMjOzs7KyjrRC/lsL7zwwurVq8vLy3v06PGNb3zjWE9/7bXXzjrrrMaNG/8blvafkE6n9+7dm5ube6IXAjXiKjYAAABORiUlJalU6tJLLz3RC/mX1q5dO3Xq1O9///svv/zysZ778MMPn3vuuZ06ddq3b1/8ShYtWjRo0KCOHTsWFhaec845N9xww/Llyw8Z8+qrr1511VXt27c/66yzevbsOWXKlL179x7rJFXKysq6d++eSqVee+214172zJkz+/Tp07p16zZt2vTt27ekpOSQAVu3br311lsvvPDCjh07nnXWWYMGDVq2bNlRpz3qRp566qkuXbpcc801EydOvO+++4qLi/v16/ed73znuDfCF4LEBgAAwEnn1VdfveGGGyorK8vKyk70Wv6lW2655aqrrjq+c/fv35/8WVlZGbmMkpKSoqKi8vLyBQsWvPTSSwMGDHj88ce7dev2yCOPVB/Tq1evrKysJUuWrF69etKkST/5yU969epVVdlqMkmVysrKIUOGJN2qvLz8+JY9YsSIYcOGXXrppe++++6KFSuKioqGDBnyve99r2rA9u3bu3bteu6557700kvvvffe4sWLCwoKevTosWbNmsjfxo4dO1asWDF79uwJEybcdttt06ZNW79+/ejRo49vI3xRSGwAAACcXDZs2HDllVcWFxef6IUc3XHfxDp8+PAFCxa8/fbbtWvXjlzD/PnzQwgbN25s0aJFmzZtxo0bN3LkyBBCcXFxRUVFCKGysnL06NGVlZX33HNP48aNs7Oz+/TpM2jQoLfeemvmzJk1nKS6O++8c8+ePV/96lePe80rV66cMWNG69atR40alUqlUqnU6NGjzzjjjAcffHDdunXJmNmzZ2/fvj0/Pz8jIyOE0LJly3Hjxh08ePC5556L+W0kMjMzW7dufeaZZ/bu3XvGjBnvvvtux44dj3s7fCF4FhsAAAAnkZ07d1522WWTJk0qLCy8++67a37iihUrVqxYsW3btiZNmlx88cVr166dP3/+V77ylWHDhu3atevpp5/evXt3/fr1r7/++kWLFq1evfqiiy7q1KlTCOG9995bunRpeXl5nTp1vvvd74YQSktL582bV1ZWVlZWNnr06JycnKpP2bp167Jly9atW9egQYOuXbsevownnnhi165du3fvvvXWW/ft27dgwYKNGzc2atTo8ssvb9KkSTKmrKzsqaeeKisrW7FixdixY5OEFEJYuXLlokWLPvroo3r16hUWFvbr1++000476saHDx++fv36m2++uepIt27dQgh79+7dtGlT69atlyxZsn379tq1axcUFFSNSf57zpw5yZaPOknV8YceemjRokVLly7t16/f0b+Vf+Hpp58OIZx55pnVDzZt2vSDDz6YM2fOuHHjQgipVCqE0KdPn6uuuuoHP/hBp06dnn322RDC2WefXXVKRUXFK6+8ct5551U9Eq6GG0mlUmvXrj3u9fOFlAYAAICTw/79+3v37j1mzJh0Or1w4cIQwvnnn3/Us5L7FrOzs0eNGjVt2rSBAweGEDp16nTdddeFEN5///2tW7cWFRWFEHr06HH77bcPGjSoZcuWGRkZf/7zn9Pp9Lx58zp06BBC6NixYzLhmjVrvv71ryf/Kt+5c2dy8ODBg3fccUdOTs6FF144derUn/3sZ+ecc05eXl4IYcKECVWLGTJkSJLMHnvssa5du06ePHnKlCn169dv1KjR+vXrkzGlpaV9+/ZN5j9w4EBy8OWXX87MzExC0syZM3v27FmrVq377rvvOH6Nw4cPDyE0b948+fGXv/xlCKFx48bVx0ydOjWE0KxZsxpOkvjjH//YrFmzDz74IJ1O9+jRI4Tw4osvHscKBw0aFEIYNGhQ9YMXX3xxCGHIkCHJjzt27GjZsmVVHjnnnHNSqdSsWbMOn2fgwIFH+KzDNzJt2rTatWv/9Kc/veCCC7p06XLllVf+6le/qvoi+LJyoygAAAAni5EjR9arV2/KlCnHdNa8efNmzZrVr1+/X/ziFyNHjpw7d25eXt6qVasmTpz4xBNPtGnTpmnTps8//3wIYeXKlaWlpXPmzElucszOzg4h9O/ff/z48dUnbNOmzaxZsw75lMmTJ99zzz19+vRZvHjxXXfdNWbMmNdee+3wuwuffPLJtm3bhhCmT5/+8ssv//CHPxw7duxll1328ccf//73v0/G5OfnP/PMM4ecuHHjxsrKyqZNm15++eXXXnvtvHnz9u3bd9ttt3300UfH9Nt44YUXHn300bp1686ZMyc5snPnzhBC1bVyiTp16oQQPv744xpOEkJYtWrV0KFD586de/rppx/Tkg5XkyWdeuqpDz/8cNWYN998s7y8/He/+11ybiKdTocQDhw48K8+6DM3kpWVlZWVlZOTM3PmzMWLF3fv3v2mm246//zzP5dXT/BfS2IDAADgpHDvvfe+8847M2fOPKS8HFXyQLSqx6JlZmZmZ2cfPHgwLy9v6NCh1f/2008/TR6oP2fOnK1bt5533nnJKUlrq+7wI8m1YNdcc03V8jIzMwsLCw9fT3Lu0KFDk2vcQgh169YNIXz44YdHmH/w4MF/+MMf7r777vnz58+YMePRRx/NyclJp9NVzyariYULFw4YMKBXr17Lly9PrjILISQ3UR7y4ojkNQXJzZg1maS0tLR///73339/1ZEYNVnS9OnTL7nkkmHDhi1dunTw4MHJN/jMM88MGzas6pTf/OY38+bN++1vf/uZn/KZGwkhXH/99Vu2bBk9enTLli0bNmx4++23p1Kp119/fdq0afFb47+WxAYAAMCX3/vvv3/XXXe1aNFizJgxxcXFxcXFSdJav359cXHxkdtH3759u3Xr9sILL0yePLmkpOTGG2/ctWvXj3/841NPPfXwwW3atAkhZGVlVT0ZrSbKy8tLS0tDCPXr16/hKdUffFYTS5YsGT9+fM+ePWfPnp1Op9u1a3d4hjuy+++//7rrrnv44YdffPHFli1bfvOb39y8eXMIIdlpWVnZwYMHqwbv2rUrhNC0adMaTlJcXLxv375XXnml+H998MEHIYQHH3ywuLh4w4YNx7TUZEnJGj5zSRUVFaNHj+7QocNjjz3Ws2fPkpKStWvXDh48OITw/PPPV13IVqdOnf79+yeXv9VwI+l0esSIESNHjqy69i0jI6NFixYhhDfeeOOYdsEXi9cdAAAA8OXXsGHDBx54oPqRVatWhRByc3PbtWv3mReLVcnKytq0adPjjz++Zs2av/71r927d7/zzjvbtWv3mYNr1apVk/UcUn9SqVSbNm3Wrl27adOm6seTGxXjbdy4saioKJ1Or1y5MomA4VheV1pRUTF8+PD58+dPmTKlYcOGzz333BtvvPHss88mt7sWFRXVqlVr3759n3zySX5+fnJKcj9m//79azjJ4MGDL7jgguqDt2/fHkJo3rx5u3btqt42MH369IULF06dOrV9+/ZHWPDll1/+0EMPHXKbavUlbdu2raKiInlkXvK3rVq1Kikp2bBhw1tvvXXKKackB5csWfLAAw/cfPPNF110UQ03smbNmscffzyEMGrUqORNCOF/v+5DXr/Al82JfBAcAAAAnCB33HFHqNnrDvbu3Zudnd27d+/x48dPmDBh0qRJ995775/+9Kc9e/ZUH5b8K3vv3r2Hz/D222+HEE477bSqCUeOHJmM/9vf/pYcXLBgQUZGRrt27UpLS5Mjjz32WBLsbrnlluqzJQ9omzt3btWRESNGhBBGjRpVfc3J/MlT9rdt23bKKafk5ORs2LAhGfDSSy8lAxYuXHjk7W/duvVrX/va4T2hVatWVWNuvPHGEMLdd9+d/Lhjx46CgoK8vLyq3dVkkup2796dDKj+uoOysrLkyrtrr732yGvet29f0uDefPPN5MjSpUtDCB07dty/f386nT5w4EDr1q3r1q1bNSCdTv/9739v0aLFsGHDqo4kt/p269at5r+NAwcOnH766Z07d676P6GkpCSE0KRJk82bNx952XyhSWwAAACcXPr371+vXr0GDRrUr1+/Tp06ubm5yRVeR/Ctb33r8KqSn5+fBKDVq1enUqm6devm5eXl5ub+/Oc/P+T0ysrKsWPH1q9fv23btj169CgsLLz//vuTi8gyMjKWLVuWDPvLX/7Sq1ev+vXrd+3a9fTTT7/kkkuS1yaEEIYOHZqMqVevXiqVqlevXp06dZKkVVRUlBzJy8u74oor0un0e++9V7t27by8vDp16uTk5CQvLX3iiSdatWqVmZnZuXPnzp07X3311TNnziwoKMjIyOjatesR9p68VfNwl156adWYPXv2jBo1qm7duj179rziiivy8/O7dOmydOnSY5ok8frrr+fm5jZo0KBevXp169ZNtvDqq68mf3v99dc3bty4bdu2R/6+0un0hx9+eNlll+Xl5fXr169v3755eXkDBgzYsmVL1YCtW7cOGDAgJyenS5cuRUVFHTp0yM/PHzduXHl5edWYGTNmFBQUTJ8+/Zg2snbt2j59+hQUFPTu3btdu3a1atW6+uqr161bd9Q184WWkf6cLjoFAACAL6WbbrrpySefHDduXGFhYUZGRjqd/vTTT1esWPHII4+cffbZyRVqNXHw4MEdO3ZkZmbm5+dnZGRs2bIllUqlUqmcnJzqw9LpdGlpaX5+fmZm5j/+8Y90Op2bm5ubm5uZ+Tk8Tn3nzp1lZWX5+fmHfOjnYu/evRs2bCgvLy8oKDjWR8XV3DvvvPOjH/1o3rx5NRn8ySefbNy4MSMjo2XLlg0aNDh8wJ49e9atW1dRUVFYWNikSZNjfRXGEXz88ccbN25s0KBB8+bNj/Wxd3wRSWwAAABwJGeeeWZWVtby5cuTF3cm/vnPf3bu3Ll27drJM934j7n22mu//e1vDxw48EQvBP4fGRUAAACOZM6cOSNGjDjjjDN69+7drFmzdDq9efPmxYsXt2rV6te//vWJXt3JZeLEibVr19bX+C/kKjYAAAA4us2bN2/YsGHHjh3pdLpRo0bt27dv0qTJiV7USeeTTz5p2LDhiV4FfAaJDQAAAACifA7PSgQAAACAk5nEBgAAAABRJDYAAAAAiCKxAQAAAEAUiQ0AAAAAokhsAAAAABBFYgMAAACAKBIbAAAAAESR2AAAAAAgisQGAAAAAFEkNgAAAACIIrEBAAAAQBSJDQAAAACiSGwAAAAAEEViAwAAAIAoEhsAAAAARJHYAAAAACCKxAYAAAAAUSQ2AAAAAIgisQEAAABAFIkNAAAAAKJIbAAAAAAQRWIDAAAAgCgSGwAAAABEkdgAAAAAIIrEBgAAAABRJDYAAAAAiCKxAQAAAECU/wFLQpYgFmb08wAAAABJRU5ErkJggg==", "text/plain": [ "" ] }, "metadata": { "image/png": { "width": 800 } }, "output_type": "display_data" } ], "execution_count": 35 }, { "metadata": { "ExecuteTime": { "end_time": "2024-12-03T07:23:18.491207Z", "start_time": "2024-12-03T07:23:18.477877Z" } }, "cell_type": "code", "source": "", "id": "d2eb5a6ee2c09a62", "outputs": [], "execution_count": null }, { "metadata": {}, "cell_type": "code", "outputs": [], "execution_count": null, "source": "", "id": "e42e960f22d8fc7d" } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 2 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython2", "version": "2.7.6" } }, "nbformat": 4, "nbformat_minor": 5 }