diff --git a/.gitattributes b/.gitattributes
new file mode 100644
index 0000000..774bc8b
--- /dev/null
+++ b/.gitattributes
@@ -0,0 +1,2 @@
+# Mark Notebook files as binary
+*.nb binary
diff --git a/README.md b/README.md
index 55dbf1e..57e3965 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
# Mathematica Class Demonstrations
-
+
A large collection of Mathematica demonstrations written by Adam Rumpf, sorted according to the class that they are most likely to be useful for. See the author's page [here](https://adam-rumpf.github.io/demos/mathematica.html).
diff --git a/calc-diffeq-analysis/bifurcation-analysis.nb b/calc-diffeq-analysis/bifurcation-analysis.nb
index 0b4cea8..f454402 100644
--- a/calc-diffeq-analysis/bifurcation-analysis.nb
+++ b/calc-diffeq-analysis/bifurcation-analysis.nb
@@ -1,1960 +1,1960 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.4' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 69409, 1952]
-NotebookOptionsPosition[ 66965, 1870]
-NotebookOutlinePosition[ 67308, 1885]
-CellTagsIndexPosition[ 67265, 1882]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Bifurcation Analysis", "Title",
- CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
- 3.7771302217782173`*^9, 3.7771302252764606`*^9}}],
-
-Cell["Adam Rumpf, 2/20/2017", "Text",
- CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
- 3.7771302419672003`*^9, 3.7771302444085283`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
-
-Cell[TextData[{
- "Below is a sequence of examples of four common types of bifurcation: \
-saddle-node, transcritical, pitchfork, and Hopf. For each example we provide \
-a specific autonomous ODE system which displays that type of bifurcation. In \
-all examples, ",
- Cell[BoxData[
- FormBox["x", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox["y", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " represent functions of time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " while ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " represents the single parameter which will be varied to create the \
-bifurcation."
-}], "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.777136540361297*^9, 3.777136541839939*^9}, {3.7771392486350613`*^9,
- 3.777139425884313*^9}}],
-
-Cell[TextData[{
- "As a review, a bifurcation occurs when changing the value of the parameter ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " causes a qualitative change to the equilibria of the system. The specific \
-type of qualitative change determiens the type of bifurcation, but in general \
-it describes a change in the number or the stability of the equilibria. We \
-can attempt to look for bifurcations by solving for the equilibria ",
- Cell[BoxData[
- FormBox[
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "*"], ",",
- SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " by setting ",
- Cell[BoxData[
- FormBox[
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- FractionBox[
- RowBox[{"\[DifferentialD]", "y"}],
- RowBox[{"\[DifferentialD]", "t"}]], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " equal to 0. In general these equilibria will be functions of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", and we can look at how the equilibria change as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " changes. For example, some values of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " will cause several equilibria to merge into one, or to become imaginary, \
-in which case the number of equilibria depends on ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Text",
- CellChangeTimes->{{3.777136538540001*^9, 3.7771366108791237`*^9}, {
- 3.7771394295820074`*^9, 3.7771394393980103`*^9}, {3.7771396211951604`*^9,
- 3.7771399003029437`*^9}}],
-
-Cell[TextData[{
- "A bifurcation also occurs when the stability of an equilibrium changes. In \
-order to evaluate the stability of an equilibrium, we examine the eigenvalues \
-of the Jacobian matrix. Given an ODE system ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{"f", "(",
- RowBox[{"x", ",", "y"}], ")"}]}], ",",
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "y"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{"g", "(",
- RowBox[{"x", ",", "y"}], ")"}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", the Jacobian evaluated at the equilibrium ",
- Cell[BoxData[
- FormBox[
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "*"], ",",
- SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is"
-}], "Text",
- CellChangeTimes->{{3.7771399068080826`*^9, 3.7771399540139265`*^9}, {
- 3.7771399910351863`*^9, 3.7771400245503855`*^9}, {3.777140131720338*^9,
- 3.777140144319103*^9}}],
-
-Cell[TextData[Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["J", "*"], "=",
- SubscriptBox[
- RowBox[{"(", GridBox[{
- {
- FractionBox[
- RowBox[{"\[PartialD]", "f"}],
- RowBox[{"\[PartialD]", "x"}]],
- FractionBox[
- RowBox[{"\[PartialD]", "f"}],
- RowBox[{"\[PartialD]", "y"}]]},
- {
- FractionBox[
- RowBox[{"\[PartialD]", "g"}],
- RowBox[{"\[PartialD]", "x"}]],
- FractionBox[
- RowBox[{"\[PartialD]", "g"}],
- RowBox[{"\[PartialD]", "y"}]]}
- }], ")"}],
- RowBox[{
- RowBox[{"(",
- RowBox[{"x", ",", "y"}], ")"}], "=",
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "*"], ",",
- SuperscriptBox["y", "*"]}], ")"}]}]]}], TraditionalForm]],
- FormatType->"TraditionalForm"]], "Text",
- CellChangeTimes->{{3.7771399729132023`*^9, 3.7771399843240213`*^9}, {
- 3.77714002741781*^9, 3.777140100754119*^9}, {3.7771401471975985`*^9,
- 3.7771401633902807`*^9}, {3.7771427843909597`*^9, 3.7771427935276084`*^9}}],
-
-Cell[TextData[{
- "If all eigenvalues have negative real parts, then ",
- Cell[BoxData[
- FormBox[
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "*"], ",",
- SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is stable. Otherwise it is unstable. Further classifications (like being a \
-saddle point, or orbiting in a particular direction) can also be made. As \
-with the equilibria, themselves, the eigenvalues of the Jacobian are \
-functions of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", and the signs of their real parts may depend on ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which leads to other types of bifurcation"
-}], "Text",
- CellChangeTimes->{{3.777140172105179*^9, 3.777140290076988*^9}, {
- 3.777140339810768*^9, 3.777140349130089*^9}}],
-
-Cell[TextData[{
- "Note that, in the case of a one-dimensional ODE system ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{"f", "(", "x", ")"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", the Jacobian ",
- Cell[BoxData[
- FormBox[
- SuperscriptBox["J", "*"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " reduces to simply the scalar ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[PartialD]", "f"}],
- RowBox[{"\[PartialD]", "x"}]],
- SubscriptBox["|",
- RowBox[{"x", "=",
- SuperscriptBox["x", "*"]}]]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", in which case we can look directly at the value of ",
- Cell[BoxData[
- FormBox[
- FractionBox[
- RowBox[{"\[PartialD]", "f"}],
- RowBox[{"\[PartialD]", "x"}]], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " rather than having to look at eigenvalues."
-}], "Text",
- CellChangeTimes->{{3.7771402937021027`*^9, 3.777140434198078*^9}}],
-
-Cell[TextData[{
- "Each section below describes a different type of bifurcation. First an ODE \
-system will be presented, then a bifurcation analysis will be conducted by \
-hand, and finally a Manipulate environment will be defined to show a \
-visualization of the bifurcation in action. In all cases there is a slider to \
-control the value of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]]],
- ". Equilibria will be shown in red on the stream plot, either as a line (for \
-the 1D case) or a point (in the 2D case). For the 1D cases, to the right of \
-the stream plot will be a plot of the equilibrium values as a function of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]]],
- ". In all cases, solid lines and filled dots correspond to stable \
-equilibria, while dotted lines and hollow dots correspond to unstable \
-equilibria."
-}], "Text",
- CellChangeTimes->{{3.777140451556507*^9, 3.7771406396788273`*^9}, {
- 3.777143704620434*^9, 3.7771437074667997`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Saddle-Node Bifurcation", "Section",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
- 3.777136401274056*^9, 3.777136416298379*^9}}],
-
-Cell["\<\
-A saddle-node bifurcation occurs when two equilibria collide and annihilate \
-each other (or, if moving in the other direction, when two equilibria are \
-spontaneously generated out of nothing). Specifically this can occur when \
-changing the parameters causes a pair of equilibria to simultaneously become \
-real or imaginary. The example below concerns the 1D system:\
-\>", "Text",
- CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
- 3.777140654593788*^9, 3.77714069874934*^9}}],
-
-Cell[BoxData[Cell[TextData[Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{
- SuperscriptBox["x", "2"], "-", "r"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
- CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
- 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}}],
-
-Cell[TextData[{
- "Setting ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and solving, we find that the equilibria are ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". We can consider different cases depending on the value of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ":"
-}], "Text",
- CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
- 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
- 3.77713704004583*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[TextData[{
- "If ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", then ",
- Cell[BoxData[
- FormBox[
- SqrtBox["r"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is real, and thus we have two real equilibria."
-}], "Item",
- CellChangeTimes->{{3.7771368388776255`*^9, 3.777136876907528*^9}, {
- 3.777137050530507*^9, 3.77713706427261*^9}}],
-
-Cell[TextData[{
- "If ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", then ",
- Cell[BoxData[
- FormBox[
- SqrtBox["r"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is imaginary, and thus we have no real equilibria."
-}], "Item",
- CellChangeTimes->{{3.7771368388776255`*^9, 3.7771369074951057`*^9}, {
- 3.777137071701436*^9, 3.77713707583746*^9}, {3.7771407238414207`*^9,
- 3.7771407246057043`*^9}}],
-
-Cell[TextData[{
- "If ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", then we have exactly one unique equilibrium of ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Item",
- CellChangeTimes->{{3.7771368388776255`*^9, 3.777136930784681*^9}, {
- 3.777140737329257*^9, 3.7771407382486253`*^9}}]
-}, Open ]],
-
-Cell[TextData[{
- "We can conduct stability analysis by evaluating ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- FractionBox["\[PartialD]",
- RowBox[{"\[PartialD]", "x"}]],
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "2"], "-", "r"}], ")"}]}], "=",
- RowBox[{"2", "x"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " at ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". In the case of ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", clearly ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- SqrtBox["r"]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " yields a positive Jacobian while ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"-",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " yields a negative one, and so ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- SqrtBox["r"]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " should be unstable while ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"-",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is stable."
-}], "Text",
- CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
- 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
- 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"StreamPlot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",",
- RowBox[{
- SuperscriptBox["x", "2"], "-", "r"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"t", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]", "\"\\""}]}],
- "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", "Thick", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}], ",", "Dashed",
- ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",",
- SqrtBox["r"]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",",
- SqrtBox["r"]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{", "}"}], "]"}]}], "]"}]}], "]"}], ",",
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-",
- SqrtBox["rr"]}], ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "Nothing"}], "]"}], ",",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- SqrtBox["rr"], ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "Nothing"}], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"rr", ",",
- RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
- RowBox[{"PlotStyle", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick"}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}]}], "}"}]}],
- ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
- RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
- RowBox[{"Frame", "\[Rule]", "True"}], ",",
- RowBox[{"Axes", "\[Rule]", "False"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]",
- "\"\\
-\""}]}], "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",",
- SqrtBox["r"]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}], ",", "White",
- ",",
- RowBox[{"PointSize", "[", "Medium", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"r", ",",
- SqrtBox["r"]}], "}"}], "]"}]}], "}"}], "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{", "}"}], "]"}]}], "]"}]}], "]"}]}], "}"}], "}"}],
- "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1"}], "}"}], ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
- 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
- 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
- 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
- 3.7771385543943424`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
- 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$359$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$359$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- Show[
-
- StreamPlot[{
- 1, $CellContext`x^2 - $CellContext`r$$}, {$CellContext`t, -2,
- 2}, {$CellContext`x, -2, 2}, PlotLabel ->
- "stream plot (x versus t)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red, Thick,
-
- Line[{{-2, -Sqrt[$CellContext`r$$]}, {
- 2, -Sqrt[$CellContext`r$$]}}], Dashed,
- Line[{{-2,
- Sqrt[$CellContext`r$$]}, {2,
- Sqrt[$CellContext`r$$]}}]}],
- Graphics[{}]]],
- Show[
- Plot[{
-
- Piecewise[{{-Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
- Nothing],
- Piecewise[{{
- Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
- Nothing]}, {$CellContext`rr, -2.001, $CellContext`r$$},
- PlotStyle -> {
- Directive[Red, Thick],
- Directive[Red, Thick, Dashed]}, PlotRange -> {{-2, 2}, {-2, 2}},
- AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
- "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red,
- PointSize[Large],
- Point[{{$CellContext`r$$,
- Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
- Sqrt[$CellContext`r$$]}}], White,
- PointSize[Medium],
- Point[{$CellContext`r$$,
- Sqrt[$CellContext`r$$]}]}],
- Graphics[{}]]]}}],
- "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
- "DefaultOptions" :> {}],
- ImageSizeCache->{438., {144., 150.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
- 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
- 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
- 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
- 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771428359485655`*^9}]
-}, Open ]]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Transcritical Bifurcation", "Section",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
- 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771407765357695`*^9,
- 3.7771407784342155`*^9}}],
-
-Cell["\<\
-A transcritical bifurcation occurs when two equilibria \
-\[OpenCurlyDoubleQuote]slide past\[CloseCurlyDoubleQuote] each other and swap \
-stabilities when they collide. The example below concerns the 1D system:\
-\>", "Text",
- CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
- 3.777140654593788*^9, 3.77714069874934*^9}, {3.7771407816953983`*^9,
- 3.7771408255748434`*^9}, {3.7771416017729793`*^9, 3.7771416437784433`*^9}}],
-
-Cell[BoxData[Cell[TextData[Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{
- SuperscriptBox["x", "2"], "-",
- RowBox[{"r", " ", "x"}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
- CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
- 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
- 3.777140833863779*^9, 3.7771408342711344`*^9}}],
-
-Cell[TextData[{
- "Setting ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and solving, we find that the equilibria are ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". For ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[NotEqual]", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " this is two separate equilibria while for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the two coincide."
-}], "Text",
- CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
- 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
- 3.77713704004583*^9}, {3.777140854183094*^9, 3.7771408949826183`*^9}}],
-
-Cell[TextData[{
- "We can conduct stability analysis by evaluating ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- FractionBox["\[PartialD]",
- RowBox[{"\[PartialD]", "x"}]],
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "2"], "-",
- RowBox[{"r", " ", "x"}]}], ")"}]}], "=",
- RowBox[{
- RowBox[{"2", "x"}], "-", "r"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " at ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". We will consider the two cases separately:"
-}], "Text",
- CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
- 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
- 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}, {
- 3.777140903749477*^9, 3.7771409616009216`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[TextData[{
- "For ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the Jacobian is ",
- Cell[BoxData[
- FormBox[
- RowBox[{"-", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which is obviously negative (and thus stable) for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and positive (and thus unstable) for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Item",
- CellChangeTimes->{{3.777140974403208*^9, 3.7771410170516787`*^9}}],
-
-Cell[TextData[{
- "For ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the Jacobian is ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which is positive (and thus unstable) for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and negative (and thus stable) for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Item",
- CellChangeTimes->{{3.777140974403208*^9, 3.7771410546510034`*^9}}]
-}, Open ]],
-
-Cell[TextData[{
- "The two equilibria always have opposite stabilities whether ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " or ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Text",
- CellChangeTimes->{{3.7771410673018804`*^9, 3.77714109176895*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"StreamPlot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",",
- RowBox[{
- SuperscriptBox["x", "2"], "-",
- RowBox[{"r", " ", "x"}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"t", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]", "\"\\""}]}],
- "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", "Thick", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
- "Dashed", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "r"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "r"}], "}"}]}], "}"}], "]"}]}], "}"}],
- "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", "Thick", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "r"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
- "Dashed", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}]}], "}"}],
- "]"}]}], "]"}]}], "]"}], ",",
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{"rr", ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "0"}], "]"}], ",",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{"0", ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "rr"}], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"rr", ",",
- RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
- RowBox[{"PlotStyle", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick"}], "]"}]}], "}"}]}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
- RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
- RowBox[{"Frame", "\[Rule]", "True"}], ",",
- RowBox[{"Axes", "\[Rule]", "False"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]",
- "\"\\
-\""}]}], "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
- "White", ",",
- RowBox[{"PointSize", "[", "Medium", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"r", ",", "r"}], "}"}], "]"}]}], "}"}], "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
- "White", ",",
- RowBox[{"PointSize", "[", "Medium", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}],
- "]"}]}], "]"}]}], "}"}], "}"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1"}], "}"}], ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
- 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
- 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
- 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
- 3.7771385543943424`*^9}, {3.7771411102948675`*^9, 3.777141110664283*^9}, {
- 3.777141140776102*^9, 3.7771412353779545`*^9}, {3.777141270010955*^9,
- 3.777141270194441*^9}, {3.7771413011098766`*^9, 3.7771413385613546`*^9}, {
- 3.7771413736412973`*^9, 3.7771414370261106`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
- 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$1744$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$1744$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- Show[
-
- StreamPlot[{
- 1, $CellContext`x^2 - $CellContext`r$$ $CellContext`x}, \
-{$CellContext`t, -2, 2}, {$CellContext`x, -2, 2}, PlotLabel ->
- "stream plot (x versus t)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red, Thick,
- Line[{{-2, 0}, {2, 0}}], Dashed,
- Line[{{-2, $CellContext`r$$}, {2, $CellContext`r$$}}]}],
- Graphics[{Red, Thick,
- Line[{{-2, $CellContext`r$$}, {2, $CellContext`r$$}}], Dashed,
- Line[{{-2, 0}, {2, 0}}]}]]],
- Show[
- Plot[{
- Piecewise[{{$CellContext`rr, $CellContext`rr >= 0}}, 0],
-
- Piecewise[{{
- 0, $CellContext`rr >=
- 0}}, $CellContext`rr]}, {$CellContext`rr, -2.001, \
-$CellContext`r$$}, PlotStyle -> {
- Directive[Red, Thick, Dashed],
- Directive[Red, Thick]}, PlotRange -> {{-2, 2}, {-2, 2}},
- AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
- "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red,
- PointSize[Large],
-
- Point[{{$CellContext`r$$,
- 0}, {$CellContext`r$$, $CellContext`r$$}}], White,
- PointSize[Medium],
- Point[{$CellContext`r$$, $CellContext`r$$}]}],
- Graphics[{Red,
- PointSize[Large],
-
- Point[{{$CellContext`r$$,
- 0}, {$CellContext`r$$, $CellContext`r$$}}], White,
- PointSize[Medium],
- Point[{$CellContext`r$$, 0}]}]]]}}],
- "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
- "DefaultOptions" :> {}],
- ImageSizeCache->{438., {144., 150.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
- 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
- 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
- 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
- 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771411143651175`*^9, {
- 3.777141152356468*^9, 3.7771412366219435`*^9}, {3.7771412827529573`*^9,
- 3.777141338939087*^9}, 3.7771413788874207`*^9, {3.777141419528529*^9,
- 3.7771414375930433`*^9}, 3.7771428381608877`*^9}]
-}, Open ]]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Pitchfork Bifurcation", "Section",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
- 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771415021019964`*^9,
- 3.777141503857136*^9}}],
-
-Cell["\<\
-A pitchfork bifurcation occurs when a single equilibrium splits into three \
-(or, if moving in the other direction, when three equilibria merge to result \
-in a single equilibrium). This is similar to a saddle-node bifurcation, \
-except that one equilibrium remains real regardless of the other two. The \
-example below concerns the 1D system:\
-\>", "Text",
- CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
- 3.777140654593788*^9, 3.77714069874934*^9}, {3.77714150735085*^9,
- 3.7771415679562902`*^9}, {3.777141646656042*^9, 3.777141646985199*^9}}],
-
-Cell[BoxData[Cell[TextData[Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{
- SuperscriptBox["x", "3"], "-",
- RowBox[{"r", " ", "x"}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
- CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
- 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
- 3.7771415732464447`*^9, 3.7771415756351213`*^9}}],
-
-Cell[TextData[{
- "Setting ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and solving, we find that the equilibria are ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "\[Element]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-",
- SqrtBox["r"]}], ",", "0", ",",
- SqrtBox["r"]}], "}"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is constant and does not change as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " changes, while ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " depend on the sign of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". Going through the same process as for the saddle-node bifurcation above, \
-we find that ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " results in both being real, ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " results in both being imaginary, and ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " results in both merging and coinciding with ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Text",
- CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
- 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
- 3.77713704004583*^9}, {3.7771416556914363`*^9, 3.777141821658723*^9}}],
-
-Cell[TextData[{
- "We can conduct stability analysis by evaluating ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- FractionBox["\[PartialD]",
- RowBox[{"\[PartialD]", "x"}]],
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "3"], "-",
- RowBox[{"r", " ", "x"}]}], ")"}]}], "=",
- RowBox[{
- RowBox[{"3",
- SuperscriptBox["x", "2"]}], "-", "r"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " at ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". If ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " then the Jacobian is ",
- Cell[BoxData[
- FormBox[
- RowBox[{"-", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which always has a sign opposite ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". If ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " then the Jacobian is ",
- Cell[BoxData[
- FormBox[
- RowBox[{"2", "r"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which always has a sign the same as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". The overall conclusion is that for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " we have a single unstable equilibrium at ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", while for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " we have three equilibria: a stable equilibrium at ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and two unstable equilibria at ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"\[PlusMinus]",
- SqrtBox["r"]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Text",
- CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
- 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
- 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}, {
- 3.7771418289521384`*^9, 3.777142054907627*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"StreamPlot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",",
- RowBox[{
- SuperscriptBox["x", "3"], "-",
- RowBox[{"r", " ", "x"}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"t", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]", "\"\\""}]}],
- "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", "Thick", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
- "Dashed", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",",
- SqrtBox["r"]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",",
- SqrtBox["r"]}], "}"}]}], "}"}], "]"}], ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}],
- ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", "Thick", ",", "Dashed", ",",
- RowBox[{"Line", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}]}], "}"}],
- "]"}]}], "]"}]}], "]"}], ",",
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-",
- SqrtBox["rr"]}], ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "Nothing"}], "]"}], ",",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- SqrtBox["rr"], ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "Nothing"}], "]"}], ",",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{"0", ",",
- RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
- "Nothing"}], "]"}], ",",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{"0", ",",
- RowBox[{"rr", "<", "0"}]}], "}"}], "}"}], ",", "Nothing"}],
- "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"rr", ",",
- RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
- RowBox[{"PlotStyle", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick"}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}]}], "}"}]}],
- ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
- RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
- RowBox[{"Frame", "\[Rule]", "True"}], ",",
- RowBox[{"Axes", "\[Rule]", "False"}], ",",
- RowBox[{
- "PlotLabel", "\[Rule]",
- "\"\\
-\""}]}], "]"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",",
- SqrtBox["r"]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
- "White", ",",
- RowBox[{"PointSize", "[", "Medium", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",",
- SqrtBox["r"]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",",
- RowBox[{"-",
- SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}],
- ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}], "]"}], ",", "White", ",",
- RowBox[{"PointSize", "[", "Medium", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"r", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}],
- "]"}]}], "]"}]}], "}"}], "}"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1"}], "}"}], ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
- 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
- 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
- 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
- 3.7771385543943424`*^9}, {3.7771420666214676`*^9, 3.777142122868834*^9}, {
- 3.7771421668529077`*^9, 3.777142311824276*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
- 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$2240$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$2240$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- Show[
-
- StreamPlot[{
- 1, $CellContext`x^3 - $CellContext`r$$ $CellContext`x}, \
-{$CellContext`t, -2, 2}, {$CellContext`x, -2, 2}, PlotLabel ->
- "stream plot (x versus t)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red, Thick,
- Line[{{-2, 0}, {2, 0}}], Dashed,
- Line[{{-2,
- Sqrt[$CellContext`r$$]}, {2,
- Sqrt[$CellContext`r$$]}}],
-
- Line[{{-2, -Sqrt[$CellContext`r$$]}, {
- 2, -Sqrt[$CellContext`r$$]}}]}],
- Graphics[{Red, Thick, Dashed,
- Line[{{-2, 0}, {2, 0}}]}]]],
- Show[
- Plot[{
-
- Piecewise[{{-Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
- Nothing],
- Piecewise[{{
- Sqrt[$CellContext`rr], $CellContext`rr >= 0}}, Nothing],
- Piecewise[{{0, $CellContext`rr >= 0}}, Nothing],
-
- Piecewise[{{0, $CellContext`rr < 0}},
- Nothing]}, {$CellContext`rr, -2.001, $CellContext`r$$},
- PlotStyle -> {
- Directive[Red, Thick, Dashed],
- Directive[Red, Thick, Dashed],
- Directive[Red, Thick],
- Directive[Red, Thick, Dashed]}, PlotRange -> {{-2, 2}, {-2, 2}},
- AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
- "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
- If[$CellContext`r$$ >= 0,
- Graphics[{Red,
- PointSize[Large],
- Point[{{$CellContext`r$$,
- Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
- Sqrt[$CellContext`r$$]}, {$CellContext`r$$, 0}}], White,
- PointSize[Medium],
- Point[{{$CellContext`r$$,
- Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
- Sqrt[$CellContext`r$$]}}]}],
- Graphics[{Red,
- PointSize[Large],
- Point[{$CellContext`r$$, 0}], White,
- PointSize[Medium],
- Point[{$CellContext`r$$, 0}]}]]]}}],
- "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
- "DefaultOptions" :> {}],
- ImageSizeCache->{438., {144., 150.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
- 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
- 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
- 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
- 3.777138402049615*^9, 3.7771385562984977`*^9, 3.777142069213477*^9, {
- 3.777142100334644*^9, 3.777142123718077*^9}, {3.7771422250715675`*^9,
- 3.7771422683455553`*^9}, 3.7771423125655565`*^9, 3.7771428387314763`*^9}]
-}, Open ]]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Hopf Bifurcation", "Section",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
- 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771423512766824`*^9,
- 3.7771423523483405`*^9}}],
-
-Cell["\<\
-A Hopf bifurcation occurs when an equilibrium changes stability in a way that \
-leads to a periodic orbit. This can only occur if we increase our system to \
-at least two dimensions. The example below concerns the 2D system:\
-\>", "Text",
- CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
- 3.777140654593788*^9, 3.77714069874934*^9}, {3.777142354913436*^9,
- 3.7771423557214785`*^9}, {3.7771424049490695`*^9, 3.7771425240888643`*^9}}],
-
-Cell[BoxData[Cell[TextData[Cell[BoxData[{
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{
- RowBox[{
- RowBox[{"r", "(",
- RowBox[{"1", "-",
- SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}]}],
- TraditionalForm], "\[IndentingNewLine]",
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "y"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "x"}], TraditionalForm]}],
- FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
- CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
- 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
- 3.7771425287026825`*^9, 3.777142543615819*^9}}],
-
-Cell[TextData[{
- "Finding the equilibria now requires us to solve the simultaneous system ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], ",",
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "y"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which has exactly one solution: ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["x", "*"], ",",
- SuperscriptBox["y", "*"]}], ")"}], "=",
- RowBox[{"(",
- RowBox[{"0", ",", "0"}], ")"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". This is independent of the value of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". We next conduct stability analysis by examining the Jacobian"
-}], "Text",
- CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
- 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
- 3.77713704004583*^9}, {3.7771425567700644`*^9, 3.7771426590387325`*^9}, {
- 3.777142720782019*^9, 3.7771427214294863`*^9}}],
-
-Cell[BoxData[Cell[TextData[{
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["J", "*"], "=",
- SubscriptBox[
- RowBox[{"(", GridBox[{
- {
- RowBox[{
- FractionBox["\[DifferentialD]",
- RowBox[{"\[DifferentialD]", "x"}]],
- RowBox[{"(",
- RowBox[{
- RowBox[{
- RowBox[{"r", "(",
- RowBox[{"1", "-",
- SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ")"}]}],
- RowBox[{
- FractionBox["\[DifferentialD]",
- RowBox[{"\[DifferentialD]", "y"}]],
- RowBox[{"(",
- RowBox[{
- RowBox[{"r",
- RowBox[{"(",
- RowBox[{"1", "-",
- SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ")"}]}]},
- {
- RowBox[{
- FractionBox["\[DifferentialD]",
- RowBox[{"\[DifferentialD]", "x"}]],
- RowBox[{"(", "x", ")"}]}],
- RowBox[{
- FractionBox["\[DifferentialD]",
- RowBox[{"\[DifferentialD]", "y"}]],
- RowBox[{"(", "x", ")"}]}]}
- }], ")"}],
- RowBox[{
- RowBox[{"(",
- RowBox[{"x", ",", "y"}], ")"}], "=",
- RowBox[{"(",
- RowBox[{"0", ",", "0"}], ")"}]}]]}], TraditionalForm]]],
- "=",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- RowBox[{"(", GridBox[{
- {
- RowBox[{"r", "(",
- RowBox[{"1", "-",
- SuperscriptBox["y", "2"]}], ")"}],
- RowBox[{
- RowBox[{
- RowBox[{"-", "2"}], "r", " ", "x", " ", "y"}], "-", "1"}]},
- {"1", "0"}
- }], ")"}],
- RowBox[{
- RowBox[{"(",
- RowBox[{"x", ",", "y"}], ")"}], "=",
- RowBox[{"(",
- RowBox[{"0", ",", "0"}], ")"}]}]], "=",
- RowBox[{"(", GridBox[{
- {"r",
- RowBox[{"-", "1"}]},
- {"1", "0"}
- }], ")"}]}], TraditionalForm]]]
- }], "DisplayFormula"]], "DisplayFormula",
- CellChangeTimes->{{3.7771426694122353`*^9, 3.777142776009329*^9}, {
- 3.7771428654505424`*^9, 3.7771429550053325`*^9}}],
-
-Cell[TextData[{
- "which has eigenvalues of ",
- Cell[BoxData[
- FormBox[
- FractionBox[
- RowBox[{"r", " ", "\[PlusMinus]",
- SqrtBox[
- RowBox[{
- SuperscriptBox["r", "2"], " ", "-", " ", "4"}]]}], "2"],
- TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". These always have a negative real part for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and a positive real part for ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". For ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[LessEqual]",
- RowBox[{"-", "2"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[GreaterEqual]", "2"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " they are purely real, while for ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{"-", "2"}], "<", "r", "<", "2"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " they include an imaginary part. At ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "=", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the eigenvalues are purely imaginary and we have periodic orbits."
-}], "Text",
- CellChangeTimes->{{3.7771429637246385`*^9, 3.777142966166086*^9}, {
- 3.7771429962203674`*^9, 3.7771430481636953`*^9}, {3.777143415022867*^9,
- 3.7771435095056553`*^9}}],
-
-Cell[TextData[{
- "The equilibrium displays used above do not apply to this 2D system, and so \
-instead we display only the stream plot of ",
- Cell[BoxData[
- FormBox["y", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " versus ",
- Cell[BoxData[
- FormBox["x", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". Notice that as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " goes from negative to zero to positive, the system goes from spiraling \
-inward (stable) to circular orbits (periodic) to spiraling outward (unstable)."
-}], "Text",
- CellChangeTimes->{{3.7771435211260934`*^9, 3.7771436703194323`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"StreamPlot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"r",
- RowBox[{"(",
- RowBox[{"1", "-",
- SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ",", "x"}],
- "}"}], ",",
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"y", ",",
- RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}]}],
- "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"PointSize", "[", "Large", "]"}], ",",
- RowBox[{"Point", "[",
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1"}], "}"}], ",",
- RowBox[{"-", "3"}], ",", "3"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
- 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
- 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
- 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
- 3.7771385543943424`*^9}, {3.777143113760271*^9, 3.777143167703524*^9}, {
- 3.77714324489684*^9, 3.7771432725478344`*^9}, {3.77714335304587*^9,
- 3.7771433539295716`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 1.63, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1}, -3, 3}}, Typeset`size$$ = {
- 360., {185., 190.}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$18043$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$18043$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> Show[
- StreamPlot[{$CellContext`r$$ (
- 1 - $CellContext`y^2) $CellContext`x - $CellContext`y, \
-$CellContext`x}, {$CellContext`x, -2, 2}, {$CellContext`y, -2, 2}, PlotLabel ->
- "stream plot (y versus x)"],
- Graphics[{Red,
- PointSize[Large],
- Point[{0, 0}]}]],
- "Specifications" :> {{{$CellContext`r$$, 1}, -3, 3}}, "Options" :> {},
- "DefaultOptions" :> {}],
- ImageSizeCache->{411., {245., 251.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
- 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
- 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
- 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
- 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771428399820857`*^9,
- 3.7771431348484387`*^9, 3.77714316857364*^9, {3.777143263336276*^9,
- 3.7771432733456025`*^9}, 3.777143355066966*^9}]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-},
-WindowSize->{767, 833},
-WindowMargins->{{57, Automatic}, {Automatic, 51}},
-FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
-StyleDefinitions->"Default.nb"
-]
-(* End of Notebook Content *)
-
-(* Internal cache information *)
-(*CellTagsOutline
-CellTagsIndex->{}
-*)
-(*CellTagsIndex
-CellTagsIndex->{}
-*)
-(*NotebookFileOutline
-Notebook[{
-Cell[CellGroupData[{
-Cell[580, 22, 158, 2, 90, "Title"],
-Cell[741, 26, 158, 2, 30, "Text"],
-Cell[CellGroupData[{
-Cell[924, 32, 99, 1, 63, "Section"],
-Cell[1026, 35, 915, 25, 87, "Text"],
-Cell[1944, 62, 1866, 51, 158, "Text"],
-Cell[3813, 115, 1116, 32, 82, "Text"],
-Cell[4932, 149, 1048, 31, 82, "Text"],
-Cell[5983, 182, 894, 23, 89, "Text"],
-Cell[6880, 207, 1085, 35, 96, "Text"],
-Cell[7968, 244, 966, 18, 144, "Text"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[8971, 267, 161, 2, 63, "Section"],
-Cell[9135, 271, 507, 8, 87, "Text"],
-Cell[9645, 281, 453, 10, 46, "Text"],
-Cell[10101, 293, 788, 25, 63, "Text"],
-Cell[CellGroupData[{
-Cell[10914, 322, 417, 14, 34, "Item"],
-Cell[11334, 338, 476, 15, 34, "Item"],
-Cell[11813, 355, 453, 15, 29, "Item"]
-}, Open ]],
-Cell[12281, 373, 1650, 59, 94, "Text"],
-Cell[CellGroupData[{
-Cell[13956, 436, 5322, 140, 413, "Input"],
-Cell[19281, 578, 3451, 74, 311, "Output"]
-}, Open ]]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[22781, 658, 216, 3, 63, "Section"],
-Cell[23000, 663, 450, 7, 49, "Text"],
-Cell[23453, 672, 531, 12, 46, "Text"],
-Cell[23987, 686, 1085, 35, 63, "Text"],
-Cell[25075, 723, 979, 30, 63, "Text"],
-Cell[CellGroupData[{
-Cell[26079, 757, 654, 23, 45, "Item"],
-Cell[26736, 782, 625, 22, 45, "Item"]
-}, Open ]],
-Cell[27376, 807, 387, 13, 30, "Text"],
-Cell[CellGroupData[{
-Cell[27788, 824, 6514, 164, 371, "Input"],
-Cell[34305, 990, 3800, 79, 311, "Output"]
-}, Open ]]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[38154, 1075, 210, 3, 63, "Section"],
-Cell[38367, 1080, 577, 9, 87, "Text"],
-Cell[38947, 1091, 533, 12, 46, "Text"],
-Cell[39483, 1105, 2018, 68, 107, "Text"],
-Cell[41504, 1175, 2655, 93, 132, "Text"],
-Cell[CellGroupData[{
-Cell[44184, 1272, 7694, 197, 539, "Input"],
-Cell[51881, 1471, 4191, 88, 311, "Output"]
-}, Open ]]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[56121, 1565, 207, 3, 63, "Section"],
-Cell[56331, 1570, 463, 7, 68, "Text"],
-Cell[56797, 1579, 771, 20, 81, "Text"],
-Cell[57571, 1601, 1217, 34, 84, "Text"],
-Cell[58791, 1637, 2131, 68, 78, "DisplayFormula"],
-Cell[60925, 1707, 1432, 47, 93, "Text"],
-Cell[62360, 1756, 662, 17, 68, "Text"],
-Cell[CellGroupData[{
-Cell[63047, 1777, 1575, 41, 103, "Input"],
-Cell[64625, 1820, 2303, 45, 513, "Output"]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-}
-]
-*)
-
+(* Content-type: application/vnd.wolfram.mathematica *)
+
+(*** Wolfram Notebook File ***)
+(* http://www.wolfram.com/nb *)
+
+(* CreatedBy='Mathematica 10.4' *)
+
+(*CacheID: 234*)
+(* Internal cache information:
+NotebookFileLineBreakTest
+NotebookFileLineBreakTest
+NotebookDataPosition[ 158, 7]
+NotebookDataLength[ 69409, 1952]
+NotebookOptionsPosition[ 66965, 1870]
+NotebookOutlinePosition[ 67308, 1885]
+CellTagsIndexPosition[ 67265, 1882]
+WindowFrame->Normal*)
+
+(* Beginning of Notebook Content *)
+Notebook[{
+
+Cell[CellGroupData[{
+Cell["Bifurcation Analysis", "Title",
+ CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
+ 3.7771302217782173`*^9, 3.7771302252764606`*^9}}],
+
+Cell["Adam Rumpf, 2/20/2017", "Text",
+ CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
+ 3.7771302419672003`*^9, 3.7771302444085283`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Introduction", "Section",
+ CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
+
+Cell[TextData[{
+ "Below is a sequence of examples of four common types of bifurcation: \
+saddle-node, transcritical, pitchfork, and Hopf. For each example we provide \
+a specific autonomous ODE system which displays that type of bifurcation. In \
+all examples, ",
+ Cell[BoxData[
+ FormBox["x", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox["y", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " represent functions of time ",
+ Cell[BoxData[
+ FormBox["t", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " while ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " represents the single parameter which will be varied to create the \
+bifurcation."
+}], "Text",
+ CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
+ 3.777136540361297*^9, 3.777136541839939*^9}, {3.7771392486350613`*^9,
+ 3.777139425884313*^9}}],
+
+Cell[TextData[{
+ "As a review, a bifurcation occurs when changing the value of the parameter ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " causes a qualitative change to the equilibria of the system. The specific \
+type of qualitative change determiens the type of bifurcation, but in general \
+it describes a change in the number or the stability of the equilibria. We \
+can attempt to look for bifurcations by solving for the equilibria ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "*"], ",",
+ SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " by setting ",
+ Cell[BoxData[
+ FormBox[
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "y"}],
+ RowBox[{"\[DifferentialD]", "t"}]], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " equal to 0. In general these equilibria will be functions of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", and we can look at how the equilibria change as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " changes. For example, some values of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " will cause several equilibria to merge into one, or to become imaginary, \
+in which case the number of equilibria depends on ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Text",
+ CellChangeTimes->{{3.777136538540001*^9, 3.7771366108791237`*^9}, {
+ 3.7771394295820074`*^9, 3.7771394393980103`*^9}, {3.7771396211951604`*^9,
+ 3.7771399003029437`*^9}}],
+
+Cell[TextData[{
+ "A bifurcation also occurs when the stability of an equilibrium changes. In \
+order to evaluate the stability of an equilibrium, we examine the eigenvalues \
+of the Jacobian matrix. Given an ODE system ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{"f", "(",
+ RowBox[{"x", ",", "y"}], ")"}]}], ",",
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "y"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{"g", "(",
+ RowBox[{"x", ",", "y"}], ")"}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", the Jacobian evaluated at the equilibrium ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "*"], ",",
+ SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is"
+}], "Text",
+ CellChangeTimes->{{3.7771399068080826`*^9, 3.7771399540139265`*^9}, {
+ 3.7771399910351863`*^9, 3.7771400245503855`*^9}, {3.777140131720338*^9,
+ 3.777140144319103*^9}}],
+
+Cell[TextData[Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["J", "*"], "=",
+ SubscriptBox[
+ RowBox[{"(", GridBox[{
+ {
+ FractionBox[
+ RowBox[{"\[PartialD]", "f"}],
+ RowBox[{"\[PartialD]", "x"}]],
+ FractionBox[
+ RowBox[{"\[PartialD]", "f"}],
+ RowBox[{"\[PartialD]", "y"}]]},
+ {
+ FractionBox[
+ RowBox[{"\[PartialD]", "g"}],
+ RowBox[{"\[PartialD]", "x"}]],
+ FractionBox[
+ RowBox[{"\[PartialD]", "g"}],
+ RowBox[{"\[PartialD]", "y"}]]}
+ }], ")"}],
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{"x", ",", "y"}], ")"}], "=",
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "*"], ",",
+ SuperscriptBox["y", "*"]}], ")"}]}]]}], TraditionalForm]],
+ FormatType->"TraditionalForm"]], "Text",
+ CellChangeTimes->{{3.7771399729132023`*^9, 3.7771399843240213`*^9}, {
+ 3.77714002741781*^9, 3.777140100754119*^9}, {3.7771401471975985`*^9,
+ 3.7771401633902807`*^9}, {3.7771427843909597`*^9, 3.7771427935276084`*^9}}],
+
+Cell[TextData[{
+ "If all eigenvalues have negative real parts, then ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "*"], ",",
+ SuperscriptBox["y", "*"]}], ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is stable. Otherwise it is unstable. Further classifications (like being a \
+saddle point, or orbiting in a particular direction) can also be made. As \
+with the equilibria, themselves, the eigenvalues of the Jacobian are \
+functions of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", and the signs of their real parts may depend on ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which leads to other types of bifurcation"
+}], "Text",
+ CellChangeTimes->{{3.777140172105179*^9, 3.777140290076988*^9}, {
+ 3.777140339810768*^9, 3.777140349130089*^9}}],
+
+Cell[TextData[{
+ "Note that, in the case of a one-dimensional ODE system ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{"f", "(", "x", ")"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", the Jacobian ",
+ Cell[BoxData[
+ FormBox[
+ SuperscriptBox["J", "*"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " reduces to simply the scalar ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[PartialD]", "f"}],
+ RowBox[{"\[PartialD]", "x"}]],
+ SubscriptBox["|",
+ RowBox[{"x", "=",
+ SuperscriptBox["x", "*"]}]]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", in which case we can look directly at the value of ",
+ Cell[BoxData[
+ FormBox[
+ FractionBox[
+ RowBox[{"\[PartialD]", "f"}],
+ RowBox[{"\[PartialD]", "x"}]], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " rather than having to look at eigenvalues."
+}], "Text",
+ CellChangeTimes->{{3.7771402937021027`*^9, 3.777140434198078*^9}}],
+
+Cell[TextData[{
+ "Each section below describes a different type of bifurcation. First an ODE \
+system will be presented, then a bifurcation analysis will be conducted by \
+hand, and finally a Manipulate environment will be defined to show a \
+visualization of the bifurcation in action. In all cases there is a slider to \
+control the value of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]]],
+ ". Equilibria will be shown in red on the stream plot, either as a line (for \
+the 1D case) or a point (in the 2D case). For the 1D cases, to the right of \
+the stream plot will be a plot of the equilibrium values as a function of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]]],
+ ". In all cases, solid lines and filled dots correspond to stable \
+equilibria, while dotted lines and hollow dots correspond to unstable \
+equilibria."
+}], "Text",
+ CellChangeTimes->{{3.777140451556507*^9, 3.7771406396788273`*^9}, {
+ 3.777143704620434*^9, 3.7771437074667997`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Saddle-Node Bifurcation", "Section",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
+ 3.777136401274056*^9, 3.777136416298379*^9}}],
+
+Cell["\<\
+A saddle-node bifurcation occurs when two equilibria collide and annihilate \
+each other (or, if moving in the other direction, when two equilibria are \
+spontaneously generated out of nothing). Specifically this can occur when \
+changing the parameters causes a pair of equilibria to simultaneously become \
+real or imaginary. The example below concerns the 1D system:\
+\>", "Text",
+ CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
+ 3.777140654593788*^9, 3.77714069874934*^9}}],
+
+Cell[BoxData[Cell[TextData[Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-", "r"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
+ CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
+ 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}}],
+
+Cell[TextData[{
+ "Setting ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and solving, we find that the equilibria are ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". We can consider different cases depending on the value of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ":"
+}], "Text",
+ CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
+ 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
+ 3.77713704004583*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[TextData[{
+ "If ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", then ",
+ Cell[BoxData[
+ FormBox[
+ SqrtBox["r"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is real, and thus we have two real equilibria."
+}], "Item",
+ CellChangeTimes->{{3.7771368388776255`*^9, 3.777136876907528*^9}, {
+ 3.777137050530507*^9, 3.77713706427261*^9}}],
+
+Cell[TextData[{
+ "If ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", then ",
+ Cell[BoxData[
+ FormBox[
+ SqrtBox["r"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is imaginary, and thus we have no real equilibria."
+}], "Item",
+ CellChangeTimes->{{3.7771368388776255`*^9, 3.7771369074951057`*^9}, {
+ 3.777137071701436*^9, 3.77713707583746*^9}, {3.7771407238414207`*^9,
+ 3.7771407246057043`*^9}}],
+
+Cell[TextData[{
+ "If ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", then we have exactly one unique equilibrium of ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Item",
+ CellChangeTimes->{{3.7771368388776255`*^9, 3.777136930784681*^9}, {
+ 3.777140737329257*^9, 3.7771407382486253`*^9}}]
+}, Open ]],
+
+Cell[TextData[{
+ "We can conduct stability analysis by evaluating ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{
+ FractionBox["\[PartialD]",
+ RowBox[{"\[PartialD]", "x"}]],
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-", "r"}], ")"}]}], "=",
+ RowBox[{"2", "x"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". In the case of ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", clearly ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ SqrtBox["r"]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " yields a positive Jacobian while ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " yields a negative one, and so ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ SqrtBox["r"]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " should be unstable while ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is stable."
+}], "Text",
+ CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
+ 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
+ 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"StreamPlot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-", "r"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"t", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]", "\"\\""}]}],
+ "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", "Thick", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}], ",", "Dashed",
+ ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",",
+ SqrtBox["r"]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",",
+ SqrtBox["r"]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{", "}"}], "]"}]}], "]"}]}], "]"}], ",",
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-",
+ SqrtBox["rr"]}], ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "Nothing"}], "]"}], ",",
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ SqrtBox["rr"], ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "Nothing"}], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"rr", ",",
+ RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
+ RowBox[{"PlotStyle", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick"}], "]"}], ",",
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}]}], "}"}]}],
+ ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
+ RowBox[{"Frame", "\[Rule]", "True"}], ",",
+ RowBox[{"Axes", "\[Rule]", "False"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]",
+ "\"\\
+\""}]}], "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ SqrtBox["r"]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}], ",", "White",
+ ",",
+ RowBox[{"PointSize", "[", "Medium", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ SqrtBox["r"]}], "}"}], "]"}]}], "}"}], "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{", "}"}], "]"}]}], "]"}]}], "]"}]}], "}"}], "}"}],
+ "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1"}], "}"}], ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
+ 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
+ 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
+ 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
+ 3.7771385543943424`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
+ 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$359$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$359$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ Show[
+
+ StreamPlot[{
+ 1, $CellContext`x^2 - $CellContext`r$$}, {$CellContext`t, -2,
+ 2}, {$CellContext`x, -2, 2}, PlotLabel ->
+ "stream plot (x versus t)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red, Thick,
+
+ Line[{{-2, -Sqrt[$CellContext`r$$]}, {
+ 2, -Sqrt[$CellContext`r$$]}}], Dashed,
+ Line[{{-2,
+ Sqrt[$CellContext`r$$]}, {2,
+ Sqrt[$CellContext`r$$]}}]}],
+ Graphics[{}]]],
+ Show[
+ Plot[{
+
+ Piecewise[{{-Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
+ Nothing],
+ Piecewise[{{
+ Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
+ Nothing]}, {$CellContext`rr, -2.001, $CellContext`r$$},
+ PlotStyle -> {
+ Directive[Red, Thick],
+ Directive[Red, Thick, Dashed]}, PlotRange -> {{-2, 2}, {-2, 2}},
+ AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
+ "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red,
+ PointSize[Large],
+ Point[{{$CellContext`r$$,
+ Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
+ Sqrt[$CellContext`r$$]}}], White,
+ PointSize[Medium],
+ Point[{$CellContext`r$$,
+ Sqrt[$CellContext`r$$]}]}],
+ Graphics[{}]]]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
+ "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {144., 150.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
+ 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
+ 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
+ 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
+ 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771428359485655`*^9}]
+}, Open ]]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Transcritical Bifurcation", "Section",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
+ 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771407765357695`*^9,
+ 3.7771407784342155`*^9}}],
+
+Cell["\<\
+A transcritical bifurcation occurs when two equilibria \
+\[OpenCurlyDoubleQuote]slide past\[CloseCurlyDoubleQuote] each other and swap \
+stabilities when they collide. The example below concerns the 1D system:\
+\>", "Text",
+ CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
+ 3.777140654593788*^9, 3.77714069874934*^9}, {3.7771407816953983`*^9,
+ 3.7771408255748434`*^9}, {3.7771416017729793`*^9, 3.7771416437784433`*^9}}],
+
+Cell[BoxData[Cell[TextData[Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-",
+ RowBox[{"r", " ", "x"}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
+ CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
+ 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
+ 3.777140833863779*^9, 3.7771408342711344`*^9}}],
+
+Cell[TextData[{
+ "Setting ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and solving, we find that the equilibria are ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". For ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[NotEqual]", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " this is two separate equilibria while for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the two coincide."
+}], "Text",
+ CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
+ 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
+ 3.77713704004583*^9}, {3.777140854183094*^9, 3.7771408949826183`*^9}}],
+
+Cell[TextData[{
+ "We can conduct stability analysis by evaluating ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{
+ FractionBox["\[PartialD]",
+ RowBox[{"\[PartialD]", "x"}]],
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-",
+ RowBox[{"r", " ", "x"}]}], ")"}]}], "=",
+ RowBox[{
+ RowBox[{"2", "x"}], "-", "r"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". We will consider the two cases separately:"
+}], "Text",
+ CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
+ 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
+ 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}, {
+ 3.777140903749477*^9, 3.7771409616009216`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[TextData[{
+ "For ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the Jacobian is ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"-", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which is obviously negative (and thus stable) for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and positive (and thus unstable) for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Item",
+ CellChangeTimes->{{3.777140974403208*^9, 3.7771410170516787`*^9}}],
+
+Cell[TextData[{
+ "For ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the Jacobian is ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which is positive (and thus unstable) for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and negative (and thus stable) for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Item",
+ CellChangeTimes->{{3.777140974403208*^9, 3.7771410546510034`*^9}}]
+}, Open ]],
+
+Cell[TextData[{
+ "The two equilibria always have opposite stabilities whether ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " or ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Text",
+ CellChangeTimes->{{3.7771410673018804`*^9, 3.77714109176895*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"StreamPlot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-",
+ RowBox[{"r", " ", "x"}]}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"t", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]", "\"\\""}]}],
+ "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", "Thick", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
+ "Dashed", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "r"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "r"}], "}"}]}], "}"}], "]"}]}], "}"}],
+ "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", "Thick", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "r"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
+ "Dashed", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}]}], "}"}],
+ "]"}]}], "]"}]}], "]"}], ",",
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{"rr", ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "0"}], "]"}], ",",
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{"0", ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "rr"}], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"rr", ",",
+ RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
+ RowBox[{"PlotStyle", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick"}], "]"}]}], "}"}]}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
+ RowBox[{"Frame", "\[Rule]", "True"}], ",",
+ RowBox[{"Axes", "\[Rule]", "False"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]",
+ "\"\\
+\""}]}], "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
+ "White", ",",
+ RowBox[{"PointSize", "[", "Medium", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"r", ",", "r"}], "}"}], "]"}]}], "}"}], "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",", "r"}], "}"}]}], "}"}], "]"}], ",",
+ "White", ",",
+ RowBox[{"PointSize", "[", "Medium", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}],
+ "]"}]}], "]"}]}], "}"}], "}"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1"}], "}"}], ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
+ 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
+ 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
+ 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
+ 3.7771385543943424`*^9}, {3.7771411102948675`*^9, 3.777141110664283*^9}, {
+ 3.777141140776102*^9, 3.7771412353779545`*^9}, {3.777141270010955*^9,
+ 3.777141270194441*^9}, {3.7771413011098766`*^9, 3.7771413385613546`*^9}, {
+ 3.7771413736412973`*^9, 3.7771414370261106`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
+ 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$1744$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$1744$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ Show[
+
+ StreamPlot[{
+ 1, $CellContext`x^2 - $CellContext`r$$ $CellContext`x}, \
+{$CellContext`t, -2, 2}, {$CellContext`x, -2, 2}, PlotLabel ->
+ "stream plot (x versus t)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red, Thick,
+ Line[{{-2, 0}, {2, 0}}], Dashed,
+ Line[{{-2, $CellContext`r$$}, {2, $CellContext`r$$}}]}],
+ Graphics[{Red, Thick,
+ Line[{{-2, $CellContext`r$$}, {2, $CellContext`r$$}}], Dashed,
+ Line[{{-2, 0}, {2, 0}}]}]]],
+ Show[
+ Plot[{
+ Piecewise[{{$CellContext`rr, $CellContext`rr >= 0}}, 0],
+
+ Piecewise[{{
+ 0, $CellContext`rr >=
+ 0}}, $CellContext`rr]}, {$CellContext`rr, -2.001, \
+$CellContext`r$$}, PlotStyle -> {
+ Directive[Red, Thick, Dashed],
+ Directive[Red, Thick]}, PlotRange -> {{-2, 2}, {-2, 2}},
+ AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
+ "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red,
+ PointSize[Large],
+
+ Point[{{$CellContext`r$$,
+ 0}, {$CellContext`r$$, $CellContext`r$$}}], White,
+ PointSize[Medium],
+ Point[{$CellContext`r$$, $CellContext`r$$}]}],
+ Graphics[{Red,
+ PointSize[Large],
+
+ Point[{{$CellContext`r$$,
+ 0}, {$CellContext`r$$, $CellContext`r$$}}], White,
+ PointSize[Medium],
+ Point[{$CellContext`r$$, 0}]}]]]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
+ "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {144., 150.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
+ 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
+ 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
+ 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
+ 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771411143651175`*^9, {
+ 3.777141152356468*^9, 3.7771412366219435`*^9}, {3.7771412827529573`*^9,
+ 3.777141338939087*^9}, 3.7771413788874207`*^9, {3.777141419528529*^9,
+ 3.7771414375930433`*^9}, 3.7771428381608877`*^9}]
+}, Open ]]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Pitchfork Bifurcation", "Section",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
+ 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771415021019964`*^9,
+ 3.777141503857136*^9}}],
+
+Cell["\<\
+A pitchfork bifurcation occurs when a single equilibrium splits into three \
+(or, if moving in the other direction, when three equilibria merge to result \
+in a single equilibrium). This is similar to a saddle-node bifurcation, \
+except that one equilibrium remains real regardless of the other two. The \
+example below concerns the 1D system:\
+\>", "Text",
+ CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
+ 3.777140654593788*^9, 3.77714069874934*^9}, {3.77714150735085*^9,
+ 3.7771415679562902`*^9}, {3.777141646656042*^9, 3.777141646985199*^9}}],
+
+Cell[BoxData[Cell[TextData[Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-",
+ RowBox[{"r", " ", "x"}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
+ CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
+ 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
+ 3.7771415732464447`*^9, 3.7771415756351213`*^9}}],
+
+Cell[TextData[{
+ "Setting ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and solving, we find that the equilibria are ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "\[Element]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-",
+ SqrtBox["r"]}], ",", "0", ",",
+ SqrtBox["r"]}], "}"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is constant and does not change as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " changes, while ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " depend on the sign of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". Going through the same process as for the saddle-node bifurcation above, \
+we find that ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " results in both being real, ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " results in both being imaginary, and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " results in both merging and coinciding with ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Text",
+ CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
+ 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
+ 3.77713704004583*^9}, {3.7771416556914363`*^9, 3.777141821658723*^9}}],
+
+Cell[TextData[{
+ "We can conduct stability analysis by evaluating ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{
+ FractionBox["\[PartialD]",
+ RowBox[{"\[PartialD]", "x"}]],
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-",
+ RowBox[{"r", " ", "x"}]}], ")"}]}], "=",
+ RowBox[{
+ RowBox[{"3",
+ SuperscriptBox["x", "2"]}], "-", "r"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". If ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " then the Jacobian is ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"-", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which always has a sign opposite ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". If ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " then the Jacobian is ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"2", "r"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which always has a sign the same as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". The overall conclusion is that for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " we have a single unstable equilibrium at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", while for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " we have three equilibria: a stable equilibrium at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and two unstable equilibria at ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"\[PlusMinus]",
+ SqrtBox["r"]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Text",
+ CellChangeTimes->{{3.7771369512069955`*^9, 3.777136989791237*^9}, {
+ 3.777137243411868*^9, 3.7771372995028796`*^9}, {3.7771373330059586`*^9,
+ 3.777137413841439*^9}, {3.7771374519786773`*^9, 3.777137512637171*^9}, {
+ 3.7771418289521384`*^9, 3.777142054907627*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"StreamPlot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-",
+ RowBox[{"r", " ", "x"}]}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"t", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]", "\"\\""}]}],
+ "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", "Thick", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
+ "Dashed", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",",
+ SqrtBox["r"]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",",
+ SqrtBox["r"]}], "}"}]}], "}"}], "]"}], ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}],
+ ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed", ",",
+ RowBox[{"Line", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "0"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "0"}], "}"}]}], "}"}], "]"}]}], "}"}],
+ "]"}]}], "]"}]}], "]"}], ",",
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-",
+ SqrtBox["rr"]}], ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "Nothing"}], "]"}], ",",
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ SqrtBox["rr"], ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "Nothing"}], "]"}], ",",
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{"0", ",",
+ RowBox[{"rr", "\[GreaterEqual]", "0"}]}], "}"}], "}"}], ",",
+ "Nothing"}], "]"}], ",",
+ RowBox[{"Piecewise", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{"0", ",",
+ RowBox[{"rr", "<", "0"}]}], "}"}], "}"}], ",", "Nothing"}],
+ "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"rr", ",",
+ RowBox[{"-", "2.001"}], ",", "r"}], "}"}], ",",
+ RowBox[{"PlotStyle", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}], ",",
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick"}], "]"}], ",",
+ RowBox[{"Directive", "[",
+ RowBox[{"Red", ",", "Thick", ",", "Dashed"}], "]"}]}], "}"}]}],
+ ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
+ RowBox[{"Frame", "\[Rule]", "True"}], ",",
+ RowBox[{"Axes", "\[Rule]", "False"}], ",",
+ RowBox[{
+ "PlotLabel", "\[Rule]",
+ "\"\\
+\""}]}], "]"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"r", "\[GreaterEqual]", "0"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ SqrtBox["r"]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}]}], "}"}], "]"}], ",",
+ "White", ",",
+ RowBox[{"PointSize", "[", "Medium", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ SqrtBox["r"]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",",
+ RowBox[{"-",
+ SqrtBox["r"]}]}], "}"}]}], "}"}], "]"}]}], "}"}], "]"}],
+ ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}], "]"}], ",", "White", ",",
+ RowBox[{"PointSize", "[", "Medium", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"r", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}],
+ "]"}]}], "]"}]}], "}"}], "}"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1"}], "}"}], ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
+ 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
+ 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
+ 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
+ 3.7771385543943424`*^9}, {3.7771420666214676`*^9, 3.777142122868834*^9}, {
+ 3.7771421668529077`*^9, 3.777142311824276*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 1, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1}, -2, 2}}, Typeset`size$$ = {
+ 387., {96.5, 102.5}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$2240$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$2240$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ Show[
+
+ StreamPlot[{
+ 1, $CellContext`x^3 - $CellContext`r$$ $CellContext`x}, \
+{$CellContext`t, -2, 2}, {$CellContext`x, -2, 2}, PlotLabel ->
+ "stream plot (x versus t)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red, Thick,
+ Line[{{-2, 0}, {2, 0}}], Dashed,
+ Line[{{-2,
+ Sqrt[$CellContext`r$$]}, {2,
+ Sqrt[$CellContext`r$$]}}],
+
+ Line[{{-2, -Sqrt[$CellContext`r$$]}, {
+ 2, -Sqrt[$CellContext`r$$]}}]}],
+ Graphics[{Red, Thick, Dashed,
+ Line[{{-2, 0}, {2, 0}}]}]]],
+ Show[
+ Plot[{
+
+ Piecewise[{{-Sqrt[$CellContext`rr], $CellContext`rr >= 0}},
+ Nothing],
+ Piecewise[{{
+ Sqrt[$CellContext`rr], $CellContext`rr >= 0}}, Nothing],
+ Piecewise[{{0, $CellContext`rr >= 0}}, Nothing],
+
+ Piecewise[{{0, $CellContext`rr < 0}},
+ Nothing]}, {$CellContext`rr, -2.001, $CellContext`r$$},
+ PlotStyle -> {
+ Directive[Red, Thick, Dashed],
+ Directive[Red, Thick, Dashed],
+ Directive[Red, Thick],
+ Directive[Red, Thick, Dashed]}, PlotRange -> {{-2, 2}, {-2, 2}},
+ AspectRatio -> 1, Frame -> True, Axes -> False, PlotLabel ->
+ "equilibria (\!\(\*SuperscriptBox[\(x\), \(*\)]\) versus r)"],
+ If[$CellContext`r$$ >= 0,
+ Graphics[{Red,
+ PointSize[Large],
+ Point[{{$CellContext`r$$,
+ Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
+ Sqrt[$CellContext`r$$]}, {$CellContext`r$$, 0}}], White,
+ PointSize[Medium],
+ Point[{{$CellContext`r$$,
+ Sqrt[$CellContext`r$$]}, {$CellContext`r$$, -
+ Sqrt[$CellContext`r$$]}}]}],
+ Graphics[{Red,
+ PointSize[Large],
+ Point[{$CellContext`r$$, 0}], White,
+ PointSize[Medium],
+ Point[{$CellContext`r$$, 0}]}]]]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1}, -2, 2}}, "Options" :> {},
+ "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {144., 150.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
+ 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
+ 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
+ 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
+ 3.777138402049615*^9, 3.7771385562984977`*^9, 3.777142069213477*^9, {
+ 3.777142100334644*^9, 3.777142123718077*^9}, {3.7771422250715675`*^9,
+ 3.7771422683455553`*^9}, 3.7771423125655565`*^9, 3.7771428387314763`*^9}]
+}, Open ]]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Hopf Bifurcation", "Section",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}, {
+ 3.777136401274056*^9, 3.777136416298379*^9}, {3.7771423512766824`*^9,
+ 3.7771423523483405`*^9}}],
+
+Cell["\<\
+A Hopf bifurcation occurs when an equilibrium changes stability in a way that \
+leads to a periodic orbit. This can only occur if we increase our system to \
+at least two dimensions. The example below concerns the 2D system:\
+\>", "Text",
+ CellChangeTimes->{{3.777136412348218*^9, 3.777136502673601*^9}, {
+ 3.777140654593788*^9, 3.77714069874934*^9}, {3.777142354913436*^9,
+ 3.7771423557214785`*^9}, {3.7771424049490695`*^9, 3.7771425240888643`*^9}}],
+
+Cell[BoxData[Cell[TextData[Cell[BoxData[{
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{
+ RowBox[{
+ RowBox[{"r", "(",
+ RowBox[{"1", "-",
+ SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}]}],
+ TraditionalForm], "\[IndentingNewLine]",
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "y"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "x"}], TraditionalForm]}],
+ FormatType->"TraditionalForm"]], "DisplayFormula"]], "Text",
+ CellChangeTimes->{{3.77713651537531*^9, 3.7771365309974613`*^9},
+ 3.7771366535696325`*^9, {3.7771370336200256`*^9, 3.7771370357424736`*^9}, {
+ 3.7771425287026825`*^9, 3.777142543615819*^9}}],
+
+Cell[TextData[{
+ "Finding the equilibria now requires us to solve the simultaneous system ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}], ",",
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "y"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=", "0"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which has exactly one solution: ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["x", "*"], ",",
+ SuperscriptBox["y", "*"]}], ")"}], "=",
+ RowBox[{"(",
+ RowBox[{"0", ",", "0"}], ")"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". This is independent of the value of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". We next conduct stability analysis by examining the Jacobian"
+}], "Text",
+ CellChangeTimes->{{3.7771366384229493`*^9, 3.777136834022626*^9}, {
+ 3.777136865290258*^9, 3.77713686612399*^9}, {3.77713704004583*^9,
+ 3.77713704004583*^9}, {3.7771425567700644`*^9, 3.7771426590387325`*^9}, {
+ 3.777142720782019*^9, 3.7771427214294863`*^9}}],
+
+Cell[BoxData[Cell[TextData[{
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["J", "*"], "=",
+ SubscriptBox[
+ RowBox[{"(", GridBox[{
+ {
+ RowBox[{
+ FractionBox["\[DifferentialD]",
+ RowBox[{"\[DifferentialD]", "x"}]],
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{
+ RowBox[{"r", "(",
+ RowBox[{"1", "-",
+ SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ")"}]}],
+ RowBox[{
+ FractionBox["\[DifferentialD]",
+ RowBox[{"\[DifferentialD]", "y"}]],
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"r",
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ")"}]}]},
+ {
+ RowBox[{
+ FractionBox["\[DifferentialD]",
+ RowBox[{"\[DifferentialD]", "x"}]],
+ RowBox[{"(", "x", ")"}]}],
+ RowBox[{
+ FractionBox["\[DifferentialD]",
+ RowBox[{"\[DifferentialD]", "y"}]],
+ RowBox[{"(", "x", ")"}]}]}
+ }], ")"}],
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{"x", ",", "y"}], ")"}], "=",
+ RowBox[{"(",
+ RowBox[{"0", ",", "0"}], ")"}]}]]}], TraditionalForm]]],
+ "=",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SubscriptBox[
+ RowBox[{"(", GridBox[{
+ {
+ RowBox[{"r", "(",
+ RowBox[{"1", "-",
+ SuperscriptBox["y", "2"]}], ")"}],
+ RowBox[{
+ RowBox[{
+ RowBox[{"-", "2"}], "r", " ", "x", " ", "y"}], "-", "1"}]},
+ {"1", "0"}
+ }], ")"}],
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{"x", ",", "y"}], ")"}], "=",
+ RowBox[{"(",
+ RowBox[{"0", ",", "0"}], ")"}]}]], "=",
+ RowBox[{"(", GridBox[{
+ {"r",
+ RowBox[{"-", "1"}]},
+ {"1", "0"}
+ }], ")"}]}], TraditionalForm]]]
+ }], "DisplayFormula"]], "DisplayFormula",
+ CellChangeTimes->{{3.7771426694122353`*^9, 3.777142776009329*^9}, {
+ 3.7771428654505424`*^9, 3.7771429550053325`*^9}}],
+
+Cell[TextData[{
+ "which has eigenvalues of ",
+ Cell[BoxData[
+ FormBox[
+ FractionBox[
+ RowBox[{"r", " ", "\[PlusMinus]",
+ SqrtBox[
+ RowBox[{
+ SuperscriptBox["r", "2"], " ", "-", " ", "4"}]]}], "2"],
+ TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". These always have a negative real part for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and a positive real part for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". For ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[LessEqual]",
+ RowBox[{"-", "2"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[GreaterEqual]", "2"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " they are purely real, while for ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{"-", "2"}], "<", "r", "<", "2"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " they include an imaginary part. At ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "=", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the eigenvalues are purely imaginary and we have periodic orbits."
+}], "Text",
+ CellChangeTimes->{{3.7771429637246385`*^9, 3.777142966166086*^9}, {
+ 3.7771429962203674`*^9, 3.7771430481636953`*^9}, {3.777143415022867*^9,
+ 3.7771435095056553`*^9}}],
+
+Cell[TextData[{
+ "The equilibrium displays used above do not apply to this 2D system, and so \
+instead we display only the stream plot of ",
+ Cell[BoxData[
+ FormBox["y", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " versus ",
+ Cell[BoxData[
+ FormBox["x", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". Notice that as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " goes from negative to zero to positive, the system goes from spiraling \
+inward (stable) to circular orbits (periodic) to spiraling outward (unstable)."
+}], "Text",
+ CellChangeTimes->{{3.7771435211260934`*^9, 3.7771436703194323`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"StreamPlot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{
+ RowBox[{"r",
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ SuperscriptBox["y", "2"]}], ")"}], "x"}], "-", "y"}], ",", "x"}],
+ "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"y", ",",
+ RowBox[{"-", "2"}], ",", "2"}], "}"}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}]}],
+ "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"PointSize", "[", "Large", "]"}], ",",
+ RowBox[{"Point", "[",
+ RowBox[{"{",
+ RowBox[{"0", ",", "0"}], "}"}], "]"}]}], "}"}], "]"}]}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1"}], "}"}], ",",
+ RowBox[{"-", "3"}], ",", "3"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.77713657768003*^9, 3.7771365828765388`*^9}, {
+ 3.7771370214122696`*^9, 3.7771370243627615`*^9}, {3.7771371027777557`*^9,
+ 3.777137152180356*^9}, {3.777137522168996*^9, 3.7771379841682105`*^9}, {
+ 3.7771380242901864`*^9, 3.7771384015864058`*^9}, {3.7771385034820766`*^9,
+ 3.7771385543943424`*^9}, {3.777143113760271*^9, 3.777143167703524*^9}, {
+ 3.77714324489684*^9, 3.7771432725478344`*^9}, {3.77714335304587*^9,
+ 3.7771433539295716`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 1.63, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1}, -3, 3}}, Typeset`size$$ = {
+ 360., {185., 190.}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$18043$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$18043$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> Show[
+ StreamPlot[{$CellContext`r$$ (
+ 1 - $CellContext`y^2) $CellContext`x - $CellContext`y, \
+$CellContext`x}, {$CellContext`x, -2, 2}, {$CellContext`y, -2, 2}, PlotLabel ->
+ "stream plot (y versus x)"],
+ Graphics[{Red,
+ PointSize[Large],
+ Point[{0, 0}]}]],
+ "Specifications" :> {{{$CellContext`r$$, 1}, -3, 3}}, "Options" :> {},
+ "DefaultOptions" :> {}],
+ ImageSizeCache->{411., {245., 251.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.7771379244304895`*^9, 3.777137972818993*^9}, {
+ 3.777138035688207*^9, 3.7771380603054132`*^9}, {3.7771381204860187`*^9,
+ 3.777138178429568*^9}, {3.777138214210326*^9, 3.7771382557136283`*^9}, {
+ 3.777138298547415*^9, 3.777138305909398*^9}, 3.777138364876514*^9,
+ 3.777138402049615*^9, 3.7771385562984977`*^9, 3.7771428399820857`*^9,
+ 3.7771431348484387`*^9, 3.77714316857364*^9, {3.777143263336276*^9,
+ 3.7771432733456025`*^9}, 3.777143355066966*^9}]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+},
+WindowSize->{767, 833},
+WindowMargins->{{57, Automatic}, {Automatic, 51}},
+FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
+StyleDefinitions->"Default.nb"
+]
+(* End of Notebook Content *)
+
+(* Internal cache information *)
+(*CellTagsOutline
+CellTagsIndex->{}
+*)
+(*CellTagsIndex
+CellTagsIndex->{}
+*)
+(*NotebookFileOutline
+Notebook[{
+Cell[CellGroupData[{
+Cell[580, 22, 158, 2, 90, "Title"],
+Cell[741, 26, 158, 2, 30, "Text"],
+Cell[CellGroupData[{
+Cell[924, 32, 99, 1, 63, "Section"],
+Cell[1026, 35, 915, 25, 87, "Text"],
+Cell[1944, 62, 1866, 51, 158, "Text"],
+Cell[3813, 115, 1116, 32, 82, "Text"],
+Cell[4932, 149, 1048, 31, 82, "Text"],
+Cell[5983, 182, 894, 23, 89, "Text"],
+Cell[6880, 207, 1085, 35, 96, "Text"],
+Cell[7968, 244, 966, 18, 144, "Text"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[8971, 267, 161, 2, 63, "Section"],
+Cell[9135, 271, 507, 8, 87, "Text"],
+Cell[9645, 281, 453, 10, 46, "Text"],
+Cell[10101, 293, 788, 25, 63, "Text"],
+Cell[CellGroupData[{
+Cell[10914, 322, 417, 14, 34, "Item"],
+Cell[11334, 338, 476, 15, 34, "Item"],
+Cell[11813, 355, 453, 15, 29, "Item"]
+}, Open ]],
+Cell[12281, 373, 1650, 59, 94, "Text"],
+Cell[CellGroupData[{
+Cell[13956, 436, 5322, 140, 413, "Input"],
+Cell[19281, 578, 3451, 74, 311, "Output"]
+}, Open ]]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[22781, 658, 216, 3, 63, "Section"],
+Cell[23000, 663, 450, 7, 49, "Text"],
+Cell[23453, 672, 531, 12, 46, "Text"],
+Cell[23987, 686, 1085, 35, 63, "Text"],
+Cell[25075, 723, 979, 30, 63, "Text"],
+Cell[CellGroupData[{
+Cell[26079, 757, 654, 23, 45, "Item"],
+Cell[26736, 782, 625, 22, 45, "Item"]
+}, Open ]],
+Cell[27376, 807, 387, 13, 30, "Text"],
+Cell[CellGroupData[{
+Cell[27788, 824, 6514, 164, 371, "Input"],
+Cell[34305, 990, 3800, 79, 311, "Output"]
+}, Open ]]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[38154, 1075, 210, 3, 63, "Section"],
+Cell[38367, 1080, 577, 9, 87, "Text"],
+Cell[38947, 1091, 533, 12, 46, "Text"],
+Cell[39483, 1105, 2018, 68, 107, "Text"],
+Cell[41504, 1175, 2655, 93, 132, "Text"],
+Cell[CellGroupData[{
+Cell[44184, 1272, 7694, 197, 539, "Input"],
+Cell[51881, 1471, 4191, 88, 311, "Output"]
+}, Open ]]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[56121, 1565, 207, 3, 63, "Section"],
+Cell[56331, 1570, 463, 7, 68, "Text"],
+Cell[56797, 1579, 771, 20, 81, "Text"],
+Cell[57571, 1601, 1217, 34, 84, "Text"],
+Cell[58791, 1637, 2131, 68, 78, "DisplayFormula"],
+Cell[60925, 1707, 1432, 47, 93, "Text"],
+Cell[62360, 1756, 662, 17, 68, "Text"],
+Cell[CellGroupData[{
+Cell[63047, 1777, 1575, 41, 103, "Input"],
+Cell[64625, 1820, 2303, 45, 513, "Output"]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+}
+]
+*)
+
diff --git a/calc-diffeq-analysis/cobwebbing.nb b/calc-diffeq-analysis/cobwebbing.nb
index d9f1f02..d010b0f 100644
--- a/calc-diffeq-analysis/cobwebbing.nb
+++ b/calc-diffeq-analysis/cobwebbing.nb
@@ -1,578 +1,578 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.4' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 21974, 570]
-NotebookOptionsPosition[ 20953, 529]
-NotebookOutlinePosition[ 21296, 544]
-CellTagsIndexPosition[ 21253, 541]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Cobwebbing", "Title",
- CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
- 3.7771303814556313`*^9, 3.7771303897679653`*^9}, {3.777130431756935*^9,
- 3.7771304426145535`*^9}, {3.7771538104310255`*^9, 3.7771538107522936`*^9}}],
-
-Cell["Adam Rumpf, 11/4/2014", "Text",
- CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
- 3.7771303785432096`*^9, 3.7771303802837615`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
-
-Cell[TextData[{
- "The initialization code below defines a function called ",
- StyleBox["cobweb[]", "Code"],
- ", which accepts a pure function, a parameter ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", an initial value, and a number of iterations. It then produces a cobweb \
-plot for the given function. This is used for the main Manipulate environment \
-at the end of the Notebook, which has a number of simple built-in discrete \
-dynamical systems, each of which depends on a single parameter ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". Note that the meaning of the parameter is different in each system."
-}], "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.7771601060172977`*^9, 3.777160276365533*^9}, {3.7771607213398085`*^9,
- 3.7771607394812503`*^9}}],
-
-Cell["\<\
-Some of thesefunctions are arbitrary and only meant for showing off how \
-different shapes of function can behave, but a few have some significance:\
-\>", "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.7771601060172977`*^9, 3.777160276365533*^9}, {3.7771607213398085`*^9,
- 3.77716072716536*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[TextData[{
- "The discrete logistic map, of the general form ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["x",
- RowBox[{"n", "+", "1"}]], "=",
- RowBox[{"r", " ",
- RowBox[{
- SubscriptBox["x", "n"], "(",
- RowBox[{"1", "-",
- SubscriptBox["x", "n"]}], ")"}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", is usually thought of as describing a population whose size is limited by \
-finite resources. ",
- Cell[BoxData[
- FormBox[
- SubscriptBox["x", "n"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the population at time step ",
- Cell[BoxData[
- FormBox["n", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", scaled so that ",
- Cell[BoxData[
- FormBox["1", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the holding capacity. ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the intrinsic growth rate. This system is famous for exhibiting chaotic \
-behavior when ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is sufficiently large. Try increasing the value of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " slowly to watch as the nonzero fixed point goes from being stable, to \
-being surrounded by periodic orbits, to complete chaos."
-}], "Item",
- CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
- 3.777160482102011*^9, 3.7771605580480304`*^9}}],
-
-Cell[TextData[{
- "The discrete logistic map with proportional harvesting has the general form \
-",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["x",
- RowBox[{"n", "+", "1"}]], "=",
- RowBox[{
- RowBox[{"r", " ",
- RowBox[{
- SubscriptBox["x", "n"], "(",
- RowBox[{"1", "-",
- SubscriptBox["x", "n"]}], ")"}]}], "-",
- RowBox[{"p", " ",
- SubscriptBox["x", "n"]}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". This is exactly the logistic growth model, but now a proportion ",
- Cell[BoxData[
- FormBox[
- RowBox[{"0", "<", "p", "<", "1"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " of the current population is removed each iteration."
-}], "Item",
- CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
- 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
- 3.7771607448283534`*^9}}],
-
-Cell[TextData[{
- "The discrete logistic map with constant harvesting has the general form ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["x",
- RowBox[{"n", "+", "1"}]], "=",
- RowBox[{
- RowBox[{"r", " ",
- RowBox[{
- SubscriptBox["x", "n"], "(",
- RowBox[{"1", "-",
- SubscriptBox["x", "n"]}], ")"}]}], "-", "h"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". This is similar to the proportional harvesting model, except that now a \
-constant amount of population ",
- Cell[BoxData[
- FormBox[
- RowBox[{"h", ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is removed each iteration."
-}], "Item",
- CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
- 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
- 3.7771607963231335`*^9}}],
-
-Cell[TextData[{
- "The linear map simply consists of a line passing through the point ",
- Cell[BoxData[
- FormBox[
- RowBox[{"(",
- RowBox[{
- FractionBox["1", "2"], ",",
- FractionBox["1", "2"]}], ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " with a slope variable between ",
- Cell[BoxData[
- FormBox[
- RowBox[{"-", "1"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox["1", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". It is meant to act as a clear demonstration of how the stability of a \
-fixed point depends on the slope of the function curve where it intersects \
-the ",
- Cell[BoxData[
- FormBox[
- RowBox[{"y", "=", "x"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " line."
-}], "Item",
- CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
- 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
- 3.7771608420031204`*^9}, {3.777160895152163*^9, 3.7771609378928003`*^9}}]
-}, Open ]]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Code", "Section",
- CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Initialization", "Subsection",
- CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{
- "generates", " ", "the", " ", "cobweb", " ", "plot", " ", "for", " ", "a",
- " ", "given", " ", "pure", " ", "function", " ", "f"}], ",", " ",
- RowBox[{"parameter", " ", "r"}], ",", " ",
- RowBox[{"initial", " ", "value", " ", "x0"}], ",", " ",
- RowBox[{"and", " ", "number", " ", "of", " ", "iterations", " ", "n"}]}],
- " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"cobweb", "[",
- RowBox[{"f_", ",", "r_", ",", "x0_", ",", "n_"}], "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"pts", "=",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{"x0", ",", "0"}], "}"}], "}"}]}], ",", "y"}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"generate", " ", "sequence", " ", "of", " ", "points"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"vertical", " ", "to", " ", "f"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"y", "=",
- RowBox[{"f", "[",
- RowBox[{
- RowBox[{"pts", "[",
- RowBox[{"[",
- RowBox[{
- RowBox[{"-", "1"}], ",", "1"}], "]"}], "]"}], ",", "r"}],
- "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"pts", "=",
- RowBox[{"Append", "[",
- RowBox[{"pts", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"pts", "[",
- RowBox[{"[",
- RowBox[{
- RowBox[{"-", "1"}], ",", "1"}], "]"}], "]"}], ",", "y"}],
- "}"}]}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"y", "<", "0"}], "||",
- RowBox[{"y", ">",
- SuperscriptBox["10", "30"]}]}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "break", " ", "if", " ", "we", " ", "reach", " ", "a", " ",
- "negative", " ", "value", " ", "or", " ", "too", " ", "large",
- " ", "of", " ", "a", " ", "value"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Break", "[", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"horizontal", " ", "to", " ", "y"}], "=", "x"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pts", "=",
- RowBox[{"Append", "[",
- RowBox[{"pts", ",",
- RowBox[{"{",
- RowBox[{"y", ",", "y"}], "}"}]}], "]"}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "n"}], "}"}]}], "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"draw", " ", "diagram"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"f", "[",
- RowBox[{"x", ",", "r"}], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"x", ",", "0", ",", "1"}], "}"}], ",",
- RowBox[{"PlotStyle", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- RowBox[{"Thick", ",", "Black"}], "]"}], ",", "Blue"}],
- "}"}]}]}], "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",", " ",
- RowBox[{"Line", "[", "pts", "]"}]}], "}"}], "]"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
- RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
- RowBox[{"Axes", "\[Rule]", "True"}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- "\"\<\!\(\*SubscriptBox[\(x\), \(n\)]\)\>\"", ",",
- "\"\<\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)\>\""}], "}"}]}]}],
- "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}]], "Input",
- CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9}, {
- 3.7771555265254726`*^9, 3.7771555956462235`*^9}, {3.777155660625909*^9,
- 3.777155740927166*^9}, {3.77715578405746*^9, 3.7771559343330507`*^9}, {
- 3.777155999295798*^9, 3.7771561977500076`*^9}, {3.77715672559943*^9,
- 3.77715676271062*^9}, {3.777157939775195*^9, 3.7771579539182663`*^9}, {
- 3.7771586587903957`*^9, 3.7771586589976068`*^9}}]
-}, Closed]],
-
-Cell[CellGroupData[{
-
-Cell["Demonstration", "Subsection",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{"cobweb", "[",
- RowBox[{"f", ",", "r", ",", "x0", ",", "30"}], "]"}]}],
- "\[IndentingNewLine]", "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"f", ",",
- RowBox[{
- RowBox[{"4", "#2", "#1",
- RowBox[{"(",
- RowBox[{"1", "-", "#1"}], ")"}]}], "&"}], ",",
- "\"\<\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)\>\""}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"4", "#2", "#1",
- RowBox[{"(",
- RowBox[{"1", "-", "#1"}], ")"}]}], "&"}], "\[Rule]",
- "\"\<4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\)) - logistic map\>\""}], ",",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"3", "#1",
- RowBox[{"(",
- RowBox[{"1", "-", "#1"}], ")"}]}], "-",
- RowBox[{"#2", "#1"}]}], "&"}], "\[Rule]",
- "\"\<3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
-harvesting\>\""}], ",",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"2", "#1",
- RowBox[{"(",
- RowBox[{"1", "-", "#1"}], ")"}]}], "+",
- RowBox[{"0.5", "#2"}], "-", "0.25"}], "&"}], "\[Rule]",
- "\"\<2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting\>\""}], ",",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"4",
- RowBox[{"(",
- RowBox[{"#2", "-", "0.5"}], ")"}],
- RowBox[{"(",
- RowBox[{"#1", "-", "0.5"}], ")"}]}], "+", "0.5"}], "&"}],
- "\[Rule]",
- "\"\<2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - \
-linear\>\""}], ",",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"5.6",
- SuperscriptBox["#1", "3"]}], "-",
- RowBox[{"7",
- SuperscriptBox["#1", "2"]}], "+",
- RowBox[{"2.5", "#1"}], "+",
- RowBox[{"0.4", "#2"}]}], "&"}], "\[Rule]",
- "\"\<5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \(3\)]\)-7\!\
-\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
-\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic\>\""}]}], "}"}],
- ",", "PopupMenu"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "0.65", ",", "\"\\""}], "}"}], ",", "0", ",",
- "1"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- "x0", ",", "0.25", ",", "\"\<\!\(\*SubscriptBox[\(x\), \(0\)]\)\>\""}],
- "}"}], ",", "0.01", ",", "0.99"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.7766008920271177`*^9, 3.7766008970415297`*^9}, {
- 3.7771562414820786`*^9, 3.7771563442494297`*^9}, {3.7771563995143404`*^9,
- 3.777156516567629*^9}, {3.7771565579644203`*^9, 3.7771566308395443`*^9}, {
- 3.7771566638834124`*^9, 3.7771567107130213`*^9}, {3.777156784185316*^9,
- 3.777156786028338*^9}, {3.777156832919155*^9, 3.777156870190647*^9}, {
- 3.7771569076381054`*^9, 3.777156910114409*^9}, {3.7771569530182934`*^9,
- 3.77715697366871*^9}, {3.77715700935042*^9, 3.7771570454786167`*^9}, {
- 3.7771571178308992`*^9, 3.7771571287366505`*^9}, {3.7771571818975186`*^9,
- 3.7771571866982684`*^9}, {3.7771572231348476`*^9,
- 3.7771572812355137`*^9}, {3.7771573628429117`*^9,
- 3.7771574205793257`*^9}, {3.7771574629188404`*^9,
- 3.7771574683729973`*^9}, {3.7771577370959873`*^9, 3.777157812798995*^9}, {
- 3.777157872216112*^9, 3.7771579054766293`*^9}, {3.7771580044952917`*^9,
- 3.777158057902335*^9}, {3.777158151432196*^9, 3.7771581525935416`*^9}, {
- 3.7771581963046274`*^9, 3.777158237238636*^9}, {3.7771582732210417`*^9,
- 3.777158299544817*^9}, {3.777158353884241*^9, 3.7771583694134836`*^9}, {
- 3.7771585371169043`*^9, 3.777158628695525*^9}, {3.77715873093116*^9,
- 3.777158760363877*^9}, {3.777158804844178*^9, 3.7771589222902794`*^9}, {
- 3.7771589589736195`*^9, 3.777158994414666*^9}, {3.7771590629657545`*^9,
- 3.777159081959144*^9}, {3.777159113553509*^9, 3.7771591154797077`*^9}, {
- 3.7771591503647776`*^9, 3.777159194511875*^9}, {3.7771592775912194`*^9,
- 3.777159279203702*^9}, {3.777159347378621*^9, 3.7771593806264257`*^9}, {
- 3.7771600726679134`*^9, 3.7771600741784315`*^9}, {3.7771606474508095`*^9,
- 3.777160692919137*^9}, 3.77716086758996*^9}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`f$$ = 4 (#2 - 0.5) (# - 0.5) +
- 0.5& , $CellContext`r$$ = 0.29, $CellContext`x0$$ = 0.25, Typeset`show$$ =
- True, Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`f$$], 4 #2 # (1 - #)& ,
- "\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)"}, {(4 #2 # (1 - #)& ) ->
- "4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\)) - logistic map", (3 # (1 - #) - #2 #& ) ->
- "3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
-harvesting", (2 # (1 - #) + 0.5 #2 - 0.25& ) ->
- "2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting", (4 (#2 - 0.5) (# - 0.5) +
- 0.5& ) ->
- "2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - linear", (
- 5.6 #^3 - 7 #^2 + 2.5 # + 0.4 #2& ) ->
- "5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
-\(3\)]\)-7\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
-\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic"}}, {{
- Hold[$CellContext`r$$], 0.65, "r"}, 0, 1}, {{
- Hold[$CellContext`x0$$], 0.25, "\!\(\*SubscriptBox[\(x\), \(0\)]\)"},
- 0.01, 0.99}}, Typeset`size$$ = {360., {172., 176.}}, Typeset`update$$ =
- 0, Typeset`initDone$$, Typeset`skipInitDone$$ =
- True, $CellContext`f$290522$$ = False, $CellContext`r$290523$$ =
- 0, $CellContext`x0$290524$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm,
- "Variables" :> {$CellContext`f$$ = 4 #2 # (1 - #)& , $CellContext`r$$ =
- 0.65, $CellContext`x0$$ = 0.25}, "ControllerVariables" :> {
- Hold[$CellContext`f$$, $CellContext`f$290522$$, False],
- Hold[$CellContext`r$$, $CellContext`r$290523$$, 0],
- Hold[$CellContext`x0$$, $CellContext`x0$290524$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> Module[{},
- $CellContext`cobweb[$CellContext`f$$, $CellContext`r$$, \
-$CellContext`x0$$, 30]],
- "Specifications" :> {{{$CellContext`f$$, 4 #2 # (1 - #)& ,
- "\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)"}, {(4 #2 # (1 - #)& ) ->
- "4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\)) - logistic map", (3 # (1 - #) - #2 #& ) ->
- "3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
-harvesting", (2 # (1 - #) + 0.5 #2 - 0.25& ) ->
- "2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
-\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting", (4 (#2 - 0.5) (# - 0.5) +
- 0.5& ) ->
- "2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - linear", (
- 5.6 #^3 - 7 #^2 + 2.5 # + 0.4 #2& ) ->
- "5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \(3\)]\)-7\!\(\
-\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
-\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic"}, ControlType ->
- PopupMenu}, {{$CellContext`r$$, 0.65, "r"}, 0,
- 1}, {{$CellContext`x0$$, 0.25, "\!\(\*SubscriptBox[\(x\), \(0\)]\)"},
- 0.01, 0.99}}, "Options" :> {}, "DefaultOptions" :> {}],
- ImageSizeCache->{411., {247., 253.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.777159073259899*^9, 3.7771590827182055`*^9},
- 3.7771591166822023`*^9, {3.7771591663559117`*^9, 3.7771591948043566`*^9},
- 3.7771592797965126`*^9, {3.77715934801046*^9, 3.777159380865356*^9},
- 3.77716007487621*^9, {3.7771606504230127`*^9, 3.7771606937288465`*^9},
- 3.777160868560651*^9}]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-},
-WindowSize->{759, 833},
-WindowMargins->{{91, Automatic}, {Automatic, 84}},
-FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
-StyleDefinitions->"Default.nb"
-]
-(* End of Notebook Content *)
-
-(* Internal cache information *)
-(*CellTagsOutline
-CellTagsIndex->{}
-*)
-(*CellTagsIndex
-CellTagsIndex->{}
-*)
-(*NotebookFileOutline
-Notebook[{
-Cell[CellGroupData[{
-Cell[580, 22, 249, 3, 90, "Title"],
-Cell[832, 27, 158, 2, 30, "Text"],
-Cell[CellGroupData[{
-Cell[1015, 33, 99, 1, 63, "Section"],
-Cell[1117, 36, 879, 18, 106, "Text"],
-Cell[1999, 56, 339, 6, 49, "Text"],
-Cell[CellGroupData[{
-Cell[2363, 66, 1513, 45, 115, "Item"],
-Cell[3879, 113, 900, 26, 66, "Item"],
-Cell[4782, 141, 846, 24, 64, "Item"],
-Cell[5631, 167, 1005, 29, 75, "Item"]
-}, Open ]]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[6685, 202, 91, 1, 63, "Section"],
-Cell[CellGroupData[{
-Cell[6801, 207, 102, 1, 43, "Subsection"],
-Cell[6906, 210, 4846, 121, 455, "Input"]
-}, Closed]],
-Cell[CellGroupData[{
-Cell[11789, 336, 105, 1, 35, "Subsection"],
-Cell[CellGroupData[{
-Cell[11919, 341, 4593, 104, 228, "Input"],
-Cell[16515, 447, 4389, 76, 517, "Output"]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}
-]
-*)
-
+(* Content-type: application/vnd.wolfram.mathematica *)
+
+(*** Wolfram Notebook File ***)
+(* http://www.wolfram.com/nb *)
+
+(* CreatedBy='Mathematica 10.4' *)
+
+(*CacheID: 234*)
+(* Internal cache information:
+NotebookFileLineBreakTest
+NotebookFileLineBreakTest
+NotebookDataPosition[ 158, 7]
+NotebookDataLength[ 21974, 570]
+NotebookOptionsPosition[ 20953, 529]
+NotebookOutlinePosition[ 21296, 544]
+CellTagsIndexPosition[ 21253, 541]
+WindowFrame->Normal*)
+
+(* Beginning of Notebook Content *)
+Notebook[{
+
+Cell[CellGroupData[{
+Cell["Cobwebbing", "Title",
+ CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
+ 3.7771303814556313`*^9, 3.7771303897679653`*^9}, {3.777130431756935*^9,
+ 3.7771304426145535`*^9}, {3.7771538104310255`*^9, 3.7771538107522936`*^9}}],
+
+Cell["Adam Rumpf, 11/4/2014", "Text",
+ CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
+ 3.7771303785432096`*^9, 3.7771303802837615`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Introduction", "Section",
+ CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
+
+Cell[TextData[{
+ "The initialization code below defines a function called ",
+ StyleBox["cobweb[]", "Code"],
+ ", which accepts a pure function, a parameter ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", an initial value, and a number of iterations. It then produces a cobweb \
+plot for the given function. This is used for the main Manipulate environment \
+at the end of the Notebook, which has a number of simple built-in discrete \
+dynamical systems, each of which depends on a single parameter ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". Note that the meaning of the parameter is different in each system."
+}], "Text",
+ CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
+ 3.7771601060172977`*^9, 3.777160276365533*^9}, {3.7771607213398085`*^9,
+ 3.7771607394812503`*^9}}],
+
+Cell["\<\
+Some of thesefunctions are arbitrary and only meant for showing off how \
+different shapes of function can behave, but a few have some significance:\
+\>", "Text",
+ CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
+ 3.7771601060172977`*^9, 3.777160276365533*^9}, {3.7771607213398085`*^9,
+ 3.77716072716536*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[TextData[{
+ "The discrete logistic map, of the general form ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SubscriptBox["x",
+ RowBox[{"n", "+", "1"}]], "=",
+ RowBox[{"r", " ",
+ RowBox[{
+ SubscriptBox["x", "n"], "(",
+ RowBox[{"1", "-",
+ SubscriptBox["x", "n"]}], ")"}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", is usually thought of as describing a population whose size is limited by \
+finite resources. ",
+ Cell[BoxData[
+ FormBox[
+ SubscriptBox["x", "n"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the population at time step ",
+ Cell[BoxData[
+ FormBox["n", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", scaled so that ",
+ Cell[BoxData[
+ FormBox["1", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the holding capacity. ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the intrinsic growth rate. This system is famous for exhibiting chaotic \
+behavior when ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is sufficiently large. Try increasing the value of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " slowly to watch as the nonzero fixed point goes from being stable, to \
+being surrounded by periodic orbits, to complete chaos."
+}], "Item",
+ CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
+ 3.777160482102011*^9, 3.7771605580480304`*^9}}],
+
+Cell[TextData[{
+ "The discrete logistic map with proportional harvesting has the general form \
+",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SubscriptBox["x",
+ RowBox[{"n", "+", "1"}]], "=",
+ RowBox[{
+ RowBox[{"r", " ",
+ RowBox[{
+ SubscriptBox["x", "n"], "(",
+ RowBox[{"1", "-",
+ SubscriptBox["x", "n"]}], ")"}]}], "-",
+ RowBox[{"p", " ",
+ SubscriptBox["x", "n"]}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". This is exactly the logistic growth model, but now a proportion ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"0", "<", "p", "<", "1"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " of the current population is removed each iteration."
+}], "Item",
+ CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
+ 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
+ 3.7771607448283534`*^9}}],
+
+Cell[TextData[{
+ "The discrete logistic map with constant harvesting has the general form ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SubscriptBox["x",
+ RowBox[{"n", "+", "1"}]], "=",
+ RowBox[{
+ RowBox[{"r", " ",
+ RowBox[{
+ SubscriptBox["x", "n"], "(",
+ RowBox[{"1", "-",
+ SubscriptBox["x", "n"]}], ")"}]}], "-", "h"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". This is similar to the proportional harvesting model, except that now a \
+constant amount of population ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"h", ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is removed each iteration."
+}], "Item",
+ CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
+ 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
+ 3.7771607963231335`*^9}}],
+
+Cell[TextData[{
+ "The linear map simply consists of a line passing through the point ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"(",
+ RowBox[{
+ FractionBox["1", "2"], ",",
+ FractionBox["1", "2"]}], ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " with a slope variable between ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"-", "1"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox["1", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". It is meant to act as a clear demonstration of how the stability of a \
+fixed point depends on the slope of the function curve where it intersects \
+the ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"y", "=", "x"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " line."
+}], "Item",
+ CellChangeTimes->{{3.777160287433982*^9, 3.7771604336737385`*^9}, {
+ 3.777160482102011*^9, 3.7771606279540477`*^9}, {3.777160744824355*^9,
+ 3.7771608420031204`*^9}, {3.777160895152163*^9, 3.7771609378928003`*^9}}]
+}, Open ]]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Code", "Section",
+ CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Initialization", "Subsection",
+ CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{
+ "generates", " ", "the", " ", "cobweb", " ", "plot", " ", "for", " ", "a",
+ " ", "given", " ", "pure", " ", "function", " ", "f"}], ",", " ",
+ RowBox[{"parameter", " ", "r"}], ",", " ",
+ RowBox[{"initial", " ", "value", " ", "x0"}], ",", " ",
+ RowBox[{"and", " ", "number", " ", "of", " ", "iterations", " ", "n"}]}],
+ " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"cobweb", "[",
+ RowBox[{"f_", ",", "r_", ",", "x0_", ",", "n_"}], "]"}], ":=",
+ RowBox[{"Module", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"pts", "=",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{"x0", ",", "0"}], "}"}], "}"}]}], ",", "y"}], "}"}], ",",
+ "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{"generate", " ", "sequence", " ", "of", " ", "points"}], " ",
+ "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"Do", "[", "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{"vertical", " ", "to", " ", "f"}], " ", "*)"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"y", "=",
+ RowBox[{"f", "[",
+ RowBox[{
+ RowBox[{"pts", "[",
+ RowBox[{"[",
+ RowBox[{
+ RowBox[{"-", "1"}], ",", "1"}], "]"}], "]"}], ",", "r"}],
+ "]"}]}], ";", "\[IndentingNewLine]",
+ RowBox[{"pts", "=",
+ RowBox[{"Append", "[",
+ RowBox[{"pts", ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"pts", "[",
+ RowBox[{"[",
+ RowBox[{
+ RowBox[{"-", "1"}], ",", "1"}], "]"}], "]"}], ",", "y"}],
+ "}"}]}], "]"}]}], ";", "\[IndentingNewLine]",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"y", "<", "0"}], "||",
+ RowBox[{"y", ">",
+ SuperscriptBox["10", "30"]}]}], ",", "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{
+ "break", " ", "if", " ", "we", " ", "reach", " ", "a", " ",
+ "negative", " ", "value", " ", "or", " ", "too", " ", "large",
+ " ", "of", " ", "a", " ", "value"}], " ", "*)"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"Break", "[", "]"}], ";"}]}], "\[IndentingNewLine]",
+ "]"}], ";", "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{"horizontal", " ", "to", " ", "y"}], "=", "x"}], " ",
+ "*)"}], "\[IndentingNewLine]",
+ RowBox[{"pts", "=",
+ RowBox[{"Append", "[",
+ RowBox[{"pts", ",",
+ RowBox[{"{",
+ RowBox[{"y", ",", "y"}], "}"}]}], "]"}]}]}], ",",
+ "\[IndentingNewLine]",
+ RowBox[{"{",
+ RowBox[{"i", ",", "1", ",", "n"}], "}"}]}], "]"}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{"draw", " ", "diagram"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"f", "[",
+ RowBox[{"x", ",", "r"}], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"x", ",", "0", ",", "1"}], "}"}], ",",
+ RowBox[{"PlotStyle", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ RowBox[{"Thick", ",", "Black"}], "]"}], ",", "Blue"}],
+ "}"}]}]}], "]"}], ",",
+ RowBox[{"Graphics", "[",
+ RowBox[{"{",
+ RowBox[{"Red", ",", " ",
+ RowBox[{"Line", "[", "pts", "]"}]}], "}"}], "]"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"AspectRatio", "\[Rule]", "1"}], ",",
+ RowBox[{"Axes", "\[Rule]", "True"}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ "\"\<\!\(\*SubscriptBox[\(x\), \(n\)]\)\>\"", ",",
+ "\"\<\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)\>\""}], "}"}]}]}],
+ "]"}]}]}], "\[IndentingNewLine]", "]"}]}]}]], "Input",
+ CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9}, {
+ 3.7771555265254726`*^9, 3.7771555956462235`*^9}, {3.777155660625909*^9,
+ 3.777155740927166*^9}, {3.77715578405746*^9, 3.7771559343330507`*^9}, {
+ 3.777155999295798*^9, 3.7771561977500076`*^9}, {3.77715672559943*^9,
+ 3.77715676271062*^9}, {3.777157939775195*^9, 3.7771579539182663`*^9}, {
+ 3.7771586587903957`*^9, 3.7771586589976068`*^9}}]
+}, Closed]],
+
+Cell[CellGroupData[{
+
+Cell["Demonstration", "Subsection",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"Module", "[",
+ RowBox[{
+ RowBox[{"{", "}"}], ",", "\[IndentingNewLine]",
+ RowBox[{"cobweb", "[",
+ RowBox[{"f", ",", "r", ",", "x0", ",", "30"}], "]"}]}],
+ "\[IndentingNewLine]", "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"f", ",",
+ RowBox[{
+ RowBox[{"4", "#2", "#1",
+ RowBox[{"(",
+ RowBox[{"1", "-", "#1"}], ")"}]}], "&"}], ",",
+ "\"\<\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)\>\""}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"4", "#2", "#1",
+ RowBox[{"(",
+ RowBox[{"1", "-", "#1"}], ")"}]}], "&"}], "\[Rule]",
+ "\"\<4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\)) - logistic map\>\""}], ",",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"3", "#1",
+ RowBox[{"(",
+ RowBox[{"1", "-", "#1"}], ")"}]}], "-",
+ RowBox[{"#2", "#1"}]}], "&"}], "\[Rule]",
+ "\"\<3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
+harvesting\>\""}], ",",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"2", "#1",
+ RowBox[{"(",
+ RowBox[{"1", "-", "#1"}], ")"}]}], "+",
+ RowBox[{"0.5", "#2"}], "-", "0.25"}], "&"}], "\[Rule]",
+ "\"\<2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting\>\""}], ",",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"4",
+ RowBox[{"(",
+ RowBox[{"#2", "-", "0.5"}], ")"}],
+ RowBox[{"(",
+ RowBox[{"#1", "-", "0.5"}], ")"}]}], "+", "0.5"}], "&"}],
+ "\[Rule]",
+ "\"\<2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - \
+linear\>\""}], ",",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"5.6",
+ SuperscriptBox["#1", "3"]}], "-",
+ RowBox[{"7",
+ SuperscriptBox["#1", "2"]}], "+",
+ RowBox[{"2.5", "#1"}], "+",
+ RowBox[{"0.4", "#2"}]}], "&"}], "\[Rule]",
+ "\"\<5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \(3\)]\)-7\!\
+\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
+\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic\>\""}]}], "}"}],
+ ",", "PopupMenu"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "0.65", ",", "\"\\""}], "}"}], ",", "0", ",",
+ "1"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ "x0", ",", "0.25", ",", "\"\<\!\(\*SubscriptBox[\(x\), \(0\)]\)\>\""}],
+ "}"}], ",", "0.01", ",", "0.99"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.7766008920271177`*^9, 3.7766008970415297`*^9}, {
+ 3.7771562414820786`*^9, 3.7771563442494297`*^9}, {3.7771563995143404`*^9,
+ 3.777156516567629*^9}, {3.7771565579644203`*^9, 3.7771566308395443`*^9}, {
+ 3.7771566638834124`*^9, 3.7771567107130213`*^9}, {3.777156784185316*^9,
+ 3.777156786028338*^9}, {3.777156832919155*^9, 3.777156870190647*^9}, {
+ 3.7771569076381054`*^9, 3.777156910114409*^9}, {3.7771569530182934`*^9,
+ 3.77715697366871*^9}, {3.77715700935042*^9, 3.7771570454786167`*^9}, {
+ 3.7771571178308992`*^9, 3.7771571287366505`*^9}, {3.7771571818975186`*^9,
+ 3.7771571866982684`*^9}, {3.7771572231348476`*^9,
+ 3.7771572812355137`*^9}, {3.7771573628429117`*^9,
+ 3.7771574205793257`*^9}, {3.7771574629188404`*^9,
+ 3.7771574683729973`*^9}, {3.7771577370959873`*^9, 3.777157812798995*^9}, {
+ 3.777157872216112*^9, 3.7771579054766293`*^9}, {3.7771580044952917`*^9,
+ 3.777158057902335*^9}, {3.777158151432196*^9, 3.7771581525935416`*^9}, {
+ 3.7771581963046274`*^9, 3.777158237238636*^9}, {3.7771582732210417`*^9,
+ 3.777158299544817*^9}, {3.777158353884241*^9, 3.7771583694134836`*^9}, {
+ 3.7771585371169043`*^9, 3.777158628695525*^9}, {3.77715873093116*^9,
+ 3.777158760363877*^9}, {3.777158804844178*^9, 3.7771589222902794`*^9}, {
+ 3.7771589589736195`*^9, 3.777158994414666*^9}, {3.7771590629657545`*^9,
+ 3.777159081959144*^9}, {3.777159113553509*^9, 3.7771591154797077`*^9}, {
+ 3.7771591503647776`*^9, 3.777159194511875*^9}, {3.7771592775912194`*^9,
+ 3.777159279203702*^9}, {3.777159347378621*^9, 3.7771593806264257`*^9}, {
+ 3.7771600726679134`*^9, 3.7771600741784315`*^9}, {3.7771606474508095`*^9,
+ 3.777160692919137*^9}, 3.77716086758996*^9}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`f$$ = 4 (#2 - 0.5) (# - 0.5) +
+ 0.5& , $CellContext`r$$ = 0.29, $CellContext`x0$$ = 0.25, Typeset`show$$ =
+ True, Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`f$$], 4 #2 # (1 - #)& ,
+ "\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)"}, {(4 #2 # (1 - #)& ) ->
+ "4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\)) - logistic map", (3 # (1 - #) - #2 #& ) ->
+ "3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
+harvesting", (2 # (1 - #) + 0.5 #2 - 0.25& ) ->
+ "2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting", (4 (#2 - 0.5) (# - 0.5) +
+ 0.5& ) ->
+ "2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - linear", (
+ 5.6 #^3 - 7 #^2 + 2.5 # + 0.4 #2& ) ->
+ "5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
+\(3\)]\)-7\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
+\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic"}}, {{
+ Hold[$CellContext`r$$], 0.65, "r"}, 0, 1}, {{
+ Hold[$CellContext`x0$$], 0.25, "\!\(\*SubscriptBox[\(x\), \(0\)]\)"},
+ 0.01, 0.99}}, Typeset`size$$ = {360., {172., 176.}}, Typeset`update$$ =
+ 0, Typeset`initDone$$, Typeset`skipInitDone$$ =
+ True, $CellContext`f$290522$$ = False, $CellContext`r$290523$$ =
+ 0, $CellContext`x0$290524$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm,
+ "Variables" :> {$CellContext`f$$ = 4 #2 # (1 - #)& , $CellContext`r$$ =
+ 0.65, $CellContext`x0$$ = 0.25}, "ControllerVariables" :> {
+ Hold[$CellContext`f$$, $CellContext`f$290522$$, False],
+ Hold[$CellContext`r$$, $CellContext`r$290523$$, 0],
+ Hold[$CellContext`x0$$, $CellContext`x0$290524$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> Module[{},
+ $CellContext`cobweb[$CellContext`f$$, $CellContext`r$$, \
+$CellContext`x0$$, 30]],
+ "Specifications" :> {{{$CellContext`f$$, 4 #2 # (1 - #)& ,
+ "\!\(\*SubscriptBox[\(x\), \(n + 1\)]\)"}, {(4 #2 # (1 - #)& ) ->
+ "4\!\(\*SubscriptBox[\(rx\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\)) - logistic map", (3 # (1 - #) - #2 #& ) ->
+ "3\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))-\!\(\*SubscriptBox[\(rx\), \(n\)]\) - logistic w/ prop. \
+harvesting", (2 # (1 - #) + 0.5 #2 - 0.25& ) ->
+ "2\!\(\*SubscriptBox[\(x\), \(n\)]\)(1-\!\(\*SubscriptBox[\(x\), \
+\(n\)]\))+0.5r-0.25 - logistic w/ const. harvesting", (4 (#2 - 0.5) (# - 0.5) +
+ 0.5& ) ->
+ "2(r-0.5)(\!\(\*SubscriptBox[\(x\), \(n\)]\)-0.5)+0.5 - linear", (
+ 5.6 #^3 - 7 #^2 + 2.5 # + 0.4 #2& ) ->
+ "5.6\!\(\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \(3\)]\)-7\!\(\
+\*SuperscriptBox[SubscriptBox[\(x\), \(n\)], \
+\(2\)]\)+2.5\!\(\*SubscriptBox[\(x\), \(n\)]\)+0.4r - cubic"}, ControlType ->
+ PopupMenu}, {{$CellContext`r$$, 0.65, "r"}, 0,
+ 1}, {{$CellContext`x0$$, 0.25, "\!\(\*SubscriptBox[\(x\), \(0\)]\)"},
+ 0.01, 0.99}}, "Options" :> {}, "DefaultOptions" :> {}],
+ ImageSizeCache->{411., {247., 253.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.777159073259899*^9, 3.7771590827182055`*^9},
+ 3.7771591166822023`*^9, {3.7771591663559117`*^9, 3.7771591948043566`*^9},
+ 3.7771592797965126`*^9, {3.77715934801046*^9, 3.777159380865356*^9},
+ 3.77716007487621*^9, {3.7771606504230127`*^9, 3.7771606937288465`*^9},
+ 3.777160868560651*^9}]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+},
+WindowSize->{759, 833},
+WindowMargins->{{91, Automatic}, {Automatic, 84}},
+FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
+StyleDefinitions->"Default.nb"
+]
+(* End of Notebook Content *)
+
+(* Internal cache information *)
+(*CellTagsOutline
+CellTagsIndex->{}
+*)
+(*CellTagsIndex
+CellTagsIndex->{}
+*)
+(*NotebookFileOutline
+Notebook[{
+Cell[CellGroupData[{
+Cell[580, 22, 249, 3, 90, "Title"],
+Cell[832, 27, 158, 2, 30, "Text"],
+Cell[CellGroupData[{
+Cell[1015, 33, 99, 1, 63, "Section"],
+Cell[1117, 36, 879, 18, 106, "Text"],
+Cell[1999, 56, 339, 6, 49, "Text"],
+Cell[CellGroupData[{
+Cell[2363, 66, 1513, 45, 115, "Item"],
+Cell[3879, 113, 900, 26, 66, "Item"],
+Cell[4782, 141, 846, 24, 64, "Item"],
+Cell[5631, 167, 1005, 29, 75, "Item"]
+}, Open ]]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[6685, 202, 91, 1, 63, "Section"],
+Cell[CellGroupData[{
+Cell[6801, 207, 102, 1, 43, "Subsection"],
+Cell[6906, 210, 4846, 121, 455, "Input"]
+}, Closed]],
+Cell[CellGroupData[{
+Cell[11789, 336, 105, 1, 35, "Subsection"],
+Cell[CellGroupData[{
+Cell[11919, 341, 4593, 104, 228, "Input"],
+Cell[16515, 447, 4389, 76, 517, "Output"]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}
+]
+*)
+
diff --git a/calc-diffeq-analysis/complex-newtons-method.nb b/calc-diffeq-analysis/complex-newtons-method.nb
index a5fb405..04e6a78 100644
--- a/calc-diffeq-analysis/complex-newtons-method.nb
+++ b/calc-diffeq-analysis/complex-newtons-method.nb
@@ -1,6883 +1,6883 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.2' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 377475, 6875]
-NotebookOptionsPosition[ 375359, 6799]
-NotebookOutlinePosition[ 375703, 6814]
-CellTagsIndexPosition[ 375660, 6811]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Complex Newton\[CloseCurlyQuote]s Method", "Title",
- CellChangeTimes->{{3.776587885602626*^9, 3.7765878892047005`*^9}}],
-
-Cell["Adam Rumpf, 2/23/2016", "Text",
- CellChangeTimes->{{3.7765879645996017`*^9, 3.7765879864409084`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7765879027790375`*^9, 3.776587905025833*^9}}],
-
-Cell[TextData[{
- "Newton\[CloseCurlyQuote]s method (a.k.a. the Newton-Raphson method) is an \
-iterative root finding process. Given a function ",
- Cell[BoxData[
- FormBox["f", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and an initial guess ",
- Cell[BoxData[
- FormBox[
- SubscriptBox["x", "0"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", the process is defined by:"
-}], "Text",
- CellChangeTimes->{{3.7765873898669224`*^9, 3.776587628077781*^9}}],
-
-Cell[BoxData[
- RowBox[{"\t",
- FormBox[
- RowBox[{
- SubscriptBox["x",
- RowBox[{"n", "+", "1"}]], "=",
- RowBox[{
- SubscriptBox["x", "n"], "-",
- FractionBox[
- RowBox[{"f", "(",
- SubscriptBox["x", "n"], ")"}],
- RowBox[{
- RowBox[{"f", "'"}],
- RowBox[{"(",
- SubscriptBox["x", "n"], ")"}]}]]}]}],
- TraditionalForm]}]], "DisplayFormula",
- CellChangeTimes->{{3.7765873898669224`*^9, 3.7765876343990145`*^9}, {
- 3.7765880045342627`*^9, 3.776588004542261*^9}}],
-
-Cell["\<\
-This method is taught in basic Calculus, and it is mostly of interest because \
-it is (a) simple to define and understand, (b) easy to visualize, and (c) \
-good enough to still be used for scientific computing, despite being over 300 \
-years old.\
-\>", "Text",
- CellChangeTimes->{{3.7765873898669224`*^9, 3.7765876554799743`*^9}, {
- 3.7765880294968214`*^9, 3.776588034544223*^9}}],
-
-Cell["\<\
-Many students will be surprised to know that this method does not just work \
-for real-valued functions: it works for complex-valued functions, as well. \
-Its behavior in the complex plane can be a bit more complicated to describe, \
-and depending on the initial guess, the method may not necessarily converget \
-to the nearest root.\
-\>", "Text",
- CellChangeTimes->{{3.7765876439551272`*^9, 3.7765877526697845`*^9}}],
-
-Cell[TextData[{
- "This Notebook defines a function called ",
- StyleBox["newtonplot[]", "Code"],
- ", which accepts (in order) a pure function, a bound ",
- Cell[BoxData[
- FormBox["b", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " for the complex domain ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{"[",
- RowBox[{
- RowBox[{"-", "b"}], ",", "b"}], "]"}], "\[Times]",
- RowBox[{"[",
- RowBox[{
- RowBox[{"-", "b"}], ",", "b"}], "]"}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", the number of nodes ",
- Cell[BoxData[
- FormBox["n", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " into which each axis will be divided, an iteration cutoff, and an error \
-tolerance. The function will divide the square domain into an ",
- Cell[BoxData[
- FormBox[
- RowBox[{"n", "\[Times]", "n"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " grid and conduct Newton\[CloseCurlyQuote]s method using every grid node as \
-an initial guess. If the method comes within the error tolerance of one of \
-the true roots, then the method terminates and we record which root was \
-reached. If no root is reached within the iteration cutoff, then the process \
-is deemed to have diverged."
-}], "Text",
- CellChangeTimes->{{3.7765877574128275`*^9, 3.77658778055941*^9}, {
- 3.776587824735916*^9, 3.776587850473181*^9}, {3.77658806101051*^9,
- 3.776588456805036*^9}}],
-
-Cell[TextData[{
- "The output is a coloring of the complex domain showing which initial \
-guesses converge to which roots. A larger value of ",
- Cell[BoxData[
- FormBox["n", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " will lead to a sharper picture but a longer computation time."
-}], "Text",
- CellChangeTimes->{{3.776588459669097*^9, 3.7765885063788424`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Code", "Section",
- CellChangeTimes->{{3.7765879208719325`*^9, 3.776587921823886*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Initialization", "Subsection",
- CellChangeTimes->{{3.776588544504778*^9, 3.7765885464741445`*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"roots", "[", "f", "]"}], " ", "returns", " ", "a", " ", "list",
- " ", "of", " ", "the", " ", "unique", " ", "roots", " ", "of", " ",
- "function", " ",
- RowBox[{"f", "."}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"roots", "[", "f_", "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "r", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"r", "=",
- RowBox[{"DeleteDuplicates", "[",
- RowBox[{"x", "/.",
- RowBox[{"Solve", "[",
- RowBox[{
- RowBox[{
- RowBox[{"f", "[", "x", "]"}], "\[Equal]", "0"}], ",", "x"}],
- "]"}]}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{
- RowBox[{"Re", "[",
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "]"}], "+",
- RowBox[{"I", " ",
- RowBox[{"Im", "[",
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "]"}]}]}], ",",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",",
- RowBox[{"Length", "[", "r", "]"}]}], "}"}]}], "]"}]}]}],
- "\[IndentingNewLine]", "]"}]}], ";"}]}]], "Input",
- CellChangeTimes->{{3.65954843910914*^9, 3.65954848479572*^9}, {
- 3.6595485169148393`*^9, 3.6595485598267083`*^9}, {3.659555212555744*^9,
- 3.6595552904228373`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"roots", "[",
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595485653603544`*^9, 3.65954859823431*^9}, {
- 3.6595552298253365`*^9, 3.659555232700883*^9}}],
-
-Cell[BoxData[
- RowBox[{"{",
- RowBox[{"1", ",",
- RowBox[{
- RowBox[{"-",
- FractionBox["1", "2"]}], "-",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}], ",",
- RowBox[{
- RowBox[{"-",
- FractionBox["1", "2"]}], "+",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}]}], "}"}]], "Output",
- CellChangeTimes->{{3.6595485756723404`*^9, 3.659548598922804*^9},
- 3.6595552340602794`*^9, 3.6595552931736403`*^9}]
-}, Open ]],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{
- RowBox[{"newtonplot", "[",
- RowBox[{"f", ",", "lim", ",", "n", ",", "cut", ",", "eps"}], "]"}], " ",
- "creates", " ", "a", " ", "plot", " ", "of", " ", "the", " ",
- RowBox[{"region", " ", "[",
- RowBox[{
- RowBox[{"-", "lim"}], ",", "lim"}], "]"}],
- RowBox[{"x", "[",
- RowBox[{
- RowBox[{"-", "lim"}], ",", "lim"}], "]"}], " ", "of", " ", "the", " ",
- "complex", " ", "plane"}], ",", " ",
- RowBox[{"divided", " ", "into", " ", "an", " ", "nxn", " ",
- RowBox[{"grid", ".", " ", "Each"}], " ", "grid", " ", "point", " ",
- "is", " ", "used", " ", "as", " ", "the", " ", "initial", " ", "guess",
- " ", "for", " ", "complex", " ",
- RowBox[{"Newton", "'"}], "s", " ", "method", " ", "on", " ", "function",
- " ",
- RowBox[{"f", ".", " ", "Each"}], " ", "root", " ", "is", " ",
- "assigned", " ", "a", " ", "color"}], ",", " ",
- RowBox[{"and", " ", "after", " ", "cut", " ", "iterations"}], ",", " ",
- RowBox[{
- "if", " ", "we", " ", "are", " ", "within", " ", "distance", " ", "eps",
- " ", "of", " ", "a", " ", "root"}], ",", " ",
- RowBox[{"we", " ", "assign", " ", "that", " ", "point", " ", "that", " ",
- RowBox[{"root", "'"}], "s", " ",
- RowBox[{"color", ".", " ", "If"}], " ", "if", " ", "is", " ", "not",
- " ", "that", " ", "close", " ", "to", " ", "any", " ", "root"}], ",",
- " ",
- RowBox[{"we", " ", "color", " ", "it", " ",
- RowBox[{"black", "."}]}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"newtonplot", "[",
- RowBox[{"f_", ",", "lim_", ",", "n_", ",", "cut_", ",", "eps_"}], "]"}],
- ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- "fp", ",", "newton", ",", "rootlist", ",", "array", ",", "grid", ",",
- "dx", ",", "i", ",", "j", ",", "iter", ",", "x", ",", "numroots", ",",
- "rootnum"}], "}"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"fp", " ", "=", " ",
- RowBox[{
- RowBox[{
- "derivative", " ", "of", " ", "f", "\[IndentingNewLine]",
- "newton"}], " ", "=", " ",
- RowBox[{
- RowBox[{
- RowBox[{"Newton", "'"}], "s", " ", "method", " ", "iteration",
- " ", "function", "\[IndentingNewLine]", "rootlist"}], " ", "=",
- " ",
- RowBox[{
- RowBox[{
- "list", " ", "of", " ", "all", " ", "unique", " ", "roots", " ",
- "of", " ", "f", "\[IndentingNewLine]", "array"}], " ", "=", " ",
- RowBox[{
- RowBox[{
- "array", " ", "of", " ", "values", " ", "corresponding", " ",
- "to", " ", "each", " ", "grid", " ", "point", " ",
- RowBox[{"(",
- RowBox[{
- RowBox[{
- RowBox[{"-", "1"}], " ", "means", " ", "no", " ", "root"}],
- ",", " ",
- RowBox[{
- "positive", " ", "integer", " ", "corresponds", " ", "to",
- " ", "one", " ", "of", " ", "the", " ", "roots", " ", "in",
- " ", "the", " ", "list"}]}], ")"}], "\[IndentingNewLine]",
- "grid"}], " ", "=", " ",
- RowBox[{
- RowBox[{
- "array", " ", "of", " ", "actual", " ", "coordinates", " ",
- "of", " ", "grid", " ", "points", "\[IndentingNewLine]",
- "dx"}], " ", "=", " ",
- RowBox[{
- "space", " ", "between", " ", "grid", " ", "points",
- "\[IndentingNewLine]", "i"}]}]}]}]}]}]}], ",",
- RowBox[{"j", " ", "=", " ",
- RowBox[{
- RowBox[{
- "coordinates", " ", "of", " ", "point", " ", "currently", " ",
- "being", " ", "examined", "\[IndentingNewLine]", "iter"}], " ",
- "=", " ",
- RowBox[{
- RowBox[{"current", " ", "iteration", " ", "of", " ",
- RowBox[{"Newton", "'"}], "s", " ", "Method",
- "\[IndentingNewLine]", "x"}], " ", "=", " ",
- RowBox[{
- RowBox[{"current", " ", "guess", " ", "in", " ",
- RowBox[{"Newton", "'"}], "s", " ", "Method",
- "\[IndentingNewLine]", "numroots"}], " ", "=", " ",
- RowBox[{
- RowBox[{
- "number", " ", "of", " ", "roots", "\[IndentingNewLine]",
- "rootnum"}], " ", "=", " ",
- RowBox[{
- "index", " ", "of", " ", "root", " ", "under", " ",
- "evaluation"}]}]}]}]}]}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"fp", "=",
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- RowBox[{"f", "'"}], "[", "x", "]"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"newton", "=",
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{"N", "[",
- RowBox[{"x", "-",
- FractionBox[
- RowBox[{"f", "[", "x", "]"}],
- RowBox[{"fp", "[", "x", "]"}]]}], "]"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"rootlist", "=",
- RowBox[{"roots", "[", "f", "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"numroots", "=",
- RowBox[{"Length", "[", "rootlist", "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"dx", "=",
- FractionBox[
- RowBox[{"2", "lim"}],
- RowBox[{"n", "-", "1"}]]}], ";", "\[IndentingNewLine]",
- RowBox[{"array", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{
- RowBox[{"-", "1"}], ",",
- RowBox[{"{",
- RowBox[{"n", ",", "n"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"grid", "=",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"N", "[",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"-", "lim"}], "+",
- RowBox[{"l", " ", "dx"}]}], ")"}], "+",
- RowBox[{"I",
- RowBox[{"(",
- RowBox[{
- RowBox[{"-", "lim"}], "+",
- RowBox[{"k", " ", "dx"}]}], ")"}]}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"k", ",",
- RowBox[{"n", "-", "1"}], ",", "0", ",",
- RowBox[{"-", "1"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"l", ",", "0", ",",
- RowBox[{"n", "-", "1"}]}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"For", "[",
- RowBox[{
- RowBox[{"i", "=", "1"}], ",",
- RowBox[{"i", "\[LessEqual]", "n"}], ",",
- RowBox[{"i", "++"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"For", "[",
- RowBox[{
- RowBox[{"j", "=", "1"}], ",",
- RowBox[{"j", "\[LessEqual]", "n"}], ",",
- RowBox[{"j", "++"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"x", "=",
- RowBox[{"grid", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"For", "[",
- RowBox[{
- RowBox[{"iter", "=", "1"}], ",",
- RowBox[{"iter", "\[LessEqual]", "cut"}], ",",
- RowBox[{"iter", "++"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"fp", "[", "x", "]"}], "\[NotEqual]", "0"}], "&&",
- RowBox[{
- RowBox[{"Abs", "[", "x", "]"}], "\[NotEqual]",
- "Infinity"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"x", "=",
- RowBox[{"newton", "[", "x", "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"x", "=", "ComplexInfinity"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"For", "[",
- RowBox[{
- RowBox[{"rootnum", "=", "1"}], ",",
- RowBox[{"rootnum", "\[LessEqual]", "numroots"}], ",",
- RowBox[{"rootnum", "++"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"Abs", "[",
- RowBox[{"x", "-",
- RowBox[{"rootlist", "[",
- RowBox[{"[", "rootnum", "]"}], "]"}]}], "]"}], "<",
- "eps"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"array", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=", "rootnum"}],
- ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"ArrayPlot", "[",
- RowBox[{"array", ",",
- RowBox[{"ColorRules", "\[Rule]",
- RowBox[{"Join", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "1"}], "\[Rule]", "Black"}], "}"}], ",",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"k", "\[Rule]",
- RowBox[{"Hue", "[",
- FractionBox[
- RowBox[{"k", "-", "1"}], "numroots"], "]"}]}], ",",
- RowBox[{"{",
- RowBox[{"k", ",", "1", ",", "numroots"}], "}"}]}], "]"}]}],
- "]"}]}], ",",
- RowBox[{"PlotLegends", "\[Rule]",
- RowBox[{"Join", "[",
- RowBox[{
- RowBox[{"{", "\"\\"", "}"}], ",",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"rootlist", "[",
- RowBox[{"[", "k", "]"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"k", ",", "1", ",", "numroots"}], "}"}]}], "]"}]}],
- "]"}]}]}], "]"}]}]}], "\[IndentingNewLine]", "]"}]}],
- ";"}]}]], "Input",
- CellChangeTimes->CompressedData["
-1:eJwdy1soQwEAh/E1ymWLPKFGKCWXRwvNtOzFRtgoZGK1J2luSZaatszDUHNt
-bVkSm2ZIok0bmqUkS2uF5HYyucxtxchy/ufh6/f0ZUrlIhmdRqNlkkF1vnk5
-lv/Eiw0vrsOi/rATVmqm/PDWMXwFudmqa3jCl4bhQMVEUhxp71pqCnR7Fbkw
-wShlw4+ekmK4c+7gQnvQJICjx9diyGQPNUHv07QMCoOSdhh95uqC96xDBSSI
-DCVcavzTwN8Wtw52Whx6+Py1+RpPak2MhGBhY1UpgzSwusWDVkZqDcyx+EQw
-8ZLeADnPb5Q2TXMbZBpj2iGXJuyHvoUsJfQY5tRwOyo0BmuJoymo4mgN1P+j
-NcH32W4LHHlxrUBnh5uyYJizAc2D9j047x7zwVLb2wWc1OfdwLqrwB3cnSEe
-oMC6GYT+DPYnZCRNhmB9YP8bJpzKY5ikunF1GhQ9/lB6B8xlkFA4KFvTD8ph
-xBbhw0pvigCyJHeUyfF91ZDu8YjhP6o68js=
- "]]
-}, Closed]],
-
-Cell[CellGroupData[{
-
-Cell["Demonstration", "Subsection",
- CellChangeTimes->{{3.776588557645573*^9, 3.776588560857557*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], ",", "2", ",", "101",
- ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555100001802`*^9}}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzt1tGN5DYWBdABNhJH4hw2BAP+duoOwVhg+6PLrSIpkXqXqiNggOlDie+S
-VSW+3/74679//ufXr19//v/f//7//fr7938R55xzHuOt62ydVr3qnGef45le
-XZ9zzvln+Wi/kpK75UdXWk5e69X1Oeecf6a/jqflG+2vWs/39p/82V5dn3PO
-+TM9JcdZP/v8p+8bf+/V9TnnnD/bj8bv7jdWzfvlq8/ZtM+Vn/Pq+pxzzp/t
-r+PV59rsenf3ea/jaZ83f+/V9TnnnPMrXl3/1Xebl9/r1fU555w/01vnTlWu
-1S4Hf+fV9TnnnO/tZ8+d1bmq/On1+DWvrs855/wZ/jqu71rjvXVT9oNn1eec
-c/5sr65/l89e/9W6PNOr63POOd/bz54vq3Pd7XftQ+/+80yvrs855/zZXl2/
-2lv70ns/f4ZX1+ecc763j/YVT/HZ9/HP8Or6nHPOn+3V9c/6rPVUr4NneXV9
-zjnnz/bq+qv6o9fxlHXwbK+uzznn/Nl+d/2zOXrn4fyKV9fnnHP+bF9dp/U3
-50leXZ9zzvk9fnW+s/Ouqsv5jl5dn3PO+Tl/HU/Nl5KH8wSvrs855/xnH31v
-V58jV3Ol7DvnK726Puec8/feur6eu6ve6Lyr+k/Od/Tq+pxzzs/50dXbt1yt
-X903pX0enPd4dX3OOec/e3W/NMt3m5fzlV5dn3PO+c+u76qZl/OVXl2fc875
-Oa+uf3ff9Dqesg7OR7y6Puec85+99d6uytXrZ8+do/GrfRvnCV5dn3PO+Xuv
-rj+777rab3G+s1fX55xz/t5bV0re2fdx/kSvrs855/y9t660vF9eXZ/zRK+u
-zznn/L1X13/11t+c831+z5xzzu+pk7ZOzj/Bq+tzznmKt96Tvc/1ztOat3dc
-H8X5Pl5dn3POU/qrND+60nJyzvu9uj7nnKe8/6pzHN33tH6S80/26vqcc57y
-/lvVR7XqtvxqrrR95/yTvbo+55yv8t6+qPXc2XlmeXqfyTnv9+r6nHOe1nel
-+W7zcs71XZzz5/vR+K7vv9m5e+fnnK/z6vqcc37VW++3qlxXfXV/Wb0+zj/R
-q+tzzvms99anveeurjdlHZx/klfX55zzWX1GVa5VPqvv5Jzn+Oz7OOf8rvdW
-Wq67+019F+f7+dG49yDnPM1b75+qXFWu7+J8Px99vneeVfOn7V/K59Z6Li3/
-7v467nt7j+/ed41+T6rzcs7n+9nnV78Pz55jZ+tV+6z5Zu/j1c8r3c9+j+7e
-59GcT+0Dd/ndz/r9V6+Dcz7fj+7b5f0wmueuXFV9V69Xn1+fss+9f48+f3ae
-o/G0/Try6u/tVa+uzzmv96PxtJyr+8y761efV/Z/rqd9z+/ar6Pxp/ZdKb8j
-zjnf3Vv3pZz7KeffbN+tzq77XL2/R+N3911p+8Y55/y9r34ubb1pPvs5fVSW
-9463nktbF+ec87l+dKXlfKofXWk5+Tk/utJycs45n+tnn59936f62edb832N
-p63303zWfWnr4pxzPmf8rn5q9PxJ2+fZfdSor/q+pO1n6ud49fc16/eZtm+c
-88/xo/vScu7WXx15yrpTcoyOp+5/2vd8lz5q1Ku+N6N5OOd89H21S582mmdV
-jt3O7bTz6y6v/p6e/X6u7pd2+b2kfZ9GPSUH5zznPDj73Or5e++fVX/X9/Hr
-+KxzebTuLn52PaPzHM23qk/epY8a9V2+f7P65JT1cM7r+q7Vfc9Tz4tVPnpf
-Wv5d3fe2xnf/fuu7OOdH9606/znn/FP7rtn+Op6Wj3N+fPX2U6tycM55r6fk
-uMt7n0vLzTlvX2n5OOe81VfcneMuH31vp+TmnOu7OOfP8dH+KyX3bD8av7qP
-nPN1npKDc87P+mhfsouPvrdn3c85X+cpOTjnfHWf0nt/is9+b++2fs6f6Ck5
-OOd8to/2Yam+qk7aOjn/BE/JwTnnKX3XrHnS+q7W35xzfRfnnK/yVX1I67q7
-70rZb855Tg7OOX9K3zW7r+qdN2VfOef6Ls45360/ObrScnLO+z0lB+ecV3vr
-Pdk7PtpHter0rqd6/zjnbU/JwTnn/GffbV7Oub6Lc8539ZQcR+Np+ThP9pQc
-nHPO33tKjl37Rc4TPCUH55zz956So5Wv9Vxabs7v9JQcnHPOf/aUHKM+6zxK
-WQ/nMzwlB+ec8+/eem9X52v52XOnd90p6+R8xFNycM45H/OUHGd99LmnrZ9/
-pqfk4Jxz/t1n9SvVvqpO2jo57/GUHJxzzr+7vuu9p62T8x5PycE55/ycH10p
-/duqOmmfA+c9npKDc875e2/dt7qPuzqf/orznBycc86/++h7u/ocudp3Ve83
-53d4Sg7OOedj3vq72o+utJyc3+kpOTjnnK/1Vc9X1eV8R0/JwTnn/Jl+1zn2
-NZ6ybs57rrR8nHPO9/aUeqPPpewff5an5OCcc/5MT8nR8tHndl0nr/WUHJxz
-zp/pKTlGfda5mbIenuEpOTjnnO/prfOlOt8q730uLTev9ZQcnHPOn+kpOap8
-tG9Lyc3XeEoOzjnne/rZ86U692y/ax9ex1PWz/s8JQfnnPNnekqO1T77nLW/
-z/SUHJxzzvf20T4kJfdsX12nt27avvCsHJxzzvf0tL6k2u+un7Z+/t5TcnDO
-OX+Wp/Qld3t1ff1Ytqfk4Jxzzs94So7VddLWyc95Sg7OOefP9Lv7pNE8q+vP
-rpPed/L3npKDc875M711/nyN33XeVa3zap2Uz5Nf85QcnHPOn+XV9a/63c89
-Zd/4e0/JwTnn/LO89Xeqt67efixtXfweT8nBOef8M3y0n6nO2+tHV1pOXusp
-OTjnnPMenz3vqjrVz/M0/wd/O/nA
- "], {{0, 0}, {101, 101}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"", "1",
- RowBox[{
- RowBox[{"-",
- RowBox[{
- FractionBox["1", "2"]}]}], "-",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}],
- RowBox[{
- RowBox[{"-",
- RowBox[{
- FractionBox["1", "2"]}]}], "+",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}]}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{{3.6595549649674387`*^9, 3.6595549834231453`*^9},
- 3.6595550653028927`*^9, {3.6595553128265676`*^9, 3.6595553387644897`*^9}, {
- 3.6595554958307996`*^9, 3.6595555144114237`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], ",", "2", ",", "501",
- ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555640728051*^9}, {3.659558440044022*^9,
- 3.6595584402002287`*^9}}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzs103O5TpyINAyvJJeiffgJRjwuLfek54bhpFwlerx8p8RlA6BBPKeIBlB
-SqL0/Z//+L///p//+re//e3//8v//Pvv//9j+3//9k/EOeecc84555xzzjnn
-nHPOOeecc36VP+Oj42vz9sZPrXv1/LP9VtczO//o9evtl+25yHZf1lq2deza
-j1P7OZqPc8455zybR+fnnHPOOeecc84555xzzjnnnHPOOV/lveNq88zOv8pb
-6169X894tuvdev2irvuueW/xWstW76l1t46/7bnjnHPOOT/1nZWtLs4555xz
-zjnnnHPOOeecc84555zzqPy136Ne6pdt3/mYt7be8bvuxyz7sSt/9HXNtg7O
-Oeec89s9Oj/nnHPOOeecc84555xzzjnnnHPOecl35enNl21f+Lt9VXw0/+p1
-9Lav1sU555xzzn97dH7OOeecc84555xzzjnnnHPOOeecx/vufLPxU/WVWpbr
-xHmPt7Zd58GqerLk4ZxzzjnnsR6dn3POOeecc84555xzzjnnnHPOOed5/Bk/
-la+1tc7Tuj7O+Xtatv3knHPOOedrPTo/55xzzjnnnHPOOeecc84555xzzs95
-qV9pXG//VXVl2S/Oeb6WbX8455xzzvkZj87POeecc84555xzzjnnnHPOOeec
-8/MelX91P855/DlyumXbB84555xzfsaj83POOeecc84555xzzjnnnHPOOed8
-vZf6Za1rtB/nfL/f0rLtG+ecc845X+vR+TnnnHPOOeecc84555xzzjnnnHO+
-3kv9stWVZb84/5LPtl35Vs3rnOGcc845f6dH5+ecc84555xzzjnnnHPOOeec
-c875ei/1i6ory75w/kafbVnqPpXPucQ555xzfqdH5+ecc84555xzzjnnnHPO
-Oeecc875Pt+VJ9s6Of+Cz7Ys68lSRymerT7OOeecc54jP+ecc84555xzzjnn
-nHPOOeecc87Pe++42m/O+fhz2NtvdR2nPUsdJe+9Xlnq5pxzzjl/u0fn55xz
-zjnnnHPOOeecc84555xzzr/opX6lcb39R/Nwztf7aL/VdWTxLHWs9mc8W32c
-c84557d7dH7OOeecc84555xzzjnnnHPOOef8C/6Mn8pX6lf7zTmff853j7vF
-s9QRvf6vXn/OOeec8+jvbc4555xzzjnnnHPOOeecc84555zH1zEaz74uzjP4
-6XFv8yx1RHutuY8455xzzts8Oj/nnHPOOeecc84555xzzjnnnHP+Jn/Gd83b
-G6/VM1rX07NdD85/tdX9Wse93XefM2/x1nHZ6uacc845z/79xDnnnHPOOeec
-c84555xzzjnnnPNxL8VXzbPKo8dzvtNL8Vr/1XW83aPOr7d4rdlfzjnnnH/V
-o/NzzjnnnHPOOeecc84555xzzjnnb/ZSv+i6nl6rs3VdnO/w0fjofHzO7fuc
-19ro/nPOOeec3+7R+TnnnHPOOeecc84555xzzjnnnPM3eO/4U3Wt8tn1cj7j
-s+NWzcfbfPV15L/9Ge99HrKth3POOefc9yTnnHPOOeecc84555xzzjnnnHO+
-z3vHn6prle/aB/5uH43P3m+t+fkeH70f+FpvjfeO45xzzjnP+n3DOeecc845
-55xzzjnnnHPOOeec83YvxXv7Z/PW9XA+M642z2gdPNaz1MH7xmWrm3POOec8
-Oj/nnHPOOeecc84555xzzjnnnHP+Zi/1i66r1aPz8zt8dtzuPHyPn7pP+JjP
-zpdtPZxzzjnn0fk555xzzjnnnHPOOeecc84555zzN3vv+FN19frsunhOPzXv
-qbw81kvN+XGHl9qu9x3nnHPO+ej3Sra6OOecc84555xzzjnnnHPOOeec8zd7
-qV90XSVvrZ/n9Fp7633Lz3jvfZKlbv67X+t8q+rgnHPOOa95dH7OOeecc845
-55xzzjnnnHPOOef8yx6dv+bR+b/uveOj77NTeXgOb71vd9fB53zV+bNqHOec
-c8657wvOOeecc84555xzzjnnnHPOOec8v5f6RdWVZV9Oeamtnj9qHafy8294
-9H3O13r2+TjnnHPOo/NzzjnnnHPOOeecc84555xzzjnnvN1P549eZ+/42u/V
-ebNdv9X7yXmPZ6mDn/HZOOecc8756u8PzjnnnHPOOeecc84555xzzjnnnN/r
-s/OtrqPUL8u+jdbfO9+u67u6fs57fre2LOvhe7zUspybnHPOOb/Xo/Nzzjnn
-nHPOOeecc84555xzzjnn/Lyvipf6ZVvvLh/dn9V5suwHf6evPl/43b77vZBl
-nZxzzjnP59H5Oeecc84555xzzjnnnHPOOeecc57HSy1bnad9dh+zrIPzGXdu
-8F/9VuXJsk7OOeec5/Po/JxzzjnnnHPOOeecc84555xzzjnf5894rV+ttc6T
-bR927VvrfmZbH+ct3tvvGc+2Hr7GT597q+fjnHPO+b0enZ9zzjnnnHPOOeec
-c84555xzzjnn7f6Mr5631kbzta4ni5fas3/r+Gzr4/yvfPY5aX0++Lu91lbf
-h5xzzjn/jkfn55xzzjnnnHPOOeecc84555xzzr/opX6ltru+LHX07tOfeGu/
-1nlr/Th/s7c+L73PHf+2t47LVjfnnHPO83h0fs4555xzzjnnnHPOOeecc845
-5/zNnqWOUc9SB+c8zmvnQ3R9/G7PUgfnnHPO83t0fs4555xzzjnnnHPOOeec
-c8455/wL/oxnr683zjn/jmepg+f0Z3z0PmrNm239nHPOOd/n0fk555xzzjnn
-nHPOOeecc84555zzG70Ur/3O6lnq4Jyf89l+q+bn7/BT753W93KWfeGcc875
-Oo/OzznnnHPOOeecc84555xzzjnnnN/oz3i2+lavM7oOzvl+X30+RK+Hx3it
-Rd+3nHPOOb/Xo/NzzjnnnHPOOeecc84555xzzjnnGbwUb50n23pWrf90HZzz
-OD91nvB3eu1+2JUny/o555xzvt+j83POOeecc84555xzzjnnnHPOOeeZvRSv
-/b7NS/16+3PO7/fW8213Hfxdvmq+t71/Oeecc97u0fk555xzzjnnnHPOOeec
-c84555zzDN46Llvdp9Z/qg7OeR5vbdnq5jl9dr5s6+Gcc875eY/OzznnnHPO
-Oeecc84555xzzjnnnGf0LHWc8tk45/w+n+23an7+bZ+Nc8455/w7Hp2fc845
-55xzzjnnnHPOOeecc845P+mr+tV+3+azcc75vX56HOe/Wrb6OOecc57Ho/Nz
-zjnnnHPOOeecc84555xzzjnnJ7zUbzZe8yzr7433juOc3+et5+Tqc4bf7avv
-k948s3k555xzfq9H5+ecc84555xzzjnnnHPOOeecc84z+Kr5ar9Xe2+81m+0
-Ds75/Z7tPOU5PGr86n6cc845v9+j83POOeecc84555xzzjnnnHPOOecn/XT+
-bOupzTNaB+f8fs9+nvJcvjvPbD3Z9otzzjnn8x6dn3POOeecc84555xzzjnn
-nHPOOY/0Ur9VeXrH7apj93yc8+94ljr4Xo+6/qveW1n2kXPOOefrv0Oz1cU5
-55xzzjnnnHPOOeecc84555xHeqnfqvlq80ftQ3R+znm8R50bWdbPf/eLqivL
-vnDOOec8zqPzc84555xzzjnnnHPOOeecc84551/wUhud5xnv7c8556v7ldqu
-PPyMR+eveXR+zjnnnJ/z6Pycc84555xzzjnnnHPOOeecc875m73UL7ouzvl3
-PHp8zaPz89/+tjycc845v9ej83POOeecc84555xzzjnnnHPOOedv8FXzrq6L
-c86fXjt/dp1vvXl5m/eOO319su0X55xzzu/16Pycc84555xzzjnnnHPOOeec
-c875jf6M75q3N845561e+x3t0fmjr8cp3x3nnHPOOfd9yDnnnHPOOeecc845
-55xzzjnnnJ/33flm45xzXvPa+dLa/9R5WOoXvY81n11vqa2+Lr39suwv55xz
-zr/n0fk555xzzjnnnHPOOeecc84555zzzP6MR9dxKh/n/Lte+33Ka/2y7FeW
-/Kfuh1L/LPVyzjnn/L0enZ9zzjnnnHPOOeecc84555xzzjmP9FK/3v67fTbO
-Oeerz8us52GW98WpumZ9Vd3R6+Ccc875+z06P+ecc84555xzzjnnnHPOOeec
-c57Zs9UxGuec81FvPR9P1bU7T/b3wel13/re5Jxzzvn7PDo/55xzzjnnnHPO
-Oeecc84555xzfpPvztfasuwH55w//dQ5eercjd7PU75rP7Osj3POOef3e3R+
-zjnnnHPOOeecc84555xzzjnnPNJL/VrnG62j1m91nZxzns1vGfcWP7UvrXk5
-55xzzn3Pcc4555xzzjnnnHPOOeecc8455+1e6tc7X28drfO2ztM7H+ec3+a9
-LVv92X32fZVlHZxzzjl/r0fn55xzzjnnnHPOOeecc84555xzzjN6qd/pPFn2
-g3POo723Zas/y3ts9j2UZX2cc845/55H5+ecc84555xzzjnnnHPOOeecc86/
-4NH5Oec8m4+O35W/1LLt2x9f9b6JXgfnnHPOeatH5+ecc84555xzzjnnnHPO
-Oeecc87f5Kv7cc55tI+eg7vqi96PUjudv/f9km3fOOecc85v+e7inHPOOeec
-c84555xzzjnnnHPO3+Sr5l1dF+ect3rtXIquL1sdnHPOOef8rEfn55xzzjnn
-nHPOOeecc84555xzzm/y3flaW5b94Jzn9dHzJ7rummepg3POOeecn/Xo/Jxz
-zjnnnHPOOeecc84555xzzvkbfNW8s3HO+fu9dj6cqiPKs9TBOeecc87PenR+
-zjnnnHPOOeecc84555xzzjnn/Cbfna+1ZdkPzvk5bz03Tp9bp87F0TjnnHPO
-OX+HR+fnnHPOOeecc84555xzzjnnnHPOb/TWcbPjV43jnL/fs9Sx27PUwTnn
-nHPOz3p0fs4555xzzjnnnHPOOeecc8455/xGbx3XO77WvzUv5zyPrz4Hotdz
-2p/xbPVxzjnnnPMzHp2fc84555xzzjnnnHPOOeecc845/4LXWrZ6Oef7ffX5
-Er2eXZ6lDs4555xzHuvR+TnnnHPOOeecc84555xzzjnnnPM3e+/4U3Vxzs/5
-qvlm68juz3i2+jjnnHPOeaxH5+ecc84555xzzjnnnHPOOeecc87f4KvmnY1z
-zvP5qfPhdn/Gs9XHOeecc85jPTo/55xzzjnnnHPOOeecc84555xz/iZ/xmfH
-98Y55/l81/mS1Wv1t47Lsh7OOeecc57Do/NzzjnnnHPOOeecc84555xzzjnn
-b/BV887GOef3eNbnvDU+O8/o/nDOOeec8296dH7OOeecc84555xzzjnnnHPO
-Oef8C/6Mt/brjXPO7/XRfrvqaT2vRutpzc8555xzznmG/JxzzjnnnHPOOeec
-c84555xzzvkXvdQvui7Ov+ijz+OqOnrzZvNd+8I555xzznmm/JxzzjnnnHPO
-Oeecc84555xzzvkXvdSvtWVZB+cnvPV5ae0fvZ7R8afqKvmudXHOOeecc97i
-0fk555xzzjnnnHPOOeecc84555zzL3rv+FN1cR7pq+abreOUR9UxWteuejjn
-nHPOOW/x6Pycc84555xzzjnnnHPOOeecc875F73UbzbO+Ru89Xm57Tl5xrPV
-xznnnHPOeWaPzs8555xzzjnnnHPOOeecc84555x/2aPzc57J3/r8ZKmDc845
-55zzmz06P+ecc84555xzzjnnnHPOOeecc/5lX92P8y94ljpq9f2JZ6uPc845
-55zzGz06P+ecc84555xzzjnnnHPOOeecc/5F7x1/qi7+LV99H+6ue1ee3vVG
-XzfOOeecc86/6NH5Oeecc84555xzzjnnnHPOOeec8y97Kd7bn/MW773PSu1U
-fTXfnT/LdeOcc84555zH5+ecc84555xzzjnnnHPOOeecc855vV90XfxdPhs/
-ff+vXp/njHPOOeec8/s8Oj/nnHPOOeecc84555xzzjnnnHPO6/2i6+Kxvvs+
-iV4P55xzzjnnnNc8Oj/nnHPOOeecc84555xzzjnnnHPO+1u2enmbt17vZ7/Z
-Okbz7soffR0455xzzjnn93l0fs4555xzzjnnnHPOOeecc84555zX+0XXxdd4
-7fquytead3be0Xk455xzzjnnvNej83POOeecc84555xzzjnnnHPOOee83LLV
-9XY/dT1qrbWe1v6cc84555xzfrtH5+ecc84555xzzjnnnHPOOeecc855vV90
-XV/x2v73ztvbb/Y+4ZxzzjnnnPO3enR+zjnnnHPOOeecc84555xzzjnnMV7q
-F1UPb/Po/Fn91H7N1sM555xzzjnnfMyj83POOeecc84555xzzjnnnHPO+S1e
-iq+a5+mj43vr2lX/6rxf81rLVu8u3/WcZlkf55xzzjnnnPM2j87POeecc845
-55xzzjnnnHPOOeenvdRvtH+trV5Haz2j+7F6/lXzzF7Ht3h0/t3PX6nV7n/O
-Oeecc8455+/26Pycc84555xzzjnnnHPOOeecc77ba202T+336jqy7e/q6zS6
-n7P3Rbb96N2nrF5r2erlnHPOOeecc57To/NzzjnnnHPOOeecc84555xzznnJ
-S/FV86zy2fp4rI+26HpP53efc84555xzzjmP9Oj8nHPOOeecc84555xzzjnn
-nPPv+qp5W9uf8b3zZNkvnttr/U7d76PzZdtPzjnnnHPOOec8U37OOeecc845
-55xzzjnnnHPO+fu91G93nizr5zyiZVsv55xzzjnnnHM+49H5Oeecc84555xz
-zjnnnHPOOefv86j8td+c3+CrWrZ1cc4555xzzjnnMx6dn3POOeecc84555xz
-zjnnnHP+Hi/1i6ory75wnqll2wfOOeecc84557zFo/NzzjnnnHPOOeecc845
-55xzzt/ntTaaJ9s6OR9ps/lW1+v54pxzzjnnnHN+g0fn55xzzjnnnHPOOeec
-c84555x/x5/xbPVxvrLtqu+2eTnnnHPOOeec8xUenZ9zzjnnnHPOOeecc845
-55xzfs5L/UrjevPV5uM8o8/GszzH9olzzjnnnHPO+Zs9Oj/nnHPOOeecc845
-55xzzjnn/JzvztebP8u+8Hd5qd/ofZvNs9TR2mr7zznnnHPOOeect3h0fs45
-55xzzjnnnHPOOeecc875eX/GR8f35l/dj3/bZ+O3eJY6spw/nHPOOeecc86/
-6dH5Oeecc84555xzzjnnnHPOOef5fXa+3nmzrZ+f8dZ477i3eZY6Vnut1c4T
-zjnnnHPOOefv9uj8nHPOOeecc84555xzzjnnnPN9/ozX+p2q6+m13/xOL8VX
-96/1u8179+d2772+WermnHPOOeecc37Wo/NzzjnnnHPOOeecc84555xzzvd5
-dP5Wr/3md3opXuu/uo7b/PbnOZtnqYNzzjnnnHPO+ZxH5+ecc84555xzzjnn
-nHPOOeecn/daO11X7TfP4aP9Vtfxdq/ta3R9Wbx1XLa6Oeecc84555yPeXR+
-zjnnnHPOOeecc84555xzzvk5L/XLVleW/fqq947Lel/d6quuy1f9Gc9WH+ec
-c84555zzMY/OzznnnHPOOeecc84555xzzjnP46fzZ1v/W/30OD7nrsceL8Vr
-vznnnHPOOeec5/Do/JxzzjnnnHPOOeecc84555zzeC/1250/y/qzeqlfrX/2
-687b+vX2523NucQ555xzzjnnd3p0fs4555xzzjnnnHPOOeecc855Xi/1W5Vn
-93p6x0Xte/b5+Fl3Xc/6M56tPs4555xzzjnnOfJzzjnnnHPOOeecc84555xz
-zu/1WquNm8337HdqvbVxq9fdus7VefgZ772+Wer+qj/j2erjnHPOOeec87d6
-dH7OOeecc84555xzzjnnnHPO+Xe8t2Wrf3S9f+Kt+zLan9/lo9c3uu63+Ozz
-taoOzjnnnHPOOedtHp2fc84555xzzjnnnHPOOeecc/4eL/UbHZfda+sdjfNv
-uPsj1kfPq6dnWQ/nnHPOOeecv92j83POOeecc84555xzzjnnnHPO8/szPjp+
-VV3Z9+F0XTy377r/+F5vHZetbs4555xzzjl/q0fn55xzzjnnnHPOOeecc845
-55yf92f8VL7V886uu3fc6nr4t7z2+1QdfM6f8Wz1cc4555xzzvlbPTo/55xz
-zjnnnHPOOeecc84553yfP+PRdZzKx/kN3vrc8lxeatnPYc4555xzzjm/3aPz
-c84555xzzjnnnHPOOeecc87n/RnPVl+t7ug6OD/hrc/v7jr4b199XrmunHPO
-Oeecc77Go/NzzjnnnHPOOeecc84555xzzuuepY7VnqUOznf66HMRXffXfdV8
-XznPOeecc84553y3R+fnnHPOOeecc84555xzzjnnnNf7lcZlqbvmWergPMJH
-n5four/qq8+x1vk555xzzjnnnP/26Pycc84555xzzjnnnHPOOeec83Z/xrPV
-11p3b5zzN3uWOnibt47LVjfnnHPOOeec3+7R+TnnnHPOOeecc84555xzzjnn
-9X69/aM8Sx2cZ/Tbn2/+156lDs4555xzzjl/u0fn55xzzjnnnHPOOeecc845
-5/zL/ozX+rX2z7Ke3jjnb/TR56jUotfzdl91XbKsh3POOeecc87f4tH5Oeec
-c84555xzzjnnnHPOOf+il/qtyrOq7tk453z8uSv1i17P2/wZ331dsq2fc845
-55xzzm/x6Pycc84555xzzjnnnHPOOeec83IbnS+qjto8o3Vw/kbf9fzzNj91
-Xq3uxznnnHPOOedf9ej8nHPOOeecc84555xzzjnnnPN2bx1XG1+a53SdnPNy
-y1bfW/1teTjnnHPOOef8rR6dn3POOeecc84555xzzjnnnHO+z0ttdJ5s6+P8
-Jm99vlqf59m8/Ewe14NzzjnnnHPO13h0fs4555xzzjnnnHPOOeecc875ei/1
-i66L8y9763Pa6715+dr5sq2Hc84555xzzt/q0fk555xzzjnnnHPOOeecc845
-5+PeO/5UXZzzuu/Os3q+KH/GV+9DKT573nLOOeecc845X+vR+TnnnHPOOeec
-c84555xzzjnndd+db9e8nPP236v9VJ5d51ip367zrRbnnHPOOeeccx7r0fk5
-55xzzjnnnHPOOeecc8455+X2J34q3+p5Oedlj36uT59jWX11P84555xzzjnn
-ezw6P+ecc84555xzzjnnnHPOOee83P7ET+frjXPOx732e9RXz3db/tH9n+3H
-Oeecc84553yPR+fnnHPOOeecc84555xzzjnnnMfXcTof57zds8y3uo6s52uW
-ejnnnHPOOeec58rPOeecc84555xzzjnnnHPO+Re91K93XG8dq+vhnJ/zVfOd
-Hhftu89JzjnnnHPOOednPDo/55xzzjnnnHPOOeecc84551/22flWzztbD+c8
-r/e2bPXvOg9318U555xzzjnnfI1H5+ecc84555xzzjnnnHPOOeect/sz3tqv
-N845f4/Xfve26HX1nmvR9XLOOeecc845X+PR+TnnnHPOOeecc84555xzzjnn
-417qF10X53y915732XNjlfeO711X9HXgnHPOOeeccx7j0fk555xzzjnnnHPO
-Oeecc8455+3+jLf2641zzs/52/NxzjnnnHPOOecrPDo/55xzzjnnnHPOOeec
-c84557zuq+ZdXRfn/H+99txF15etDs4555xzzjnnvMej83POOeecc84555xz
-zjnnnHPOy+1PfPW8o+M55+3P7W2epQ7OOeecc8455/xXy1YX55xzzjnnnHPO
-Oeecc84551/0Ur/SuNb+o/Nzzv/Za89RdH01z1IH55xzzjnnnHPe49H5Oeec
-c84555xzzjnnnHPOOef1fqVxtf6t87WO4/zN3vs8Zqm717PUwTnnnHPOOeec
-93h0fs4555xzzjnnnHPOOeecc875vNdatno5j/Ta75qvquOUP+PZ6uOcc845
-55xzzls8Oj/nnHPOOeecc84555xzzjnnfNxL/WbjnL/ZW5+jtzw/z3i2+jjn
-nHPOOeec8xaPzs8555xzzjnnnHPOOeecc845b/dnfHT86ro4v9lnn8MsXorX
-fnPOOeecc8455zd4dH7OOeecc84555xzzjnnnHPOebs/46PjV9fF+c3e+rys
-rmM0b2ue6H3lnHPOOeecc85XenR+zjnnnHPOOeecc84555xzznm7P+Ot/Xpb
-tnVznsFL7VQ92faDc84555xzzjk/6dH5Oeecc84555xzzjnnnHPOOef7PDo/
-5zM+G5/1Wt7T+bNdH84555xzzjnn/KRH5+ecc84555xzzjnnnHPOOeecj3vv
-+FN1cf4rfrqOVn/GVz9fu55rzjnnnHPOOef8Cx6dn3POOeecc84555xzzjnn
-nHM+7r3jT9XF+ci4XXXUPHqfOOecc84555xzXvfo/JxzzjnnnHPOOeecc845
-55zzeW+N78rP+V/56vt41qP3g3POOeecc8455+MenZ9zzjnnnHPOOeecc845
-55xzvt5L/aLr4t/y2n14+v7nnHPOOeecc875vR6dn3POOeecc84555xzzjnn
-nHM+76v78Xd67feuOmrt1HOQ5TpwzjnnnHPOOee836Pzc84555xzzjnnnHPO
-Oeecc87Xe6lfdF08xmv3w+n7cPf9Gb3fnHPOOeecc845X+/R+TnnnHPOOeec
-c84555xzzjnn673UL7ountNXzfuMZ1kf55xzzjnnnHPO7/fo/JxzzjnnnHPO
-Oeecc84555zz9V7qF10Xb/Pd89bG9daVbf8455xzzjnnnHP+Po/OzznnnHPO
-Oeecc84555xzzjk/79H5v+q7r8fofdA6X/T+cc4555xzzjnn/LsenZ9zzjnn
-nHPOOeecc84555xzvs9rLVu92X33dTldB+ecc84555xzzvktHp2fc84555xz
-zjnnnHPOOeec5/RSPFudfMyj89/qu8a3xlfVwTnnnHPOOeecc36bR+fnnHPO
-Oeecc84555xzzjn/uq+adzZe89q8tdY6T5br8naPzn/KV69/Ni/nnHPOOeec
-c845H/Po/JxzzjnnnHPOOeecc84551/xUr9d+XfN35uvddzq/emtO8t9csqj
-849673p676vo9XHOOeecc84555zzv/bo/JxzzjnnnHPOOeecc84559n8GZ8d
-3xtv9drvUd89f/R17e1X6p9tfavv0yzee51W5+ecc84555xzzjnnOTw6P+ec
-c84555xzzjnnnHPO+Wkv9VuVp3dcrd/suvgZX93vVL2n8rfux+m6OOecc845
-55xzzvkdHp2fc84555xzzjnnnHPOOed8t0flr/3m3/bRlvW5WD0f55xzzjnn
-nHPOOeeZ8nPOOeecc84555xzzjnnnO/2WjtVV7Z94e/wWpsdl229nHPOOeec
-c8455/ybHp2fc84555xzzjnnnHPOOed8t6+ar/ab80ze27LVzznnnHPOOeec
-c855pvycc84555xzzjnnnHPOOefP+Oz41njtN+c3+Kp47zjOOeecc84555xz
-zk96dH7OOeecc84555xzzjnnnH/Hn/HV85b61X5znslP5butXs4555xzzjnn
-nHP+bY/OzznnnHPOOeecc84555zz7/gzPjq+N//qfpyv8Na2q47szzvnnHPO
-Oeecc84555nyc84555xzzjnnnHPOOef8/V7qF51/tB/nPS36/i95lny9/Tnn
-nHPOOeecc875Nz06P+ecc84555xzzjnnnHPO3+O943fX1Zs3yz7yHH56XPbn
-9dR+1/pnq5tzzjnnnHPOOeecn/Ho/JxzzjnnnHPOOeecc845/45H53967Tf/
-ts/Gs3uWOkpe2/dTdXDOOeecc84555zzHB6dn3POOeecc84555xzzjnn7/FS
-v+i6ah6dn5/xUvzW+3b2ubzVe69Xlro555xzzjnnnHPO+ZxH5+ecc84555xz
-zjnnnHPO+Xf8dP5s6+drvRSv9V9dx62epY5of8az1cc555xzzjnnnHPOc+Tn
-nHPOOeecc84555xzzjk/nT/b+nlbv+z3VTa3L23+jGerj3POOeecc84555zn
-yM8555xzzjnnnHPOOeecc74rT7Z18rFxtXlG6/i6Z6kj2p/x3vst23o455xz
-zjnnnHPO3+rR+TnnnHPOOeecc84555xzzmfny7aer3mtjY7rnY//o+963r7i
-reOy1c0555xzzjnnnHP+Vo/OzznnnHPOOeecc84555xzXvLWcdH1lfrVfkd7
-qd/s9RjNy9f6quv4VW8dl61uzjnnnHPOOeec87d6dH7OOeecc84555xzzjnn
-nPNef8ZHx5f6nap/tJ7WfRn10X3juXz3fcJ/9yuNy1I355xzzjnnnHPO+W0e
-nZ9zzjnnnHPOOeecc84557zXSy1bnavX+4zvytu679n2if/2LHXc6r37mqVu
-zjnnnHPOOeec87d4dH7OOeecc84555xzzjnnnL/Pn/HV8/aOz7Y/s3VH18Vz
-eu/9k6Xu23x2vmzr4ZxzzjnnnHPOOb/Fo/NzzjnnnHPOOeecc8455zy/P+PR
-dczO27rOUx61D/zbnqWO2733Oc1SN+ecc84555xzzvltHp2fc84555xzzjnn
-nHPOOefnvRSv/Y72qDpm62ztPxrn/Fe/3v78jGepg3POOeecc8455/wWj87P
-Oeecc84555xzzjnnnPN5L8Vrv2/zLHVwnslXnRd8rY+eY287tznnnHPOOeec
-c85XeXR+zjnnnHPOOeecc84555zPe+u4bHWPrjO6Ds4z+ey5wGO8dVy2ujnn
-nHPOOeecc86jPDo/55xzzjnnnHPOOeecc87n/RnPVt/senrjnH/Re5+XLHV/
-1VvHZaubc84555xzzjnnPMqj83POOeecc84555xzzjnnfHz8qnmyeZY6OL/B
-V50b/Ky3jstWN+ecc84555xzznmUR+fnnHPOOeecc84555xzznm936o8WdZZ
-89aWrW7OI3z0+Yqum+esg3POOeecc8455zyrR+fnnHPOOeecc84555xzznm5
-zc5X+x3ts3HOed2z1PE1333uZ1kn55xzzjnnnHPO+SmPzs8555xzzjnnnHPO
-Oeec83JbnSd6PaV+p/eB8zd663PkeTvjvedh73XJsk7OOeecc84555zzUx6d
-n3POOeecc84555xzzjnn9X6r8vSOq/VrrX/3ujj/su9+rvmcz86XbT2cc845
-55xzzjnnUR6dn3POOeecc84555xzzjnndS/1651vdJ4s9XPO/9lXzTdbB/9r
-XzXf6nOZc84555xzzjnn/DaPzs8555xzzjnnnHPOOeec831eimerh3O+3j2H
-OXxXnmzr5JxzzjnnnHPOOd/t0fk555xzzjnnnHPOOeecc77eS/1K43rztbYs
-+8E533eu8N/eOi5b3ZxzzjnnnHPOOefZPDo/55xzzjnnnHPOOeecc87b/Rkf
-Hb+6Ls55Xq/9LrXaOdNbx+3eum+lNnpuc84555xzzjnnnPMc+TnnnHPOOeec
-c84555xzXvdV866ui3Oex0+fJ7VzJsu+1PwZX32unt5/zjnnnHPOOeec87d6
-dH7OOeecc84555xzzjnn/Mv+jJ/Kt3peznmcR+cvtSx1RZ+Hq/txzjnnnHPO
-Oeecf9Wj83POOeecc84555xzzjnnX/BnPEsdvXHO+T0efc6U+u3KP1pPVF2n
-xnPOOeecc84555y/xaPzc84555xzzjnnnHPOOedf8Gc8Sx29cc75fV77vdpr
-Lfqcy+LZ3xecc84555xzzjnn2Tw6P+ecc84555xzzjnnnHP+Bi/16+2/22fj
-nPP7/JbzJ3q+U+vv7Z9tHZxzzjnnnHPOOedRHp2fc84555xzzjnnnHPOOX+D
-l/r1jotaz+l8nPO8vutcOj3ulPfWHV0v55xzzjnnnHPO+a0enZ9zzjnnnHPO
-Oeecc845f5PPzrc7X22e3vk457z3nNl1fkZ767qy1Ms555xzzjnnnHN+m0fn
-55xzzjnnnHPOOeecc87f5LVWm6827+o6s+0f5/w73tuy1Pnsl21fOeecc845
-55xzzt/q0fk555xzzjnnnHPOOeec8y97KT47fy3fqjycc17y1f0455xzzjnn
-nHPO+bc9Oj/nnHPOOeecc84555xzzvtbtno559/16PGcc84555xzzjnn/Bse
-nZ9zzjnnnHPOOeecc845/4JHj+ec85rXzp/T9UXvB+ecc84555xzzjnP5dH5
-Oeecc84555xzzjnnnPM3+O58rS3LfnDO83rtnImq7xmP3ifOOeecc84555xz
-nsuj83POOeecc84555xzzjnnN/ozfjpfb5xz/j2/7bx4xrPVxznnnHPOOeec
-c85jfXbcbJ5s+8E555xzzjnnnHPOOeect/gzHl3HqXyc83zeek5l9Sx1cM45
-55xzzjnnnPPcXorX+rfmW1UP55xzzjnnnHPOOeecc57BS/16+/f6bJxzfr+v
-Pjeye5Y6OOecc84555xzznlu351vdd5s+8c555xzzjnnnHPOOef83d46btW8
-tf6t9XDO8/vo8x5d96yX4m9bJ+ecc84555xzzjkf81P5WvO39p/NyznnnHPO
-Oeecc84555zPeK39GVcb35q3tY5s+8Q5H/dV50CW9dT8Gc9WH+ecc84555xz
-zjmP9dXz1n6v9lXx0fycc84555xzzjnnnHPOeYuXWm//0fyc87xe+13z3vmj
-vFZ/1ro555xzzjnnnHPOOd/pre05Pts6OOecc84555xzzjnnnN/tpX7RdXHO
-83jrudHrq+c7XVe2ujnnnHPOOeecc855rJfi2eo8tQ+llq1ezjnnnHPOOeec
-c84557l81byr6+Kc3+ez58aqOmpeq8c5xznnnHPOOeecc85Xeu+4bPVn2x/O
-Oeecc84555xzzjnn3/BnfPW8o+M55+/11vOo5qfOn9a8nHPOOeecc84555y3
-+Kr5sq1rdB9K/bLVyznnnHPOOeecc8455zzWn/Fd8/bGOeff9Wznxup+nHPO
-Oeecc8455/zbvmpctnVF78/X3X5yzjnnnHPOOeecc87f4rX2Z9zsvNnWzTmP
-89q58YxHnTPR+8Q555xzzjnnnHPOv+W7x2db79fW17qu3XW01rN7XJbrwjnn
-nHPOOeecc845v99L8drv3vGt4zjn8b7qHOn11edaa57o/eacc84555xzzjnn
-3/JV89bmb43ftj+n61pd5666st2fNc9233HOOV/rvf2y1c8555zv8FI8W52c
-c875jV6Kt753d9XFOe/30ef0dN3R+8Q555xzzjnnnHPO+QnPUsfTV/db7bvm
-i8of7bddL84557/jp79fRufLtp+cc875Di/FW9+LvfHReTjnnPM3eO09WGtZ
-1sH5lz1LHb2epQ7OOeecc84555xzznd6ljpOrTN6vlrLtm+nvPf+vO1+4Zzz
-W/wZ3/W9sWq+2fpqv2fzZru+nHPO3+2r5pt9P46+T7Pt59s86n7inPOv+eh5
-u7suzvn6795VdYz6M55lXznnnHPOOeecc8453+lZ6rjFe1u2+m/12u9Rr7Us
-6+ec89XeOi5rfaX4rvfF6u+rbPcD55zztb5qvt15T7+fRuPZru/pfYre597+
-nHP+dT91bnPOxz3q+361P+PZ6uOcc84555xzzjnnfIdnqeMW723Z6n+b137X
-vHd+zjl/iz/jWet79stWp/cO55x/w0tx5/hej84/66e+E1r7u16cc37GV5//
-nPP475hTdbTmz7Z/nHPOOeecc84555yf9Cx13Lb+2Tyz+flf++rrEr0ezvl7
-vfe9tPq9t+t9N5p3VV3PeJbrXfPo/Jxzzn/7Mx5dR6lf9vrf8t6Mzr/ao+9P
-zjm/3Z/x1e+P0XGc837f/Rz2zh+9H5xzzjnnnHPOOeecZ/Qsdezy2+at+el8
-b/Hafma5H1rjs3k45+e9dVz0e6T1fJut49S5m+0+2P0+ivZSW7Uf2dbLOX+/
-R7+Xez3LuqLfQ7v2cXWebL7rPlk93+46W8e//buOcz7vq/txzue9NV5rt32P
-cc4555xzzjnnnHP+Js9SR81r9Z+uL/p6tV7PXXVE++r7Ybae3T56vUvzR6+H
-c16Of+39vsp7z/foemstut7d99Wu75/aOm79DuCcl/2283l03Op9uv29uWp/
-fUeN+a73eO+47Ost9YteD+d8v3u/cD7vUd/Tq9/7s3mirwPnnHPOOeecc845
-5xk9Sx1/vFanffpdV2+/1XVkvb5vu9619Y2uK8t6OH+T957HreOyrO8rHv1+
-P3UfRu9zzXe9t1bPxzk/78/46nNgtK63e+/7Jfq9WWvR+/k2L7VsdZ76DllV
-B+c8nz/js+dltvVxvtJb36e76+ith3POOeecc84555xznsej6qjVk3WfavXf
-4qOtNU+26zt7vXvj0etbvV7OebmNvhd21cVjfPYcXn0+r64jm2efj3N+zlef
-A6vn5bFeatnqzO67nqfRerK47w3Oue8Qzts963vzGY/eJ84555xzzjnnnHPO
-ed2z1PH0LHWUPEsdp7zUb/X9dut1OZ2v5qP1R9fNeUZ/xt96bvBc3tuy1Z/1
-fec9yPm9Pnperh7Hc/mu76zZeFbfvR7fyb/jpfG796F3/rfd95yf8Gf8a+8X
-zlv8lvs+Sx2cc84555xzzjnnnPOy7843mvf0fmS7Lm/1Uqv1z369ZuOnPHt9
-nN/gt58DPLf33m+1lmVdWTz6+cxWD+cZ/BkfHb+6Lp7Lo8fXfFU9pXGr+2e9
-TqO+et5s98tpf9t6OI/0WstWL+c7Pfo90loP55xzzjnnnHPOOec8v+/ON1pP
-9H6M1s/5TPzUc1Frb3uuOR/xqPcm/4av7lfz2Tg/463xUr9s6+G8xZ/x0e/X
-0fw8p6+eN9v6Vr8fVn3H3rqftX69+3P6fludf9Z335+cf8Fved45/3uP+n6o
-jZvNE72vnHPOOeecc84555zz9b47Xy1v9LprdXJ+0nfPF3UOtLZn/2zXh7/T
-s703+bs8evyoz8az17G6X/Q+RF8nzme8FG89D3fVxc/4qXzZ1h2931/fn1K/
-bPu2a97o58n3DH+jP+Oj9/Pqujhv+R1Vx6jvnp9zzjnnnHPOOeecc57fs9Yx
-O3+2fea8xXvju5+/2XlXP6e76uDf8mf81vcmP+tR51L0ukutN76qf5b9XF1X
-q3tv8jd5tueL73F1cL7eR+PRdd32Hc55jz/jq59fzkc8+hzfNS/nnHPOOeec
-c84555yPjp/Nv6qebPvJ+Zt8d77RerLtE3+H11q2evkez3b+RO/HrJf6jb53
-suzbbPzt9y3/pt/y/cnPeLZzKXo/OD/htbbreRnN0+qrv9M4P+G+c3gGP3VO
-tublnHPOOeecc84555zz3b5rvtXzcs73+erxvfNk2w9+lz/j3k+8xU99FzkH
-3+mz8dnrX2tveS54bn/GT39/8hhvPb9211GKZ9knzr/ku/NFnzOc/3LfOXzG
-T51vs/NF7xPnnHPOOeecc8455/y7vjtPtvVyzvf56XE1jzr3eA5/xmv9TtXF
-c3j0OTVbD3+H944bnX90vPcs73HvWf737n3KOV/dr3X87Hy7vsv4O/3088Lv
-9t7v59P356p5OOecc84555xzzjnnfLePjq/95pzz1b5q3tr82dbNx7zWstXL
-c3jv+TB6nrTm5XzGZ+Ojz4v37Dd8dT/+Lo/6nuec3+u9/bJ9/8zOy9/ptZat
-Xn7Gd8/re4lzzjnnnHPOOeecc8455zyHr5q3Nn+2dfPf/ozvvn94bt81ftV8
-WfaJf9tL8dH3Y+98/JsenZ+v8V3v41XzcM756u/5XnfO8V/9ouvie3zV+NF6
-su0H55xzzjnnnHPOOeecc845/+275zuVl495Ke66vdN3X9fo9XEe6bV+vefs
-aB3ev7l993XnOTx6POecn/JaP98/fMR9L93pvddx13dRqV+WfeKcc84555xz
-zjnnnHPOOec5fNW8tfmzrftW330deU5f/XytqotzXvfe8d6nOd15+g0ffb5r
-zy/nnH/NV8+bbX38r9330rvc88k555xzzjnnnHPOOeecc85v8t7xtXmyre9W
-X3W9+Blf9VyMXvfWeTjn+7zWRuebPT94n3v/3um7rm+W9XHO+W1+epzvpbPu
-e+mM73q+ai163ZxzzjnnnHPOOeecc84555z/8lq/2u/aPLX+2fYji49eL77G
-R5+jXdedc/4db22j51jr+Lf76P7srov/du9Tzjn/lveO9/4+46uuF//tq+7n
-6HVwzjnnnHPOOeecc84555xzntGjx3/No/O/xVftb+880evmnN/ntX6t40bz
-f82j87/Fd+9v9Po455zHeCk++h3VO9/XffU+f8137XOW9XHOOeecc84555xz
-zjnnnHN+s8/Gn55tfav3qdSy1ZvdZ/vNzss559HeG1/1nn6LR+fP7rP7mWUd
-nHPOv+Gz41pbtnWf/g6Irivae1tt/mzr45xzzjnnnHPOOeecc84555zX22y/
-7P729a3y2X3Lsg7OOY/2Unz0fZRtfav242s+u29Z1sE555zv9NX9bvday1bv
-qfsgW72cc84555xzzjnnnHPOOeec8zxe65et3tb6ouva7bP7kGUdnHP+Va+1
-bPV+7f07e92yrINzzjm/2Vf3y+a1lq3e0f3PVi/nnHPOOeecc84555xzzjnn
-/H1e6lfrf7re3vqj/bZ6Oeecn/XW+K78b3ufrfpuiV4H55xzzute65e93tP5
-R7+DstTFOeecc84555xzzjnnnHPOOeejXmvRdX01P+ec83f46Pi3vv9b37vZ
-riPnnHPOz3trO/Udtfp777b8nHPOOeecc84555xzzjnnnHN+m++ab1We1fNx
-zjnnJ320Rb8va/Nk22fOOeecv89HW9bvqNH5OOecc84555xzzjnnnHPOOeec
-//aolm0fOOec85Nea7Pjsq2Xc8455/zUd9Sulm0fOOecc84555xzzjnnnHPO
-Oeecr23Z1sU555xn9t6WrX7OOeec81u+o0ot27o455xzzjnnnHPOOeecc845
-55zHtmz7wDnnnJ/01tY6/tkv23o555xzzk9/R61u2faBc84555xzzjnnnHPO
-Oeecc87f6lnnbW3Z9pNzzjlf2bK8f5/9s+0z55xzzt/nsy3Ld9TsvJxzzjnn
-nHPOOeecc84555xz/lZvbafry7If2a4X55zzu/z0uOzvvVI8y3cA55xzzvN4
-rZ3+jsry3RZdB+ecc84555xzzjnnnHPOOeecr/JSvNZ/dR01760/2mfjnHPO
-3+2j/VbX8Zb376rvlizr4Zxzzvn4d8ipOnZ9/0XX57uIc84555xzzjnnnHPO
-Oeeccx7ts/Fov7XuWX/Ge/ch23o45/xr3tqy1f2V929rvNQv23o455zzG701
-3jsum2epY/X3bO27kXPOOeecc84555xzzjnnnHPOW+O947L66D58zZ/x3n3L
-th7OOY8+T5/9Zt/L2dbZ6lnqiPbecfaRc875F7013jvuds9Sx+l1lsZlq5tz
-zjnnnHPOOeecc84555xz3u61fqPzZVvnqf3ibd46rvc6ZFsn55yvev96L+Ws
-I6v3jrO/nHPOI331+NXz3+arvg/e4r3N9yjnnHPOOeecc84555xzzjnn8T47
-btV8X/Esddzurfdlbb7eebKsn3N+j6+Kz9bxFc9Sx+2+6j1b8izr5JxzftZL
-/Ua/k1aPe7vbrzlvHdc7Pts6Oeecc84555xzzjnnnHPOOd/hvfHeeWr9a/2+
-6qPXi6/x0edoNn+W9XPO49/LpTZ7jo3O9zYf3Z/our/ureOy1c0553zMe8f5
-/jnjq64X/+2r7ucs6+Gcc84555xzzjnnnHPOOed8hfeOq80zWgf/R191vfgZ
-X/VcjF731nk45/u8tc2eK94Pe93+3umt43rHZ1sn55zf4qPjs7wv+G+3v2d8
-9fPV2rKsn3POOeecc84555xzzjnnnH/bV81Xm39Vnq/77uvIc/qu52t0HOe8
-3XvHeZ/mdOfoN7x3XOvzyznnX/Ps8/E97vq9y1vHZaubc84555xzzjnnnHPO
-Oeec5/TV89Z+78rLx7x2fVr78zt89/OYZZ2cR3hvfHSeLM87H/Pd153n8Nn5
-sq2Hc859//CT7nvpTn/GVz2Pq86lbPvFOeecc84555xzzjnnnHPOf/uq+Wrz
-r8rDz3jv9c1SN9/js/Otnrd1fs5Peqnf6PvRuctbPEsdfM5bx+0+lzjnfNf5
-tStPdF38rLve3/BaO/WdnG1fOOecc84555xzzjnnfLevGpdtXZzz9/mq+Wrz
-r8rDc3iWOvgd3nsfjd53rXk5n/Fav13Pi/P4Wz4b5+/0qO95zvm93hqf7Xf6
-7wXOM9XBY73WVp9P2dbPOeecc84555xzzjnnq3x3vmzr5Zzv89Hxu+qKOvd4
-Du+9H7LUzc949PfSqXOQ5/be8aPze8/yE+49y1v67c6TZf2c8/Z477gs3x+n
-8vDc7n7iPf6M7z7PVp2j2faRc84555xzzjnnnHPOS7573mzr5ZyX2+z5cTo/
-5y2/T9XB7/LT30U1z7IvvM1r/aLew297Lnhuj7rveaw/49Hnxux9yDmf9915
-os8Zzn+57xw+46fOt+jxnHPOOeecc84555xzPuqnx/3xVfNm20/O3+S784zW
-s7su/m3PUgeP8Wz3RZZ9GfVSfPS901pH9Dnx9fuWf9Nv+f7kZzzbuZRlXzjf
-6a1t9fPSOu+or/5O4/yE+87hGfzUOTl7bnPOOeecc84555xzznmvZ8m/ev5s
-+8x5i9f67brPe+tY5av3h/MWX3UfZlkPP+NR51KW9Zda7z7N9p/127+fvTf5
-mzzb88X3eHT+rO9Tzme81i/qeXzbdzjnPb7qvs2yHv4OX/1+mZ03y75wzjnn
-nHPOOeecc87v9915anl352+tK9t14d/01fP2Po+n19faP9t14u/ybO9N/i6f
-nS+67lK/6Py9/Uavz+i8Wb4LZsdzfsJbn7+szykf81qL/t57q5f6Zasz6vss
-276tni9LXb5n+Bt99jxZVQfnv1rrd/WuunzPcM4555xzzjnnnHPOV/nuPKP1
-7K6r5LP1c/6rjd5vs3Wsnve255rzEY96b/JveOu4qPcRP+u9/ZxP/E0++j28
-ug6ew2tt9XfdLd47fvd7JOv+tMZX7XPv/Le8v3ffn5x/wW953jlv6TcbP/1c
-tOblnHPOOeecc84555zf67vzjObdXdfTs12Xt3qptfbPer1q/bLUO1o/57x+
-/tTmia6b3+HPeO/7dHU9b/Po92C2ejjP4LPvy1V18Nw+O9+p+mbrKY1f3b/W
-L+s+nzoHVs93298Fu+9/zr/oWergPNKjn4/b3secc84555xzzjnnnPOyR+e/
-ra4/Hp3/tJfiq6/r6LzR1+VUnlYfrX93XZzf6LPP1y3nBs/hvS1b/dHP56iv
-rotzvt5nz03P/zt9Nj56X2Tbh9n35qo8vpN/9yuN270PvfM7Lznv91XPUZb1
-cL7Db3m/ROfnnHPOOeecc84555zXPSp/rZ6oukreWv8tPttq+bJd39n9yX79
-n/HV6+Wcr38vrKqD5/BnfNf7evY763a/bV7O+X7fdY7zu73UstV5i+8aNzpv
-Fve9wTmPPmc5v8mzvjdn6+Scc84555xzzjnnnJ/36PxPr9UZVVeW/KN19fZ/
-2/V9y3VurXf2Psm2Ps5v9t5zuTZ/9Hq+6tHn++y8bzn3n/Fs+8w5j/PZc7t3
-fv67X2//0+f5rvz8d8tW5+nvkF11cc7jfdV3SJb1cL7Tn/Fs781s+8U555xz
-zjnnnHPOOS+3bHU9vVb/6bqir9eqfrf66nVnWVfJW9fbOn9vfs75uef7a+/3
-Vd77XshS96r4qe+cVflWf/+01vvV7ybO3+y3nc9Z3jO3vzdXnedZ3ru3+a7r
-MlrPbo8+Nzjn97nnn/N979/d+Ve/92fHZbkenHPOOeecc84555xn8uj8t67v
-bet5u9f2czbP6uvb2280H+f8nK/uN+q98azvo9ZxWa5/zbPUsWs9vfNkve84
-59/zLO+z1fNF7+suXzXvV99Dz3i261LyqOfxK991nPN5n41zzud9tN+uek5/
-j3HOOeecc84555xz/iaPzh+97lKrzXc6H2/z1ddldF7OOR99j5TG73r/rX7f
-jeZd9f2ya99Of5dkq49zzr/uWd4vo/Es9b/lvZltP7KsZzbOOee3euu5ump+
-zvn576JVeXrnz7IvnHPOOeecc84555xn8uj8t3hvy1b/W/0ZX33/j9bFOefZ
-vfY72kvxbHV673DO+Te89dzOUu9bPEsdo37qOyHL/blrXs45v81Xn/+c832+
-ut8ub/3+45xzzjnnnHPOOef8Cx6d/xbvbdnqv92f8dPXNdt+cM75rK/ut9pH
-63rGo+v3/cU559/0U++T2bzP+C3v97f7quvaO9+q/pxz/nU/dW5zzsd99XMa
-5c4LzjnnnHPOOeecc/5Fj85/an3Z5p0d/zbvvT9vvW845zy77zpvW9vse2P2
-O2j199LoOM4553zEs7wfR9+LtTif89nvt+j6Oef8Fp9973LOz/kzftt3bOt3
-OOecc84555xzzjnnb/Lo/LN1Rde3e95S/2zXa9ZvvV6cc/51j/6+WDU+y35y
-zjnnO7z1PTj6vu3NV+vHOeec3+yt78HddXDOxz06/+rzh3POOeecc84555zz
-N/mq+Wrzt467bX9O1fHHV9e5a5+y3Z9Z8nDOOY/11vipejjnnPNIH31fcs45
-57zure9Z72PO8/voc7q7rqdn2S/OOeecc84555xzznf67LjafNnWu3p/TtUx
-6r3XL3qfe8efut8555xzzjnnnHPOOef86aV+z3itX2//LOvnnLefC73nQK+v
-Wk9vPMu+c84555xzzjnnnPNv+Oj42u+3eJY6bnP7yTnnnHPOOeecc845f5vX
-+o3Ol22dnPN47z2Hos6ZLPvFOeecc84555xzzr/hq+bNtq7RfRiNc84555xz
-zjnnnHPOOf+W136Pem9ezjmvxbPV8/Rs+8g555xzzjnnnHPOc3rv+Gz1Z9sf
-zjnnnHPOOeecc84559/w2u9RXz0f5/w9Xjs3Wuc7df605uWcc84555xzzjnn
-vMVL/bLVeXofSi1b3ZxzzjnnnHPOOeecc85z+Kr5ZuvgnN/vo+dGrZ0691rn
-2VUX55xzzjnnnHPOOec3ea3VxmVbD+ecc84555xzzjnnnPM7vRQ/XQfnPK8/
-46vnHR2/y1f345xzzjnnnHPOOeff8N3znaq/1K913GwdnHPOOeecc84555xz
-znmL/1f7dZIlOQoFAfD+t+5VbeI1ySAGRzJ2ss/gEBJZVWqt/dP2wzl/7r/1
-p+N767u89547nZdzzjnnnHPOOeecZ3nKOq39U/fHOeecc84555xzzjnn/Jte
-6zc67tdr86SdC+f8uf/WR++B2blWeev9yTnnnHPOOeecc875znVmrzsrF+ec
-c84555xzzjnnnHPe4rP7ldq/frX+KefCOV93vzytp3vrvlLycs4555xzzjnn
-nPO9XupX69+6zqw8nHPOOeecc84555xzznmCl+q9/Xu91u/0uXDO1/vseyPd
-T6/POeecc84555xzzrN89vhS/9r4tHPhnHPOOeecc84555xzzv/y2vMuP70+
-5/y81+6HU7la/fT6nHPOOeecc8455/wOT8nBOeecc84555xzzjnnnN/ktefZ
-3puHc85H75NT7l7jnHPOOeecc8455395Sg7OOeecc84555xzzjnn/GZfvU6t
-nd4/5/web71nTudKOS/OOeecc84555xznuEpOTjnnHPOOeecc84555zzL/ju
-cZxz3uq1+2d3rpRz4ZxzzjnnnHPOOecZnpKDc84555xzzjnnnHPOOef1lpaP
-c86fzpe2H84555xzzjnnnHOe6Sk5OOecc84555xzzjnnnPMveqnf0/lXzcs5
-563eOi4tN+ecc84555xzzjnP9JQcnHPOOeecc84555xzzvmbfHT87Pl61+Gc
-8933Y62l5vw3Lu18Oeecc84555xzzt/qKTk455xzzjnnnHPOOeec8zf47vG9
-69TmSTlHzvk9/lsfva/S9vX0HFqfOeecc84555xzznmbp+TgnHPOOeecc845
-55xzzm/2Ur02vnWe1b5rHc55vv/WZ8/bOz7tfFrzlcal5Oacc84555xzzjm/
-zVNycM4555xzzjnnnHPOOec3e6ne23+11/qdPkfO+Xz/rZ/OMWvetHNu3Xdv
-/7T9cM4555xzzjnnnJ/ylBycc84555xzzjnnnHPO+Zu99rzLa/1SzotzPv+7
-/1fffc/U8sz2tPNv/V1anznnnHPOOeecc86/6ik5OOecc84555xzzjnnnPM3
-e+15l9f6pZwX53z+vbPLn9ZHffd6rf50vpT3iXPOOeecc8455/y0p+TgnHPO
-Oeecc84555xzzr/otefZvmsdzvk+T8lRaqfznb4PW8edPifOOeecc84555zz
-dE/JwTnnnHPOOeecc84555zzss+a72kOznmut47blWP2vKu89lzz3nrKvjnn
-nHPOOeecc85v85QcnHPOOeecc84555xzzjmve+255rNycM7v8d967/1Q6z+a
-6zZvPYfavKf3wTnnnHPOOeecc36rp+TgnHPOOeecc84555xzzvk8L9VL43vX
-qbXT++ecz/fT69/qs/txzjnnnHPOOeecf9VTcnDOOeecc84555xzzjnnfL6X
-+qXl4ZzP99r3fyrX1/y2eTnnnHPOOeecc85TPSUH55xzzjnnnHPOOeecc87L
-Xqr3zjs6T+86v75qXs75vHln5+Jz5/2tp+yPc84555xzzjnnfJen5OCcc845
-55xzzjnnnHPOebk+a73e8b312fNzzuu++rvmz/z0eM4555xzzjnnnPO3eEoO
-zjnnnHPOOeecc84555zfO2/NR+spvwfnN3ip3vpdrcr1VZ913/XOzznnnHPO
-Oeecc/5WT8nBOeecc84555xzzjnnnPP58/7WU/ZXaqvOgfMv++n1v+qz78On
-83POOeecc84555zf7ik5OOecc84555xzzjnnnHNers9a7/T+Wr3W0vJyftKf
-fl8p+/i6n16fc84555xzzjnnPN1TcnDOOeecc84555xzzjnnvH/crHnS/PT6
-nN/ks+4NvtdX/b6cc84555xzzjnnb/WUHJxzzjnnnHPOOeecc845H/fa821e
-65eWl/MEL9V7+/M9Prsf55xzzjnnnHPO+ds9JQfnnHPOOeecc84555xzzsd9
-dr9UP70+54le+15O5eJ/+1fubc4555xzzjnnnPNZnpKDc84555xzzjnnnHPO
-OefjXur3W0/JO+qn1+c80Ue/o9W5vu6j91jrPJxzzjnnnHPOOedf85QcnHPO
-Oeecc84555xzzjnf56V+v/WUvKfXH8052v/p+vybXqqnfU88a33OOeecc845
-55zzWzwlB+ecc84555xzzjnnnHPOc732vMtnzVebf9Y6rX7qHPi3/fT6b/He
-8z2dl3POOeecc8455/xWT8nBOeecc84555xzzjnnnPP3eO151HePO+1v2w9f
-67/1Wr9dud7mp8dzzjnnnHPOOeecf9VTcnDOOeecc84555xzzjnnnPd6qaXl
-fOq1/c9ed/d6fK3XWlreVO/9Lk7n5ZxzzjnnnHPOOX+bp+TgnHPOOeecc845
-55xzzjlv9dpzzZ/WZ/lonqfz1fz0ufA5vvo94X/XS+NP5+Wcc84555xzzjm/
-1VNycM4555xzzjnnnHPOOeec//rsfrO9t55yrrV6rX/reqPnxuf4rN/xq55+
-/3DOOeecc84555x/zVNycM4555xzzjnnnHPOOef8u356PH/mrW3VeP7/3nre
-KXnT3P3DOeecc84555xznuUpOTjnnHPOOeecc84555xz/l2/bV7+zHvH1+ZJ
-298tfnr9FG+9N3r7c84555xzzjnnnPO5npKDc84555xzzjnnnHPOOeff9bev
-x9v8ad3v3NbvdK40995wzjnnnHPOOeec3+EpOTjnnHPOOeecc84555xz/n5/
-+3p8r5f61fqn7eP0+aXlOn1PpOTinHPOOeecc84553+3tHycc84555xzzjnn
-nHPOOb/HS/XdOVo9JQff46V+t723o/tOy7Xrnjmdl3POOeecc84555zP8ZQc
-nHPOOeecc84555xzzjl/v6fkKNXT8vGzXuuXlvfp+5/mrb/L7lycc84555xz
-zjnn/Iyn5OCcc84555xzzjnnnHPO+f3eO25VjtF1T58fz/LR8Wn7OPX9Pc1V
-6p+Wl3POOeecc84555zv8ZQcnHPOOeecc84555xzzjl/r5fqu3K0jjt9Tvxu
-L7XT73/K+q3n5nvknHPOOeecc8455y0tLR/nnHPOOeecc84555xzzt/jteea
-rx6Xck78G15ru9ZP/d4555xzzjnnnHPOOf+rpeXjnHPOOeecc84555xzzvl7
-vPY86r31lPPg/K922zqz5+Occ84555xzzjnn/K+Wlo9zzjnnnHPOOeecc845
-5+/32nPNe+cv9U85D857vNavdVzrfJxzzjnnnHPOOeecn/CUHJxzzjnnnHPO
-Oeecc84556t81ry/9ZT9cT6jpeXnnHPOOeecc8455/yvlpaPc84555xzzjnn
-nHPOOed8lp/OkXYe/B3e2ka/i7T9cs4555xzzjnnnPNvekoOzjnnnHPOOeec
-c84555zzVX4qx2895Tx4hj9tKd/F7Fycc84555xzzjnnnLe0tHycc84555xz
-zjnnnHPOOeezvVSftV7v+Kf12r74Hm+t945b5SnrlVra78s555xzzjnnnHPO
-z3pKDs4555xzzjnnnHPOOeec8xSvPde8d/6n6/yrz5531fynvLU+a750T8lR
-89Z67zjOOeecc84555xzfpen5OCcc84555xzzjnnnHPOOX+7l+qz19s1f+v6
-s/o9zfk0x9s8JUev9/6Ove9Vyj4555xzzjnnnHPO+d8tLR/nnHPOOeecc845
-55xzzvnbfdZ8tX5P12ldd9Y8p3+Xt3tKjtU++31zvpxzzjnnnHPOOednPCUH
-55xzzjnnnHPOOeecc845z/JSv1N5+FxPyXGbP52vNu/q9TnnnHPOOeecc85v
-9ZQcnHPOOeecc84555xzzjnnnPN1npLjdl81X+88aefCOeecc84555xzvtpT
-cnDOOeecc84555xzzjnnnHPO93lKjq95qd+sdXrH9dZTzpFzzjnnnHPOOeff
-85QcnHPOOeecc84555xzzjnnnPN5XqrvzsH7vNaervO039N5Oeecc84555xz
-zkc9JQfnnHPOOeecc84555xzzjnnfJ6X6rtz8Dt81ny1Z84555xzzjnnnPNR
-T8nBOeecc84555xzzjnnnHPOOZ/npfruHDzDa+/DqvV7x83KkXLunHPOOeec
-c845n+cpOTjnnHPOOeecc84555xzzjnnz/1pnb/bf+u1fqvWXz1vaVza78E5
-55xzzjnnnPN2T8nBOeecc84555xzzjnnnHPOOZ/npfruHPzbXnsPV62fsn/O
-Oeecc84555zP85QcnHPOOeecc84555xzzjnnnPNxL/UrtZTc/N3eO351rpRz
-4ZxzzjnnnHPOeb+n5OCcc84555xzzjnnnHPOOeec93vvuFU5OP8/H30/V+f6
-9ZTz4pxzzjnnnHPOedlTcnDOOeecc84555xzzjnnnHPO+7133KocnP+f197D
-U7lK3pp/9PtqnTflPDjnnHPOOeec8yRPycE555xzzjnnnHPOOeecc845n+8p
-OTjv8dn9Rr227q5zqOXhnHPOOeecc86/4Ck5OOecc84555xzzjnnnHPOOed1
-rz2X2tN+nH/ZS+30988555xzzjnnnH/JU3JwzjnnnHPOOeecc84555xzzute
-e675rBycv8lr30utja4/uu7TfXHOOeecc8455zd6Sg7OOeecc84555xzzjnn
-nHPOed1rzzWflYPzN/nod7Q6V6+3fvcpeTnnnHPOOeec8x5PycE555xzzjnn
-nHPOOeecc8457/dSvTbP6dycn/Tf+uj42blWue+fc84555xzzvkbPCUH55xz
-zjnnnHPOOeecc8455/y5p+TgPNl/62//zmrPnHPOOeecc875DZ6Sg3POOeec
-c84555xzzjnnnHNerpfG1/rP6sf5F/y3/tbv5vT6nHPOOeecc875iKfk4Jxz
-zjnnnHPOOeecc84555yX66Xxtf6t69fqnPN6v9O5Wv30+pxzzjnnnHPO+Yin
-5OCcc84555xzzjnnnHPOOeectz+P+uz5OP+i176vU7me+un1Oeecc84555zz
-vzwlB+ecc84555xzzjnnnHPOOee87LPme5qDc1722nd3Ktevn16fc84555xz
-zjkf8ZQcnHPOOeecc84555xzzjnnnPO6155LrXUc53y/714/bf+cc84555xz
-znmLp+TgnHPOOeecc84555xzzjnnnPd7qb47B+d8vde+99b5VufuHde7r5Tf
-g3POOeecc875Xk/JwTnnnHPOOeecc84555xzzjmve+251FrHcc7f57/11ntj
-VZ7Z92Cp1fbLOeecc8455/wuT8nBOeecc84555xzzjnnnHPO+Rd91fhTeTjn
-ed7b0vLvug9n5eCcc84555xzvsZTcnDOOeecc84555xzzjnnnHP+JS/Va+Nb
-56mNn5WHc77PZ817ev30cyv1S9kP55xzzjnnnH/VU3JwzjnnnHPOOeecc845
-55xzzs+tv2sdznm7p82bdj6r7rm03JxzzjnnnHPOs3JwzjnnnHPOOeecc845
-55xzztufZ3tvHs75/O/vX33Xd73a08659fxLnpabc84555xzzr/mKTk455xz
-zjnnnHPOOeecc8455+3Ps33XOpzzfes9rafvb/f9l5abc84555xzzr/mKTk4
-55xzzjnnnHPOOeecc84552Vfvc7s+Tjn5bb7u5497657rFSffb+19uOcc845
-55xzftZTcnDOOeecc84555xzzjnnnHPO+7133KocnPN+X73eqnlPn9Psc2i9
-L1POg3POOeecc86/6ik5OOecc84555xzzjnnnHPOOefzvFTfnYNzXq6vmre3
-/nU/PZ5zzjnnnHPOeZun5OCcc84555xzzjnnnHPOOeecr/NSa50nbT+c3+il
-euv3Nntdvme933rKvjnnnHPOOef8Nk/JwTnnnHPOOeecc84555xzzjmv+9N+
-T+uzc3LO6y0t79t89++bsm/OOeecc845v81TcnDOOeecc84555xzzjnnnHPO
-c8aXWm18bZ6U8+U8wWd9d3zMd91XT/NwzjnnnHPOOc/KwTnnnHPOOeecc845
-55xzzvmXvFSftd6svLvW4fzNPvrdrb4neNtz67yt66bsm3POOeecc85v85Qc
-nHPOOeecc84555xzzjnnnH/Ra8+94097rV9aXs53+NPvqNRS9vc2n/W7nN4H
-55xzzjnnnL/NU3JwzjnnnHPOOeecc84555xzzsv13v6n/PT6nCd7qe57uttP
-r88555xzzjnnX/GUHJxzzjnnnHPOOeecc84555zzuteeU73WLy0v5zv99Pq8
-z2f345xzzjnnnHPe5ik5OOecc84555xzzjnnnHPOOeflemn86bytfnp9zk/6
-6PeyOhf/f599j7XOzznnnHPOOef8b0/JwTnnnHPOOeecc84555xzzjkv++n1
-V/np9Tnf4aPfxepc/G9fdc+l7I9zzjnnnHPOb/OUHJxzzjnnnHPOOeecc845
-55zzca89p/rp9Tnf6aW67yPLZ/8erfNzzjnnnHPOOf/bU3JwzjnnnHPOOeec
-c84555xzzud77XmXn16f80SvfS+ncvE2L7XUe5hzzjnnnHPOb/eUHJxzzjnn
-nHPOOeecc84555zzfV57nu271qmt/3R8yu/H7/Tf+qr3la/13fcn55xzzjnn
-nPOsHJxzzjnnnHPOOeecc84555zzXK8913xWjlXzzT6H1Tn4XT77vZ89L/9/
-3/37cs4555xzzjn/21NycM4555xzzjnnnHPOOeecc87v91K9Nn5VntVe209p
-ntO5eYaPvj98js+6j07vg3POOeecc86/4ik5OOecc84555xzzjnnnHPOOeff
-8d6Wlr/Va8+940dz8Ewf/X1X5/qKPz3/Vbk455xzzjnnnP+/p+TgnHPOOeec
-c84555xzzjnnnN/rs/vVxo/Wn/rTfrPynNo/X+O/9dXvD3/mo/cC55xzzjnn
-nPNnnpKDc84555xzzjnnnHPOOeecc57npfqs9Vbvo3f8qfOePe/p94Y/813v
-CW975pxzzjnnnHOe4Sk5OOecc84555xzzjnnnHPOOefnvFRfneP0vtO9VK/1
-b13v1O/O2+p+n2c+Oj5tH5xzzjnnnHPOs3JwzjnnnHPOOeecc84555xzzs/7
-29f7qo+OT9vHV3z278j/7vdbT8nLOeecc8455/zvlpaPc84555xzzjnnnHPO
-Oeeccz7PS/XdOWrrnz6nr3vv+NT36laf9bt81VvPk3POOeecc875XZ6Sg3PO
-Oeecc84555xzzjnnnHO+39Ny/KunnRPvq69a/yue/r2m+Ox+nHPOOeecc86z
-PSUH55xzzjnnnHPOOeecc84553y+p+So+W89LR8f81K/1vfgq957nvxvP70+
-55xzzjnnnPM5npKDc84555xzzjnnnHPOOeeccz7fa8+7cvSun3J+/JmX+s3u
-n7bv2d9tqaXkfeq9v+/pvJxzzjnnnHPOz3hKDs4555xzzjnnnHPOOeecc855
-rq8aXxqXsm++12f3e6ufXv/0e5CWl3POOeecc875Hk/JwTnnnHPOOeecc845
-55xzzjnf57Xnmq8el3JOPNtr/dLyPt3f7vVT7x/OOeecc84559/0lBycc845
-55xzzjnnnHPOOeec8/W+ep3e+unz4O/0Un30vU3z0+vXcpX6peXlnHPOOeec
-c36Xp+TgnHPOOeecc84555xzzjnnnK/3Ur00vned1nk5T/Jav9S8u9cfPT/O
-Oeecc84553yGp+TgnHPOOeecc84555xzzjnnnL/fa8+cJ/lo25Vr9jpp5885
-55xzzjnnnP/V0vJxzjnnnHPOOeecc84555xzzu/12fOm7Y/znjZ7ndnfU9p5
-cs4555xzzjnnf7W0fJxzzjnnnHPOOeecc84555zze7xU353j1Hqc9/iplnYO
-nHPOOeecc855i6fk4JxzzjnnnHPOOeecc84555y/x0/l+K2nnAfnPT6rpe2L
-c84555xzzjl/4ik5OOecc84555xzzjnnnHPOOefv9VJ99nqt63Ke4Ktb2n45
-55xzzjnnnPMnnpKDc84555xzzjnnnHPOOeecc/49nzVfrf2O653n9DnxO/xp
-/el7v3s855xzzjnnnHO+01NycM4555xzzjnnnHPOOeecc875r5f6zZpnlv/W
-U86Pt/nTlvJdeM8555xzzjnnnL/ZU3JwzjnnnHPOOeecc84555xzzvlqXz3v
-v3rr+rV5eue/3Uv9Ws99dJ2n8+32lBw1b21puTnnnHPOOeecZ3pKDs4555xz
-zjnnnHPOOeecc8453+Wl+tP+vTlGvZand/7f+qr5Z80z+ju+xVNyjHprvdQv
-bT+cc84555xzzvd4Sg7OOeecc84555xzzjnnnHPOOU/3Ur9Z8/Su93T+1vrT
-+Wet+1VPyXF6/7O/07R9cs4555xzzjn/21NycM4555xzzjnnnHPOOeecc845
-3+ul+qk8vM1TcqT5rvfZ78Q555xzzjnnZzwlB+ecc84555xzzjnnnHPOOeec
-c87L9d05vuq18x9dZ/b8KefFOeecc84557s8JQfnnHPOOeecc84555xzzjnn
-nHPO83J8zUv9Vq3/NI/3hnPOOeecc/4VT8nBOeecc84555xzzjnnnHPOOeec
-83J9dw6+xmu/76p1Zu2n1C/lfDnnnHPOOefv9ZQcnHPOOeecc84555xzzjnn
-nHPOOa+3tHy8z2u/82i95qvmbfXWPJxzzjnnnHNe8pQcnHPOOeecc84555xz
-zjnnnHPOOS/Xd+fgWf5bn/2ejI6b/Z5zzjnnnHPOeclTcnDOOeecc84555xz
-zjnnnHPOOee8XN+dg7/TZ/fb9f6v2qfvjXPOOeec83s8JQfnnHPOOeecc845
-55xzzjnnnHP+RS/16+3PeYv/1mv9am123qf7eepP83DOOeecc87XeUoOzjnn
-nHPOOeecc84555xzzjnn/EveO25VDv5tn/0ezspV8t3z7s7BOeecc845r//7
-/HQOzjnnnHPOOeecc84555xzzjnn/Mv+tM75F7zWUvLWnjnnnHPOOefP/z+Q
-lo9zzjnnnHPOOeecc84555xzzjl/s6fk4DzBe8fvyvXUT6/POeecc875Gzwl
-B+ecc84555xzzjnnnHPOOeecc/4lL9Vr85zOzfkO/62Pjp+d66n7njnnnHPO
-OR/3lBycc84555xzzjnnnHPOOeecc875l7x33KocnCf5rHln51rlp9ZfXeec
-c84553yFp+TgnHPOOeecc84555xzzjnnnHPOv+Sleq2dzs35Ca99L739Z+V6
-6r3jVuWYvf7pc+Wcc8455+/0lBycc84555xzzjnnnHPOOeecc875l7xU352D
-cz7+Pc7OtWre1f5bT8vHOeecc87f4Sk5OOecc84555xzzjnnnHPOOeec8zd7
-7bnUWsdxzu/1Whu9L2b5rbk555xzzvm7PCUH55xzzjnnnHPOOeecc84555xz
-frPPmq/W7/Q+OefzfPQeSMk1Os/THJxzzjnn/JuekoNzzjnnnHPOOeecc845
-55xzzjl/g9eea947P+c832fNOzvXKq/lb62f3gfnnHPOOc/ylBycc84555xz
-zjnnnHPOOeecc875zT5rvlq/0/vknPf7rvvhdnffcc4555zzvzwlB+ecc845
-55xzzjnnnHPOOeecc/5G7x23Kgfn/JzPmnd2rjRfdW6cc8455/wdnpKDc845
-55xzzjnnnHPOOeecc845/4Kn5OCcn3f3Sp+fXp9zzjnnnJ/1lBycc84555xz
-zjnnnHPOOeecc875Tf60X2lcrX/K/jnn5+6BWblu8dH7l3POOeecv8tTcnDO
-Oeecc84555xzzjnnnHPOOec3+dN+q9flnH/PT6+/y0+vzznnnHPOz3hKDs45
-55xzzjnnnHPOOeecc8455/wGX71OrZ3eP+f8nNfujdF6urfelyl5Oeecc875
-Gk/JwTnnnHPOOeecc84555xzzjnnnN/ss+ar9Tu9T875eW+tr1r/tJ9en3PO
-Oeecn/GUHJxzzjnnnHPOOeecc84555xzzvkNvnqdWju9f875Pf70/knZx6+f
-Xp9zzjnnnJ/xlBycc84555xzzjnnnHPOOeecc875zT5rvqc5OOd81Gv30qlc
-v356fc4555xzfsZTcnDOOeecc84555xzzjnnnHPOOedv8qd1zjlP8dH7b1Wu
-lHMptV05ev++pJ0b55xzzvkt/+7inHPOOeecc84555xzzjnnnHPOv+QpOTjn
-/LTXWm2+lBynvXVfu86Tc84553z3vyPT8nHOOeecc84555xzzjnnnHPOOecn
-vFSfvV6pfnr/nHOe4r0tLf/pc3v69661P+ecc8757n8XpuXjnHPOOeecc845
-55xzzjnnnHPOV3qp3jtv7/q968zKyTnnt3lvS8t/i5fqq/4Ocs4555w//Xdh
-Wj7OOeecc84555xzzjnnnHPOOed8pZfqtfFP1++tj87DOedpfmp82jns9lW/
-R22dlP1zzjnn/H5PycE555xzzjnnnHPOOeecc84555zf4KvXqbXT++ec85rv
-vifT573F0+fjnHPOOU/JwTnnnHPOOeecc84555xzzjnnnCd7yvqlfmnnxTl/
-j7feS6tz7Fov9e/AbX/nZs/HOeecc56Sg3POOeecc84555xzzjnnnHPOOT/h
-pXpv/9Ve63f6HDnn7/ff+ukcu9Yb/XuxKsdsn3XOKfvhnHPO+Xs9JQfnnHPO
-Oeecc84555xzzjnnnHOe6LXnXX56fc75d/y3npKjt37678VbvFT/yv4555xz
-nuMpOTjnnHPOOeecc84555xzzjnnnPMbfPU6tX6n9885v99r90/KvfO0ftqf
-3v+1cbvPefa6nHPOOedP/72Ulo9zzjnnnHPOOeecc84555xzzjlP9NrzqPeu
-yznno/5bT813OscuTz1nvw/nnHPOUzwlB+ecc84555xzzjnnnHPOOeecc36z
-z5rvaQ7OOa957f757bc636p5v+Kr/87szsc555xz7t+NnHPOOeecc84555xz
-zjnnnHPO+X4v1Xfn4Jx/15/Odzrf7PV4n+/6/XetxznnnPN7PSUH55xzzjnn
-nHPOOeecc84555xz/gUvtdZ5avO29uec89Zxq+adNY6v9ZQcJU/JwTnnnPN9
-/349nYNzzjnnnHPOOeecc84555xzzjlP8lJ9dN7e+UfXeeqnz51zft57x51a
-l6/1tN/p9Hlwzjnn/Lyn5OCcc84555xzzjnnnHPOOeecc85PeKk+a73e8a1t
-dy7OOa+1tLz8ma/++1jy1vdvND/nnHPO7/WUHJxzzjnnnHPOOeecc84555xz
-zvkOf9t6veNr86T8Tpzz/PtqVy6e6bv+vo3mSTknzjnnnM//98HpHJxzzjnn
-nHPOOeecc84555xzzvlJnzXvb331Pmr9Wvc5Oxfn/D7fdS/xOz11XNo5cc45
-53ydp+TgnHPOOeecc84555xzzjnnnHPOV3qpXpvnaY7T+661p/045/f6b333
-PcPv9FXv3+w655xzzt/nKTk455xzzjnnnHPOOeecc84555zznT67nra/0fMo
-9UvLyzl/7qfHc560Puecc87zPSUH55xzzjnnnHPOOeecc84555xznuSn19/t
-tX5peTnnz7113Oj40Vz8Wz76d4lzzjnn3/OUHJxzzjnnnHPOOeecc84555xz
-zvlJn93vNq/1S8vLOV/noy1tHzzLT4/nnHPO+f2ekoNzzjnnnHPOOeecc845
-55xzzjlP9FK/33pK3lEv1Xv7c87v9996rd+uXPxu3/1+cs455/x9npKDc845
-55xzzjnnnHPOOeecc845P+mlfq3zpOxj1Gv90vJyzuf7rvuEv9Of/h1t9dZ1
-Oeecc/4+T8nBOeecc84555xzzjnnnHPOOeec3+S157f46fU55/t89v0wKxe/
-03etl7ZvzjnnnK/zlBycc84555xzzjnnnHPOOeecc875TV7q91tPyVvz0+tz
-zvd767jR8aO5+J2+6+9Oqd76d5pzzjnn93pKDs4555xzzjnnnHPOOeecc845
-5/zNXns+7bV+aXk55/u91tLy8jPe+vfjaf2fp+ybc8455/v/PZqWj3POOeec
-c84555xzzjnnnHPOOb/ZT6//1E+vzzk/77X74VQu/i4/vT7nnHPO8z0lB+ec
-c84555xzzjnnnHPOOeecc/4lL9VLbXWu0+vXcv3Wa8+1eXrX4/xL/lt/ep+k
-7Y+f8dn9OOecc/49T8nBOeecc84555xzzjnnnHPOOeec87rXnke91mbnXrXO
-bC+1f/1r49L2w/lfPvp9+A54S1v1HnLOOef8O56Sg3POOeecc84555xzzjnn
-nHPOOefzvfbc2kbnSTmHXm/db+0cUvbDeY/XWu99kLY//sx3/d6r5uWcc875
-vZ6Sg3POOeecc84555xzzjnnnHPOOec5XmppOXf56Pmdzs35TG+tr1qfZ/jq
-e+/0/jjnnHOe6yk5OOecc84555xzzjnnnHPOOeecc77PS/1a53taf4vv2n+p
-fnr//Bs++r6uzsXP+Oq/C6f3xznnnPNcT8nBOeecc84555xzzjnnnHPOOeec
-8/l+evys+i6fne9pnpq3/l6rc/Bv+G+91q/W0vbH53qpjd7DnHPOOecpOTjn
-nHPOOeecc84555xzzjnnnHNe97evN3vc6nVH5x8dX/PZ58l5i9daWl4+x0/d
-c5xzzjn/rqfk4JxzzjnnnHPOOeecc84555xzznm5vjvHqfVOe6mtmn/3ftLO
-m9/t3rt3uXuHc8455+mekoNzzjnnnHPOOeecc84555xzzjn/oqfkKHlKjq96
-77jaPKM5vC/8/7z1fSu1lH183WfdP7PGc84555z7dwbnnHPOOeecc84555xz
-zjnnnHOe46X67hyt/ltPy8f/9tb2tveW7/Hfeut7mLaPr/rod706F+ecc855
-raXl45xzzjnnnHPOOeecc84555xzzm/23nGrcjz133paPj7mq+ZrbWnnwce8
-1G675/jfbfbfO84555zzp/9OScvHOeecc84555xzzjnnnHPOOeec3+yl+u4c
-o56Sg2f77PGl/mn7/rrvfk94n58ezznnnHM+21NycM4555xzzjnnnHPOOeec
-c84552/wUr/e/mn+W0/LxzO9d3zv98OzvdbS8n7FZ/fjnHPOOd/lKTk455xz
-zjnnnHPOOeecc84555zzm7133Kocq7x1XFpuftZr/Va9b63j+RoffR/4XG/9
-HUotZR+cc84556WWlo9zzjnnnHPOOeecc84555xzzjm/wXvHrcqxyn/rafn4
-u/30eN7nfoe9Pnr+q3NxzjnnnM/2lBycc84555xzzjnnnHPOOeecc875G71U
-352j5rWcv/1ScvNveK1f73eWtr+3+ejvyP9uT8+fc8455/x2T8nBOeecc845
-55xzzjnnnHPOOeecv9lL/WbNM8ufzpdy3py3tNp7uyvX27z3/Pn/++x+nHPO
-Oee3e0oOzjnnnHPOOeecc84555xzzjnn/A1eex713nV7+7XmqHnK78D5X631
-Oxgdl7bv0/dgqaXkPeWz+3HOOeecv91TcnDOOeecc84555xzzjnnnHPOOec3
-+6n1a/1q41L3xXmCj45P28fp80vLdfo8ZvXjnHPOOf+ap+TgnHPOOeecc845
-55xzzjnnnHPO3+y159neW085J85v9tHxaftYdR6710/x2e8L55xzzvlXPSUH
-55xzzjnnnHPOOeecc84555xz/iUv1Uvje/vPqnPOn3trfdX6aX56/VXeem9z
-zjnnnPMxT8nBOeecc84555xzzjnnnHPOOeec833eO/63nrIPzm/21vqq9VP3
-fdp7c5/OyznnnHP+FU/JwTnnnHPOOeecc84555xzzjnnnPP5ftu8nPOyj7bU
-faTkcr9xzjnnnN/hKTk455xzzjnnnHPOOeecc84555xzPs9L9d05Tq3H+Zd8
-tKXm3XUPpf2OnHPOOef8b0/JwTnnnHPOOeecc84555xzzjnnnPN5XqrvzlFb
-//Q5cf5FH223reOe4Zxzzjl/l6fk4JxzzjnnnHPOOeecc84555xzzvk8L9V3
-5xhd//T5cc7va2nnxjnnnHPO53pKDs4555xzzjnnnHPOOeecc84555zv81M5
-WselnBPnvP49725p58A555xzzvd4Sg7OOeecc84555xzzjnnnHPOOeecr/dS
-vTS+t/+o/9ZPnxPnPLelnQ/nnHPOOd/jKTk455xzzjnnnHPOOeecc84555xz
-ft5rz7O9t9XmaV0n5bw5T/LbW9p5cs4555zzuZ6Sg3POOeecc84555xzzjnn
-nHPOOefnfPU6tX6n9t/aTv8+nI94rdXGpX9nT1va78U555xzzv/2lBycc845
-55xzzjnnnHPOOeecc84557++e97SuJTz4N/wWr/WcU9zrNpPqaXkKLW094Rz
-zjnn/GuekoNzzjnnnHPOOeecc84555xzzjnn/NdP5fitr5p3dB6e6bXWO673
-PUr11nZr7tJ8afvhnHPOOb/dU3JwzjnnnHPOOeecc84555xzzjnnnD/13vGt
-9dH5Z/lvffa8pX5PzzflvEbrT9fvbWnnuOs9e4uPtrd8d5xzzjnn/l3JOeec
-c84555xzzjnnnHPOOeecc97mteeat7an68zyUps9f23c0/G9eUbnaZ13dD+t
-/b7mrS0t9679rzrPp+twzjnnnOf4f7/KwZE=
- "], {{0, 0}, {501, 501}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"", "1",
- RowBox[{
- RowBox[{"-",
- RowBox[{
- FractionBox["1", "2"]}]}], "-",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}],
- RowBox[{
- RowBox[{"-",
- RowBox[{
- FractionBox["1", "2"]}]}], "+",
- FractionBox[
- RowBox[{"\[ImaginaryI]", " ",
- SqrtBox["3"]}], "2"]}]}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{3.6595585246496677`*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "4"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
- ",", "40", ",", "0.1"}], "]"}]], "Input",
- CellChangeTimes->{
- 3.6641612785202837`*^9, {3.6641613500474806`*^9, 3.6641613529304647`*^9}}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzs+e2N9LiyMFqei7FkLGkfxoQB7u+x5XpYJqQJgxcbAnrHqagglaRISSuA
-RjUXKYpJ8Ut6/t//3//f/+f//n/9z//8z//zf/3nv//z/3/Hzz//+fv551o/
-4hPyf/75Pb+3POcjvHecx3qycb9q3nHOOeecc84555xzzjnnnHPOOX+WH/FJ
-yp2tP6uH82885lfjNiu/at5V7WuN2e3s7c/Ms3WG8xVerTej90HOOeecc845
-55xzzjnnnHPOOefv8CNi/idcl9UT05yv8JjfOp5j/ux5l0XWnrP90Fp/1c7Y
-jqv6n/MrPKYrH7Uurd73Oeecc84555xzzjnnnHPOOeec9/kRn5D/88/v+Zln
-9WRetYPzKzzmV+O2d/xn865qT4ze+Ti6H3rb07rOZN77ezmf6d+O5975uNs5
-gXPOOeecc84555xzzjnnnHPO+Rw/4sjPPKYrz+4b05yv8Jg/ejxXkdUf8zO/
-qh++raf3d3G+wqt5c3Z96F03Vp8HOOecc84555xzzjnnnHPOOeecn/Mjjvze
-euL1MT96Vk9VL+crPebH8dx6fW89vd77u3rrqdaBb+/L+U7euk/F/GoeZeVH
-7cucc84555xzzjnnnHPOOeecc87XekzH+ITrforrW8v3tofzHbwa/1n5bD7G
-enrve9Z7141v689i9PrW207Oz3jvPK3K73Ie4JxzzjnnnHPOOeecc84555xz
-vocf8UnKnS3P+QwfNf6zyMrPbmfVvjjfsvnY61n9mbf24xGr1jHOv/GYbt0f
-d9vfOeecc84555xzzjnnnHPOOeecr/UjYv7nn9//xuD8G589zrPoHf+Zj+qH
-rP6snb2e1d/rZ39XjOx5reof/k6P6dHjf/X+zjnnnHPOOeecc84555xzzjnn
-/Bo/4sjPPKYrj/lZfZz/FXE8VeO2qu+I2eM/89n9s8pH/67e8r3jhPMWr8bv
-2XnRe1/OOeecc84555xzzjnnnHPOOed7ekzH8lm5T1Hf8bf3vpy3eMyP4631
-+qx8r2ft4X97tf60rmNVtI4Tznu8dz+t1rmz9+Wcc84555xzzjnnnHPOOeec
-c76nx3SMT7iuqj9e13tfzls85lflzs6XrB3ZfXmfZ8+tWk9aPYtR44HzFq/G
-+S7nAc4555xzzjnnnHPOOeecc84553v4EZ+kXMzn/C/vHYdZjG5PVi4b93wv
-bx03R/SOw97xw5/tMV2Nw9X7OOecc84555xzzjnnnHPOOeec8z39iJj/+ef3
-vzH4sz0bJ73jLYveccjf6b3jtopYbzXO+bs8pqt1r1o/d9v3Oeecc84555xz
-zjnnnHPOOeecj/UjjvysfCwX/2bl+Ls85lflqnGY3S+rn/Pf8o+oxlVWvnf9
-5M/0aly17pur933OOeecc84555xzzjnnnHPOOedz/YhPyK/qya7L6uXP9Gpc
-9daTlcvGGed/ee+61zqOj+hdJ/mzvXed5JxzzjnnnHPOOeecc84555xz/m4/
-4pOUi/n8mZ6Nkyyy8RPTx9+q/mz8cX6Ft477GNk4j/n8Xh7TZ/fH1fs755xz
-zjnnnHPOOeecc84555zza/yIIz/zmI5/Y/B7ecyvyvWOE86f5NX4j5Gtw9l1
-veszv8ar51Wtu7H+3c4DnHPOOeecc84555xzzjnnnHPOx/gRn5Bf1ZNdl9XL
-13j2vKrx0Fp/zI/lOH+jt86rI86uzzGfr/VqHd5l3+ecc84555xzzjnnnHPO
-Oeecc76HH/FJysV8vsZj/vE3e75ZZM89q59z3j7vWufhEdl85Ht677q9en/n
-Y3zU8431VesJ55xzzjnnnHPOOeecc845X+tHfEL+2fpjfbv9Xv6dHxGfb/Rq
-nPG9PIveeR3LxXzOee3ZvKvqiTFqPeffees+G68/Ww8f61lk5bPrR42fWO6q
-8XlV/ZxzzjnnnHPOOeecc8455996TFc+u/6Yf/wd3f5YLqs/i92e49v8iNZx
-Mmr88HPeO79iffFva3nO+fXeO8+rfZnP9d51m1/jR8TnNPr5xvLV9a3zffb4
-HH3fXZ4755xzzjnnnHPOOeecc87v6zFd+U9yfea99ffet7pf9N76e9uZXb/b
-c3+rHzF6fPJznsWo+c45v7/HGLX+8789pmP53fb33T0b11c9r6yeat+uyvf+
-rqz+UT7qPWW38cM555xzzjnnnHPOOeec8/v7EZ+kXMzPIrv+W8/um7U/+71Z
-/Vn53t/b22+jfhf/24+Y9bze5mf7P4tZ6wbn/L5+dh2JUe2n/Hcftf4/3Y84
-288xfXZePNVHnefPPq/dxhvnnHPOOeecc84555xzzu/nMV15Vk+87vhbtSde
-91SP6cp7n0vv83qrHzG6n9/m1TjvLd86Lzjn7/HefS0L55C/PabP9j//27PY
-bX/fzXvnb0zH8d+7DuwyfjjnnHPOOeecc84555xzfl+P6ap8vC7+ba3nJ2kH
-/58/Y7fxczc/IpsH1Xh+m1frQGv53v7nnPNeb12nYsTrdzsPrPLefeHpfkTr
-+Iyxah9/qsf8s+tGNS+y61vbeXY+7jb+Oeecc84555xzzjnnnPMneExX/pNc
-X3nrfWN+dl3lZ9vJf/cqYv9X42eX8X+VH1H1z9s85lflqvH57brBOeejvHc/
-7d1Hnu6j9t/d/IiqH2bvv/xeHvOr9Ser563zjnPOOeecc84555xzzjlf6TEd
-y2flPkV9x9+sHv5Oz8ZbNQ53mS+z591TPeuHLKpyresP55zv5q3r4BG77eOr
-zgm77eNn/YjYD9m4icHv5aPGQ+972dn3vt3mC+ecc84555xzzjnnnHP+JD/i
-yM/Kx3Lxb4ysnt7yVTv5vXzUeLiLH1HNl6d6Fln/xDTnnL/dY6zex1d57Jdd
-vbX92XPm9/Le8RDT1bx3Duecc84555xzzjnnnHPO7+NHHPlZ+Zg+69l9Yzr+
-zerp/V38Xt46DlfPo1YfNY/u4lVk85xzzvk5j7F6H//WYzqWj+V29SOq58af
-7TH/23Eer3vr/OKcc84555xzzjnnnHPO7+RHfP75/W9WrtV775v5T5LPn+29
-42o3P2LW/FrlVbTOa84553M8xm77e+YxHcvHcrt59hz4Oz3mn53XV83HXeYR
-55xzzjnnnHPOOeecc/4kj+nRHvOz+1f+k+Tzd/su8yjz2O5svMdyu3gV385r
-zjnn13qM1ft49JiO5WM5+zi/o8f81vEf8992ruacc84555xzzjnnnHPO7+gx
-Pdpjfnb/4+9Pks95i8d0LH/1/MraM3venZ2nWbTOX8455/f0GKv399i+qzy2
-J+sn/rf39mfvuW6339vrMb/6vXc/D3POOeecc84555xzzjnn/H/7EZ9/fv+b
-lcsiuz76T5J/F4/pqt+yenrL87+96s+r51fvPBrlVbTOU8455+/wGKv399i+
-p+7Xo7z6vfH63veCVfVUv7e1nlXjJOa3tjNet9t84ZxzzjnnnHPOOeecc875
-9x7TlWf1xOuOvz/J/Sq/+vf2tierJ+avrqfqn3j93Xz3+TLKq4jjhPM3e++6
-yjn/33G3fTzWn/2+Vd57fuZ/++jzbet4691fdjvHcs4555xzzjnnnHPOOed8
-f4/pGJ9w3U9y/aj7Zp7Vk7WT/+3V84rXrfLe8TB7HPZ6FbuMB8538N51oLf+
-0fN6l37jvMdjjN7H4/1225czz35XTPNrvfd5jRq3WXt2e4/jnHPOOeecc845
-55xzzvl9/YhPyM/KV9e3+k9Rb2wPv8Z7n9dV/u04HzVuq9jlOXLe4qPm6aj7
-ZuWvWpdG7ZtZfnZ9FruME/4sjzFqvq/el3frZ76X947zUeOzd9zOPg9zzjnn
-nHPOOeecc84552/wmI7xCdf9JNeP8qw9ve3k/N9/R4/b1vmVtefsOM9il37m
-z/BR63ZV/7f7VK9n7T/bznjdbK/aOeq+revY6vpb68m8d9z2eu9z5P/zZ4we
-bzHO7su79Rtf42f3o9b9ZXZ7RnnWnt3efznnnHPOOeecc84555zzb/yIT8j/
-+ef3/NmetSfz7PdU/TCrPfzZfnb8xMjGZzU/e2OXftvNq/6cNU7O1tM6TkbV
-s6r+3vuOqr/Xe3/vqP16dv29++ao9ozq/9n9draeeP2q8RCvO7uv9Y6Hqtxs
-j9H7XEb1M3+2986LUfvs6PNGdV12n9F+dh2bvQ9yzjnnnHPOOeecc8455/+O
-T8iv6onXzfas3VW56Fk9Z/sn5s9uP3+Gn51fWb29ser3VtfF/Fav7vttP/d6
-7zozuj2z65lV/9l+G+WxPbPr7x3no8fh1e256r6t9e9WDx/rWf/HdKuPiln7
-5uj3gixiO3r35d72Z/Xc3UefH2bt47Hc6vPe2XNgzN/tfZxzzjnnnHPOOeec
-c875sz2mY3zCdT/J9aO8tz1VO1t/b+Zn+znWm5WP5arfdRfv7Z+qntbyWYye
-R7337+3PUdF632r8x+v4WD+7/uxez+j6Z983q+fq9vS2s7c/s+t72zNq3Rt1
-X85neG/str/cxWP67Dlz9rrUW370fjdrPxr1XDKfPU+vOudwzjnnnHPOOeec
-c8455y1+xCcpd7aeUV61r9Wz39Xrq55Lb/+M6s+qPVX/XfVc3ua9MXuecv6N
-x/S369K39x29b7a2Z7d1hvM3eBbVOSeLaj5X9a86b7/Ve/t5VvmYHr2/7PZe
-lvnoeT3q/NA7TznnnHPOOeecc84555zz39KVx/zj709Sb69n9Y/y3t87ynt/
-b1VP63OcXZ6f8955WkU1bs7WP2pec87bfbf1ivOdPebH+TXrnDzqXJfFVe8F
-sb2c93g1X6t5kXnvfc+uD9n1s9YTzjnnnHPOOeecc8455+/0Iz7//P43i1ju
-55/f87P79tbf67335bzFr5qP2X2z9rXO3955Omo9qe7LOa/nL+dv8Jjfuq/N
-Pj/Hdo3al1vPAa3tnPV7z54r+Lu8d173eu+8O/u7Zs8vzjnnnHPOOeecc845
-5/y3dOUxP/5tLd/rP43XxXz+Lu8dJ7PnVxZZOzOP6bPj/6p1JmtH67zm/A2+
-2/rJ+Qyv5sWq83DWnugxfdZ7+y2LVf12hH2cn/FR59Ws3tXrCeecc84555xz
-zjnnnHM+0o/4hPyqnnhd5tX9OP8tv3Uczp4XMXrHf0yf9d7+XNVvVXtiOc6f
-5Lutq5zP8NXn2Ni+s956Hs589Pknxup+bu2f3dZhPsdnzd+YrubXVe3knHPO
-Oeecc84555xzzv/ymI7ls3Kff37/m9Uzq538GR7zj7+7zZcssvnS6zFd+ez5
-srr/Y/s4f5Lvtg5z/lf+2f1otcf2jpqnVbnWc/Lo5xVjdf+3nk92W5/5Wu+d
-d6PWt93mC+ecc84555xzzjnnnPN7+RGfkP/zz+/5mffWU7WDv8ur8bbbfInR
-O19Gza/MZ8+7XZ/Lt/3D+Q6+2/rMn+0xv1o/774vzJ6nVblv+3n0c4+x23Os
-/IjV6za/1nvnezbfsutj3OU9hXPOOeecc84555xzzvlaj+lYPparPKvv809b
-+ep6/kzfbV5U4znG2fnS6jF91rP6Rz3H6r67PMdR/Tz7uXP+b99t3ebP9phf
-jcPV6/m36//seVqV+9avGg8xVj/H6nesXrf5NT5q3vXOi93GP+ecc84555xz
-zjnnnPN7+hFHfuYxXXlWT7wuuw+/p8f8OB52Gf9Z9M6L2fOo11fNu92eb++6
-F9OjnzvnLb7bes6f4TF/132516v9KJYbvY9nMWofb/29V42fGLuNh1HvO3xv
-r8bv2XNdb/nV45lzzjnnnHPOOeecc875Xh7TMT7//P63tXzmve3h9/Ldxnnm
-WfyEcnHczvaqv6v5VXlW7yzv/b138SOy9S3mc/6N77bO8z095lfj56nr827z
-N6ZH+27rRhb2az7DY7pax3rXz975tXrd45xzzjnnnHPOOeecc76nH/FJysWI
-5bJ6svtm9VTl+D085lfjYbZnUY3bWd7bb6N8t3Gyet371qvflZXrXT85//ff
-GJz/ld+678TYbb0ddb69ylvPvbN91/EZY9V7zepxwvf03dYxzjnnnHPOOeec
-c8455/y3NH+3/yTjoyr/7TjMImvPKo/pq3y3+bvbOjZ7vMX06nHI7+W7rfN8
-rVfrUjVuqnru4r3nkLfu+9V1WXuv8ixGjYeY33oujdfxZ/hV42SXdZJzzjnn
-nHPOOeecc875Wo/pWD4r9wn1ZeWz+vkzfNQ46R23WVT1X+1Vu7Nys/wu42e3
-dXLU+DwimxdZ/fE6/k7fbf7ytR7zR++zd/Ejevthtre2c5X3vhesHucxetsf
-83cZJ3yNx3TlZ8+3u6yTnHPOOeecc84555xzzvfwI478zGO68pif1cef5TG/
-GlfZ+Myid9xe5VU/nZ1Hozxr567jZLd18lsfPV/4u3y3dZ6v9Zh/dp+6u2f9
-s9s8HXWunu27jfPWc2F23ep1m9/LY/rsvNhtneScc84555xzzjnnnHO+hx9x
-5Gce0/FvDM7/yq/K9Y7PVR7Tqz3r16z9q8ZD1c+7rZPfeu+82G2c87W+23rO
-r/HefWe3dW+3c+xuHtO7+qh1qar/2+eehfHGf/PZz323dZJzzjnnnHPOOeec
-c875Go/pymfXz/f0UeMti1H3jfUdf3/++T0/86rdWbldfLfxs2q83cWPaH2O
-veOZP8N3m6d8rFfRu6/tsr6tWj/vMn+rcrv72X0qe75Z+ei97cni7DhsbSe/
-l8d06zjfZT3knHPOOeecc84555xzfk8/IuZ//vn9bwz+DO8dP1nMHldZe6ry
-re25i2e/a7dxFfNj+3dbD2d5b/9kkT13/gzfbf7yazzmt67/u6xvo/yI1nPC
-bvO393e9zUf1z9n5FaO3PavHFR/jMX12XO22fnLOOeecc84555xzzjnfw484
-8jOP6fg3Br+Xx/w4Hqrrjhg1rs62p7Wep3rWP7uNt97xsHqdnOVH9D7fmM+f
-7bvNXz7We9eNUfU8xY9YPU9HzeuqHP/dR83HLHYbP3yOW4c555xzzjnnnHPO
-Oeecz/AjjvzeemKaP8uzqMZPq8c0b/OsP3cbP72+ej286zo8aj7yPX23ecrP
-eTZ/43Vn1//V69gsP2JU/+ziWfv5NX72ucTofT/abRzyv713Peecc84555xz
-zjnnnHPOe/yIT1Iu5vO9PHuO2XOvIo6D6vqsHJ/ru43DUeNk9Xo4y6/qn3gd
-v5fvNn/5WI/5Z8fDbuvbqnPpbvN39vrPr/HqecWoztut851f4zH99vWWc845
-55xzzjnnnHPO+TV+RMz//PP73xj8Go/5x9/s+WbR+9z5Ws+eV/bcdxu3Wfur
-8rutk7PW27PzPebzZ/hu85df473rPP9vP2L1/HW+eob3nq+y2G0c8jbvXWd2
-Ww8555xzzjnnnHPOOeecr/GYPlue7+lZ/CTPNXvusVw2Lvgevts47F1n+O/p
-WD6W48/23eYvP+dnx0PrvrzbOjbbj8j6Ieav9tZ1PuavPlfwvz177lU9MZwH
-9vSq/3dZDznnnHPOOeecc84555zf04/4JOViPh/jWf9nz6uK+Pyq67NyfC/v
-HSe7jfOYX7X/qX5Eaz+MXk/4PXy3+cvHeswfvf4/1e+2Hrau//zZXq0DWfSu
-A/yct64zu62HnHPOOeecc84555xzzu/pRxz5WfmY5t95zK/KZc+rqoc/03eb
-p9V6kvlu6+EsP7sOZM895vNn+G77FB/rMf/b+b7L+rbb+nn23JvdL9Y/an/M
-6ufP8N5xmEVWT3XfmM//21vXmWpe77JOcs4555xzzjnnnHPOOd/DjzjyK4/1
-xDT/O7/qz+r6GFU98b78GV6Nh3hd5r31jxqHvevMU7133cj87HrO7+G77Wv8
-Go/5o8fJbuvh3dbPb9vp/MZbvBrnWTgnjPGnrp9v9SPOruecc84555xzzjnn
-nO/gMb26Pfw7P+KTlIv5/HeP+VW5rP+revi7vHf+jlrPz47zrP3ftnNXP6L6
-vb392Vs/f4bvtq/xa3zUOhPTT1mHR+1Td9k3+Tv97HyPMWo9eaqfXTd2WQ93
-9SOqcV7tg/G6s+O/tZ7e3xuvN04455xzzjnnnHPO3+1HfEJ+bz1Vva3RW89P
-0Y74u6p6dnkuu/kR2TjJ8rPr3+JVf35bf8yvxj9/p2fztPJv1/9V7Vnlvf0w
-aj0525/83r7bfsfHesyv1sOsfLWexOtm7wt3WZ/P9kNWX3a/1vZw/o1X4y3G
-bvvdbr7b+rab965vs9fJ3n2zqidrX+t9Oeecc84555xzzjn/LT7//P43i6xc
-9N77VvXE/MzP1rPLc1ntR1Tjgf8dveOT82+8d53MxnO2PvTuC7uut9+2p3d9
-OLtPte6bvc+d38t32+/4WI/5o/eF3nXpqvW/9b6jvLf9uz1Hzmd6jLPnqLt6
-73xffY6d5Ue0roe95Uedq0c9r9HlY7ld34M455xzzjnnnHPO+RiP6cp/kuur
-+44qP8pb7xvTVf1V+V2e+2g/ouqf3vF2F8/6p4qsXzjf0Xvn+9l6dtnvYv7Z
-9vfup9l9R/lV+yxf47vtj/waj/nVupSV7/Xe+nebL6P2Nc7f4NX6E2O3+btq
-/139nj7Ld9sHd9t/e33V+xHnnHPOOeecc845v8ZjOsanuK7ynyT/rb7Lcx/t
-R2TjIuY/zbPI+iemOX+T7zZ/z873bL+r6vt2P22tf/V+x9f4bvOFP9t73y/O
-lo/lRs2LrFxv+2e3h/M7e4xR82g3P7tu7O5HtK6T/G/v/T4w6r5Z/buNN845
-55xzzjnnnPNVfsQn5P/883t+r2f1Z+0Ydd+3eUzH8ruMt7N+RDV+7uLVfMwi
-+/2c38lHzevedWN2e87ua63tP1ue85G+237Kn+Gj1vPdfHY/rJrvVTnOr/Bq
-fGYRr99tnz3r2bqxi8d2O1fM8VH7SExXz+vu45NzzjnnnHPOOed8tsd0LJ+V
-+/zz+98YVf1ZO+P1/JzHdCy/yzjsHZ938Zhflet9jpxf6dn4XDW/Ru0jMb2r
-20/5Dr7bPsuf4U9dz0f3Q1Xf1etDa3s4v9Kr9SHGbvts7/672/t71u7d9p23
-ecyv1vPZ+wXnnHPOOeecc8752zymz3pWf7zu+PuTtINf4zEdy+8yPrP2jxq3
-sz2Lqnz2Ozm/wmfvF73jf9S60bservJR++9u+w5/hu+2z/JneMw/ux9l9Yzy
-2fNi1Pk5a9+q94tVz4vzHo+x2/4b09U6effvS/ycnx0/Mf+p45NzzjnnnHPO
-Oed8lR/x+ef3v1m5Vu+t/yf4UY5f628Zn6PHeRZZuzm/wrP5npW/ar5k7Ry1
-nsT79Hpv+0d57/p8th7Oz/hu+y9/hsf81nUyKxejdx/MfHY/rD6fZ/ft9dbn
-EvNXn5c4/81j7Lb/eh/nf+WfHf93GZ+cc84555xzzjnnd/MjPkm5mJ9Fdn2r
-Z+3haz2mY/ndx+cor+Lb8c/5DK/me3Z9jF6fvT5U943lZq+HmZ9tZ9Xf9lO+
-wlftv5y3+Ox9bbbH/GpfmO1Ve2J+b/9n9XN+B4+xer+etQ7stk7u5jG/Gi93
-aedu45BzzjnnnHPOOef8qR7Tlf8U13/CfbLyq/wu7dzVdxmHo7yKOE4439l7
-5281L7L6r96nqvbE/F09+727tZPzf/+NwTmf57u9D8b8an3Iyvfe92z5rNwu
-5zT+LI+x+jz57XzfzWefn2P6bP+Pqmf2ur3b9x/OOeecc84555xz/nu68ph/
-/P1J6p3dzqo939bT2z+ZV783Xr+rXz3ezo7PLLLnyvkZr+Z7vO7sOlDNg2r+
-9pZfvU9l7eGcj/fZ+zLn/H+H/fecZ/1ZleN8hsdY9d69eh2rrtvleV3tZ9f/
-zFv7edf9hXPOOeecc84555z/7jEd4xOu660n85/i+njft3n1HON1V/m346rX
-q9jlefFnezYvRo3z2b7b/rJ6HeP8jb7busQ5/9/RO39714Gs3lHnh9H7ftV/
-VflR/ZCV5+/2GHd5v+6dX3wPjzFqPGT3HbUvcM4555xzzjnnnN/Nj4j5n3Bd
-Vr7Xq4j35Wu9d/yc9dZxm42j1vGVXbe6n/la710Ps/GWjdvqvt+O81Hza1Q/
-9Lbz7O/inK/33nWAcz7Pe/fx2Z61Mys/6j23qj/LjzF7nRxVT1Zu1HjoHYdV
-e3qfV2v5p3uMs99zsnIxep8vX+uz94vd9rXV31E555xzzjnnnHP+Xo/pWD6W
-m+0xHf9+286sfr7Wz46fbFy0jp8qdumf2d7bn2fLx/xR87R6vq3tqX5PjFH1
-jKo/Kzdqv6jqj/lVu2f5bvsa5/x/+6h1knN+vY86J8w+L509/2T36z1vzD53
-tdYzqp2zf2/vc5l933i/1vu2tjOr/yqPcfa9I4tVv+vtPnudH/V+mvmq9u/2
-nZZzzjnnnHPOOef39ZhurSde3+sxXXlWz13az+d4jN5xUsXVv2vUPO2tf/V6
-MspjO1bVE6+f1f/xPtl9Rz2Xqp5Yrteredrbn9+2h3N+vVfrKeecf+sxf/Q5
-ZPR5pvWcOfu8N6o/e9u52/i5u5/9vtEbveM8XrfaZ82L2d7bz6PWjau+B85a
-H3b9vsE555xzzjnnnPP7+hFH/tnyvR7rj+VifvTq+hij+qe3/ur6WT7qufT2
-82w/28+90TreRs8L/t/pI3rrielZ7WltZ9We1vqrelrb31vP2ftyzvm3vts5
-hHPOOX+DV+8RrXHV96WnetZvvf3ZWr53PIz6vVU7Wr13nGf1zH6v55xzzjnn
-nHPO+Xv8iM8/v//NIpb7+ef3/Myzenq9+j2tXvVb1a6qnrP3ba2H/yeqcd4a
-veOBc8455/N8t/MG55xzvrOP/l6U1R/b0Xr92fZUvzeW4/fymD7r1X2r+XT2
-XLrb917OOeecc84555zv50d8knIxYrms/t56ej2rn9/Ls3HYO56zODvOs3pm
-zTvOOeec/2/f7dzCOeec7+B3+V5UlY8xqv1Vv8VyfE8fNV+yekd9j+Kcc845
-55xzzjkf5TEd4xOu+0mu7/XsvnxPr57vt+Mwi+y+MX12vF0172J7OOec8zf7
-bucczjnnfIbPfo8e9R4a05X39kMWq7+PHbH6XPQ2j+lv50VWX4zV85Fzzjnn
-nHPOOefP95iO5WO5qnzrfbN6q3J8rq8ah1lk4zDzmK58t/7pnY+cc875k3y3
-cxHnnHM+w+/yXhnTlfe2J/MsVn9PO2L1eYn/7TFd+W7zl3POOeecc8455/f3
-I478zGO68pif1cf38FXjMIve8VnVP2vc9rZn1fzlnHPO7+i7nZc455zzFl/9
-nph51p5Wj+mzPqqfs7h7P/OxHtOjx+eu851zzjnnnHPOOefXeUzH8rFc5jFd
-eXZfvtZXjcMsesfhqPGZ+d37edR855xzznfw3c5RnHPO+b+j2tfidXd/H4zp
-s97b/l7P4qrnEtvH13o1TlrH59n2XL0OcM4555xzzjnn/HqP6cqzeuJ1x9+f
-5H699+XX+OzxlkU2Ts566/js9dH9HMvttg6Mfi6cc875SN/tHMU55/ydvtv7
-XeVZO7/1mB7ts59jFld9J4m/c7dz11M9pqvxlpXvPa+uXgc455xzzjnnnHN+
-vR/xScrFiOWyerLyWf18rMf8+LxmjasssnEyymN6tM9+XqvXgez3Z+2M5Tjn
-nPMrfbdzF+ec82d4tR/F6+7mR4zel2N6tK8aD1mM/n4Sf+du5y7+e7oan6vn
-O+ecc84555xzzvf3I2L+55/f/8bgaz3mH39HjZMssvEz22N6tM9+Xqvn+7de
-/a5YjnPOOf/Gdzt3cc45f4bv9p51l/ey7L5VuW991TjJYvZ3tt3OY2/zmG59
-XrusD5xzzjnnnHPOOd/Pj4j5n39+/xuDX+Ojnlc2HrLI7jvbY3q0Z/dd9RxX
-rwOz1hPOOef8G9/tPMY55/xefvb9JSu/i8d2X71ft7Zntq8aV1lU5Vc9L97n
-Md26PmT177JucM4555xzzjnnfJ7HdFU+Xhf/ZuX4Go/5x9+fxnFwRFZ+tsf0
-Vd47X656XrusG6PWk1XjinPO+TN8t3MX55zzPT3mt+47sb67+BG9v3eUt7Zn
-Nx89rqrrjtjtfMXbfNTz3WXd4JxzzjnnnHPO+TyP6Sp66+F7ehbZ8431HX9/
-knGQeVbPbr5qnPe25y5+9vfGfM455/zfvtv5inPO+Z5e7S/xuqqemL+bHxH3
-y1X7ddae3Xx1P8Q4Oz6/bSc/5zFdPefd1g3OOeecc84555zP9yNi/uef3//G
-4Nd49ryy51vF1c83u+9uvur5Zu1ZvT58u55k5c+Oc8455/zff2Nwzjnn/47V
-70er/IjV+3VMP8Wr7zCt9WTXZ3F2nMfr+TmP6bPPd/X6wDnnnHPOOeec8+v9
-iJj/Sa6LHvOz+nibn31eWT1Z+dbnm7Wnt567+N3Gw1P9iDgOOeec83//jcE5
-55z/ld+678T67uJH9P7eWd77XN7mZ59vDO/X13r2XGM8dZ3hnHPOOeecc855
-u8d0LB/L9dbDz3nWz1n0Pvd4/+x5Pt2zcb7quWft2G3dGLXOxPzquXDOOef/
-9t3Ob5xzzvf0mN+678T6dvXY/qwfdtuvq3Jv97PjPMbo74H8d4/pylevG5xz
-zjnnnHPOOb/Oj/gk+dGr6/nv/pP0a/VceuvJ2tH6fN/mWb/tNk6q8rusJ5lX
-47v1uXDOOef/9t3Oe5xzzvf0LLLyu71PnfUjVu/XMc3neO/4322c3N1juvLV
-6wPnnHPOOeecc86v8yM+SX706nre51n8JM8hpvkc322c7LZunPUjqvmQleec
-c87/7bvt15xzztd6zI/lovfuL6vfp1r9iNbfu2pfrq7nfX72u18WV4+fp/su
-6wPnnHPOOeecc8738ZjmbR7zq3JZ+ey5VPXzPv9J8jNfNX52Wx8qP6J1Hsx6
-Xpxzzp/tu50DOeec7+kxv3XfifXdxbN+6H2P6+2fWC5rF9/Ds+ebxW7nwN08
-prPncMRu6wbnnHPOOeecc87n+xEx//PP739j8L+jKp/1L9/Ls3nUO0565+Pq
-9eFb7x3/VT9wzjnn//4bg3POOW/xmF/tL3d5X+v9vWf35W/bmbWH7+1ZjBpX
-d/dd1oG7+RFn+zmWq8bz277Lcc4555xzzp/nMV2Vj9dl9R1/e+/b2x7+t/f2
-89095lflqvJ8L181L6r2xPy7rANZ+2O69fdyzjnnf/mq8yHnnPNn+Nn3r97y
-V3v2e2N+6/777X1728P39Op9P8bZeXRXH73O3NVH9UPvujHqvln9me/W/5xz
-zjnnnPPn+RGfJD96Vk9W709RLqs/5o+67279P8p7+6EaB3f1apy31hPzq3HL
-13o13zP/dn6dbc9d1o1R6y3nnHP+l+92nuScc76n9+4jWbne71RVe6rf0bo/
-xnpmfwfr7f+YX/Ubv5dXzz3GbufJUR7TZ9eBu/kRo8fPVfvCt+vk058v55xz
-zjnn/Ho/4pOUq8r31j/bY7ry6vfu9ry+fb4xXfXD3T2LUeOH38vPrjNZvTHO
-rpOt9cf8s+twVs/Z+2b5MVbtC5xzzu/lvec9zjnnvMVjfiwXvfd9arf9tIrW
-fuC8x7PYfb6M+l70VN9tPR+1zmc+6j1lt+fIOeecc845H+dHHPmZx+tjZOVa
-vbc9q3235zjLs+d+F4/5VbmqPOffeIy7zJdR6//qdZtzzvkzfbf9lHPO+Ts9
-+64Sr6v2r6x873eqrJ6q/lhu9n35Oz0bV1lU8y6WW+3Z74+x23fg2N5qveJ/
-e8z/dh3mnHPOOeec38+P+CT50X+SfP63x3Qsv8t4qH5X9ntirPKq/1vrifnV
-c+Tv9N55MXodbr1vVU92fe96Fa/jnHPOr/Rqf+Wcc86v8N73ppi+ys+2v/V3
-zf6exp/t1feTLLJ6Yv6qc2nVzt55961n7dltXd3Ne/tz1PhZ/e8FnHPOOeec
-83Y/ojrnZ55d33tf/nu6tT9nedWeLD+7fpa3tuOI3t/Ln+2zx+eo9TmmV/eP
-dZ5zzvnOPnt/55xzzlt81HeYUT67/Vft+633jWn+LK+ee4y7nFdnf+/dbZ18
-qsf8q9dDzjnnnHPO+XqP6bMe84+/o98v+N8+e/zE+44aP6PHYW/57Pfwe3v2
-3Gevh7337Z13mcf0aJ/dfs4553yGz97fOeec8xYf9R7X+11odvtHfYcc9R0s
-qz/mn+1//iyPsfoc2zqPnvpd96ke88+Ok6qe2eOHc84555xzft6PiOf5qlwW
-8fre9wt+zrPnMnv89I6TUV5F1i/8XV7No2/Hc2/9vfcdvW603jfmV/18Vfs5
-55zzM967v3POOef8f8du3y1nv+fyd3uM1efbb+fRbuvJXTzmV+Olt55V44Fz
-zjnnnHO+j8d05TH/+Fu9R2T1flsP/2+/ejyM8iriOOH8339750VVz6r1OWs/
-55xzzmuv9nvOOeecn/dV3yev+q6YtbP1vvxZHmP2eXXUd6RV60PWjt55N3q9
-yu7b663PJV4/un7OOeecc8758zymY3zCdaPq7/WfpN6zPqofRrWn1av+6R0P
-rfX3ehXZ/fi9vXd8nh1XvfeN11213mb35Zxzzvl57z0/cM4557zdY361/456
-L87ue9V7d9VPVTv5szzGVeM5uz7G7Pn+VB+9XsXorf9sOznnnHPOOefr/Yh4
-ns/KVfVk9bZ6bzuf6tn712ifNU5ax0dVP3+2Z+Otd1yNWk9G1Z/Nu+y+V813
-zjnn/I0+6lzBOeec83aP+dW+nJUfVU/vd7Cs/lXnlqzcqHr4HI8x6vvtqHnq
-O/xYH9XPq9bnzHf79yzOOeecc85n+BG95+SYP8qr+2a/q7Ue/rf39vNZz9oR
-I/MqdunPp3r2fKvn9W09o7x3fPaun6PWpbPrZMznnHPO+TyffW7hnHPOebuf
-/a4Vy4++b1Vfdv+qnb3tz2LU973R34Gz/Bijvhv31l+1b5XHGDX+q9itH+7q
-s9e33vuO8uy+u/17Geecc8455zP8iOw8HPNHeXXfrFyM3veR7L78O4/R+z5Y
-1ZfFLv0wahyOGudVf7bet7c9vfVk0Tt+ete3zM+uq1k7W9s/6rlzzjnn/Hrv
-Pf9wzjnn/D0e82O56KO/t3x739nfk7N6z34//LY/z36HmdXO0d+3Y4z6ntbr
-vf3ZW8/s9o/ys+Owd3xG723nqPegs/ft7QfOOeecc85X+hHfnrd7z+G9963a
-HWPUe0pvO1d5bz9n/TDqefV6NT6/bU/vOKnaGfN7+7N3HM5uZ+/8HTXeVq1L
-q+/LOeec8+d77zmKc84555zzHTyL3c7bozymq/P8qH93OPu9d9R9Wz1rT69X
-/dnbzt5+4JxzzjnnfKVn5+Hec3JMjz6fn21naz9k7entt1HvR1l7RvXPbp7F
-qPdHzjnnnHPOr/Tdztucc8455/zZPvu7dBaj7sv39JhuHRet5UePZ84555xz
-zu/oR5w9n486z/M9vXdcVdE6HmaPZ84555xzzr/x3c7tnHPOOef8Xh7z4/kz
-Xtf7PXbUd/uq/tZ2Vu3P+iHm82v92+eYlRt1X84555xzznfw3nNvTJ89D1fn
-cj7XY/7Z51i9Z8XoHVet9Vbt6X0frN77OOecc845/8tXnfM555xzzvmeHvPj
-eTJeN9rj/Ud9p61+b4yrfu+3/cDHekxX5bNxtXr8cM4555xz/o0fUZ17s3JZ
-eX6Nrxo/WYx6L9utH7J29v5ezjnnnHP+bB91zuecc8455/fyVd9pq/bEcr3f
-aTPv7Z8sfNd9tsf02XF1dvxfPR8555xzzvk7/Ih4Hm4tH9Nnz8l8rMf81uf7
-rWex6v0r87Pjf9V85Jxzzjnnz/TecyznnHPOOb+X3/07ZEyf9VH9mcVV373j
-79nt/eIp3tv/reV76+Gcc8455/wbP+Lbc2lv+ep63ucxv+r/0eMnxqj3r5g+
-6739uWo+Vu2J5TjnnHPO+TO897zKOeecc8739OocGK+7yrP2tHr2e6ty0Wef
-h7O4e//z//befl713DnnnHPOOT/jMX22PD/nq557FqPep6r7ZeWi99Z/l/6v
-2hPLcc4555zze/mo8yrnnHPOOV/ru33Pn32OjemzPvu5ZHGXfuZ/e0yfHVer
-5ynnnHPOOX+2H3HV+ZaP9VHjIYtV7029fpd+XjV/Oeecc875nj77HMs555xz
-zs95zK/Ob0/9ThjTo331842R9XPvONntveOpHtO7z1POOeecc87/7UecPd/y
-sR7zj7/Ve0pV3xG7vTeN8tnP5S7zdNXz5Zxzzjnnf/vs8yrnnHPOOf/be7+/
-rf4eWP2+q86x2X1H+arzcxZnx1Usx+f4qHmxy7zmnHPOOefP8OycGvOrc2l1
-3uVjvPd9JIvZ70G942qUz+7/7L53mddVPfF6zjnnnHN+jc8+x3LOOeec8789
-5ree62J9u34PjOVme0yP9lHn6t5+zsJ31z09pqtxstu85pxzzjnnz/Ijzp5X
-+TWePccsRo2HzKt2ZOW+9dX9H8utnr9Zf2UR+3H2+y/nnHPOOf/bV51vOeec
-c87f5jG/Oo/t9t1v9vfes149h5g/y3ufe+/vquqPsevzeovH9FvmO+ecc845
-39OPOHte5ee893llUb2PZM81i/i8e8fJbO/9Xaue165+RGs/x3zOOeeccz7W
-Z59jOeecc8757/nxnBave4ofcdU5tir3NK/6IYtsHMZ8/p33zovd5i/nnHPO
-Ob+3x/TZ8vycx/yqXPa+UNXzNM/6Yfbz2m3+jvIjWvuZc84555yP9dnnWM45
-55xz/rdX57d43d38iKvOsVW5p3nvuMpi1XN8m1fPa7f5yznnnHPOn+FHVOdS
-fs6z/s+iqicrlz2/p/mqcbt6nn7rveOKc84555xf47PPsZxzzjnn/D9RndPi
-dXfxI+L5cvY5Nrsv/9uz51fF1c/37l6tA9n8yurfZb5zzjnnnPM9fdT5M6uH
-/55flfM+O9ZXPd/d5vvo9SGW45xzzjnnY332OZZzzjnnnP8ner/H7vYdL/Oq
-/TF/9jm2Ksd/92p8xuj99x3e5rvM66f6Eb3rVTZ/YnjunHPOd/ZqX4wxan+M
-+fbBa733ufP/RHWebK0n5mfPh//3397vAKO8as8u87r3fefsOs8555xzzsf4
-7HMs55xzzjkf673/PjLas/bF8+XZ9mf+bXv4Oc+eYxa7ve/cxav5Mnte7+69
-60lMXzUvRq1vZ++7y/PinHM+x4+o9qne/fQp++xuz2uXcdL73Pnf4T30Gq/W
-gavXt972rHoP4pxzzjnne3rveZVzzjnnnJ/zmN96fov17fbvEbN/76h+5td6
-jCx/t/ej2R7Tq+fvKj+itR965/uo8r3jNqs/81W/d7fxwDnnb/MjsvU55veW
-771v5qPOb1n9q37vbuNh1XjrPf/c3avxlkXrfOFj/ez7V1ZvFt+uM6u+t1z1
-eznnnHPO+RjPzmmcc8455/wan/3vEdV9Y/6o74Qx/2w7ez27L7/Gq38PirHb
-+9Fu71+rvv+P9iPOjp/d1u3R639rv40ab6vHA+ec8/9Onz0nrNpfdvWqn96y
-Px4x+lx6d8+id/zwa3zV+tBbz+h5mvVLFr3rW3ZfzjnnnHM+16vzKOecc845
-X+Nnvx/G8qvOmVm05sdy/NkeY7f3ptHzIpu/WT3ZvN7NY/t3W1fvtp7H/FHv
-+6vHCeec8/9Oj943s3p3e1/Yze++b/aOh93OS6PHfxbZ7+fP9FHfK2b73b//
-cM4555zzv33VOZNzzjnnnJ/z3u9vMX2VV+2v6otxdfv5Hp5FLL/be9ZZz+b1
-bh7bv9s6eReP+dW8eOt445zzp/lT9pG3eNb/u42r2eNt1/NSb3n+TD87f2P5
-2e3M/Ow6E+vjnHPOOed7enbe45xzzjnne3rvd7mYHu1ZO7Pyo74r9raT38ur
-5x5jt/ess57Ni1Ue27nbenh3j/ln58VTxhvnnL/Fn7KPvN2z5/LU8bb6vNRb
-vnVe8Ht57/jJ5kVW/27fVUZ9P+Gcc84552u99xzLOeecc87v5aO+Q569byx3
-9t8XsnpaPab5Mz3Gbu9fo+fFt57FbuvY2zzmV+N/t3HFOef8nF+1L/C5nsVu
-42o3r6J1/PN7+ajxM2pejPr3tazc7O8enHPOOed8Tx917uWcc84557zFe7+X
-xvpaz72xnqzerH7+LI+x23vZqn+n85441ketS73r1apxdbY9V7eTc85Hr7dX
-t7NqT8wftR+tPhfd1av+3H38z/Yqsn7k9/bZ7++j3oM455xzzjmf4dn5lnPO
-Oeec8xk++t8d4v16z71VOf5sj7HqvSxr5+j5kt0vxlN9VP+MKt/r8T7VOMnK
-r+r/rD1n59GsecE5399Xrz/fetWeb9f/0efqUeV763mqz5oX8X677PtZZO3j
-z/RR/z616nsC55xzzjnn33jvuZdzzjnnnPNvfNW/U8w+P1fl+L08xur3uG/H
-/27rQO88yvonK7/KRz33qv6qX6txvZuPWoev2kc459f7EWfXt9X7eKvH9Or1
-P6t/lY86P+zqdz3vVbHL+OHnfPa/K83eR+6+L3DOOeec82f4qPMz55xzzjnn
-LT7qHBvTsXwsl3lVT2t7snqrcvxeHuOq97jW8XyX976Yv8vz3cWr9bP1uY+6
-76rxcNV84Zzv66vXk289a0/mq9b/t/ldvs/Pni9n51cWuzxffs5HvUdU9beO
-56yeUeN5t3WAc84555w/20edYznnnHPOOZ/hvf/elNWTlR/17x1V/TG/93xe
-leNrPcbo97hvx+eq+cj/9tHrVXX/qv5en72+9dbTO1845/fxI65aT1atn73r
-W2/9ve3kv+cfcdX3/Nb50jueq3GexS7Phf/n7+z1bdT47K0/K796PnLOOeec
-c37Ge8/nnHPOOeecv9lH/Tta5bH+Uef8rFzv93Pe5jHOPt/W8TNqnMf8Xfrz
-rn52nZm1bmTtHOW943lUPZzz9/ioc86qffBt+8LbfPT3/G/nRTXOs9ilP+/i
-o845vc9x9rpR1R/Lc84555xzzv+3jzrnc84555xz/iQf/b065mfls3p7v6v3
-1tPbnqr+mN/bn733vZvH6O23LKpxmJXbrX+e5mfXmdb5MspjerX3rttZPWfX
-Jc75eB89f7N677qO9fqofSSm+RyvnmO8Louz8yuLXfpnlPfOl951KfOz5/ms
-ntZ5Pao9o95zd/v3L84555xzznfw6hzPOeecc845f77H/Pg3Ru+/a/T+O8Ls
-35u9H2Xtucqzdrb281Xt/PZ3ZeVnv/9W7fx2HI7696necXuX7wa9/ZO1Y/a6
-V7WTc177EbPW+az+2evzbt9XR7VnVP9U7bj6vFe1p7f81V71f+vvmd3OzFed
-Z7L2nB3n355bdvv3IM4555xzzvn1/gke8znnnHPOOeecr/EqjuuOv7u9b97d
-Y3p1e3bzbNz+JPmj+j/zUfOuamf2uzh/o5+dR60e06PXgd71ardzwurzyax1
-mP+eX5Xb7ZzAOeecc8455/y//8bgnHPOOeeccz7Wszje1+J12Xtcbz3x+uPv
-bu+nnP/bY7ryUfO09/tJNX85f5If0TovYvm7rAOcz/CYH8d/6/mxdz/KYrd9
-n3POOeecc86f6p/gMZ9zzjnnnHPO3+4x//j7E9JHnPWsHfG+VTtjzG4n5zO8
-dz5m3ju/qnaOmkecP8F75+nseb3b+YE/20fNoyxGnQ9Ht7N33+Scc84555zz
-t/sneMznnHPOOeec87f48d4U80d5vP/xN3tf6y2f3S+L3X4v5795Nt5i+d75
-nsXsecH5GzyLUd8ts/vudq7ge3rMb913rp4Xve3f7feuPj9wzjnnnHPO+S7+
-CR7zOeecc84553x3r+K47vj7E9JHXOWxXZln7c98VL+t6p8jsucV8zn/zVvn
-XUyfnUer1xPOr/Qjzu5fvfNot/MG39Nj/urzXha7nQNX90/V7lhPvI5zzjnn
-nHPO7+Kf4DGfc84555xzznfxmH/8/QnpI1Z7bG+vx3Tlo/s5xqr+zNq52/s1
-v5fH9Oj5VbVnt/WKv8tHrasxfdU+xd/pu62rWdxln6r6eZf1KrZ39fmBc845
-55xzznv9Ezzmc84555xzzvnVHvOPvz8hfcQqr9oZ83s9q7/XRz+XGKv6P2vn
-bu/d/F4e01X5UfNrt/WNP8uPODsvevfr3c4V/F5ejc9V573edrZ6TO9y3sv2
-wV3Wt6qdMZ9zzjnnnHPOV/kneMznnHPOOeec81ke84+/PyF9xK5+RGz/tx7T
-Z/2q5xhj1XM5IhtXMZ+/27P5k0Xr/Oq9L+dXeu+4jenR84u/02P+6nUyC+e9
-/8Ru65hzIOecc8455/wu/gke8znnnHPOOef8W4/5x9+fkD7ibn5E/F2tXkXs
-t15f9T6YxeznkrVnt/dxvre3jrd4fTW/Vq9XnP/bj2jdR75dhzn/d4xah8+u
-273t+dZ7z8lnPav3W1+9Xo167q3nZM4555xzzjkf5Z/gMZ9zzjnnnHPOW/3s
-e0qsb1fP2j/LY3q0rxonWVz1vHZ5vvwZHtOj59fqdY/fy4/YdTzzd3o2bmev
-e1nstl+M8t2e725+9nfFcpxzzjnnnHPe65/gMZ9zzjnnnHPOZ/nxnhLzV3ts
-92yP6at8t/fELHrHT1V/az9w3uIxXXk1nlvrX71O8jV+xKxx1Vs/5y0e81vX
-29ZzWha7fW+vys3yVc99t/Vzt/MD55xzzjnn/D3+CR7zOeecc8455zzG8X4R
-8+/uR3xC/uz3suy+qzzrn1XjKovedsb8q54vf4f3riffluf8t5g13nY7h/B7
-ecz/dl2NUc2XrP5R3jq/Vvnq57vLOjnaj9jlHMI555xzzjnf1z/BYz7nnHPO
-OeecZ3HkH3+r95FY366etX+Wx/SunvXb6nEYY7f3bv5sj+nWdS+rf7f1kN/b
-s/UzKx+vy/aHqn7Ov/EsVq//rfNlN1/1HHdbD3vXyZi/+rzBOeecc845v69/
-gsd8zjnnnHPOOY9RvXfE6+7mR8TfNctj+m7eOx6qelqfV9XOGHcZD/zZHtPV
-+K3W4d3WT36NH3HVeOO8xc/u41nMOidk5av27XLu6vW7jIfdvPpdsRznnHPO
-OeecZ/4JHvM555xzzjnn7/XR7yPxPqv8qt/7rcf0U3xU//fWn8VTxw/f02P6
-2/myy7rKr/UjRo8rzv8do851WYza33vbn9V/d3/q+Fn1XjD693LOOeecc87f
-65/gMZ9zzjnnnHP+Xo/5x9/qvSPWt5tnv3e397WY5m1+dpzHyMZPdt/dxg/f
-02P67Hi++zrM//be5x7To9dJ/k6P+dU6k4XzzzW+2/i5+z51dl7EfM4555xz
-zjn/BI/5nHPOOeeccx6jeu+I193Nj4i/a7a3tiemeZv3jvMsVo8T/mzPxnGM
-1eskX+tHnB0/nH/jWfSuezHN27x3X1g1Tlavk9969btiOc4555xzzjnP/BM8
-5nPOOeecc87f68d7RMzPPNZ3/O2tZ7ZXvzeWu8pb+5Of82qcxOuq+mP0jreq
-nTGfv9NjuhqPu623/Ds/4ux44O/0mP/tOaS1/t51KauHn/Pec8hs7x1vqzy2
-79t2xvo455xzzjnn/BM85nPOOeecc87f6zE/lotevY/E62d71c7e8jF/9ntZ
-VY6v8ep5ZTFqHvF3eUyfXTdWrcP8bz+idR3Iyu92fuBrPea37ncxeschX+ur
-vv9X7eld965eh0fNo93OD5xzzjnnnPN9/BM85nPOOeecc87f6zE/lotevY9k
-18fIyvf6qN979v2rtZ3ZffmeXj3feF0Wu30f4Ht6tU721v/tusrHeu8+5fse
-/8az6D2PxetW78v8b3/q+bn3PNb7e2N+az9n9+Wcc84555y/1z/BYz7nnHPO
-Oeecz/LR7zvxPpln7Yn5q+/L9/Te8VnVHyMbP1X51vbwZ3hMV+Ord73i1/oR
-Z58vf7Zn0btfxPucHVdZPXxPf+r5udd328c555xzzjnn7/FP8JjPOeecc845
-5zGq946qvpgfffR7UHa/GL31jHrPGtVv/F6ePe8szo5b/kyP6dZxla232frG
-x/gRrftdVn638wC/xqtx0lt+l32Qj/Xe82rvOXb2uXrUfIn5Z/vNuYtzzjnn
-nHM+yj/BYz7nnHPOOeecxzjeL2J+9t4R06P9Lu9H1f34Oz1GNr/Olp81X/ge
-3roOn62Hj/FR++xu5wF+zmN+NR+z6C2f3Ze/0+/y7w5Vvd967zq8et/nnHPO
-Oeec388/wWM+55xzzjnnnLf68d5RXRfzr/aq/fG6Ve3k/K/8Knrn427fK/g5
-j+nWdS/m8zl+xNnnxe/lMT/O39Z13fmE7+zV/hKvW9XOzHvXbc4555xzzjnv
-9U/wmM8555xzzjnnrV69j8TrMo/Xx/zoV7WztXzWTs6/8d73+ix2+y7Bx3pM
-V+Nk1LrNf0/H8lm5b/c1fi/P4uw6v8s+xZ/hZ9e3b9fD3nUy89nrNuecc845
-55z3+id4zOecc84555zzp/nxfhTzK4/19npMcz7Cz463GNn4770vX+tn18Os
-/t518u1+tp+j77Zv8t/zq/lSRayn976cf+Oj5sWqczXnnHPOOeec38U/wWM+
-55xzzjnnnD/Nj/ejmH/W4/16PaY5n+nZvMiimkexHN/TYzqWH7Ue8t/9iNb5
-yPf0an71lt9lX+DP9tHjf9Q6Ge/HOeecc84550/1T/CYzznnnHPOOedP8+P9
-KOaf9Xi/s179jpjP+Rk/Ow5jrJ4vvM9jOhsvMbLxM2r9vKsf0Tq/svK77Y9v
-87PPvbWe3vnF+TfeOw5nzxfnAc4555xzzjn/778xOOecc8455/zuXr0fxet6
-PdYb68/u+217svtyPsOz8ZfFbt89+H/7t+seH+u77Zv878jmV0xzPtNnrzOj
-7tvbntX7I+ecc84555zP8k/wmM8555xzzjnnd/WYf/z9Cekjej2rv7pvzM/q
-7/1dnM/ws+Mwxm7fQ/jv6ep5jlo/n+JHnO1PvtaraN3Hs/Kcz/BV58nZ5+fd
-9kfOOeecc845H+Wf4DGfc84555xzzu/qMf/4W703xfp6PWtP73tZVY7zO3qM
-UfOIn/OYrnzUOnl3P6K133bbH+/uvft4Fbutk5yf8d5z5qrzcNa+3fZHzjnn
-nHPOOR/ln+Axn3POOeecc86f5jE/los++72stz2c39Gr+Rhjt+8nb/Psef0k
-+W/1I6p+49d4FvZf/ma/at61tme3/Y5zzjnnnHPOZ/sneMznnHPOOeec86d5
-zI/lZvlPUm70e1/Wjiyu7gf+Ts/GZ1VPjKvm0dt8VH9m9dzVe/eXUfXw/0S1
-bmQxav3hfKSPOr+Nnke79QPnnHPOOeecP80/wWM+55xzzjnnnL/Fj/em6rrj
-b1a+t/7KY729HtOc38GzeZTFbt9bnuK969Xbfbd97e6ehf2OP8lHzZfR58zq
-/q37RVY/55xzzjnnnL/FP8FjPuecc84555zzMV69r8Xrznpr/Vk7Y352Hec7
-eoyz8+XtHtOVj17HdvEjWvtht31nN6/6OYvd1hnO//JR57FR61hVf9ZOzjnn
-nHPOOedj/BM85nPOOeecc845H+Mx//j7E9JH9Hpv/Vl5zu/o1byLsdv3mbt4
-1s+j1rFd/YiqH/jfnkXWzzHN+Z191Plt9Pkw5nPOOeecc845H+uf4DGfc845
-55xzzvlcr97j4nWVV/drvW9Wz+ef3/9mkZXjfAePcXaevsVjuvKz69jVnrU/
-8932kd32ryp2Wwc4/z8x6vzTOg+q8r3rmP2Lc84555xzzvf0T/CYzznnnHPO
-Oed8jcf8WK7Vs/p/kvyz75tZO7L49ndx/o1n4zaL0fPlrh7T364zu/kRZ3/v
-U33UfIn3Wb0O8Hf6qPPM2XUvu3727+Kcc84555xzvsY/wWM+55xzzjnnnPO9
-/Hi/i/mj6sk81nf87X3frMpxvtKrcRtjt+88V3nruvFU321fmO1ZZOMkpjnf
-yUedW86uJ7G+s+ttbz2cc84555xzztf4J3jM55xzzjnnnHP+Lj/eH2P+WY/3
-G/XempWvrud8hsfY7fvPVT5q3djFd1ufZ3sVu807/kzPxufs79u7nX8455xz
-zjnnnD/DP8FjPuecc84555zzd3nMP/7+hPTZ8pXH+nrfZ6tynF/prbHb96Je
-j+lv14GrPWv/buvz2fW8N3abR/xdPuo79qh14Gz5mM8555xzzjnn/J3+CR7z
-Oeecc84555zz/xPHe2XMH1VPb/0x//g76n05q5/zHm+N3b4XjfbW+b7Kd1tv
-R/nZ2G0e8Xv46HEb6x29zmT19NbfWw/nnHPOOeec83f5J3jM55xzzjnnnHPO
-R/rxflpdd/ztfZ/N6h/1vlyV4/wbj7Hbd6Szns3HXXy3dbLXq9htnPN7+6jv
-zL37dTX+s3a21s8555xzzjnnnM/wT/CYzznnnHPOOeecX+Gj3lt/kutGe2xH
-5dXviPmc/xW7fV/KPIur5mnVjiN2Ww9b251dt8u45Xt5Ni/uvs9W7Wyth3PO
-Oeecc845n+Gf4DGfc84555xzzjl/ssf8+DfGT5KfeVb/qPf3qhx/tsfY7btT
-5a3zaJTvtv5UzzOL3cYhn+ujvutW9ffOr+x+3+53nHPOOeecc875k/wTPOZz
-zjnnnHPOOee89uy9O6aPvz///F4u86qemF95a/38nh5jt+9RveN/lO+2blSx
-27jifT5qHPbW37vO9+5rnHPOOeecc845b/dP8JjPOeecc84555zz6zx7f4/p
-4+/PP7+XO+vxPr3fE6pyfK3H2O171OzxvGpeV7HbOHm7jxo/o8Zz1o7efYRz
-zjnnnHPOOefX+yd4zOecc84555xzzvn9PObHctGzen6K67PysVzmve3JyvPv
-PMbs71FZe7Lx1utZ/VfNuyx2e+539VHrydl1LBuHre3JfLfvxpxzzjnnnHPO
-Of/eP8FjPuecc84555xzzt/rvd8TfpL86ntF1a7W+8brsnp4m8e46vtVNn5a
-ffa8qGK357i7j5rXveOhd73qbSfnnHPOOeecc875J3jM55xzzjnnnHPOOb/a
-Y378G6P6HhKvG/X9pCr3VI8x+vtV9rxaffQ4zGK35zLLR31X7H1e2X1728k5
-55xzzjnnnHO+yj/BYz7nnHPOOeecc87507z6fhKvG1V/TD/NY4z6TpU9l1Hf
-u6rYrZ+/9bPzIvPW+bLbd1HOOeecc84555zz2f4JHvM555xzzjnnnHPO+Rqv
-4rguXr+bxzj7XSu7Xwz9yTnnnHPOOeecc8538E/wmM8555xzzjnnnHPO7+3H
-d6GYn30viulZnrUzXpe1v6ovi1m/a1T/c84555xzzjnnnPNn+Cd4zOecc845
-55xzzjnn/C8/vjtV18X8zEdF632z9u/2HY9zzjnnnHPOOeec38s/wWM+55xz
-zjnnnHPOOedX+KjY7fsb55xzzjnnnHPOOX+nf4LHfM4555xzzjnnnHPO//KY
-f/z9CekjMh8VZ++btT/mc84555xzzjnnnHPe4p/gMZ9zzjnnnHPOOeec39tj
-/vG3+o4U6xvlWWTtien4tzVm/67R/c8555xzzjnnnHPO7+2f4DGfc84555xz
-zjnnnK/xLI7vPPG63TyL3u9XMR3/xtCfnHPOOeecc84553wH/wSP+Zxzzjnn
-nHPOOedP8+w7SUzHv9/W/5PUd3fPYtR3qqzcqO9dWezWz6P87LjNrm+dL7t9
-F+Wcc84555xzzjmf7Z/gMZ9zzjnnnHPOOef8aj++Y8T8qnxW7hPqG/X9JGvn
-Uz2LUd+pYvqsjxqHWez2XK7yI872c3Z977zubSfnnHPOOeecc875Kv8Ej/mc
-c84555xzzjl/r/d+T8jKZfVU5bNyre3M6uF/exazv1PF9FmfPS+y2O053sVH
-zetYbvR6dbadnHPOOeecc845f69/gsd8zjnnnHPOOeec38+P7wAxP/Osnpgf
-/2b3jddV3tqe3t/F//YsrvpOVY3rbFxU3juuRnkWuz33p/gRo597Vn9Mnx3n
-Z38X55xzzjnnnHPO7+ef4DGfc84555xzzjnn13n1Xl/VF/NbfdT3hKydfK1n
-sdv3qKrct+N51bzOYrdxwv/bjzg7fqrre8dzVi7Gbt+fOeecc84555zzN/sn
-eMznnHPOOeecc8557dX7eFVfzI+e1dP7HeBs/fwensVu36Ni+irfbd3IYrdx
-xc/5Ed+Ow9n7yNl9jXPOOeecc84557V/gsd8zjnnnHPOOef8yX68L8f8rHzM
-z647/mb1j3p/r+rnz/QsdvvulHlMX+W7rT+tz/WI3cYhv9aPODueq/Wkd1+L
-+aP2O84555xzzjnn/En+CR7zOeecc84555zzK3zUe2t1/bfe+95d1RPLcd4S
-u31fqsZ/FrPmaeVZO3b3LHYbt3xPPyLOi7vvs73nCs4555xzzjnn/Er/BI/5
-nHPOOeecc875SI/5x9+fkD6i9322qj/m99ZftZPzM57Fbt+Rej2md/Xd1smz
-62qM3cY5f5YfcXYeZdeP2pd76+ecc84555xzzmf4J3jM55xzzjnnnHPOf8uP
-f7+tp7f+nyR/9Ht0Vj/nf3lv7Pa9aJTH9K6+23o7et1ujd3mEb+Xjxq3vft7
-TFc+ah3bbb3lnHPOOeecc76nf4LHfM4555xzzjnn7/Lj/bG67vjbW76qJ+b3
-vs9m7eH8Su+N3b4XnfVv14FVnrV/t/W513tjt3nE3+1HVPt+Nf6/XQd6y69e
-hznnnHPOOeec7+Wf4DGfc84555xzzvm7PObHcq0++721qidex/kMz2K37z+z
-Paaf4rutz1et/zF2m3f82d677z/1/MM555xzzjnn/Bn+CR7zOeecc84555zv
-5TE//v22nsx/knK975tVPZyv9Gq+xNjtO89sj+m3+m77wlX7Toxq/Owyrzn/
-zY84e26prs/OUTG/d73dbV/gnHPOOeecc/63f4LHfM4555xzzjnna/x4j4v5
-vZ7VH/OPv73vlVk9s38X59/4EdV4rcrv9p3nKv92ndnNR/3ep3rM/3a+7LIO
-8Hf7EWfPM6PPV7N+F+ecc84555zztf4JHvM555xzzjnnnM/17H0tpiuv6mm9
-b+VZO7L6Yz7nO3gWvfP0rd7bz63r2Crv/V277SO77l9Z+V3WAc5/8yPOnn9a
-95vW8q3rmP2Lc84555xzzvf0T/CYzznnnHPOOed8jB/vZdV1Mb/Ve+vPynN+
-R8/GfRa7fZ+5i1f9/O06tpv7njbWs6jG4S7rDOff+BHfnt96vWpnvI5zzjnn
-nHPO+Vj/BI/5nHPOOeecc87HePZeFtNnvbf+qp0xn/OdvYrW+cL/23v7/9t1
-bDfv7Yfd9p3dPOZX5XZbZzjv8SPOnsey8r1enffidZxzzjnnnHPOx/oneMzn
-nHPOOeec87d4zD/+/oR0Vb63/uq+Mf+sx/txvrNX8yjGbt9b7u4xzdt8t33t
-7p6F/Y4/yUfPl2/PmVX5ql2r9y/OOeecc845380/wWM+55xzzjnnnD/Nj/ej
-mD/bY7uOv6Pe77L6d+sH/k4/Ihv/WfksZs2jt3lMj67n7t67v4yqh/+eX5Ub
-tf5wPtOPGL3+9M6j3fqBc84555xzzp/qn+Axn3POOeecc86f5sf7UcyvPNY7
-2nvbw/mdPJuPWez2/eRtXj2vrNxb3He2PT0L+y9/s8+ed7ueqznnnHPOOed8
-F/8Ej/mcc84555xzflc/3oNifvZ+FNNnvWpPVV8sn7Wf8zt5Fd/OI/6d9z7H
-b9fJu3tvv+22P97dz+7jWT27rJOcj/Ajzu6n1fWtXt23tf2cc84555xzfnf/
-BI/5nHPOOeecc35XP96Dqutifqtn9VeetTvW3/u7OJ/hZ+dXVj7Wy/fw1uce
-88+un3f3Uf3J13oWvfv4bus2f4cfcdV5Mqu/18/OL84555xzzjm/q3+Cx3zO
-Oeecc845v6tn70ExfdZ/knK972Wj78v5SM/mVxa7fffgv6f5Hr7bvsn/jmre
-7bJu82f7EbPWmVH37W3Pbvsm55xzzjnnnI/yT/CYzznnnHPOOedP85gfy7X6
-qPeyqv5YjvMRfkTr+M/i6vnCv/PsOcXIysfrzq6fd/fe+dXb//waj/mj18Pe
-+cX5N35E6zi8ar44D3DOOeecc87f7p/gMZ9zzjnnnHPOn+YxP5Zr9dHva/F+
-nM/wal7EyMrv9n2Dt3m1Xp5dD/nf3jsf+Z6eza8s7Pt8Bx81/mP+t+thzOec
-c84555zzp/oneMznnHPOOeec86d5zI/loo9+L4v343yEH1GNtyqy8d97X77G
-e9fDrJ6qXv679/az73X38mpdrZ5fVU/vfTn/xkfNi5hfrZO77Zucc84555xz
-Pts/wWM+55xzzjnnnLd69t4R05X/JOUyn93Os+Vb2895jx+Rzacqdvsuwed4
-6zo5at3mv+cfMep58Wd4Fr3r/Or9iD/Tj2hd33rLj9rXett/VTs555xzzjnn
-PPoneMznnHPOOeec81aP+cffn5A+YpVn7a/ep3ZpP3+nV/Mui975GK/j9/Te
-8RPHCR/ro54Xv5dnzzdeV81P5xO+s1fjP5bbrf2xfbvs45xzzjnnnPPn+Cd4
-zOecc84555zzLI7842/1PhLrG+3ZfVt9dr9d1Q/8Hl5FNS6r8rPnC1/rMT26
-Hj7WR+2zu50H+Dmv9oVv1/8sdtsH+R5+xOh9avZ8GeW96/Bu5wHOOeecc875
-/v4JHvM555xzzjnnPEb2fhHTx9+ff34vV3msr9ez9oz+XVl+jMyr+nv7jd/D
-q/EQo3fc8nd467jKysfrqnWPn/Oz+13r8+XP9up80lp+t32Qj/UjsvUn5vee
-Y7NyZ8dtaz1n58u3/ebcxTnnnHPOOR/ln+Axn3POOeecc85n+aj3mpiuvGpP
-zF99X76nH9E6brPnn0U1br5tD3+GZ+tOFq3rFb/GRz1f/myvone/+HZcrd5/
-+Tk/4ux6dXY8zLrv2XEby3HOOeecc875bP8Ej/mcc84555zz9/rxHhHzK8/q
-/fzz+98ssnKtPvr3xut7f2/mZ/uZr/EjsucY87PY7fsA39Or9aq1nqpevsbP
-7lPVfap6+Ds9i97z2G77Mv/bj5i9LmXtidfP3qdGvY+Meg/inHPOOeec80/w
-mM8555xzzjl/rx/vETG/8qzeT3LdLM/a2Vt+1XvZ2f7ncz17XlmMmkf83d46
-DnvXPb7Wz64DreOBv9N7950sesch38OPqM6Zs8db1o7d9qlR82j1OYFzzjnn
-nHO+r3+Cx3zOOeecc875ez3mx3LRf5JyvfXM9qx9q97LsnZm/cnP+RFZP8f8
-qp4sesdb1v6sPfydnq0XWeyy3vJzPmo88Hd67/4S09X6Mmpd2u2ccHc/ovUc
-ctU4zMrttt629mdVT8znnHPOOeec80/wmM8555xzzjnnMbL3i5i+m696Lzvb
-nng9/9t7x3kWu73X82d4TGfrVoxd1k9+jY8aP5x/41mcXQ93OSfcxXv3hdXj
-ZJf1s9ez37Xb+YFzzjnnnHO+v3+Cx3zOOeecc875e/14j4j52ftFTO/q1e+N
-1632rP/57947zquI46Z3XnD+m387nu++DvO//ew+NWud5O/0bPzE66r91fnn
-Gt91/GTldllvM++dF6vPFZxzzjnnnPN9/RM85nPOOeecc87f66PeO2J6tc/+
-vaM9tvfuPrr/W+uv4qnjh+/p386XmL96XeXX+Oxxxfm/Y/S5rrX+UePW+Wqt
-3/29YPR445xzzjnnnL/XP8FjPuecc84555zHyN4vYvpuvvp9Lbbvbn5Eaz9X
-4+7berK4y3jgz/Zs/MWoxvcu6ye/xleNN85bPOa3jvMYV50TYvms3Orz1bd+
-t/Gwi1fjIV7HOeecc84555l/gsd8zjnnnHPOOY9xvF/E/Oy9I6Z39dXva1l/
-7uKx3Vm/xnKzPIvVz5G/01vny93XSX4vr9bPbHxm9WbXcz7Ss1i1zsd0NV92
-89XPcZf1MPOs/b3vO5xzzjnnnHOe+Sd4zOecc84555zzLI78WO6u/pOUu+p9
-Lbvv1R7bl/VfLPetZ/etorWdq58vf6bHdDWvR5Xn/N9/Z4+3VecN/gzv3X9j
-+ux5YLf1f5Wver7xutXr5Cjf7RzCOeecc845398/wWM+55xzzjnnnM/ymB/L
-Xe2r39di+67y2J7V46G3fGx3Vr63Hzjv8dZ5V43P1vpjudXrJ7/GZ4+r3vo5
-b/He/Temq3U4i92+t686760+1+22fsZ8zjnnnHPOOZ/tn+Axn3POOeecc85b
-vfd9JKZ39dXvcbF9o3zVOKli1vPqLc95j8+aXzF/9XrI9/S7jGf+To/52biu
-yp/1GLvtF0851+2yHmbe+7tWjxPOOeecc875c/wTPOZzzjnnnHPO+bd+vI9U
-18X83X3Ue1kWWb+d9Xjf2c+9ilnPpRqH8TrO/+0x3boOZOWy2GUd4+/0al58
-u1/P3l/4M3zUOnzWW9sz+zv8qPNeFqOeV8xfvY71eu85mXPOOeecc85H+Sd4
-zOecc84555zzWX68p1TXxfxd/Kr3uNiOXp/9HKtY9Vyy/onX8Xd6TGfj64je
-+dV7X86v9N5x27uu9t6Xv9N3PQdm7YzXvfW8t8s6lrlzIOecc84553w3/wSP
-+ZxzzjnnnHN+tR/vL9V1Mf9qz9o5+j0uq7/VRz2XKq7u/2r8xOs47/HWeT16
-fu2yvvFn+Ozvh7P3Hf5Oz8ZhTF/tre28+3nPOZxzzjnnnHPOx/oneMznnHPO
-Oeec8138eK+prov5V/vo97h4v8xH9XMVV/dnNR7idZz3+Kz5ld03pjlf4aPX
-1av3Kf5O33VdbW3nXeZXzF/dz1U/xOs455xzzjnnfDf/BI/5nHPOOeecc767
-Z3G8B1X1xfxZfvY9Ltab+ah+i9dd3T/Z743Xcf5vj+mz8+vsPLp6vnB+pY/a
-v3rn0ahzAn+273bey2LXc+Cq9aRq1xG7nTc455xzzjnnvNc/wWM+55xzzjnn
-nL/FY34s963/JOWq97jW8tXvymK338v5b+mq/Nn5nsWsecH5mzzGqO+WWblR
-5wH+bM/OJ/G61fOit/27/d7dzhWcc84555xzvso/wWM+55xzzjnnnL/dj/ep
-6rqY3+rVe1x2fW/MbifnI713Plae3be1fNU+zt/ovfN09rze7fzAn+0x/9v5
-FWP0+fDbdp7dZznnnHPOOef87f4JHvM555xzzjnnnI/xKo7rjr/Ze9zZeuL1
-u72fcv6bZ+M2+qh52vv9pCrH+RO8d17cfR3gfIZn4zZe17rfVPlVudX7O+ec
-c84555y/xT/BYz7nnHPOOeec8zWexfF+F6/b7X3zKa6ff/dq3MZyo/s/+qh5
-l7Unpjnn/fNot3Ug5p9d997ms9dh/p/I+jmL3c4JnHPOOeecc87/+28Mzjnn
-nHPO+Xv8eF+I+Vn5mB//tpb//7d3t8mWqkoCQOc/yx5CD6Gjo8J4VflOHj42
-SOpe+afCBSJbERG5544ed/Xvjfmy+uz2VvSe51P1H/1drXKuiNdllffWf7Rd
-xfTZes62212+6r7Lyh29Xrv7vayenPN+v6uf7+0fWvX8tD6r+qXZfuzT+mT7
-V3vOru7ne/Of9it678cYp+o/2m539w8xX6uc0fynx7ecc84555zzuv6/wWM6
-55xzzjnn3+gxfXZcneXL8v9PIz3bP6tnbzmj9Wl5PE6rnjF99rjVPYvR85ZF
-6zrGfNXOz1t9tH/I/K55g+rnbba/yvbvPf+c88991f371n5s1GP6p8+RKuft
-rd5q/618MXrvryyqnZ9T467Zfqm3v8qOu/u9b9V72ej5rPb9i3POOeec8wqe
-jas555xzzjnn/x2r5qsz3z3OH53/b83z8589i9HrGLdbvrqdVzmfT/fR8x/T
-d/Ubu89DPG6r/p+Wwzn/Hh99fq0qx3OBj/gVs9clbs/eF612FeP0eXuqX5Hd
-j73tZPQ67u43Wv1kzM8555xzzjn/bx8dz3POOeecc36nt8a3cb9WOa3jZ+W1
-xs+j8+2z895Z+fyMZ7HqfS1uz7bPU/cj/91X9Ven+5N43NX16S2nlY9z/jw/
-1Z+c6j9H+7fZ/rnKc/Ap3moPMd/Tx4FZVLsu/F+/Ylf/lu0/2p9/2l+duh85
-55xzzjn/xEfH55xzzjnnnH/iq8e3rePH9Oiz88Ot48RysvL5MzyL3e9rcbu3
-Pbf2y45zl1e7vtW81f56r/uq455uD3H/VfcL57y+n+pPdo9Xq/X/3+pX3N0e
-oo9e98x3P6+zOH0d+Vq/YnU/3Co36996+8nZesZ8nHPOOeec7/BV41jOOeec
-c857PBuXxu3Vvnv8fHr+nK/xLE69r8XtWa/WD8zeR3H/au1ndXtonb9W/mrX
-d/S5MNoPt/Jxzp/nq+Yzq83HPqX/P/087f1ddz2Xd3ncnvVTz/EsqrUf/plf
-sbq9tcrddV9U6wc455xzzvm7fdX4mXPOOeec8x6P6TFfr68a956e3+ZnPIvT
-72ut+2n2fsm8Wv9Qrf8ZLeeufq+3nWT5T53/1n0a9888bnPOv89P9T+nnvu7
-xwmj/e2q/vn0+b/b4/Zqr/bcz6LaewG/16+Y7c9b++t/OOecc855RR8d93LO
-Oeecc/6Jx/SYL/rovG5WTlaf0/PSfK9nUe29LG7f5d4T1/qqfmm2v+o97iof
-rU+19s85/x5f1d+equfu/rZ13N7y+b//ZlG9/e/2LKq9R/A9fsXq/jArJ/Nq
-/QbnnHPOOX+3t8avnHPOOef82R7T4/gw7rdq3Dg679qqZ0yf9ez38md7FtXe
-v1bdF6s9RrV+7Nt89r7Iyj3VrjjnnI/57ucCv8dbUaVdVfMsqr138LW+uv2s
-6m/jfqPzJK331rh/tX6Mc84555yv9VXjXs4555xzfo/H9N5xYCxv9zzqXfOQ
-u34Xr+FXtO6Hau9Zox63T7v3x3t81X3x9PbGOeff5k9/jvB//83ibe3tlGex
-+r7gz/DZ9hPvh9l+8u7fFdNP93ucc84553zOR8exnHPOOef8rMf03nFgLO/U
-vOLouLTaPDC/x7NolXNF731RxeN2VfdeudZn75dY7lvbG+ecv9Wf/hz5Ns/O
-fytfFV/V3k756vcF/m6/otX+nzJ/EtNP94ecc84553zOs/Ee55xzzjk/6zE9
-juta5Z0eZ2aRpZ+ev+VnPItq702rPTs/MX/crureN3/3mD7bHla977fycc45
-3+u7n5tPeV+o5tn5auWr4qPtYVV7q+ZZVHsP4vf6Fb33+d0e02N/pT/nnHPO
-OX+2nxpncs4555zzP9Eav8X9WvOKcZyXHTfLP+qt39U6H6vHpafne7/dr+ht
-f9Xej6q9f7X2r+6j/VtWTrV+e5XH9LvaWysf55zzvb57nnb0uE/3uB3zZ/my
-qNJORt13gd+9Fb3th9/rV9zVP4yWM+qr5nNG+7dq/TbnnHPO+bd5Nk7jnHPO
-OedrfdW83+55wlHf/XtXn2e+17NoXa+Y7+3eaten7+vdPnoeRu/3Vfln2+3o
-/XL3782Oyznn/B4fHSevfo/Iyhl9vmT1zLzK783yv9VXjX+e7q32k+XvvV/4
-Hr+i1c/E7ez+mD1uVv5ub7XTXb+Xc84555yv9WycxjnnnHPOa/qpecLWODPb
-P8aq+dXR+vA5z65jFtXed57irfO8675+is/2J3ffF6v7t9H7scr14pxzvtZH
-n3dZOa18MZ7ynI3b3+rm/9d6Ft5D7/HWdbm7fxutzyqfrT/nnHPOOa/lo+NV
-zjnnnHM+56PzfjFfTK/irfnVuN/ucWy1+eSn+RXZ+Y2RtYeYzn/3uM33+Gz7
-j+XM9vO95XPOOec7PKbHfDFWPx9bxz99ft7qo9ed/5zemy/G6fe7p/sVd7Xn
-p/dXWf1H+3nOOeecc77Wd49jOeecc875n3jrd/nRedTVnh2X/+xZ+8zi9PV9
-qrfOc3YfxfRWuZxzzjnnnP+UHiPm871gzrP3oyy8z67109e3yv0+6q3fG/fj
-nHPOOedrffc4lnPOOeec/+5vXY9xahxbbd741Lx0q11lcfd1/DZvXYcq9y/n
-nHPOOX+H+y5wj8f03nwxWu8Xcb+3+xV3tdvW8ar7bLvinHPOOed7ffc4lnPO
-Oeec/4lsvjHuF9Of6qfGsafnje/27DxkMTrvzec8bs/m55xzzjnn/BOP6TF6
-8/M5b80DZPljudXeQ+/yK+5qn63jPdXNA3DOOeecn/Xd41jOOeecc/4nsnmw
-LH9Mz/ar6qfXvcR8u330uo/+rlY7yaLK9fpW/5b7nXPOOeec1/RV41U+5zG9
-9zrGWPX+OPp+eur9Otaj9btOX68qPnsds/ycc84553yN7x7Hcs4555zz3310
-fixun/bW74r7nVoPs9rjcUeve2v/Vrmtck6ff/7vdkzPosp9zTnnnHPO3+Gr
-xqv8Ho/prXyt/KPtoff4u9+7T53/t8zDZOc5lsc555xzzu/xU+NbzjnnnHP+
-c3pr/JblP+Wn5/2y467yeNy72sOn5VR773irx+3Z+yIrh3POOeec8088pl+R
-jVdHy+FrffZ95NNyVn1X2v2eftf5770vTnnr+sd81d6jOeecc86/zXePYznn
-nHPO+ZyPzkPG9Gy/1X7XODbW4ynzuq3rlUU8z6PtpNp7x9u9+n3KOeecc875
-3/+uGt/ytT76fhe3s3Jb5Xiv/91jetX79PT15ZxzzjnnP/vu8SrnnHPOOb/H
-Y3rMd7c/ZV73ruuSxVPOM//dP21XMf30/cs555xzzt/hp8a3fK3H9E/bSQzv
-7z+nP/X+5ZxzzjnntXz3OJZzzjnnnN/j2Xgvbt/lu8ers/O6veWPeiueev75
-z9uz+TnnnHPOOa/sMT1Gb34+5zH97vYQ41vf66vcd9XeiznnnHPO+ZyvGq9y
-zjnnnPOaXm3dyOw4NpY76qvOZyt2n7fs98b9+JzH7db5H80/Wg7nnHPOOeef
-+Kpx6Wj+Vj4+5qffI7L6xP2e8r4f0++6H1vXN+7HOeecc87f4aPjVc4555xz
-/g6P6THfLs/qs3v+dvb8ZLHr/LR+V9yP7/FP21VMb7X/LD/nnHPOOeefeDbu
-Hc2/+/2Lz3l2/uN+u9pbVp+436l2Ndr+d/vp91zOOeecc37GR8exnHPOOef8
-3X5qXnfV/O3o723Frt+bebX3hW/1eJ1G36da+TjnnHPOOa/oo+PeVe9lfK3H
-9LvbVYzT7/u775eY7/T7LOecc845r+Wj41jOOeecc87/jmweMu4X01vj0Vh+
-3G90nrYVo/WMbj62psft2evYav+fHpdzzjnnnPMKHtOvGH0vW3Vcfo+vfq9v
-Xdd43Ljfqfd97/Wcc84553yHrxq3c84555xz3uMxPeaLPjv/v/u4vKZn1zXG
-aP5V7ZlzzjnnnPMn+qrx+arxPK/pMb23vcUYbQ+jxz393so555xzzr/Lq43b
-Oeecc8457/Esqo23V3s8H63zk437o2fHbeVvXbfZ4646P6Oe/Z7R+sRtzjnn
-nHPOn+AxPeaLcWp8PuoxvXUeRt93Vh83pu8+P9U8i9Pv45xzzjnnnM94tfE2
-55xzzuv46HxpLG92vLHquJm3yo/7jY6jsnyjv3e0nCx/Vv/d9RydT26Vn8Xo
-9V3l8fiz9Yn73VX/T320HWY++17z6fWq1i9xzjnnnHNewVeNt0fH4aveRzJv
-1SM7DzG92nvZ6PlZNf+wu/5ZfbLY/T67an5g9ri95a+ex8jSs3rHuGse79N+
-6dRxOeecc/49PjqO4pxzzvk+j+mt53iWf9VxW/WJ+VbNt7TqGWP1fEtvOaPz
-MKuu+13zind7FqvnObPyq5yHp/vu/m30uKt8Vf/GOeecc875E/30OoR43Kye
-Wb4s/+z7Ph/zLL7tff+KT9vhqnaelbPqvTs73mw5MUbbT+a75zlXzVuu7t84
-55xzfp+Pjn8455xz/rmPzm+sWhexaj6hVX7cb/e4ZXR+eNV55nOexe55qlHP
-yq92Pp/iq87zqf55Vf/JOeecc875E332vSCWt9rjcVv17y2H/+5XjJ7nXs/K
-b9WjN6qdz7f7Fa3ruKqcVT7aPjOf7SdX9ben+mfOOeec3zdu4Zxzzr/Zs/ff
-LH9M//S536rv6nFFq/yYj7/bs9jdnjM/db+/1a/4tD9pxWj5n7YTzjnnnHPO
-+f2+av6kla/Xs/KrvZfd5VfE8/Cpx+3V7aR1fWOcPs/8jF8R29tou1rVn6wu
-P6afut8555zzb/ZV4wrOOeec55E9dz/17Li737uz+swelz/bs9g9Xm3l622f
-p/qH0fsxbq+u/6rrldUz81XngXPOOeecc/49HtOvGF13MVr+qO9+zxo9D9W+
-Q7XyRd/9Xp9FtXkYvtZH2+dsP9B73FPzIdW+X3POOedv8lXjVc455/ybPabH
-fLt8dL4xy1dtPoTX9CxOjWPj9qxX60+e4qPzirP9T9z/1Pwk55xzzjnn/H6P
-6TFfjFXvF6vL+XaP23e1h1WeRbV5G17br2i189H53t1erT/hnHPOn+inxrGc
-c8753zE7D5Z5drz4/Ntd/+y4o/VZNd/VKn/0PPN3ehanxqtxe7UbJ5/10f58
-9HkR893VrjjnnHPOOef9no3n43bLV79f8DHPrksr36c+2k5WeRbV5nl4Db9i
-dXuuNi99ar56d/0555zzT/zUeJVzzjn/LT3mi777ffmu+sf03e+5o+sZ+Lv8
-ilY7fsp4tZXvU6/WT77VR9vtqv6Qc84555xzXsdjeszX67vfL/jvHrdX+1O+
-c2Ux2275s73VTnb1h6PHzXy2f9h1Pu+qP+ecc77Sq41XOeecf6fH9N7nWiyv
-2nt05nc99+8+P/ysX9Ea5/WWH8s7NS5dNQ+zykf7B/5zem9/FfcbbT+tfJxz
-zjnnnPPzvur7xej7Y7XvNVW993zu9tH3x9H2s8pb5y2L0d/L3+m722dMn+2f
-q52fmF6l/+Scc87//jcG55xzfqfH9Pj8ivtl5YzOz4wed9X83qrj8u/2K3rv
-qxjVxqVxuzVezfKf8lPzaW/1Vf0w55xzzjnn/Lm+6n2Z93k8nzFflfYQ07P8
-rd9zt6+ezxm9L/h3+RW990WWf/dxZ/vz3uOe7lc555zzv/+NwTnnnH/iq+fN
-RvPf7VlUex/n7/AsnnK/zN5f2fj1bV6tP1/dz/e2z9H6tPbnnHPOOeecP89X
-fe/Y/f5SzeP22z277k/x1fM/nM94Fk+5X1b3/7Fczjnn/BOv9jzlnHNe01fP
-d8VyRt+nsnqMHjcrJ/PR8zNazuz55M/2VjuPUW08udo/7Qee4qPnYfT87PaY
-PttPvvX6cs4555xzzu/32fmrmH+0/FPvy96j//Xe8/B0z2JV++HP9Cta90vc
-Xt1Pzpbfug9W9wOj53P0/HDOOed/e7XxJOec82f5qvmrLP8pb/3emL77/XS2
-PrymX5Fd1xi999HTfVU/83RfdR5G+43V/XzvfZGVwznnnHPOOeerfNV7SpZv
-dJ1AtfUST/HR89C6rk/1mN6bL8bp+TE+51fEfiZ63P70/vq0Hzvlo/fRbD/P
-Oeec/+bVxpOcc86f5bu/75/y0d+7+70489PzAHzMs1jVrp7ucZv3+arzPNue
-e+uT5eecc84555zzUx7TY8R8q96bWvl668N/99Hz/HRfPR/Fa/kVd98Xo/OW
-q+q5ylu/K+5nnpZzzvkOrzZu5JxzXtOf/v416tl5yPKfWhfBa/gVrXZTbRxY
-1bP7JIsq/QbnnHPOOeecc873+ar5BP57ZPlPz7/xMb8i3kez7aT3fszyP8Vn
-238sj3POOf/bq40DOeecn/VV61Ky8lv5qvip96y7rhf/2a/obQ9ZeE9f63Gb
-c84555xzzjnnPEuP+fjPvmq+Kx7n+rfavN9b/Ip4nqOfbj9V+ofMR8/b7uvF
-Oef83V5tHMg557ymZ9HKnz1vqnu15/Xp9/1v8dH2f7o9vNV7r1fc/3S/wTnn
-nHPOOeec832+ap6Hz3kW5jPPetV2UqXfGPWsPWdxeh6Vc875M7za85pzznlN
-b70PZvtnz5sqPvp8rPa8rjYPUM1H23kr4vWo1k7e4r3XN+5/uj/hnHPOOeec
-c875Pn/6epWn+Ox8b2851nF95le0rsOpdtJqF1X6k8xbv7f3unDOOed/e7Xx
-Huec85r+1nVZmVd7z5q9Lt/iV4xe9yyy9hDT+ZzH7d523lsO55xzzjnnnHPO
-3+cx/YpV8w98zmN6K18rf/Rq85Cn/YrT7Xn1PG0VH/291eZdOeec1/Rq4zfO
-Oec1PabHfG/zas/r0+/7u/yK7Pz3ltNqt9nxWulVrvtbfdX1rdJvcM4555xz
-zjnnfJ/vnmfgcx7TW9cri1XXt1Wf3nKe4k9pD2/10/OrnHPOn+HVntecc85r
-eus9Oj5XsnKy/NW89f4b96u2juW0Z/Vf5a32FaO3fZ6+vvzf7ZieRZV+g3PO
-Oeecc8455/t81XwCv8dH55OzOHV9T8+v9vrp69va73S/kfmq7x2n51E555w/
-w6uN0zjnnNf00XU4cftpfmrd0Wx9qviqdhX3y9JjOXE/XtPj9uz1bZXDOeec
-c84555zz93hM743ecnhNb0W8rqvndbNyqnis913t/OnrsjIf/b3V5l0555zX
-9GrjK84558/ymN567mT5q7l1WT9v3+VZZPm9Fz/TW+3iLf0J55xzzjnnnHPO
-P/eYHiPmqzbfxX/30fm9LKrNd1mXVdNn+5OYzjnnnPd4tXEX55zzd3hMj/mq
-e/a7Tj2Xv239Vdyv93z2/q5q47Fv9d7rFdNP9w+cc84555xzzjmv46vmH/g9
-ftd80ehxd3us32qPxz11HVv1qO6n2wnnnPN3erXxGOec83e497LPPNbj29Zf
-jfrovASv4b3tM6af7gc455xzzjnnnHNex63Leodn1yvu92n7yY4b9zMP/LvH
-9NP9wKi32mHcj3POOf/Eq427OOecf6c/ZR2X9/HfvRW7r0t2HuJ+fI/3trfR
-69Vqb1X6B84555xzzjnnnO/z0XmD2fmirB4x+Fq/a11Wq93E+sT9zAP/nH66
-f2i1q7gf55xzfqdXG3dxzjnnf0e19Vqj9Tz1Ph7LXf3cb8Wu819tHMX//TfG
-aPscPW6rHpxzzjnnnHPOOX+Px/SYL4u4/6r/Xoyf9Zi+qx3GWDWflh232rqs
-avNyo/XknHPOK3i1cRTnnHPe49XeB6uty1p1nlvx9PPM1/qu9lntfuecc845
-55xzzvn9HtOvqDaPwe/xmH53+4zx9vnhp9/vnHPO+UmvNo7inHPOd3hMj/k+
-9ey4u9+7R+vTOj9Z7DpvmVcbL/E+72231e5fzjnnnHPOOeecP9erzWPwsx7T
-726fMUbbZ1b+W/+7yNPzmZxzzvkdXm28xDnnnO/wp71XxnJXr2/JYtd5yLza
-uOhbvdWOZq9jtfuRc84555xzzjnn3+Mx/YrReYzR41rfVdNj+t3tM0bVeeMq
-9yPnnHP+Jq82LuKcc84reEyP+T712XUsWbmj8Wn9W/WM+/Gavup+ac0LZfvv
-ur8455xzzjnnnHPOM4/pV4zOb/ge926/a16r97ij7bN1nF33V7X5T84557yC
-VxvncM4555U9psd8ox5j9j06i976ZOVXG7fwzzxe51mP5cft3uNm+2Wx6r7j
-nHPOOeecc875e3x0niGbr8j2Hy1n1Fv14M/w1eu4estv7ZfFrvuOc8455//t
-1cYtnHPO+Td4TG/la0Usp9p4o5rH7ZbPrkdqHSfG7usYj797nnB0XdbovCjn
-nHPOOeecc8756DzG7HxF5lk5vZ7Vc9Rjeqv+o+WM5h8th/+c3srXit72wDnn
-nPN9Xm28wTl/n696L477tfqxVd/3R+s/Wv7u8zlaz2rt5+k+u/6kN0bbebVx
-SFbPVffFbo/1mh13tfKtuo6f/q5V98Vo+Vl+zjnnnHPOOeec81X/Pd2qea3d
-67Ky47bq09qvVf6p+bdT8427Paa3zvNozH6Xifn4nMftT8vfdV/M1rPV3j/t
-J3vrP3t+Pj2fnHNuXRbn3+MxfXZcsao+p8Z7o+dntj6fjjNX1XP378181fWd
-PW7v+d89T7J6PU+M2XmSrJy7fxf/eXvWY/rsuO4p9c/yc84555xzzjnnnI96
-TI8R863+HhePv2rePst3uv58jWfx9HnjK1bdp73lr/LReq7y3d/dZsvZdf5P
-fR/Mytm9HmPV9y/OeX1v3eec8/u82nvQqnHCqK96P71rvLSqnN7fu3t9xew4
-8NP8b/UsRq9vzDf7HK92fvjP2y1f9X566rkWtznnnHPOOeecc87v8ph+xenv
-d1m9V9Uzlsdr+BWt6xi3Z9tPFqfPw91+Re/5HM2/+z5t9Q+99Wn9zqz8T8tZ
-VX6175XVvi+cfq5xztf3k5zzfT47Don5V733teoRfVU9s/Jnx8nZcVeNb/l3
-eRar2nnmq/qZrPxq55n/HqufO7ueC5xzzjnnnHPOOedP8dnv71n+Xs+i2jwV
-/zdG20+vZ+Vn3qpfb1Q7z7yGX9HqD1vtLbtfeu+v0Xa+6v5adR5G6zman3Ne
-x0f7Ac75577qub/Kq/VLs+ONauNS/k7P4inv16s8q0+163XKR/v/0fYw+l6c
-lcM555xzzjnnnHPOz3pMv+LU+oRq82yn54Hj+T31fSSrT+aj7SHzLKpdL/4d
-fsXqdr7bY3qV50vcj3O+z6v1S5x/g8f0Ks/fbP/e/KPHna1n3O/0OJC/07Oo
-9n6debV+b7QfWH2es+ue1S+rz6fljPpoP3yqvXHOOeecc84555zz3z2mx3wx
-njIftaqc0fOTeVafat9nnz4/nEW1eX7+Dm/1J1m+3n6glb+3Hz7Vb496tX6P
-82/w3c9lzj/xmP60djv6nrLbV40HRn8v55U9i6e/d2derZ+s5rvnhU7Vs1o7
-5JxzzjnnnHPOOX+rx/SYL8aq7/un/Sn1rOJx+3Q7XOVZVPsuwPmIXzF73z39
-e3E1j9un68N5j596LvN3++y6iNHnV9xv9Lh3nYcs3+7naUxf9Vxbdd05v9Oz
-qPb8beVb1T/c3R/yOd/9/litfXLOOeecc84555w/xVd9dzs1/8Pv9Va7qNo+
-V3kW1b4jcP6TX9G671bfL7v6h9bzKO63uz8c/W41el08T3kFP/X85e/20XHm
-aDm7n6fVnpunnwujz8Fq4yX+XZ5FtefvqffxUa/2fPk2n31/yfKPevX2yTnn
-nHPOOeecc37KR+fPR33Vd2p+j8ft0767fa7yLKp9d+Df7Vecvr92z9vvXn9y
-6npl9Tv9/Z1/l1d7/vJ3eEz/tN1Wef6uOg+Zn+r/Z+vD+Z1+Ret+q/acHX3+
-tvLd7U95f/82H33/euv8Euecc84555xzzvkpj+kxX69n5fteXNtb1/l0+3z6
-d+Essvynv19w/nfsel6Mtv+sPpn7jv9v+TGd80+82nOWv8Nj+tP67bf258ar
-vLK37qMYb52XiNtVfVU/yX/3mP5pe+u9Xk9vn5xzzjnnnHPOOee7PaZfsWp+
-JvOsPtXmOd/iretzuh1mPtquqnnr/Gf5Y7nVvoPw7/YrTt+nWT1W9ZPV3POU
-V/Bqz1n+bo/prXY4mv/U+qXd/flofTh/orfibeOi0X7jKb5qfon/id3zeKPP
-l7jf6fbGOeecc84555xzfspHv7+v+t4dt3cd99s8O69V2tuov/W7cExv5av2
-HYTzFX7F7H2d7T/aT+7uZ7Lys+Otys/5Dq/2POX3+Og4c/W6i9Hy435P82rP
-a87v8NZ4L8bp+/RuHx0PP92rPQerPX9XvX/Fbc4555xzzjnnnHP+TI/pV+ye
-X/o2j9tvcd+Ffw/f9TjP+5EYT3HrH3hlr3a/8LV+qn8eHd/O1j+Wd2pcPVr/
-ateR8x3eimx8EtOf7qP3e2v/p/rsc6Q3f3bc3c/Z0eOO5q/2vOOcc84555xz
-zjnn93hMj/lijM4Xrcq/e33U7PqZ3vzZcZ/uvhf/nN7KV+07C+cjfsXq/jNu
-V3nefVr/0edp1evIn+HVno98rY+OM1etv1rVb8+Oo+5+Lqzq/1fdp6ef+/yd
-3rofY1R73lXzav1bNR/t33b3k1k9V4+re4/LOeecc84555xzzvnf/6767yJP
-z49l3ltOVs9vc9+F5zyL0+s0+Hf6FbP3dZZv9rkQy2vV4+7+bbSc0f5h1fcd
-67K+06s97/g9HtM/bVfV++dRn+2Hd52H1fXh/G+/onc8k8Wq/uRtPnqftvb/
-dh99HrXOf1ZOa/9Pyxn9vdoJ55xzzjnnnHPOOf//WDVf1Nq/N0bLWTW/F9NP
-X5dqPvpdYPQ6vtVjem++Xj/9PYg/y6+I93X0uD3b/5+qzykfPQ+r+pNq3zH5
-PV7tecfv8d3jsdb+1X31eCkeZ/dzM8t/evzAa3mr/cRY1c75v/9mUaU/5L/7
-0987OOecc84555xzzjn/LT1GlXry39134bXeWg+Z5Y/lVvtOxM/6Fb33b5Y/
-81XtfPT74Gg9q/mq732+q/K/vdpzja91/eecz467Pu23V62/Nd77Tr9idPyW
-RVaO8cOYx+3Z529WDuecc84555xzzjnnnPPv9FPz1d/mo99lsuhNj9cx7sff
-4a32FvPt/r4c03vbYVZulX5yt4/2G763fqdXe67xtW5d1pzPnueY79R6j2rj
-Cn6Pt8ZRMTz37/G43epnsvycc84555xzzjnnnHPOeY9bl3XWW+u4svyx3Grf
-ofg9fkWV+3TVd7G3+mg/4Pvsd3q15xSf893rebL8b/Wn9IdZ/Vf3//ysX9F7
-n2Yx2k6y4/I13rp+VfpDzjnnnHPOOeecc845589y34XP+ux6laycbP/e/Ly2
-X9FqJ1XbeWu/0/3hbt+9vq7a900+59XuX36PW78659Xu39F1O7ymX9H7XM7i
-dHvjYx63Z/NzzjnnnHPOOeecc845/06P6TF68/OansXsd4eYj9f0au1wtJ/h
-P6dfUe17Jb/Hq92/fK2Prr/9tn519DxUu3+zes+2B37GW/ddFll77r3f+b0+
-et2r9JOcc84555xzzjnnnHPOn+Wr5qv5PT763/Vn4e85PNOvaN3XVdttzNdq
-p1X6yVU+u96gtz3wd3i1+5fPeUz/9DmbHa9K/7bKV52fql5tXPFtfkXrurSi
-d9x1ur3xMR/tzznnnHPOOeecc84555zzHvdd+B0++902Kyfbvzc/v8ertcNV
-7SSWd7qfXOW7z0+175t8zqvdv3ytx/TZfmO0nKd7tft01X1dbVzxFF99P8ao
-1n74Wo/b+mHOOeecc84555xzzjnnK3z3vDR/h2fh70XU8Cvecj/G9NP95G5f
-1Q9X+77J13q1+5Tf49av/vl3dn14zFdtvcfp8UMVv+LT8zM73shitD5xP/5M
-X9WuqvSfnHPOOeecc84555xzzs/6qflqXtNnv/Nm5cT9Vq3LyupT7Ttjte+b
-VdtbzGe9QZ/H8vi7vdr9y9d6FqP9QNx+uz+lnxwddz3FR5/vcfvT89xbn1aM
-trfRevJn+Wi7qtIfcs4555xzzjnnnHPOOX+WW5fFf0vvbVcxTv336Vn+VevE
-qvoVrfNwyr9t/VXms+cnyx+Pw9/h1e5ffo9bv/q7V7tPd69LP+2x/qee+611
-X1lob/yn7dXXfbR8zjnnnHPOOeecc8455+/2mB7zZbGrfF7TY/qn7XDXcVf9
-3YysPqe/h/Z6tfZzur1V91V/h4S/26vdp/ysjz7v4vZbvFo/OVsf44cxz2LV
-OJB/t396X8T00/0k55xzzjnnnHPOOeec87N+ar6af6e3/k5Clj+WW9Xj76r2
-XbXaeg/rB/6E78i8x6v15/ysW5f1599q/edsPe/2rJ7V2nkrPGf5J957v8y2
-2yr9JOecc84555xzzjnnnPOzXm0em7/DV38vzsqP+/kO+7tn9azWTuJ+p/vJ
-Vb7qfuHf6dX6eX7WY3rrudOKKv3kqLf61bjfaT81Hoj1qdqes9j1nH1a++Fr
-fHc7aR2Pc84555xzzjnnnHPO+Xd5TL9i9rtS6/gxnT/bV7WTuN3ro/W521vn
-LTs/u/wp7SduP9VjjK5Dq9ae+Vmvdv/ymj7a/7eiWr/a69Zp/7x92lux67qP
-jkP4d3rc5pxzzjnnnHPOOeecc84reUyP+fh3+eh3sVa+Ue+tz2mP9d7tsR6n
-79+sPk/zGKvWK3L+t1fr53lN9/de/vxb7f6967kfj3v6+Z7Fqfbg+ftub7XT
-1n2x6v5q5eOcc84555xzzjnnnHP+XT7735XH9FV/NyA7Ln+Wj34fucuzesb9
-Tq2v+Na/m1GlPxz11nWM+/kuzD/xavcvf4dXfV6f6p8/9Szevr46iyrtIfNq
-/Tyf87jdO+4aHY/15s/qwznnnHPOOeecc8455/w7PaZfMfv3FmL6U74r8bUe
-00+385bHeMt3pdbvzI6/2t/63co6K36nV+vn+bt9dBwY00/3z5lbdz3nrah2
-fT2Xv8tX3Xez90WV9s8555xzzjnnnHPOOef8WT47Tx7LHf0+EvPFdP5sf9rf
-5Yhx1/em0fuo+n3XOl4VX/V3Ejjf4dX6c/5uX7WeIaZX6ed39eerzqf1V3Ne
-rd/m93jcbt3vWf7ZfrK3PpxzzjnnnHPOOeecc86/02P6FU+ZD+fv8Jh++r5o
-eYynrdeK5a+6jk9Zd7d7fSnnO7xav8353zHaf8byqj8Xen3V+blr3JVFlevS
-Op9xP/6dPnrfrerfWvXgnHPOOeecc84555xzzn/z1esQesuJ+WI6/y5/2n+H
-HqPqeq1Yzqrr1Sq3Wj+2qn/j/A6v1j9zvsNj+t3Pi5i++79T2L0uqxVPeV7H
-/fg7PG7vun9776+nvXdwzjnnnHPOOeecc845f6fH9CtWzYfvrid/hz/tv1uP
-cWpdVlbPVdclK3+3V/vOyPkOr9YPc77Dq62LuGu9dFaPGK3nbxanzlv2e+N+
-nP/tq8afT3tf4JxzzjnnnHPOOeecc85nfHQ+3HdqvsOrfpfJ6hn3q/r99+7z
-1rq+cT/O3+TV+lXO7/RT6/wzX/W8nn3+ZnH37/Vc5j0+el/Pelaf0fzR4zbn
-nHPOOeecc84555xzvtNjeswXY/Q71O75+dH683f7aDtp5VvlvfW86/vvrt+7
-+zsa52/yav0n55V993rs0XHF7LqyLE49lzn/zeN277hu1HuPO9o/jN6/2XE5
-55xzzjnnnHPOOeec8x5fvZ4q2z8ed7b8Xh89Luc9HtN33acxVn3/3f33Aayz
-4vxzr9bvcf4N3orR5/XocUafszGdz3ncPp1/1bjuLs/Ge5/6qvt61bg0bnPO
-Oeecc84555xzzjnnIx7TY74Yd627yMr/1Ed/7ypf/XcVeq/j7vx8zmN67/0b
-Y/X336z8uB/nfJ+ver6M9j+nv49XeV5z3uOjUa2feZr39htx/1Z/uKpfWtWP
-xfTe8WGvV3tfOzXeXvXc5JxzzjnnnHPOOeecc857fPX33Jj+1vn/mH7XdZk9
-P6P5e8tp1f/u6/JtPhqnv6ty3uOf9kurjhvzzT43d6/Lau0ffbSeu+uz+7i7
-xzm7y+FrffX6n09jVb9313g1xu71S1l9Vr0XVPMrevvtLH/mo8+jVjm72u3q
-+723Pq36cc4555xzzjnnnHPOOecrPaZfcdf38VZ9e+uT7df7ezNv1S/6Xd87
-qvsVvedn1XqzVnx6v9zVbj+N1X8XIubja320/3lKObvXFax+vsT8p+ozetzM
-d5ef+e7fu/s5fqqc3esHZusz+lzu9VXPzdXjlqw+V9x9nvm7/YrZ/u2ucfiu
-+q/yrB6j54dzzjnnnHPOOeecc8453+Gr5/N3eVa/VetPsuOt+i65qv78HX5F
-7/2V5W+15xinz8MVrfqP+u7zPOqz/cyn9Tm1vmhV+aPnbZXvbg+j5Z9eN/jp
-827293563FXlz5bTO97Y3a+e7uerexar+70Yq55r/Dt9tP3E9E/7/0/rc2q8
-xznnnHPOOeecc84555w/0Xd/t139HTn7PVlkv3dXffh3+BWt9tOK2D6z/XrL
-u+L0+anu2fmstr4i7t9qJ6vKOVX+6HFXlT973/U+T1u/K+a7ax1db7tddb04
-/8SzWDWui/la99Hu/o3zn/yKVjvf/RwcrWerfpxzzjnnnHPOOeecc845z9Ov
-OLW+K6vPbD05/9uvmG2fcbvlq9afZHH6fPJ3+xWz/XbV9RIx3+z6q97zubr+
-1doJ5795Fqeey5mvuk9390v8Hp+9Xr0et1vXPcvPOeecc84555xzzjnnnHM+
-6qPfI1r5et13sZo+e712edye9VXtNotq15HzEb/i0/v30+O2+p9q543zk57F
-U57Lo/3AKY/pxquf+RW97WFVO5x9vnx6XM4555xzzjnnnHPOOeecf4/H9Ct2
-f4/Ijpt5Vk6170pP8Suy8xnTT/loexj10XY4225jVGsPnFfyK/TznNdbf1Vt
-Xcru5/hd44Te8Vgrf2+/uruc7Peeaj+j16Xa+jHOOeecc84555xzzjnnnNfx
-mB7zZRH3n/1unh3v7t+7+vtR67zeVU6Wv9p6qmrtJPPR+2WVZ1Htuz/nnPOz
-nsW3Pa+z+px6jj/dR89nq51k1+/Tep4+P6P3byx39LzFfKfvO84555xzzjnn
-nHPOOef8m33Vd5C7vjtU897ztvq7Ff/Zs/PZyrfLR++jVZ5FtXUCnHPO13oW
-1Z7X1daTvHVdED/r1d6P4jbnnHPOOeecc84555xzztd5TI/5PvVq3x34d3ir
-nd51fz3le24W1dYVcM45/92zOP1cHvUqz/FRr/Z852d99f0ej2ddFuecc845
-55xzzjnnnHNe32N6zPepP+V7BH+Wx+2q/pR1WZlnUW0dAuecf5tnUe15/W3r
-srLfVe35zu/x2fu6t1192/3FOeecc84555xzzjnnnD/Rd68bGT2udVn8bx9t
-V9X86euyWuc/RrV1C5xz/nTPotrzerfH7ao+Wv9qz3c+5zG9t533jg9330ej
-v4tzzjnnnHPOOeecc8455//tp74TrfoekdWz2ndDPudxu9UOs/zVfNV99BTP
-oto6B845P+Wz/Wfc/63+9Od+5tZrfafH9Nn2MPo+lZXz1vuLc84555xzzjnn
-nHPOOa/ss98FsnxZxHJG81f7bsjnPG7Ptoen+Oh357d6FqPfGTnn/Gl+RW//
-+O3jn7j9Fl+1Po1/p69a//lt9x3nnHPOOeecc84555xzXsFj+hWr10tk5fDv
-8qy9Zd7a/6k+eh6e7jG9N1+M0+srOOc86997w3jpd/+28UDmo+PwLKqNB57u
-d63b/HTcaD0k55xzzjnnnHPOOeecc17HY3rMF2PVPH+r/JhuPdhZz2L2O3WV
-9r/b/R2M3330+/Lq9aKcc77q+dWbv9rz/bQbP9zjMaqNB6p5TJ9tz6PlZPk5
-55xzzjnnnHPOOeecc85HPabHiPlWfb87/f2xureiSvt5iq/6Hv1tHtNn26d1
-XJzz1euyYmT5qz3fn+Kzz4Vv8d3r4oxPfk5vnbdW/phuXRbnnHPOOeecc845
-55xzznd7TI/5soj77/4+8haP52f3d7eYfrq9nfLR7878dx9dT2hdFud81Fvx
-af/P+7x3XMd/99Hn6epxZsyf1XP0us/+rt39SXbc6K1+p0r74ZxzzjnnnHPO
-Oeecc875c33VepVTfzfj9Pem3nrOns8sX5X28xT3dyfWekzvvS4xqq0D4Zzf
-/xzP4vR6pG/31f0/X+O71yOtWk81W36vj45bRstvHY9zzjnnnHPOOeecc845
-57zXY3rMF2P3d5PZ48b9Vn0nmq1na7/T1/3bfHf75HOexem/s8E57/crWvdp
-K3r7bb7W43bv89Q4p6ZnEfNn+61qP6vWj2Xlt467q3zOOeecc84555xzzjnn
-nPNVHtNjvix2lT/6HXC2/Cxfq9xWffg9vup78Wj74XMe01v5ZtdbxnTOeb9f
-0dtPZlFtPRL/3XePA3lNX3V9rd/jnHPOOeecc84555xzzjl/lq/6vuO/l3+3
-7/7uzM96Fqv/jgfn/D8xej/G/Xrvu7gfP+ut617luc8555xzzjnnnHPOOeec
-c8455/ysW5f1LJ9dh5mVE/ertu6F80p+Rev+ivla92W1dUf833+zyJ6no/0z
-55xzzjnnnHPOOeecc84555zzZ/vo92LrtZ7ls3/vbrT8mM75m7x1f8Twd66+
-w3vbSW//eno8wDnnnHPOOeecc84555xzzjnnfK2f+h7Na3prnV6WP5ZbbV0N
-/06/Iuv3evuxVqzqV/mzvdV+qjz3Oeecc84555xzzjnnnHPOOeecn3V/F4v/
-lt7KN7peKyu/2jof/izP2lnWPlvR20/yd/toPzna73HOOeecc84555xzzjnn
-nHPOOX+Hz66TaR0npvN3ekzvzRfD393in/hsu43ROm4sl3+39z43Z/tPzjnn
-nHPOOeecc84555xzzjnnz/bW343J8mf5YvDv9Na6hSx/LNd6Ld7jve0sRm8/
-2WrncT/+HT7aDqs89znnnHPOOeecc84555xzzjnnnJ/1Vd+j+bt9dF1fy3vL
-r7YuiP/uo+1n1Fuxqt/j/Ddvtccqz3fOOeecc84555xzzjnnnHPOOednffS7
-M+c9HtN72+eu+lj3dY/vbg+t+sTyOO/xuD3aP/X2J73H5ZxzzjnnnHPOOeec
-c84555xzXtNj+hXZ9+KsnFXfrznv8Vb7zKL3vrAua62vuu5ZjLaTaut8+LM8
-bs/2D61223tczjnnnHPOOeecc84555xzzjnnNT2mX7FqXcrocTnv8dm/M5OV
-E/PPeu99cZeP1j/zT+szen1bMdqP7T4//Dt9d/uvMk7gnHPOOeecc84555xz
-zjnnnHO+1qt9p+b871j9///Kyo/7VVu/tOr8nLrfW1Gtf+O8x0fbf5XnPuec
-c84555xzzjnnnHPOOeec87O+6ns05594TN/V/mNUW5e4en3a6P0+Wn4Wu/sl
-zld6637szd/KxznnnHPOOeecc84555xzzjnn/Lt893dqznd4TP/0vugtf3c9
-V52f1etJPj0u5xU8bvc+77L9e/OvWlfJOeecc84555xzzjnnnHPOOef8rMf0
-K2b/P2i9+Ufrw3kFb7XnLGL7XrW+cfe6x+y+zmJ1f8L5SY/bvc+71n02+xwc
-LYdzzjnnnHPOOeecc84555xzzvlZX/3/O4v5Rr9Tt/JxftJn1x9+Ws7udVmj
-6692r2Optj6Hf6fH7dn2PHo/ZsflnHPOOeecc84555xzzjnnnHP+Dp/9rh3L
-tS6LP9F3t+csVq1TGv29rfpk+2f9RpYvK7/3PFdbt8O/23vb7ar+J+53epzA
-Oeecc84555xzzjnnnHPOOef8d1+9/iErJ6tHDM7v9NXrglrHz+7LVqxal9WK
-Xf3MXeef8zs8brf6gdb9WGU8wDnnnHPOOeecc84555xzzjnn/KzvXpfC+Z2+
-al1Q3N7lMUb//4l31TPrN3rPp3VZ/E6P27PPwdb9V+U5zjnnnHPOOeecc845
-55xzzjnn/Fm++zt1Vg7nn/iq/+9e3O/u+/E/8X87kfTI
- "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"",
- RowBox[{"-", "1"}],
- RowBox[{"-", "\[ImaginaryI]"}], "\[ImaginaryI]", "1"}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0.5, 1., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0.5, 0., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #5}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0.5, 1., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle ->
- RGBColor[0.33333333333333337`, 0.6666666666666667, 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0.5, 1., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0.5, 1., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0.5, 1., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle ->
- RGBColor[0., 0.6666666666666667, 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 1.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0.5, 0., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle ->
- RGBColor[0.33333333333333337`, 0., 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0.5, 0., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0.5, 0., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0.5, 0., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3, ",", #4, ",", #5}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{3.6641613068615923`*^9, 3.664161466270402*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "5"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
- ",", "40", ",", "0.1"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555613597739*^9}, {3.6595559120050316`*^9,
- 3.659555925976593*^9}, {3.6595559620470605`*^9, 3.659555962328335*^9}, {
- 3.6595560196305175`*^9, 3.659556025819849*^9}, 3.6641616469815435`*^9}],
-
-Cell[BoxData[
- GraphicsBox[RasterBox[CompressedData["
-1:eJzs/UmypcrWKNwdmVryt+T1QU2Qmcpqi2pSLbp1mvDVbhNkT/EjLsnEExyY
-sMY0C4vNgOU4jpN4stf+P/7v/8//2//j//rPP//8v/4vf//975//3/+f/x3/
-87/++f/Ff/7P/znnnHPOeVb/s/Ap/vO/Il9+7t//f3qj8hOlH21XF9Px/Bse
-F+/z/e3+DetDtP1XPSq34/KJy+tXvLX+9JVzdJ/hnHPOOeecc84555xzznN6
-tnFGzjnnnHOe05exnd+y//4Zf37f4/TX/meRz/V63up9847W6cbn613eWm95
-5K31Ldp+uf75djTnnHPOOeecc84555xzXuPZxvs455xzznlOn6L2PfPPIp0p
-/hOmu95umV69R/vlxz79FJ3f48gyn+o675tHFJXfVz2qP1dvzznnnHPOOeec
-c84555zn9GzjfZxzzjnn/Fn/s/Ap+t8/92O7vjQfbPLlfuo9Oi5+7MfnpXye
-e89XNj++LuL6+k2f1/eW26j5n5xzzjnnnHPOOeecc855Zs82Dsg555xzzp/1
-ZdT+vcJWj/YXp7Ofnzjf++nmme/0Fp9+Wpd7afvldv++3qPj7Zu39jveV255
-2succ84555xzzjnnnHPO+RnPNg7IOeecc86f9T8Ln2Lc+2cp/f2I19e+30b7
-5X0+/RSd9+Xn//2875dDVG/f7vP66bivvm9wzjnnnHPOOeecc84552/0bOOA
-nHPOOef8WZ8iep+clqf1x+ls0z32bfxZpL/eP3/K+877Ot1/w3r1Fo/KZ/n/
-Ot7u0f2hdXvOOeecc84555xzzjnn/NuebRyQc84555x/w5dx1d+D26bful8+
-1qPzGG2/n258Hp/1uB7ubxdfD+/wef26fLK0ZznnnHPOOeecc84555zzzJ5t
-/I5zzjnnnL/L/yx8iva/f1ea37X/frvdbj8f/wb5i731uPixTz9F7ZTl59vP
-19PeVj/f4vP66fj6rlPOOeecc84555xzzjnn/Dc927ge55xzzjn/TZ+i9j32
-zyKdKcrvw+sYNd+MH/v+dv9+zNcR1btsvg3zrzjnnHPOOeecc84555zz855t
-PI5zzjnnnPP/9inOvt9G8Wex/RT55jV91f+pimzzr2q/Pyo6vjxeOi9Z2q2c
-c84555xzzjnnnHPO+Rs927gb55xzzjnn/+1T1L7HLuPs35uL01n7n0V+1ut5
-5L3z8Zbpxuflan/XvKx5/XG5zpGl3co555xzzjnnnHPOOeecv9Gzjbtxzjnn
-nHNe48s4O08men+Ot1/v989iv+v1vNWnn1rbO8t0/73cj/Mf19dcnqd9yjnn
-nHPOOeecc84555x/ybONr3HOOeecc36nT7H//rzdrnfe17R+2k+Uzp+Frz/H
-l/9H8evzsuLI0g7lnHPOOeecc84555xzzn/Bs42Lcc4555xznsH/LHyK9r+7
-V9p+8uXntm4e1/K4l9tt2z378SvzsuJyyNIO5ZxzzjnnnHPOOeecc85/wbON
-f3HOOeecc/5Gn2L9vv1nsf0U8ft5afvldv8WPMrfdfOmnvLl8UXH/7V5WXE+
-s7Q3R3lUzsfXY339H3W9c84555xzzjnnnHPOOX+Xt/5e/Hp5Si/buBXnnHPO
-Oec8nu8xee/7fBRRO+Krvr/dvzd5fF7Peum8Z2/Pro9v+lzv+V3vd1T9Oc5/
-/flqzT/nnHPOOeecc84555zzsf53ubX/+T8rX68ve7ZxKM4555xzzvl1vr8c
-e9QeidJvbdc85fvb/TvY68v52OP9PtWejWK9fbb63+r3tNPz9EtwzjnnnHPO
-Oeecc875V/3v8qh+3XrP1u/NOeecc845z+9TrNs10fZRe+cpXx/Hfnx/Xlbp
-/K73m60eZqv/dfWtfB5L6WTpx+Ccc84555xzzjnnnPNnfV6/H+X+7eN0Wn2b
-z2z925xzzjnnnPPv+RTr9sifxfZTZJmvlWde1tn2abb6wPeivr7l6vfgnHPO
-Oeecc84555zz+721P/bPwqco/f7yenmOKJ/T8rQ+W78055xzzjnnnO8vxxG1
-p1q9bm/j52WV8tPaPl3nJ9v5/TWvq29n5/Xl6Q/hnHPOOeecc84555zzq/2e
-ftrtflvTydZfzTnnnHPOOeetPkVt+6jV97f7t+Db/B17ezt0HTnPS3SetuWc
-Lf+j6+fk5+pPnn4PzjnnnHPOOeecc845z+at/bd/Fj7FuO/RytZfzTnnnHPO
-OedPedT+inx/u39Xvo715+aI2pXrGHW8x/moL4ervfe4srR/o/yU6lXt9q37
-5ZxzzjnnnHPOOeecc17n6/i73XX925xzzjnnnHP+VY8iak+VPtca63Zfa/5b
-24O/5tNPZ8v5uP6U6kX5e7Cj7Vvb9aX0Oeecc84555xzzjnnPLvX9eef/3sW
-63RG9QNnGwfhnHPOOeec3+9THLdbyt8HNTr9tvZatL//2exndLndHdFx8bE+
-/VTbD9Cb/nK7Ur9Be79Elv4TzjnnnHPOOeecc845j/zvctSP+p+Vr9fX+rx+
-2n+031H9rtnGgzjnnHPOOef1voxyO2L/c1M7Id4+S7vsac8Z0Xy5LL4tv6g+
-R/Xwam89rtb8t6a//7kove36dfrZriPOOeecc84555xzzjlf+9/lqH/1Pytf
-r4+i3B8b7ffceM0c2caVOOecc84551tvbY+U2gVZ2ll3+X5E60ufuztG5zPL
-fK1Wr6/nrdfL2OurXO/q6mlrOvmuO84555xzzjnnnHPOOW/zef1+1PeLrrf/
-+/+2HzjybONEnHPOOeec83o/jmi7+PO52k1Xt7Nay6e9PNvyc33UHf8Uo8sh
-y7yseo/a0dNPtfWwtZ1+nM/68i/dN3Jdv5xzzjnnnHPOOeecc37eo37RPwuf
-Ik4n2r7Vs40rcc4555xzzrc+RW27IPp8lM7bfHn80fp5u7NeNy9u/PcYt0Zv
-+n3lv47z5dxbn6f1pfLP4fWR7brjnHPOOeecc84555zzr/q0fLx+3m4tfz9X
-3z/POeecc845z+PR+/x6u3Vka9e0eXRcV/u8fpmveo/OV2u7bIq6duD4eYBR
-vOM8jjq/0fkYfR77/95itH1pv5xzzjnnnHPOOeecc/5Nn9cvY+t/P9/a37tN
-J9u4Euecc84553zU/I1s7Z2t980nudrn9evyrPWovTaqHTdFW7uyPp931duz
-7eKx3lo/S1F7PeY7X23555xzzjnnnHPOOeec87f4vH4/7uuP5ZxzzjnnnOfx
-6P1/uX5uX5TmXeRqB83Hc7x+e9znPNpvvfeer9p0lunVnt/6443yOaq9GeW/
-z6+uD+Pqz5j8b9O/63y1HRfnnHPOOeecc84555y/xef1+1Huj43SyTauxDnn
-nHPOOa/31vf/5eeytHeiiNaP8nn9Ml/nPTovkffOk1mX5/H258vhqeOKvK/+
-v93n9aXr6bh86utP6Xzt5yfffYZzzjnnnHPOOeecc/673jfOMi9P6UXbZxs/
-4pxzzjnnnNd7FKXts7R3jj06zlEe52daXq7v9fX+tu2yUe210nG1lXPpuPrn
-ZUXpHB9X/Xk83u/V9eopn9eXzldr/Wm9/0TpcM4555xzzjnnnHPO+bt8Xr+O
-9fZ/l8/383POOeecc87z+BRn3/+jdKP0R3lfflo9zs+0vFxf71E5j/Kr60P0
-+VL6y3THlUPrfu+pP+/11vO+3q7uurj/vsE555xzzjnnnHPOOedjfV6/H74X
-i3POOeeccz571C5YLy/bH9naQa3to8jj4z3rreXfel5az/ty/+fbm1E663y2
-5v9c+bTmcx2t9Se/99WH+nS+fT/hnHPOOeecc84555z/js/rl1Hvf9Pd9pdm
-GyfinHPOOeecX+f7y3F7Ybl+bqdE27em05r+/v7+bU6/lE6tR+XcWj5Xt9dK
-5TCmHbo+nvbyPPbz9bbvuH7N5/X752UbufpPOOecc84555xzzjnnfJxPy9P6
-1n74bONEnHPOOeec8/t9irPthSjdY6/f7zq9Ujvoz8KjfNTPF6rNZ7TfUd57
-ftfHVSqf9fGOLs+z3lo+x/lvrbdv93n9cX9DXG6t9xPOOeecc84555xzzjl/
-l8/rl9ud77fnnHPOOeecf8+nONu+WC8v02v17X6P81mK2vTr9xuVQzY/Pp7R
-6d83/yry43reet5/zef1deW5vS767jOcc84555xzzjnnnHP+Xv+7XN9/nm2c
-iHPOOeecc36dR+2Fq32dj978rD8/RXS8y/2U21OldJb5i7+v6SlvPe9RORwf
-/zof/wb5e87HHu9XfV6/Ls/oemlNP0s/Ceecc84555xzzjnnnD/l2caJOOec
-c8455/f7FPvtiGi7/1n5uHlE+5/ftm9K+e/b73XHm82j4z32dbr/Bvt72luP
-69d8Xj+V23E9ydOPwTnnnHPOOeecc875Ge/rJ499Wj5e358+v8Pj8zWtnz73
-Z1F/5vXZxn0455xzzjnnPPIprmof8b++v92/n/Xj+hbVq7f7vP6acsvWf8I5
-55xzzjnnnHPO+V8f1a/V27+9jr504nSzlPPb/anzyznnnHPOOedP+RT77aZo
-u/9Z+Xo787XWvvx/G7Xlv7+/f8Pyf8r7yuHXfF4/lVvfdco555xzzjnnnHPO
-+T0+ul96HX8W20+x/ty2fzLK/3r7KP3Io/yX8pnlfL3Np+VpfbbxFM4555xz
-zjmPfIq2dtD288c+r1+3i9fe2v79qk8/1bZD3+KlerifTmt9y+bz+lI9n37K
-1u/BOeecc84555xzzr/t0/JyfX06Ub/fn4XP+2lNZ3+5HPv5L6VT//cQ97ff
-xj399u/3/eM/X38455xzzjnn/GrfX55jTDs9Tn9/+236UTvr1/z4PLb3n2Tx
-1nZ0dPzv8tb+pXz9IZxzzjnnnHPOOef83f53OeqX+8/K1+u30Zb+vLz8XMlr
-8/MWn9evj3ddnvoP/7uc6vvPOeecc8455/wtPkXUPjqO8d+nFLW/fs2nn+7p
-97jf9+tbVO/yeGu9Xa5/vn+Dc84555xzzjnnnH/J5/X70f/3C6J0jvfLj31e
-vyzPOHLVt/Me1bds4yacc84555xz3urH7ev/rHy9Pgp/r/Aq39+u1O8Rbf8W
-b62HeTy67qbI0u/BOeecc84555xzzr/k8/opWvuNo/T/LLafYvu5UjrHn+OR
-f7W/sXX8Its4C+ecc84555xHPkVt+7q1HRTt79jX+/M9WiX/pyqyzLNq9db6
-c7W390dl6d/gnHPOOeecc84559/2v8v1/belfuNluvHv2/ZtH++Pt3lr/382
-bx1fyDbOcu76+s5xcc4555xzzu/3KfbbX9vtjrev72f4NV/+v42oPJfp/vuY
-H9ef6Lie8nn9+riy9GNwzjnnnHPOOeec81/2ef0Urf26fxY+Rfv3/L+r3+97
-3tdvn6feRvUt2zhI77jJOrLlk3POOeecc57fp2htl+1//n9W6/PNj8rm0Xlp
-7T+52o/rT1Qv7vfR9ZxzzjnnnHPOOeec8zu8tV/3z8KnaJ+Xtb8++hwf7aXz
-laV+RvnPNt4x6jrKlk/OOeecc875e721nX68/fpz6yi391v7E37N97f793Lv
-O+9X+zafpe1z9WNwzjnnnHPOOeecc/7fPq+fIurXjeLPYvsp1p+7qj9tm06U
-n9Z+7ON8vt3jcm7d/mqflqf12cY7+sZBrqu3nHPOOeeccx75/nJp+952XDmi
-/Ubto1/z/e3+Heat7dZRXjreXP1mnHPOOeecc84555zf4639pevt1lGbfmv/
-cGn7yafP9eW//rj60rnfj8vhuXq4jmzjGq31pzWdbMfLOeecc845/x1vbSdG
-6ewvxx7t99d8f7t/h/nY/pDz53e5/vl+MM4555xzzjnnnHP+LV/H3+1a++Xi
-9Pa3j+Ns/qNo7e897tedt9s/rrd6fJzPeJ7rIts4RZT/1nreWv8555xzzjnn
-/C3e195fL4/b71t8fTz78db+hzif2frr+voxyt/7fZxOXG7ZjpdzzjnnnHPO
-Oec8i4/th8nmrVGffqncJl+W33u9tV/6au+rt6O8Pj9Xe5TPq/v/s42ncM45
-55xzznk2j9pT6+VSu3tUO+5qj45rrK/3E+0/9lL+c/XL1ed/1Pk6zk8cY/ob
-Oeecc84555xzzt/u8/opWvt/RvmfxX6j7fq/376uH+ns7wnGXpv/t/tT9acU
-d19fV/fnHx/n/f3t2cY7OOecc8455/wtvr88x7q92dp/8lQ7Mcp/lM8+j8qt
-1e/vf3t7+/o4spU/55xzzjnnnHPOeT6flqf1f/+P+tnWn6vtt+nvf4vyU9rv
-/vFG+Yujtjzvzefz87Ii7+t/HuXXXRc5+j+f72/P1j/MOeecc84557/mU5zt
-57naW/N57NvjP/Y4/TH9Btv9ZqsnT9XDUf0JUfqcc84555xzzjnn2bzUvzH5
-8nOxR/ttS2ebjz+LfK4/V9+fc5zP6Pi3+WzNz1Me5T+rt52XVh93Ha3jrv7M
-/ePJU9+y9QNzzjnnnHPOOT/2bO3K/e3a+5GO/br+NH7s+8vrqD2/efpXOeec
-c84555xzzlu9tb+udftov9H2pXTWcdz/01o+0efz9FuO8v3ttuW0H1fN14r2
-O8rr60Nr/e/rn4zyl6eeXF0OnHPOOeecc87f5VGM7ZeIPMpHnL+z/WN8rE9R
-2y93vD3nnHPOOeecc855fj/uJ1kv18b475u6uv8n2m90XFH6o443my+Pb1uv
-lp//96SvI6qH7fXz7HVxdX17i2fr1+Wcc84555xz/qxPcbb9u79d1A8RfS7O
-z+jj3d9f/fGOao9H+ctWH1rLc9R+Oeecc84555xzzsf6vH4ZW6/rDynPRxqV
-/2z9Ra35PE73un65bL78P4rx3691nJ/4/K7jLf2xo/wt/bqcc84555xzzr/h
-pfZ7a5ztX8rWTr+n32a9XdzvN/r81vZnRulH2x+nzznnnHPOOeecc17vff0S
-kc/rp/38WaQ/r2/th4nSz9Yf+BbfX54jqj+1EZ33UV6Xi7N/vyCO9edH1fOr
-y62uPMvfP9Z6nUae7brgnHPOOeec87d7a7uvtP0z/Vfr/LaXw9XR1+7e5m/U
-+crm6+NcR23/ZF8/RrT/9vLP0n/LOeecc84555zz93pd/1Xt91xtP/9nsf16
-u+322foz+T0eRVR/jutVXP+Xn4/Wl6P2OmrtVxzl+9vVHu+ovyNpXhbnnHPO
-Oeec1/oUo9qzWfqdnvZ74r529Ghfl9tT/RKl62KdzvH28ef3PV+95Zxzzjnn
-nHPO+fd8Wp7W1/WHzBFt/2fh836y9X/yd3kUUX0rfe5stNb/Vq/LRZ5+3VrP
-Vq8455xzzjnn/GqfYr9/Zrvd8fbv8Wn5eP28XZs/FaPz/3w7/djr62ep/h/v
-d7tdrZf6VbJdF5xzzjnnnHPOOf91n9cvtzvfv5GtX5Qf+zLO/37ufjrX1ZOn
-onS9HEeWftfrPFs955xzzjnnnPOrfX95jiz9Qsft2Sj/5/243ObP7bc3x0cp
-P2f72e7xef3T/QBRzsaWM+ecc84555xzzvlTPq9fRuTz+im9v/9v++Wy9XP+
-mk+Rq7495++KbP2i5mVxzjnnnHPOea239pMsP/d8O/o4n9t8j/V5fW/7sbf8
-a/MzOv1r+/GuK//IR/UTRun3pRMfb5brjnPOOeecc84559/zv8vbfpL15/bX
-zxGlk61f9Kt+fB7z1LfWfrbSdm3+lhh1vKPLbfz3mLlvcM4555xzzt/uyyi3
-m7L58XHFxznG5/Xrcqv11nZlFDnSOVt/njtfY+pn/X5H9Sfcc1ycc84555xz
-zjnn13m2/tKv+v7yHKPO77R8vL6Un1Hems+SZ4+nyvl+z3Z9cc4555xzznnk
-fxY+xX82y1M7NEpnmd7d/TnbfIz1eX1bO708Dyfy3nLez0/9cZXqQ22/WSmf
-belcfX7vrz+j6kPvdZ2l35VzzjnnnHPOOedv8Xn9fvh7hVk8Kv/1dutoO+/X
-+XH+5+Vlfnu9db93R+v5ir0t/fye7brjnHPOOeec81ZfRpbv4YnzN8bn9WPa
-9bXznbb5KZ2X4/Z1/7ys1vz31qtc5z1/vTouz3i/ufpvOeecc84555xz/kZv
-7T/8s9h+Xp+t//PXfBn9/ZZ9Hte3dX5GeXRcrfXz6hidn7uv99J2V3m264tz
-zjnnnHPOI19GfTv3mX6hON+1ftzPMC8/3d4vna+29nJUPvcfVyk/V533Z30b
-dfUwinK/R2v94ZxzzjnnnHPOOW/1v8tx/8Z6+2z9om/3KdrO4/bzy6j/Xv31
-9ld7lJ9WH1vOpfKM4r55jMf5H+fRcV7l2a5HzjnnnHPOOY/8uH39n5Wv18/R
-2g8TeZTPdbq17b/j7cZ/f1HOfoC4fNbHFXlf/YnTbzsvrcf1Fp/Xl8p5iiz9
-rpxzzjnnnHPOOf81n9evY719tv7Pt/ufhU9Rmhe3PV9j+xvX+fg3yF/Jo3zU
-H2/kY/td68vn+Lys833f7/lGcdV94zg/Uf7qPdt1yjnnnHPOOeej/Dii7eLP
-t7XX5vTW7fp1Oq3t31Z/e/9A6/H2+Xa/0XG19iO93UfVk2V6WfppOeecc845
-55xz/iX/u3xdf9eveVRuy/Xr8/Kf1fbbz0Xrp/RK+63dvjX/relcXd+i443y
-v/+5+fOl9ev01/7U9TXFM/eZuNxqt892XXPOOeecc8555Muo/x6q46ht78fp
-H+fj7PdpX7ff3v6KdfrR+eo73vrjutrv6Xd6i8/rS+VTun6z9NNyzjnnnHPO
-OefX+bx+GZFny//bfVvOf7er78fgfb6M8f2Tb/Fz5baNq+8/0/pleltvLYdo
-T6PrW5b7zDLK/eecc84555xzns33l+PoayeW0m+d5xPlq7/dl62foZT/5eej
-9eu4b/5Vaz776s/bvXR+o/B3DznnnHPOOeecZ/R5/TLqfVS/VrT9n4VvP5+r
-PPP5tLxcv/Vs/Z/P9ru2lmf0+Tz9llf7XeW/9uP7Q+v9bX2c8fWSs9zi48py
-X8p2vXPOOeecc855q09R2z5t9f3tSvNMovxt02893mz9D73lWds+3U837h+4
-16OonYf2Fp/Xl/phpp+y9HtwzjnnnHPOOef/7ef6H6Ko70+I8rneflS/UGm/
-3/T4vK4lWz/n1f2lkbfWK/7Xrz4vx15fz/ePp3y/WvtT5fbUdTHKs90fOOec
-c8455/wtPkVbu3iK3/0e73+CKJXzMt32foNR3tfPGR/PO3xeX+ofLqWTq5+W
-c84555xzzvm7fF6/jMi36UTt2T8Lj9Lt//7tp7yvX+u93nq82fobn+q3jOo/
-/+v3nJdR9734fjitr7uPbX1UeUY5e/a6uP++xDnnnHPOOee8Ltray1Pc187N
-5sflfL7cnvK+43qLz+vr+pnz9MdyzjnnnHPOOX+jz+uniNrdfxY+xfrz75tP
-Nda35VxXbuV0svryOL/79wpb63+0Pf/r+9v9uyrv+uuott6O7Vesvy5a/ery
-v+u6uPu+lO2+wTnnnHPOOefZfIqz/YeldKblUn9Rtv6K0f0eV/UbXO3HxxXV
-h2y+jWz9GJxzzjnnnHPOf8On5Wl9b3/OOp2S7+cnTvdr/mdRntvtstWTq+pP
-Nt9fXof5V1f5/nbx/eQ4nauv6/p8tuZ/bHlu85+zn/+8Z7ufcM4555xzzvlb
-fIox7bVtutF+s/VLjO7fqO1Py+bH9WR7frN5X/7z9btyzjnnnHPOOf+GT8vT
-+tZ+mz8Ln9OL0t9fH32OryNL/YnOe7Z+xd5+yOVxmn/V6/8E0doPXEp/v962
-X1/L/ZXuV9H2rR4d/6jy36Z/z3V0/30s2/2Ec84555xzzrP52H68KLbbZ+uv
-yNFP8vz8qz6P6sP93lv+WfpXOeecc84555z/pj/bn8OPyzNK57n6s45s/Y2l
-/E7rp+OLyp/3+fRTW706f76O60Mpnv/906vPy9PXXZbnF+ecc84555z/mk+x
-bk+N7QfY7m//87/XD9N7vpbpXt9f0Xd+n/J5fV3+8/TDc84555xzzjnn/+1R
-/8CfhU/xn81ytJ91HG/3ne/THuvP1ZNpuXRenu1v3JZbVG95n7eWf11/YxRZ
-fj/0Oh91XqL0n7ruprj7OcU555xzzjnnfKwvo7X9u411+y5bv8fVvr9dvv6K
-/fxGx3G9l8ozS78655xzzjnnnHNe41E/zJ+FT/GfzXbrqE2/lM60fplefFzr
-7Y/zH6UT5edqn9fXHu+1vs3ns/2B2/xE55f/9XP9rutorbft9fyt3lr+o87v
-P0E8dT0uj+++5xTnnHPOOeec87G+jHI/VZROtn6SbN5b/td6nI9rvTU/efrV
-Oeecc84555xn9nn9crttOz3afqxv81nXP7D+fGv+5+2W+8/jx+Vw3Xk5Ls/r
-6ufT/X61+YzK59d8VP/n/nal+r/dnv/1q8/78v857rlO658jozzbOAXnnHPO
-Oeec/5ovo769XNufE+03Wz/M2HZ93C5efv6u/o34fF/lpfqWqz+fc84555xz
-zvlb/O9y1B7/z8rX6/v9eL/z8pTfuu23sV8Opc89P4+i19uOt9Wvrp/b/V7d
-jxfVK/7Xp5/W56u1n6o1/f38PX99ZffW+/nYenLd9Rulv5+/0v3wvGcbj+Cc
-c84555xzfuxTjOkvnZdL7fGv+v52d/WHbM9rn8f7zdJvzznnnHPOOef8nT4t
-L9dHvv7cvN2+t6a/9b//b9v7x/0q2/y0phNtv1x/tjyf8tbz2H7ex9bPOZ7q
-l4vqw9t9f7va76Fax3a7unSyXBff81H3vb778DY/o6/TqBzufp5mG1/gnHPO
-Oeeccz7Wp6htDy6j/3u6svnxccbHe63H5V7rreedc84555xzzjmv8ai9+Wfh
-U/xns13d9vPycv/biNLpaxdvt4vyE+33aj8+nt7yHOXriMqzPf+19bO1PvT2
-py339/7fZ9w/vlI51F8v/F3eej32PRei/NTfN6J0RvWTX+3Zxgs455xzzjnn
-nD/rU7S2N6flt/VTlcphfVxjPd7fWkafr2s9Oq75+EaXT+TvKjfOOeecc845
-f4+v4+9223Z3a/pROpHXteuj/M77jdJpzc9bfH+7fzs9Kvf68zFFbT0Z3Q+2
-Pq5s56v3/PZd18/PF+L3+n59KN3v+++fUfp96UTHVZ//qz1b/z/nnHPOOeec
-83f5qH6/rP1X63z2+Tq9aD+xR+U/xbX9CVE+8/czHOe//rg455xzzjnn/Dd9
-Xr+Mrf/9fNS+jtKZt1vuf+tXtxOj/I/qD8nm+9vF5R9573k/Wz/7znuUjzzn
-pbXe1h1vnvk//E1ef/+fovY6jdKpu1/15+cpz9ZfyjnnnHPOOef8294X288/
-2w+2/ny5f+Ns//ZxOvoHWr2vX/r+88I555xzzjnn9/i8fhmRz+un9P7+396+
-Xufn7e3H4+2vK+erPcrPsbcfb93nx53Hu8qn7bqL0+E8s9dev6V45nk3Rf1x
-HR/v+HnFnHPOOeecc875nT5Fbbv42X7IKLbHUwr9AGN8bD8q55xzzjnnnOf3
-Uvt68uXnIt9+/s8i/flz2dqDv+at5yXaPvL97db1Zx1R/auvt6PyX3dc5Xzu
-p1u6jjh/s8/Rep+J0m+9Hu/qf17nc5Kz9yvOOeecc8455/xLvozxv2capT/J
-fn9dlL/W/vZtOtnK/y2+jLvPI+ecc84555zf73+XS+3cKIxT/7rX1Z/a+Vrb
-aN1v5L39AJx/z+dovY76rq/4eovytc7/qHwe36+2+Wk93tbtOeecc84555zz
-X/a+9vt6u1J/yPpzc2Tpx362f+a6ctjPd/m8rLcvpZ9lnIVzzjnnnHPO/zmM
-7fq/n4/av9vts7Xr3+JT1J6vu9qhtfuta3dfF8f5zzYfhvOxXlv/o/v58X1+
-m87Y+1t0vyg/r0rl03q8ffex+nxme+5wzjnnnHPOOeeZPYrWfozadEv5ae1n
-eLv/cxjb9a3ltp+P+nGM2v4xzjnnnHPOOb/b69q55XHtbO30t/j+8hxZ6kmv
-fy2i+h/58v8ovajc8szz4W/ybX3r7QerfV6UniNt9434ObTv8/q7yrm13KL8
-Z3secc4555xzzjn/hve1W/P5tDytby2HUdHaHzgqP63n9ylf5683//v7i/u7
-vlLPOeecc84559/343bienn6fH17k+/Fdb+/s59+nI8x/pa4uhyu8+i6W64v
-ne/tfqbPtV7XdfvJMk8pj4/tjzq/3/3l/vvbmPvY6PvSffPfpqg9rmzPKc45
-55xzzjnnOb0UWfqZn/Z74vn+pVY/169Y/3cDj/Mzx3F+2s9ntnrIOeecc845
-5/s+r19ut20fZeuXyOZRua23W0fteRnrpeifn3BcDuej1A9QW//7zteveVye
-62i9Lkr1ZL3f4/O+zVdff1F9fa6r5+V5mK3pn8vPOtrP+93Po1F+zX2pfx5s
-tucX55xzzjnnnPN7fFR/Qlbfj2h9q5f2W54X1BvX9mP0Htfz39Nel842stVb
-zjnnnHPOOR/lURxv3/990fzYl3H2+1iidM77n0X+1+u3Xjre/fyX62kp+vZb
-78fpx+eV/411eUb1J0qn7jpa76++3rbm/1z/an/6d11f1z6PstXPqBxb60m9
-Z3secc4555xzzjkf66P6H572abmu37LVS3H190HNMbaf86n+kHn9Xf3DpfI5
-m87Y8uecc84555zz53xantZn68fI5lPUluexb9PtS6fe/yyOa72+3seWW305
-3JOf8x7l8/h4+Xp93fUSp1N7vo7ryfn0W+tta/rrdNf3gbbjjdKJ8ld/3yjt
-71c823ONc84555xzznmfL+N93xd0fFzxcdZ6b7ld26/Sm8/67fv6c9ZxvvzX
-60vlPNrX+322/5lzzjnnnHPOr/dpebm+Pp1s/R539ascl2cUZ3+fqLSf8jy6
-aL+Rt6Y/qt+jLup/D24dWdvv0XHyJ31ef67+n09/irb7+fnj7Ut/VH5+x7M9
-7zjnnHPOOeec9/lxP9V/Vj7HM/3DUX7Oe2t/Y+Sj+i2X+Wrtn8zy+6HXna8+
-r89n63kcW87ZrjvOOeecc84zePt78rR8vL6cDt+PbP0bz/afbMst2v4tvr/d
-6PlX7df7Oj+Rtx5v73FFcdX12NefwN/irfeZZ+vDvL7uucFbPdtzkHPOOeec
-c875sS/j/Pfhv7t/qbXffuuj+vdK+z3bP3lXP+SY/tVs3l5PasuhtZ+Nc845
-55zzX/BR7d/S+/a0PO0/2j7yse2jPN7abs3W7zG2/yQ6/m05RNu31qunPDqu
-nP0D23xGfq4c5hhdf66+rpfHGddPznl+z/Z85JxzzjnnnHPe58f9Uf9Z+RxX
-9SP15SfO5zLduL/u2Lfpj+q3L/UHtvVb1h9Xaz4jP87nqH7XPD62fErncRtZ
-xms455xzzjk/Px+gvj3Y1246n5/S9uv0x7ab8pzHqPyz9W+M8qh8WuvnW/zq
-foDjdKLrq/66i3zU/eSefpLr/Ph4W8ufc36nZ3s+cs4555xzzjnv81J/1LRc
-6meOfLmf2n657X6j7frSqfer+/GO810/LtB6HnuPa51OX37i8/Q1b+33Xn7u
-+f5bzjnnnHPOW3xaLrU7ou2PPc97fuSj2stPebb+ilEeHW9UP7/qrf1CY+tt
-6/VViuf7c66un6O87z6c577K+S97tucp55xzzjnnnPM+n2JMv/o23d78rPd7
-vF20fa/P8VT/53J9uT+zrzxjP9tvX8rHN31eX7pe+sotz3gN55xzzjn/TW99
-v21tBx23j7K9/9d7X7sgz3nP1o/RWm6t9e3XfPn/OrZ+Tz/AvH55Put9VPk8
-3S939/08yh/n/H7P9pzlnHPOOeecc97nU5ztb19vt98/to39/qIof9v8HO93
-m06U/6v7Oceer7jc932dv/b+zMhL56X2/L7dx57HPOMvnHPOOeec13jr+/Co
-9t3bva89lf/8ZuvH+DUfVZ5v6Zc4Pp48/Tlvv973lznnV3q25y/nnHPOOeec
-8z7fXx7Xf9Xb7xTF2X6kbP2l6/yVom/84jnfP1/R8X7Pj6+7+XN15cY555xz
-znlOb22HRu2a1nbrt/258zstT+uf7a+oz2dUr37N97drb6ePvU7j/Jz1q8vz
-6Xp+9/V+7Nnuk5x/27ONI3DOOeecc845v8dH9VMt0+vvXz1OP9rfNp1svszv
-Vf1p1/lvjrPM60vlcPz5PONrnHPOOeecn/HWduV6u3Ws06973659P9/uty+f
-97c7Jhl1HtfpP9X/EOUnOi+/5vvbReezvZzf6XOMKuex9bn+/na199W3p+57
-nP+mZxsX4JxzzjnnnHOe06do6y/afn4Z3++P7S3nZbpZ+kW//z1ax+cluh62
-5325/vlxNM4555xz/g3ve/8c9f68Tb+1vVPK/7R8V7um9f1/rMdxVT25q99g
-/3jytNOv9uX/22i9rpfbPd8PcK1vy62v/M/fr3r7bd7xvLj6/sY5/+/I1s/P
-Oeecc8455zynT1HbrxV9fr2+1C+XrX/1rn7a5eef6xft6x+OjustPq+vG6/J
-0+/KOeecc86/5K3thevehyMf1a5s3e9T3tf+bS//s/Xnrv6Byaf9/1lsv17/
-Xl/+H0X5e5/qtv8Vry/PvvO1TeepfrOr/Z5+PM75Gc/Wz88555xzzjnn/Fkv
-9WtdO45Q//t9b/GonKPj3U/36f7S2NvO+1t8Xl83/pJt/I5zzjnnnL/dW9tx
-+8vrGPV7GduobdfUpV9+D29N5x4f1x65u/60tnei8n+L72/X286N0+FtXqqH
-6+1H3U96r4vouLI8R6Ly6XuOcM7PeLb+f84555xzzjnnz/r+8hyt/ULTcqm/
-OspPtv7bUX5c/q3leb8f939G9Se/l/p1s/Svcs4555zz3/RR7b572i/Re/h6
-f9d/z1Ip/+v8jPX69khvOzFLPXnKo3L4pxDH2z/f7v6615Z/a/1s3W9fOnH9
-uvu5MPa+V3+/4pyff75zzjnnnHPOOef/7Vf3e2fr1322Pzkqr/Xnn+9H3ff4
-fOfy+vGLaHvOOeecc86v8/b32+Mot79a24ml/By3E/K2B1vzf+zXtV8iv7q9
-f0/5R+2x+Hwt0326Xcz7vL7+t/Y7tW7fmp+s3nZcnPMrPFs/P+ecc84555zz
-b/hxlLbr/73It3tdeebvL23b/imf16+PN1s/Kuecc845/7LH76u125faEet0
-nmonRu2gKJ+l7feP8/523P52ve2p+vowqvzvKp/W+r9M9+n2L3/Kj+tVqf7U
-R5bnwrP3Gc75FZ6t355zzjnnnHPO+Td8itp+p9b0n+pPztmfn8eP68O2fjzl
-o+ot55xzzjnnLT4tT+tb2wXR9tnag2/3KO5p38X5WG+XI/9RPN8+5d/w1npb
-d13cd18tHW/tc6Rvv3E+OOf3ebb3HM4555xzzjnn3/DWfrPWfuCr95vNo+Pd
-//zT/ahx/nL5vL63X5RzzjnnnPPzHr+v1qaTrT3I/0bUvlsv77ez+uN4v3F9
-O84P521+db9NqZ+k9f68zn9rfqJ8HOev9/5w9vvEOOd3erb3E84555xzzjnn
-3/Yojrcvfb48r2ZUv99THpXPqH68Ud53Hq/2OHKNx3HOOeec8297e7tm7dna
-d9l8iiznvbVdfE08Pz+H/4JH1+H5fo+x1/v5+3Dkddd77e+FxZ/nnL/Ps70v
-cc4555xzzjnn/+2t/XXr7Ur9Y639hNm8tRzu8Tgfd3tUbsv1z4/XcM4555zz
-b3tre2S9XGrXfNX3l+c4e15ay/84P61+dYzKZ33+z7Vba6P0+SzzlH7Nt+el
-dH3V3idL0XYf6K3n/eXTWg59+eScZ/Zs71ecc84555xzzvkZn6Ktvz36/Hb7
-t/j+dtf3xx6fl2053+N5xuP6vL5+Rtuvt6sbV4q2jz1XuXHOOeecZ/PSe9cc
-2dpZ2dp3JZ+W69576/1c++u6GFMP3+7n21N97e7z+Smls8xHXJ9L11Ht9mPL
-pxTXtSv307+6vtXvN2f/Cef8Cs/2fsU555xzzjnnnJ/xKfrGQb7z/VrRcV3t
-x+clKv9Rnm3cbdQ8q3m51F99z/W1zX/peqzNP+ecc875V7wt6t+vfs33l3u9
-FNd9H06Uztn2Qt17+Db66nPe70ke5a39DL39FbX7Pa5XcbrrfJbq56jjqq0/
-vemcbXdzzvlTnu39inPOOeecc845z+BTtPVLbz3q/3zKRx1Xn2/Lt8+zjbtF
-9WZb/tnq+T3XxVvOI+ecc8756HlZ/b/X8Gu+v1yalzIvj26/tLazxr5XR+/P
-59sdx+nX1/O+9PkUZ9ubo9Lpbfe15nNaX7rvlfbblk628845/2XP9t7FOeec
-c84555xn9tK4QG1/dWs//9W+v12+eVmt5T/Wt/nJVj+zXhfT8rqejBnfyTcO
-yznnnH/H699/lvG735M5qr3wdo+Od10upXbEcXnWvx+OapeNLYf299tl/uLy
-GX2+znrfez6/x+f15667eu9r12crN845r/ds72mcc84555xzzvkv+P7yc/O1
-1vnYj+fnZU2RZfyR93lf/XyqPnDOOeeZvf59sjWduuj/fqEoP335z+Ot7z/Z
-3tP62jXn62c2H1sOvdfd+L+feM9xjSoHzjnn/Bue7f2Nc84555xzzjn/ZW8d
-F7h3vtZ35mVlO+9v9yj60imlW18Ps4zPcs4551f4qPkYfduPeq+rf98r5T/L
-eYnyl+39rfd972vzr6Lj6n1fHTPvaJ3v9nlZo+ebRfm5+vra3+/V9x/OOed8
-rGd7r+Occ84555xzznm9Pz1+sdxu9LysOL42L+st+RxVD/e3668nucZhOeec
-8yt8+xxsfa+ItuvbPo+3zre5x+vPVzYvHe+03DsvKJuPLp+vzcsaWw7n22tR
-PjjnnPPMnu19j3POOeecc84559f5Ms7+3Zko3W36pXxEKWSZfxUdV7Zxpd75
-UWfLs2/+VeTbci+dl1zj5pxzzvkVXv987Hsut76nZfN5/fp9I/v5erpdcPZ9
-7+2+Ps4p6toF6xhXb/c9On/1xzuq/oxqX/T68ji/ch/jnHP+Vc/2Hsg555xz
-zjnnnPP7PYreeT7L7cbNyxp7vNv9Zhsnemoc6thbf599nY/n5ulxzjnnX/Lo
-+fub87Lq3+uW6++bN/L0e35t/rO9r47y1vJpbUccp9t6PW699Xq/el7WqPrW
-6ve0OzjnnPOxnq0fmHPOOeecc845v9OnuGo8Ikp///Px9y9F6TxVbr3jHevj
-Pd7u/PhItvGgt/vo6265v6e/14Jzzjkf663vUaPmER2nU//etZ+/9vfV4/0+
-5fP60e8hT82HaT3v2d4zn3qP3V/u9XU+4nlWrX51+/Tb7/PZ7j+cc85/zbP1
-h3POOeecc8455zU+RW1/8jL65wV9xfeP839W69v750v9/7XRmv6ocZlR4zh9
-46H15TTqfC3TOzuuUR+j7gOjzu9yfZ7rlHPO+Re89bk/yuvfA/ven8976/vV
-KL/rfWAdV7eDWo/3LT62fVd6jx1fz0f51eXZVw/ztaOXx99bHzjnnPOxnq1f
-nXPOOeecc845/2/fX17H2d/f56P9nnh+fOTtfny9bM9n7/VVu9+r7ye9433Z
-ri/OOee5vPV5Wkp/mW77c7z1Odh6vK35HOtReY7y8/XhnvbRfByl+vAWrzve
-beSqn9f5U+XfWg8neeZ+G+Xn6vsG55xzfuzZ+ts555xzzjnnnH/bp6gdv1hG
-7e/X5xmnu9r7yiEu3zF+dVyX/+PyLB3v8+M1o7x3vKy2vkXptI6zjL0vxec3
-y/XOOec8p1/z/jDH2Ofydr/3zqu57n1mzHtvnnlZUT6vnp8zyqP8L4+jNG9m
-Hc+/Jz/lo96fl5/rr7dROk/7/vFe3f7lnHPOjz1b/zznnHPOOeec82/76HGl
-d/v2OHP6vL5tHOG66OufX8dXynn8OGbv9RgdT2n9XePCd40ncs45f7cfPwfr
-n++tz9NRz7vj4422O//8HZ3/5ed733PGvafVvv+0to+i9J86L33vS63tnXW6
-+eZBPev19bD1vTdK59vvw9nafZxzzn/Ns/XPc84555xzzjn/hu8vl/qHt9sv
-P5elX3dUP/ZTPq/vHS8YOz64jdHjd+/uz5/Xl8q/b7zsqfLZHledz3HPeNN7
-70ucc87rfFouvT+0vve2vhc9+x6ef17Q/nbj571EcfZ8ZSvP1vpz7Ov9PT2v
-6ate/17a1y47f98Y66P6EzjnnPNnPVu/Peecc84555zzb/gyyv3JpXTeMX4X
-H/+1HuWn3dvmsWyj7zzWH1fruNI99eqp836dH5fb+fTHjreW6k85P2+7/3DO
-Ob/WR81fyvZ+nu09/5r5WlH0z2+JvLXcnp1ntf780/OL+D1e/5486v7Q+p7f
-m86vtMs455x/w7O9z3POOeecc845/4aPnXeRbTxufRzR8fV6Kcb3248d94mP
-66p5WTnna23zf3y8vPV+0loPn64PnHPOM3r9e0gp/fX22d7P3+7LOP89rut0
-jrfbRut7S998s/b6yd/to+pVb3ttnZ+x9XkbY/sN8rRrOOec8/+ObO/VnHPO
-Oeecc86/7ct4fv7VcX7ifI/x1vyc95zzmuLyOT6u9f62+Y/2e89xjSqH3/FR
-5/Hqev5sPeGcc97r+1H/PMr2Xs2P/dx8jzlGvW/U7Zd/07f3mavfY5fp1be/
-xrRP64/3OD+cc875NzzbezLnnHPOOeec83f5FFeNi63X987jOh4fifY7ykvx
-/Pyrq+dlHW/fft7PHu/T9d+8rDt8Xt9bf56tD5xzzu/y/diuz/Ye/uz7f1x+
-2c5v23nvjSzzf/jbvLZdMPb987r36sj75pVla19wzjnnfZ7tfZ5zzjnnnHPO
-+bt8f3kd5b/LEG1fSr92/s/V87L6juu8tx7vcTmMm091Np1SPpfHE49rPDUP
-rdWvrp+/6e2/73/t+co3Hs05H/+8uzr91uc4/2+vf9/I9r79lI+ub9Ny3Xv+
-uPeBayPb+097O2VMe6p1/s/8+azzoKJ0RrW/zrWvt3HtvKzz9erq/HDOOeeZ
-Pdt7Puecc84555zzd/kUZ+fD7G9X6lff5qM1P2PTac1/q0flXl/OT81HOk4n
-Lv9lvsf9XvbYcZNR83mi44rKhx/71ddve73NNT+B89/2abk0zh5t3/q8qLv/
-zDH2eVR/n+R/Pdv79tPv+ZPXXS/nn+Ojnte919Go+PV5KaPuV+fuq6PmZZXz
-M+p477n/c8455/xOz/aezznnnHPOOef82z5qnsz+du3zJVrzebzf63xUuY2d
-lxWX85h5cfXnseRj5g1u83NcPr3zgrbHyUf6U+NinPPn5l/N0fe8q09/Gdd9
-f0vtfLNjb0//HX7+PfDXfIqz89aufn8e9X57fLzn3weuLuco3V/zUjlPXqo/
-009n60OUTm97ap3/1uMtbcc555zz+zzb+z/nnHPOOeec82/7FGfnyYz9/fft
-dnXp5P3+q1HjBVef3+jzx74+zuvnv0XHO2p8hz/r98xjzDZvgfNf8Prne+99
-flo+N88qz31vuT7LeTzvo+7nX/UpWucfnp0f2HrdPXUe95d752/H5frMfEXe
-58qZc8455/We7f2fc84555xzzjmv8Smu+j334/TPe7Tfq+dlXT2e1VoO0eeP
-fX084+ZlHXtrfuLtfR9CRp/Xl85j33VRXx84z++l66g16r8P5O7nbyn9df6j
-fL/L48hVD1ufp9vI9n479n2s/nmX7b30nvf28++Zo96rSzHqetk/rmz3H845
-55zz73m29gLnnHPOOeecc/7fPsVV4yxjx1OifG/Tz+b72/X/nccx40HR9vm9
-dzyxNp3S53mbt14X++lu99M7T4/zTD4t182beuq6vn5e1rRsPsN+ZKm32d5j
-73lPfu/75+h5TW3z9M6/f9bdN+a4px1kvhbnnHPOeTbP1o7gnHPOOeecc/5t
-753P0zb/KvJ5fWk8hf/1/e3+LZ6vdbSOu52bJ5PXjftn9vN/D6s1Hc7f4NNy
-7f2+bfv7r+u+5875+0Zf/rP5vL72fSBLvc32Pnz1e/VbfH+70d+bN66er/2e
-+Waj7j+j5q1xzjnnnPNWz9aO4JxzzjnnnHP+bZ9izLjbNt1llMdTonxmG7fK
-Nl42Sds4fZzOr3vf9RKVN7/aW8dbj9PPN5+Bf9NHPZdb63lpv5Pfe1+tf38Y
-9Z7z1ft86f3h7no+aj7MPe/D9fUw2/vh2PfM9vf5sfOv+vd7z7ysOO6+jo7z
-xznnnHPOI8/WHuGcc84555xz/g0fO89n/bkovTlqvz8hSifbuFU2j877FFfN
-o/uK19bPvuur9Xrhxz6vL42P994Ps8zb4bl9Wq67zzx9vbRuf9886tLz66r8
-93n9+8lxPq/zbPe3bO/D63IZPc/n7f5PV1zdLoj97nlZfe/bvkeLc8455zyb
-Z2uncM4555xzzjn/tk9x1bhA63ywKP1s41Zv8avP1zd8Ww7H/t7vUfmGn59H
-V0qH8yPvm+dw3f121H6ffR7V31dbn2v7+cv6fHnu/jnG68/X0++303LpOvqq
-j7qOeucBrtNp9VHthafaU6N9XT5R/jjnnHPO+d/I1j/POeecc8455/wbvoz+
-8dwprhpnifabbTwrm+9v116erfXn17xUPuZr5fK+88V5nx/Xt/h5Oq3vnX81
-6r7U+9xpK4fz39/YOw/k2veWVv/e/TDne6/3yf3teud51qdzl6/r4W/Py1pH
-nvcxzjnnnPNsnq39wjnnnHPOOef8G76/PG58Kko/Wz5/zUeV//7+nh+Pu9uP
-yy1KJ96Oj/R5/dnx5SzzfPg1vh/X1cNo+6vnQY2axzX2PaR9Htfkpet61PMx
-57yU6++fY66v8++BvfVq/3jyvI/dNc+qdp5SKZ3s/lT7ZYqczzXvn5xzzjnn
-tZ6t355zzjnnnHPOOf9vP47SduPHU/ixl85j2/gOj7zuejFeNsZHjUvmG1fl
-13rv/bC2vo2aZ9Wa/7f4frm0fw9Y1ufp+rhG+fF+2++f0X6vur7G1p/ous3z
-3jV6ntV+1JdDXfrv9bP35yid3uv9qefXfn6yvb9xzjnnnOfxbO1lzjnnnHPO
-Oee/6cuoHXeIPh+ls90+23jZ231/u955RHyS2vp/fF7icuf7Xqq3tfOxSuuz
-zCPi9/q0XLoPjLrf8mOf4qp5cdmey30+6n57/nvnrj7v2c7jqHl9vzqfaozX
-1+fW97G+97f75zeu82deFuecc855nWdr/3LOOeecc845/02fom18Yfv5ZfSP
-d/Oxfnzez59HvvS264X3+by+dv5htnlBvM/3o77+9I6/T+vNv7rXpzg7P/bp
-eVln5wcee/v98+w8xr7zmP989b1HlSLP+8lbve89tvU8nZ9P1XofqKtX3jM5
-55xzzs96tnYu55xzzjnnnPPf9P3lOVrHE8+OF2Qbj3u7Tz+NOY/x9r/iY8dt
-66+L3/R5/ZjzuI1s845+3euuo/rvs2p7HuX5O258rE+RZX7Xen/78fy8rFHl
-n+29qLf+LNPN937C//qo50Lfdb1NZ2y9yvaexjnnnHOe37O1TznnnHPOOeec
-/6bvL7dvP8VV4+x8rE8/tc6jWKabbzzuHo/r/37E9Z7v+7n5b/XnK8t8JH7s
-rc+jUfMxOK+53987jyvvvKyn57N5b/mGr8/jqHl3UfpX57+vPcU555xzzkd5
-tnYl55xzzjnnnPPf9Clqx0GO09mm25o+H+vL/6PwfVlnfdT3M/Aan9dP5dp6
-f+MZvP28XzW/i/M7ffQ8k+Xn2+ejXp3/1vlmffPT+Lu8/v4/ap7tMr3+78s6
-Pq7IW59r2d67OOecc87f69nag5xzzjnnnHPOeY1P0TaOMEX//Bbe5/90xfnz
-+Gteul6iMB7X4/P6tvmE28g1T+l7fnxd1J/fUePynNd4tvrWNz8kvr5qr9Or
-519xXvMe1XtdXDtPuPX9JNt7FOecc87573i29ibnnHPOOeecc17jU7SNv09R
-O48i2t//rDzfPKi3eOv5jbbb31++8b6nPCrn4/HE+Prhf+N4vPPs91Twe/z8
-/STb85E/61Pkqufn/15w3ftVf5hnxe98zzmuz+PeB8a8J3DOOeec87d7tnYr
-55xzzjnnnHNe4/vLc7SNg9SPp2Sb1/R2X/6/jvj8LtPNNz74rPeWZ+32fL2+
-dt5CtnkX3/RtuUfnpfW+lO05yO/xZfS/P2T1KEalMzai52A56s5vf/TdZ87/
-PcconWi7dT7qnl/t79t3vz8fH+f68+2/l9G2n9L2nHPOOef81zxbO5dzzjnn
-nHPOOa/xZfT/nanWdPg9fny+tuev9fzypY8Zl+SlephtPsZbvW5cvlzPW+8/
-/NveN394VL3Ncx879nl97/yosZGtfPI9dyY/O5+wNp3W97en8jlqXu5xfvLU
-E84555xz/qxna/9yzjnnnHPOOedX+BRnv08gSifbvKa3e+v57Z2n8Ss+dvwx
-ul5+zbfRd//hfX7dfTvb84vf463PkZz3yW0+R/m5ee/l6E3nt+bFcc4555xz
-zt/o2dq/nHPOOeecc875FT5F7e/1t6aTbV7TV/34vGzP0366+eZN3eOl8llH
-tD3vnZ+Qa15Tfm8tZ/OseMtzobYejnof6M3PMt3r51mNnX9V/1wePe/r7P2n
-r15xzjnnnHPO+daztZc555xzzjnnnPMrvHecdB3Z5in9mreeX9+jdexReU7R
-9j1FX/XSfIkozv89Jn7k9fftbM8jPtanOFt/rnl/eP5+Puo5O/Z5sc1/3fN6
-jnvqSe/f0dseJ+ecc8455/x3PVs7mnPOOeecc845v9NL44BXjTPyPt/frvfv
-SW3T+U3flk9feX7V5/W18wdyzV96i9eXf7bnCB/ro5/Ltd9DdfVzqtfX+b96
-nvPx/f/6vze6v7/z+R97XOPKwfxnzjnnnHPOv+/Z2t2cc84555xzznkGn+Ls
-eG6Ufrb5Tm/30nlcfr78PVHr7b/qY+c/fM/76km0XbZ5UPl8Wu6dJ5PtOcL/
-Rut9pvd5PXnb9y99fx51X3m23sda77frfLfPy4rSubp+3uXr49pfv80v55xz
-zjnnPJ9na6dzzjnnnHPOOecZ/Hic7j8rn6NtfsY2fd7n+9vV/32hp+dHPe3G
-hds8um9MkW2+Uy6vvx6zPRd4ny+j//7c+rz+Ne89L9de1+efv0/Nzyzl/9n7
-5DryPB8555xzzjnnW8/WTuecc84555xzzt/oU5ydh3Cc7v/8r/3P8dbx2f3l
-deSZN3W3j63nX/Vs852yeen6muPq+RV8rO8vr2P89/jxv37Pe8uo+bqt6Wy9
-b572Nj9Pl9tZ77seOeecc8455xk8W7uec84555xzzjl/o09xdhwt2/jv231/
-u97vifq6n41tff62Z5sHlc3r729ROtnu81/1ZdTeJ+PrYp1OtufC2/2e83v1
-/Ns4P2sf9dx/9nq5zlvnp3HOOeecc87v92z9AJxzzjnnnHPO+Ze8dR7CervS
-/Jls48Vv8eh87S+vI9t8qvHeV2+jcnu7z+tL4/tT5Jofdf/3t7TeD7Pdt3/N
-95djb50Hku3+/xb/J4i+85t//lXkT81nu6ecr/dluZS+34xzzjnnnHN+hWfr
-B+Ccc84555xzzn/Bpzg7HpptHPktvr+d79Eqjdv+5vdyzOuf/l6UnH6+nmS7
-P7/d95fHzRPOdj//qu9vd/Y5tY5x98mrnptXl+fV190Ud9+fza/mnHPOOec8
-j2frN+Ccc84555xzzn/Bpxjz/Qbb7bONL7/Fe8/jMt2n51Odd+O5f2P0df12
-P45yvcp2H367T3H2+3Oy3Yd5n/8TxNj5tOt8PPc8Mi+rxlvPY57nL+ecc845
-51/ybP0JnHPOOeecc8453/oUxt+f8emnq74PJJv31cPtdm/33vrwTa8vn2z3
-z7f7Mvrn60ae7X77az72fWC7XV+9iv3u5+DY53h9+Zy7TreR5b7dtz3nnHPO
-Oef8jGfrZ+Ccc84555xzzvnWW7//IfJs49Fv8avPy1s8Kocp3j3OO2pc+7u+
-H9v12e6f2Xz0/M/19tnun/yvL//fxqj5Nst8lL7/sD6dpzzbvLjSczA6rrvv
-2335zPZc5pxzzjnn/BuerV+Cc84555xzzjnn532K2vH69bJ5XHU+/XT394c8
-5X3j+2/xef25eWhv9+g4t+c9230vm5+bDzNHtvse7/NR95NSOst85HuOtHrr
-9dX7HK/d7/7yOu6el7XNT1/+Oeecc84551d4tv4KzjnnnHPOOeec3+/LuG88
-9O2+v12+ce1R3lp/Stvl8vPfU/R2HzVvgS+jtl5lu7/xPu+rD9vt+u63X/Wo
-HEc9x+Pnwjo/velcdd9urW/H22d7LnPOOeecc/4Nz9ZfwTnnnHPOOeec8+u8
-bt7FHK3p/Jov/5/jq/O4SsdVO98gp8/ra+ehZZlP1ef19TbbfSzb/fPc/da8
-rOzeWk/2l+donf/J27x0325Nv+98baN2flTre9qo+8zxfjjnnHPOOednPFv/
-Buecc8455/x3/Knx3+X++7+/Ilt5cn7F9ThqflG2cfZnvy9lez/aTzffeHfJ
-vzYva5Jc86navfa4st2XnvJl9M/TyHZf4n0+/XT2vEfb82Pvm0c0+u9CltO/
-9760jmzPU84555xzzvl/R7Z+D84555xzzvn3fIqz48ut+x097tY6jlM7P6E1
-nWznl3/b95drw/yEtf9TFc+Pg0fed1zR+mweRbx9tvlXx/NGyseV7f6TzZfh
-/vZWn3669n1vnY989/O3e997S/m+WJf+dvtR9bN1v2Pf6zjnnHPOOedXeLb+
-Df43Wn+vqrcdt+43eKo9yDnnnHP+az5F3+9r949TPP0ee9W8rKfG766Zp1E+
-j1enz/mI+9vko+vz23153OX7yX66Xx8fv9+vfn5d7dnuA9n8+PzW1wee05f/
-z9H6Hh5tt5+PfPdh3ud9/eHZ6kme5ynnnHPOOed869n6SfjfuLo/sLUf4zh9
-9Ypzzjnn/OrxweXn+t/3WvO5/vzo3wcfNU4a5bPV69KPYtQ4y9n0S/m9bt6X
-eQL8f0ff/a3+ev+qt96Hs/mo8/6Ul8o/y/yrY68/rq96VA7Hft28a36PTz+1
-XkfLdP39wa/4Nc/fbdw9r+/tz1nOOeecc85/2bP1n7zdW/sHWttTo/ud2tI/
-37+R7XxxzjnnnPeN902x7T8/O64XpTPKR73f9h7XcrvaeUTrON8OavW+9+T6
-9PvqQ1xube2Oefmu8a/j4zK/66t+Lu6bF5rN/6mK58fBj/P7Fo8j1/yr+ThK
-10W2+8Bd95Oz5caf9emns9fF/vp1ZLl/8lE+el5WWz3M9lzjnHPOOeecZ/Bs
-/Spv8Sn6+gei6P/9rLHjiaX8lscfI7+n/OP8145PZatvnHPOOc/jyzg7Th2n
-M6af//z7z9XzeY7Lub79Eh3vcX6iz183XnPPe++ocquvV6Xtp/W98xhH1ROe
-0/eX2yPbvILR48LH8fw4+CRj5ktc7e3zV3POy4ri+78f11oO2a73X/On+y35
-N7z2vj26Ho65Pz/1vOOcc84555xn8Gz9Km/xZYxvJ47yUj7bPDr+/N/PMGq/
-2eohv8enuGpe36jx32zlxjnnb/FlnJ0fFaVT/x5eyk9t+qV81j5Hou3r8lmb
-n/ryHD1uwo+8vd5edb1E24+a3+L9/12+jO/Puxj7vLjL5zjOf+tz4byPan89
-5b92v8p2PfK/Pv3U+j65H63vCfw3/Xx7qu95dN17Neecc8455/x3PFt/SzY/
-7n/Ylme2fpJ75nFF9a2+f+bZ43W98GNv7YeMfHQ//zqylRvnI66vabnUj8r5
-E/f5afmu+QCt+Sl57Tjv/n62+Rrto56/PLdPy6X6uf+58d/nVvv+xnP6/vL7
-2+l19TyKLOPp2capW/OZf37sW3wZ5f6lbNfdV335/xz3zrNq3Z7/lsf1qvY9
-s/d+VXvfztae4pxzzjnnnOfxbP0z2Xx/eR33jcfl7O+tr1dR+n39dVvva0ef
-z39fu9u4z1v6gY+3L0X5/lBK/2z/T7Z5DtnqA+/zZfSPa4+al5KtfHhO319e
-x/ve685dv9vINR7NeZ/f+x5Ybo94L3rW95ffP9+jd77xMt3rx9P7nsvXeet7
-5lP+1fvG/vIcteXA+3x/u/g5+NTzlPN6r7+fXP3+kO15xznnnHPOOc/j2fpn
-svn+8nf7b0eN6z3bD1zKX/28l9r99h6veQV3XL/nfy97dP9nW32L63PtcbWW
-z9h+XfX87b6Ms/fhVr//+wSi9EeNK2U7v7/mU9TWn7e8v7UeV13c93vlnOf3
-9veryUvthWz3ya/6/nLJ3zs/ZH+758bNj/M56r2x3t/y/Mp2HY26vlrnE/Jj
-39+ufJ2O6pdo3S/nR/XqnvbRNj/ZnlOcc84555zzr/p7+3+e8mz9MKX+mbZx
-urieLPc3epzu+npem//W9Ov6x8rbZ6vnb/cosl6ny+3G9V89dR9b7sfzJbsv
-Y3x/aV/93+537Hyq7X5HX7/qfy6f4mz/fLbnQms6o+YZjh4f4fxLPi3XXXfb
-7bUX7vHjuO7952rvO951uuZlrdePvT+s9/fe6z06vmzXxVt8f7vy+97Zdke0
-X87Pe+k5dFU/c7y/2vxke35xzjnnnHPO3+vG0/fKo9yflq1/9ep+ldZ6cvU4
-3bP5icp3TnddnmPGa7b7zXYdZb1+p+VSfX6L7x9f+zzS/f2N62e7ej7YMr3v
-P6eempd1z3lsva/G29fWh7vGPc++P4yah8aXkeW9bux1sfXW++eo/R6nzzmv
-8VHzqFvT58e+v/ye+SfrfO9HlvH6q/3peZtzZKvnX63/2Xx/u/br4p72Pudn
-vL6/aPS82dr8cM4555xzzvnV3tp+z9YvZJxuL677PaZR43et4w5Zxkd6y+Hs
-9q3jqtmuL/3D+/ndvx63UXt9HsdTz53e/H//uZPtelmvn8r/bddR6/0zSqfV
-x47T9T83PS+OfV0upfN7dX2+el59331gXDsi13sa59/wUb+nkO3+/HbfX87X
-HrnrvajN87VTrvLW9wH1+V1e9163jvp2GecZfPRz55n3q6eeO5xzzjnnnHMe
-xXb7t/QjvX1eVpSf/c9n7S+N0x81vvA1Hzt++jvj7+/qjz1/HY2aj3Hs9fls
-Hd853v7q9H/nuvjK867V9+Ou96ja+TD1113r9dKan1/zKXLV//b3qDa/rv7n
-HGfhnJ9/vrTPc/7196vW+RjZ2i91+b66/2G7vzEex93Xnfr5Lt/frv/vQa/T
-4fwNXvs+cPXvi43dnnPOOeecc86f8t75P3Nk61/6xjjdervrf79pf/9RvmI3
-z+oKj8rxfP/hWzwqh6fma139PSclr71vf/t6jJ9r63IYdX7f4qPKIdv10vr8
-ah1H/opPy733jf31+eq5970av64d8e3nC+e8/r3re88L30e0n9+r2jX7Mer5
-FcdV14v69i7f36633vamw/lIb28XH6dfm058H77qvaI1Hc4555xzzjl/1u8f
-B8zZT7WNe/t/onjfOF3peHONL3zVt+cl23U36nuxnpqXtb/d09fpNp1fGzfv
-6yf83vWS7fvl9rdrvy5az2/rfWP5uefr89U+avwuWz3Pdr1cPY/3nnGKPPWW
-c57fW9vddfGd3zfJ1i/x7f6K6+v/OtSfe7zvPlP/frufj6fn23C+9LPP31G/
-z9KXn1H3ec4555xzzjl/i9/VT1UeV326/6q2vTm2nzM+L8vPn22/b9Md4/F+
-s4wL8P/27XnMNh6RbT7JXd+LVXu+jr01fV7yabm3//PXfi9+f7v266LvuXn+
-/jZFtnqYxUfdP7P5/vGM+365/f3E++3z97cXOOe89n347c+dt7zXXf2+d+z5
-n1/qwz3e2x5vbd9xfp/Xtg/ar+u6VM/2R23TMf+Kc84555xzzmv8/vG79XKp
-HffVeSBRObT6Xd+TEOUnV7897/V1ZBvviPLrOv0bpfxnq2/ZfVT/f455JnOM
-vS7anxdtPvr5tY0s9e0rPi1P67M9R556D1ymN2p8cB352wWcc36P178nZ3vu
-ZHvfq2sfRZHnPfCq9vJXz+/V3tcuXqf79Lwa/pteXz/r7p/9/QnR9q35MZ+K
-c84555xzzu/0/P2oOfo5r/7+hDz9ltF+c9UTfrW3jlO/fdzcdcrPXBfLeH6+
-cRRjr4v2+rn2vvTf8j7DSz4tP3293PMcOX+9LPNbfn+u2+82stUTzjm/+v1t
-vX229k6298C3tZuuqj9vP1+j/Nz3S0eRZR4O/6q3tgtK6V/13Im2P/ZR90/O
-Oeecc84552M9T39pq7/l7xuu09uPu79vJ8955G/0bb16etwhy3V67O3XaZR+
-rvrASz4tl+7nb5l/Eh1Xn3uf4Uuflp++XkZdR/9Uxfeul3WM+v2Ip4/r7vp/
-vP358976fuXvwPJf8trI9px6dt5+KVrfG7efr9vPHHc/v94+/6qU3754fh4O
-f4PPcVw/o/eP8/W8tP36vtG6fWv+j/PLOeecc8455/xdnq//s7b/P2q3ZhuP
-q+sHeN943Oj+jWW6pXEons1b+6O+PS+r/XqMIsv55WPd8+sovZLnOY/8Tt/W
-h7fM+z33PRLPX0dP3a+e+nuy0f5Gjb+Pmgd19d+dGZX+1e24ZXrlcjvOv3lo
-/Aq///n11HyhUnpvjW/PvyrlO9u8HX61t/bzrNMZVQ9HPcdLvs6/v+vHOeec
-c8455/w6z9Zvmb//813j2tfNi3tq/sCo4+J3+nXX49jvM4mvo+Xn437LUjp3
-l/Nx/n/tufBeHzvutj3vX31+8d/wabk0HvSb35eV5/4z6n2v9fw+e77O19u6
-fH1tv1H69fkZ216rf4+N8uN7j3n7c22ObPO1xHGMuv88/fzi7/DW52lrvbp6
-fvLY+efb4z3ennPOOeecc845v9Pz9UNe5bnH6c6Pj5wdx3z7uNvY8ZHW7ePz
-sk4nOt5f82/My7rufvvs+Et9/n2PxLOe7fl17NfdJ6/+fqRS/l0XGb1U3+bI
-eh2drYeRZ/s9hbHP6/b7zNrvmT+TrT34VR9V/vXtqb7to+dEtvljnndZfR3m
-ZT0bY593pXh+XtBXfWw/3vn+rtZ0os9H6RxvzznnnHPOOeec8zPe1w8QpZ+v
-fzJLf2bfeFzr+b3uuKJ8XtPfOL4/7er5WqXt1tJaDmPnFbzXc46bn78fXj2f
-ZNT9fFQ/c7S/aP2ovzMV5fMrPi333jfGPr/GzSdZx9XzD3vrz7S8/zxaf77+
-Oor8ru9Dy1bPr/LW9+FRf7dovVyqP6X9XfXcGfW+1zv+uPx8+7zNUrqcf8HH
-jsvPn29rf5XzM+r5FW2//Nzzz5esLjLH8/ORsvpV7+G98xLPttda93e8Peec
-c84555xzzt/rUcTbjxkHyddvedV41nr53HyP7fZPzbMaNf+qb7w423V013Xa
-X55fnccydtxnXu69TrONg0f5HzsvZdR9vv66GHXf+8bfV60vn2efX9sYNe9l
-1HyksfXh/udF77yXY69PP9d1cf98rbrr6Gxcd72Per7sf37cuG1ffjjn+f38
-/LFR9/NSft7u4s7IM9/prLe+J4z+Xr79fGa7j3HOOeecc84555y/3ef1tb9P
-l2W+1qh49u+4Xe9ZxrX5/vrSeP0U2a/H3vmEZ+dvPDXvMXLj2mc8jrPzBqN0
-RvnY51d9/kd/r93ZcdvIXRd3+rw+6/Ml8rvma731Oup174Gc83d7e5iX9Qvx
-1Hyq+vxxzjnnnHPOOeeccz7etzH692Sfjbv790rH7fcZeY/HkWU84up5U32e
-7TzyezyOLM+va77HyXXBe3xef/d8sLPx1HOnb7/ZzjvnnP+ai5yRrZ5wzjnn
-nHPOOeecc/5GfyqylQPnmf3qyHa8nJ/xUZHtuDi/06+ObMfLOec8p4t7Itt5
-55xzzjnnnHPOOef8Tt/GNd8/cH888/cO4vX+Hg3v91Lc/fcdtjH6e/bGeLbz
-yO/xUjz//Or9e2quCz7ee7/P6nefO337zXbeOef811zkjGz1hHPOOeecc845
-55zzZRyPo93398Ki8eW6+V39EaUfjZcdj6O1l/M98778HZxc/vT49fjrsXdc
-u3a/rddj3/V79Th7tnqYzUtR+/e/Suk/f72U8leb/7HPr236k7gu3uT5ny+R
-j37uHMf7rqNe389PtnrLOefj2vdTes8818TV8ezztDayXUecc84555xzzjnn
-X/UoStufHTeJ0snj98z3OF/Ord9Dkm3eSN+4Ybbr6Prr9Gx5XvO9cM9767yX
-q6/TUfeNsddj+31jfVzLz529j0Vef12Muu+dm0fxfP2P8pfz+bWN1vlgo59T
-63yOrQ/3Py9ar4uSt6Y/Lee4Luq99f5wzfyr2rjuen/LPH/zJzn/qs/re+eL
-jrqfl/LzDRdXx1Pzsu5+/o7qf+h7j812H+Occ84555xzzvkve18/SZT+vF2u
-fsX+fsjWftp7xrV7y3+9v/b+56vmcUXpj/LW47q636+1HIwX/PWrr8d755+M
-P67W9Fvz3zr/pG8eQlTu9fn/tetiedz9942xz68on/c/v+6qP7XHOWpeX+tx
-jf7epK/5NeP1c5y7jtZx/3Pn6nnCfe9d9ce7/7ntfjh/s/fOk5zW9853ilIc
-1c8w+ri4yBxZ5lll9Wl59Ht463tdKT9t+azdTylfnHPOOeecc845z+/z+lz9
-hHnH3a6e73FX//NV4/i94/vrfI4eJ6093r7t4/MyZjzxe/5UfRv7/R7X3W+v
-Lp/e+lybz9bj5c9eR/fMp73uPjm2/kf7dV28y0vna46s11HfceW9b9zzfVzt
-95kx73ut5yVbe/CrPq8/V/5ROqPmD2z3e9f3oLa2j9bH5XmXyee45r1I1MY1
-3+O6jbb3cN7qY/vxpujv72pN5zgf23RK+eacc84555xzzvlZn9fn6lccPx6X
-bRxqma+z49rXnd9R5TaqnEcdF//G9Th2fDy+ju4eN+/z1vz/2nPhvT52fG17
-3r/6/OK/4bXjYs8+X+LIfh1le98b9fdn7xoHX+c/2v6e95O37Pf8/N6n/+7z
-Oj+tz+Vjn9dnuQ/zK3yOq+/Dpfos2uLZectxtD6/+Dt81PyxUfPEWn1UezY6
-3uPtOeecc84555zzO31en6sfstxOv3rcbdT4zrPj2ted99b+wLHfF8Gzeeu4
-6jXjBeX85B43j+L588vvuV48v2p8Xv/0eeR3elT/7hqP7n++lNLPfh09db/q
-Lbd1/keN952rP+V0rs5/q49K/+p23P524/6Oc+t+Oc/w/Bp1vxrdnnprPFWe
-z37/ZJ55R/xen5ZL74FROvfMfx7XTlzn/+r3K84555xzzjnnv+zz+hz9lvX+
-lvG4UtT2k4ztH5jXP30e+Rt9W69yjCM8f50ee/t1WttfynN77f38an92Xlae
-eSY8t2e5XkZdR6X49vUyR+/zva0c7jqu++r/8fbnz3vr+1Xr9py/38uR7TlV
-d53OkfX7mvajfn/rz931/Hqq/O86j60xpr3Av+7raJ3HNaqej/oe12j71vyX
-0uWcc84555xz/iaf1+fo/9zm8+l+y3X+vj6u3TYexL/q0XWR7Xsz7uqXdp3y
-mvHo9Xl5+vm1jmy/Xz+2/3le/3Q94XWe5Xp52/dRLI+nNK5Vul6iyFNPOOf8
-rNe9L83bZ2vvZHsPfFu7aVo/uv68/XyN8tb2UXS8pe05H+mt7YJS+st0xz13
-ou2PPdu4A+ecc84555zz9frR/Z+t7dls/Zlv6bc8bu+Pqydt44P8nT5HtvGI
-dT5K+fy163RsPx4/N75w3zjOU+M7pf3kHI+L4vn69hVfn8dsz5Gn3gP39xeX
-W8mjdMd4nE/OOX+H178nZ3vuZHvfe9f3DN/1XJvjq+f32XlcV7cvOD/j9fXz
-qfldrfnpux4555xzzjnnnPf5vP5Xx+mi/L/t+xOeGr+r7U/gGXx7HrONL0Se
-s9949HVaPl/H7noc7Wf7S599rm3ryVvmMY76Hq1R7wP8r4+6f2bzZX7L9fDb
-49fPtRc453zf699nsj1f3v5ed8/3Yr1tXtbz7//R8Wabf/V0e3xarm3fcX6f
-17cT7mp3TMul52+UTuv9inPOOeecc85/0+f1Z/upatt3Ofs5t/GN3zO9f/zO
-9/Zk8G25Z7vuWr21n/Y3xyNa+8fm5Rz19rw/NZ/nLf728bvW89s7vjMtP12f
-r/ZR433Z6nm266V3PLHW7xkHmdc/XW855/m9td1ditr73tt9e+R/4+n3tyhy
-tYOefn7Nof7c4333mfb+q2vrOefnfFruff62totb+3vvaadwzjnnnHPO+Vt8
-Xr/uXzpu982RrT/zXP9Vub35lvHryEfNWzjOt/Husb4t57f/ndC+67S+vj3d
-D3x3/1u0/bevx9JzqXzf++o8k1HlkO16GTUva/25HPV5nJ+9b+x/7jvXxXK7
-777vRfsb5d9+vnDO69+7vve8eKpdk23eyxT3tGvWMbq/K97P6OtFfXuXTzGm
-3uabt8N/0c/3H67X16XTOu4wqt1xXXuHc84555xzzsd6FNvtvz5+vdzu+XG6
-dX4mydKuP/bRv8+VZTziOh/bz1Cf/ts9W7/u6PO4vo5ay2G93ehxt9b+vdHz
-atrSn/fz9eviK8+7Pt+me62Pmg/ZWv/P5+fXfH+7p+t/+3vUte9v4+7/kz/9
-fsU5P3/9er/q83+CyNZ+KeX36v6H/bi6v2v+3F3Xnfr5Lp+i7T3/ueuI8+vu
-z+X3gb77T+v1Mmp7zjnnnHPOOb/ff+37dt4yTpdz/G7ef21/am27vvW85PRx
-5bbe3jjIsS//nyPn9dv++7bTdvv1sDaeeu7M62vz/yvPnWzXyxTr8n/ndVR/
-/7yqv7rXzz43PS+Offqp9vy+5XvkIu+7D4xrRyzz8fR7Guff8N52k/era335
-/xzZ3qOe/l6sfc/aThnvb/k9x3X+pshWb7N53f15HVf373E+1nP/ftbZ/lvO
-Oeecc845v86N3+0dd39/2lP9PFeP6436feqry/+e/ET7ax+vrx0fifab7TrK
-ev1e1Y+UbX5mVD73jL+cz8+ofrxs9fMtPv1Ue196dr5xvP0y3+3zl64Zf+l/
-f2hNP1u9yub72313Hn7fOMj5/R6nzzmv8b723fnnIz/25f9zZHuO1N3/tzGm
-XWBeVp3Pka2ef7X+Z/Mpzl4XOedbcv7ffr4/c3+78v0213OHc84555xzzuf1
-+mnrPFt/zthxt7ierD8/th19fT2vzX9r+q393m/5Pdm3+z9BZL1Oz/Zrtdar
-p+4/2eoJ/+vTT2fr29XjEa3Pl9bjvfr7u7Kd91/z/e3yzeON8tOaz2j7vvef
-ebspvavn4XP+Zm+77uqv62z31bf7P4dx3ftPzu/tuf/7VY7zdZ3neE7N8fbr
-fZ3v0nHxY5+i9X1v8t52R7Rfzq+bf3t1P3MU9fnJ9vzinHPOOeecv9ez9edk
-8+X/c2Trt7n6e7da+3Wf/X29OF9ROsvjLP1e1fnx0Gi/2er/231/u/Z5gHd9
-T3trfa49rtbyMS+F/7dPP425D7f6On+lca7z7zlR+q3vCa3p8Ht8f7u4/rzl
-/a31uEpxz/gI52/y9ver2vZCtvvkV335/zrqn+PZngtv+Z6cbOPab3l+ZbuO
-Rl1fUTrZrqO3+BSt1+m0fLZfIst9hr/Rz7e/eu/n2Z9TnHPOOeec8+95tv6c
-bL78fxu17bi3+3HU16vednRtu37UeOWofsIo/Sg/2er/V336aVR/Y+32o+Y1
-RZ5tvC9bfvhYn36qrbdj76v16XP+3778fxtvfa/rvX6P4/nxaM7P+F3vgbXt
-Ee9Fz/ry/zmy3c9H3f+zzdfqey5f572/R3O3f/W+sT6e/SiXA+/zKWqfg089
-Tzk/M79rGf39BlH6ff3becaDOOecc8455/d7tv6ZbN463yZbf8s9v2cX1bcp
-xo/Ljz1e1ws/9lH99qX+zNp09vevfvJ3euvzKFv++Td81Pcc3jtPvpyfkq/T
-yfZ74m8ZN+fnvLZ+7q+//vtDst2v+LEv/58jW7v7nt+fyjZuPkX5ur7Hz/9e
-zD3+vX6J5XGU+5eyXXdf9f3l2u8jWkfvdVe/Pf9Fr+9/jtLpvV9F6a89W3uK
-c84555xznsez9c+8xaefzo5z5ZxnNa79u/ZR46RXf4/EV38vlff5/nbjfn95
-1PexZys3zjl/i08/1b7X7a+fo/Y9qjc/be9p9e9vveMRteXSm8/a8ZRSPnmP
-t9fb2nSW6dW3O9bbn3uPmsP7/7t8+qm2Przdxz4v7pp/Ncdx/u/vBxv997Du
-9l+7X2W7HvletL5Pbj8frcl2f+NP+vn2VN/zaN5u9Hs155xzzjnn/Hc8W3/L
-W3x/u9p22TZq+5Oj7ceOP0b15/zvk95T/nH+19v/Wn8m55xzzse9h5wdRyil
-s8xHb3/+Np1sfw+rdXyk9/289rxcPV5/z3vvqHKrr1el7Wvr+ai/C5PtvsGP
-ffl/f2SbtzB6/lUUZ+/Do31a7r0P3+PbfL7zexq3Ufucfbtvj3wZ63LIdr3/
-mo99325/3+Df8Gm5dN8eXQ/X+63zdeQZD+Kcc84555zf79n6Vd7urf14Y78/
-vLU+bGN0O/RX+gM555xz/js+/XTVeEGUzigf9X479ntc699Xj7e/v920Xj6u
-F3H6ffWhVG617Y7z42VX1/Ns9wHe5/90xtn69nYvxdnrd6zn6e/q81KMfy73
-eu11ke0+cO/9pL/c+LO+jP7r4jjdbPdPPsqvmRddWw+zPdc455xzzjnnGTxb
-vwr/61eP0/X9vfsoffWKc84553zs+17r+9jWr/6+gnvG47bl8NT8olKc3e/Y
-9OP01tu31s9Rf8+If9v77m/11/tXvfU+nM1HnfenvFT+03Lp+fus659Z/r+O
-+verbPcHfuzLqL+OWt8Ds9xv+bHf9X2V03a17/W//pzlnHPOOef8lz1b/wn/
-6639AKN+32dU/3C28uScc845z+b728XzWKafavvts77Hro+31Vv3e/V439Xf
-JzbqeFvT5/yMTz9dVZ/f7uvjL91Ppqi9/z/lx/UhTz9Y5E99j+Uoz3YfyOaj
-5oHznL6/PPr7TvPcb/lY7+sPz1ZP8jxPOeecc84551vP1k/COeecc845/57v
-b3f9uPNTf1/vOJ36dlnrfjm/wpf/18e63mcbx88xL2sb0f0ii/cdV55+sGOP
-orR9/3PtXi8fV7b7TzaffnJ/e7cv46r3vTz37a9633tLfD9vS/+6+0Drfse+
-13HOOeecc86v8Gz9G5xzzjnnnPPf8VF/b7HV97dr/7s22cqT8zM+6nvYIs82
-Lv/s3yWM+m3yjHf3+rR8vH7eLpe3Htd7vPa4st2XnvLpp9b68Ov3va/6MvrP
-e7Q9P/a+v983ry/dJ+vaC+X0722/bPPBOeecc845z+vZ+j0455xzzjnnnHN+
-nbd+31FrOr/m+8vj5rNl8755C3n6wY69/ftSlts9P/+qzevrbbb7WLb7Z+/9
-tvb64s96az1Zf34/ttdplvv82710325Nf5lu7XzXKOZ0Rr2njbrPHO+Pc845
-55xzfsaz9W9wzjnnnHPOOef8fp9++ru+PL6Zbdz86e9RWZfbV721/qzXR5/L
-4fP65XF893u01t5az7Pdx7L5/na+X+vr3lcf6vvtl+uffy7c49vyuXp+dZSf
-q7+/q9Vb69vx9tmey5xzzjnnnH/Ds/VXcM4555xzzjnn/Lzvb9c+7yLbeHc2
-X8ZczpOsy/Pt/u3v2fi178uKfFs+vkerz8/N35gj232P9/mo+0kpnSzPi1He
-en2Nml99XM71z5H15++6b/fln3POOeecc36FZ+uv4JxzzjnnnHPO+dZHfV9T
-tnHqt/jV5+UtHpXDejlK7/hzT/u8vi7/0fZf93Xobxx9P19+vv1727LdP/l/
-x6j7SZxO7XO/NZ2nPNvfqSw9B2uv06u9L5/Znsucc84555x/w7P1S3DOOeec
-c84553zr+9uVx+mWy+Zl9foyyuX8du+rh3n6u0Z5b334pteXT7b759t9+mn/
-fET1Ms+8F37sY98H6vv/l+vrnxf7+80/L2t/efy8rON4/r7dtz3nnHPOOef8
-jGfrZ+Ccc84555xzzn/B97crjW/G42vr7bONO7/Fe8/j/vl6r/fNR8rT3zXK
-R1/X3/Bt1NarbPfht/v+dubr/qpH0fd9WfXvG1f7U3+vsO96LJ2Pu+/brecx
-z/OXc84555zzL3m2/gTOOeecc8455/wXfH+79vkt2caF3+JTHJf7+rzkmTd1
-j9fXt2j7b3iev0uV08/Xk2z357f78v85Rn0fYLb7+Vd9ilHPqf0Yd59szU+t
-m5fV5+ZXc84555xznsez9RtwzjnnnHPOOedf8tF/F28d2caR3+LR+Vpvt47o
-vHzNjecuY32cx/VnXl5f11/zUffDbPftX/Pl/+vYeuu8u2z3/7d4FH3nd71d
-7/csnb9/tvpT34d5Tzlf7/vlnO05yznnnHPO+bc9Wz8A55xzzjnnnHP+Rt/f
-Lp63sP+5fOPCb/cppvOxv34+X6Xtv+pjIk9/1z0+r1/XH/53+Z9VtM73y3af
-/6pPP7XdJ+PrYr1dtufC2/2e8xv5uPtn7XMq5/di5fkexd/8HkvOOeecc87f
-5dn6ATjnnHPOOeec8zf6/nbt49fR9tnGhd/ix+er9bz8jo+t51/1ef2yHPi0
-/E9l+B6td/ny/22cvf9ke45k83veW2KvfW/pS2fUvKzrxkFKx3WV912PnHPO
-Oeec8wyerV3POeecc84555xn8L7vH1inux5fmyPbOO/bfYpluf8n3O54+9/z
-aXldb9vK83c8um+sl/fvA7/u9ddjtucC7/Ppp7P359bn9a9573lZbjf6uj7/
-/H123lrv+95198koH5xzzjnnnPO8nq2dzjnnnHPOOeecZ/D97eL5Kq3jg9nG
-c9/upfO4Pl+t23/VW/+uXGm7r3lfPYnSnz+/vp/wv1FbP32/1rv86r9fOf3U
-en87W9/e4n3l2Xofa73f1v9d3av/XmHfc/B6b3u+cM4555xzzjN7tnY655xz
-zjnnnHN+p4+dl/I747zZvhcrOr/R56N0ftPr+4ui7b/to+az8WOvL/9szxE+
-1kc/l/e3v+55HaXf6+v8v+v7tdqfv+vI+vcc27y1fmZ7DnLOOeecc87PeLZ2
-N+ecc84555xzfoWf+7uEc2Sbp/Rr3np+7xo3f6tH5blejtI7/txXfF6/LIc4
-jssrSoe3ef19O9vziI/1/e3a68/o94cs9/Nn52vVl0/dfLz156+uJ72+jmzP
-Nc4555xzzvmdnq0dzTnnnHPOOeecX+H72/X/vaR1OtnmL33Vj89L1B+SZx7U
-sx6Xz37k6b/K5r1/T3NaXp4fHvmo+ZnZnkf8Hl/+H0W5Ho56H+jNz1XPhdF/
-Lzg6nmhNbX769jtv13v/6atXnHPOOeecc771bO1lzjnnnHPO+f+3vbvLdlTl
-FgBaPbtdrW6dXnxNuA8ZDksi8iPo0kxe9s6UICoaxSVyzmf4fr6z79lZy4kW
-v/R0b92+xsU69tY4geP9KE6/1r3+nfqOP7zP5x23o/1+8Wv8mvfnzj8uXf07
-UnfcK6dz5ZSPG33xcpxzzjnnnHN+3qNd/3LOOeecc8455zW+/PeZfv6+YW05
-/Bo/3l71/Rvb6ffHR0X15fPx9DUf3/dSO1w+b9czb/XeOMzacqL93vFrfPQ4
-V6m/Iy6otH9dnaKtn3i/O22/+3mvLaf1/O2ueo6NV8/VJ0474Zxzzjnn93q0
-61/OOeecc84557zGt39zafl++/2anEeLX3q6738ueby4pljevj7b8vMlpev/
-+Hi1fi4dZ/gZr+//HHVfnr/bl//Onj/E9lwaVc75VNrP675fOj73p77jzJpv
-Wb7e9pmWczy/UeO/5eb77decT+ZT2/7rPIpzzjnnnI/1aNe5nHPOOeecc855
-je/nKz2nf/6+TLS4pqd76/bdn76mXL5f99x6fsf4LXf5On27vlvj5fLl8Cv8
-/PEk2u8jv9f3893dztu9tp3/GZR643Ci/M7ye731POe4PY87H8h523kC55xz
-zjl/uke7buWcc84555xzzmt8P9+4++zR4pee7n3p/Hb8Na/bX3Kpdj/iSzpe
-X+n6LKVcfn7Wj/eL+u3rvYf8So/W3vrio0q/P+X9dPR5SJTfax7TR+8X2+/3
-xgmPOj+Jdh7FOeecc/47Hu16k3POOeecc875b/p+vvx7T47Lyd+nqC2fj/X9
-z2tatkfue9vpce7fRfO++4Nx+qme5d5j+A5v3+5n5xvt95f/po8e33J/v6rf
-j2bXvzVeS3zXL3j98X9UnOR+vvzv0dh22Pq7Fu28i3POOef8uR7tepBzzjnn
-nHPO+W/69u+aWvPvz6/9/YbR4pre6tu0bq+Sp9vrN73U/tMUpz/qKX5XfAKP
-6a2/R9HGO+Lv8D+ZdNXvddvx7fxxr3X9xBj/03nL0335vEy/5j3d8+rfdz3F
-Oeecc85HebTrSs4555xzzjnnv+nbv7m0fL98/2I/f/31crT4paf7Np3djvHu
-313t5+4DpilOP1VMH32fNJe+2zm/x0v7Ue3+eDzf9t+72nrymL6fr32cnKvi
-i9qOb+3H1WX6Ve082nlRb/uJch7Cj33U78Ko8WnHtqto52mcc8455/E92vUp
-55xzzjnnnPPf9P18pfvpuevf8/dN+Fg/3u7ntyPf+vK5bn/hfe49hr/taapv
-P6Pe9xrtd/ytvp/vvniqq+Ki27z9+JmrT209+7Zj/O01Nu463vnJU73vPLa8
-fXLfK+0Xufq0HgdK7cp5Juecc875GI92ncs555xzzjnn/Dd9+e8z/Wz/f/19
-w2j33Z7uS0rXf+925/+mcvvvi/fgOS+12+XzdrvkUv54dVwOf6vXHgdGHW/5
-se/ny2+vaL+/fe8fvGucnHV62360ptnbPdp2HBXHdU07eavXt+fW87HeeN10
-vq0+9notzvkb55xzznk0j3b9yznnnHPOOeec/+t/DlN++qe8590/fbrXbcdl
-e48er+N3vLSe98uJ0x/1LF+n17Xb9nL4O733eJjzs79ro+r/FF/+q11vuXKi
-/p7e8/vSfvzMzXc7v/nxJH3t53u5op13jY7T20/166FU/tN9+dx7fM6V07u/
-5+pz1p1ncs4555yP9WjXy5xzzjnnnHPO3+Hbv2sae1/p/HXu7Hr+mo9a/9vy
-4tyPu9qP15v7Yvf6+XGN0vlsp/N3eZrmtcNc/lFxXLnj0qh43bHnIfXlb+s7
-Pq67db3l6nONzz9+LtPP7V/X3+/ILUm087Fr47jW7RKzPZ/3u65f0s9Rftec
-f3LOOeect3m0fnvOOeecc8455+/w5b/P9Nq4hfb7d2n5ff4932j3xaL5ks6u
-z9b282teWj/bfKVxL/hs79tenPf5cXvL/57WHn/Gjot4/nc2V/7Y4+T5cW9K
-fs/vy/uOhzHPe51PLunscaa1nKt8+bxMn/38QuzzijTFOR/jnHPOOY/m0a5f
-OOecc84555y/2/fzjbvv3Hp/J1d+tPtcT/HZ2+sd3tqfs07PzaeuHN7n6/T0
-eFV7PCmVw/mRjxqP5Zo4ivr53v0ewOVz6bja+ru2/V7035f7jp9jPM79jlL9
-a/ejt/qo/ag3TvLs/jXqeuGu66nR/ozjD+ecc855HI/WP88555xzzjnn/B0+
-9n1e4+4D7pf7XU60+1nRPLfd08912zFa3NT14y3k8vftX3H6nd7h58cRGj3e
-Dv9NbzvO3Le/tOavXa7W/evc79f4+vd5/fnJcT3nebTjW7Tz4eW/2vOBaOd7
-V42v1ZZmXxcYL+t4vtHO0zjnnHPO43u06xTOOeecc8455+/2/XzjxklYUi5f
-6rl6Rrtvdff9suP1ntte36l2u/ya9+0vcfqXfs1HjweyTD93POT82Ef9Lre2
-89J87zmu1p8/jDrPeetxPlpc1ux4mLHnw/XtMNr54djzzPbz+eXzuf0ln2rn
-Ozsuq6621+1Hx/XinHPOOec5j3Y9wjnnnHPOOef83T72/l37/Zf0+9HuT0Xz
-JR2v99z2WtPo8YVy9YnufcsVpx/p3b5OLx1/osUhcD7T245L0Y5j6/SlXn2/
-O+ePG331j+a95wP3t9to58Ozz6uf4kuq3V7762X+9ULOr4nLGnX8+fa++XLO
-Oeec81aPdh3BOeecc84555z/6/v5xo2jNfu+SbT7X6Pui/XGpexvp/P3xaJ5
-7/uzasvZ/8x7/Vxc4ndqbefL9LrjG+fXeu3vwvZvmmb7Or20XL2/a2379a/5
-Ov3udhvtPPaa8+Tnnn/OGVeq3B72v7ems+d7x+XOvg5qd8c3zjnnnPO5Hu06
-gnPOOeecc845r/H9fPm4id44mf3yz3tuvk+5/zV2vbX2b9wVf9Van9L9uXJ7
-OC6Hj/X67di3X9S3B87je6k916e03Nm/y62/v6Xy247/T/FSitIOv72u/awp
-2vnt2POx+t+7aOel15y3nz/PfNr7Ct95vOKcc845j+/Rrhc455xzzjnnnL/b
-9/Pl3ws2535Nmuqvl7fTx8f5XDUu1uJLve7avqX67Xucca767uPH6Rfin3TX
-OB6c89l+vj987Ht+4x/30u/F2I7nfXZc+tN9P1+6PnPpO3/teVfrfnfXdkzn
-11ufXDn79bgqnpb3+Trdeuacc855yaOd/3POOeecc845f7fPfu9eLl8uf2s9
-j+d7fbzQve+Lqb9PcXdcVm19Wut5vH7q53uc4vQjvcPX6cftJd44e5zzXl9T
-3+9dffnb+fT/Tu1PT9N3fdrm217+M/z8eeCv+X6+/Hq+6/z5mvG1zp8PzF7P
-uXr+mpfWc237Sb/f2x5y5fReT9Uer3L5S/XjnHPO+XUe7fyfc84555xzzvmz
-fD9fb9zLvPuJfXFBreVc/x69e+Oy0nyj7yvFiWcbtR7GxhnyY1+nz9l/29tt
-Wh/O+X2e7qel43zt70uunNa43NlxJsf5ebTz7bvP89v2l/O/46N+r8eOr9ub
-atthtPOoefcf08+l9dB7XG07H6vf/mOvm+rb/9jjP+ecc86v9Gjn+Zxzzjnn
-nHPOn+Xbv9/p871Zz/mm9et9fn/+fYf95Trvrct71fPdZ8sZdZ8lWnxaaz1z
-y89rfJ2erv/a9pPzUXGenPM4Pur3bnb5v/b+wbFef74R7Xz7Lh/d3trO80ef
-D8xK0c5/2q9Tls/nrqe+yznOd/34w6PqOer669zvQi71Hw9bfez1UZz9hXPO
-OZ/h0c7zOeecc84555w/y/fz1d4vS1N7v33tfO+Ne8mn3HKd9WjjaB3nP3+/
-ZvZyzWn/qcfpL3qHzxtP45r2wDnn/FpPk/spvedv2+9H2b612709zTqf57/h
-y+fSdcHY889559U5HxufxjnnnD/Lo53Pc84555xzzjl/ty//fab3x1mN9v36
-zI8baavP9fFavds3t1z73t7/n6ZR44CNXa5Wj9NfdJeP2o7viNPjnHM+x9NU
-/3sU7byaH/u58VfTfOfPN0rz5W/2+vuz17xvffb1af3yHteHc845f4dHO0/m
-nHPOOeecc/4OH30/Yju/+ffvjK/1SXPeu5Gu/9J9sOhxZXnfX844/ULRvPV4
-0toO724PnHPOI3r9eUip/DR/tPPzp/vyX+35YWs56fRSaj1v6Yvjam+f/Nk+
-ql31Xq+dvf6qe85iTWP7DeJc13DOOef/pmjn1ZxzzjnnnHPO3+HLf5/pZ5+f
-Ted39/27aP3A896j0dqv3rcdz98X6G2f+/Vp9Tj9PKP8eL2dL/+a+y+59Pzj
-D+ec87neOn7jr42vtV2+/vP82fEerfVM61dqJ63rbdTyjo1D4+/21v3k/PGh
-9Ty/t5zt9997XcY55/wdHu18nnPOOeecc875O3z7d029z4Nv5/e0+3dx+gGW
-tF2e9n7+se/R+E6j7zcdz7fW42yvc/crZ+0X89thmkbdN++tf1o+55zzZ3rt
-+UPreW/redG95+Hf9ZkdR3TvewDr41W2qX97RVufre3n2KPFI73V689L+67L
-zh83xvqo/gTOOef8Xh91ns8555xzzjnnnNf4nHiep3qc/oFjPx8/Mye1rv/v
-78fy++77LJ+X6ef2xzTVL+/s+4yj3x+0TI9xPOGccz7Kj38Hz99/yc139PhI
-afm5esaMC5odx9J+nrZML53/tF4f5cqPFsc1dvyiaPFO0by+Hbae9+bKeff5
-cLTrPs4557/md/XDc84555xzzjn/Td/PV44DWfL1lv9W71sPs/sfZqfr+0mO
-y4l2HyfaeGj163nUe0/6jktPv9/EOef8Lh99/pCm0c811P7ux4yzah0ftfc8
-dnx7GHV+Ei0ua048z3eKcp58l486f06/39tuc+Xc7fvLG+e+POec89/0UeeH
-nHPOOeecc875DN/+/U6f75XvK+3P7/5+43f7vJRud97nrffRevev2vnOPp4Y
-r49zzvkMHx2XcvZ3vPV3sHV5W+s51mffR1un97aHa66P5sXXRR0/7ThFaZ/X
-n7fPXv+t7XD/+1cdb8Vlcc45j+mzzw8555xzzjnnnPMZvp+vfdyt/fLStJb/
-Ll/TqP75uvt95dRa/uz33B23q9b4pd77g+XyR+1Hx96/XXvrOWp7idvknHN+
-vd91P6hUzzX1nT/PG//neLnO+7XnA2uafR2UW55o8VfXjMPWvr/Mauej/K74
-q779NP3+dcfhMe2Bc845H+ujfn8555xzzjnnnPMn+n6+/HO4fe/v+C5/ke3n
-9riRu9bbNfdN6pc3V060+0pP99H73X57SL9/9/10zjnnvM9bz6NGxQvNHr+r
-r55x7ostadZ5SLRxQfc/xzvPvDe+a367Ouuzr0/ffT4f7fjDOef81zxafzjn
-nHPOOeecc86v9z+Z1NvP/5nP+efWt/UeF4eWm2+0+0ezPbcejn2dXtouy3+z
-2gPnnHP+y577/fWer0+6e5zMdD3HOM8v1z/a+eq170msPb8d1w7398f69nPX
-cxaj2lurX3PdwTnnnI/1aP3AnHPOOeecc845n+fLf5/p/c9f739eU1r+cf55
-cTjR1ls031/+q+7/1reT0naprT/nnHP+XK//ffzNuKxo4/bEvx+Xq39ru3q6
-73+uPf9M07h2W7uf3hWXFS3usVQPzjnn/E6Pdh7IOeecc84555zzer87nudT
-r/77CMdeSst6uS9ea5Q/pZ6j2uGSxraT/vbAOeecx/dRccutv6dx7mfl/O74
-kH1/7v240vKmyxktzmp2nFJp/ez7vHitu99Lvr+85/14vnGOP5xzznmNRzvf
-45xzzjnnnHPOf9lb+89jxl/Nfn55nb6dT71H2+5P9z+Z1FfO+ftT+/O7+346
-55xzPtZbz99Kv+Nt+Wffz1qnl87fcvnv9ffdj2td3mjxV63xe73nq2k5pfnl
-Sqg9770qDu2u8+39+ca5z84555zXeLTzOs4555xzzjnn/Bd8+3dNMe5HfKfP
-crwnLuvY9Z/M9tHvzdzO7+77sJxzzvmVXn8+2VpOKaXfHxUPE3P8q3pvPf+J
-dp7Wd12T5nt+vNbY9ZDzeXFZufzXLFerx7lvzjnnnM/waOdvnHPOOeecc855
-ZB/1nHW0+w5LWuqdTh/j5/sx7r1Pp1+ld784Xo/l/SVXbq4czjnnnI/y+vOf
-7fTy7/5bfdT1wtM9t7yL1F5HjIrbH3VdNnY9tJ/f1q6f0dvrrPed5/NrfNR+
-N/u6Ptp645xzcVmcc84555xzzvkZ38837j7C3fFXZ5erz8f1G+fqf4/X9zNH
-a+fX7BdP2Y6cc8455+O89jw52vneveeZ7fEbs65fYsZrnb/uOC4/V59v7yuf
-p9Prjifzyum97mutZ+1xrzTftnKibXfO+S97tPMuzjnnnHPOOef8jO/nG9dP
-GC3O6t7xr6L1i67Tt/WK5uPuN6XlX7N/tffn19afc8455/xdXpvcv7vmOiKf
-zl4HjTqfz32/L/6qlOrb83794tzvHuV167P/+mu/Hvn5jhovbvY4frlytst3
-Pi6rzeO0K845j3Z+xTnnnHPOOeecn/H9fKV+yPp+76f4kpblT6fP8uPtcld/
-yDp9W9+neGscV338YV9+cVacc845531eHy8U7Tor2vVdydvOe+v9XPzV7HS2
-HT7d1+m911N9193n61Mqp7Y91+1H5fxzxuvOzX/edeWs48Co+R5vr2j7F+f8
-jEc7v+Kcc84555xzzv/13ueCP9PL8ULR4qlGvS8jtx6u8Tj9Hr3vc+Scc845
-53ykt16PLKn2uuatvv2bS/3bpS/OanRcx6x0VRzUmuaM61Vfn/3txa/x89fj
-59pJ7XFgVFzcuPH0xtSTcx7Zo51fcc4555xzzjl/t//JpOP87f1j23rk+9uf
-4rn1Y7ysGi+ltZ1wzjnnnHM+z8/f9599vfZ0389333avq+e8VNuuOD/v9XFZ
-rf0eY/f3efFXpXoe16O2npzzJ3q08yXOOeecc8455+/w2e/jmz3faJ5b3tz6
-udfj9Hscu/fxcc4555zzCF6K0ymXM/v6jvf5Xe89HPvec877vHW/GN1Psq1H
-+fic1n/sey3r49Zy9WmtZ2t9OOfisjjnnHPOOeecP8v38427jxAtbmp2HNpT
-/Lg9xO8PST+X2i3nnHPOOectnp4/t14XjBpnhh/7n0y65vquPk7v7vrnUtvy
-cn7ss59rm31cLS3v9vv535G++cbph+H8lz3aeQ7nnHPOOeec83f4n8OUn/4p
-b+2nypUfLZ7KuFjb1Jb/LjdeFuecc845j+D1cTi5/HXXZWs5rdd3o7wU/5PW
-sy7/mp71fE379csyvXc73r1+0vqXlrdtffK3eu/4b33p/t+Fe48znPMZftd5
-F+ecc84555zzZ/ldzyf+mu9/XlO63mJ6nH6PY1+nL8tRardpfs4555xzzud5
-7/ntd6q9/mq9Tqyrz/fyRr8ebK3/sc+7fsl563aMuf6/18Nbx53m//q46/e0
-/Nb8rfWJ6nOPS5zzGm/9Xeacc84555xz/m7f/s2l5fvj+n9y9YnWP3zVuFjL
-57r1+ZTnVeN7730ZzjnnnHPOr/BR133XXL/krytrry/eMS7x+fu26eeo7SRq
-HN1xinvd/XZfPpfWf2v7bJ1vXzlx4rXGHvfi9M9w/iYf9bvMOeecc8455/wd
-PjYupb4fPldOtP7eX4u/Kvl+/eP0e/R5+3O123zx7t9xzjnnnPNnee788/i8
-tP36K/XW9waWlqu1/Nrz8JjjJo27HlmmX9V+jtvVd/nRrrtHv3cyXd7c90vl
-8DYvtcNZx5Pe/aKt/Vzvff1U0fpnOH+Hjzr+cM4555xzzjl/t+/nK40bP+++
-wNN9//OaatfPbB/73OhTXFwW55xzzjmP4K3XC/POh3OeO0/uPX+Och3Uurz7
-y5db7pKv03vbT+t26d2O6fqJdt199/V7a/7f8vr1OSru7qr9Yptv/u9Fa32u
-OY5xzv9Ns48/nHPOOeecc87f4fv5xt1HiNbvOnu8rNJ6zq3HaL5dntJ2j+/H
-2+U7v/cecs4555zzK73v/HNevFDr9U60ca5az//HeimNbyet26vVc0sS7Tr9
-7jiuZXrtfn31fnGv1193tx4PR7fz4+Ns9N+LOP0wnP+Cz/795ZxzzjnnnHMe
-00fHEW3z/ZeUt/ZTjRpHPVq/6+j4nHS93eW/Oe79/Pe5cM4555xz/iTPnf/f
-FZfSOt+Y8Qnz4zrS8nPbcbbn6hPt+v3ufoP99lB/f/+4nOd4mu56bu54Pdcf
-32b72LhBzvkMv+v3l3POOeecc875WN/+XVOMuKNcyuVfPbe8MftR6+N1nvY8
-7PL5ePqa721+vN/Ff06Wc84555zzGs+d97Zelx2fP8c5z7/G1+lXb9/0OqV1
-+47y1npGu96PGa+1pPJ1+tj99PrnwqLFZfW289netv6jHSc5f7ff9fvLOeec
-c84553ys7+drf3/Bdnq+X28/rfPNfW/286FP6cfLLdexX9//ub88pXbxXB+7
-HdPvx7vvxjnnnHPO+b/eej486vru6f6U95u3bt/ZnqtntPiou3zU+jzOH6df
-IjffaP05T9/fS/XmnI/3aL+/nHPOOeecc877fD/f2j+z/dz+3ofe+qTzzZV/
-nD/+uPej4pr61uf58ZqO5xunH+Man/0+xzVfabtwzjnnnHM+w0fFLfza+7N6
-n3taPt+93Vu3712eq3+0uKlovv8578frf971datHi8uKtr+/9XjL+Zs82u8s
-55xzzjnnnPM+b31OubX8/XyleJ7z418dlzOvH69veVvjcOr7+UcvV+120b/3
-SU+//8I555xzznmL11535PIfe5zz/JznzvOfcv7fWv+neG55o8VH3TWO1jXX
-re1xWblUe9yY3Z8zu32OcuMTcv5cj/Z7yjnnnHPOOee8z/viZ9Jyr+ovau/H
-286vN16rPt7mrvGyWpdr9vsO+uof38eun/b+5/1yOOecc845j+G111O5ckbF
-UYyqTyl/mm/sddN9ni7XXeMI3eX7+d4bxzVq/eT8uJx5/Tx3xWXlyrnLPTfH
-+XM92u8j55xzzjnnnPNjX/77TK/vl97Pn85vXH/Rcf1HXefm65Nb3tRH9XOW
-5rtfz/rtFa0/9rj+0XydXttOcvlT772vxDnnnHPO+Zu99Xok57PHE87Nd9R6
-uMtLy5Wut1HbK5qny52mdD3k8keLv7prvPRjjxqXlc5vXPvZfn/8fl3bPjnn
-8T3a7yPnnHPOOeec8z6PNl7Wsc+7zh31fo1R/Zzp57r1YFysY1+nl+o56j5O
-33qOtt9xzjnnnHMewUc9T+F8+5yv6TM9Tv/GbG99viZa/NU74rWuf56ubrly
-afz+eFyfaP0wvNVHjec2u55Lavud5a0e7XeQc84555xzznmfL/99ptf2d6fl
-3tc/fLxc865/t9Nz622t59jnrNvr2Ze/dbukaXY/T2896z2db8zxxzjnnHPO
-Oed8nG8/t1+nfP7G6feY7fv50vXzndL13NdvUH8dnSsnZrxWbb9Uvj7XjIuV
-q/9oT1OcuJHf9FHt/3z5+/MrHc/H9cu1lS+Oq9Wj/d5xzjnnnHPOOR/rzxpH
-K+/bz6Ov9/Npf769/YS55V3TNe/XuOs5u/M+6v2S4q8455xzzjnnv+rbz8v0
-OP0Y0Xw/X359Hnuc6+h7n1eqXw9PuX7v63/jS2rbX873Zx63k/PlX/X+3OP9
-qnZ5573XNVfOr3m03zXOOeecc84559d47/v+tuXe35987GkaHcf1Pd/j9TYq
-pfO9b7nu8fZ+7Nbl5ZxzzjnnnPN3eC59599+XqbH6cd4ui//pes5nb6fyttr
-lI+K1zqu//n+kr751vtx+XHiPWL6On1Zn61xO3Xbd01j44W+65+rT+t4bq3l
-X7t/zfo9itY+6+PNRpUf7feIc84555xzznlM/1OVlu9H6X++y+el7fzujo+a
-P55YWk6pfebqk6Zz/XK5FK0dcs4555xzznnq9fej/248LY+PHZ/8qjiZ75Sr
-x763xjOcT7n1n34utX/j+dT4On1/fa6pdb9o7Rc63u7tcVxn2/Oo51tHjV/X
-t9/1bvfrfo9G+ejjUm37yXm03y/OOeecc8455+/wc+/1i+Pbz+3rYX+529Oc
-51XLqXX73uW55ettn+l2z+V7SzvnnHPOOeecv98/f3PXieK1Rvny33Z7jBvH
-6bj8++K7YqVo8U6j40ly7eQ7pe2krx8p3x5y7fzXPbc+e+O7zs73eH69/Zxn
-j2Pjjktzt+/5ONtov1Occ84555xzznlk/5NJo+J8cilXn2jxUdGe+2tdb9vv
-1W+v/fzr/LbTOeecc8455/x6//zNX+duv98ev8GPffs3l+5vJ+f8PWn2e/EW
-Sfc7zut9XD/Y4qXfi9LvSFrOsUeLvxo1/r+4LM4555xzzjnnvMZHj1u+7/X9
-dU9ZD6Ofu9zWb9x62Narfruk+Uvlp/XnnHPOOeec8xieptZxe9x3HuX7+fLb
-61w5/e3k3HLNTt/1336+O36G8zm+fC61/1H9nGOPb/Pisq5578D5/kPOOeec
-c8455/xNvvz3md5/nd4bl7WtX6n/IZe/vpxo6/8pvvx3z3bknHPOOeec8+u9
-b7zi+uumv5vy0+n86X6un6ScWufbG3eRqyfnb/I03fs8Zn1c0zXj89fHJ7ce
-l6IdtznnnHPOOeec8xrfz9fez3zNuFi51Pv8aHl5c/WJth3v8rHxdZxzzjnn
-nHMe3z9/89fX2++3jzPsfnRMHxVXMDb+qv75plHL27tctfVcpG0/4vyZnqZR
-8ZCt++Ps42eunvvfF4fMOeecc8455zyG/+lK9f291zznNWpc8fbnxfbLOe/R
-2sls7+tPNi4W55xzzjnn/K0+bzyTvxvPlbvWJ5f/Lm+9fmwdj+XYrx83Zuxz
-aqP7PdJ6nN+OUcdRb1vPnMfw5XNp/61LV//ejXtOMy0n2u8a55xzzjnnnPNn
-+ah+qrv6FUePi7Xvrf2QuXp8r//083b+o3zec6yz/bj+4qw455xzzjnn/Njr
-r6f64pHqr6//bspP63v+OnH2uFLRfLt85fWf897tvkzvbZ992/07Rdsure22
-tLxnty//ZT/fnzbqOFyaX2197vJRv1+cc84555xzzt/h+/nK15vbz8/pnyyt
-h3S5xvpT4rJafdTznk+PZ+Occ84555zzt/ua6u6nl8sffV1/nNb55sqJ1o8R
-LS4rV+6xl1K5neS2V6sv/6XLFW17nXsPY/1+PaY98Kf58vl4epr6j5+58vvK
-iT/u/ajjFeecc84555zzmL6fr/S8Uv11erR+p9nP5451cUecc84555xzzmP6
-5+/39Wbrdfe5976Vy8nVM7dcpfmk+aL1Y1wTZ1W/XY6n946HU26fre2h1bfl
-3d8e5sRrrel4PUTrT+OjvHV/7PtdGBfPmZbTu1+nyzXbRx2XOOecc84555xf
-4/v52vuplrT9/vP7l+59PvT6uKzSfJfPpXbCOeecc84555zv+fbz6OvceXEF
-fzee1qM+XihXTm980dnlvcZH9VdcNV7NmnLba5Tn6hOtv2t2v1nd+klT+/OG
-sfaL9/ns97e2bt/R+2luPWy/P//3dPZxiXPOOeecc875sS//fabXX0dvy21/
-TjBaP89V47S3rucxPrs/s71fa/mcrh/OOeecc8455/zI+8apPu+jnjurS+l6
-mBdXdre3Le/d8Vflev7dbPf0e+c9Wj9YNN+mdXvl1mcu/7P6/Z7ro8brGzUe
-4Kj9NFf+dj61x8PzPvu4xDnnnHPOOef848t/n+nl675cOdH6W6J57/qf69fH
-ZfXVZy1v+z3OOeecc8455/xfb42bmn/9m9bz76Y+5e/31T9OfEXOj9fDfXF0
-2/qNa5+55Z3trfWM1p8WrR/vqnG9ouyn0fyu97Res59e3y9613GJc84555xz
-zn/Nl/8+0+uvi4/TMr/f689ZUuv6vMfvisuK0y/KOeecc84555zP8M/f736Y
-3jir2vJL5WzrXY7bSfP3Xb9Hey4sV8/Zfn28R2s7idbPFs371nMujXueMdfO
-nup3vX8hl+7aH/e/P/93inPOOeecc875x/fzjYuD2v+8pmV+S75o/SRR+2HS
-9Tbb730u+Hx/qXgtzjnnnHPOOedP9M/f7/6Bvue82u/Xp+Xk6nNc/lt9nX51
-O6ndLnf59u+aovXLPd1b1/9x/nzaP568z2c/b3vXfrf//fm/U5xzzjnnnHPO
-Pz6nHy9N+mHeMS7Wc8fLEpfFOeecc8455zyyf/7e1Z/DR40/dq2vqbX9zPbt
-31x91/YZrb/u6b5Nte3q/PY6bg/5lKvHLG89rt71fO7o/W77/ft+vzjnnHPO
-Oeecf3w/X+/1Wv3zWdH6Ma7qD8mtryh+3E7i9KPmvK/+a75z7Z9zzjnnnHPO
-Od/69vMyvb7fRlzWlb5Ov7v93BXvMdu3y7G222j9e0/xXCqt/+Vzqb3l8pfy
-Hder9ng17znT2e+PuGY/EpfFOeecc84559F8P1/p+qv9+i79fq4+0foxxGV9
-/FnvMSz3Qy3JOFqcc84555xzzu/w7edlent/TlpOyffrE+36fZ6/pR/gbPuJ
-5tu/3yld3mj9fk/3JdUeT+7tJ4zzvsKYcVlpvvnHpWjHE84555xzzjmP5n+q
-0vL9Un9dnOvfu/x4Pc9+zst4WX3e+77OdL/gnHPOOeecc85rvP5+/ag4itz3
-3+Hr9GW5W8cRypUT1dPtm2s/T/fW9h+tnzCaL+n4eNS6H5XbbW77lsrd9/x8
-246H17efq/aL7ffnH5eiHTc455xzzjnn/Cm+ny/ff7ikNF+0/oeo44Tn1u/V
-fs345NF8VBzamm9bHuecc84555xzXuPn4xM+f7+vZ98a35Vb3vRzjO173luX
-N5f/6Z5b3v3p8foPo/k12yXns5+7vD4u67h+d+0X8zza8YFzzjnnnHPOW30/
-X/55pVHPSR3Xp75/o3V5o/VLjHpfYWn7puv/bs+l/fxx+mP7fFR8Guecc845
-55xzfq9//rb3P+RSLv9xOd/1TPPn6jmqH+bdfj5u7em+ny+/3qL1Hz7FZ2+X
-Y39uXNZT9otRHu34wDnnnHPOOec53/4tp1HvtV/Sp16t/Wy5tCxn+3VctP6H
-Uv3318+8/oGxXh9fd7xcT/d1+n77/E7p+jzer0vlc84555xzzjnnI33eOFQ5
-by1HnNU5z23v1Fu341t9P19pfRp366r1n/rY/snnxmWVlmv7/fuOS9H2d845
-55xzzjnP+fLfZ3q5H6CU0nJ647W29c73V/SNhz9vvrPHDesd/792uWb7b76v
-8Px4WaX9d/mcbl/OOeecc8455/w9Pvp5KN7m9fFCfzeelsdbffkv3R7R4qmi
-xWv9qUrzjj+575/djsfzG9fetvnuPs6L/+Scc84555z/jv85TOf7x0rzXfLt
-l7uW0xu/VOsx+hPW5T32u8bRGvW8arR4qvM+qp2kn+vaA+ecc84555xzznm9
-P+V9ak/xa55bPP9866jx/6PGax2v39x+8b2cuSm58s+u51HtcD/fVceZ1nja
-+n5mzjnnnHPOOY/mo+JhRo0Dn6vn8t/2++PGv2r11vV5TVzWvOe2+trPqPG7
-4sRTjXXvJeScc84555xzzvlT/Pxzl7zP++Kj6uNY9utR3u65fG1+/nnGaM/D
-zo5/O7dcuTT+uHFcn/P9q9H2U84555xzzjnP+fLfZ3r9dfS23Lv7f8bFj7Wu
-h9Tv6h84zh/nua1SfdLlOs7/FP9OreOQL2l/vYzqZ+Occ84555xzzjmv99bn
-NP9u8qfTeavv5yttx3nja832mPFa9f16rct1bzvp9TTN63eNtj9yzjnnnHPO
-easv/32m564zl+9f1f9z/fhFo/ya59faxxM7W//edpWr/75Hi7O6vl0dr8/2
-8eI455xzzjnnnHPOa/3zt77/0PsNY/ryX+322v/c62n9/svWZ5SPfc50XppT
-n+v29+N6icvinHPOOeec89bnnnLl7M/vqv6i+HE1c/oBvtfPfn3GPQeXzndU
-ezguJ1qc1fn2M/s5vlHvFeWcc84555xzzjlfPv/JpDSfuKx7vS/OKi23tN3n
-+VXjdLXO9540+nnM2vLje7T9jnPOOeecc85zvvz3mZ67Pl2+f3f/z7cfL9dz
-47VK2ytNd5czpv3ct73a6tla//njjz11/+Wcc84555xzzjn//I3TX/pW3/7N
-pfPbd/v57ucuW+tZH8cVM8WJm5rt0fYvzjnnnHPOOW/10eM4Xe3H9YwTrzVn
-/Zfrc+/42HHWf85nx031lTO/34xzzjnnnHPOOec89VHvuTOO1r3+lPHVc/Vf
-/tt+f3R/71NSnPioJe1vl/V7pe3b2m6j7V+cc84555xzPtu3f3Np+f7z+5Fa
-/Xi9Xf8cVqk+y+e69Rzvev8u36/fqPXMOeecc84555xzfpef77cRXxHT9/Pd
-3d7u9vgpt3/+ikfbjzjnnHPOOed8tu/nK/Xb5PI/x/eX8+nPZ703bqpte63L
-t3yv1P5b232tP+V5Rs4555xzzjnnnPPl858kjerf+LspJ53Oo/ny3377GPf+
-wTT/6Ppfner2l++UWz9v82jtnHPOOeecc87v8v18pevo98ZxjfV5aX+7PMeX
-z8v0XD9Gqx/P9/w4acf5e+P6orVbzjnnnHPOOeecv8m3n5fppX7CNeXyG1+L
-z/A/mdQbB3U2tbb/3v7M4/n/9/W96B6tXXHOOeecc8750701Tibm+EL1cTs5
-31+Ocanvur79+cfa7RXN69K63Ue15+N6GF+Lc84555xzzjnn1/vnb77/avv9
-/xXyt/ZvnO9n4+/wP5l0rt/vu/2n7bk0/+NU3o9yflX/Z+vy7ucXl8U555xz
-zjnnPKbPeT5rmV+86/1ovqRlfZXWz5ztu26v4/p9l39cbq58zjnnnHPOOeec
-83r//G3tl6iP6xg1Xlau/NZy+Me3f3Mp137K6e7nLtN2cuzn47JGtfNo/ai5
-JW/dT3Mebb/gnHPOOeecc36v7+drf7/ekpbvb6eff8/dnOVd0+x+gOP6xHmO
-cj9f+TnTs/XPzZdzzjnnnHPOOed8rNf3U32+l+/HSMst5T9b/1z5s31UPffL
-i/dc5DXxQrPHdxo9jn1av/j9sb/Wr8s555xzzjnn/F7/k0mjnzPa9/NxWTmP
-tp7f6vv5Sv2Zufycc84555xzzjnn8f3zN9dP0j4e0XZ+48YRytWz1ffz5Z/f
-zC1Xrvxo8TZzxrn6blfp+un13PzavJT694vZ7e0pPmr9cM4555xzzjm/xqNd
-Vy7pU9/afoN5cVk5j7Ydn+Lbv9+pbfum84vXv8o555xzzjnnnHOe88/f+v66
-1vy5+Y56/12uPrn5HvvvjHO1pP3lnz3O1aj+1Xn9sdfGB64pWjsRl8U555xz
-zjnnMX0/33qdu/18X1xWaz2Pvb0fIFd+rj5tbnzp/Xzj+lVy5XPOOeecc845
-55xH88/ffP/G9vu14xp9z7etnPNxUKXl2q9nfX9dtHiYsc+Z3ufL57rtcv3z
-sLkSc+1tlOfmG629zV4PnHPOOeecc/5W3/7NpeX77eN7390vkdY/V88+j9pv
-kHp9f1e09nncbnMp2vrnnHPOOeecc845j+fbz6Xxr+qfB8yV3+pXxWUdp/L6
-vCt+LJofL2+ccbFKXrtcsz1XH3FZnHPOOeeccx7TW+OpWsuJ5rnlGuvn+w16
-48pmeW67t9Z/1PY6rk8p1S7Xd37OOeecc84555zzd3hrPNW8+JlR/Xi9cVBp
-OaX823zl9V9b/6f7Xe2nLl23f+XWwyjPLaG4LM4555xzzjnv877+hPp+ldb5
-PsVz62FJn+U+2/8wuz+hvf7L5+3053i6XMftPFeO8a8455xzzjnnnHPOW/3z
-d1Q/TDRvTfXll9Zbbn091Y+X9/rt29duR/n5fvhRnqtnLr+4LM4555xzzvnT
-vXW8o1w5pe+nEi0+6q3jYvXFg71vHC3OOeecc84555xz/ku+pr5+ud7nEHOp
-v/7H9ajv783l307/Xq5ne9S4u/v3i1x7uMtz9W9t5+KyOOecc84557N9+3dN
-x/nTcu/rH/g1X9J2/YrL4pxzzjnnnHPOOef8jf75W99fuv85TeXyc95azvLf
-djlH90N+16evnOs9dr/omlrbyWxvbT+t5URbXs4555xzznl8b43zGfsePeNf
-RYu/yvldcVnH3v4c4jJ9+z3OOeecc84555xzziN473Oyaxo9rtfZ+o+Kbzmu
-59N9nb6/nlvzz/N0e7dux7u8tX9bXBbnnHPOOed8lO/nq70uW1O0+KWneG67
-RIvLOm4/cfox5rRzzjnnnHPOOeecc87n+udvfb/u2Oc94/Tv/ZrHHhcr9fr+
-2Ke4+CvOOeecc875bN/Pl7/OOs7/7dHioO4d56p9fea2x9V+3H7i9GMs6bgd
-l9st55xzzjnnnHPOOefz/Hx8y6i4rFz5ue/zsX68/tfPUdvtW+Oa0uV8y3Jx
-zjnnnHPOS+f/S772eKfj8s/HveTKjxYfdff7B3MpXZ/P8jj9GOn00v6Sy885
-55xzzjnnnHPO+Qwf+16/7/661risvudMeauXtuPy+e72mfPj+r9vHK10ed6y
-XJxzzjnnnPNvH3tdXB9vEy2u6Sm+pP31fH67xPQ4/Rutntvv0s/b5eacc845
-55xzzjnn/Iyfj2PJld/73GhtPfmxt26vp3huud46XhbnnHPOOeec7+dLr5u+
-0zZfexxOrj7R4qPujstafFl/fXFc8TxdrtLyR/HWdpvm29+/OOecc84555xz
-zjnv8frnN695bpQfe6m/NJeitLfzLv6Kc84555xz/nTf/s2l5fvl66bt5/7x
-mtLyo8VB3eXH23H9XLdd4nhfnFK0fpL2fpVl+rJcvduXc84555xzzjnnnPMe
-H/3ehLbye5/frK3PU7y+n/zvZn3myr2/Xc128Vqcc84555zzp/t+vtL10bjr
-zdSjxUdFGxdrkdr1Gc1L7XC/nGj9J+fbv3G0OOecc84555xzznkk335u7zf+
-/P3u92vtB8uVc/z9Ukrr39qPfX6cq9xyHS9vrv5v9zWNaj+cc84555xzHs33
-8+WvL1ufh4oWB3Vv/FXrOGbn49/u8rHP5b3V2+PZtvmi9J9wzjnnnHPOOeec
-81/xz9/R/dJr6h2PK1f/NP+o9x14HnOOp9trVHvjnHPOOeec87t8P1/uunZN
-ab5ocVDRfEm59fs2P25v0eKj5o9PPma9rZ+33+Occ84555xzzjnn/F7//D3f
-r5Urp678NfWV0/pcLW/1u7Yv55xzzjnn/Hd8P99ynVI/PtWo53q209N61F+H
-9s133vJG89zyHnucOKtjjxYfFc2935BzzjnnnHPOOeec/6Z//rb2k+d9+1k8
-1TP9fD9qrl1xzjnnnHPOf8ejxf/0ju+Uptzypp8/+fqvx7ffjzceV+t2z62H
-43zR4q9GxRdFi5u6bxyt5fP+/lJf/nE5nHPOOeecc84555xz/n7//I1zn4hz
-zjnnnHM+z/fzLdcL9XFTS8p9v8174zq+U1v558fdiua59Nb3Hh6382hxUNH8
-/PsK+44znHPOOeecc84555xz/lxv7T//u8mflsc555xzzjn/Bd/P1/te9fNx
-UKV6LvlK9RkdX1Rbz7vGxWpdb63jSkWL1xo7bli0uKm7xsuqj89sPZ5wzjnn
-nHPOOeecc875s/x8fynnnHPOOef8d3z7d02j4nP63h9XX/6Stt/vjwPJlVPr
-ufV8V/zV8XbPr4d9H/devDF+vt32LdeveWn/yqX6/Y5zzjnnnHPOOeecc86f
-4tvPy/T6fvhcfs4555xzzvn7/Kp4p3s8ThxR6/qfPe7xfr7e9Zkv567101rP
-XL63eV97qC/n3ccTzjnnnHPOOeecc8757/j5/ljjaHHOOeecc/47vp8vPw7V
-cTnt8Tlnva8+59+fuMj287j36939HsN0eVvf61cqf9Z6aJ3vNe3nud73Psfz
-45ul8xl93OCcc84555xzzjnnnPOxXt9fKi6Lc84555zz3/E/mVSXv/Z65C6f
-/x63XH1y9Wj1NN0Vl3Xs5+NzZo8PVqpnulx98UhP9/PjmKWfl++1Hn9y5XDO
-Oeecc84555xzzvmz/Hy/9N+Np9/jnHPOOeecP9F7x8nZlnv39U6+fnN93nsP
-74rLOs5/fVzWqOXKubisf/O1jqO1zqfUfkrbK9d+0vI555xzzjnnnHPOOef8
-Lv/8bb3PYhwtzjnnnHPOf9lHxV3k8t/t289XvbfufFxW7/aqLSf9XLd9z4/P
-fO94Xzl/StzU+r1z9b9ve7UtF+ecc84555xzzjnnnD/Fz/fH5sr5u8mfzp9z
-zjnnnHMe2ffzrdcX6fVCKX8UP17eePE2tT4qfqZUz2X68fbPL9fs532O69la
-/+vfg1m3XN+pbX+Mt72eejzhnHPOOeecc84555zzY4/TH8s555xzzjmP7+96
-v2Gti9dKP++vt7Te59tbrvy6+kTZjqO2b/37BHu3Y+18j8t/63GAc84555xz
-zjnnnHPOW72+33jUc9a5/JxzzjnnnPP4vp/vvx+N17r+fYil7bJfn/PP3ezX
-L5/mxH3lPE3n13Nve65d/3d7X4qz33HOOeecc84555xzzvlbffu5/b6Dcbc4
-55xzzjl/n/85TOff7/Ysb43buep9ebX1uSrl1ud3vjEeLz6q1o/jxNblLm3P
-1vHTjus5Lp5wv/6cc84555xzzjnnnHP+XP/8/e4Xbe3vbe3XFZfFOeecc845
-bx2PKFfO/vziXX/N8TSNi9eam+bHlT3D69t56/4ydv+aHWdYig+Mtt9xzjnn
-nHPOOeecc855rY/rF03zi8vinHPOOeect/ry32d6+foil/rGF/pVj5PS7R7T
-z8dTzfbW5Wqtf2v5ue8fu3gtzjnnnHPOOeecc875c731+dljP//+hb8bT+ub
-v1+zX48495U455xzzjnn1/t+vvX6aPu5/friXPnf+ff9+vfCp/O7Kt0Vv/Rr
-vk1re8u1h2vee1hfn1x+zjnnnHPOOeecc845j+Zj47Lq47Va7yO0LleuHM45
-55xzzjn/Nf+TSa3jj51LS/3ar9eixTVF823qX8/H7ef6cbbr2vN3+Zxzzjnn
-nHPOOeeccx7dP3/z/Z/b7497H8HxfM+XwznnnHPOOee/5qPff7ef6sdByuUY
-tby58qPFU51brnV93tWucvVpjR8Tl8U555xzzjnnnHPOOed3+Jpm929zzjnn
-nHPOeTTfz5ePYxkdf7Xv7c/jpPWv87R+0bbL9e+XjObb5TvbftL5RemX4Jxz
-zjnnnHPOOeec8/v987e+/7bvedj6/tvW+nDOOeecc875bN/+Lac577n7Tp/6
-/vf1vX2vj8tqHTep5Gl9om3fX/O+eL+r4vo455xzzjnnnHPOOef8ef75O7uf
-9nu+reW01pNzzjnnnHPOW30/37jxrO4dF2tUXM28eJto7YF/fPmvtb1ty43X
-H8I555xzzjnnnHPOOeez/fO3vj929rhY2/L++7/t9Dj90pxzzjnnnPP4vp8v
-fx0UNf4ql5blSb/X5uPisnLzXT5vp9d7afum843WDqO1/6uet0rzc84555xz
-zjnnnHPO+W96fb/653Ouv3fec9a5+XLOOeecc87f59u/aap/v16u/GjxV9eM
-i/XcuKxznktr/mjtv9X72pX3D3LOOeecc84555xzznk0H9uvW+9/N/NN68U5
-55xzzjm/0pf/ttcP/eWkKVp81Dvir2bHZdVfx6Wft/W63lvb+blxz9b5jmo/
-x/U/H9+Yqz/nnHPOOeecc84555zzsX7Nc7jisjjnnHPOOZ/h+/na30c2Nr6o
-Pj7k6b5N39dfbeut3u96vqZUz+Vzuh6e6qPiplrLad3fOeecc84555xzzjnn
-nD/LP3+/+4Fb79fkyuGcc84555zXn2/n8u+X2z5eUM5b6/lWz62fXL7j/E+P
-y/K+PM4555xzzjnnnHPOOec8sn/+xrn/xTnnnHPO+ZW+n285f259f1x9XFCu
-nGhxUNF8//OacttvlseMyyql+69DOeecc84555xzzjnnnPNf8M/fOPfFOOec
-c845r/Hlv+35bil/6zhC9fE/0eKXnu7bVH+9k9t+szxmXJZxtDjnnHPOOeec
-c84555zzCP75G+f+Guecc8455//6fr7+9wOm5exPX1MuX+rR4pqe4q3bffu9
-8naZ7cf1jxd/tb9c4rU455xzzjnnnHPOOeec8xn++RvnvhvnnHPOOef/+n6+
-9vPbP5kULU7p17yUttv7vvirnB+3t2hxWd8+erwyzjnnnHPOOeecc84555yv
-/vkb574b55xzzjn/Td/Plz+PPRdPsqZcfaLFLz3dl7TdHvHirHp9P8WJvzr2
-7zRqP+Wcc84555xzzjnnnHPOf9k/f+Pcj+Occ84558/yc+Mjlc9Lc/mPyz0f
-bxMtrunpvk3f1ylnt9fdvr9c0eKvzr/3sG8/5ZxzzjnnnHPOOeecc85/0z9/
-49zX45xzzjnn7/Dlv+35aD7e6bic8/FX0eKU3uq57fiOcbTK42PlykvzPcNb
-49A455xzzjnnnHPOOeecc/6vf/7GuX/HOeecc87v9f186/nk9nOpnPPvU4sW
-d8Q/qW+7R4uzmjeu2vF6eLqv03PrqS4/55xzzjnnnHPOOeecc/5u//yNcx+Q
-c84555zf673voav1uvK/51eaXjq/jRbX9HTfpu/tvv0cL55qtO+vh2jxVPPG
-0Zp93OCcc84555xzzjnnnHPOn+ifv3HuA3LOOeec83t9+W97Hjn6/WXt4+rs
-f78+niRaXNNTfJvW7fKO9xKeHxfreD+KFk91vfett/XzueMM55xzzjnnnHPO
-Oeecc36vf/7GuQ/IOeecc87v9Tnj3nx/P5VcfbbT//uqV61Hi3d6ih9vF+8r
-PF4Pb/XZ8Wzr57bjDOecc84555xzzjnnnHMeyz9/49wH5JxzzjnnMX0/X/48
-sy+ORfxVtHGx9qev6ez2eorn9gvxWvvTc+t1Tn7OOeecc84555xzzjnnPKZ/
-/sa538c555xzzmP68t/2/LIUr3X9ODy8z4+3+++Mi3W8vLzVW9vbnPH6OOec
-c84555xzzjnnnPN7/PM3zv0+zjnnnHN+7KPGQRpVn1z5x/XIp/T70eKXnu5L
-StdzafvmtuvbfGzc2u94a/vxfkPOOeecc84555xzzjnnv+D/D7EdQyk=
- "], {{0, 0}, {401, 401}}, {0, 1}],
- Frame->Automatic,
- FrameLabel->{None, None},
- FrameTicks->{{None, None}, {None, None}},
- GridLinesStyle->Directive[
- GrayLevel[0.5, 0.4]],
- Method->{
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" ->
- Automatic}]], "Output",
- CellChangeTimes->{{3.6595559215072565`*^9, 3.6595559434163*^9},
- 3.659555989004507*^9, 3.6595560561097507`*^9, 3.6641619814216256`*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "6"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
- ",", "40", ",", "0.1"}], "]"}]], "Input",
- CellChangeTimes->{3.66416194052215*^9}],
-
-Cell[BoxData[
- GraphicsBox[RasterBox[CompressedData["
-1:eJzs9+vNJLuyAFZeQZbIEvkwJgiY37JFnsoEQRg0BoenoyOCZCZZVSuAjW/X
-4iuSZDLZ/9v/8X/+f/6//+v//M///F//y//vv//3//8z/u///b+Ic84555xz
-zjnn/CP8z+/Is3pR3PJ8u/1T+u2OE/2N6nXj1nm6zbN5ztYpiluej3POOeec
-c84557zrt+TBOeecc84555xz/uf3bD9Rf1Hc8ty3+u5+V+tF7aK/WbtVf6rf
-b/WxvLs/rAPnnHPOOeecc84/zW/Jg3POOeecc8455zyqV41bnuNXPFuv1fV8
-Ksb8T88j/7tH9Wb3Heecc84555xzzvnbfksenHPOOeecc8455932b+W16tX8
-s3ZPe7e86rfH7P7cPU+75vV0XrvOge58P50X55xzzjnnnHPOeddvyYNzzjnn
-nHPOOee/439+R/WjyOq/9RxR/vyz4pb34Va/ffxq+ez4nHPOOeecc84556t+
-Sx6cc84555xzzjn/He/WG/9GsTvfaNxTnsWteX1anFrvaj6n/elxquOePh84
-55xzzjnnnHPOM78lD84555xzzjnnnP+OR78zj/rPYjbfal6zvru/Vd/V36fF
-LfP21j5b9af664576vk555xzzjnnnHPOq35LHpxzzjnnnHPOOf89X42x3+x3
-1D5qlz1Ptf/Z8apenfdd40f9f1rsXv/uelX37y6v/s76644XtauOsytuO/84
-55xzzjnnnHP+/X5LHpxzzjnnnHPOOf8+j36Pf6v1u/1GeWb9d8ur7bq+u7/Z
-58litt1tMbtf3l6/7Pdsf1n9bnl1nOx39xyJxrnlXOScc84555xzzvnv+C15
-cM4555xzzjnn/Hd9/BvFWF79XR2nOv5sHtV+nvIon2p5d36q674ruvMQtauW
-Z887Ow+n9kF1f0f9dMfptp99/zjnnHPOOeecc85P+S15cM4555xzzjnn/Pf8
-rfH+/I58Nqr9dfOpenfc3e2yvLJ+u+2r7ar9PlWezc/qOs/2t2tesljNZ3Z+
-qnlxzjnnnHPOOeecv+W35ME555xzzjnnnHNe9ah8tv/Zfqt5Vsfr/p71XeM9
-NQ9ZvDXu7D5cXf/Zdct89/zP1lvdl5xzzjnnnHPOOeef4rfkwTnnnHPOOeec
-c77L//yO6kcxtsvar5Zn41f763q3vJpXtg5PrVNWXh1397rvGn92X2T5ZeVZ
-Pt3+ZvPinHPOOeecc845/1S/JQ/OOeecc84555zzVa+Wz9bL2lfz7Nab9dnx
-x/Jd85a1q+Y12/7p9Y3Kq+Ps8iyfqP3b8/b2+8A555xzzjnnnHP+tt+SB+ec
-c84555xzznnkUb1uf+Pfbr1q+0/x7ryuzlu1/mw+q+Ou5tPN83aPymfnrfu+
-7+qPc84555xzzjnn/JTfkgfnnHPOOeecc8555Nnvqo9/u/Wq5d28bvPZ56rO
-22x+1Xqzeayu7675OOVRdN+LrJ+un34fOOecc84555xzzmf9ljw455xzzjnn
-nHPOI99dr5tH1n52/FMelUfP2623y7N4K4/ZffB2frMexa73ottftf/b3ivO
-Oeecc84555zz0W/Jg3POOeecc8455zzzsbzavvu729+3+FgezfNbnsXb+a2W
-f5qPkT1vVD9rv7pPOeecc84555xzzm/1W/LgnHPOOeecc8457/qf391+qv3t
-Gu82H8uz9tV52O1Z3JLfrn10m0fl3fnI+svitveHc84555xzzjnnvOq35ME5
-55xzzjnnnHP+llfbjeWR787v9PNn9brzM+vVvN7Or5vXqfnb9ZzddVp97zjn
-nHPOOeecc86/xW/Jg3POOeecc8455/wtj8q79VfzuNWzecnq7fIs3sojKj+V
-x27P4q33iHPOOeecc8455/zb/JY8OOecc84555xzzp/2rF5UXu33luec9ahe
-9Xl3+6fkdzqPVa+Wj/Weas8555xzzjnnnHP+LX5LHpxzzjnnnHPOOee3elRe
-7ee251n1P7+f9izeyiP6eyqPWR9jdf92++Gcc84555xzzjn/Nb8lD84555xz
-zjnnnPPbvVtebXerd59rt2dxOr/o7235jVGd9+q6cM4555xzzjnnnPO/+y15
-cM4555xzzjnnnH+qj39vy2/Vx/LoeXd7Fk/lsVr+qR795pxzzjnnnHPOOedz
-fksenHPOOeecc84559/qf35367+VX+ZRefU5Zz2L3eNl8/L0eLP5deuN9Tnn
-nHPOOeecc875M35LHpxzzjnnnHPOOeff7lmM7bLft3g1765nMdtvVL6r390e
-5Rf9rsbpfcM555xzzjnnnHP+7X5LHpxzzjnnnHPOOed8b/lb+WX1//zuenWc
-1fGe6nc1jyivbjnnnHPOOeecc845P+O35ME555xzzjnnnHPOax7Fn/rj36fy
-qHqUT+ZZzPabzdNbHv3O4pZ15ZxzzjnnnHPOOef/9lvy4JxzzjnnnHPOOefP
-+vj3rTyicTPPYrbfbD52e/Sbc84555xzzjnnnH+335IH55xzzjnnnHPOOX/X
-x/K384jGzfKtto/+dttnPpZn+XLOOeecc84555zz3/Bb8uCcc84555xzzjnn
-d/hY/tR4Uf9ZXtX20d9u+2jcLC/OOeecc84555xz/tt+Sx6cc84555xzzjnn
-/G4fy3e1H+tn7bv9VMuj/rPxOeecc84555xzzjn/m9+SB+ecc84555xzzvlt
-/ud35LORjd8dN6pfbbfqu/vtjlOdt9l12z1/3fIs713rtboOnHPOOeecc845
-5/zOPDjnnHPOOeecc85PefV3Vm93Xqd9tn11/qrts3yiv1n9LI/ZfD7Vx/Ld
-68o555xzzjnnnHP+a35LHpxzzjnnnHPOOedveVT+5/dt+d7uq/V2RbZ+WR6z
-z/Vr3v39Vl6cc84555xzzjnnt/kteXDOOeecc84555zv9mpU29/yfN18V+cn
-yycab/e4s5HlcXpfVdvftv/e3lecc84555xzzjnnn+a35ME555xzzjnnnHO+
-6qfH73q3/FP8U+L0+u/y0+PPevabc84555xzzjnn/NP9ljw455xzzjnnnHPO
-Zz0q79Z/2v/8jv5G9VY9iqfHvz2envfuujy9706Nn5Xf9p5yzjnnnHPOOeec
-7/Jb8uCcc84555xzzjnf5Vm9bv+7+o3yrPru/rJxxnrV/j4t3p6f3fug67v6
-6/a7+n5xzjnnnHPOOeecf5rfkgfnnHPOOeecc875rI/l49/ZGNvP/q7mk7Xv
-elZv1zifGtlz7Jr/qN/Vcaq/o/FX86tGd99XyznnnHPOOeecc85v91vy4Jxz
-zjnnnHPOOe969DurF8XYvtpPt/9s3Myzfrv9ZeN0x++WvxXVPFfnade8j/Wq
-/WXtq+NE4+16vzKv5sU555xzzjnnnHN+q9+SB+ecc84555xzznnXo9/dfqP2
-q+PN5lUdZzbP1fnJyqvjVOcvax/l112f6nir61BtN7u/Z+ezmudqeTT+LecK
-55xzzjnnnHPO+S6/JQ/OOeecc84555zzp737u9tf1i7LM6qX+ex4Ucy2y/Ko
-Ple339lxu+PNjjO7b7P+ds1nltfse3HLe88555xzzjnnnHN+ym/Jg3POOeec
-c8455/xWH8vHv1H77Hc2fvX37PNUx4nqV8fP5quaZ7XdrnF3rdfsulXXdTbP
-p+aBc84555xzzjnnnN+VB+ecc84555xzzvlpr7Yb/0btonrZeG8/f3X82X6z
-+crGi8bZvU5RP1ke2bjV516dp2zcbr2xftVn23HOOeecc84555x/m9+SB+ec
-c84555xzzvlbXm03ls969fdpH8tn663OWxZZu+p4s+NW+zvl3bxXPRuvWs45
-55xzzjnnnHP+bX5LHpxzzjnnnHPOOedPe1Sv26473vi3289bHpXPPm/Vd8ds
-Htl6ZePsmo+n53X1ebPf3X4455xzzjnnnHPOv9VvyYNzzjnnnHPOOef8LZ8t
-z+pX8xn/dtu/5bO/d3kWu8frzku2nqc9+p15VG91/8/mwznnnHPOOeecc/6p
-fksenHPOOeecc84555/if35HntV7Or9V3/28q/1GsXu81fV6ej5WPSrvzjfn
-nHPOOeecc845r/kteXDOOeecc84555zf5n9+Vz2KrJ/Z/HZ7tV13XmY9i6fy
-6K7TW/Oxe/6y+t114JxzzjnnnHPOOed35sE555xzzjnnnHN+m2f1ovLdeZz2
-sTx6/t2exVN5rJbf6lGs7vPb9ivnnHPOOeecc875LX5LHpxzzjnnnHPOOeff
-4mP5+DdqH9Xbnd+sz+Y/61nsHq86/08/9+y+yOqN9bvlnHPOOeecc84557zn
-t+TBOeecc84555xz/un+53dUvxq3PE/k0XPu9izeyiP6eyqP2ejOK+ecc845
-55xzzjlf81vy4JxzzjnnnHPOOed35TF6lGeW/2r7KGb7jcqz8VfH2+1Rfpxz
-zjnnnHPOOef8Dr8lD84555xzzjnnnHP+77g1v7E8+t31LGb7zZ5zV7+788vi
-tv3BOeecc84555xz/ut+Sx6cc84555xzzjnnvOZj+S35RfnMeha7x4v+Pj3e
-GNV155xzzjnnnHPOOed3+y15cM4555xzzjnnnPO9Hv0+lUfXs5jtN/q7q99q
-nmM555xzzjnnnHPOOf8uvyWPKLJ8Z5/zU+eHc84555xzzjnnvOtj+VvjZfWj
-fKr9Zu1n52OXj+VZHpxzzjnnnHPOOeef5lm9Xf1H9aP4lPnZ1e/udrP9ZP29
-NT+cc84555xzzjnnpz2Ksf5sv1k/f35Xx4v6r/YblXfbd/PM6nPOOeecc845
-55x/qme/o6j2k/VXHT/r76356darjhvVy+Z1V37ZeFnM7qtd7TjnnHPOOeec
-c85P+dP9VseL+sv6rdbLPBqfc84555xzzjnn/Fb/8zv6G0XUT9RvllcW1Tx3
-51HtL2uX9Vftv7pOp311frv9dvvp1uOcc84555xzzjm/zbvtq/1k7cd6WR5R
-vax9lg/nnHPOOeecc8757Z7Vi/52x4vKZ9uf9qxeFNV+o3bVcT/do9i1Xlke
-t80H55xzzjnnnHPO696t96c8+hv1M1s/y2vVn2oftavOQ3UddnuWX9Q+q786
-TjY+55xzzjnnnHPOP8ezeuPf6jhRRP19ulfLZ+tn+UT1b/eovDuP1XZPvy+c
-c84555xzzjk/51m9qPzpvJ726Pl2zVtWL2oX/c3aZf1187vdf3Xfcs4555xz
-zjnnv+C720ftquVjvfFvVH67V6Pab9b/t3k2L6vzv/u94JxzzjnnnHPO+XMe
-1Tud16d4df7ejmqev+5/fmfreEu+nHPOOeecc845/2+Pfmf1ZvvL+v82j8pv
-Wf/bvDpP1fbVPKr1OOecc84555xzvt9313vKs3yi3097FtV6T8fqc+3yW/Oq
-7r8ov1N5cc4555xzzjnnPI6x3urvqP/ob1TvV3yMT/Vd+221/7H+7P7lnHPO
-Oeecc875ex7Vq8buvKL8quW3+qm4ZZ/N+lhe3b+7x8/yeGp8zjnnnHPOOeec
-z/uf35FXY+wn6jfLZ7X/T/MxnvasXne9ZvdPVj8bZ7X/zKv1Zse55f3nnHPO
-Oeecc84/yce/u/qrlmftonG7/c36p8fb8/TWPprtb1d+nHPOOeecc845z+tF
-f7sxm082XpbXrv5m+8l+n/Is36f97efcvZ/HuG2eV/cn55xzzjnnnHP+S14t
-z+r/+R151D76m9XvejW/7nNUy9+ObD677brr1O0v86z/qF51vasxuw8455xz
-zjnnnPNv9uz36FH9pzzKoxur8/GWn5rn7j6K4vT8ZZ7luytufd4ov249zjnn
-nHPOOef8Fz2qN5bP9he1n21XHX/2ObPo9nsqds1v1O/u9Yr62bUuq+Pc8r5y
-zjnnnHPOOec3eVbvz++s32q7Xb47xnFue97qPMz22+1ndbzV/LJ8Z+dpNXbt
-n+p7XH3O7jjd8TjnnHPOOeec82/wP78jX+13NrJxsry7z5Pl252PqLw6Xjey
-5119vizv7vxW17E6TjWicVf3UTQO55xzzjnnnHP+jZ79jtpn9aL6Ufvod9V3
-Rzbu6jxG/T7t2b6oPsdb+b49XnfddvVTXZ/Z9qsxuy8455xzzjnnnHNe9z+/
-d9XP6nXHy/qvthvHzcavPmfWPsqvO4/V8uo43XmojpflObu+nHPOOeecc845
-X/eoXjX+tM/6zfLJ8oj664672s8uf6rfzLP5firf6jhvzXtUf3V+upGNO/t+
-dMfv9re63pxzzjnnnHPO+Tf5n99R/Wq71fZRvVmfLc/yqpZXI2s3O251XneN
-0x2vO+7s72xczjnnnHPOOef8F3wsHz0rX42o/6xet3ysV+2vms/qPK/6W3ns
-7q/7XLv96ecYy6uexex7M/t79znS7Z9zzjnnnHPOOf9mH8vHv9161fZPeZRH
-Vj/qd/V5q/ll5dG42e9uvW4/q76aR9RPt5xzzjnnnHPOOf9k75ZHv6seRbd9
-1avjd/t/e9268/zU+lX91jyfzvep9ynqb5d339O33u/T5yPnnHPOOeecc/6k
-R/Wq7aK/1XbZOG95VN6dx+rzd6M7XrYuUf/Vft/yan5jve7v7r7gnHPOOeec
-c84/yZ8qz8aPyqvj7vYsz7Heqbyj8mo+ma+2r/a/a9yov93PU82j+/xZ+a3e
-Xf8sTj8P55xzzjnnnHN+0sfysV7m3XFvff4sZuen+vzfNt6qR/llvnt+btuv
-nHPOOeecc875m94tH+vd9jyrzx893+n8svrV9cnG7/bTna/Z9tV1qD5vVv7r
-Pvu7uv5R3PL8nHPOOeecc875kx6V//k9/n07v9nnGetlz7fqt+Xx1nhP5R39
-HuO2/cc555xzzjnnnD/hY/lYr/q7Ou5tz3+bj+Wr810dL6vf3R+zvto+itvW
-mf/dq+v5dB6cc84555xzzvkneFT+53fW363PM9arPt+s35bHW+PN7pvZ31l/
-nHPOOeecc875L3lUnv3md/rT/Vb3SXW/VfPP8uOf4dabc84555xzzjnv+y15
-7H6esTz6vcuz2D1eNi9Pj/fW82Rx2/7jnHPOOeecc87f9KjeWP+2vHnPu+sa
-Rbd9NG7Wb3e8W+bzdF6f6tX5zNo/lR/nnHPOOeecc36jj+XVervzWM07+73L
-s9g9XjYvT4/X3RfVvLN+OOecc84555zzb/KxPKq/Ws7/7tl8nsor8t3P9VTc
-Ml+zfnr8T/PV/Ta7zznnnHPOOeec82/ybr1b8u56lH/mWcz2G/3d1e9u7+Yf
-teOcc84555xzzn/Jo3pRu1vy/hY/Pf7u5zgVt83H6nrflvenejSft+THOeec
-c84555x/ko9/o/K384vyqOaZeRar462W7/ZuHlE7zjnnnHPOOeec/7eP5dlv
-/m/vzl+2Drf4bXHLvGTrWI3qPsr6v+U9OO1j+W353e6z34HuvuWcc84555xz
-/hke/a767vyyvLJ8Ms9itt/sOXf12x2v245zzjnnnHPO+Z0elWf9zPbL/9Or
-8/90Hp/mu/dtNY+xPOr/bb8t3n7ep/qr9tPN71c8m78oTuf9tFf3U/c9r35/
-d52fv76OnHPOOeecc367R+XZ76f9z++uZzHbb/R3V79ZvtHvrD7nnHPOOeec
-82d9/BvFWB79ruaR/c7ad/M4Pc9Pe/e5387vVq/OTza/1f3ffW+iPLv9ze6P
-U7Hr+Xb31x1n9dyqlkdxy3u2y2/J4y2PYvX7vVqvms/qfaDbD+ecc84555zz
-Mx793T1eFNF41Tyi/qr9rrZfnbfT688555xzzjnn/N/l1XrV8iyfbl7V9tn4
-3XFOr9dbfkseuz2r191/3feoO+4uj8bN/PaYfZ6n5/vt9cza7foOfIrPnvu3
-+Vj+9Pv+9vmbxa57yliPc84555xzzvm7Hv0+lUeWXxRZ++hvt33m3XLOOeec
-c8455+/4+DdrH9XrRjTubV5tF8Xp9c28+1y3++r6re6P2z2L3f3tjt3vW7fd
-LefSqfMt6ydqd5t/yrkXlc9+v097FLvWI6v3KevOOeecc8455/zv/nS/1fGi
-/rJ+q/Uyj8bnnHPOOeecc36nj+XV312vxmz/p7z6e4xPW/fbvLqvuuu6K7+3
-PKs32191/3Tf725k482uY1Y+2y7L61M8iu650m3/tH/Ke39LHqc826fd/fbp
-3zvOOeecc8455//2bvtqP1n7sV6WR1Qva5/lwznnnHPOOef8M/zP78hn+4v6
-z8b7Nh/j9Lrfnl+1XvYcu/I47Vmsrufsfq62z/Lqnju7z5Esr+4+u+38eWqe
-xvqzccv79u3jfYrP3h+6/XLOOeecc875r3n0O2rfHScbb7bfWX+qfdQu+hvV
-y/p7yqN6s/OXPVe1nHPOOeecc85/1bPf3XbR36jet/sYp9f3tEf1uvW/zaPy
-bL9F9bLxu+1nx8vGfyrPbv7d9lm+t5w/u32Mb3lv3/6+3vLcUfns963aX7fe
-0+vVPZc455xzzjnn/C3/8zuqfyqvp3zXc67Wi9pFf7N21f667T/Nu/PNOeec
-c8455097td1T+VR/d/ONIuu/Ou4p75bv9tP7NfPZeX4rv7e8Wz47X2+9P1He
-WfnqebLrPOr+7rar5nnLOfb2vjj9PX06j1vOmbf2QVYvqh/FLfN56rvOOeec
-c84555mfHv8Wz+bnVFTz/DU/PT7nnHPOOef897xb/rRHeWQR9Z/93u2r5bt9
-jKf2z+l9nPkteTzt2f6I6s3un2o/T+3j1XWO+uvmder93nWO3pL3U88fxW3v
-7Wr7p869bNxqHrfug2o8nefu/XLL/uacc84555zf793fT+c1/o3Kd3u3PPNs
-3nZFddzqOp/al6fHOf38nHPOOeec8+/xrF70N6qX9TPrq/FWnrufd3b+M8/i
-6X31tt+Sx9PP031/btnv1fcgim756jiz+d42v9XzJfqd9XP6eTIfo3te3npO
-Pt3v057F0/u5O/7q+756Lxg9itu+Y5xzzjnnnPN7/c/vqj+dVzef2/xU3LKf
-Zv3pcWbzeTovzjnnnHPO+ff4+Lfbbrbfqkf9dyMbr5tndbzV56/62/O96rv6
-rfZ/+j2b9W69t/fdqo+x6xx4ah+O5d116Lb/FF/dt6fynvUxTr//T7XP+p19
-329Zz26+0e8xZvvP+s3G45xzzjnnnPNVr7YbyzPP+un2V/Xd/e3O66245bmr
-67Tq1Xa79vHs+JxzzjnnnHNe9bE8a5/V647X7T9r97bv6ndXXmOs7pOn9t9t
-70E2j1G92fflW32M6vsTtav2V+1ndX9mefyKf/p7UI23zpHIV7/n2e+nv2uZ
-R+Wr6zh7vmTl3ffgre/N7Hicc84555zz7/Fu+6yf2Xyy8bL6q767v1uiui63
-zdvs/ovqze6v2XW+5f3mnHPOOeecv+fj3yiy8rfGq7arjrNrvOz3Lp9tH5V3
-20f5ZL7a/u1+d+e3ez1+xXftw9n3bNarUX3eW9bjlM+ec5Gffp4o3jr/Vvd5
-9/2J+nvr+7VrvCx2r293fne9L2/tI84555xzzvn93m2f9VP1br/V/rp5rOY9
-O3+nojpvb81v9/fT65HNw1N5cM4555xzzj/Ps3rR36x+1v9sPlVfHf/pdcjG
-z/LJ+q22z9Y3m48sn26emd/y3ow+u4+67X/Nx9i976vjV/Mb62f9VJ/3lvX4
-dj+dxxhPf993j/PUvK62Xx1vjE/zXfP7VH6cc84555zz7/duVPup5vHnd9er
-v7P+snaz5d15Wp3Xan/V8XatU/S3G0/vX84555xzzjkf/c/vzKP+ns7vbc+e
-d5dn41e92747TpRn5rv25Wz7WY/qzc43n/Pqfh+ju39PPW+UV/e5u+fWLc//
-KR6Vv70vMl+tV63/1nenOj9RnPp+3OZRzJ4j1X6yepxzzjnnnPPv92q7sX7U
-7un+q+POtquOX52HrH2UX3eeu+XZc3Tz7P5+uv8xOOecc84557/r0e9qvWy8
-KG55/tP+1njddc36zerN5rer3qxXx83mk//dx+jut8hX26+O9+kexez5sDu/
-T/cxnl63aLzMu9/16nuR1V+dR/6O796Hp5+Hc84555xzft7H8vHvbL1o3Oj3
-U88T+a7nrc5D1u/ucbN5Xx2nm//suNX+onbVcs4555xzzvn3e1Sv2t+uPPic
-727/5/f4t1reHS/zar3VfqP61Xn4Nt/9O1uf255/9b34VI/q7fqeVMfvtvsW
-3/WeVGO23ew4s/m/9d14+zv0bb7rvOCcc84555x/j2e/Rx//Zu2iOPX8Wb3o
-OVfnZXZ+nhq3uw+64+zyKGb3YXU+u+0455xzzjnnn++rv/l//o7qz46zms/s
-OE/F7uccvbp/v92r+yGLqN/Zc+Nb/PT43+JjedW75d++b8eo1rstPvW+cXr8
-W333e88555xzzjn/PI9+j3+rEbXLfr/tT89bdbwoqnl2x1udl9XnXp2n6v6K
-2nX7zdpzzjnnnHPOP9+j8rfz+FQ/PX7Vs/xPRze/6Plu86je7H6q9tf12Xa/
-7qfH53d5Vq8bu9/vT4tbvp9Z+eq5/m2+63vHOeecc845/z6PyqPfWb1v9ez5
-V+crGn93Hk/1e4tn0W13y/7jnHPOOeec7/fxb9Qu+/2tHtWL2mXz+bZ/euya
-l13jrubBv8tPj8/5v/zT41PmM/v+Vtt/uv/680cxu5+y39V62bicc84555zf
-4GN599572/NkPvtcs57F7vGq6/L0c696VF7dx91yzjnnnHPOT3r33pv181T9
-T/VoXrP5/lYfy6v7rdr+lH963DafnN8wPv8tF/8Zt63H7LmRtY/qfZrvnudT
-Xv0ORO2y8brv/6/uJ84555xz/h1evbdm9W95nszH8ux5dnkWT+WxWn6LV6M7
-35xzzjnnnL/p0b13tt+oPBpvd36n5zPybD6ifk7nPeuz89GtV63/tIv/jNPr
-wX/DT4/Pz3gWt3xHvy2idcnKb/UxuudN1v4Wr87DLe/N6v56O7/qvtvd/2x/
-nHPOOeec/yuq98+n8nj7OaP7+27P4qk8VstPezW6837bvuScc84555/t0T27
-er/N7rPV/nd7t95t3l2PW/KOvJp/dZ/szu8p77b71HjrvZ59D6J6b+fLz/jp
-8fmcr35fTvlqu1uj+7zd8zjyW/Zj5t3yT/Hbn+fW/Mby1X0TjXfbc3POOeec
-89/0brvb77VjeXRf3+1ZPJXHavlbPsbqPpptxznnnHPO+U7v3mur7Xfdw3d7
-9Pttj8rfzmO3V9fjVH6Zd9t117Na/1Oius9vOQeyPLv1+F2++t7yv8eudbnt
-O5zFar7V/k9/F2bP67E86/+tvG7zsTyK0+/Dqfw+5XzY/Zzd+b7lOTjnnHPO
-Oa94dh8+nV8UUZ67/bY83hpvdl/ctm8455xzzjmf8ex31D76G9W73bPYPf9R
-Pk+Nt+pj+W35rT5PN2b3f7f90/H0/GR+2zlQXYfd41X3Ca/Vmx0n6mdX/6e/
-Z7P7O4tbvwtvj1Mdv7qfs/qzeT09btZvVD/7/ak+RnX+x/pv+er3cHa8bPyn
-8+j66vncfc5bnptzzjnnnPNKvW79Ux6VV+/vs57F7vGyeXl6vNn8qnlG9Tnn
-nHPOOb/JZ3/P+mr73d4t3+XdeX/ao3rd+p/iWb3Z/RP57L7M+s/qr74P1d/d
-vHb57edJNWbPpWr9W3z3+by7/yi653b3vVrtt1uvWv9T/anvVRaz51W136e/
-I9U8Z8frvse7+rvdo9+nfXe/tzxHVP+p71O1fpZXVm/W3xqHc84555z/tn/6
-fTR6jlnPYvd40d+nx8s8iuq8cc4555xzvsPfvvdm9bL+d/c3m++peVv1p/rd
-vf9uya/qUb3d+yvLZ3U/Rf2sniOreXTb7eovm99T58Puc2ZX/Syq+2T29+z+
-m91nq+9HNd4651f3wbd69z6y6tV2q+/7rd+X2fxXfdd7ets5v3ofyerv9qfe
-o6fz3eVRzO7LrJ+n7xPdPKr9cc4555xzXvGo/Jb7aFRv17391Hi7+636GN15
-uW3/cs4555zzz/Zd99un7stRzLbflefou58/e67d676739N57PZqebf/p/Zj
-NZ9u+ew5kI339vsw2252XZ9e59u8W171t9pH5avfz+r41fdtNa/V/L7NZ8t3
-f49375fue7rr/R/rVb2bV/b7LV99/2//XkS/n/bT7bN+n5rf3d/h7njdcXd/
-D2/7PnDOOeec8+/07n346fyy8Vf91Hi7+50dL4pb9iPnnHPOOf9uz+pl99rV
-e3MU1fv17Li72lfnZ/c8Pb3uuzx7nlM+llfXK+v/qX1UHW9232Tl3fXcdW5k
-eWXl3TxX+8vqReOf2ke3+2x59/tR9afO693vBZ/zLN7+LnV99/v19rk9+/3d
-9d6+7d3vxhinvyPdPFd9tv3u/Tn+7q5zt33m3XyzePq9r9a77fvAOeecc875
-v8p395v1P+unxtvVb9R/tZxzzjnnnPMTnt1vs9h9P67mE7Xr9tv1KI9u+2z+
-Z+ch89X2b/e7a19lMbset3m1XRar+3P3fI7lUby1j54a55Z99K0elVffk9V2
-/G6/ZT13tdv93Xj7PK/Wq67jt/ju8+rp8zaLp/bH7ve5Ov9Pre9sv1nsnpfZ
-8yWrV41bviecc8455/y7vXsPP5VHNb9onNnxVttXPYtb9gvnnHPOOf8NH8uz
-9t160fjV+3LVu/fw7nx0x6s+b+bdccaYff5T7Z/a15HvXt/bPKsXxer43Xa7
-x+vGU/trt6+eD/wOH4Pf6Vm89Z7Pjv/U+br7PK/2E7Wr5jk7zm3nx26fXZen
-8htj1/u0Wq86T9V2p+f5rflf9eo6ReE7zDnnnHPOb/Snx8vuwav37ax9VN5t
-n3k1blt/zjnnnHP+W969x3bv67c8z6k8uh7Vy8bN1vGt+Tu93tm8/ZqP8fT8
-VfvdNd6ufdVtVz03n34fxvJb9h2v+Rj8rJ8ef/Y73z23Zs/drPzp70Pks/3P
-1u/m962+e3+srkPmb9WL2u3eT1len3rOZb76nX06P84555xz/oxH5bfl+dZ9
-d/d43ft0tX30t9u+Ou5Y/i3efS8455xzzvldnt17s6i2u927z9sdL+tvNY8s
-r6z/2XV8e59mefyqd9/z2XMhqz/rT/eX+a79f8t5Nvot+5T/3cfgd/kt38Ms
-unnOng9Zebf/bn+nfHZ+o/qnn+e0R+Xd9mO9qmf1Zt/71eetxi3n4y2+ez5P
-Pw/nnHPO+bf46j19rF+9f1fvj91xovpv++5+u88d9Zf1213Hapxen+7z7Npn
-UazO8+n55Jxzzjn/Fu/ep7vlfK5etk7ZPXr1Xl2tV91Pu5731z2K7nrf8jzV
-/bpr3mb38er7PptH17N62XzzO3wMfpc/9T1c7bfb3+x5nOU1u99vew+fep9X
-y2fX6bZ5mfXZ738Ws+9Ztd/V96ub1+59+S1uXjjnnHPOz/rqPf6W56h69nxv
-zXPVq+uVRff5Z/fFU+v11nhv+ew6PJ0X55xzzvmvePW+fSq/W3ws785Xd9zV
-et14+nmycb7Fs3mcfR+zuOX5d/tqf9Xf3fGi+ln7rN0u7+6zW9ab//03/0w/
-Nf7s+TN7/mb1Z8/76vi852NU61Xjluesfu9uiU/9Dpwef9Zn5/t03pxzzjnn
-n+Ld+/fpfG/33f0+1T5ql+2L6n65dT6/1bP1OpUX55xzzvmne1bv2+5bp8df
-XZe3Y9d9/WnP8q1GNu7s+8Jr3p3nt86z2X321rlxy/rxPT4Gv8tXv0dvnwuZ
-Z/2tjtftp9ov/26Pfmcxu/9Px6nzIqpXna/T59wu/5XnjDxb99n36fRzcc45
-5/x5r94HuvfxW57vU7zbfvc4UbvZ9c/yiPyW9fgUj9Ylq1d97znnnHP+fZ7d
-B7r1nsrzNu/Ox6d7976Y3Uuf8tui+zxP9ct/w2fbjzH7fmX9z+bxlj89z/wd
-H4Pf6Vmcev93t6/GbD6n3zf+3f5pET3PWL57vGz8LK+s30/xT/8+R+Xjc1Wf
-c3bdd+XNOeec8/s8Kq/eN6qx+zlm89l9H8ra7fbVeruiOi+7n2vWZ8ffVb9a
-/tbzRr7rOTnnnHN+zqN7WnZ/m60/22/0O2t/i88+1+3eXfdqu9VY3Ue3Rnc+
-OZ/x6vu5+h5Vx13N52kfy0+vH+/5GPwzvHpuRPHUe75rnCxmz03+G57VG+Pt
-/Xs6nl6HqLxar9p/FG+t99Pn+y15vJ1fFN3v4O68OOecc/6ed+8fs/eEbl5Z
-ZON+uo/RXZfTseveeMt7stur5bPjVMddff+7eXHOOef8vM/eE6r1dnsWp+fz
-tjwyXy3v7q/qeq+O+6mx633J+s9+89/22fM3iqfOj9n+Zvut9sPv9DH4d/hY
-3j1Xqv11v7/V/bh6Hu8+5/le78bt71e33S3x9P3hNo9+3+LV8/Mpj/J5O4+q
-V+et2n5XXpxzzjnf952PYvV+ODv+bffb232MrPytcP/r+Wz71XmO6q3uN845
-55w/7917QfW7nt0HTt97376ffOp9aHYeT9+Hd7e7LWbX7fR7143bnuPbvNuu
-2s8Y1XPk6XO829/u+eOf5WPwOz2q1z3PovbVfrM8uvl1z7ds/Nnz8Kn5+zaf
-jeq+Ov1+PdVfdb/vjtn3rtpfVH56n86eW1n9p/3t/bm737d99rx/Oi/OOeec
-7//Or7bv3hOidrP9vn3/vc1vj1vm6TYfy6NYfS+jPFb32S3nGeecc87n7wXj
-79l7wun7VBaz8zl7j3t6XWf3wWnfXV5dv6fjqeed3Z+nPfrdjdPPcYvvahdF
-9317el92v1fVet15uG0f8JqPwT/Tq9+Pbr1T5/dYr+pR+ez39env/Knf3fN+
-jO537rQ/df51y3e9p933qXtv6OaTjfepHv1+y3f3O7tvdvnuc7g6zuo6r47b
-7Ydzzjnnse9qX70Hde8Pt91nT+f7afH0/L81zq59sSv/rP2u/jjnnHO+7tV7
-XfYd7/bfHTerl7VbzWvX/amaX9Wf6nd1H3yKR1Hd51m72ftutb+sXTeq7/Ws
-R8/z1Pu4eg7tmo/Z8+Pp+k/NSxS75/ep51ydl9u/U/xdH4P/pnfLV/dfNt5q
-u6xeNWbvCbvGy8atto/Kb9uHu/ft2+N0v/tvvae785l9b7vjn/Jquyie2o+n
-28+Ot/u+Ut1n3X1Y/Z3lsdof55xzzt/zajx1n9zV7q1711Pzezp2zdNqf0+t
-32x/UT+74rbzgHPOOf9F7973snvB7H1kd3+r/vS9bYxd67i736h8133y7bzH
-37PjVPdJdbxs3Gz8bJy39uVsu+58R+W3+hi71zHqvxuz5033PF/dP93y3e2e
-Xl/+3T4G/03vtj+d56522fm4u/+sn13ft2z8bh6nfSx/+zyrjt/9vs9+z6u/
-u+NH9Xb5rvfh1Hczym/1/Jg9D95un/W76/yrtpt9X6vjVfvJwv2Lc845j/3p
-72T3XjFbP8tr13109d7Vvf90Y7bdbTF7z5y9x57eH919kdVbrb/LbznnOOec
-85u9en/rfner95Fq7L5X7L4vdb2bb+ZP74Pd4836WF5dl6z/Xeu6ut7d/LL2
-u/Jc3S+rXn0vu+1O+1hejdn+uud1dfxuf7vO79vW65Z9xe/2MTj/RB/LZ78L
-3e9fNn61f95rN3ueVdd593d/tf1q3qvjz+b39nfsVB5RPtXy7v493b7ab9Tf
-7vnuPudT+y/z3f1xzjnnn+RP30u694bZ+8XsPWF3v7vWabZd975TvS8+HbPz
-kJW/df+cbVf13e//7HuR1d+d12p/nHPO+c3e/f5Xv+OzXm3XvQfsep5uPrPz
-GY0z60+tz6n9W83nNh/Lo+jO/1vveTe/zLvrG3l3v9+2L27zarssuv13981t
-88b5Dh+Dc85PeRa3jLP7npOVd+8tWXm1n9u+V5nfksfo0e+uz7Zf3Xe76+1+
-v7rjZONm9Xbls3t/cM455zf7ru/tU/eJLI9ueTWfrN+n12lXu+p9J/Lu/a3a
-rrp/ntoPs/tx1/5dvYdG/c6O282vu3+qv6O45bzknHPOn/Dqd7f73Zz9bs/e
-E6J+q+Nmeeyet9X72Ox9qOqz83zr/n3bo3rV9ymr/9T+2v1+Vdvt6q87r5xz
-fouPwTnnT3sU2Tn1Vl5Zu+55m5XP9lsdL/s9m+9sfrf5GG+Nt7oPu79n+8vy
-q+7n3feW0+dad953rTfnnHP+CT6W7/6u7vZo3F15Vvtf9W677j1ldV5n21fz
-2j1ud56r+e/O96n3YPX93dWu6t3xxvIobjtfOeec845n39Hsd/W+c/p5do3X
-fe6ov6fuKav3mafXKRs/y+dWn61X7Wd2n1Tf86pH+VbLd7dbfW+jdrftL875
-7/gYnHP+tkf1nh5ntr/ueZuVz/b71PegW2+2n0/1MZ7uN/Pd7091f5563k/3
-6jyeyo9zzjlf8afad9vN3ks+3Xe1W52/3fMfxa15rq5PN69P8V3tsojmsTte
-Ni7nnHN+o1e/f6fyO+Vv9Vu9h1Rj9jl2PW83r0/3rN6ufp7y1f7G8ihm99fT
-73027un9xTnnY3DO+dOexVPjR+dht7/ueZuVz/Z7i8+uy+m8n/Zd/Y4x+17t
-il3v0a969T72dB6cc875TR6VV++b3e/tbc//9P2i+/zV+163fbff2XrdfbPr
-fpaVV/OK6nfn9TYfo9vf7O9sXM455/wbfPX7+3R+n+bVe+jb8db63XaP3O1j
-dN+f255nV39jeRS736On3++x/PQ6cc5/18fgnPOnfSx/63zK8pntb7X+6NV5
-Of39eMrH2L0fbnnO7rrPztNszI779Pv79n5526P4lntc99zM2t3yXJxzzv/z
-d/V7Xf0uVPvN8vtW734fV++f3X6q/UbtqrF7X+2+x8zWm12vT/Eont5X3Tw4
-55yf9dn7Thann2vWu/elW/Lu+ul1XJ332Zi9P2btb/Ms76pn7/3p59ztu9Z9
-1+/u+Fm7Ve/OH+ecv+VjcM750z4bt+RVPWez8u65fNv341s9qjf7Hd2V3y3x
-9L0iKv/We8yu8+OUV/fp6jxE9avjVPPgnHO+x3e323Uv+xYfy2fvk7v6f+qe
-O1tv9X61+ly7894935/mUezaT7vPMc455zWfvS/Mfi+q/dz+XfjUvHf57n01
-ew+5JXY/5+r8rubB53yMbL2yfqvl3Xj6nKiOf9v6cc5/x8fgnPO3fTynTo0/
-W68aq+Py3/Tb4vS9pHpeZP3c7tlznc4v8mxdu8/VXf/Z+Ts9b5xz/qkela+e
-x6vfD/6fv1fvF9X+Z706flR/dpxdeUf9R7+zfHbl9+mexdP3QecO55zv9eo5
-2/1uZuWz/d0yb6PP3qdu9+o6dNfp1D3l7bjtHsfPePfcm43d466eh9l4WZ6c
-c/6Wj8E550/7WJ6dW9V+Mj/VX1T/tu8Bn/NqZPtl9j16O3bPU/e9yPqvnh+7
-zoFTLo9/e3d9T+fLOeff4tV7S/W8rtb/Ve9+z7r3qLc9yjuL2ed+y99ax1/x
-sfyp+lE7zjnnc/6p37sov9N+Sx6Zj+Xdeqv1q+VRv7fE0/eot8bnZ7y676Py
-2femus+q34NqXrPzwTnnT/sYnHN+yrvlq+db1s/seNVzOCvf3Y7//fcYt+7/
-rN3bsfocp9a/mme3/m6vvv9P+dvjrfrqOs5+N7L6nHPO/+3O2T1eve/Mzv9p
-z+J0fpl37ylZP6ef51bvlnPOOf+3d7/DmXe/h7d/B6vx9rqc2jfVfE7nt7vd
-qajuk9vei9ve40/z7PfqOmXtZ/vvnufV/KrjROWcc/62j8E557f46rkWjVMd
-rzpu1m913G5/s+f7p32HonXpts/qPe2reY3l1f24Gt1xnnqu0x79PuWf1u/s
-uFG76jq9tZ7dcTnn/Nt9LK/e37rf6dn8vt1Xv5On71uZV+udfp7MPzXv0x6V
-d9uP9brlnHP+Ld79Xu06d1fvK6vjPv2divLd5bfsm9N5RLF7XaLyrH433nqu
-aB1P3euq9arnQbXf097NM6ofRXe/dt/v7jndzXPWT68r55yvnuOcc/4pHtVb
-PTdX88nadfPo1lvNJ2rXzXP2963+dH/V9VjdR6fHjfrP+jvt0e+nfPc+rPb/
-1D5+aj2yPHf3n7XP8sjqcc75p/hT7Xf1/y0+lp++D536vt+S325fLf92zyKa
-r9n+b3v/Oed81bu/o3j6XP/U7+xYHkXWbrb/3X5LHllU53v2eWfvDafGrZbv
-zuuUj7G73ezvzKvlWf1svqL2T517s/ndtq8453y3j8E559/ms+ffrnxmx63m
-0+2nGtV22XNleXyKn+qvOn/de0CWx+z+qeadjdNtd/v9aozZfbT7nFnNayxf
-na/d+3X3+9Ud7+nvFOec3+az53AU3fP6V7za7vR9aNWzeOo7/pbvurf8qkf1
-Zt+z295zzjlf9eh8rN4vdn/Hd32vs353f5dPz8db+2NXv7u9Wz67jrvyqI7b
-zW91P+1qt/u9OO3R78zfqtd9T6vjnT7fsjxu2yecc777u8M55/xdj6J6jnfH
-6X4nsn6/1Xf1N7tuY7vq+syub5TH7nGeutd07zen7l1Zfll59Rzp7s9u+6yf
-XfVW53V1/t9+3iyfrD7nnN/mUb3Z83J3ft/ib31vT3sWp/Pb7bPr/uselVf3
-URSn33POOc88O+d23xuq43XLq/lFeVW9237XdzlqX/Vd7avP9ZRX291yn4ii
-O8+7nzfKo/s7itn1PrVut3m1XRSr51A3D8455+/4GJxzzvkv+Fj+1Hey2q77
-Hd/dPopd7U7fd7rz+JaP5VFU2+2ul7XP+p1dl9l9PbvOY3nm3XMlq18d57Zz
-9FO82271N+e/7N3vQ9b/7vy+xaN6u9bpFs9i9rt/i3/rup3eF2P7qD/nDud9
-nz23quPNtvt1r55ru8tn90F3H3Xzm/3eVOvNjhPlm/mu+Zgdf9V3zfdTHv0e
-o/qcs/t9tX0Ub5/D3fsX55xz/ks+Buecc/7NHn0Xnxq/2q77Ha+2j8bv1o+i
-O/5t96DMTz1PNF7Vs3rV8ar3yO58Pj1vb73fu86jrN1YXm33bb46P7vWZfZ9
-iOpz/k3+dL+3POdbPpbv+k7ccs/K8uvGbc9TvRdVo9vft3pUvrv/sR7n3+TV
-82f1e7zre/Tr7+nu+Tn9PFF099cu795Pnt631Xqn1nXXe32rj3Hq3tLtN4q3
-2lX3f3ceOOec82/yMTjnnPNv9qe+h6v9db/jq+VPexS33YN2PWd1X+ye16f3
-fTeP1f2cxS3nyNNeXa+n8zjt1fKxXrYPu/1U85ld36c9ex+rvznf4VH5rvvQ
-t3m3/Jb70W7P4nR+p55/9r35dI/KZ79rWTnnM57tzyhO5bmr/a73bHW+uuPd
-7tV9tHt9P81391ud/6jeU+v11Hx1x73tfjB7H+iu7635RbF7vzz1Xt22Xzjn
-nPMnfAzOOef8mzyr99b4Wbvq9zr7zt92z6h6FN16tzxPdz13z193H3XbZfsu
-65fPeXUdn85jt0fl1X2227vndfW5Vtczq7er/dvzzX/Lq+VR/due5/R3YLWf
-2z2L7rl9m+967lue5y0fy6vxLfcmfoefOo+r0R0n+t3trzreLq/+jvK7zWf3
-1+m8v8Vn681+33e9j5lH9W75rlff8yhuPZ9mfXa/RTG7X956z26Zd8455/wN
-H4Nzzjn/Js/iqfGj7+9qu9n6t90/Zu8r1fbdcZ7Ke9Wr+d0S3X072z7zt8Y5
-7dX35VR+s376e1E9R6L6Wcyef7O+a9ysn6jfW/YVP+ur59mvehRPnzu3eRan
-83vqvleN257ntI+xOu/8u7y6D6r97Dq33j4vq+XZ+Kvlu32M0/tt1mfPuW/z
-p8eZzeetmL0PjL9v8SjPyKvvwW3PuXp+v/07irff79vWg3POOX/Cx+Ccc86/
-2aPv4lPjZP1n+XS/36vzwHu/s3Wu1l/Nu5vP7nj7npmN+/T7fZtX9/FpH8tv
-y2/3Ouw616P+qx71231/3lrvW9aTv+Pd7/AteZ/y2XvHbfer7r2rGrc9T/c7
-sbq+p5/nLY/Ku/PHf8O735en9mc0/uw41XOgOk5W77ZzYHVdoji9b2e/j5/q
-q9+9qHzWo3Gfju587X7Oaj5v5fcrPntedc/nrF0Uu/Kq1ju9HpxzzvkbPgbn
-nHP+zT5+F6vfx6fz6kY1/9P3DP6O3xZvPW/3dxa3nFOrfvoc657Hb+cxm9dY
-/tT+2v3+zL4Xs/tp93d19zryu3x1n2XtP93H8u58nb6frHoW1fW/5Xm669L9
-Ppx+nqd89ncUt73n/O/ePSdWz9fqOFm7LJ56b7P+Z/OLyrP21fze8izPt333
-fv4Uj6I7H6fvH2/H6e8wf9ef2o9vnWPV8/ep7yHnnHN+s4/BOeec/4Kvlme+
-+v2d7T+qVx3n9L3kWz36HcXsfr4lqvuz2m5132fj73pvb/HZffjU+XrLOT+7
-v2bf4yyPWzzKM/LV9y+qv+u9P73/+TP+q+s6lq9+Pz/Vszid31vPP/v9+lQf
-Y/f3jN/hs/s46nf2POmOu+s8O/196UY2z936p8+xsTyKt/b/0+M95avfsazf
-rP1qv7fG6rmY9Ts7Dp/z1XZjvazfXd/DWc/yiso555zzb/YxOOec81/wqLz6
-He2O3/1OV/vvjlMd97b7ytuexW37ttrurTj13pzaF9n79rZ33+/dHuWzu99s
-vF37IBs/Grfb365zftd5FpVX13VX+ez8ZPX4XT6Wd/fPbc/z1rlX7feW72h1
-/WbvM7c9z+7vTVR+Ou9T8/LUPYK/49117NbbtX9Wz6vd+7Gbx+q5s2uczGfH
-WT1nsvGq+XT99nPq9vxW85q9Z7wVb+3/2fcly6ta/m3enYdd34/VcXd9r2/d
-t5xzzvlNPgbnnHPO45j9zna/06t5VdtleYxe7S8av3ofme0ny/M2P9VuVzy1
-n7P+bvNu+Wn/tH6z8XZ5t313H6yeh7fsn6d8dn12zevp5+d/97F89lz+Vb/t
-e7l6PkdxOr/dfksep73aLopb3sNf8er7mrXvfg/sg1p5dd6q79uuereek2M8
-/Z1+a7xqHtV9cotXY/U9eDp2ve+j3/Z9754fWbssVt/7XedhNb9q+13nende
-P3Vfcc455zf4GJxzzjmf96jeav/ddln7rF11nOq9o9t/9fct6x757P2rOo9j
-veo+2pXnbP/VfrP+u/fet30sj+KtfflWHrvbR/Vn12m1/ew+jPLI8svilvPu
-Ke+eT93v0FvfVz7n3Xbd7+Kn+lg++x7d5rvj9POsfp+idrfl/dbzj/HWveZX
-fdc+jGJ1/X71+1ud5+787cqj+56vepTn6v6M+u36rfeRsfy2/Gb3YXd9q+fa
-U/nNvs+r52w1z1vuCd3y6HcUT91DovrdPGfnZfd7cct+4Jxzzj/Zx+Ccc875
-5/lb3/9snF+5h4zlTz1fNE51nrvtq3ll/VXzysbp9hP1N7s/n/Junlm7qnfz
-6frT/c6eL0+t5+738al1/1V/+vv5rd+3W3z1u/h0fqe9Wh7Vu+27OPv81fa3
-PWf1uaJ2t+T99r7w3XzXV7+Db33H+Vy9XeM9/Z53/alzedd7tKvfrF43n1Pe
-rbf6Xaj2082vug92vY+r5bPn/+n7wO7zJvOsv9l+V+89t80n55xzzus+Buec
-c845r9XbPU7Wrnqvy+6D1ftiNb/qONl4q97N/6k8Vj2Lp/b92+2jek/NV3ff
-z743s+8pP+O71rF73lXz43//vWtdPtWjervm8TbP4nR+q/eWb1233d/dKG57
-P2/1XeWz59Xp5+d//7vab1R+yzk/2z4af9afWt/uvN56b9m9fk+td9TP7HtX
-vSd083x7P992r+Ccc845v9XH4Jxzzjnn/+m7+tuVRzffrH3WbzW/an+n77+z
-83k67+j3Lq+O/1Re3edfXffZ8m6+UZw+13jN3zrfZvP7Nd/9HfpUr7Y7/d1a
-9Sw+5b4ReXd/35L3bo/Kq/vitvfzVn/qffRd+0x/+l4SjbPrHOm2X93vs+9X
-tf3seLfvp27909+hMXatw1N5PvW+Rv70d4Zzzjnn/Nt9DM4555xzvre/6D4W
-tcvaZ+N226+O91Set/nsvD2VXzV27d9d9bL23XmOfLU8yve2c4rf4bvf59PP
-c7tH8dZ5dZvf8p18yrM4nd/b95DTecz6GG+/97/is/eZ7nvIf8u773n1/V/d
-j0+dn1G+me+a/9X2T6/3Ld+Vp79P1efOfr+VZzWvrL+u37aenHPOOee3+hic
-c84557/mWb3d48z2F93ronrV9qv3yCyvapy+Fz/lY7w13lP7sFqvm9/sftu1
-37P8OJ/x3e/p6ee53cfyXefmbR7F6nf7Vs/idH6zvnt9b/dquyhuew9v8dnz
-cHcenK+0H8t3f8+6/UV5detlPpafvj9k+Xyad2PXfot813c0ym/Wd/V32/pz
-zjnnnN/mY3DOOeec/5pn9d4aPxs3utdl5aPfeh996nk/zcd4a767Pvs+Vfvr
-7udqPrP5Rd7dp91zgH+3r56DT+f3ad4tf/t7//Z9Jqp/23evux5jnM7v9u/+
-res2hnPu7969Z2T9n34e/q5336vu71mfbV89d6L3Z9f59PT7XPUobvsevPX9
-HOufzi9b96eft1p/l5+eX84555zz230MzjnnnPNf9bfH797TVvs7fe/c7W/P
-222+u98squ2r/VfbZc+b5beax9PenYe38uJnPFvvKE7nfat3z61b8p71KHbN
-1ynP4nR+q9+vMW7Je9aj8u7z87/7ajn/bP+079nqc+1qXz2Hdt8jTt1vbvPs
-d/f7f/p5Vu8D1XbZ7+68ZfVmvVvOOeecc/6rPgbnnHPO+a/5WP7Wvak6TjdO
-3y9v8131sjj9nLvKu3F6X3fzmfXVdlG9rL/d+fDP8O57Wi3fld+neneePtVn
-5+FWz+J0fru/u7fk/ZRHv3/NV8/9bv/8O3z2/M/az+az2m72nOjG7Py8NV+n
-z+Xuc+/6Pq/m962+GtV7xi7fdQ/inHPOOf92H4NzzjnnnPdivG9l/VXzmO3v
-9P3y130sj35HcTrvbr1Tkc1v9vxZf2/5bKzuL/6Z/tR50+3/033X+f1pvnpu
-nvIsTueX+ey63O5jdO8Np9+Ht3x1Prv988/y1f2QxW3nxu77ydvRzeP2+f2V
-79Wn+xjV70y3XVY/q3fLfHHOOeec3+pjcM4555z/qmf3pe69qls+22/UfrZe
-NS/+GT7GU/2eim5et61L99zZff5k9Vafh5/11ffj2z2r92n7fSyvni/Vdqc8
-i9P5ze6b2fP+Fq+WR3Hb+/P2eRPVvy3vX/fu76ze7P7onutZuyyvt86Pbr3T
-sXs+blsXvsdn39coZt+f6n57qt9b1oNzzjnn/BYfg3POOeec/9ur7Xbd22bz
-Wh0nGu/0/ZW/498Sp+cx8+o50o3VcaPf1fGqcdv5/ite/U6cyu8tXy3/NK+u
-822exen8dp/zn+JZ/Mp7Nf7+9XP1UzyL2fNndv1X71vffs5/SpyeR37Gx5g9
-j6rlu+4X3e/SbfPOOeecc/5pPgbnnHPOOZ/zarvofrar/6xdNb9qefU3/7tX
-I5vn3f4p8fb6dN/f2f5u8yjvbruofbWcr/nq+f50fqd91z6+zaN6t5wvs/vv
-lvxmn+d0Hk+f41m9T/PuPu3eF/gzPlve/X2rZxHt7+53s5rP7vxvibfP4Wr5
-7L3v1/2pdmN5FKvfo9Xz67b14Jxzzjn/Fh+Dc84555zf6d121XvgbH7VfnfX
-7z5P9z4cxW37YXb/RLG7v7dj13sz+ux+5P/22XpjPLXuv+bROmRxOu+3vLpv
-T+WXeRS3nQuz3+nT+XX3x+k8ZvP+tH3/1nvlO/SMd9tV9/Vtz/np/nZ/t8Xq
-891yzq9+z6r9VNt38+re27r1o3pVn53Hbn+cc8455/xuH4NzzjnnnH+nR/fC
-an9Zv6t57fo9m8e3+Gq7bn9vxe79/NS+ifLi//Yssvkd61X74//2bB2rv7/F
-b8ljdT2zdrecC911uCXv1fLbvBqn9/dur353TuX36b56HliPZ/xUf6vn6dvx
-1Dl52/l/+vsye395+tyKYnY/37YunHPOOef8GR+Dc84555zzf5VH98usv9ue
-6zbP4qn1jLy6zrsjGzfLr9o+G393u26+/N++2l+1/6jdr/jq/D6d39tebXdr
-3lHcfk5lcTq/1ffhdN5RXlWfbXfau+v2bc+/299+X7v58Xfbra7nbPun49R8
-zvZ3y/flNh+j+12Y3aecc8455/y3fQzOOeecc875umf13hp/tV3WPqqXtZ/N
-Y1c+q+sxWx7lUZ0/vuZZvax+Vu/XfPZ9eyu/t727r27x2ffl7fc2itP5db9P
-t3v0+1N91z5/Kr9P99n34HTev+rdc7b6Hr3Vb9TP7Di788nyqPpsu9V9wDnn
-nHPOOX/Ox+Ccc84555zXPYu3xq+2+/M7+pu1y/qJyqOolmf9VfOo5pn9zjyL
-7nPzZ3y1vyhuO6duPR/fyuPtc3h2/73tUb1b3s9vyft0HrPnXhS37WPn0rM+
-lu/ef3yPZ7G73ew+2LV/svyq43fznO23+jvz2Xan33vOOeecc875fwfnnHPO
-Oec897fv16v9jX+j8qx9tTxrN9brlmfP1c2vmn/3uWbn4el8+ZpHv8fIyrN6
-3+K73oPb/JY8Zj2KW9+3LN9b8r49v6e+27f4rnP627y6vlE/WXv+jo/ls9/f
-bH9U++2O99a5U82rml/2ezW/Vd/dX3V9b/lOcc4555xz/gk+Buecc84557z+
-+7Zxon6i8tl+s/az7TKP+u+O32236t18ZvOu9sf3elQ+u/+z8m/x1fPl6fxW
-/ZY8Vs+TyN9637K45Ty/5XuTeTVO78vMu/vllrzf8rF89v7wVH787+Xde0bU
-f3cdT59HT9+XZuc1G2dXf7vuOafO4eo5wznnnHPO+S/7GJxzzjnnnP+yZ/Xe
-Gn+2v/FvVB71123XHS8aZ1d5lleW361e/Z3F6j7hPa+WR/W75d/m3XPklryj
-uC2/7vydPv+iuC2/6Jy97VzK4tZ9Oftd/FafLe+er3zNq+VR/VvP593n0eq8
-zo6/el5X+4naVctP99d9fs4555xzzvl//+acc84555zHvqu/rP/ZccbyaNys
-37fbRbHr+bvjdJ/nds/2X3V/3vI83+5ZPH0+3e6r+/cWvyWP1f331ntSzev0
-+/pp58nY/lbv7o9v9dVy/ox312Nsd8t58dS53T3XV/f37Dm5+jyz43Vj9dyc
-7S/q97Z9xznnnHPO+c0+Buecc84559/k1fKnxt+db3S/z8p3tav22+0nalct
-j/qv5hX1860+u25j3PI83+7VdlH9KG47r2f9054zKl9d1935ZfXfeh+qeZ16
-L2/NI/qd1X/bq+fet3m13ex3gu/13fv4tnvGU+f26vxE9XblVW23+7xe3W9V
-n2331n3i9D7lnHPOOef8TR+Dc84555zzX/K3x8/GrfYX9VPtP+t3dbzZ/Lpe
-LY/qP/U83+rd8u44tzznp/gYq+dLVn6rnzrPd/tteUT7cPz9tGdx+v07fY5V
-47b9vnpefYqP5bPfz6fy+1Yfy6v3j9l1ue1+cKtXY/e5OttuNY8odn2XIz91
-z3hq3jnnnHPOOf8GH4NzzjnnnPNv8izevi/vGifLu9q+67Ptqp7lO/tcUf2s
-XrV/Xiuvxu79/2selc+ek2N/n+Zvn/OzXo3TeVS/a099F6J83nqfTucxG6f3
-e3XfnMpv1aN6s+/L7vw+3VfbRfVv+35/qq+u2+w5uKvf2ec89Z3p+i3nfLcd
-55xzzjnn3+RjcM4555xz/gs+lkf35t3jZ/VWn6M6fua7+zvtUXTX/Zbn+VTv
-thuj+v6cfs5bfSyv/s7itvN9dp/ckl8Wt+Xx9D6+LY/T728Wp/dv9Xv6qR5F
-9Vy57Xlu89X+dt9DeM27943VdTzlu74T0e/Ms/6r5bPjr87D6fXjnHPOOef8
-pI/BOeecc875L/p4b+62iyLrp3tfz8bJ+umO2+3vdt9V7+28f9Wz+c9itn/e
-+33LOV712X11Ku9b84jqP7X/svGfyuPt8Xafe2/5avkt3j33bsn7U3z1Pa/2
-z5/1KLr3iU/1sTyqvzoP1eiOW22X1e/mc8v6cc4555xzfsLH4Jxzzjnn/Bc9
-ujd3y6PYlXc1uvlUn7s6b9/q3fJqO/6sW6e9HpVn9cd2t/steWTn9eo+r3oU
-T++/6vhP7/e3x3trXb/9fYm8W++WvG/32ff7tu/ct/sYu86j255zt6+eI1F0
-v7vV9rPn+O79cMv6cc4555xzftLH4Jxzzjnn/Je92q567476q/ZTzbM7fubZ
-OPzfHpVnv/mzPpavRnXdf8W75Z/qt+Xx1nxn42f5zHp1/Kf39dvjVfN422/J
-Y9V3rce3erW8Gu5BZzyqd/qc+xZ/u9/VPLq/q9/lap6cc84555z/so/BOeec
-c875L3u3/Kn7epZP1m4sfypP/m/PorqO1Xb8rGfx6+9l9fcYt3wnsvU7nV9U
-/tZ4Wf3VfZON89R39+nz4pZ9tPv9vWX/j7/fei9u82p5VO/094P/z1+jep51
-251+zm/32e9Stb9deY4+mw/nnHPOOef8v4NzzjnnnHNej9V7eXXc2fIsj9X8
-+ZpHv7vtn8qP17y7zt7Lv8dt5371PVv9buz20+NF9VfPyWycp/bjW/s/y+Mp
-Xy2/3W/J4y0fy7vfm6j/274f3+5jzNZ/Kj9e82y9dr3f3e/O7d9HzjnnnHPO
-v9HH4JxzzjnnnL/vu9qNf7N61fb8GY/qZes9Rnecajt+xrP41fe1Gree79+a
-R7X/1XMyG2f3/vqVfXtLHp+a31vPPzs/t53jv+pRvdXvfzZOtR1f86e+P93y
-3XlxzjnnnHPO9/kYnHPOOeec8/d9V7vo3p/1u7t//oxH9arrODtOtR1/xrvn
-xi15v+XVuPXc//Txqv2vnnvZOLv30bftz7fH+7b8Tj3/7L2AP+tRvdVzMhun
-mh9/x6PfWftu/1G7rL/b5otzzjnnnPNf9jE455xzzjnn7/tqu6y/7N8D2e+s
-Hv8OH2OsX63H3/UxZt/nqPyW51ydlyhOfw92fxdm5+HpfqN+dvUbjfPU93N3
-3qv75/Q+rvotebz1Xu1+/287Z3/Nx3Av+i1/6r3txux3gXPOOeecc37Ox+Cc
-c84555y/71lk7Vbv/WP7rJz/pq/ur1N58//5a8yWf7pX463vQXUdnvLZer8a
-t+2r6v3gbb8lj7ff46zdLefgr3pUr3vPeTtvfrdX99sYq/suKz89L5xzzjnn
-nPP//s0555xzzjm/z8fy6F6flWe/V9t1++Xf5d39M0a3/25+/B2/JY9ZX423
-vgdP9yuejdv3w+o+eTqPt/22c4r/PbrnevWeMZsf/2yPyqv1o5gd96l2nHPO
-Oeec8/d8DM4555xzzvk9Xi3f1c+f8vFv1H72N/9Nj+pV34tqP9X3JeqHz/m3
-ngersft7IMTf4u19dtt9afaeVD3H+JxH8fR3/1u+P/wdH8uj+rP7era/2X44
-55xzzjnn9/kYnHPOOeec8+/zbrusn2776m/OKx7V2/VeZP112/F/exS35NfN
-uxq7z3fxG/H2vrn1PlOtd8t58Wle/R1F9n1eHZ/zGR/Lq/Vn62Xtb5kXzjnn
-nHPO+fM+Buecc8455/x3PCr/8zvyLMb2WV7VetX8OK94VK/7vmT1qvuf13yM
-2/MT4hPi1vtJVv+29/9TvBvZd7L7neV8xbv7sHqPqOaRRTVPzjnnnHPO+e/4
-GJxzzjnnnPPf8ag8+t3tp1tezauab7Ud50/4GN161ffl9HPe4tW4PT8hnozT
-941q3HKunPYo3vrucP6mV9tFv7Oovlez+VX74ZxzzjnnnP+ej8E555xzzjnn
-XZ8t//M7Gy+rNzsO55/oT8Vtz3nLPN6+bkJ0Yvd3f3bc286D3b4ruvckzj/Z
-x+iWd39H/d02L5xzzjnnnPPP9zE455xzzjnn/Cn/8zuqn7XrjpuNUx1v7G/1
-eTk/4W/F6ed8yoUQ//+45b10TnK+z6vvx+x3Mypf/R5n+Wf1Ts8755xzzjnn
-/Pt9DM4555xzzjm/3f/8jupn7bIY+6+2i9pn/WZ5Vvvj/A3fHaefZ9WF+Oa4
-5T1zXnEee7Tfd70v3fLq97L7HFl9zjnnnHPOOb/Vx+Ccc84555zzX/E/v6P6
-1f665d08unlW+6vmyfkT/lY8/TxCfHM4Bzhf9+p7kNXP2lX7ne1nNs/qPHDO
-Oeecc875t/oYnHPOOeecc87/7WP5+LdbHtXP6u3KK+un22+WD+dvuBDic+L0
-ecF/08eYvbdV+41i9T4WebXf2f4455xzzjnnnNd8DM4555xzzjnnn+Vj+fg3
-q9/t/+m8sojy7vYf1c/659/pQoh9cfp95u969xzt3hu6MXufycpn71mz943T
-68o555xzzjnnfI+PwTnnnHPOOeecr3hUXu2n+7s6/q7+ovbVfqr5ZD7bjvdc
-CBHH6ffz2332vNr9nezG6vd/9n6RzV/Uzy3rzTnnnHPOOef8O30MzjnnnHPO
-Oeecv+d/fkf1Z8d5O6rP9WkuhIjj9Pv5lJ+O7LzP8o7q3TK/nHPOOeecc875
-L/kYnHPOOeecc8455097FH/qd9sJIb4/dp0nnHPOOeecc84552/5GJxzzjnn
-nHPOOee/5kKI9fjzfo3vGeecc84555xzzvmv+hicc84555xzzjnnXAgRxZ/3
-ZXxvOOecc84555xzzvnff3POOeecc84555z/qgsh1uPP+zW+Z5xzzjnnnHPO
-Oee/6mNwzjnnnHPOOeecP+1R/KnfbSeE+P7YdZ5wzjnnnHPOOeecv+VjcM45
-55xzzjnn/DmPyqv9/Pldbf923Dbfu9dNCPHfcdv7+qnvfXa+R3+r/XW/J5xz
-zjnnnHPOOV/3MTjnnHPOOeec853+53dUP2s320/WPhtvtt9qZO268zvbntdc
-CBHHbe/rt/lsve53t9ou66/7vczaZe1X+1nNl3POOeecc845/5ePwTnnnHPO
-Oef8szyqV+1nV/2sXjZON7rPEbW/bT35WRdC7Ivb3m/+jHfP0+53uhvd+8z4
-e/U+M1u/mwfnnHPOOeec88/wMTjnnHPOOeec/9uzetHv1fG740TjVvOZzSvr
-57b15N/tQojPidvOD/5dPnsfOX3P2/W8UczmwTnnnHPOOee85mNwzjnnnHPO
-+bd6VF7tp1uv2r7aT9Y+Gz8bj/MT/lZ8y3MIcSK+5f257fzjv+HZvWz2Hjl7
-z5ztJ3qe7rjd5+Wcc84555zzT/cxOOecc8455/w2j8qr/fz5Xe0/+tuNLL+s
-f85v9t1x2/Odng8hborb3rfT7+dtz8d/27v358xn23fvt937dlafc84555xz
-zm/1MTjnnHPOOed8l0fl1X7+/J7NJ8ur2l+339vWgfMTcdtzf9r8CfEJcdv7
-+Wnv+W3PzX/bZ+/dq+XRuNV8qvln7Wbz4ZxzzjnnnPPMx+Ccc84555zzVY9+
-d9tHf6txy3xwvuLdfb8atzz3W55FdP50XYgb4q335unxP8VXo3qe3PbcnK94
-t92u39m/OzjnnHPOOed81sfgnHPOOeec/653f3fbRe2j/rLxduXL+Rte3beZ
-R3H6+W7xLLJ1eMqFuCFufS+juO18uW3+3vrucP6Gz97vs/em+++U6nd8th/O
-Oeecc8757/kYnHPOOeec89/1P7/Hv1k/Wftuu6we5zt9LO++L7P9Zf3wf/tY
-np1nb7kQnxi3vt9R3Jbv7b46z9V7ne8df8N33ddO/TuIc84555xz/ns+Buec
-c8455/z7/c/vqlcj6q/6m/OOj+W734us3W3z8ekelWfrcspn4/T44jNj1z5e
-Hfe0j+XV57rtOW732XMoOq+7/XW/E5xXfNe+694PV98LzjnnnHPO+ef7GJxz
-zjnnnPN7Paq32s+f39Hf2f66efHf8LF8dl9H/WT1u+Pwns+eN1H5aZ+N0+OL
-34hd+3513Ft9LF+9b/E579bb9d3fdW/m3+3VfbR6D1q9r1b74ZxzzjnnnN/n
-Y3DOOeecc87v8dn21d/j325e2Tj8u311/6z2n43D3/VovT7FZ+PtvHaNI96N
-2/fDrn1y+hxa9dPj87/76j05q7/7Hs6/w6vnxGq96ri33Jc455xzzjnnfR+D
-c84555xz/r5Hkd3jZ+/71fxumyd+xrv7bLWcP+vjenbPi0/3LN7Oq/p+7R4/
-iu58/Vrctq92neOn9tW3ePX9fTsv/ncfy2f39e68+Gf76ns/ew/o9sc555xz
-zjl/38fgnHPOOeecn/fuPT7qL2tfHTfqn3+3R3+jOJ3vr3u3fXU9u+fTLZ7F
-Lfnu+i7Mfi+ycVf7646zO1bnYdd+2zVO9Xw+va+jPMa47Rzdtf+r87DrPOfP
-+O56/LO9+t3ulnfPgdXvAuecc8455/x9H4NzzjnnnHN+3qv3+G69aNxu+S3z
-9Ks+lmfrmLWbHZe/47PnRve8+FTP4vZ8nx6/Ou6sZ/Gp43zL/ozGe2v80/vz
-U3wsr37f+Vkfy2ff/93l/Bnvnrvdczk7J6t5nD7XOeecc8455//tY3DOOeec
-c87Pe/UeP9aL2q3mMdue13wsz+p12+3aD/xdj+pl7/u3eha353sqr2o+s57F
-p47z7fs2yuN0Xr5X//bu94Lf5WP5rvOiOy5/xp+uVz1PT5/fnHPOOeec8//2
-MTjnnHPOOef9qPa3mk/3vv9WXnzOu+tg3e707vsWefd9/nQ/Pf6qZ881xtN5
-Vcfd7Vl86jhv7f9bxv+Vc2os/zbvtj99fvCaV8/9X933t3v1d7feW+d+VH7L
-uc4555xzzvkn+Bicc84555zz/Pfu+3W3XpTHrnH4nGfrEbWv7rvZvPi7HtXL
-3t9v9bG8+/sW75a/nW9U7+39/i3jnFq3t8ef3S+n8+3m0S3/du9+v/idnu3n
-KKrtTj/ft3v3veye2918onGi+tV8OOecc8455/8dnHPOOeec8/3tZ/uJyrv1
-u571e8v63Oaz6/B0Xvw/f1ffqyjGfrL35Fd8jFvy+rbni+o9/T5l8Svjn1rn
-t8e/df+/Nb9j/Lrvei/N9xkfy6vredtznPbud3j2nF2tn/VT/V313fPAOeec
-c875N/oYnHPOOeec/4JH5Vk/Wf1d9/Qs7yi6+XSfv1vv0333fuBnfFc7/vfI
-zpXT+e56vtN5nT5vsviV8X99/316vqvPkdX7de/ON7/DZ7/fT+d1q8/O5+x5
-FMVT94rd++G2855zzjnnnPMTPgbnnHPOOee/4FF59f4c1cvqz9aLoppvd9zu
-70/zsTxb3+588j1enf+sfbd//vfyKG7Jt/s+V/fVqXyr+bzlWfzK+Kffx9vz
-6t53bvPo9xiz5+aveVS+69ybzYv3fPVczNp9mnff/6fmb3bc7r1o9f50+lzn
-nHPOOef8Bh+Dc84555zzX/CoXrWfXffyartdeUT9VNtV25/2av7V592VF19r
-n+3zXe/lt3v1dxann2PWu/Nzep3GOP3d7Ob91Hf7qXG6+6jbbtazOL1fs7xP
-57Xq1dg1P/w/f+8+b255vk/32e/prd+56ndh9/7bPY+z5d1z/lvPe84555xz
-zp/wMTjnnHPOOf8mr8bb9+/sObJ+u+NH48z6W+uZPW/Wbtaz/nnNu+/lU/v/
-13yM7j6vtv8UPz1+9btQjVPfzdXv2lN5PT3+29+f1ff17bxW9/1tee16f6vn
-UdYf/7vvOletw5o/9d2dzSOrt8tvab86X6fvN6fPb84555xzzt/0MTjnnHPO
-Of8lz+7Ju+/fUfls++r41ajO4+o6PLW+3ec+vf8+zav7eLVfXvOofPZ9ue35
-dp2Ht+Ub5TfGbe/96byyuOU8PHUORHF6f89+R07ntepRvdXzKqrP/x2z389b
-z8NP9yieOlerec1+FzN/avzV53/7PL/tnOacc8455/xNH4NzzjnnnPNv9qhe
-Vv+te3m1ffa81X6j9pl316Gax67xZ8fp5vGp3p2fXfuNz/kYb50zn+LdfXzb
-Od/dB097FvL6d/mp86G6r07nG+X5Kfmu+u72Y/BnfPb9fzqv230sX52fp76f
-1fGfqjf66vlRrff0d2mM1XXknHPOOef8k30MzjnnnHPOee677uXROKfbZ56N
-0+1v1zjR32icW/bT096dv6i/p94D/u+YXb9v9+z3bR7FLedENeT17/Jb9l0W
-t+XrO/R3z+qNcdt58u2+Wv5UXqd99v3uth999ZycvXes1stidT6i/t6aZ845
-55xzzvl/B+ecc84557/sY/nb9/LVfrvtozyq5dXn2d3f7DzM5vG2z85rFKv7
-hM/5GN3yW57j9PxV3/fT+X7aeVNtt/tcn/Usbjmfo/q37NMsbsm3+x08ne/b
-ntWL4pb3+dd99r0cf3/aes5+56v1Vs/D1fmsjrdrHk6dg6vlnHPOOeec/6KP
-wTnnnHPO+S97VP7WvTzLd7Xf1fGzmO1v9jm685Ll8ZR38+nugyiP3fuU/93H
-mF2nt/K9xbv7/XS+VY/itu/dpz1HFqfP893f77fOq9vznT0HxvJT+b7tUb3V
-7xJ/xqN63fMkGue283x3+133jSyPar3ueFG7qmd5vfU9mT2nOeecc845/yUf
-g3POOeeccx5Hdq9+6r6+2m+3/RireVf7q/afPVc2XjWPbr2o3eo8ZP3xd3ws
-z6K6L295vqe8Op+35DvrY/ntnoV813wsv2Wfru7rW/KaPTfG8lP5nvLV9+u2
-9+zXPKs3+/2N2lfHzfrbXS9r352H2f6j312ffa9X269+B06fZ5xzzjnnnH+S
-j8E555xzzjmvexRv3eO77aPy2eeu5jfbrprn6nizeWX9Rf1Xn+PpffTrPkb1
-fYnq3/Z8t8xrFLfk+/Q5HP0+7WP5p+Qbxel8q9+xbrvdPsavnG/VuCXf096t
-l7XP6vE1j6K6HlG77vu1e1/M1ovO3+p5mI0fjTPb7y3n8BinzyHOOeecc86/
-ycfgnHPOOeecr/tYPntf7/ps+yzvrF71d7ddNn+r/XbzXB0nKn96X/y6j+XR
-76z+7rw+3cfyyLvr8Sk+xuo8nfLT41c9i9P5fvp5MZZHfku+Vd+1z08/xy0+
-RnWes/6r4/CeR+Xd/b1rv6zm1W03uz+7+XT7O3W+rJZzzjnnnHPO530Mzjnn
-nHPO/xXR/TLqp1v/Vz2K7v0+8m77bN2eiuq41efM2mXtn55PPudjZOtaXZ/Z
-9t/qq+dN5Lc8X9W77T/l+5K1/7TnuCXfav6n9/Xqfr8l36fOtzG+9Xx7ysfY
-9d3I6vE5f+o7uLpfqr/filPzmXmUzy3nwW0elVfrv5Un55xzzjn/Lh+Dc845
-55x/h0fl1X6ye+Xu++jq7yhuW5e3vTr/UUTtT8Xqfu7u867vfj9+xauRta+e
-h7c89+3ene/T+T7lUdxyzld913f2lGdxS77d9+e2/d6d/9vy3f3cs+cgr/ns
-emRxy3nw6b763ezug9nv7lvRvSeM9Wbn4Vu9GqvnxFPnVFa/up9vWxfOOeec
-c/6Mj8E555xzzj/Dq/e/2XFW75VR+a76Wb1sHrI8svE+zaPYtc6norsPur7a
-nv/PX2PXez1bj//7bxan833bq79v9Sxuy/dXnuP0vu6e22O903ndOh+R3/Yc
-t/ps+6ifXe14zZ9a99ti17lx2/u3uh7Vda62y9rPjrOaV/c5d++L2/YD55xz
-zjmv+Ricc84553yPZ/V29Z+NO9abzWt23Kj9r3o2v9X2T+f9KZHtx1WPyqvv
-SRZP5//0PETlUXTPK77Xu+u663v0ad59f2/3sfxTv9dZ3Jbv7H67zaNY3W+f
-5rPvj+/eGc/qRbHa321eje4+f2sePiXeOoer+7lbj//9d/U9iPrrtt/1PZp9
-/tn+Oeecc855zcfgnHPOOec9v6XeeO/r3g+zuGW++bv+LXHbvGbv4ep7utpv
-ddzq+VXNg7/jY3n396d7Vm+M0+fELj89/qpncVu+s+fxp3gUv3KOOFc/07Po
-7veo3a79kbWPxu+2u8W/JW6bV/6O7+ovO9eq59TseN1xOeecc855zcfgnHPO
-Of9V39Xfar3s3jbWy/LP+o/q8c/01X25ut/fjtm8bluXbvmu8yc7d7rPx+/w
-1f13y3M85VlU293mUb3qveKpvN763tyW7+y+PP1+dL8HY70sbnuOt+cpqn9L
-vnztd/f7XI3Z7/rq+/vWub46P2/HU9+D3ePwM56tb/V9Xj13snrVqD5vtZxz
-zjnn/Fd9DM4555xzXovxnhXdu6L6mXfzu23+fsWz9VndX2/7WD6b/1ORvW/V
-8qjft70b3fMjq8c/w1f7G2N3/5/q2fkw+32+1U+Pv+pZ3JZvdd5PvwezHpX7
-Hs2V7+6ff5bPniNZ3PJ8o1fz7bZ/Oj7t+5TF7PnNz3hWb/d3vZrP6fOEc845
-5/xT/P9pt162ZFd1RQGe///q277sqSUJsMFZoU4NBw8JjMkag3POOef8r3nU
-763/w6p1ZeH/vv/2sT17X7Pv5ZZ1r57TLLL9Wt3HLN+uerrf6ew6u+Nm2/m3
-ffVeWp3/13yM6nf1dZ89J0/XtepZ3FZv9XclGnfb97Trd/Gvrbt6D1efx/jr
-9/xf913tY79qPdV+s9/F7O/BGN39mf0Oq571u+V3K4ruvdQd99e8u0/VOHVP
-vZ2Pc8455/wrPgbnnHPO+V/17P+lp/4/q/6fls2bjf+V/wdP79stvvs8RtH9
-PrJx0fzV/N35Vr/Dpz16HuNUffxdr57zcfyper/iv/67mMXsPXybZ3Fbvavf
-9envZtbHWO3H/x3de43/hkfPY5yue9e6Zr+Dal1ZfVl7dd3RfFXfPd/bvmvf
-dtd1yk/t21vf+9P5OOecc86/6mNwzjnnnP81H9vf/j+sm7e6jsxveQ9vrfdr
-PravnrtqHbPnM4qn2rvnJBs/61GdUX2r+89/w6v3YPSc9ftrnvUbo3uffcWz
-uK1e6/vv9tu+s9nvMovZ7/qvePdey+Z5ul5+t4/tq8+77oXZ9u59Ons/7Vpv
-971knsVtv3OrPvv7+XRdXX9qvad+T/3+cM4555zXfAzOOeec87/mY/tT/2+t
-zhv1G6O6/qf2bzVuOx9Pn7OnPHtePYfR/Nl8Ub+qR+2r65wdx/l/+a7v9PQ6
-bvfZfmN8xaOo3m9f9Sxuq3f197E67is+xq7v+q/66u9IdRznO3xsz6L6u521
-z34H1fGzvru+qmdx+nfxKe/G6nnL/Kl+u85h11fbOeecc87/io/BOeecc87/
-7av/h2V5sv/Xsnmicdl82TzdfLvrvM27+7b7HFVj93mdrW/3OeiO273PT71P
-/ls+xmo//n//GU/fV7f56fyn1x3FbfXu9tPf3+7vbPZ3+K16v+rVfdz1fvjf
-8Opz5lm/p34Pn76vdu9zVMdTPtt++ndx1md/Z3bt69N1Zr46vvq7wznnnHPO
-//3MOeecc87/7dn/Ubv6ZR71i+rOfPb/w269q3U+5d06V9/frI/tWX278jxd
-d9b+9Pl5+j1Gceoc8Z4/fb+dXt+v+Bizv2tf9939Tnn2fqPxT/9ePO3V++K2
-7+/p7zjrf9s6vuZjdL/HXz+Xf8Wf+p3I+u3O071Ho/ZsfNWz513f66nfsah9
-9T295d37LfLu79quOnefq9n7YjU/55xzzvlf8zE455xzzvm/25/6P6w6PuoX
-zZu1z/5/uFpnN1/Vu/Xvfp+7z8UYT+V/aj1jexTd/cjmy/JkXj3Pu/fj9Ln7
-q77rPc6+1269/N/tY7/o+Vd8bM/25a263lp3FLfVW70XuvfD6e9vt4+x2o//
-27u/U91+3XuZv+Nj7HqPka/+DmfRXdfs/dmddzXfU3nGOOVje/d+2u2r57la
-fzd/lKc6X7f+rt9y3jnnnHPOv+pjcM455/x+77bv/r/hr/8fEvV7ap+jv9l8
-UZ3Rc7W+rJ4sb7d9dp7ZfXvLq3Xuyj9bz6xH82c+O+6t+XZ/j0+/97/mu37X
-Mt9VL695FLvvn6/66u/ord6910/Xu+pRv9V77qs+tnf737KOX/EoVt/bXz3f
-b/9urt6Xs+PezvPU/bPrPI/9duWJYraet3xs7/4+zo7P5pnN1x3fHdedb/f9
-f9s9t+v3bPe5e+p39vS+cc4553zdx+Ccc8553avtq3mz3/HV3/8ouv9fdPOM
-88yus5r/1HmY/b+tei6y/t26qnV256/WlfXrnsvTnj2/5d33tuteWb0nVufb
-Xd/qOaz2q9Z9+ly97WPM3ofVeavjb9unr/vs+G77Vz3rt/r7fdp3x23r+8r/
-DW/52J49/9V9Ou2z46OYPQezdfyar+7L7L28+55/ar7V8zk7X7TPt9xbWZ1j
-3OZR++z7zeaL+j31+1Yd99R3UD23b3tUZ7fuLFa/02o89Z0+9V3cdh4455zz
-L/sYnHPOOc99/H3dNV+3X/f3P4usju580bzV9WfzRO23nJOuV/9v2/3eV2PX
-eY76n/o/eXZ/b6kru6fe2pddvnu+1Tyr7d3nX/fZfZt9v9X6qv34Xp/tN8Zf
-89P531pfFLfVO+unv79bfAz39d0++91meWb7n96Ptz3rt7u96rPjTt+Tu+e7
-/X6vPt/qWUT7P3tud8fu77263tt8bI/iqd+JXeO79WX5Zt9vta7u+K+dK845
-5/wmH4Nzzjn/i9593t1vdVz0tztf1v9XPduHt+roevf/vLeieg5nz/Mpz2J1
-vbu8ei5258/qGeOp73a2X9Wr7d06uvOuntvZ81HtP7ve1fl23Z/8HY/6zd6n
-Uf9f8d37fptX643muWUdVd/9vdz2fT99Xrvn5/Q6+H//Hftl843x1vnpPnfr
-7vru380sT7e+rlfX8dQ98/b5H+O2ezaKp97/Lu/uwy2x6/58yrt1R/1+1bv7
-MHsvVs9Dd96n5j99bjnnnPObfAzOOef8L/ru39vu72+13mz+bFyU55b38Ku+
-+xzcHk+fu6fbZ+u41bPnp/J093u3Z/2q6+vmyfLfej6qPnt/Vft330t3nmxe
-foeP0Z2nOt/tnvXb/X3f7lncVu+ue/av3mfVcd3+/C4f26vPUcyO647f/fv2
-tq9G9j6zOm45f6freivPU/sV+ey+dtu73j23p2P2PHXnG9v5Mz57D8322/Ud
-r66jWg/nnHP+F3wMzjnn/Jc8al/9fXz69ziLaL5sXv7bfls8td7ucxan/x/f
-7afusVWP6tztUR3Vc5XVn+Xb3T773VSjOm72O13d5+p75Hd7do5X27/qUb9d
-3+Vtvuv3e3ddT/vq7+Qt3/FuH9uz5+7vBb/TZ9urebJ+Uf8ouvdWVk91/u55
-X/2d6e7navtufytPd/2r5/krXo1d3+nu7+mWOLUP/F3ffR5P32PVum67tzjn
-nPMnfAzOOef8lzxqr86z63c3q6tbfzR+dR5eez71nrN5q/Xsiu75f/o9VfM/
-9Z2f8tP5M4/63fKdz3rUPrsf1flXvVrXar6sX3Ye+N/y2d/lX/dqe3Xcbeub
-vY+ieW5ZR9dX3+8t3/FbPsZqP/6b3r1f3j6fu++T6j1Yrbs67muePd/mX6v3
-6e/nrfzd72Q1qvsw6911zN5r3br+us9+/9V5svm657/7+zv7fe+qg3POOb/R
-x+Ccc85/yaN463c3q7e6nl39b3s/s++zuq/dfZyt6+11d8/70zH7PTz1f+1b
-+W7z7PmrPrY/5Vm/2Xsjm+/t+3pX3tVzV+3Hf9Or46L+f8WjyPY1G/dVz+K2
-emfXt+s8/FUfY/Ue4r/l1e+rOk/1HM7Os3r+s3FZ/2r76fca1XdLXX91Havn
-+K17YPa7ejpm82fn6S3vjn973Gmvnv/dz7O/F7vvt7fycc455zf5GJxzzvkv
-+dj+9u9rdXzUL5o3a7/tPVTrG9uzfrvresqr7787LsvXHT/2y9q79fA5nz0H
-p+qtetav277L3zr/1edo3qpX66meu+58nFf6RdH93n7Nq+2r89zi1XWO/b+6
-7u730J3n1z16HsPvGX/Cu/dad77Z+6Fa32y+6vf39Puo1nP6nHS9+/5O1/vr
-Pka1/an3mNXRrW92vlOe9avu/+66nvLZ95nNd+qe3PU7yDnnnH/Zx+Ccc85/
-yaP23b+jq7/P3fFjnP79r9Z32/nYte7Z9c++9+65mq03es7GrebP5v1Vnz0H
-p+p9yrN+WWT72p0nq2f3+33rfI39smfOVzzrl/WPnv+az+77r3gWt9U76933
-fvr7ftvH6N4bt6yD/7ZX20/VuWu+6DmK7vdc7XfLe3/6fVXP2el63/Yosv2q
-jpv9jt96X2N71aOY/d5v9+69+HRd3X3etf7Ve/6p38fb7hXOOef8CR+Dc845
-/yWP2qvzrP6+Vsd380R1P7UPWb7Z/Ld7t32Xr44b+3XHZeOr/aO8T+3bru/x
-ad/1Xk6v47RHMXu/z56n1fk4/2Uf26sete+a/yve7bf7Pbzt1fcdzXPLOqpe
-XV82723f/Vv3StRv9711y7o53+m7f0+q32H0XJ23Wueve9Yvav/KOqrnY9Z3
-j9t1bqt5ZvPt8rfyvOW777nu/bq7zmz87Pnt/r6s7gPnnHP+iz4G55xz/hc8
-6rf797U6vptnjGod2bhs/Ox6d9Wx6t32t/8fWz0/s3VE+avtu8Y9tc/VvLP7
-nPWv3kPZvN16/7p3x89+n6t1cv6LvnrvR9H9HfpVH9urvze3raP7/qPxX133
-7O/Y6e/7tGdRvYe63xfn/H/bo/7dPLvr/Gs+tkfRfZ9R3tX3260n86zfU/u1
-+p7e+o527fOsn86f+a57afY8zNbV9VP38FPzcs4551/0MTjnnL/jWcze27O/
-A7ftzy2++rub5am2Z+do1/utrqe6H1m+Xd7dx9P/d63ON8au+VbPa9Vnx3W/
-t+776H6/Vd9VT3Uezjk/5VF079Vd9++v++n8b3sWt9X71Hu97bu/xceo9uuO
-55zzWzxqr84TRdSe3aur9XTXleXPvDqu2/7UuLFfdb6o3659XPXd/d6et7rP
-s+81q2e2rmye1e/39P142sdY/U5n77Fqfs455+/4GJxz/nWP2lfvzdl6ZvPO
-3tvZPFlUx3Xru+2cvPUeV8fveh9vnZ9ontn+s/tz2qNYzfPU+YzmybxaR3e+
-2XxVX/2+ovkyz+a97RxzznnXo+dofPe+3/X79Wu+u98pr56HsX827pb1Rd79
-Xm777t/2sb06T/Q8Ox/nnN/uUXu13+hR/6f6Zd7tN1vf0+8j8ur7WK3vqffz
-lHfXmfXL8nf7Vd9jNu/q9/XWubnlvlv9HiNffW/VfFHe7ncazTM7/1P3Wzbu
-lnPCOee7fQzOOf+6j+2z999Tdb61zqx/N2+WZ1f+2Ty3+Orv8div+n6r82bj
-385bne/0/0uz52J3/l3ncHX+zKv1reZZPV+754/G3XqOOef8aR/bo5j9Pfmr
-nvW7rd6n1v12/rf9lu/4Nq/GOH723rpl3ZxzvupRe/RcjewerfrT81fXv8tX
-83Tn31131r867ikf23f3qz5n/U7ljero+i33V+bd9ixmv+tuPd26quOq9eze
-/27+rK7Zejjn/FYfg3POT/mu+arPu+abzTtb5+y9/pXfgWr77ve827O6xufZ
-85Pl3xWz69y1rlMe1X2qrlvXP+vVc9y9x6rjdn/vs3k55/xXPOrXve+rz/zf
-fjr/Ll89L7d7t53/O3bdG7esj3POT/vuebt5u+O6eZ/ex93zvVV39/1U13/a
-d73Pav7VeHtdp89XtY6of/X5Fl/9vmbv79n+u9/D7Lno+un7knPOu/c955yf
-9uw+695v1Xm746rzduevztsdz/87bqlv9nw/Hd1zH/mp/3+q7dX+T3n1/T/9
-f2HWfvq77X4Pu87f2++Fc85/1avPfK597HfbOmbXHcVt9Wb7Xo1xntu+41t8
-jFvq4pzzr3r1nu3Ok82b5Tm9L9V4+72c2pcouvv4tlfXNfv+n4ruObntuxjH
-8//26vnM5p29z6vzVc/B7O9D9zu97feCc85P/55wzv+ud8dX56/eg9183Tqy
-cB//pkfRPX+r+Z6OXf9vRPNmz7vug9lxp/10/szH9lNebb9l3zjn/Fd9jOwe
-nu3/Vz16D9X+T9W1y6vn4+26uv70e/yrHvVb7f9UvZxz/le9Ou62um+t63T+
-qlfrj2K2f7WOqF/mp+Lp99Otg3/TV9/3rvu0O756P2d++l7knPMxOOf8aY/a
-q/fV0/djVmc3duflf9Nvi7f2YbY963e7V/frdL1Rfd17r3rv78pzet845/zr
-nvWL+kfx9vhf9ai9+p7e2u/V9z327653to7d+x6NP/193+LV2H1/zN57nHPO
-/+3de3/1/s7yZ3XM9n97P7O6b6m369Vz0X1vT/ltcWof+B0+e+/Nxq77dvd9
-0a2Tc87f8jE45/xp78bb9+BqXVG/2f1zf5/xqP2p99yt61S8fS5X9/92z87N
-bfVmPlt39fvZ9Z3dtm+cc/4rPjs+itn8v+67xu+ef7Xf2N6tfxw3u/7VdVX3
-ddf8v+5ZrJ6T2X6cc87XfPV3IerX7Z/V0x3/tkfPWb+v+BhPnatq/lujul+R
-r+7/U3Xxf3v3fc22Z/NX4+n74pY6OOd89p7mnPOnPOr39j24WsfYPts/Gnfb
-e3vKV/f1V37nVs9f9XurRjfvW99vdx++4lGc2uenPftef/U9c875X/HqPZ71
-z/JmkdXxVY/as+fRu++5O89sXVm/ah27ztVs/dX22e8mG/8Vj+LpczV7Pjjn
-nN/hY4z9f/Wer+5H1H7LOmZ9jLf3OatnNbp5u+//dl99X7+2H5HvWueu5+73
-1B2/6m/n45zz7D7inPO3PIq37sGs3ur4av4oT+a3vbfZ35db6n3bd53favtb
-ses7+ms++75P1cs555y/4Vm/bv/deW71qL37PHr0txuzdUT1dPOsjs+ie06r
-/brvJxt/m6+273rmnHPOf9Gjfln/U/V+zU9Ht86uz477Fe++99P1Zr67XzZ+
-9jt6+7u97V7hnP89H4Nzzp/2anvUb/W+y+rN5u3mj/Jkfsv7md3P3XXd5mP7
-6jntjtv1Hrrtp9b7Kz62d58555zzL/nYHkXWHvXLnlf7fd2z9xX1m33P2fzR
-c+ZZnlvq7O5z5Ld9x7vvg7Ff5tX5onlW761b9o9zzjmv+Njeff4rPrZXvdue
-5Z8d//Z6o9iV5zaP2rN9r87ztO/ul41fzb/rfEex+3vinPNZH4Nzzp/2LLL7
-6ql7sDq+m2eM6n6t9ptt7/5uZO1f8bH97XPXnW923ih2fa+j79q3br63PYru
-ek6vg3POOV/xqN/Yns0XzbvLZ8c/Pf9ur77H6rq756JaX/ScxdN5V/c5Gld9
-H29/x9V6d8+/y2frzJ4555zzL3vUb+wfxel1VOupjotidlw2X1ZvlCcbX923
-1XPw1L581cf26v5X59l1Tnf3y8Z3z+Fuj/JG7afvZc753/UxOOf8lEfx1H0X
-5cnm7eaP8lTzRs9dn61vNt/bfvr3dLXuyHf9rq+2V707btf31f3us3zderNx
-1TpvO8ecc875Th/bs/Hdecb+1efuuCx/NG83b7X/Ls/eY9SvOq6avxrd89Ct
-c/Y8dPdn1bt5x/5Z7DoPs/Puqiub5/T9yDnnnD/pY3vkUXvUL6sjG1fNE7Vn
-nj1nXh232l4dV9337rpX93m3n86/Wm/3XMx+z1m/3d/D6nmL5tt1v+2el3PO
-d/sYnH/Ro37R+Y/mq86f5evOz//tWb/Ze3B13m7+KE/0vLvf0/W/7d33+/bv
-6e48T9Ud1VttX70vZ332/5qn9jWrN4rT55Vzzjl/06Pn2Xmj9qjf7Hy76tvt
-T8+7+n677+WtmN3f1XOx+1xFda76qfm665w9n7PjOeec81/yXeN3edavuo7V
-urKo1lndz6y96k+fi6fee+ZRPW/l33V+u+Oj/a/u02y+1fm65352fPc7vO3+
-vcXH6O73rvmjftW6OP+ij8H/po/t2Tm6pf7q+a7W3c27On+3/mrc+r5mPer3
-1v2465xl46rRPS/ReejWuerd36Oo/dTvZtT+1Pf/9nqqPjtu935m0T3ns78P
-1XlvOcecc875TR4978oX9cvq6PaPojrPWz62z47P+nfH3xLZvmT9Vvf19HlZ
-Xf9s/933ye55Oeec81/0qD2KqD2aLxqX5cliV75Z3/U+ZsftrmN2P3fva9Wj
-fk+d61mf7Te7v1FU81Xnma1/t7+d7+31VOPp/NX7Z/W8V+t86/7bff5uO2/8
-rI/B+X89z56j2Xp2/+5Wo/p7sppnnC967tZVnf+W87bLb/l9zc7D7vf4dD3V
-umbznf4dnN2ft+p6ep27fPd8s3m67av79tTvKuecc86f825080TjM+/W/bRn
-dVXH3x6z73fXe1/17Lx0z181/2yc/v4555xz/r+xuz3LH80TRdY/q6vrp/d9
-dh93+2y/MW7x6v5V562+39k6s3yz5222ntVzsnrOb7k3d33vu95jdVwW3Xu2
-ep7G9tX7cNd9Go3vzpvVecs55Hf4GPybXr1nZ+/Fp9bR7Td772X5ovy73sfp
-56zO1d/p0+c/iu55qXrWL6pj9Tvtnvfq+Nl6sv63/d5139/sd74rf1THrnMb
-PT/lq+doV92r5+DUueCcc875//rYHkV3vmo9s/nf9tn6d/nX4qn9qL6P0x61
-7/oeovlmv/tb7iPOOef8F32MsX80fnX+at5sXHfe3Z7V8bU83X2sjrvFo6ju
-eza++pzl79Yzu97sede5rX7fb/vYnsXsPRS1d+va1b87PhsXzVPNX31vs/fj
-qlfryuLU7xR/18fgd/rYXv2uV++fXfdF9bk7bvb3Osq3q95f99mYPa9v++p9
-Ovv/wFMx+/9Rdfzq9/i0Z3VG8Xa9b53PbP5bfbb91nPJOeec87qP7VF026t1
-zNab1fXX/Pa4bb/e9l3js3mr38vqPXHL/cU555zzvD16HqM63y2exa79rO7r
-be852q9bfPY9d/s9HbvXu+t8nvoed+/7Lef1lK/e77vO5+x3t7rO7jxR+2wd
-t3xfvOZj8N/wrN/sPTX7vWfzZXVW5+/et9W8/Bmvxm11r96zp2P2O1u9B075
-2B756Xq79+Lu/wOqvwun74vZ9377++ecc8557GN71H92vtU6b9mn27za/las
-nre/6mP7U99hNe/seeOcc875Oc+eR49i7P/1da56tG+37kvWvzrutHfPQfV8
-n4ruebvlfK3GLefpV707fmzv/i5k41fr697Ht/xO8Lt8DH6nR+2r73f1/4cs
-z9O/n841/y9fbZ/Nd3s8/ftSzbdr/rF/9nyrn87frWuMt76jp37HOOecc36P
-R8+z42fnicZl85zev6e8O666f2/F6rmp7suvePb+du1bNG/3Ppitg3POOefn
-fWyPIuv3Vt2n83f381bP+o0RtWdeHTc7f9W/ErveczVPt53/LV/9nlbv99V7
-LLqfZ9f51fue/98/g9/pUdxynqJ6uu1ZvP3/Gucz/rWY/a525cvqyOa55R5c
-vTdvqav6f0N3XU+999Xv9vR+cs455/x/PesXtUf9onhqPbP1jPPt7v/0emfn
-2x3dcxP5W+c8iqfPQeZvrbfbPntvcM455/y8z47P5oui26/7/BXPnr/m3feZ
-+Wx09/ur0d1PzjuefdfV774as79HWfvTfksdfM3H4Ge9O+5r52bX/02rdc2O
-47/p1fMUxez5OxW33G+r/3d91Vfvy6/5GKv7Ue3HOeec89/3KKr9b1vP7d4d
-F8Vqezaue16i8dV5ec+j99L97m9ZD+ecc86f86jfGN1+1fFf9azfbfXu9rE9
-6n+qrtuiun/Vebrz8b/hs99RNl8W1XswG5flP3WvReNuuY/5v5/5b/jb52n1
-+8/GVftXn7PxfM5nf/+6sfp79LR3/x94K776e3xLHU//3p6ui3POOef8Kz5G
-1L/aj/87ns7TzV+NMe9sXV/Zz1/z7nm5pW7OOeec89s8ah/jlnpX/ZY6dr2X
-tyLLn52bt3z3vlXfXzaO93x2n2fvr24d3frevjdO3198j4/Bz3p13Klzk9VT
-9Wqeanu3rur4r/rs+Nn3MJvvdl/9PmbnXY0sT9Qv827e0WfzftVXf39vWQfn
-nHPO+Ve9+jzG6bpnvbsfT3mUd3VcFtV5Z9fx1PuK8j2d/2mvfme31c0555xz
-/nXP+o1xut63vdsvitV6svlmY/YcZO27x93u2XvLPHsP1bhlP3b5rvspmy+K
-Xffr7nmr+brn7un6eM/H4Ge9Ou7U+cjqyTxq3/1/SveevNWr76f7+37L+k55
-tF+r57g6rlpXdVx33mqeaN7bfsdO+679PL0OzjnnnPNf97G9GrP5q/Psyve0
-Z/VWfXXc7Hyz5yXLd+t76p7DU9/L7DjOOeecc/5vj9qjiNpPr+N2j6K7n915
-o7qiftl82bhqvur83XG/6rve9+66nvKnvpvMq/PMfu/V8U/f59Vx/KyPwe/y
-28/H6u/07PhqnU//7nf/H1n9XaiO+ys++/6fOseR78o39utGdd7ZeyJb92qe
-0z7bPsbpdXDOOeec855H/W6r86n1Rs+zvjpudr5d+5TlPf3+dnv3u+Ccc845
-53d61i+K6viv+hjZesd+3VgdV62reh6646J8u/ytPF/z3ee3O29UV9e799Bs
-v+481bpWv7un/ZY6+L99DH6nR/H2dxzlf+seiPJnvnpPr76v2f2p5vs1X/2/
-Yvd52/397K5jbI9i9r2c+p16K8+u388oTu8j55xzzjnn//IoovZZ3zVfFqt1
-rO5rtb7bzgHnnHPOOf8bHrVX45Z1ZD62P+VPz5eN77ZXz8Nt+z/bfupcvO2z
-/Z5+z6v1rfabnbe7/tnxt+fjz/gY/E6P2k+fm7fvjWh85k/d52N71q873694
-1i/6G/Xb7VnsPqez8+0+N7PjnrqHsvp27+Nqe/ScxW3/B3DOOeec87/hUfsY
-u/yp+Xbnees9RHHL+eCcc84553/Dx9jVr9qePc96Nn/mWb/ufNX9jHz2ve46
-D9X5qvOc8t39vuaz7avnMMv71nuq1lU956fv7dn3wu/wMXb1u+3e+VWP4q1z
-szrvqft81+/47Pe1a12nfPY8nv696Na5K8/u39vq/LPjnj6fu7//1XMVPUf5
-Mj/9u84555xzznml39gejcu8W8dqnix/17v7tOs9rM7HOeecc875kx71y6I6
-vurd+bL1dfN3x6/OV11HdR+q46p1Vb06/ymfPddP17XLZ89HFLvOZ5Rv17qq
-42fP89P38Bi3/B78uo8x+z09/V6r80Tjnv5d/Gte/R2P2qterataz6339uw9
-3P0Oqu27ffX3N5rvtEd1Pp3/9HqiePo87Zqvu5+76nnq++Gcc8455/xJH9vH
-yPrt8izf7jxZ/q5393mXR/Wt7jPnnHPOOec7PGofo+qr/cb2ap2rda+Oy3zX
-+5sdt7uO2fOze19XPerXXd/uulbP7ex32D0/u/bjqXto9X566l6t7if/d6ye
-z9336lN1ZvM+tX9Zv+j51z1qf+v3dPV+Xr23s367fneeqn/1Plj9Tm+7V6v3
-ZHff3/o93fUdPX0/7PbZftVYrXN13277HjjnnHPO+W951K86TzTfbs/q2J0n
-y9/1Xfu9y7t1vFUX55xzzjn/W77aHkXU3vUsqvVk43f57veUPT/13p/Ok80T
-9b/NZ7+DU3XNjo/e6+r6q/m7vnr+dnnUfvref8vHOD1fdZ5s/tn8u+eLYvV8
-Rj57vmf7f8Wj9t3nI8u7697O8lSfu+Pe+n2p1lHtd8t9u/r7FPnXfzdO3zNZ
-zH43o+/uf2rfbvtOOOecc875N32MyGfHPe1v53kr/+lz0d2H6no455xzzjlf
-8afzZXmzfqNX+0f9ql6t5+19W51v7Lc7z+739xUf26vvYTVf1K863+z9MJs/
-G1etazbPW/fZ1zzq1+0fRXe+6vNqntn7J2uf/R5n5z/tUaz+bkf9b1v/27+b
-Uf7Z+yrq360jy7cr7+y81f2/7X7e9fvU/R5P1fuUV59P+1vz/cq555xzzjnn
-f9PH9tn+pzx73u1ZPL3O6G/U7y3v1nm6Xs4555xzzv/Lo/boeYyoPfNb1h/F
-qbpO56++z27/W31sf/q7eWpcFru/89l6nr7Hbvludu9vdZ5q/9O++37ePf6v
-evc77nr1ezntY/vq99+dv/ud745dv1Pd8dG42+/5Xb8Lp+vKzt+p/LfdD6v3
-yfi8+/eSc84555zzm7z6fNrH9rfrzWJ3/uw93nKOxrilLs4555xzzme8Oi6K
-2flu9Sie3v+snlv2Jas7GvcVXz33s9/TbB274un9iXzX/XTL/TDrs+fkr/uv
-3kN/zVd/B5+ur+uz98ht8dT9tfp/0S0+xi11rfrq9/j07+6t90DUb3Udt5wL
-zjnnnHPOZ8ZXx0V53vKs39v5n8qz672+5VH70+eWc84555zzJ7w6rtv+dN2z
-HtV5qq6v7mPm1eev+K73We3/lejuyy3nNKszi1vOJf9vv6UO/q5n/Vb/P1j1
-X4nZ37/bPYrV35fbvPsdnK43qqPqb33Xb7ff9l4455xzzvlveNQv6z9G1H6b
-Z/3ezv9Unu77vtWz6J7b29bHOeecc85/w6P2qF8UWf9s/qfW0/Xb30vUfrre
-2fWNUT0n0bjbPKu/+53dGqfP0e57i/+m31IH/xsu/v+45Xd3dp7V9q/42B75
-LfVW61z9naj2n11Ptz7OOeecc85P+NgeRTZf1P8Wz/q9nf+pPNm6bjl3Va9G
-1v/0OjjnnHPO+d/2rF91vqxflj+Kbr/q+NMe1Zk9f9W77V2f3efdLv7/OPUe
-+N/yW+rg/Bfj9v3s/n9aHfc133WPft2jfrv6d/f7tv3hnHPOOee80i8al43P
-+t3ip/Jn8fY6bzuP2b6tnsvb1sc555xzzvm/ImuP+kV5dvX/us+OP1XvUx71
-y85bFtl5ftu/HrftJ+c31cHv8Gp7Nf7q/X/be539f+H0/zdve7f9dL2cc845
-55zz5z3qN9s+xtf97Txv5T997t4612N0z/HpdXDOOeecc86f96jf2D97/is+
-RnU/b6n3q1E9n5nvyjubn/+m31LHV/yteVd/73bX95aP7V/5Xbj1dzTzW+q4
-1e0f55xzzjnnPHsevRrdeqI6nvLZ9WfP3X5RVPe/mz/z2X17yqvjspjtd/r7
-5JxzzjnnnD/vY/vY77Z6b/Fb6ui+3+h9n47Zuqrn97SP7d3vLhq/69xkdfD/
-9lvq2O1j++y5qc7XHf+r3m2vvp9uvt0xW//u+2zXfKd/32/1sT3qf0u9nHPO
-Oeec8+c9eo7GV+fLIsv3lI/t3XVn81Wfs3grb3X8qXMaRfccrvbjnHPOOeec
-/65H7d1n/t/ts/NG41fny/I8Fdl5yvpXfXbcr3j1++5G95xn8/yK31JH16vv
-afXcdev6dR/bd93rq3lW862er9nzdPr3/q/5rnN4eh2cc84555zz8x71i8aN
-kfWr5o2ed3nWr7vebp5svqfzdte/er6y/N3zNntObvveOOecc8455+c8ao8i
-aj+9Dv5//4zZ9xm1z+afXVe1rlnPYleer/qu5+ycdOu6zd+eNxq3+n6y+XnN
-o3P/1n0/+7u/+vuy+x7fXW9Wxy2/36f/bxhj9txl/W5ZN+ecc8455/ycj1Ed
-X21/ev7VdWT9quvr7kN13Op7y/JU17ta52x9u+bP8nDOOeecc85/37vtY7/q
-c3X8X/Moqvv+1HxRe3Q+svlXz2HmUb27vPr++L89O2fZuOr7eOu72v09Rf1m
-943v8afvrdV77qnf/W4dUTw17tR72VXfbb7rd/X0OjjnnHPOOeff825055lt
-r3p1vVn76rxZndXo7ldWZ3cfuu1d7+5jtZ7VeTjnnHPOOec88rE98uq429aX
-+Rir+1T11fqy+bI8s+cjG3f6nK56tb636/or/tQ9Vc3bzdeN6HtZ/a5/3Xe9
-r1t+f1bHjf121VHNUx23Ol/1e9n9XrI6s3p31bU6f/Q8xu7/GzjnnHPOOee/
-52N75uM83TxRZP2766zOPzu+m//tqL6f6vua3ddsf2bzztY1tq+e59u+Z845
-55xzzvl+j9rHyMZl/aP5q/V0PesXRXc/dvtq/ixm32+2j7PjorpW6zjlu9e/
-q66v+Wq/sX33vZLl2XWeozx/1bv31+nf12o8lefte3XX79fT52f19241f5an
-Wmc1/65z0u3POeecc845/zs+tmc+zhO1d+fNYrXuyJ8afyqy9zz2m/Wn3kcW
-2Tzd9VfPczUv55xzzjnn/O941C+bJ+oXPVfn664j6letO5qv6931r3p3XHV/
-Zs/D6jmZfe/Z/Lf57n6/6rvO4Wx7Nc+ufmPc8h52efU9rr7P0/50nrfqrvrs
-uNvPf3efdv9/0v3dq47nnHPOOeec867vGl/16O9qHVHe1Xqf8rfjlvV/Jd/b
-3xHnnHPOOeecjz7Grn5R/u74ah23+Op8u9/r6nynzuNtPrZn68rmvW19q57t
-29hv9n5YPZ/ZPNVxY9zuq+u67Xere+/tOm/d+W+7J2fH7c4fxdPnOZo3e59Z
-Pat17fo94ZxzzjnnnPPMq+PequP0fsz6qcje09f8rfeUvb/bzhfnnHPOOef8
-Xs/6jRH1j/pV59vVLxq3O381uvPN+q7zMTuue95W51udP5rvtFfHPXWeT/vq
-+lbPYda/e76i+U97d9xT3/HbnsUt9b413xirfuv9M/v73Y2n6tz1e3H6XHPO
-Oeecc86/56vPu/3UfoyxWn80z65Y3a/q8yl/+pyfqoNzzjnnnHP+ux61j1Ed
-F42vzl/12Xi7zlWP9n3XOYjiqXN1yqO45T3P+tievYcsblnf7vGr52bXvdEd
-v7uOrP3273jVT+evfp+n9+Upz/q9fV+Oz7vHveVP3X+cc84555xz3vVb6jjt
-2f6cimqdf81vqYNzzjnnnHP+93xsP11ftX3sV33Oxu/y0+81qu+p83Pr+qv7
-8lXfNW71e+zOk3lWd1bX7LnN6srmr46vjtu1rl/xMbrn+zZ/a79W9/Ote2z3
-+Op3Hs3/1Pvq1nv6nHLOOeecc8752H5bfbs8W+dsnmy+aux+L1m/7nxf8zFu
-q49zzjnnnHP++z62jxG1785bfe6OiyJbVzXv236q3lvW/1S9Y/yaP7Ufq3Xs
-6pd9L7Pf0Wy/aFy1jq9/f5lHUe0XjTu9vtP5x/hr3m2v7t9t75dzzjnnnHPO
-T3v1eYzVfNm8q3mqXq2vWn80brWup9cfxWqe7r6e/h4455xzzjnn/LRXx41R
-bb9lnaf9VP5b1t89L1lk+/srnr3P6rgouvNl81TfX7Weah2r+7K6f7d9Z7Pr
-GftHfsv9Fvnqez79Pn7Vu+2r5y175pxzzjnnnHP+bR/bM8+eq5HVt7qOW/aX
-c84555xzzvmcr44b+2Xtt63/1v19yrP6bqs3qjM7b2P/r3oU0b6Nz9XzsOu7
-766jGrvObbXfrvZbfYxd98ct6/tqvVm/bvstHkV1P6rzf/W9c84555xzzjnv
-+dhe9dVxs/M9te5b3gfnnHPOOeec85pnz6vzZnF6/VUf27vPt/nX6s3O1ex6
-v+Zj+673X/3+u9/30/H0ubndx8jO0+72r3n2fJvP9hvjNu9G93x2f78555xz
-zjnnnL/j1efdvjpudr6n9zWr5/T75pxzzjnnnPO/6lm/bL7ZuGX9mXfrPl3v
-7Ppuq+ut9Y3tma+OP+1RdPf5tnj6e9/tu+7h2fqjfrd8t7t+126r6ymvRvce
-3HW+qvVUz3/2/Cu/z5xzzjnnnHP+Kz7G2L87rupZ3DLf0/tdre+2c8M555xz
-zjnnv+5jexSr83TzVPtn9UTzrM7/q346/1OeRXfc7Dmr5ln1XfPeHk/t32q+
-Xeeuer5u+97evq9mz/8t61j1MarnZfa73/X/QHe91fycc84555xzzp/1qF91
-nmi+WX9qvt15nn4/3Xy783POOeecc84573nUL+vfba8+R5H1y+qP/PT+7/Lq
-/kd+yzpOexTVc7z7nK6OX813Op5e7+r3kcXq/Znl/2s+Rvd3h//3czS+e25v
-Wy/nnHPOOeec8//26Hm13y5/Kn8Wu+qO/kb9Zn1XnZxzzjnnnHPO7/SxfYys
-fzT+9Lq+4tn+j3G63lt9jNlzW23P+p3y03HbfnTvp2o/3vPT+TnnnHPOOeec
-8y/7GFm/6rjdnvV7Ks/qfNX9fNu7dZ6ul3POOeecc845/7Jnz/y/PXqOxp+u
-t+q3xS37suuc8JrPnsuvfW+cc84555xzzvmbPkY0Lut32p+ab3ee295/91xk
-/W9bB+ecc84555xz/oZH7VFUx92yvtv9ljpW/anI8q2e89O+ui7+3/2qccs6
-OOecc84555zzNzzqN7ZXx2X9n/bsebdn8fQ6s/f2tM/Wkz1zzjnnnHPOOed/
-wbOI+t22jq/6GLfUt3tdWazuy+w4/i3P4rZ6Oeecc84555zzNz2KqP2rXl3/
-Ls/i6XVGf6N+t3oWt9XLOeecc84555y/6VncVi/f41F7N7JxUXu1nu45vmV/
-ec3H9ihuqZdzzjnnnHPOOT/hWb9q/+q4t3xsz9b/VP6srl3efT+nffcz55xz
-zjnnnHP+Fz2KaPzpevmcj+1Vnx23e76xffe5z8bvzv9rXt23KLr3U5aHc845
-55xzzjn/Jc/6ddtv8bE9W/9T+bO6dnn2Pm87d9V1zp5bzjnnnHPOOef8l3yM
-rF91fDTfLeu+1Wf7jTH7/qLYfR6ifrvXc/t3ddv5e+scR3HbOjjnnHPOOeec
-8ze92y8bP1tPN99uz2J1f3bl73q13uq4t33XuO58s3k555xzzjnnnPNf8jGy
-9rfqestn+43xtGdRnW92PbvXsTrf+L5OfSfVumbH78qX9e+eu+75WP3+OOec
-c84555zzL/kYWb+xPesXPd/m3f2pzpeNi+aZXc/s+/vqeRz7Zc/d/eGcc845
-55xzzr/oY3s2PurXbe/W9fY+RfVW64rG7/an8u+a7+n9eCrPW99ht18Uq3V3
-n1fvh9n75/R9yTnnnHPOOeecv+FRv2jcGNV5s3G7PepXXU81X3W9u+rqPs+u
-522v1hU9d8dxzjnnnHPOOee/6GN7Nn5szzzqN5tndl1ZHavzZ3m6vnu+t/Nk
-+/90vrfyVPtX96N6Tqv5unl21VH1an7OOeecc8455/wv+tieje+2V/NW5+l6
-dV92zVuNrI5unm590fvYdb6iqObN6s7qyPJyzjnnnHPOOed/0WfHd6M7b9Wz
-uqp5quuszlPtP+tv59m1P0/5U3l2n6/qPN3vdjZvN6r1cc4555xzzjnnfJ9H
-7dX+1XzRc+bVOqp1d/NUo7o/0XO1X3UfuuciqmPX+N35OOecc84555xznnvU
-3o1ovmzerJ5o/Oq41Xl2+1t5Zt//6f156lzuyrOaf3bfs/HV/tX3e8u9xTnn
-nHPOOeecv+lR+xiRV9uzmK2jW2+2/ixPlr87766o1jU+V89Hd/6uV9/XalTX
-Va2vOo5zzjnnnHPOOf+yV8dFUe1XzZ/NG9X7dHT3abau1f2oerf9q+vM/PQ5
-u2W9Y3u1XzaOc84555xzzjn/yx5FNr7bHs3bbc/6rY4f27P1no5d76Wap+rd
-ftX6uu+l+x3c9n1yzjnnnHPOOec3+BjZuO74t3w1onXeut5qXd3z8VRdt+7j
-2F5971l0v7+3vNp+y/3EOeecc84555yf8KxfFFn/at6of1ZHNs/s/F2f7fdW
-dN9rNH523tV9Xp2/eu5n8932PXPOOeecc8455ye8Ou503dX2LLJxs+27/fT5
-6Na76lFdWX2r53U172wdq+9jtf2Wc8Y555xzzjnnnH/Rx+j2y/Ktjq+Oq9bb
-9ep+3B6r56Drs+818tn53zrnnHPOOeecc875X/aofYxsXBar9VTzra632281
-7+lzMMZXvNoe9aueq93nvFsP55xzzjnnnHPO3/dqvFXf2/lO7+vuiOr4ikf9
-3jp31fxv18c555xzzjnnnPPcq+OqMc7Tzbc6/9d8jL/mUfvq+enO1x3HOeec
-c84555zz53yMqP103dnz23WMUd3fp2N2f7J5Zj2qo9p+6r1m+3ZL3Zxzzjnn
-nHPO+V/0MaJx3ecsT9T/ln05/T6yff5177Zn+7w6nnPOOeecc8455/f6GLfV
-d4tH7aejWif/7/bb6uOcc84555xzzvn/+mx7FNX2W9b/lo/R3ads3Fc9Ow/V
-ePu74JxzzjnnnHPO+X2+2v4Vf2q+sV83xvl31509f9VX2znnnHPOOeecc37e
-d80XPUeR9YvqPL1fq96N7rhq3q97FN33Us1/+txwzjnnnHPOOed83aPI2qP5
-o3HVurL+2fhdHuXttmfjVut6a/2z5yHrN5snG8c555xzzjnnnPN7PWofI+qf
-jYvilvXv9jGe2pdq3u77estn9yWbb/Z9VL8LzjnnnHPOOeec86/62J559lyN
-rL7Vddyyv5xzzjnnnHPOOedVj9rH6I7L5omimv+0R/VW17e7jm6/aNzsfNV8
-3XMXjVvdn+yZc84555xzzjnn/HYf26u+Om52vqfWfcv74JxzzjnnnHPOOY88
-ap/tV22fjW6dVc/6ze5Pdfxuj55X61mdZ3c9nHPOOeecc84551/zKKrzZPNl
-ebvzZdGtI/ob9YvmrdZ7+n1zzjnnnHPOOeec7/bquDG680TzVeeJxkXz7PLT
-72f0LLJx1flX3xfnnHPOOeecc875VzzqN7ZH42Y9i1vmO/Ue3s7POeecc845
-55xzvtuj9jFW82bzR/1u3R/OOeecc84555xz/htefd7tT823O8/T7yGr5/T5
-4JxzzjnnnHPOOefP+On8nHPOOeecc84557znUb+xPRq329/O81b+297z2/k5
-55xzzjnnnHPO+Zqfzs8555xzzjnnnHPO/+1RRO23eHU9Xc9iV93R36jfW57F
-bfVyzjnnnHPOOeec/3U/nZ9zzjnnnHPOOeec13xsP+Wn6s1i13pmx91yLm6p
-i3POOeecc8455/yv++n8nHPOOeecc84557/qY3s3ovGn/Jb8UbxV1y3nazaq
-7/eW9XHOOeecc84555x/1U/n55xzzjnnnHPOOf81j/pF47LxWb+3/VT+LN5e
-5y3nrlrf2J49c84555xzzjnnnPM1P52fc84555xzzjnn/GtebY/6f9Wzfm/n
-fypPtq7bzuPs+R1j9pzftj7OOeecc84555zzW/x0fs4555xzzjnnnPOveHVc
-FNk8Uf/TvrvfrGdxav2z5+Qtr8bs+zi9Ps4555xzzjnnnPNb/XR+zjnnnHPO
-Oeec86/72D72i55v9+p+vFVXFk+vf3bcbV6tu9qPc84555xzzjnnnP/bT+fn
-nHPOOeecc845f9uzflHM9ovGZflPedTefX6qriieyl99T6fP9ew6u/u969xw
-zjnnnHPOOeec/7qfzs8555xzzjnnnHN+2scY+63OU60rG3/KZ9c767tjtq5s
-3VG/W851dX9X17s6D+ecc84555xzzvmv+un8nHPOOeecc84552/7rvFdr+bZ
-lW/Wu/12raNaTzVvNX83bzTv6XM9u85Zf/u745xzzjnnnHPOOf+an87POeec
-c84555xzfot3x0f9snmr/ar9Zz3L361vdT+yOqP53l5fNX92TnZ5lq+6P6vn
-87bvmXPOOeecc8455/y0n87POeecc84555xzfrtH/aJx2fju/LPzZb6at7oP
-2TzVOqP5nsq76311z121jtn3Fc2/ax8455xzzjnnnHPO+R35Oeecc84555xz
-zt/21efq/GNE46J+2byZZ/mqPrve6ryr8+3az26eaJ93nceur65zHNete9d5
-4pxzzjnnnHPOOf8VP52fc84555xzzjnnfNWrz5ln/bJx1fan1zFbR3fe7D1l
-ear1zI6b3cfZdc3ua7e+bp3d6Na5+h1X5+ecc84555xzzjn/mp/OzznnnHPO
-Oeecc77q0XPmWXTnz/Ks1ltdx+q8u8dX9+fp6NbZPY9ZvlnfNe9T53PX95XN
-zznnnHPOOeecc/41P52fc84555xzzjnnfNWjftG42ajmr9YXzZ+1d/2pebN+
-X4nqOVnd/93zZs/V9zJ7Truxez2cc84555xzzjnnt/vp/JxzzjnnnHPOOedv
-eXVc9pz5bN7uOqI6d/vu8bfH2/tT9d3zrp73qF83bzUf55xzzjnnnHPO+df8
-dH7OOeecc84555zzVY/6dfu/5d16d+9TFFmdq357PLX+7nvZvd+3fAdRv1vq
-45xzzjnnnHPOOd/tp/NzzjnnnHPOOeecr/oYt9WXebaO0/XN+leieo5u9+z7
-uO18dL/n2+rmnHPOOeecc845z/x0fs4555xzzjnnnPOnvBvZuNPrmV1vNG42
-unXuyrsaUR2nz1U27pZzV61rNm5ZD+ecc84555xzzvkuP52fc84555xzzjnn
-/G3P+nX7/3VfnW93VN/r0+v6dV995pxzzjnnnHPOOf91P52fc84555xzzjnn
-/BaPnsfozvNVH2PXfnbzVGOsZ/d6np7vtHf7jXHbejjnnHPOOeecc85P++n8
-nHPOOeecc84551/xqL0b3XzVvNX+u/cniqzO7rgsqvvWnf+t81QdH/WfHf/0
-OM4555xzzjnnnPO/6qfzc84555xzzjnnnPNveNRvbI/GRZHlq0a37qrvno9z
-zjnnnHPOOeec/w0/nZ9zzjnnnHPOOeec3+VRv7E9Gpf56rjZ+Z7ep9X5OOec
-c84555xzzvlv+en8nHPOOeecc8455/yMR/3G9mjcrK+Om53v1L4+lYdzzjnn
-nHPOOeec3+2n83POOeecc84555zzZ32MqH91XNWfmm93nqffQ7cOzjnnnHPO
-Oeecc/4bfjo/55xzzjnnnHPOOe95NaJ5svl2+VPz7c5z6n1m9UVx+vxxzjnn
-nHPOOeec85qfzs8555xzzjnnnHPO/+1ZvzGi9qc9i6/mOfX+s3qyZ84555xz
-zjnnnHN+h5/OzznnnHPOOeecc/5XPItxfHX+LM9b/nSeLJ6q+5ZzFLXvOm+c
-c84555xzzjnnfK+fzs8555xzzjnnnHP+1zxqz+aJ+p/y7Hm3Z/H0Oqvv8W3P
-6ozitnVwzjnnnHPOOeec/5qfzs8555xzzjnnnHP+VR8j6l8dd7tn/d7O/1Se
-bF2nz91TPrZHfku9nHPOOeecc84557f76fycc84555xzzjnnt/sYs+Or8532
-0/mzuqI4Xe/pc1r1MXad31vWxznnnHPOOeecc36Ln87POeecc84555xzfrtH
-/Vbnj/Lc6rfkj+Ktuk6fx93nbvacv1Uv55xzzjnnnHPO+Vf9dH7OOeecc845
-55zz015tjyLKk/W71cf2W9aXxVt1ZefqlnM9+x2M/brts98Z55xzzjnnnHPO
-+a/56fycc84555xzzjnnb3vUr9s/iqj9a346fzdu2ZfbzvvsOR77Z8+r3xHn
-nHPOOeecc875r/np/JxzzjnnnHPOOedv++7xY3zVo36n66rGLXWN5+f0eV/1
-MU59d5xzzjnnnHPOOedf89P5Oeecc84555xzznd51J49j94dn4271bN+1X19
-y7N4q65d5+wrPsbs+qM81Xy37AfnnHPOOeecc8551U/n55xzzjnnnHPOOa96
-1G9sH6M7X3V8tf/XPOt3S11v5589R1/3qL3bvzrf2J49c84555xzzjnnnN/q
-p/NzzjnnnHPOOeecz/oYUftb46vz3OrjOm+pqxpv1VU9R9l+3uZRPPVdVOft
-5uecc84555xzzjm/xU/n55xzzjnnnHPOOa969NydN+oXzZc9d+v7ilfX9Vb+
-bPxT+Xefv9s9i9Xvc7aO2/aJc84555xzzjnnPPPT+TnnnHPOOeecc85nfYzq
-+O581eeverYP3f7VfZqtozruqfdbnW/0W76bXd9Z9TnrV/1eo/lu2SfOOeec
-c84555zz0U/n55xzzjnnnHPOOV/1MbLx0XzVeVbzZ96dP/MoX3V9u/ctmj/r
-n8Wuc7JrXPW9P/V9dMed+i6q4267dzjnnHPOOeecc84zP52fc84555xzzjnn
-/Gkf26uRjY/yVsdn+ap5d3l1H7P1rOarxmw9s/VV+1X3bbdndVf7d99793xn
-7afvC84555xzzjnnnPNdfjo/55xzzjnnnHPOedXHiDxqr+bN5s3mq9bR7Zfl
-W/Vund19m82XzfdU3tV+2f50vdterTMbF0V137vrq+Y5fR9xzjnnnHPOOeec
-Z346P+ecc84555xzzv+uRxG1d311XBbV9a7WU92/XfNm+cZ+1XVX83fHz+53
-1t7dh8h3fTdZfVXP5p99n1HM1rO6P1k+zjnnnHPOOeec86f9dH7OOeecc845
-55z/XR8j6h+Nq84bzd+db3VcVudTvmt8d3+y95nVsRqz+zB7vrvfQVbH0179
-3mbfexTd9u65ml0P55xzzjnnnHPO+W4/nZ9zzjnnnHPOOee/79nz6FH/zKN5
-s3m6/aI6dq1jdn9n562Oj6I67+2RnYOsX3d8198+f7u/i9l9ydqr80fznL4f
-Oeecc84555xz/rt+Oj/nnHPOOeecc87/ru+OLM9sfVG90fhu+y7P9nU1X3f8
-V6J7fqPxXX/7fGTPu87Xrny74/R9xznnnHPOOeec87/np/NzzjnnnHPOOef8
-73r0nPWL+kexWvfT+xHVe9p3zfu1uGXfvlbH6j1Qzft2fZxzzjnnnHPOOeez
-fjo/55xzzjnnnHPOeRTdcU/Vd/s+RZHt01P+a3HLPp6qo+qnzn32nb5VH+ec
-c84555xzzvnop/NzzjnnnHPOOeecj+1RRPM8XV/kt+zfrf6ViOrm//a3zlPW
-L6szar/l++Ccc84555xzzvnv++n8nHPOOeecc84555mP7VHcVvfoWf1jnN7v
-sd+u+W6L7vqqz295FN113Oqz98TpujnnnHPOOeecc85P5+ecc84555xzzjnP
-vBq31f1XPHpf0bjTEdWf1XvLfv8Vj6J67m5bD+ecc84555xzzv+en87POeec
-c84555xzHnnUHj1X53+67l/xMU7lqUZ2fmbrO70/v+LdflH/6nu4bf2cc845
-55xzzjn/e346P+ecc84555xzzvkuH9vHftFz1P/0enb7GLvyVOdfHZdFdh6q
-+5LNO+vRvLvz3OKz31m1H+ecc84555xzzvm9/v8ALjYi4Q==
- "], {{0, 0}, {401, 401}}, {0, 1}],
- Frame->Automatic,
- FrameLabel->{None, None},
- FrameTicks->{{None, None}, {None, None}},
- GridLinesStyle->Directive[
- GrayLevel[0.5, 0.4]],
- Method->{
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" ->
- Automatic}]], "Output",
- CellChangeTimes->{3.6641621075311346`*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "2"], "+", "1"}]}], "]"}], ",", "2", ",", "201",
- ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555613597739*^9}, {3.659556133025359*^9,
- 3.659556138135767*^9}, {3.659556178511237*^9, 3.6595561786634045`*^9}, {
- 3.6595564436249084`*^9, 3.659556460417568*^9}}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzt2MEJwCAQRcGFVJJK0kNKEHK2znRjCSLRi6QAhXmwsEwJ/0z5fo6IePu1
-/6tc8RvnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
-55zzvVySJEmSJEnaubF7zfsX55xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
-c84555xzzjnnnHPOOeec89W9Algh3kA=
- "], {{0, 0}, {201, 201}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"",
- RowBox[{"-", "\[ImaginaryI]"}], "\[ImaginaryI]"}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle ->
- RGBColor[0., 0.6666666666666667, 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{
- 3.6595561427769833`*^9, 3.659556184448927*^9, {3.6595564465319443`*^9,
- 3.6595564731067934`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- SuperscriptBox["x", "2"], "-", "1"}]}], "]"}], ",", "2", ",", "201",
- ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555613597739*^9}, {3.65955606434665*^9,
- 3.659556065221777*^9}, {3.659556100512431*^9, 3.659556120459993*^9}, {
- 3.6595564492510743`*^9, 3.659556464637117*^9}}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzt1sFJZVEQBNAPRmIkk4MhCK6Nc7KZEAZRN4XQlKtuOAUPHqf67uv59f3l
-7enxePz9+j7+P/Pvz+PHcM4555zz3/mU73f5nnPOOeecd5593nHOOeec886n
-bNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LO
-OeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37d
-s887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjn
-nHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeed
-T9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7k
-nHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8
-umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5x
-zjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPO
-O5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYd
-yDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO
-+XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu8
-45xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnn
-nHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQt
-O5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnn
-nPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2
-ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xz
-zjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMp
-W3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxz
-zjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/3
-7POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO845
-55xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnn
-U7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM5
-55xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/
-7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ec
-c84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zz
-zqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUH
-cs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xz
-ft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7v
-OOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845
-551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXL
-DuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc845
-5/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz6559
-3nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeec
-c847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zK
-lh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOec
-c875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9
-+7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPO
-Oeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975
-lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDO
-Oeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86v
-e/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3n
-nHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee8
-8ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmB
-nHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeec
-X/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887
-zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPO
-eedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9my
-AznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPO
-Ob/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umef
-d5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnn
-nPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+y
-ZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnn
-nHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXP
-Pu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xz
-zjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+
-ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bz
-zjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPr
-nn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc5
-55xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnv
-fMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg
-55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn
-1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POO
-c84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz
-3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bs
-QM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xz
-zq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnn
-Heecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc845
-57zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds
-2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs45
-55xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2z
-zzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOec
-c85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P
-2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuSc
-c845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6
-Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHO
-Oeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847
-n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3I
-Oeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875
-dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zj
-nHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeec
-dz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07
-kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec
-8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5
-xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPO
-Oe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylb
-diDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPO
-OefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs
-845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnn
-nHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedT
-tuxAzjnnnPO7/h+Twt5A
- "], {{0, 0}, {201, 201}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"",
- RowBox[{"-", "1"}], "1"}, "SwatchLegend", DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle ->
- RGBColor[0., 0.6666666666666667, 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{{3.6595561119560795`*^9, 3.6595561241792593`*^9},
- 3.6595564518143454`*^9, 3.659556485561829*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- RowBox[{"(",
- RowBox[{"x", "+", "1"}], ")"}],
- RowBox[{"(",
- RowBox[{"x", "-",
- RowBox[{"(",
- RowBox[{
- RowBox[{"-", "0.5"}], "+",
- RowBox[{"0.5", "I"}]}], ")"}]}], ")"}],
- RowBox[{"(",
- RowBox[{"x", "-",
- RowBox[{"(",
- RowBox[{
- RowBox[{"-", "0.5"}], "-",
- RowBox[{"0.5", "I"}]}], ")"}]}], ")"}]}]}], "]"}], ",", "2", ",",
- "401", ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555613597739*^9}, {3.6595562242242994`*^9,
- 3.659556229922743*^9}, {3.6595562733917246`*^9, 3.6595562737355576`*^9}, {
- 3.6595563138893795`*^9, 3.6595563587354765`*^9}, {3.659556405332657*^9,
- 3.6595564061608486`*^9}, 3.664161638484193*^9}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzs1uupbbt6JdBrKhJH4hwqhIL6XbE4U4dgCrPh3sXW0nhI+rqG2oADZzc9
-epfmY81//z//73//3//1j3/84z//7X/++////z/Pf/3HP/768G/73fVP9087
-N+ecc84555xzzjnnnHPOOeecc8455ys8pQef47Pzerlp98E555xzzjnnnHPO
-Oeecc84555xzzvkKT+nB3/nbce8vzjnnnHPOOeecc84555xzzjnnnHPOx3lK
-D77WR+37NDftPjjnnHPOOeecc84555xzzjnnnHPOOR/pKT04/+1J68U555xz
-zjnnnHPOOeecc84555xzzvlvntKD8xFenc8555xzzjnnnHPOOeecc84555xz
-znlSD85nenU+55xzzjnnnHPOOeecc84555xzzjk/y1N6cF7h1fmcc84555xz
-zjnnnHPOOeecc8455/ybntKD8xH+dH3aOTjnnHPOOeecc84555xzzjnnnHPO
-+d6e0oPzJK/O55xzzjnnnHPOOeecc84555xzzjnne3tKD86TvDqfc84555xz
-zjnnnHPOOeecc84555zv7Sk9ON/Bq/M555xzzjnnnHPOOeecc84555xzzvke
-ntKD8xHeGp+9P+ecc84555xzzjnnnHPOOeecc84554k9+Nle1eNpz7T745xz
-zjnnnHPOOeecc84555xzzjnnWZ7Sg5/hb8dXeXo/zjnnnHPOOeecc84555xz
-zjnnnHOe7Sk9+Nme0uOP93pW9+Occ84555xzzjnnnHPOOeecc84559me0oOf
-7Sk9/nivZ3U/zjnnnHPOOeecc84555xzzjnnnHOe7Sk9+Nnemnd3/mhPuyfO
-Oeecc84555xzzjnnnHPOOeecc76Hp/TgfAevzuecc84555xzzjnnnHPOOeec
-c84553t4Sg/Od/DevLS+nHPOOeecc84555xzzjnnnHPOOee8xlN6cL6z9+al
-9eWcc84555xzzjnnnHPOOeecc84553M9pQfnJ3l1Puecc84555xzzjnnnHPO
-Oeecc845n+spPTj/ovfmpfXlnHPOOeecc84555xzzjnnnHPOOedjPKUH57w+
-n3POOeecc84555xzzjnnnHPOOeecj/GUHpzztlfnc84555xzzjnnnHPOOeec
-c84555zze57Sg/OT/On6tHNwzjnnnHPOOeecc84555xzzjnnnPO/e0oPzvl9
-r87nnHPOOeecc84555xzzjnnnHPOOed/95QenPNxXp3POeecc84555xzzjnn
-nHPOOeecc366p/TgnI/z6nzOOeecc84555xzzjnnnHPOOeec89M9pQfn/P76
-3j5p5+Occ84555xzzjnnnHPOOeecc845P8VTenDO76/v7ZN2Ps4555xzzjnn
-nHPOOeecc84555zzUzylB+e87b15aX0555xzzjnnnHPOOeecc84555xzzk/3
-lB58jvfmeZ9806vzOeecc84555xzzjnnnHPOOeecc85P95QefK2P2i/tXDwj
-n3POOeecc84555xzzjnnnHPOOef8dE/pwTO8Nd6bfzUv7byneXU+55xzzjnn
-nHPOOeecc84555xzzvkpntKDZ3hKjz8++lynfC5689L6cs4555xzzjnnnHPO
-Oeecc84555x/zVN6nOqj9uvtPypnF797P6d8LqrzOeecc84555xzzjnnnHPO
-Oeecc85P8ZQe/Pcnrd/XvTp/llfnc84555xzzjnnnHPOOeecc84555yf4ik9
-TvWUHvyaV+df9d68tL6cc84555xzzjnnnHPOOeecc84551/zlB67+dUnrTef
-49X5V706n3POOeecc84555xzzjnnnHPOOef8FE/psZun9OB7eMrnrjqfc845
-55xzzjnnnHPOOeecc8455/wUT+mxm6f04Ht69fu2+vycc84555xzzjnnnHPO
-Oeecc84551/3lB6pntKDf8ur81tPWi/OOeecc84555xzzjnnnHPOOeec8109
-pUeqp/TgZ/iq93P1OTnnnHPOOeecc84555xzzjnnnHPOv+4pPao9pQfnf/PR
-7/Pq83DOOeecc84555xzzjnnnHPOOeecf91Teoz2u+t6+zztwfkIr/pccM45
-55xzzjnnnHPOOeecc84555zzZ57S46nPzunlzs7n/DdP+7xwzjnnnHPOOeec
-c84555xzzjnnnPOsHq2num+v59Nxzkf4089XdW/OOeecc84555xzzjnnnHPO
-Oeec8697So+U/Ku9evNW9eJn+1c+X5xzzjnnnHPOOeecc84555xzzjnnX/OU
-Hq2nuu+qc3E+0nvvw+p+nHPOOeecc84555xzzjnnnHPOOedf96oeqb1W39vo
-Xpz/Nr66B+ecc84555xzzjnnnHPOOeecc875qZ7So+dp+avyRu/Lz/KUHpxz
-zjnnnHPOOeecc84555xzzjnnp3lKj6c+e7/qc63K43t66ueIc84555xzzjnn
-nHPOOeecc8455/x0T+nx1HvzTjsv39ur8696dT7nnHPOOeecc84555xzzjnn
-nHPOebqn9Oj53fVp/avugdd6df4sf7o+7Rycc84555xzzjnnnHPOOeecc845
-57M8pQd/5yk9vuZXPy935/OMfM4555xzzjnnnHPOOeecc84555zzWZ7Sg7/z
-u+tW9Zmd9/Zco/bha7w6n3POOeecc84555xzzjnnnHPOOef8qqf04O981H67
-9E+7f17r1fmcc84555xzzjnnnHPOOeecc8455z89pQef43fX6ckT/O54b97d
-/TnnnHPOOeecc84555xzzjnnnHPO33pKD77WW/PSenK+0nvz0vpyzjnnnHPO
-Oeecc84555xzzjnnPNdTenDO+W5enc8555xzzjnnnHPOOeecc84555zzXE/p
-wTnn1f50fdo5OOecc84555xzzjnnnHPOOeecc17vKT0453yVvx3/46NzOeec
-c84555xzzjnnnHPOOeecc/4dT+nBOec8K59zzjnnnHPOOeecc84555xzzjnn
-zz2lB+ec82tenc8555xzzjnnnHPOOeecc84555zzvqf04Jxz/s6r8znnnHPO
-Oeecc84555xzzjnnnHOe14Nzzk/1p+vTzsE555xzzjnnnHPOOeecc84555zz
-vB6cc/51fzvue51zzjnnnHPOOeecc84555xzzjnfx1N6cM45//35M2/0/mnn
-5pxzzjnnnHPOOeecc84555xzzr/gKT0455xne3U+55xzzjnnnHPOOeecc845
-55xzvpOn9OCcc76nV+dzzjnnnHPOOeecc84555xzzjnniZ7Sg3POebb35qX1
-5ZxzzjnnnHPOOeecc84555xzzis9pQfnnPNveXU+55xzzjnnnHPOOeecc845
-55xzXukpPTjnnH/Lq/M555xzzjnnnHPOOeecc84555zzSk/pwTnnPMNb857u
-k3Y+zjnnnHPOOeecc84555xzzjnnfIWn9OCccz7H3477e8I555xzzjnnnHPO
-Oeecc84555zf95QenHPO1/qqvLRzc84555xzzjnnnHPOOeecc8455ys8pQfn
-nPMMH71v2vk455xzzjnnnHPOOeecc84555zzFZ7Sg3PO+Rlenc8555xzzjnn
-nHPOOeecc84555yv8JQenHPOz/DevLS+nHPOOeecc84555xzzjnnnHPO+RNP
-6cE55/xs781L68s555xzzjnnnHPOOeecc84555z/5ik9OOec89+etF6cc845
-55xzzjnnnHPOOeecc875b57Sg3POOb/y+DvGOeecc84555xzzjnnnHPOOed8
-B0/pwTnnnN/x6nzOOeecc84555xzzjnnnHPOOef8N0/pwTnnnI/w6nzOOeec
-c84555xzzjnnnHPOOec8qQfnnHN+5fkzrzc/7Rycc84555xzzjnnnHPOOeec
-c87P8pQenHPO+R3vzUvryznnnHPOOeecc84555xzzjnn/CxP6cE556d6b57v
-7Xtenc8555xzzjnnnHPOOeecc84555wn9eCcc/5uXVr/NK/O55xzzjnnnHPO
-Oeecc84555xzfpan9OCcc37NR+07uk/K35fUXpxzzjnnnHPOOeecc84555xz
-zs/ylB6cc76br16X7ul/X6rzOeecc84555xzzjnnnHPOOeecn+UpPTjn/Cue
-0iPVq++/+vycc84555xzzjnnnHPOOeecc87P8JQenHO+m6f02M2rX6/q83PO
-Oeecc84555xzzjnnnHPOOT/DU3pwznm1vx3nc3zV68s555xzzjnnnHPOOeec
-c84555yP9JQenHNe7Sk9+L/6qte9+pycc84555xzzjnnnHPOOeecc86/5Sk9
-OOe82lN68Gv+9PWt7s0555xzzjnnnHPOOeecc8455/wMT+nBOeejffU6vta9
-rpxzzjnnnHPOOeecc84555xzzpM9pQfnnD/1Ufv19h+Vw+f67PcJ55xzzjnn
-nHPOOeecc84555xzfsVTenDOec9n5zztM7sXv+dV7x/OOeecc84555xzzjnn
-nHPOOec8sQfnnLeeVd9bo3vyTE/pwTnnnHPOOeecc84555xzzjnn/Nue0oNz
-zp/6qP1G547qxcd6Sg/OOeecc84555xzzjnnnHPOOeff9pQenHM+2lvjVbmz
-8k710a9Xa171OTnnnHPOOeecc84555xzzjnnnO/pKT0457znd8dT+1f3SPXq
-/Ldenc8555xzzjnnnHPOOeecc8455zzLU3pwzjl/5yk9/nh1/ixvzXu6T9r5
-OOecc84555xzzjnnnHPOOeecj/GUHpxzfqrfXbcq9+d42r191avzOeecc845
-55xzzjnnnHPOOeecj/GUHpxzfqrfXbeqz895afd2mvfmpfXlnHPOOeecc845
-55xzzjnnnPPTPaUH55xzzsd5dT7nnHPOOeecc84555xzzjnnnJ/uKT0455xz
-3va763v7pJ2Pc84555xzzjnnnHPOOeecc86/5ik9OOecc17nvXlpfTnnnHPO
-Oeecc84555xzzjnnPN1TenDOOed8H6/O55xzzjnnnHPOOeecc84555zzdE/p
-wTnnnPM6f7o+7Rycc84555xzzjnnnHPOOeecc57iKT0455xzXueteU/3STsf
-55xzzjnnnHPOOeecc84555yv9pQenHPOOf+u9+al9eWcc84555xzzjnnnHPO
-Oeec87ee0oNzzjnnPCWfc84555xzzjnnnHPOOeecc87fekoPzjnnnPOUfM45
-55xzzjnnnHPOOeecc845f+spPTjnnHP+XW/N681POwfnnHPOOeecc84555xz
-zjnnnF/1lB6cc845399H75t2Ps4555xzzjnnnHPOOeecc845v+opPTjnnHO+
-v78d9zuFc84555xzzjnnnHPOOeecc/4VT+nBOeecc97z6nzOOeecc84555xz
-zjnnnHPOOb/qKT0455xzzp96dT7nnHPOOeecc84555xzzjnnnP/0lB6cc845
-56O9Op9zzjnnnHPOOeecc84555xzfq6n9OCcc845H+3V+ZxzzjnnnHPOOeec
-c84555zzcz2lB+ecc875Kq/O55xzzjnnnHPOOeecc84555x/31N6cM4555yP
-9t68tL6cc84555xzzjnnnHPOOeec8+94Sg/OOeec13lv3td+P1Tnc84555xz
-zjnnnHPOOeecc86/7yk9OOecc57nd8fv7pN6Ls4555xzzjnnnHPOOeecc845
-f+spPTjnnHM+zlvjvfmje/R8l3vjnHPOOeecc84555xzzjnnnPO7ntKDc845
-5+M8pcdoX3Vv1efknHPOOeecc84555xzzjnnnO/vKT0455xzft9TelT76Pus
-Pg/nnHPOOeecc84555xzzjnnfH9P6cE555zz+57SI9Wf3md1b84555xzzjnn
-nHPOOeecc875/p7Sg3POOedtT+mxmz+95+renHPOOeecc84555xzzjnnnPP9
-PaUH55xzzu+v6+3ztMfXfdT9c84555xzzjnnnHPOOeecc855y1N6cM455yf5
-qP16+4/K+ZrPfl0455xzzjnnnHPOOeecc8455zylB+ecc36Sj9rvae6o/F19
-9uvCOeecc84555xzzjnnnHPOOecpPTjnnHPenleVu4uvup/qc3LOOeecc845
-55xzzjnnnHPO9/GUHpxzzjnf35+uP+V3S3U+55xzzjnnnHPOOeecc84553yd
-p/TgnHPOeZ3fXTdq/7R7SPPqfM4555xzzjnnnHPOOeecc875c0/pwTnnnHPO
-f3/8juOcc84555xzzjnnnHPOOec811N6cM4555zzNV6dzznnnHPOOeecc845
-55yf6KP2Hb0f5/y9p/TgnHPOOeeZXp3POeecc84555xzzjnnnCd6a15r3age
-d9dX3VdvXsrryPkbT+nBOeecc86zvTWvNz/tHJxzzjnnnHPOOeecc8738FH7
-VuVWeWs8refo8/6cN+r9wL/ts96Ho/fnnHPOOef8ilfnc84555xzzjnnnHPO
-Oa/x2Xl316fcC1/rvSetL7/nVd8nLU+5F84555xzfrZX53POOeecc84555xz
-zjkf47PzRu2bcl98T6/OP919z3DOOeec85P96fq0c3DOOeecc84555xzzjm/
-57PzRu2bcl/8W16dn+6jPtdV3zMp98g555xzzs/2p+vTzsE555xzzjnnnHPO
-OeeneGve3f1SzsOzvTWe1nP2eb/qT+/n57yU83DOOeecc/5Fr87nnHPOOeec
-c84555zzr/nd9a0n5Tx8rffmXX2/ve1R7aPvM/X15JxzzjnnnJ/n1fmcc845
-55xzzjnnnHOe4q15rXUpvXmGvx3n73z0vb8d55xzzjnnnPOWV+dzzjnnnHPO
-Oeecc875ak/pwff0lB78mlfnc84555xzzr/vvXlpfTnnnHPOOeecc8455/yq
-t+bdnc/P9JQefI5X53POOeecc87P9ep8zjnnnHPOOeecc845v+opPfientKD
-z/HqfM4555xzzvk6v7tu9/6cc84555xzzjnnnPM6T+nR6/d2Xdq5eK2/Heff
-8up8zjnnnHPO+Tqv6jG6f9q9cs4555xzzjnnnHP+BW/Nuzs/zUftm3YuXuur
-1/E9vTqfc84555xz/txTejz1p+et7s0555xzzjnnnHPO+c7emnd3v9m9rz6r
-7i/l9eN7ekoPnuHV+ZxzzjnnnPO+p/QY7b3zVvfjnHPOOeecc8455zzJW/Na
-61J6jxpf5dX5fG9P6cHneHU+55xzzjnn/Lmn9EjxlB6cc84555xzzjnnnCd4
-So+nntKj59X5PMvfjvNveXU+55xzzjnnvO+r1+3qKT0455xzzjnnnHPOOV/p
-KT1Ge0qP3n2n9OLZntKDr/HqfM4555xzznn/+Tnv6n5P99/Ve+et7sc555xz
-zjnnnHPOz/bWvFH7fNVTevReh5RePMNTevA5Xp3POeecc845389Tevzx6nuo
-Pj/nnHPOOeecc845X+utea11d/Oe9nqbu7tX9Ui7B/4NT+nB33l1Puecc845
-53w/b41/NbfqXJxzzjnnnHPO+Ql+d/3sPpyvzJu17x9Puceve2s8rSffy1N6
-8DF+9fsjpS/nnHPOOee8zlvz0nru4q15vflp5+Ccc84555xzfpbPzrs7b1Vu
-yv3zsV7VY3Zeyv1We2s8rSfnvz1p/U716nzOOeecc8455zVenc8555xzzjnn
-fK6P2vfu+pTz7+a9eWl9d/G7866O73LOUfP57/PSevIzvTU+6u87/92r8znn
-nHPOOeec13hr3tN90s7HOeecc8455/zvPmrf1ryUc57qvXlpfVfdx9P35938
-9PNX9+Gcz/NR+83+nvy6r/49xjnnnHPOOef8TK/O55xzzjnnnPOv+d31rXkp
-5/m6t8Z36Znm3uecc/67z85Z1X9WXur9/xxPe19xzjnnnHPOOa/11vjd+Zxz
-zjnnnHPOf/eUHl/3t+PpfvV9NSuPc875HJ+dU32un/NGzeecc84555xzzhP8
-7fhPTzsf55xzzjnnnK/21rzWk9L7657SI9Wr8znnnP/de/Nm/W6pPq+/85xz
-zjnnnHPOed+r8znnnHPOOed8lqf0ONVTenzFq/M555yP8da8tJ5Pz3V1PK0/
-55xzzjnnnHO+0qvzOeecc84557le1SOtz2n+dpy/8+p8zjnnnHPOOeecc845
-5zVenc8555xzzjnve+/3/M95o3q8He95yv2e6ik9vuLV+ZxzzjnnnHPOOeec
-c85rvDcvrS/nnHPOOecn+8/x6h6z8tLu/TRP6fEVr87nnHPOOeecc84555xz
-nuXV+ZxzzjnnnJ/oKT1az6oeafdwmqf02M2r8znnnHPOOeecc8455/x0b42n
-9bzbn3POOeec8xM8pccqX5V3+j1//fU9xavzOeecc84555xzzjnnnP/dn64f
-Pa/no/fjnHPOOU/xVb+Lfo773ZXhP8dn/55PO/+oc931tPOe5ik9dvPqfM45
-55xzzjnnnHPOOT/dU3pc9d6/ez6qB+ecc8757N9dKecc7dX5af5zPO33f9p9
-jXq/pfXkzzylR7VX53POOeecc84555xzzvnpntJjtD+9h+renHPOOd/Pf46P
-+j2Wds7q+23NS+v7tl9r3ur38ej9OZ/hrfGn3ye7enU+55xzzjnnnHPOOeec
-n+4pPar96b1V9+acc855naf02M1782bd86j9Rp037XXh/Et+d92q77erPvse
-0l4vzjnnnHPOOeecc84538VXr/u6uy/OOef8HE/pkeopPVb93uOc7+t311V/
-f/p7xDnnnHPOOeecc84553v43XW9fZ72OMVTenDOOec7+qrfRT/npZw/1VN6
-rPLqfM75ud4aT+vJOeecc84555xzzjnn/Nm63j5Pe3zFn95/a171eTjnnPMV
-/nN89L5P14/u81VP6VH9u45zzjnnnHPOOeecc84555zz354/82bvv7tX57/1
-u+tG7cM553d99vcbX+PVf+/e7ptyj9We0sPvPc4555xzzjnnnHPOOeecc87b
-ntLjj1fnz/LWeNXruMv9jPJdenJ+xWd/b6ScMyU/xXf//r+7PuXeUz2lh9+B
-nHPOOeecc84555xzzjnnnLe9NV61D3/mrXlpfVq+y7mqXq9VvXiWp/TYzVPy
-q/N2eV3Seu7iKT1Ge3U+55xzzjnnnHPOOeecc8455yO9NS+tJ9/LR+2bdq40
-r87f1VN6fN2reoz+vFzdn/MET+nh88I555xzzjnnnHPOOeecc84553P87vq0
-/qvu5+q62fvv5q3xt/c26v3c8rR7HP2+WtXj1Pvn/Mr4qu+3q7l353POOeec
-c84555xzzjnnnHPOOecjx1f76n1b657e89t9RuXe9ZTXf7Sn9Dj1/vmZ3hrf
-ZX/OOeecc84555xzzjnnnHPOOef8iqf06Hl1/q7eGk/r6X2ekc8555xzzjnn
-nHPOOeecc84555xzzsd4So+eV+fzvT2lh/c555xzzjnnnHPOOeecc84555xz
-zvkZntLjj1fn82/66nXez5xzzjnnnHPOOeecc84555xzzjnnZ3hrvDd/dI8/
-nnY//NveGq/ah3POOeecc84555xzzjnnnHPOOeec8yvjaT0555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
-Oeecc84555zzZG/NS+vJOeecc84555xzzjnnnHPOOeecc84557O9Na83f1av
-tPvh3/bWvKp9OOecc84555xzzjnnnHPOOeecc875t706/6en9ODf8qfrvZ85
-55xzzjnnnHPOOeecc84555xzzvkTr86/6ik9+J5ene99zjnnnHPOOeecc845
-55xzzjnnnHN+llfnX/WUHrt5a15aT+/zrB6cc84555xzzjnnnHPOOeecc845
-5/yd9+al9h2dczdvVO9d7ivtfZB2P7M9pQfnI7w1b5f9Oeecc84555xzzjnn
-nHPOOeecP/O769L6r7qfq+tn77+bX33fVb2fW55yf0+9Ny+t7279OL/jrXmr
-vt+u5t6dzznnnHPOOeecc84555xzzvmXvDWe1pPv5aP2SztXmqf02M2r80/x
-qvzRnxffS3wnr873eeGcc84555xzzjnnnHPOOee8/fyZV7UPf+at8bQ+Ld/l
-XFWv16wePNur83f1tB5p3yfV9/FzXlrPXbw6f5an9OCcc84555xzzjnnnHPO
-Oed8hFfn//SUHqO9Na/qddzlfkb5Lj05v+Kzvzeqz9d70vpVv+53961+HdN7
-7uLV+X4Hcs4555xzzjnnnHPOOeec8528NT57/909pcdTv7t+1D6cc37XZ3+/
-8TVe/ffu9L/7afe5i6f04JxzzjnnnHPOOeecc84553v63fW9fdLOt9qf3r97
-5ZxzfrK//Xs6++9oyj2lenV+yu86zjnnnHPOOeecc84555xzzn97eut7+6Sd
-L82r8znnnPOdvervdPW50706f7Wn9OCcn+eteWk9Oeecc84555xzzjnnnL9b
-n3aOFB99z5xzzjnP9er8dK/OX/17j3O+r99dX/39uboP55xzzjnnnHPOOeec
-8zVenZ/iT+9tdi/OOeec53p1/q5+d3x07tP1T/u0xtNeF86/5HfXr/p+u+qz
-7yHt9eKcc84555xzzjnnnPPTvDp/lj+9h9m9OOecc/49H/U75O0+X/W349W+
-y/uhNa/6/jj/zVvzdv2+eOopPTjnnHPOOeecc84555xf8+r8t32frh/di3PO
-Oefn+ezfXdXnm+UpPVJ89et+d13KPT311ry0nvyZV+eneEoPzjnnnHPOOeec
-c8455+989rrRPZ+u55xzzjlP9VW/i3r/frs/f+ZXX5dRv+dTzt3z2Tlp5z3N
-q/N39ZQenHPOOeecc84555xzzn9//sxL63m3P+ecc8455yd4df5qr8pJu4ev
-enX+1zylB+ecc84555xzzjnnnPNsT+nBOeecc875SV6d33pW56fdw2lenb+r
-p/TgnHPOOeecc84555xznuFvxznnnHPOOefrvPfvVT47J+W+T/Xq/K95Sg/O
-Oeecc84555xzzjnnGZ7Sg3POOeecc9723u/5n+Oj8mfnVN/r6V6d/zVP6cE5
-55xzzjnnnHPOOed8jqf04JxzzjnnnOd5VX5an9O8Ny+t79c8pQfnnHPOOeec
-c84555zza57Sg3POOeecc85He3X+6V6d/zVP6cE55/ydt8bTej49V2ve187L
-Oeecc8455/wb3pv3dL+0c3LOOeecc875Km+Nt57qvqd4dX66p/TgnHM+dvzp
-75bq875dn3YuzjnnnHPOOef8t+fPvLvzOeecc84555z/7tX5p3hvXlrfp+fr
-va9G5aedn3POv+qz86rPdfXv8d35nHPOOeecc875jp7Sg3POOeecc86/4nfX
-tcarz3GKt+bt0jPNvc855/x3n523qv+snNT79/eLc84555xzzr/prfGn+zxd
-zznnnHPOOed8rY/arzVefb7T/e341/zt+/NtXrW35qX15Jy/91H7zv6e/Lpf
-XZfWm3POOeecc875Gk/pwTnnnHPOOed8jo/a7+666nPv6m/H+e9+dbw1L/19
-3hofNZ//Pp7Wk5/prXn+rqzxlB6cc84555zz87w1ntZzF2+N9+aP7sE555xz
-zjnnnN/x2TlXx6tyq++fj/Wq/Nk51fea4q15aT05T8rnf/eUHpxzzjnnnPPv
-emveV3OrzsU555xzzjnnnJ/gd9fN7sP5P/vsnNH7/fTq+zvFW/PSevK9vDqf
-j/XWuO9tzjnnnHPOeetJ6VV9D9U9OOecc84555xzzvlab4231t/Nebrube7u
-XpWfdg/8G16dz8d4Sg/OOeecc875fX87/sffrt/Ne+et6sU555xzzjnnnHPO
-+W/jo/b5qlfnX+2V1o/XenU+n+spPTjnnHPOOefj/On6tHOsuqe0Xpxzzjnn
-nHPOOeecz/Tq/FlenX+1V1o/nunV+XyNp/TgnHPOOeecv/fq/DSvzuecc845
-55xzzjnnPMmr8996df5VT+nBM7w3L60vn+spPTjnnHPOOefjvDp/lvfOW9WL
-c84555xzzjnnnPNEb4231lf37T2pfVN68D29Op/P9ZQenHPOOeec83Fenf/W
-n553di/OOeecc84555xzzr/srfG7+87u23tW32P168b39up8nuUpPTjnnHPO
-OefjvCp/dP/R+3LOOeecc84555xzztvjd+en+aj90s7Fa/3p+rRz8Lme0oNz
-zjnnnHM+3++u370/55xzzjnnnHPOOee83qvze73uru/9m5/tvXlpfflcT+nB
-Oeecc845560nrR/nnHPOOeecc84555z/8ep8vrdX5/O5ntKDc84555xzfp6/
-Heecc84555xzzjnnnPNUb43fnc/P9Op8PtdTenDOOeecc87P85QenHPOOeec
-c84555xzvsqr8/neXp3P73lKD84555xzzvl3PaUH55xzzjnnnHPOOeecV3tr
-vLW+ui/P8t68tL5f86evy6r9OOecc84559/1lB6cc84555xzzjnnnHP+Fb+7
-rvVUn4PX+N3xp/uk++j7HL3v6NeVc84555xznuOr13HOOeecc84555xzzjl/
-563xu/tWn4Pv4a15aT1nn/er/vR+fJ9wzjnnnHPe99XrOOecc84555xzzjnn
-nGf47JxR+1XfE/+mp/RI9VGf66rvmer745xzzjnn/Imn9OCcc84555xzzjnn
-nHP+zmfnjNqv+p743p7S41T3PcM555xzznn/SevHOeecc84555xzzjnnfI7P
-zrm7rvo+eI1ffdJ682te9X3S8ur74Jxzzjnne3hrvDd/dA/OOeecc84555xz
-zjnnZ/io/apyq7w1L63n6PP+HB/1fuDf9lmfu7e9OOecc845T+rBOeecc845
-55xzzjnnnCd5a7y1flT+3XVV9/R2nPMdvDqfc84555zv4Sk9OOecc84555xz
-zjnnnPOTfNR+o/pwzsd7dT7nnHPOOX/mb8c555xzzjnnnHPOOeecc8455+u9
-Op9zzjnnOX53/aj90+4hzVN6cM4555xzzjnnnHPOOeecc87ve3U+55xzzr/j
-s9elnffpOat7cM4555xzzjnnnHPOOeecc87ne3U+55xzzvvjVbm7+Kr7WZXH
-Oeecc84555xzzjnnnHPOOd/fq/M555zzE33Uvk9z0+5jtc9+XTjnnHPOOeec
-c84555xzzjnnvDqfc845P9FH7dvbP+3cKT77deGcc84555xzzjnnnHPOOeec
-8+p8zjnnnLefp3/HR/f6mo+6f84555xzzjnnnHPOOeecc845b3l1Puecc877
-Xp2/qz+959m9OOecc84555xzzjnnnHPOOeff9+p8zjnnnD/36vx0f3qfs3tx
-zjnnnHPOOeecc84555xzzr/v1fmcc845f+7V+Sk++j5H78s555xzzjnnnHPO
-Oeecc845P8+r8znnnHM+3qvzZ/mqe1uVxznnnHPOOeecc84555xzzjn/rlfn
-c84553y8t+b15q/uu8u9cc4555xzzjnnnHPOOeecc875Xa/O55xzznmu9+b1
-/t3bJ/VcnHPOOeecc84555xzzjnnnHP+1qvzOeecc17vd8fT+j89b3UPzjnn
-nHPOOeecc84555xzzvl3vTqfc84553yWvx3nnHPOOeecc84555xzzjnnnPOn
-Xp3POeecc77aU3pwzjnnnHPOOeecc84555xzzr/r1fmcc84557M8pQfnnHPO
-Oeecc84555xzzjnn/Dyvzuecc845n+UpPTjnnHPOOeecc84555xzzjnn53l1
-Puecc875W0/pwTnnnHPOOeecc84555xzzjnnf7w6n3POOef8qqf04Jxzzjnn
-nHPOOeecc84555zznlfnc8455/w73pv3dL+0c3LOOeecc84555xzzjnnnHPO
-ec+r8znnnHP+HU/fj3POOeecc84555xzzjnnnHPOV3l1Puecc86/763x3vzR
-PTjnnHPOOeecc84555xzzjnnfJVX53POOeec9560fpxzzjnnnHPOOeecc845
-55xz3vPqfM4555zz3pPWj3POOeecc84555xzzjnnnHPOe16dzznnnPPv+9tx
-zjnnnHPOOeecc84555xzzjnfzavzOeecc17vrfGn+zxdzznnnHPOOeecc845
-55xzzjnnX/HqfM4555zX++p1nHPOOeecc84555xzzjnnnHP+da/O55xzzvl+
-ntKDc84555xzzjnnnHPOOeecc85TvTqfc8455/X+dpxzzjnnnHPOOeecc845
-55xzzvm/enU+55xzzvt+d11vn6c9OOecc84555xzzjnnnHPOOeecX/PqfM45
-55yP95QenHPOOeecc84555xzzjnnnHN+qlfnc8756X53/ao+P8fT7u00fzvO
-Oeecc84555xzzjnnnHPOOed8rVfnc8756X53/arc3r/5HE/pwTnnnHPOOeec
-c84555xzzjnn/J1X53POOR/j1fk/PaXHaG+NP93n6XrOOeecc84555xzzjnn
-nHPOOefZXp3POedXvTev9+9qr85P95QeTz2lB+ecc84555xzzjnnnHPOOeec
-8wyvzuec81nemleVOzrndB/9ej0d55xzzjnnnHPOOeecc84555xzzv/m1fmc
-c/7WR+07OjftnnhGPuecc84555xzzjnnnHPOOeec8zO8Op9zzlvP0/FV34ez
-evC5Xp3POeecc84555xzzjnnnHPOOef8DK/O55zzqz4772mftHs63aveP5xz
-zjnnnHPOOeecc84555xzzvk/e3U+55y/9VH79vZPOzf/u89+n3DOOeecc845
-55xzzjnnnHPOOedXvDqfc85n+dP1aefgf/dV7wfOOeecc84555xzzjnnnHPO
-Oef8iVfnc855ilfn83v+9PWd3YtzzjnnnHPOOeecc84555xzzjlPyOec8xSv
-zud/91Wv+6o8zjnnnHPOOeecc84555xzzjnnZ3h1Puecp3hvXlrfU3zV68s5
-55xzzjnnnHPOOeecc84555yP9Op8zjnf1avzd/Xq16u6B+ecc84555xzzjnn
-nHPOOeec8zO8Op9zzr/m1fnpXn3/q3pwzjnnnHPOOeecc84555xzzjk/26vz
-Oed8V3+6Pu0co+8j9e9LSg/OOeecc84555xzzjnnnHPOOedneHU+55zzez5q
-v9F9fs5LvZ9VPTjnnHPOOeecc84555xzzjnnnJ/t1fmcc87/7nfXp/VP85Qe
-nHPOOeecc84555xzzjnnnHPOz/DqfM45P93vjqf1T/OUHpxzzjnnnHPOOeec
-c84555xzzs/26nzOOef8ib8d55xzzjnnnHPOOeecc84555xzzmd6dT7nnHP+
-m7fGe/NH9+Ccc84555xzzjnnnHPOOeecc87veHU+55xzPtJTenDOOeecc845
-55xzzjnnnHPOOT/bq/M555zzJ57Sg3POOeecc84555xzzjnnnHPOOf+bV+dz
-zjnnv/nbcc4555xzzjnnnHPOOeecc84557zCq/M555zz3zylB+ecc84555xz
-zjnnnHPOOeecc37Hq/M555zzEeOcc84555xzzjnnnHPOOeecc855klfnc845
-P8vfjnPOOeecc84555xzzjnnnHPOOec7eHU+55zzszylB+ecc84555xzzjnn
-nHPOOeeccz7Tq/M555xnefp+nHPOOeecc84555xzzjnnnHPO+Q5enc8557zG
-v5bDOeecc84555xzzjnnnHPOOeecJ3l1Puec87nemzc6J+38nHPOOeecc845
-55xzzjnnnHPOeYVX53POOc/y1vjTfZ6u55xzzjnnnHPOOeecc84555xzznf2
-6nzOOeff9JQenHPOOeecc84555xzzjnnnHPOeYVX53POOf+mp/TgnHPOOeec
-c84555xzzjnnnHPOK7w6n3PO+R7+dpxzzjnnnHPOOeecc84555xzzjk/yavz
-Oeec7+0pPTjnnHPOOeecc84555xzzjnnnPMkr87nnHO+h6f04JxzzjnnnHPO
-Oeecc84555xzznfw6nzOOed/99b46P1H78s555xzzjnnnHPOOeecc84555zz
-+nzOOT/Fe/NG56Sdn3POOeecc84555xzzjnnnHPOOT/Jq/M55/x0X72Oc845
-55xzzjnnnHPOOeecc8455/O9Op9zzvkYT+nBOeecc84555xzzjnnnHPOOeec
-8/p8zjnn9zylB+ecc84555xzzjnnnHPOOeecc87bXp3POef8757Sg3POOeec
-c84555xzzjnnnHPOOef3vTqfc85Xe2/e1f1G53LOOeecc84555xzzjnnnHPO
-Oef8O16dzznnKb56Heecc84555xzzjnnnHPOOeecc86/69X5nHO+q6f04Jxz
-zjnnnHPOOeecc84555xzznmeV+fzGm+Np/XkfKW/Heecc84555xzzjnnnHPO
-Oeecc845/+PV+Xyu312vJ0/w3rzev+8+aefnnHPOOeecc84555xzzjnnnHPO
-+f5enc/H+Kh9d+mfdv+81lN6cM4555xzzjnnnHPOOeecc84555z/8ep8Psbv
-rl/VZ3XOqHtLe315Vg/OOeecc84555xzzjnnnHPOOeec855X5/MxXp3/Vf85
-3pt3dT7P6sE555xzzjnnnHPOOeecc84555xzPtqr86/63XVp/avugdd6So/R
-vnod55xzzjnnnHPOOeecc84555xzzvluXp3/1u+Op/UffV6+t6f06HlKD845
-55xzzjnnnHPOOeecc84555zzVK/Of+uj9+39e5VX5/M9PPVzxDnnnHPOOeec
-c84555xzzjnnnHN+ulfnX/XqHr1/j/ZVOfzbXp3POeecc84555xzzjnnnHPO
-Oeecc36qV+W/Ha/2VffA+RPvvd+qenHOOeecc84555xzzjnnnHPOOeecn+LV
-+a3n6Xjq/bztwfkd770Pq3pxzjnnnHPOOeecc84555xzzjnnnJ/i1fm9J6Vf
-79+renD+Zv2qXpxzzjnnnHPOOeecc84555xzzjnnp3t1fut5Or7qfnr7pN0r
-/6Y//XzN7sU555xzzjnnnHPOOeecc84555xzfrpX57/12Xm93LT74Gd52ueF
-c84555xzzjnnnHPOOeecc84555xn5M/yu+t7+6Sdj5/lVZ8LzjnnnHPOOeec
-c84555xzzjnnnHP+zKvzU7w6n/PffPT7fPS+nHPOOeecc84555xzzjnnnHPO
-Oef8X706P92r8/lZvur9vCqPc84555xzzjnnnHPOOeecc8455/xUr85P9+p8
-/k1P6dF60vpxzjnnnHPOOeecc84555xzzjnnnO/m1fm7enU+39ur37fVPTjn
-nHPOOeecc84555xzzjnnnHPOv+7V+bt6dT7fy3+OV/dYlcc555xzzjnnnHPO
-Oeecc84555xzfqpX5+/qvSetL5/rKT16ntKDc84555xzzjnnnHPOOeecc845
-5/zrXp1/ulfn83ue0qPnb8c555xzzjnnnHPOOeecc84555xzzvk7r87nf/fq
-/NM9pcdoT+nBOeecc84555xzzjnnnHPOOeecc/51r84/3Uft29s/7dyr7vXq
-/Vydv7un9OCcc84555xzzjnnnHPOOeecc845/7pX5/Msr87/6aPPdXV9yvmf
-+ttxzjnnnHPOOeecc84555xzzjnnnHP+zqvzeZa35vXmX81JO+9pntKDc845
-55xzzjnnnHPOOeecc8455/zrXp3Pa3zUvmnn4lk9OOecc84555xzzjnnnHPO
-Oeecc85P9ep8Ptffjnuf7OkpPTjnnHPOOeecc84555xzzjnnnHPOT/XqfM55
-39+Oc84555xzzjnnnHPOOeecc84555zztV6dzzl/vq63z9MenHPOOeecc845
-55xzzjnnnHPOOef8nVfnc86fr+vt87QH55xzzjnnnHPOOeecc84555xzzjl/
-59X5nPPxntKDc84555xzzjnnnHPOOeecc8455/xUr87nnI/3lB6cc84555xz
-zjnnnHPOOeecc84556d6dT7n/Lmn9OCcc84555xzzjnnnHPOOeecc8455//q
-1fmcn+ir13HOOeecc84555xzzjnnnHPOOeec87Venc8573tKD84555xzzjnn
-nHPOOeecc84555xzfs2r8znn7SetH+ecc84555xzzjnnnHPOOeecc845v+bV
-+Zx/2d+Oc84555xzzjnnnHPOOeecc84555zzPb06n/MTPaUH55xzzjnnnHPO
-Oeecc84555xzzjmf49X5nH/B345zzjnnnHPOOeecc84555xzzjnnnPNveXU+
-5zv523HOOeecc84555xzzjnnnHPOOeecc36GV+dzvpOn9OCcc84555xzzjnn
-nHPOOeecc84559lenc/5b+N356/qxTnnnHPOOeecc84555xzzjnnnHPO+W9e
-nc95Qv5P7/Ws6sU555xzzjnnnHPOOeecc84555xzzvfw6nzOE/J/eq9nVS/O
-Oeecc84555xzzjnnnHPOOeecc76HV+fzs7w3L6Xv0/6cc84555xzzjnnnHPO
-Oeecc84555wn5HNemf+05+xenHPOOeecc84555xzzjnnnHPOOed8b6/O53yk
-t+bN3p9zzjnnnHPOOeecc84555xzzjnnnPN/9up8znfylB6cc84555xzzjnn
-nHPOOeecc8455zzbq/M5T/SUHpxzzjnnnHPOOeecc84555xzzjnnfE+vzuc8
-0VN6cM4555xzzjnnnHPOOeecc84555zzPb06n/ORvnod55xzzjnnnHPOOeec
-c84555xzzjnnf/Pq/P9uh45uAASBIAr237UdaCB37inzOwHeBs6TPmUH55xz
-zjnnnHPOOeecc84555xzzjn/l6f7nL/hU3ZwzjnnnHPOOeecc84555xzzjnn
-nPMzPN3nvNKn7OCcc84555xzzjnnnHPOOeecc84552d7us/5nU/ZwTnnnHPO
-Oeecc84555xzzjnnnHPO+Yqn+zzjVe/tdqv6nHPOOeecc84555xzzjnnnHPO
-OeecT/R0n9f407n0rmn/xTnnnHPOOeecc84555xzzjnnnHPOeaen+7zXuztP
-3e4+55xzzjnnnHPOOeecc84555xzzjnnEz3d5xlfvbf7/u59zjnnnHPOOeec
-c84555xzzjnnnHPOv+kX/MR5Lg==
- "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"",
- RowBox[{"-", "1"}],
- RowBox[{
- RowBox[{"-",
- RowBox[{"0.5`"}]}], "-",
- RowBox[{"0.5`", " ", "\[ImaginaryI]"}]}],
- RowBox[{
- RowBox[{"-",
- RowBox[{"0.5`"}]}], "+",
- RowBox[{"0.5`", " ", "\[ImaginaryI]"}]}]}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{3.659556259184917*^9, 3.659556302150953*^9,
- 3.6595563906887107`*^9, 3.6595564366805267`*^9, 3.6641617768839207`*^9}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"newtonplot", "[",
- RowBox[{
- RowBox[{"Function", "[",
- RowBox[{"x", ",",
- RowBox[{
- RowBox[{"(",
- RowBox[{"x", "+", "1.5"}], ")"}],
- RowBox[{"(", "x", ")"}],
- RowBox[{"(",
- RowBox[{"x", "-", "0.75"}], ")"}]}]}], "]"}], ",", "2", ",", "401",
- ",", "20", ",", "0.05"}], "]"}]], "Input",
- CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
- 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
- 3.659555597485504*^9, 3.659555613597739*^9}, {3.6631017052455835`*^9,
- 3.663101720860613*^9}, 3.6641616424542694`*^9}],
-
-Cell[BoxData[
- TemplateBox[{GraphicsBox[
- RasterBox[CompressedData["
-1:eJzs1t2t5MphhdFrKBJHohwUggA/OxZnqhAMQTgPc9DdbP7uXVWLgADNKpLf
-ZmsAzX//83//8T9/++uvv/7vv/7zn3//9/9c//r7Xy+vWf3q59q+bzVP9/nY
-3rKDc84555xzzjnnnHPOOee81d+db/15VT97zjnnfC5P99s93ecdfT6nt+zg
-nHPOOeecc84555xzzjlfzVt2HPWz55xzztfwdL/d033e0edruL+XnHPOOeec
-c84555xzzjnnc/m781SXc875Wp7uj+rp/qye7vO1vGUH55xzzjnnnHPOOeec
-c845n8vTfc455x2e7q/iR8/bviP9O3F+pbfs4JxzzjnnnHPOOeecc84553N5
-us8557zD033+2tN938dX8JYdnHPOOeecc84555xzzjnnfC5P9znnnHd4us/3
-ebrvO/hM3rKDc84555xzzjnnnHPOOeecz+XpPuec8w5P9/k1nu6Ptouv5S07
-OOecc84555xzzjnnnHPO+Vye7nPOOe/2dJ9nfLYO55+8ZQfnnHPOOeecc845
-55xzzjmfy9N9zjnn3Z7u8y5vfx/nn7xlB+ecc84555xzzjnnnHPOOV/D033O
-Oefdnu7zsf3sOedHvGUH55xzzjnnnHPOOeecc845X9vTfc45592e7vOx/enn
-+Fq+9eendnDOOeecc84555xzzjnnnPO1Pd3nnHM+pqf7fGzfus+/f/g33rKD
-c84555xzzjnnnHPOOeec809X2y7OOefdnu7zsT3dn31vu7fs4JxzzjnnnHPO
-Oeecc8455/xOT/c555yP6ek+H9vT/af96t/h7l2cc84555xzzjnnnHPOOeec
-8+893eeccz6Xp/t8bE/3Oeecc84555xzzjnnnHPOOef8Kk/3Oeecz+XpPh/b
-t+5r28s555xzzjnnnHPOOeecc8455+883eeccz6Xp/t8bE/3Oeecc84555xz
-zjnnnHPOOed8r6f7nHPO1/B0n4/t6T7nnHPOOeecc84555xzzjnnnL/zratt
-L+ec87k83edje7rPOeecc84555xzzjnnnHPOOZ/f39139pxzzjm/09N9Pran
-+5xzzjnnnHPOOeecc84555xznu5zzjnnrzzd52N7us8555xzzjnnnHPOOeec
-c8455+k+55xz/srTfT62p/ucc84555xzzjnnnHPOOeecc57uc84556883edz
-errPOeecc84555xzzjnnnHPOOZ/P033OOed8j6f7fE4/+nzbd3DOOeecc845
-55xzzjnnnHPOezzd55xzzvd4us/n9HSfc84555xzzjnnnHPOOeeccz6up/uc
-c875FZ7u8zk93eecc84555xzzjnnnHPOOeec93u6zznnnN/p6T6f09N9zjnn
-nHPOOeecc84555xzznm/p/ucc875nZ7u87U83eecc84555xzzjnnnHPOOeec
-P+/pPuecc57wdJ+v5ek+55xzzjnnnHPOOeecc8455/w+T/c555zzJk/3+Vr+
-1PvavptzzjnnnHPOOeecc84555zzpO99/uw555xzzvN9zq84P/vvSs4555xz
-zjnnnHPOOeecc875+6ttF+eccz6Cp/ucN/Q555xzzjnnnHPOOeecc8455++v
-tl2cc875CJ7uc97Q55xzzjnnnHPOOeecc84555y/v9p2cc455yN4us/5J0/3
-Oeecc84555xzzjnnnHPOOV/B033OOed8Rk/3Of/k6T7nnHPOOeecc84555xz
-zjnnK3i6zznnnM/o6T7nnzzd55xzzjnnnHPOOeecc84553wmT/c555zzlTzd
-5/yIb93XtpdzzjnnnHPOOeecc84555zzJz3d55xzznm+z/kRT/c555xzzjnn
-nHPOOeecc845b/Z0n3POOef5PudXerrPOeecc84555xzzjnnnHPO+ZOe7nPO
-Oef8vaf7nD/hbe/z72bOOeecc84555xzzjnnnHO+x9N9zjnnnO/3dJ/zpD/9
-3G9v+z0455xzzjnnnHPOOeecc8551tN9zjnnnF/n6T7njX72/Ftv+27OOeec
-c84555xzzjnnnHOe9XSfc84559d5us95o6f7nHPOOeecc84555xzzjnnfG5P
-9znnnHN+v6f7nDf61n1teznnnHPOOeecc84555xzznmnp/ucc845z3m6z/lI
-nu5zzjnnnHPOOeecc84555zzTk/3Oeecc97n6T7nI3m6zznnnHPOOeecc845
-55xzPqu/O9/681170h3OOeecj+/pPucj+dHztu/gnHPOOeecc84555xzzjlv
-96ve+/RznHPOOec/nu5zPoOn+5xzzjnnnHPOOeecc84557P5Ve89e84555xz
-ftTTfc5n9nSfc84555xzzjnnnHPOOeecd/Q555xzvp6n+5yv6EfP276Dc845
-55xzzjnnnHPOOed8FE/3Oeecc76ep/uc854+55xzzjnnnHPOOeecc875rJ7u
-c84553w9T/c55z19zjnnnHPOOeecc84555zz0T3d55xzzjn/8XSfc77t6f7o
-39f2vZxzzjnnnHPOOeecc845v8/Tfc4555zzH0/3OefHPd0fZW/b78A555xz
-zjnnnHPOOeec8/Oe7nPOOeecb3m6zzm/3rfue6rf8ru07OCcc84555xzzjnn
-nHPO+XWe7nPOOeecb3m6zznPe/v7znrLDs4555xzzjnnnHPOOeec7/d0n3PO
-Oef8qKf7nPNef/q5s972+3HOOeecc84555xzzjnn/HtP9znnnHPOr/Z0n3M+
-j6f7nHPOOeecc84555xzzjnv93Sfc8455/wpT/c55/N4us8555xzzjnnnHPO
-Oeec835P9znnnHPOn/J0n3M+j6f7nHPOOeecc84555xzzjnv8XSfc8455zzt
-6T7nfB7fuq9tL+ecc84555xzzjnnnHPOz3u6zznnnHPe6uk+53x+T/c555xz
-zjnnnHPOOeecc75939lzzjnnnHP+p6f7nPP5feu+tr2cc84555xzzjnnnHPO
-+cqe7nPOOeecz+LpPud8fk/3Oeecc84555xzzjnnnHP+/mrbxTnnnHM+i6f7
-nPN1Pd3nnHPOOeecc84555xzzlf2dJ9zzjnnfHZP9znn/N2197ztOzjnnHPO
-Oeecc84555zzBk/3Oeecc85X9XSfc86/9XSfc84555xzzjnnnHPOOW/2dJ9z
-zjnnnP/p6T7nnH/rW/e17eWcc84555xzzjnnnHP++bxt5yie7nPOOeec8+88
-3eec87Oe7nPOOeecc84555xzzjl/7e/uS+0ZzdN9zjnnnHN+ztN9zjm/y1vf
-1/Y7cc4555xzzjnnnHPO+bvzb+9P7ZvF033OOeecc36Pp/ucc97iZ89/e9v3
-cc4555xzzjnnnHPO+bfPte2+6zvt4pxzzjnnd3q6zznn7Z7uc84555xzzjnn
-nHPOecp/n7ft+3b3an3OOeecc97h6T7nnLd7us/Hdn+vOOecc84555xzzvnI
-/vu8bd/Z72l7H+ecc845n8vTfc45H9XTfd7p6f7R/99/egfnnHPOOeecc845
-H9Nbdhz1s+ecc84555zv8XSfc85n86372vbyz57uP+0tOzjnnHPOOeecc875
-WN6yY8tbdnDOOeec8zU83eec81U83ecd/VG9ZQfnnHPOOeecc845H9Pfnbe9
-h3POOeec8ys93eec89X96Hnbd7R5ur+Kt+zgnHPOOeecc84553yPp/ucc845
-53wNT/c555y/9nR/FE/3+Wtv2cE555xzzjnnnHPO+aerbRfnnHPOOZ/L033O
-Oef7PN1v83Sfv/aWHZxzzjnnnHPOOeecf7radnHOOeec87k83eecc36NHz1v
-+46j38e73f+unHPOOeecc84557zJ033OOeecc76Gp/ucc87v9XR/9r38tbfs
-4JxzzjnnnHPOOef809W2i3POOeecz+XpPuec84wfPU/v4mN4yw7OOeecc845
-55xzzj9dbbs455xzzvlcnu5zzjkfw7fuO/q+tu/k13jLDs4555xzzjnnnHO+
-tqf7nHPOOed8bU/3Oeecj+1PP8e7vGUH55xzzjnnnHPOOeefrrZdnHPOOed8
-DU/3Oeecr+UtO/g13rKDc84555xzzjnnnPNPV9suzjnnnHO+hqf7nHPO5/T2
-9/F93rKDc84555xzzjnnnPNPV9suzjnnnHO+tqf7nHPO5/TV++3esoNzzjnn
-nHPOOeec8ys83eecc8455/yVp/ucc87n9HT/Wz+6/+5de71lB+ecc84555xz
-zjnnd3q6zznnnHPO+R5P9znnnM/pW/e17b36u+/63rvfzznnnHPOOeecc855
-s6f7nHPOOeec7/F0n3PO+Zye7nPOOeecc84555xzzufzdJ9zzjnnnPM9nu5z
-zjmf09N9zjnnnHPOOeecc875uJ7uc84555xzfoWn+5xzzuf0dJ9zzjnnnHPO
-Oeecc97v6T7nnHPOOed3errPOed8Tk/3Oeecc84555xzzjnn/Z7uc84555xz
-fqen+5xzzuf0dJ9zzjnnnHPOOeecc97j6T7nnHPOOecJT/c555zP6ek+55xz
-zjnnnHPOOef8uO99/uw555xzzjnnM3q6zznnfE5P9znnnHPOOeecc8455897
-us8555xzznmTp/ucc87n9HSfc84555xzzjnnnHP+vKf7nHPOOeecN3m6zznn
-fC1P9znnnHPOOeecc8455+c93eecc84553wET/c555yv5ek+55xzzjnnnHPO
-Oef8vKf7nHPOOeecj+DpPuecc/7NfW17Oeecc84555xzzjlfwdN9zjnnnHPO
-R/Z0n3POOW/oc84555xzzjnnnHPO319tuzjnnHPOOR/B033OOee8oc8555xz
-zjnnnHPO+cqe7nPOOeeccz6jp/ucc855Q59zzjnnnHPOOeec8xU83eecc845
-53wlT/c555zzT57uc84555xzzjnnnHM+k6f7nHPOOeecr+TpPuecc/7J033O
-Oeecc84555xzzkf0dJ9zzjnnnHOe73POOeef/Kn3tX0355xzzjnnnHPOOeff
-eLrPOeecc845f+/pPuecc37Ez55/623fzTnnnHPOOeecc87H8L3Pnz3nnHPO
-Oeec93m6zznnnF/pR8/bvoNzzjnnnHPOOeecj+17n39qF+ecc8455/w5T/c5
-55zzKz3d55xzzjnnnHPOOef8jKf7nHPOOeec8+s83eecc86v9K372vZyzjnn
-nHPOOeecc97U55xzzjnnnF/n6T7nnHN+paf7nHPOOeecc84555x/4+k+55xz
-zjnn/H5P9znnnPMnPN3nnHPOOeecc84557ypzznnnHPOOb/f033OOef8Cd+6
-r20v55xzzjnnnHPOOZ/D033OOeecc855ztN9zjnnPOlHz9u+g3POOeecc845
-55x3errPOeecc845z3m6zznnnDd6us8555xzzjnnnHPOx/J0n3POOeecc97n
-6T7nnHPe6Ok+55xzzjnnnHPOOR/L033OOeecc855n6f7nHPO+Ug+e7/t9+ac
-c84555xzzjlv83Sfc84555xzPo6n+5xzzvkM3v6+b73td+Wcc84555xzzjm/
-y9/dl97FOeecc845n8fTfc4553xmf/q5s972+3HOOeecc84555zf7ek+55xz
-zjnnfF5P9znnnHN+3flvb/s+zjnnnHPOOeec8zZP9znnnHPOOefzerrPOeec
-854+55xzzjnnnHPO+aye7nPOOeecc87X83Sfc8455z19zjnnnHPOOeec81k9
-3eecc84555yv5+k+55xzznv6nHPOOeecc84556N7us8555xzzjnnP57uc845
-53zb033OOeecc84555yP51e99+r3zb6Lc84555xzzn883eecc875tqf7nHPO
-Oeecc8457/Hf5y07Ru9wzjnnnHPO+dWe7nPOOed824+et30H55xzzjnnnHPO
-r/eWHannOOecc84557zV033OOeecH/d0n3POOeecc845572e2vHt1fI7cc45
-55xzzvldnu5zzjnn/Lin+5xzzjnnnHPOOR/P9z5/9Z6r38c555xzzjnnrZ7u
-c8455/x6T/c555xzzjnnnHPO33m6zznnnHPOOedPebrPOeec8+f86ufavo9z
-zjnnnHPOOef9nu5zzjnnnHPO+VOe7nPOOec87+k+55xzzjnnnHPO1/F0n3PO
-Oeecc86f8nSfc845572e7nPOOeecc84553w+T/c555xzzjnn/ClP9znnnHPe
-6+k+55xzzjnnnHPOx/V0n3POOeecc87Tnu5zzjnnfDxP9znnnHPOOeecc97v
-6T7nnHPOOeecpz3d55xzzvl4fvVzbd/X5k/3W3ZwzjnnnHPOOR/b033OOeec
-c845T3u6zznnnPP5Pd1v83T/Lm/ZwTnnnHPOOef8WU/3Oeecc84557zV033O
-Oeecz+/pvu/LessOzjnnnHPOOef3eLrPOeecc845562e7nPOOed8XU/3Z9/b
-7i07OOecc84555yf83Sfc84555xzzls93eecc845f3et2l/FW3ZwzjnnnHPO
-Of/s7+5L7+Kcc84555zzdk/3Oeecc86/9dk6q3vLDs4555xzzjnn33m6zznn
-nHPOOeejebrPOeecc37Wn36OX+MtOzjnnHPOOeecf+fpPuecc84555yP5uk+
-55xzzvldfvac3+stOzjnnHPOOeecd/U555xzzjnnfBZP9znnnHPO7/Kz5/xe
-b9nBOeecc84557yrzznnnHPOOeezeLrPOeecc36Xt79vFW/ZwTnnnHPOOef8
-O0/3Oeecc84553wWT/c555xzzu/y1ftPe8sOzjnnnHPOOeffebrPOeecc845
-57N7us8555xzftbT/dG/o+134JxzzjnnnHP+jKf7nHPOOeeccz67p/ucc845
-52c93eecc84555xzzps93eecc84555zzVT3d55xzzjk/6+k+55xzzjnnnHPe
-7Ok+55xzzjnnnK/q6T7nnHPO+VlP9znnnHPOOeec8wZP9znnnHPOOeec/+np
-Puecc875Wd+6r20v55xzzjnnnHN+h6f7nHPOOeecc87/9HSfc8455/ysp/uc
-c84555xzzvkR3/v8U7s455xzzjnnnF/j6T7nnHPO+VlP9znnnHPOOeec8yc9
-3eecc84555xz/p2n+5xzzjnnZz3d55xzzjnnnHPOn/R0n3POOeecc875d57u
-c84555yf9aPnbd/BOeecc84555w39TnnnHPOOeecn/N0n3POOef8rKf7nHPO
-Oeecc875HZ7uc84555xzzjk/5+k+55xzzvlZT/c555xzzjnnnPM7PN3nnHPO
-Oeecc37O033OOeec87Oe7nPOOeecc84552c83eecc84555xzfo+n+5xzzjnn
-Zz3d55xzzjnnnHPOz3i6zznnnHPOOef8Hk/3Oeecc87v8nSfc84555xzzjlv
-6nPOOeecc845f9bTfc4555zzuzzd55xzzjnnnHPOm/qcc84555xzzp/1dJ9z
-zjnn/Gm/+r1t38c555xzzjnnPOvpPuecc84555zzDk/3Oeecc86f9nSfc845
-55xzzvncnu5zzjnnnHPOOe/wdJ9zzjnn/C5P9znnnHPOOeecz+3pPuecc845
-55zzbk/3Oeecc86f9nSfc84555xzzvk+v+q97e/jnHPOOeeccz6Xp/ucc845
-5097us8555xzzjnn/PV5y46955xzzjnnnHPO+StP9znnnHPOn/Z0n3POOeec
-c875Pr+7d9d7Oeecc84555yv7ek+55xzznmLb93XtpdzzjnnnHPO+efzu9/P
-Oeecc84555x/8nSfc84557zF033OOeecc845552e7nPOOeecc845H9PTfc45
-55zzFk/3Oeecc84555x3errPOeecc84553xMT/c555xzzts93eecc84555xz
-nvV0n3POOeecc875mJ7uc84555y3+2idtt+Pc84555xzzkf3dJ9zzjnnnHPO
-+Zie7nPOOeecj+pPP/ett/1OnHPOOeeccz66p/ucc84555xzzsf0dJ9zzjnn
-fDZP72j7PTjnnHPOOed8dE/3Oeecc84555yP6ek+55xzzvlsnu5zzjnnnHPO
-Ob/W033OOeecc84552N6us8555xzPpun+5xzzjnnnHPOj3m6zznnnHPOOed8
-Lk/3Oeecc85n83Sfc84555xzzvkxT/c555xzzjnnnM/l6T7nnHPO+Wy+dV/b
-Xs4555xzzjlfxd/dl97FOeecc84553xOT/c555xzzmfzdJ9zzjnnnHPO+TFP
-9znnnHPOOeecz+XpPuecc875bJ7uc84555xzzjk/5uk+55xzzjnnnPO5PN3n
-nHPOOZ/N033OOeecc84558c83eecc84555xzPpen+5xzzjnnq3i6zznnnHPO
-Oee8o88555xzzjnnfA1P9znnnHPOV/Gt+9r2cs4555xzzvmsnu5zzjnnnHPO
-OV/D033OOeec81U83eecc84555xz3tHnnHPOOeecc76Gp/ucc84556v72fPf
-3vZ9nHPOOeecc57ydJ9zzjnnnHPO+dqe7nPOOeec89d+9Pm27+Ccc84555zz
-q/z3+dZ9T+3inHPOOeecc85febrPOeecc85fe7rPOeecc84556N7us8555xz
-zjnnfG1P9znnnHPO+WtP9znnnHPOOed8dE/3Oeecc84555yv7ek+55xzzjl/
-7Vv3te3lnHPOOeec8zZP9znnnHPOOeecr+3pPuecc845f+3pPuecc84555yP
-7uk+55xzzjnnnPO1Pd3nnHPOOef7/Oh523dwzjnnnHPO+d2e7nPOOeecc845
-X9vTfc4555xzfo2n+5xzzjnnnHPe5uk+55xzzjnnnPO1Pd3nnHPOOefXeLrP
-Oeecc84553f5u/vSuzjnnHPOOeec80+e7nPOOeec82s83Z/V0/3f3rKDc845
-55zzJk/3Oeecc84555zzV57uc84555zze33rvra9V393264Wb9nBOeecc875
-FZ7uc84555xzzjnnrzzd55xzzjnn93q67zvG8pYdnHPOOeec7/F0n3POOeec
-c845f+XpPuecc845z3i6P9quVbxlB+ecc84555+utl2cc84555xzzvkrT/c5
-55xzznnGV+/zfd6yg3POOeecr+3pPuecc84555xzvsfTfc4555xz3uXt7+Nd
-3rKDc84555zf4+/O2/ZwzjnnnHPOOeeNnu5zzjnnnPMx/Ow5n9NbdnDOOeec
-82v97t7Zc84555xzzjnnfARP9znnnHPO+RjesoN3+NG/P+ndnHPOOeer++/z
-1n3pHZxzzjnnnHPO+RWe7nPOOeec8zH87Dmf01t2cM4555zza/3u3tlzzjnn
-nHPOOed8BE/3Oeecc855l7e/j3d5yw7OOeecc36Pvztv28M555xzzjnnnDd6
-us8555xzzjO+ep/v85YdnHPOOed8bU/3Oeecc84555zzPZ7uc84555zzjKf7
-o+1axVt2cM4555xz/ulq28U555xzzjnnnL/ydJ9zzjnnnN/r6b7vGMtbdnDO
-Oeecc77H033OOeecc8455/yVp/ucc8455/xe37qvbe/V3922q8VbdnDOOeec
-c36Fp/ucc84555xzzvkrT/c555xzzvk1nu7P6un+b2/ZwTnnnHPOeZOn+5xz
-zjnnnHPO+StP9znnnHPO+TWe7nPOOeecc875Xf7uvvQuzjnnnHPOOef8k6f7
-nHPOOef8Gk/3Oeecc84557zN033OOeecc84552t7us8555xzzvf50fO27+Cc
-c84555zzuz3d55xzzjnnnHO+tqf7nHPOOef8taf7nHPOOeeccz66p/ucc845
-55xzztf2dJ9zzjnnnL/2rfva9nLOOeecc855m6f7nHPOOeecc87X9nSfc845
-55y/9nSfc84555xzzkf3dJ9zzjnnnHPO+dqe7nPOOeec89ee7nPOOeecc875
-6J7uc84555xzzjlf29N9zjnnnHP+2o8+3/YdnHPOOeecc36V/z7fuu+pXZxz
-zjnnnHPO+StP9znnnHPOV/ez57+97fs455xzzjnnPOXpPuecc84555zztT3d
-55xzzjlfxdN9zjnnnHPOOecdfc4555xzzjnna3i6zznnnHO+im/d17aXc845
-55xzzmf1dJ9zzjnnnHPO+Rqe7nPOOeecr+LpPuecc84555zzjj7nnHPOOeec
-8zU83eecc845n83Tfc4555xzzjnnxzzd55xzzjnnnHM+l6f7nHPOOeezebrP
-Oeecc8455/yYp/ucc84555xzzufydJ9zzjnnfDZP9znnnHPOOeecH/N0n3PO
-Oeecc875XJ7uc84555zP5lv3te3lnHPOOeec81X83X3pXZxzzjnnnHPO5/R0
-n3POOed8Nk/3Oeecc84555wf83Sfc84555xzzvlcnu5zzjnnnM/m6T7nnHPO
-Oeec82Oe7nPOOeecc845n8vTfc4555zz2Tzd55xzzjnnnHN+raf7nHPOOeec
-c87H9HSfc84553w2T+9o+z0455xzzjnnfHRP9znnnHPOOeecj+npPuecc875
-qP70c9962+/EOeecc84556N7us8555xzzjnnfExP9znnnHPO2320Ttvvxznn
-nHPOOeeje7rPOeecc84553xMT/c555xzzts93eecc84555xznvV0n3POOeec
-c875mJ7uc84555y3eLrPOeecc84557zT033OOeecc84552N6us8555xz3uLp
-Puecc84555zzTk/3Oeecc84555yP6ek+55xzznmLb93XtpdzzjnnnHPO+efz
-u9/POeecc84555x/8nSfc8455/xpT/c555xzzjnnnO/zu3t3vZdzzjnnnHPO
-+dqe7nPOOeecP+3pPuecc84555zz1+ctO/aec84555xzzjnnrzzd55xzzjl/
-2tN9zjnnnHPOOef7/Kr3tr+Pc84555xzzvlcnu5zzjnnnN/l6T7nnHPOOeec
-87k93eecc84555xz3u3pPuecc875057uc84555xzzjmf29N9zjnnnHPOOecd
-nu5zzjnnnD/tV7+37fs455xzzjnnnGc93eecc84555xz3uHpPuecc875XZ7u
-c84555xzzjnnTX3OOeecc8455896us8555xzfpen+5xzzjnnnHPOeVOfc845
-55xzzvmznu5zzjnnnJ/1dJ9zzjnnnHPOOT/j6T7nnHPOOeec83s83eecc845
-P+vpPuecc84555xzfsbTfc4555xzzjnn93i6zznnnHN+1tN9zjnnnHPOOef8
-Dk/3Oeecc84555yf83Sfc8455/ysp/ucc84555xzzvkdnu5zzjnnnHPOOT/n
-6T7nnHPO+Vk/et72HZxzzjnnnHPOeVOfc84555xzzvk5T/c555xzzs96us85
-55xzzjnnnD/p6T7nnHPOOeec8+883eecc845P+vpPuecc84555xz/qSn+5xz
-zjnnnHPOv/N0n3POOef8rKf7nHPOOeecc875Ed/7/FO7OOecc84555xf4+k+
-55xzzvlZ37qvbS/nnHPOOeecc36Hp/ucc84555xzzv/0dJ9zzjnn/Kyn+5xz
-zjnnnHPOeYOn+5xzzjnnnHPO//R0n3POOef8rKf7nHPOOeecc855s6f7nHPO
-Oeecc76qp/ucc84552c93eecc84555xzzps93eecc84555zzVT3d55xzzjk/
-6+n+6N/R9jtwzjnnnHPOOX/G033OOeecc845n93Tfc4555zzu3z1/tPesoNz
-zjnnnHPO+Xee7nPOOeecc8757J7uc84555zf5e3vW8VbdnDOOeecc845/87T
-fc4555xzzjmfxdN9zjnnnPO7/Ow5v9dbdnDOOeecc8457+pzzjnnnHPO+Sye
-7nPOOeec3+Vnz/m93rKDc84555xzznlXn3POOeecc85n8XSfc8455/ysP/0c
-v8ZbdnDOOeecc845/87Tfc4555xzzjkfzdN9zjnnnPNvfbbO6t6yg3POOeec
-c875d57uc84555xzzvlonu5zzjnnnL+7Vu2v4i07OOecc84555x/9nf3pXdx
-zjnnnHPOebun+5xzzjlf19P92fe2e8sOzjnnnHPOOefnPN3nnHPOOeec81ZP
-9znnnHM+v6f7vi/rLTs455xzzjnnnN/j6T7nnHPOOeect3q6zznnnPP5Pd1v
-83T/Lm/ZwTnnnHPOOef8WU/3Oeecc84557zV033OOeecj+dXP9f2fW3+dL9l
-B+ecc84555zzsT3d55xzzjnnnPO0p/ucc845H8/Tfc4555xzzjnnnPd7us85
-55xzzjnnaU/3Oeecc97r6T7nnHPOOeecc87H9XSfc84555xzztOe7nPOOee8
-19N9zjnnnHPOOeecz+fpPuecc84555w/5ek+55xzzvOe7nPOOeecc84553wd
-T/c555xzzjnn/ClP9znnnHP+nF/9XNv3cc4555xzzjnnvN/Tfc4555xzzjl/
-ytN9zjnnnF/v6T7nnHPOOeecc875O0/3Oeecc8455/wpT/c555xzftzTfc45
-55xzzjnnnI/ne5+/es/V7+Occ84555zzVk/3Oeecc37c033OOeecc84555z3
-emrHt1fL78Q555xzzjnnd3m6zznnnPNtP3re9h2cc84555xzzjm/3lt2pJ7j
-nHPOOeec81ZP9znnnHO+7ek+55xzzjnnnHPOe/z3ecuO0Tucc84555xzfrWn
-+5xzzjnf9nSfc84555xzzjnn4/lV7736fbPv4pxzzjnnnPMfT/c555xz3tPn
-nHPOOeecc845H93Tfc4555xzzjn/8XSfc8455z19zjnnnHPOOeec81k93eec
-c84555yv5+k+55xzznv6nHPOOeecc84557N6us8555xzzjlfz9N9zjnnnF93
-/tvbvo9zzjnnnHPOOee8zdN9zjnnnHPO+bye7nPOOecz+9PPnfW2349zzjnn
-nHPOOef8bk/3Oeecc8455/N6us8555zP4O3v+9bbflfOOeecc84555zzu/zd
-feldnHPOOeec83k83eecc85H8tn7bb8355xzzjnnnHPOeZun+5xzzjnnnPNx
-PN3nnHPOGz3d55xzzjnnnHPOOedjebrPOeecc8457/N0n3POOW/0dJ9zzjnn
-nHPOOeecj+XpPuecc84557zP033OOec86UfP276Dc84555xzzjnnnHd6us85
-55xzzjnPebrPOeecP+Fb97Xt5ZxzzjnnnHPOOedzeLrPOeecc845z3m6zznn
-nD/h6T7nnHPOOeecc8455019zjnnnHPO+f2e7nPOOedXerrPOeecc84555xz
-zvk3nu5zzjnnnHPO7/d0n3POOb/St+5r28s555xzzjnnnHPOeVOfc84555xz
-fp2n+5xzzvmVnu5zzjnnnHPOOeecc37G033OOeecc875dZ7uc84551f60fO2
-7+Ccc84555xzzjnnY/ve55/axTnnnHPOOX/O033OOef8iJ89/9bbvptzzjnn
-nHPOOeecj+F7nz97zjnnnHPOOe/zdJ9zzjn/5E+9r+27Oeecc84555xzzjn/
-xtN9zjnnnHPO+XtP9znnnPNPnu5zzjnnnHPOOeeccz6ip/ucc84555zzfJ9z
-zjn/5Ok+55xzzjnnnHPOOeczebrPOeecc875Sp7uc8455w19zjnnnHPOOeec
-c85X8HSfc84555zzlTzd55xzzhv6nHPOOeecc84555yv7Ok+55xzzjnnM3q6
-zznnnDf0Oeecc84555xzzjnn76+2XZxzzjnnnI/g6T7nnHP+zX1teznnnHPO
-Oeecc845X8HTfc4555xzzkf2dJ9zzvlanu5zzjnnnHPOOeecc87Pe7rPOeec
-c875CJ7uc845X8vTfc4555xzzjnnnHPO+XlP9znnnHPOOR/B033OOedzerrP
-Oeecc84555xzzjl/3tN9zjnnnHPOmzzd55xzPqen+5xzzjnnnHPOOeec8+c9
-3eecc84557zJ033OOedzerrPOeecc84555xzzjk/7nufP3vOOeecc875jJ7u
-c845n9PTfc4555xzzjnnnHPOeY+n+5xzzjnnnCc83eeccz6np/ucc84555xz
-zjnnnPN+T/c555xzzjm/09N9zjnnc3q6zznnnHPOOeecc8457/d0n3POOeec
-8zs93eeccz6np/ucc84555xzzjnnnPNxPd3nnHPOOef8Ck/3Oeecz+npPuec
-c84555xzzjnnfD5P9znnnHPOOd/j6T7nnPM5feu+tr1Xf/dd33v3+znnnHPO
-Oeecc845b/Z0n3POOeec8z2e7nPOOZ/T0/1v/ej+u3ft9ZYdnHPOOeecc845
-55zf6ek+55xzzjnnezzd55xzPqev3m/3lh2cc84555xzzjnnnF/h6T7nnHPO
-OeevPN3nnHM+p7e/j+/zlh2cc84555xzzjnnnH+62nZxzjnnnPO1Pd3nnHO+
-lrfs4Nd4yw7OOeecc84555xzzj9dbbs455xzzvkanu5zzjkf259+jnd5yw7O
-Oeecc84555xzzj9dbbs455xzzvkanu5zzjkfw7fuO/q+tu/k13jLDs4555xz
-zjnnnHO+tqf7nHPOOed8bU/3OeecZ/zoeXoXH8NbdnDOOeecc84555xz/ulq
-28U555xzzufydJ9zzvm9nu7Pvpe/9pYdnHPOOeecc84555x/utp2cc4555zz
-uTzd55xzfo0fPW/7jqPfx7vd/66cc84555xzzjnnvMnTfc4555xzvoan+5xz
-zvd5ut/m6T5/7S07OOecc84555xzzjn/dLXt4pxzzjnnc3m6zznn/LWn+6N4
-us9fe8sOzjnnnHPOOeecc84/XW27OOecc875XJ7uc8756n70vO072jzdX8Vb
-dnDOOeecc84555xzvsfTfc4555xzvoan+5xzvoqn+7yjP6q37OCcc84555xz
-zjnnY/q787b3cM4555xzfqWn+5xzPptv3de2l3/2dP9pb9nBOeecc84555xz
-zsfylh1b3rKDc84555yv4ek+55yP6uk+7/R0/+j/7z+9g3POOeecc84555yP
-6S07jvrZc84555xzzvd4us855+2e7vOx3d8rzjnnnHPOOeeccz6y/z5v23f2
-e9rexznnnHPO5/J0n3PO2z3d55xzzjnnnHPOOeec85T/Pm/b9+3u1fqcc845
-57zD033OOW/xs+e/ve37OOecc84555xzzjnn/Nvn2nbf9Z12cc4555zzOz3d
-55zzu7z1fW2/E+ecc84555xzzjnnnL87//b+1L5ZPN3nnHPOOef3eLrPOedn
-Pd3nnHPOOeecc84555xz/trf3ZfaM5qn+5xzzjnn/Jyn+5xz/q1v3de2l3PO
-Oeecc84555xzzvnn87ado3i6zznnnHPOv/N0n3POv/V0n3POOeecc84555xz
-zjlv9nSfc84555z/6ek+55y/u/aet30H55xzzjnnnHPOOeecc97g6T7nnHPO
-+aqe7nPO1/V0n3POOeecc84555xzzjlf2dN9zjnnnPPZPd3nnM/v6T7nnHPO
-Oeecc84555xzzt9fbbs455xzzmfxdJ9zPr9v3de2l3POOeecc84555xzzjlf
-2dN9zjnnnPNZPN3nnM/v6T7nnHPOOeecc84555xzzrfvO3vOOeecc87/9HSf
-cz6Pb93XtpdzzjnnnHPOOeecc8455+c93eecc845b/V0n3M+j6f7nHPOOeec
-c84555xzzjnv8XSfc8455zzt6T7nfB5P9znnnHPOOeecc84555xz3u/pPuec
-c875U57uc87n8XSfc84555xzzjnnnHPOOef9nu5zzjnnnD/l6T7nvNeffu6s
-t/1+nHPOOeecc84555xzzjn/3tN9zjnnnPOrPd3nnOe9/X1nvWUH55xzzjnn
-nHPOOeecc873e7rPOeecc37U033O+fW+dd9T/ZbfpWUH55xzzjnnnHPOOeec
-c86v83Sfc84553zL033O+XFP90fZ2/Y7cM4555xzzjnnnHPOOef8vKf7nHPO
-Oedbnu5zzrc93R/9+9q+l3POOeecc84555xzzjnn93m6zznnnHP+4+k+57yn
-zznnnHPOOeecc84555xzPrqn+5xzzjnnP57uc857+pxzzjnnnHPOOeecc845
-57N6us8555zz9Tzd53xFP3re9h2cc84555xzzjnnnHPOOeejeLrPOeec8/U8
-3ed8Zk/3Oeecc84555xzzjnnnHPOeUefc8455+t5us/5DJ7uc84555xzzjnn
-nHPOOeecz+ZXvffsOeecc875UU/3OR/Jj563fQfnnHPOOeecc84555xzznm7
-X/Xep5/jnHPOOf/xdJ/zkTzd55xzzjnnnHPOOeecc845n9XfnW/9+a496Q7n
-nHPOx/d0n/ORPN3nnHPOOeecc84555xzzjnnnZ7uc84557zP033OG33rvra9
-nHPOOeecc84555xzzjnnvNPTfc4555znPN3nvNHTfc4555xzzjnnnHPOOeec
-cz63p/ucc845v9/Tfc4b/ez5t9723ZxzzjnnnHPOOeecc8455zzr6T7nnHPO
-r/N0n/OkP/3cb2/7PTjnnHPOOeecc84555xzznnW033OOeecX+fpPudPeNv7
-/Dubc84555xzzjnnnHPOOeec7/F0n3POOef7Pd3n/EpP9znnnHPOOeecc845
-55xzzjl/0tN9zjnnnL/3dJ/zI57uc84555xzzjnnnHPOOeecc97s6T7nnHPO
-833Oj/jWfW17Oeecc84555xzzjnnnHPOOX/S033OOeec5/ucf/J0n3POOeec
-c84555xzzjnnnPOZPN3nnHPOV/J0n/NPnu5zzjnnnHPOOeecc84555xzvoKn
-+5xzzvmMnu5z/snTfc4555xzzjnnnHPOOeecc85X8HSfc845n9HTfc4b+pxz
-zjnnnHPOOeecc84555zz91fbLs4553wET/c5b+hzzjnnnHPOOeecc84555xz
-zt9fbbs455zzETzd5/yK89/e9n2cc84555xzzjnnnHPOOeecj+jpPueccz6y
-p/t8LX/qfW3fzTnnnHPOOeecc84555xzznnS9z5/9pxzzjnn+T5fy9N9zjnn
-nHPOOeecc84555xzzvl9nu5zzjnnTZ7u87U83eecc84555xzzjnnnHPOOeec
-P+/pPuecc57wdJ/P6ek+55xzzjnnnHPOOeecc84557zf033OOef8Tk/3+Zye
-7nPOOeecc84555xzzjnnnHPO+z3d55xzzu/0dJ/P6ek+55xzzjnnnHPOOeec
-c84553xcT/c555zzKzzd53P60efbvoNzzjnnnHPOOeecc84555xz3uPpPuec
-c77H030+p6f7nHPOOeecc84555xzzjnnnPP5PN3nnHPO93i6z8f2dJ9zzjnn
-nHPOOeecc84555xzztN9zjnn/JWn+3xsT/c555xzzjnnnHPOOeecc8455zzd
-55xzzl95us/H9nSfc84555xzzjnnnHPOOeecc87Tfc455/yVp/t8bE/3Oeec
-c84555xzzjnnnHPOOefz+7v7zp5zzjnnd3q6z8f2dJ9zzjnnnHPOOeecc845
-55xzzt/51tW2l3PO+Vye7vOxPd3nnHPOOeecc84555xzzjnnnPO9nu5zzjlf
-w9N9PrZv3de2l3POOeecc84555xzzjnnnHPO33m6zznnfC5P9/nYnu5zzjnn
-nHPOOeecc84555xzzvlVnu5zzjmfy9N9Pran+0/71b/D3bs455xzzjnnnHPO
-Oeecc8455997us8553wuT/f52J7uz7633Vt2cM4555xzzjnnnHPOOeecc36n
-p/ucc87H9HSfj+1b9/n3D//GW3ZwzjnnnHPOOeecc84555xz/ulq28U557zb
-030+tj/9HF/Lt/781A7OOeecc84555xzzjnnnHO+tqf7nHPOx/R0n4/tZ885
-P+ItOzjnnHPOOeecc84555xzzvnanu5zzjnv9nSfd3n7+zj/5C07OOecc845
-55xzzjnnnHPO+Rqe7nPOOe/2dJ9nfLYO55+8ZQfnnHPOOeecc84555xzzjmf
-y9N9zjnn3Z7u82s83R9tF1/LW3ZwzjnnnHPOOeecc84555zzuTzd55xz3u3p
-Pt/n6b7v4DN5yw7OOeecc84555xzzjnnnHM+l6f7nHPOOzzd56893fd9fAVv
-2cE555xzzjnnnHPOOeecc87n8nSfc855h6f7q/jR87bvSP9OnF/pLTs455xz
-zjnnnHPOOeecc875XJ7uc8457/B0f1RP92f1dJ+v5S07OOecc84555xzzjnn
-nHPO+Vye7nPOOe/wdL/d033e0edruL+XnHPOOeecc84555xzzjnnc/m781SX
-c875Wp7ut3u6zzv6fE5v2cE555xzzjnnnHPOOf//9ucgBQAQBALg/3/dCyLI
-SMs5Oouscs457+ZV7tj1aM4557yHZ/ff9tN71f7r5tn9/G2vcgfnnHPOOeec
-c84555xzznlVn+WruatHc84557/4AEAsnLA=
- "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
- FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
- GridLinesStyle -> Directive[
- GrayLevel[0.5, 0.4]],
- Method -> {
- "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
- FormBox[
- FormBox[
- TemplateBox[{"\"Divergent\"",
- RowBox[{"-", "1.5`"}], "0", "0.75`"}, "SwatchLegend",
- DisplayFunction -> (FormBox[
- StyleBox[
- StyleBox[
- PaneBox[
- TagBox[
- GridBox[{{
- TagBox[
- GridBox[{{
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[1., 0., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 1., 0.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
- GraphicsBox[{
- Directive[
- EdgeForm[
- Directive[
- Opacity[0.3],
- GrayLevel[0]]],
- PointSize[0.5],
- AbsoluteThickness[1.6],
- RGBColor[0., 0., 1.]],
- RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
- AspectRatio -> Full, ImageSize -> {10, 10},
- PlotRangePadding -> None, ImagePadding -> Automatic,
- BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
- GridBoxAlignment -> {
- "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
- AutoDelete -> False,
- GridBoxDividers -> {
- "Columns" -> {{False}}, "Rows" -> {{False}}},
- GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
- GridBoxSpacings -> {
- "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
- GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
- AutoDelete -> False,
- GridBoxItemSize -> {
- "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
- GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
- "Grid"], Alignment -> Left, AppearanceElements -> None,
- ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
- "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
- FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
- False], TraditionalForm]& ),
- InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
- None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[1., 0., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[1., 0., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[1., 0., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[1., 0., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 1., 0.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 1., 0.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 1., 0.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 1., 0.], Editable -> False, Selectable ->
- False], "]"}], ",",
- RowBox[{"Directive", "[",
- InterpretationBox[
- ButtonBox[
- TooltipBox[
- GraphicsBox[{{
- GrayLevel[0],
- RectangleBox[{0, 0}]}, {
- GrayLevel[0],
- RectangleBox[{1, -1}]}, {
- RGBColor[0., 0., 1.],
- RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
- True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
- FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
- Dynamic[{
- Automatic, 1.35 CurrentValue["FontCapHeight"]/
- AbsoluteCurrentValue[Magnification]}]],
- "RGBColor[0., 0., 1.]"], Appearance -> None,
- BaseStyle -> {}, BaselinePosition -> Baseline,
- DefaultBaseStyle -> {}, ButtonFunction :>
- With[{Typeset`box$ = EvaluationBox[]},
- If[
- Not[
- AbsoluteCurrentValue["Deployed"]],
- SelectionMove[Typeset`box$, All, Expression];
- FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
- FrontEnd`Private`$ColorSelectorInitialColor =
- RGBColor[0., 0., 1.];
- FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
- MathLink`CallFrontEnd[
- FrontEnd`AttachCell[Typeset`box$,
- FrontEndResource["RGBColorValueSelector"], {
- 0, {Left, Bottom}}, {Left, Top},
- "ClosingActions" -> {
- "SelectionDeparture", "ParentChanged",
- "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
- Automatic, Method -> "Preemptive"],
- RGBColor[0., 0., 1.], Editable -> False, Selectable ->
- False], "]"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
- RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
- RowBox[{"LabelStyle", "\[Rule]",
- RowBox[{"{", "}"}]}], ",",
- RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
- Editable -> True], TraditionalForm], TraditionalForm]},
- "Legended",
- DisplayFunction->(GridBox[{{
- TagBox[
- ItemBox[
- PaneBox[
- TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
- BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
- "SkipImageSizeLevel"],
- ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
- GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
- AutoDelete -> False, GridBoxItemSize -> Automatic,
- BaselinePosition -> {1, 1}]& ),
- Editable->True,
- InterpretationFunction->(RowBox[{"Legended", "[",
- RowBox[{#, ",",
- RowBox[{"Placed", "[",
- RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
- CellChangeTimes->{3.6631017417896557`*^9, 3.6641618531627593`*^9}]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-},
-WindowSize->{759, 833},
-WindowMargins->{{553, Automatic}, {Automatic, 52}},
-FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
-StyleDefinitions->"Default.nb"
-]
-(* End of Notebook Content *)
-
-(* Internal cache information *)
-(*CellTagsOutline
-CellTagsIndex->{}
-*)
-(*CellTagsIndex
-CellTagsIndex->{}
-*)
-(*NotebookFileOutline
-Notebook[{
-Cell[CellGroupData[{
-Cell[580, 22, 125, 1, 90, "Title"],
-Cell[708, 25, 107, 1, 30, "Text"],
-Cell[CellGroupData[{
-Cell[840, 30, 99, 1, 63, "Section"],
-Cell[942, 33, 473, 13, 49, "Text"],
-Cell[1418, 48, 515, 17, 45, "DisplayFormula"],
-Cell[1936, 67, 391, 7, 68, "Text"],
-Cell[2330, 76, 427, 7, 87, "Text"],
-Cell[2760, 85, 1405, 36, 144, "Text"],
-Cell[4168, 123, 371, 8, 49, "Text"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[4576, 136, 91, 1, 63, "Section"],
-Cell[CellGroupData[{
-Cell[4692, 141, 104, 1, 43, "Subsection"],
-Cell[4799, 144, 1473, 39, 112, "Input"],
-Cell[CellGroupData[{
-Cell[6297, 187, 287, 7, 34, "Input"],
-Cell[6587, 196, 493, 16, 61, "Output"]
-}, Open ]],
-Cell[7095, 215, 11016, 259, 1146, "Input"]
-}, Closed]],
-Cell[CellGroupData[{
-Cell[18148, 479, 101, 1, 35, "Subsection"],
-Cell[CellGroupData[{
-Cell[18274, 484, 383, 9, 34, "Input"],
-Cell[18660, 495, 16926, 334, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[35623, 834, 485, 11, 34, "Input"],
-Cell[36111, 847, 52522, 918, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[88670, 1770, 337, 9, 34, "Input"],
-Cell[89010, 1781, 66648, 1151, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[155695, 2937, 608, 12, 34, "Input"],
-Cell[156306, 2951, 60137, 990, 374, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[216480, 3946, 281, 8, 34, "Input"],
-Cell[216764, 3956, 58447, 963, 374, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[275248, 4924, 583, 12, 34, "Input"],
-Cell[275834, 4938, 14251, 277, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[290122, 5220, 580, 12, 34, "Input"],
-Cell[290705, 5234, 16523, 313, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[307265, 5552, 1030, 26, 52, "Input"],
-Cell[308298, 5580, 33995, 611, 376, "Output"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[342330, 6196, 623, 15, 31, "Input"],
-Cell[342956, 6213, 32351, 580, 376, "Output"]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}
-]
-*)
-
+(* Content-type: application/vnd.wolfram.mathematica *)
+
+(*** Wolfram Notebook File ***)
+(* http://www.wolfram.com/nb *)
+
+(* CreatedBy='Mathematica 10.2' *)
+
+(*CacheID: 234*)
+(* Internal cache information:
+NotebookFileLineBreakTest
+NotebookFileLineBreakTest
+NotebookDataPosition[ 158, 7]
+NotebookDataLength[ 377475, 6875]
+NotebookOptionsPosition[ 375359, 6799]
+NotebookOutlinePosition[ 375703, 6814]
+CellTagsIndexPosition[ 375660, 6811]
+WindowFrame->Normal*)
+
+(* Beginning of Notebook Content *)
+Notebook[{
+
+Cell[CellGroupData[{
+Cell["Complex Newton\[CloseCurlyQuote]s Method", "Title",
+ CellChangeTimes->{{3.776587885602626*^9, 3.7765878892047005`*^9}}],
+
+Cell["Adam Rumpf, 2/23/2016", "Text",
+ CellChangeTimes->{{3.7765879645996017`*^9, 3.7765879864409084`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Introduction", "Section",
+ CellChangeTimes->{{3.7765879027790375`*^9, 3.776587905025833*^9}}],
+
+Cell[TextData[{
+ "Newton\[CloseCurlyQuote]s method (a.k.a. the Newton-Raphson method) is an \
+iterative root finding process. Given a function ",
+ Cell[BoxData[
+ FormBox["f", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and an initial guess ",
+ Cell[BoxData[
+ FormBox[
+ SubscriptBox["x", "0"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", the process is defined by:"
+}], "Text",
+ CellChangeTimes->{{3.7765873898669224`*^9, 3.776587628077781*^9}}],
+
+Cell[BoxData[
+ RowBox[{"\t",
+ FormBox[
+ RowBox[{
+ SubscriptBox["x",
+ RowBox[{"n", "+", "1"}]], "=",
+ RowBox[{
+ SubscriptBox["x", "n"], "-",
+ FractionBox[
+ RowBox[{"f", "(",
+ SubscriptBox["x", "n"], ")"}],
+ RowBox[{
+ RowBox[{"f", "'"}],
+ RowBox[{"(",
+ SubscriptBox["x", "n"], ")"}]}]]}]}],
+ TraditionalForm]}]], "DisplayFormula",
+ CellChangeTimes->{{3.7765873898669224`*^9, 3.7765876343990145`*^9}, {
+ 3.7765880045342627`*^9, 3.776588004542261*^9}}],
+
+Cell["\<\
+This method is taught in basic Calculus, and it is mostly of interest because \
+it is (a) simple to define and understand, (b) easy to visualize, and (c) \
+good enough to still be used for scientific computing, despite being over 300 \
+years old.\
+\>", "Text",
+ CellChangeTimes->{{3.7765873898669224`*^9, 3.7765876554799743`*^9}, {
+ 3.7765880294968214`*^9, 3.776588034544223*^9}}],
+
+Cell["\<\
+Many students will be surprised to know that this method does not just work \
+for real-valued functions: it works for complex-valued functions, as well. \
+Its behavior in the complex plane can be a bit more complicated to describe, \
+and depending on the initial guess, the method may not necessarily converget \
+to the nearest root.\
+\>", "Text",
+ CellChangeTimes->{{3.7765876439551272`*^9, 3.7765877526697845`*^9}}],
+
+Cell[TextData[{
+ "This Notebook defines a function called ",
+ StyleBox["newtonplot[]", "Code"],
+ ", which accepts (in order) a pure function, a bound ",
+ Cell[BoxData[
+ FormBox["b", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " for the complex domain ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ RowBox[{"[",
+ RowBox[{
+ RowBox[{"-", "b"}], ",", "b"}], "]"}], "\[Times]",
+ RowBox[{"[",
+ RowBox[{
+ RowBox[{"-", "b"}], ",", "b"}], "]"}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", the number of nodes ",
+ Cell[BoxData[
+ FormBox["n", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " into which each axis will be divided, an iteration cutoff, and an error \
+tolerance. The function will divide the square domain into an ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"n", "\[Times]", "n"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " grid and conduct Newton\[CloseCurlyQuote]s method using every grid node as \
+an initial guess. If the method comes within the error tolerance of one of \
+the true roots, then the method terminates and we record which root was \
+reached. If no root is reached within the iteration cutoff, then the process \
+is deemed to have diverged."
+}], "Text",
+ CellChangeTimes->{{3.7765877574128275`*^9, 3.77658778055941*^9}, {
+ 3.776587824735916*^9, 3.776587850473181*^9}, {3.77658806101051*^9,
+ 3.776588456805036*^9}}],
+
+Cell[TextData[{
+ "The output is a coloring of the complex domain showing which initial \
+guesses converge to which roots. A larger value of ",
+ Cell[BoxData[
+ FormBox["n", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " will lead to a sharper picture but a longer computation time."
+}], "Text",
+ CellChangeTimes->{{3.776588459669097*^9, 3.7765885063788424`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Code", "Section",
+ CellChangeTimes->{{3.7765879208719325`*^9, 3.776587921823886*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Initialization", "Subsection",
+ CellChangeTimes->{{3.776588544504778*^9, 3.7765885464741445`*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{"roots", "[", "f", "]"}], " ", "returns", " ", "a", " ", "list",
+ " ", "of", " ", "the", " ", "unique", " ", "roots", " ", "of", " ",
+ "function", " ",
+ RowBox[{"f", "."}]}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"roots", "[", "f_", "]"}], ":=",
+ RowBox[{"Module", "[",
+ RowBox[{
+ RowBox[{"{", "r", "}"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"r", "=",
+ RowBox[{"DeleteDuplicates", "[",
+ RowBox[{"x", "/.",
+ RowBox[{"Solve", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"f", "[", "x", "]"}], "\[Equal]", "0"}], ",", "x"}],
+ "]"}]}], "]"}]}], ";", "\[IndentingNewLine]",
+ RowBox[{"Table", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"Re", "[",
+ RowBox[{"r", "[",
+ RowBox[{"[", "i", "]"}], "]"}], "]"}], "+",
+ RowBox[{"I", " ",
+ RowBox[{"Im", "[",
+ RowBox[{"r", "[",
+ RowBox[{"[", "i", "]"}], "]"}], "]"}]}]}], ",",
+ RowBox[{"{",
+ RowBox[{"i", ",", "1", ",",
+ RowBox[{"Length", "[", "r", "]"}]}], "}"}]}], "]"}]}]}],
+ "\[IndentingNewLine]", "]"}]}], ";"}]}]], "Input",
+ CellChangeTimes->{{3.65954843910914*^9, 3.65954848479572*^9}, {
+ 3.6595485169148393`*^9, 3.6595485598267083`*^9}, {3.659555212555744*^9,
+ 3.6595552904228373`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"roots", "[",
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595485653603544`*^9, 3.65954859823431*^9}, {
+ 3.6595552298253365`*^9, 3.659555232700883*^9}}],
+
+Cell[BoxData[
+ RowBox[{"{",
+ RowBox[{"1", ",",
+ RowBox[{
+ RowBox[{"-",
+ FractionBox["1", "2"]}], "-",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}], ",",
+ RowBox[{
+ RowBox[{"-",
+ FractionBox["1", "2"]}], "+",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}]}], "}"}]], "Output",
+ CellChangeTimes->{{3.6595485756723404`*^9, 3.659548598922804*^9},
+ 3.6595552340602794`*^9, 3.6595552931736403`*^9}]
+}, Open ]],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{
+ RowBox[{"newtonplot", "[",
+ RowBox[{"f", ",", "lim", ",", "n", ",", "cut", ",", "eps"}], "]"}], " ",
+ "creates", " ", "a", " ", "plot", " ", "of", " ", "the", " ",
+ RowBox[{"region", " ", "[",
+ RowBox[{
+ RowBox[{"-", "lim"}], ",", "lim"}], "]"}],
+ RowBox[{"x", "[",
+ RowBox[{
+ RowBox[{"-", "lim"}], ",", "lim"}], "]"}], " ", "of", " ", "the", " ",
+ "complex", " ", "plane"}], ",", " ",
+ RowBox[{"divided", " ", "into", " ", "an", " ", "nxn", " ",
+ RowBox[{"grid", ".", " ", "Each"}], " ", "grid", " ", "point", " ",
+ "is", " ", "used", " ", "as", " ", "the", " ", "initial", " ", "guess",
+ " ", "for", " ", "complex", " ",
+ RowBox[{"Newton", "'"}], "s", " ", "method", " ", "on", " ", "function",
+ " ",
+ RowBox[{"f", ".", " ", "Each"}], " ", "root", " ", "is", " ",
+ "assigned", " ", "a", " ", "color"}], ",", " ",
+ RowBox[{"and", " ", "after", " ", "cut", " ", "iterations"}], ",", " ",
+ RowBox[{
+ "if", " ", "we", " ", "are", " ", "within", " ", "distance", " ", "eps",
+ " ", "of", " ", "a", " ", "root"}], ",", " ",
+ RowBox[{"we", " ", "assign", " ", "that", " ", "point", " ", "that", " ",
+ RowBox[{"root", "'"}], "s", " ",
+ RowBox[{"color", ".", " ", "If"}], " ", "if", " ", "is", " ", "not",
+ " ", "that", " ", "close", " ", "to", " ", "any", " ", "root"}], ",",
+ " ",
+ RowBox[{"we", " ", "color", " ", "it", " ",
+ RowBox[{"black", "."}]}]}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"newtonplot", "[",
+ RowBox[{"f_", ",", "lim_", ",", "n_", ",", "cut_", ",", "eps_"}], "]"}],
+ ":=",
+ RowBox[{"Module", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ "fp", ",", "newton", ",", "rootlist", ",", "array", ",", "grid", ",",
+ "dx", ",", "i", ",", "j", ",", "iter", ",", "x", ",", "numroots", ",",
+ "rootnum"}], "}"}], ",", "\[IndentingNewLine]",
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{"fp", " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ "derivative", " ", "of", " ", "f", "\[IndentingNewLine]",
+ "newton"}], " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ RowBox[{"Newton", "'"}], "s", " ", "method", " ", "iteration",
+ " ", "function", "\[IndentingNewLine]", "rootlist"}], " ", "=",
+ " ",
+ RowBox[{
+ RowBox[{
+ "list", " ", "of", " ", "all", " ", "unique", " ", "roots", " ",
+ "of", " ", "f", "\[IndentingNewLine]", "array"}], " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ "array", " ", "of", " ", "values", " ", "corresponding", " ",
+ "to", " ", "each", " ", "grid", " ", "point", " ",
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{
+ RowBox[{"-", "1"}], " ", "means", " ", "no", " ", "root"}],
+ ",", " ",
+ RowBox[{
+ "positive", " ", "integer", " ", "corresponds", " ", "to",
+ " ", "one", " ", "of", " ", "the", " ", "roots", " ", "in",
+ " ", "the", " ", "list"}]}], ")"}], "\[IndentingNewLine]",
+ "grid"}], " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ "array", " ", "of", " ", "actual", " ", "coordinates", " ",
+ "of", " ", "grid", " ", "points", "\[IndentingNewLine]",
+ "dx"}], " ", "=", " ",
+ RowBox[{
+ "space", " ", "between", " ", "grid", " ", "points",
+ "\[IndentingNewLine]", "i"}]}]}]}]}]}]}], ",",
+ RowBox[{"j", " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ "coordinates", " ", "of", " ", "point", " ", "currently", " ",
+ "being", " ", "examined", "\[IndentingNewLine]", "iter"}], " ",
+ "=", " ",
+ RowBox[{
+ RowBox[{"current", " ", "iteration", " ", "of", " ",
+ RowBox[{"Newton", "'"}], "s", " ", "Method",
+ "\[IndentingNewLine]", "x"}], " ", "=", " ",
+ RowBox[{
+ RowBox[{"current", " ", "guess", " ", "in", " ",
+ RowBox[{"Newton", "'"}], "s", " ", "Method",
+ "\[IndentingNewLine]", "numroots"}], " ", "=", " ",
+ RowBox[{
+ RowBox[{
+ "number", " ", "of", " ", "roots", "\[IndentingNewLine]",
+ "rootnum"}], " ", "=", " ",
+ RowBox[{
+ "index", " ", "of", " ", "root", " ", "under", " ",
+ "evaluation"}]}]}]}]}]}]}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"fp", "=",
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ RowBox[{"f", "'"}], "[", "x", "]"}]}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"newton", "=",
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{"N", "[",
+ RowBox[{"x", "-",
+ FractionBox[
+ RowBox[{"f", "[", "x", "]"}],
+ RowBox[{"fp", "[", "x", "]"}]]}], "]"}]}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"rootlist", "=",
+ RowBox[{"roots", "[", "f", "]"}]}], ";", "\[IndentingNewLine]",
+ RowBox[{"numroots", "=",
+ RowBox[{"Length", "[", "rootlist", "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"dx", "=",
+ FractionBox[
+ RowBox[{"2", "lim"}],
+ RowBox[{"n", "-", "1"}]]}], ";", "\[IndentingNewLine]",
+ RowBox[{"array", "=",
+ RowBox[{"ConstantArray", "[",
+ RowBox[{
+ RowBox[{"-", "1"}], ",",
+ RowBox[{"{",
+ RowBox[{"n", ",", "n"}], "}"}]}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"grid", "=",
+ RowBox[{"Table", "[",
+ RowBox[{
+ RowBox[{"N", "[",
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"-", "lim"}], "+",
+ RowBox[{"l", " ", "dx"}]}], ")"}], "+",
+ RowBox[{"I",
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"-", "lim"}], "+",
+ RowBox[{"k", " ", "dx"}]}], ")"}]}]}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"k", ",",
+ RowBox[{"n", "-", "1"}], ",", "0", ",",
+ RowBox[{"-", "1"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"l", ",", "0", ",",
+ RowBox[{"n", "-", "1"}]}], "}"}]}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"For", "[",
+ RowBox[{
+ RowBox[{"i", "=", "1"}], ",",
+ RowBox[{"i", "\[LessEqual]", "n"}], ",",
+ RowBox[{"i", "++"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"For", "[",
+ RowBox[{
+ RowBox[{"j", "=", "1"}], ",",
+ RowBox[{"j", "\[LessEqual]", "n"}], ",",
+ RowBox[{"j", "++"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"x", "=",
+ RowBox[{"grid", "[",
+ RowBox[{"[",
+ RowBox[{"i", ",", "j"}], "]"}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"For", "[",
+ RowBox[{
+ RowBox[{"iter", "=", "1"}], ",",
+ RowBox[{"iter", "\[LessEqual]", "cut"}], ",",
+ RowBox[{"iter", "++"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"fp", "[", "x", "]"}], "\[NotEqual]", "0"}], "&&",
+ RowBox[{
+ RowBox[{"Abs", "[", "x", "]"}], "\[NotEqual]",
+ "Infinity"}]}], ",", "\[IndentingNewLine]",
+ RowBox[{"x", "=",
+ RowBox[{"newton", "[", "x", "]"}]}], ",",
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"x", "=", "ComplexInfinity"}], ";"}]}],
+ "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
+ "]"}], ";", "\[IndentingNewLine]",
+ RowBox[{"For", "[",
+ RowBox[{
+ RowBox[{"rootnum", "=", "1"}], ",",
+ RowBox[{"rootnum", "\[LessEqual]", "numroots"}], ",",
+ RowBox[{"rootnum", "++"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"Abs", "[",
+ RowBox[{"x", "-",
+ RowBox[{"rootlist", "[",
+ RowBox[{"[", "rootnum", "]"}], "]"}]}], "]"}], "<",
+ "eps"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"array", "[",
+ RowBox[{"[",
+ RowBox[{"i", ",", "j"}], "]"}], "]"}], "=", "rootnum"}],
+ ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
+ "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
+ "]"}], ";"}]}], "\[IndentingNewLine]", "]"}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"ArrayPlot", "[",
+ RowBox[{"array", ",",
+ RowBox[{"ColorRules", "\[Rule]",
+ RowBox[{"Join", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "1"}], "\[Rule]", "Black"}], "}"}], ",",
+ RowBox[{"Table", "[",
+ RowBox[{
+ RowBox[{"k", "\[Rule]",
+ RowBox[{"Hue", "[",
+ FractionBox[
+ RowBox[{"k", "-", "1"}], "numroots"], "]"}]}], ",",
+ RowBox[{"{",
+ RowBox[{"k", ",", "1", ",", "numroots"}], "}"}]}], "]"}]}],
+ "]"}]}], ",",
+ RowBox[{"PlotLegends", "\[Rule]",
+ RowBox[{"Join", "[",
+ RowBox[{
+ RowBox[{"{", "\"\\"", "}"}], ",",
+ RowBox[{"Table", "[",
+ RowBox[{
+ RowBox[{"rootlist", "[",
+ RowBox[{"[", "k", "]"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"k", ",", "1", ",", "numroots"}], "}"}]}], "]"}]}],
+ "]"}]}]}], "]"}]}]}], "\[IndentingNewLine]", "]"}]}],
+ ";"}]}]], "Input",
+ CellChangeTimes->CompressedData["
+1:eJwdy1soQwEAh/E1ymWLPKFGKCWXRwvNtOzFRtgoZGK1J2luSZaatszDUHNt
+bVkSm2ZIok0bmqUkS2uF5HYyucxtxchy/ufh6/f0ZUrlIhmdRqNlkkF1vnk5
+lv/Eiw0vrsOi/rATVmqm/PDWMXwFudmqa3jCl4bhQMVEUhxp71pqCnR7Fbkw
+wShlw4+ekmK4c+7gQnvQJICjx9diyGQPNUHv07QMCoOSdhh95uqC96xDBSSI
+DCVcavzTwN8Wtw52Whx6+Py1+RpPak2MhGBhY1UpgzSwusWDVkZqDcyx+EQw
+8ZLeADnPb5Q2TXMbZBpj2iGXJuyHvoUsJfQY5tRwOyo0BmuJoymo4mgN1P+j
+NcH32W4LHHlxrUBnh5uyYJizAc2D9j047x7zwVLb2wWc1OfdwLqrwB3cnSEe
+oMC6GYT+DPYnZCRNhmB9YP8bJpzKY5ikunF1GhQ9/lB6B8xlkFA4KFvTD8ph
+xBbhw0pvigCyJHeUyfF91ZDu8YjhP6o68js=
+ "]]
+}, Closed]],
+
+Cell[CellGroupData[{
+
+Cell["Demonstration", "Subsection",
+ CellChangeTimes->{{3.776588557645573*^9, 3.776588560857557*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], ",", "2", ",", "101",
+ ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555100001802`*^9}}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzt1tGN5DYWBdABNhJH4hw2BAP+duoOwVhg+6PLrSIpkXqXqiNggOlDie+S
+VSW+3/74679//ufXr19//v/f//7//fr7938R55xzHuOt62ydVr3qnGef45le
+XZ9zzvln+Wi/kpK75UdXWk5e69X1Oeecf6a/jqflG+2vWs/39p/82V5dn3PO
++TM9JcdZP/v8p+8bf+/V9TnnnD/bj8bv7jdWzfvlq8/ZtM+Vn/Pq+pxzzp/t
+r+PV59rsenf3ea/jaZ83f+/V9TnnnPMrXl3/1Xebl9/r1fU555w/01vnTlWu
+1S4Hf+fV9TnnnO/tZ8+d1bmq/On1+DWvrs855/wZ/jqu71rjvXVT9oNn1eec
+c/5sr65/l89e/9W6PNOr63POOd/bz54vq3Pd7XftQ+/+80yvrs855/zZXl2/
+2lv70ns/f4ZX1+ecc763j/YVT/HZ9/HP8Or6nHPOn+3V9c/6rPVUr4NneXV9
+zjnnz/bq+qv6o9fxlHXwbK+uzznn/Nl+d/2zOXrn4fyKV9fnnHP+bF9dp/U3
+50leXZ9zzvk9fnW+s/Ouqsv5jl5dn3PO+Tl/HU/Nl5KH8wSvrs855/xnH31v
+V58jV3Ol7DvnK726Puec8/feur6eu6ve6Lyr+k/Od/Tq+pxzzs/50dXbt1yt
+X903pX0enPd4dX3OOec/e3W/NMt3m5fzlV5dn3PO+c+u76qZl/OVXl2fc875
+Oa+uf3ff9Dqesg7OR7y6Puec85+99d6uytXrZ8+do/GrfRvnCV5dn3PO+Xuv
+rj+777rab3G+s1fX55xz/t5bV0re2fdx/kSvrs855/y9t660vF9eXZ/zRK+u
+zznn/L1X13/11t+c831+z5xzzu+pk7ZOzj/Bq+tzznmKt96Tvc/1ztOat3dc
+H8X5Pl5dn3POU/qrND+60nJyzvu9uj7nnKe8/6pzHN33tH6S80/26vqcc57y
+/lvVR7XqtvxqrrR95/yTvbo+55yv8t6+qPXc2XlmeXqfyTnv9+r6nHOe1nel
++W7zcs71XZzz5/vR+K7vv9m5e+fnnK/z6vqcc37VW++3qlxXfXV/Wb0+zj/R
+q+tzzvms99anveeurjdlHZx/klfX55zzWX1GVa5VPqvv5Jzn+Oz7OOf8rvdW
+Wq67+019F+f7+dG49yDnPM1b75+qXFWu7+J8Px99vneeVfOn7V/K59Z6Li3/
+7v467nt7j+/ed41+T6rzcs7n+9nnV78Pz55jZ+tV+6z5Zu/j1c8r3c9+j+7e
+59GcT+0Dd/ndz/r9V6+Dcz7fj+7b5f0wmueuXFV9V69Xn1+fss+9f48+f3ae
+o/G0/Try6u/tVa+uzzmv96PxtJyr+8y761efV/Z/rqd9z+/ar6Pxp/ZdKb8j
+zjnf3Vv3pZz7KeffbN+tzq77XL2/R+N3911p+8Y55/y9r34ubb1pPvs5fVSW
+9463nktbF+ec87l+dKXlfKofXWk5+Tk/utJycs45n+tnn59936f62edb832N
+p63303zWfWnr4pxzPmf8rn5q9PxJ2+fZfdSor/q+pO1n6ud49fc16/eZtm+c
+88/xo/vScu7WXx15yrpTcoyOp+5/2vd8lz5q1Ku+N6N5OOd89H21S582mmdV
+jt3O7bTz6y6v/p6e/X6u7pd2+b2kfZ9GPSUH5zznPDj73Or5e++fVX/X9/Hr
++KxzebTuLn52PaPzHM23qk/epY8a9V2+f7P65JT1cM7r+q7Vfc9Tz4tVPnpf
+Wv5d3fe2xnf/fuu7OOdH9606/znn/FP7rtn+Op6Wj3N+fPX2U6tycM55r6fk
+uMt7n0vLzTlvX2n5OOe81VfcneMuH31vp+TmnOu7OOfP8dH+KyX3bD8av7qP
+nPN1npKDc87P+mhfsouPvrdn3c85X+cpOTjnfHWf0nt/is9+b++2fs6f6Ck5
+OOd8to/2Yam+qk7aOjn/BE/JwTnnKX3XrHnS+q7W35xzfRfnnK/yVX1I67q7
+70rZb855Tg7OOX9K3zW7r+qdN2VfOef6Ls45360/ObrScnLO+z0lB+ecV3vr
+Pdk7PtpHter0rqd6/zjnbU/JwTnn/GffbV7Oub6Lc8539ZQcR+Np+ThP9pQc
+nHPO33tKjl37Rc4TPCUH55zz956So5Wv9Vxabs7v9JQcnHPOf/aUHKM+6zxK
+WQ/nMzwlB+ec8+/eem9X52v52XOnd90p6+R8xFNycM45H/OUHGd99LmnrZ9/
+pqfk4Jxz/t1n9SvVvqpO2jo57/GUHJxzzr+7vuu9p62T8x5PycE55/ycH10p
+/duqOmmfA+c9npKDc875e2/dt7qPuzqf/orznBycc86/++h7u/ocudp3Ve83
+53d4Sg7OOedj3vq72o+utJyc3+kpOTjnnK/1Vc9X1eV8R0/JwTnn/Jl+1zn2
+NZ6ybs57rrR8nHPO9/aUeqPPpewff5an5OCcc/5MT8nR8tHndl0nr/WUHJxz
+zp/pKTlGfda5mbIenuEpOTjnnO/prfOlOt8q730uLTev9ZQcnHPOn+kpOap8
+tG9Lyc3XeEoOzjnne/rZ86U692y/ax9ex1PWz/s8JQfnnPNnekqO1T77nLW/
+z/SUHJxzzvf20T4kJfdsX12nt27avvCsHJxzzvf0tL6k2u+un7Z+/t5TcnDO
+OX+Wp/Qld3t1ff1Ytqfk4Jxzzs94So7VddLWyc95Sg7OOefP9Lv7pNE8q+vP
+rpPed/L3npKDc875M711/nyN33XeVa3zap2Uz5Nf85QcnHPOn+XV9a/63c89
+Zd/4e0/JwTnn/LO89Xeqt67efixtXfweT8nBOef8M3y0n6nO2+tHV1pOXusp
+OTjnnPMenz3vqjrVz/M0/wd/O/nA
+ "], {{0, 0}, {101, 101}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"", "1",
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{
+ FractionBox["1", "2"]}]}], "-",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}],
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{
+ FractionBox["1", "2"]}]}], "+",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}]}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{{3.6595549649674387`*^9, 3.6595549834231453`*^9},
+ 3.6595550653028927`*^9, {3.6595553128265676`*^9, 3.6595553387644897`*^9}, {
+ 3.6595554958307996`*^9, 3.6595555144114237`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "3"], "-", "1"}]}], "]"}], ",", "2", ",", "501",
+ ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555640728051*^9}, {3.659558440044022*^9,
+ 3.6595584402002287`*^9}}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzs103O5TpyINAyvJJeiffgJRjwuLfek54bhpFwlerx8p8RlA6BBPKeIBlB
+SqL0/Z//+L///p//+re//e3//8v//Pvv//9j+3//9k/EOeecc84555xzzjnn
+nHPOOeecc36VP+Oj42vz9sZPrXv1/LP9VtczO//o9evtl+25yHZf1lq2deza
+j1P7OZqPc8455zybR+fnnHPOOeecc84555xzzjnnnHPOOV/lveNq88zOv8pb
+6169X894tuvdev2irvuueW/xWstW76l1t46/7bnjnHPOOT/1nZWtLs4555xz
+zjnnnHPOOeecc84555zzqPy136Ne6pdt3/mYt7be8bvuxyz7sSt/9HXNtg7O
+Oeec89s9Oj/nnHPOOeecc84555xzzjnnnHPOecl35enNl21f+Lt9VXw0/+p1
+9Lav1sU555xzzn97dH7OOeecc84555xzzjnnnHPOOeecx/vufLPxU/WVWpbr
+xHmPt7Zd58GqerLk4ZxzzjnnsR6dn3POOeecc84555xzzjnnnHPOOed5/Bk/
+la+1tc7Tuj7O+Xtatv3knHPOOedrPTo/55xzzjnnnHPOOeecc84555xzzs95
+qV9pXG//VXVl2S/Oeb6WbX8455xzzvkZj87POeecc84555xzzjnnnHPOOeec
+8/MelX91P855/DlyumXbB84555xzfsaj83POOeecc84555xzzjnnnHPOOed8
+vZf6Za1rtB/nfL/f0rLtG+ecc845X+vR+TnnnHPOOeecc84555xzzjnnnHO+
+3kv9stWVZb84/5LPtl35Vs3rnOGcc845f6dH5+ecc84555xzzjnnnHPOOeec
+c875ei/1i6ory75w/kafbVnqPpXPucQ555xzfqdH5+ecc84555xzzjnnnHPO
+Oeecc875Pt+VJ9s6Of+Cz7Ys68lSRymerT7OOeecc54jP+ecc84555xzzjnn
+nHPOOeecc87Pe++42m/O+fhz2NtvdR2nPUsdJe+9Xlnq5pxzzjl/u0fn55xz
+zjnnnHPOOeecc84555xzzr/opX6lcb39R/Nwztf7aL/VdWTxLHWs9mc8W32c
+c84557d7dH7OOeecc84555xzzjnnnHPOOef8C/6Mn8pX6lf7zTmff853j7vF
+s9QRvf6vXn/OOeec8+jvbc4555xzzjnnnHPOOeecc84555zH1zEaz74uzjP4
+6XFv8yx1RHutuY8455xzzts8Oj/nnHPOOeecc84555xzzjnnnHP+Jn/Gd83b
+G6/VM1rX07NdD85/tdX9Wse93XefM2/x1nHZ6uacc845z/79xDnnnHPOOeec
+c84555xzzjnnnPNxL8VXzbPKo8dzvtNL8Vr/1XW83aPOr7d4rdlfzjnnnH/V
+o/NzzjnnnHPOOeecc84555xzzjnnb/ZSv+i6nl6rs3VdnO/w0fjofHzO7fuc
+19ro/nPOOeec3+7R+TnnnHPOOeecc84555xzzjnnnPM3eO/4U3Wt8tn1cj7j
+s+NWzcfbfPV15L/9Ge99HrKth3POOefc9yTnnHPOOeecc84555xzzjnnnHO+
+z3vHn6prle/aB/5uH43P3m+t+fkeH70f+FpvjfeO45xzzjnP+n3DOeecc845
+55xzzjnnnHPOOeec83YvxXv7Z/PW9XA+M642z2gdPNaz1MH7xmWrm3POOec8
+Oj/nnHPOOeecc84555xzzjnnnHP+Zi/1i66r1aPz8zt8dtzuPHyPn7pP+JjP
+zpdtPZxzzjnn0fk555xzzjnnnHPOOeecc84555zzN3vv+FN19frsunhOPzXv
+qbw81kvN+XGHl9qu9x3nnHPO+ej3Sra6OOecc84555xzzjnnnHPOOeec8zd7
+qV90XSVvrZ/n9Fp7633Lz3jvfZKlbv67X+t8q+rgnHPOOa95dH7OOeecc845
+55xzzjnnnHPOOef8yx6dv+bR+b/uveOj77NTeXgOb71vd9fB53zV+bNqHOec
+c8657wvOOeecc84555xzzjnnnHPOOec8v5f6RdWVZV9Oeamtnj9qHafy8294
+9H3O13r2+TjnnHPOo/NzzjnnnHPOOeecc84555xzzjnnvN1P549eZ+/42u/V
+ebNdv9X7yXmPZ6mDn/HZOOecc8756u8PzjnnnHPOOeecc84555xzzjnnnN/r
+s/OtrqPUL8u+jdbfO9+u67u6fs57fre2LOvhe7zUspybnHPOOb/Xo/Nzzjnn
+nHPOOeecc84555xzzjnn/Lyvipf6ZVvvLh/dn9V5suwHf6evPl/43b77vZBl
+nZxzzjnP59H5Oeecc84555xzzjnnnHPOOeecc57HSy1bnad9dh+zrIPzGXdu
+8F/9VuXJsk7OOeec5/Po/JxzzjnnnHPOOeecc84555xzzjnf5894rV+ttc6T
+bR927VvrfmZbH+ct3tvvGc+2Hr7GT597q+fjnHPO+b0enZ9zzjnnnHPOOeec
+c84555xzzjnn7f6Mr5631kbzta4ni5fas3/r+Gzr4/yvfPY5aX0++Lu91lbf
+h5xzzjn/jkfn55xzzjnnnHPOOeecc84555xzzr/opX6ltru+LHX07tOfeGu/
+1nlr/Th/s7c+L73PHf+2t47LVjfnnHPO83h0fs4555xzzjnnnHPOOeecc845
+5/zNnqWOUc9SB+c8zmvnQ3R9/G7PUgfnnHPO83t0fs4555xzzjnnnHPOOeec
+c8455/wL/oxnr683zjn/jmepg+f0Z3z0PmrNm239nHPOOd/n0fk555xzzjnn
+nHPOOeecc84555zzG70Ur/3O6lnq4Jyf89l+q+bn7/BT753W93KWfeGcc875
+Oo/OzznnnHPOOeecc84555xzzjnnnN/oz3i2+lavM7oOzvl+X30+RK+Hx3it
+Rd+3nHPOOb/Xo/NzzjnnnHPOOeecc84555xzzjnnGbwUb50n23pWrf90HZzz
+OD91nvB3eu1+2JUny/o555xzvt+j83POOeecc84555xzzjnnnHPOOeeZvRSv
+/b7NS/16+3PO7/fW8213Hfxdvmq+t71/Oeecc97u0fk555xzzjnnnHPOOeec
+c84555zzDN46Llvdp9Z/qg7OeR5vbdnq5jl9dr5s6+Gcc875eY/OzznnnHPO
+Oeecc84555xzzjnnnGf0LHWc8tk45/w+n+23an7+bZ+Nc8455/w7Hp2fc845
+55xzzjnnnHPOOeecc845P+mr+tV+3+azcc75vX56HOe/Wrb6OOecc57Ho/Nz
+zjnnnHPOOeecc84555xzzjnnJ7zUbzZe8yzr7433juOc3+et5+Tqc4bf7avv
+k948s3k555xzfq9H5+ecc84555xzzjnnnHPOOeecc84z+Kr5ar9Xe2+81m+0
+Ds75/Z7tPOU5PGr86n6cc845v9+j83POOeecc84555xzzjnnnHPOOecn/XT+
+bOupzTNaB+f8fs9+nvJcvjvPbD3Z9otzzjnn8x6dn3POOeecc84555xzzjnn
+nHPOOY/0Ur9VeXrH7apj93yc8+94ljr4Xo+6/qveW1n2kXPOOefrv0Oz1cU5
+55xzzjnnnHPOOeecc84555xHeqnfqvlq80ftQ3R+znm8R50bWdbPf/eLqivL
+vnDOOec8zqPzc84555xzzjnnnHPOOeecc84551/wUhud5xnv7c8556v7ldqu
+PPyMR+eveXR+zjnnnJ/z6Pycc84555xzzjnnnHPOOeecc875m73UL7ouzvl3
+PHp8zaPz89/+tjycc845v9ej83POOeecc84555xzzjnnnHPOOedv8FXzrq6L
+c86fXjt/dp1vvXl5m/eOO319su0X55xzzu/16Pycc84555xzzjnnnHPOOeec
+c875jf6M75q3N845561e+x3t0fmjr8cp3x3nnHPOOfd9yDnnnHPOOeecc845
+55xzzjnnnJ/33flm45xzXvPa+dLa/9R5WOoXvY81n11vqa2+Lr39suwv55xz
+zr/n0fk555xzzjnnnHPOOeecc84555zzzP6MR9dxKh/n/Lte+33Ka/2y7FeW
+/Kfuh1L/LPVyzjnn/L0enZ9zzjnnnHPOOeecc84555xzzjmP9FK/3v67fTbO
+Oeerz8us52GW98WpumZ9Vd3R6+Ccc875+z06P+ecc84555xzzjnnnHPOOeec
+c57Zs9UxGuec81FvPR9P1bU7T/b3wel13/re5Jxzzvn7PDo/55xzzjnnnHPO
+Oeecc84555xzfpPvztfasuwH55w//dQ5eercjd7PU75rP7Osj3POOef3e3R+
+zjnnnHPOOeecc84555xzzjnnPNJL/VrnG62j1m91nZxzns1vGfcWP7UvrXk5
+55xzzn3Pcc4555xzzjnnnHPOOeecc8455+1e6tc7X28drfO2ztM7H+ec3+a9
+LVv92X32fZVlHZxzzjl/r0fn55xzzjnnnHPOOeecc84555xzzjN6qd/pPFn2
+g3POo723Zas/y3ts9j2UZX2cc845/55H5+ecc84555xzzjnnnHPOOeecc86/
+4NH5Oec8m4+O35W/1LLt2x9f9b6JXgfnnHPOeatH5+ecc84555xzzjnnnHPO
+Oeecc87f5Kv7cc55tI+eg7vqi96PUjudv/f9km3fOOecc85v+e7inHPOOeec
+c84555xzzjnnnHPO3+Sr5l1dF+ect3rtXIquL1sdnHPOOef8rEfn55xzzjnn
+nHPOOeecc84555xzzm/y3flaW5b94Jzn9dHzJ7rummepg3POOeecn/Xo/Jxz
+zjnnnHPOOeecc84555xzzvkbfNW8s3HO+fu9dj6cqiPKs9TBOeecc87PenR+
+zjnnnHPOOeecc84555xzzjnn/Cbfna+1ZdkPzvk5bz03Tp9bp87F0TjnnHPO
+OX+HR+fnnHPOOeecc84555xzzjnnnHPOb/TWcbPjV43jnL/fs9Sx27PUwTnn
+nHPOz3p0fs4555xzzjnnnHPOOeecc8455/xGbx3XO77WvzUv5zyPrz4Hotdz
+2p/xbPVxzjnnnPMzHp2fc84555xzzjnnnHPOOeecc845/4LXWrZ6Oef7ffX5
+Er2eXZ6lDs4555xzHuvR+TnnnHPOOeecc84555xzzjnnnPM3e+/4U3Vxzs/5
+qvlm68juz3i2+jjnnHPOeaxH5+ecc84555xzzjnnnHPOOeecc87f4KvmnY1z
+zvP5qfPhdn/Gs9XHOeecc85jPTo/55xzzjnnnHPOOeecc84555xz/iZ/xmfH
+98Y55/l81/mS1Wv1t47Lsh7OOeecc57Do/NzzjnnnHPOOeecc84555xzzjnn
+b/BV887GOef3eNbnvDU+O8/o/nDOOeec8296dH7OOeecc84555xzzjnnnHPO
+Oef8C/6Mt/brjXPO7/XRfrvqaT2vRutpzc8555xzznmG/JxzzjnnnHPOOeec
+c84555xzzvkXvdQvui7Ov+ijz+OqOnrzZvNd+8I555xzznmm/JxzzjnnnHPO
+Oeecc84555xzzvkXvdSvtWVZB+cnvPV5ae0fvZ7R8afqKvmudXHOOeecc97i
+0fk555xzzjnnnHPOOeecc84555zzL3rv+FN1cR7pq+abreOUR9UxWteuejjn
+nHPOOW/x6Pycc84555xzzjnnnHPOOeecc875F73UbzbO+Ru89Xm57Tl5xrPV
+xznnnHPOeWaPzs8555xzzjnnnHPOOeecc84555x/2aPzc57J3/r8ZKmDc845
+55zzmz06P+ecc84555xzzjnnnHPOOeecc/5lX92P8y94ljpq9f2JZ6uPc845
+55zzGz06P+ecc84555xzzjnnnHPOOeecc/5F7x1/qi7+LV99H+6ue1ee3vVG
+XzfOOeecc86/6NH5Oeecc84555xzzjnnnHPOOeec8y97Kd7bn/MW773PSu1U
+fTXfnT/LdeOcc84555zH5+ecc84555xzzjnnnHPOOeecc855vV90XfxdPhs/
+ff+vXp/njHPOOeec8/s8Oj/nnHPOOeecc84555xzzjnnnHPO6/2i6+Kxvvs+
+iV4P55xzzjnnnNc8Oj/nnHPOOeecc84555xzzjnnnHPO+1u2enmbt17vZ7/Z
+Okbz7soffR0455xzzjnn93l0fs4555xzzjnnnHPOOeecc84555zX+0XXxdd4
+7fquytead3be0Xk455xzzjnnvNej83POOeecc84555xzzjnnnHPOOee83LLV
+9XY/dT1qrbWe1v6cc84555xzfrtH5+ecc84555xzzjnnnHPOOeecc855vV90
+XV/x2v73ztvbb/Y+4ZxzzjnnnPO3enR+zjnnnHPOOeecc84555xzzjnnMV7q
+F1UPb/Po/Fn91H7N1sM555xzzjnnfMyj83POOeecc84555xzzjnnnHPO+S1e
+iq+a5+mj43vr2lX/6rxf81rLVu8u3/WcZlkf55xzzjnnnPM2j87POeecc845
+55xzzjnnnHPOOeenvdRvtH+trV5Haz2j+7F6/lXzzF7Ht3h0/t3PX6nV7n/O
+Oeecc8455+/26Pycc84555xzzjnnnHPOOeecc77ba202T+336jqy7e/q6zS6
+n7P3Rbb96N2nrF5r2erlnHPOOeecc57To/NzzjnnnHPOOeecc84555xzznnJ
+S/FV86zy2fp4rI+26HpP53efc84555xzzjmP9Oj8nHPOOeecc84555xzzjnn
+nPPv+qp5W9uf8b3zZNkvnttr/U7d76PzZdtPzjnnnHPOOec8U37OOeecc845
+55xzzjnnnHPO+fu91G93nizr5zyiZVsv55xzzjnnnHM+49H5Oeecc84555xz
+zjnnnHPOOefv86j8td+c3+CrWrZ1cc4555xzzjnnMx6dn3POOeecc84555xz
+zjnnnHP+Hi/1i6ory75wnqll2wfOOeecc84557zFo/NzzjnnnHPOOeecc845
+55xzzt/ntTaaJ9s6OR9ps/lW1+v54pxzzjnnnHN+g0fn55xzzjnnnHPOOeec
+c84555x/x5/xbPVxvrLtqu+2eTnnnHPOOeec8xUenZ9zzjnnnHPOOeecc845
+55xzfs5L/UrjevPV5uM8o8/GszzH9olzzjnnnHPO+Zs9Oj/nnHPOOeecc845
+55xzzjnn/JzvztebP8u+8Hd5qd/ofZvNs9TR2mr7zznnnHPOOeect3h0fs45
+55xzzjnnnHPOOeecc875eX/GR8f35l/dj3/bZ+O3eJY6spw/nHPOOeecc86/
+6dH5Oeecc84555xzzjnnnHPOOef5fXa+3nmzrZ+f8dZ477i3eZY6Vnut1c4T
+zjnnnHPOOefv9uj8nHPOOeecc84555xzzjnnnPN9/ozX+p2q6+m13/xOL8VX
+96/1u8179+d2772+WermnHPOOeecc37Wo/NzzjnnnHPOOeecc84555xzzvd5
+dP5Wr/3md3opXuu/uo7b/PbnOZtnqYNzzjnnnHPO+ZxH5+ecc84555xzzjnn
+nHPOOeecn/daO11X7TfP4aP9Vtfxdq/ta3R9Wbx1XLa6Oeecc84555yPeXR+
+zjnnnHPOOeecc84555xzzvk5L/XLVleW/fqq947Lel/d6quuy1f9Gc9WH+ec
+c84555zzMY/OzznnnHPOOeecc84555xzzjnP46fzZ1v/W/30OD7nrsceL8Vr
+vznnnHPOOeec5/Do/JxzzjnnnHPOOeecc84555zzeC/1250/y/qzeqlfrX/2
+687b+vX2523NucQ555xzzjnnd3p0fs4555xzzjnnnHPOOeecc855Xi/1W5Vn
+93p6x0Xte/b5+Fl3Xc/6M56tPs4555xzzjnnOfJzzjnnnHPOOeecc84555xz
+zu/1WquNm8337HdqvbVxq9fdus7VefgZ772+Wer+qj/j2erjnHPOOeec87d6
+dH7OOeecc84555xzzjnnnHPO+Xe8t2Wrf3S9f+Kt+zLan9/lo9c3uu63+Ozz
+taoOzjnnnHPOOedtHp2fc84555xzzjnnnHPOOeecc/4eL/UbHZfda+sdjfNv
+uPsj1kfPq6dnWQ/nnHPOOeecv92j83POOeecc84555xzzjnnnHPO8/szPjp+
+VV3Z9+F0XTy377r/+F5vHZetbs4555xzzjl/q0fn55xzzjnnnHPOOeecc845
+55yf92f8VL7V886uu3fc6nr4t7z2+1QdfM6f8Wz1cc4555xzzvlbPTo/55xz
+zjnnnHPOOeecc84553yfP+PRdZzKx/kN3vrc8lxeatnPYc4555xzzjm/3aPz
+c84555xzzjnnnHPOOeecc87n/RnPVl+t7ug6OD/hrc/v7jr4b199XrmunHPO
+Oeecc77Go/NzzjnnnHPOOeecc84555xzzuuepY7VnqUOznf66HMRXffXfdV8
+XznPOeecc84553y3R+fnnHPOOeecc84555xzzjnnnNf7lcZlqbvmWergPMJH
+n5four/qq8+x1vk555xzzjnnnP/26Pycc84555xzzjnnnHPOOeec83Z/xrPV
+11p3b5zzN3uWOnibt47LVjfnnHPOOeec3+7R+TnnnHPOOeecc84555xzzjnn
+9X69/aM8Sx2cZ/Tbn2/+156lDs4555xzzjl/u0fn55xzzjnnnHPOOeecc845
+5/zL/ozX+rX2z7Ke3jjnb/TR56jUotfzdl91XbKsh3POOeecc87f4tH5Oeec
+c84555xzzjnnnHPOOf+il/qtyrOq7tk453z8uSv1i17P2/wZ331dsq2fc845
+55xzzm/x6Pycc84555xzzjnnnHPOOeec83IbnS+qjto8o3Vw/kbf9fzzNj91
+Xq3uxznnnHPOOedf9ej8nHPOOeecc84555xzzjnnnPN2bx1XG1+a53SdnPNy
+y1bfW/1teTjnnHPOOef8rR6dn3POOeecc84555xzzjnnnHO+z0ttdJ5s6+P8
+Jm99vlqf59m8/Ewe14NzzjnnnHPO13h0fs4555xzzjnnnHPOOeecc875ei/1
+i66L8y9763Pa6715+dr5sq2Hc84555xzzt/q0fk555xzzjnnnHPOOeecc845
+5+PeO/5UXZzzuu/Os3q+KH/GV+9DKT573nLOOeecc845X+vR+TnnnHPOOeec
+c84555xzzjnndd+db9e8nPP236v9VJ5d51ip367zrRbnnHPOOeeccx7r0fk5
+55xzzjnnnHPOOeecc8455+X2J34q3+p5Oedlj36uT59jWX11P84555xzzjnn
+ezw6P+ecc84555xzzjnnnHPOOee83P7ET+frjXPOx732e9RXz3db/tH9n+3H
+Oeecc84553yPR+fnnHPOOeecc84555xzzjnnnMfXcTof57zds8y3uo6s52uW
+ejnnnHPOOeec58rPOeecc84555xzzjnnnHPO+Re91K93XG8dq+vhnJ/zVfOd
+Hhftu89JzjnnnHPOOednPDo/55xzzjnnnHPOOeecc84551/22flWzztbD+c8
+r/e2bPXvOg9318U555xzzjnnfI1H5+ecc84555xzzjnnnHPOOeect/sz3tqv
+N845f4/Xfve26HX1nmvR9XLOOeecc845X+PR+TnnnHPOOeecc84555xzzjnn
+417qF10X53y915732XNjlfeO711X9HXgnHPOOeeccx7j0fk555xzzjnnnHPO
+Oeecc8455+3+jLf2641zzs/52/NxzjnnnHPOOecrPDo/55xzzjnnnHPOOeec
+c84557zuq+ZdXRfn/H+99txF15etDs4555xzzjnnvMej83POOeecc84555xz
+zjnnnHPOy+1PfPW8o+M55+3P7W2epQ7OOeecc8455/xXy1YX55xzzjnnnHPO
+Oeecc84551/0Ur/SuNb+o/Nzzv/Za89RdH01z1IH55xzzjnnnHPe49H5Oeec
+c84555xzzjnnnHPOOef1fqVxtf6t87WO4/zN3vs8Zqm717PUwTnnnHPOOeec
+93h0fs4555xzzjnnnHPOOeecc875vNdatno5j/Ta75qvquOUP+PZ6uOcc845
+55xzzls8Oj/nnHPOOeecc84555xzzjnnfNxL/WbjnL/ZW5+jtzw/z3i2+jjn
+nHPOOeec8xaPzs8555xzzjnnnHPOOeecc845b/dnfHT86ro4v9lnn8MsXorX
+fnPOOeecc8455zd4dH7OOeecc84555xzzjnnnHPOebs/46PjV9fF+c3e+rys
+rmM0b2ue6H3lnHPOOeecc85XenR+zjnnnHPOOeecc84555xzznm7P+Ot/Xpb
+tnVznsFL7VQ92faDc84555xzzjk/6dH5Oeecc84555xzzjnnnHPOOef7PDo/
+5zM+G5/1Wt7T+bNdH84555xzzjnn/KRH5+ecc84555xzzjnnnHPOOeecj3vv
++FN1cf4rfrqOVn/GVz9fu55rzjnnnHPOOef8Cx6dn3POOeecc84555xzzjnn
+nHM+7r3jT9XF+ci4XXXUPHqfOOecc84555xzXvfo/JxzzjnnnHPOOeecc845
+55zzeW+N78rP+V/56vt41qP3g3POOeecc8455+MenZ9zzjnnnHPOOeecc845
+55xzvt5L/aLr4t/y2n14+v7nnHPOOeecc875vR6dn3POOeecc84555xzzjnn
+nHM+76v78Xd67feuOmrt1HOQ5TpwzjnnnHPOOee836Pzc84555xzzjnnnHPO
+Oeecc87Xe6lfdF08xmv3w+n7cPf9Gb3fnHPOOeecc845X+/R+TnnnHPOOeec
+c84555xzzjnn673UL7ountNXzfuMZ1kf55xzzjnnnHPO7/fo/JxzzjnnnHPO
+Oeecc84555zz9V7qF10Xb/Pd89bG9daVbf8455xzzjnnnHP+Po/OzznnnHPO
+Oeecc84555xzzjk/79H5v+q7r8fofdA6X/T+cc4555xzzjnn/LsenZ9zzjnn
+nHPOOeecc84555xzvs9rLVu92X33dTldB+ecc84555xzzvktHp2fc84555xz
+zjnnnHPOOeec5/RSPFudfMyj89/qu8a3xlfVwTnnnHPOOeecc36bR+fnnHPO
+Oeecc84555xzzjn/uq+adzZe89q8tdY6T5br8naPzn/KV69/Ni/nnHPOOeec
+c845H/Po/JxzzjnnnHPOOeecc84551/xUr9d+XfN35uvddzq/emtO8t9csqj
+849673p676vo9XHOOeecc84555zzv/bo/JxzzjnnnHPOOeecc84559n8GZ8d
+3xtv9drvUd89f/R17e1X6p9tfavv0yzee51W5+ecc84555xzzjnnOTw6P+ec
+c84555xzzjnnnHPO+Wkv9VuVp3dcrd/suvgZX93vVL2n8rfux+m6OOecc845
+55xzzvkdHp2fc84555xzzjnnnHPOOed8t0flr/3m3/bRlvW5WD0f55xzzjnn
+nHPOOeeZ8nPOOeecc84555xzzjnnnO/2WjtVV7Z94e/wWpsdl229nHPOOeec
+c8455/ybHp2fc84555xzzjnnnHPOOed8t6+ar/ab80ze27LVzznnnHPOOeec
+c855pvycc84555xzzjnnnHPOOefP+Oz41njtN+c3+Kp47zjOOeecc84555xz
+zk96dH7OOeecc84555xzzjnnnH/Hn/HV85b61X5znslP5butXs4555xzzjnn
+nHP+bY/OzznnnHPOOeecc84555zz7/gzPjq+N//qfpyv8Na2q47szzvnnHPO
+Oeecc84555nyc84555xzzjnnnHPOOef8/V7qF51/tB/nPS36/i95lny9/Tnn
+nHPOOeecc875Nz06P+ecc84555xzzjnnnHPO3+O943fX1Zs3yz7yHH56XPbn
+9dR+1/pnq5tzzjnnnHPOOeecn/Ho/JxzzjnnnHPOOeecc845/45H53967Tf/
+ts/Gs3uWOkpe2/dTdXDOOeecc84555zzHB6dn3POOeecc84555xzzjnn7/FS
+v+i6ah6dn5/xUvzW+3b2ubzVe69Xlro555xzzjnnnHPO+ZxH5+ecc84555xz
+zjnnnHPO+Xf8dP5s6+drvRSv9V9dx62epY5of8az1cc555xzzjnnnHPOc+Tn
+nHPOOeecc84555xzzjk/nT/b+nlbv+z3VTa3L23+jGerj3POOeecc84555zn
+yM8555xzzjnnnHPOOeecc74rT7Z18rFxtXlG6/i6Z6kj2p/x3vst23o455xz
+zjnnnHPO3+rR+TnnnHPOOeecc84555xzzmfny7aer3mtjY7rnY//o+963r7i
+reOy1c0555xzzjnnnHP+Vo/OzznnnHPOOeecc84555xzXvLWcdH1lfrVfkd7
+qd/s9RjNy9f6quv4VW8dl61uzjnnnHPOOeec87d6dH7OOeecc84555xzzjnn
+nPNef8ZHx5f6nap/tJ7WfRn10X3juXz3fcJ/9yuNy1I355xzzjnnnHPO+W0e
+nZ9zzjnnnHPOOeecc84557zXSy1bnavX+4zvytu679n2if/2LHXc6r37mqVu
+zjnnnHPOOeec87d4dH7OOeecc84555xzzjnnnL/Pn/HV8/aOz7Y/s3VH18Vz
+eu/9k6Xu23x2vmzr4ZxzzjnnnHPOOb/Fo/NzzjnnnHPOOeecc8455zy/P+PR
+dczO27rOUx61D/zbnqWO2733Oc1SN+ecc84555xzzvltHp2fc84555xzzjnn
+nHPOOefnvRSv/Y72qDpm62ztPxrn/Fe/3v78jGepg3POOeecc8455/wWj87P
+Oeecc84555xzzjnnnPN5L8Vrv2/zLHVwnslXnRd8rY+eY287tznnnHPOOeec
+c85XeXR+zjnnnHPOOeecc84555zPe+u4bHWPrjO6Ds4z+ey5wGO8dVy2ujnn
+nHPOOeecc86jPDo/55xzzjnnnHPOOeecc87n/RnPVt/senrjnH/Re5+XLHV/
+1VvHZaubc84555xzzjnnPMqj83POOeecc84555xzzjnnfHz8qnmyeZY6OL/B
+V50b/Ky3jstWN+ecc84555xzznmUR+fnnHPOOeecc84555xzznm936o8WdZZ
+89aWrW7OI3z0+Yqum+esg3POOeecc8455zyrR+fnnHPOOeecc84555xzznm5
+zc5X+x3ts3HOed2z1PE1333uZ1kn55xzzjnnnHPO+SmPzs8555xzzjnnnHPO
+Oeec83JbnSd6PaV+p/eB8zd663PkeTvjvedh73XJsk7OOeecc84555zzUx6d
+n3POOeecc84555xzzjnn9X6r8vSOq/VrrX/3ujj/su9+rvmcz86XbT2cc845
+55xzzjnnUR6dn3POOeecc84555xzzjnndS/1651vdJ4s9XPO/9lXzTdbB/9r
+XzXf6nOZc84555xzzjnn/DaPzs8555xzzjnnnHPOOeec831eimerh3O+3j2H
+OXxXnmzr5JxzzjnnnHPOOd/t0fk555xzzjnnnHPOOeecc77eS/1K43rztbYs
++8E533eu8N/eOi5b3ZxzzjnnnHPOOefZPDo/55xzzjnnnHPOOeecc87b/Rkf
+Hb+6Ls55Xq/9LrXaOdNbx+3eum+lNnpuc84555xzzjnnnPMc+TnnnHPOOeec
+c84555xzXvdV866ui3Oex0+fJ7VzJsu+1PwZX32unt5/zjnnnHPOOeec87d6
+dH7OOeecc84555xzzjnn/Mv+jJ/Kt3peznmcR+cvtSx1RZ+Hq/txzjnnnHPO
+Oeecf9Wj83POOeecc84555xzzjnnX/BnPEsdvXHO+T0efc6U+u3KP1pPVF2n
+xnPOOeecc84555y/xaPzc84555xzzjnnnHPOOedf8Gc8Sx29cc75fV77vdpr
+Lfqcy+LZ3xecc84555xzzjnn2Tw6P+ecc84555xzzjnnnHP+Bi/16+2/22fj
+nPP7/JbzJ3q+U+vv7Z9tHZxzzjnnnHPOOedRHp2fc84555xzzjnnnHPOOX+D
+l/r1jotaz+l8nPO8vutcOj3ulPfWHV0v55xzzjnnnHPO+a0enZ9zzjnnnHPO
+Oeecc845f5PPzrc7X22e3vk457z3nNl1fkZ767qy1Ms555xzzjnnnHN+m0fn
+55xzzjnnnHPOOeecc87f5LVWm6827+o6s+0f5/w73tuy1Pnsl21fOeecc845
+55xzzt/q0fk555xzzjnnnHPOOeec8y97KT47fy3fqjycc17y1f0455xzzjnn
+nHPO+bc9Oj/nnHPOOeecc84555xzzvtbtno559/16PGcc84555xzzjnn/Bse
+nZ9zzjnnnHPOOeecc845/4JHj+ec85rXzp/T9UXvB+ecc84555xzzjnP5dH5
+Oeecc84555xzzjnnnPM3+O58rS3LfnDO83rtnImq7xmP3ifOOeecc84555xz
+nsuj83POOeecc84555xzzjnnN/ozfjpfb5xz/j2/7bx4xrPVxznnnHPOOeec
+c85jfXbcbJ5s+8E555xzzjnnnHPOOeect/gzHl3HqXyc83zeek5l9Sx1cM45
+55xzzjnnnPPcXorX+rfmW1UP55xzzjnnnHPOOeecc57BS/16+/f6bJxzfr+v
+Pjeye5Y6OOecc84555xzznlu351vdd5s+8c555xzzjnnnHPOOef83d46btW8
+tf6t9XDO8/vo8x5d96yX4m9bJ+ecc84555xzzjkf81P5WvO39p/NyznnnHPO
+Oeecc84555zPeK39GVcb35q3tY5s+8Q5H/dV50CW9dT8Gc9WH+ecc84555xz
+zjmP9dXz1n6v9lXx0fycc84555xzzjnnnHPOeYuXWm//0fyc87xe+13z3vmj
+vFZ/1ro555xzzjnnnHPOOd/pre05Pts6OOecc84555xzzjnnnN/tpX7RdXHO
+83jrudHrq+c7XVe2ujnnnHPOOeecc855rJfi2eo8tQ+llq1ezjnnnHPOOeec
+c84557l81byr6+Kc3+ez58aqOmpeq8c5xznnnHPOOeecc85Xeu+4bPVn2x/O
+Oeecc84555xzzjnn3/BnfPW8o+M55+/11vOo5qfOn9a8nHPOOeecc84555y3
++Kr5sq1rdB9K/bLVyznnnHPOOeecc8455zzWn/Fd8/bGOeff9Wznxup+nHPO
+Oeecc8455/zbvmpctnVF78/X3X5yzjnnnHPOOeecc87f4rX2Z9zsvNnWzTmP
+89q58YxHnTPR+8Q555xzzjnnnHPOv+W7x2db79fW17qu3XW01rN7XJbrwjnn
+nHPOOeecc845v99L8drv3vGt4zjn8b7qHOn11edaa57o/eacc84555xzzjnn
+3/JV89bmb43ftj+n61pd5666st2fNc9233HOOV/rvf2y1c8555zv8FI8W52c
+c875jV6Kt753d9XFOe/30ef0dN3R+8Q555xzzjnnnHPO+QnPUsfTV/db7bvm
+i8of7bddL84557/jp79fRufLtp+cc875Di/FW9+LvfHReTjnnPM3eO09WGtZ
+1sH5lz1LHb2epQ7OOeecc84555xzznd6ljpOrTN6vlrLtm+nvPf+vO1+4Zzz
+W/wZ3/W9sWq+2fpqv2fzZru+nHPO3+2r5pt9P46+T7Pt59s86n7inPOv+eh5
+u7suzvn6795VdYz6M55lXznnnHPOOeecc8453+lZ6rjFe1u2+m/12u9Rr7Us
+6+ec89XeOi5rfaX4rvfF6u+rbPcD55zztb5qvt15T7+fRuPZru/pfYre597+
+nHP+dT91bnPOxz3q+361P+PZ6uOcc84555xzzjnnfIdnqeMW723Z6n+b137X
+vHd+zjl/iz/jWet79stWp/cO55x/w0tx5/hej84/66e+E1r7u16cc37GV5//
+nPP475hTdbTmz7Z/nHPOOeecc84555yf9Cx13Lb+2Tyz+flf++rrEr0ezvl7
+vfe9tPq9t+t9N5p3VV3PeJbrXfPo/Jxzzn/7Mx5dR6lf9vrf8t6Mzr/ao+9P
+zjm/3Z/x1e+P0XGc837f/Rz2zh+9H5xzzjnnnHPOOeecZ/Qsdezy2+at+el8
+b/Hafma5H1rjs3k45+e9dVz0e6T1fJut49S5m+0+2P0+ivZSW7Uf2dbLOX+/
+R7+Xez3LuqLfQ7v2cXWebL7rPlk93+46W8e//buOcz7vq/txzue9NV5rt32P
+cc4555xzzjnnnHP+Js9SR81r9Z+uL/p6tV7PXXVE++r7Ybae3T56vUvzR6+H
+c16Of+39vsp7z/foemstut7d99Wu75/aOm79DuCcl/2283l03Op9uv29uWp/
+fUeN+a73eO+47Ost9YteD+d8v3u/cD7vUd/Tq9/7s3mirwPnnHPOOeecc845
+5xk9Sx1/vFanffpdV2+/1XVkvb5vu9619Y2uK8t6OH+T957HreOyrO8rHv1+
+P3UfRu9zzXe9t1bPxzk/78/46nNgtK63e+/7Jfq9WWvR+/k2L7VsdZ76DllV
+B+c8nz/js+dltvVxvtJb36e76+ith3POOeecc84555xznsej6qjVk3WfavXf
+4qOtNU+26zt7vXvj0etbvV7OebmNvhd21cVjfPYcXn0+r64jm2efj3N+zlef
+A6vn5bFeatnqzO67nqfRerK47w3Oue8Qzts963vzGY/eJ84555xzzjnnnHPO
+ed2z1PH0LHWUPEsdp7zUb/X9dut1OZ2v5qP1R9fNeUZ/xt96bvBc3tuy1Z/1
+fec9yPm9Pnperh7Hc/mu76zZeFbfvR7fyb/jpfG796F3/rfd95yf8Gf8a+8X
+zlv8lvs+Sx2cc84555xzzjnnnPOy7843mvf0fmS7Lm/1Uqv1z369ZuOnPHt9
+nN/gt58DPLf33m+1lmVdWTz6+cxWD+cZ/BkfHb+6Lp7Lo8fXfFU9pXGr+2e9
+TqO+et5s98tpf9t6OI/0WstWL+c7Pfo90loP55xzzjnnnHPOOec8v+/ON1pP
+9H6M1s/5TPzUc1Frb3uuOR/xqPcm/4av7lfz2Tg/463xUr9s6+G8xZ/x0e/X
+0fw8p6+eN9v6Vr8fVn3H3rqftX69+3P6fludf9Z335+cf8Fved45/3uP+n6o
+jZvNE72vnHPOOeecc84555zz9b47Xy1v9LprdXJ+0nfPF3UOtLZn/2zXh7/T
+s703+bs8evyoz8az17G6X/Q+RF8nzme8FG89D3fVxc/4qXzZ1h2931/fn1K/
+bPu2a97o58n3DH+jP+Oj9/Pqujhv+R1Vx6jvnp9zzjnnnHPOOeecc57fs9Yx
+O3+2fea8xXvju5+/2XlXP6e76uDf8mf81vcmP+tR51L0ukutN76qf5b9XF1X
+q3tv8jd5tueL73F1cL7eR+PRdd32Hc55jz/jq59fzkc8+hzfNS/nnHPOOeec
+c84555yPjp/Nv6qebPvJ+Zt8d77RerLtE3+H11q2evkez3b+RO/HrJf6jb53
+suzbbPzt9y3/pt/y/cnPeLZzKXo/OD/htbbreRnN0+qrv9M4P+G+c3gGP3VO
+tublnHPOOeecc84555zz3b5rvtXzcs73+erxvfNk2w9+lz/j3k+8xU99FzkH
+3+mz8dnrX2tveS54bn/GT39/8hhvPb9211GKZ9knzr/ku/NFnzOc/3LfOXzG
+T51vs/NF7xPnnHPOOeecc8455/y7vjtPtvVyzvf56XE1jzr3eA5/xmv9TtXF
+c3j0OTVbD3+H944bnX90vPcs73HvWf737n3KOV/dr3X87Hy7vsv4O/3088Lv
+9t7v59P356p5OOecc84555xzzjnnfLePjq/95pzz1b5q3tr82dbNx7zWstXL
+c3jv+TB6nrTm5XzGZ+Ojz4v37Dd8dT/+Lo/6nuec3+u9/bJ9/8zOy9/ptZat
+Xn7Gd8/re4lzzjnnnHPOOeecc8455zyHr5q3Nn+2dfPf/ozvvn94bt81ftV8
+WfaJf9tL8dH3Y+98/JsenZ+v8V3v41XzcM756u/5XnfO8V/9ouvie3zV+NF6
+su0H55xzzjnnnHPOOeecc845/+275zuVl495Ke66vdN3X9fo9XEe6bV+vefs
+aB3ev7l993XnOTx6POecn/JaP98/fMR9L93pvddx13dRqV+WfeKcc84555xz
+zjnnnHPOOec5fNW8tfmzrftW330deU5f/XytqotzXvfe8d6nOd15+g0ffb5r
+zy/nnH/NV8+bbX38r9330rvc88k555xzzjnnnHPOOeecc85v8t7xtXmyre9W
+X3W9+Blf9VyMXvfWeTjn+7zWRuebPT94n3v/3um7rm+W9XHO+W1+epzvpbPu
+e+mM73q+ai163ZxzzjnnnHPOOeecc84555z/8lq/2u/aPLX+2fYji49eL77G
+R5+jXdedc/4db22j51jr+Lf76P7srov/du9Tzjn/lveO9/4+46uuF//tq+7n
+6HVwzjnnnHPOOeecc84555xzntGjx3/No/O/xVftb+880evmnN/ntX6t40bz
+f82j87/Fd+9v9Po455zHeCk++h3VO9/XffU+f8137XOW9XHOOeecc84555xz
+zjnnnHN+s8/Gn55tfav3qdSy1ZvdZ/vNzss559HeG1/1nn6LR+fP7rP7mWUd
+nHPOv+Gz41pbtnWf/g6Irivae1tt/mzr45xzzjnnnHPOOeecc84555zX22y/
+7P729a3y2X3Lsg7OOY/2Unz0fZRtfav242s+u29Z1sE555zv9NX9bvday1bv
+qfsgW72cc84555xzzjnnnHPOOeec8zxe65et3tb6ouva7bP7kGUdnHP+Va+1
+bPV+7f07e92yrINzzjm/2Vf3y+a1lq3e0f3PVi/nnHPOOeecc84555xzzjnn
+/H1e6lfrf7re3vqj/bZ6Oeecn/XW+K78b3ufrfpuiV4H55xzzute65e93tP5
+R7+DstTFOeecc84555xzzjnnnHPOOeejXmvRdX01P+ec83f46Pi3vv9b37vZ
+riPnnHPOz3trO/Udtfp777b8nHPOOeecc84555xzzjnnnHN+m++ab1We1fNx
+zjnnJ320Rb8va/Nk22fOOeecv89HW9bvqNH5OOecc84555xzzjnnnHPOOeec
+//aolm0fOOec85Nea7Pjsq2Xc8455/zUd9Sulm0fOOecc84555xzzjnnnHPO
+Oeecr23Z1sU555xn9t6WrX7OOeec81u+o0ot27o455xzzjnnnHPOOeecc845
+55zHtmz7wDnnnJ/01tY6/tkv23o555xzzk9/R61u2faBc84555xzzjnnnHPO
+Oeecc87f6lnnbW3Z9pNzzjlf2bK8f5/9s+0z55xzzt/nsy3Ld9TsvJxzzjnn
+nHPOOeecc84555xz/lZvbafry7If2a4X55zzu/z0uOzvvVI8y3cA55xzzvN4
+rZ3+jsry3RZdB+ecc84555xzzjnnnHPOOeecr/JSvNZ/dR01760/2mfjnHPO
+3+2j/VbX8Zb376rvlizr4Zxzzvn4d8ipOnZ9/0XX57uIc84555xzzjnnnHPO
+Oeeccx7ts/Fov7XuWX/Ge/ch23o45/xr3tqy1f2V929rvNQv23o455zzG701
+3jsum2epY/X3bO27kXPOOeecc84555xzzjnnnHPOW+O947L66D58zZ/x3n3L
+th7OOY8+T5/9Zt/L2dbZ6lnqiPbecfaRc875F7013jvuds9Sx+l1lsZlq5tz
+zjnnnHPOOeecc84555xz3u61fqPzZVvnqf3ibd46rvc6ZFsn55yvev96L+Ws
+I6v3jrO/nHPOI331+NXz3+arvg/e4r3N9yjnnHPOOeecc84555xzzjnn8T47
+btV8X/Esddzurfdlbb7eebKsn3N+j6+Kz9bxFc9Sx+2+6j1b8izr5JxzftZL
+/Ua/k1aPe7vbrzlvHdc7Pts6Oeecc84555xzzjnnnHPOOd/hvfHeeWr9a/2+
+6qPXi6/x0edoNn+W9XPO49/LpTZ7jo3O9zYf3Z/our/ureOy1c0553zMe8f5
+/jnjq64X/+2r7ucs6+Gcc84555xzzjnnnHPOOed8hfeOq80zWgf/R191vfgZ
+X/VcjF731nk45/u8tc2eK94Pe93+3umt43rHZ1sn55zf4qPjs7wv+G+3v2d8
+9fPV2rKsn3POOeecc84555xzzjnnnH/bV81Xm39Vnq/77uvIc/qu52t0HOe8
+3XvHeZ/mdOfoN7x3XOvzyznnX/Ps8/E97vq9y1vHZaubc84555xzzjnnnHPO
+Oeec5/TV89Z+78rLx7x2fVr78zt89/OYZZ2cR3hvfHSeLM87H/Pd153n8Nn5
+sq2Hc859//CT7nvpTn/GVz2Pq86lbPvFOeecc84555xzzjnnnHPOf/uq+Wrz
+r8rDz3jv9c1SN9/js/Otnrd1fs5Peqnf6PvRuctbPEsdfM5bx+0+lzjnfNf5
+tStPdF38rLve3/BaO/WdnG1fOOecc84555xzzjnnfLevGpdtXZzz9/mq+Wrz
+r8rDc3iWOvgd3nsfjd53rXk5n/Fav13Pi/P4Wz4b5+/0qO95zvm93hqf7Xf6
+7wXOM9XBY73WVp9P2dbPOeecc84555xzzjnnq3x3vmzr5Zzv89Hxu+qKOvd4
+Du+9H7LUzc949PfSqXOQ5/be8aPze8/yE+49y1v67c6TZf2c8/Z477gs3x+n
+8vDc7n7iPf6M7z7PVp2j2faRc84555xzzjnnnHPOS7573mzr5ZyX2+z5cTo/
+5y2/T9XB7/LT30U1z7IvvM1r/aLew297Lnhuj7rveaw/49Hnxux9yDmf9915
+os8Zzn+57xw+46fOt+jxnHPOOeecc84555xzPuqnx/3xVfNm20/O3+S784zW
+s7su/m3PUgeP8Wz3RZZ9GfVSfPS901pH9Dnx9fuWf9Nv+f7kZzzbuZRlXzjf
+6a1t9fPSOu+or/5O4/yE+87hGfzUOTl7bnPOOeecc84555xzznmvZ8m/ev5s
++8x5i9f67brPe+tY5av3h/MWX3UfZlkPP+NR51KW9Zda7z7N9p/127+fvTf5
+mzzb88X3eHT+rO9Tzme81i/qeXzbdzjnPb7qvs2yHv4OX/1+mZ03y75wzjnn
+nHPOOeecc87v9915anl352+tK9t14d/01fP2Po+n19faP9t14u/ybO9N/i6f
+nS+67lK/6Py9/Uavz+i8Wb4LZsdzfsJbn7+szykf81qL/t57q5f6Zasz6vss
+276tni9LXb5n+Bt99jxZVQfnv1rrd/WuunzPcM4555xzzjnnnHPOV/nuPKP1
+7K6r5LP1c/6rjd5vs3Wsnve255rzEY96b/JveOu4qPcRP+u9/ZxP/E0++j28
+ug6ew2tt9XfdLd47fvd7JOv+tMZX7XPv/Le8v3ffn5x/wW953jlv6TcbP/1c
+tOblnHPOOeecc84555zf67vzjObdXdfTs12Xt3qptfbPer1q/bLUO1o/57x+
+/tTmia6b3+HPeO/7dHU9b/Po92C2ejjP4LPvy1V18Nw+O9+p+mbrKY1f3b/W
+L+s+nzoHVs93298Fu+9/zr/oWergPNKjn4/b3secc84555xzzjnnnPOyR+e/
+ra4/Hp3/tJfiq6/r6LzR1+VUnlYfrX93XZzf6LPP1y3nBs/hvS1b/dHP56iv
+rotzvt5nz03P/zt9Nj56X2Tbh9n35qo8vpN/9yuN270PvfM7Lznv91XPUZb1
+cL7Db3m/ROfnnHPOOeecc84555zXPSp/rZ6oukreWv8tPttq+bJd39n9yX79
+n/HV6+Wcr38vrKqD5/BnfNf7evY763a/bV7O+X7fdY7zu73UstV5i+8aNzpv
+Fve9wTmPPmc5v8mzvjdn6+Scc84555xzzjnnnJ/36PxPr9UZVVeW/KN19fZ/
+2/V9y3VurXf2Psm2Ps5v9t5zuTZ/9Hq+6tHn++y8bzn3n/Fs+8w5j/PZc7t3
+fv67X2//0+f5rvz8d8tW5+nvkF11cc7jfdV3SJb1cL7Tn/Fs781s+8U555xz
+zjnnnHPOOS+3bHU9vVb/6bqir9eqfrf66nVnWVfJW9fbOn9vfs75uef7a+/3
+Vd77XshS96r4qe+cVflWf/+01vvV7ybO3+y3nc9Z3jO3vzdXnedZ3ru3+a7r
+MlrPbo8+Nzjn97nnn/N979/d+Ve/92fHZbkenHPOOeecc84555xn8uj8t67v
+bet5u9f2czbP6uvb2280H+f8nK/uN+q98azvo9ZxWa5/zbPUsWs9vfNkve84
+59/zLO+z1fNF7+suXzXvV99Dz3i261LyqOfxK991nPN5n41zzud9tN+uek5/
+j3HOOeecc84555xz/iaPzh+97lKrzXc6H2/z1ddldF7OOR99j5TG73r/rX7f
+jeZd9f2ya99Of5dkq49zzr/uWd4vo/Es9b/lvZltP7KsZzbOOee3euu5ump+
+zvn576JVeXrnz7IvnHPOOeecc84555xn8uj8t3hvy1b/W/0ZX33/j9bFOefZ
+vfY72kvxbHV673DO+Te89dzOUu9bPEsdo37qOyHL/blrXs45v81Xn/+c832+
+ut8ub/3+45xzzjnnnHPOOef8Cx6d/xbvbdnqv92f8dPXNdt+cM75rK/ut9pH
+63rGo+v3/cU559/0U++T2bzP+C3v97f7quvaO9+q/pxz/nU/dW5zzsd99XMa
+5c4LzjnnnHPOOeecc/5Fj85/an3Z5p0d/zbvvT9vvW845zy77zpvW9vse2P2
+O2j199LoOM4553zEs7wfR9+LtTif89nvt+j6Oef8Fp9973LOz/kzftt3bOt3
+OOecc84555xzzjnnb/Lo/LN1Rde3e95S/2zXa9ZvvV6cc/51j/6+WDU+y35y
+zjnnO7z1PTj6vu3NV+vHOeec3+yt78HddXDOxz06/+rzh3POOeecc84555zz
+N/mq+Wrzt467bX9O1fHHV9e5a5+y3Z9Z8nDOOY/11vipejjnnPNIH31fcs45
+57zure9Z72PO8/voc7q7rqdn2S/OOeecc84555xzznf67LjafNnWu3p/TtUx
+6r3XL3qfe8efut8555xzzjnnnHPOOef86aV+z3itX2//LOvnnLefC73nQK+v
+Wk9vPMu+c84555xzzjnnnPNv+Oj42u+3eJY6bnP7yTnnnHPOOeecc845f5vX
++o3Ol22dnPN47z2Hos6ZLPvFOeecc84555xzzr/hq+bNtq7RfRiNc84555xz
+zjnnnHPOOf+W136Pem9ezjmvxbPV8/Rs+8g555xzzjnnnHPOc3rv+Gz1Z9sf
+zjnnnHPOOeecc84559/w2u9RXz0f5/w9Xjs3Wuc7df605uWcc84555xzzjnn
+vMVL/bLVeXofSi1b3ZxzzjnnnHPOOeecc85z+Kr5ZuvgnN/vo+dGrZ0691rn
+2VUX55xzzjnnnHPOOec3ea3VxmVbD+ecc84555xzzjnnnPM7vRQ/XQfnPK8/
+46vnHR2/y1f345xzzjnnnHPOOeff8N3znaq/1K913GwdnHPOOeecc84555xz
+znmL/1f7dZIlOQoFAfD+t+5VbeI1ySAGRzJ2ss/gEBJZVWqt/dP2wzl/7r/1
+p+N767u89547nZdzzjnnnHPOOeecZ3nKOq39U/fHOeecc84555xzzjnn/Jte
+6zc67tdr86SdC+f8uf/WR++B2blWeev9yTnnnHPOOeecc875znVmrzsrF+ec
+c84555xzzjnnnHPe4rP7ldq/frX+KefCOV93vzytp3vrvlLycs4555xzzjnn
+nPO9XupX69+6zqw8nHPOOeecc84555xzznmCl+q9/Xu91u/0uXDO1/vseyPd
+T6/POeecc84555xzzrN89vhS/9r4tHPhnHPOOeecc84555xzzv/y2vMuP70+
+5/y81+6HU7la/fT6nHPOOeecc8455/wOT8nBOeecc84555xzzjnnnN/ktefZ
+3puHc85H75NT7l7jnHPOOeecc8455395Sg7OOeecc84555xzzjnn/GZfvU6t
+nd4/5/web71nTudKOS/OOeecc84555xznuEpOTjnnHPOOeecc84555zzL/ju
+cZxz3uq1+2d3rpRz4ZxzzjnnnHPOOecZnpKDc84555xzzjnnnHPOOef1lpaP
+c86fzpe2H84555xzzjnnnHOe6Sk5OOecc84555xzzjnnnPMveqnf0/lXzcs5
+563eOi4tN+ecc84555xzzjnP9JQcnHPOOeecc84555xzzvmbfHT87Pl61+Gc
+8933Y62l5vw3Lu18Oeecc84555xzzt/qKTk455xzzjnnnHPOOeec8zf47vG9
+69TmSTlHzvk9/lsfva/S9vX0HFqfOeecc84555xzznmbp+TgnHPOOeecc845
+55xzzm/2Ur02vnWe1b5rHc55vv/WZ8/bOz7tfFrzlcal5Oacc84555xzzjm/
+zVNycM4555xzzjnnnHPOOec3e6ne23+11/qdPkfO+Xz/rZ/OMWvetHNu3Xdv
+/7T9cM4555xzzjnnnJ/ylBycc84555xzzjnnnHPO+Zu99rzLa/1SzotzPv+7
+/1fffc/U8sz2tPNv/V1anznnnHPOOeecc86/6ik5OOecc84555xzzjnnnPM3
+e+15l9f6pZwX53z+vbPLn9ZHffd6rf50vpT3iXPOOeecc8455/y0p+TgnHPO
+Oeecc84555xzzr/otefZvmsdzvk+T8lRaqfznb4PW8edPifOOeecc84555zz
+dE/JwTnnnHPOOeecc84555zzss+a72kOznmut47blWP2vKu89lzz3nrKvjnn
+nHPOOeecc85v85QcnHPOOeecc84555xzzjmve+255rNycM7v8d967/1Q6z+a
+6zZvPYfavKf3wTnnnHPOOeecc36rp+TgnHPOOeecc84555xzzvk8L9VL43vX
+qbXT++ecz/fT69/qs/txzjnnnHPOOeecf9VTcnDOOeecc84555xzzjnnfL6X
++qXl4ZzP99r3fyrX1/y2eTnnnHPOOeecc85TPSUH55xzzjnnnHPOOeecc87L
+Xqr3zjs6T+86v75qXs75vHln5+Jz5/2tp+yPc84555xzzjnnfJen5OCcc845
+55xzzjnnnHPOebk+a73e8b312fNzzuu++rvmz/z0eM4555xzzjnnnPO3eEoO
+zjnnnHPOOeecc84555zfO2/NR+spvwfnN3ip3vpdrcr1VZ913/XOzznnnHPO
+Oeecc/5WT8nBOeecc84555xzzjnnnPP58/7WU/ZXaqvOgfMv++n1v+qz78On
+83POOeecc84555zf7ik5OOecc84555xzzjnnnHNers9a7/T+Wr3W0vJyftKf
+fl8p+/i6n16fc84555xzzjnnPN1TcnDOOeecc84555xzzjnnvH/crHnS/PT6
+nN/ks+4NvtdX/b6cc84555xzzjnnb/WUHJxzzjnnnHPOOeecc845H/fa821e
+65eWl/MEL9V7+/M9Prsf55xzzjnnnHPO+ds9JQfnnHPOOeecc84555xzzsd9
+dr9UP70+54le+15O5eJ/+1fubc4555xzzjnnnPNZnpKDc84555xzzjnnnHPO
+OefjXur3W0/JO+qn1+c80Ue/o9W5vu6j91jrPJxzzjnnnHPOOedf85QcnHPO
+Oeecc84555xzzjnf56V+v/WUvKfXH8052v/p+vybXqqnfU88a33OOeecc845
+55zzWzwlB+ecc84555xzzjnnnHPOc732vMtnzVebf9Y6rX7qHPi3/fT6b/He
+8z2dl3POOeecc8455/xWT8nBOeecc84555xzzjnnnPP3eO151HePO+1v2w9f
+67/1Wr9dud7mp8dzzjnnnHPOOeecf9VTcnDOOeecc84555xzzjnnnPd6qaXl
+fOq1/c9ed/d6fK3XWlreVO/9Lk7n5ZxzzjnnnHPOOX+bp+TgnHPOOeecc845
+55xzzjlv9dpzzZ/WZ/lonqfz1fz0ufA5vvo94X/XS+NP5+Wcc84555xzzjm/
+1VNycM4555xzzjnnnHPOOeec//rsfrO9t55yrrV6rX/reqPnxuf4rN/xq55+
+/3DOOeecc84555x/zVNycM4555xzzjnnnHPOOef8u356PH/mrW3VeP7/3nre
+KXnT3P3DOeecc84555xznuUpOTjnnHPOOeecc84555xz/l2/bV7+zHvH1+ZJ
+298tfnr9FG+9N3r7c84555xzzjnnnPO5npKDc84555xzzjnnnHPOOeff9bev
+x9v8ad3v3NbvdK40995wzjnnnHPOOeec3+EpOTjnnHPOOeecc84555xz/n5/
++3p8r5f61fqn7eP0+aXlOn1PpOTinHPOOeecc84553+3tHycc84555xzzjnn
+nHPOOb/HS/XdOVo9JQff46V+t723o/tOy7Xrnjmdl3POOeecc84555zP8ZQc
+nHPOOeecc84555xzzjl/v6fkKNXT8vGzXuuXlvfp+5/mrb/L7lycc84555xz
+zjnn/Iyn5OCcc84555xzzjnnnHPO+f3eO25VjtF1T58fz/LR8Wn7OPX9Pc1V
+6p+Wl3POOeecc84555zv8ZQcnHPOOeecc84555xzzjl/r5fqu3K0jjt9Tvxu
+L7XT73/K+q3n5nvknHPOOeecc8455y0tLR/nnHPOOeecc84555xzzt/jteea
+rx6Xck78G15ru9ZP/d4555xzzjnnnHPOOf+rpeXjnHPOOeecc84555xzzvl7
+vPY86r31lPPg/K922zqz5+Occ84555xzzjnn/K+Wlo9zzjnnnHPOOeecc845
+5+/32nPNe+cv9U85D857vNavdVzrfJxzzjnnnHPOOeecn/CUHJxzzjnnnHPO
+Oeecc84556t81ry/9ZT9cT6jpeXnnHPOOeecc8455/yvlpaPc84555xzzjnn
+nHPOOed8lp/OkXYe/B3e2ka/i7T9cs4555xzzjnnnPNvekoOzjnnnHPOOeec
+c84555zzVX4qx2895Tx4hj9tKd/F7Fycc84555xzzjnnnLe0tHycc84555xz
+zjnnnHPOOeezvVSftV7v+Kf12r74Hm+t945b5SnrlVra78s555xzzjnnnHPO
+z3pKDs4555xzzjnnnHPOOeec8xSvPde8d/6n6/yrz5531fynvLU+a750T8lR
+89Z67zjOOeecc84555xzfpen5OCcc84555xzzjnnnHPOOX+7l+qz19s1f+v6
+s/o9zfk0x9s8JUev9/6Ove9Vyj4555xzzjnnnHPO+d8tLR/nnHPOOeecc845
+55xzzvnbfdZ8tX5P12ldd9Y8p3+Xt3tKjtU++31zvpxzzjnnnHPOOednPCUH
+55xzzjnnnHPOOeecc845z/JSv1N5+FxPyXGbP52vNu/q9TnnnHPOOeecc85v
+9ZQcnHPOOeecc84555xzzjnnnPN1npLjdl81X+88aefCOeecc84555xzvtpT
+cnDOOeecc84555xzzjnnnHPO93lKjq95qd+sdXrH9dZTzpFzzjnnnHPOOeff
+85QcnHPOOeecc84555xzzjnnnPN5XqrvzsH7vNaervO039N5Oeecc84555xz
+zkc9JQfnnHPOOeecc84555xzzjnnfJ6X6rtz8Dt81ny1Z84555xzzjnnnPNR
+T8nBOeecc84555xzzjnnnHPOOZ/npfruHDzDa+/DqvV7x83KkXLunHPOOeec
+c845n+cpOTjnnHPOOeecc84555xzzjnnz/1pnb/bf+u1fqvWXz1vaVza78E5
+55xzzjnnnPN2T8nBOeecc84555xzzjnnnHPOOZ/npfruHPzbXnsPV62fsn/O
+Oeecc84555zP85QcnHPOOeecc84555xzzjnnnPNxL/UrtZTc/N3eO351rpRz
+4ZxzzjnnnHPOeb+n5OCcc84555xzzjnnnHPOOeec93vvuFU5OP8/H30/V+f6
+9ZTz4pxzzjnnnHPOedlTcnDOOeecc84555xzzjnnnHPO+7133KocnP+f197D
+U7lK3pp/9PtqnTflPDjnnHPOOeec8yRPycE555xzzjnnnHPOOeecc845n+8p
+OTjv8dn9Rr227q5zqOXhnHPOOeecc86/4Ck5OOecc84555xzzjnnnHPOOed1
+rz2X2tN+nH/ZS+30988555xzzjnnnH/JU3JwzjnnnHPOOeecc84555xzzute
+e675rBycv8lr30utja4/uu7TfXHOOeecc8455zd6Sg7OOeecc84555xzzjnn
+nHPOed1rzzWflYPzN/nod7Q6V6+3fvcpeTnnnHPOOeec8x5PycE555xzzjnn
+nHPOOeecc8457/dSvTbP6dycn/Tf+uj42blWue+fc84555xzzvkbPCUH55xz
+zjnnnHPOOeecc8455/y5p+TgPNl/62//zmrPnHPOOeecc875DZ6Sg3POOeec
+c84555xzzjnnnHNerpfG1/rP6sf5F/y3/tbv5vT6nHPOOeecc875iKfk4Jxz
+zjnnnHPOOeecc84555yX66Xxtf6t69fqnPN6v9O5Wv30+pxzzjnnnHPO+Yin
+5OCcc84555xzzjnnnHPOOeectz+P+uz5OP+i176vU7me+un1Oeecc84555zz
+vzwlB+ecc84555xzzjnnnHPOOee87LPme5qDc1722nd3Ktevn16fc84555xz
+zjkf8ZQcnHPOOeecc84555xzzjnnnPO6155LrXUc53y/714/bf+cc84555xz
+znmLp+TgnHPOOeecc84555xzzjnnnPd7qb47B+d8vde+99b5VufuHde7r5Tf
+g3POOeecc875Xk/JwTnnnHPOOeecc84555xzzjmve+251FrHcc7f57/11ntj
+VZ7Z92Cp1fbLOeecc8455/wuT8nBOeecc84555xzzjnnnHPO+Rd91fhTeTjn
+ed7b0vLvug9n5eCcc84555xzvsZTcnDOOeecc84555xzzjnnnHP+JS/Va+Nb
+56mNn5WHc77PZ817ev30cyv1S9kP55xzzjnnnH/VU3JwzjnnnHPOOeecc845
+55xzzs+tv2sdznm7p82bdj6r7rm03JxzzjnnnHPOs3JwzjnnnHPOOeecc845
+55xzztufZ3tvHs75/O/vX33Xd73a08659fxLnpabc84555xzzr/mKTk455xz
+zjnnnHPOOeecc8455+3Ps33XOpzzfes9rafvb/f9l5abc84555xzzr/mKTk4
+55xzzjnnnHPOOeecc84552Vfvc7s+Tjn5bb7u5497657rFSffb+19uOcc845
+55xzftZTcnDOOeecc84555xzzjnnnHPO+7133KocnPN+X73eqnlPn9Psc2i9
+L1POg3POOeecc86/6ik5OOecc84555xzzjnnnHPOOefzvFTfnYNzXq6vmre3
+/nU/PZ5zzjnnnHPOeZun5OCcc84555xzzjnnnHPOOeecr/NSa50nbT+c3+il
+euv3Nntdvme933rKvjnnnHPOOef8Nk/JwTnnnHPOOeecc84555xzzjmv+9N+
+T+uzc3LO6y0t79t89++bsm/OOeecc845v81TcnDOOeecc84555xzzjnnnHPO
+c8aXWm18bZ6U8+U8wWd9d3zMd91XT/NwzjnnnHPOOc/KwTnnnHPOOeecc845
+55xzzvmXvFSftd6svLvW4fzNPvrdrb4neNtz67yt66bsm3POOeecc85v85Qc
+nHPOOeecc84555xzzjnnnH/Ra8+94097rV9aXs53+NPvqNRS9vc2n/W7nN4H
+55xzzjnnnL/NU3JwzjnnnHPOOeecc84555xzzsv13v6n/PT6nCd7qe57uttP
+r88555xzzjnnX/GUHJxzzjnnnHPOOeecc84555zzuteeU73WLy0v5zv99Pq8
+z2f345xzzjnnnHPe5ik5OOecc84555xzzjnnnHPOOeflemn86bytfnp9zk/6
+6PeyOhf/f599j7XOzznnnHPOOef8b0/JwTnnnHPOOeecc84555xzzjkv++n1
+V/np9Tnf4aPfxepc/G9fdc+l7I9zzjnnnHPOb/OUHJxzzjnnnHPOOeecc845
+55zzca89p/rp9Tnf6aW67yPLZ/8erfNzzjnnnHPOOf/bU3JwzjnnnHPOOeec
+c84555xzzud77XmXn16f80SvfS+ncvE2L7XUe5hzzjnnnHPOb/eUHJxzzjnn
+nHPOOeecc84555zzfV57nu271qmt/3R8yu/H7/Tf+qr3la/13fcn55xzzjnn
+nPOsHJxzzjnnnHPOOeecc84555zzXK8913xWjlXzzT6H1Tn4XT77vZ89L/9/
+3/37cs4555xzzjn/21NycM4555xzzjnnnHPOOeecc87v91K9Nn5VntVe209p
+ntO5eYaPvj98js+6j07vg3POOeecc86/4ik5OOecc84555xzzjnnnHPOOeff
+8d6Wlr/Va8+940dz8Ewf/X1X5/qKPz3/Vbk455xzzjnnnP+/p+TgnHPOOeec
+c84555xzzjnnnN/rs/vVxo/Wn/rTfrPynNo/X+O/9dXvD3/mo/cC55xzzjnn
+nPNnnpKDc84555xzzjnnnHPOOeecc57npfqs9Vbvo3f8qfOePe/p94Y/813v
+CW975pxzzjnnnHOe4Sk5OOecc84555xzzjnnnHPOOefnvFRfneP0vtO9VK/1
+b13v1O/O2+p+n2c+Oj5tH5xzzjnnnHPOs3JwzjnnnHPOOeecc84555xzzs/7
+29f7qo+OT9vHV3z278j/7vdbT8nLOeecc8455/zvlpaPc84555xzzjnnnHPO
+Oeeccz7PS/XdOWrrnz6nr3vv+NT36laf9bt81VvPk3POOeecc875XZ6Sg3PO
+Oeecc84555xzzjnnnHO+39Ny/KunnRPvq69a/yue/r2m+Ox+nHPOOeecc86z
+PSUH55xzzjnnnHPOOeecc84553y+p+So+W89LR8f81K/1vfgq957nvxvP70+
+55xzzjnnnPM5npKDc84555xzzjnnnHPOOeeccz7fa8+7cvSun3J+/JmX+s3u
+n7bv2d9tqaXkfeq9v+/pvJxzzjnnnHPOz3hKDs4555xzzjnnnHPOOeecc855
+rq8aXxqXsm++12f3e6ufXv/0e5CWl3POOeecc875Hk/JwTnnnHPOOeecc845
+55xzzjnf57Xnmq8el3JOPNtr/dLyPt3f7vVT7x/OOeecc84559/0lBycc845
+55xzzjnnnHPOOeec8/W+ep3e+unz4O/0Un30vU3z0+vXcpX6peXlnHPOOeec
+c36Xp+TgnHPOOeecc84555xzzjnnnK/3Ur00vned1nk5T/Jav9S8u9cfPT/O
+Oeecc84553yGp+TgnHPOOeecc84555xzzjnnnL/fa8+cJ/lo25Vr9jpp5885
+55xzzjnnnP/V0vJxzjnnnHPOOeecc84555xzzu/12fOm7Y/znjZ7ndnfU9p5
+cs4555xzzjnnf7W0fJxzzjnnnHPOOeecc84555zze7xU353j1Hqc9/iplnYO
+nHPOOeecc855i6fk4JxzzjnnnHPOOeecc84555y/x0/l+K2nnAfnPT6rpe2L
+c84555xzzjl/4ik5OOecc84555xzzjnnnHPOOefv9VJ99nqt63Ke4Ktb2n45
+55xzzjnnnPMnnpKDc84555xzzjnnnHPOOeecc/49nzVfrf2O653n9DnxO/xp
+/el7v3s855xzzjnnnHO+01NycM4555xzzjnnnHPOOeecc875r5f6zZpnlv/W
+U86Pt/nTlvJdeM8555xzzjnnnL/ZU3JwzjnnnHPOOeecc84555xzzvlqXz3v
+v3rr+rV5eue/3Uv9Ws99dJ2n8+32lBw1b21puTnnnHPOOeecZ3pKDs4555xz
+zjnnnHPOOeecc8453+Wl+tP+vTlGvZand/7f+qr5Z80z+ju+xVNyjHprvdQv
+bT+cc84555xzzvd4Sg7OOeecc84555xzzjnnnHPOOU/3Ur9Z8/Su93T+1vrT
++Wet+1VPyXF6/7O/07R9cs4555xzzjn/21NycM4555xzzjnnnHPOOeecc845
+3+ul+qk8vM1TcqT5rvfZ78Q555xzzjnnZzwlB+ecc84555xzzjnnnHPOOeec
+c87L9d05vuq18x9dZ/b8KefFOeecc84557s8JQfnnHPOOeecc84555xzzjnn
+nHPO83J8zUv9Vq3/NI/3hnPOOeecc/4VT8nBOeecc84555xzzjnnnHPOOeec
+83J9dw6+xmu/76p1Zu2n1C/lfDnnnHPOOefv9ZQcnHPOOeecc84555xzzjnn
+nHPOOa+3tHy8z2u/82i95qvmbfXWPJxzzjnnnHNe8pQcnHPOOeecc84555xz
+zjnnnHPOOS/Xd+fgWf5bn/2ejI6b/Z5zzjnnnHPOeclTcnDOOeecc84555xz
+zjnnnHPOOee8XN+dg7/TZ/fb9f6v2qfvjXPOOeec83s8JQfnnHPOOeecc845
+55xzzjnnnHP+RS/16+3PeYv/1mv9am123qf7eepP83DOOeecc87XeUoOzjnn
+nHPOOeecc84555xzzjnn/EveO25VDv5tn/0ezspV8t3z7s7BOeecc845r//7
+/HQOzjnnnHPOOeecc84555xzzjnn/Mv+tM75F7zWUvLWnjnnnHPOOefP/z+Q
+lo9zzjnnnHPOOeecc84555xzzjl/s6fk4DzBe8fvyvXUT6/POeecc875Gzwl
+B+ecc84555xzzjnnnHPOOeecc/4lL9Vr85zOzfkO/62Pjp+d66n7njnnnHPO
+OR/3lBycc84555xzzjnnnHPOOeecc875l7x33KocnCf5rHln51rlp9ZfXeec
+c84553yFp+TgnHPOOeecc84555xzzjnnnHPOv+Sleq2dzs35Ca99L739Z+V6
+6r3jVuWYvf7pc+Wcc8455+/0lBycc84555xzzjnnnHPOOeecc875l7xU352D
+cz7+Pc7OtWre1f5bT8vHOeecc87f4Sk5OOecc84555xzzjnnnHPOOeec8zd7
+7bnUWsdxzu/1Whu9L2b5rbk555xzzvm7PCUH55xzzjnnnHPOOeecc84555xz
+frPPmq/W7/Q+OefzfPQeSMk1Os/THJxzzjnn/JuekoNzzjnnnHPOOeecc845
+55xzzjl/g9eea947P+c832fNOzvXKq/lb62f3gfnnHPOOc/ylBycc84555xz
+zjnnnHPOOeecc875zT5rvlq/0/vknPf7rvvhdnffcc4555zzvzwlB+ecc845
+55xzzjnnnHPOOeecc/5G7x23Kgfn/JzPmnd2rjRfdW6cc8455/wdnpKDc845
+55xzzjnnnHPOOeecc845/4Kn5OCcn3f3Sp+fXp9zzjnnnJ/1lBycc84555xz
+zjnnnHPOOeecc875Tf60X2lcrX/K/jnn5+6BWblu8dH7l3POOeecv8tTcnDO
+Oeecc84555xzzjnnnHPOOec3+dN+q9flnH/PT6+/y0+vzznnnHPOz3hKDs45
+55xzzjnnnHPOOeecc8455/wGX71OrZ3eP+f8nNfujdF6urfelyl5Oeecc875
+Gk/JwTnnnHPOOeecc84555xzzjnnnN/ss+ar9Tu9T875eW+tr1r/tJ9en3PO
+Oeecn/GUHJxzzjnnnHPOOeecc84555xzzvkNvnqdWju9f875Pf70/knZx6+f
+Xp9zzjnnnJ/xlBycc84555xzzjnnnHPOOeecc875zT5rvqc5OOd81Gv30qlc
+v356fc4555xzfsZTcnDOOeecc84555xzzjnnnHPOOedv8qd1zjlP8dH7b1Wu
+lHMptV05ev++pJ0b55xzzvkt/+7inHPOOeecc84555xzzjnnnHPOv+QpOTjn
+/LTXWm2+lBynvXVfu86Tc84553z3vyPT8nHOOeecc84555xzzjnnnHPOOecn
+vFSfvV6pfnr/nHOe4r0tLf/pc3v69661P+ecc8757n8XpuXjnHPOOeecc845
+55xzzjnnnHPOV3qp3jtv7/q968zKyTnnt3lvS8t/i5fqq/4Ocs4555w//Xdh
+Wj7OOeecc84555xzzjnnnHPOOed8pZfqtfFP1++tj87DOedpfmp82jns9lW/
+R22dlP1zzjnn/H5PycE555xzzjnnnHPOOeecc84555zf4KvXqbXT++ec85rv
+vifT573F0+fjnHPOOU/JwTnnnHPOOeecc84555xzzjnnnCd7yvqlfmnnxTl/
+j7feS6tz7Fov9e/AbX/nZs/HOeecc56Sg3POOeecc84555xzzjnnnHPOOT/h
+pXpv/9Ve63f6HDnn7/ff+ukcu9Yb/XuxKsdsn3XOKfvhnHPO+Xs9JQfnnHPO
+Oeecc84555xzzjnnnHOe6LXnXX56fc75d/y3npKjt37678VbvFT/yv4555xz
+nuMpOTjnnHPOOeecc84555xzzjnnnPMbfPU6tX6n9885v99r90/KvfO0ftqf
+3v+1cbvPefa6nHPOOedP/72Ulo9zzjnnnHPOOeecc84555xzzjlP9NrzqPeu
+yznno/5bT813OscuTz1nvw/nnHPOUzwlB+ecc84555xzzjnnnHPOOeecc36z
+z5rvaQ7OOa957f757bc636p5v+Kr/87szsc555xz7t+NnHPOOeecc84555xz
+zjnnnHPO+X4v1Xfn4Jx/15/Odzrf7PV4n+/6/XetxznnnPN7PSUH55xzzjnn
+nHPOOeecc84555xz/gUvtdZ5avO29uec89Zxq+adNY6v9ZQcJU/JwTnnnPN9
+/349nYNzzjnnnHPOOeecc84555xzzjlP8lJ9dN7e+UfXeeqnz51zft57x51a
+l6/1tN/p9Hlwzjnn/Lyn5OCcc84555xzzjnnnHPOOeecc85PeKk+a73e8a1t
+dy7OOa+1tLz8ma/++1jy1vdvND/nnHPO7/WUHJxzzjnnnHPOOeecc84555xz
+zvkOf9t6veNr86T8Tpzz/PtqVy6e6bv+vo3mSTknzjnnnM//98HpHJxzzjnn
+nHPOOeecc84555xzzvlJnzXvb331Pmr9Wvc5Oxfn/D7fdS/xOz11XNo5cc45
+53ydp+TgnHPOOeecc84555xzzjnnnHPOV3qpXpvnaY7T+661p/045/f6b333
+PcPv9FXv3+w655xzzt/nKTk455xzzjnnnHPOOeecc84555zznT67nra/0fMo
+9UvLyzl/7qfHc560Puecc87zPSUH55xzzjnnnHPOOeecc84555xznuSn19/t
+tX5peTnnz7113Oj40Vz8Wz76d4lzzjnn3/OUHJxzzjnnnHPOOeecc84555xz
+zvlJn93vNq/1S8vLOV/noy1tHzzLT4/nnHPO+f2ekoNzzjnnnHPOOeecc845
+55xzzjlP9FK/33pK3lEv1Xv7c87v9996rd+uXPxu3/1+cs455/x9npKDc845
+55xzzjnnnHPOOeecc845P+mlfq3zpOxj1Gv90vJyzuf7rvuEv9Of/h1t9dZ1
+Oeecc/4+T8nBOeecc84555xzzjnnnHPOOeec3+S157f46fU55/t89v0wKxe/
+03etl7ZvzjnnnK/zlBycc84555xzzjnnnHPOOeecc875TV7q91tPyVvz0+tz
+zvd767jR8aO5+J2+6+9Oqd76d5pzzjnn93pKDs4555xzzjnnnHPOOeecc845
+5/zNXns+7bV+aXk55/u91tLy8jPe+vfjaf2fp+ybc8455/v/PZqWj3POOeec
+c84555xzzjnnnHPOOb/ZT6//1E+vzzk/77X74VQu/i4/vT7nnHPO8z0lB+ec
+c84555xzzjnnnHPOOeecc/4lL9VLbXWu0+vXcv3Wa8+1eXrX4/xL/lt/ep+k
+7Y+f8dn9OOecc/49T8nBOeecc84555xzzjnnnHPOOeec87rXnke91mbnXrXO
+bC+1f/1r49L2w/lfPvp9+A54S1v1HnLOOef8O56Sg3POOeecc84555xzzjnn
+nHPOOefzvfbc2kbnSTmHXm/db+0cUvbDeY/XWu99kLY//sx3/d6r5uWcc875
+vZ6Sg3POOeecc84555xzzjnnnHPOOec5XmppOXf56Pmdzs35TG+tr1qfZ/jq
+e+/0/jjnnHOe6yk5OOecc84555xzzjnnnHPOOeecc77PS/1a53taf4vv2n+p
+fnr//Bs++r6uzsXP+Oq/C6f3xznnnPNcT8nBOeecc84555xzzjnnnHPOOeec
+8/l+evys+i6fne9pnpq3/l6rc/Bv+G+91q/W0vbH53qpjd7DnHPOOecpOTjn
+nHPOOeecc84555xzzjnnnHNe97evN3vc6nVH5x8dX/PZ58l5i9daWl4+x0/d
+c5xzzjn/rqfk4JxzzjnnnHPOOeecc84555xzznm5vjvHqfVOe6mtmn/3ftLO
+m9/t3rt3uXuHc8455+mekoNzzjnnnHPOOeecc84555xzzjn/oqfkKHlKjq96
+77jaPKM5vC/8/7z1fSu1lH183WfdP7PGc84555z7dwbnnHPOOeecc84555xz
+zjnnnHOe46X67hyt/ltPy8f/9tb2tveW7/Hfeut7mLaPr/rod706F+ecc855
+raXl45xzzjnnnHPOOeecc84555xzzm/23nGrcjz133paPj7mq+ZrbWnnwce8
+1G675/jfbfbfO84555zzp/9OScvHOeecc84555xzzjnnnHPOOeec3+yl+u4c
+o56Sg2f77PGl/mn7/rrvfk94n58ezznnnHM+21NycM4555xzzjnnnHPOOeec
+c84552/wUr/e/mn+W0/LxzO9d3zv98OzvdbS8n7FZ/fjnHPOOd/lKTk455xz
+zjnnnHPOOeecc84555zzm7133Kocq7x1XFpuftZr/Va9b63j+RoffR/4XG/9
+HUotZR+cc84556WWlo9zzjnnnHPOOeecc84555xzzjm/wXvHrcqxyn/rafn4
+u/30eN7nfoe9Pnr+q3NxzjnnnM/2lBycc84555xzzjnnnHPOOeecc875G71U
+352j5rWcv/1ScvNveK1f73eWtr+3+ejvyP9uT8+fc8455/x2T8nBOeecc845
+55xzzjnnnHPOOeecv9lL/WbNM8ufzpdy3py3tNp7uyvX27z3/Pn/++x+nHPO
+Oee3e0oOzjnnnHPOOeecc84555xzzjnn/A1eex713nV7+7XmqHnK78D5X631
+Oxgdl7bv0/dgqaXkPeWz+3HOOeecv91TcnDOOeecc84555xzzjnnnHPOOec3
++6n1a/1q41L3xXmCj45P28fp80vLdfo8ZvXjnHPOOf+ap+TgnHPOOeecc845
+55xzzjnnnHPO3+y159neW085J85v9tHxaftYdR6710/x2e8L55xzzvlXPSUH
+55xzzjnnnHPOOeecc84555xz/iUv1Uvje/vPqnPOn3trfdX6aX56/VXeem9z
+zjnnnPMxT8nBOeecc84555xzzjnnnHPOOeec833eO/63nrIPzm/21vqq9VP3
+fdp7c5/OyznnnHP+FU/JwTnnnHPOOeecc84555xzzjnnnPP5ftu8nPOyj7bU
+faTkcr9xzjnnnN/hKTk455xzzjnnnHPOOeecc84555xzPs9L9d05Tq3H+Zd8
+tKXm3XUPpf2OnHPOOef8b0/JwTnnnHPOOeecc84555xzzjnnnPN5XqrvzlFb
+//Q5cf5FH223reOe4Zxzzjl/l6fk4JxzzjnnnHPOOeecc84555xzzvk8L9V3
+5xhd//T5cc7va2nnxjnnnHPO53pKDs4555xzzjnnnHPOOeecc84555zv81M5
+WselnBPnvP49725p58A555xzzvd4Sg7OOeecc84555xzzjnnnHPOOeecr/dS
+vTS+t/+o/9ZPnxPnPLelnQ/nnHPOOd/jKTk455xzzjnnnHPOOeecc84555xz
+ft5rz7O9t9XmaV0n5bw5T/LbW9p5cs4555zzuZ6Sg3POOeecc84555xzzjnn
+nHPOOefnfPU6tX6n9t/aTv8+nI94rdXGpX9nT1va78U555xzzv/2lBycc845
+55xzzjnnnHPOOeecc84557++e97SuJTz4N/wWr/WcU9zrNpPqaXkKLW094Rz
+zjnn/GuekoNzzjnnnHPOOeecc84555xzzjnn/NdP5fitr5p3dB6e6bXWO673
+PUr11nZr7tJ8afvhnHPOOb/dU3JwzjnnnHPOOeecc84555xzzjnnnD/13vGt
+9dH5Z/lvffa8pX5PzzflvEbrT9fvbWnnuOs9e4uPtrd8d5xzzjnn/l3JOeec
+c84555xzzjnnnHPOOeecc97mteeat7an68zyUps9f23c0/G9eUbnaZ13dD+t
+/b7mrS0t9679rzrPp+twzjnnnOf4f7/KwZE=
+ "], {{0, 0}, {501, 501}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"", "1",
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{
+ FractionBox["1", "2"]}]}], "-",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}],
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{
+ FractionBox["1", "2"]}]}], "+",
+ FractionBox[
+ RowBox[{"\[ImaginaryI]", " ",
+ SqrtBox["3"]}], "2"]}]}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{3.6595585246496677`*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "4"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
+ ",", "40", ",", "0.1"}], "]"}]], "Input",
+ CellChangeTimes->{
+ 3.6641612785202837`*^9, {3.6641613500474806`*^9, 3.6641613529304647`*^9}}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzs+e2N9LiyMFqei7FkLGkfxoQB7u+x5XpYJqQJgxcbAnrHqagglaRISSuA
+RjUXKYpJ8Ut6/t//3//f/+f//n/9z//8z//zf/3nv//z/3/Hzz//+fv551o/
+4hPyf/75Pb+3POcjvHecx3qycb9q3nHOOeecc84555xzzjnnnHPOOX+WH/FJ
+yp2tP6uH82885lfjNiu/at5V7WuN2e3s7c/Ms3WG8xVerTej90HOOeecc845
+55xzzjnnnHPOOefv8CNi/idcl9UT05yv8JjfOp5j/ux5l0XWnrP90Fp/1c7Y
+jqv6n/MrPKYrH7Uurd73Oeecc84555xzzjnnnHPOOeec9/kRn5D/88/v+Zln
+9WRetYPzKzzmV+O2d/xn865qT4ze+Ti6H3rb07rOZN77ezmf6d+O5975uNs5
+gXPOOeecc84555xzzjnnnHPO+Rw/4sjPPKYrz+4b05yv8Jg/ejxXkdUf8zO/
+qh++raf3d3G+wqt5c3Z96F03Vp8HOOecc84555xzzjnnnHPOOeecn/Mjjvze
+euL1MT96Vk9VL+crPebH8dx6fW89vd77u3rrqdaBb+/L+U7euk/F/GoeZeVH
+7cucc84555xzzjnnnHPOOeecc87XekzH+ITrforrW8v3tofzHbwa/1n5bD7G
+enrve9Z7141v689i9PrW207Oz3jvPK3K73Ie4JxzzjnnnHPOOeecc84555xz
+vocf8UnKnS3P+QwfNf6zyMrPbmfVvjjfsvnY61n9mbf24xGr1jHOv/GYbt0f
+d9vfOeecc84555xzzjnnnHPOOeecr/UjYv7nn9//xuD8G589zrPoHf+Zj+qH
+rP6snb2e1d/rZ39XjOx5reof/k6P6dHjf/X+zjnnnHPOOeecc84555xzzjnn
+/Bo/4sjPPKYrj/lZfZz/FXE8VeO2qu+I2eM/89n9s8pH/67e8r3jhPMWr8bv
+2XnRe1/OOeecc84555xzzjnnnHPOOed7ekzH8lm5T1Hf8bf3vpy3eMyP4631
++qx8r2ft4X97tf60rmNVtI4Tznu8dz+t1rmz9+Wcc84555xzzjnnnHPOOeec
+c76nx3SMT7iuqj9e13tfzls85lflzs6XrB3ZfXmfZ8+tWk9aPYtR44HzFq/G
++S7nAc4555xzzjnnnHPOOeecc84553v4EZ+kXMzn/C/vHYdZjG5PVi4b93wv
+bx03R/SOw97xw5/tMV2Nw9X7OOecc84555xzzjnnnHPOOeec8z39iJj/+ef3
+vzH4sz0bJ73jLYveccjf6b3jtopYbzXO+bs8pqt1r1o/d9v3Oeecc84555xz
+zjnnnHPOOeecj/UjjvysfCwX/2bl+Ls85lflqnGY3S+rn/Pf8o+oxlVWvnf9
+5M/0aly17pur933OOeecc84555xzzjnnnHPOOedz/YhPyK/qya7L6uXP9Gpc
+9daTlcvGGed/ee+61zqOj+hdJ/mzvXed5JxzzjnnnHPOOeecc84555xz/m4/
+4pOUi/n8mZ6Nkyyy8RPTx9+q/mz8cX6Ft477GNk4j/n8Xh7TZ/fH1fs755xz
+zjnnnHPOOeecc84555zza/yIIz/zmI5/Y/B7ecyvyvWOE86f5NX4j5Gtw9l1
+veszv8ar51Wtu7H+3c4DnHPOOeecc84555xzzjnnnHPOx/gRn5Bf1ZNdl9XL
+13j2vKrx0Fp/zI/lOH+jt86rI86uzzGfr/VqHd5l3+ecc84555xzzjnnnHPO
+Oeecc76HH/FJysV8vsZj/vE3e75ZZM89q59z3j7vWufhEdl85Ht677q9en/n
+Y3zU8431VesJ55xzzjnnnHPOOeecc845X+tHfEL+2fpjfbv9Xv6dHxGfb/Rq
+nPG9PIveeR3LxXzOee3ZvKvqiTFqPeffees+G68/Ww8f61lk5bPrR42fWO6q
+8XlV/ZxzzjnnnHPOOeecc8455996TFc+u/6Yf/wd3f5YLqs/i92e49v8iNZx
+Mmr88HPeO79iffFva3nO+fXeO8+rfZnP9d51m1/jR8TnNPr5xvLV9a3zffb4
+HH3fXZ4755xzzjnnnHPOOeecc87v6zFd+U9yfea99ffet7pf9N76e9uZXb/b
+c3+rHzF6fPJznsWo+c45v7/HGLX+8789pmP53fb33T0b11c9r6yeat+uyvf+
+rqz+UT7qPWW38cM555xzzjnnnHPOOeec8/v7EZ+kXMzPIrv+W8/um7U/+71Z
+/Vn53t/b22+jfhf/24+Y9bze5mf7P4tZ6wbn/L5+dh2JUe2n/Hcftf4/3Y84
+288xfXZePNVHnefPPq/dxhvnnHPOOeecc84555xzzu/nMV15Vk+87vhbtSde
+91SP6cp7n0vv83qrHzG6n9/m1TjvLd86Lzjn7/HefS0L55C/PabP9j//27PY
+bX/fzXvnb0zH8d+7DuwyfjjnnHPOOeecc84555xzfl+P6ap8vC7+ba3nJ2kH
+/58/Y7fxczc/IpsH1Xh+m1frQGv53v7nnPNeb12nYsTrdzsPrPLefeHpfkTr
++Iyxah9/qsf8s+tGNS+y61vbeXY+7jb+Oeecc84555xzzjnnnPMneExX/pNc
+X3nrfWN+dl3lZ9vJf/cqYv9X42eX8X+VH1H1z9s85lflqvH57brBOeejvHc/
+7d1Hnu6j9t/d/IiqH2bvv/xeHvOr9Ser563zjnPOOeecc84555xzzjlf6TEd
+y2flPkV9x9+sHv5Oz8ZbNQ53mS+z591TPeuHLKpyresP55zv5q3r4BG77eOr
+zgm77eNn/YjYD9m4icHv5aPGQ+972dn3vt3mC+ecc84555xzzjnnnHP+JD/i
+yM/Kx3Lxb4ysnt7yVTv5vXzUeLiLH1HNl6d6Fln/xDTnnL/dY6zex1d57Jdd
+vbX92XPm9/Le8RDT1bx3Duecc84555xzzjnnnHPO7+NHHPlZ+Zg+69l9Yzr+
+zerp/V38Xt46DlfPo1YfNY/u4lVk85xzzvk5j7F6H//WYzqWj+V29SOq58af
+7TH/23Eer3vr/OKcc84555xzzjnnnHPO7+RHfP75/W9WrtV775v5T5LPn+29
+42o3P2LW/FrlVbTOa84553M8xm77e+YxHcvHcrt59hz4Oz3mn53XV83HXeYR
+55xzzjnnnHPOOeecc/4kj+nRHvOz+1f+k+Tzd/su8yjz2O5svMdyu3gV385r
+zjnn13qM1ft49JiO5WM5+zi/o8f81vEf8992ruacc84555xzzjnnnHPO7+gx
+Pdpjfnb/4+9Pks95i8d0LH/1/MraM3venZ2nWbTOX8455/f0GKv399i+qzy2
+J+sn/rf39mfvuW6339vrMb/6vXc/D3POOeecc84555xzzjnn/H/7EZ9/fv+b
+lcsiuz76T5J/F4/pqt+yenrL87+96s+r51fvPBrlVbTOU8455+/wGKv399i+
+p+7Xo7z6vfH63veCVfVUv7e1nlXjJOa3tjNet9t84ZxzzjnnnHPOOeecc875
+9x7TlWf1xOuOvz/J/Sq/+vf2tierJ+avrqfqn3j93Xz3+TLKq4jjhPM3e++6
+yjn/33G3fTzWn/2+Vd57fuZ/++jzbet4691fdjvHcs4555xzzjnnnHPOOed8
+f4/pGJ9w3U9y/aj7Zp7Vk7WT/+3V84rXrfLe8TB7HPZ6FbuMB8538N51oLf+
+0fN6l37jvMdjjN7H4/1225czz35XTPNrvfd5jRq3WXt2e4/jnHPOOeecc845
+55xzzvl9/YhPyM/KV9e3+k9Rb2wPv8Z7n9dV/u04HzVuq9jlOXLe4qPm6aj7
+ZuWvWpdG7ZtZfnZ9FruME/4sjzFqvq/el3frZ76X947zUeOzd9zOPg9zzjnn
+nHPOOeecc84552/wmI7xCdf9JNeP8qw9ve3k/N9/R4/b1vmVtefsOM9il37m
+z/BR63ZV/7f7VK9n7T/bznjdbK/aOeq+revY6vpb68m8d9z2eu9z5P/zZ4we
+bzHO7su79Rtf42f3o9b9ZXZ7RnnWnt3efznnnHPOOeecc84555zzb/yIT8j/
++ef3/NmetSfz7PdU/TCrPfzZfnb8xMjGZzU/e2OXftvNq/6cNU7O1tM6TkbV
+s6r+3vuOqr/Xe3/vqP16dv29++ao9ozq/9n9draeeP2q8RCvO7uv9Y6Hqtxs
+j9H7XEb1M3+2986LUfvs6PNGdV12n9F+dh2bvQ9yzjnnnHPOOeecc8455/+O
+T8iv6onXzfas3VW56Fk9Z/sn5s9uP3+Gn51fWb29ser3VtfF/Fav7vttP/d6
+7zozuj2z65lV/9l+G+WxPbPr7x3no8fh1e256r6t9e9WDx/rWf/HdKuPiln7
+5uj3gixiO3r35d72Z/Xc3UefH2bt47Hc6vPe2XNgzN/tfZxzzjnnnHPOOeec
+c875sz2mY3zCdT/J9aO8tz1VO1t/b+Zn+znWm5WP5arfdRfv7Z+qntbyWYye
+R7337+3PUdF632r8x+v4WD+7/uxez+j6Z983q+fq9vS2s7c/s+t72zNq3Rt1
+X85neG/str/cxWP67Dlz9rrUW370fjdrPxr1XDKfPU+vOudwzjnnnHPOOeec
+c8455y1+xCcpd7aeUV61r9Wz39Xrq55Lb/+M6s+qPVX/XfVc3ua9MXuecv6N
+x/S369K39x29b7a2Z7d1hvM3eBbVOSeLaj5X9a86b7/Ve/t5VvmYHr2/7PZe
+lvnoeT3q/NA7TznnnHPOOeecc84555zz39KVx/zj709Sb69n9Y/y3t87ynt/
+b1VP63OcXZ6f8955WkU1bs7WP2pec87bfbf1ivOdPebH+TXrnDzqXJfFVe8F
+sb2c93g1X6t5kXnvfc+uD9n1s9YTzjnnnHPOOeecc8455+/0Iz7//P43i1ju
+55/f87P79tbf67335bzFr5qP2X2z9rXO3955Omo9qe7LOa/nL+dv8Jjfuq/N
+Pj/Hdo3al1vPAa3tnPV7z54r+Lu8d173eu+8O/u7Zs8vzjnnnHPOOeecc845
+5/y3dOUxP/5tLd/rP43XxXz+Lu8dJ7PnVxZZOzOP6bPj/6p1JmtH67zm/A2+
+2/rJ+Qyv5sWq83DWnugxfdZ7+y2LVf12hH2cn/FR59Ws3tXrCeecc84555xz
+zjnnnHM+0o/4hPyqnnhd5tX9OP8tv3Uczp4XMXrHf0yf9d7+XNVvVXtiOc6f
+5Lutq5zP8NXn2Ni+s956Hs589Pknxup+bu2f3dZhPsdnzd+YrubXVe3knHPO
+Oeecc84555xzzv/ymI7ls3Kff37/m9Uzq538GR7zj7+7zZcssvnS6zFd+ez5
+srr/Y/s4f5Lvtg5z/lf+2f1otcf2jpqnVbnWc/Lo5xVjdf+3nk92W5/5Wu+d
+d6PWt93mC+ecc84555xzzjnnnPN7+RGfkP/zz+/5mffWU7WDv8ur8bbbfInR
+O19Gza/MZ8+7XZ/Lt/3D+Q6+2/rMn+0xv1o/774vzJ6nVblv+3n0c4+x23Os
+/IjV6za/1nvnezbfsutj3OU9hXPOOeecc84555xzzvlaj+lYPparPKvv809b
++ep6/kzfbV5U4znG2fnS6jF91rP6Rz3H6r67PMdR/Tz7uXP+b99t3ebP9phf
+jcPV6/m36//seVqV+9avGg8xVj/H6nesXrf5NT5q3vXOi93GP+ecc84555xz
+zjnnnPN7+hFHfuYxXXlWT7wuuw+/p8f8OB52Gf9Z9M6L2fOo11fNu92eb++6
+F9OjnzvnLb7bes6f4TF/132516v9KJYbvY9nMWofb/29V42fGLuNh1HvO3xv
+r8bv2XNdb/nV45lzzjnnnHPOOeecc875Xh7TMT7//P63tXzmve3h9/Ldxnnm
+WfyEcnHczvaqv6v5VXlW7yzv/b138SOy9S3mc/6N77bO8z095lfj56nr827z
+N6ZH+27rRhb2az7DY7pax3rXz975tXrd45xzzjnnnHPOOeecc76nH/FJysWI
+5bJ6svtm9VTl+D085lfjYbZnUY3bWd7bb6N8t3Gyet371qvflZXrXT85//ff
+GJz/ld+678TYbb0ddb69ylvPvbN91/EZY9V7zepxwvf03dYxzjnnnHPOOeec
+c8455/y3NH+3/yTjoyr/7TjMImvPKo/pq3y3+bvbOjZ7vMX06nHI7+W7rfN8
+rVfrUjVuqnru4r3nkLfu+9V1WXuv8ixGjYeY33oujdfxZ/hV42SXdZJzzjnn
+nHPOOeecc875Wo/pWD4r9wn1ZeWz+vkzfNQ46R23WVT1X+1Vu7Nys/wu42e3
+dXLU+DwimxdZ/fE6/k7fbf7ytR7zR++zd/Ejevthtre2c5X3vhesHucxetsf
+83cZJ3yNx3TlZ8+3u6yTnHPOOeecc84555xzzvfwI478zGO68pif1cef5TG/
+GlfZ+Myid9xe5VU/nZ1Hozxr567jZLd18lsfPV/4u3y3dZ6v9Zh/dp+6u2f9
+s9s8HXWunu27jfPWc2F23ep1m9/LY/rsvNhtneScc84555xzzjnnnHO+hx9x
+5Gce0/FvDM7/yq/K9Y7PVR7Tqz3r16z9q8ZD1c+7rZPfeu+82G2c87W+23rO
+r/HefWe3dW+3c+xuHtO7+qh1qar/2+eehfHGf/PZz323dZJzzjnnnHPOOeec
+c875Go/pymfXz/f0UeMti1H3jfUdf3/++T0/86rdWbldfLfxs2q83cWPaH2O
+veOZP8N3m6d8rFfRu6/tsr6tWj/vMn+rcrv72X0qe75Z+ei97cni7DhsbSe/
+l8d06zjfZT3knHPOOeecc84555xzfk8/IuZ//vn9bwz+DO8dP1nMHldZe6ry
+re25i2e/a7dxFfNj+3dbD2d5b/9kkT13/gzfbf7yazzmt67/u6xvo/yI1nPC
+bvO393e9zUf1z9n5FaO3PavHFR/jMX12XO22fnLOOeecc84555xzzjnfw484
+8jOP6fg3Br+Xx/w4Hqrrjhg1rs62p7Wep3rWP7uNt97xsHqdnOVH9D7fmM+f
+7bvNXz7We9eNUfU8xY9YPU9HzeuqHP/dR83HLHYbP3yOW4c555xzzjnnnHPO
+Oeecz/AjjvzeemKaP8uzqMZPq8c0b/OsP3cbP72+ej286zo8aj7yPX23ecrP
+eTZ/43Vn1//V69gsP2JU/+ziWfv5NX72ucTofT/abRzyv713Peecc84555xz
+zjnnnHPOe/yIT1Iu5vO9PHuO2XOvIo6D6vqsHJ/ru43DUeNk9Xo4y6/qn3gd
+v5fvNn/5WI/5Z8fDbuvbqnPpbvN39vrPr/HqecWoztut851f4zH99vWWc845
+55xzzjnnnHPO+TV+RMz//PP73xj8Go/5x9/s+WbR+9z5Ws+eV/bcdxu3Wfur
+8rutk7PW27PzPebzZ/hu85df473rPP9vP2L1/HW+eob3nq+y2G0c8jbvXWd2
+Ww8555xzzjnnnHPOOeecr/GYPlue7+lZ/CTPNXvusVw2Lvgevts47F1n+O/p
+WD6W48/23eYvP+dnx0PrvrzbOjbbj8j6Ieav9tZ1PuavPlfwvz177lU9MZwH
+9vSq/3dZDznnnHPOOeecc84555zf04/4JOViPh/jWf9nz6uK+Pyq67NyfC/v
+HSe7jfOYX7X/qX5Eaz+MXk/4PXy3+cvHeswfvf4/1e+2Hrau//zZXq0DWfSu
+A/yct64zu62HnHPOOeecc84555xzzu/pRxz5WfmY5t95zK/KZc+rqoc/03eb
+p9V6kvlu6+EsP7sOZM895vNn+G77FB/rMf/b+b7L+rbb+nn23JvdL9Y/an/M
+6ufP8N5xmEVWT3XfmM//21vXmWpe77JOcs4555xzzjnnnHPOOd/DjzjyK4/1
+xDT/O7/qz+r6GFU98b78GV6Nh3hd5r31jxqHvevMU7133cj87HrO7+G77Wv8
+Go/5o8fJbuvh3dbPb9vp/MZbvBrnWTgnjPGnrp9v9SPOruecc84555xzzjnn
+nO/gMb26Pfw7P+KTlIv5/HeP+VW5rP+revi7vHf+jlrPz47zrP3ftnNXP6L6
+vb392Vs/f4bvtq/xa3zUOhPTT1mHR+1Td9k3+Tv97HyPMWo9eaqfXTd2WQ93
+9SOqcV7tg/G6s+O/tZ7e3xuvN04455xzzjnnnHPO3+1HfEJ+bz1Vva3RW89P
+0Y74u6p6dnkuu/kR2TjJ8rPr3+JVf35bf8yvxj9/p2fztPJv1/9V7Vnlvf0w
+aj0525/83r7bfsfHesyv1sOsfLWexOtm7wt3WZ/P9kNWX3a/1vZw/o1X4y3G
+bvvdbr7b+rab965vs9fJ3n2zqidrX+t9Oeecc84555xzzjn/LT7//P43i6xc
+9N77VvXE/MzP1rPLc1ntR1Tjgf8dveOT82+8d53MxnO2PvTuC7uut9+2p3d9
+OLtPte6bvc+d38t32+/4WI/5o/eF3nXpqvW/9b6jvLf9uz1Hzmd6jLPnqLt6
+73xffY6d5Ue0roe95Uedq0c9r9HlY7ld34M455xzzjnnnHPO+RiP6cp/kuur
++44qP8pb7xvTVf1V+V2e+2g/ouqf3vF2F8/6p4qsXzjf0Xvn+9l6dtnvYv7Z
+9vfup9l9R/lV+yxf47vtj/waj/nVupSV7/Xe+nebL6P2Nc7f4NX6E2O3+btq
+/139nj7Ld9sHd9t/e33V+xHnnHPOOeecc845v8ZjOsanuK7ynyT/rb7Lcx/t
+R2TjIuY/zbPI+iemOX+T7zZ/z873bL+r6vt2P22tf/V+x9f4bvOFP9t73y/O
+lo/lRs2LrFxv+2e3h/M7e4xR82g3P7tu7O5HtK6T/G/v/T4w6r5Z/buNN845
+55xzzjnnnPNVfsQn5P/883t+r2f1Z+0Ydd+3eUzH8ruMt7N+RDV+7uLVfMwi
++/2c38lHzevedWN2e87ua63tP1ue85G+237Kn+Gj1vPdfHY/rJrvVTnOr/Bq
+fGYRr99tnz3r2bqxi8d2O1fM8VH7SExXz+vu45NzzjnnnHPOOed8tsd0LJ+V
++/zz+98YVf1ZO+P1/JzHdCy/yzjsHZ938Zhflet9jpxf6dn4XDW/Ru0jMb2r
+20/5Dr7bPsuf4U9dz0f3Q1Xf1etDa3s4v9Kr9SHGbvts7/672/t71u7d9p23
+ecyv1vPZ+wXnnHPOOeecc8752zymz3pWf7zu+PuTtINf4zEdy+8yPrP2jxq3
+sz2Lqnz2Ozm/wmfvF73jf9S60bservJR++9u+w5/hu+2z/JneMw/ux9l9Yzy
+2fNi1Pk5a9+q94tVz4vzHo+x2/4b09U6effvS/ycnx0/Mf+p45NzzjnnnHPO
+Oed8lR/x+ef3v1m5Vu+t/yf4UY5f628Zn6PHeRZZuzm/wrP5npW/ar5k7Ry1
+nsT79Hpv+0d57/p8th7Oz/hu+y9/hsf81nUyKxejdx/MfHY/rD6fZ/ft9dbn
+EvNXn5c4/81j7Lb/eh/nf+WfHf93GZ+cc84555xzzjnnd/MjPkm5mJ9Fdn2r
+Z+3haz2mY/ndx+cor+Lb8c/5DK/me3Z9jF6fvT5U943lZq+HmZ9tZ9Xf9lO+
+wlftv5y3+Ox9bbbH/GpfmO1Ve2J+b/9n9XN+B4+xer+etQ7stk7u5jG/Gi93
+aedu45BzzjnnnHPOOef8qR7Tlf8U13/CfbLyq/wu7dzVdxmHo7yKOE4439l7
+5281L7L6r96nqvbE/F09+727tZPzf/+NwTmf57u9D8b8an3Iyvfe92z5rNwu
+5zT+LI+x+jz57XzfzWefn2P6bP+Pqmf2ur3b9x/OOeecc84555xz/nu68ph/
+/P1J6p3dzqo939bT2z+ZV783Xr+rXz3ezo7PLLLnyvkZr+Z7vO7sOlDNg2r+
+9pZfvU9l7eGcj/fZ+zLn/H+H/fecZ/1ZleN8hsdY9d69eh2rrtvleV3tZ9f/
+zFv7edf9hXPOOeecc84555z/7jEd4xOu660n85/i+njft3n1HON1V/m346rX
+q9jlefFnezYvRo3z2b7b/rJ6HeP8jb7busQ5/9/RO39714Gs3lHnh9H7ftV/
+VflR/ZCV5+/2GHd5v+6dX3wPjzFqPGT3HbUvcM4555xzzjnnnN/Nj4j5n3Bd
+Vr7Xq4j35Wu9d/yc9dZxm42j1vGVXbe6n/la710Ps/GWjdvqvt+O81Hza1Q/
+9Lbz7O/inK/33nWAcz7Pe/fx2Z61Mys/6j23qj/LjzF7nRxVT1Zu1HjoHYdV
+e3qfV2v5p3uMs99zsnIxep8vX+uz94vd9rXV31E555xzzjnnnHP+Xo/pWD6W
+m+0xHf9+286sfr7Wz46fbFy0jp8qdumf2d7bn2fLx/xR87R6vq3tqX5PjFH1
+jKo/Kzdqv6jqj/lVu2f5bvsa5/x/+6h1knN+vY86J8w+L509/2T36z1vzD53
+tdYzqp2zf2/vc5l933i/1vu2tjOr/yqPcfa9I4tVv+vtPnudH/V+mvmq9u/2
+nZZzzjnnnHPOOef39ZhurSde3+sxXXlWz13az+d4jN5xUsXVv2vUPO2tf/V6
+MspjO1bVE6+f1f/xPtl9Rz2Xqp5Yrteredrbn9+2h3N+vVfrKeecf+sxf/Q5
+ZPR5pvWcOfu8N6o/e9u52/i5u5/9vtEbveM8XrfaZ82L2d7bz6PWjau+B85a
+H3b9vsE555xzzjnnnPP7+hFH/tnyvR7rj+VifvTq+hij+qe3/ur6WT7qufT2
+82w/28+90TreRs8L/t/pI3rrielZ7WltZ9We1vqrelrb31vP2ftyzvm3vts5
+hHPOOX+DV+8RrXHV96WnetZvvf3ZWr53PIz6vVU7Wr13nGf1zH6v55xzzjnn
+nHPO+Xv8iM8/v//NIpb7+ef3/Myzenq9+j2tXvVb1a6qnrP3ba2H/yeqcd4a
+veOBc8455/N8t/MG55xzvrOP/l6U1R/b0Xr92fZUvzeW4/fymD7r1X2r+XT2
+XLrb917OOeecc84555zv50d8knIxYrms/t56ej2rn9/Ls3HYO56zODvOs3pm
+zTvOOeec/2/f7dzCOeec7+B3+V5UlY8xqv1Vv8VyfE8fNV+yekd9j+Kcc845
+55xzzjkf5TEd4xOu+0mu7/XsvnxPr57vt+Mwi+y+MX12vF0172J7OOec8zf7
+bucczjnnfIbPfo8e9R4a05X39kMWq7+PHbH6XPQ2j+lv50VWX4zV85Fzzjnn
+nHPOOefP95iO5WO5qnzrfbN6q3J8rq8ah1lk4zDzmK58t/7pnY+cc875k3y3
+cxHnnHM+w+/yXhnTlfe2J/MsVn9PO2L1eYn/7TFd+W7zl3POOeecc8455/f3
+I478zGO68pif1cf38FXjMIve8VnVP2vc9rZn1fzlnHPO7+i7nZc455zzFl/9
+nph51p5Wj+mzPqqfs7h7P/OxHtOjx+eu851zzjnnnHPOOefXeUzH8rFc5jFd
+eXZfvtZXjcMsesfhqPGZ+d37edR855xzznfw3c5RnHPO+b+j2tfidXd/H4zp
+s97b/l7P4qrnEtvH13o1TlrH59n2XL0OcM4555xzzjnn/HqP6cqzeuJ1x9+f
+5H699+XX+OzxlkU2Ts566/js9dH9HMvttg6Mfi6cc875SN/tHMU55/ydvtv7
+XeVZO7/1mB7ts59jFld9J4m/c7dz11M9pqvxlpXvPa+uXgc455xzzjnnnHN+
+vR/xScrFiOWyerLyWf18rMf8+LxmjasssnEyymN6tM9+XqvXgez3Z+2M5Tjn
+nPMrfbdzF+ec82d4tR/F6+7mR4zel2N6tK8aD1mM/n4Sf+du5y7+e7oan6vn
+O+ecc84555xzzvf3I2L+55/f/8bgaz3mH39HjZMssvEz22N6tM9+Xqvn+7de
+/a5YjnPOOf/Gdzt3cc45f4bv9p51l/ey7L5VuW991TjJYvZ3tt3OY2/zmG59
+XrusD5xzzjnnnHPOOd/Pj4j5n39+/xuDX+Ojnlc2HrLI7jvbY3q0Z/dd9RxX
+rwOz1hPOOef8G9/tPMY55/xefvb9JSu/i8d2X71ft7Zntq8aV1lU5Vc9L97n
+Md26PmT177JucM4555xzzjnnfJ7HdFU+Xhf/ZuX4Go/5x9+fxnFwRFZ+tsf0
+Vd47X656XrusG6PWk1XjinPO+TN8t3MX55zzPT3mt+47sb67+BG9v3eUt7Zn
+Nx89rqrrjtjtfMXbfNTz3WXd4JxzzjnnnHPO+TyP6Sp66+F7ehbZ8431HX9/
+knGQeVbPbr5qnPe25y5+9vfGfM455/zfvtv5inPO+Z5e7S/xuqqemL+bHxH3
+y1X7ddae3Xx1P8Q4Oz6/bSc/5zFdPefd1g3OOeecc84555zP9yNi/uef3//G
+4Nd49ryy51vF1c83u+9uvur5Zu1ZvT58u55k5c+Oc8455/zff2Nwzjnn/47V
+70er/IjV+3VMP8Wr7zCt9WTXZ3F2nMfr+TmP6bPPd/X6wDnnnHPOOeec8+v9
+iJj/Sa6LHvOz+nibn31eWT1Z+dbnm7Wnt567+N3Gw1P9iDgOOeec83//jcE5
+55z/ld+678T67uJH9P7eWd77XN7mZ59vDO/X13r2XGM8dZ3hnHPOOeecc855
+u8d0LB/L9dbDz3nWz1n0Pvd4/+x5Pt2zcb7quWft2G3dGLXOxPzquXDOOef/
+9t3Ob5xzzvf0mN+678T6dvXY/qwfdtuvq3Jv97PjPMbo74H8d4/pylevG5xz
+zjnnnHPOOb/Oj/gk+dGr6/nv/pP0a/VceuvJ2tH6fN/mWb/tNk6q8rusJ5lX
+47v1uXDOOef/9t3Oe5xzzvf0LLLyu71PnfUjVu/XMc3neO/4322c3N1juvLV
+6wPnnHPOOeecc86v8yM+SX706nre51n8JM8hpvkc322c7LZunPUjqvmQleec
+c87/7bvt15xzztd6zI/lovfuL6vfp1r9iNbfu2pfrq7nfX72u18WV4+fp/su
+6wPnnHPOOeecc8738ZjmbR7zq3JZ+ey5VPXzPv9J8jNfNX52Wx8qP6J1Hsx6
+Xpxzzp/tu50DOeec7+kxv3XfifXdxbN+6H2P6+2fWC5rF9/Ds+ebxW7nwN08
+prPncMRu6wbnnHPOOeecc87n+xEx//PP739j8L+jKp/1L9/Ls3nUO0565+Pq
+9eFb7x3/VT9wzjnn//4bg3POOW/xmF/tL3d5X+v9vWf35W/bmbWH7+1ZjBpX
+d/dd1oG7+RFn+zmWq8bz277Lcc4555xzzp/nMV2Vj9dl9R1/e+/b2x7+t/f2
+89095lflqvJ8L181L6r2xPy7rANZ+2O69fdyzjnnf/mq8yHnnPNn+Nn3r97y
+V3v2e2N+6/777X1728P39Op9P8bZeXRXH73O3NVH9UPvujHqvln9me/W/5xz
+zjnnnPPn+RGfJD96Vk9W709RLqs/5o+67279P8p7+6EaB3f1apy31hPzq3HL
+13o13zP/dn6dbc9d1o1R6y3nnHP+l+92nuScc76n9+4jWbne71RVe6rf0bo/
+xnpmfwfr7f+YX/Ubv5dXzz3GbufJUR7TZ9eBu/kRo8fPVfvCt+vk058v55xz
+zjnn/Ho/4pOUq8r31j/bY7ry6vfu9ry+fb4xXfXD3T2LUeOH38vPrjNZvTHO
+rpOt9cf8s+twVs/Z+2b5MVbtC5xzzu/lvec9zjnnvMVjfiwXvfd9arf9tIrW
+fuC8x7PYfb6M+l70VN9tPR+1zmc+6j1lt+fIOeecc845H+dHHPmZx+tjZOVa
+vbc9q3235zjLs+d+F4/5VbmqPOffeIy7zJdR6//qdZtzzvkzfbf9lHPO+Ts9
++64Sr6v2r6x873eqrJ6q/lhu9n35Oz0bV1lU8y6WW+3Z74+x23fg2N5qveJ/
+e8z/dh3mnHPOOeec38+P+CT50X+SfP63x3Qsv8t4qH5X9ntirPKq/1vrifnV
+c+Tv9N55MXodbr1vVU92fe96Fa/jnHPOr/Rqf+Wcc86v8N73ppi+ys+2v/V3
+zf6exp/t1feTLLJ6Yv6qc2nVzt55961n7dltXd3Ne/tz1PhZ/e8FnHPOOeec
+83Y/ojrnZ55d33tf/nu6tT9nedWeLD+7fpa3tuOI3t/Ln+2zx+eo9TmmV/eP
+dZ5zzvnOPnt/55xzzlt81HeYUT67/Vft+633jWn+LK+ee4y7nFdnf+/dbZ18
+qsf8q9dDzjnnnHPO+XqP6bMe84+/o98v+N8+e/zE+44aP6PHYW/57Pfwe3v2
+3Gevh7337Z13mcf0aJ/dfs4553yGz97fOeec8xYf9R7X+11odvtHfYcc9R0s
+qz/mn+1//iyPsfoc2zqPnvpd96ke88+Ok6qe2eOHc84555xzft6PiOf5qlwW
+8fre9wt+zrPnMnv89I6TUV5F1i/8XV7No2/Hc2/9vfcdvW603jfmV/18Vfs5
+55zzM967v3POOef8f8du3y1nv+fyd3uM1efbb+fRbuvJXTzmV+Olt55V44Fz
+zjnnnHO+j8d05TH/+Fu9R2T1flsP/2+/ejyM8iriOOH8339750VVz6r1OWs/
+55xzzmuv9nvOOeecn/dV3yev+q6YtbP1vvxZHmP2eXXUd6RV60PWjt55N3q9
+yu7b663PJV4/un7OOeecc8758zymY3zCdaPq7/WfpN6zPqofRrWn1av+6R0P
+rfX3ehXZ/fi9vXd8nh1XvfeN11213mb35Zxzzvl57z0/cM4557zdY361/456
+L87ue9V7d9VPVTv5szzGVeM5uz7G7Pn+VB+9XsXorf9sOznnnHPOOefr/Yh4
+ns/KVfVk9bZ6bzuf6tn712ifNU5ax0dVP3+2Z+Otd1yNWk9G1Z/Nu+y+V813
+zjnn/I0+6lzBOeec83aP+dW+nJUfVU/vd7Cs/lXnlqzcqHr4HI8x6vvtqHnq
+O/xYH9XPq9bnzHf79yzOOeecc85n+BG95+SYP8qr+2a/q7Ue/rf39vNZz9oR
+I/MqdunPp3r2fKvn9W09o7x3fPaun6PWpbPrZMznnHPO+TyffW7hnHPOebuf
+/a4Vy4++b1Vfdv+qnb3tz2LU973R34Gz/Bijvhv31l+1b5XHGDX+q9itH+7q
+s9e33vuO8uy+u/17Geecc8455zP8iOw8HPNHeXXfrFyM3veR7L78O4/R+z5Y
+1ZfFLv0wahyOGudVf7bet7c9vfVk0Tt+ete3zM+uq1k7W9s/6rlzzjnn/Hrv
+Pf9wzjnn/D0e82O56KO/t3x739nfk7N6z34//LY/z36HmdXO0d+3Y4z6ntbr
+vf3ZW8/s9o/ys+Owd3xG723nqPegs/ft7QfOOeecc85X+hHfnrd7z+G9963a
+HWPUe0pvO1d5bz9n/TDqefV6NT6/bU/vOKnaGfN7+7N3HM5uZ+/8HTXeVq1L
+q+/LOeec8+d77zmKc84555zzHTyL3c7bozymq/P8qH93OPu9d9R9Wz1rT69X
+/dnbzt5+4JxzzjnnfKVn5+Hec3JMjz6fn21naz9k7entt1HvR1l7RvXPbp7F
+qPdHzjnnnHPOr/Tdztucc8455/zZPvu7dBaj7sv39JhuHRet5UePZ84555xz
+zu/oR5w9n486z/M9vXdcVdE6HmaPZ84555xzzr/x3c7tnHPOOef8Xh7z4/kz
+Xtf7PXbUd/uq/tZ2Vu3P+iHm82v92+eYlRt1X84555xzznfw3nNvTJ89D1fn
+cj7XY/7Z51i9Z8XoHVet9Vbt6X0frN77OOecc845/8tXnfM555xzzvmeHvPj
+eTJeN9rj/Ud9p61+b4yrfu+3/cDHekxX5bNxtXr8cM4555xz/o0fUZ17s3JZ
+eX6Nrxo/WYx6L9utH7J29v5ezjnnnHP+bB91zuecc8455/fyVd9pq/bEcr3f
+aTPv7Z8sfNd9tsf02XF1dvxfPR8555xzzvk7/Ih4Hm4tH9Nnz8l8rMf81uf7
+rWex6v0r87Pjf9V85Jxzzjnnz/TecyznnHPOOb+X3/07ZEyf9VH9mcVV373j
+79nt/eIp3tv/reV76+Gcc8455/wbP+Lbc2lv+ep63ucxv+r/0eMnxqj3r5g+
+6739uWo+Vu2J5TjnnHPO+TO897zKOeecc8739OocGK+7yrP2tHr2e6ty0Wef
+h7O4e//z//befl713DnnnHPOOT/jMX22PD/nq557FqPep6r7ZeWi99Z/l/6v
+2hPLcc4555zze/mo8yrnnHPOOV/ru33Pn32OjemzPvu5ZHGXfuZ/e0yfHVer
+5ynnnHPOOX+2H3HV+ZaP9VHjIYtV7029fpd+XjV/Oeecc875nj77HMs555xz
+zs95zK/Ob0/9ThjTo331842R9XPvONntveOpHtO7z1POOeecc87/7UecPd/y
+sR7zj7/Ve0pV3xG7vTeN8tnP5S7zdNXz5Zxzzjnnf/vs8yrnnHPOOf/be7+/
+rf4eWP2+q86x2X1H+arzcxZnx1Usx+f4qHmxy7zmnHPOOefP8OycGvOrc2l1
+3uVjvPd9JIvZ70G942qUz+7/7L53mddVPfF6zjnnnHN+jc8+x3LOOeec8789
+5ree62J9u34PjOVme0yP9lHn6t5+zsJ31z09pqtxstu85pxzzjnnz/Ijzp5X
++TWePccsRo2HzKt2ZOW+9dX9H8utnr9Zf2UR+3H2+y/nnHPOOf/bV51vOeec
+c87f5jG/Oo/t9t1v9vfes149h5g/y3ufe+/vquqPsevzeovH9FvmO+ecc845
+39OPOHte5ee893llUb2PZM81i/i8e8fJbO/9Xaue165+RGs/x3zOOeeccz7W
+Z59jOeecc8757/nxnBave4ofcdU5tir3NK/6IYtsHMZ8/p33zovd5i/nnHPO
+Ob+3x/TZ8vycx/yqXPa+UNXzNM/6Yfbz2m3+jvIjWvuZc84555yP9dnnWM45
+55xz/rdX57d43d38iKvOsVW5p3nvuMpi1XN8m1fPa7f5yznnnHPOn+FHVOdS
+fs6z/s+iqicrlz2/p/mqcbt6nn7rveOKc84555xf47PPsZxzzjnn/D9RndPi
+dXfxI+L5cvY5Nrsv/9uz51fF1c/37l6tA9n8yurfZb5zzjnnnPM9fdT5M6uH
+/55flfM+O9ZXPd/d5vvo9SGW45xzzjnnY332OZZzzjnnnP8ner/H7vYdL/Oq
+/TF/9jm2Ksd/92p8xuj99x3e5rvM66f6Eb3rVTZ/YnjunHPOd/ZqX4wxan+M
++fbBa733ufP/RHWebK0n5mfPh//3397vAKO8as8u87r3fefsOs8555xzzsf4
+7HMs55xzzjkf673/PjLas/bF8+XZ9mf+bXv4Oc+eYxa7ve/cxav5Mnte7+69
+60lMXzUvRq1vZ++7y/PinHM+x4+o9qne/fQp++xuz2uXcdL73Pnf4T30Gq/W
+gavXt972rHoP4pxzzjnne3rveZVzzjnnnJ/zmN96fov17fbvEbN/76h+5td6
+jCx/t/ej2R7Tq+fvKj+itR965/uo8r3jNqs/81W/d7fxwDnnb/MjsvU55veW
+771v5qPOb1n9q37vbuNh1XjrPf/c3avxlkXrfOFj/ez7V1ZvFt+uM6u+t1z1
+eznnnHPO+RjPzmmcc8455/wan/3vEdV9Y/6o74Qx/2w7ez27L7/Gq38PirHb
++9Fu71+rvv+P9iPOjp/d1u3R639rv40ab6vHA+ec8/9Onz0nrNpfdvWqn96y
+Px4x+lx6d8+id/zwa3zV+tBbz+h5mvVLFr3rW3ZfzjnnnHM+16vzKOecc845
+X+Nnvx/G8qvOmVm05sdy/NkeY7f3ptHzIpu/WT3ZvN7NY/t3W1fvtp7H/FHv
++6vHCeec8/9Oj943s3p3e1/Yze++b/aOh93OS6PHfxbZ7+fP9FHfK2b73b//
+cM4555zzv33VOZNzzjnnnJ/z3u9vMX2VV+2v6otxdfv5Hp5FLL/be9ZZz+b1
+bh7bv9s6eReP+dW8eOt445zzp/lT9pG3eNb/u42r2eNt1/NSb3n+TD87f2P5
+2e3M/Ow6E+vjnHPOOed7enbe45xzzjnne3rvd7mYHu1ZO7Pyo74r9raT38ur
+5x5jt/ess57Ni1Ue27nbenh3j/ln58VTxhvnnL/Fn7KPvN2z5/LU8bb6vNRb
+vnVe8Ht57/jJ5kVW/27fVUZ9P+Gcc84552u99xzLOeecc87v5aO+Q569byx3
+9t8XsnpaPab5Mz3Gbu9fo+fFt57FbuvY2zzmV+N/t3HFOef8nF+1L/C5nsVu
+42o3r6J1/PN7+ajxM2pejPr3tazc7O8enHPOOed8Tx917uWcc84557zFe7+X
+xvpaz72xnqzerH7+LI+x23vZqn+n85441ketS73r1apxdbY9V7eTc85Hr7dX
+t7NqT8wftR+tPhfd1av+3H38z/Yqsn7k9/bZ7++j3oM455xzzjmf4dn5lnPO
+Oeec8xk++t8d4v16z71VOf5sj7HqvSxr5+j5kt0vxlN9VP+MKt/r8T7VOMnK
+r+r/rD1n59GsecE5399Xrz/fetWeb9f/0efqUeV763mqz5oX8X677PtZZO3j
+z/RR/z616nsC55xzzjnn33jvuZdzzjnnnPNvfNW/U8w+P1fl+L08xur3uG/H
+/27rQO88yvonK7/KRz33qv6qX6txvZuPWoev2kc459f7EWfXt9X7eKvH9Or1
+P6t/lY86P+zqdz3vVbHL+OHnfPa/K83eR+6+L3DOOeec82f4qPMz55xzzjnn
+LT7qHBvTsXwsl3lVT2t7snqrcvxeHuOq97jW8XyX976Yv8vz3cWr9bP1uY+6
+76rxcNV84Zzv66vXk289a0/mq9b/t/ldvs/Pni9n51cWuzxffs5HvUdU9beO
+56yeUeN5t3WAc84555w/20edYznnnHPOOZ/hvf/elNWTlR/17x1V/TG/93xe
+leNrPcbo97hvx+eq+cj/9tHrVXX/qv5en72+9dbTO1845/fxI65aT1atn73r
+W2/9ve3kv+cfcdX3/Nb50jueq3GexS7Phf/n7+z1bdT47K0/K796PnLOOeec
+c37Ge8/nnHPOOeecv9lH/Tta5bH+Uef8rFzv93Pe5jHOPt/W8TNqnMf8Xfrz
+rn52nZm1bmTtHOW943lUPZzz9/ioc86qffBt+8LbfPT3/G/nRTXOs9ilP+/i
+o845vc9x9rpR1R/Lc84555xzzv+3jzrnc84555xz/iQf/b065mfls3p7v6v3
+1tPbnqr+mN/bn733vZvH6O23LKpxmJXbrX+e5mfXmdb5MspjerX3rttZPWfX
+Jc75eB89f7N677qO9fqofSSm+RyvnmO8Louz8yuLXfpnlPfOl951KfOz5/ms
+ntZ5Pao9o95zd/v3L84555xzznfw6hzPOeecc845f77H/Pg3Ru+/a/T+O8Ls
+35u9H2Xtucqzdrb281Xt/PZ3ZeVnv/9W7fx2HI7696necXuX7wa9/ZO1Y/a6
+V7WTc177EbPW+az+2evzbt9XR7VnVP9U7bj6vFe1p7f81V71f+vvmd3OzFed
+Z7L2nB3n355bdvv3IM4555xzzvn1/gke8znnnHPOOeecr/EqjuuOv7u9b97d
+Y3p1e3bzbNz+JPmj+j/zUfOuamf2uzh/o5+dR60e06PXgd71ardzwurzyax1
+mP+eX5Xb7ZzAOeecc8455/y//8bgnHPOOeeccz7Wszje1+J12Xtcbz3x+uPv
+bu+nnP/bY7ryUfO09/tJNX85f5If0TovYvm7rAOcz/CYH8d/6/mxdz/KYrd9
+n3POOeecc86f6p/gMZ9zzjnnnHPO3+4x//j7E9JHnPWsHfG+VTtjzG4n5zO8
+dz5m3ju/qnaOmkecP8F75+nseb3b+YE/20fNoyxGnQ9Ht7N33+Scc84555zz
+t/sneMznnHPOOeec87f48d4U80d5vP/xN3tf6y2f3S+L3X4v5795Nt5i+d75
+nsXsecH5GzyLUd8ts/vudq7ge3rMb913rp4Xve3f7feuPj9wzjnnnHPO+S7+
+CR7zOeecc84553x3r+K47vj7E9JHXOWxXZln7c98VL+t6p8jsucV8zn/zVvn
+XUyfnUer1xPOr/Qjzu5fvfNot/MG39Nj/urzXha7nQNX90/V7lhPvI5zzjnn
+nHPO7+Kf4DGfc84555xzznfxmH/8/QnpI1Z7bG+vx3Tlo/s5xqr+zNq52/s1
+v5fH9Oj5VbVnt/WKv8tHrasxfdU+xd/pu62rWdxln6r6eZf1KrZ39fmBc845
+55xzznv9Ezzmc84555xzzvnVHvOPvz8hfcQqr9oZ83s9q7/XRz+XGKv6P2vn
+bu/d/F4e01X5UfNrt/WNP8uPODsvevfr3c4V/F5ejc9V573edrZ6TO9y3sv2
+wV3Wt6qdMZ9zzjnnnHPOV/kneMznnHPOOeec81ke84+/PyF9xK5+RGz/tx7T
+Z/2q5xhj1XM5IhtXMZ+/27P5k0Xr/Oq9L+dXeu+4jenR84u/02P+6nUyC+e9
+/8Ru65hzIOecc8455/wu/gke8znnnHPOOef8W4/5x9+fkD7ibn5E/F2tXkXs
+t15f9T6YxeznkrVnt/dxvre3jrd4fTW/Vq9XnP/bj2jdR75dhzn/d4xah8+u
+273t+dZ7z8lnPav3W1+9Xo167q3nZM4555xzzjkf5Z/gMZ9zzjnnnHPOW/3s
+e0qsb1fP2j/LY3q0rxonWVz1vHZ5vvwZHtOj59fqdY/fy4/YdTzzd3o2bmev
+e1nstl+M8t2e725+9nfFcpxzzjnnnHPe65/gMZ9zzjnnnHPOZ/nxnhLzV3ts
+92yP6at8t/fELHrHT1V/az9w3uIxXXk1nlvrX71O8jV+xKxx1Vs/5y0e81vX
+29ZzWha7fW+vys3yVc99t/Vzt/MD55xzzjnn/D3+CR7zOeecc8455zzG8X4R
+8+/uR3xC/uz3suy+qzzrn1XjKovedsb8q54vf4f3riffluf8t5g13nY7h/B7
+ecz/dl2NUc2XrP5R3jq/Vvnq57vLOjnaj9jlHMI555xzzjnf1z/BYz7nnHPO
+OeecZ3HkH3+r95FY366etX+Wx/SunvXb6nEYY7f3bv5sj+nWdS+rf7f1kN/b
+s/UzKx+vy/aHqn7Ov/EsVq//rfNlN1/1HHdbD3vXyZi/+rzBOeecc845v69/
+gsd8zjnnnHPOOY9RvXfE6+7mR8TfNctj+m7eOx6qelqfV9XOGHcZD/zZHtPV
++K3W4d3WT36NH3HVeOO8xc/u41nMOidk5av27XLu6vW7jIfdvPpdsRznnHPO
+OeecZ/4JHvM555xzzjnn7/XR7yPxPqv8qt/7rcf0U3xU//fWn8VTxw/f02P6
+2/myy7rKr/UjRo8rzv8do851WYza33vbn9V/d3/q+Fn1XjD693LOOeecc87f
+65/gMZ9zzjnnnHP+Xo/5x9/qvSPWt5tnv3e397WY5m1+dpzHyMZPdt/dxg/f
+02P67Hi++zrM//be5x7To9dJ/k6P+dU6k4XzzzW+2/i5+z51dl7EfM4555xz
+zjn/BI/5nHPOOeeccx6jeu+I193Nj4i/a7a3tiemeZv3jvMsVo8T/mzPxnGM
+1eskX+tHnB0/nH/jWfSuezHN27x3X1g1Tlavk9969btiOc4555xzzjnP/BM8
+5nPOOeecc87f68d7RMzPPNZ3/O2tZ7ZXvzeWu8pb+5Of82qcxOuq+mP0jreq
+nTGfv9NjuhqPu623/Ds/4ux44O/0mP/tOaS1/t51KauHn/Pec8hs7x1vqzy2
+79t2xvo455xzzjnn/BM85nPOOeecc87f6zE/lotevY/E62d71c7e8jF/9ntZ
+VY6v8ep5ZTFqHvF3eUyfXTdWrcP8bz+idR3Iyu92fuBrPea37ncxeschX+ur
+vv9X7eld965eh0fNo93OD5xzzjnnnPN9/BM85nPOOeecc87f6zE/lotevY9k
+18fIyvf6qN979v2rtZ3ZffmeXj3feF0Wu30f4Ht6tU721v/tusrHeu8+5fse
+/8az6D2PxetW78v8b3/q+bn3PNb7e2N+az9n9+Wcc84555y/1z/BYz7nnHPO
+Oeecz/LR7zvxPpln7Yn5q+/L9/Te8VnVHyMbP1X51vbwZ3hMV+Ord73i1/oR
+Z58vf7Zn0btfxPucHVdZPXxPf+r5udd328c555xzzjnn7/FP8JjPOeecc845
+5zGq946qvpgfffR7UHa/GL31jHrPGtVv/F6ePe8szo5b/kyP6dZxla232frG
+x/gRrftdVn638wC/xqtx0lt+l32Qj/Xe82rvOXb2uXrUfIn5Z/vNuYtzzjnn
+nHM+yj/BYz7nnHPOOeecxzjeL2J+9t4R06P9Lu9H1f34Oz1GNr/Olp81X/ge
+3roOn62Hj/FR++xu5wF+zmN+NR+z6C2f3Ze/0+/y7w5Vvd967zq8et/nnHPO
+Oeec388/wWM+55xzzjnnnLf68d5RXRfzr/aq/fG6Ve3k/K/8Knrn427fK/g5
+j+nWdS/m8zl+xNnnxe/lMT/O39Z13fmE7+zV/hKvW9XOzHvXbc4555xzzjnv
+9U/wmM8555xzzjnnrV69j8TrMo/Xx/zoV7WztXzWTs6/8d73+ix2+y7Bx3pM
+V+Nk1LrNf0/H8lm5b/c1fi/P4uw6v8s+xZ/hZ9e3b9fD3nUy89nrNuecc845
+55z3+id4zOecc84555zzp/nxfhTzK4/19npMcz7Cz463GNn4770vX+tn18Os
+/t518u1+tp+j77Zv8t/zq/lSRayn976cf+Oj5sWqczXnnHPOOeec38U/wWM+
+55xzzjnnnD/Nj/ejmH/W4/16PaY5n+nZvMiimkexHN/TYzqWH7Ue8t/9iNb5
+yPf0an71lt9lX+DP9tHjf9Q6Ge/HOeecc84550/1T/CYzznnnHPOOedP8+P9
+KOaf9Xi/s179jpjP+Rk/Ow5jrJ4vvM9jOhsvMbLxM2r9vKsf0Tq/svK77Y9v
+87PPvbWe3vnF+TfeOw5nzxfnAc4555xzzjn/778xOOecc8455/zuXr0fxet6
+PdYb68/u+217svtyPsOz8ZfFbt89+H/7t+seH+u77Zv878jmV0xzPtNnrzOj
+7tvbntX7I+ecc84555zP8k/wmM8555xzzjnnd/WYf/z9Cekjej2rv7pvzM/q
+7/1dnM/ws+Mwxm7fQ/jv6ep5jlo/n+JHnO1PvtaraN3Hs/Kcz/BV58nZ5+fd
+9kfOOeecc845H+Wf4DGfc84555xzzu/qMf/4W703xfp6PWtP73tZVY7zO3qM
+UfOIn/OYrnzUOnl3P6K133bbH+/uvft4Fbutk5yf8d5z5qrzcNa+3fZHzjnn
+nHPOOR/ln+Axn3POOeecc86f5jE/los++72stz2c39Gr+Rhjt+8nb/Psef0k
++W/1I6p+49d4FvZf/ma/at61tme3/Y5zzjnnnHPOZ/sneMznnHPOOeec86d5
+zI/lZvlPUm70e1/Wjiyu7gf+Ts/GZ1VPjKvm0dt8VH9m9dzVe/eXUfXw/0S1
+bmQxav3hfKSPOr+Nnke79QPnnHPOOeecP80/wWM+55xzzjnnnL/Fj/em6rrj
+b1a+t/7KY729HtOc38GzeZTFbt9bnuK969Xbfbd97e6ehf2OP8lHzZfR58zq
+/q37RVY/55xzzjnnnL/FP8FjPuecc84555zzMV69r8Xrznpr/Vk7Y352Hec7
+eoyz8+XtHtOVj17HdvEjWvtht31nN6/6OYvd1hnO//JR57FR61hVf9ZOzjnn
+nHPOOedj/BM85nPOOeecc845H+Mx//j7E9JH9Hpv/Vl5zu/o1byLsdv3mbt4
+1s+j1rFd/YiqH/jfnkXWzzHN+Z191Plt9Pkw5nPOOeecc845H+uf4DGfc845
+55xzzvlcr97j4nWVV/drvW9Wz+ef3/9mkZXjfAePcXaevsVjuvKz69jVnrU/
+8932kd32ryp2Wwc4/z8x6vzTOg+q8r3rmP2Lc84555xzzvf0T/CYzznnnHPO
+Oed8jcf8WK7Vs/p/kvyz75tZO7L49ndx/o1n4zaL0fPlrh7T364zu/kRZ3/v
+U33UfIn3Wb0O8Hf6qPPM2XUvu3727+Kcc84555xzvsY/wWM+55xzzjnnnPO9
+/Hi/i/mj6sk81nf87X3frMpxvtKrcRtjt+88V3nruvFU321fmO1ZZOMkpjnf
+yUedW86uJ7G+s+ttbz2cc84555xzztf4J3jM55xzzjnnnHP+Lj/eH2P+WY/3
+G/XempWvrud8hsfY7fvPVT5q3djFd1ufZ3sVu807/kzPxufs79u7nX8455xz
+zjnnnD/DP8FjPuecc84555zzd3nMP/7+hPTZ8pXH+nrfZ6tynF/prbHb96Je
+j+lv14GrPWv/buvz2fW8N3abR/xdPuo79qh14Gz5mM8555xzzjnn/J3+CR7z
+Oeecc84555zz/xPHe2XMH1VPb/0x//g76n05q5/zHm+N3b4XjfbW+b7Kd1tv
+R/nZ2G0e8Xv46HEb6x29zmT19NbfWw/nnHPOOeec83f5J3jM55xzzjnnnHPO
+R/rxflpdd/ztfZ/N6h/1vlyV4/wbj7Hbd6Szns3HXXy3dbLXq9htnPN7+6jv
+zL37dTX+s3a21s8555xzzjnnnM/wT/CYzznnnHPOOeecX+Gj3lt/kutGe2xH
+5dXviPmc/xW7fV/KPIur5mnVjiN2Ww9b251dt8u45Xt5Ni/uvs9W7Wyth3PO
+Oeecc845n+Gf4DGfc84555xzzjl/ssf8+DfGT5KfeVb/qPf3qhx/tsfY7btT
+5a3zaJTvtv5UzzOL3cYhn+ujvutW9ffOr+x+3+53nHPOOeecc875k/wTPOZz
+zjnnnHPOOee89uy9O6aPvz///F4u86qemF95a/38nh5jt+9RveN/lO+2blSx
+27jifT5qHPbW37vO9+5rnHPOOeecc845b/dP8JjPOeecc84555zz6zx7f4/p
+4+/PP7+XO+vxPr3fE6pyfK3H2O171OzxvGpeV7HbOHm7jxo/o8Zz1o7efYRz
+zjnnnHPOOefX+yd4zOecc84555xzzvn9PObHctGzen6K67PysVzmve3JyvPv
+PMbs71FZe7Lx1utZ/VfNuyx2e+539VHrydl1LBuHre3JfLfvxpxzzjnnnHPO
+Of/eP8FjPuecc84555xzzt/rvd8TfpL86ntF1a7W+8brsnp4m8e46vtVNn5a
+ffa8qGK357i7j5rXveOhd73qbSfnnHPOOeecc875J3jM55xzzjnnnHPOOb/a
+Y378G6P6HhKvG/X9pCr3VI8x+vtV9rxaffQ4zGK35zLLR31X7H1e2X1728k5
+55xzzjnnnHO+yj/BYz7nnHPOOeecc87507z6fhKvG1V/TD/NY4z6TpU9l1Hf
+u6rYrZ+/9bPzIvPW+bLbd1HOOeecc84555zz2f4JHvM555xzzjnnnHPO+Rqv
+4rguXr+bxzj7XSu7Xwz9yTnnnHPOOeecc8538E/wmM8555xzzjnnnHPO7+3H
+d6GYn30viulZnrUzXpe1v6ovi1m/a1T/c84555xzzjnnnPNn+Cd4zOecc845
+55xzzjnn/C8/vjtV18X8zEdF632z9u/2HY9zzjnnnHPOOeec38s/wWM+55xz
+zjnnnHPOOedX+KjY7fsb55xzzjnnnHPOOX+nf4LHfM4555xzzjnnnHPO//KY
+f/z9CekjMh8VZ++btT/mc84555xzzjnnnHPe4p/gMZ9zzjnnnHPOOeec39tj
+/vG3+o4U6xvlWWTtien4tzVm/67R/c8555xzzjnnnHPO7+2f4DGfc84555xz
+zjnnnK/xLI7vPPG63TyL3u9XMR3/xtCfnHPOOeecc84553wH/wSP+Zxzzjnn
+nHPOOedP8+w7SUzHv9/W/5PUd3fPYtR3qqzcqO9dWezWz6P87LjNrm+dL7t9
+F+Wcc84555xzzjmf7Z/gMZ9zzjnnnHPOOef8aj++Y8T8qnxW7hPqG/X9JGvn
+Uz2LUd+pYvqsjxqHWez2XK7yI872c3Z977zubSfnnHPOOeecc875Kv8Ej/mc
+c84555xzzjl/r/d+T8jKZfVU5bNyre3M6uF/exazv1PF9FmfPS+y2O053sVH
+zetYbvR6dbadnHPOOeecc845f69/gsd8zjnnnHPOOeec38+P7wAxP/Osnpgf
+/2b3jddV3tqe3t/F//YsrvpOVY3rbFxU3juuRnkWuz33p/gRo597Vn9Mnx3n
+Z38X55xzzjnnnHPO7+ef4DGfc84555xzzjnn13n1Xl/VF/NbfdT3hKydfK1n
+sdv3qKrct+N51bzOYrdxwv/bjzg7fqrre8dzVi7Gbt+fOeecc84555zzN/sn
+eMznnHPOOeecc8557dX7eFVfzI+e1dP7HeBs/fwensVu36Ni+irfbd3IYrdx
+xc/5Ed+Ow9n7yNl9jXPOOeecc84557V/gsd8zjnnnHPOOef8yX68L8f8rHzM
+z647/mb1j3p/r+rnz/QsdvvulHlMX+W7rT+tz/WI3cYhv9aPODueq/Wkd1+L
++aP2O84555xzzjnn/En+CR7zOeecc84555zzK3zUe2t1/bfe+95d1RPLcd4S
+u31fqsZ/FrPmaeVZO3b3LHYbt3xPPyLOi7vvs73nCs4555xzzjnn/Er/BI/5
+nHPOOeecc875SI/5x9+fkD6i9322qj/m99ZftZPzM57Fbt+Rej2md/Xd1smz
+62qM3cY5f5YfcXYeZdeP2pd76+ecc84555xzzmf4J3jM55xzzjnnnHPOf8uP
+f7+tp7f+nyR/9Ht0Vj/nf3lv7Pa9aJTH9K6+23o7et1ujd3mEb+Xjxq3vft7
+TFc+ah3bbb3lnHPOOeecc76nf4LHfM4555xzzjnn7/Lj/bG67vjbW76qJ+b3
+vs9m7eH8Su+N3b4XnfVv14FVnrV/t/W513tjt3nE3+1HVPt+Nf6/XQd6y69e
+hznnnHPOOeec7+Wf4DGfc84555xzzvm7PObHcq0++721qidex/kMz2K37z+z
+Paaf4rutz1et/zF2m3f82d677z/1/MM555xzzjnn/Bn+CR7zOeecc84555zv
+5TE//v22nsx/knK975tVPZyv9Gq+xNjtO89sj+m3+m77wlX7Toxq/Owyrzn/
+zY84e26prs/OUTG/d73dbV/gnHPOOeecc/63f4LHfM4555xzzjnna/x4j4v5
+vZ7VH/OPv73vlVk9s38X59/4EdV4rcrv9p3nKv92ndnNR/3ep3rM/3a+7LIO
+8Hf7EWfPM6PPV7N+F+ecc84555zztf4JHvM555xzzjnnnM/17H0tpiuv6mm9
+b+VZO7L6Yz7nO3gWvfP0rd7bz63r2Crv/V277SO77l9Z+V3WAc5/8yPOnn9a
+95vW8q3rmP2Lc84555xzzvf0T/CYzznnnHPOOed8jB/vZdV1Mb/Ve+vPynN+
+R8/GfRa7fZ+5i1f9/O06tpv7njbWs6jG4S7rDOff+BHfnt96vWpnvI5zzjnn
+nHPO+Vj/BI/5nHPOOeecc87HePZeFtNnvbf+qp0xn/OdvYrW+cL/23v7/9t1
+bDfv7Yfd9p3dPOZX5XZbZzjv8SPOnsey8r1enffidZxzzjnnnHPOx/oneMzn
+nHPOOeec87d4zD/+/oR0Vb63/uq+Mf+sx/txvrNX8yjGbt9b7u4xzdt8t33t
+7p6F/Y4/yUfPl2/PmVX5ql2r9y/OOeecc845380/wWM+55xzzjnnnD/Nj/ej
+mD/bY7uOv6Pe77L6d+sH/k4/Ihv/WfksZs2jt3lMj67n7t67v4yqh/+eX5Ub
+tf5wPtOPGL3+9M6j3fqBc84555xzzp/qn+Axn3POOeecc86f5sf7UcyvPNY7
+2nvbw/mdPJuPWez2/eRtXj2vrNxb3He2PT0L+y9/s8+ed7ueqznnnHPOOed8
+F/8Ej/mcc84555xzflc/3oNifvZ+FNNnvWpPVV8sn7Wf8zt5Fd/OI/6d9z7H
+b9fJu3tvv+22P97dz+7jWT27rJOcj/Ajzu6n1fWtXt23tf2cc84555xzfnf/
+BI/5nHPOOeecc35XP96Dqutifqtn9VeetTvW3/u7OJ/hZ+dXVj7Wy/fw1uce
+88+un3f3Uf3J13oWvfv4bus2f4cfcdV5Mqu/18/OL84555xzzjm/q3+Cx3zO
+Oeecc845v6tn70ExfdZ/knK972Wj78v5SM/mVxa7fffgv6f5Hr7bvsn/jmre
+7bJu82f7EbPWmVH37W3Pbvsm55xzzjnnnI/yT/CYzznnnHPOOedP85gfy7X6
+qPeyqv5YjvMRfkTr+M/i6vnCv/PsOcXIysfrzq6fd/fe+dXb//waj/mj18Pe
++cX5N35E6zi8ar44D3DOOeecc87f7p/gMZ9zzjnnnHPOn+YxP5Zr9dHva/F+
+nM/wal7EyMrv9n2Dt3m1Xp5dD/nf3jsf+Z6eza8s7Pt8Bx81/mP+t+thzOec
+c84555zzp/oneMznnHPOOeec86d5zI/loo9+L4v343yEH1GNtyqy8d97X77G
+e9fDrJ6qXv679/az73X38mpdrZ5fVU/vfTn/xkfNi5hfrZO77Zucc84555xz
+Pts/wWM+55xzzjnnnLd69t4R05X/JOUyn93Os+Vb2895jx+Rzacqdvsuwed4
+6zo5at3mv+cfMep58Wd4Fr3r/Or9iD/Tj2hd33rLj9rXett/VTs555xzzjnn
+PPoneMznnHPOOeec81aP+cffn5A+YpVn7a/ep3ZpP3+nV/Mui975GK/j9/Te
+8RPHCR/ro54Xv5dnzzdeV81P5xO+s1fjP5bbrf2xfbvs45xzzjnnnPPn+Cd4
+zOecc84555zzLI7842/1PhLrG+3ZfVt9dr9d1Q/8Hl5FNS6r8rPnC1/rMT26
+Hj7WR+2zu50H+Dmv9oVv1/8sdtsH+R5+xOh9avZ8GeW96/Bu5wHOOeecc875
+/v4JHvM555xzzjnnPEb2fhHTx9+ff34vV3msr9ez9oz+XVl+jMyr+nv7jd/D
+q/EQo3fc8nd467jKysfrqnWPn/Oz+13r8+XP9up80lp+t32Qj/UjsvUn5vee
+Y7NyZ8dtaz1n58u3/ebcxTnnnHPOOR/ln+Axn3POOeecc85n+aj3mpiuvGpP
+zF99X76nH9E6brPnn0U1br5tD3+GZ+tOFq3rFb/GRz1f/myvone/+HZcrd5/
++Tk/4ux6dXY8zLrv2XEby3HOOeecc875bP8Ej/mcc84555zz9/rxHhHzK8/q
+/fzz+98ssnKtPvr3xut7f2/mZ/uZr/EjsucY87PY7fsA39Or9aq1nqpevsbP
+7lPVfap6+Ds9i97z2G77Mv/bj5i9LmXtidfP3qdGvY+Meg/inHPOOeec80/w
+mM8555xzzjl/rx/vETG/8qzeT3LdLM/a2Vt+1XvZ2f7ncz17XlmMmkf83d46
+DnvXPb7Wz64DreOBv9N7950sesch38OPqM6Zs8db1o7d9qlR82j1OYFzzjnn
+nHO+r3+Cx3zOOeecc875ez3mx3LRf5JyvfXM9qx9q97LsnZm/cnP+RFZP8f8
+qp4sesdb1v6sPfydnq0XWeyy3vJzPmo88Hd67/4S09X6Mmpd2u2ccHc/ovUc
+ctU4zMrttt629mdVT8znnHPOOeec80/wmM8555xzzjnnMbL3i5i+m696Lzvb
+nng9/9t7x3kWu73X82d4TGfrVoxd1k9+jY8aP5x/41mcXQ93OSfcxXv3hdXj
+ZJf1s9ez37Xb+YFzzjnnnHO+v3+Cx3zOOeecc875e/14j4j52ftFTO/q1e+N
+1632rP/57947zquI46Z3XnD+m387nu++DvO//ew+NWud5O/0bPzE66r91fnn
+Gt91/GTldllvM++dF6vPFZxzzjnnnPN9/RM85nPOOeecc87f66PeO2J6tc/+
+vaM9tvfuPrr/W+uv4qnjh+/p386XmL96XeXX+Oxxxfm/Y/S5rrX+UePW+Wqt
+3/29YPR445xzzjnnnL/XP8FjPuecc84555zHyN4vYvpuvvp9Lbbvbn5Eaz9X
+4+7berK4y3jgz/Zs/MWoxvcu6ye/xleNN85bPOa3jvMYV50TYvms3Orz1bd+
+t/Gwi1fjIV7HOeecc84555l/gsd8zjnnnHPOOY9xvF/E/Oy9I6Z39dXva1l/
+7uKx3Vm/xnKzPIvVz5G/01vny93XSX4vr9bPbHxm9WbXcz7Ss1i1zsd0NV92
+89XPcZf1MPOs/b3vO5xzzjnnnHOe+Sd4zOecc84555zzLI78WO6u/pOUu+p9
+Lbvv1R7bl/VfLPetZ/etorWdq58vf6bHdDWvR5Xn/N9/Z4+3VecN/gzv3X9j
++ux5YLf1f5Wver7xutXr5Cjf7RzCOeecc845398/wWM+55xzzjnnnM/ymB/L
+Xe2r39di+67y2J7V46G3fGx3Vr63Hzjv8dZ5V43P1vpjudXrJ7/GZ4+r3vo5
+b/He/Temq3U4i92+t686760+1+22fsZ8zjnnnHPOOZ/tn+Axn3POOeecc85b
+vfd9JKZ39dXvcbF9o3zVOKli1vPqLc95j8+aXzF/9XrI9/S7jGf+To/52biu
+yp/1GLvtF0851+2yHmbe+7tWjxPOOeecc875c/wTPOZzzjnnnHPO+bd+vI9U
+18X83X3Ue1kWWb+d9Xjf2c+9ilnPpRqH8TrO/+0x3boOZOWy2GUd4+/0al58
+u1/P3l/4M3zUOnzWW9sz+zv8qPNeFqOeV8xfvY71eu85mXPOOeecc85H+Sd4
+zOecc84555zzWX68p1TXxfxd/Kr3uNiOXp/9HKtY9Vyy/onX8Xd6TGfj64je
++dV7X86v9N5x27uu9t6Xv9N3PQdm7YzXvfW8t8s6lrlzIOecc84553w3/wSP
++ZxzzjnnnHN+tR/vL9V1Mf9qz9o5+j0uq7/VRz2XKq7u/2r8xOs47/HWeT16
+fu2yvvFn+Ozvh7P3Hf5Oz8ZhTF/tre28+3nPOZxzzjnnnHPOx/oneMznnHPO
+Oeec8138eK+prov5V/vo97h4v8xH9XMVV/dnNR7idZz3+Kz5ld03pjlf4aPX
+1av3Kf5O33VdbW3nXeZXzF/dz1U/xOs455xzzjnnfDf/BI/5nHPOOeecc767
+Z3G8B1X1xfxZfvY9Ltab+ah+i9dd3T/Z743Xcf5vj+mz8+vsPLp6vnB+pY/a
+v3rn0ahzAn+273bey2LXc+Cq9aRq1xG7nTc455xzzjnnvNc/wWM+55xzzjnn
+nL/FY34s963/JOWq97jW8tXvymK338v5b+mq/Nn5nsWsecH5mzzGqO+WWblR
+5wH+bM/OJ/G61fOit/27/d7dzhWcc84555xzvso/wWM+55xzzjnnnL/dj/ep
+6rqY3+rVe1x2fW/MbifnI713Plae3be1fNU+zt/ovfN09rze7fzAn+0x/9v5
+FWP0+fDbdp7dZznnnHPOOef87f4JHvM555xzzjnnnI/xKo7rjr/Ze9zZeuL1
+u72fcv6bZ+M2+qh52vv9pCrH+RO8d17cfR3gfIZn4zZe17rfVPlVudX7O+ec
+c84555y/xT/BYz7nnHPOOeec8zWexfF+F6/b7X3zKa6ff/dq3MZyo/s/+qh5
+l7Unpjnn/fNot3Ug5p9d997ms9dh/p/I+jmL3c4JnHPOOeecc87/+28Mzjnn
+nHPO+Xv8eF+I+Vn5mB//tpb//7d3t8mWqkoCQOc/yx5CD6Gjo8J4VflOHj42
+SOpe+afCBSJbERG5544ed/Xvjfmy+uz2VvSe51P1H/1drXKuiNdllffWf7Rd
+xfTZes62212+6r7Lyh29Xrv7vayenPN+v6uf7+0fWvX8tD6r+qXZfuzT+mT7
+V3vOru7ne/Of9it678cYp+o/2m539w8xX6uc0fynx7ecc84555zzuv6/wWM6
+55xzzjnn3+gxfXZcneXL8v9PIz3bP6tnbzmj9Wl5PE6rnjF99rjVPYvR85ZF
+6zrGfNXOz1t9tH/I/K55g+rnbba/yvbvPf+c88991f371n5s1GP6p8+RKuft
+rd5q/618MXrvryyqnZ9T467Zfqm3v8qOu/u9b9V72ej5rPb9i3POOeec8wqe
+jas555xzzjnn/x2r5qsz3z3OH53/b83z8589i9HrGLdbvrqdVzmfT/fR8x/T
+d/Ubu89DPG6r/p+Wwzn/Hh99fq0qx3OBj/gVs9clbs/eF612FeP0eXuqX5Hd
+j73tZPQ67u43Wv1kzM8555xzzjn/bx8dz3POOeecc36nt8a3cb9WOa3jZ+W1
+xs+j8+2z895Z+fyMZ7HqfS1uz7bPU/cj/91X9Ven+5N43NX16S2nlY9z/jw/
+1Z+c6j9H+7fZ/rnKc/Ap3moPMd/Tx4FZVLsu/F+/Ylf/lu0/2p9/2l+duh85
+55xzzjn/xEfH55xzzjnnnH/iq8e3rePH9Oiz88Ot48RysvL5MzyL3e9rcbu3
+Pbf2y45zl1e7vtW81f56r/uq455uD3H/VfcL57y+n+pPdo9Xq/X/3+pX3N0e
+oo9e98x3P6+zOH0d+Vq/YnU/3Co36996+8nZesZ8nHPOOeec7/BV41jOOeec
+c857PBuXxu3Vvnv8fHr+nK/xLE69r8XtWa/WD8zeR3H/au1ndXtonb9W/mrX
+d/S5MNoPt/Jxzp/nq+Yzq83HPqX/P/087f1ddz2Xd3ncnvVTz/EsqrUf/plf
+sbq9tcrddV9U6wc455xzzvm7fdX4mXPOOeec8x6P6TFfr68a956e3+ZnPIvT
+72ut+2n2fsm8Wv9Qrf8ZLeeufq+3nWT5T53/1n0a9888bnPOv89P9T+nnvu7
+xwmj/e2q/vn0+b/b4/Zqr/bcz6LaewG/16+Y7c9b++t/OOecc855RR8d93LO
+Oeecc/6Jx/SYL/rovG5WTlaf0/PSfK9nUe29LG7f5d4T1/qqfmm2v+o97iof
+rU+19s85/x5f1d+equfu/rZ13N7y+b//ZlG9/e/2LKq9R/A9fsXq/jArJ/Nq
+/QbnnHPOOX+3t8avnHPOOef82R7T4/gw7rdq3Dg679qqZ0yf9ez38md7FtXe
+v1bdF6s9RrV+7Nt89r7Iyj3VrjjnnI/57ucCv8dbUaVdVfMsqr138LW+uv2s
+6m/jfqPzJK331rh/tX6Mc84555yv9VXjXs4555xzfo/H9N5xYCxv9zzqXfOQ
+u34Xr+FXtO6Hau9Zox63T7v3x3t81X3x9PbGOeff5k9/jvB//83ibe3tlGex
++r7gz/DZ9hPvh9l+8u7fFdNP93ucc84553zOR8exnHPOOef8rMf03nFgLO/U
+vOLouLTaPDC/x7NolXNF731RxeN2VfdeudZn75dY7lvbG+ecv9Wf/hz5Ns/O
+fytfFV/V3k756vcF/m6/otX+nzJ/EtNP94ecc84553zOs/Ee55xzzjk/6zE9
+juta5Z0eZ2aRpZ+ev+VnPItq702rPTs/MX/crureN3/3mD7bHla977fycc45
+3+u7n5tPeV+o5tn5auWr4qPtYVV7q+ZZVHsP4vf6Fb33+d0e02N/pT/nnHPO
+OX+2nxpncs4555zzP9Eav8X9WvOKcZyXHTfLP+qt39U6H6vHpafne7/dr+ht
+f9Xej6q9f7X2r+6j/VtWTrV+e5XH9LvaWysf55zzvb57nnb0uE/3uB3zZ/my
+qNJORt13gd+9Fb3th9/rV9zVP4yWM+qr5nNG+7dq/TbnnHPO+bd5Nk7jnHPO
+OedrfdW83+55wlHf/XtXn2e+17NoXa+Y7+3eaten7+vdPnoeRu/3Vfln2+3o
+/XL3782Oyznn/B4fHSevfo/Iyhl9vmT1zLzK783yv9VXjX+e7q32k+XvvV/4
+Hr+i1c/E7ez+mD1uVv5ub7XTXb+Xc84555yv9WycxjnnnHPOa/qpecLWODPb
+P8aq+dXR+vA5z65jFtXed57irfO8675+is/2J3ffF6v7t9H7scr14pxzvtZH
+n3dZOa18MZ7ynI3b3+rm/9d6Ft5D7/HWdbm7fxutzyqfrT/nnHPOOa/lo+NV
+zjnnnHM+56PzfjFfTK/irfnVuN/ucWy1+eSn+RXZ+Y2RtYeYzn/3uM33+Gz7
+j+XM9vO95XPOOec7PKbHfDFWPx9bxz99ft7qo9ed/5zemy/G6fe7p/sVd7Xn
+p/dXWf1H+3nOOeecc77Wd49jOeecc875n3jrd/nRedTVnh2X/+xZ+8zi9PV9
+qrfOc3YfxfRWuZxzzjnnnP+UHiPm871gzrP3oyy8z67109e3yv0+6q3fG/fj
+nHPOOedrffc4lnPOOeec/+5vXY9xahxbbd741Lx0q11lcfd1/DZvXYcq9y/n
+nHPOOX+H+y5wj8f03nwxWu8Xcb+3+xV3tdvW8ar7bLvinHPOOed7ffc4lnPO
+Oeec/4lsvjHuF9Of6qfGsafnje/27DxkMTrvzec8bs/m55xzzjnn/BOP6TF6
+8/M5b80DZPljudXeQ+/yK+5qn63jPdXNA3DOOeecn/Xd41jOOeecc/4nsnmw
+LH9Mz/ar6qfXvcR8u330uo/+rlY7yaLK9fpW/5b7nXPOOeec1/RV41U+5zG9
+9zrGWPX+OPp+eur9Otaj9btOX68qPnsds/ycc84553yN7x7Hcs4555zz3310
+fixun/bW74r7nVoPs9rjcUeve2v/Vrmtck6ff/7vdkzPosp9zTnnnHPO3+Gr
+xqv8Ho/prXyt/KPtoff4u9+7T53/t8zDZOc5lsc555xzzu/xU+NbzjnnnHP+
+c3pr/JblP+Wn5/2y467yeNy72sOn5VR773irx+3Z+yIrh3POOeec8088pl+R
+jVdHy+FrffZ95NNyVn1X2v2eftf5770vTnnr+sd81d6jOeecc86/zXePYznn
+nHPO+ZyPzkPG9Gy/1X7XODbW4ynzuq3rlUU8z6PtpNp7x9u9+n3KOeecc875
+3/+uGt/ytT76fhe3s3Jb5Xiv/91jetX79PT15ZxzzjnnP/vu8SrnnHPOOb/H
+Y3rMd7c/ZV73ruuSxVPOM//dP21XMf30/cs555xzzt/hp8a3fK3H9E/bSQzv
+7z+nP/X+5ZxzzjnntXz3OJZzzjnnnN/j2Xgvbt/lu8ers/O6veWPeiueev75
+z9uz+TnnnHPOOa/sMT1Gb34+5zH97vYQ41vf66vcd9XeiznnnHPO+ZyvGq9y
+zjnnnPOaXm3dyOw4NpY76qvOZyt2n7fs98b9+JzH7db5H80/Wg7nnHPOOeef
++Kpx6Wj+Vj4+5qffI7L6xP2e8r4f0++6H1vXN+7HOeecc87f4aPjVc4555xz
+/g6P6THfLs/qs3v+dvb8ZLHr/LR+V9yP7/FP21VMb7X/LD/nnHPOOeefeDbu
+Hc2/+/2Lz3l2/uN+u9pbVp+436l2Ndr+d/vp91zOOeecc37GR8exnHPOOef8
+3X5qXnfV/O3o723Frt+bebX3hW/1eJ1G36da+TjnnHPOOa/oo+PeVe9lfK3H
+9LvbVYzT7/u775eY7/T7LOecc845r+Wj41jOOeecc87/jmweMu4X01vj0Vh+
+3G90nrYVo/WMbj62psft2evYav+fHpdzzjnnnPMKHtOvGH0vW3Vcfo+vfq9v
+Xdd43Ljfqfd97/Wcc84553yHrxq3c84555xz3uMxPeaLPjv/v/u4vKZn1zXG
+aP5V7ZlzzjnnnPMn+qrx+arxPK/pMb23vcUYbQ+jxz393so555xzzr/Lq43b
+Oeecc8457/Esqo23V3s8H63zk437o2fHbeVvXbfZ4646P6Oe/Z7R+sRtzjnn
+nHPOn+AxPeaLcWp8PuoxvXUeRt93Vh83pu8+P9U8i9Pv45xzzjnnnM94tfE2
+55xzzuv46HxpLG92vLHquJm3yo/7jY6jsnyjv3e0nCx/Vv/d9RydT26Vn8Xo
+9V3l8fiz9Yn73VX/T320HWY++17z6fWq1i9xzjnnnHNewVeNt0fH4aveRzJv
+1SM7DzG92nvZ6PlZNf+wu/5ZfbLY/T67an5g9ri95a+ex8jSs3rHuGse79N+
+6dRxOeecc/49PjqO4pxzzvk+j+mt53iWf9VxW/WJ+VbNt7TqGWP1fEtvOaPz
+MKuu+13zind7FqvnObPyq5yHp/vu/m30uKt8Vf/GOeecc875E/30OoR43Kye
+Wb4s/+z7Ph/zLL7tff+KT9vhqnaelbPqvTs73mw5MUbbT+a75zlXzVuu7t84
+55xzfp+Pjn8455xz/rmPzm+sWhexaj6hVX7cb/e4ZXR+eNV55nOexe55qlHP
+yq92Pp/iq87zqf55Vf/JOeecc875E332vSCWt9rjcVv17y2H/+5XjJ7nXs/K
+b9WjN6qdz7f7Fa3ruKqcVT7aPjOf7SdX9ben+mfOOeec3zdu4Zxzzr/Zs/ff
+LH9M//S536rv6nFFq/yYj7/bs9jdnjM/db+/1a/4tD9pxWj5n7YTzjnnnHPO
++f2+av6kla/Xs/KrvZfd5VfE8/Cpx+3V7aR1fWOcPs/8jF8R29tou1rVn6wu
+P6afut8555zzb/ZV4wrOOeec55E9dz/17Li737uz+swelz/bs9g9Xm3l622f
+p/qH0fsxbq+u/6rrldUz81XngXPOOeecc/49HtOvGF13MVr+qO9+zxo9D9W+
+Q7XyRd/9Xp9FtXkYvtZH2+dsP9B73FPzIdW+X3POOedv8lXjVc455/ybPabH
+fLt8dL4xy1dtPoTX9CxOjWPj9qxX60+e4qPzirP9T9z/1Pwk55xzzjnn/H6P
+6TFfjFXvF6vL+XaP23e1h1WeRbV5G17br2i189H53t1erT/hnHPOn+inxrGc
+c8753zE7D5Z5drz4/Ntd/+y4o/VZNd/VKn/0PPN3ehanxqtxe7UbJ5/10f58
+9HkR893VrjjnnHPOOef9no3n43bLV79f8DHPrksr36c+2k5WeRbV5nl4Db9i
+dXuuNi99ar56d/0555zzT/zUeJVzzjn/LT3mi777ffmu+sf03e+5o+sZ+Lv8
+ilY7fsp4tZXvU6/WT77VR9vtqv6Qc84555xzXsdjeszX67vfL/jvHrdX+1O+
+c2Ux2275s73VTnb1h6PHzXy2f9h1Pu+qP+ecc77Sq41XOeecf6fH9N7nWiyv
+2nt05nc99+8+P/ysX9Ea5/WWH8s7NS5dNQ+zykf7B/5zem9/FfcbbT+tfJxz
+zjnnnPPzvur7xej7Y7XvNVW993zu9tH3x9H2s8pb5y2L0d/L3+m722dMn+2f
+q52fmF6l/+Scc87//jcG55xzfqfH9Pj8ivtl5YzOz4wed9X83qrj8u/2K3rv
+qxjVxqVxuzVezfKf8lPzaW/1Vf0w55xzzjnn/Lm+6n2Z93k8nzFflfYQ07P8
+rd9zt6+ezxm9L/h3+RW990WWf/dxZ/vz3uOe7lc555zzv/+NwTnnnH/iq+fN
+RvPf7VlUex/n7/AsnnK/zN5f2fj1bV6tP1/dz/e2z9H6tPbnnHPOOeecP89X
+fe/Y/f5SzeP22z277k/x1fM/nM94Fk+5X1b3/7Fczjnn/BOv9jzlnHNe01fP
+d8VyRt+nsnqMHjcrJ/PR8zNazuz55M/2VjuPUW08udo/7Qee4qPnYfT87PaY
+PttPvvX6cs4555xzzu/32fmrmH+0/FPvy96j//Xe8/B0z2JV++HP9Cta90vc
+Xt1Pzpbfug9W9wOj53P0/HDOOed/e7XxJOec82f5qvmrLP8pb/3emL77/XS2
+PrymX5Fd1xi999HTfVU/83RfdR5G+43V/XzvfZGVwznnnHPOOeerfNV7SpZv
+dJ1AtfUST/HR89C6rk/1mN6bL8bp+TE+51fEfiZ63P70/vq0Hzvlo/fRbD/P
+Oeec/+bVxpOcc86f5bu/75/y0d+7+70489PzAHzMs1jVrp7ucZv3+arzPNue
+e+uT5eecc84555zzUx7TY8R8q96bWvl668N/99Hz/HRfPR/Fa/kVd98Xo/OW
+q+q5ylu/K+5nnpZzzvkOrzZu5JxzXtOf/v416tl5yPKfWhfBa/gVrXZTbRxY
+1bP7JIsq/QbnnHPOOeecc873+ar5BP57ZPlPz7/xMb8i3kez7aT3fszyP8Vn
+238sj3POOf/bq40DOeecn/VV61Ky8lv5qvip96y7rhf/2a/obQ9ZeE9f63Gb
+c84555xzzjnnPEuP+fjPvmq+Kx7n+rfavN9b/Ip4nqOfbj9V+ofMR8/b7uvF
+Oef83V5tHMg557ymZ9HKnz1vqnu15/Xp9/1v8dH2f7o9vNV7r1fc/3S/wTnn
+nHPOOeec832+ap6Hz3kW5jPPetV2UqXfGPWsPWdxeh6Vc875M7za85pzznlN
+b70PZvtnz5sqPvp8rPa8rjYPUM1H23kr4vWo1k7e4r3XN+5/uj/hnHPOOeec
+c875Pn/6epWn+Ox8b2851nF95le0rsOpdtJqF1X6k8xbv7f3unDOOed/e7Xx
+Huec85r+1nVZmVd7z5q9Lt/iV4xe9yyy9hDT+ZzH7d523lsO55xzzjnnnHPO
+3+cx/YpV8w98zmN6K18rf/Rq85Cn/YrT7Xn1PG0VH/291eZdOeec1/Rq4zfO
+Oec1PabHfG/zas/r0+/7u/yK7Pz3ltNqt9nxWulVrvtbfdX1rdJvcM4555xz
+zjnnfJ/vnmfgcx7TW9cri1XXt1Wf3nKe4k9pD2/10/OrnHPOn+HVntecc85r
+eus9Oj5XsnKy/NW89f4b96u2juW0Z/Vf5a32FaO3fZ6+vvzf7ZieRZV+g3PO
+Oeecc8455/t81XwCv8dH55OzOHV9T8+v9vrp69va73S/kfmq7x2n51E555w/
+w6uN0zjnnNf00XU4cftpfmrd0Wx9qviqdhX3y9JjOXE/XtPj9uz1bZXDOeec
+c84555zz93hM743ecnhNb0W8rqvndbNyqnis913t/OnrsjIf/b3V5l0555zX
+9GrjK84558/ymN567mT5q7l1WT9v3+VZZPm9Fz/TW+3iLf0J55xzzjnnnHPO
+P/eYHiPmqzbfxX/30fm9LKrNd1mXVdNn+5OYzjnnnPd4tXEX55zzd3hMj/mq
+e/a7Tj2Xv239Vdyv93z2/q5q47Fv9d7rFdNP9w+cc84555xzzjmv46vmH/g9
+ftd80ehxd3us32qPxz11HVv1qO6n2wnnnPN3erXxGOec83e497LPPNbj29Zf
+jfrovASv4b3tM6af7gc455xzzjnnnHNex63Leodn1yvu92n7yY4b9zMP/LvH
+9NP9wKi32mHcj3POOf/Eq427OOecf6c/ZR2X9/HfvRW7r0t2HuJ+fI/3trfR
+69Vqb1X6B84555xzzjnnnO/z0XmD2fmirB4x+Fq/a11Wq93E+sT9zAP/nH66
+f2i1q7gf55xzfqdXG3dxzjnnf0e19Vqj9Tz1Ph7LXf3cb8Wu819tHMX//TfG
+aPscPW6rHpxzzjnnnHPOOX+Px/SYL4u4/6r/Xoyf9Zi+qx3GWDWflh232rqs
+avNyo/XknHPOK3i1cRTnnHPe49XeB6uty1p1nlvx9PPM1/qu9lntfuecc845
+55xzzvn9HtOvqDaPwe/xmH53+4zx9vnhp9/vnHPO+UmvNo7inHPOd3hMj/k+
+9ey4u9+7R+vTOj9Z7DpvmVcbL/E+72231e5fzjnnnHPOOeecP9erzWPwsx7T
+726fMUbbZ1b+W/+7yNPzmZxzzvkdXm28xDnnnO/wp71XxnJXr2/JYtd5yLza
+uOhbvdWOZq9jtfuRc84555xzzjnn3+Mx/YrReYzR41rfVdNj+t3tM0bVeeMq
+9yPnnHP+Jq82LuKcc84reEyP+T712XUsWbmj8Wn9W/WM+/Gavup+ac0LZfvv
+ur8455xzzjnnnHPOM4/pV4zOb/ge926/a16r97ij7bN1nF33V7X5T84557yC
+VxvncM4555U9psd8ox5j9j06i976ZOVXG7fwzzxe51mP5cft3uNm+2Wx6r7j
+nHPOOeecc875e3x0niGbr8j2Hy1n1Fv14M/w1eu4estv7ZfFrvuOc8455//t
+1cYtnHPO+Td4TG/la0Usp9p4o5rH7ZbPrkdqHSfG7usYj797nnB0XdbovCjn
+nHPOOeecc8756DzG7HxF5lk5vZ7Vc9Rjeqv+o+WM5h8th/+c3srXit72wDnn
+nPN9Xm28wTl/n696L477tfqxVd/3R+s/Wv7u8zlaz2rt5+k+u/6kN0bbebVx
+SFbPVffFbo/1mh13tfKtuo6f/q5V98Vo+Vl+zjnnnHPOOeec81X/Pd2qea3d
+67Ky47bq09qvVf6p+bdT8427Paa3zvNozH6Xifn4nMftT8vfdV/M1rPV3j/t
+J3vrP3t+Pj2fnHNuXRbn3+MxfXZcsao+p8Z7o+dntj6fjjNX1XP378181fWd
+PW7v+d89T7J6PU+M2XmSrJy7fxf/eXvWY/rsuO4p9c/yc84555xzzjnnnI96
+TI8R863+HhePv2rePst3uv58jWfx9HnjK1bdp73lr/LReq7y3d/dZsvZdf5P
+fR/Mytm9HmPV9y/OeX1v3eec8/u82nvQqnHCqK96P71rvLSqnN7fu3t9xew4
+8NP8b/UsRq9vzDf7HK92fvjP2y1f9X566rkWtznnnHPOOeecc87v8ph+xenv
+d1m9V9Uzlsdr+BWt6xi3Z9tPFqfPw91+Re/5HM2/+z5t9Q+99Wn9zqz8T8tZ
+VX6175XVvi+cfq5xztf3k5zzfT47Don5V733teoRfVU9s/Jnx8nZcVeNb/l3
+eRar2nnmq/qZrPxq55n/HqufO7ueC5xzzjnnnHPOOedP8dnv71n+Xs+i2jwV
+/zdG20+vZ+Vn3qpfb1Q7z7yGX9HqD1vtLbtfeu+v0Xa+6v5adR5G6zman3Ne
+x0f7Ac75577qub/Kq/VLs+ONauNS/k7P4inv16s8q0+163XKR/v/0fYw+l6c
+lcM555xzzjnnnHPOz3pMv+LU+oRq82yn54Hj+T31fSSrT+aj7SHzLKpdL/4d
+fsXqdr7bY3qV50vcj3O+z6v1S5x/g8f0Ks/fbP/e/KPHna1n3O/0OJC/07Oo
+9n6debV+b7QfWH2es+ue1S+rz6fljPpoP3yqvXHOOeecc84555zz3z2mx3wx
+njIftaqc0fOTeVafat9nnz4/nEW1eX7+Dm/1J1m+3n6glb+3Hz7Vb496tX6P
+82/w3c9lzj/xmP60djv6nrLbV40HRn8v55U9i6e/d2derZ+s5rvnhU7Vs1o7
+5JxzzjnnnHPOOX+rx/SYL8aq7/un/Sn1rOJx+3Q7XOVZVPsuwPmIXzF73z39
+e3E1j9un68N5j596LvN3++y6iNHnV9xv9Lh3nYcs3+7naUxf9Vxbdd05v9Oz
+qPb8beVb1T/c3R/yOd/9/litfXLOOeecc84555w/xVd9dzs1/8Pv9Va7qNo+
+V3kW1b4jcP6TX9G671bfL7v6h9bzKO63uz8c/W41el08T3kFP/X85e/20XHm
+aDm7n6fVnpunnwujz8Fq4yX+XZ5FtefvqffxUa/2fPk2n31/yfKPevX2yTnn
+nHPOOeecc37KR+fPR33Vd2p+j8ft0767fa7yLKp9d+Df7Vecvr92z9vvXn9y
+6npl9Tv9/Z1/l1d7/vJ3eEz/tN1Wef6uOg+Zn+r/Z+vD+Z1+Ret+q/acHX3+
+tvLd7U95f/82H33/euv8Euecc84555xzzvkpj+kxX69n5fteXNtb1/l0+3z6
+d+Essvynv19w/nfsel6Mtv+sPpn7jv9v+TGd80+82nOWv8Nj+tP67bf258ar
+vLK37qMYb52XiNtVfVU/yX/3mP5pe+u9Xk9vn5xzzjnnnHPOOee7PaZfsWp+
+JvOsPtXmOd/iretzuh1mPtquqnnr/Gf5Y7nVvoPw7/YrTt+nWT1W9ZPV3POU
+V/Bqz1n+bo/prXY4mv/U+qXd/flofTh/orfibeOi0X7jKb5qfon/id3zeKPP
+l7jf6fbGOeecc84555xzfspHv7+v+t4dt3cd99s8O69V2tuov/W7cExv5av2
+HYTzFX7F7H2d7T/aT+7uZ7Lys+Otys/5Dq/2POX3+Og4c/W6i9Hy435P82rP
+a87v8NZ4L8bp+/RuHx0PP92rPQerPX9XvX/Fbc4555xzzjnnnHP+TI/pV+ye
+X/o2j9tvcd+Ffw/f9TjP+5EYT3HrH3hlr3a/8LV+qn8eHd/O1j+Wd2pcPVr/
+ateR8x3eimx8EtOf7qP3e2v/p/rsc6Q3f3bc3c/Z0eOO5q/2vOOcc84555xz
+zjnn93hMj/lijM4Xrcq/e33U7PqZ3vzZcZ/uvhf/nN7KV+07C+cjfsXq/jNu
+V3nefVr/0edp1evIn+HVno98rY+OM1etv1rVb8+Oo+5+Lqzq/1fdp6ef+/yd
+3rofY1R73lXzav1bNR/t33b3k1k9V4+re4/LOeecc84555xzzvnf/6767yJP
+z49l3ltOVs9vc9+F5zyL0+s0+Hf6FbP3dZZv9rkQy2vV4+7+bbSc0f5h1fcd
+67K+06s97/g9HtM/bVfV++dRn+2Hd52H1fXh/G+/onc8k8Wq/uRtPnqftvb/
+dh99HrXOf1ZOa/9Pyxn9vdoJ55xzzjnnnHPOOf//WDVf1Nq/N0bLWTW/F9NP
+X5dqPvpdYPQ6vtVjem++Xj/9PYg/y6+I93X0uD3b/5+qzykfPQ+r+pNq3zH5
+PV7tecfv8d3jsdb+1X31eCkeZ/dzM8t/evzAa3mr/cRY1c75v/9mUaU/5L/7
+0987OOecc84555xzzjn/LT1GlXry39134bXeWg+Z5Y/lVvtOxM/6Fb33b5Y/
+81XtfPT74Gg9q/mq732+q/K/vdpzja91/eecz467Pu23V62/Nd77Tr9idPyW
+RVaO8cOYx+3Z529WDuecc84555xzzjnnnPPv9FPz1d/mo99lsuhNj9cx7sff
+4a32FvPt/r4c03vbYVZulX5yt4/2G763fqdXe67xtW5d1pzPnueY79R6j2rj
+Cn6Pt8ZRMTz37/G43epnsvycc84555xzzjnnnHPOeY9bl3XWW+u4svyx3Grf
+ofg9fkWV+3TVd7G3+mg/4Pvsd3q15xSf893rebL8b/Wn9IdZ/Vf3//ysX9F7
+n2Yx2k6y4/I13rp+VfpDzjnnnHPOOeecc845589y34XP+ux6laycbP/e/Ly2
+X9FqJ1XbeWu/0/3hbt+9vq7a900+59XuX36PW78659Xu39F1O7ymX9H7XM7i
+dHvjYx63Z/NzzjnnnHPOOeecc845/06P6TF68/OansXsd4eYj9f0au1wtJ/h
+P6dfUe17Jb/Hq92/fK2Prr/9tn519DxUu3+zes+2B37GW/ddFll77r3f+b0+
+et2r9JOcc84555xzzjnnnHPOn+Wr5qv5PT763/Vn4e85PNOvaN3XVdttzNdq
+p1X6yVU+u96gtz3wd3i1+5fPeUz/9DmbHa9K/7bKV52fql5tXPFtfkXrurSi
+d9x1ur3xMR/tzznnnHPOOeecc84555zzHvdd+B0++902Kyfbvzc/v8ertcNV
+7SSWd7qfXOW7z0+175t8zqvdv3ytx/TZfmO0nKd7tft01X1dbVzxFF99P8ao
+1n74Wo/b+mHOOeecc84555xzzjnnK3z3vDR/h2fh70XU8Cvecj/G9NP95G5f
+1Q9X+77J13q1+5Tf49av/vl3dn14zFdtvcfp8UMVv+LT8zM73shitD5xP/5M
+X9WuqvSfnHPOOeecc84555xzzs/6qflqXtNnv/Nm5cT9Vq3LyupT7Ttjte+b
+VdtbzGe9QZ/H8vi7vdr9y9d6FqP9QNx+uz+lnxwddz3FR5/vcfvT89xbn1aM
+trfRevJn+Wi7qtIfcs4555xzzjnnnHPOOX+WW5fFf0vvbVcxTv336Vn+VevE
+qvoVrfNwyr9t/VXms+cnyx+Pw9/h1e5ffo9bv/q7V7tPd69LP+2x/qee+611
+X1lob/yn7dXXfbR8zjnnnHPOOeecc8455+/2mB7zZbGrfF7TY/qn7XDXcVf9
+3YysPqe/h/Z6tfZzur1V91V/h4S/26vdp/ysjz7v4vZbvFo/OVsf44cxz2LV
+OJB/t396X8T00/0k55xzzjnnnHPOOeec87N+ar6af6e3/k5Clj+WW9Xj76r2
+XbXaeg/rB/6E78i8x6v15/ysW5f1599q/edsPe/2rJ7V2nkrPGf5J957v8y2
+2yr9JOecc84555xzzjnnnPOzXm0em7/DV38vzsqP+/kO+7tn9azWTuJ+p/vJ
+Vb7qfuHf6dX6eX7WY3rrudOKKv3kqLf61bjfaT81Hoj1qdqes9j1nH1a++Fr
+fHc7aR2Pc84555xzzjnnnHPO+Xd5TL9i9rtS6/gxnT/bV7WTuN3ro/W521vn
+LTs/u/wp7SduP9VjjK5Dq9ae+Vmvdv/ymj7a/7eiWr/a69Zp/7x92lux67qP
+jkP4d3rc5pxzzjnnnHPOOeecc84reUyP+fh3+eh3sVa+Ue+tz2mP9d7tsR6n
+79+sPk/zGKvWK3L+t1fr53lN9/de/vxb7f6967kfj3v6+Z7Fqfbg+ftub7XT
+1n2x6v5q5eOcc84555xzzjnnnHP+XT7735XH9FV/NyA7Ln+Wj34fucuzesb9
+Tq2v+Na/m1GlPxz11nWM+/kuzD/xavcvf4dXfV6f6p8/9Szevr46iyrtIfNq
+/Tyf87jdO+4aHY/15s/qwznnnHPOOeecc8455/w7PaZfMfv3FmL6U74r8bUe
+00+385bHeMt3pdbvzI6/2t/63co6K36nV+vn+bt9dBwY00/3z5lbdz3nrah2
+fT2Xv8tX3Xez90WV9s8555xzzjnnnHPOOef8WT47Tx7LHf0+EvPFdP5sf9rf
+5Yhx1/em0fuo+n3XOl4VX/V3Ejjf4dX6c/5uX7WeIaZX6ed39eerzqf1V3Ne
+rd/m93jcbt3vWf7ZfrK3PpxzzjnnnHPOOeecc86/02P6FU+ZD+fv8Jh++r5o
+eYynrdeK5a+6jk9Zd7d7fSnnO7xav8353zHaf8byqj8Xen3V+blr3JVFlevS
+Op9xP/6dPnrfrerfWvXgnHPOOeecc84555xzzn/z1esQesuJ+WI6/y5/2n+H
+HqPqeq1Yzqrr1Sq3Wj+2qn/j/A6v1j9zvsNj+t3Pi5i++79T2L0uqxVPeV7H
+/fg7PG7vun9776+nvXdwzjnnnHPOOeecc845f6fH9CtWzYfvrid/hz/tv1uP
+cWpdVlbPVdclK3+3V/vOyPkOr9YPc77Dq62LuGu9dFaPGK3nbxanzlv2e+N+
+nP/tq8afT3tf4JxzzjnnnHPOOeecc85nfHQ+3HdqvsOrfpfJ6hn3q/r99+7z
+1rq+cT/O3+TV+lXO7/RT6/wzX/W8nn3+ZnH37/Vc5j0+el/Pelaf0fzR4zbn
+nHPOOeecc84555xzvtNjeswXY/Q71O75+dH683f7aDtp5VvlvfW86/vvrt+7
++zsa52/yav0n55V993rs0XHF7LqyLE49lzn/zeN277hu1HuPO9o/jN6/2XE5
+55xzzjnnnHPOOeec8x5fvZ4q2z8ed7b8Xh89Luc9HtN33acxVn3/3f33Aayz
+4vxzr9bvcf4N3orR5/XocUafszGdz3ncPp1/1bjuLs/Ge5/6qvt61bg0bnPO
+Oeecc84555xzzjnnIx7TY74Yd627yMr/1Ed/7ypf/XcVeq/j7vx8zmN67/0b
+Y/X336z8uB/nfJ+ver6M9j+nv49XeV5z3uOjUa2feZr39htx/1Z/uKpfWtWP
+xfTe8WGvV3tfOzXeXvXc5JxzzjnnnHPOOeecc857fPX33Jj+1vn/mH7XdZk9
+P6P5e8tp1f/u6/JtPhqnv6ty3uOf9kurjhvzzT43d6/Lau0ffbSeu+uz+7i7
+xzm7y+FrffX6n09jVb9313g1xu71S1l9Vr0XVPMrevvtLH/mo8+jVjm72u3q
++723Pq36cc4555xzzjnnnHPOOecrPaZfcdf38VZ9e+uT7df7ezNv1S/6Xd87
+qvsVvedn1XqzVnx6v9zVbj+N1X8XIubja320/3lKObvXFax+vsT8p+ozetzM
+d5ef+e7fu/s5fqqc3esHZusz+lzu9VXPzdXjlqw+V9x9nvm7/YrZ/u2ucfiu
++q/yrB6j54dzzjnnnHPOOeecc8453+Gr5/N3eVa/VetPsuOt+i65qv78HX5F
+7/2V5W+15xinz8MVrfqP+u7zPOqz/cyn9Tm1vmhV+aPnbZXvbg+j5Z9eN/jp
+827293563FXlz5bTO97Y3a+e7uerexar+70Yq55r/Dt9tP3E9E/7/0/rc2q8
+xznnnHPOOeecc84555w/0Xd/t139HTn7PVlkv3dXffh3+BWt9tOK2D6z/XrL
+u+L0+anu2fmstr4i7t9qJ6vKOVX+6HFXlT973/U+T1u/K+a7ax1db7tddb04
+/8SzWDWui/la99Hu/o3zn/yKVjvf/RwcrWerfpxzzjnnnHPOOeecc845z9Ov
+OLW+K6vPbD05/9uvmG2fcbvlq9afZHH6fPJ3+xWz/XbV9RIx3+z6q97zubr+
+1doJ5795Fqeey5mvuk9390v8Hp+9Xr0et1vXPcvPOeecc84555xzzjnnnHM+
+6qPfI1r5et13sZo+e712edye9VXtNotq15HzEb/i0/v30+O2+p9q543zk57F
+U57Lo/3AKY/pxquf+RW97WFVO5x9vnx6XM4555xzzjnnnHPOOeecf4/H9Ct2
+f4/Ijpt5Vk6170pP8Suy8xnTT/loexj10XY4225jVGsPnFfyK/TznNdbf1Vt
+Xcru5/hd44Te8Vgrf2+/uruc7Peeaj+j16Xa+jHOOeecc84555xzzjnnnNfx
+mB7zZRH3n/1unh3v7t+7+vtR67zeVU6Wv9p6qmrtJPPR+2WVZ1Htuz/nnPOz
+nsW3Pa+z+px6jj/dR89nq51k1+/Tep4+P6P3byx39LzFfKfvO84555xzzjnn
+nHPOOef8m33Vd5C7vjtU897ztvq7Ff/Zs/PZyrfLR++jVZ5FtXUCnHPO13oW
+1Z7X1daTvHVdED/r1d6P4jbnnHPOOeecc84555xzztd5TI/5PvVq3x34d3ir
+nd51fz3le24W1dYVcM45/92zOP1cHvUqz/FRr/Z852d99f0ej2ddFuecc845
+55xzzjnnnHNe32N6zPepP+V7BH+Wx+2q/pR1WZlnUW0dAuecf5tnUe15/W3r
+srLfVe35zu/x2fu6t1192/3FOeecc84555xzzjnnnD/Rd68bGT2udVn8bx9t
+V9X86euyWuc/RrV1C5xz/nTPotrzerfH7ao+Wv9qz3c+5zG9t533jg9330ej
+v4tzzjnnnHPOOeecc8455//tp74TrfoekdWz2ndDPudxu9UOs/zVfNV99BTP
+oto6B845P+Wz/Wfc/63+9Od+5tZrfafH9Nn2MPo+lZXz1vuLc84555xzzjnn
+nHPOOa/ss98FsnxZxHJG81f7bsjnPG7Ptoen+Oh357d6FqPfGTnn/Gl+RW//
++O3jn7j9Fl+1Po1/p69a//lt9x3nnHPOOeecc84555xzXsFj+hWr10tk5fDv
+8qy9Zd7a/6k+eh6e7jG9N1+M0+srOOc86997w3jpd/+28UDmo+PwLKqNB57u
+d63b/HTcaD0k55xzzjnnnHPOOeecc17HY3rMF2PVPH+r/JhuPdhZz2L2O3WV
+9r/b/R2M3330+/Lq9aKcc77q+dWbv9rz/bQbP9zjMaqNB6p5TJ9tz6PlZPk5
+55xzzjnnnHPOOeecc85HPabHiPlWfb87/f2xureiSvt5iq/6Hv1tHtNn26d1
+XJzz1euyYmT5qz3fn+Kzz4Vv8d3r4oxPfk5vnbdW/phuXRbnnHPOOeecc845
+55xzznd7TI/5soj77/4+8haP52f3d7eYfrq9nfLR7878dx9dT2hdFud81Fvx
+af/P+7x3XMd/99Hn6epxZsyf1XP0us/+rt39SXbc6K1+p0r74ZxzzjnnnHPO
+Oeecc875c33VepVTfzfj9Pem3nrOns8sX5X28xT3dyfWekzvvS4xqq0D4Zzf
+/xzP4vR6pG/31f0/X+O71yOtWk81W36vj45bRstvHY9zzjnnnHPOOeecc845
+57zXY3rMF2P3d5PZ48b9Vn0nmq1na7/T1/3bfHf75HOexem/s8E57/crWvdp
+K3r7bb7W43bv89Q4p6ZnEfNn+61qP6vWj2Xlt467q3zOOeecc84555xzzjnn
+nPNVHtNjvix2lT/6HXC2/Cxfq9xWffg9vup78Wj74XMe01v5ZtdbxnTOeb9f
+0dtPZlFtPRL/3XePA3lNX3V9rd/jnHPOOeecc84555xzzjl/lq/6vuO/l3+3
+7/7uzM96Fqv/jgfn/D8xej/G/Xrvu7gfP+ut617luc8555xzzjnnnHPOOeec
+c8455/ysW5f1LJ9dh5mVE/ertu6F80p+Rev+ivla92W1dUf833+zyJ6no/0z
+55xzzjnnnHPOOeecc84555zzZ/vo92LrtZ7ls3/vbrT8mM75m7x1f8Twd66+
+w3vbSW//eno8wDnnnHPOOeecc84555xzzjnnfK2f+h7Na3prnV6WP5ZbbV0N
+/06/Iuv3evuxVqzqV/mzvdV+qjz3Oeecc84555xzzjnnnHPOOeecn3V/F4v/
+lt7KN7peKyu/2jof/izP2lnWPlvR20/yd/toPzna73HOOeecc84555xzzjnn
+nHPOOX+Hz66TaR0npvN3ekzvzRfD393in/hsu43ROm4sl3+39z43Z/tPzjnn
+nHPOOeecc84555xzzjnnz/bW343J8mf5YvDv9Na6hSx/LNd6Ld7jve0sRm8/
+2WrncT/+HT7aDqs89znnnHPOOeecc84555xzzjnnnJ/1Vd+j+bt9dF1fy3vL
+r7YuiP/uo+1n1Fuxqt/j/Ddvtccqz3fOOeecc84555xzzjnnnHPOOednffS7
+M+c9HtN72+eu+lj3dY/vbg+t+sTyOO/xuD3aP/X2J73H5ZxzzjnnnHPOOeec
+c84555xzXtNj+hXZ9+KsnFXfrznv8Vb7zKL3vrAua62vuu5ZjLaTaut8+LM8
+bs/2D61223tczjnnnHPOOeecc84555xzzjnnNT2mX7FqXcrocTnv8dm/M5OV
+E/PPeu99cZeP1j/zT+szen1bMdqP7T4//Dt9d/uvMk7gnHPOOeecc84555xz
+zjnnnHO+1qt9p+b871j9///Kyo/7VVu/tOr8nLrfW1Gtf+O8x0fbf5XnPuec
+c84555xzzjnnnHPOOeec87O+6ns05594TN/V/mNUW5e4en3a6P0+Wn4Wu/sl
+zld6637szd/KxznnnHPOOeecc84555xzzjnn/Lt893dqznd4TP/0vugtf3c9
+V52f1etJPj0u5xU8bvc+77L9e/OvWlfJOeecc84555xzzjnnnHPOOef8rMf0
+K2b/P2i9+Ufrw3kFb7XnLGL7XrW+cfe6x+y+zmJ1f8L5SY/bvc+71n02+xwc
+LYdzzjnnnHPOOeecc84555xzzvlZX/3/O4v5Rr9Tt/JxftJn1x9+Ws7udVmj
+6692r2Optj6Hf6fH7dn2PHo/ZsflnHPOOeecc84555xzzjnnnHP+Dp/9rh3L
+tS6LP9F3t+csVq1TGv29rfpk+2f9RpYvK7/3PFdbt8O/23vb7ar+J+53epzA
+Oeecc84555xzzjnnnHPOOef8d1+9/iErJ6tHDM7v9NXrglrHz+7LVqxal9WK
+Xf3MXeef8zs8brf6gdb9WGU8wDnnnHPOOeecc84555xzzjnn/KzvXpfC+Z2+
+al1Q3N7lMUb//4l31TPrN3rPp3VZ/E6P27PPwdb9V+U5zjnnnHPOOeecc845
+55xzzjnn/Fm++zt1Vg7nn/iq/+9e3O/u+/E/8X87kfTI
+ "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"",
+ RowBox[{"-", "1"}],
+ RowBox[{"-", "\[ImaginaryI]"}], "\[ImaginaryI]", "1"}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0.5, 1., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0.5, 0., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #5}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0.5, 1., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle ->
+ RGBColor[0.33333333333333337`, 0.6666666666666667, 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0.5, 1., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0.5, 1., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0.5, 1., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle ->
+ RGBColor[0., 0.6666666666666667, 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 1.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0.5, 0., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle ->
+ RGBColor[0.33333333333333337`, 0., 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0.5, 0., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0.5, 0., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0.5, 0., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3, ",", #4, ",", #5}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{3.6641613068615923`*^9, 3.664161466270402*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "5"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
+ ",", "40", ",", "0.1"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555613597739*^9}, {3.6595559120050316`*^9,
+ 3.659555925976593*^9}, {3.6595559620470605`*^9, 3.659555962328335*^9}, {
+ 3.6595560196305175`*^9, 3.659556025819849*^9}, 3.6641616469815435`*^9}],
+
+Cell[BoxData[
+ GraphicsBox[RasterBox[CompressedData["
+1:eJzs/UmypcrWKNwdmVryt+T1QU2Qmcpqi2pSLbp1mvDVbhNkT/EjLsnEExyY
+sMY0C4vNgOU4jpN4stf+P/7v/8//2//j//rPP//8v/4vf//975//3/+f/x3/
+87/++f/Ff/7P/znnnHPOeVb/s/Ap/vO/Il9+7t//f3qj8hOlH21XF9Px/Bse
+F+/z/e3+DetDtP1XPSq34/KJy+tXvLX+9JVzdJ/hnHPOOeecc84555xzznN6
+tnFGzjnnnHOe05exnd+y//4Zf37f4/TX/meRz/V63up9847W6cbn613eWm95
+5K31Ldp+uf75djTnnHPOOeecc84555xzXuPZxvs455xzznlOn6L2PfPPIp0p
+/hOmu95umV69R/vlxz79FJ3f48gyn+o675tHFJXfVz2qP1dvzznnnHPOOeec
+c84555zn9GzjfZxzzjnn/Fn/s/Ap+t8/92O7vjQfbPLlfuo9Oi5+7MfnpXye
+e89XNj++LuL6+k2f1/eW26j5n5xzzjnnnHPOOeecc855Zs82Dsg555xzzp/1
+ZdT+vcJWj/YXp7Ofnzjf++nmme/0Fp9+Wpd7afvldv++3qPj7Zu39jveV255
+2succ84555xzzjnnnHPO+RnPNg7IOeecc86f9T8Ln2Lc+2cp/f2I19e+30b7
+5X0+/RSd9+Xn//2875dDVG/f7vP66bivvm9wzjnnnHPOOeecc84552/0bOOA
+nHPOOef8WZ8iep+clqf1x+ls0z32bfxZpL/eP3/K+877Ot1/w3r1Fo/KZ/n/
+Ot7u0f2hdXvOOeecc84555xzzjnn/NuebRyQc84555x/w5dx1d+D26bful8+
+1qPzGG2/n258Hp/1uB7ubxdfD+/wef26fLK0ZznnnHPOOeecc84555zzzJ5t
+/I5zzjnnnL/L/yx8iva/f1ea37X/frvdbj8f/wb5i731uPixTz9F7ZTl59vP
+19PeVj/f4vP66fj6rlPOOeecc84555xzzjnn/Dc927ge55xzzjn/TZ+i9j32
+zyKdKcrvw+sYNd+MH/v+dv9+zNcR1btsvg3zrzjnnHPOOeecc84555zz855t
+PI5zzjnnnPP/9inOvt9G8Wex/RT55jV91f+pimzzr2q/Pyo6vjxeOi9Z2q2c
+c84555xzzjnnnHPO+Rs927gb55xzzjnn/+1T1L7HLuPs35uL01n7n0V+1ut5
+5L3z8Zbpxuflan/XvKx5/XG5zpGl3co555xzzjnnnHPOOeecv9Gzjbtxzjnn
+nHNe48s4O08men+Ot1/v989iv+v1vNWnn1rbO8t0/73cj/Mf19dcnqd9yjnn
+nHPOOeecc84555x/ybONr3HOOeecc36nT7H//rzdrnfe17R+2k+Uzp+Frz/H
+l/9H8evzsuLI0g7lnHPOOeecc84555xzzn/Bs42Lcc4555xznsH/LHyK9r+7
+V9p+8uXntm4e1/K4l9tt2z378SvzsuJyyNIO5ZxzzjnnnHPOOeecc85/wbON
+f3HOOeecc/5Gn2L9vv1nsf0U8ft5afvldv8WPMrfdfOmnvLl8UXH/7V5WXE+
+s7Q3R3lUzsfXY339H3W9c84555xzzjnnnHPOOX+Xt/5e/Hp5Si/buBXnnHPO
+Oec8nu8xee/7fBRRO+Krvr/dvzd5fF7Peum8Z2/Pro9v+lzv+V3vd1T9Oc5/
+/flqzT/nnHPOOeecc84555zzsf53ubX/+T8rX68ve7ZxKM4555xzzvl1vr8c
+e9QeidJvbdc85fvb/TvY68v52OP9PtWejWK9fbb63+r3tNPz9EtwzjnnnHPO
+Oeecc875V/3v8qh+3XrP1u/NOeecc845z+9TrNs10fZRe+cpXx/Hfnx/Xlbp
+/K73m60eZqv/dfWtfB5L6WTpx+Ccc84555xzzjnnnPNnfV6/H+X+7eN0Wn2b
+z2z925xzzjnnnPPv+RTr9sifxfZTZJmvlWde1tn2abb6wPeivr7l6vfgnHPO
+Oeecc84555zz+721P/bPwqco/f7yenmOKJ/T8rQ+W78055xzzjnnnO8vxxG1
+p1q9bm/j52WV8tPaPl3nJ9v5/TWvq29n5/Xl6Q/hnHPOOeecc84555zzq/2e
+ftrtflvTydZfzTnnnHPOOeetPkVt+6jV97f7t+Db/B17ezt0HTnPS3SetuWc
+Lf+j6+fk5+pPnn4PzjnnnHPOOeecc845z+at/bd/Fj7FuO/RytZfzTnnnHPO
+OedPedT+inx/u39Xvo715+aI2pXrGHW8x/moL4ervfe4srR/o/yU6lXt9q37
+5ZxzzjnnnHPOOeecc17n6/i73XX925xzzjnnnHP+VY8iak+VPtca63Zfa/5b
+24O/5tNPZ8v5uP6U6kX5e7Cj7Vvb9aX0Oeecc84555xzzjnnPLvX9eef/3sW
+63RG9QNnGwfhnHPOOeec3+9THLdbyt8HNTr9tvZatL//2exndLndHdFx8bE+
+/VTbD9Cb/nK7Ur9Be79Elv4TzjnnnHPOOeecc845j/zvctSP+p+Vr9fX+rx+
+2n+031H9rtnGgzjnnHPOOef1voxyO2L/c1M7Id4+S7vsac8Z0Xy5LL4tv6g+
+R/Xwam89rtb8t6a//7kove36dfrZriPOOeecc84555xzzjlf+9/lqH/1Pytf
+r4+i3B8b7ffceM0c2caVOOecc84551tvbY+U2gVZ2ll3+X5E60ufuztG5zPL
+fK1Wr6/nrdfL2OurXO/q6mlrOvmuO84555xzzjnnnHPOOW/zef1+1PeLrrf/
++/+2HzjybONEnHPOOeec83o/jmi7+PO52k1Xt7Nay6e9PNvyc33UHf8Uo8sh
+y7yseo/a0dNPtfWwtZ1+nM/68i/dN3Jdv5xzzjnnnHPOOeecc37eo37RPwuf
+Ik4n2r7Vs40rcc4555xzzrc+RW27IPp8lM7bfHn80fp5u7NeNy9u/PcYt0Zv
++n3lv47z5dxbn6f1pfLP4fWR7brjnHPOOeecc84555zzr/q0fLx+3m4tfz9X
+3z/POeecc845z+PR+/x6u3Vka9e0eXRcV/u8fpmveo/OV2u7bIq6duD4eYBR
+vOM8jjq/0fkYfR77/95itH1pv5xzzjnnnHPOOeecc/5Nn9cvY+t/P9/a37tN
+J9u4Euecc84553zU/I1s7Z2t980nudrn9evyrPWovTaqHTdFW7uyPp931duz
+7eKx3lo/S1F7PeY7X23555xzzjnnnHPOOeec87f4vH4/7uuP5ZxzzjnnnOfx
+6P1/uX5uX5TmXeRqB83Hc7x+e9znPNpvvfeer9p0lunVnt/6443yOaq9GeW/
+z6+uD+Pqz5j8b9O/63y1HRfnnHPOOeecc84555y/xef1+1Huj43SyTauxDnn
+nHPOOa/31vf/5eeytHeiiNaP8nn9Ml/nPTovkffOk1mX5/H258vhqeOKvK/+
+v93n9aXr6bh86utP6Xzt5yfffYZzzjnnnHPOOeecc/673jfOMi9P6UXbZxs/
+4pxzzjnnnNd7FKXts7R3jj06zlEe52daXq7v9fX+tu2yUe210nG1lXPpuPrn
+ZUXpHB9X/Xk83u/V9eopn9eXzldr/Wm9/0TpcM4555xzzjnnnHPO+bt8Xr+O
+9fZ/l8/383POOeecc87z+BRn3/+jdKP0R3lfflo9zs+0vFxf71E5j/Kr60P0
++VL6y3THlUPrfu+pP+/11vO+3q7uurj/vsE555xzzjnnnHPOOedjfV6/H74X
+i3POOeeccz571C5YLy/bH9naQa3to8jj4z3rreXfel5az/ty/+fbm1E663y2
+5v9c+bTmcx2t9Se/99WH+nS+fT/hnHPOOeecc84555z/js/rl1Hvf9Pd9pdm
+GyfinHPOOeecX+f7y3F7Ybl+bqdE27em05r+/v7+bU6/lE6tR+XcWj5Xt9dK
+5TCmHbo+nvbyPPbz9bbvuH7N5/X752UbufpPOOecc84555xzzjnnfJxPy9P6
+1n74bONEnHPOOeec8/t9irPthSjdY6/f7zq9Ujvoz8KjfNTPF6rNZ7TfUd57
+ftfHVSqf9fGOLs+z3lo+x/lvrbdv93n9cX9DXG6t9xPOOeecc84555xzzjl/
+l8/rl9ud77fnnHPOOeecf8+nONu+WC8v02v17X6P81mK2vTr9xuVQzY/Pp7R
+6d83/yry43reet5/zef1deW5vS767jOcc84555xzzjnnnHP+Xv+7XN9/nm2c
+iHPOOeecc36dR+2Fq32dj978rD8/RXS8y/2U21OldJb5i7+v6SlvPe9RORwf
+/zof/wb5e87HHu9XfV6/Ls/oemlNP0s/Ceecc84555xzzjnnnD/l2caJOOec
+c8455/f7FPvtiGi7/1n5uHlE+5/ftm9K+e/b73XHm82j4z32dbr/Bvt72luP
+69d8Xj+V23E9ydOPwTnnnHPOOeecc875Ge/rJ499Wj5e358+v8Pj8zWtnz73
+Z1F/5vXZxn0455xzzjnnPPIprmof8b++v92/n/Xj+hbVq7f7vP6acsvWf8I5
+55xzzjnnnHPO+V8f1a/V27+9jr504nSzlPPb/anzyznnnHPOOedP+RT77aZo
+u/9Z+Xo787XWvvx/G7Xlv7+/f8Pyf8r7yuHXfF4/lVvfdco555xzzjnnnHPO
++T0+ul96HX8W20+x/ty2fzLK/3r7KP3Io/yX8pnlfL3Np+VpfbbxFM4555xz
+zjmPfIq2dtD288c+r1+3i9fe2v79qk8/1bZD3+KlerifTmt9y+bz+lI9n37K
+1u/BOeecc84555xzzr/t0/JyfX06Ub/fn4XP+2lNZ3+5HPv5L6VT//cQ97ff
+xj399u/3/eM/X38455xzzjnn/GrfX55jTDs9Tn9/+236UTvr1/z4PLb3n2Tx
+1nZ0dPzv8tb+pXz9IZxzzjnnnHPOOef83f53OeqX+8/K1+u30Zb+vLz8XMlr
+8/MWn9evj3ddnvoP/7uc6vvPOeecc8455/wtPkXUPjqO8d+nFLW/fs2nn+7p
+97jf9+tbVO/yeGu9Xa5/vn+Dc84555xzzjnnnH/J5/X70f/3C6J0jvfLj31e
+vyzPOHLVt/Me1bds4yacc84555xz3urH7ev/rHy9Pgp/r/Aq39+u1O8Rbf8W
+b62HeTy67qbI0u/BOeecc84555xzzr/k8/opWvuNo/T/LLafYvu5UjrHn+OR
+f7W/sXX8Its4C+ecc84555xHPkVt+7q1HRTt79jX+/M9WiX/pyqyzLNq9db6
+c7W390dl6d/gnHPOOeecc84559/2v8v1/belfuNluvHv2/ZtH++Pt3lr/382
+bx1fyDbOcu76+s5xcc4555xzzu/3KfbbX9vtjrev72f4NV/+v42oPJfp/vuY
+H9ef6Lie8nn9+riy9GNwzjnnnHPOOeec81/2ef0Urf26fxY+Rfv3/L+r3+97
+3tdvn6feRvUt2zhI77jJOrLlk3POOeecc57fp2htl+1//n9W6/PNj8rm0Xlp
+7T+52o/rT1Qv7vfR9ZxzzjnnnHPOOeec8zu8tV/3z8KnaJ+Xtb8++hwf7aXz
+laV+RvnPNt4x6jrKlk/OOeecc875e721nX68/fpz6yi391v7E37N97f793Lv
+O+9X+zafpe1z9WNwzjnnnHPOOeecc/7fPq+fIurXjeLPYvsp1p+7qj9tm06U
+n9Z+7ON8vt3jcm7d/mqflqf12cY7+sZBrqu3nHPOOeeccx75/nJp+952XDmi
+/Ubto1/z/e3+Heat7dZRXjreXP1mnHPOOeecc84555zf4639pevt1lGbfmv/
+cGn7yafP9eW//rj60rnfj8vhuXq4jmzjGq31pzWdbMfLOeecc845/x1vbSdG
+6ewvxx7t99d8f7t/h/nY/pDz53e5/vl+MM4555xzzjnnnHP+LV/H3+1a++Xi
+9Pa3j+Ns/qNo7e897tedt9s/rrd6fJzPeJ7rIts4RZT/1nreWv8555xzzjnn
+/C3e195fL4/b71t8fTz78db+hzif2frr+voxyt/7fZxOXG7ZjpdzzjnnnHPO
+Oec8i4/th8nmrVGffqncJl+W33u9tV/6au+rt6O8Pj9Xe5TPq/v/s42ncM45
+55xzznk2j9pT6+VSu3tUO+5qj45rrK/3E+0/9lL+c/XL1ed/1Pk6zk8cY/ob
+Oeecc84555xzzt/u8/opWvt/RvmfxX6j7fq/376uH+ns7wnGXpv/t/tT9acU
+d19fV/fnHx/n/f3t2cY7OOecc8455/wtvr88x7q92dp/8lQ7Mcp/lM8+j8qt
+1e/vf3t7+/o4spU/55xzzjnnnHPOeT6flqf1f/+P+tnWn6vtt+nvf4vyU9rv
+/vFG+Yujtjzvzefz87Ii7+t/HuXXXRc5+j+f72/P1j/MOeecc84557/mU5zt
+57naW/N57NvjP/Y4/TH9Btv9ZqsnT9XDUf0JUfqcc84555xzzjnn2bzUvzH5
+8nOxR/ttS2ebjz+LfK4/V9+fc5zP6Pi3+WzNz1Me5T+rt52XVh93Ha3jrv7M
+/ePJU9+y9QNzzjnnnHPOOT/2bO3K/e3a+5GO/br+NH7s+8vrqD2/efpXOeec
+c84555xzzlu9tb+udftov9H2pXTWcdz/01o+0efz9FuO8v3ttuW0H1fN14r2
+O8rr60Nr/e/rn4zyl6eeXF0OnHPOOeecc87f5VGM7ZeIPMpHnL+z/WN8rE9R
+2y93vD3nnHPOOeecc855fj/uJ1kv18b475u6uv8n2m90XFH6o443my+Pb1uv
+lp//96SvI6qH7fXz7HVxdX17i2fr1+Wcc84555xz/qxPcbb9u79d1A8RfS7O
+z+jj3d9f/fGOao9H+ctWH1rLc9R+Oeecc84555xzzsf6vH4ZW6/rDynPRxqV
+/2z9Ra35PE73un65bL78P4rx3691nJ/4/K7jLf2xo/wt/bqcc84555xzzr/h
+pfZ7a5ztX8rWTr+n32a9XdzvN/r81vZnRulH2x+nzznnnHPOOeecc17vff0S
+kc/rp/38WaQ/r2/th4nSz9Yf+BbfX54jqj+1EZ33UV6Xi7N/vyCO9edH1fOr
+y62uPMvfP9Z6nUae7brgnHPOOeec87d7a7uvtP0z/Vfr/LaXw9XR1+7e5m/U
++crm6+NcR23/ZF8/RrT/9vLP0n/LOeecc84555zz93pd/1Xt91xtP/9nsf16
+u+322foz+T0eRVR/jutVXP+Xn4/Wl6P2OmrtVxzl+9vVHu+ovyNpXhbnnHPO
+Oeec1/oUo9qzWfqdnvZ74r529Ghfl9tT/RKl62KdzvH28ef3PV+95Zxzzjnn
+nHPO+fd8Wp7W1/WHzBFt/2fh836y9X/yd3kUUX0rfe5stNb/Vq/LRZ5+3VrP
+Vq8455xzzjnn/GqfYr9/Zrvd8fbv8Wn5eP28XZs/FaPz/3w7/djr62ep/h/v
+d7tdrZf6VbJdF5xzzjnnnHPOOf91n9cvtzvfv5GtX5Qf+zLO/37ufjrX1ZOn
+onS9HEeWftfrPFs955xzzjnnnPOrfX95jiz9Qsft2Sj/5/243ObP7bc3x0cp
+P2f72e7xef3T/QBRzsaWM+ecc84555xzzvlTPq9fRuTz+im9v/9v++Wy9XP+
+mk+Rq7495++KbP2i5mVxzjnnnHPOea239pMsP/d8O/o4n9t8j/V5fW/7sbf8
+a/MzOv1r+/GuK//IR/UTRun3pRMfb5brjnPOOeecc84559/zv8vbfpL15/bX
+zxGlk61f9Kt+fB7z1LfWfrbSdm3+lhh1vKPLbfz3mLlvcM4555xzzt/uyyi3
+m7L58XHFxznG5/Xrcqv11nZlFDnSOVt/njtfY+pn/X5H9Sfcc1ycc84555xz
+zjnn13m2/tKv+v7yHKPO77R8vL6Un1Hems+SZ4+nyvl+z3Z9cc4555xzznnk
+fxY+xX82y1M7NEpnmd7d/TnbfIz1eX1bO708Dyfy3nLez0/9cZXqQ22/WSmf
+belcfX7vrz+j6kPvdZ2l35VzzjnnnHPOOedv8Xn9fvh7hVk8Kv/1dutoO+/X
++XH+5+Vlfnu9db93R+v5ir0t/fye7brjnHPOOeec81ZfRpbv4YnzN8bn9WPa
+9bXznbb5KZ2X4/Z1/7ys1vz31qtc5z1/vTouz3i/ufpvOeecc84555xz/kZv
+7T/8s9h+Xp+t//PXfBn9/ZZ9Hte3dX5GeXRcrfXz6hidn7uv99J2V3m264tz
+zjnnnHPOI19GfTv3mX6hON+1ftzPMC8/3d4vna+29nJUPvcfVyk/V533Z30b
+dfUwinK/R2v94ZxzzjnnnHPOOW/1v8tx/8Z6+2z9om/3KdrO4/bzy6j/Xv31
+9ld7lJ9WH1vOpfKM4r55jMf5H+fRcV7l2a5HzjnnnHPOOY/8uH39n5Wv18/R
+2g8TeZTPdbq17b/j7cZ/f1HOfoC4fNbHFXlf/YnTbzsvrcf1Fp/Xl8p5iiz9
+rpxzzjnnnHPOOf81n9evY719tv7Pt/ufhU9Rmhe3PV9j+xvX+fg3yF/Jo3zU
+H2/kY/td68vn+Lys833f7/lGcdV94zg/Uf7qPdt1yjnnnHPOOeej/Dii7eLP
+t7XX5vTW7fp1Oq3t31Z/e/9A6/H2+Xa/0XG19iO93UfVk2V6WfppOeecc845
+55xz/iX/u3xdf9eveVRuy/Xr8/Kf1fbbz0Xrp/RK+63dvjX/relcXd+i443y
+v/+5+fOl9ev01/7U9TXFM/eZuNxqt892XXPOOeecc8555Muo/x6q46ht78fp
+H+fj7PdpX7ff3v6KdfrR+eo73vrjutrv6Xd6i8/rS+VTun6z9NNyzjnnnHPO
+OefX+bx+GZFny//bfVvOf7er78fgfb6M8f2Tb/Fz5baNq+8/0/pleltvLYdo
+T6PrW5b7zDLK/eecc84555xzns33l+PoayeW0m+d5xPlq7/dl62foZT/5eej
+9eu4b/5Vaz776s/bvXR+o/B3DznnnHPOOeecZ/R5/TLqfVS/VrT9n4VvP5+r
+PPP5tLxcv/Vs/Z/P9ru2lmf0+Tz9llf7XeW/9uP7Q+v9bX2c8fWSs9zi48py
+X8p2vXPOOeecc855q09R2z5t9f3tSvNMovxt02893mz9D73lWds+3U837h+4
+16OonYf2Fp/Xl/phpp+y9HtwzjnnnHPOOef/7ef6H6Ko70+I8rneflS/UGm/
+3/T4vK4lWz/n1f2lkbfWK/7Xrz4vx15fz/ePp3y/WvtT5fbUdTHKs90fOOec
+c8455/wtPkVbu3iK3/0e73+CKJXzMt32foNR3tfPGR/PO3xeX+ofLqWTq5+W
+c84555xzzvm7fF6/jMi36UTt2T8Lj9Lt//7tp7yvX+u93nq82fobn+q3jOo/
+/+v3nJdR9734fjitr7uPbX1UeUY5e/a6uP++xDnnnHPOOee8Ltray1Pc187N
+5sflfL7cnvK+43qLz+vr+pnz9MdyzjnnnHPOOX+jz+uniNrdfxY+xfrz75tP
+Nda35VxXbuV0svryOL/79wpb63+0Pf/r+9v9uyrv+uuott6O7Vesvy5a/ery
+v+u6uPu+lO2+wTnnnHPOOefZfIqz/YeldKblUn9Rtv6K0f0eV/UbXO3HxxXV
+h2y+jWz9GJxzzjnnnHPOf8On5Wl9b3/OOp2S7+cnTvdr/mdRntvtstWTq+pP
+Nt9fXof5V1f5/nbx/eQ4nauv6/p8tuZ/bHlu85+zn/+8Z7ufcM4555xzzvlb
+fIox7bVtutF+s/VLjO7fqO1Py+bH9WR7frN5X/7z9btyzjnnnHPOOf+GT8vT
++tZ+mz8Ln9OL0t9fH32OryNL/YnOe7Z+xd5+yOVxmn/V6/8E0doPXEp/v962
+X1/L/ZXuV9H2rR4d/6jy36Z/z3V0/30s2/2Ec84555xzzrP52H68KLbbZ+uv
+yNFP8vz8qz6P6sP93lv+WfpXOeecc84555z/pj/bn8OPyzNK57n6s45s/Y2l
+/E7rp+OLyp/3+fRTW706f76O60Mpnv/906vPy9PXXZbnF+ecc84555z/mk+x
+bk+N7QfY7m//87/XD9N7vpbpXt9f0Xd+n/J5fV3+8/TDc84555xzzjnn/+1R
+/8CfhU/xn81ytJ91HG/3ne/THuvP1ZNpuXRenu1v3JZbVG95n7eWf11/YxRZ
+fj/0Oh91XqL0n7ruprj7OcU555xzzjnnfKwvo7X9u411+y5bv8fVvr9dvv6K
+/fxGx3G9l8ozS78655xzzjnnnHNe41E/zJ+FT/GfzXbrqE2/lM60fplefFzr
+7Y/zH6UT5edqn9fXHu+1vs3ns/2B2/xE55f/9XP9rutorbft9fyt3lr+o87v
+P0E8dT0uj+++5xTnnHPOOeec87G+jHI/VZROtn6SbN5b/td6nI9rvTU/efrV
+Oeecc84555xn9nn9crttOz3afqxv81nXP7D+fGv+5+2W+8/jx+Vw3Xk5Ls/r
+6ufT/X61+YzK59d8VP/n/nal+r/dnv/1q8/78v857rlO658jozzbOAXnnHPO
+Oeec/5ovo769XNufE+03Wz/M2HZ93C5efv6u/o34fF/lpfqWqz+fc84555xz
+zvlb/O9y1B7/z8rX6/v9eL/z8pTfuu23sV8Opc89P4+i19uOt9Wvrp/b/V7d
+jxfVK/7Xp5/W56u1n6o1/f38PX99ZffW+/nYenLd9Rulv5+/0v3wvGcbj+Cc
+c84555xzfuxTjOkvnZdL7fGv+v52d/WHbM9rn8f7zdJvzznnnHPOOef8nT4t
+L9dHvv7cvN2+t6a/9b//b9v7x/0q2/y0phNtv1x/tjyf8tbz2H7ex9bPOZ7q
+l4vqw9t9f7va76Fax3a7unSyXBff81H3vb778DY/o6/TqBzufp5mG1/gnHPO
+Oeeccz7Wp6htDy6j/3u6svnxccbHe63H5V7rreedc84555xzzjmv8ai9+Wfh
+U/xns13d9vPycv/biNLpaxdvt4vyE+33aj8+nt7yHOXriMqzPf+19bO1PvT2
+py339/7fZ9w/vlI51F8v/F3eej32PRei/NTfN6J0RvWTX+3Zxgs455xzzjnn
+nD/rU7S2N6flt/VTlcphfVxjPd7fWkafr2s9Oq75+EaXT+TvKjfOOeecc845
+f4+v4+9223Z3a/pROpHXteuj/M77jdJpzc9bfH+7fzs9Kvf68zFFbT0Z3Q+2
+Pq5s56v3/PZd18/PF+L3+n59KN3v+++fUfp96UTHVZ//qz1b/z/nnHPOOeec
+83f5qH6/rP1X63z2+Tq9aD+xR+U/xbX9CVE+8/czHOe//rg455xzzjnn/Dd9
+Xr+Mrf/9fNS+jtKZt1vuf+tXtxOj/I/qD8nm+9vF5R9573k/Wz/7znuUjzzn
+pbXe1h1vnvk//E1ef/+fovY6jdKpu1/15+cpz9ZfyjnnnHPOOef8294X288/
+2w+2/ny5f+Ns//ZxOvoHWr2vX/r+88I555xzzjnn9/i8fhmRz+un9P7+396+
+Xufn7e3H4+2vK+erPcrPsbcfb93nx53Hu8qn7bqL0+E8s9dev6V45nk3Rf1x
+HR/v+HnFnHPOOeecc875nT5Fbbv42X7IKLbHUwr9AGN8bD8q55xzzjnnnOf3
+Uvt68uXnIt9+/s8i/flz2dqDv+at5yXaPvL97db1Zx1R/auvt6PyX3dc5Xzu
+p1u6jjh/s8/Rep+J0m+9Hu/qf17nc5Kz9yvOOeecc8455/xLvozxv2capT/J
+fn9dlL/W/vZtOtnK/y2+jLvPI+ecc84555zf73+XS+3cKIxT/7rX1Z/a+Vrb
+aN1v5L39AJx/z+dovY76rq/4eovytc7/qHwe36+2+Wk93tbtOeecc84555zz
+X/a+9vt6u1J/yPpzc2Tpx362f+a6ctjPd/m8rLcvpZ9lnIVzzjnnnHPO/zmM
+7fq/n4/av9vts7Xr3+JT1J6vu9qhtfuta3dfF8f5zzYfhvOxXlv/o/v58X1+
+m87Y+1t0vyg/r0rl03q8ffex+nxme+5wzjnnnHPOOeeZPYrWfozadEv5ae1n
+eLv/cxjb9a3ltp+P+nGM2v4xzjnnnHPOOb/b69q55XHtbO30t/j+8hxZ6kmv
+fy2i+h/58v8ovajc8szz4W/ybX3r7QerfV6UniNt9434ObTv8/q7yrm13KL8
+Z3secc4555xzzjn/hve1W/P5tDytby2HUdHaHzgqP63n9ylf5683//v7i/u7
+vlLPOeecc84559/343bienn6fH17k+/Fdb+/s59+nI8x/pa4uhyu8+i6W64v
+ne/tfqbPtV7XdfvJMk8pj4/tjzq/3/3l/vvbmPvY6PvSffPfpqg9rmzPKc45
+55xzzjnnOb0UWfqZn/Z74vn+pVY/169Y/3cDj/Mzx3F+2s9ntnrIOeecc845
+5/s+r19ut20fZeuXyOZRua23W0fteRnrpeifn3BcDuej1A9QW//7zteveVye
+62i9Lkr1ZL3f4/O+zVdff1F9fa6r5+V5mK3pn8vPOtrP+93Po1F+zX2pfx5s
+tucX55xzzjnnnPN7fFR/Qlbfj2h9q5f2W54X1BvX9mP0Htfz39Nel842stVb
+zjnnnHPOOR/lURxv3/990fzYl3H2+1iidM77n0X+1+u3Xjre/fyX62kp+vZb
+78fpx+eV/411eUb1J0qn7jpa76++3rbm/1z/an/6d11f1z6PstXPqBxb60m9
+Z3secc4555xzzjkf66P6H572abmu37LVS3H190HNMbaf86n+kHn9Xf3DpfI5
+m87Y8uecc84555zz53xantZn68fI5lPUluexb9PtS6fe/yyOa72+3seWW305
+3JOf8x7l8/h4+Xp93fUSp1N7vo7ryfn0W+tta/rrdNf3gbbjjdKJ8ld/3yjt
+71c823ONc84555xzznmfL+N93xd0fFzxcdZ6b7ld26/Sm8/67fv6c9ZxvvzX
+60vlPNrX+322/5lzzjnnnHPOr/dpebm+Pp1s/R539ascl2cUZ3+fqLSf8jy6
+aL+Rt6Y/qt+jLup/D24dWdvv0XHyJ31ef67+n09/irb7+fnj7Ut/VH5+x7M9
+7zjnnHPOOeec9/lxP9V/Vj7HM/3DUX7Oe2t/Y+Sj+i2X+Wrtn8zy+6HXna8+
+r89n63kcW87ZrjvOOeecc84zePt78rR8vL6cDt+PbP0bz/afbMst2v4tvr/d
+6PlX7df7Oj+Rtx5v73FFcdX12NefwN/irfeZZ+vDvL7uucFbPdtzkHPOOeec
+c875sS/j/Pfhv7t/qbXffuuj+vdK+z3bP3lXP+SY/tVs3l5PasuhtZ+Nc845
+55zzX/BR7d/S+/a0PO0/2j7yse2jPN7abs3W7zG2/yQ6/m05RNu31qunPDqu
+nP0D23xGfq4c5hhdf66+rpfHGddPznl+z/Z85JxzzjnnnHPe58f9Uf9Z+RxX
+9SP15SfO5zLduL/u2Lfpj+q3L/UHtvVb1h9Xaz4jP87nqH7XPD62fErncRtZ
+xms455xzzjk/Px+gvj3Y1246n5/S9uv0x7ab8pzHqPyz9W+M8qh8WuvnW/zq
+foDjdKLrq/66i3zU/eSefpLr/Ph4W8ufc36nZ3s+cs4555xzzjnv81J/1LRc
+6meOfLmf2n657X6j7frSqfer+/GO810/LtB6HnuPa51OX37i8/Q1b+33Xn7u
++f5bzjnnnHPOW3xaLrU7ou2PPc97fuSj2stPebb+ilEeHW9UP7/qrf1CY+tt
+6/VViuf7c66un6O87z6c577K+S97tucp55xzzjnnnPM+n2JMv/o23d78rPd7
+vF20fa/P8VT/53J9uT+zrzxjP9tvX8rHN31eX7pe+sotz3gN55xzzjn/TW99
+v21tBx23j7K9/9d7X7sgz3nP1o/RWm6t9e3XfPn/OrZ+Tz/AvH55Put9VPk8
+3S939/08yh/n/H7P9pzlnHPOOeecc97nU5ztb19vt98/to39/qIof9v8HO93
+m06U/6v7Oceer7jc932dv/b+zMhL56X2/L7dx57HPOMvnHPOOeec13jr+/Co
+9t3bva89lf/8ZuvH+DUfVZ5v6Zc4Pp48/Tlvv973lznnV3q25y/nnHPOOeec
+8z7fXx7Xf9Xb7xTF2X6kbP2l6/yVom/84jnfP1/R8X7Pj6+7+XN15cY555xz
+znlOb22HRu2a1nbrt/258zstT+uf7a+oz2dUr37N97drb6ePvU7j/Jz1q8vz
+6Xp+9/V+7Nnuk5x/27ONI3DOOeecc845v8dH9VMt0+vvXz1OP9rfNp1svszv
+Vf1p1/lvjrPM60vlcPz5PONrnHPOOeecn/HWduV6u3Ws06973659P9/uty+f
+97c7Jhl1HtfpP9X/EOUnOi+/5vvbReezvZzf6XOMKuex9bn+/na199W3p+57
+nP+mZxsX4JxzzjnnnHOe06do6y/afn4Z3++P7S3nZbpZ+kW//z1ax+cluh62
+5325/vlxNM4555xz/g3ve/8c9f68Tb+1vVPK/7R8V7um9f1/rMdxVT25q99g
+/3jytNOv9uX/22i9rpfbPd8PcK1vy62v/M/fr3r7bd7xvLj6/sY5/+/I1s/P
+Oeecc8455zynT1HbrxV9fr2+1C+XrX/1rn7a5eef6xft6x+OjustPq+vG6/J
+0+/KOeecc86/5K3thevehyMf1a5s3e9T3tf+bS//s/Xnrv6Byaf9/1lsv17/
+Xl/+H0X5e5/qtv8Vry/PvvO1TeepfrOr/Z5+PM75Gc/Wz88555xzzjnn/Fkv
+9WtdO45Q//t9b/GonKPj3U/36f7S2NvO+1t8Xl83/pJt/I5zzjnnnL/dW9tx
++8vrGPV7GduobdfUpV9+D29N5x4f1x65u/60tnei8n+L72/X286N0+FtXqqH
+6+1H3U96r4vouLI8R6Ly6XuOcM7PeLb+f84555xzzjnnz/r+8hyt/ULTcqm/
+OspPtv7bUX5c/q3leb8f939G9Se/l/p1s/Svcs4555zz3/RR7b572i/Re/h6
+f9d/z1Ip/+v8jPX69khvOzFLPXnKo3L4pxDH2z/f7v6615Z/a/1s3W9fOnH9
+uvu5MPa+V3+/4pyff75zzjnnnHPOOef/7Vf3e2fr1322Pzkqr/Xnn+9H3ff4
+fOfy+vGLaHvOOeecc86v8/b32+Mot79a24ml/By3E/K2B1vzf+zXtV8iv7q9
+f0/5R+2x+Hwt0326Xcz7vL7+t/Y7tW7fmp+s3nZcnPMrPFs/P+ecc84555zz
+b/hxlLbr/73It3tdeebvL23b/imf16+PN1s/Kuecc845/7LH76u125faEet0
+nmonRu2gKJ+l7feP8/523P52ve2p+vowqvzvKp/W+r9M9+n2L3/Kj+tVqf7U
+R5bnwrP3Gc75FZ6t355zzjnnnHPO+Td8itp+p9b0n+pPztmfn8eP68O2fjzl
+o+ot55xzzjnnLT4tT+tb2wXR9tnag2/3KO5p38X5WG+XI/9RPN8+5d/w1npb
+d13cd18tHW/tc6Rvv3E+OOf3ebb3HM4555xzzjnn3/DWfrPWfuCr95vNo+Pd
+//zT/ahx/nL5vL63X5RzzjnnnPPzHr+v1qaTrT3I/0bUvlsv77ez+uN4v3F9
+O84P521+db9NqZ+k9f68zn9rfqJ8HOev9/5w9vvEOOd3erb3E84555xzzjnn
+3/Yojrcvfb48r2ZUv99THpXPqH68Ud53Hq/2OHKNx3HOOeec8297e7tm7dna
+d9l8iiznvbVdfE08Pz+H/4JH1+H5fo+x1/v5+3Dkddd77e+FxZ/nnL/Ps70v
+cc4555xzzjnn/+2t/XXr7Ur9Y639hNm8tRzu8Tgfd3tUbsv1z4/XcM4555zz
+b3tre2S9XGrXfNX3l+c4e15ay/84P61+dYzKZ33+z7Vba6P0+SzzlH7Nt+el
+dH3V3idL0XYf6K3n/eXTWg59+eScZ/Zs71ecc84555xzzvkZn6Ktvz36/Hb7
+t/j+dtf3xx6fl2053+N5xuP6vL5+Rtuvt6sbV4q2jz1XuXHOOeecZ/PSe9cc
+2dpZ2dp3JZ+W69576/1c++u6GFMP3+7n21N97e7z+Smls8xHXJ9L11Ht9mPL
+pxTXtSv307+6vtXvN2f/Cef8Cs/2fsU555xzzjnnnJ/xKfrGQb7z/VrRcV3t
+x+clKv9Rnm3cbdQ8q3m51F99z/W1zX/peqzNP+ecc875V7wt6t+vfs33l3u9
+FNd9H06Uztn2Qt17+Db66nPe70ke5a39DL39FbX7Pa5XcbrrfJbq56jjqq0/
+vemcbXdzzvlTnu39inPOOeecc845z+BTtPVLbz3q/3zKRx1Xn2/Lt8+zjbtF
+9WZb/tnq+T3XxVvOI+ecc8756HlZ/b/X8Gu+v1yalzIvj26/tLazxr5XR+/P
+59sdx+nX1/O+9PkUZ9ubo9Lpbfe15nNaX7rvlfbblk628845/2XP9t7FOeec
+c84555xn9tK4QG1/dWs//9W+v12+eVmt5T/Wt/nJVj+zXhfT8rqejBnfyTcO
+yznnnH/H699/lvG735M5qr3wdo+Od10upXbEcXnWvx+OapeNLYf299tl/uLy
+GX2+znrfez6/x+f15667eu9r12crN845r/ds72mcc84555xzzvkv+P7yc/O1
+1vnYj+fnZU2RZfyR93lf/XyqPnDOOeeZvf59sjWduuj/fqEoP335z+Ot7z/Z
+3tP62jXn62c2H1sOvdfd+L+feM9xjSoHzjnn/Bue7f2Nc84555xzzjn/ZW8d
+F7h3vtZ35mVlO+9v9yj60imlW18Ps4zPcs4551f4qPkYfduPeq+rf98r5T/L
+eYnyl+39rfd972vzr6Lj6n1fHTPvaJ3v9nlZo+ebRfm5+vra3+/V9x/OOed8
+rGd7r+Occ84555xzznm9Pz1+sdxu9LysOL42L+st+RxVD/e3668nucZhOeec
+8yt8+xxsfa+ItuvbPo+3zre5x+vPVzYvHe+03DsvKJuPLp+vzcsaWw7n22tR
+PjjnnPPMnu19j3POOeecc84559f5Ms7+3Zko3W36pXxEKWSZfxUdV7Zxpd75
+UWfLs2/+VeTbci+dl1zj5pxzzvkVXv987Hsut76nZfN5/fp9I/v5erpdcPZ9
+7+2+Ps4p6toF6xhXb/c9On/1xzuq/oxqX/T68ji/ch/jnHP+Vc/2Hsg555xz
+zjnnnPP7PYreeT7L7cbNyxp7vNv9Zhsnemoc6thbf599nY/n5ulxzjnnX/Lo
++fub87Lq3+uW6++bN/L0e35t/rO9r47y1vJpbUccp9t6PW699Xq/el7WqPrW
+6ve0OzjnnPOxnq0fmHPOOeecc845v9OnuGo8Ikp///Px9y9F6TxVbr3jHevj
+Pd7u/PhItvGgt/vo6265v6e/14Jzzjkf663vUaPmER2nU//etZ+/9vfV4/0+
+5fP60e8hT82HaT3v2d4zn3qP3V/u9XU+4nlWrX51+/Tb7/PZ7j+cc85/zbP1
+h3POOeecc8455zU+RW1/8jL65wV9xfeP839W69v750v9/7XRmv6ocZlR4zh9
+46H15TTqfC3TOzuuUR+j7gOjzu9yfZ7rlHPO+Re89bk/yuvfA/ven8976/vV
+KL/rfWAdV7eDWo/3LT62fVd6jx1fz0f51eXZVw/ztaOXx99bHzjnnPOxnq1f
+nXPOOeecc845/2/fX17H2d/f56P9nnh+fOTtfny9bM9n7/VVu9+r7ye9433Z
+ri/OOee5vPV5Wkp/mW77c7z1Odh6vK35HOtReY7y8/XhnvbRfByl+vAWrzve
+beSqn9f5U+XfWg8neeZ+G+Xn6vsG55xzfuzZ+ts555xzzjnnnH/bp6gdv1hG
+7e/X5xmnu9r7yiEu3zF+dVyX/+PyLB3v8+M1o7x3vKy2vkXptI6zjL0vxec3
+y/XOOec8p1/z/jDH2Ofydr/3zqu57n1mzHtvnnlZUT6vnp8zyqP8L4+jNG9m
+Hc+/Jz/lo96fl5/rr7dROk/7/vFe3f7lnHPOjz1b/zznnHPOOeec82/76HGl
+d/v2OHP6vL5tHOG66OufX8dXynn8OGbv9RgdT2n9XePCd40ncs45f7cfPwfr
+n++tz9NRz7vj4422O//8HZ3/5ed733PGvafVvv+0to+i9J86L33vS63tnXW6
++eZBPev19bD1vTdK59vvw9nafZxzzn/Ns/XPc84555xzzjn/hu8vl/qHt9sv
+P5elX3dUP/ZTPq/vHS8YOz64jdHjd+/uz5/Xl8q/b7zsqfLZHledz3HPeNN7
+70ucc87rfFouvT+0vve2vhc9+x6ef17Q/nbj571EcfZ8ZSvP1vpz7Ov9PT2v
+6ate/17a1y47f98Y66P6EzjnnPNnPVu/Peecc84555zzb/gyyv3JpXTeMX4X
+H/+1HuWn3dvmsWyj7zzWH1fruNI99eqp836dH5fb+fTHjreW6k85P2+7/3DO
+Ob/WR81fyvZ+nu09/5r5WlH0z2+JvLXcnp1ntf780/OL+D1e/5486v7Q+p7f
+m86vtMs455x/w7O9z3POOeecc845/4aPnXeRbTxufRzR8fV6Kcb3248d94mP
+66p5WTnna23zf3y8vPV+0loPn64PnHPOM3r9e0gp/fX22d7P3+7LOP89rut0
+jrfbRut7S998s/b6yd/to+pVb3ttnZ+x9XkbY/sN8rRrOOec8/+ObO/VnHPO
+Oeecc86/7ct4fv7VcX7ifI/x1vyc95zzmuLyOT6u9f62+Y/2e89xjSqH3/FR
+5/Hqev5sPeGcc97r+1H/PMr2Xs2P/dx8jzlGvW/U7Zd/07f3mavfY5fp1be/
+xrRP64/3OD+cc875NzzbezLnnHPOOeec83f5FFeNi63X987jOh4fifY7ykvx
+/Pyrq+dlHW/fft7PHu/T9d+8rDt8Xt9bf56tD5xzzu/y/diuz/Ye/uz7f1x+
+2c5v23nvjSzzf/jbvLZdMPb987r36sj75pVla19wzjnnfZ7tfZ5zzjnnnHPO
++bt8f3kd5b/LEG1fSr92/s/V87L6juu8tx7vcTmMm091Np1SPpfHE49rPDUP
+rdWvrp+/6e2/73/t+co3Hs05H/+8uzr91uc4/2+vf9/I9r79lI+ub9Ny3Xv+
+uPeBayPb+097O2VMe6p1/s/8+azzoKJ0RrW/zrWvt3HtvKzz9erq/HDOOeeZ
+Pdt7Puecc84555zzd/kUZ+fD7G9X6lff5qM1P2PTac1/q0flXl/OT81HOk4n
+Lv9lvsf9XvbYcZNR83mi44rKhx/71ddve73NNT+B89/2abk0zh5t3/q8qLv/
+zDH2eVR/n+R/Pdv79tPv+ZPXXS/nn+Ojnte919Go+PV5KaPuV+fuq6PmZZXz
+M+p477n/c8455/xOz/aezznnnHPOOef82z5qnsz+du3zJVrzebzf63xUuY2d
+lxWX85h5cfXnseRj5g1u83NcPr3zgrbHyUf6U+NinPPn5l/N0fe8q09/Gdd9
+f0vtfLNjb0//HX7+PfDXfIqz89aufn8e9X57fLzn3weuLuco3V/zUjlPXqo/
+009n60OUTm97ap3/1uMtbcc555zz+zzb+z/nnHPOOeec82/7FGfnyYz9/fft
+dnXp5P3+q1HjBVef3+jzx74+zuvnv0XHO2p8hz/r98xjzDZvgfNf8Prne+99
+flo+N88qz31vuT7LeTzvo+7nX/UpWucfnp0f2HrdPXUe95d752/H5frMfEXe
+58qZc8455/We7f2fc84555xzzjmv8Smu+j334/TPe7Tfq+dlXT2e1VoO0eeP
+fX084+ZlHXtrfuLtfR9CRp/Xl85j33VRXx84z++l66g16r8P5O7nbyn9df6j
+fL/L48hVD1ufp9vI9n479n2s/nmX7b30nvf28++Zo96rSzHqetk/rmz3H845
+55zz73m29gLnnHPOOeecc/7fPsVV4yxjx1OifG/Tz+b72/X/nccx40HR9vm9
+dzyxNp3S53mbt14X++lu99M7T4/zTD4t182beuq6vn5e1rRsPsN+ZKm32d5j
+73lPfu/75+h5TW3z9M6/f9bdN+a4px1kvhbnnHPOeTbP1o7gnHPOOeecc/5t
+753P0zb/KvJ5fWk8hf/1/e3+LZ6vdbSOu52bJ5PXjftn9vN/D6s1Hc7f4NNy
+7f2+bfv7r+u+5875+0Zf/rP5vL72fSBLvc32Pnz1e/VbfH+70d+bN66er/2e
++Waj7j+j5q1xzjnnnPNWz9aO4JxzzjnnnHP+bZ9izLjbNt1llMdTonxmG7fK
+Nl42Sds4fZzOr3vf9RKVN7/aW8dbj9PPN5+Bf9NHPZdb63lpv5Pfe1+tf38Y
+9Z7z1ft86f3h7no+aj7MPe/D9fUw2/vh2PfM9vf5sfOv+vd7z7ysOO6+jo7z
+xznnnHPOI8/WHuGcc84555xz/g0fO89n/bkovTlqvz8hSifbuFU2j877FFfN
+o/uK19bPvuur9Xrhxz6vL42P994Ps8zb4bl9Wq67zzx9vbRuf9886tLz66r8
+93n9+8lxPq/zbPe3bO/D63IZPc/n7f5PV1zdLoj97nlZfe/bvkeLc8455zyb
+Z2uncM4555xzzjn/tk9x1bhA63ywKP1s41Zv8avP1zd8Ww7H/t7vUfmGn59H
+V0qH8yPvm+dw3f121H6ffR7V31dbn2v7+cv6fHnu/jnG68/X0++303LpOvqq
+j7qOeucBrtNp9VHthafaU6N9XT5R/jjnnHPO+d/I1j/POeecc8455/wbvoz+
+8dwprhpnifabbTwrm+9v116erfXn17xUPuZr5fK+88V5nx/Xt/h5Oq3vnX81
+6r7U+9xpK4fz39/YOw/k2veWVv/e/TDne6/3yf3teud51qdzl6/r4W/Py1pH
+nvcxzjnnnPNsnq39wjnnnHPOOef8G76/PG58Kko/Wz5/zUeV//7+nh+Pu9uP
+yy1KJ96Oj/R5/dnx5SzzfPg1vh/X1cNo+6vnQY2axzX2PaR9Htfkpet61PMx
+57yU6++fY66v8++BvfVq/3jyvI/dNc+qdp5SKZ3s/lT7ZYqczzXvn5xzzjnn
+tZ6t355zzjnnnHPOOf9vP47SduPHU/ixl85j2/gOj7zuejFeNsZHjUvmG1fl
+13rv/bC2vo2aZ9Wa/7f4frm0fw9Y1ufp+rhG+fF+2++f0X6vur7G1p/ous3z
+3jV6ntV+1JdDXfrv9bP35yid3uv9qefXfn6yvb9xzjnnnOfxbO1lzjnnnHPO
+Oee/6cuoHXeIPh+ls90+23jZ231/u955RHyS2vp/fF7icuf7Xqq3tfOxSuuz
+zCPi9/q0XLoPjLrf8mOf4qp5cdmey30+6n57/nvnrj7v2c7jqHl9vzqfaozX
+1+fW97G+97f75zeu82deFuecc855nWdr/3LOOeecc845/02fom18Yfv5ZfSP
+d/Oxfnzez59HvvS264X3+by+dv5htnlBvM/3o77+9I6/T+vNv7rXpzg7P/bp
+eVln5wcee/v98+w8xr7zmP989b1HlSLP+8lbve89tvU8nZ9P1XofqKtX3jM5
+55xzzs96tnYu55xzzjnnnPPf9P3lOVrHE8+OF2Qbj3u7Tz+NOY/x9r/iY8dt
+66+L3/R5/ZjzuI1s845+3euuo/rvs2p7HuX5O258rE+RZX7Xen/78fy8rFHl
+n+29qLf+LNPN937C//qo50Lfdb1NZ2y9yvaexjnnnHOe37O1TznnnHPOOeec
+/6bvL7dvP8VV4+x8rE8/tc6jWKabbzzuHo/r/37E9Z7v+7n5b/XnK8t8JH7s
+rc+jUfMxOK+53987jyvvvKyn57N5b/mGr8/jqHl3UfpX57+vPcU555xzzkd5
+tnYl55xzzjnnnPPf9Clqx0GO09mm25o+H+vL/6PwfVlnfdT3M/Aan9dP5dp6
+f+MZvP28XzW/i/M7ffQ8k+Xn2+ejXp3/1vlmffPT+Lu8/v4/ap7tMr3+78s6
+Pq7IW59r2d67OOecc87f69nag5xzzjnnnHPOeY1P0TaOMEX//Bbe5/90xfnz
++Gteul6iMB7X4/P6tvmE28g1T+l7fnxd1J/fUePynNd4tvrWNz8kvr5qr9Or
+519xXvMe1XtdXDtPuPX9JNt7FOecc87573i29ibnnHPOOeecc17jU7SNv09R
+O48i2t//rDzfPKi3eOv5jbbb31++8b6nPCrn4/HE+Prhf+N4vPPs91Twe/z8
+/STb85E/61Pkqufn/15w3ftVf5hnxe98zzmuz+PeB8a8J3DOOeec87d7tnYr
+55xzzjnnnHNe4/vLc7SNg9SPp2Sb1/R2X/6/jvj8LtPNNz74rPeWZ+32fL2+
+dt5CtnkX3/RtuUfnpfW+lO05yO/xZfS/P2T1KEalMzai52A56s5vf/TdZ87/
+PcconWi7dT7qnl/t79t3vz8fH+f68+2/l9G2n9L2nHPOOef81zxbO5dzzjnn
+nHPOOa/xZfT/nanWdPg9fny+tuev9fzypY8Zl+SlephtPsZbvW5cvlzPW+8/
+/NveN394VL3Ncx879nl97/yosZGtfPI9dyY/O5+wNp3W97en8jlqXu5xfvLU
+E84555xz/qxna/9yzjnnnHPOOedX+BRnv08gSifbvKa3e+v57Z2n8Ss+dvwx
+ul5+zbfRd//hfX7dfTvb84vf463PkZz3yW0+R/m5ee/l6E3nt+bFcc4555xz
+zt/o2dq/nHPOOeecc875FT5F7e/1t6aTbV7TV/34vGzP0366+eZN3eOl8llH
+tD3vnZ+Qa15Tfm8tZ/OseMtzobYejnof6M3PMt3r51mNnX9V/1wePe/r7P2n
+r15xzjnnnHPO+daztZc555xzzjnnnPMrvHecdB3Z5in9mreeX9+jdexReU7R
+9j1FX/XSfIkozv89Jn7k9fftbM8jPtanOFt/rnl/eP5+Puo5O/Z5sc1/3fN6
+jnvqSe/f0dseJ+ecc8455/x3PVs7mnPOOeecc845v9NL44BXjTPyPt/frvfv
+SW3T+U3flk9feX7V5/W18wdyzV96i9eXf7bnCB/ro5/Ltd9DdfVzqtfX+b96
+nvPx/f/6vze6v7/z+R97XOPKwfxnzjnnnHPOv+/Z2t2cc84555xzznkGn+Ls
+eG6Ufrb5Tm/30nlcfr78PVHr7b/qY+c/fM/76km0XbZ5UPl8Wu6dJ5PtOcL/
+Rut9pvd5PXnb9y99fx51X3m23sda77frfLfPy4rSubp+3uXr49pfv80v55xz
+zjnnPJ9na6dzzjnnnHPOOecZ/Hic7j8rn6NtfsY2fd7n+9vV/32hp+dHPe3G
+hds8um9MkW2+Uy6vvx6zPRd4ny+j//7c+rz+Ne89L9de1+efv0/Nzyzl/9n7
+5DryPB8555xzzjnnW8/WTuecc84555xzzt/oU5ydh3Cc7v/8r/3P8dbx2f3l
+deSZN3W3j63nX/Vs852yeen6muPq+RV8rO8vr2P89/jxv37Pe8uo+bqt6Wy9
+b572Nj9Pl9tZ77seOeecc8455xk8W7uec84555xzzjl/o09xdhwt2/jv231/
+u97vifq6n41tff62Z5sHlc3r729ROtnu81/1ZdTeJ+PrYp1OtufC2/2e83v1
+/Ns4P2sf9dx/9nq5zlvnp3HOOeecc87v92z9AJxzzjnnnHPO+Ze8dR7CervS
+/Jls48Vv8eh87S+vI9t8qvHeV2+jcnu7z+tL4/tT5Jofdf/3t7TeD7Pdt3/N
+95djb50Hku3+/xb/J4i+85t//lXkT81nu6ecr/dluZS+34xzzjnnnHN+hWfr
+B+Ccc84555xzzn/Bpzg7HpptHPktvr+d79Eqjdv+5vdyzOuf/l6UnH6+nmS7
+P7/d95fHzRPOdj//qu9vd/Y5tY5x98mrnptXl+fV190Ud9+fza/mnHPOOec8
+j2frN+Ccc84555xzzn/Bpxjz/Qbb7bONL7/Fe8/jMt2n51Odd+O5f2P0df12
+P45yvcp2H367T3H2+3Oy3Yd5n/8TxNj5tOt8PPc8Mi+rxlvPY57nL+ecc845
+51/ybP0JnHPOOeecc8453/oUxt+f8emnq74PJJv31cPtdm/33vrwTa8vn2z3
+z7f7Mvrn60ae7X77az72fWC7XV+9iv3u5+DY53h9+Zy7TreR5b7dtz3nnHPO
+Oef8jGfrZ+Ccc84555xzzvnWW7//IfJs49Fv8avPy1s8Kocp3j3OO2pc+7u+
+H9v12e6f2Xz0/M/19tnun/yvL//fxqj5Nst8lL7/sD6dpzzbvLjSczA6rrvv
+2335zPZc5pxzzjnn/BuerV+Cc84555xzzjnn532K2vH69bJ5XHU+/XT394c8
+5X3j+2/xef25eWhv9+g4t+c9230vm5+bDzNHtvse7/NR95NSOst85HuOtHrr
+9dX7HK/d7/7yOu6el7XNT1/+Oeecc84551d4tv4KzjnnnHPOOeec3+/LuG88
+9O2+v12+ce1R3lp/Stvl8vPfU/R2HzVvgS+jtl5lu7/xPu+rD9vt+u63X/Wo
+HEc9x+Pnwjo/velcdd9urW/H22d7LnPOOeecc/4Nz9ZfwTnnnHPOOeec8+u8
+bt7FHK3p/Jov/5/jq/O4SsdVO98gp8/ra+ehZZlP1ef19TbbfSzb/fPc/da8
+rOzeWk/2l+donf/J27x0325Nv+98baN2flTre9qo+8zxfjjnnHPOOednPFv/
+Buecc8455/x3/Knx3+X++7+/Ilt5cn7F9ThqflG2cfZnvy9lez/aTzffeHfJ
+vzYva5Jc86navfa4st2XnvJl9M/TyHZf4n0+/XT2vEfb82Pvm0c0+u9CltO/
+9760jmzPU84555xzzvl/R7Z+D84555xzzvn3fIqz48ut+x097tY6jlM7P6E1
+nWznl3/b95drw/yEtf9TFc+Pg0fed1zR+mweRbx9tvlXx/NGyseV7f6TzZfh
+/vZWn3669n1vnY989/O3e997S/m+WJf+dvtR9bN1v2Pf6zjnnHPOOedXeLb+
+Df43Wn+vqrcdt+43eKo9yDnnnHP+az5F3+9r949TPP0ee9W8rKfG766Zp1E+
+j1enz/mI+9vko+vz23153OX7yX66Xx8fv9+vfn5d7dnuA9n8+PzW1wee05f/
+z9H6Hh5tt5+PfPdh3ud9/eHZ6kme5ynnnHPOOed869n6SfjfuLo/sLUf4zh9
+9Ypzzjnn/OrxweXn+t/3WvO5/vzo3wcfNU4a5bPV69KPYtQ4y9n0S/m9bt6X
+eQL8f0ff/a3+ev+qt96Hs/mo8/6Ul8o/y/yrY68/rq96VA7Hft28a36PTz+1
+XkfLdP39wa/4Nc/fbdw9r+/tz1nOOeecc85/2bP1n7zdW/sHWttTo/ud2tI/
+37+R7XxxzjnnnPeN902x7T8/O64XpTPKR73f9h7XcrvaeUTrON8OavW+9+T6
+9PvqQ1xube2Oefmu8a/j4zK/66t+Lu6bF5rN/6mK58fBj/P7Fo8j1/yr+ThK
+10W2+8Bd95Oz5caf9emns9fF/vp1ZLl/8lE+el5WWz3M9lzjnHPOOeecZ/Bs
+/Spv8Sn6+gei6P/9rLHjiaX8lscfI7+n/OP8145PZatvnHPOOc/jyzg7Th2n
+M6af//z7z9XzeY7Lub79Eh3vcX6iz183XnPPe++ocquvV6Xtp/W98xhH1ROe
+0/eX2yPbvILR48LH8fw4+CRj5ktc7e3zV3POy4ri+78f11oO2a73X/On+y35
+N7z2vj26Ho65Pz/1vOOcc84555xn8Gz9Km/xZYxvJ47yUj7bPDr+/N/PMGq/
+2eohv8enuGpe36jx32zlxjnnb/FlnJ0fFaVT/x5eyk9t+qV81j5Hou3r8lmb
+n/ryHD1uwo+8vd5edb1E24+a3+L9/12+jO/Puxj7vLjL5zjOf+tz4byPan89
+5b92v8p2PfK/Pv3U+j65H63vCfw3/Xx7qu95dN17Neecc8455/x3PFt/SzY/
+7n/Ylme2fpJ75nFF9a2+f+bZ43W98GNv7YeMfHQ//zqylRvnI66vabnUj8r5
+E/f5afmu+QCt+Sl57Tjv/n62+Rrto56/PLdPy6X6uf+58d/nVvv+xnP6/vL7
+2+l19TyKLOPp2capW/OZf37sW3wZ5f6lbNfdV335/xz3zrNq3Z7/lsf1qvY9
+s/d+VXvfztae4pxzzjnnnOfxbP0z2Xx/eR33jcfl7O+tr1dR+n39dVvva0ef
+z39fu9u4z1v6gY+3L0X5/lBK/2z/T7Z5DtnqA+/zZfSPa4+al5KtfHhO319e
+x/ve685dv9vINR7NeZ/f+x5Ybo94L3rW95ffP9+jd77xMt3rx9P7nsvXeet7
+5lP+1fvG/vIcteXA+3x/u/g5+NTzlPN6r7+fXP3+kO15xznnnHPOOc/j2fpn
+svn+8nf7b0eN6z3bD1zKX/28l9r99h6veQV3XL/nfy97dP9nW32L63PtcbWW
+z9h+XfX87b6Ms/fhVr//+wSi9EeNK2U7v7/mU9TWn7e8v7UeV13c93vlnOf3
+9veryUvthWz3ya/6/nLJ3zs/ZH+758bNj/M56r2x3t/y/Mp2HY26vlrnE/Jj
+39+ufJ2O6pdo3S/nR/XqnvbRNj/ZnlOcc84555zzr/p7+3+e8mz9MKX+mbZx
+urieLPc3epzu+npem//W9Ov6x8rbZ6vnb/cosl6ny+3G9V89dR9b7sfzJbsv
+Y3x/aV/93+537Hyq7X5HX7/qfy6f4mz/fLbnQms6o+YZjh4f4fxLPi3XXXfb
+7bUX7vHjuO7952rvO951uuZlrdePvT+s9/fe6z06vmzXxVt8f7vy+97Zdke0
+X87Pe+k5dFU/c7y/2vxke35xzjnnnHPO3+vG0/fKo9yflq1/9ep+ldZ6cvU4
+3bP5icp3TnddnmPGa7b7zXYdZb1+p+VSfX6L7x9f+zzS/f2N62e7ej7YMr3v
+P6eempd1z3lsva/G29fWh7vGPc++P4yah8aXkeW9bux1sfXW++eo/R6nzzmv
+8VHzqFvT58e+v/ye+SfrfO9HlvH6q/3peZtzZKvnX63/2Xx/u/br4p72Pudn
+vL6/aPS82dr8cM4555xzzvnV3tp+z9YvZJxuL677PaZR43et4w5Zxkd6y+Hs
+9q3jqtmuL/3D+/ndvx63UXt9HsdTz53e/H//uZPtelmvn8r/bddR6/0zSqfV
+x47T9T83PS+OfV0upfN7dX2+el59331gXDsi13sa59/wUb+nkO3+/HbfX87X
+HrnrvajN87VTrvLW9wH1+V1e9163jvp2GecZfPRz55n3q6eeO5xzzjnnnHMe
+xXb7t/QjvX1eVpSf/c9n7S+N0x81vvA1Hzt++jvj7+/qjz1/HY2aj3Hs9fls
+Hd853v7q9H/nuvjK867V9+Ou96ja+TD1113r9dKan1/zKXLV//b3qDa/rv7n
+HGfhnJ9/vrTPc/7196vW+RjZ2i91+b66/2G7vzEex93Xnfr5Lt/frv/vQa/T
+4fwNXvs+cPXvi43dnnPOOeecc86f8t75P3Nk61/6xjjdervrf79pf/9RvmI3
+z+oKj8rxfP/hWzwqh6fma139PSclr71vf/t6jJ9r63IYdX7f4qPKIdv10vr8
+ah1H/opPy733jf31+eq5970av64d8e3nC+e8/r3re88L30e0n9+r2jX7Mer5
+FcdV14v69i7f36633vamw/lIb28XH6dfm058H77qvaI1Hc4555xzzjl/1u8f
+B8zZT7WNe/t/onjfOF3peHONL3zVt+cl23U36nuxnpqXtb/d09fpNp1fGzfv
+6yf83vWS7fvl9rdrvy5az2/rfWP5uefr89U+avwuWz3Pdr1cPY/3nnGKPPWW
+c57fW9vddfGd3zfJ1i/x7f6K6+v/OtSfe7zvPlP/frufj6fn23C+9LPP31G/
+z9KXn1H3ec4555xzzjl/i9/VT1UeV326/6q2vTm2nzM+L8vPn22/b9Md4/F+
+s4wL8P/27XnMNh6RbT7JXd+LVXu+jr01fV7yabm3//PXfi9+f7v266LvuXn+
+/jZFtnqYxUfdP7P5/vGM+365/f3E++3z97cXOOe89n347c+dt7zXXf2+d+z5
+n1/qwz3e2x5vbd9xfp/Xtg/ar+u6VM/2R23TMf+Kc84555xzzmv8/vG79XKp
+HffVeSBRObT6Xd+TEOUnV7897/V1ZBvviPLrOv0bpfxnq2/ZfVT/f455JnOM
+vS7anxdtPvr5tY0s9e0rPi1P67M9R556D1ymN2p8cB352wWcc36P178nZ3vu
+ZHvfq2sfRZHnPfCq9vJXz+/V3tcuXqf79Lwa/pteXz/r7p/9/QnR9q35MZ+K
+c84555xzzu/0/P2oOfo5r/7+hDz9ltF+c9UTfrW3jlO/fdzcdcrPXBfLeH6+
+cRRjr4v2+rn2vvTf8j7DSz4tP3293PMcOX+9LPNbfn+u2+82stUTzjm/+v1t
+vX229k6298C3tZuuqj9vP1+j/Nz3S0eRZR4O/6q3tgtK6V/13Im2P/ZR90/O
+Oeecc84552M9T39pq7/l7xuu09uPu79vJ8955G/0bb16etwhy3V67O3XaZR+
+rvrASz4tl+7nb5l/Eh1Xn3uf4Uuflp++XkZdR/9Uxfeul3WM+v2Ip4/r7vp/
+vP358976fuXvwPJf8trI9px6dt5+KVrfG7efr9vPHHc/v94+/6qU3754fh4O
+f4PPcVw/o/eP8/W8tP36vtG6fWv+j/PLOeecc8455/xdnq//s7b/P2q3ZhuP
+q+sHeN943Oj+jWW6pXEons1b+6O+PS+r/XqMIsv55WPd8+sovZLnOY/8Tt/W
+h7fM+z33PRLPX0dP3a+e+nuy0f5Gjb+Pmgd19d+dGZX+1e24ZXrlcjvOv3lo
+/Aq///n11HyhUnpvjW/PvyrlO9u8HX61t/bzrNMZVQ9HPcdLvs6/v+vHOeec
+c8455/w6z9Zvmb//813j2tfNi3tq/sCo4+J3+nXX49jvM4mvo+Xn437LUjp3
+l/Nx/n/tufBeHzvutj3vX31+8d/wabk0HvSb35eV5/4z6n2v9fw+e77O19u6
+fH1tv1H69fkZ216rf4+N8uN7j3n7c22ObPO1xHGMuv88/fzi7/DW52lrvbp6
+fvLY+efb4z3ennPOOeecc845v9Pz9UNe5bnH6c6Pj5wdx3z7uNvY8ZHW7ePz
+sk4nOt5f82/My7rufvvs+Et9/n2PxLOe7fl17NfdJ6/+fqRS/l0XGb1U3+bI
+eh2drYeRZ/s9hbHP6/b7zNrvmT+TrT34VR9V/vXtqb7to+dEtvljnndZfR3m
+ZT0bY593pXh+XtBXfWw/3vn+rtZ0os9H6RxvzznnnHPOOeec8zPe1w8QpZ+v
+fzJLf2bfeFzr+b3uuKJ8XtPfOL4/7er5WqXt1tJaDmPnFbzXc46bn78fXj2f
+ZNT9fFQ/c7S/aP2ovzMV5fMrPi333jfGPr/GzSdZx9XzD3vrz7S8/zxaf77+
+Oor8ru9Dy1bPr/LW9+FRf7dovVyqP6X9XfXcGfW+1zv+uPx8+7zNUrqcf8HH
+jsvPn29rf5XzM+r5FW2//Nzzz5esLjLH8/ORsvpV7+G98xLPttda93e8Peec
+c84555xzzt/rUcTbjxkHyddvedV41nr53HyP7fZPzbMaNf+qb7w423V013Xa
+X55fnccydtxnXu69TrONg0f5HzsvZdR9vv66GHXf+8bfV60vn2efX9sYNe9l
+1HyksfXh/udF77yXY69PP9d1cf98rbrr6Gxcd72Per7sf37cuG1ffjjn+f38
+/LFR9/NSft7u4s7IM9/prLe+J4z+Xr79fGa7j3HOOeecc84555y/3ef1tb9P
+l2W+1qh49u+4Xe9ZxrX5/vrSeP0U2a/H3vmEZ+dvPDXvMXLj2mc8jrPzBqN0
+RvnY51d9/kd/r93ZcdvIXRd3+rw+6/Ml8rvma731Oup174Gc83d7e5iX9Qvx
+1Hyq+vxxzjnnnHPOOeeccz7etzH692Sfjbv790rH7fcZeY/HkWU84up5U32e
+7TzyezyOLM+va77HyXXBe3xef/d8sLPx1HOnb7/ZzjvnnP+ai5yRrZ5wzjnn
+nHPOOeecc/5GfyqylQPnmf3qyHa8nJ/xUZHtuDi/06+ObMfLOec8p4t7Itt5
+55xzzjnnnHPOOef8Tt/GNd8/cH888/cO4vX+Hg3v91Lc/fcdtjH6e/bGeLbz
+yO/xUjz//Or9e2quCz7ee7/P6nefO337zXbeOef811zkjGz1hHPOOeecc845
+55zzZRyPo93398Ki8eW6+V39EaUfjZcdj6O1l/M98778HZxc/vT49fjrsXdc
+u3a/rddj3/V79Th7tnqYzUtR+/e/Suk/f72U8leb/7HPr236k7gu3uT5ny+R
+j37uHMf7rqNe389PtnrLOefj2vdTes8818TV8ezztDayXUecc84555xzzjnn
+X/UoStufHTeJ0snj98z3OF/Ord9Dkm3eSN+4Ybbr6Prr9Gx5XvO9cM9767yX
+q6/TUfeNsddj+31jfVzLz529j0Vef12Muu+dm0fxfP2P8pfz+bWN1vlgo59T
+63yOrQ/3Py9ar4uSt6Y/Lee4Luq99f5wzfyr2rjuen/LPH/zJzn/qs/re+eL
+jrqfl/LzDRdXx1Pzsu5+/o7qf+h7j812H+Occ84555xzzvkve18/SZT+vF2u
+fsX+fsjWftp7xrV7y3+9v/b+56vmcUXpj/LW47q636+1HIwX/PWrr8d755+M
+P67W9Fvz3zr/pG8eQlTu9fn/tetiedz9942xz68on/c/v+6qP7XHOWpeX+tx
+jf7epK/5NeP1c5y7jtZx/3Pn6nnCfe9d9ce7/7ntfjh/s/fOk5zW9853ilIc
+1c8w+ri4yBxZ5lll9Wl59Ht463tdKT9t+azdTylfnHPOOeecc845z+/z+lz9
+hHnH3a6e73FX//NV4/i94/vrfI4eJ6093r7t4/MyZjzxe/5UfRv7/R7X3W+v
+Lp/e+lybz9bj5c9eR/fMp73uPjm2/kf7dV28y0vna46s11HfceW9b9zzfVzt
+95kx73ut5yVbe/CrPq8/V/5ROqPmD2z3e9f3oLa2j9bH5XmXyee45r1I1MY1
+3+O6jbb3cN7qY/vxpujv72pN5zgf23RK+eacc84555xzzvlZn9fn6lccPx6X
+bRxqma+z49rXnd9R5TaqnEcdF//G9Th2fDy+ju4eN+/z1vz/2nPhvT52fG17
+3r/6/OK/4bXjYs8+X+LIfh1le98b9fdn7xoHX+c/2v6e95O37Pf8/N6n/+7z
+Oj+tz+Vjn9dnuQ/zK3yOq+/Dpfos2uLZectxtD6/+Dt81PyxUfPEWn1UezY6
+3uPtOeecc84555zzO31en6sfstxOv3rcbdT4zrPj2ted99b+wLHfF8Gzeeu4
+6jXjBeX85B43j+L588vvuV48v2p8Xv/0eeR3elT/7hqP7n++lNLPfh09db/q
+Lbd1/keN952rP+V0rs5/q49K/+p23P524/6Oc+t+Oc/w/Bp1vxrdnnprPFWe
+z37/ZJ55R/xen5ZL74FROvfMfx7XTlzn/+r3K84555xzzjnnv+zz+hz9lvX+
+lvG4UtT2k4ztH5jXP30e+Rt9W69yjCM8f50ee/t1WttfynN77f38an92Xlae
+eSY8t2e5XkZdR6X49vUyR+/zva0c7jqu++r/8fbnz3vr+1Xr9py/38uR7TlV
+d53OkfX7mvajfn/rz931/Hqq/O86j60xpr3Av+7raJ3HNaqej/oe12j71vyX
+0uWcc84555xz/iaf1+fo/9zm8+l+y3X+vj6u3TYexL/q0XWR7Xsz7uqXdp3y
+mvHo9Xl5+vm1jmy/Xz+2/3le/3Q94XWe5Xp52/dRLI+nNK5Vul6iyFNPOOf8
+rNe9L83bZ2vvZHsPfFu7aVo/uv68/XyN8tb2UXS8pe05H+mt7YJS+st0xz13
+ou2PPdu4A+ecc84555zz9frR/Z+t7dls/Zlv6bc8bu+Pqydt44P8nT5HtvGI
+dT5K+fy163RsPx4/N75w3zjOU+M7pf3kHI+L4vn69hVfn8dsz5Gn3gP39xeX
+W8mjdMd4nE/OOX+H178nZ3vuZHvfe9f3DN/1XJvjq+f32XlcV7cvOD/j9fXz
+qfldrfnpux4555xzzjnnnPf5vP5Xx+mi/L/t+xOeGr+r7U/gGXx7HrONL0Se
+s9949HVaPl/H7noc7Wf7S599rm3ryVvmMY76Hq1R7wP8r4+6f2bzZX7L9fDb
+49fPtRc453zf699nsj1f3v5ed8/3Yr1tXtbz7//R8Wabf/V0e3xarm3fcX6f
+17cT7mp3TMul52+UTuv9inPOOeecc85/0+f1Z/upatt3Ofs5t/GN3zO9f/zO
+9/Zk8G25Z7vuWr21n/Y3xyNa+8fm5Rz19rw/NZ/nLf728bvW89s7vjMtP12f
+r/ZR433Z6nm266V3PLHW7xkHmdc/XW855/m9td1ditr73tt9e+R/4+n3tyhy
+tYOefn7Nof7c4333mfb+q2vrOefnfFruff62totb+3vvaadwzjnnnHPO+Vt8
+Xr/uXzpu982RrT/zXP9Vub35lvHryEfNWzjOt/Husb4t57f/ndC+67S+vj3d
+D3x3/1u0/bevx9JzqXzf++o8k1HlkO16GTUva/25HPV5nJ+9b+x/7jvXxXK7
+777vRfsb5d9+vnDO69+7vve8eKpdk23eyxT3tGvWMbq/K97P6OtFfXuXTzGm
+3uabt8N/0c/3H67X16XTOu4wqt1xXXuHc84555xzzsd6FNvtvz5+vdzu+XG6
+dX4mydKuP/bRv8+VZTziOh/bz1Cf/ts9W7/u6PO4vo5ay2G93ehxt9b+vdHz
+atrSn/fz9eviK8+7Pt+me62Pmg/ZWv/P5+fXfH+7p+t/+3vUte9v4+7/kz/9
+fsU5P3/9er/q83+CyNZ+KeX36v6H/bi6v2v+3F3Xnfr5Lp+i7T3/ueuI8+vu
+z+X3gb77T+v1Mmp7zjnnnHPOOb/ff+37dt4yTpdz/G7ef21/am27vvW85PRx
+5bbe3jjIsS//nyPn9dv++7bTdvv1sDaeeu7M62vz/yvPnWzXyxTr8n/ndVR/
+/7yqv7rXzz43PS+Offqp9vy+5XvkIu+7D4xrRyzz8fR7Guff8N52k/era335
+/xzZ3qOe/l6sfc/aThnvb/k9x3X+pshWb7N53f15HVf373E+1nP/ftbZ/lvO
+Oeecc845v86N3+0dd39/2lP9PFeP6436feqry/+e/ET7ax+vrx0fifab7TrK
+ev1e1Y+UbX5mVD73jL+cz8+ofrxs9fMtPv1Ue196dr5xvP0y3+3zl64Zf+l/
+f2hNP1u9yub72313Hn7fOMj5/R6nzzmv8b723fnnIz/25f9zZHuO1N3/tzGm
+XWBeVp3Pka2ef7X+Z/Mpzl4XOedbcv7ffr4/c3+78v0213OHc84555xzzuf1
++mnrPFt/zthxt7ierD8/th19fT2vzX9r+q393m/5Pdm3+z9BZL1Oz/Zrtdar
+p+4/2eoJ/+vTT2fr29XjEa3Pl9bjvfr7u7Kd91/z/e3yzeON8tOaz2j7vvef
+ebspvavn4XP+Zm+77uqv62z31bf7P4dx3ftPzu/tuf/7VY7zdZ3neE7N8fbr
+fZ3v0nHxY5+i9X1v8t52R7Rfzq+bf3t1P3MU9fnJ9vzinHPOOeecv9ez9edk
+8+X/c2Trt7n6e7da+3Wf/X29OF9ROsvjLP1e1fnx0Gi/2er/231/u/Z5gHd9
+T3trfa49rtbyMS+F/7dPP425D7f6On+lca7z7zlR+q3vCa3p8Ht8f7u4/rzl
+/a31uEpxz/gI52/y9ver2vZCtvvkV335/zrqn+PZngtv+Z6cbOPab3l+ZbuO
+Rl1fUTrZrqO3+BSt1+m0fLZfIst9hr/Rz7e/eu/n2Z9TnHPOOeec8+95tv6c
+bL78fxu17bi3+3HU16vednRtu37UeOWofsIo/Sg/2er/V336aVR/Y+32o+Y1
+RZ5tvC9bfvhYn36qrbdj76v16XP+3778fxtvfa/rvX6P4/nxaM7P+F3vgbXt
+Ee9Fz/ry/zmy3c9H3f+zzdfqey5f572/R3O3f/W+sT6e/SiXA+/zKWqfg089
+Tzk/M79rGf39BlH6ff3becaDOOecc8455/d7tv6ZbN463yZbf8s9v2cX1bcp
+xo/Ljz1e1ws/9lH99qX+zNp09vevfvJ3euvzKFv++Td81Pcc3jtPvpyfkq/T
+yfZ74m8ZN+fnvLZ+7q+//vtDst2v+LEv/58jW7v7nt+fyjZuPkX5ur7Hz/9e
+zD3+vX6J5XGU+5eyXXdf9f3l2u8jWkfvdVe/Pf9Fr+9/jtLpvV9F6a89W3uK
+c84555xznsez9c+8xaefzo5z5ZxnNa79u/ZR46RXf4/EV38vlff5/nbjfn95
+1PexZys3zjl/i08/1b7X7a+fo/Y9qjc/be9p9e9vveMRteXSm8/a8ZRSPnmP
+t9fb2nSW6dW3O9bbn3uPmsP7/7t8+qm2Przdxz4v7pp/Ncdx/u/vBxv997Du
+9l+7X2W7HvletL5Pbj8frcl2f+NP+vn2VN/zaN5u9Hs155xzzjnn/Hc8W3/L
+W3x/u9p22TZq+5Oj7ceOP0b15/zvk95T/nH+19v/Wn8m55xzzse9h5wdRyil
+s8xHb3/+Np1sfw+rdXyk9/289rxcPV5/z3vvqHKrr1el7Wvr+ai/C5PtvsGP
+ffl/f2SbtzB6/lUUZ+/Do31a7r0P3+PbfL7zexq3Ufucfbtvj3wZ63LIdr3/
+mo99325/3+Df8Gm5dN8eXQ/X+63zdeQZD+Kcc84555zf79n6Vd7urf14Y78/
+vLU+bGN0O/RX+gM555xz/js+/XTVeEGUzigf9X479ntc699Xj7e/v920Xj6u
+F3H6ffWhVG617Y7z42VX1/Ns9wHe5/90xtn69nYvxdnrd6zn6e/q81KMfy73
+eu11ke0+cO/9pL/c+LO+jP7r4jjdbPdPPsqvmRddWw+zPdc455xzzjnnGTxb
+vwr/61eP0/X9vfsoffWKc84553zs+17r+9jWr/6+gnvG47bl8NT8olKc3e/Y
+9OP01tu31s9Rf8+If9v77m/11/tXvfU+nM1HnfenvFT+03Lp+fus659Z/r+O
++verbPcHfuzLqL+OWt8Ds9xv+bHf9X2V03a17/W//pzlnHPOOef8lz1b/wn/
+6639AKN+32dU/3C28uScc845z+b728XzWKafavvts77Hro+31Vv3e/V439Xf
+JzbqeFvT5/yMTz9dVZ/f7uvjL91Ppqi9/z/lx/UhTz9Y5E99j+Uoz3YfyOaj
+5oHznL6/PPr7TvPcb/lY7+sPz1ZP8jxPOeecc84551vP1k/COeecc845/57v
+b3f9uPNTf1/vOJ36dlnrfjm/wpf/18e63mcbx88xL2sb0f0ii/cdV55+sGOP
+orR9/3PtXi8fV7b7TzaffnJ/e7cv46r3vTz37a9633tLfD9vS/+6+0Drfse+
+13HOOeecc86v8Gz9G5xzzjnnnPPf8VF/b7HV97dr/7s22cqT8zM+6nvYIs82
+Lv/s3yWM+m3yjHf3+rR8vH7eLpe3Htd7vPa4st2XnvLpp9b68Ov3va/6MvrP
+e7Q9P/a+v983ry/dJ+vaC+X0722/bPPBOeecc845z+vZ+j0455xzzjnnnHN+
+nbd+31FrOr/m+8vj5rNl8755C3n6wY69/ftSlts9P/+qzevrbbb7WLb7Z+/9
+tvb64s96az1Zf34/ttdplvv82710325Nf5lu7XzXKOZ0Rr2njbrPHO+Pc845
+55xzfsaz9W9wzjnnnHPOOef8fp9++ru+PL6Zbdz86e9RWZfbV721/qzXR5/L
+4fP65XF893u01t5az7Pdx7L5/na+X+vr3lcf6vvtl+uffy7c49vyuXp+dZSf
+q7+/q9Vb69vx9tmey5xzzjnnnH/Ds/VXcM4555xzzjnn/Lzvb9c+7yLbeHc2
+X8ZczpOsy/Pt/u3v2fi178uKfFs+vkerz8/N35gj232P9/mo+0kpnSzPi1He
+en2Nml99XM71z5H15++6b/fln3POOeecc36FZ+uv4JxzzjnnnHPO+dZHfV9T
+tnHqt/jV5+UtHpXDejlK7/hzT/u8vi7/0fZf93Xobxx9P19+vv1727LdP/l/
+x6j7SZxO7XO/NZ2nPNvfqSw9B2uv06u9L5/Znsucc84555x/w7P1S3DOOeec
+c84553zr+9uVx+mWy+Zl9foyyuX8du+rh3n6u0Z5b334pteXT7b759t9+mn/
+fET1Ms+8F37sY98H6vv/l+vrnxf7+80/L2t/efy8rON4/r7dtz3nnHPOOef8
+jGfrZ+Ccc84555xzzn/B97crjW/G42vr7bONO7/Fe8/j/vl6r/fNR8rT3zXK
+R1/X3/Bt1NarbPfht/v+dubr/qpH0fd9WfXvG1f7U3+vsO96LJ2Pu+/brecx
+z/OXc84555zzL3m2/gTOOeecc8455/wXfH+79vkt2caF3+JTHJf7+rzkmTd1
+j9fXt2j7b3iev0uV08/Xk2z357f78v85Rn0fYLb7+Vd9ilHPqf0Yd59szU+t
+m5fV5+ZXc84555xznsez9RtwzjnnnHPOOedf8tF/F28d2caR3+LR+Vpvt47o
+vHzNjecuY32cx/VnXl5f11/zUffDbPftX/Pl/+vYeuu8u2z3/7d4FH3nd71d
+7/csnb9/tvpT34d5Tzlf7/vlnO05yznnnHPO+bc9Wz8A55xzzjnnnHP+Rt/f
+Lp63sP+5fOPCb/cppvOxv34+X6Xtv+pjIk9/1z0+r1/XH/53+Z9VtM73y3af
+/6pPP7XdJ+PrYr1dtufC2/2e8xv5uPtn7XMq5/di5fkexd/8HkvOOeecc87f
+5dn6ATjnnHPOOeec8zf6/nbt49fR9tnGhd/ix+er9bz8jo+t51/1ef2yHPi0
+/E9l+B6td/ny/22cvf9ke45k83veW2KvfW/pS2fUvKzrxkFKx3WV912PnHPO
+Oeec8wyerV3POeecc84555xn8L7vH1inux5fmyPbOO/bfYpluf8n3O54+9/z
+aXldb9vK83c8um+sl/fvA7/u9ddjtucC7/Ppp7P359bn9a9573lZbjf6uj7/
+/H123lrv+95198koH5xzzjnnnPO8nq2dzjnnnHPOOeecZ/D97eL5Kq3jg9nG
+c9/upfO4Pl+t23/VW/+uXGm7r3lfPYnSnz+/vp/wv1FbP32/1rv86r9fOf3U
+en87W9/e4n3l2Xofa73f1v9d3av/XmHfc/B6b3u+cM4555xzzjN7tnY655xz
+zjnnnHN+p4+dl/I747zZvhcrOr/R56N0ftPr+4ui7b/to+az8WOvL/9szxE+
+1kc/l/e3v+55HaXf6+v8v+v7tdqfv+vI+vcc27y1fmZ7DnLOOeecc87PeLZ2
+N+ecc84555xzfoWf+7uEc2Sbp/Rr3np+7xo3f6tH5blejtI7/txXfF6/LIc4
+jssrSoe3ef19O9vziI/1/e3a68/o94cs9/Nn52vVl0/dfLz156+uJ72+jmzP
+Nc4555xzzvmdnq0dzTnnnHPOOeecX+H72/X/vaR1OtnmL33Vj89L1B+SZx7U
+sx6Xz37k6b/K5r1/T3NaXp4fHvmo+ZnZnkf8Hl/+H0W5Ho56H+jNz1XPhdF/
+Lzg6nmhNbX769jtv13v/6atXnHPOOeecc771bO1lzjnnnHPO+f+3vbvLdlTl
+FgBaPbtdrW6dXnxNuA8ZDksi8iPo0kxe9s6UICoaxSVyzmf4fr6z79lZy4kW
+v/R0b92+xsU69tY4geP9KE6/1r3+nfqOP7zP5x23o/1+8Wv8mvfnzj8uXf07
+UnfcK6dz5ZSPG33xcpxzzjnnnHN+3qNd/3LOOeecc8455zW+/PeZfv6+YW05
+/Bo/3l71/Rvb6ffHR0X15fPx9DUf3/dSO1w+b9czb/XeOMzacqL93vFrfPQ4
+V6m/Iy6otH9dnaKtn3i/O22/+3mvLaf1/O2ueo6NV8/VJ0474Zxzzjnn93q0
+61/OOeecc84557zGt39zafl++/2anEeLX3q6738ueby4pljevj7b8vMlpev/
++Hi1fi4dZ/gZr+//HHVfnr/bl//Onj/E9lwaVc75VNrP675fOj73p77jzJpv
+Wb7e9pmWczy/UeO/5eb77decT+ZT2/7rPIpzzjnnnI/1aNe5nHPOOeecc855
+je/nKz2nf/6+TLS4pqd76/bdn76mXL5f99x6fsf4LXf5On27vlvj5fLl8Cv8
+/PEk2u8jv9f3893dztu9tp3/GZR643Ci/M7ye731POe4PY87H8h523kC55xz
+zjl/uke7buWcc84555xzzmt8P9+4++zR4pee7n3p/Hb8Na/bX3Kpdj/iSzpe
+X+n6LKVcfn7Wj/eL+u3rvYf8So/W3vrio0q/P+X9dPR5SJTfax7TR+8X2+/3
+xgmPOj+Jdh7FOeecc/47Hu16k3POOeecc875b/p+vvx7T47Lyd+nqC2fj/X9
+z2tatkfue9vpce7fRfO++4Nx+qme5d5j+A5v3+5n5xvt95f/po8e33J/v6rf
+j2bXvzVeS3zXL3j98X9UnOR+vvzv0dh22Pq7Fu28i3POOef8uR7tepBzzjnn
+nHPO+W/69u+aWvPvz6/9/YbR4pre6tu0bq+Sp9vrN73U/tMUpz/qKX5XfAKP
+6a2/R9HGO+Lv8D+ZdNXvddvx7fxxr3X9xBj/03nL0335vEy/5j3d8+rfdz3F
+Oeecc85HebTrSs4555xzzjnnv+nbv7m0fL98/2I/f/31crT4paf7Np3djvHu
+313t5+4DpilOP1VMH32fNJe+2zm/x0v7Ue3+eDzf9t+72nrymL6fr32cnKvi
+i9qOb+3H1WX6Ve082nlRb/uJch7Cj33U78Ko8WnHtqto52mcc8455/E92vUp
+55xzzjnnnPPf9P18pfvpuevf8/dN+Fg/3u7ntyPf+vK5bn/hfe49hr/taapv
+P6Pe9xrtd/ytvp/vvniqq+Ki27z9+JmrT209+7Zj/O01Nu463vnJU73vPLa8
+fXLfK+0Xufq0HgdK7cp5Juecc875GI92ncs555xzzjnn/Dd9+e8z/Wz/f/19
+w2j33Z7uS0rXf+925/+mcvvvi/fgOS+12+XzdrvkUv54dVwOf6vXHgdGHW/5
+se/ny2+vaL+/fe8fvGucnHV62360ptnbPdp2HBXHdU07eavXt+fW87HeeN10
+vq0+9notzvkb55xzznk0j3b9yznnnHPOOeec/+t/DlN++qe8590/fbrXbcdl
+e48er+N3vLSe98uJ0x/1LF+n17Xb9nL4O733eJjzs79ro+r/FF/+q11vuXKi
+/p7e8/vSfvzMzXc7v/nxJH3t53u5op13jY7T20/166FU/tN9+dx7fM6V07u/
+5+pz1p1ncs4555yP9WjXy5xzzjnnnHPO3+Hbv2sae1/p/HXu7Hr+mo9a/9vy
+4tyPu9qP15v7Yvf6+XGN0vlsp/N3eZrmtcNc/lFxXLnj0qh43bHnIfXlb+s7
+Pq67db3l6nONzz9+LtPP7V/X3+/ILUm087Fr47jW7RKzPZ/3u65f0s9Rftec
+f3LOOeect3m0fnvOOeecc8455+/w5b/P9Nq4hfb7d2n5ff4932j3xaL5ks6u
+z9b282teWj/bfKVxL/hs79tenPf5cXvL/57WHn/Gjot4/nc2V/7Y4+T5cW9K
+fs/vy/uOhzHPe51PLunscaa1nKt8+bxMn/38QuzzijTFOR/jnHPOOY/m0a5f
+OOecc84555y/2/fzjbvv3Hp/J1d+tPtcT/HZ2+sd3tqfs07PzaeuHN7n6/T0
+eFV7PCmVw/mRjxqP5Zo4ivr53v0ewOVz6bja+ru2/V7035f7jp9jPM79jlL9
+a/ejt/qo/ag3TvLs/jXqeuGu66nR/ozjD+ecc855HI/WP88555xzzjnn/B0+
+9n1e4+4D7pf7XU60+1nRPLfd08912zFa3NT14y3k8vftX3H6nd7h58cRGj3e
+Dv9NbzvO3Le/tOavXa7W/evc79f4+vd5/fnJcT3nebTjW7Tz4eW/2vOBaOd7
+V42v1ZZmXxcYL+t4vtHO0zjnnHPO43u06xTOOeecc8455+/2/XzjxklYUi5f
+6rl6Rrtvdff9suP1ntte36l2u/ya9+0vcfqXfs1HjweyTD93POT82Ef9Lre2
+89J87zmu1p8/jDrPeetxPlpc1ux4mLHnw/XtMNr54djzzPbz+eXzuf0ln2rn
+Ozsuq6621+1Hx/XinHPOOec5j3Y9wjnnnHPOOef83T72/l37/Zf0+9HuT0Xz
+JR2v99z2WtPo8YVy9YnufcsVpx/p3b5OLx1/osUhcD7T245L0Y5j6/SlXn2/
+O+ePG331j+a95wP3t9to58Ozz6uf4kuq3V7762X+9ULOr4nLGnX8+fa++XLO
+Oeec81aPdh3BOeecc84555z/6/v5xo2jNfu+SbT7X6Pui/XGpexvp/P3xaJ5
+7/uzasvZ/8x7/Vxc4ndqbefL9LrjG+fXeu3vwvZvmmb7Or20XL2/a2379a/5
+Ov3udhvtPPaa8+Tnnn/OGVeq3B72v7ems+d7x+XOvg5qd8c3zjnnnPO5Hu06
+gnPOOeecc845r/H9fPm4id44mf3yz3tuvk+5/zV2vbX2b9wVf9Van9L9uXJ7
+OC6Hj/X67di3X9S3B87je6k916e03Nm/y62/v6Xy247/T/FSitIOv72u/awp
+2vnt2POx+t+7aOel15y3nz/PfNr7Ct95vOKcc845j+/Rrhc455xzzjnnnL/b
+9/Pl3ws2535Nmuqvl7fTx8f5XDUu1uJLve7avqX67Xucca767uPH6Rfin3TX
+OB6c89l+vj987Ht+4x/30u/F2I7nfXZc+tN9P1+6PnPpO3/teVfrfnfXdkzn
+11ufXDn79bgqnpb3+Trdeuacc855yaOd/3POOeecc845f7fPfu9eLl8uf2s9
+j+d7fbzQve+Lqb9PcXdcVm19Wut5vH7q53uc4vQjvcPX6cftJd44e5zzXl9T
+3+9dffnb+fT/Tu1PT9N3fdrm217+M/z8eeCv+X6+/Hq+6/z5mvG1zp8PzF7P
+uXr+mpfWc237Sb/f2x5y5fReT9Uer3L5S/XjnHPO+XUe7fyfc84555xzzvmz
+fD9fb9zLvPuJfXFBreVc/x69e+Oy0nyj7yvFiWcbtR7GxhnyY1+nz9l/29tt
+Wh/O+X2e7qel43zt70uunNa43NlxJsf5ebTz7bvP89v2l/O/46N+r8eOr9ub
+atthtPOoefcf08+l9dB7XG07H6vf/mOvm+rb/9jjP+ecc86v9Gjn+Zxzzjnn
+nHPOn+Xbv9/p871Zz/mm9et9fn/+fYf95Trvrct71fPdZ8sZdZ8lWnxaaz1z
+y89rfJ2erv/a9pPzUXGenPM4Pur3bnb5v/b+wbFef74R7Xz7Lh/d3trO80ef
+D8xK0c5/2q9Tls/nrqe+yznOd/34w6PqOer669zvQi71Hw9bfez1UZz9hXPO
+OZ/h0c7zOeecc84555w/y/fz1d4vS1N7v33tfO+Ne8mn3HKd9WjjaB3nP3+/
+ZvZyzWn/qcfpL3qHzxtP45r2wDnn/FpPk/spvedv2+9H2b612709zTqf57/h
+y+fSdcHY889559U5HxufxjnnnD/Lo53Pc84555xzzjl/ty//fab3x1mN9v36
+zI8baavP9fFavds3t1z73t7/n6ZR44CNXa5Wj9NfdJeP2o7viNPjnHM+x9NU
+/3sU7byaH/u58VfTfOfPN0rz5W/2+vuz17xvffb1af3yHteHc845f4dHO0/m
+nHPOOeecc/4OH30/Yju/+ffvjK/1SXPeu5Gu/9J9sOhxZXnfX844/ULRvPV4
+0toO724PnHPOI3r9eUip/DR/tPPzp/vyX+35YWs56fRSaj1v6Yvjam+f/Nk+
+ql31Xq+dvf6qe85iTWP7DeJc13DOOef/pmjn1ZxzzjnnnHPO3+HLf5/pZ5+f
+Ted39/27aP3A896j0dqv3rcdz98X6G2f+/Vp9Tj9PKP8eL2dL/+a+y+59Pzj
+D+ec87neOn7jr42vtV2+/vP82fEerfVM61dqJ63rbdTyjo1D4+/21v3k/PGh
+9Ty/t5zt9997XcY55/wdHu18nnPOOeecc875O3z7d029z4Nv5/e0+3dx+gGW
+tF2e9n7+se/R+E6j7zcdz7fW42yvc/crZ+0X89thmkbdN++tf1o+55zzZ3rt
++UPreW/redG95+Hf9ZkdR3TvewDr41W2qX97RVufre3n2KPFI73V689L+67L
+zh83xvqo/gTOOef8Xh91ns8555xzzjnnnNf4nHiep3qc/oFjPx8/Mye1rv/v
+78fy++77LJ+X6ef2xzTVL+/s+4yj3x+0TI9xPOGccz7Kj38Hz99/yc139PhI
+afm5esaMC5odx9J+nrZML53/tF4f5cqPFsc1dvyiaPFO0by+Hbae9+bKeff5
+cLTrPs4557/md/XDc84555xzzjn/Td/PV44DWfL1lv9W71sPs/sfZqfr+0mO
+y4l2HyfaeGj163nUe0/6jktPv9/EOef8Lh99/pCm0c811P7ux4yzah0ftfc8
+dnx7GHV+Ei0ua048z3eKcp58l486f06/39tuc+Xc7fvLG+e+POec89/0UeeH
+nHPOOeecc875DN/+/U6f75XvK+3P7/5+43f7vJRud97nrffRevev2vnOPp4Y
+r49zzvkMHx2XcvZ3vPV3sHV5W+s51mffR1un97aHa66P5sXXRR0/7ThFaZ/X
+n7fPXv+t7XD/+1cdb8Vlcc45j+mzzw8555xzzjnnnPMZvp+vfdyt/fLStJb/
+Ll/TqP75uvt95dRa/uz33B23q9b4pd77g+XyR+1Hx96/XXvrOWp7idvknHN+
+vd91P6hUzzX1nT/PG//neLnO+7XnA2uafR2UW55o8VfXjMPWvr/Mauej/K74
+q779NP3+dcfhMe2Bc845H+ujfn8555xzzjnnnPMn+n6+/HO4fe/v+C5/ke3n
+9riRu9bbNfdN6pc3V060+0pP99H73X57SL9/9/10zjnnvM9bz6NGxQvNHr+r
+r55x7ostadZ5SLRxQfc/xzvPvDe+a367Ouuzr0/ffT4f7fjDOef81zxafzjn
+nHPOOeecc86v9z+Z1NvP/5nP+efWt/UeF4eWm2+0+0ezPbcejn2dXtouy3+z
+2gPnnHP+y577/fWer0+6e5zMdD3HOM8v1z/a+eq170msPb8d1w7398f69nPX
+cxaj2lurX3PdwTnnnI/1aP3AnHPOOeecc845n+fLf5/p/c9f739eU1r+cf55
+cTjR1ls031/+q+7/1reT0naprT/nnHP+XK//ffzNuKxo4/bEvx+Xq39ru3q6
+73+uPf9M07h2W7uf3hWXFS3usVQPzjnn/E6Pdh7IOeecc84555zzer87nudT
+r/77CMdeSst6uS9ea5Q/pZ6j2uGSxraT/vbAOeecx/dRccutv6dx7mfl/O74
+kH1/7v240vKmyxktzmp2nFJp/ez7vHitu99Lvr+85/14vnGOP5xzznmNRzvf
+45xzzjnnnHPOf9lb+89jxl/Nfn55nb6dT71H2+5P9z+Z1FfO+ftT+/O7+346
+55xzPtZbz99Kv+Nt+Wffz1qnl87fcvnv9ffdj2td3mjxV63xe73nq2k5pfnl
+Sqg9770qDu2u8+39+ca5z84555zXeLTzOs4555xzzjnn/Bd8+3dNMe5HfKfP
+crwnLuvY9Z/M9tHvzdzO7+77sJxzzvmVXn8+2VpOKaXfHxUPE3P8q3pvPf+J
+dp7Wd12T5nt+vNbY9ZDzeXFZufzXLFerx7lvzjnnnM/waOdvnHPOOeecc855
+ZB/1nHW0+w5LWuqdTh/j5/sx7r1Pp1+ld784Xo/l/SVXbq4czjnnnI/y+vOf
+7fTy7/5bfdT1wtM9t7yL1F5HjIrbH3VdNnY9tJ/f1q6f0dvrrPed5/NrfNR+
+N/u6Ptp645xzcVmcc84555xzzvkZ38837j7C3fFXZ5erz8f1G+fqf4/X9zNH
+a+fX7BdP2Y6cc8455+O89jw52vneveeZ7fEbs65fYsZrnb/uOC4/V59v7yuf
+p9Prjifzyum97mutZ+1xrzTftnKibXfO+S97tPMuzjnnnHPOOef8jO/nG9dP
+GC3O6t7xr6L1i67Tt/WK5uPuN6XlX7N/tffn19afc8455/xdXpvcv7vmOiKf
+zl4HjTqfz32/L/6qlOrb83794tzvHuV167P/+mu/Hvn5jhovbvY4frlytst3
+Pi6rzeO0K845j3Z+xTnnnHPOOeecn/H9fKV+yPp+76f4kpblT6fP8uPtcld/
+yDp9W9+neGscV338YV9+cVacc845531eHy8U7Tor2vVdydvOe+v9XPzV7HS2
+HT7d1+m911N9193n61Mqp7Y91+1H5fxzxuvOzX/edeWs48Co+R5vr2j7F+f8
+jEc7v+Kcc84555xzzv/13ueCP9PL8ULR4qlGvS8jtx6u8Tj9Hr3vc+Scc845
+53ykt16PLKn2uuatvv2bS/3bpS/OanRcx6x0VRzUmuaM61Vfn/3txa/x89fj
+59pJ7XFgVFzcuPH0xtSTcx7Zo51fcc4555xzzjl/t//JpOP87f1j23rk+9uf
+4rn1Y7ysGi+ltZ1wzjnnnHM+z8/f9599vfZ0389333avq+e8VNuuOD/v9XFZ
+rf0eY/f3efFXpXoe16O2npzzJ3q08yXOOeecc8455+/w2e/jmz3faJ5b3tz6
+udfj9Hscu/fxcc4555zzCF6K0ymXM/v6jvf5Xe89HPvec877vHW/GN1Psq1H
++fic1n/sey3r49Zy9WmtZ2t9OOfisjjnnHPOOeecP8v38427jxAtbmp2HNpT
+/Lg9xO8PST+X2i3nnHPOOectnp4/t14XjBpnhh/7n0y65vquPk7v7vrnUtvy
+cn7ss59rm31cLS3v9vv535G++cbph+H8lz3aeQ7nnHPOOeec83f4n8OUn/4p
+b+2nypUfLZ7KuFjb1Jb/LjdeFuecc845j+D1cTi5/HXXZWs5rdd3o7wU/5PW
+sy7/mp71fE379csyvXc73r1+0vqXlrdtffK3eu/4b33p/t+Fe48znPMZftd5
+F+ecc84555zzZ/ldzyf+mu9/XlO63mJ6nH6PY1+nL8tRardpfs4555xzzud5
+7/ntd6q9/mq9Tqyrz/fyRr8ebK3/sc+7fsl563aMuf6/18Nbx53m//q46/e0
+/Nb8rfWJ6nOPS5zzGm/9Xeacc84555xz/m7f/s2l5fvj+n9y9YnWP3zVuFjL
+57r1+ZTnVeN7730ZzjnnnHPOr/BR133XXL/krytrry/eMS7x+fu26eeo7SRq
+HN1xinvd/XZfPpfWf2v7bJ1vXzlx4rXGHvfi9M9w/iYf9bvMOeecc8455/wd
+PjYupb4fPldOtP7eX4u/Kvl+/eP0e/R5+3O123zx7t9xzjnnnPNnee788/i8
+tP36K/XW9waWlqu1/Nrz8JjjJo27HlmmX9V+jtvVd/nRrrtHv3cyXd7c90vl
+8DYvtcNZx5Pe/aKt/Vzvff1U0fpnOH+Hjzr+cM4555xzzjl/t+/nK40bP+++
+wNN9//OaatfPbB/73OhTXFwW55xzzjmP4K3XC/POh3OeO0/uPX+Och3Uurz7
+y5db7pKv03vbT+t26d2O6fqJdt199/V7a/7f8vr1OSru7qr9Yptv/u9Fa32u
+OY5xzv9Ns48/nHPOOeecc87f4fv5xt1HiNbvOnu8rNJ6zq3HaL5dntJ2j+/H
+2+U7v/cecs4555zzK73v/HNevFDr9U60ca5az//HeimNbyet26vVc0sS7Tr9
+7jiuZXrtfn31fnGv1193tx4PR7fz4+Ns9N+LOP0wnP+Cz/795ZxzzjnnnHMe
+00fHEW3z/ZeUt/ZTjRpHPVq/6+j4nHS93eW/Oe79/Pe5cM4555xz/iTPnf/f
+FZfSOt+Y8Qnz4zrS8nPbcbbn6hPt+v3ufoP99lB/f/+4nOd4mu56bu54Pdcf
+32b72LhBzvkMv+v3l3POOeecc875WN/+XVOMuKNcyuVfPbe8MftR6+N1nvY8
+7PL5ePqa721+vN/Ff06Wc84555zzGs+d97Zelx2fP8c5z7/G1+lXb9/0OqV1
++47y1npGu96PGa+1pPJ1+tj99PrnwqLFZfW289netv6jHSc5f7ff9fvLOeec
+c84553ys7+drf3/Bdnq+X28/rfPNfW/286FP6cfLLdexX9//ub88pXbxXB+7
+HdPvx7vvxjnnnHPO+b/eej486vru6f6U95u3bt/ZnqtntPiou3zU+jzOH6df
+IjffaP05T9/fS/XmnI/3aL+/nHPOOeecc877fD/f2j+z/dz+3ofe+qTzzZV/
+nD/+uPej4pr61uf58ZqO5xunH+Man/0+xzVfabtwzjnnnHM+w0fFLfza+7N6
+n3taPt+93Vu3712eq3+0uKlovv8578frf971datHi8uKtr+/9XjL+Zs82u8s
+55xzzjnnnPM+b31OubX8/XyleJ7z418dlzOvH69veVvjcOr7+UcvV+120b/3
+SU+//8I555xzznmL11535PIfe5zz/JznzvOfcv7fWv+neG55o8VH3TWO1jXX
+re1xWblUe9yY3Z8zu32OcuMTcv5cj/Z7yjnnnHPOOee8z/viZ9Jyr+ovau/H
+286vN16rPt7mrvGyWpdr9vsO+uof38eun/b+5/1yOOecc845j+G111O5ckbF
+UYyqTyl/mm/sddN9ni7XXeMI3eX7+d4bxzVq/eT8uJx5/Tx3xWXlyrnLPTfH
++XM92u8j55xzzjnnnPNjX/77TK/vl97Pn85vXH/Rcf1HXefm65Nb3tRH9XOW
+5rtfz/rtFa0/9rj+0XydXttOcvlT772vxDnnnHPO+Zu99Xok57PHE87Nd9R6
+uMtLy5Wut1HbK5qny52mdD3k8keLv7prvPRjjxqXlc5vXPvZfn/8fl3bPjnn
+8T3a7yPnnHPOOeec8z6PNl7Wsc+7zh31fo1R/Zzp57r1YFysY1+nl+o56j5O
+33qOtt9xzjnnnHMewUc9T+F8+5yv6TM9Tv/GbG99viZa/NU74rWuf56ubrly
+afz+eFyfaP0wvNVHjec2u55Lavud5a0e7XeQc84555xzznmfL/99ptf2d6fl
+3tc/fLxc865/t9Nz622t59jnrNvr2Ze/dbukaXY/T2896z2db8zxxzjnnHPO
+Oed8nG8/t1+nfP7G6feY7fv50vXzndL13NdvUH8dnSsnZrxWbb9Uvj7XjIuV
+q/9oT1OcuJHf9FHt/3z5+/MrHc/H9cu1lS+Oq9Wj/d5xzjnnnHPOOR/rzxpH
+K+/bz6Ov9/Npf769/YS55V3TNe/XuOs5u/M+6v2S4q8455xzzjnnv+rbz8v0
+OP0Y0Xw/X359Hnuc6+h7n1eqXw9PuX7v63/jS2rbX873Zx63k/PlX/X+3OP9
+qnZ5573XNVfOr3m03zXOOeecc84559d47/v+tuXe35987GkaHcf1Pd/j9TYq
+pfO9b7nu8fZ+7Nbl5ZxzzjnnnPN3eC59599+XqbH6cd4ui//pes5nb6fyttr
+lI+K1zqu//n+kr751vtx+XHiPWL6On1Zn61xO3Xbd01j44W+65+rT+t4bq3l
+X7t/zfo9itY+6+PNRpUf7feIc84555xzznlM/1OVlu9H6X++y+el7fzujo+a
+P55YWk6pfebqk6Zz/XK5FK0dcs4555xzznnq9fej/248LY+PHZ/8qjiZ75Sr
+x763xjOcT7n1n34utX/j+dT4On1/fa6pdb9o7Rc63u7tcVxn2/Oo51tHjV/X
+t9/1bvfrfo9G+ejjUm37yXm03y/OOeecc8455+/wc+/1i+Pbz+3rYX+529Oc
+51XLqXX73uW55ettn+l2z+V7SzvnnHPOOeecv98/f3PXieK1Rvny33Z7jBvH
+6bj8++K7YqVo8U6j40ly7eQ7pe2krx8p3x5y7fzXPbc+e+O7zs73eH69/Zxn
+j2Pjjktzt+/5ONtov1Occ84555xzznlk/5NJo+J8cilXn2jxUdGe+2tdb9vv
+1W+v/fzr/LbTOeecc8455/x6//zNX+duv98ev8GPffs3l+5vJ+f8PWn2e/EW
+Sfc7zut9XD/Y4qXfi9LvSFrOsUeLvxo1/r+4LM4555xzzjnnvMZHj1u+7/X9
+dU9ZD6Ofu9zWb9x62Narfruk+Uvlp/XnnHPOOeec8xieptZxe9x3HuX7+fLb
+61w5/e3k3HLNTt/1336+O36G8zm+fC61/1H9nGOPb/Pisq5578D5/kPOOeec
+c8455/xNvvz3md5/nd4bl7WtX6n/IZe/vpxo6/8pvvx3z3bknHPOOeec8+u9
+b7zi+uumv5vy0+n86X6un6ScWufbG3eRqyfnb/I03fs8Zn1c0zXj89fHJ7ce
+l6IdtznnnHPOOeec8xrfz9fez3zNuFi51Pv8aHl5c/WJth3v8rHxdZxzzjnn
+nHMe3z9/89fX2++3jzPsfnRMHxVXMDb+qv75plHL27tctfVcpG0/4vyZnqZR
+8ZCt++Ps42eunvvfF4fMOeecc8455zyG/+lK9f291zznNWpc8fbnxfbLOe/R
+2sls7+tPNi4W55xzzjnn/K0+bzyTvxvPlbvWJ5f/Lm+9fmwdj+XYrx83Zuxz
+aqP7PdJ6nN+OUcdRb1vPnMfw5XNp/61LV//ejXtOMy0n2u8a55xzzjnnnPNn
++ah+qrv6FUePi7Xvrf2QuXp8r//083b+o3zec6yz/bj+4qw455xzzjnn/Njr
+r6f64pHqr6//bspP63v+OnH2uFLRfLt85fWf897tvkzvbZ992/07Rdsure22
+tLxnty//ZT/fnzbqOFyaX2197vJRv1+cc84555xzzt/h+/nK15vbz8/pnyyt
+h3S5xvpT4rJafdTznk+PZ+Occ84555zzt/ua6u6nl8sffV1/nNb55sqJ1o8R
+LS4rV+6xl1K5neS2V6sv/6XLFW17nXsPY/1+PaY98Kf58vl4epr6j5+58vvK
+iT/u/ajjFeecc84555zzmL6fr/S8Uv11erR+p9nP5451cUecc84555xzzmP6
+5+/39Wbrdfe5976Vy8nVM7dcpfmk+aL1Y1wTZ1W/XY6n946HU26fre2h1bfl
+3d8e5sRrrel4PUTrT+OjvHV/7PtdGBfPmZbTu1+nyzXbRx2XOOecc84555xf
+4/v52vuplrT9/vP7l+59PvT6uKzSfJfPpXbCOeecc84555zv+fbz6OvceXEF
+fzee1qM+XihXTm980dnlvcZH9VdcNV7NmnLba5Tn6hOtv2t2v1nd+klT+/OG
+sfaL9/ns97e2bt/R+2luPWy/P//3dPZxiXPOOeecc875sS//fabXX0dvy21/
+TjBaP89V47S3rucxPrs/s71fa/mcrh/OOeecc8455/zI+8apPu+jnjurS+l6
+mBdXdre3Le/d8Vflev7dbPf0e+c9Wj9YNN+mdXvl1mcu/7P6/Z7ro8brGzUe
+4Kj9NFf+dj61x8PzPvu4xDnnnHPOOef848t/n+nl675cOdH6W6J57/qf69fH
+ZfXVZy1v+z3OOeecc8455/xfb42bmn/9m9bz76Y+5e/31T9OfEXOj9fDfXF0
+2/qNa5+55Z3trfWM1p8WrR/vqnG9ouyn0fyu97Res59e3y9613GJc84555xz
+zn/Nl/8+0+uvi4/TMr/f689ZUuv6vMfvisuK0y/KOeecc84555zP8M/f736Y
+3jir2vJL5WzrXY7bSfP3Xb9Hey4sV8/Zfn28R2s7idbPFs371nMujXueMdfO
+nup3vX8hl+7aH/e/P/93inPOOeecc875x/fzjYuD2v+8pmV+S75o/SRR+2HS
+9Tbb730u+Hx/qXgtzjnnnHPOOedP9M/f7/6Bvue82u/Xp+Xk6nNc/lt9nX51
+O6ndLnf59u+aovXLPd1b1/9x/nzaP568z2c/b3vXfrf//fm/U5xzzjnnnHPO
+Pz6nHy9N+mHeMS7Wc8fLEpfFOeecc8455zyyf/7e1Z/DR40/dq2vqbX9zPbt
+31x91/YZrb/u6b5Nte3q/PY6bg/5lKvHLG89rt71fO7o/W77/ft+vzjnnHPO
+Oeecf3w/X+/1Wv3zWdH6Ma7qD8mtryh+3E7i9KPmvK/+a75z7Z9zzjnnnHPO
+Od/69vMyvb7fRlzWlb5Ov7v93BXvMdu3y7G222j9e0/xXCqt/+Vzqb3l8pfy
+Hder9ng17znT2e+PuGY/EpfFOeecc84559F8P1/p+qv9+i79fq4+0foxxGV9
+/FnvMSz3Qy3JOFqcc84555xzzu/w7edlent/TlpOyffrE+36fZ6/pR/gbPuJ
+5tu/3yld3mj9fk/3JdUeT+7tJ4zzvsKYcVlpvvnHpWjHE84555xzzjmP5n+q
+0vL9Un9dnOvfu/x4Pc9+zst4WX3e+77OdL/gnHPOOeecc85rvP5+/ag4itz3
+3+Hr9GW5W8cRypUT1dPtm2s/T/fW9h+tnzCaL+n4eNS6H5XbbW77lsrd9/x8
+246H17efq/aL7ffnH5eiHTc455xzzjnn/Cm+ny/ff7ikNF+0/oeo44Tn1u/V
+fs345NF8VBzamm9bHuecc84555xzXuPn4xM+f7+vZ98a35Vb3vRzjO173luX
+N5f/6Z5b3v3p8foPo/k12yXns5+7vD4u67h+d+0X8zza8YFzzjnnnHPOW30/
+X/55pVHPSR3Xp75/o3V5o/VLjHpfYWn7puv/bs+l/fxx+mP7fFR8Guecc845
+55xzfq9//rb3P+RSLv9xOd/1TPPn6jmqH+bdfj5u7em+ny+/3qL1Hz7FZ2+X
+Y39uXNZT9otRHu34wDnnnHPOOec53/4tp1HvtV/Sp16t/Wy5tCxn+3VctP6H
+Uv3318+8/oGxXh9fd7xcT/d1+n77/E7p+jzer0vlc84555xzzjnnI33eOFQ5
+by1HnNU5z23v1Fu341t9P19pfRp366r1n/rY/snnxmWVlmv7/fuOS9H2d845
+55xzzjnP+fLfZ3q5H6CU0nJ647W29c73V/SNhz9vvrPHDesd/792uWb7b76v
+8Px4WaX9d/mcbl/OOeecc8455/w9Pvp5KN7m9fFCfzeelsdbffkv3R7R4qmi
+xWv9qUrzjj+575/djsfzG9fetvnuPs6L/+Scc84555z/jv85TOf7x0rzXfLt
+l7uW0xu/VOsx+hPW5T32u8bRGvW8arR4qvM+qp2kn+vaA+ecc84555xzznm9
+P+V9ak/xa55bPP9866jx/6PGax2v39x+8b2cuSm58s+u51HtcD/fVceZ1nja
++n5mzjnnnHPOOY/mo+JhRo0Dn6vn8t/2++PGv2r11vV5TVzWvOe2+trPqPG7
+4sRTjXXvJeScc84555xzzvlT/Pxzl7zP++Kj6uNY9utR3u65fG1+/nnGaM/D
+zo5/O7dcuTT+uHFcn/P9q9H2U84555xzzjnP+fLfZ3r9dfS23Lv7f8bFj7Wu
+h9Tv6h84zh/nua1SfdLlOs7/FP9OreOQL2l/vYzqZ+Occ84555xzzjmv99bn
+NP9u8qfTeavv5yttx3nja832mPFa9f16rct1bzvp9TTN63eNtj9yzjnnnHPO
+easv/32m564zl+9f1f9z/fhFo/ya59faxxM7W//edpWr/75Hi7O6vl0dr8/2
+8eI455xzzjnnnHPOa/3zt77/0PsNY/ryX+322v/c62n9/svWZ5SPfc50XppT
+n+v29+N6icvinHPOOeec89bnnnLl7M/vqv6i+HE1c/oBvtfPfn3GPQeXzndU
+ezguJ1qc1fn2M/s5vlHvFeWcc84555xzzjlfPv/JpDSfuKx7vS/OKi23tN3n
++VXjdLXO9540+nnM2vLje7T9jnPOOeecc85zvvz3mZ67Pl2+f3f/z7cfL9dz
+47VK2ytNd5czpv3ct73a6tla//njjz11/+Wcc84555xzzjn//I3TX/pW3/7N
+pfPbd/v57ucuW+tZH8cVM8WJm5rt0fYvzjnnnHPOOW/10eM4Xe3H9YwTrzVn
+/Zfrc+/42HHWf85nx031lTO/34xzzjnnnHPOOec89VHvuTOO1r3+lPHVc/Vf
+/tt+f3R/71NSnPioJe1vl/V7pe3b2m6j7V+cc84555xzPtu3f3Np+f7z+5Fa
+/Xi9Xf8cVqk+y+e69Rzvev8u36/fqPXMOeecc84555xzfpef77cRXxHT9/Pd
+3d7u9vgpt3/+ikfbjzjnnHPOOed8tu/nK/Xb5PI/x/eX8+nPZ703bqpte63L
+t3yv1P5b232tP+V5Rs4555xzzjnnnPPl858kjerf+LspJ53Oo/ny3377GPf+
+wTT/6Ppfner2l++UWz9v82jtnHPOOeecc87v8v18pevo98ZxjfV5aX+7PMeX
+z8v0XD9Gqx/P9/w4acf5e+P6orVbzjnnnHPOOeecv8m3n5fppX7CNeXyG1+L
+z/A/mdQbB3U2tbb/3v7M4/n/9/W96B6tXXHOOeecc8750701Tibm+EL1cTs5
+31+Ocanvur79+cfa7RXN69K63Ue15+N6GF+Lc84555xzzjnn1/vnb77/avv9
+/xXyt/ZvnO9n4+/wP5l0rt/vu/2n7bk0/+NU3o9yflX/Z+vy7ucXl8U555xz
+zjnnPKbPeT5rmV+86/1ovqRlfZXWz5ztu26v4/p9l39cbq58zjnnnHPOOeec
+83r//G3tl6iP6xg1Xlau/NZy+Me3f3Mp137K6e7nLtN2cuzn47JGtfNo/ai5
+JW/dT3Mebb/gnHPOOeecc36v7+drf7/ekpbvb6eff8/dnOVd0+x+gOP6xHmO
+cj9f+TnTs/XPzZdzzjnnnHPOOed8rNf3U32+l+/HSMst5T9b/1z5s31UPffL
+i/dc5DXxQrPHdxo9jn1av/j9sb/Wr8s555xzzjnn/F7/k0mjnzPa9/NxWTmP
+tp7f6vv5Sv2Zufycc84555xzzjnn8f3zN9dP0j4e0XZ+48YRytWz1ffz5Z/f
+zC1Xrvxo8TZzxrn6blfp+un13PzavJT694vZ7e0pPmr9cM4555xzzjm/xqNd
+Vy7pU9/afoN5cVk5j7Ydn+Lbv9+pbfum84vXv8o555xzzjnnnHOe88/f+v66
+1vy5+Y56/12uPrn5HvvvjHO1pP3lnz3O1aj+1Xn9sdfGB64pWjsRl8U555xz
+zjnnMX0/33qdu/18X1xWaz2Pvb0fIFd+rj5tbnzp/Xzj+lVy5XPOOeecc845
+55xH88/ffP/G9vu14xp9z7etnPNxUKXl2q9nfX9dtHiYsc+Z3ufL57rtcv3z
+sLkSc+1tlOfmG629zV4PnHPOOeecc/5W3/7NpeX77eN7390vkdY/V88+j9pv
+kHp9f1e09nncbnMp2vrnnHPOOeecc845j+fbz6Xxr+qfB8yV3+pXxWUdp/L6
+vCt+LJofL2+ccbFKXrtcsz1XH3FZnHPOOeeccx7TW+OpWsuJ5rnlGuvn+w16
+48pmeW67t9Z/1PY6rk8p1S7Xd37OOeecc84555zzd3hrPNW8+JlR/Xi9cVBp
+OaX823zl9V9b/6f7Xe2nLl23f+XWwyjPLaG4LM4555xzzjnv877+hPp+ldb5
+PsVz62FJn+U+2/8wuz+hvf7L5+3053i6XMftPFeO8a8455xzzjnnnHPOW/3z
+d1Q/TDRvTfXll9Zbbn091Y+X9/rt29duR/n5fvhRnqtnLr+4LM4555xzzvnT
+vXW8o1w5pe+nEi0+6q3jYvXFg71vHC3OOeecc84555xz/ku+pr5+ud7nEHOp
+v/7H9ajv783l307/Xq5ne9S4u/v3i1x7uMtz9W9t5+KyOOecc84557N9+3dN
+x/nTcu/rH/g1X9J2/YrL4pxzzjnnnHPOOef8jf75W99fuv85TeXyc95azvLf
+djlH90N+16evnOs9dr/omlrbyWxvbT+t5URbXs4555xzznl8b43zGfsePeNf
+RYu/yvldcVnH3v4c4jJ9+z3OOeecc84555xzziN473Oyaxo9rtfZ+o+Kbzmu
+59N9nb6/nlvzz/N0e7dux7u8tX9bXBbnnHPOOed8lO/nq70uW1O0+KWneG67
+RIvLOm4/cfox5rRzzjnnnHPOOeecc87n+udvfb/u2Oc94/Tv/ZrHHhcr9fr+
+2Ke4+CvOOeecc875bN/Pl7/OOs7/7dHioO4d56p9fea2x9V+3H7i9GMs6bgd
+l9st55xzzjnnnHPOOefz/Hx8y6i4rFz5ue/zsX68/tfPUdvtW+Oa0uV8y3Jx
+zjnnnHPOS+f/S772eKfj8s/HveTKjxYfdff7B3MpXZ/P8jj9GOn00v6Sy885
+55xzzjnnnHPO+Qwf+16/7/661risvudMeauXtuPy+e72mfPj+r9vHK10ed6y
+XJxzzjnnnPNvH3tdXB9vEy2u6Sm+pP31fH67xPQ4/Rutntvv0s/b5eacc845
+55xzzjnn/Iyfj2PJld/73GhtPfmxt26vp3huud46XhbnnHPOOeec7+dLr5u+
+0zZfexxOrj7R4qPujstafFl/fXFc8TxdrtLyR/HWdpvm29+/OOecc84555xz
+zjnv8frnN695bpQfe6m/NJeitLfzLv6Kc84555xz/nTf/s2l5fvl66bt5/7x
+mtLyo8VB3eXH23H9XLdd4nhfnFK0fpL2fpVl+rJcvduXc84555xzzjnnnPMe
+H/3ehLbye5/frK3PU7y+n/zvZn3myr2/Xc128Vqcc84555zzp/t+vtL10bjr
+zdSjxUdFGxdrkdr1Gc1L7XC/nGj9J+fbv3G0OOecc84555xzznkk335u7zf+
+/P3u92vtB8uVc/z9Ukrr39qPfX6cq9xyHS9vrv5v9zWNaj+cc84555xzHs33
+8+WvL1ufh4oWB3Vv/FXrOGbn49/u8rHP5b3V2+PZtvmi9J9wzjnnnHPOOeec
+81/xz9/R/dJr6h2PK1f/NP+o9x14HnOOp9trVHvjnHPOOeec87t8P1/uunZN
+ab5ocVDRfEm59fs2P25v0eKj5o9PPma9rZ+33+Occ84555xzzjnn/F7//D3f
+r5Urp678NfWV0/pcLW/1u7Yv55xzzjnn/Hd8P99ynVI/PtWo53q209N61F+H
+9s133vJG89zyHnucOKtjjxYfFc2935BzzjnnnHPOOeec/6Z//rb2k+d9+1k8
+1TP9fD9qrl1xzjnnnHPOf8ejxf/0ju+Uptzypp8/+fqvx7ffjzceV+t2z62H
+43zR4q9GxRdFi5u6bxyt5fP+/lJf/nE5nHPOOeecc84555xz/n7//I1zn4hz
+zjnnnHM+z/fzLdcL9XFTS8p9v8174zq+U1v558fdiua59Nb3Hh6382hxUNH8
+/PsK+44znHPOOeecc84555xz/lxv7T//u8mflsc555xzzjn/Bd/P1/te9fNx
+UKV6LvlK9RkdX1Rbz7vGxWpdb63jSkWL1xo7bli0uKm7xsuqj89sPZ5wzjnn
+nHPOOeecc875s/x8fynnnHPOOef8d3z7d02j4nP63h9XX/6Stt/vjwPJlVPr
+ufV8V/zV8XbPr4d9H/devDF+vt32LdeveWn/yqX6/Y5zzjnnnHPOOeecc86f
+4tvPy/T6fvhcfs4555xzzvn7/Kp4p3s8ThxR6/qfPe7xfr7e9Zkv567101rP
+XL63eV97qC/n3ccTzjnnnHPOOeecc8757/j5/ljjaHHOOeecc/47vp8vPw7V
+cTnt8Tlnva8+59+fuMj287j36939HsN0eVvf61cqf9Z6aJ3vNe3nud73Psfz
+45ul8xl93OCcc84555xzzjnnnPOxXt9fKi6Lc84555zz3/E/mVSXv/Z65C6f
+/x63XH1y9Wj1NN0Vl3Xs5+NzZo8PVqpnulx98UhP9/PjmKWfl++1Hn9y5XDO
+Oeecc84555xzzvmz/Hy/9N+Np9/jnHPOOeecP9F7x8nZlnv39U6+fnN93nsP
+74rLOs5/fVzWqOXKubisf/O1jqO1zqfUfkrbK9d+0vI555xzzjnnnHPOOef8
+Lv/8bb3PYhwtzjnnnHPOf9lHxV3k8t/t289XvbfufFxW7/aqLSf9XLd9z4/P
+fO94Xzl/StzU+r1z9b9ve7UtF+ecc84555xzzjnnnD/Fz/fH5sr5u8mfzp9z
+zjnnnHMe2ffzrdcX6fVCKX8UP17eePE2tT4qfqZUz2X68fbPL9fs532O69la
+/+vfg1m3XN+pbX+Mt72eejzhnHPOOeecc84555zzY4/TH8s555xzzjmP7+96
+v2Gti9dKP++vt7Te59tbrvy6+kTZjqO2b/37BHu3Y+18j8t/63GAc84555xz
+zjnnnHPOW72+33jUc9a5/JxzzjnnnPP4vp/vvx+N17r+fYil7bJfn/PP3ezX
+L5/mxH3lPE3n13Nve65d/3d7X4qz33HOOeecc84555xzzvlbffu5/b6Dcbc4
+55xzzjl/n/85TOff7/Ysb43buep9ebX1uSrl1ud3vjEeLz6q1o/jxNblLm3P
+1vHTjus5Lp5wv/6cc84555xzzjnnnHP+XP/8/e4Xbe3vbe3XFZfFOeecc845
+bx2PKFfO/vziXX/N8TSNi9eam+bHlT3D69t56/4ydv+aHWdYig+Mtt9xzjnn
+nHPOOeecc855rY/rF03zi8vinHPOOeect/ry32d6+foil/rGF/pVj5PS7R7T
+z8dTzfbW5Wqtf2v5ue8fu3gtzjnnnHPOOeecc875c731+dljP//+hb8bT+ub
+v1+zX48495U455xzzjnn1/t+vvX6aPu5/friXPnf+ff9+vfCp/O7Kt0Vv/Rr
+vk1re8u1h2vee1hfn1x+zjnnnHPOOeecc845j+Zj47Lq47Va7yO0LleuHM45
+55xzzjn/Nf+TSa3jj51LS/3ar9eixTVF823qX8/H7ef6cbbr2vN3+Zxzzjnn
+nHPOOeeccx7dP3/z/Z/b7497H8HxfM+XwznnnHPOOee/5qPff7ef6sdByuUY
+tby58qPFU51brnV93tWucvVpjR8Tl8U555xzzjnnnHPOOed3+Jpm929zzjnn
+nHPOeTTfz5ePYxkdf7Xv7c/jpPWv87R+0bbL9e+XjObb5TvbftL5RemX4Jxz
+zjnnnHPOOeec8/v987e+/7bvedj6/tvW+nDOOeecc875bN/+Lac577n7Tp/6
+/vf1vX2vj8tqHTep5Gl9om3fX/O+eL+r4vo455xzzjnnnHPOOef8ef75O7uf
+9nu+reW01pNzzjnnnHPOW30/37jxrO4dF2tUXM28eJto7YF/fPmvtb1ty43X
+H8I555xzzjnnnHPOOeez/fO3vj929rhY2/L++7/t9Dj90pxzzjnnnPP4vp8v
+fx0UNf4ql5blSb/X5uPisnLzXT5vp9d7afum843WDqO1/6uet0rzc84555xz
+zjnnnHPO+W96fb/653Ouv3fec9a5+XLOOeecc87f59u/aap/v16u/GjxV9eM
+i/XcuKxznktr/mjtv9X72pX3D3LOOeecc84555xzznk0H9uvW+9/N/NN68U5
+55xzzjm/0pf/ttcP/eWkKVp81Dvir2bHZdVfx6Wft/W63lvb+blxz9b5jmo/
+x/U/H9+Yqz/nnHPOOeecc84555zzsX7Nc7jisjjnnHPOOZ/h+/na30c2Nr6o
+Pj7k6b5N39dfbeut3u96vqZUz+Vzuh6e6qPiplrLad3fOeecc84555xzzjnn
+nD/LP3+/+4Fb79fkyuGcc84555zXn2/n8u+X2z5eUM5b6/lWz62fXL7j/E+P
+y/K+PM4555xzzjnnnHPOOec8sn/+xrn/xTnnnHPO+ZW+n285f259f1x9XFCu
+nGhxUNF8//OacttvlseMyyql+69DOeecc84555xzzjnnnPNf8M/fOPfFOOec
+c845r/Hlv+35bil/6zhC9fE/0eKXnu7bVH+9k9t+szxmXJZxtDjnnHPOOeec
+c84555zzCP75G+f+Guecc8455//6fr7+9wOm5exPX1MuX+rR4pqe4q3bffu9
+8naZ7cf1jxd/tb9c4rU455xzzjnnnHPOOeec8xn++RvnvhvnnHPOOef/+n6+
+9vPbP5kULU7p17yUttv7vvirnB+3t2hxWd8+erwyzjnnnHPOOeecc84555yv
+/vkb574b55xzzjn/Td/Plz+PPRdPsqZcfaLFLz3dl7TdHvHirHp9P8WJvzr2
+7zRqP+Wcc84555xzzjnnnHPOf9k/f+Pcj+Occ84558/yc+Mjlc9Lc/mPyz0f
+bxMtrunpvk3f1ylnt9fdvr9c0eKvzr/3sG8/5ZxzzjnnnHPOOeecc85/0z9/
+49zX45xzzjnn7/Dlv+35aD7e6bic8/FX0eKU3uq57fiOcbTK42PlykvzPcNb
+49A455xzzjnnnHPOOeecc/6vf/7GuX/HOeecc87v9f186/nk9nOpnPPvU4sW
+d8Q/qW+7R4uzmjeu2vF6eLqv03PrqS4/55xzzjnnnHPOOeecc/5u//yNcx+Q
+c84555zf673voav1uvK/51eaXjq/jRbX9HTfpu/tvv0cL55qtO+vh2jxVPPG
+0Zp93OCcc84555xzzjnnnHPOn+ifv3HuA3LOOeec83t9+W97Hjn6/WXt4+rs
+f78+niRaXNNTfJvW7fKO9xKeHxfreD+KFk91vfett/XzueMM55xzzjnnnHPO
+Oeecc36vf/7GuQ/IOeecc87v9Tnj3nx/P5VcfbbT//uqV61Hi3d6ih9vF+8r
+PF4Pb/XZ8Wzr57bjDOecc84555xzzjnnnHMeyz9/49wH5JxzzjnnMX0/X/48
+sy+ORfxVtHGx9qev6ez2eorn9gvxWvvTc+t1Tn7OOeecc84555xzzjnnPKZ/
+/sa538c555xzzmP68t/2/LIUr3X9ODy8z4+3+++Mi3W8vLzVW9vbnPH6OOec
+c84555xzzjnnnPN7/PM3zv0+zjnnnHN+7KPGQRpVn1z5x/XIp/T70eKXnu5L
+StdzafvmtuvbfGzc2u94a/vxfkPOOeecc84555xzzjnnv+D/D7EdQyk=
+ "], {{0, 0}, {401, 401}}, {0, 1}],
+ Frame->Automatic,
+ FrameLabel->{None, None},
+ FrameTicks->{{None, None}, {None, None}},
+ GridLinesStyle->Directive[
+ GrayLevel[0.5, 0.4]],
+ Method->{
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" ->
+ Automatic}]], "Output",
+ CellChangeTimes->{{3.6595559215072565`*^9, 3.6595559434163*^9},
+ 3.659555989004507*^9, 3.6595560561097507`*^9, 3.6641619814216256`*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "6"], "-", "1"}]}], "]"}], ",", "2", ",", "401",
+ ",", "40", ",", "0.1"}], "]"}]], "Input",
+ CellChangeTimes->{3.66416194052215*^9}],
+
+Cell[BoxData[
+ GraphicsBox[RasterBox[CompressedData["
+1:eJzs9+vNJLuyAFZeQZbIEvkwJgiY37JFnsoEQRg0BoenoyOCZCZZVSuAjW/X
+4iuSZDLZ/9v/8X/+f/6//+v//M///F//y//vv//3//8z/u///b+Ic84555xz
+zjnn/CP8z+/Is3pR3PJ8u/1T+u2OE/2N6nXj1nm6zbN5ztYpiluej3POOeec
+c84557zrt+TBOeecc84555xz/uf3bD9Rf1Hc8ty3+u5+V+tF7aK/WbtVf6rf
+b/WxvLs/rAPnnHPOOeecc84/zW/Jg3POOeecc8455zyqV41bnuNXPFuv1fV8
+Ksb8T88j/7tH9Wb3Heecc84555xzzvnbfksenHPOOeecc8455932b+W16tX8
+s3ZPe7e86rfH7P7cPU+75vV0XrvOge58P50X55xzzjnnnHPOeddvyYNzzjnn
+nHPOOee/439+R/WjyOq/9RxR/vyz4pb34Va/ffxq+ez4nHPOOeecc84556t+
+Sx6cc84555xzzjn/He/WG/9GsTvfaNxTnsWteX1anFrvaj6n/elxquOePh84
+55xzzjnnnHPOM78lD84555xzzjnnnP+OR78zj/rPYjbfal6zvru/Vd/V36fF
+LfP21j5b9af664576vk555xzzjnnnHPOq35LHpxzzjnnnHPOOf89X42x3+x3
+1D5qlz1Ptf/Z8apenfdd40f9f1rsXv/uelX37y6v/s76644XtauOsytuO/84
+55xzzjnnnHP+/X5LHpxzzjnnnHPOOf8+j36Pf6v1u/1GeWb9d8ur7bq+u7/Z
+58litt1tMbtf3l6/7Pdsf1n9bnl1nOx39xyJxrnlXOScc84555xzzvnv+C15
+cM4555xzzjnn/Hd9/BvFWF79XR2nOv5sHtV+nvIon2p5d36q674ruvMQtauW
+Z887Ow+n9kF1f0f9dMfptp99/zjnnHPOOeecc85P+S15cM4555xzzjnn/Pf8
+rfH+/I58Nqr9dfOpenfc3e2yvLJ+u+2r7ar9PlWezc/qOs/2t2tesljNZ3Z+
+qnlxzjnnnHPOOeecv+W35ME555xzzjnnnHNe9ah8tv/Zfqt5Vsfr/p71XeM9
+NQ9ZvDXu7D5cXf/Zdct89/zP1lvdl5xzzjnnnHPOOeef4rfkwTnnnHPOOeec
+c77L//yO6kcxtsvar5Zn41f763q3vJpXtg5PrVNWXh1397rvGn92X2T5ZeVZ
+Pt3+ZvPinHPOOeecc845/1S/JQ/OOeecc84555zzVa+Wz9bL2lfz7Nab9dnx
+x/Jd85a1q+Y12/7p9Y3Kq+Ps8iyfqP3b8/b2+8A555xzzjnnnHP+tt+SB+ec
+c84555xzznnkUb1uf+Pfbr1q+0/x7ryuzlu1/mw+q+Ou5tPN83aPymfnrfu+
+7+qPc84555xzzjnn/JTfkgfnnHPOOeecc8555Nnvqo9/u/Wq5d28bvPZ56rO
+22x+1Xqzeayu7675OOVRdN+LrJ+un34fOOecc84555xzzmf9ljw455xzzjnn
+nHPOI99dr5tH1n52/FMelUfP2623y7N4K4/ZffB2frMexa73ottftf/b3ivO
+Oeecc84555zz0W/Jg3POOeecc8455zzzsbzavvu729+3+FgezfNbnsXb+a2W
+f5qPkT1vVD9rv7pPOeecc84555xzzm/1W/LgnHPOOeecc8457/qf391+qv3t
+Gu82H8uz9tV52O1Z3JLfrn10m0fl3fnI+svitveHc84555xzzjnnvOq35ME5
+55xzzjnnnHP+llfbjeWR787v9PNn9brzM+vVvN7Or5vXqfnb9ZzddVp97zjn
+nHPOOeecc86/xW/Jg3POOeecc8455/wtj8q79VfzuNWzecnq7fIs3sojKj+V
+x27P4q33iHPOOeecc8455/zb/JY8OOecc84555xzzp/2rF5UXu33luec9ahe
+9Xl3+6fkdzqPVa+Wj/Weas8555xzzjnnnHP+LX5LHpxzzjnnnHPOOee3elRe
+7ee251n1P7+f9izeyiP6eyqPWR9jdf92++Gcc84555xzzjn/Nb8lD84555xz
+zjnnnPPbvVtebXerd59rt2dxOr/o7235jVGd9+q6cM4555xzzjnnnPO/+y15
+cM4555xzzjnnnH+qj39vy2/Vx/LoeXd7Fk/lsVr+qR795pxzzjnnnHPOOedz
+fksenHPOOeecc84559/qf35367+VX+ZRefU5Zz2L3eNl8/L0eLP5deuN9Tnn
+nHPOOeecc875M35LHpxzzjnnnHPOOeff7lmM7bLft3g1765nMdtvVL6r390e
+5Rf9rsbpfcM555xzzjnnnHP+7X5LHpxzzjnnnHPOOed8b/lb+WX1//zuenWc
+1fGe6nc1jyivbjnnnHPOOeecc845P+O35ME555xzzjnnnHPOax7Fn/rj36fy
+qHqUT+ZZzPabzdNbHv3O4pZ15ZxzzjnnnHPOOef/9lvy4JxzzjnnnHPOOefP
++vj3rTyicTPPYrbfbD52e/Sbc84555xzzjnnnH+335IH55xzzjnnnHPOOX/X
+x/K384jGzfKtto/+dttnPpZn+XLOOeecc84555zz3/Bb8uCcc84555xzzjnn
+d/hY/tR4Uf9ZXtX20d9u+2jcLC/OOeecc84555xz/tt+Sx6cc84555xzzjnn
+/G4fy3e1H+tn7bv9VMuj/rPxOeecc84555xzzjn/m9+SB+ecc84555xzzvlt
+/ud35LORjd8dN6pfbbfqu/vtjlOdt9l12z1/3fIs713rtboOnHPOOeecc845
+5/zOPDjnnHPOOeecc85PefV3Vm93Xqd9tn11/qrts3yiv1n9LI/ZfD7Vx/Ld
+68o555xzzjnnnHP+a35LHpxzzjnnnHPOOedveVT+5/dt+d7uq/V2RbZ+WR6z
+z/Vr3v39Vl6cc84555xzzjnnt/kteXDOOeecc84555zv9mpU29/yfN18V+cn
+yycab/e4s5HlcXpfVdvftv/e3lecc84555xzzjnnn+a35ME555xzzjnnnHO+
+6qfH73q3/FP8U+L0+u/y0+PPevabc84555xzzjnn/NP9ljw455xzzjnnnHPO
+Zz0q79Z/2v/8jv5G9VY9iqfHvz2envfuujy9706Nn5Xf9p5yzjnnnHPOOeec
+7/Jb8uCcc84555xzzjnf5Vm9bv+7+o3yrPru/rJxxnrV/j4t3p6f3fug67v6
+6/a7+n5xzjnnnHPOOeecf5rfkgfnnHPOOeecc875rI/l49/ZGNvP/q7mk7Xv
+elZv1zifGtlz7Jr/qN/Vcaq/o/FX86tGd99XyznnnHPOOeecc85v91vy4Jxz
+zjnnnHPOOe969DurF8XYvtpPt/9s3Myzfrv9ZeN0x++WvxXVPFfnade8j/Wq
+/WXtq+NE4+16vzKv5sU555xzzjnnnHN+q9+SB+ecc84555xzznnXo9/dfqP2
+q+PN5lUdZzbP1fnJyqvjVOcvax/l112f6nir61BtN7u/Z+ezmudqeTT+LecK
+55xzzjnnnHPO+S6/JQ/OOeecc84555zzp737u9tf1i7LM6qX+ex4Ucy2y/Ko
+Ple339lxu+PNjjO7b7P+ds1nltfse3HLe88555xzzjnnnHN+ym/Jg3POOeec
+c8455/xWH8vHv1H77Hc2fvX37PNUx4nqV8fP5quaZ7XdrnF3rdfsulXXdTbP
+p+aBc84555xzzjnnnN+VB+ecc84555xzzvlpr7Yb/0btonrZeG8/f3X82X6z
++crGi8bZvU5RP1ke2bjV516dp2zcbr2xftVn23HOOeecc84555x/m9+SB+ec
+c84555xzzvlbXm03ls969fdpH8tn663OWxZZu+p4s+NW+zvl3bxXPRuvWs45
+55xzzjnnnHP+bX5LHpxzzjnnnHPOOedPe1Sv26473vi3289bHpXPPm/Vd8ds
+Htl6ZePsmo+n53X1ebPf3X4455xzzjnnnHPOv9VvyYNzzjnnnHPOOef8LZ8t
+z+pX8xn/dtu/5bO/d3kWu8frzku2nqc9+p15VG91/8/mwznnnHPOOeecc/6p
+fksenHPOOeecc84555/if35HntV7Or9V3/28q/1GsXu81fV6ej5WPSrvzjfn
+nHPOOeecc845r/kteXDOOeecc84555zf5n9+Vz2KrJ/Z/HZ7tV13XmY9i6fy
+6K7TW/Oxe/6y+t114JxzzjnnnHPOOed35sE555xzzjnnnHN+m2f1ovLdeZz2
+sTx6/t2exVN5rJbf6lGs7vPb9ivnnHPOOeecc875LX5LHpxzzjnnnHPOOeff
+4mP5+DdqH9Xbnd+sz+Y/61nsHq86/08/9+y+yOqN9bvlnHPOOeecc84557zn
+t+TBOeecc84555xz/un+53dUvxq3PE/k0XPu9izeyiP6eyqP2ejOK+ecc845
+55xzzjlf81vy4JxzzjnnnHPOOed35TF6lGeW/2r7KGb7jcqz8VfH2+1Rfpxz
+zjnnnHPOOef8Dr8lD84555xzzjnnnHP+77g1v7E8+t31LGb7zZ5zV7+788vi
+tv3BOeecc84555xz/ut+Sx6cc84555xzzjnnvOZj+S35RfnMeha7x4v+Pj3e
+GNV155xzzjnnnHPOOed3+y15cM4555xzzjnnnPO9Hv0+lUfXs5jtN/q7q99q
+nmM555xzzjnnnHPOOf8uvyWPKLJ8Z5/zU+eHc84555xzzjnnvOtj+VvjZfWj
+fKr9Zu1n52OXj+VZHpxzzjnnnHPOOeef5lm9Xf1H9aP4lPnZ1e/udrP9ZP29
+NT+cc84555xzzjnnpz2Ksf5sv1k/f35Xx4v6r/YblXfbd/PM6nPOOeecc845
+55x/qme/o6j2k/VXHT/r76356darjhvVy+Z1V37ZeFnM7qtd7TjnnHPOOeec
+c85P+dP9VseL+sv6rdbLPBqfc84555xzzjnn/Fb/8zv6G0XUT9RvllcW1Tx3
+51HtL2uX9Vftv7pOp311frv9dvvp1uOcc84555xzzjm/zbvtq/1k7cd6WR5R
+vax9lg/nnHPOOeecc8757Z7Vi/52x4vKZ9uf9qxeFNV+o3bVcT/do9i1Xlke
+t80H55xzzjnnnHPO696t96c8+hv1M1s/y2vVn2oftavOQ3UddnuWX9Q+q786
+TjY+55xzzjnnnHPOP8ezeuPf6jhRRP19ulfLZ+tn+UT1b/eovDuP1XZPvy+c
+c84555xzzjk/51m9qPzpvJ726Pl2zVtWL2oX/c3aZf1187vdf3Xfcs4555xz
+zjnnv+C720ftquVjvfFvVH67V6Pab9b/t3k2L6vzv/u94JxzzjnnnHPO+XMe
+1Tud16d4df7ejmqev+5/fmfreEu+nHPOOeecc845/2+Pfmf1ZvvL+v82j8pv
+Wf/bvDpP1fbVPKr1OOecc84555xzvt9313vKs3yi3097FtV6T8fqc+3yW/Oq
+7r8ov1N5cc4555xzzjnnPI6x3urvqP/ob1TvV3yMT/Vd+221/7H+7P7lnHPO
+Oeecc875ex7Vq8buvKL8quW3+qm4ZZ/N+lhe3b+7x8/yeGp8zjnnnHPOOeec
+z/uf35FXY+wn6jfLZ7X/T/MxnvasXne9ZvdPVj8bZ7X/zKv1Zse55f3nnHPO
+Oeecc84/yce/u/qrlmftonG7/c36p8fb8/TWPprtb1d+nHPOOeecc845z+tF
+f7sxm082XpbXrv5m+8l+n/Is36f97efcvZ/HuG2eV/cn55xzzjnnnHP+S14t
+z+r/+R151D76m9XvejW/7nNUy9+ObD677brr1O0v86z/qF51vasxuw8455xz
+zjnnnPNv9uz36FH9pzzKoxur8/GWn5rn7j6K4vT8ZZ7luytufd4ov249zjnn
+nHPOOef8Fz2qN5bP9he1n21XHX/2ObPo9nsqds1v1O/u9Yr62bUuq+Pc8r5y
+zjnnnHPOOec3eVbvz++s32q7Xb47xnFue97qPMz22+1ndbzV/LJ8Z+dpNXbt
+n+p7XH3O7jjd8TjnnHPOOeec82/wP78jX+13NrJxsry7z5Pl252PqLw6Xjey
+5119vizv7vxW17E6TjWicVf3UTQO55xzzjnnnHP+jZ79jtpn9aL6Ufvod9V3
+Rzbu6jxG/T7t2b6oPsdb+b49XnfddvVTXZ/Z9qsxuy8455xzzjnnnHNe9z+/
+d9XP6nXHy/qvthvHzcavPmfWPsqvO4/V8uo43XmojpflObu+nHPOOeecc845
+X/eoXjX+tM/6zfLJ8oj664672s8uf6rfzLP5firf6jhvzXtUf3V+upGNO/t+
+dMfv9re63pxzzjnnnHPO+Tf5n99R/Wq71fZRvVmfLc/yqpZXI2s3O251XneN
+0x2vO+7s72xczjnnnHPOOef8F3wsHz0rX42o/6xet3ysV+2vms/qPK/6W3ns
+7q/7XLv96ecYy6uexex7M/t79znS7Z9zzjnnnHPOOf9mH8vHv9161fZPeZRH
+Vj/qd/V5q/ll5dG42e9uvW4/q76aR9RPt5xzzjnnnHPOOf9k75ZHv6seRbd9
+1avjd/t/e9268/zU+lX91jyfzvep9ynqb5d339O33u/T5yPnnHPOOeecc/6k
+R/Wq7aK/1XbZOG95VN6dx+rzd6M7XrYuUf/Vft/yan5jve7v7r7gnHPOOeec
+c84/yZ8qz8aPyqvj7vYsz7Heqbyj8mo+ma+2r/a/a9yov93PU82j+/xZ+a3e
+Xf8sTj8P55xzzjnnnHN+0sfysV7m3XFvff4sZuen+vzfNt6qR/llvnt+btuv
+nHPOOeecc875m94tH+vd9jyrzx893+n8svrV9cnG7/bTna/Z9tV1qD5vVv7r
+Pvu7uv5R3PL8nHPOOeecc875kx6V//k9/n07v9nnGetlz7fqt+Xx1nhP5R39
+HuO2/cc555xzzjnnnD/hY/lYr/q7Ou5tz3+bj+Wr810dL6vf3R+zvto+itvW
+mf/dq+v5dB6cc84555xzzvkneFT+53fW363PM9arPt+s35bHW+PN7pvZ31l/
+nHPOOeecc875L3lUnv3md/rT/Vb3SXW/VfPP8uOf4dabc84555xzzjnv+y15
+7H6esTz6vcuz2D1eNi9Pj/fW82Rx2/7jnHPOOeecc87f9KjeWP+2vHnPu+sa
+Rbd9NG7Wb3e8W+bzdF6f6tX5zNo/lR/nnHPOOeecc36jj+XVervzWM07+73L
+s9g9XjYvT4/X3RfVvLN+OOecc84555zzb/KxPKq/Ws7/7tl8nsor8t3P9VTc
+Ml+zfnr8T/PV/Ta7zznnnHPOOeec82/ybr1b8u56lH/mWcz2G/3d1e9u7+Yf
+teOcc84555xzzn/Jo3pRu1vy/hY/Pf7u5zgVt83H6nrflvenejSft+THOeec
+c84555x/ko9/o/K384vyqOaZeRar462W7/ZuHlE7zjnnnHPOOeec/7eP5dlv
+/m/vzl+2Drf4bXHLvGTrWI3qPsr6v+U9OO1j+W353e6z34HuvuWcc84555xz
+/hke/a767vyyvLJ8Ms9itt/sOXf12x2v245zzjnnnHPO+Z0elWf9zPbL/9Or
+8/90Hp/mu/dtNY+xPOr/bb8t3n7ep/qr9tPN71c8m78oTuf9tFf3U/c9r35/
+d52fv76OnHPOOeecc367R+XZ76f9z++uZzHbb/R3V79ZvtHvrD7nnHPOOeec
+82d9/BvFWB79ruaR/c7ad/M4Pc9Pe/e5387vVq/OTza/1f3ffW+iPLv9ze6P
+U7Hr+Xb31x1n9dyqlkdxy3u2y2/J4y2PYvX7vVqvms/qfaDbD+ecc84555zz
+Mx793T1eFNF41Tyi/qr9rrZfnbfT688555xzzjnn/N/l1XrV8iyfbl7V9tn4
+3XFOr9dbfkseuz2r191/3feoO+4uj8bN/PaYfZ6n5/vt9cza7foOfIrPnvu3
++Vj+9Pv+9vmbxa57yliPc84555xzzvm7Hv0+lUeWXxRZ++hvt33m3XLOOeec
+c8455+/4+DdrH9XrRjTubV5tF8Xp9c28+1y3++r6re6P2z2L3f3tjt3vW7fd
+LefSqfMt6ydqd5t/yrkXlc9+v097FLvWI6v3KevOOeecc8455/zv/nS/1fGi
+/rJ+q/Uyj8bnnHPOOeecc36nj+XV312vxmz/p7z6e4xPW/fbvLqvuuu6K7+3
+PKs32191/3Tf725k482uY1Y+2y7L61M8iu650m3/tH/Ke39LHqc826fd/fbp
+3zvOOeecc8455//2bvtqP1n7sV6WR1Qva5/lwznnnHPOOef8M/zP78hn+4v6
+z8b7Nh/j9Lrfnl+1XvYcu/I47Vmsrufsfq62z/Lqnju7z5Esr+4+u+38eWqe
+xvqzccv79u3jfYrP3h+6/XLOOeecc875r3n0O2rfHScbb7bfWX+qfdQu+hvV
+y/p7yqN6s/OXPVe1nHPOOeecc85/1bPf3XbR36jet/sYp9f3tEf1uvW/zaPy
+bL9F9bLxu+1nx8vGfyrPbv7d9lm+t5w/u32Mb3lv3/6+3vLcUfns963aX7fe
+0+vVPZc455xzzjnn/C3/8zuqfyqvp3zXc67Wi9pFf7N21f667T/Nu/PNOeec
+c8455097td1T+VR/d/ONIuu/Ou4p75bv9tP7NfPZeX4rv7e8Wz47X2+9P1He
+WfnqebLrPOr+7rar5nnLOfb2vjj9PX06j1vOmbf2QVYvqh/FLfN56rvOOeec
+c84555mfHv8Wz+bnVFTz/DU/PT7nnHPOOef897xb/rRHeWQR9Z/93u2r5bt9
+jKf2z+l9nPkteTzt2f6I6s3un2o/T+3j1XWO+uvmder93nWO3pL3U88fxW3v
+7Wr7p869bNxqHrfug2o8nefu/XLL/uacc84555zf793fT+c1/o3Kd3u3PPNs
+3nZFddzqOp/al6fHOf38nHPOOeec8+/xrF70N6qX9TPrq/FWnrufd3b+M8/i
+6X31tt+Sx9PP031/btnv1fcgim756jiz+d42v9XzJfqd9XP6eTIfo3te3npO
+Pt3v057F0/u5O/7q+756Lxg9itu+Y5xzzjnnnPN7/c/vqj+dVzef2/xU3LKf
+Zv3pcWbzeTovzjnnnHPO+ff4+Lfbbrbfqkf9dyMbr5tndbzV56/62/O96rv6
+rfZ/+j2b9W69t/fdqo+x6xx4ah+O5d116Lb/FF/dt6fynvUxTr//T7XP+p19
+329Zz26+0e8xZvvP+s3G45xzzjnnnPNVr7YbyzPP+un2V/Xd/e3O66245bmr
+67Tq1Xa79vHs+JxzzjnnnHNe9bE8a5/V647X7T9r97bv6ndXXmOs7pOn9t9t
+70E2j1G92fflW32M6vsTtav2V+1ndX9mefyKf/p7UI23zpHIV7/n2e+nv2uZ
+R+Wr6zh7vmTl3ffgre/N7Hicc84555zz7/Fu+6yf2Xyy8bL6q767v1uiui63
+zdvs/ovqze6v2XW+5f3mnHPOOeecv+fj3yiy8rfGq7arjrNrvOz3Lp9tH5V3
+20f5ZL7a/u1+d+e3ez1+xXftw9n3bNarUX3eW9bjlM+ec5Gffp4o3jr/Vvd5
+9/2J+nvr+7VrvCx2r293fne9L2/tI84555xzzvn93m2f9VP1br/V/rp5rOY9
+O3+nojpvb81v9/fT65HNw1N5cM4555xzzj/Ps3rR36x+1v9sPlVfHf/pdcjG
+z/LJ+q22z9Y3m48sn26emd/y3ow+u4+67X/Nx9i976vjV/Mb62f9VJ/3lvX4
+dj+dxxhPf993j/PUvK62Xx1vjE/zXfP7VH6cc84555zz7/duVPup5vHnd9er
+v7P+snaz5d15Wp3Xan/V8XatU/S3G0/vX84555xzzjkf/c/vzKP+ns7vbc+e
+d5dn41e92747TpRn5rv25Wz7WY/qzc43n/Pqfh+ju39PPW+UV/e5u+fWLc//
+KR6Vv70vMl+tV63/1nenOj9RnPp+3OZRzJ4j1X6yepxzzjnnnPPv92q7sX7U
+7un+q+POtquOX52HrH2UX3eeu+XZc3Tz7P5+uv8xOOecc84557/r0e9qvWy8
+KG55/tP+1njddc36zerN5rer3qxXx83mk//dx+jut8hX26+O9+kexez5sDu/
+T/cxnl63aLzMu9/16nuR1V+dR/6O796Hp5+Hc84555xzft7H8vHvbL1o3Oj3
+U88T+a7nrc5D1u/ucbN5Xx2nm//suNX+onbVcs4555xzzvn3e1Sv2t+uPPic
+727/5/f4t1reHS/zar3VfqP61Xn4Nt/9O1uf255/9b34VI/q7fqeVMfvtvsW
+3/WeVGO23ew4s/m/9d14+zv0bb7rvOCcc84555x/j2e/Rx//Zu2iOPX8Wb3o
+OVfnZXZ+nhq3uw+64+zyKGb3YXU+u+0455xzzjnnn++rv/l//o7qz46zms/s
+OE/F7uccvbp/v92r+yGLqN/Zc+Nb/PT43+JjedW75d++b8eo1rstPvW+cXr8
+W333e88555xzzjn/PI9+j3+rEbXLfr/tT89bdbwoqnl2x1udl9XnXp2n6v6K
+2nX7zdpzzjnnnHPOP9+j8rfz+FQ/PX7Vs/xPRze/6Plu86je7H6q9tf12Xa/
+7qfH53d5Vq8bu9/vT4tbvp9Z+eq5/m2+63vHOeecc845/z6PyqPfWb1v9ez5
+V+crGn93Hk/1e4tn0W13y/7jnHPOOeec7/fxb9Qu+/2tHtWL2mXz+bZ/euya
+l13jrubBv8tPj8/5v/zT41PmM/v+Vtt/uv/680cxu5+y39V62bicc84555zf
+4GN599572/NkPvtcs57F7vGq6/L0c696VF7dx91yzjnnnHPOT3r33pv181T9
+T/VoXrP5/lYfy6v7rdr+lH963DafnN8wPv8tF/8Zt63H7LmRtY/qfZrvnudT
+Xv0ORO2y8brv/6/uJ84555xz/h1evbdm9W95nszH8ux5dnkWT+WxWn6LV6M7
+35xzzjnnnL/p0b13tt+oPBpvd36n5zPybD6ifk7nPeuz89GtV63/tIv/jNPr
+wX/DT4/Pz3gWt3xHvy2idcnKb/UxuudN1v4Wr87DLe/N6v56O7/qvtvd/2x/
+nHPOOeec/yuq98+n8nj7OaP7+27P4qk8VstPezW6837bvuScc84555/t0T27
+er/N7rPV/nd7t95t3l2PW/KOvJp/dZ/szu8p77b71HjrvZ59D6J6b+fLz/jp
+8fmcr35fTvlqu1uj+7zd8zjyW/Zj5t3yT/Hbn+fW/Mby1X0TjXfbc3POOeec
+89/0brvb77VjeXRf3+1ZPJXHavlbPsbqPpptxznnnHPO+U7v3mur7Xfdw3d7
+9Pttj8rfzmO3V9fjVH6Zd9t117Na/1Oius9vOQeyPLv1+F2++t7yv8eudbnt
+O5zFar7V/k9/F2bP67E86/+tvG7zsTyK0+/Dqfw+5XzY/Zzd+b7lOTjnnHPO
+Oa94dh8+nV8UUZ67/bY83hpvdl/ctm8455xzzjmf8ex31D76G9W73bPYPf9R
+Pk+Nt+pj+W35rT5PN2b3f7f90/H0/GR+2zlQXYfd41X3Ca/Vmx0n6mdX/6e/
+Z7P7O4tbvwtvj1Mdv7qfs/qzeT09btZvVD/7/ak+RnX+x/pv+er3cHa8bPyn
+8+j66vncfc5bnptzzjnnnPNKvW79Ux6VV+/vs57F7vGyeXl6vNn8qnlG9Tnn
+nHPOOb/JZ3/P+mr73d4t3+XdeX/ao3rd+p/iWb3Z/RP57L7M+s/qr74P1d/d
+vHb57edJNWbPpWr9W3z3+by7/yi653b3vVrtt1uvWv9T/anvVRaz51W136e/
+I9U8Z8frvse7+rvdo9+nfXe/tzxHVP+p71O1fpZXVm/W3xqHc84555z/tn/6
+fTR6jlnPYvd40d+nx8s8iuq8cc4555xzvsPfvvdm9bL+d/c3m++peVv1p/rd
+vf9uya/qUb3d+yvLZ3U/Rf2sniOreXTb7eovm99T58Puc2ZX/Syq+2T29+z+
+m91nq+9HNd4651f3wbd69z6y6tV2q+/7rd+X2fxXfdd7ets5v3ofyerv9qfe
+o6fz3eVRzO7LrJ+n7xPdPKr9cc4555xzXvGo/Jb7aFRv17391Hi7+636GN15
+uW3/cs4555zzz/Zd99un7stRzLbflefou58/e67d676739N57PZqebf/p/Zj
+NZ9u+ew5kI339vsw2252XZ9e59u8W171t9pH5avfz+r41fdtNa/V/L7NZ8t3
+f49375fue7rr/R/rVb2bV/b7LV99/2//XkS/n/bT7bN+n5rf3d/h7njdcXd/
+D2/7PnDOOeec8+/07n346fyy8Vf91Hi7+50dL4pb9iPnnHPOOf9uz+pl99rV
+e3MU1fv17Li72lfnZ/c8Pb3uuzx7nlM+llfXK+v/qX1UHW9232Tl3fXcdW5k
+eWXl3TxX+8vqReOf2ke3+2x59/tR9afO693vBZ/zLN7+LnV99/v19rk9+/3d
+9d6+7d3vxhinvyPdPFd9tv3u/Tn+7q5zt33m3XyzePq9r9a77fvAOeecc875
+v8p395v1P+unxtvVb9R/tZxzzjnnnPMTnt1vs9h9P67mE7Xr9tv1KI9u+2z+
+Z+ch89X2b/e7a19lMbset3m1XRar+3P3fI7lUby1j54a55Z99K0elVffk9V2
+/G6/ZT13tdv93Xj7PK/Wq67jt/ju8+rp8zaLp/bH7ve5Ov9Pre9sv1nsnpfZ
+8yWrV41bviecc8455/y7vXsPP5VHNb9onNnxVttXPYtb9gvnnHPOOf8NH8uz
+9t160fjV+3LVu/fw7nx0x6s+b+bdccaYff5T7Z/a15HvXt/bPKsXxer43Xa7
+x+vGU/trt6+eD/wOH4Pf6Vm89Z7Pjv/U+br7PK/2E7Wr5jk7zm3nx26fXZen
+8htj1/u0Wq86T9V2p+f5rflf9eo6ReE7zDnnnHPOb/Snx8vuwav37ax9VN5t
+n3k1blt/zjnnnHP+W969x3bv67c8z6k8uh7Vy8bN1vGt+Tu93tm8/ZqP8fT8
+VfvdNd6ufdVtVz03n34fxvJb9h2v+Rj8rJ8ef/Y73z23Zs/drPzp70Pks/3P
+1u/m962+e3+srkPmb9WL2u3eT1len3rOZb76nX06P84555xz/oxH5bfl+dZ9
+d/d43ft0tX30t9u+Ou5Y/i3efS8455xzzvldnt17s6i2u927z9sdL+tvNY8s
+r6z/2XV8e59mefyqd9/z2XMhqz/rT/eX+a79f8t5Nvot+5T/3cfgd/kt38Ms
+unnOng9Zebf/bn+nfHZ+o/qnn+e0R+Xd9mO9qmf1Zt/71eetxi3n4y2+ez5P
+Pw/nnHPO+bf46j19rF+9f1fvj91xovpv++5+u88d9Zf1213Hapxen+7z7Npn
+UazO8+n55Jxzzjn/Fu/ep7vlfK5etk7ZPXr1Xl2tV91Pu5731z2K7nrf8jzV
+/bpr3mb38er7PptH17N62XzzO3wMfpc/9T1c7bfb3+x5nOU1u99vew+fep9X
+y2fX6bZ5mfXZ738Ws+9Ztd/V96ub1+59+S1uXjjnnHPOz/rqPf6W56h69nxv
+zXPVq+uVRff5Z/fFU+v11nhv+ew6PJ0X55xzzvmvePW+fSq/W3ws785Xd9zV
+et14+nmycb7Fs3mcfR+zuOX5d/tqf9Xf3fGi+ln7rN0u7+6zW9ab//03/0w/
+Nf7s+TN7/mb1Z8/76vi852NU61Xjluesfu9uiU/9Dpwef9Zn5/t03pxzzjnn
+n+Ld+/fpfG/33f0+1T5ql+2L6n65dT6/1bP1OpUX55xzzvmne1bv2+5bp8df
+XZe3Y9d9/WnP8q1GNu7s+8Jr3p3nt86z2X321rlxy/rxPT4Gv8tXv0dvnwuZ
+Z/2tjtftp9ov/26Pfmcxu/9Px6nzIqpXna/T59wu/5XnjDxb99n36fRzcc45
+5/x5r94HuvfxW57vU7zbfvc4UbvZ9c/yiPyW9fgUj9Ylq1d97znnnHP+fZ7d
+B7r1nsrzNu/Ox6d7976Y3Uuf8tui+zxP9ct/w2fbjzH7fmX9z+bxlj89z/wd
+H4Pf6Vmcev93t6/GbD6n3zf+3f5pET3PWL57vGz8LK+s30/xT/8+R+Xjc1Wf
+c3bdd+XNOeec8/s8Kq/eN6qx+zlm89l9H8ra7fbVeruiOi+7n2vWZ8ffVb9a
+/tbzRr7rOTnnnHN+zqN7WnZ/m60/22/0O2t/i88+1+3eXfdqu9VY3Ue3Rnc+
+OZ/x6vu5+h5Vx13N52kfy0+vH+/5GPwzvHpuRPHUe75rnCxmz03+G57VG+Pt
+/Xs6nl6HqLxar9p/FG+t99Pn+y15vJ1fFN3v4O68OOecc/6ed+8fs/eEbl5Z
+ZON+uo/RXZfTseveeMt7stur5bPjVMddff+7eXHOOef8vM/eE6r1dnsWp+fz
+tjwyXy3v7q/qeq+O+6mx633J+s9+89/22fM3iqfOj9n+Zvut9sPv9DH4d/hY
+3j1Xqv11v7/V/bh6Hu8+5/le78bt71e33S3x9P3hNo9+3+LV8/Mpj/J5O4+q
+V+et2n5XXpxzzjnf952PYvV+ODv+bffb232MrPytcP/r+Wz71XmO6q3uN845
+55w/7917QfW7nt0HTt97376ffOp9aHYeT9+Hd7e7LWbX7fR7143bnuPbvNuu
+2s8Y1XPk6XO829/u+eOf5WPwOz2q1z3PovbVfrM8uvl1z7ds/Nnz8Kn5+zaf
+jeq+Ov1+PdVfdb/vjtn3rtpfVH56n86eW1n9p/3t/bm737d99rx/Oi/OOeec
+7//Or7bv3hOidrP9vn3/vc1vj1vm6TYfy6NYfS+jPFb32S3nGeecc87n7wXj
+79l7wun7VBaz8zl7j3t6XWf3wWnfXV5dv6fjqeed3Z+nPfrdjdPPcYvvahdF
+9317el92v1fVet15uG0f8JqPwT/Tq9+Pbr1T5/dYr+pR+ez39env/Knf3fN+
+jO537rQ/df51y3e9p933qXtv6OaTjfepHv1+y3f3O7tvdvnuc7g6zuo6r47b
+7Ydzzjnnse9qX70Hde8Pt91nT+f7afH0/L81zq59sSv/rP2u/jjnnHO+7tV7
+XfYd7/bfHTerl7VbzWvX/amaX9Wf6nd1H3yKR1Hd51m72ftutb+sXTeq7/Ws
+R8/z1Pu4eg7tmo/Z8+Pp+k/NSxS75/ep51ydl9u/U/xdH4P/pnfLV/dfNt5q
+u6xeNWbvCbvGy8atto/Kb9uHu/ft2+N0v/tvvae785l9b7vjn/Jquyie2o+n
+28+Ot/u+Ut1n3X1Y/Z3lsdof55xzzt/zajx1n9zV7q1711Pzezp2zdNqf0+t
+32x/UT+74rbzgHPOOf9F7973snvB7H1kd3+r/vS9bYxd67i736h8133y7bzH
+37PjVPdJdbxs3Gz8bJy39uVsu+58R+W3+hi71zHqvxuz5033PF/dP93y3e2e
+Xl/+3T4G/03vtj+d56522fm4u/+sn13ft2z8bh6nfSx/+zyrjt/9vs9+z6u/
+u+NH9Xb5rvfh1Hczym/1/Jg9D95un/W76/yrtpt9X6vjVfvJwv2Lc845j/3p
+72T3XjFbP8tr13109d7Vvf90Y7bdbTF7z5y9x57eH919kdVbrb/LbznnOOec
+85u9en/rfner95Fq7L5X7L4vdb2bb+ZP74Pd4836WF5dl6z/Xeu6ut7d/LL2
+u/Jc3S+rXn0vu+1O+1hejdn+uud1dfxuf7vO79vW65Z9xe/2MTj/RB/LZ78L
+3e9fNn61f95rN3ueVdd593d/tf1q3qvjz+b39nfsVB5RPtXy7v493b7ab9Tf
+7vnuPudT+y/z3f1xzjnnn+RP30u694bZ+8XsPWF3v7vWabZd975TvS8+HbPz
+kJW/df+cbVf13e//7HuR1d+d12p/nHPO+c3e/f5Xv+OzXm3XvQfsep5uPrPz
+GY0z60+tz6n9W83nNh/Lo+jO/1vveTe/zLvrG3l3v9+2L27zarssuv13981t
+88b5Dh+Dc85PeRa3jLP7npOVd+8tWXm1n9u+V5nfksfo0e+uz7Zf3Xe76+1+
+v7rjZONm9Xbls3t/cM455zf7ru/tU/eJLI9ueTWfrN+n12lXu+p9J/Lu/a3a
+rrp/ntoPs/tx1/5dvYdG/c6O282vu3+qv6O45bzknHPOn/Dqd7f73Zz9bs/e
+E6J+q+Nmeeyet9X72Ox9qOqz83zr/n3bo3rV9ymr/9T+2v1+Vdvt6q87r5xz
+fouPwTnnT3sU2Tn1Vl5Zu+55m5XP9lsdL/s9m+9sfrf5GG+Nt7oPu79n+8vy
+q+7n3feW0+dad953rTfnnHP+CT6W7/6u7vZo3F15Vvtf9W677j1ldV5n21fz
+2j1ud56r+e/O96n3YPX93dWu6t3xxvIobjtfOeec845n39Hsd/W+c/p5do3X
+fe6ov6fuKav3mafXKRs/y+dWn61X7Wd2n1Tf86pH+VbLd7dbfW+jdrftL875
+7/gYnHP+tkf1nh5ntr/ueZuVz/b71PegW2+2n0/1MZ7uN/Pd7091f5563k/3
+6jyeyo9zzjlf8afad9vN3ks+3Xe1W52/3fMfxa15rq5PN69P8V3tsojmsTte
+Ni7nnHN+o1e/f6fyO+Vv9Vu9h1Rj9jl2PW83r0/3rN6ufp7y1f7G8ihm99fT
+73027un9xTnnY3DO+dOexVPjR+dht7/ueZuVz/Z7i8+uy+m8n/Zd/Y4x+17t
+il3v0a969T72dB6cc875TR6VV++b3e/tbc//9P2i+/zV+163fbff2XrdfbPr
+fpaVV/OK6nfn9TYfo9vf7O9sXM455/wbfPX7+3R+n+bVe+jb8db63XaP3O1j
+dN+f255nV39jeRS736On3++x/PQ6cc5/18fgnPOnfSx/63zK8pntb7X+6NV5
+Of39eMrH2L0fbnnO7rrPztNszI779Pv79n5526P4lntc99zM2t3yXJxzzv/z
+d/V7Xf0uVPvN8vtW734fV++f3X6q/UbtqrF7X+2+x8zWm12vT/Eont5X3Tw4
+55yf9dn7Thann2vWu/elW/Lu+ul1XJ332Zi9P2btb/Ms76pn7/3p59ztu9Z9
+1+/u+Fm7Ve/OH+ecv+VjcM750z4bt+RVPWez8u65fNv341s9qjf7Hd2V3y3x
+9L0iKv/We8yu8+OUV/fp6jxE9avjVPPgnHO+x3e323Uv+xYfy2fvk7v6f+qe
+O1tv9X61+ly7894935/mUezaT7vPMc455zWfvS/Mfi+q/dz+XfjUvHf57n01
+ew+5JXY/5+r8rubB53yMbL2yfqvl3Xj6nKiOf9v6cc5/x8fgnPO3fTynTo0/
+W68aq+Py3/Tb4vS9pHpeZP3c7tlznc4v8mxdu8/VXf/Z+Ts9b5xz/qkela+e
+x6vfD/6fv1fvF9X+Z706flR/dpxdeUf9R7+zfHbl9+mexdP3QecO55zv9eo5
+2/1uZuWz/d0yb6PP3qdu9+o6dNfp1D3l7bjtHsfPePfcm43d466eh9l4WZ6c
+c/6Wj8E550/7WJ6dW9V+Mj/VX1T/tu8Bn/NqZPtl9j16O3bPU/e9yPqvnh+7
+zoFTLo9/e3d9T+fLOeff4tV7S/W8rtb/Ve9+z7r3qLc9yjuL2ed+y99ax1/x
+sfyp+lE7zjnnc/6p37sov9N+Sx6Zj+Xdeqv1q+VRv7fE0/eot8bnZ7y676Py
+2femus+q34NqXrPzwTnnT/sYnHN+yrvlq+db1s/seNVzOCvf3Y7//fcYt+7/
+rN3bsfocp9a/mme3/m6vvv9P+dvjrfrqOs5+N7L6nHPO/+3O2T1eve/Mzv9p
+z+J0fpl37ylZP6ef51bvlnPOOf+3d7/DmXe/h7d/B6vx9rqc2jfVfE7nt7vd
+qajuk9vei9ve40/z7PfqOmXtZ/vvnufV/KrjROWcc/62j8E557f46rkWjVMd
+rzpu1m913G5/s+f7p32HonXpts/qPe2reY3l1f24Gt1xnnqu0x79PuWf1u/s
+uFG76jq9tZ7dcTnn/Nt9LK/e37rf6dn8vt1Xv5On71uZV+udfp7MPzXv0x6V
+d9uP9brlnHP+Ld79Xu06d1fvK6vjPv2divLd5bfsm9N5RLF7XaLyrH433nqu
+aB1P3euq9arnQbXf097NM6ofRXe/dt/v7jndzXPWT68r55yvnuOcc/4pHtVb
+PTdX88nadfPo1lvNJ2rXzXP2963+dH/V9VjdR6fHjfrP+jvt0e+nfPc+rPb/
+1D5+aj2yPHf3n7XP8sjqcc75p/hT7Xf1/y0+lp++D536vt+S325fLf92zyKa
+r9n+b3v/Oed81bu/o3j6XP/U7+xYHkXWbrb/3X5LHllU53v2eWfvDafGrZbv
+zuuUj7G73ezvzKvlWf1svqL2T517s/ndtq8453y3j8E559/ms+ffrnxmx63m
+0+2nGtV22XNleXyKn+qvOn/de0CWx+z+qeadjdNtd/v9aozZfbT7nFnNayxf
+na/d+3X3+9Ud7+nvFOec3+az53AU3fP6V7za7vR9aNWzeOo7/pbvurf8qkf1
+Zt+z295zzjlf9eh8rN4vdn/Hd32vs353f5dPz8db+2NXv7u9Wz67jrvyqI7b
+zW91P+1qt/u9OO3R78zfqtd9T6vjnT7fsjxu2yecc777u8M55/xdj6J6jnfH
+6X4nsn6/1Xf1N7tuY7vq+syub5TH7nGeutd07zen7l1Zfll59Rzp7s9u+6yf
+XfVW53V1/t9+3iyfrD7nnN/mUb3Z83J3ft/ib31vT3sWp/Pb7bPr/uselVf3
+URSn33POOc88O+d23xuq43XLq/lFeVW9237XdzlqX/Vd7avP9ZRX291yn4ii
+O8+7nzfKo/s7itn1PrVut3m1XRSr51A3D8455+/4GJxzzvkv+Fj+1Hey2q77
+Hd/dPopd7U7fd7rz+JaP5VFU2+2ul7XP+p1dl9l9PbvOY3nm3XMlq18d57Zz
+9FO82271N+e/7N3vQ9b/7vy+xaN6u9bpFs9i9rt/i3/rup3eF2P7qD/nDud9
+nz23quPNtvt1r55ru8tn90F3H3Xzm/3eVOvNjhPlm/mu+Zgdf9V3zfdTHv0e
+o/qcs/t9tX0Ub5/D3fsX55xz/ks+Buecc/7NHn0Xnxq/2q77Ha+2j8bv1o+i
+O/5t96DMTz1PNF7Vs3rV8ar3yO58Pj1vb73fu86jrN1YXm33bb46P7vWZfZ9
+iOpz/k3+dL+3POdbPpbv+k7ccs/K8uvGbc9TvRdVo9vft3pUvrv/sR7n3+TV
+82f1e7zre/Tr7+nu+Tn9PFF099cu795Pnt631Xqn1nXXe32rj3Hq3tLtN4q3
+2lX3f3ceOOec82/yMTjnnPNv9qe+h6v9db/jq+VPexS33YN2PWd1X+ye16f3
+fTeP1f2cxS3nyNNeXa+n8zjt1fKxXrYPu/1U85ld36c9ex+rvznf4VH5rvvQ
+t3m3/Jb70W7P4nR+p55/9r35dI/KZ79rWTnnM57tzyhO5bmr/a73bHW+uuPd
+7tV9tHt9P81391ud/6jeU+v11Hx1x73tfjB7H+iu7635RbF7vzz1Xt22Xzjn
+nPMnfAzOOef8mzyr99b4Wbvq9zr7zt92z6h6FN16tzxPdz13z193H3XbZfsu
+65fPeXUdn85jt0fl1X2227vndfW5Vtczq7er/dvzzX/Lq+VR/due5/R3YLWf
+2z2L7rl9m+967lue5y0fy6vxLfcmfoefOo+r0R0n+t3trzreLq/+jvK7zWf3
+1+m8v8Vn681+33e9j5lH9W75rlff8yhuPZ9mfXa/RTG7X956z26Zd8455/wN
+H4Nzzjn/Js/iqfGj7+9qu9n6t90/Zu8r1fbdcZ7Ke9Wr+d0S3X072z7zt8Y5
+7dX35VR+s376e1E9R6L6Wcyef7O+a9ysn6jfW/YVP+ur59mvehRPnzu3eRan
+83vqvleN257ntI+xOu/8u7y6D6r97Dq33j4vq+XZ+Kvlu32M0/tt1mfPuW/z
+p8eZzeetmL0PjL9v8SjPyKvvwW3PuXp+v/07irff79vWg3POOX/Cx+Ccc86/
+2aPv4lPjZP1n+XS/36vzwHu/s3Wu1l/Nu5vP7nj7npmN+/T7fZtX9/FpH8tv
+y2/3Ouw616P+qx71231/3lrvW9aTv+Pd7/AteZ/y2XvHbfer7r2rGrc9T/c7
+sbq+p5/nLY/Ku/PHf8O735en9mc0/uw41XOgOk5W77ZzYHVdoji9b2e/j5/q
+q9+9qHzWo3Gfju587X7Oaj5v5fcrPntedc/nrF0Uu/Kq1ju9HpxzzvkbPgbn
+nHP+zT5+F6vfx6fz6kY1/9P3DP6O3xZvPW/3dxa3nFOrfvoc657Hb+cxm9dY
+/tT+2v3+zL4Xs/tp93d19zryu3x1n2XtP93H8u58nb6frHoW1fW/5Xm669L9
+Ppx+nqd89ncUt73n/O/ePSdWz9fqOFm7LJ56b7P+Z/OLyrP21fze8izPt333
+fv4Uj6I7H6fvH2/H6e8wf9ef2o9vnWPV8/ep7yHnnHN+s4/BOeec/4Kvlme+
++v2d7T+qVx3n9L3kWz36HcXsfr4lqvuz2m5132fj73pvb/HZffjU+XrLOT+7
+v2bf4yyPWzzKM/LV9y+qv+u9P73/+TP+q+s6lq9+Pz/Vszid31vPP/v9+lQf
+Y/f3jN/hs/s46nf2POmOu+s8O/196UY2z936p8+xsTyKt/b/0+M95avfsazf
+rP1qv7fG6rmY9Ts7Dp/z1XZjvazfXd/DWc/yiso555zzb/YxOOec81/wqLz6
+He2O3/1OV/vvjlMd97b7ytuexW37ttrurTj13pzaF9n79rZ33+/dHuWzu99s
+vF37IBs/Grfb365zftd5FpVX13VX+ez8ZPX4XT6Wd/fPbc/z1rlX7feW72h1
+/WbvM7c9z+7vTVR+Ou9T8/LUPYK/49117NbbtX9Wz6vd+7Gbx+q5s2uczGfH
+WT1nsvGq+XT99nPq9vxW85q9Z7wVb+3/2fcly6ta/m3enYdd34/VcXd9r2/d
+t5xzzvlNPgbnnHPO45j9zna/06t5VdtleYxe7S8av3ofme0ny/M2P9VuVzy1
+n7P+bvNu+Wn/tH6z8XZ5t313H6yeh7fsn6d8dn12zevp5+d/97F89lz+Vb/t
+e7l6PkdxOr/dfksep73aLopb3sNf8er7mrXvfg/sg1p5dd6q79uuereek2M8
+/Z1+a7xqHtV9cotXY/U9eDp2ve+j3/Z9754fWbssVt/7XedhNb9q+13nende
+P3Vfcc455zf4GJxzzjmf96jeav/ddln7rF11nOq9o9t/9fct6x757P2rOo9j
+veo+2pXnbP/VfrP+u/fet30sj+KtfflWHrvbR/Vn12m1/ew+jPLI8svilvPu
+Ke+eT93v0FvfVz7n3Xbd7+Kn+lg++x7d5rvj9POsfp+idrfl/dbzj/HWveZX
+fdc+jGJ1/X71+1ud5+787cqj+56vepTn6v6M+u36rfeRsfy2/Gb3YXd9q+fa
+U/nNvs+r52w1z1vuCd3y6HcUT91DovrdPGfnZfd7cct+4Jxzzj/Zx+Ccc875
+5/lb3/9snF+5h4zlTz1fNE51nrvtq3ll/VXzysbp9hP1N7s/n/Junlm7qnfz
+6frT/c6eL0+t5+738al1/1V/+vv5rd+3W3z1u/h0fqe9Wh7Vu+27OPv81fa3
+PWf1uaJ2t+T99r7w3XzXV7+Db33H+Vy9XeM9/Z53/alzedd7tKvfrF43n1Pe
+rbf6Xaj2082vug92vY+r5bPn/+n7wO7zJvOsv9l+V+89t80n55xzzus+Buec
+c845r9XbPU7Wrnqvy+6D1ftiNb/qONl4q97N/6k8Vj2Lp/b92+2jek/NV3ff
+z743s+8pP+O71rF73lXz43//vWtdPtWjervm8TbP4nR+q/eWb1233d/dKG57
+P2/1XeWz59Xp5+d//7vab1R+yzk/2z4af9afWt/uvN56b9m9fk+td9TP7HtX
+vSd083x7P992r+Ccc845v9XH4Jxzzjnn/+m7+tuVRzffrH3WbzW/an+n77+z
+83k67+j3Lq+O/1Re3edfXffZ8m6+UZw+13jN3zrfZvP7Nd/9HfpUr7Y7/d1a
+9Sw+5b4ReXd/35L3bo/Kq/vitvfzVn/qffRd+0x/+l4SjbPrHOm2X93vs+9X
+tf3seLfvp27909+hMXatw1N5PvW+Rv70d4Zzzjnn/Nt9DM4555xzvre/6D4W
+tcvaZ+N226+O91Set/nsvD2VXzV27d9d9bL23XmOfLU8yve2c4rf4bvf59PP
+c7tH8dZ5dZvf8p18yrM4nd/b95DTecz6GG+/97/is/eZ7nvIf8u773n1/V/d
+j0+dn1G+me+a/9X2T6/3Ld+Vp79P1efOfr+VZzWvrL+u37aenHPOOee3+hic
+c84557/mWb3d48z2F93ronrV9qv3yCyvapy+Fz/lY7w13lP7sFqvm9/sftu1
+37P8OJ/x3e/p6ee53cfyXefmbR7F6nf7Vs/idH6zvnt9b/dquyhuew9v8dnz
+cHcenK+0H8t3f8+6/UV5detlPpafvj9k+Xyad2PXfot813c0ym/Wd/V32/pz
+zjnnnN/mY3DOOeec/5pn9d4aPxs3utdl5aPfeh996nk/zcd4a767Pvs+Vfvr
+7udqPrP5Rd7dp91zgH+3r56DT+f3ad4tf/t7//Z9Jqp/23evux5jnM7v9u/+
+res2hnPu7969Z2T9n34e/q5336vu71mfbV89d6L3Z9f59PT7XPUobvsevPX9
+HOufzi9b96eft1p/l5+eX84555zz230MzjnnnPNf9bfH797TVvs7fe/c7W/P
+222+u98squ2r/VfbZc+b5beax9PenYe38uJnPFvvKE7nfat3z61b8p71KHbN
+1ynP4nR+q9+vMW7Je9aj8u7z87/7ajn/bP+079nqc+1qXz2Hdt8jTt1vbvPs
+d/f7f/p5Vu8D1XbZ7+68ZfVmvVvOOeecc/6rPgbnnHPO+a/5WP7Wvak6TjdO
+3y9v8131sjj9nLvKu3F6X3fzmfXVdlG9rL/d+fDP8O57Wi3fld+neneePtVn
+5+FWz+J0fru/u7fk/ZRHv3/NV8/9bv/8O3z2/M/az+az2m72nOjG7Py8NV+n
+z+Xuc+/6Pq/m962+GtV7xi7fdQ/inHPOOf92H4NzzjnnnPdivG9l/VXzmO3v
+9P3y130sj35HcTrvbr1Tkc1v9vxZf2/5bKzuL/6Z/tR50+3/033X+f1pvnpu
+nvIsTueX+ey63O5jdO8Np9+Ht3x1Prv988/y1f2QxW3nxu77ydvRzeP2+f2V
+79Wn+xjV70y3XVY/q3fLfHHOOeec3+pjcM4555z/qmf3pe69qls+22/UfrZe
+NS/+GT7GU/2eim5et61L99zZff5k9Vafh5/11ffj2z2r92n7fSyvni/Vdqc8
+i9P5ze6b2fP+Fq+WR3Hb+/P2eRPVvy3vX/fu76ze7P7onutZuyyvt86Pbr3T
+sXs+blsXvsdn39coZt+f6n57qt9b1oNzzjnn/BYfg3POOeec/9ur7Xbd22bz
+Wh0nGu/0/ZW/498Sp+cx8+o50o3VcaPf1fGqcdv5/ite/U6cyu8tXy3/NK+u
+822exen8dp/zn+JZ/Mp7Nf7+9XP1UzyL2fNndv1X71vffs5/SpyeR37Gx5g9
+j6rlu+4X3e/SbfPOOeecc/5pPgbnnHPOOZ/zarvofrar/6xdNb9qefU3/7tX
+I5vn3f4p8fb6dN/f2f5u8yjvbruofbWcr/nq+f50fqd91z6+zaN6t5wvs/vv
+lvxmn+d0Hk+f41m9T/PuPu3eF/gzPlve/X2rZxHt7+53s5rP7vxvibfP4Wr5
+7L3v1/2pdmN5FKvfo9Xz67b14Jxzzjn/Fh+Dc84555zf6d121XvgbH7VfnfX
+7z5P9z4cxW37YXb/RLG7v7dj13sz+ux+5P/22XpjPLXuv+bROmRxOu+3vLpv
+T+WXeRS3nQuz3+nT+XX3x+k8ZvP+tH3/1nvlO/SMd9tV9/Vtz/np/nZ/t8Xq
+891yzq9+z6r9VNt38+re27r1o3pVn53Hbn+cc8455/xuH4NzzjnnnH+nR/fC
+an9Zv6t57fo9m8e3+Gq7bn9vxe79/NS+ifLi//Yssvkd61X74//2bB2rv7/F
+b8ljdT2zdrecC911uCXv1fLbvBqn9/dur353TuX36b56HliPZ/xUf6vn6dvx
+1Dl52/l/+vsye395+tyKYnY/37YunHPOOef8GR+Dc84555zzf5VH98usv9ue
+6zbP4qn1jLy6zrsjGzfLr9o+G393u26+/N++2l+1/6jdr/jq/D6d39tebXdr
+3lHcfk5lcTq/1ffhdN5RXlWfbXfau+v2bc+/299+X7v58Xfbra7nbPun49R8
+zvZ3y/flNh+j+12Y3aecc8455/y3fQzOOeecc875umf13hp/tV3WPqqXtZ/N
+Y1c+q+sxWx7lUZ0/vuZZvax+Vu/XfPZ9eyu/t727r27x2ffl7fc2itP5db9P
+t3v0+1N91z5/Kr9P99n34HTev+rdc7b6Hr3Vb9TP7Di788nyqPpsu9V9wDnn
+nHPOOX/Ox+Ccc84555zXPYu3xq+2+/M7+pu1y/qJyqOolmf9VfOo5pn9zjyL
+7nPzZ3y1vyhuO6duPR/fyuPtc3h2/73tUb1b3s9vyft0HrPnXhS37WPn0rM+
+lu/ef3yPZ7G73ew+2LV/svyq43fznO23+jvz2Xan33vOOeecc875fwfnnHPO
+Oec897fv16v9jX+j8qx9tTxrN9brlmfP1c2vmn/3uWbn4el8+ZpHv8fIyrN6
+3+K73oPb/JY8Zj2KW9+3LN9b8r49v6e+27f4rnP627y6vlE/WXv+jo/ls9/f
+bH9U++2O99a5U82rml/2ezW/Vd/dX3V9b/lOcc4555xz/gk+Buecc84557z+
++7Zxon6i8tl+s/az7TKP+u+O32236t18ZvOu9sf3elQ+u/+z8m/x1fPl6fxW
+/ZY8Vs+TyN9637K45Ty/5XuTeTVO78vMu/vllrzf8rF89v7wVH787+Xde0bU
+f3cdT59HT9+XZuc1G2dXf7vuOafO4eo5wznnnHPO+S/7GJxzzjnnnP+yZ/Xe
+Gn+2v/FvVB71123XHS8aZ1d5lleW361e/Z3F6j7hPa+WR/W75d/m3XPklryj
+uC2/7vydPv+iuC2/6Jy97VzK4tZ9Oftd/FafLe+er3zNq+VR/VvP593n0eq8
+zo6/el5X+4naVctP99d9fs4555xzzvl//+acc84555zHvqu/rP/ZccbyaNys
+37fbRbHr+bvjdJ/nds/2X3V/3vI83+5ZPH0+3e6r+/cWvyWP1f331ntSzev0
++/pp58nY/lbv7o9v9dVy/ox312Nsd8t58dS53T3XV/f37Dm5+jyz43Vj9dyc
+7S/q97Z9xznnnHPO+c0+Buecc84559/k1fKnxt+db3S/z8p3tav22+0nalct
+j/qv5hX1860+u25j3PI83+7VdlH9KG47r2f9054zKl9d1935ZfXfeh+qeZ16
+L2/NI/qd1X/bq+fet3m13ex3gu/13fv4tnvGU+f26vxE9XblVW23+7xe3W9V
+n2331n3i9D7lnHPOOef8TR+Dc84555zzX/K3x8/GrfYX9VPtP+t3dbzZ/Lpe
+LY/qP/U83+rd8u44tzznp/gYq+dLVn6rnzrPd/tteUT7cPz9tGdx+v07fY5V
+47b9vnpefYqP5bPfz6fy+1Yfy6v3j9l1ue1+cKtXY/e5OttuNY8odn2XIz91
+z3hq3jnnnHPOOf8GH4NzzjnnnPNv8izevi/vGifLu9q+67Ptqp7lO/tcUf2s
+XrV/Xiuvxu79/2selc+ek2N/n+Zvn/OzXo3TeVS/a099F6J83nqfTucxG6f3
+e3XfnMpv1aN6s+/L7vw+3VfbRfVv+35/qq+u2+w5uKvf2ec89Z3p+i3nfLcd
+55xzzjnn3+RjcM4555xz/gs+lkf35t3jZ/VWn6M6fua7+zvtUXTX/Zbn+VTv
+thuj+v6cfs5bfSyv/s7itvN9dp/ckl8Wt+Xx9D6+LY/T728Wp/dv9Xv6qR5F
+9Vy57Xlu89X+dt9DeM27943VdTzlu74T0e/Ms/6r5bPjr87D6fXjnHPOOef8
+pI/BOeecc875L/p4b+62iyLrp3tfz8bJ+umO2+3vdt9V7+28f9Wz+c9itn/e
++33LOV712X11Ku9b84jqP7X/svGfyuPt8Xafe2/5avkt3j33bsn7U3z1Pa/2
+z5/1KLr3iU/1sTyqvzoP1eiOW22X1e/mc8v6cc4555xzfsLH4Jxzzjnn/Bc9
+ujd3y6PYlXc1uvlUn7s6b9/q3fJqO/6sW6e9HpVn9cd2t/steWTn9eo+r3oU
+T++/6vhP7/e3x3trXb/9fYm8W++WvG/32ff7tu/ct/sYu86j255zt6+eI1F0
+v7vV9rPn+O79cMv6cc4555xzftLH4Jxzzjnn/Je92q567476q/ZTzbM7fubZ
+OPzfHpVnv/mzPpavRnXdf8W75Z/qt+Xx1nxn42f5zHp1/Kf39dvjVfN422/J
+Y9V3rce3erW8Gu5BZzyqd/qc+xZ/u9/VPLq/q9/lap6cc84555z/so/BOeec
+c875L3u3/Kn7epZP1m4sfypP/m/PorqO1Xb8rGfx6+9l9fcYt3wnsvU7nV9U
+/tZ4Wf3VfZON89R39+nz4pZ9tPv9vWX/j7/fei9u82p5VO/094P/z1+jep51
+251+zm/32e9Stb9deY4+mw/nnHPOOef8v4NzzjnnnHNej9V7eXXc2fIsj9X8
++ZpHv7vtn8qP17y7zt7Lv8dt5371PVv9buz20+NF9VfPyWycp/bjW/s/y+Mp
+Xy2/3W/J4y0fy7vfm6j/274f3+5jzNZ/Kj9e82y9dr3f3e/O7d9HzjnnnHPO
+v9HH4JxzzjnnnL/vu9qNf7N61fb8GY/qZes9Rnecajt+xrP41fe1Gree79+a
+R7X/1XMyG2f3/vqVfXtLHp+a31vPPzs/t53jv+pRvdXvfzZOtR1f86e+P93y
+3XlxzjnnnHPO9/kYnHPOOeec8/d9V7vo3p/1u7t//oxH9arrODtOtR1/xrvn
+xi15v+XVuPXc//Txqv2vnnvZOLv30bftz7fH+7b8Tj3/7L2AP+tRvdVzMhun
+mh9/x6PfWftu/1G7rL/b5otzzjnnnPNf9jE455xzzjnn7/tqu6y/7N8D2e+s
+Hv8OH2OsX63H3/UxZt/nqPyW51ydlyhOfw92fxdm5+HpfqN+dvUbjfPU93N3
+3qv75/Q+rvotebz1Xu1+/287Z3/Nx3Av+i1/6r3txux3gXPOOeecc37Ox+Cc
+c84555y/71lk7Vbv/WP7rJz/pq/ur1N58//5a8yWf7pX463vQXUdnvLZer8a
+t+2r6v3gbb8lj7ff46zdLefgr3pUr3vPeTtvfrdX99sYq/suKz89L5xzzjnn
+nPP//s0555xzzjm/z8fy6F6flWe/V9t1++Xf5d39M0a3/25+/B2/JY9ZX423
+vgdP9yuejdv3w+o+eTqPt/22c4r/PbrnevWeMZsf/2yPyqv1o5gd96l2nHPO
+Oeec8/d8DM4555xzzvk9Xi3f1c+f8vFv1H72N/9Nj+pV34tqP9X3JeqHz/m3
+ngersft7IMTf4u19dtt9afaeVD3H+JxH8fR3/1u+P/wdH8uj+rP7era/2X44
+55xzzjnn9/kYnHPOOeec8+/zbrusn2776m/OKx7V2/VeZP112/F/exS35NfN
+uxq7z3fxG/H2vrn1PlOtd8t58Wle/R1F9n1eHZ/zGR/Lq/Vn62Xtb5kXzjnn
+nHPO+fM+Buecc8455/x3PCr/8zvyLMb2WV7VetX8OK94VK/7vmT1qvuf13yM
+2/MT4hPi1vtJVv+29/9TvBvZd7L7neV8xbv7sHqPqOaRRTVPzjnnnHPO+e/4
+GJxzzjnnnPPf8ag8+t3tp1tezauab7Ud50/4GN161ffl9HPe4tW4PT8hnozT
+941q3HKunPYo3vrucP6mV9tFv7Oovlez+VX74ZxzzjnnnP+ej8E555xzzjnn
+XZ8t//M7Gy+rNzsO55/oT8Vtz3nLPN6+bkJ0Yvd3f3bc286D3b4ruvckzj/Z
+x+iWd39H/d02L5xzzjnnnPPP9zE455xzzjnn/Cn/8zuqn7XrjpuNUx1v7G/1
+eTk/4W/F6ed8yoUQ//+45b10TnK+z6vvx+x3Mypf/R5n+Wf1Ts8755xzzjnn
+/Pt9DM4555xzzjm/3f/8jupn7bIY+6+2i9pn/WZ5Vvvj/A3fHaefZ9WF+Oa4
+5T1zXnEee7Tfd70v3fLq97L7HFl9zjnnnHPOOb/Vx+Ccc84555zzX/E/v6P6
+1f665d08unlW+6vmyfkT/lY8/TxCfHM4Bzhf9+p7kNXP2lX7ne1nNs/qPHDO
+Oeecc875t/oYnHPOOeecc87/7WP5+LdbHtXP6u3KK+un22+WD+dvuBDic+L0
+ecF/08eYvbdV+41i9T4WebXf2f4455xzzjnnnNd8DM4555xzzjnnn+Vj+fg3
+q9/t/+m8sojy7vYf1c/659/pQoh9cfp95u969xzt3hu6MXufycpn71mz943T
+68o555xzzjnnfI+PwTnnnHPOOeecr3hUXu2n+7s6/q7+ovbVfqr5ZD7bjvdc
+CBHH6ffz2332vNr9nezG6vd/9n6RzV/Uzy3rzTnnnHPOOef8O30MzjnnnHPO
+Oeecv+d/fkf1Z8d5O6rP9WkuhIjj9Pv5lJ+O7LzP8o7q3TK/nHPOOeecc875
+L/kYnHPOOeecc8455097FH/qd9sJIb4/dp0nnHPOOeecc84552/5GJxzzjnn
+nHPOOee/5kKI9fjzfo3vGeecc84555xzzvmv+hicc84555xzzjnnXAgRxZ/3
+ZXxvOOecc84555xzzvnff3POOeecc84555z/qgsh1uPP+zW+Z5xzzjnnnHPO
+Oee/6mNwzjnnnHPOOeecP+1R/KnfbSeE+P7YdZ5wzjnnnHPOOeecv+VjcM45
+55xzzjnn/DmPyqv9/Pldbf923Dbfu9dNCPHfcdv7+qnvfXa+R3+r/XW/J5xz
+zjnnnHPOOV/3MTjnnHPOOeec853+53dUP2s320/WPhtvtt9qZO268zvbntdc
+CBHHbe/rt/lsve53t9ou66/7vczaZe1X+1nNl3POOeecc845/5ePwTnnnHPO
+Oef8szyqV+1nV/2sXjZON7rPEbW/bT35WRdC7Ivb3m/+jHfP0+53uhvd+8z4
+e/U+M1u/mwfnnHPOOeec88/wMTjnnHPOOeec/9uzetHv1fG740TjVvOZzSvr
+57b15N/tQojPidvOD/5dPnsfOX3P2/W8UczmwTnnnHPOOee85mNwzjnnnHPO
++bd6VF7tp1uv2r7aT9Y+Gz8bj/MT/lZ8y3MIcSK+5f257fzjv+HZvWz2Hjl7
+z5ztJ3qe7rjd5+Wcc84555zzT/cxOOecc8455/w2j8qr/fz5Xe0/+tuNLL+s
+f85v9t1x2/Odng8hborb3rfT7+dtz8d/27v358xn23fvt937dlafc84555xz
+zm/1MTjnnHPOOed8l0fl1X7+/J7NJ8ur2l+339vWgfMTcdtzf9r8CfEJcdv7
++Wnv+W3PzX/bZ+/dq+XRuNV8qvln7Wbz4ZxzzjnnnPPMx+Ccc84555zzVY9+
+d9tHf6txy3xwvuLdfb8atzz3W55FdP50XYgb4q335unxP8VXo3qe3PbcnK94
+t92u39m/OzjnnHPOOed81sfgnHPOOeec/653f3fbRe2j/rLxduXL+Rte3beZ
+R3H6+W7xLLJ1eMqFuCFufS+juO18uW3+3vrucP6Gz97vs/em+++U6nd8th/O
+Oeecc8757/kYnHPOOeec89/1P7/Hv1k/Wftuu6we5zt9LO++L7P9Zf3wf/tY
+np1nb7kQnxi3vt9R3Jbv7b46z9V7ne8df8N33ddO/TuIc84555xz/ns+Buec
+c8455/z7/c/vqlcj6q/6m/OOj+W734us3W3z8ekelWfrcspn4/T44jNj1z5e
+Hfe0j+XV57rtOW732XMoOq+7/XW/E5xXfNe+694PV98LzjnnnHPO+ef7GJxz
+zjnnnPN7Paq32s+f39Hf2f66efHf8LF8dl9H/WT1u+Pwns+eN1H5aZ+N0+OL
+34hd+3513Ft9LF+9b/E579bb9d3fdW/m3+3VfbR6D1q9r1b74ZxzzjnnnN/n
+Y3DOOeecc87v8dn21d/j325e2Tj8u311/6z2n43D3/VovT7FZ+PtvHaNI96N
+2/fDrn1y+hxa9dPj87/76j05q7/7Hs6/w6vnxGq96ri33Jc455xzzjnnfR+D
+c84555xz/r5Hkd3jZ+/71fxumyd+xrv7bLWcP+vjenbPi0/3LN7Oq/p+7R4/
+iu58/Vrctq92neOn9tW3ePX9fTsv/ncfy2f39e68+Gf76ns/ew/o9sc555xz
+zjl/38fgnHPOOeecn/fuPT7qL2tfHTfqn3+3R3+jOJ3vr3u3fXU9u+fTLZ7F
+Lfnu+i7Mfi+ycVf7646zO1bnYdd+2zVO9Xw+va+jPMa47Rzdtf+r87DrPOfP
++O56/LO9+t3ulnfPgdXvAuecc8455/x9H4NzzjnnnHN+3qv3+G69aNxu+S3z
+9Ks+lmfrmLWbHZe/47PnRve8+FTP4vZ8nx6/Ou6sZ/Gp43zL/ozGe2v80/vz
+U3wsr37f+Vkfy2ff/93l/Bnvnrvdczk7J6t5nD7XOeecc8455//tY3DOOeec
+c87Pe/UeP9aL2q3mMdue13wsz+p12+3aD/xdj+pl7/u3eha353sqr2o+s57F
+p47z7fs2yuN0Xr5X//bu94Lf5WP5rvOiOy5/xp+uVz1PT5/fnHPOOeec8//2
+MTjnnHPOOef9qPa3mk/3vv9WXnzOu+tg3e707vsWefd9/nQ/Pf6qZ881xtN5
+Vcfd7Vl86jhv7f9bxv+Vc2os/zbvtj99fvCaV8/9X933t3v1d7feW+d+VH7L
+uc4555xzzvkn+Bicc84555zz/Pfu+3W3XpTHrnH4nGfrEbWv7rvZvPi7HtXL
+3t9v9bG8+/sW75a/nW9U7+39/i3jnFq3t8ef3S+n8+3m0S3/du9+v/idnu3n
+KKrtTj/ft3v3veye2918onGi+tV8OOecc8455/8dnHPOOeec8/3tZ/uJyrv1
+u571e8v63Oaz6/B0Xvw/f1ffqyjGfrL35Fd8jFvy+rbni+o9/T5l8Svjn1rn
+t8e/df+/Nb9j/Lrvei/N9xkfy6vredtznPbud3j2nF2tn/VT/V313fPAOeec
+c875N/oYnHPOOeec/4JH5Vk/Wf1d9/Qs7yi6+XSfv1vv0333fuBnfFc7/vfI
+zpXT+e56vtN5nT5vsviV8X99/316vqvPkdX7de/ON7/DZ7/fT+d1q8/O5+x5
+FMVT94rd++G2855zzjnnnPMTPgbnnHPOOee/4FF59f4c1cvqz9aLoppvd9zu
+70/zsTxb3+588j1enf+sfbd//vfyKG7Jt/s+V/fVqXyr+bzlWfzK+Kffx9vz
+6t53bvPo9xiz5+aveVS+69ybzYv3fPVczNp9mnff/6fmb3bc7r1o9f50+lzn
+nHPOOef8Bh+Dc84555zzX/CoXrWfXffyartdeUT9VNtV25/2av7V592VF19r
+n+3zXe/lt3v1dxann2PWu/Nzep3GOP3d7Ob91Hf7qXG6+6jbbtazOL1fs7xP
+57Xq1dg1P/w/f+8+b255vk/32e/prd+56ndh9/7bPY+z5d1z/lvPe84555xz
+zp/wMTjnnHPOOf8mr8bb9+/sObJ+u+NH48z6W+uZPW/Wbtaz/nnNu+/lU/v/
+13yM7j6vtv8UPz1+9btQjVPfzdXv2lN5PT3+29+f1ff17bxW9/1tee16f6vn
+UdYf/7vvOletw5o/9d2dzSOrt8tvab86X6fvN6fPb84555xzzt/0MTjnnHPO
+Of8lz+7Ju+/fUfls++r41ajO4+o6PLW+3ec+vf8+zav7eLVfXvOofPZ9ue35
+dp2Ht+Ub5TfGbe/96byyuOU8PHUORHF6f89+R07ntepRvdXzKqrP/x2z389b
+z8NP9yieOlerec1+FzN/avzV53/7PL/tnOacc8455/xNH4NzzjnnnPNv9qhe
+Vv+te3m1ffa81X6j9pl316Gax67xZ8fp5vGp3p2fXfuNz/kYb50zn+LdfXzb
+Od/dB097FvL6d/mp86G6r07nG+X5Kfmu+u72Y/BnfPb9fzqv230sX52fp76f
+1fGfqjf66vlRrff0d2mM1XXknHPOOef8k30MzjnnnHPOee677uXROKfbZ56N
+0+1v1zjR32icW/bT096dv6i/p94D/u+YXb9v9+z3bR7FLedENeT17/Jb9l0W
+t+XrO/R3z+qNcdt58u2+Wv5UXqd99v3uth999ZycvXes1stidT6i/t6aZ845
+55xzzvl/B+ecc84557/sY/nb9/LVfrvtozyq5dXn2d3f7DzM5vG2z85rFKv7
+hM/5GN3yW57j9PxV3/fT+X7aeVNtt/tcn/Usbjmfo/q37NMsbsm3+x08ne/b
+ntWL4pb3+dd99r0cf3/aes5+56v1Vs/D1fmsjrdrHk6dg6vlnHPOOeec/6KP
+wTnnnHPO+S97VP7WvTzLd7Xf1fGzmO1v9jm685Ll8ZR38+nugyiP3fuU/93H
+mF2nt/K9xbv7/XS+VY/itu/dpz1HFqfP893f77fOq9vznT0HxvJT+b7tUb3V
+7xJ/xqN63fMkGue283x3+133jSyPar3ueFG7qmd5vfU9mT2nOeecc845/yUf
+g3POOeeccx5Hdq9+6r6+2m+3/RireVf7q/afPVc2XjWPbr2o3eo8ZP3xd3ws
+z6K6L295vqe8Op+35DvrY/ntnoV813wsv2Wfru7rW/KaPTfG8lP5nvLV9+u2
+9+zXPKs3+/2N2lfHzfrbXS9r352H2f6j312ffa9X269+B06fZ5xzzjnnnH+S
+j8E555xzzjmvexRv3eO77aPy2eeu5jfbrprn6nizeWX9Rf1Xn+PpffTrPkb1
+fYnq3/Z8t8xrFLfk+/Q5HP0+7WP5p+Qbxel8q9+xbrvdPsavnG/VuCXf096t
+l7XP6vE1j6K6HlG77vu1e1/M1ovO3+p5mI0fjTPb7y3n8BinzyHOOeecc86/
+ycfgnHPOOeecr/tYPntf7/ps+yzvrF71d7ddNn+r/XbzXB0nKn96X/y6j+XR
+76z+7rw+3cfyyLvr8Sk+xuo8nfLT41c9i9P5fvp5MZZHfku+Vd+1z08/xy0+
+RnWes/6r4/CeR+Xd/b1rv6zm1W03uz+7+XT7O3W+rJZzzjnnnHPO530Mzjnn
+nHPO/xXR/TLqp1v/Vz2K7v0+8m77bN2eiuq41efM2mXtn55PPudjZOtaXZ/Z
+9t/qq+dN5Lc8X9W77T/l+5K1/7TnuCXfav6n9/Xqfr8l36fOtzG+9Xx7ysfY
+9d3I6vE5f+o7uLpfqr/filPzmXmUzy3nwW0elVfrv5Un55xzzjn/Lh+Dc845
+55x/h0fl1X6ye+Xu++jq7yhuW5e3vTr/UUTtT8Xqfu7u867vfj9+xauRta+e
+h7c89+3ene/T+T7lUdxyzld913f2lGdxS77d9+e2/d6d/9vy3f3cs+cgr/ns
+emRxy3nw6b763ezug9nv7lvRvSeM9Wbn4Vu9GqvnxFPnVFa/up9vWxfOOeec
+c/6Mj8E555xzzj/Dq/e/2XFW75VR+a76Wb1sHrI8svE+zaPYtc6norsPur7a
+nv/PX2PXez1bj//7bxan833bq79v9Sxuy/dXnuP0vu6e22O903ndOh+R3/Yc
+t/ps+6ifXe14zZ9a99ti17lx2/u3uh7Vda62y9rPjrOaV/c5d++L2/YD55xz
+zjmv+Ricc84553yPZ/V29Z+NO9abzWt23Kj9r3o2v9X2T+f9KZHtx1WPyqvv
+SRZP5//0PETlUXTPK77Xu+u663v0ad59f2/3sfxTv9dZ3Jbv7H67zaNY3W+f
+5rPvj+/eGc/qRbHa321eje4+f2sePiXeOoer+7lbj//9d/U9iPrrtt/1PZp9
+/tn+Oeecc855zcfgnHPOOec9v6XeeO/r3g+zuGW++bv+LXHbvGbv4ep7utpv
+ddzq+VXNg7/jY3n396d7Vm+M0+fELj89/qpncVu+s+fxp3gUv3KOOFc/07Po
+7veo3a79kbWPxu+2u8W/JW6bV/6O7+ovO9eq59TseN1xOeecc855zcfgnHPO
+Of9V39Xfar3s3jbWy/LP+o/q8c/01X25ut/fjtm8bluXbvmu8yc7d7rPx+/w
+1f13y3M85VlU293mUb3qveKpvN763tyW7+y+PP1+dL8HY70sbnuOt+cpqn9L
+vnztd/f7XI3Z7/rq+/vWub46P2/HU9+D3ePwM56tb/V9Xj13snrVqD5vtZxz
+zjnn/Fd9DM4555xzXovxnhXdu6L6mXfzu23+fsWz9VndX2/7WD6b/1ORvW/V
+8qjft70b3fMjq8c/w1f7G2N3/5/q2fkw+32+1U+Pv+pZ3JZvdd5PvwezHpX7
+Hs2V7+6ff5bPniNZ3PJ8o1fz7bZ/Oj7t+5TF7PnNz3hWb/d3vZrP6fOEc845
+5/xT/P9pt162ZFd1RQGe///q277sqSUJsMFZoU4NBw8JjMkag3POOef8r3nU
+763/w6p1ZeH/vv/2sT17X7Pv5ZZ1r57TLLL9Wt3HLN+uerrf6ew6u+Nm2/m3
+ffVeWp3/13yM6nf1dZ89J0/XtepZ3FZv9XclGnfb97Trd/Gvrbt6D1efx/jr
+9/xf913tY79qPdV+s9/F7O/BGN39mf0Oq571u+V3K4ruvdQd99e8u0/VOHVP
+vZ2Pc8455/wrPgbnnHPO+V/17P+lp/4/q/6fls2bjf+V/wdP79stvvs8RtH9
+PrJx0fzV/N35Vr/Dpz16HuNUffxdr57zcfyper/iv/67mMXsPXybZ3Fbvavf
+9envZtbHWO3H/x3de43/hkfPY5yue9e6Zr+Dal1ZfVl7dd3RfFXfPd/bvmvf
+dtd1yk/t21vf+9P5OOecc86/6mNwzjnnnP81H9vf/j+sm7e6jsxveQ9vrfdr
+PravnrtqHbPnM4qn2rvnJBs/61GdUX2r+89/w6v3YPSc9ftrnvUbo3uffcWz
+uK1e6/vv9tu+s9nvMovZ7/qvePdey+Z5ul5+t4/tq8+77oXZ9u59Ons/7Vpv
+971knsVtv3OrPvv7+XRdXX9qvad+T/3+cM4555zXfAzOOeec87/mY/tT/2+t
+zhv1G6O6/qf2bzVuOx9Pn7OnPHtePYfR/Nl8Ub+qR+2r65wdx/l/+a7v9PQ6
+bvfZfmN8xaOo3m9f9Sxuq3f197E67is+xq7v+q/66u9IdRznO3xsz6L6u521
+z34H1fGzvru+qmdx+nfxKe/G6nnL/Kl+u85h11fbOeecc87/io/BOeecc87/
+7av/h2V5sv/Xsnmicdl82TzdfLvrvM27+7b7HFVj93mdrW/3OeiO273PT71P
+/ls+xmo//n//GU/fV7f56fyn1x3FbfXu9tPf3+7vbPZ3+K16v+rVfdz1fvjf
+8Opz5lm/p34Pn76vdu9zVMdTPtt++ndx1md/Z3bt69N1Zr46vvq7wznnnHPO
+//3MOeecc87/7dn/Ubv6ZR71i+rOfPb/w269q3U+5d06V9/frI/tWX278jxd
+d9b+9Pl5+j1Gceoc8Z4/fb+dXt+v+Bizv2tf9939Tnn2fqPxT/9ePO3V++K2
+7+/p7zjrf9s6vuZjdL/HXz+Xf8Wf+p3I+u3O071Ho/ZsfNWz513f66nfsah9
+9T295d37LfLu79quOnefq9n7YjU/55xzzvlf8zE455xzzvm/25/6P6w6PuoX
+zZu1z/5/uFpnN1/Vu/Xvfp+7z8UYT+V/aj1jexTd/cjmy/JkXj3Pu/fj9Ln7
+q77rPc6+1269/N/tY7/o+Vd8bM/25a263lp3FLfVW70XuvfD6e9vt4+x2o//
+27u/U91+3XuZv+Nj7HqPka/+DmfRXdfs/dmddzXfU3nGOOVje/d+2u2r57la
+fzd/lKc6X7f+rt9y3jnnnHPOv+pjcM455/x+77bv/r/hr/8fEvV7ap+jv9l8
+UZ3Rc7W+rJ4sb7d9dp7ZfXvLq3Xuyj9bz6xH82c+O+6t+XZ/j0+/97/mu37X
+Mt9VL695FLvvn6/66u/ord6910/Xu+pRv9V77qs+tnf737KOX/EoVt/bXz3f
+b/9urt6Xs+PezvPU/bPrPI/9duWJYraet3xs7/4+zo7P5pnN1x3fHdedb/f9
+f9s9t+v3bPe5e+p39vS+cc4553zdx+Ccc8553avtq3mz3/HV3/8ouv9fdPOM
+88yus5r/1HmY/b+tei6y/t26qnV256/WlfXrnsvTnj2/5d33tuteWb0nVufb
+Xd/qOaz2q9Z9+ly97WPM3ofVeavjb9unr/vs+G77Vz3rt/r7fdp3x23r+8r/
+DW/52J49/9V9Ou2z46OYPQezdfyar+7L7L28+55/ar7V8zk7X7TPt9xbWZ1j
+3OZR++z7zeaL+j31+1Yd99R3UD23b3tUZ7fuLFa/02o89Z0+9V3cdh4455zz
+L/sYnHPOOc99/H3dNV+3X/f3P4usju580bzV9WfzRO23nJOuV/9v2/3eV2PX
+eY76n/o/eXZ/b6kru6fe2pddvnu+1Tyr7d3nX/fZfZt9v9X6qv34Xp/tN8Zf
+89P531pfFLfVO+unv79bfAz39d0++91meWb7n96Ptz3rt7u96rPjTt+Tu+e7
+/X6vPt/qWUT7P3tud8fu77263tt8bI/iqd+JXeO79WX5Zt9vta7u+K+dK845
+5/wmH4Nzzjn/i9593t1vdVz0tztf1v9XPduHt+roevf/vLeieg5nz/Mpz2J1
+vbu8ei5258/qGeOp73a2X9Wr7d06uvOuntvZ81HtP7ve1fl23Z/8HY/6zd6n
+Uf9f8d37fptX643muWUdVd/9vdz2fT99Xrvn5/Q6+H//Hftl843x1vnpPnfr
+7vru380sT7e+rlfX8dQ98/b5H+O2ezaKp97/Lu/uwy2x6/58yrt1R/1+1bv7
+MHsvVs9Dd96n5j99bjnnnPObfAzOOef8L/ru39vu72+13mz+bFyU55b38Ku+
++xzcHk+fu6fbZ+u41bPnp/J093u3Z/2q6+vmyfLfej6qPnt/Vft330t3nmxe
+foeP0Z2nOt/tnvXb/X3f7lncVu+ue/av3mfVcd3+/C4f26vPUcyO647f/fv2
+tq9G9j6zOm45f6freivPU/sV+ey+dtu73j23p2P2PHXnG9v5Mz57D8322/Ud
+r66jWg/nnHP+F3wMzjnn/Jc8al/9fXz69ziLaL5sXv7bfls8td7ucxan/x/f
+7afusVWP6tztUR3Vc5XVn+Xb3T773VSjOm72O13d5+p75Hd7do5X27/qUb9d
+3+Vtvuv3e3ddT/vq7+Qt3/FuH9uz5+7vBb/TZ9urebJ+Uf8ouvdWVk91/u55
+X/2d6e7navtufytPd/2r5/krXo1d3+nu7+mWOLUP/F3ffR5P32PVum67tzjn
+nPMnfAzOOef8lzxqr86z63c3q6tbfzR+dR5eez71nrN5q/Xsiu75f/o9VfM/
+9Z2f8tP5M4/63fKdz3rUPrsf1flXvVrXar6sX3Ye+N/y2d/lX/dqe3Xcbeub
+vY+ieW5ZR9dX3+8t3/FbPsZqP/6b3r1f3j6fu++T6j1Yrbs67muePd/mX6v3
+6e/nrfzd72Q1qvsw6911zN5r3br+us9+/9V5svm657/7+zv7fe+qg3POOb/R
+x+Ccc85/yaN463c3q7e6nl39b3s/s++zuq/dfZyt6+11d8/70zH7PTz1f+1b
++W7z7PmrPrY/5Vm/2Xsjm+/t+3pX3tVzV+3Hf9Or46L+f8WjyPY1G/dVz+K2
+emfXt+s8/FUfY/Ue4r/l1e+rOk/1HM7Os3r+s3FZ/2r76fca1XdLXX91Havn
++K17YPa7ejpm82fn6S3vjn973Gmvnv/dz7O/F7vvt7fycc455zf5GJxzzvkv
++dj+9u9rdXzUL5o3a7/tPVTrG9uzfrvresqr7787LsvXHT/2y9q79fA5nz0H
+p+qtetav277L3zr/1edo3qpX66meu+58nFf6RdH93n7Nq+2r89zi1XWO/b+6
+7u730J3n1z16HsPvGX/Cu/dad77Z+6Fa32y+6vf39Puo1nP6nHS9+/5O1/vr
+Pka1/an3mNXRrW92vlOe9avu/+66nvLZ95nNd+qe3PU7yDnnnH/Zx+Ccc85/
+yaP23b+jq7/P3fFjnP79r9Z32/nYte7Z9c++9+65mq03es7GrebP5v1Vnz0H
+p+p9yrN+WWT72p0nq2f3+33rfI39smfOVzzrl/WPnv+az+77r3gWt9U76933
+fvr7ftvH6N4bt6yD/7ZX20/VuWu+6DmK7vdc7XfLe3/6fVXP2el63/Yosv2q
+jpv9jt96X2N71aOY/d5v9+69+HRd3X3etf7Ve/6p38fb7hXOOef8CR+Dc845
+/yWP2qvzrP6+Vsd380R1P7UPWb7Z/Ld7t32Xr44b+3XHZeOr/aO8T+3bru/x
+ad/1Xk6v47RHMXu/z56n1fk4/2Uf26sete+a/yve7bf7Pbzt1fcdzXPLOqpe
+XV82723f/Vv3StRv9711y7o53+m7f0+q32H0XJ23Wueve9Yvav/KOqrnY9Z3
+j9t1bqt5ZvPt8rfyvOW777nu/bq7zmz87Pnt/r6s7gPnnHP+iz4G55xz/hc8
+6rf797U6vptnjGod2bhs/Ox6d9Wx6t32t/8fWz0/s3VE+avtu8Y9tc/VvLP7
+nPWv3kPZvN16/7p3x89+n6t1cv6LvnrvR9H9HfpVH9urvze3raP7/qPxX133
+7O/Y6e/7tGdRvYe63xfn/H/bo/7dPLvr/Gs+tkfRfZ9R3tX3260n86zfU/u1
++p7e+o527fOsn86f+a57afY8zNbV9VP38FPzcs4551/0MTjnnL/jWcze27O/
+A7ftzy2++rub5am2Z+do1/utrqe6H1m+Xd7dx9P/d63ON8au+VbPa9Vnx3W/
+t+776H6/Vd9VT3Uezjk/5VF079Vd9++v++n8b3sWt9X71Hu97bu/xceo9uuO
+55zzWzxqr84TRdSe3aur9XTXleXPvDqu2/7UuLFfdb6o3659XPXd/d6et7rP
+s+81q2e2rmye1e/39P142sdY/U5n77Fqfs455+/4GJxz/nWP2lfvzdl6ZvPO
+3tvZPFlUx3Xru+2cvPUeV8fveh9vnZ9ontn+s/tz2qNYzfPU+YzmybxaR3e+
+2XxVX/2+ovkyz+a97RxzznnXo+dofPe+3/X79Wu+u98pr56HsX827pb1Rd79
+Xm777t/2sb06T/Q8Ox/nnN/uUXu13+hR/6f6Zd7tN1vf0+8j8ur7WK3vqffz
+lHfXmfXL8nf7Vd9jNu/q9/XWubnlvlv9HiNffW/VfFHe7ncazTM7/1P3Wzbu
+lnPCOee7fQzOOf+6j+2z999Tdb61zqx/N2+WZ1f+2Ty3+Orv8div+n6r82bj
+385bne/0/0uz52J3/l3ncHX+zKv1reZZPV+754/G3XqOOef8aR/bo5j9Pfmr
+nvW7rd6n1v12/rf9lu/4Nq/GOH723rpl3ZxzvupRe/RcjewerfrT81fXv8tX
+83Tn31131r867ikf23f3qz5n/U7ljero+i33V+bd9ixmv+tuPd26quOq9eze
+/27+rK7Zejjn/FYfg3POT/mu+arPu+abzTtb5+y9/pXfgWr77ve827O6xufZ
+85Pl3xWz69y1rlMe1X2qrlvXP+vVc9y9x6rjdn/vs3k55/xXPOrXve+rz/zf
+fjr/Ll89L7d7t53/O3bdG7esj3POT/vuebt5u+O6eZ/ex93zvVV39/1U13/a
+d73Pav7VeHtdp89XtY6of/X5Fl/9vmbv79n+u9/D7Lno+un7knPOu/c955yf
+9uw+695v1Xm746rzduevztsdz/87bqlv9nw/Hd1zH/mp/3+q7dX+T3n1/T/9
+f2HWfvq77X4Pu87f2++Fc85/1avPfK597HfbOmbXHcVt9Wb7Xo1xntu+41t8
+jFvq4pzzr3r1nu3Ok82b5Tm9L9V4+72c2pcouvv4tlfXNfv+n4ruObntuxjH
+8//26vnM5p29z6vzVc/B7O9D9zu97feCc85P/55wzv+ud8dX56/eg9183Tqy
+cB//pkfRPX+r+Z6OXf9vRPNmz7vug9lxp/10/szH9lNebb9l3zjn/Fd9jOwe
+nu3/Vz16D9X+T9W1y6vn4+26uv70e/yrHvVb7f9UvZxz/le9Ou62um+t63T+
+qlfrj2K2f7WOqF/mp+Lp99Otg3/TV9/3rvu0O756P2d++l7knPMxOOf8aY/a
+q/fV0/djVmc3duflf9Nvi7f2YbY963e7V/frdL1Rfd17r3rv78pzet845/zr
+nvWL+kfx9vhf9ai9+p7e2u/V9z327653to7d+x6NP/193+LV2H1/zN57nHPO
+/+3de3/1/s7yZ3XM9n97P7O6b6m369Vz0X1vT/ltcWof+B0+e+/Nxq77dvd9
+0a2Tc87f8jE45/xp78bb9+BqXVG/2f1zf5/xqP2p99yt61S8fS5X9/92z87N
+bfVmPlt39fvZ9Z3dtm+cc/4rPjs+itn8v+67xu+ef7Xf2N6tfxw3u/7VdVX3
+ddf8v+5ZrJ6T2X6cc87XfPV3IerX7Z/V0x3/tkfPWb+v+BhPnatq/lujul+R
+r+7/U3Xxf3v3fc22Z/NX4+n74pY6OOd89p7mnPOnPOr39j24WsfYPts/Gnfb
+e3vKV/f1V37nVs9f9XurRjfvW99vdx++4lGc2uenPftef/U9c875X/HqPZ71
+z/JmkdXxVY/as+fRu++5O89sXVm/ah27ztVs/dX22e8mG/8Vj+LpczV7Pjjn
+nN/hY4z9f/Wer+5H1H7LOmZ9jLf3OatnNbp5u+//dl99X7+2H5HvWueu5+73
+1B2/6m/n45zz7D7inPO3PIq37sGs3ur4av4oT+a3vbfZ35db6n3bd53favtb
+ses7+ms++75P1cs555y/4Vm/bv/deW71qL37PHr0txuzdUT1dPOsjs+ie06r
+/brvJxt/m6+273rmnHPOf9Gjfln/U/V+zU9Ht86uz477Fe++99P1Zr67XzZ+
+9jt6+7u97V7hnP89H4Nzzp/2anvUb/W+y+rN5u3mj/Jkfsv7md3P3XXd5mP7
+6jntjtv1Hrrtp9b7Kz62d58555zzL/nYHkXWHvXLnlf7fd2z9xX1m33P2fzR
+c+ZZnlvq7O5z5Ld9x7vvg7Ff5tX5onlW761b9o9zzjmv+Njeff4rPrZXvdue
+5Z8d//Z6o9iV5zaP2rN9r87ztO/ul41fzb/rfEex+3vinPNZH4Nzzp/2LLL7
+6ql7sDq+m2eM6n6t9ptt7/5uZO1f8bH97XPXnW923ih2fa+j79q3br63PYru
+ek6vg3POOV/xqN/Yns0XzbvLZ8c/Pf9ur77H6rq756JaX/ScxdN5V/c5Gld9
+H29/x9V6d8+/y2frzJ4555zzL3vUb+wfxel1VOupjotidlw2X1ZvlCcbX923
+1XPw1L581cf26v5X59l1Tnf3y8Z3z+Fuj/JG7afvZc753/UxOOf8lEfx1H0X
+5cnm7eaP8lTzRs9dn61vNt/bfvr3dLXuyHf9rq+2V707btf31f3us3zderNx
+1TpvO8ecc875Th/bs/Hdecb+1efuuCx/NG83b7X/Ls/eY9SvOq6avxrd89Ct
+c/Y8dPdn1bt5x/5Z7DoPs/Puqiub5/T9yDnnnD/pY3vkUXvUL6sjG1fNE7Vn
+nj1nXh232l4dV9337rpX93m3n86/Wm/3XMx+z1m/3d/D6nmL5tt1v+2el3PO
+d/sYnH/Ro37R+Y/mq86f5evOz//tWb/Ze3B13m7+KE/0vLvf0/W/7d33+/bv
+6e48T9Ud1VttX70vZ332/5qn9jWrN4rT55Vzzjl/06Pn2Xmj9qjf7Hy76tvt
+T8+7+n677+WtmN3f1XOx+1xFda76qfm665w9n7PjOeec81/yXeN3edavuo7V
+urKo1lndz6y96k+fi6fee+ZRPW/l33V+u+Oj/a/u02y+1fm65352fPc7vO3+
+vcXH6O73rvmjftW6OP+ij8H/po/t2Tm6pf7q+a7W3c27On+3/mrc+r5mPer3
+1v2465xl46rRPS/ReejWuerd36Oo/dTvZtT+1Pf/9nqqPjtu935m0T3ns78P
+1XlvOcecc875TR4978oX9cvq6PaPojrPWz62z47P+nfH3xLZvmT9Vvf19HlZ
+Xf9s/933ye55Oeec81/0qD2KqD2aLxqX5cliV75Z3/U+ZsftrmN2P3fva9Wj
+fk+d61mf7Te7v1FU81Xnma1/t7+d7+31VOPp/NX7Z/W8V+t86/7bff5uO2/8
+rI/B+X89z56j2Xp2/+5Wo/p7sppnnC967tZVnf+W87bLb/l9zc7D7vf4dD3V
+umbznf4dnN2ft+p6ep27fPd8s3m67av79tTvKuecc86f825080TjM+/W/bRn
+dVXH3x6z73fXe1/17Lx0z181/2yc/v4555xz/r+xuz3LH80TRdY/q6vrp/d9
+dh93+2y/MW7x6v5V562+39k6s3yz5222ntVzsnrOb7k3d33vu95jdVwW3Xu2
+ep7G9tX7cNd9Go3vzpvVecs55Hf4GPybXr1nZ+/Fp9bR7Td772X5ovy73sfp
+56zO1d/p0+c/iu55qXrWL6pj9Tvtnvfq+Nl6sv63/d5139/sd74rf1THrnMb
+PT/lq+doV92r5+DUueCcc875//rYHkV3vmo9s/nf9tn6d/nX4qn9qL6P0x61
+7/oeovlmv/tb7iPOOef8F32MsX80fnX+at5sXHfe3Z7V8bU83X2sjrvFo6ju
+eza++pzl79Yzu97sede5rX7fb/vYnsXsPRS1d+va1b87PhsXzVPNX31vs/fj
+qlfryuLU7xR/18fgd/rYXv2uV++fXfdF9bk7bvb3Osq3q95f99mYPa9v++p9
+Ovv/wFMx+/9Rdfzq9/i0Z3VG8Xa9b53PbP5bfbb91nPJOeec87qP7VF026t1
+zNab1fXX/Pa4bb/e9l3js3mr38vqPXHL/cU555zzvD16HqM63y2exa79rO7r
+be852q9bfPY9d/s9HbvXu+t8nvoed+/7Lef1lK/e77vO5+x3t7rO7jxR+2wd
+t3xfvOZj8N/wrN/sPTX7vWfzZXVW5+/et9W8/Bmvxm11r96zp2P2O1u9B075
+2B756Xq79+Lu/wOqvwun74vZ9377++ecc8557GN71H92vtU6b9mn27za/las
+nre/6mP7U99hNe/seeOcc875Oc+eR49i7P/1da56tG+37kvWvzrutHfPQfV8
+n4ruebvlfK3GLefpV707fmzv/i5k41fr697Ht/xO8Lt8DH6nR+2r73f1/4cs
+z9O/n841/y9fbZ/Nd3s8/ftSzbdr/rF/9nyrn87frWuMt76jp37HOOecc36P
+R8+z42fnicZl85zev6e8O666f2/F6rmp7suvePb+du1bNG/3Ppitg3POOefn
+fWyPIuv3Vt2n83f381bP+o0RtWdeHTc7f9W/ErveczVPt53/LV/9nlbv99V7
+LLqfZ9f51fue/98/g9/pUdxynqJ6uu1ZvP3/Gucz/rWY/a525cvqyOa55R5c
+vTdvqav6f0N3XU+999Xv9vR+cs455/x/PesXtUf9onhqPbP1jPPt7v/0emfn
+2x3dcxP5W+c8iqfPQeZvrbfbPntvcM455/y8z47P5oui26/7/BXPnr/m3feZ
++Wx09/ur0d1PzjuefdfV774as79HWfvTfksdfM3H4Ge9O+5r52bX/02rdc2O
+47/p1fMUxez5OxW33G+r/3d91Vfvy6/5GKv7Ue3HOeec89/3KKr9b1vP7d4d
+F8Vqezaue16i8dV5ec+j99L97m9ZD+ecc86f86jfGN1+1fFf9azfbfXu9rE9
+6n+qrtuiun/Vebrz8b/hs99RNl8W1XswG5flP3WvReNuuY/5v5/5b/jb52n1
++8/GVftXn7PxfM5nf/+6sfp79LR3/x94K776e3xLHU//3p6ui3POOef8Kz5G
+1L/aj/87ns7TzV+NMe9sXV/Zz1/z7nm5pW7OOeec89s8ah/jlnpX/ZY6dr2X
+tyLLn52bt3z3vlXfXzaO93x2n2fvr24d3frevjdO3198j4/Bz3p13Klzk9VT
+9Wqeanu3rur4r/rs+Nn3MJvvdl/9PmbnXY0sT9Qv827e0WfzftVXf39vWQfn
+nHPO+Ve9+jzG6bpnvbsfT3mUd3VcFtV5Z9fx1PuK8j2d/2mvfme31c0555xz
+/nXP+o1xut63vdsvitV6svlmY/YcZO27x93u2XvLPHsP1bhlP3b5rvspmy+K
+Xffr7nmr+brn7un6eM/H4Ge9Ou7U+cjqyTxq3/1/SveevNWr76f7+37L+k55
+tF+r57g6rlpXdVx33mqeaN7bfsdO+679PL0OzjnnnPNf97G9GrP5q/Psyve0
+Z/VWfXXc7Hyz5yXLd+t76p7DU9/L7DjOOeecc/5vj9qjiNpPr+N2j6K7n915
+o7qiftl82bhqvur83XG/6rve9+66nvKnvpvMq/PMfu/V8U/f59Vx/KyPwe/y
+28/H6u/07PhqnU//7nf/H1n9XaiO+ys++/6fOseR78o39utGdd7ZeyJb92qe
+0z7bPsbpdXDOOeec855H/W6r86n1Rs+zvjpudr5d+5TlPf3+dnv3u+Ccc845
+53d61i+K6viv+hjZesd+3VgdV62reh6646J8u/ytPF/z3ee3O29UV9e799Bs
+v+481bpWv7un/ZY6+L99DH6nR/H2dxzlf+seiPJnvnpPr76v2f2p5vs1X/2/
+Yvd52/397K5jbI9i9r2c+p16K8+u388oTu8j55xzzjnn//IoovZZ3zVfFqt1
+rO5rtb7bzgHnnHPOOf8bHrVX45Z1ZD62P+VPz5eN77ZXz8Nt+z/bfupcvO2z
+/Z5+z6v1rfabnbe7/tnxt+fjz/gY/E6P2k+fm7fvjWh85k/d52N71q873694
+1i/6G/Xb7VnsPqez8+0+N7PjnrqHsvp27+Nqe/ScxW3/B3DOOeec87/hUfsY
+u/yp+Xbnees9RHHL+eCcc84553/Dx9jVr9qePc96Nn/mWb/ufNX9jHz2ve46
+D9X5qvOc8t39vuaz7avnMMv71nuq1lU956fv7dn3wu/wMXb1u+3e+VWP4q1z
+szrvqft81+/47Pe1a12nfPY8nv696Na5K8/u39vq/LPjnj6fu7//1XMVPUf5
+Mj/9u84555xzznml39gejcu8W8dqnix/17v7tOs9rM7HOeecc875kx71y6I6
+vurd+bL1dfN3x6/OV11HdR+q46p1Vb06/ymfPddP17XLZ89HFLvOZ5Rv17qq
+42fP89P38Bi3/B78uo8x+z09/V6r80Tjnv5d/Gte/R2P2qterataz6339uw9
+3P0Oqu27ffX3N5rvtEd1Pp3/9HqiePo87Zqvu5+76nnq++Gcc8455/xJH9vH
+yPrt8izf7jxZ/q5393mXR/Wt7jPnnHPOOec7PGofo+qr/cb2ap2rda+Oy3zX
++5sdt7uO2fOze19XPerXXd/uulbP7ex32D0/u/bjqXto9X566l6t7if/d6ye
+z9336lN1ZvM+tX9Zv+j51z1qf+v3dPV+Xr23s367fneeqn/1Plj9Tm+7V6v3
+ZHff3/o93fUdPX0/7PbZftVYrXN13277HjjnnHPO+W951K86TzTfbs/q2J0n
+y9/1Xfu9y7t1vFUX55xzzjn/W77aHkXU3vUsqvVk43f57veUPT/13p/Ok80T
+9b/NZ7+DU3XNjo/e6+r6q/m7vnr+dnnUfvref8vHOD1fdZ5s/tn8u+eLYvV8
+Rj57vmf7f8Wj9t3nI8u7697O8lSfu+Pe+n2p1lHtd8t9u/r7FPnXfzdO3zNZ
+zH43o+/uf2rfbvtOOOecc875N32MyGfHPe1v53kr/+lz0d2H6no455xzzjlf
+8afzZXmzfqNX+0f9ql6t5+19W51v7Lc7z+739xUf26vvYTVf1K863+z9MJs/
+G1etazbPW/fZ1zzq1+0fRXe+6vNqntn7J2uf/R5n5z/tUaz+bkf9b1v/27+b
+Uf7Z+yrq360jy7cr7+y81f2/7X7e9fvU/R5P1fuUV59P+1vz/cq555xzzjnn
+f9PH9tn+pzx73u1ZPL3O6G/U7y3v1nm6Xs4555xzzv/Lo/boeYyoPfNb1h/F
+qbpO56++z27/W31sf/q7eWpcFru/89l6nr7Hbvludu9vdZ5q/9O++37ePf6v
+evc77nr1ezntY/vq99+dv/ud745dv1Pd8dG42+/5Xb8Lp+vKzt+p/LfdD6v3
+yfi8+/eSc84555zzm7z6fNrH9rfrzWJ3/uw93nKOxrilLs4555xzzme8Oi6K
+2flu9Sie3v+snlv2Jas7GvcVXz33s9/TbB274un9iXzX/XTL/TDrs+fkr/uv
+3kN/zVd/B5+ur+uz98ht8dT9tfp/0S0+xi11rfrq9/j07+6t90DUb3Udt5wL
+zjnnnHPOZ8ZXx0V53vKs39v5n8qz672+5VH70+eWc84555zzJ7w6rtv+dN2z
+HtV5qq6v7mPm1eev+K73We3/lejuyy3nNKszi1vOJf9vv6UO/q5n/Vb/P1j1
+X4nZ37/bPYrV35fbvPsdnK43qqPqb33Xb7ff9l4455xzzvlveNQv6z9G1H6b
+Z/3ezv9Unu77vtWz6J7b29bHOeecc85/w6P2qF8UWf9s/qfW0/Xb30vUfrre
+2fWNUT0n0bjbPKu/+53dGqfP0e57i/+m31IH/xsu/v+45Xd3dp7V9q/42B75
+LfVW61z9naj2n11Ptz7OOeecc85P+NgeRTZf1P8Wz/q9nf+pPNm6bjl3Va9G
+1v/0OjjnnHPO+d/2rF91vqxflj+Kbr/q+NMe1Zk9f9W77V2f3efdLv7/OPUe
++N/yW+rg/Bfj9v3s/n9aHfc133WPft2jfrv6d/f7tv3hnHPOOee80i8al43P
++t3ip/Jn8fY6bzuP2b6tnsvb1sc555xzzvm/ImuP+kV5dvX/us+OP1XvUx71
+y85bFtl5ftu/HrftJ+c31cHv8Gp7Nf7q/X/be539f+H0/zdve7f9dL2cc845
+55zz5z3qN9s+xtf97Txv5T997t4612N0z/HpdXDOOeecc86f96jf2D97/is+
+RnU/b6n3q1E9n5nvyjubn/+m31LHV/yteVd/73bX95aP7V/5Xbj1dzTzW+q4
+1e0f55xzzjnnPHsevRrdeqI6nvLZ9WfP3X5RVPe/mz/z2X17yqvjspjtd/r7
+5JxzzjnnnD/vY/vY77Z6b/Fb6ui+3+h9n47Zuqrn97SP7d3vLhq/69xkdfD/
+9lvq2O1j++y5qc7XHf+r3m2vvp9uvt0xW//u+2zXfKd/32/1sT3qf0u9nHPO
+Oeec8+c9eo7GV+fLIsv3lI/t3XVn81Wfs3grb3X8qXMaRfccrvbjnHPOOeec
+/65H7d1n/t/ts/NG41fny/I8Fdl5yvpXfXbcr3j1++5G95xn8/yK31JH16vv
+afXcdev6dR/bd93rq3lW862er9nzdPr3/q/5rnN4eh2cc84555zz8x71i8aN
+kfWr5o2ed3nWr7vebp5svqfzdte/er6y/N3zNntObvveOOecc8455+c8ao8i
+aj+9Dv5//4zZ9xm1z+afXVe1rlnPYleer/qu5+ycdOu6zd+eNxq3+n6y+XnN
+o3P/1n0/+7u/+vuy+x7fXW9Wxy2/36f/bxhj9txl/W5ZN+ecc8455/ycj1Ed
+X21/ev7VdWT9quvr7kN13Op7y/JU17ta52x9u+bP8nDOOeecc85/37vtY7/q
+c3X8X/Moqvv+1HxRe3Q+svlXz2HmUb27vPr++L89O2fZuOr7eOu72v09Rf1m
+943v8afvrdV77qnf/W4dUTw17tR72VXfbb7rd/X0OjjnnHPOOeff825055lt
+r3p1vVn76rxZndXo7ldWZ3cfuu1d7+5jtZ7VeTjnnHPOOec88rE98uq429aX
++Rir+1T11fqy+bI8s+cjG3f6nK56tb636/or/tQ9Vc3bzdeN6HtZ/a5/3Xe9
+r1t+f1bHjf121VHNUx23Ol/1e9n9XrI6s3p31bU6f/Q8xu7/GzjnnHPOOee/
+52N75uM83TxRZP2766zOPzu+m//tqL6f6vua3ddsf2bzztY1tq+e59u+Z845
+55xzzvl+j9rHyMZl/aP5q/V0PesXRXc/dvtq/ixm32+2j7PjorpW6zjlu9e/
+q66v+Wq/sX33vZLl2XWeozx/1bv31+nf12o8lefte3XX79fT52f19241f5an
+Wmc1/65z0u3POeecc845/zs+tmc+zhO1d+fNYrXuyJ8afyqy9zz2m/Wn3kcW
+2Tzd9VfPczUv55xzzjnn/O941C+bJ+oXPVfn664j6letO5qv6931r3p3XHV/
+Zs/D6jmZfe/Z/Lf57n6/6rvO4Wx7Nc+ufmPc8h52efU9rr7P0/50nrfqrvrs
+uNvPf3efdv9/0v3dq47nnHPOOeec867vGl/16O9qHVHe1Xqf8rfjlvV/Jd/b
+3xHnnHPOOeecjz7Grn5R/u74ah23+Op8u9/r6nynzuNtPrZn68rmvW19q57t
+29hv9n5YPZ/ZPNVxY9zuq+u67Xere+/tOm/d+W+7J2fH7c4fxdPnOZo3e59Z
+Pat17fo94ZxzzjnnnPPMq+PequP0fsz6qcje09f8rfeUvb/bzhfnnHPOOef8
+Xs/6jRH1j/pV59vVLxq3O381uvPN+q7zMTuue95W51udP5rvtFfHPXWeT/vq
++lbPYda/e76i+U97d9xT3/HbnsUt9b413xirfuv9M/v73Y2n6tz1e3H6XHPO
+Oeecc86/56vPu/3UfoyxWn80z65Y3a/q8yl/+pyfqoNzzjnnnHP+ux61j1Ed
+F42vzl/12Xi7zlWP9n3XOYjiqXN1yqO45T3P+tievYcsblnf7vGr52bXvdEd
+v7uOrP3273jVT+evfp+n9+Upz/q9fV+Oz7vHveVP3X+cc84555xz3vVb6jjt
+2f6cimqdf81vqYNzzjnnnHP+93xsP11ftX3sV33Oxu/y0+81qu+p83Pr+qv7
+8lXfNW71e+zOk3lWd1bX7LnN6srmr46vjtu1rl/xMbrn+zZ/a79W9/Ote2z3
++Op3Hs3/1Pvq1nv6nHLOOeecc8752H5bfbs8W+dsnmy+aux+L1m/7nxf8zFu
+q49zzjnnnHP++z62jxG1785bfe6OiyJbVzXv236q3lvW/1S9Y/yaP7Ufq3Xs
+6pd9L7Pf0Wy/aFy1jq9/f5lHUe0XjTu9vtP5x/hr3m2v7t9t75dzzjnnnHPO
+T3v1eYzVfNm8q3mqXq2vWn80brWup9cfxWqe7r6e/h4455xzzjnn/LRXx41R
+bb9lnaf9VP5b1t89L1lk+/srnr3P6rgouvNl81TfX7Weah2r+7K6f7d9Z7Pr
+GftHfsv9Fvnqez79Pn7Vu+2r5y175pxzzjnnnHP+bR/bM8+eq5HVt7qOW/aX
+c84555xzzvmcr44b+2Xtt63/1v19yrP6bqs3qjM7b2P/r3oU0b6Nz9XzsOu7
+766jGrvObbXfrvZbfYxd98ct6/tqvVm/bvstHkV1P6rzf/W9c84555xzzjnv
++dhe9dVxs/M9te5b3gfnnHPOOeec85pnz6vzZnF6/VUf27vPt/nX6s3O1ex6
+v+Zj+673X/3+u9/30/H0ubndx8jO0+72r3n2fJvP9hvjNu9G93x2f78555xz
+zjnnnL/j1efdvjpudr6n9zWr5/T75pxzzjnnnPO/6lm/bL7ZuGX9mXfrPl3v
+7Ppuq+ut9Y3tma+OP+1RdPf5tnj6e9/tu+7h2fqjfrd8t7t+126r6ymvRvce
+3HW+qvVUz3/2/Cu/z5xzzjnnnHP+Kz7G2L87rupZ3DLf0/tdre+2c8M555xz
+zjnnv+5jexSr83TzVPtn9UTzrM7/q346/1OeRXfc7Dmr5ln1XfPeHk/t32q+
+Xeeuer5u+97evq9mz/8t61j1MarnZfa73/X/QHe91fycc84555xzzp/1qF91
+nmi+WX9qvt15nn4/3Xy783POOeecc84573nUL+vfba8+R5H1y+qP/PT+7/Lq
+/kd+yzpOexTVc7z7nK6OX813Op5e7+r3kcXq/Znl/2s+Rvd3h//3czS+e25v
+Wy/nnHPOOeec8//26Hm13y5/Kn8Wu+qO/kb9Zn1XnZxzzjnnnHPO7/SxfYys
+fzT+9Lq+4tn+j3G63lt9jNlzW23P+p3y03HbfnTvp2o/3vPT+TnnnHPOOeec
+8y/7GFm/6rjdnvV7Ks/qfNX9fNu7dZ6ul3POOeecc845/7Jnz/y/PXqOxp+u
+t+q3xS37suuc8JrPnsuvfW+cc84555xzzvmbPkY0Lut32p+ab3ee295/91xk
+/W9bB+ecc84555xz/oZH7VFUx92yvtv9ljpW/anI8q2e89O+ui7+3/2qccs6
+OOecc84555zzNzzqN7ZXx2X9n/bsebdn8fQ6s/f2tM/Wkz1zzjnnnHPOOed/
+wbOI+t22jq/6GLfUt3tdWazuy+w4/i3P4rZ6Oeecc84555zzNz2KqP2rXl3/
+Ls/i6XVGf6N+t3oWt9XLOeecc84555y/6VncVi/f41F7N7JxUXu1nu45vmV/
+ec3H9ihuqZdzzjnnnHPOOT/hWb9q/+q4t3xsz9b/VP6srl3efT+nffcz55xz
+zjnnnHP+Fz2KaPzpevmcj+1Vnx23e76xffe5z8bvzv9rXt23KLr3U5aHc845
+55xzzjn/Jc/6ddtv8bE9W/9T+bO6dnn2Pm87d9V1zp5bzjnnnHPOOef8l3yM
+rF91fDTfLeu+1Wf7jTH7/qLYfR6ifrvXc/t3ddv5e+scR3HbOjjnnHPOOeec
+8ze92y8bP1tPN99uz2J1f3bl73q13uq4t33XuO58s3k555xzzjnnnPNf8jGy
+9rfqestn+43xtGdRnW92PbvXsTrf+L5OfSfVumbH78qX9e+eu+75WP3+OOec
+c84555zzL/kYWb+xPesXPd/m3f2pzpeNi+aZXc/s+/vqeRz7Zc/d/eGcc845
+55xzzr/oY3s2PurXbe/W9fY+RfVW64rG7/an8u+a7+n9eCrPW99ht18Uq3V3
+n1fvh9n75/R9yTnnnHPOOeecv+FRv2jcGNV5s3G7PepXXU81X3W9u+rqPs+u
+522v1hU9d8dxzjnnnHPOOee/6GN7Nn5szzzqN5tndl1ZHavzZ3m6vnu+t/Nk
++/90vrfyVPtX96N6Tqv5unl21VH1an7OOeecc8455/wv+tieje+2V/NW5+l6
+dV92zVuNrI5unm590fvYdb6iqObN6s7qyPJyzjnnnHPOOed/0WfHd6M7b9Wz
+uqp5quuszlPtP+tv59m1P0/5U3l2n6/qPN3vdjZvN6r1cc4555xzzjnnfJ9H
+7dX+1XzRc+bVOqp1d/NUo7o/0XO1X3UfuuciqmPX+N35OOecc84555xznnvU
+3o1ovmzerJ5o/Oq41Xl2+1t5Zt//6f156lzuyrOaf3bfs/HV/tX3e8u9xTnn
+nHPOOeecv+lR+xiRV9uzmK2jW2+2/ixPlr87766o1jU+V89Hd/6uV9/XalTX
+Va2vOo5zzjnnnHPOOf+yV8dFUe1XzZ/NG9X7dHT3abau1f2oerf9q+vM/PQ5
+u2W9Y3u1XzaOc84555xzzjn/yx5FNr7bHs3bbc/6rY4f27P1no5d76Wap+rd
+ftX6uu+l+x3c9n1yzjnnnHPOOec3+BjZuO74t3w1onXeut5qXd3z8VRdt+7j
+2F5971l0v7+3vNp+y/3EOeecc84555yf8KxfFFn/at6of1ZHNs/s/F2f7fdW
+dN9rNH523tV9Xp2/eu5n8932PXPOOeecc8455ye8Ou503dX2LLJxs+27/fT5
+6Na76lFdWX2r53U172wdq+9jtf2Wc8Y555xzzjnnnH/Rx+j2y/Ktjq+Oq9bb
+9ep+3B6r56Drs+818tn53zrnnHPOOeecc875X/aofYxsXBar9VTzra632281
+7+lzMMZXvNoe9aueq93nvFsP55xzzjnnnHPO3/dqvFXf2/lO7+vuiOr4ikf9
+3jp31fxv18c555xzzjnnnPPcq+OqMc7Tzbc6/9d8jL/mUfvq+enO1x3HOeec
+c84555zz53yMqP103dnz23WMUd3fp2N2f7J5Zj2qo9p+6r1m+3ZL3Zxzzjnn
+nHPO+V/0MaJx3ecsT9T/ln05/T6yff5177Zn+7w6nnPOOeecc8455/f6GLfV
+d4tH7aejWif/7/bb6uOcc84555xzzvn/+mx7FNX2W9b/lo/R3ads3Fc9Ow/V
+ePu74JxzzjnnnHPO+X2+2v4Vf2q+sV83xvl31509f9VX2znnnHPOOeecc37e
+d80XPUeR9YvqPL1fq96N7rhq3q97FN33Us1/+txwzjnnnHPOOed83aPI2qP5
+o3HVurL+2fhdHuXttmfjVut6a/2z5yHrN5snG8c555xzzjnnnPN7PWofI+qf
+jYvilvXv9jGe2pdq3u77estn9yWbb/Z9VL8LzjnnnHPOOeec86/62J559lyN
+rL7Vddyyv5xzzjnnnHPOOedVj9rH6I7L5omimv+0R/VW17e7jm6/aNzsfNV8
+3XMXjVvdn+yZc84555xzzjnn/HYf26u+Om52vqfWfcv74JxzzjnnnHPOOY88
+ap/tV22fjW6dVc/6ze5Pdfxuj55X61mdZ3c9nHPOOeecc84551/zKKrzZPNl
+ebvzZdGtI/ob9YvmrdZ7+n1zzjnnnHPOOeec7/bquDG680TzVeeJxkXz7PLT
+72f0LLJx1flX3xfnnHPOOeecc875VzzqN7ZH42Y9i1vmO/Ue3s7POeecc845
+55xzvtuj9jFW82bzR/1u3R/OOeecc84555xz/htefd7tT823O8/T7yGr5/T5
+4JxzzjnnnHPOOefP+On8nHPOOeecc84557znUb+xPRq329/O81b+297z2/k5
+55xzzjnnnHPO+Zqfzs8555xzzjnnnHPO/+1RRO23eHU9Xc9iV93R36jfW57F
+bfVyzjnnnHPOOeec/3U/nZ9zzjnnnHPOOeec13xsP+Wn6s1i13pmx91yLm6p
+i3POOeecc8455/yv++n8nHPOOeecc84557/qY3s3ovGn/Jb8UbxV1y3nazaq
+7/eW9XHOOeecc84555x/1U/n55xzzjnnnHPOOf81j/pF47LxWb+3/VT+LN5e
+5y3nrlrf2J49c84555xzzjnnnPM1P52fc84555xzzjnn/GtebY/6f9Wzfm/n
+fypPtq7bzuPs+R1j9pzftj7OOeecc84555zzW/x0fs4555xzzjnnnPOveHVc
+FNk8Uf/TvrvfrGdxav2z5+Qtr8bs+zi9Ps4555xzzjnnnPNb/XR+zjnnnHPO
+Oeec86/72D72i55v9+p+vFVXFk+vf3bcbV6tu9qPc84555xzzjnnnP/bT+fn
+nHPOOeecc845f9uzflHM9ovGZflPedTefX6qriieyl99T6fP9ew6u/u969xw
+zjnnnHPOOeec/7qfzs8555xzzjnnnHN+2scY+63OU60rG3/KZ9c767tjtq5s
+3VG/W851dX9X17s6D+ecc84555xzzvmv+un8nHPOOeecc84552/7rvFdr+bZ
+lW/Wu/12raNaTzVvNX83bzTv6XM9u85Zf/u745xzzjnnnHPOOf+an87POeec
+c84555xzfot3x0f9snmr/ar9Zz3L361vdT+yOqP53l5fNX92TnZ5lq+6P6vn
+87bvmXPOOeecc8455/y0n87POeecc84555xzfrtH/aJx2fju/LPzZb6at7oP
+2TzVOqP5nsq76311z121jtn3Fc2/ax8455xzzjnnnHPO+R35Oeecc84555xz
+zt/21efq/GNE46J+2byZZ/mqPrve6ryr8+3az26eaJ93nceur65zHNete9d5
+4pxzzjnnnHPOOf8VP52fc84555xzzjnnfNWrz5ln/bJx1fan1zFbR3fe7D1l
+ear1zI6b3cfZdc3ua7e+bp3d6Na5+h1X5+ecc84555xzzjn/mp/OzznnnHPO
+Oeecc77q0XPmWXTnz/Ks1ltdx+q8u8dX9+fp6NbZPY9ZvlnfNe9T53PX95XN
+zznnnHPOOeecc/41P52fc84555xzzjnnfNWjftG42ajmr9YXzZ+1d/2pebN+
+X4nqOVnd/93zZs/V9zJ7Truxez2cc84555xzzjnnt/vp/JxzzjnnnHPOOedv
+eXVc9pz5bN7uOqI6d/vu8bfH2/tT9d3zrp73qF83bzUf55xzzjnnnHPO+df8
+dH7OOeecc84555zzVY/6dfu/5d16d+9TFFmdq357PLX+7nvZvd+3fAdRv1vq
+45xzzjnnnHPOOd/tp/NzzjnnnHPOOeecr/oYt9WXebaO0/XN+leieo5u9+z7
+uO18dL/n2+rmnHPOOeecc845z/x0fs4555xzzjnnnPOnvBvZuNPrmV1vNG42
+unXuyrsaUR2nz1U27pZzV61rNm5ZD+ecc84555xzzvkuP52fc84555xzzjnn
+/G3P+nX7/3VfnW93VN/r0+v6dV995pxzzjnnnHPOOf91P52fc84555xzzjnn
+/BaPnsfozvNVH2PXfnbzVGOsZ/d6np7vtHf7jXHbejjnnHPOOeecc85P++n8
+nHPOOeecc84551/xqL0b3XzVvNX+u/cniqzO7rgsqvvWnf+t81QdH/WfHf/0
+OM4555xzzjnnnPO/6qfzc84555xzzjnnnPNveNRvbI/GRZHlq0a37qrvno9z
+zjnnnHPOOeec/w0/nZ9zzjnnnHPOOeec3+VRv7E9Gpf56rjZ+Z7ep9X5OOec
+c84555xzzvlv+en8nHPOOeecc8455/yMR/3G9mjcrK+Om53v1L4+lYdzzjnn
+nHPOOeec3+2n83POOeecc84555zzZ32MqH91XNWfmm93nqffQ7cOzjnnnHPO
+Oeecc/4bfjo/55xzzjnnnHPOOe95NaJ5svl2+VPz7c5z6n1m9UVx+vxxzjnn
+nHPOOeec85qfzs8555xzzjnnnHPO/+1ZvzGi9qc9i6/mOfX+s3qyZ84555xz
+zjnnnHN+h5/OzznnnHPOOeecc/5XPItxfHX+LM9b/nSeLJ6q+5ZzFLXvOm+c
+c84555xzzjnnfK+fzs8555xzzjnnnHP+1zxqz+aJ+p/y7Hm3Z/H0Oqvv8W3P
+6ozitnVwzjnnnHPOOeec/5qfzs8555xzzjnnnHP+VR8j6l8dd7tn/d7O/1Se
+bF2nz91TPrZHfku9nHPOOeecc84557f76fycc84555xzzjnnt/sYs+Or8532
+0/mzuqI4Xe/pc1r1MXad31vWxznnnHPOOeecc36Ln87POeecc84555xzfrtH
+/Vbnj/Lc6rfkj+Ktuk6fx93nbvacv1Uv55xzzjnnnHPO+Vf9dH7OOeecc845
+55zz015tjyLKk/W71cf2W9aXxVt1ZefqlnM9+x2M/brts98Z55xzzjnnnHPO
++a/56fycc84555xzzjnnb3vUr9s/iqj9a346fzdu2ZfbzvvsOR77Z8+r3xHn
+nHPOOeecc875r/np/JxzzjnnnHPOOedv++7xY3zVo36n66rGLXWN5+f0eV/1
+MU59d5xzzjnnnHPOOedf89P5Oeecc84555xzznd51J49j94dn4271bN+1X19
+y7N4q65d5+wrPsbs+qM81Xy37AfnnHPOOeecc8551U/n55xzzjnnnHPOOa96
+1G9sH6M7X3V8tf/XPOt3S11v5589R1/3qL3bvzrf2J49c84555xzzjnnnN/q
+p/NzzjnnnHPOOeecz/oYUftb46vz3OrjOm+pqxpv1VU9R9l+3uZRPPVdVOft
+5uecc84555xzzjm/xU/n55xzzjnnnHPOOa969NydN+oXzZc9d+v7ilfX9Vb+
+bPxT+Xefv9s9i9Xvc7aO2/aJc84555xzzjnnPPPT+TnnnHPOOeecc85nfYzq
++O581eeverYP3f7VfZqtozruqfdbnW/0W76bXd9Z9TnrV/1eo/lu2SfOOeec
+c84555zz0U/n55xzzjnnnHPOOV/1MbLx0XzVeVbzZ96dP/MoX3V9u/ctmj/r
+n8Wuc7JrXPW9P/V9dMed+i6q4267dzjnnHPOOeecc84zP52fc84555xzzjnn
+/Gkf26uRjY/yVsdn+ap5d3l1H7P1rOarxmw9s/VV+1X3bbdndVf7d99793xn
+7afvC84555xzzjnnnPNdfjo/55xzzjnnnHPOedXHiDxqr+bN5s3mq9bR7Zfl
+W/Vund19m82XzfdU3tV+2f50vdterTMbF0V137vrq+Y5fR9xzjnnnHPOOeec
+Z346P+ecc84555xzzv+uRxG1d311XBbV9a7WU92/XfNm+cZ+1XVX83fHz+53
+1t7dh8h3fTdZfVXP5p99n1HM1rO6P1k+zjnnnHPOOeec86f9dH7OOeecc845
+55z/XR8j6h+Nq84bzd+db3VcVudTvmt8d3+y95nVsRqz+zB7vrvfQVbH0179
+3mbfexTd9u65ml0P55xzzjnnnHPO+W4/nZ9zzjnnnHPOOee/79nz6FH/zKN5
+s3m6/aI6dq1jdn9n562Oj6I67+2RnYOsX3d8198+f7u/i9l9ydqr80fznL4f
+Oeecc84555xz/rt+Oj/nnHPOOeecc87/ru+OLM9sfVG90fhu+y7P9nU1X3f8
+V6J7fqPxXX/7fGTPu87Xrny74/R9xznnnHPOOeec87/np/NzzjnnnHPOOef8
+73r0nPWL+kexWvfT+xHVe9p3zfu1uGXfvlbH6j1Qzft2fZxzzjnnnHPOOeez
+fjo/55xzzjnnnHPOeRTdcU/Vd/s+RZHt01P+a3HLPp6qo+qnzn32nb5VH+ec
+c84555xzzvnop/NzzjnnnHPOOeecj+1RRPM8XV/kt+zfrf6ViOrm//a3zlPW
+L6szar/l++Ccc84555xzzvnv++n8nHPOOeecc84555mP7VHcVvfoWf1jnN7v
+sd+u+W6L7vqqz295FN113Oqz98TpujnnnHPOOeecc85P5+ecc84555xzzjnP
+vBq31f1XPHpf0bjTEdWf1XvLfv8Vj6J67m5bD+ecc84555xzzv+en87POeec
+c84555xzHnnUHj1X53+67l/xMU7lqUZ2fmbrO70/v+LdflH/6nu4bf2cc845
+55xzzjn/e346P+ecc84555xzzvkuH9vHftFz1P/0enb7GLvyVOdfHZdFdh6q
++5LNO+vRvLvz3OKz31m1H+ecc84555xzzvm9/v8ALjYi4Q==
+ "], {{0, 0}, {401, 401}}, {0, 1}],
+ Frame->Automatic,
+ FrameLabel->{None, None},
+ FrameTicks->{{None, None}, {None, None}},
+ GridLinesStyle->Directive[
+ GrayLevel[0.5, 0.4]],
+ Method->{
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" ->
+ Automatic}]], "Output",
+ CellChangeTimes->{3.6641621075311346`*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "2"], "+", "1"}]}], "]"}], ",", "2", ",", "201",
+ ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555613597739*^9}, {3.659556133025359*^9,
+ 3.659556138135767*^9}, {3.659556178511237*^9, 3.6595561786634045`*^9}, {
+ 3.6595564436249084`*^9, 3.659556460417568*^9}}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzt2MEJwCAQRcGFVJJK0kNKEHK2znRjCSLRi6QAhXmwsEwJ/0z5fo6IePu1
+/6tc8RvnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc845
+55zzvVySJEmSJEnaubF7zfsX55xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeec
+c84555xzzjnnnHPOOeec89W9Algh3kA=
+ "], {{0, 0}, {201, 201}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"",
+ RowBox[{"-", "\[ImaginaryI]"}], "\[ImaginaryI]"}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle ->
+ RGBColor[0., 0.6666666666666667, 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{
+ 3.6595561427769833`*^9, 3.659556184448927*^9, {3.6595564465319443`*^9,
+ 3.6595564731067934`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ SuperscriptBox["x", "2"], "-", "1"}]}], "]"}], ",", "2", ",", "201",
+ ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555613597739*^9}, {3.65955606434665*^9,
+ 3.659556065221777*^9}, {3.659556100512431*^9, 3.659556120459993*^9}, {
+ 3.6595564492510743`*^9, 3.659556464637117*^9}}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzt1sFJZVEQBNAPRmIkk4MhCK6Nc7KZEAZRN4XQlKtuOAUPHqf67uv59f3l
+7enxePz9+j7+P/Pvz+PHcM4555zz3/mU73f5nnPOOeecd5593nHOOeec886n
+bNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LO
+OeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37d
+s887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjn
+nHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeed
+T9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7k
+nHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8
+umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5x
+zjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPO
+O5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYd
+yDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO
++XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu8
+45xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnn
+nHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQt
+O5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnn
+nPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2
+ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xz
+zjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMp
+W3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxz
+zjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/3
+7POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO845
+55xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnn
+U7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM5
+55xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/
+7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ec
+c84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zz
+zqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUH
+cs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xz
+ft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7v
+OOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845
+551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXL
+DuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc845
+5/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz6559
+3nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeec
+c847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zK
+lh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOec
+c875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9
++7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPO
+Oeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975
+lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDO
+Oeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86v
+e/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3n
+nHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee8
+8ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmB
+nHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeec
+X/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887
+zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPO
+eedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9my
+AznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPO
+Ob/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umef
+d5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnn
+nPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+y
+ZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnn
+nHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXP
+Pu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xz
+zjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+
+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bz
+zjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPr
+nn3ecc4555zzzqds2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc5
+55xzzjufsmUHcs4555xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnv
+fMqWHcg555xzft2zzzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg
+55xzzvl1zz7vOOecc85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn
+1z37vOOcc845551P2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POO
+c84555x3PmXLDuScc845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz
+3vmULTuQc8455/y6Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bs
+QM4555zz65593nHOOeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xz
+zq979nnHOeecc847n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnn
+Heecc84573zKlh3IOeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc845
+57zzKVt2IOecc875dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds
+2YGcc84559c9+7zjnHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs45
+55xf9+zzjnPOOeecdz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2z
+zzvOOeecc975lC07kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOec
+c85551O27EDOOeec8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P
+2bIDOeecc86ve/Z5xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuSc
+c845v+7Z5x3nnHPOOe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6
+Z593nHPOOee88ylbdiDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHO
+Oeec886nbNmBnHPOOefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847
+n7JlB3LOOeecX/fs845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3I
+Oeecc37ds887zjnnnHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875
+dc8+7zjnnHPOeedTtuxAzjnnnPPrnn3ecc4555zzzqds2YGcc84559c9+7zj
+nHPOOeedT9myAznnnHPOr3v2ecc555xzzjufsmUHcs4555xf9+zzjnPOOeec
+dz5lyw7knHPOOb/u2ecd55xzzjnvfMqWHcg555xzft2zzzvOOeecc975lC07
+kHPOOef8umefd5xzzjnnvPMpW3Yg55xzzvl1zz7vOOecc85551O27EDOOeec
+8+uefd5xzjnnnPPOp2zZgZxzzjnn1z37vOOcc845551P2bIDOeecc86ve/Z5
+xznnnHPOO5+yZQdyzjnnnF/37POOc84555x3PmXLDuScc845v+7Z5x3nnHPO
+Oe98ypYdyDnnnHN+3bPPO84555xz3vmULTuQc8455/y6Z593nHPOOee88ylb
+diDnnHPO+XXPPu8455xzznnnU7bsQM4555zz65593nHOOeec886nbNmBnHPO
+OefXPfu845xzzjnnnU/ZsgM555xzzq979nnHOeecc847n7JlB3LOOeecX/fs
+845zzjnnnHc+ZcsO5Jxzzjm/7tnnHeecc84573zKlh3IOeecc37ds887zjnn
+nHPe+ZQtO5Bzzjnn/Lpnn3ecc84557zzKVt2IOecc875dc8+7zjnnHPOeedT
+tuxAzjnnnPO7/h+Twt5A
+ "], {{0, 0}, {201, 201}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"",
+ RowBox[{"-", "1"}], "1"}, "SwatchLegend", DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle ->
+ RGBColor[0., 0.6666666666666667, 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{{3.6595561119560795`*^9, 3.6595561241792593`*^9},
+ 3.6595564518143454`*^9, 3.659556485561829*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{"x", "+", "1"}], ")"}],
+ RowBox[{"(",
+ RowBox[{"x", "-",
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"-", "0.5"}], "+",
+ RowBox[{"0.5", "I"}]}], ")"}]}], ")"}],
+ RowBox[{"(",
+ RowBox[{"x", "-",
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"-", "0.5"}], "-",
+ RowBox[{"0.5", "I"}]}], ")"}]}], ")"}]}]}], "]"}], ",", "2", ",",
+ "401", ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555613597739*^9}, {3.6595562242242994`*^9,
+ 3.659556229922743*^9}, {3.6595562733917246`*^9, 3.6595562737355576`*^9}, {
+ 3.6595563138893795`*^9, 3.6595563587354765`*^9}, {3.659556405332657*^9,
+ 3.6595564061608486`*^9}, 3.664161638484193*^9}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzs1uupbbt6JdBrKhJH4hwqhIL6XbE4U4dgCrPh3sXW0nhI+rqG2oADZzc9
+epfmY81//z//73//3//1j3/84z//7X/++////z/Pf/3HP/768G/73fVP9087
+N+ecc84555xzzjnnnHPOOeecc8455ys8pQef47Pzerlp98E555xzzjnnnHPO
+Oeecc84555xzzvkKT+nB3/nbce8vzjnnnHPOOeecc84555xzzjnnnHPOx3lK
+D77WR+37NDftPjjnnHPOOeecc84555xzzjnnnHPOOR/pKT04/+1J68U555xz
+zjnnnHPOOeecc84555xzzvlvntKD8xFenc8555xzzjnnnHPOOeecc84555xz
+znlSD85nenU+55xzzjnnnHPOOeecc84555xzzjk/y1N6cF7h1fmcc84555xz
+zjnnnHPOOeecc8455/ybntKD8xH+dH3aOTjnnHPOOeecc84555xzzjnnnHPO
++d6e0oPzJK/O55xzzjnnnHPOOeecc84555xzzjnne3tKD86TvDqfc84555xz
+zjnnnHPOOeecc84555zv7Sk9ON/Bq/M555xzzjnnnHPOOeecc84555xzzvke
+ntKD8xHeGp+9P+ecc84555xzzjnnnHPOOeecc84554k9+Nle1eNpz7T745xz
+zjnnnHPOOeecc84555xzzjnnWZ7Sg5/hb8dXeXo/zjnnnHPOOeecc84555xz
+zjnnnHOe7Sk9+Nme0uOP93pW9+Occ84555xzzjnnnHPOOeecc84559me0oOf
+7Sk9/nivZ3U/zjnnnHPOOeecc84555xzzjnnnHOe7Sk9+Nnemnd3/mhPuyfO
+Oeecc84555xzzjnnnHPOOeecc76Hp/TgfAevzuecc84555xzzjnnnHPOOeec
+c84553t4Sg/Od/DevLS+nHPOOeecc84555xzzjnnnHPOOee8xlN6cL6z9+al
+9eWcc84555xzzjnnnHPOOeecc84553M9pQfnJ3l1Puecc84555xzzjnnnHPO
+Oeecc845n+spPTj/ovfmpfXlnHPOOeecc84555xzzjnnnHPOOedjPKUH57w+
+n3POOeecc84555xzzjnnnHPOOeecj/GUHpzztlfnc84555xzzjnnnHPOOeec
+c84555zze57Sg/OT/On6tHNwzjnnnHPOOeecc84555xzzjnnnPO/e0oPzvl9
+r87nnHPOOeecc84555xzzjnnnHPOOed/95QenPNxXp3POeecc84555xzzjnn
+nHPOOeecc366p/TgnI/z6nzOOeecc84555xzzjnnnHPOOeec89M9pQfn/P76
+3j5p5+Occ84555xzzjnnnHPOOeecc845P8VTenDO76/v7ZN2Ps4555xzzjnn
+nHPOOeecc84555zzUzylB+e87b15aX0555xzzjnnnHPOOeecc84555xzzk/3
+lB58jvfmeZ9806vzOeecc84555xzzjnnnHPOOeecc85P95QefK2P2i/tXDwj
+n3POOeecc84555xzzjnnnHPOOef8dE/pwTO8Nd6bfzUv7byneXU+55xzzjnn
+nHPOOeecc84555xzzvkpntKDZ3hKjz8++lynfC5689L6cs4555xzzjnnnHPO
+Oeecc84555x/zVN6nOqj9uvtPypnF797P6d8LqrzOeecc84555xzzjnnnHPO
+Oeecc85P8ZQe/Pcnrd/XvTp/llfnc84555xzzjnnnHPOOeecc84555yf4ik9
+TvWUHvyaV+df9d68tL6cc84555xzzjnnnHPOOeecc84551/zlB67+dUnrTef
+49X5V706n3POOeecc84555xzzjnnnHPOOef8FE/psZun9OB7eMrnrjqfc845
+55xzzjnnnHPOOeecc8455/wUT+mxm6f04Ht69fu2+vycc84555xzzjnnnHPO
+Oeecc84551/3lB6pntKDf8ur81tPWi/OOeecc84555xzzjnnnHPOOeec8109
+pUeqp/TgZ/iq93P1OTnnnHPOOeecc84555xzzjnnnHPOv+4pPao9pQfnf/PR
+7/Pq83DOOeecc84555xzzjnnnHPOOeecf91Teoz2u+t6+zztwfkIr/pccM45
+55xzzjnnnHPOOeecc84555zzZ57S46nPzunlzs7n/DdP+7xwzjnnnHPOOeec
+c84555xzzjnnnPOsHq2num+v59Nxzkf4089XdW/OOeecc84555xzzjnnnHPO
+Oeec8697So+U/Ku9evNW9eJn+1c+X5xzzjnnnHPOOeecc84555xzzjnnX/OU
+Hq2nuu+qc3E+0nvvw+p+nHPOOeecc84555xzzjnnnHPOOedf96oeqb1W39vo
+Xpz/Nr66B+ecc84555xzzjnnnHPOOeecc875qZ7So+dp+avyRu/Lz/KUHpxz
+zjnnnHPOOeecc84555xzzjnnp3lKj6c+e7/qc63K43t66ueIc84555xzzjnn
+nHPOOeecc8455/x0T+nx1HvzTjsv39ur8696dT7nnHPOOeecc84555xzzjnn
+nHPOebqn9Oj53fVp/avugdd6df4sf7o+7Rycc84555xzzjnnnHPOOeecc845
+57M8pQd/5yk9vuZXPy935/OMfM4555xzzjnnnHPOOeecc84555zzWZ7Sg7/z
+u+tW9Zmd9/Zco/bha7w6n3POOeecc84555xzzjnnnHPOOef8qqf04O981H67
+9E+7f17r1fmcc84555xzzjnnnHPOOeecc8455z89pQef43fX6ckT/O54b97d
+/TnnnHPOOeecc84555xzzjnnnHPO33pKD77WW/PSenK+0nvz0vpyzjnnnHPO
+Oeecc84555xzzjnnPNdTenDO+W5enc8555xzzjnnnHPOOeecc84555zzXE/p
+wTnn1f50fdo5OOecc84555xzzjnnnHPOOeecc17vKT0453yVvx3/46NzOeec
+c84555xzzjnnnHPOOeecc/4dT+nBOec8K59zzjnnnHPOOeecc84555xzzjnn
+zz2lB+ec82tenc8555xzzjnnnHPOOeecc84555zzvqf04Jxz/s6r8znnnHPO
+Oeecc84555xzzjnnnHOe14Nzzk/1p+vTzsE555xzzjnnnHPOOeecc84555zz
+vB6cc/51fzvue51zzjnnnHPOOeecc84555xzzjnfx1N6cM45//35M2/0/mnn
+5pxzzjnnnHPOOeecc84555xzzr/gKT0455xne3U+55xzzjnnnHPOOeecc845
+55xzvpOn9OCcc76nV+dzzjnnnHPOOeecc84555xzzjnniZ7Sg3POebb35qX1
+5ZxzzjnnnHPOOeecc84555xzzis9pQfnnPNveXU+55xzzjnnnHPOOeecc845
+55xzXukpPTjnnH/Lq/M555xzzjnnnHPOOeecc84555zzSk/pwTnnPMNb857u
+k3Y+zjnnnHPOOeecc84555xzzjnnfIWn9OCccz7H3477e8I555xzzjnnnHPO
+Oeecc84555zf95QenHPO1/qqvLRzc84555xzzjnnnHPOOeecc8455ys8pQfn
+nPMMH71v2vk455xzzjnnnHPOOeecc84555zzFZ7Sg3PO+Rlenc8555xzzjnn
+nHPOOeecc84555yv8JQenHPOz/DevLS+nHPOOeecc84555xzzjnnnHPO+RNP
+6cE55/xs781L68s555xzzjnnnHPOOeecc84555z/5ik9OOec89+etF6cc845
+55xzzjnnnHPOOeecc875b57Sg3POOb/y+DvGOeecc84555xzzjnnnHPOOed8
+B0/pwTnnnN/x6nzOOeecc84555xzzjnnnHPOOef8N0/pwTnnnI/w6nzOOeec
+c84555xzzjnnnHPOOec8qQfnnHN+5fkzrzc/7Rycc84555xzzjnnnHPOOeec
+c87P8pQenHPO+R3vzUvryznnnHPOOeecc84555xzzjnn/CxP6cE556d6b57v
+7Xtenc8555xzzjnnnHPOOeecc84555wn9eCcc/5uXVr/NK/O55xzzjnnnHPO
+Oeecc84555xzfpan9OCcc37NR+07uk/K35fUXpxzzjnnnHPOOeecc84555xz
+zs/ylB6cc76br16X7ul/X6rzOeecc84555xzzjnnnHPOOeecn+UpPTjn/Cue
+0iPVq++/+vycc84555xzzjnnnHPOOeecc87P8JQenHO+m6f02M2rX6/q83PO
+Oeecc84555xzzjnnnHPOOT/DU3pwznm1vx3nc3zV68s555xzzjnnnHPOOeec
+c84555yP9JQenHNe7Sk9+L/6qte9+pycc84555xzzjnnnHPOOeecc86/5Sk9
+OOe82lN68Gv+9PWt7s0555xzzjnnnHPOOeecc8455/wMT+nBOeejffU6vta9
+rpxzzjnnnHPOOeecc84555xzzpM9pQfnnD/1Ufv19h+Vw+f67PcJ55xzzjnn
+nHPOOeecc84555xzfsVTenDOec9n5zztM7sXv+dV7x/OOeecc84555xzzjnn
+nHPOOec8sQfnnLeeVd9bo3vyTE/pwTnnnHPOOeecc84555xzzjnn/Nue0oNz
+zp/6qP1G547qxcd6Sg/OOeecc84555xzzjnnnHPOOeff9pQenHM+2lvjVbmz
+8k710a9Xa171OTnnnHPOOeecc84555xzzjnnnO/pKT0457znd8dT+1f3SPXq
+/Ldenc8555xzzjnnnHPOOeecc8455zzLU3pwzjl/5yk9/nh1/ixvzXu6T9r5
+OOecc84555xzzjnnnHPOOeecj/GUHpxzfqrfXbcq9+d42r191avzOeecc845
+55xzzjnnnHPOOeecj/GUHpxzfqrfXbeqz895afd2mvfmpfXlnHPOOeecc845
+55xzzjnnnPPTPaUH55xzzsd5dT7nnHPOOeecc84555xzzjnnnJ/uKT0455xz
+3va763v7pJ2Pc84555xzzjnnnHPOOeecc86/5ik9OOecc17nvXlpfTnnnHPO
+Oeecc84555xzzjnnPN1TenDOOed8H6/O55xzzjnnnHPOOeecc84555zzdE/p
+wTnnnPM6f7o+7Rycc84555xzzjnnnHPOOeecc57iKT0455xzXueteU/3STsf
+55xzzjnnnHPOOeecc84555yv9pQenHPOOf+u9+al9eWcc84555xzzjnnnHPO
+Oeec87ee0oNzzjnnPCWfc84555xzzjnnnHPOOeecc87fekoPzjnnnPOUfM45
+55xzzjnnnHPOOeecc845f+spPTjnnHP+XW/N681POwfnnHPOOeecc84555xz
+zjnnnF/1lB6cc845399H75t2Ps4555xzzjnnnHPOOeecc845v+opPTjnnHO+
+v78d9zuFc84555xzzjnnnHPOOeecc/4VT+nBOeecc97z6nzOOeecc84555xz
+zjnnnHPOOb/qKT0455xzzp96dT7nnHPOOeecc84555xzzjnnnP/0lB6cc845
+56O9Op9zzjnnnHPOOeecc84555xzfq6n9OCcc845H+3V+ZxzzjnnnHPOOeec
+c84555zzcz2lB+ecc875Kq/O55xzzjnnnHPOOeecc84555x/31N6cM4555yP
+9t68tL6cc84555xzzjnnnHPOOeec8+94Sg/OOeec13lv3td+P1Tnc84555xz
+zjnnnHPOOeecc86/7yk9OOecc57nd8fv7pN6Ls4555xzzjnnnHPOOeecc845
+f+spPTjnnHM+zlvjvfmje/R8l3vjnHPOOeecc84555xzzjnnnPO7ntKDc845
+5+M8pcdoX3Vv1efknHPOOeecc84555xzzjnnnO/vKT0455xzft9TelT76Pus
+Pg/nnHPOOeecc84555xzzjnnfH9P6cE555zz+57SI9Wf3md1b84555xzzjnn
+nHPOOeecc875/p7Sg3POOedtT+mxmz+95+renHPOOeecc84555xzzjnnnPP9
+PaUH55xzzu+v6+3ztMfXfdT9c84555xzzjnnnHPOOeecc855y1N6cM455yf5
+qP16+4/K+ZrPfl0455xzzjnnnHPOOeecc8455zylB+ecc36Sj9rvae6o/F19
+9uvCOeecc84555xzzjnnnHPOOecpPTjnnHPenleVu4uvup/qc3LOOeecc845
+55xzzjnnnHPO9/GUHpxzzjnf35+uP+V3S3U+55xzzjnnnHPOOeecc84553yd
+p/TgnHPOeZ3fXTdq/7R7SPPqfM4555xzzjnnnHPOOeecc875c0/pwTnnnHPO
+f3/8juOcc84555xzzjnnnHPOOec811N6cM4555zzNV6dzznnnHPOOeecc845
+55yf6KP2Hb0f5/y9p/TgnHPOOeeZXp3POeecc84555xzzjnnnCd6a15r3age
+d9dX3VdvXsrryPkbT+nBOeecc86zvTWvNz/tHJxzzjnnnHPOOeecc8738FH7
+VuVWeWs8refo8/6cN+r9wL/ts96Ho/fnnHPOOef8ilfnc84555xzzjnnnHPO
+Oa/x2Xl316fcC1/rvSetL7/nVd8nLU+5F84555xzfrZX53POOeecc84555xz
+zjkf47PzRu2bcl98T6/OP919z3DOOeec85P96fq0c3DOOeecc84555xzzjm/
+57PzRu2bcl/8W16dn+6jPtdV3zMp98g555xzzs/2p+vTzsE555xzzjnnnHPO
+OeeneGve3f1SzsOzvTWe1nP2eb/qT+/n57yU83DOOeecc/5Fr87nnHPOOeec
+c84555zzr/nd9a0n5Tx8rffmXX2/ve1R7aPvM/X15JxzzjnnnJ/n1fmcc845
+55xzzjnnnHOe4q15rXUpvXmGvx3n73z0vb8d55xzzjnnnPOWV+dzzjnnnHPO
+Oeecc875ak/pwff0lB78mlfnc84555xzzr/vvXlpfTnnnHPOOeecc8455/yq
+t+bdnc/P9JQefI5X53POOeecc87P9ep8zjnnnHPOOeecc845v+opPfientKD
+z/HqfM4555xzzvk6v7tu9/6cc84555xzzjnnnPM6T+nR6/d2Xdq5eK2/Heff
+8up8zjnnnHPO+Tqv6jG6f9q9cs4555xzzjnnnHP+BW/Nuzs/zUftm3YuXuur
+1/E9vTqfc84555xz/txTejz1p+et7s0555xzzjnnnHPO+c7emnd3v9m9rz6r
+7i/l9eN7ekoPnuHV+ZxzzjnnnPO+p/QY7b3zVvfjnHPOOeecc8455zzJW/Na
+61J6jxpf5dX5fG9P6cHneHU+55xzzjnn/Lmn9EjxlB6cc84555xzzjnnnCd4
+So+nntKj59X5PMvfjvNveXU+55xzzjnnvO+r1+3qKT0455xzzjnnnHPOOV/p
+KT1Ge0qP3n2n9OLZntKDr/HqfM4555xzznn/+Tnv6n5P99/Ve+et7sc555xz
+zjnnnHPOz/bWvFH7fNVTevReh5RePMNTevA5Xp3POeecc845389Tevzx6nuo
+Pj/nnHPOOeecc845X+utea11d/Oe9nqbu7tX9Ui7B/4NT+nB33l1Puecc845
+53w/b41/NbfqXJxzzjnnnHPO+Ql+d/3sPpyvzJu17x9Puceve2s8rSffy1N6
+8DF+9fsjpS/nnHPOOee8zlvz0nru4q15vflp5+Ccc84555xzfpbPzrs7b1Vu
+yv3zsV7VY3Zeyv1We2s8rSfnvz1p/U716nzOOeecc8455zVenc8555xzzjnn
+fK6P2vfu+pTz7+a9eWl9d/G7866O73LOUfP57/PSevIzvTU+6u87/92r8znn
+nHPOOeec13hr3tN90s7HOeecc8455/zvPmrf1ryUc57qvXlpfVfdx9P35938
+9PNX9+Gcz/NR+83+nvy6r/49xjnnnHPOOef8TK/O55xzzjnnnPOv+d31rXkp
+5/m6t8Z36Znm3uecc/67z85Z1X9WXur9/xxPe19xzjnnnHPOOa/11vjd+Zxz
+zjnnnHPOf/eUHl/3t+PpfvV9NSuPc875HJ+dU32un/NGzeecc84555xzzhP8
+7fhPTzsf55xzzjnnnK/21rzWk9L7657SI9Wr8znnnP/de/Nm/W6pPq+/85xz
+zjnnnHPOed+r8znnnHPOOed8lqf0ONVTenzFq/M555yP8da8tJ5Pz3V1PK0/
+55xzzjnnnHO+0qvzOeecc84557le1SOtz2n+dpy/8+p8zjnnnHPOOeecc845
+5zVenc8555xzzjnve+/3/M95o3q8He95yv2e6ik9vuLV+ZxzzjnnnHPOOeec
+c85rvDcvrS/nnHPOOecn+8/x6h6z8tLu/TRP6fEVr87nnHPOOeecc84555xz
+nuXV+ZxzzjnnnJ/oKT1az6oeafdwmqf02M2r8znnnHPOOeecc8455/x0b42n
+9bzbn3POOeec8xM8pccqX5V3+j1//fU9xavzOeecc84555xzzjnnnP/dn64f
+Pa/no/fjnHPOOU/xVb+Lfo773ZXhP8dn/55PO/+oc931tPOe5ik9dvPqfM45
+55xzzjnnnHPOOT/dU3pc9d6/ez6qB+ecc8757N9dKecc7dX5af5zPO33f9p9
+jXq/pfXkzzylR7VX53POOeecc84555xzzvnpntJjtD+9h+renHPOOd/Pf46P
++j2Wds7q+23NS+v7tl9r3ur38ej9OZ/hrfGn3ye7enU+55xzzjnnnHPOOeec
+n+4pPar96b1V9+acc855naf02M1782bd86j9Rp037XXh/Et+d92q77erPvse
+0l4vzjnnnHPOOeecc84538VXr/u6uy/OOef8HE/pkeopPVb93uOc7+t311V/
+f/p7xDnnnHPOOeecc84553v43XW9fZ72OMVTenDOOec7+qrfRT/npZw/1VN6
+rPLqfM75ud4aT+vJOeecc84555xzzjnn/Nm63j5Pe3zFn95/a171eTjnnPMV
+/nN89L5P14/u81VP6VH9u45zzjnnnHPOOeecc84555zz354/82bvv7tX57/1
+u+tG7cM553d99vcbX+PVf+/e7ptyj9We0sPvPc4555xzzjnnnHPOOeecc87b
+ntLjj1fnz/LWeNXruMv9jPJdenJ+xWd/b6ScMyU/xXf//r+7PuXeUz2lh9+B
+nHPOOeecc84555xzzjnnnLe9NV61D3/mrXlpfVq+y7mqXq9VvXiWp/TYzVPy
+q/N2eV3Seu7iKT1Ge3U+55xzzjnnnHPOOeecc8455yO9NS+tJ9/LR+2bdq40
+r87f1VN6fN2reoz+vFzdn/MET+nh88I555xzzjnnnHPOOeecc84553P87vq0
+/qvu5+q62fvv5q3xt/c26v3c8rR7HP2+WtXj1Pvn/Mr4qu+3q7l353POOeec
+c84555xzzjnnnHPOOecjx1f76n1b657e89t9RuXe9ZTXf7Sn9Dj1/vmZ3hrf
+ZX/OOeecc84555xzzjnnnHPOOef8iqf06Hl1/q7eGk/r6X2ekc8555xzzjnn
+nHPOOeecc84555xzzsd4So+eV+fzvT2lh/c555xzzjnnnHPOOeecc84555xz
+zvkZntLjj1fn82/66nXez5xzzjnnnHPOOeecc84555xzzjnnZ3hrvDd/dI8/
+nnY//NveGq/ah3POOeecc84555xzzjnnnHPOOeec8yvjaT0555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPOOeecc84555xzzjnnnHPO
+Oeecc84555zzZG/NS+vJOeecc84555xzzjnnnHPOOeecc84557O9Na83f1av
+tPvh3/bWvKp9OOecc84555xzzjnnnHPOOeecc875t706/6en9ODf8qfrvZ85
+55xzzjnnnHPOOeecc84555xzzvkTr86/6ik9+J5ene99zjnnnHPOOeecc845
+55xzzjnnnHN+llfnX/WUHrt5a15aT+/zrB6cc84555xzzjnnnHPOOeecc845
+5/yd9+al9h2dczdvVO9d7ivtfZB2P7M9pQfnI7w1b5f9Oeecc84555xzzjnn
+nHPOOeecP/O769L6r7qfq+tn77+bX33fVb2fW55yf0+9Ny+t7279OL/jrXmr
+vt+u5t6dzznnnHPOOeecc84555xzzvmXvDWe1pPv5aP2SztXmqf02M2r80/x
+qvzRnxffS3wnr873eeGcc84555xzzjnnnHPOOee8/fyZV7UPf+at8bQ+Ld/l
+XFWv16wePNur83f1tB5p3yfV9/FzXlrPXbw6f5an9OCcc84555xzzjnnnHPO
+Oed8hFfn//SUHqO9Na/qddzlfkb5Lj05v+Kzvzeqz9d70vpVv+53961+HdN7
+7uLV+X4Hcs4555xzzjnnnHPOOeec8528NT57/909pcdTv7t+1D6cc37XZ3+/
+8TVe/ffu9L/7afe5i6f04JxzzjnnnHPOOeecc84553v63fW9fdLOt9qf3r97
+5ZxzfrK//Xs6++9oyj2lenV+yu86zjnnnHPOOeecc84555xzzn97eut7+6Sd
+L82r8znnnPOdvervdPW50706f7Wn9OCcn+eteWk9Oeecc84555xzzjnnnL9b
+n3aOFB99z5xzzjnP9er8dK/OX/17j3O+r99dX/39uboP55xzzjnnnHPOOeec
+8zVenZ/iT+9tdi/OOeec53p1/q5+d3x07tP1T/u0xtNeF86/5HfXr/p+u+qz
+7yHt9eKcc84555xzzjnnnPPTvDp/lj+9h9m9OOecc/49H/U75O0+X/W349W+
+y/uhNa/6/jj/zVvzdv2+eOopPTjnnHPOOeecc84555xf8+r8t32frh/di3PO
+Oefn+ezfXdXnm+UpPVJ89et+d13KPT311ry0nvyZV+eneEoPzjnnnHPOOeec
+c8455+989rrRPZ+u55xzzjlP9VW/i3r/frs/f+ZXX5dRv+dTzt3z2Tlp5z3N
+q/N39ZQenHPOOeecc84555xzzn9//sxL63m3P+ecc8455yd4df5qr8pJu4ev
+enX+1zylB+ecc84555xzzjnnnPNsT+nBOeecc875SV6d33pW56fdw2lenb+r
+p/TgnHPOOeecc84555xznuFvxznnnHPOOefrvPfvVT47J+W+T/Xq/K95Sg/O
+Oeecc84555xzzjnnGZ7Sg3POOeecc9723u/5n+Oj8mfnVN/r6V6d/zVP6cE5
+55xzzjnnnHPOOed8jqf04JxzzjnnnOd5VX5an9O8Ny+t79c8pQfnnHPOOeec
+c84555zza57Sg3POOeecc85He3X+6V6d/zVP6cE55/ydt8bTej49V2ve187L
+Oeecc8455/wb3pv3dL+0c3LOOeecc875Km+Nt57qvqd4dX66p/TgnHM+dvzp
+75bq875dn3YuzjnnnHPOOef8t+fPvLvzOeecc84555z/7tX5p3hvXlrfp+fr
+va9G5aedn3POv+qz86rPdfXv8d35nHPOOeecc875jp7Sg3POOeecc86/4nfX
+tcarz3GKt+bt0jPNvc855/x3n523qv+snNT79/eLc84555xzzr/prfGn+zxd
+zznnnHPOOed8rY/arzVefb7T/e341/zt+/NtXrW35qX15Jy/91H7zv6e/Lpf
+XZfWm3POOeecc875Gk/pwTnnnHPOOed8jo/a7+666nPv6m/H+e9+dbw1L/19
+3hofNZ//Pp7Wk5/prXn+rqzxlB6cc84555zz87w1ntZzF2+N9+aP7sE555xz
+zjnnnN/x2TlXx6tyq++fj/Wq/Nk51fea4q15aT05T8rnf/eUHpxzzjnnnPPv
+emveV3OrzsU555xzzjnnnJ/gd9fN7sP5P/vsnNH7/fTq+zvFW/PSevK9vDqf
+j/XWuO9tzjnnnHPOeetJ6VV9D9U9OOecc84555xzzvlab4231t/Nebrube7u
+XpWfdg/8G16dz8d4Sg/OOeecc875fX87/sffrt/Ne+et6sU555xzzjnnnHPO
++W/jo/b5qlfnX+2V1o/XenU+n+spPTjnnHPOOefj/On6tHOsuqe0Xpxzzjnn
+nHPOOeecz/Tq/FlenX+1V1o/nunV+XyNp/TgnHPOOeecv/fq/DSvzuecc845
+55xzzjnnPMmr8996df5VT+nBM7w3L60vn+spPTjnnHPOOefjvDp/lvfOW9WL
+c84555xzzjnnnPNEb4231lf37T2pfVN68D29Op/P9ZQenHPOOeec83Fenf/W
+n553di/OOeecc84555xzzr/srfG7+87u23tW32P168b39up8nuUpPTjnnHPO
+OefjvCp/dP/R+3LOOeecc84555xzztvjd+en+aj90s7Fa/3p+rRz8Lme0oNz
+zjnnnHM+3++u370/55xzzjnnnHPOOee83qvze73uru/9m5/tvXlpfflcT+nB
+Oeecc845560nrR/nnHPOOeecc84555z/8ep8vrdX5/O5ntKDc84555xzfp6/
+Heecc84555xzzjnnnPNUb43fnc/P9Op8PtdTenDOOeecc87P85QenHPOOeec
+c84555xzvsqr8/neXp3P73lKD84555xzzvl3PaUH55xzzjnnnHPOOeecV3tr
+vLW+ui/P8t68tL5f86evy6r9OOecc84559/1lB6cc84555xzzjnnnHP+Fb+7
+rvVUn4PX+N3xp/uk++j7HL3v6NeVc84555xznuOr13HOOeecc84555xzzjl/
+563xu/tWn4Pv4a15aT1nn/er/vR+fJ9wzjnnnHPe99XrOOecc84555xzzjnn
+nGf47JxR+1XfE/+mp/RI9VGf66rvmer745xzzjnn/Imn9OCcc84555xzzjnn
+nHP+zmfnjNqv+p743p7S41T3PcM555xzznn/SevHOeecc84555xzzjnnfI7P
+zrm7rvo+eI1ffdJ682te9X3S8ur74Jxzzjnne3hrvDd/dA/OOeecc84555xz
+zjnnZ/io/apyq7w1L63n6PP+HB/1fuDf9lmfu7e9OOecc845T+rBOeecc845
+55xzzjnnnCd5a7y1flT+3XVV9/R2nPMdvDqfc84555zv4Sk9OOecc84555xz
+zjnnnPOTfNR+o/pwzsd7dT7nnHPOOX/mb8c555xzzjnnnHPOOeecc8455+u9
+Op9zzjnnOX53/aj90+4hzVN6cM4555xzzjnnnHPOOeecc87ve3U+55xzzr/j
+s9elnffpOat7cM4555xzzjnnnHPOOeecc87ne3U+55xzzvvjVbm7+Kr7WZXH
+Oeecc84555xzzjnnnHPOOd/fq/M555zzE33Uvk9z0+5jtc9+XTjnnHPOOeec
+c84555xzzjnnvDqfc845P9FH7dvbP+3cKT77deGcc84555xzzjnnnHPOOeec
+8+p8zjnnnLefp3/HR/f6mo+6f84555xzzjnnnHPOOeecc845b3l1Puecc877
+Xp2/qz+959m9OOecc84555xzzjnnnHPOOeff9+p8zjnnnD/36vx0f3qfs3tx
+zjnnnHPOOeecc84555xzzr/v1fmcc845f+7V+Sk++j5H78s555xzzjnnnHPO
+Oeecc845P8+r8znnnHM+3qvzZ/mqe1uVxznnnHPOOeecc84555xzzjn/rlfn
+c84553y8t+b15q/uu8u9cc4555xzzjnnnHPOOeecc875Xa/O55xzznmu9+b1
+/t3bJ/VcnHPOOeecc84555xzzjnnnHP+1qvzOeecc17vd8fT+j89b3UPzjnn
+nHPOOeecc84555xzzvl3vTqfc84553yWvx3nnHPOOeecc84555xzzjnnnPOn
+Xp3POeecc77aU3pwzjnnnHPOOeecc84555xzzr/r1fmcc84557M8pQfnnHPO
+Oeecc84555xzzjnn/Dyvzuecc845n+UpPTjnnHPOOeecc84555xzzjnn53l1
+Puecc875W0/pwTnnnHPOOeecc84555xzzjnnf7w6n3POOef8qqf04Jxzzjnn
+nHPOOeecc84555zznlfnc8455/w73pv3dL+0c3LOOeecc84555xzzjnnnHPO
+ec+r8znnnHP+HU/fj3POOeecc84555xzzjnnnHPOV3l1Puecc86/763x3vzR
+PTjnnHPOOeecc84555xzzjnnfJVX53POOeec9560fpxzzjnnnHPOOeecc845
+55xz3vPqfM4555zz3pPWj3POOeecc84555xzzjnnnHPOe16dzznnnPPv+9tx
+zjnnnHPOOeecc84555xzzjnfzavzOeecc17vrfGn+zxdzznnnHPOOeecc845
+55xzzjnnX/HqfM4555zX++p1nHPOOeecc84555xzzjnnnHP+da/O55xzzvl+
+ntKDc84555xzzjnnnHPOOeecc85TvTqfc8455/X+dpxzzjnnnHPOOeecc845
+55xzzvm/enU+55xzzvt+d11vn6c9OOecc84555xzzjnnnHPOOeecX/PqfM45
+55yP95QenHPOOeecc84555xzzjnnnHN+qlfnc8756X53/ao+P8fT7u00fzvO
+Oeecc84555xzzjnnnHPOOed8rVfnc8756X53/arc3r/5HE/pwTnnnHPOOeec
+c84555xzzjnn/J1X53POOR/j1fk/PaXHaG+NP93n6XrOOeecc84555xzzjnn
+nHPOOefZXp3POedXvTev9+9qr85P95QeTz2lB+ecc84555xzzjnnnHPOOeec
+8wyvzuec81nemleVOzrndB/9ej0d55xzzjnnnHPOOeecc84555xzzv/m1fmc
+c/7WR+07OjftnnhGPuecc84555xzzjnnnHPOOeec8zO8Op9zzlvP0/FV34ez
+evC5Xp3POeecc84555xzzjnnnHPOOef8DK/O55zzqz4772mftHs63aveP5xz
+zjnnnHPOOeecc84555xzzvk/e3U+55y/9VH79vZPOzf/u89+n3DOOeecc845
+55xzzjnnnHPOOedXvDqfc85n+dP1aefgf/dV7wfOOeecc84555xzzjnnnHPO
+Oef8iVfnc855ilfn83v+9PWd3YtzzjnnnHPOOeecc84555xzzjlPyOec8xSv
+zud/91Wv+6o8zjnnnHPOOeecc84555xzzjnnZ3h1Puecp3hvXlrfU3zV68s5
+55xzzjnnnHPOOeecc84555yP9Op8zjnf1avzd/Xq16u6B+ecc84555xzzjnn
+nHPOOeec8zO8Op9zzr/m1fnpXn3/q3pwzjnnnHPOOeecc84555xzzjk/26vz
+Oed8V3+6Pu0co+8j9e9LSg/OOeecc84555xzzjnnnHPOOedneHU+55zzez5q
+v9F9fs5LvZ9VPTjnnHPOOeecc84555xzzjnnnJ/t1fmcc87/7nfXp/VP85Qe
+nHPOOeecc84555xzzjnnnHPOz/DqfM45P93vjqf1T/OUHpxzzjnnnHPOOeec
+c84555xzzs/26nzOOef8ib8d55xzzjnnnHPOOeecc84555xzzmd6dT7nnHP+
+m7fGe/NH9+Ccc84555xzzjnnnHPOOeecc87veHU+55xzPtJTenDOOeecc845
+55xzzjnnnHPOOT/bq/M555zzJ57Sg3POOeecc84555xzzjnnnHPOOf+bV+dz
+zjnnv/nbcc4555xzzjnnnHPOOeecc84557zCq/M555zz3zylB+ecc84555xz
+zjnnnHPOOeecc37Hq/M555zzEeOcc84555xzzjnnnHPOOeecc855klfnc845
+P8vfjnPOOeecc84555xzzjnnnHPOOec7eHU+55zzszylB+ecc84555xzzjnn
+nHPOOeeccz7Tq/M555xnefp+nHPOOeecc84555xzzjnnnHPO+Q5enc8557zG
+v5bDOeecc84555xzzjnnnHPOOeecJ3l1Puec87nemzc6J+38nHPOOeecc845
+55xzzjnnnHPOeYVX53POOc/y1vjTfZ6u55xzzjnnnHPOOeecc84555xzznf2
+6nzOOeff9JQenHPOOeecc84555xzzjnnnHPOeYVX53POOf+mp/TgnHPOOeec
+c84555xzzjnnnHPOK7w6n3PO+R7+dpxzzjnnnHPOOeecc84555xzzjk/yavz
+Oeec7+0pPTjnnHPOOeecc84555xzzjnnnPMkr87nnHO+h6f04JxzzjnnnHPO
+Oeecc84555xzznfw6nzOOed/99b46P1H78s555xzzjnnnHPOOeecc84555zz
++nzOOT/Fe/NG56Sdn3POOeecc84555xzzjnnnHPOOT/Jq/M55/x0X72Oc845
+55xzzjnnnHPOOeecc8455/O9Op9zzvkYT+nBOeecc84555xzzjnnnHPOOeec
+8/p8zjnn9zylB+ecc84555xzzjnnnHPOOeecc87bXp3POef8757Sg3POOeec
+c84555xzzjnnnHPOOef3vTqfc85Xe2/e1f1G53LOOeecc84555xzzjnnnHPO
+Oef8O16dzznnKb56Heecc84555xzzjnnnHPOOeecc86/69X5nHO+q6f04Jxz
+zjnnnHPOOeecc84555xzznmeV+fzGm+Np/XkfKW/Heecc84555xzzjnnnHPO
+Oeecc845/+PV+Xyu312vJ0/w3rzev+8+aefnnHPOOeecc84555xzzjnnnHPO
++f5enc/H+Kh9d+mfdv+81lN6cM4555xzzjnnnHPOOeecc84555z/8ep8Psbv
+rl/VZ3XOqHtLe315Vg/OOeecc84555xzzjnnnHPOOeec855X5/MxXp3/Vf85
+3pt3dT7P6sE555xzzjnnnHPOOeecc84555xzPtqr86/63XVp/avugdd6So/R
+vnod55xzzjnnnHPOOeecc84555xzzvluXp3/1u+Op/UffV6+t6f06HlKD845
+55xzzjnnnHPOOeecc84555zzVK/Of+uj9+39e5VX5/M9PPVzxDnnnHPOOeec
+c84555xzzjnnnHN+ulfnX/XqHr1/j/ZVOfzbXp3POeecc84555xzzjnnnHPO
+Oeecc36qV+W/Ha/2VffA+RPvvd+qenHOOeecc84555xzzjnnnHPOOeecn+LV
++a3n6Xjq/bztwfkd770Pq3pxzjnnnHPOOeecc84555xzzjnnnJ/i1fm9J6Vf
+79+renD+Zv2qXpxzzjnnnHPOOeecc84555xzzjnnp3t1fut5Or7qfnr7pN0r
+/6Y//XzN7sU555xzzjnnnHPOOeecc84555xzfrpX57/12Xm93LT74Gd52ueF
+c84555xzzjnnnHPOOeecc84555xn5M/yu+t7+6Sdj5/lVZ8LzjnnnHPOOeec
+c84555xzzjnnnHP+zKvzU7w6n/PffPT7fPS+nHPOOeecc84555xzzjnnnHPO
+Oef8X706P92r8/lZvur9vCqPc84555xzzjnnnHPOOeecc8455/xUr85P9+p8
+/k1P6dF60vpxzjnnnHPOOeecc84555xzzjnnnO/m1fm7enU+39ur37fVPTjn
+nHPOOeecc84555xzzjnnnHPOv+7V+bt6dT7fy3+OV/dYlcc555xzzjnnnHPO
+Oeecc84555xzfqpX5+/qvSetL5/rKT16ntKDc84555xzzjnnnHPOOeecc845
+5/zrXp1/ulfn83ue0qPnb8c555xzzjnnnHPOOeecc84555xzzvk7r87nf/fq
+/NM9pcdoT+nBOeecc84555xzzjnnnHPOOeecc/51r84/3Uft29s/7dyr7vXq
+/Vydv7un9OCcc84555xzzjnnnHPOOeecc845/7pX5/Msr87/6aPPdXV9yvmf
++ttxzjnnnHPOOeecc84555xzzjnnnHP+zqvzeZa35vXmX81JO+9pntKDc845
+55xzzjnnnHPOOeecc8455/zrXp3Pa3zUvmnn4lk9OOecc84555xzzjnnnHPO
+Oeecc85P9ep8Ptffjnuf7OkpPTjnnHPOOeecc84555xzzjnnnHPOT/XqfM55
+39+Oc84555xzzjnnnHPOOeecc84555zztV6dzzl/vq63z9MenHPOOeecc845
+55xzzjnnnHPOOef8nVfnc86fr+vt87QH55xzzjnnnHPOOeecc84555xzzjl/
+59X5nPPxntKDc84555xzzjnnnHPOOeecc8455/xUr87nnI/3lB6cc84555xz
+zjnnnHPOOeecc84556d6dT7n/Lmn9OCcc84555xzzjnnnHPOOeecc8455//q
+1fmcn+ir13HOOeecc84555xzzjnnnHPOOeec87Venc8573tKD84555xzzjnn
+nHPOOeecc84555xzfs2r8znn7SetH+ecc84555xzzjnnnHPOOeecc845v+bV
++Zx/2d+Oc84555xzzjnnnHPOOeecc84555zzPb06n/MTPaUH55xzzjnnnHPO
+Oeecc84555xzzjmf49X5nH/B345zzjnnnHPOOeecc84555xzzjnnnPNveXU+
+5zv523HOOeecc84555xzzjnnnHPOOeecc36GV+dzvpOn9OCcc84555xzzjnn
+nHPOOeecc84559lenc/5b+N356/qxTnnnHPOOeecc84555xzzjnnnHPO+W9e
+nc95Qv5P7/Ws6sU555xzzjnnnHPOOeecc84555xzzvfw6nzOE/J/eq9nVS/O
+Oeecc84555xzzjnnnHPOOeecc76HV+fzs7w3L6Xv0/6cc84555xzzjnnnHPO
+Oeecc84555wn5HNemf+05+xenHPOOeecc84555xzzjnnnHPOOed8b6/O53yk
+t+bN3p9zzjnnnHPOOeecc84555xzzjnnnPN/9up8znfylB6cc84555xzzjnn
+nHPOOeecc8455zzbq/M5T/SUHpxzzjnnnHPOOeecc84555xzzjnnfE+vzuc8
+0VN6cM4555xzzjnnnHPOOeecc84555zzPb06n/ORvnod55xzzjnnnHPOOeec
+c84555xzzjnnf/Pq/P9uh45uAASBIAr237UdaCB37inzOwHeBs6TPmUH55xz
+zjnnnHPOOeecc84555xzzjn/l6f7nL/hU3ZwzjnnnHPOOeecc84555xzzjnn
+nPMzPN3nvNKn7OCcc84555xzzjnnnHPOOeecc84552d7us/5nU/ZwTnnnHPO
+Oeecc84555xzzjnnnHPO+Yqn+zzjVe/tdqv6nHPOOeecc84555xzzjnnnHPO
+OeecT/R0n9f407n0rmn/xTnnnHPOOeecc84555xzzjnnnHPOeaen+7zXuztP
+3e4+55xzzjnnnHPOOeecc84555xzzjnnEz3d5xlfvbf7/u59zjnnnHPOOeec
+c84555xzzjnnnHPOv+kX/MR5Lg==
+ "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"",
+ RowBox[{"-", "1"}],
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{"0.5`"}]}], "-",
+ RowBox[{"0.5`", " ", "\[ImaginaryI]"}]}],
+ RowBox[{
+ RowBox[{"-",
+ RowBox[{"0.5`"}]}], "+",
+ RowBox[{"0.5`", " ", "\[ImaginaryI]"}]}]}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{3.659556259184917*^9, 3.659556302150953*^9,
+ 3.6595563906887107`*^9, 3.6595564366805267`*^9, 3.6641617768839207`*^9}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"newtonplot", "[",
+ RowBox[{
+ RowBox[{"Function", "[",
+ RowBox[{"x", ",",
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{"x", "+", "1.5"}], ")"}],
+ RowBox[{"(", "x", ")"}],
+ RowBox[{"(",
+ RowBox[{"x", "-", "0.75"}], ")"}]}]}], "]"}], ",", "2", ",", "401",
+ ",", "20", ",", "0.05"}], "]"}]], "Input",
+ CellChangeTimes->{{3.6595549152958674`*^9, 3.659554978383319*^9},
+ 3.659555332709116*^9, {3.659555509656427*^9, 3.6595555271955185`*^9}, {
+ 3.659555597485504*^9, 3.659555613597739*^9}, {3.6631017052455835`*^9,
+ 3.663101720860613*^9}, 3.6641616424542694`*^9}],
+
+Cell[BoxData[
+ TemplateBox[{GraphicsBox[
+ RasterBox[CompressedData["
+1:eJzs1t2t5MphhdFrKBJHohwUggA/OxZnqhAMQTgPc9DdbP7uXVWLgADNKpLf
+ZmsAzX//83//8T9/++uvv/7vv/7zn3//9/9c//r7Xy+vWf3q59q+bzVP9/nY
+3rKDc84555xzzjnnnHPOOee81d+db/15VT97zjnnfC5P99s93ecdfT6nt+zg
+nHPOOeecc84555xzzjlfzVt2HPWz55xzztfwdL/d033e0edruL+XnHPOOeec
+c84555xzzjnnc/m781SXc875Wp7uj+rp/qye7vO1vGUH55xzzjnnnHPOOeec
+c845n8vTfc455x2e7q/iR8/bviP9O3F+pbfs4JxzzjnnnHPOOeecc84553N5
+us8557zD033+2tN938dX8JYdnHPOOeecc84555xzzjnnfC5P9znnnHd4us/3
+ebrvO/hM3rKDc84555xzzjnnnHPOOeecz+XpPuec8w5P9/k1nu6Ptouv5S07
+OOecc84555xzzjnnnHPO+Vye7nPOOe/2dJ9nfLYO55+8ZQfnnHPOOeecc845
+55xzzjmfy9N9zjnn3Z7u8y5vfx/nn7xlB+ecc84555xzzjnnnHPOOV/D033O
+Oefdnu7zsf3sOedHvGUH55xzzjnnnHPOOeecc845X9vTfc45592e7vOx/enn
++Fq+9eendnDOOeecc84555xzzjnnnPO1Pd3nnHM+pqf7fGzfus+/f/g33rKD
+c84555xzzjnnnHPOOeec809X2y7OOefdnu7zsT3dn31vu7fs4JxzzjnnnHPO
+Oeecc8455/xOT/c555yP6ek+H9vT/af96t/h7l2cc84555xzzjnnnHPOOeec
+8+893eeccz6Xp/t8bE/3Oeecc84555xzzjnnnHPOOef8Kk/3Oeecz+XpPh/b
+t+5r28s555xzzjnnnHPOOeecc8455+883eeccz6Xp/t8bE/3Oeecc84555xz
+zjnnnHPOOed8r6f7nHPO1/B0n4/t6T7nnHPOOeecc84555xzzjnnnL/zratt
+L+ec87k83edje7rPOeecc84555xzzjnnnHPOOZ/f39139pxzzjm/09N9Pran
++5xzzjnnnHPOOeecc84555xznu5zzjnnrzzd52N7us8555xzzjnnnHPOOeec
+c8455+k+55xz/srTfT62p/ucc84555xzzjnnnHPOOeecc57uc84556883edz
+errPOeecc84555xzzjnnnHPOOZ/P033OOed8j6f7fE4/+nzbd3DOOeecc845
+55xzzjnnnHPOezzd55xzzvd4us/n9HSfc84555xzzjnnnHPOOeeccz6up/uc
+c875FZ7u8zk93eecc84555xzzjnnnHPOOeec93u6zznnnN/p6T6f09N9zjnn
+nHPOOeecc84555xzznm/p/ucc875nZ7u87U83eecc84555xzzjnnnHPOOeec
+P+/pPuecc57wdJ+v5ek+55xzzjnnnHPOOeecc8455/w+T/c555zzJk/3+Vr+
+1PvavptzzjnnnHPOOeecc84555zzpO99/uw555xzzvN9zq84P/vvSs4555xz
+zjnnnHPOOeecc875+6ttF+eccz6Cp/ucN/Q555xzzjnnnHPOOeecc8455++v
+tl2cc875CJ7uc97Q55xzzjnnnHPOOeecc84555y/v9p2cc455yN4us/5J0/3
+Oeecc84555xzzjnnnHPOOV/B033OOed8Rk/3Of/k6T7nnHPOOeecc84555xz
+zjnnK3i6zznnnM/o6T7nnzzd55xzzjnnnHPOOeecc84553wmT/c555zzlTzd
+5/yIb93XtpdzzjnnnHPOOeecc84555zzJz3d55xzznm+z/kRT/c555xzzjnn
+nHPOOeecc845b/Z0n3POOef5PudXerrPOeecc84555xzzjnnnHPO+ZOe7nPO
+Oef8vaf7nD/hbe/z72bOOeecc84555xzzjnnnHO+x9N9zjnnnO/3dJ/zpD/9
+3G9v+z0455xzzjnnnHPOOeecc8551tN9zjnnnF/n6T7njX72/Ftv+27OOeec
+c84555xzzjnnnHOe9XSfc84559d5us95o6f7nHPOOeecc84555xzzjnnfG5P
+9znnnHN+v6f7nDf61n1teznnnHPOOeecc84555xzznmnp/ucc845z3m6z/lI
+nu5zzjnnnHPOOeecc84555zzTk/3Oeecc97n6T7nI3m6zznnnHPOOeecc845
+55xzPqu/O9/681170h3OOeecj+/pPucj+dHztu/gnHPOOeecc84555xzzjlv
+96ve+/RznHPOOec/nu5zPoOn+5xzzjnnnHPOOeecc84557P5Ve89e84555xz
+ftTTfc5n9nSfc84555xzzjnnnHPOOeecd/Q555xzvp6n+5yv6EfP276Dc845
+55xzzjnnnHPOOed8FE/3Oeecc76ep/uc854+55xzzjnnnHPOOeecc875rJ7u
+c84553w9T/c55z19zjnnnHPOOeecc84555zz0T3d55xzzjn/8XSfc77t6f7o
+39f2vZxzzjnnnHPOOeecc845v8/Tfc4555zzH0/3OefHPd0fZW/b78A555xz
+zjnnnHPOOeec8/Oe7nPOOeecb3m6zzm/3rfue6rf8ru07OCcc84555xzzjnn
+nHPO+XWe7nPOOeecb3m6zznPe/v7znrLDs4555xzzjnnnHPOOeec7/d0n3PO
+Oef8qKf7nPNef/q5s972+3HOOeecc84555xzzjnn/HtP9znnnHPOr/Z0n3M+
+j6f7nHPOOeecc84555xzzjnv93Sfc8455/wpT/c55/N4us8555xzzjnnnHPO
+Oeec835P9znnnHPOn/J0n3M+j6f7nHPOOeecc84555xzzjnv8XSfc8455zzt
+6T7nfB7fuq9tL+ecc84555xzzjnnnHPOz3u6zznnnHPe6uk+53x+T/c555xz
+zjnnnHPOOeecc75939lzzjnnnHP+p6f7nPP5feu+tr2cc84555xzzjnnnHPO
++cqe7nPOOeecz+LpPud8fk/3Oeecc84555xzzjnnnHP+/mrbxTnnnHM+i6f7
+nPN1Pd3nnHPOOeecc84555xzzlf2dJ9zzjnnfHZP9znn/N2197ztOzjnnHPO
+Oeecc84555zzBk/3Oeecc85X9XSfc86/9XSfc84555xzzjnnnHPOOW/2dJ9z
+zjnnnP/p6T7nnH/rW/e17eWcc84555xzzjnnnHP++bxt5yie7nPOOeec8+88
+3eec87Oe7nPOOeecc84555xzzjl/7e/uS+0ZzdN9zjnnnHN+ztN9zjm/y1vf
+1/Y7cc4555xzzjnnnHPO+bvzb+9P7ZvF033OOeecc36Pp/ucc97iZ89/e9v3
+cc4555xzzjnnnHPO+bfPte2+6zvt4pxzzjnnd3q6zznn7Z7uc84555xzzjnn
+nHPOecp/n7ft+3b3an3OOeecc97h6T7nnLd7us/Hdn+vOOecc84555xzzvnI
+/vu8bd/Z72l7H+ecc845n8vTfc45H9XTfd7p6f7R/99/egfnnHPOOeecc845
+H9Nbdhz1s+ecc84555zv8XSfc85n86372vbyz57uP+0tOzjnnHPOOeecc875
+WN6yY8tbdnDOOeec8zU83eec81U83ecd/VG9ZQfnnHPOOeecc845H9Pfnbe9
+h3POOeec8ys93eec89X96Hnbd7R5ur+Kt+zgnHPOOeecc84553yPp/ucc845
+53wNT/c555y/9nR/FE/3+Wtv2cE555xzzjnnnHPO+aerbRfnnHPOOZ/L033O
+Oef7PN1v83Sfv/aWHZxzzjnnnHPOOeecf7radnHOOeec87k83eecc36NHz1v
++46j38e73f+unHPOOeecc84557zJ033OOeecc76Gp/ucc87v9XR/9r38tbfs
+4JxzzjnnnHPOOef809W2i3POOeecz+XpPuec84wfPU/v4mN4yw7OOeecc845
+55xzzj9dbbs455xzzvlcnu5zzjkfw7fuO/q+tu/k13jLDs4555xzzjnnnHO+
+tqf7nHPOOed8bU/3Oeecj+1PP8e7vGUH55xzzjnnnHPOOeefrrZdnHPOOed8
+DU/3Oeecr+UtO/g13rKDc84555xzzjnnnPNPV9suzjnnnHO+hqf7nHPO5/T2
+9/F93rKDc84555xzzjnnnPNPV9suzjnnnHO+tqf7nHPO5/TV++3esoNzzjnn
+nHPOOeec8ys83eecc8455/yVp/ucc87n9HT/Wz+6/+5de71lB+ecc84555xz
+zjnnd3q6zznnnHPO+R5P9znnnM/pW/e17b36u+/63rvfzznnnHPOOeecc855
+s6f7nHPOOeec7/F0n3PO+Zye7nPOOeecc84555xzzufzdJ9zzjnnnPM9nu5z
+zjmf09N9zjnnnHPOOeecc875uJ7uc84555xzfoWn+5xzzuf0dJ9zzjnnnHPO
+Oeecc97v6T7nnHPOOed3errPOed8Tk/3Oeecc84555xzzjnn/Z7uc84555xz
+fqen+5xzzuf0dJ9zzjnnnHPOOeecc97j6T7nnHPOOecJT/c555zP6ek+55xz
+zjnnnHPOOef8uO99/uw555xzzjnnM3q6zznnfE5P9znnnHPOOeecc8455897
+us8555xzznmTp/ucc87n9HSfc84555xzzjnnnHP+vKf7nHPOOeecN3m6zznn
+fC1P9znnnHPOOeecc8455+c93eecc84553wET/c555yv5ek+55xzzjnnnHPO
+Oef8vKf7nHPOOeecj+DpPuecc/7NfW17Oeecc84555xzzjlfwdN9zjnnnHPO
+R/Z0n3POOW/oc84555xzzjnnnHPO319tuzjnnHPOOR/B033OOee8oc8555xz
+zjnnnHPO+cqe7nPOOeeccz6jp/ucc855Q59zzjnnnHPOOeec8xU83eecc845
+53wlT/c555zzT57uc84555xzzjnnnHM+k6f7nHPOOeecr+TpPuecc/7J033O
+Oeecc84555xzzkf0dJ9zzjnnnHOe73POOeef/Kn3tX0355xzzjnnnHPOOeff
+eLrPOeecc845f+/pPuecc37Ez55/623fzTnnnHPOOeecc87H8L3Pnz3nnHPO
+Oeec93m6zznnnF/pR8/bvoNzzjnnnHPOOeecj+17n39qF+ecc8455/w5T/c5
+55zzKz3d55xzzjnnnHPOOef8jKf7nHPOOeec8+s83eecc86v9K372vZyzjnn
+nHPOOeecc97U55xzzjnnnF/n6T7nnHN+paf7nHPOOeecc84555x/4+k+55xz
+zjnn/H5P9znnnPMnPN3nnHPOOeecc84557ypzznnnHPOOb/f033OOef8Cd+6
+r20v55xzzjnnnHPOOZ/D033OOeecc855ztN9zjnnPOlHz9u+g3POOeecc845
+55x3errPOeecc845z3m6zznnnDd6us8555xzzjnnnHPOx/J0n3POOeecc97n
+6T7nnHPe6Ok+55xzzjnnnHPOOR/L033OOeecc855n6f7nHPO+Ug+e7/t9+ac
+c84555xzzjlv83Sfc84555xzPo6n+5xzzvkM3v6+b73td+Wcc84555xzzjm/
+y9/dl97FOeecc845n8fTfc4553xmf/q5s972+3HOOeecc84555zf7ek+55xz
+zjnnfF5P9znnnHN+3flvb/s+zjnnnHPOOeec8zZP9znnnHPOOefzerrPOeec
+854+55xzzjnnnHPO+aye7nPOOeecc87X83Sfc8455z19zjnnnHPOOeec81k9
+3eecc84555yv5+k+55xzznv6nHPOOeecc84556N7us8555xzzjnnP57uc845
+53zb033OOeecc84555yP51e99+r3zb6Lc84555xzzn883eecc875tqf7nHPO
+Oeecc8457/Hf5y07Ru9wzjnnnHPO+dWe7nPOOed824+et30H55xzzjnnnHPO
+r/eWHannOOecc84557zV033OOeecH/d0n3POOeecc845572e2vHt1fI7cc45
+55xzzvldnu5zzjnn/Lin+5xzzjnnnHPOOR/P9z5/9Z6r38c555xzzjnnrZ7u
+c8455/x6T/c555xzzjnnnHPO33m6zznnnHPOOedPebrPOeec8+f86ufavo9z
+zjnnnHPOOef9nu5zzjnnnHPO+VOe7nPOOec87+k+55xzzjnnnHPO1/F0n3PO
+Oeecc86f8nSfc845572e7nPOOeecc84553w+T/c555xzzjnn/ClP9znnnHPe
+6+k+55xzzjnnnHPOx/V0n3POOeecc87Tnu5zzjnnfDxP9znnnHPOOeecc97v
+6T7nnHPOOeecpz3d55xzzvl4fvVzbd/X5k/3W3ZwzjnnnHPOOR/b033OOeec
+c845T3u6zznnnPP5Pd1v83T/Lm/ZwTnnnHPOOef8WU/3Oeecc84557zV033O
+Oeecz+/pvu/LessOzjnnnHPOOef3eLrPOeecc845562e7nPOOed8XU/3Z9/b
+7i07OOecc84555yf83Sfc84555xzzls93eecc845f3et2l/FW3ZwzjnnnHPO
+Of/s7+5L7+Kcc84555zzdk/3Oeecc86/9dk6q3vLDs4555xzzjnn33m6zznn
+nHPOOeejebrPOeecc37Wn36OX+MtOzjnnHPOOeecf+fpPuecc84555yP5uk+
+55xzzvldfvac3+stOzjnnHPOOeecd/U555xzzjnnfBZP9znnnHPO7/Kz5/xe
+b9nBOeecc84557yrzznnnHPOOeezeLrPOeecc36Xt79vFW/ZwTnnnHPOOef8
+O0/3Oeecc84553wWT/c555xzzu/y1ftPe8sOzjnnnHPOOeffebrPOeecc845
+57N7us8555xzftbT/dG/o+134JxzzjnnnHP+jKf7nHPOOeeccz67p/ucc845
+52c93eecc84555xzzps93eecc84555zzVT3d55xzzjk/6+k+55xzzjnnnHPe
+7Ok+55xzzjnnnK/q6T7nnHPO+VlP9znnnHPOOeec8wZP9znnnHPOOeec/+np
+Puecc875Wd+6r20v55xzzjnnnHN+h6f7nHPOOeecc87/9HSfc8455/ysp/uc
+c84555xzzvkR3/v8U7s455xzzjnnnF/j6T7nnHPO+VlP9znnnHPOOeec8yc9
+3eecc84555xz/p2n+5xzzjnnZz3d55xzzjnnnHPOn/R0n3POOeecc875d57u
+c84555yf9aPnbd/BOeecc84555w39TnnnHPOOeecn/N0n3POOef8rKf7nHPO
+Oeecc875HZ7uc84555xzzjk/5+k+55xzzvlZT/c555xzzjnnnPM7PN3nnHPO
+Oeecc37O033OOeec87Oe7nPOOeecc84552c83eecc84555xzfo+n+5xzzjnn
+Zz3d55xzzjnnnHPOz3i6zznnnHPOOef8Hk/3Oeecc87v8nSfc84555xzzjlv
+6nPOOeecc845f9bTfc4555zzuzzd55xzzjnnnHPOm/qcc84555xzzp/1dJ9z
+zjnn/Gm/+r1t38c555xzzjnnPOvpPuecc84555zzDk/3Oeecc86f9nSfc845
+55xzzvncnu5zzjnnnHPOOe/wdJ9zzjnn/C5P9znnnHPOOeecz+3pPuecc845
+55zzbk/3Oeecc86f9nSfc84555xzzvk+v+q97e/jnHPOOeeccz6Xp/ucc845
+5097us8555xzzjnn/PV5y46955xzzjnnnHPO+StP9znnnHPOn/Z0n3POOeec
+c875Pr+7d9d7Oeecc84555yv7ek+55xzznmLb93XtpdzzjnnnHPO+efzu9/P
+Oeecc84555x/8nSfc84557zF033OOeecc845552e7nPOOeecc845H9PTfc45
+55zzFk/3Oeecc84555x3errPOeecc84553xMT/c555xzzts93eecc84555xz
+nvV0n3POOeecc875mJ7uc84555y3+2idtt+Pc84555xzzkf3dJ9zzjnnnHPO
++Zie7nPOOeecj+pPP/ett/1OnHPOOeeccz66p/ucc84555xzzsf0dJ9zzjnn
+fDZP72j7PTjnnHPOOed8dE/3Oeecc84555yP6ek+55xzzvlsnu5zzjnnnHPO
+Ob/W033OOeecc84552N6us8555xzPpun+5xzzjnnnHPOj3m6zznnnHPOOed8
+Lk/3Oeecc85n83Sfc84555xzzvkxT/c555xzzjnnnM/l6T7nnHPO+Wy+dV/b
+Xs4555xzzjlfxd/dl97FOeecc84553xOT/c555xzzmfzdJ9zzjnnnHPO+TFP
+9znnnHPOOeecz+XpPuecc875bJ7uc84555xzzjk/5uk+55xzzjnnnPO5PN3n
+nHPOOZ/N033OOeecc84558c83eecc84555xzPpen+5xzzjnnq3i6zznnnHPO
+Oee8o88555xzzjnnfA1P9znnnHPOV/Gt+9r2cs4555xzzvmsnu5zzjnnnHPO
+OV/D033OOeec81U83eecc84555xz3tHnnHPOOeecc76Gp/ucc84556v72fPf
+3vZ9nHPOOeecc57ydJ9zzjnnnHPO+dqe7nPOOeec89d+9Pm27+Ccc84555zz
+q/z3+dZ9T+3inHPOOeecc85febrPOeecc85fe7rPOeecc84556N7us8555xz
+zjnnfG1P9znnnHPO+WtP9znnnHPOOed8dE/3Oeecc84555yv7ek+55xzzjl/
+7Vv3te3lnHPOOeec8zZP9znnnHPOOeecr+3pPuecc845f+3pPuecc84555yP
+7uk+55xzzjnnnPO1Pd3nnHPOOef7/Oh523dwzjnnnHPO+d2e7nPOOeecc845
+X9vTfc4555xzfo2n+5xzzjnnnHPe5uk+55xzzjnnnPO1Pd3nnHPOOefXeLrP
+Oeecc84553f5u/vSuzjnnHPOOeec80+e7nPOOeec82s83Z/V0/3f3rKDc845
+55zzJk/3Oeecc84555zzV57uc84555zze33rvra9V393264Wb9nBOeecc875
+FZ7uc84555xzzjnnrzzd55xzzjnn93q67zvG8pYdnHPOOeec7/F0n3POOeec
+c845f+XpPuecc845z3i6P9quVbxlB+ecc84555+utl2cc84555xzzvkrT/c5
+55xzznnGV+/zfd6yg3POOeecr+3pPuecc84555xzvsfTfc4555xz3uXt7+Nd
+3rKDc84555zf4+/O2/ZwzjnnnHPOOeeNnu5zzjnnnPMx/Ow5n9NbdnDOOeec
+82v97t7Zc84555xzzjnnfARP9znnnHPO+RjesoN3+NG/P+ndnHPOOeer++/z
+1n3pHZxzzjnnnHPO+RWe7nPOOeec8zH87Dmf01t2cM4555zza/3u3tlzzjnn
+nHPOOed8BE/3Oeecc855l7e/j3d5yw7OOeecc36Pvztv28M555xzzjnnnDd6
+us8555xzzjO+ep/v85YdnHPOOed8bU/3Oeecc84555zzPZ7uc84555zzjKf7
+o+1axVt2cM4555xz/ulq28U555xzzjnnnL/ydJ9zzjnnnN/r6b7vGMtbdnDO
+Oeecc77H033OOeecc8455/yVp/ucc8455/xe37qvbe/V3922q8VbdnDOOeec
+c36Fp/ucc84555xzzvkrT/c555xzzvk1nu7P6un+b2/ZwTnnnHPOeZOn+5xz
+zjnnnHPO+StP9znnnHPO+TWe7nPOOeecc875Xf7uvvQuzjnnnHPOOef8k6f7
+nHPOOef8Gk/3Oeecc84557zN033OOeecc84552t7us8555xzzvf50fO27+Cc
+c84555zzuz3d55xzzjnnnHO+tqf7nHPOOef8taf7nHPOOeeccz66p/ucc845
+55xzztf2dJ9zzjnnnL/2rfva9nLOOeecc855m6f7nHPOOeecc87X9nSfc845
+55y/9nSfc84555xzzkf3dJ9zzjnnnHPO+dqe7nPOOeec89ee7nPOOeecc875
+6J7uc84555xzzjlf29N9zjnnnHP+2o8+3/YdnHPOOeecc36V/z7fuu+pXZxz
+zjnnnHPO+StP9znnnHPOV/ez57+97fs455xzzjnnPOXpPuecc84555zztT3d
+55xzzjlfxdN9zjnnnHPOOecdfc4555xzzjnna3i6zznnnHO+im/d17aXc845
+55xzzmf1dJ9zzjnnnHPO+Rqe7nPOOeecr+LpPuecc84555zzjj7nnHPOOeec
+8zU83eecc845n83Tfc4555xzzjnnxzzd55xzzjnnnHM+l6f7nHPOOeezebrP
+Oeecc8455/yYp/ucc84555xzzufydJ9zzjnnfDZP9znnnHPOOeecH/N0n3PO
+Oeecc875XJ7uc84555zP5lv3te3lnHPOOeec81X83X3pXZxzzjnnnHPO5/R0
+n3POOed8Nk/3Oeecc84555wf83Sfc84555xzzvlcnu5zzjnnnM/m6T7nnHPO
+Oeec82Oe7nPOOeecc845n8vTfc4555zz2Tzd55xzzjnnnHN+raf7nHPOOeec
+c87H9HSfc84553w2T+9o+z0455xzzjnnfHRP9znnnHPOOeecj+npPuecc875
+qP70c9962+/EOeecc84556N7us8555xzzjnnfExP9znnnHPO2320Ttvvxznn
+nHPOOeeje7rPOeecc84553xMT/c555xzzts93eecc84555xznvV0n3POOeec
+c875mJ7uc84555y3eLrPOeecc84557zT033OOeecc84552N6us8555xz3uLp
+Puecc84555zzTk/3Oeecc84555yP6ek+55xzznmLb93XtpdzzjnnnHPO+efz
+u9/POeecc84555x/8nSfc8455/xpT/c555xzzjnnnO/zu3t3vZdzzjnnnHPO
++dqe7nPOOeecP+3pPuecc84555zz1+ctO/aec84555xzzjnnrzzd55xzzjl/
+2tN9zjnnnHPOOef7/Kr3tr+Pc84555xzzvlcnu5zzjnnnN/l6T7nnHPOOeec
+87k93eecc84555xz3u3pPuecc875057uc84555xzzjmf29N9zjnnnHPOOecd
+nu5zzjnnnD/tV7+37fs455xzzjnnnGc93eecc84555xz3uHpPuecc875XZ7u
+c84555xzzjnnTX3OOeecc8455896us8555xzfpen+5xzzjnnnHPOeVOfc845
+55xzzvmznu5zzjnnnJ/1dJ9zzjnnnHPOOT/j6T7nnHPOOeec83s83eecc845
+P+vpPuecc84555xzfsbTfc4555xzzjnn93i6zznnnHN+1tN9zjnnnHPOOef8
+Dk/3Oeecc84555yf83Sfc8455/ysp/ucc84555xzzvkdnu5zzjnnnHPOOT/n
+6T7nnHPO+Vk/et72HZxzzjnnnHPOeVOfc84555xzzvk5T/c555xzzs96us85
+55xzzjnnnD/p6T7nnHPOOeec8+883eecc845P+vpPuecc84555xz/qSn+5xz
+zjnnnHPOv/N0n3POOef8rKf7nHPOOeecc875Ed/7/FO7OOecc84555xf4+k+
+55xzzvlZ37qvbS/nnHPOOeecc36Hp/ucc84555xzzv/0dJ9zzjnn/Kyn+5xz
+zjnnnHPOeYOn+5xzzjnnnHPO//R0n3POOef8rKf7nHPOOeecc855s6f7nHPO
+Oeecc76qp/ucc84552c93eecc84555xzzps93eecc84555zzVT3d55xzzjk/
+6+n+6N/R9jtwzjnnnHPOOX/G033OOeecc845n93Tfc4555zzu3z1/tPesoNz
+zjnnnHPO+Xee7nPOOeecc8757J7uc84555zf5e3vW8VbdnDOOeecc845/87T
+fc4555xzzjmfxdN9zjnnnPO7/Ow5v9dbdnDOOeecc8457+pzzjnnnHPO+Sye
+7nPOOeec3+Vnz/m93rKDc84555xzznlXn3POOeecc85n8XSfc8455/ysP/0c
+v8ZbdnDOOeecc845/87Tfc4555xzzjkfzdN9zjnnnPNvfbbO6t6yg3POOeec
+c875d57uc84555xzzvlonu5zzjnnnL+7Vu2v4i07OOecc84555x/9nf3pXdx
+zjnnnHPOebun+5xzzjlf19P92fe2e8sOzjnnnHPOOefnPN3nnHPOOeec81ZP
+9znnnHM+v6f7vi/rLTs455xzzjnnnN/j6T7nnHPOOeect3q6zznnnPP5Pd1v
+83T/Lm/ZwTnnnHPOOef8WU/3Oeecc84557zV033OOeecj+dXP9f2fW3+dL9l
+B+ecc84555zzsT3d55xzzjnnnPO0p/ucc845H8/Tfc4555xzzjnnnPd7us85
+55xzzjnnaU/3Oeecc97r6T7nnHPOOeecc87H9XSfc84555xzztOe7nPOOee8
+19N9zjnnnHPOOeecz+fpPuecc84555w/5ek+55xzzvOe7nPOOeecc84553wd
+T/c555xzzjnn/ClP9znnnHP+nF/9XNv3cc4555xzzjnnvN/Tfc4555xzzjl/
+ytN9zjnnnF/v6T7nnHPOOeecc875O0/3Oeecc8455/wpT/c555xzftzTfc45
+55xzzjnnnI/ne5+/es/V7+Occ84555zzVk/3Oeecc37c033OOeecc84555z3
+emrHt1fL78Q555xzzjnnd3m6zznnnPNtP3re9h2cc84555xzzjm/3lt2pJ7j
+nHPOOeec81ZP9znnnHO+7ek+55xzzjnnnHPOe/z3ecuO0Tucc84555xzfrWn
++5xzzjnf9nSfc84555xzzjnn4/lV7736fbPv4pxzzjnnnPMfT/c555xz3tPn
+nHPOOeecc845H93Tfc4555xzzjn/8XSfc8455z19zjnnnHPOOeec81k93eec
+c84555yv5+k+55xzznv6nHPOOeecc84557N6us8555xzzjlfz9N9zjnnnF93
+/tvbvo9zzjnnnHPOOee8zdN9zjnnnHPO+bye7nPOOecz+9PPnfW2349zzjnn
+nHPOOef8bk/3Oeecc8455/N6us8555zP4O3v+9bbflfOOeecc84555zzu/zd
+feldnHPOOeec83k83eecc85H8tn7bb8355xzzjnnnHPOeZun+5xzzjnnnPNx
+PN3nnHPOGz3d55xzzjnnnHPOOedjebrPOeecc8457/N0n3POOW/0dJ9zzjnn
+nHPOOeecj+XpPuecc84557zP033OOec86UfP276Dc84555xzzjnnnHd6us85
+55xzzjnPebrPOeecP+Fb97Xt5ZxzzjnnnHPOOedzeLrPOeecc845z3m6zznn
+nD/h6T7nnHPOOeecc8455019zjnnnHPO+f2e7nPOOedXerrPOeecc84555xz
+zvk3nu5zzjnnnHPO7/d0n3POOb/St+5r28s555xzzjnnnHPOeVOfc84555xz
+fp2n+5xzzvmVnu5zzjnnnHPOOeecc37G033OOeecc875dZ7uc84551f60fO2
+7+Ccc84555xzzjnnY/ve55/axTnnnHPOOX/O033OOef8iJ89/9bbvptzzjnn
+nHPOOeecj+F7nz97zjnnnHPOOe/zdJ9zzjn/5E+9r+27Oeecc84555xzzjn/
+xtN9zjnnnHPO+XtP9znnnPNPnu5zzjnnnHPOOeeccz6ip/ucc84555zzfJ9z
+zjn/5Ok+55xzzjnnnHPOOeczebrPOeecc875Sp7uc8455w19zjnnnHPOOeec
+c85X8HSfc84555zzlTzd55xzzhv6nHPOOeecc84555yv7Ok+55xzzjnnM3q6
+zznnnDf0Oeecc84555xzzjnn76+2XZxzzjnnnI/g6T7nnHP+zX1teznnnHPO
+Oeecc845X8HTfc4555xzzkf2dJ9zzvlanu5zzjnnnHPOOeecc87Pe7rPOeec
+c875CJ7uc845X8vTfc4555xzzjnnnHPO+XlP9znnnHPOOR/B033OOedzerrP
+Oeecc84555xzzjl/3tN9zjnnnHPOmzzd55xzPqen+5xzzjnnnHPOOeec8+c9
+3eecc84557zJ033OOedzerrPOeecc84555xzzjk/7nufP3vOOeecc875jJ7u
+c845n9PTfc4555xzzjnnnHPOeY+n+5xzzjnnnCc83eeccz6np/ucc84555xz
+zjnnnPN+T/c555xzzjm/09N9zjnnc3q6zznnnHPOOeecc8457/d0n3POOeec
+8zs93eeccz6np/ucc84555xzzjnnnPNxPd3nnHPOOef8Ck/3Oeecz+npPuec
+c84555xzzjnnfD5P9znnnHPOOd/j6T7nnPM5feu+tr1Xf/dd33v3+znnnHPO
+Oeecc845b/Z0n3POOeec8z2e7nPOOZ/T0/1v/ej+u3ft9ZYdnHPOOeecc845
+55zf6ek+55xzzjnnezzd55xzPqev3m/3lh2cc84555xzzjnnnF/h6T7nnHPO
+OeevPN3nnHM+p7e/j+/zlh2cc84555xzzjnnnH+62nZxzjnnnPO1Pd3nnHO+
+lrfs4Nd4yw7OOeecc84555xzzj9dbbs455xzzvkanu5zzjkf259+jnd5yw7O
+Oeecc84555xzzj9dbbs455xzzvkanu5zzjkfw7fuO/q+tu/k13jLDs4555xz
+zjnnnHO+tqf7nHPOOed8bU/3OeecZ/zoeXoXH8NbdnDOOeecc84555xz/ulq
+28U555xzzufydJ9zzvm9nu7Pvpe/9pYdnHPOOeecc84555x/utp2cc4555zz
+uTzd55xzfo0fPW/7jqPfx7vd/66cc84555xzzjnnvMnTfc4555xzvoan+5xz
+zvd5ut/m6T5/7S07OOecc84555xzzjn/dLXt4pxzzjnnc3m6zznn/LWn+6N4
+us9fe8sOzjnnnHPOOeecc84/XW27OOecc875XJ7uc8756n70vO072jzdX8Vb
+dnDOOeecc84555xzvsfTfc4555xzvoan+5xzvoqn+7yjP6q37OCcc84555xz
+zjnnY/q787b3cM4555xzfqWn+5xzPptv3de2l3/2dP9pb9nBOeecc84555xz
+zsfylh1b3rKDc84555yv4ek+55yP6uk+7/R0/+j/7z+9g3POOeecc84555yP
+6S07jvrZc84555xzzvd4us855+2e7vOx3d8rzjnnnHPOOeeccz6y/z5v23f2
+e9rexznnnHPO5/J0n3PO2z3d55xzzjnnnHPOOeec85T/Pm/b9+3u1fqcc845
+57zD033OOW/xs+e/ve37OOecc84555xzzjnn/Nvn2nbf9Z12cc4555zzOz3d
+55zzu7z1fW2/E+ecc84555xzzjnnnL87//b+1L5ZPN3nnHPOOef3eLrPOedn
+Pd3nnHPOOeecc84555xz/trf3ZfaM5qn+5xzzjnn/Jyn+5xz/q1v3de2l3PO
+Oeecc84555xzzvnn87ado3i6zznnnHPOv/N0n3POv/V0n3POOeecc84555xz
+zjlv9nSfc84555z/6ek+55y/u/aet30H55xzzjnnnHPOOeecc97g6T7nnHPO
++aqe7nPO1/V0n3POOeecc84555xzzjlf2dN9zjnnnPPZPd3nnM/v6T7nnHPO
+Oeecc84555xzzt9fbbs455xzzmfxdJ9zPr9v3de2l3POOeecc84555xzzjlf
+2dN9zjnnnPNZPN3nnM/v6T7nnHPOOeecc84555xzzrfvO3vOOeecc87/9HSf
+cz6Pb93XtpdzzjnnnHPOOeecc8455+c93eecc845b/V0n3M+j6f7nHPOOeec
+c84555xzzjnv8XSfc8455zzt6T7nfB5P9znnnHPOOeecc84555xz3u/pPuec
+c875U57uc87n8XSfc84555xzzjnnnHPOOef9nu5zzjnnnD/l6T7nvNeffu6s
+t/1+nHPOOeecc84555xzzjn/3tN9zjnnnPOrPd3nnOe9/X1nvWUH55xzzjnn
+nHPOOeecc873e7rPOeecc37U033O+fW+dd9T/ZbfpWUH55xzzjnnnHPOOeec
+c86v83Sfc84553zL033O+XFP90fZ2/Y7cM4555xzzjnnnHPOOef8vKf7nHPO
+Oedbnu5zzrc93R/9+9q+l3POOeecc84555xzzjnn93m6zznnnHP+4+k+57yn
+zznnnHPOOeecc84555xzPrqn+5xzzjnnP57uc857+pxzzjnnnHPOOeecc845
+57N6us8555zz9Tzd53xFP3re9h2cc84555xzzjnnnHPOOeejeLrPOeec8/U8
+3ed8Zk/3Oeecc84555xzzjnnnHPOeUefc8455+t5us/5DJ7uc84555xzzjnn
+nHPOOeecz+ZXvffsOeecc875UU/3OR/Jj563fQfnnHPOOeecc84555xzznm7
+X/Xep5/jnHPOOf/xdJ/zkTzd55xzzjnnnHPOOeecc845n9XfnW/9+a496Q7n
+nHPOx/d0n/ORPN3nnHPOOeecc84555xzzjnnnZ7uc84557zP033OG33rvra9
+nHPOOeecc84555xzzjnnvNPTfc4555znPN3nvNHTfc4555xzzjnnnHPOOeec
+cz63p/ucc845v9/Tfc4b/ez5t9723ZxzzjnnnHPOOeecc8455zzr6T7nnHPO
+r/N0n/OkP/3cb2/7PTjnnHPOOeecc84555xzznnW033OOeecX+fpPudPeNv7
+/Dubc84555xzzjnnnHPOOeec7/F0n3POOef7Pd3n/EpP9znnnHPOOeecc845
+55xzzjl/0tN9zjnnnL/3dJ/zI57uc84555xzzjnnnHPOOeecc97s6T7nnHPO
+833Oj/jWfW17Oeecc84555xzzjnnnHPOOX/S033OOeec5/ucf/J0n3POOeec
+c84555xzzjnnnPOZPN3nnHPOV/J0n/NPnu5zzjnnnHPOOeecc84555xzvoKn
++5xzzvmMnu5z/snTfc4555xzzjnnnHPOOeecc85X8HSfc845n9HTfc4b+pxz
+zjnnnHPOOeecc84555zz91fbLs4553wET/c5b+hzzjnnnHPOOeecc84555xz
+zt9fbbs455zzETzd5/yK89/e9n2cc84555xzzjnnnHPOOeecj+jpPueccz6y
+p/t8LX/qfW3fzTnnnHPOOeecc84555xzznnS9z5/9pxzzjnn+T5fy9N9zjnn
+nHPOOeecc84555xzzvl9nu5zzjnnTZ7u87U83eecc84555xzzjnnnHPOOeec
+P+/pPuecc57wdJ/P6ek+55xzzjnnnHPOOeecc84557zf033OOef8Tk/3+Zye
+7nPOOeecc84555xzzjnnnHPO+z3d55xzzu/0dJ/P6ek+55xzzjnnnHPOOeec
+c84553xcT/c555zzKzzd53P60efbvoNzzjnnnHPOOeecc84555xz3uPpPuec
+c77H030+p6f7nHPOOeecc84555xzzjnnnPP5PN3nnHPO93i6z8f2dJ9zzjnn
+nHPOOeecc84555xzztN9zjnn/JWn+3xsT/c555xzzjnnnHPOOeecc8455zzd
+55xzzl95us/H9nSfc84555xzzjnnnHPOOeecc87Tfc455/yVp/t8bE/3Oeec
+c84555xzzjnnnHPOOefz+7v7zp5zzjnnd3q6z8f2dJ9zzjnnnHPOOeecc845
+55xzzt/51tW2l3PO+Vye7vOxPd3nnHPOOeecc84555xzzjnnnPO9nu5zzjlf
+w9N9PrZv3de2l3POOeecc84555xzzjnnnHPO33m6zznnfC5P9/nYnu5zzjnn
+nHPOOeecc84555xzzvlVnu5zzjmfy9N9Pran+0/71b/D3bs455xzzjnnnHPO
+Oeecc8455997us8553wuT/f52J7uz7633Vt2cM4555xzzjnnnHPOOeecc36n
+p/ucc87H9HSfj+1b9/n3D//GW3ZwzjnnnHPOOeecc84555xz/ulq28U557zb
+030+tj/9HF/Lt/781A7OOeecc84555xzzjnnnHO+tqf7nHPOx/R0n4/tZ885
+P+ItOzjnnHPOOeecc84555xzzvnanu5zzjnv9nSfd3n7+zj/5C07OOecc845
+55xzzjnnnHPO+Rqe7nPOOe/2dJ9nfLYO55+8ZQfnnHPOOeecc84555xzzjmf
+y9N9zjnn3Z7u82s83R9tF1/LW3ZwzjnnnHPOOeecc84555zzuTzd55xz3u3p
+Pt/n6b7v4DN5yw7OOeecc84555xzzjnnnHM+l6f7nHPOOzzd56893fd9fAVv
+2cE555xzzjnnnHPOOeecc87n8nSfc855h6f7q/jR87bvSP9OnF/pLTs455xz
+zjnnnHPOOeecc875XJ7uc8457/B0f1RP92f1dJ+v5S07OOecc84555xzzjnn
+nHPO+Vye7nPOOe/wdL/d033e0edruL+XnHPOOeecc84555xzzjnnc/m781SX
+c875Wp7ut3u6zzv6fE5v2cE555xzzjnnnHPOOf//9ucgBQAQBALg/3/dCyLI
+SMs5Oouscs457+ZV7tj1aM4557yHZ/ff9tN71f7r5tn9/G2vcgfnnHPOOeec
+c84555xzznlVn+WruatHc84557/4AEAsnLA=
+ "], {{0, 0}, {401, 401}}, {0, 1}], Frame -> Automatic,
+ FrameLabel -> {None, None}, FrameTicks -> {{None, None}, {None, None}},
+ GridLinesStyle -> Directive[
+ GrayLevel[0.5, 0.4]],
+ Method -> {
+ "DefaultBoundaryStyle" -> Automatic, "DefaultPlotStyle" -> Automatic}],
+ FormBox[
+ FormBox[
+ TemplateBox[{"\"Divergent\"",
+ RowBox[{"-", "1.5`"}], "0", "0.75`"}, "SwatchLegend",
+ DisplayFunction -> (FormBox[
+ StyleBox[
+ StyleBox[
+ PaneBox[
+ TagBox[
+ GridBox[{{
+ TagBox[
+ GridBox[{{
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[1., 0., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #2}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 1., 0.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #3}, {
+ GraphicsBox[{
+ Directive[
+ EdgeForm[
+ Directive[
+ Opacity[0.3],
+ GrayLevel[0]]],
+ PointSize[0.5],
+ AbsoluteThickness[1.6],
+ RGBColor[0., 0., 1.]],
+ RectangleBox[{0, 0}, {10, 10}, "RoundingRadius" -> 0]},
+ AspectRatio -> Full, ImageSize -> {10, 10},
+ PlotRangePadding -> None, ImagePadding -> Automatic,
+ BaselinePosition -> (Scaled[0.1] -> Baseline)], #4}},
+ GridBoxAlignment -> {
+ "Columns" -> {Center, Left}, "Rows" -> {{Baseline}}},
+ AutoDelete -> False,
+ GridBoxDividers -> {
+ "Columns" -> {{False}}, "Rows" -> {{False}}},
+ GridBoxItemSize -> {"Columns" -> {{All}}, "Rows" -> {{All}}},
+ GridBoxSpacings -> {
+ "Columns" -> {{0.5}}, "Rows" -> {{0.5}}}], "Grid"]}},
+ GridBoxAlignment -> {"Columns" -> {{Left}}, "Rows" -> {{Top}}},
+ AutoDelete -> False,
+ GridBoxItemSize -> {
+ "Columns" -> {{Automatic}}, "Rows" -> {{Automatic}}},
+ GridBoxSpacings -> {"Columns" -> {{1}}, "Rows" -> {{0}}}],
+ "Grid"], Alignment -> Left, AppearanceElements -> None,
+ ImageMargins -> {{5, 5}, {5, 5}}, ImageSizeAction ->
+ "ResizeToFit"], LineIndent -> 0, StripOnInput -> False], {
+ FontFamily -> "Arial"}, Background -> Automatic, StripOnInput ->
+ False], TraditionalForm]& ),
+ InterpretationFunction :> (RowBox[{"SwatchLegend", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.], FrameTicks ->
+ None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[1., 0., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0.6666666666666667, 0., 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[1., 0., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[1., 0., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[1., 0., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 1., 0.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0.6666666666666667, 0.],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 1., 0.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 1., 0.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 1., 0.], Editable -> False, Selectable ->
+ False], "]"}], ",",
+ RowBox[{"Directive", "[",
+ InterpretationBox[
+ ButtonBox[
+ TooltipBox[
+ GraphicsBox[{{
+ GrayLevel[0],
+ RectangleBox[{0, 0}]}, {
+ GrayLevel[0],
+ RectangleBox[{1, -1}]}, {
+ RGBColor[0., 0., 1.],
+ RectangleBox[{0, -1}, {2, 1}]}}, AspectRatio -> 1, Frame ->
+ True, FrameStyle -> RGBColor[0., 0., 0.6666666666666667],
+ FrameTicks -> None, PlotRangePadding -> None, ImageSize ->
+ Dynamic[{
+ Automatic, 1.35 CurrentValue["FontCapHeight"]/
+ AbsoluteCurrentValue[Magnification]}]],
+ "RGBColor[0., 0., 1.]"], Appearance -> None,
+ BaseStyle -> {}, BaselinePosition -> Baseline,
+ DefaultBaseStyle -> {}, ButtonFunction :>
+ With[{Typeset`box$ = EvaluationBox[]},
+ If[
+ Not[
+ AbsoluteCurrentValue["Deployed"]],
+ SelectionMove[Typeset`box$, All, Expression];
+ FrontEnd`Private`$ColorSelectorInitialAlpha = 1;
+ FrontEnd`Private`$ColorSelectorInitialColor =
+ RGBColor[0., 0., 1.];
+ FrontEnd`Private`$ColorSelectorUseMakeBoxes = True;
+ MathLink`CallFrontEnd[
+ FrontEnd`AttachCell[Typeset`box$,
+ FrontEndResource["RGBColorValueSelector"], {
+ 0, {Left, Bottom}}, {Left, Top},
+ "ClosingActions" -> {
+ "SelectionDeparture", "ParentChanged",
+ "EvaluatorQuit"}]]]], BaseStyle -> Inherited, Evaluator ->
+ Automatic, Method -> "Preemptive"],
+ RGBColor[0., 0., 1.], Editable -> False, Selectable ->
+ False], "]"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{#, ",", #2, ",", #3, ",", #4}], "}"}], ",",
+ RowBox[{"LegendMarkers", "\[Rule]", "Automatic"}], ",",
+ RowBox[{"LabelStyle", "\[Rule]",
+ RowBox[{"{", "}"}]}], ",",
+ RowBox[{"LegendLayout", "\[Rule]", "\"Column\""}]}], "]"}]& ),
+ Editable -> True], TraditionalForm], TraditionalForm]},
+ "Legended",
+ DisplayFunction->(GridBox[{{
+ TagBox[
+ ItemBox[
+ PaneBox[
+ TagBox[#, "SkipImageSizeLevel"], Alignment -> {Center, Baseline},
+ BaselinePosition -> Baseline], DefaultBaseStyle -> "Labeled"],
+ "SkipImageSizeLevel"],
+ ItemBox[#2, DefaultBaseStyle -> "LabeledLabel"]}},
+ GridBoxAlignment -> {"Columns" -> {{Center}}, "Rows" -> {{Center}}},
+ AutoDelete -> False, GridBoxItemSize -> Automatic,
+ BaselinePosition -> {1, 1}]& ),
+ Editable->True,
+ InterpretationFunction->(RowBox[{"Legended", "[",
+ RowBox[{#, ",",
+ RowBox[{"Placed", "[",
+ RowBox[{#2, ",", "After"}], "]"}]}], "]"}]& )]], "Output",
+ CellChangeTimes->{3.6631017417896557`*^9, 3.6641618531627593`*^9}]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+},
+WindowSize->{759, 833},
+WindowMargins->{{553, Automatic}, {Automatic, 52}},
+FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
+StyleDefinitions->"Default.nb"
+]
+(* End of Notebook Content *)
+
+(* Internal cache information *)
+(*CellTagsOutline
+CellTagsIndex->{}
+*)
+(*CellTagsIndex
+CellTagsIndex->{}
+*)
+(*NotebookFileOutline
+Notebook[{
+Cell[CellGroupData[{
+Cell[580, 22, 125, 1, 90, "Title"],
+Cell[708, 25, 107, 1, 30, "Text"],
+Cell[CellGroupData[{
+Cell[840, 30, 99, 1, 63, "Section"],
+Cell[942, 33, 473, 13, 49, "Text"],
+Cell[1418, 48, 515, 17, 45, "DisplayFormula"],
+Cell[1936, 67, 391, 7, 68, "Text"],
+Cell[2330, 76, 427, 7, 87, "Text"],
+Cell[2760, 85, 1405, 36, 144, "Text"],
+Cell[4168, 123, 371, 8, 49, "Text"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[4576, 136, 91, 1, 63, "Section"],
+Cell[CellGroupData[{
+Cell[4692, 141, 104, 1, 43, "Subsection"],
+Cell[4799, 144, 1473, 39, 112, "Input"],
+Cell[CellGroupData[{
+Cell[6297, 187, 287, 7, 34, "Input"],
+Cell[6587, 196, 493, 16, 61, "Output"]
+}, Open ]],
+Cell[7095, 215, 11016, 259, 1146, "Input"]
+}, Closed]],
+Cell[CellGroupData[{
+Cell[18148, 479, 101, 1, 35, "Subsection"],
+Cell[CellGroupData[{
+Cell[18274, 484, 383, 9, 34, "Input"],
+Cell[18660, 495, 16926, 334, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[35623, 834, 485, 11, 34, "Input"],
+Cell[36111, 847, 52522, 918, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[88670, 1770, 337, 9, 34, "Input"],
+Cell[89010, 1781, 66648, 1151, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[155695, 2937, 608, 12, 34, "Input"],
+Cell[156306, 2951, 60137, 990, 374, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[216480, 3946, 281, 8, 34, "Input"],
+Cell[216764, 3956, 58447, 963, 374, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[275248, 4924, 583, 12, 34, "Input"],
+Cell[275834, 4938, 14251, 277, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[290122, 5220, 580, 12, 34, "Input"],
+Cell[290705, 5234, 16523, 313, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[307265, 5552, 1030, 26, 52, "Input"],
+Cell[308298, 5580, 33995, 611, 376, "Output"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[342330, 6196, 623, 15, 31, "Input"],
+Cell[342956, 6213, 32351, 580, 376, "Output"]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}
+]
+*)
+
diff --git a/calc-diffeq-analysis/complex-operations.nb b/calc-diffeq-analysis/complex-operations.nb
index e9d3973..aeb9181 100644
--- a/calc-diffeq-analysis/complex-operations.nb
+++ b/calc-diffeq-analysis/complex-operations.nb
@@ -1,743 +1,743 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.4' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 25716, 735]
-NotebookOptionsPosition[ 24175, 680]
-NotebookOutlinePosition[ 24518, 695]
-CellTagsIndexPosition[ 24475, 692]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Complex Operations", "Title",
- CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
- 3.7768014692411594`*^9, 3.7768014727414646`*^9}}],
-
-Cell["Adam Rumpf, 3/20/2017", "Text",
- CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
- 3.776801479279549*^9, 3.7768014811941967`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
-
-Cell["\<\
-This program consists of a single Manipulate environment that displays \
-vectors in the complex plane. The blue and red vectors represent inputs, and \
-can be clicked and dragged, while the purple vector represents the output of \
-a chosen mathematical operation or function.\
-\>", "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.7768017314717674`*^9, 3.7768017781690865`*^9}, {3.776801808899147*^9,
- 3.7768018444568605`*^9}, {3.7768022110736027`*^9, 3.776802220503076*^9}}],
-
-Cell["The following operations and functions are included:", "Text",
- CellChangeTimes->{{3.776806090808209*^9, 3.776806097009242*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[TextData[{
- "Addition (",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "+", "y"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806132799117*^9}}],
-
-Cell[TextData[{
- "Multiplication (",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", "\[CenterDot]", "y"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.7768061393541117`*^9}}],
-
-Cell["Sine", "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806115929446*^9}}],
-
-Cell["Cosine", "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806116821181*^9}}],
-
-Cell["Tangent", "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.7768061179967833`*^9}}],
-
-Cell[TextData[{
- "Reciprocal (",
- Cell[BoxData[
- FormBox[
- SuperscriptBox["x",
- RowBox[{"-", "1"}]], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806151631158*^9}}],
-
-Cell[TextData[{
- "Square (",
- Cell[BoxData[
- FormBox[
- SuperscriptBox["x", "2"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
- 3.7768062766849318`*^9, 3.7768062766909494`*^9}}],
-
-Cell[TextData[{
- "Exponential (",
- Cell[BoxData[
- FormBox[
- SuperscriptBox["\[ExponentialE]", "x"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
- 3.7768062766849318`*^9, 3.77680628942142*^9}}],
-
-Cell[TextData[{
- "Gamma (",
- Cell[BoxData[
- FormBox[
- RowBox[{"\[CapitalGamma]", "(", "x", ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
- 3.7768062766849318`*^9, 3.7768062996951275`*^9}}],
-
-Cell[TextData[{
- "Riemann Zeta (",
- Cell[BoxData[
- FormBox[
- RowBox[{"\[Zeta]", "(", "x", ")"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ")"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
- 3.7768062766849318`*^9, 3.7768063117433167`*^9}, {3.7768063485136228`*^9,
- 3.77680635223643*^9}}],
-
-Cell[TextData[{
- "Geometric Series (",
- Cell[BoxData[
- FormBox[
- RowBox[{
- UnderoverscriptBox["\[Sum]",
- RowBox[{"n", "=", "0"}], "\[Infinity]"],
- SuperscriptBox["x", "n"]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ") (uses analytic continuation outside of unit disk)"
-}], "Item",
- CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
- 3.7768062766849318`*^9, 3.7768063780661554`*^9}}]
-}, Open ]],
-
-Cell["\<\
-General exponentiation and logarithm have been excluded because they are \
-multivalued for complex numbers.\
-\>", "Text",
- CellChangeTimes->{{3.776806824485301*^9, 3.7768068827046947`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Code", "Section",
- CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Initialization", "Subsection",
- CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{"plotting", " ", "limits"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"lim", "=", "5"}], ";"}]}]], "Input",
- CellChangeTimes->{{3.776805753963585*^9, 3.776805767131317*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- "convert", " ", "real", " ", "ordered", " ", "pair", " ", "to", " ",
- "complex", " ", "number"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"r2c", "[", "x_", "]"}], ":=",
- RowBox[{
- RowBox[{"x", "[",
- RowBox[{"[", "1", "]"}], "]"}], "+",
- RowBox[{"I", " ",
- RowBox[{"x", "[",
- RowBox[{"[", "2", "]"}], "]"}]}]}]}]}]], "Input",
- CellChangeTimes->{{3.776801933425262*^9, 3.7768019670958586`*^9}, {
- 3.7768020413249216`*^9, 3.776802050696921*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- "convert", " ", "complex", " ", "number", " ", "to", " ", "real", " ",
- "ordered", " ", "pair"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"c2r", "[", "x_", "]"}], ":=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Re", "[", "x", "]"}], ",",
- RowBox[{"Im", "[", "x", "]"}]}], "}"}]}]}]], "Input",
- CellChangeTimes->{{3.7768020323527966`*^9, 3.7768020685350246`*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"defining", " ", "number"}], "-",
- RowBox[{
- "coded", " ", "functions", " ", "of", " ", "two", " ", "complex", " ",
- "numbers"}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"1", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"x", "+", "y"}]}],
- RowBox[{"(*", " ", "addition", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"2", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"x", "*", "y"}]}],
- RowBox[{"(*", " ", "multiplication", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"3", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"Sin", "[", "x", "]"}]}],
- RowBox[{"(*", " ", "sine", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"4", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"Cos", "[", "x", "]"}]}],
- RowBox[{"(*", " ", "cosine", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"5", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"Tan", "[", "x", "]"}]}],
- RowBox[{"(*", " ", "tangent", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"6", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"Abs", "[", "x", "]"}], ">", "0"}], ",",
- SuperscriptBox["x",
- RowBox[{"-", "1"}]], ",", "0"}], "]"}]}],
- RowBox[{"(*", " ", "reciprocal", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"7", ",", "x_", ",", "y_"}], "]"}], ":=",
- SuperscriptBox["x", "2"]}],
- RowBox[{"(*", " ", "square", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"8", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"Exp", "[", "x", "]"}]}],
- RowBox[{"(*", " ", "exponential", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"9", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"Gamma", "[", "x", "]"}]}],
- RowBox[{"(*", " ", "gamma", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"10", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"x", "\[NotEqual]", "1"}], ",",
- RowBox[{"Zeta", "[", "x", "]"}], ",", "0"}], "]"}]}],
- RowBox[{"(*", " ",
- RowBox[{"Riemann", " ", "zeta"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"f", "[",
- RowBox[{"11", ",", "x_", ",", "y_"}], "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"x", "\[NotEqual]", "1"}], ",",
- FractionBox["1",
- RowBox[{"1", "-", "x"}]], ",", "0"}], "]"}],
- RowBox[{"(*", " ",
- RowBox[{"geometric", " ", "series"}], " ", "*)"}]}]}]}]], "Input",
- CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9}, {
- 3.7768018839274416`*^9, 3.776801928231472*^9}, {3.776801974855852*^9,
- 3.7768020136011786`*^9}, {3.7768020875865145`*^9, 3.7768020957260685`*^9}, {
- 3.776802201367442*^9, 3.7768022089608955`*^9}, {3.7768022491821136`*^9,
- 3.776802350762313*^9}, {3.7768024108724613`*^9, 3.776802471984173*^9}, {
- 3.776805177450968*^9, 3.776805198823731*^9}, {3.7768055062781434`*^9,
- 3.776805548045538*^9}, {3.776805645742075*^9, 3.7768056709341574`*^9}, {
- 3.776806207657678*^9, 3.776806232588927*^9}, {3.7768065907962184`*^9,
- 3.7768065911730776`*^9}, {3.776806660211052*^9, 3.7768066617139273`*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- "number", " ", "of", " ", "arguments", " ", "corresponding", " ", "to",
- " ", "each", " ", "function", " ", "number"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "1", "]"}], "=", "2"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "2", "]"}], "=", "2"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "3", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "4", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "5", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "6", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "7", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "8", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "9", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "10", "]"}], "=", "1"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "11", "]"}], "=", "1"}], ";"}]}]}]], "Input",
- CellChangeTimes->{{3.7768039990118065`*^9, 3.7768040512699957`*^9},
- 3.7768043371736517`*^9, {3.7768051317051907`*^9, 3.776805131903183*^9}, {
- 3.776805585191716*^9, 3.7768055877289114`*^9}, {3.776806199834099*^9,
- 3.7768062028248205`*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- "background", " ", "shading", " ", "for", " ", "each", " ", "function",
- " ", "number"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "1", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "2", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "3", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "4", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "5", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "6", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "7", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "8", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "9", "]"}], "=",
- RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "10", "]"}], "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Opacity", "[", "0.5", "]"}], ",", "LightBlue", ",",
- RowBox[{"Rectangle", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",",
- RowBox[{"-", "lim"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"lim", ",", "lim"}], "}"}]}], "]"}], ",", "LightRed", ",",
- RowBox[{"Rectangle", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "lim"}], ",",
- RowBox[{"-", "lim"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "lim"}], "}"}]}], "]"}], ",", "LightYellow", ",",
- RowBox[{"Rectangle", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",",
- RowBox[{"-", "lim"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"1", ",", "lim"}], "}"}]}], "]"}], ",",
- RowBox[{"Opacity", "[", "1.0", "]"}]}], "}"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"bg", "[", "11", "]"}], "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Opacity", "[", "0.5", "]"}], ",", "LightOrange", ",",
- RowBox[{"Disk", "[", "]"}], ",",
- RowBox[{"Opacity", "[", "1.0", "]"}]}], "}"}]}], ";"}]}]}]], "Input",
- CellChangeTimes->{{3.7768057419534063`*^9, 3.7768057509764414`*^9}, {
- 3.7768058352401676`*^9, 3.7768060097709656`*^9}, {3.776806185100443*^9,
- 3.7768061962756395`*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"stores", " ", "previous", " ", "y"}], "-", "coordinates"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"prevy", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "0.5"}], ",", "2"}], "}"}]}], ";"}]}]], "Input",
- CellChangeTimes->{{3.776804714421626*^9, 3.7768047375213194`*^9}}]
-}, Closed]],
-
-Cell[CellGroupData[{
-
-Cell["Demonstration", "Subsection",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "z", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"z", "=",
- RowBox[{"c2r", "[",
- RowBox[{"f", "[",
- RowBox[{"mode", ",",
- RowBox[{"r2c", "[", "x", "]"}], ",",
- RowBox[{"r2c", "[", "y", "]"}]}], "]"}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "mode", "]"}], "\[Equal]", "2"}], ",",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"Max", "[", "y", "]"}], "<",
- RowBox[{"10", "lim"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"prevy", "=", "y"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"y", "=", "prevy"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"y", "=", "prevy"}]}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"y", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"10", "lim"}], ",",
- RowBox[{"10", "lim"}]}], "}"}]}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Graphics", "[",
- RowBox[{"Join", "[",
- RowBox[{
- RowBox[{"bg", "[", "mode", "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"PointSize", "[", "Large", "]"}], ",", "Blue", ",",
- RowBox[{"Point", "[", "x", "]"}], ",",
- RowBox[{"Arrow", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], ",", "x"}], "}"}], "]"}]}],
- "}"}], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"args", "[", "mode", "]"}], "\[Equal]", "2"}], ",",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"Point", "[", "y", "]"}], ",",
- RowBox[{"Arrow", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], ",", "y"}], "}"}], "]"}]}],
- "}"}], ",",
- RowBox[{"{", "}"}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"Purple", ",",
- RowBox[{"Point", "[", "z", "]"}], ",",
- RowBox[{"Arrow", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], ",", "z"}], "}"}], "]"}]}],
- "}"}]}], "]"}], "]"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "lim"}], ",", "lim"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "lim"}], ",", "lim"}], "}"}]}], "}"}]}], ",",
- RowBox[{"Axes", "\[Rule]", "True"}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}]}],
- "\[IndentingNewLine]", "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"mode", ",", "1", ",", "\"\\""}], "}"}],
- ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"1", "\[Rule]", "\"\\""}], ",",
- RowBox[{"2", "\[Rule]", "\"\\""}], ",",
- RowBox[{"3", "\[Rule]", "\"\\""}], ",",
- RowBox[{"4", "\[Rule]", "\"\\""}], ",",
- RowBox[{"5", "\[Rule]", "\"\\""}], ",",
- RowBox[{
- "6", "\[Rule]", "\"\<\!\(\*SuperscriptBox[\(x\), \(-1\)]\)\>\""}], ",",
- RowBox[{
- "7", "\[Rule]", "\"\<\!\(\*SuperscriptBox[\(x\), \(2\)]\)\>\""}], ",",
- RowBox[{
- "8", "\[Rule]",
- "\"\<\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)\>\""}], ",",
- RowBox[{"9", "\[Rule]", "\"\<\[CapitalGamma](x)\>\""}], ",",
- RowBox[{"10", "\[Rule]", "\"\<\[Zeta](x)\>\""}], ",",
- RowBox[{
- "11", "\[Rule]",
- "\"\<\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \(\[Infinity]\)]\
-\)\!\(\*SuperscriptBox[\(x\), \(n\)]\)\>\""}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"x", ",",
- RowBox[{"{",
- RowBox[{"2", ",", "0.5"}], "}"}]}], "}"}], ",", "Locator"}], "}"}],
- ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"y", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-", "0.5"}], ",", "2"}], "}"}]}], "}"}], ",", "Locator"}],
- "}"}]}], "]"}]], "Input",
- CellChangeTimes->CompressedData["
-1:eJxTTMoPSmViYGAQBWIQrXavId1b+Y2jWYhiBogOW2IWsw5IC7BvyAPRzn3l
-JSD61c9FnSD6yOE/c0H0r4UzF4Loih/i60D0MR4pMM1wYfcWEN1wwmsXiGa1
-fLAPRLPVrjoBovvfrj4HohWWLTgPoounfr4GorfP4LsBoufte3obRFcZNb0B
-qzcX/Qii163o+QWim6fPZFwPMs+8nxlEG82LZwfRp6zteEH0hr3NIiC6teyW
-HIh2MV5hCqKz7CtcQTTDzigvEK12KNwXRK8JcQwD0R8Xz48A0XqMF9JA9ImK
-P1kgevFkwSIQPSOqowys/8/6dhDNdf1CB4i+fODOfrD4sbiDIBoA3Jepaw==
-
- "]],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`mode$$ = 1, $CellContext`x$$ = {
- 2, 0.5}, $CellContext`y$$ = {-0.5, 2}, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`mode$$], 1, "operation/function"}, {
- 1 -> "x+y", 2 -> "x\[CenterDot]y", 3 -> "sin(x)", 4 -> "cos(x)", 5 ->
- "tan(x)", 6 -> "\!\(\*SuperscriptBox[\(x\), \(-1\)]\)", 7 ->
- "\!\(\*SuperscriptBox[\(x\), \(2\)]\)", 8 ->
- "\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)", 9 ->
- "\[CapitalGamma](x)", 10 -> "\[Zeta](x)", 11 ->
- "\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \
-\(\[Infinity]\)]\)\!\(\*SuperscriptBox[\(x\), \(n\)]\)"}}, {{
- Hold[$CellContext`x$$], {2, 0.5}}, Automatic}, {{
- Hold[$CellContext`y$$], {-0.5, 2}}, Automatic}}, Typeset`size$$ = {
- 360., {176., 182.}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`mode$48059$$ = False},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm,
- "Variables" :> {$CellContext`mode$$ =
- 1, $CellContext`x$$ = {2, 0.5}, $CellContext`y$$ = {-0.5, 2}},
- "ControllerVariables" :> {
- Hold[$CellContext`mode$$, $CellContext`mode$48059$$, False]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :>
- Module[{$CellContext`z$}, $CellContext`z$ = $CellContext`c2r[
- $CellContext`f[$CellContext`mode$$,
- $CellContext`r2c[$CellContext`x$$],
- $CellContext`r2c[$CellContext`y$$]]];
- If[$CellContext`args[$CellContext`mode$$] == 2,
- If[Max[$CellContext`y$$] <
- 10 $CellContext`lim, $CellContext`prevy = $CellContext`y$$, \
-$CellContext`y$$ = $CellContext`prevy;
- Null]; $CellContext`y$$ = $CellContext`prevy, $CellContext`y$$ = {
- 10 $CellContext`lim, 10 $CellContext`lim}; Null]; Show[
- Graphics[
- Join[
- $CellContext`bg[$CellContext`mode$$], {
- PointSize[Large], Blue,
- Point[$CellContext`x$$],
- Arrow[{{0, 0}, $CellContext`x$$}]},
- If[$CellContext`args[$CellContext`mode$$] == 2, {Red,
- Point[$CellContext`y$$],
- Arrow[{{0, 0}, $CellContext`y$$}]}, {}], {Purple,
- Point[$CellContext`z$],
- Arrow[{{0, 0}, $CellContext`z$}]}]],
- PlotRange -> {{-$CellContext`lim, $CellContext`lim}, \
-{-$CellContext`lim, $CellContext`lim}}, Axes -> True,
- AxesLabel -> {"Re", "Im"}]],
- "Specifications" :> {{{$CellContext`mode$$, 1, "operation/function"}, {
- 1 -> "x+y", 2 -> "x\[CenterDot]y", 3 -> "sin(x)", 4 -> "cos(x)", 5 ->
- "tan(x)", 6 -> "\!\(\*SuperscriptBox[\(x\), \(-1\)]\)", 7 ->
- "\!\(\*SuperscriptBox[\(x\), \(2\)]\)", 8 ->
- "\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)", 9 ->
- "\[CapitalGamma](x)", 10 -> "\[Zeta](x)", 11 ->
- "\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \(\[Infinity]\)]\)\
-\!\(\*SuperscriptBox[\(x\), \(n\)]\)"}}, {{$CellContext`x$$, {2, 0.5}},
- Automatic, ControlType -> Locator}, {{$CellContext`y$$, {-0.5, 2}},
- Automatic, ControlType -> Locator}}, "Options" :> {},
- "DefaultOptions" :> {}],
- ImageSizeCache->{417., {227., 233.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{3.7768060757320585`*^9, 3.7768064122662535`*^9,
- 3.7768065048257113`*^9, 3.776806594529003*^9, 3.7768066759197564`*^9}]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-},
-WindowSize->{759, 833},
-WindowMargins->{{70, Automatic}, {Automatic, 55}},
-FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
-StyleDefinitions->"Default.nb"
-]
-(* End of Notebook Content *)
-
-(* Internal cache information *)
-(*CellTagsOutline
-CellTagsIndex->{}
-*)
-(*CellTagsIndex
-CellTagsIndex->{}
-*)
-(*NotebookFileOutline
-Notebook[{
-Cell[CellGroupData[{
-Cell[580, 22, 156, 2, 90, "Title"],
-Cell[739, 26, 156, 2, 30, "Text"],
-Cell[CellGroupData[{
-Cell[920, 32, 99, 1, 63, "Section"],
-Cell[1022, 35, 517, 8, 68, "Text"],
-Cell[1542, 45, 134, 1, 30, "Text"],
-Cell[CellGroupData[{
-Cell[1701, 50, 222, 8, 29, "Item"],
-Cell[1926, 60, 241, 8, 29, "Item"],
-Cell[2170, 70, 88, 1, 29, "Item"],
-Cell[2261, 73, 90, 1, 29, "Item"],
-Cell[2354, 76, 93, 1, 29, "Item"],
-Cell[2450, 79, 245, 9, 31, "Item"],
-Cell[2698, 90, 274, 9, 31, "Item"],
-Cell[2975, 101, 290, 9, 29, "Item"],
-Cell[3268, 112, 291, 9, 30, "Item"],
-Cell[3562, 123, 340, 10, 30, "Item"],
-Cell[3905, 135, 430, 12, 30, "Item"]
-}, Open ]],
-Cell[4350, 150, 199, 4, 49, "Text"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[4586, 159, 91, 1, 63, "Section"],
-Cell[CellGroupData[{
-Cell[4702, 164, 102, 1, 43, "Subsection"],
-Cell[4807, 167, 248, 6, 52, "Input"],
-Cell[5058, 175, 553, 15, 52, "Input"],
-Cell[5614, 192, 454, 12, 52, "Input"],
-Cell[6071, 206, 3553, 86, 279, "Input"],
-Cell[9627, 294, 1683, 54, 252, "Input"],
-Cell[11313, 350, 2821, 83, 292, "Input"],
-Cell[14137, 435, 376, 11, 52, "Input"]
-}, Closed]],
-Cell[CellGroupData[{
-Cell[14550, 451, 105, 1, 35, "Subsection"],
-Cell[CellGroupData[{
-Cell[14680, 456, 5228, 138, 496, "Input"],
-Cell[19911, 596, 4212, 78, 477, "Output"]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}
-]
-*)
-
+(* Content-type: application/vnd.wolfram.mathematica *)
+
+(*** Wolfram Notebook File ***)
+(* http://www.wolfram.com/nb *)
+
+(* CreatedBy='Mathematica 10.4' *)
+
+(*CacheID: 234*)
+(* Internal cache information:
+NotebookFileLineBreakTest
+NotebookFileLineBreakTest
+NotebookDataPosition[ 158, 7]
+NotebookDataLength[ 25716, 735]
+NotebookOptionsPosition[ 24175, 680]
+NotebookOutlinePosition[ 24518, 695]
+CellTagsIndexPosition[ 24475, 692]
+WindowFrame->Normal*)
+
+(* Beginning of Notebook Content *)
+Notebook[{
+
+Cell[CellGroupData[{
+Cell["Complex Operations", "Title",
+ CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
+ 3.7768014692411594`*^9, 3.7768014727414646`*^9}}],
+
+Cell["Adam Rumpf, 3/20/2017", "Text",
+ CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
+ 3.776801479279549*^9, 3.7768014811941967`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Introduction", "Section",
+ CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
+
+Cell["\<\
+This program consists of a single Manipulate environment that displays \
+vectors in the complex plane. The blue and red vectors represent inputs, and \
+can be clicked and dragged, while the purple vector represents the output of \
+a chosen mathematical operation or function.\
+\>", "Text",
+ CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
+ 3.7768017314717674`*^9, 3.7768017781690865`*^9}, {3.776801808899147*^9,
+ 3.7768018444568605`*^9}, {3.7768022110736027`*^9, 3.776802220503076*^9}}],
+
+Cell["The following operations and functions are included:", "Text",
+ CellChangeTimes->{{3.776806090808209*^9, 3.776806097009242*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[TextData[{
+ "Addition (",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "+", "y"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806132799117*^9}}],
+
+Cell[TextData[{
+ "Multiplication (",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", "\[CenterDot]", "y"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.7768061393541117`*^9}}],
+
+Cell["Sine", "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806115929446*^9}}],
+
+Cell["Cosine", "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806116821181*^9}}],
+
+Cell["Tangent", "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.7768061179967833`*^9}}],
+
+Cell[TextData[{
+ "Reciprocal (",
+ Cell[BoxData[
+ FormBox[
+ SuperscriptBox["x",
+ RowBox[{"-", "1"}]], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806151631158*^9}}],
+
+Cell[TextData[{
+ "Square (",
+ Cell[BoxData[
+ FormBox[
+ SuperscriptBox["x", "2"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
+ 3.7768062766849318`*^9, 3.7768062766909494`*^9}}],
+
+Cell[TextData[{
+ "Exponential (",
+ Cell[BoxData[
+ FormBox[
+ SuperscriptBox["\[ExponentialE]", "x"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
+ 3.7768062766849318`*^9, 3.77680628942142*^9}}],
+
+Cell[TextData[{
+ "Gamma (",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"\[CapitalGamma]", "(", "x", ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
+ 3.7768062766849318`*^9, 3.7768062996951275`*^9}}],
+
+Cell[TextData[{
+ "Riemann Zeta (",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"\[Zeta]", "(", "x", ")"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ")"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
+ 3.7768062766849318`*^9, 3.7768063117433167`*^9}, {3.7768063485136228`*^9,
+ 3.77680635223643*^9}}],
+
+Cell[TextData[{
+ "Geometric Series (",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ UnderoverscriptBox["\[Sum]",
+ RowBox[{"n", "=", "0"}], "\[Infinity]"],
+ SuperscriptBox["x", "n"]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ") (uses analytic continuation outside of unit disk)"
+}], "Item",
+ CellChangeTimes->{{3.7768061049497538`*^9, 3.776806176150304*^9}, {
+ 3.7768062766849318`*^9, 3.7768063780661554`*^9}}]
+}, Open ]],
+
+Cell["\<\
+General exponentiation and logarithm have been excluded because they are \
+multivalued for complex numbers.\
+\>", "Text",
+ CellChangeTimes->{{3.776806824485301*^9, 3.7768068827046947`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Code", "Section",
+ CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Initialization", "Subsection",
+ CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{"plotting", " ", "limits"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"lim", "=", "5"}], ";"}]}]], "Input",
+ CellChangeTimes->{{3.776805753963585*^9, 3.776805767131317*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ "convert", " ", "real", " ", "ordered", " ", "pair", " ", "to", " ",
+ "complex", " ", "number"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"r2c", "[", "x_", "]"}], ":=",
+ RowBox[{
+ RowBox[{"x", "[",
+ RowBox[{"[", "1", "]"}], "]"}], "+",
+ RowBox[{"I", " ",
+ RowBox[{"x", "[",
+ RowBox[{"[", "2", "]"}], "]"}]}]}]}]}]], "Input",
+ CellChangeTimes->{{3.776801933425262*^9, 3.7768019670958586`*^9}, {
+ 3.7768020413249216`*^9, 3.776802050696921*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ "convert", " ", "complex", " ", "number", " ", "to", " ", "real", " ",
+ "ordered", " ", "pair"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"c2r", "[", "x_", "]"}], ":=",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Re", "[", "x", "]"}], ",",
+ RowBox[{"Im", "[", "x", "]"}]}], "}"}]}]}]], "Input",
+ CellChangeTimes->{{3.7768020323527966`*^9, 3.7768020685350246`*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{"defining", " ", "number"}], "-",
+ RowBox[{
+ "coded", " ", "functions", " ", "of", " ", "two", " ", "complex", " ",
+ "numbers"}]}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"1", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"x", "+", "y"}]}],
+ RowBox[{"(*", " ", "addition", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"2", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"x", "*", "y"}]}],
+ RowBox[{"(*", " ", "multiplication", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"3", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"Sin", "[", "x", "]"}]}],
+ RowBox[{"(*", " ", "sine", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"4", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"Cos", "[", "x", "]"}]}],
+ RowBox[{"(*", " ", "cosine", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"5", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"Tan", "[", "x", "]"}]}],
+ RowBox[{"(*", " ", "tangent", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"6", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"Abs", "[", "x", "]"}], ">", "0"}], ",",
+ SuperscriptBox["x",
+ RowBox[{"-", "1"}]], ",", "0"}], "]"}]}],
+ RowBox[{"(*", " ", "reciprocal", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"7", ",", "x_", ",", "y_"}], "]"}], ":=",
+ SuperscriptBox["x", "2"]}],
+ RowBox[{"(*", " ", "square", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"8", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"Exp", "[", "x", "]"}]}],
+ RowBox[{"(*", " ", "exponential", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"9", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"Gamma", "[", "x", "]"}]}],
+ RowBox[{"(*", " ", "gamma", " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"10", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"x", "\[NotEqual]", "1"}], ",",
+ RowBox[{"Zeta", "[", "x", "]"}], ",", "0"}], "]"}]}],
+ RowBox[{"(*", " ",
+ RowBox[{"Riemann", " ", "zeta"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"f", "[",
+ RowBox[{"11", ",", "x_", ",", "y_"}], "]"}], ":=",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{"x", "\[NotEqual]", "1"}], ",",
+ FractionBox["1",
+ RowBox[{"1", "-", "x"}]], ",", "0"}], "]"}],
+ RowBox[{"(*", " ",
+ RowBox[{"geometric", " ", "series"}], " ", "*)"}]}]}]}]], "Input",
+ CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9}, {
+ 3.7768018839274416`*^9, 3.776801928231472*^9}, {3.776801974855852*^9,
+ 3.7768020136011786`*^9}, {3.7768020875865145`*^9, 3.7768020957260685`*^9}, {
+ 3.776802201367442*^9, 3.7768022089608955`*^9}, {3.7768022491821136`*^9,
+ 3.776802350762313*^9}, {3.7768024108724613`*^9, 3.776802471984173*^9}, {
+ 3.776805177450968*^9, 3.776805198823731*^9}, {3.7768055062781434`*^9,
+ 3.776805548045538*^9}, {3.776805645742075*^9, 3.7768056709341574`*^9}, {
+ 3.776806207657678*^9, 3.776806232588927*^9}, {3.7768065907962184`*^9,
+ 3.7768065911730776`*^9}, {3.776806660211052*^9, 3.7768066617139273`*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ "number", " ", "of", " ", "arguments", " ", "corresponding", " ", "to",
+ " ", "each", " ", "function", " ", "number"}], " ", "*)"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "1", "]"}], "=", "2"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "2", "]"}], "=", "2"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "3", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "4", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "5", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "6", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "7", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "8", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "9", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "10", "]"}], "=", "1"}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "11", "]"}], "=", "1"}], ";"}]}]}]], "Input",
+ CellChangeTimes->{{3.7768039990118065`*^9, 3.7768040512699957`*^9},
+ 3.7768043371736517`*^9, {3.7768051317051907`*^9, 3.776805131903183*^9}, {
+ 3.776805585191716*^9, 3.7768055877289114`*^9}, {3.776806199834099*^9,
+ 3.7768062028248205`*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ "background", " ", "shading", " ", "for", " ", "each", " ", "function",
+ " ", "number"}], " ", "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "1", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "2", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "3", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "4", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "5", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "6", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "7", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "8", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "9", "]"}], "=",
+ RowBox[{"{", "}"}]}], ";"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "10", "]"}], "=",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Opacity", "[", "0.5", "]"}], ",", "LightBlue", ",",
+ RowBox[{"Rectangle", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",",
+ RowBox[{"-", "lim"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"lim", ",", "lim"}], "}"}]}], "]"}], ",", "LightRed", ",",
+ RowBox[{"Rectangle", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "lim"}], ",",
+ RowBox[{"-", "lim"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"0", ",", "lim"}], "}"}]}], "]"}], ",", "LightYellow", ",",
+ RowBox[{"Rectangle", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"0", ",",
+ RowBox[{"-", "lim"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"1", ",", "lim"}], "}"}]}], "]"}], ",",
+ RowBox[{"Opacity", "[", "1.0", "]"}]}], "}"}]}], ";"}],
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{
+ RowBox[{"bg", "[", "11", "]"}], "=",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Opacity", "[", "0.5", "]"}], ",", "LightOrange", ",",
+ RowBox[{"Disk", "[", "]"}], ",",
+ RowBox[{"Opacity", "[", "1.0", "]"}]}], "}"}]}], ";"}]}]}]], "Input",
+ CellChangeTimes->{{3.7768057419534063`*^9, 3.7768057509764414`*^9}, {
+ 3.7768058352401676`*^9, 3.7768060097709656`*^9}, {3.776806185100443*^9,
+ 3.7768061962756395`*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"(*", " ",
+ RowBox[{
+ RowBox[{"stores", " ", "previous", " ", "y"}], "-", "coordinates"}], " ",
+ "*)"}], "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"prevy", "=",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "0.5"}], ",", "2"}], "}"}]}], ";"}]}]], "Input",
+ CellChangeTimes->{{3.776804714421626*^9, 3.7768047375213194`*^9}}]
+}, Closed]],
+
+Cell[CellGroupData[{
+
+Cell["Demonstration", "Subsection",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"Module", "[",
+ RowBox[{
+ RowBox[{"{", "z", "}"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"z", "=",
+ RowBox[{"c2r", "[",
+ RowBox[{"f", "[",
+ RowBox[{"mode", ",",
+ RowBox[{"r2c", "[", "x", "]"}], ",",
+ RowBox[{"r2c", "[", "y", "]"}]}], "]"}], "]"}]}], ";",
+ "\[IndentingNewLine]",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "mode", "]"}], "\[Equal]", "2"}], ",",
+ "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"Max", "[", "y", "]"}], "<",
+ RowBox[{"10", "lim"}]}], ",", "\[IndentingNewLine]",
+ RowBox[{"prevy", "=", "y"}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"y", "=", "prevy"}], ";"}]}], "\[IndentingNewLine]",
+ "]"}], ";", "\[IndentingNewLine]",
+ RowBox[{"y", "=", "prevy"}]}], ",", "\[IndentingNewLine]",
+ RowBox[{
+ RowBox[{"y", "=",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"10", "lim"}], ",",
+ RowBox[{"10", "lim"}]}], "}"}]}], ";"}]}], "\[IndentingNewLine]",
+ "]"}], ";", "\[IndentingNewLine]",
+ RowBox[{"Show", "[",
+ RowBox[{
+ RowBox[{"Graphics", "[",
+ RowBox[{"Join", "[",
+ RowBox[{
+ RowBox[{"bg", "[", "mode", "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"PointSize", "[", "Large", "]"}], ",", "Blue", ",",
+ RowBox[{"Point", "[", "x", "]"}], ",",
+ RowBox[{"Arrow", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"0", ",", "0"}], "}"}], ",", "x"}], "}"}], "]"}]}],
+ "}"}], ",",
+ RowBox[{"If", "[",
+ RowBox[{
+ RowBox[{
+ RowBox[{"args", "[", "mode", "]"}], "\[Equal]", "2"}], ",",
+ RowBox[{"{",
+ RowBox[{"Red", ",",
+ RowBox[{"Point", "[", "y", "]"}], ",",
+ RowBox[{"Arrow", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"0", ",", "0"}], "}"}], ",", "y"}], "}"}], "]"}]}],
+ "}"}], ",",
+ RowBox[{"{", "}"}]}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"Purple", ",",
+ RowBox[{"Point", "[", "z", "]"}], ",",
+ RowBox[{"Arrow", "[",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"0", ",", "0"}], "}"}], ",", "z"}], "}"}], "]"}]}],
+ "}"}]}], "]"}], "]"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "lim"}], ",", "lim"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "lim"}], ",", "lim"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"Axes", "\[Rule]", "True"}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}]}],
+ "\[IndentingNewLine]", "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"mode", ",", "1", ",", "\"\\""}], "}"}],
+ ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"1", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"2", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"3", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"4", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"5", "\[Rule]", "\"\\""}], ",",
+ RowBox[{
+ "6", "\[Rule]", "\"\<\!\(\*SuperscriptBox[\(x\), \(-1\)]\)\>\""}], ",",
+ RowBox[{
+ "7", "\[Rule]", "\"\<\!\(\*SuperscriptBox[\(x\), \(2\)]\)\>\""}], ",",
+ RowBox[{
+ "8", "\[Rule]",
+ "\"\<\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)\>\""}], ",",
+ RowBox[{"9", "\[Rule]", "\"\<\[CapitalGamma](x)\>\""}], ",",
+ RowBox[{"10", "\[Rule]", "\"\<\[Zeta](x)\>\""}], ",",
+ RowBox[{
+ "11", "\[Rule]",
+ "\"\<\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \(\[Infinity]\)]\
+\)\!\(\*SuperscriptBox[\(x\), \(n\)]\)\>\""}]}], "}"}]}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"x", ",",
+ RowBox[{"{",
+ RowBox[{"2", ",", "0.5"}], "}"}]}], "}"}], ",", "Locator"}], "}"}],
+ ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"y", ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"-", "0.5"}], ",", "2"}], "}"}]}], "}"}], ",", "Locator"}],
+ "}"}]}], "]"}]], "Input",
+ CellChangeTimes->CompressedData["
+1:eJxTTMoPSmViYGAQBWIQrXavId1b+Y2jWYhiBogOW2IWsw5IC7BvyAPRzn3l
+JSD61c9FnSD6yOE/c0H0r4UzF4Loih/i60D0MR4pMM1wYfcWEN1wwmsXiGa1
+fLAPRLPVrjoBovvfrj4HohWWLTgPoounfr4GorfP4LsBoufte3obRFcZNb0B
+qzcX/Qii163o+QWim6fPZFwPMs+8nxlEG82LZwfRp6zteEH0hr3NIiC6teyW
+HIh2MV5hCqKz7CtcQTTDzigvEK12KNwXRK8JcQwD0R8Xz48A0XqMF9JA9ImK
+P1kgevFkwSIQPSOqowys/8/6dhDNdf1CB4i+fODOfrD4sbiDIBoA3Jepaw==
+
+ "]],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`mode$$ = 1, $CellContext`x$$ = {
+ 2, 0.5}, $CellContext`y$$ = {-0.5, 2}, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`mode$$], 1, "operation/function"}, {
+ 1 -> "x+y", 2 -> "x\[CenterDot]y", 3 -> "sin(x)", 4 -> "cos(x)", 5 ->
+ "tan(x)", 6 -> "\!\(\*SuperscriptBox[\(x\), \(-1\)]\)", 7 ->
+ "\!\(\*SuperscriptBox[\(x\), \(2\)]\)", 8 ->
+ "\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)", 9 ->
+ "\[CapitalGamma](x)", 10 -> "\[Zeta](x)", 11 ->
+ "\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \
+\(\[Infinity]\)]\)\!\(\*SuperscriptBox[\(x\), \(n\)]\)"}}, {{
+ Hold[$CellContext`x$$], {2, 0.5}}, Automatic}, {{
+ Hold[$CellContext`y$$], {-0.5, 2}}, Automatic}}, Typeset`size$$ = {
+ 360., {176., 182.}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`mode$48059$$ = False},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm,
+ "Variables" :> {$CellContext`mode$$ =
+ 1, $CellContext`x$$ = {2, 0.5}, $CellContext`y$$ = {-0.5, 2}},
+ "ControllerVariables" :> {
+ Hold[$CellContext`mode$$, $CellContext`mode$48059$$, False]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :>
+ Module[{$CellContext`z$}, $CellContext`z$ = $CellContext`c2r[
+ $CellContext`f[$CellContext`mode$$,
+ $CellContext`r2c[$CellContext`x$$],
+ $CellContext`r2c[$CellContext`y$$]]];
+ If[$CellContext`args[$CellContext`mode$$] == 2,
+ If[Max[$CellContext`y$$] <
+ 10 $CellContext`lim, $CellContext`prevy = $CellContext`y$$, \
+$CellContext`y$$ = $CellContext`prevy;
+ Null]; $CellContext`y$$ = $CellContext`prevy, $CellContext`y$$ = {
+ 10 $CellContext`lim, 10 $CellContext`lim}; Null]; Show[
+ Graphics[
+ Join[
+ $CellContext`bg[$CellContext`mode$$], {
+ PointSize[Large], Blue,
+ Point[$CellContext`x$$],
+ Arrow[{{0, 0}, $CellContext`x$$}]},
+ If[$CellContext`args[$CellContext`mode$$] == 2, {Red,
+ Point[$CellContext`y$$],
+ Arrow[{{0, 0}, $CellContext`y$$}]}, {}], {Purple,
+ Point[$CellContext`z$],
+ Arrow[{{0, 0}, $CellContext`z$}]}]],
+ PlotRange -> {{-$CellContext`lim, $CellContext`lim}, \
+{-$CellContext`lim, $CellContext`lim}}, Axes -> True,
+ AxesLabel -> {"Re", "Im"}]],
+ "Specifications" :> {{{$CellContext`mode$$, 1, "operation/function"}, {
+ 1 -> "x+y", 2 -> "x\[CenterDot]y", 3 -> "sin(x)", 4 -> "cos(x)", 5 ->
+ "tan(x)", 6 -> "\!\(\*SuperscriptBox[\(x\), \(-1\)]\)", 7 ->
+ "\!\(\*SuperscriptBox[\(x\), \(2\)]\)", 8 ->
+ "\!\(\*SuperscriptBox[\(\[ExponentialE]\), \(x\)]\)", 9 ->
+ "\[CapitalGamma](x)", 10 -> "\[Zeta](x)", 11 ->
+ "\!\(\*UnderoverscriptBox[\(\[Sum]\), \(n = 0\), \(\[Infinity]\)]\)\
+\!\(\*SuperscriptBox[\(x\), \(n\)]\)"}}, {{$CellContext`x$$, {2, 0.5}},
+ Automatic, ControlType -> Locator}, {{$CellContext`y$$, {-0.5, 2}},
+ Automatic, ControlType -> Locator}}, "Options" :> {},
+ "DefaultOptions" :> {}],
+ ImageSizeCache->{417., {227., 233.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{3.7768060757320585`*^9, 3.7768064122662535`*^9,
+ 3.7768065048257113`*^9, 3.776806594529003*^9, 3.7768066759197564`*^9}]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+},
+WindowSize->{759, 833},
+WindowMargins->{{70, Automatic}, {Automatic, 55}},
+FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
+StyleDefinitions->"Default.nb"
+]
+(* End of Notebook Content *)
+
+(* Internal cache information *)
+(*CellTagsOutline
+CellTagsIndex->{}
+*)
+(*CellTagsIndex
+CellTagsIndex->{}
+*)
+(*NotebookFileOutline
+Notebook[{
+Cell[CellGroupData[{
+Cell[580, 22, 156, 2, 90, "Title"],
+Cell[739, 26, 156, 2, 30, "Text"],
+Cell[CellGroupData[{
+Cell[920, 32, 99, 1, 63, "Section"],
+Cell[1022, 35, 517, 8, 68, "Text"],
+Cell[1542, 45, 134, 1, 30, "Text"],
+Cell[CellGroupData[{
+Cell[1701, 50, 222, 8, 29, "Item"],
+Cell[1926, 60, 241, 8, 29, "Item"],
+Cell[2170, 70, 88, 1, 29, "Item"],
+Cell[2261, 73, 90, 1, 29, "Item"],
+Cell[2354, 76, 93, 1, 29, "Item"],
+Cell[2450, 79, 245, 9, 31, "Item"],
+Cell[2698, 90, 274, 9, 31, "Item"],
+Cell[2975, 101, 290, 9, 29, "Item"],
+Cell[3268, 112, 291, 9, 30, "Item"],
+Cell[3562, 123, 340, 10, 30, "Item"],
+Cell[3905, 135, 430, 12, 30, "Item"]
+}, Open ]],
+Cell[4350, 150, 199, 4, 49, "Text"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[4586, 159, 91, 1, 63, "Section"],
+Cell[CellGroupData[{
+Cell[4702, 164, 102, 1, 43, "Subsection"],
+Cell[4807, 167, 248, 6, 52, "Input"],
+Cell[5058, 175, 553, 15, 52, "Input"],
+Cell[5614, 192, 454, 12, 52, "Input"],
+Cell[6071, 206, 3553, 86, 279, "Input"],
+Cell[9627, 294, 1683, 54, 252, "Input"],
+Cell[11313, 350, 2821, 83, 292, "Input"],
+Cell[14137, 435, 376, 11, 52, "Input"]
+}, Closed]],
+Cell[CellGroupData[{
+Cell[14550, 451, 105, 1, 35, "Subsection"],
+Cell[CellGroupData[{
+Cell[14680, 456, 5228, 138, 496, "Input"],
+Cell[19911, 596, 4212, 78, 477, "Output"]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}
+]
+*)
+
diff --git a/calc-diffeq-analysis/continuous-discrete-logistic-growth.nb b/calc-diffeq-analysis/continuous-discrete-logistic-growth.nb
index 7e7b9f3..62b917c 100644
--- a/calc-diffeq-analysis/continuous-discrete-logistic-growth.nb
+++ b/calc-diffeq-analysis/continuous-discrete-logistic-growth.nb
@@ -1,1845 +1,1845 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.4' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 91073, 1837]
-NotebookOptionsPosition[ 89492, 1780]
-NotebookOutlinePosition[ 89836, 1795]
-CellTagsIndexPosition[ 89793, 1792]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Continuous Versus Discrete Logistic Growth", "Title",
- CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
- 3.7771302883123703`*^9, 3.7771303074624567`*^9}}],
-
-Cell["Adam Rumpf, 11/4/2014", "Text",
- CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
- 3.7771303248362846`*^9, 3.777130326323276*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
-
-Cell["\<\
-This demonstration is meant to compare the continuous and the discrete \
-versions of the logistic growth model. Both are population models which cause \
-the population to be limited due to limited resources. The continuous model \
-is usually given by the ODE\
-\>", "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.7771662972954435`*^9, 3.777166370927112*^9}}],
-
-Cell[BoxData[
- RowBox[{"\t",
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{"r", " ", "x",
- RowBox[{"(",
- RowBox[{"L", "-", "x"}], ")"}]}]}]}]], "Input",
- CellChangeTimes->{{3.777166387219908*^9, 3.777166431475397*^9},
- 3.777166462432236*^9}],
-
-Cell[TextData[{
- "where ",
- Cell[BoxData[
- FormBox["x", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the population as a function of time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "1"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the intrinsic growth rate, and ",
- Cell[BoxData[
- FormBox["L", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the carrying capacity. Notice that this equation results in ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], ">", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " when ",
- Cell[BoxData[
- FormBox[
- RowBox[{"0", "<", "x", "<", "L"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]", "x"}],
- RowBox[{"\[DifferentialD]", "t"}]], "<", "0"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " when ",
- Cell[BoxData[
- FormBox[
- RowBox[{"x", ">", "L"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", meaning that the population should grow while below ",
- Cell[BoxData[
- FormBox["L", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " and shrink while above ",
- Cell[BoxData[
- FormBox["L", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", which is how the carrying capacity is enforced."
-}], "Text",
- CellChangeTimes->{{3.777166439165693*^9, 3.7771665664048877`*^9}, {
- 3.777166749606275*^9, 3.7771667502513075`*^9}}],
-
-Cell["\<\
-The discrete analog of this model is usually given as the discrete logistic \
-map\
-\>", "Text",
- CellChangeTimes->{{3.7771665709646397`*^9, 3.777166587554802*^9}}],
-
-Cell[BoxData[
- RowBox[{"\t",
- RowBox[{
- SubscriptBox["x",
- RowBox[{"n", "+", "1"}]], "=",
- RowBox[{"r", " ",
- SubscriptBox["x", "n"],
- RowBox[{"(",
- RowBox[{"1", "-",
- SubscriptBox["x", "n"]}], ")"}]}]}]}]], "DisplayFormula",
- CellChangeTimes->{{3.7771665980882196`*^9, 3.7771666127458467`*^9}}],
-
-Cell[TextData[{
- "where ",
- Cell[BoxData[
- FormBox[
- SubscriptBox["x", "n"], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is the population at time step ",
- Cell[BoxData[
- FormBox["n", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", ">", "1"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " is again the intrinsic growth rate, and we generally assume that the \
-population units have been scaled so that the carrying capacity can be stated \
-as 1. Note, however, that 1 is not actually the equilibrium solution of this \
-system: solving ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- RowBox[{"r", " ",
- RowBox[{
- SuperscriptBox["x", "*"], "(",
- RowBox[{"1", "-",
- SuperscriptBox["x", "*"]}], ")"}]}]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " yields the (nonzero) equilibrium solution as ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox["x", "*"], "=",
- FractionBox[
- RowBox[{"r", "-", "1"}], "r"]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- "."
-}], "Text",
- CellChangeTimes->{{3.7771666153555794`*^9, 3.7771667546392555`*^9}}],
-
-Cell[TextData[{
- "The figures below show how these two models behave side-by-side as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " changes. In order to remove the potential confusion of the continuous \
-model having a constant equilibrium while the discrete model does not, we \
-will always rescale the continuous model so that ",
- Cell[BoxData[
- FormBox[
- RowBox[{"L", "=",
- FractionBox[
- RowBox[{"r", "-", "1"}], "r"]}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- ", meaning that both models will always have the same carrying capacity."
-}], "Text",
- CellChangeTimes->{{3.777166775775532*^9, 3.7771668855378103`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Code", "Section",
- CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Initialization", "Subsection",
- CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"logfinal", "[",
- RowBox[{"x0_", ",", "r_", ",", "lim_", ",", "end_"}], "]"}], ":=",
- RowBox[{"Partition", "[",
- RowBox[{
- RowBox[{"Riffle", "[",
- RowBox[{
- RowBox[{"ConstantArray", "[",
- RowBox[{"r", ",", "end"}], "]"}], ",",
- RowBox[{
- RowBox[{"RecurrenceTable", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"x", "[",
- RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
- RowBox[{"r", " ",
- RowBox[{"x", "[", "n", "]"}],
- RowBox[{"(",
- RowBox[{"1", "-",
- RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
- RowBox[{
- RowBox[{"x", "[", "0", "]"}], "\[Equal]", "x0"}]}], "}"}], ",",
- "x", ",",
- RowBox[{"{",
- RowBox[{"n", ",", "0", ",", "lim"}], "}"}]}], "]"}], "[",
- RowBox[{"[",
- RowBox[{
- RowBox[{"-", "end"}], ";;"}], "]"}], "]"}]}], "]"}], ",", "2"}],
- "]"}]}]], "Input",
- CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9},
- 3.7771657470625243`*^9}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"dlmplot", "=",
- RowBox[{"Flatten", "[",
- RowBox[{
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"logfinal", "[",
- RowBox[{"0.4", ",", "r", ",", "100", ",", "20"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"r", ",", "1.005", ",", "4", ",", "0.005"}], "}"}]}], "]"}],
- ",", "1"}], "]"}]}], ";"}]], "Input",
- CellChangeTimes->{{3.777165890525441*^9, 3.777165913718752*^9}, {
- 3.777166055921769*^9, 3.777166058420776*^9}}]
-}, Closed]],
-
-Cell[CellGroupData[{
-
-Cell["Demonstration", "Subsection",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
-
-Cell[TextData[{
- "We begin by showing a time series of population versus time for both \
-models. Try gradually increasing ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " from 1 all the way to 4. At first the two models should produce nearly \
-identical behavior, but after ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[GreaterEqual]", "2"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the discrete version should begin to produce oscillations which the \
-continuous model does not. This is because the discrete model allows the \
-carrying capacity to be slightly overshot between iterations, after which we \
-must experience negative growth. The overshooting goes on for several \
-iterations before dying down."
-}], "Text",
- CellChangeTimes->{{3.77716693393746*^9, 3.7771669739303837`*^9}, {
- 3.777167026954685*^9, 3.7771672398192244`*^9}}],
-
-Cell[TextData[{
- "After ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[GreaterEqual]", "3"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the growth rate is large enough that the oscillations no longer die down \
-and instead remain as periodic orbits. Increasing ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " even further beyond this point causes the orbits to increase in period, \
-from 2 to 4 and then 8 and so on, until for very large values of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the results are completely chaotic."
-}], "Text",
- CellChangeTimes->{{3.77716693393746*^9, 3.7771669739303837`*^9}, {
- 3.777167026954685*^9, 3.777167286432896*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"Evaluate", "[",
- RowBox[{
- FractionBox[
- RowBox[{
- SuperscriptBox["E",
- RowBox[{"L", " ", "r", " ", "t"}]], "L", " ", "0.4"}],
- RowBox[{"L", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["E",
- RowBox[{"L", " ", "r", " ", "t"}]], "-", "1"}], ")"}],
- "0.4"}]}]], "/.",
- RowBox[{"L", "\[Rule]",
- FractionBox[
- RowBox[{"r", "-", "1"}], "r"]}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"t", ",", "0.001", ",", "30"}], "}"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
- RowBox[{"ListPlot", "[",
- RowBox[{
- RowBox[{"RecurrenceTable", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"x", "[",
- RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
- RowBox[{"r", " ",
- RowBox[{"x", "[", "n", "]"}],
- RowBox[{"(",
- RowBox[{"1", "-",
- RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
- RowBox[{
- RowBox[{"x", "[", "0", "]"}], "\[Equal]", "0.4"}]}], "}"}], ",",
- "x", ",",
- RowBox[{"{",
- RowBox[{"n", ",", "0", ",", "30"}], "}"}]}], "]"}], ",",
- RowBox[{"Joined", "\[Rule]", "True"}], ",",
- RowBox[{"Mesh", "\[Rule]", "Full"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}],
- "}"}], "}"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.0005", ",", "4", ",",
- "0.0005"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
- 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
- 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
- 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
- 3.7771649653355174`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 3.032, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1.2}, 1.0005, 4, 0.0005}}, Typeset`size$$ = {
- 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$74990$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$74990$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- Plot[
- Evaluate[
- ReplaceAll[
- E^($CellContext`L $CellContext`r$$ $CellContext`t) $CellContext`L
- 0.4/($CellContext`L + (
- E^($CellContext`L $CellContext`r$$ $CellContext`t) - 1)
- 0.4), $CellContext`L -> ($CellContext`r$$ -
- 1)/$CellContext`r$$]], {$CellContext`t, 0.001, 30},
- PlotRange -> {0, 1}, PlotLabel -> "continuous",
- AxesLabel -> {"t", "x(t)"}],
- ListPlot[
-
- RecurrenceTable[{$CellContext`x[$CellContext`n +
- 1] == $CellContext`r$$ $CellContext`x[$CellContext`n] (
- 1 - $CellContext`x[$CellContext`n]), $CellContext`x[0] ==
- 0.4}, $CellContext`x, {$CellContext`n, 0, 30}], Joined -> True,
- Mesh -> Full, PlotRange -> {0, 1}, PlotLabel -> "discrete",
- AxesLabel -> {"t", "x(t)"}]}}],
- "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.0005, 4, 0.0005}},
- "Options" :> {}, "DefaultOptions" :> {}],
- ImageSizeCache->{438., {130., 136.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.777164540906799*^9, 3.7771645573735876`*^9}, {
- 3.777164611045705*^9, 3.777164660389118*^9}, {3.7771647044469786`*^9,
- 3.7771647308643694`*^9}, {3.777164953963621*^9, 3.7771649658634167`*^9}}]
-}, {2}]],
-
-Cell[TextData[{
- "Below is a pair of static plots for any and all long-term behaviours of \
-each model as a function of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- ". If the model converges to a single equilibrium, then that equilibrium \
-value is plotted as a point, while if the model oscillates indefinitely, all \
-points in the periodic orbit are plotted. As expected from the above \
-observations, the continuous model only ever produces a single equilibrium \
-value, while the discrete model does at first, but then after ",
- Cell[BoxData[
- FormBox[
- RowBox[{"r", "\[GreaterEqual]", "3"}], TraditionalForm]],
- FormatType->"TraditionalForm"],
- " begins to divide into multiple values due to oscillation, and for the \
-largest values of ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " the plot is an indiscernible cloud of seemingly random points."
-}], "Text",
- CellChangeTimes->{{3.7771672918691654`*^9, 3.7771675223574295`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- FractionBox[
- RowBox[{"r", "-", "1"}], "r"], ",",
- RowBox[{"{",
- RowBox[{"r", ",", "1.0005", ",", "4"}], "}"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}],
- ",",
- RowBox[{"ListPlot", "[",
- RowBox[{"dlmplot", ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}],
- "}"}], "}"}], "]"}]], "Input",
- CellChangeTimes->{{3.7771657179889126`*^9, 3.7771657311636024`*^9}, {
- 3.777165773220811*^9, 3.777165777454324*^9}, {3.7771658199732375`*^9,
- 3.7771658446488113`*^9}, {3.777165927994836*^9, 3.7771659626038847`*^9}, {
- 3.777167325618328*^9, 3.7771673327173443`*^9}}],
-
-Cell[BoxData[
- TagBox[GridBox[{
- {
- GraphicsBox[{{{}, {},
- {RGBColor[0.368417, 0.506779, 0.709798], AbsoluteThickness[1.6],
- Opacity[1.], LineBox[CompressedData["
-1:eJwVzn840wkcB/AZEzO+fvOk1iqEVCTSD30+Sj/8SKWnErXKj84lrnREQqk7
-kw4ltdOtU0oULqYskaKT9tjhkY5LGWNfl5qNaljjdn+8n/fzep73H+/5YT8E
-RVIpFMpWTf7vbSqHEAZVDsE5n7MEBxE8iLipdpocfs40bzy5Zg/MWfikIF9f
-DhdiXV49mxcOw35b3zJN5MCjs2g8xnFILzi+z5UlhwrcVGOlSIPqVbXs3evk
-8EG4RHSJnw3Wif7hhafk8GDEbOlEEw/6P8ccXTEuB3mD4Z8hVWWQIPY8fGdC
-AYyy3k2l5nWgQx+d3fRxDKSb9S4EtTTBIPWFzLJ3HKotp24dE7fAy0/Me/y+
-z5Ad1ByvJRFBkWUkS93xBSZvmqxZadoB51xdU3O6v0KEWVF03pJOeGgzR7Xn
-HyWc7oE3kyZdIN4wtlwknIARjwb23qo3YMQODMpqm4TkkkMZv+7sBvdH+c5f
-G6cg1H+tLL6uByreqeyuVaqAz6L7L9Z9C05KUvds9TfIG65XV+zshd8DG25Z
-Favho5G/w76Ed2DNnWOvvD8Nf/wlPObFew+SB9wWRvkMuN5vy3Er64PX2pS8
-7wIpaHNjIF8WIAbPkgT3mHYKShrX5e1qFgN3JMz9la8W+hxv9fNw7YepRaal
-viItrHZ2LObe6Ada63bnyEAqEok5gTo6A8AgaIZ/N1NRzedGCfYPgIX/6UMx
-vtooPBoVoVc7ALPtvzcLadLGUqUwdcRAAi1RQ6/7V+ugosT+xY/BEki8bUvP
-rtPBicy2+qt3JWCX1vNbrjsNvU/Sr+jKJNAZtKOoRkDDvYJT50mPQXDKDn6c
-tEoXX0deYC5LHoTUqC7ny5W6aOKgFWorGITONRbmbW6zMGOH9cYE5SDYVQiD
-w8pnoVocy57rMgQsDlGea6uHVkt20VIih2BuqFW85I4eei8ty5rHGwJL0ZWC
-i0x9vHTELkG7bQhMPLvcQm7q48rtTTt0taWgtz7LKdWGjgfjy988c5VCCb/d
-xSuPjuvNbveN7peCH7PnHsvCAGF7+tKFF6UwvGhPeki2AZ6INnkueCgFjhNX
-JDBhoO4175Nu/VLouBLlUHWZgSpvOZtNJ8HqRoVYy8AQwc5MlLyMBHZhDSPh
-F0OciDtfG7GbhFveHldxlhE+WhFnnJFEQo6fz7LiVCMM79jgOFxAQkqAxVoX
-CoHRW1x2fasnIepTaLFxEoFj3d0c/jsSEgtvhjsnE6hTxFGve08CZyfJ2pJC
-YOfLrANCjUsfx11PO0uggHV9RNxHwoefMnNlmQTmt2+yNRwgIZpZc6q1gECX
-D+Y2YVISYreZbuPUEWhmHus5LSMhlRrMuP2UwNVfHrMzRknIfsh71fCMQMnG
-tjhjOQkVNo4+yhcE9j6KiFigIEEzWXVYRGCOY2HMxnESjp2JWejznsDLT8/Y
-cJQknHHjiw+INf/rzVnGEyTkSid4yQMEHm68b8rVuDLgvDVfSmARU/H87iQJ
-Y9bXDReMEljcuta3WUUCtVUs9FIQeKgo4OnWbySYptlz9o4TOC1Lnt+l8fKh
-SuolJYFK+uYqiZqE9VxlQ9kkgfof/+07Mk1CkL9XSouKwJjwWpVC47Dp9NWD
-agIXK5/QkmZIOFHZopyZIXC/85h6RuP/ALOGTdI=
- "]]}}, {}},
- AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
- Axes->{True, True},
- AxesLabel->{
- FormBox["\"r\"", TraditionalForm],
- FormBox["\"long-term\"", TraditionalForm]},
- AxesOrigin->{1., 0},
- DisplayFunction->Identity,
- Frame->{{False, False}, {False, False}},
- FrameLabel->{{None, None}, {None, None}},
- FrameTicks->{{Automatic, Automatic}, {Automatic, Automatic}},
- GridLines->{None, None},
- GridLinesStyle->Directive[
- GrayLevel[0.5, 0.4]],
- ImagePadding->All,
- Method->{
- "DefaultBoundaryStyle" -> Automatic, "DefaultMeshStyle" ->
- AbsolutePointSize[6], "ScalingFunctions" -> None},
- PlotLabel->FormBox["\"continuous\"", TraditionalForm],
- PlotRange->{{1.0005000612142856`, 3.9999999387857144`}, {0, 1}},
- PlotRangeClipping->True,
- PlotRangePadding->{{
- Scaled[0.02],
- Scaled[0.02]}, {0, 0}},
- Ticks->{Automatic, Automatic}],
- GraphicsBox[{{}, {{},
- {RGBColor[0.368417, 0.506779, 0.709798], PointSize[
- 0.002777777777777778], AbsoluteThickness[1.6],
- PointBox[CompressedData["
-1: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
-9De1O7sW+wLDwZz7NNqDG6md/arV7p7jzNZoD26kYmWDbu1+zpmt0R7cSNXW
-/D1xZuv8nj24kXo9eMRb3pkzS6M9mPfzWezLKWUzObM12oObqK1vzeTstnBm
-a7QHN1FD1faaHwvnzNZoD26i7i9RvuaUxZmt0R7cRP02ihhe38CZrdEe3ERl
-7Z7pqauUy5ml0R7cRAWoWvLOnNka7cFNVNStNCprE2e2RntwEzWrvnyOaghn
-tkZ7cBO1NDDPb2IaZ7ZGe3AT9djuR2ZLNWe2RntwE+U8ITRti+w7ziyN9uAm
-yvfJBYurUzmzNXo5polqbc4fHOjMma3RHtxMlU8+WTH5JGe2RntwM6VosmzH
-uXuc2Rrtwc1Uv5cmvjc/cmZrtAc3U7lqV/IPCeZxZmm0BzdTF6d7i8tocmZr
-tAc3U/lPbYpXzeXM1mgP5h0P74m1um3jzNZoD26mViguG6wXwpmt0R7cTI2w
-9s9JTOXM1mgPbqZsa69+5KvizNZoD26mtkou+yTS/z1nlkZ7cDMle0Ntd7YO
-Z7ZGe3AL9c+ivyfObI324BZqxdaBEuE7OLM12oNbqJht/0y5HsqZrdEe3EKV
-PlQ4sDOVM1ujPbiFmrfCdMeAr5zZGu3BLdS60isPHMXyObM02oNbqPf7tPJ5
-Z84sjfbgFsos/JHT6tmc2RrtwS3UmOe2rf02cmZrtAe3UF/DVUZuP82ZrdEe
-3ELdy1/qFnuPM1ujPbiFqr7i7hhTwJmtm3qeULdQ5z1az3q0cmZrtAe3UmaC
-H090DivgzNJoD26lsn/oZC005szWaA9upfK32hXwzpxZembPAbGV6oqTNVi1
-F7uTYa733dEe3EoZjnV1kwvnzNZoD26l1j1PbAh6wpmtD/W8oN9KXZMpnlf5
-iTNboz2Y9/ju/nvizNZoD26lNta92Vmp9IEzS6M9mPd8RsndOJjizNZoD+bd
-HwPdk4fbc2ZrtAe3Uv66NVvc9nJma7QHt1E9/9xhKGe2RntwG3Ux7NpyzyTO
-bI324Dbqtm/JZr1izmyN9uA2qlU+xC+1lTNboz24jYofWqWkJF/Y61iGud53
-R3twG6Vf6HjaRp8zW6M9uI3Sm+e02GYhZ7ZGe3AbZb6gqkBxE2e2RntwG9UZ
-FOr11I8zW6M9uI06kVSfMDmWM1ujPbiNejJM6vv+LOxkhrned0d7cBu1K6xq
-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
-hIT7p7xGQbjnbArahXuWA2MEf0OhTwH3LvuCCX774Uwl3J/zrCP4sEtOirhP
-k4gjeJ5UbUIvaV9I8KLvXv/b0/fBHCTtLodm2T4KcHFr7cZri5Fvktrbh/vr
-n0onQzDfEXG9DffCm06vxPswa54e3N//NHc27gXuruvA/RlJ/iW4j2Ua7cL9
-zWAFdtwzM38h9LJfTi3APTXXgNDvLu/lxP0VkeOduLfh9+fGPen2IkLPJS3L
-9Y+n74M5SFvPrONeSaMAs29cm/d4JvLua1V34D5NQenbI8ybxvnz4T7sgHEQ
-3hduHZDEfYg+ryDuA48/F8R9RnKZLe5JcsfEcK93cLUM7j0jOdfivtBpvzHu
-m3IHNuJea4GfIu4XDLcI495siKaH+5nZ1zbg/mvGc9V/PH0fzEHafDLTcmiU
-Aly2/czHcVorsLnGJ65hzH8OIk+MYX5vRf81vOfgXCuL9xfzNn3EfU6H3eUv
-mM+V9knAveTu1qqvmH8Y9K0D958SnGrx/mHfrXTce5Ry3MR79QbOetw/fPx4
-Fu5PHVvzFvdXbKm2uG9bv78S93ZtRiv+8fR9MAdplzdXecIEBfhYD/vmM43I
-+35yXJaMefeUdGsTzCtz6qsnYj6k0LjNCvNWBgnpSZhnKx4incR852h4ON5v
-6Wo+Y4l5/WX7z+F9b6SHgRnmqy2fleD9FdP1wacwn84ffgjvD71KmmeO+fU2
-yoN479bHORvvl7da7sB70+zP5//p6fvg6Z8nN9LZDs6gAufWbKEtzUe+WoTz
-ux7m+1r6733KQ/612b6rhzAfHhWWz431yW3WOYcxryBMs5zA+khpw2AtzMv4
-eC6di/XWjoc+6WL+ZpeVxHesH9sxIq2Neb1Aew52rL+z75UV3stW3kj4ifVf
-eZ7fxXvTiJNzWbFe5kz9QrzfE/JWeea0p++DOUgp80dLu1iowKvTfwZyPEFe
-83vUkinMm4VnFQY/Rn4zj4d0P+Y3xjMXf8G8SlCd5Tjmu9+FcMViXupzuRIZ
-8/41904OYt7uE7lzDPORlyNYUjAf+zDciIr5t6MaNu2YJ+1asPIz5q+4vt//
-HPMWxo2NNMybqH7za8B8yOuqvlHMFz9L4Ho17en7YA5SVZ3sg71zqcBaixfn
-+NxB/ttDpxnRmFemuVC+hyM/3PAmWhfzHPFHNu3D+oZsl5wbmNcdj9cSjUA+
-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
-7pM9y6y8Uu3/ALJUdMY=
- "]]}, {}}, {}},
- AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
- Axes->{True, True},
- AxesLabel->{
- FormBox["\"r\"", TraditionalForm],
- FormBox["\"long-term\"", TraditionalForm]},
- AxesOrigin->{0.958203125, 0},
- DisplayFunction->Identity,
- Frame->{{False, False}, {False, False}},
- FrameLabel->{{None, None}, {None, None}},
- FrameTicks->{{Automatic, Automatic}, {Automatic, Automatic}},
- GridLines->{None, None},
- GridLinesStyle->Directive[
- GrayLevel[0.5, 0.4]],
- ImagePadding->All,
- Method->{"CoordinatesToolOptions" -> {"DisplayFunction" -> ({
- (Part[{{Identity, Identity}, {Identity, Identity}}, 1, 2][#]& )[
- Part[#, 1]],
- (Part[{{Identity, Identity}, {Identity, Identity}}, 2, 2][#]& )[
- Part[#, 2]]}& ), "CopiedValueFunction" -> ({
- (Part[{{Identity, Identity}, {Identity, Identity}}, 1, 2][#]& )[
- Part[#, 1]],
- (Part[{{Identity, Identity}, {Identity, Identity}}, 2, 2][#]& )[
- Part[#, 2]]}& )}},
- PlotLabel->FormBox["\"discrete\"", TraditionalForm],
- PlotRange->{{1.005, 4.}, {0, 1}},
- PlotRangeClipping->True,
- PlotRangePadding->{{
- Scaled[0.02],
- Scaled[0.02]}, {0, 0}},
- Ticks->{Automatic, Automatic}]}
- },
- GridBoxAlignment->{
- "Columns" -> {{Left}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}},
- "RowsIndexed" -> {}},
- GridBoxSpacings->{"Columns" -> {
- Offset[0.27999999999999997`], {
- Offset[2.0999999999999996`]},
- Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
- Offset[0.2], {
- Offset[0.4]},
- Offset[0.2]}, "RowsIndexed" -> {}}],
- Function[BoxForm`e$,
- TableForm[BoxForm`e$]]]], "Output",
- CellChangeTimes->{
- 3.777165731941354*^9, 3.7771657820785303`*^9, {3.7771658378010435`*^9,
- 3.7771658501008472`*^9}, {3.777165934060048*^9, 3.7771659669945774`*^9},
- 3.777166070392551*^9, 3.7771673335171857`*^9}]
-}, {2}]],
-
-Cell[TextData[{
- "The following two Manipulate environments are interactive versions of the \
-above observations. The first shows the continuous model\[CloseCurlyQuote]s \
-time series alongside its long-term solutions, both as ",
- Cell[BoxData[
- FormBox["r", TraditionalForm]],
- FormatType->"TraditionalForm"],
- " changes, and the second shows the same for the discrete model. For the \
-discrete model, observe how the long-term series begins to split just as the \
-time series begins to experience undamped oscillation."
-}], "Text",
- CellChangeTimes->{{3.7771675269872046`*^9, 3.777167533399252*^9}, {
- 3.7771676214465485`*^9, 3.777167728826147*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Plot", "[",
- RowBox[{
- RowBox[{"Evaluate", "[",
- RowBox[{
- FractionBox[
- RowBox[{
- SuperscriptBox["E",
- RowBox[{"L", " ", "r", " ", "t"}]], "L", " ", "0.4"}],
- RowBox[{"L", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- SuperscriptBox["E",
- RowBox[{"L", " ", "r", " ", "t"}]], "-", "1"}], ")"}],
- "0.4"}]}]], "/.",
- RowBox[{"L", "\[Rule]",
- FractionBox[
- RowBox[{"r", "-", "1"}], "r"]}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"t", ",", "0.001", ",", "30"}], "}"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
- RowBox[{"Plot", "[",
- RowBox[{
- FractionBox[
- RowBox[{"rr", "-", "1"}], "rr"], ",",
- RowBox[{"{",
- RowBox[{"rr", ",", "1.0005", ",", "r"}], "}"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",", "4"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}],
- "]"}]}], "}"}], "}"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.005", ",", "4", ",",
- "0.005"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
- 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
- 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
- 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
- 3.7771649653355174`*^9}, {3.7771659821597023`*^9, 3.7771659959476337`*^9}, {
- 3.7771660854460907`*^9, 3.7771661285863004`*^9}, {3.777166160232567*^9,
- 3.7771662350691833`*^9}, {3.7771673403857517`*^9, 3.7771673415618715`*^9}, {
- 3.777167559817835*^9, 3.7771676101671667`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 3.305, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1.2}, 1.005, 4, 0.005}}, Typeset`size$$ = {
- 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$140633$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$140633$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- Plot[
- Evaluate[
- ReplaceAll[
- E^($CellContext`L $CellContext`r$$ $CellContext`t) $CellContext`L
- 0.4/($CellContext`L + (
- E^($CellContext`L $CellContext`r$$ $CellContext`t) - 1)
- 0.4), $CellContext`L -> ($CellContext`r$$ -
- 1)/$CellContext`r$$]], {$CellContext`t, 0.001, 30},
- PlotRange -> {0, 1}, PlotLabel -> "continuous",
- AxesLabel -> {"t", "x(t)"}],
-
- Plot[($CellContext`rr - 1)/$CellContext`rr, {$CellContext`rr,
- 1.0005, $CellContext`r$$}, PlotRange -> {{1, 4}, {0, 1}},
- PlotLabel -> "continuous", AxesLabel -> {"r", "long-term"}]}}],
- "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.005, 4, 0.005}},
- "Options" :> {}, "DefaultOptions" :> {}],
- ImageSizeCache->{438., {117., 123.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{{3.777167574221195*^9, 3.777167610995882*^9}}]
-}, {2}]],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"TableForm", "[",
- RowBox[{"{",
- RowBox[{"{",
- RowBox[{
- RowBox[{"ListPlot", "[",
- RowBox[{
- RowBox[{"RecurrenceTable", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"x", "[",
- RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
- RowBox[{"r", " ",
- RowBox[{"x", "[", "n", "]"}],
- RowBox[{"(",
- RowBox[{"1", "-",
- RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
- RowBox[{
- RowBox[{"x", "[", "0", "]"}], "\[Equal]", "0.4"}]}], "}"}], ",",
- "x", ",",
- RowBox[{"{",
- RowBox[{"n", ",", "0", ",", "30"}], "}"}]}], "]"}], ",",
- RowBox[{"Joined", "\[Rule]", "True"}], ",",
- RowBox[{"Mesh", "\[Rule]", "Full"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
- RowBox[{"ListPlot", "[",
- RowBox[{
- RowBox[{"dlmplot", "[",
- RowBox[{"[",
- RowBox[{"1", ";;",
- RowBox[{"20",
- RowBox[{"(",
- RowBox[{
- RowBox[{"Round", "[",
- FractionBox[
- RowBox[{"r", "-", "1.005"}], "0.005"], "]"}], "+", "1"}],
- ")"}]}]}], "]"}], "]"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1", ",", "4"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
- RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
- RowBox[{"AxesLabel", "\[Rule]",
- RowBox[{"{",
- RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}],
- "]"}]}], "}"}], "}"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.005", ",", "4", ",",
- "0.005"}], "}"}]}], "]"}]], "Input",
- CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
- 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
- 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
- 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
- 3.7771649653355174`*^9}, {3.7771659821597023`*^9, 3.7771659959476337`*^9}, {
- 3.7771660854460907`*^9, 3.7771661285863004`*^9}, {3.777166160232567*^9,
- 3.7771662350691833`*^9}, {3.7771673403857517`*^9, 3.7771673415618715`*^9}}],
-
-Cell[BoxData[
- TagBox[
- StyleBox[
- DynamicModuleBox[{$CellContext`r$$ = 3.175, Typeset`show$$ = True,
- Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
- Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
- "\"untitled\"", Typeset`specs$$ = {{{
- Hold[$CellContext`r$$], 1.2}, 1.005, 4, 0.005}}, Typeset`size$$ = {
- 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
- Typeset`skipInitDone$$ = True, $CellContext`r$137964$$ = 0},
- DynamicBox[Manipulate`ManipulateBoxes[
- 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
- "ControllerVariables" :> {
- Hold[$CellContext`r$$, $CellContext`r$137964$$, 0]},
- "OtherVariables" :> {
- Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
- Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
- Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
- Typeset`skipInitDone$$}, "Body" :> TableForm[{{
- ListPlot[
-
- RecurrenceTable[{$CellContext`x[$CellContext`n +
- 1] == $CellContext`r$$ $CellContext`x[$CellContext`n] (
- 1 - $CellContext`x[$CellContext`n]), $CellContext`x[0] ==
- 0.4}, $CellContext`x, {$CellContext`n, 0, 30}], Joined -> True,
- Mesh -> Full, PlotRange -> {0, 1}, PlotLabel -> "discrete",
- AxesLabel -> {"t", "x(t)"}],
- ListPlot[
- Part[$CellContext`dlmplot,
- Span[1, 20 (Round[($CellContext`r$$ - 1.005)/0.005] + 1)]],
- PlotRange -> {{1, 4}, {0, 1}}, PlotLabel -> "discrete",
- AxesLabel -> {"r", "long-term"}]}}],
- "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.005, 4, 0.005}},
- "Options" :> {}, "DefaultOptions" :> {}],
- ImageSizeCache->{438., {117., 123.}},
- SingleEvaluation->True],
- Deinitialization:>None,
- DynamicModuleValues:>{},
- SynchronousInitialization->True,
- UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
- UnsavedVariables:>{Typeset`initDone$$},
- UntrackedVariables:>{Typeset`size$$}], "Manipulate",
- Deployed->True,
- StripOnInput->False],
- Manipulate`InterpretManipulate[1]]], "Output",
- CellChangeTimes->{
- 3.7771660008727407`*^9, 3.7771660666138906`*^9, 3.777166117958968*^9, {
- 3.7771661846076736`*^9, 3.77716623608088*^9}, 3.777167342067255*^9}]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-},
-WindowSize->{759, 833},
-WindowMargins->{{249, Automatic}, {Automatic, 28}},
-FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
-StyleDefinitions->"Default.nb"
-]
-(* End of Notebook Content *)
-
-(* Internal cache information *)
-(*CellTagsOutline
-CellTagsIndex->{}
-*)
-(*CellTagsIndex
-CellTagsIndex->{}
-*)
-(*NotebookFileOutline
-Notebook[{
-Cell[CellGroupData[{
-Cell[580, 22, 180, 2, 144, "Title"],
-Cell[763, 26, 156, 2, 30, "Text"],
-Cell[CellGroupData[{
-Cell[944, 32, 99, 1, 63, "Section"],
-Cell[1046, 35, 399, 7, 68, "Text"],
-Cell[1448, 44, 332, 10, 55, "Input"],
-Cell[1783, 56, 1642, 55, 101, "Text"],
-Cell[3428, 113, 173, 4, 30, "Text"],
-Cell[3604, 119, 325, 10, 25, "DisplayFormula"],
-Cell[3932, 131, 1211, 39, 101, "Text"],
-Cell[5146, 172, 684, 16, 99, "Text"]
-}, Open ]],
-Cell[CellGroupData[{
-Cell[5867, 193, 91, 1, 63, "Section"],
-Cell[CellGroupData[{
-Cell[5983, 198, 102, 1, 43, "Subsection"],
-Cell[6088, 201, 1151, 33, 92, "Input"],
-Cell[7242, 236, 495, 13, 31, "Input"]
-}, Closed]],
-Cell[CellGroupData[{
-Cell[7774, 254, 105, 1, 35, "Subsection"],
-Cell[7882, 257, 897, 19, 125, "Text"],
-Cell[8782, 278, 757, 19, 87, "Text"],
-Cell[CellGroupData[{
-Cell[9564, 301, 2824, 72, 250, "Input"],
-Cell[12391, 375, 2667, 52, 283, "Output"]
-}, {2}]],
-Cell[15070, 430, 1022, 22, 144, "Text"],
-Cell[CellGroupData[{
-Cell[16117, 456, 1293, 32, 163, "Input"],
-Cell[17413, 490, 61123, 1029, 172, "Output"]
-}, {2}]],
-Cell[78548, 1522, 654, 12, 87, "Text"],
-Cell[CellGroupData[{
-Cell[79227, 1538, 2618, 64, 255, "Input"],
-Cell[81848, 1604, 2312, 46, 257, "Output"]
-}, {2}]],
-Cell[CellGroupData[{
-Cell[84194, 1655, 2864, 70, 233, "Input"],
-Cell[87061, 1727, 2382, 47, 257, "Output"]
-}, {2}]]
-}, Open ]]
-}, Open ]]
-}, Open ]]
-}
-]
-*)
-
+(* Content-type: application/vnd.wolfram.mathematica *)
+
+(*** Wolfram Notebook File ***)
+(* http://www.wolfram.com/nb *)
+
+(* CreatedBy='Mathematica 10.4' *)
+
+(*CacheID: 234*)
+(* Internal cache information:
+NotebookFileLineBreakTest
+NotebookFileLineBreakTest
+NotebookDataPosition[ 158, 7]
+NotebookDataLength[ 91073, 1837]
+NotebookOptionsPosition[ 89492, 1780]
+NotebookOutlinePosition[ 89836, 1795]
+CellTagsIndexPosition[ 89793, 1792]
+WindowFrame->Normal*)
+
+(* Beginning of Notebook Content *)
+Notebook[{
+
+Cell[CellGroupData[{
+Cell["Continuous Versus Discrete Logistic Growth", "Title",
+ CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
+ 3.7771302883123703`*^9, 3.7771303074624567`*^9}}],
+
+Cell["Adam Rumpf, 11/4/2014", "Text",
+ CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
+ 3.7771303248362846`*^9, 3.777130326323276*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Introduction", "Section",
+ CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
+
+Cell["\<\
+This demonstration is meant to compare the continuous and the discrete \
+versions of the logistic growth model. Both are population models which cause \
+the population to be limited due to limited resources. The continuous model \
+is usually given by the ODE\
+\>", "Text",
+ CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
+ 3.7771662972954435`*^9, 3.777166370927112*^9}}],
+
+Cell[BoxData[
+ RowBox[{"\t",
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "=",
+ RowBox[{"r", " ", "x",
+ RowBox[{"(",
+ RowBox[{"L", "-", "x"}], ")"}]}]}]}]], "Input",
+ CellChangeTimes->{{3.777166387219908*^9, 3.777166431475397*^9},
+ 3.777166462432236*^9}],
+
+Cell[TextData[{
+ "where ",
+ Cell[BoxData[
+ FormBox["x", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the population as a function of time ",
+ Cell[BoxData[
+ FormBox["t", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "1"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the intrinsic growth rate, and ",
+ Cell[BoxData[
+ FormBox["L", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the carrying capacity. Notice that this equation results in ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], ">", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " when ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"0", "<", "x", "<", "L"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ FractionBox[
+ RowBox[{"\[DifferentialD]", "x"}],
+ RowBox[{"\[DifferentialD]", "t"}]], "<", "0"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " when ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"x", ">", "L"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", meaning that the population should grow while below ",
+ Cell[BoxData[
+ FormBox["L", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " and shrink while above ",
+ Cell[BoxData[
+ FormBox["L", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", which is how the carrying capacity is enforced."
+}], "Text",
+ CellChangeTimes->{{3.777166439165693*^9, 3.7771665664048877`*^9}, {
+ 3.777166749606275*^9, 3.7771667502513075`*^9}}],
+
+Cell["\<\
+The discrete analog of this model is usually given as the discrete logistic \
+map\
+\>", "Text",
+ CellChangeTimes->{{3.7771665709646397`*^9, 3.777166587554802*^9}}],
+
+Cell[BoxData[
+ RowBox[{"\t",
+ RowBox[{
+ SubscriptBox["x",
+ RowBox[{"n", "+", "1"}]], "=",
+ RowBox[{"r", " ",
+ SubscriptBox["x", "n"],
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ SubscriptBox["x", "n"]}], ")"}]}]}]}]], "DisplayFormula",
+ CellChangeTimes->{{3.7771665980882196`*^9, 3.7771666127458467`*^9}}],
+
+Cell[TextData[{
+ "where ",
+ Cell[BoxData[
+ FormBox[
+ SubscriptBox["x", "n"], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is the population at time step ",
+ Cell[BoxData[
+ FormBox["n", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", ">", "1"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " is again the intrinsic growth rate, and we generally assume that the \
+population units have been scaled so that the carrying capacity can be stated \
+as 1. Note, however, that 1 is not actually the equilibrium solution of this \
+system: solving ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ RowBox[{"r", " ",
+ RowBox[{
+ SuperscriptBox["x", "*"], "(",
+ RowBox[{"1", "-",
+ SuperscriptBox["x", "*"]}], ")"}]}]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " yields the (nonzero) equilibrium solution as ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{
+ SuperscriptBox["x", "*"], "=",
+ FractionBox[
+ RowBox[{"r", "-", "1"}], "r"]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ "."
+}], "Text",
+ CellChangeTimes->{{3.7771666153555794`*^9, 3.7771667546392555`*^9}}],
+
+Cell[TextData[{
+ "The figures below show how these two models behave side-by-side as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " changes. In order to remove the potential confusion of the continuous \
+model having a constant equilibrium while the discrete model does not, we \
+will always rescale the continuous model so that ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"L", "=",
+ FractionBox[
+ RowBox[{"r", "-", "1"}], "r"]}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ", meaning that both models will always have the same carrying capacity."
+}], "Text",
+ CellChangeTimes->{{3.777166775775532*^9, 3.7771668855378103`*^9}}]
+}, Open ]],
+
+Cell[CellGroupData[{
+
+Cell["Code", "Section",
+ CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell["Initialization", "Subsection",
+ CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"logfinal", "[",
+ RowBox[{"x0_", ",", "r_", ",", "lim_", ",", "end_"}], "]"}], ":=",
+ RowBox[{"Partition", "[",
+ RowBox[{
+ RowBox[{"Riffle", "[",
+ RowBox[{
+ RowBox[{"ConstantArray", "[",
+ RowBox[{"r", ",", "end"}], "]"}], ",",
+ RowBox[{
+ RowBox[{"RecurrenceTable", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{
+ RowBox[{"x", "[",
+ RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
+ RowBox[{"r", " ",
+ RowBox[{"x", "[", "n", "]"}],
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
+ RowBox[{
+ RowBox[{"x", "[", "0", "]"}], "\[Equal]", "x0"}]}], "}"}], ",",
+ "x", ",",
+ RowBox[{"{",
+ RowBox[{"n", ",", "0", ",", "lim"}], "}"}]}], "]"}], "[",
+ RowBox[{"[",
+ RowBox[{
+ RowBox[{"-", "end"}], ";;"}], "]"}], "]"}]}], "]"}], ",", "2"}],
+ "]"}]}]], "Input",
+ CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9},
+ 3.7771657470625243`*^9}],
+
+Cell[BoxData[
+ RowBox[{
+ RowBox[{"dlmplot", "=",
+ RowBox[{"Flatten", "[",
+ RowBox[{
+ RowBox[{"Table", "[",
+ RowBox[{
+ RowBox[{"logfinal", "[",
+ RowBox[{"0.4", ",", "r", ",", "100", ",", "20"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",", "1.005", ",", "4", ",", "0.005"}], "}"}]}], "]"}],
+ ",", "1"}], "]"}]}], ";"}]], "Input",
+ CellChangeTimes->{{3.777165890525441*^9, 3.777165913718752*^9}, {
+ 3.777166055921769*^9, 3.777166058420776*^9}}]
+}, Closed]],
+
+Cell[CellGroupData[{
+
+Cell["Demonstration", "Subsection",
+ CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
+
+Cell[TextData[{
+ "We begin by showing a time series of population versus time for both \
+models. Try gradually increasing ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " from 1 all the way to 4. At first the two models should produce nearly \
+identical behavior, but after ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[GreaterEqual]", "2"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the discrete version should begin to produce oscillations which the \
+continuous model does not. This is because the discrete model allows the \
+carrying capacity to be slightly overshot between iterations, after which we \
+must experience negative growth. The overshooting goes on for several \
+iterations before dying down."
+}], "Text",
+ CellChangeTimes->{{3.77716693393746*^9, 3.7771669739303837`*^9}, {
+ 3.777167026954685*^9, 3.7771672398192244`*^9}}],
+
+Cell[TextData[{
+ "After ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[GreaterEqual]", "3"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the growth rate is large enough that the oscillations no longer die down \
+and instead remain as periodic orbits. Increasing ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " even further beyond this point causes the orbits to increase in period, \
+from 2 to 4 and then 8 and so on, until for very large values of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the results are completely chaotic."
+}], "Text",
+ CellChangeTimes->{{3.77716693393746*^9, 3.7771669739303837`*^9}, {
+ 3.777167026954685*^9, 3.777167286432896*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"Evaluate", "[",
+ RowBox[{
+ FractionBox[
+ RowBox[{
+ SuperscriptBox["E",
+ RowBox[{"L", " ", "r", " ", "t"}]], "L", " ", "0.4"}],
+ RowBox[{"L", "+",
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["E",
+ RowBox[{"L", " ", "r", " ", "t"}]], "-", "1"}], ")"}],
+ "0.4"}]}]], "/.",
+ RowBox[{"L", "\[Rule]",
+ FractionBox[
+ RowBox[{"r", "-", "1"}], "r"]}]}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"t", ",", "0.001", ",", "30"}], "}"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
+ RowBox[{"ListPlot", "[",
+ RowBox[{
+ RowBox[{"RecurrenceTable", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{
+ RowBox[{"x", "[",
+ RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
+ RowBox[{"r", " ",
+ RowBox[{"x", "[", "n", "]"}],
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
+ RowBox[{
+ RowBox[{"x", "[", "0", "]"}], "\[Equal]", "0.4"}]}], "}"}], ",",
+ "x", ",",
+ RowBox[{"{",
+ RowBox[{"n", ",", "0", ",", "30"}], "}"}]}], "]"}], ",",
+ RowBox[{"Joined", "\[Rule]", "True"}], ",",
+ RowBox[{"Mesh", "\[Rule]", "Full"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}],
+ "}"}], "}"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.0005", ",", "4", ",",
+ "0.0005"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
+ 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
+ 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
+ 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
+ 3.7771649653355174`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 3.032, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1.2}, 1.0005, 4, 0.0005}}, Typeset`size$$ = {
+ 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$74990$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$74990$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ Plot[
+ Evaluate[
+ ReplaceAll[
+ E^($CellContext`L $CellContext`r$$ $CellContext`t) $CellContext`L
+ 0.4/($CellContext`L + (
+ E^($CellContext`L $CellContext`r$$ $CellContext`t) - 1)
+ 0.4), $CellContext`L -> ($CellContext`r$$ -
+ 1)/$CellContext`r$$]], {$CellContext`t, 0.001, 30},
+ PlotRange -> {0, 1}, PlotLabel -> "continuous",
+ AxesLabel -> {"t", "x(t)"}],
+ ListPlot[
+
+ RecurrenceTable[{$CellContext`x[$CellContext`n +
+ 1] == $CellContext`r$$ $CellContext`x[$CellContext`n] (
+ 1 - $CellContext`x[$CellContext`n]), $CellContext`x[0] ==
+ 0.4}, $CellContext`x, {$CellContext`n, 0, 30}], Joined -> True,
+ Mesh -> Full, PlotRange -> {0, 1}, PlotLabel -> "discrete",
+ AxesLabel -> {"t", "x(t)"}]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.0005, 4, 0.0005}},
+ "Options" :> {}, "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {130., 136.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.777164540906799*^9, 3.7771645573735876`*^9}, {
+ 3.777164611045705*^9, 3.777164660389118*^9}, {3.7771647044469786`*^9,
+ 3.7771647308643694`*^9}, {3.777164953963621*^9, 3.7771649658634167`*^9}}]
+}, {2}]],
+
+Cell[TextData[{
+ "Below is a pair of static plots for any and all long-term behaviours of \
+each model as a function of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ ". If the model converges to a single equilibrium, then that equilibrium \
+value is plotted as a point, while if the model oscillates indefinitely, all \
+points in the periodic orbit are plotted. As expected from the above \
+observations, the continuous model only ever produces a single equilibrium \
+value, while the discrete model does at first, but then after ",
+ Cell[BoxData[
+ FormBox[
+ RowBox[{"r", "\[GreaterEqual]", "3"}], TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " begins to divide into multiple values due to oscillation, and for the \
+largest values of ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " the plot is an indiscernible cloud of seemingly random points."
+}], "Text",
+ CellChangeTimes->{{3.7771672918691654`*^9, 3.7771675223574295`*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ FractionBox[
+ RowBox[{"r", "-", "1"}], "r"], ",",
+ RowBox[{"{",
+ RowBox[{"r", ",", "1.0005", ",", "4"}], "}"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}],
+ ",",
+ RowBox[{"ListPlot", "[",
+ RowBox[{"dlmplot", ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}]}],
+ "}"}], "}"}], "]"}]], "Input",
+ CellChangeTimes->{{3.7771657179889126`*^9, 3.7771657311636024`*^9}, {
+ 3.777165773220811*^9, 3.777165777454324*^9}, {3.7771658199732375`*^9,
+ 3.7771658446488113`*^9}, {3.777165927994836*^9, 3.7771659626038847`*^9}, {
+ 3.777167325618328*^9, 3.7771673327173443`*^9}}],
+
+Cell[BoxData[
+ TagBox[GridBox[{
+ {
+ GraphicsBox[{{{}, {},
+ {RGBColor[0.368417, 0.506779, 0.709798], AbsoluteThickness[1.6],
+ Opacity[1.], LineBox[CompressedData["
+1:eJwVzn840wkcB/AZEzO+fvOk1iqEVCTSD30+Sj/8SKWnErXKj84lrnREQqk7
+kw4ltdOtU0oULqYskaKT9tjhkY5LGWNfl5qNaljjdn+8n/fzep73H+/5YT8E
+RVIpFMpWTf7vbSqHEAZVDsE5n7MEBxE8iLipdpocfs40bzy5Zg/MWfikIF9f
+DhdiXV49mxcOw35b3zJN5MCjs2g8xnFILzi+z5UlhwrcVGOlSIPqVbXs3evk
+8EG4RHSJnw3Wif7hhafk8GDEbOlEEw/6P8ccXTEuB3mD4Z8hVWWQIPY8fGdC
+AYyy3k2l5nWgQx+d3fRxDKSb9S4EtTTBIPWFzLJ3HKotp24dE7fAy0/Me/y+
+z5Ad1ByvJRFBkWUkS93xBSZvmqxZadoB51xdU3O6v0KEWVF03pJOeGgzR7Xn
+HyWc7oE3kyZdIN4wtlwknIARjwb23qo3YMQODMpqm4TkkkMZv+7sBvdH+c5f
+G6cg1H+tLL6uByreqeyuVaqAz6L7L9Z9C05KUvds9TfIG65XV+zshd8DG25Z
+Favho5G/w76Ed2DNnWOvvD8Nf/wlPObFew+SB9wWRvkMuN5vy3Er64PX2pS8
+7wIpaHNjIF8WIAbPkgT3mHYKShrX5e1qFgN3JMz9la8W+hxv9fNw7YepRaal
+viItrHZ2LObe6Ada63bnyEAqEok5gTo6A8AgaIZ/N1NRzedGCfYPgIX/6UMx
+vtooPBoVoVc7ALPtvzcLadLGUqUwdcRAAi1RQ6/7V+ugosT+xY/BEki8bUvP
+rtPBicy2+qt3JWCX1vNbrjsNvU/Sr+jKJNAZtKOoRkDDvYJT50mPQXDKDn6c
+tEoXX0deYC5LHoTUqC7ny5W6aOKgFWorGITONRbmbW6zMGOH9cYE5SDYVQiD
+w8pnoVocy57rMgQsDlGea6uHVkt20VIih2BuqFW85I4eei8ty5rHGwJL0ZWC
+i0x9vHTELkG7bQhMPLvcQm7q48rtTTt0taWgtz7LKdWGjgfjy988c5VCCb/d
+xSuPjuvNbveN7peCH7PnHsvCAGF7+tKFF6UwvGhPeki2AZ6INnkueCgFjhNX
+JDBhoO4175Nu/VLouBLlUHWZgSpvOZtNJ8HqRoVYy8AQwc5MlLyMBHZhDSPh
+F0OciDtfG7GbhFveHldxlhE+WhFnnJFEQo6fz7LiVCMM79jgOFxAQkqAxVoX
+CoHRW1x2fasnIepTaLFxEoFj3d0c/jsSEgtvhjsnE6hTxFGve08CZyfJ2pJC
+YOfLrANCjUsfx11PO0uggHV9RNxHwoefMnNlmQTmt2+yNRwgIZpZc6q1gECX
+D+Y2YVISYreZbuPUEWhmHus5LSMhlRrMuP2UwNVfHrMzRknIfsh71fCMQMnG
+tjhjOQkVNo4+yhcE9j6KiFigIEEzWXVYRGCOY2HMxnESjp2JWejznsDLT8/Y
+cJQknHHjiw+INf/rzVnGEyTkSid4yQMEHm68b8rVuDLgvDVfSmARU/H87iQJ
+Y9bXDReMEljcuta3WUUCtVUs9FIQeKgo4OnWbySYptlz9o4TOC1Lnt+l8fKh
+SuolJYFK+uYqiZqE9VxlQ9kkgfof/+07Mk1CkL9XSouKwJjwWpVC47Dp9NWD
+agIXK5/QkmZIOFHZopyZIXC/85h6RuP/ALOGTdI=
+ "]]}}, {}},
+ AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
+ Axes->{True, True},
+ AxesLabel->{
+ FormBox["\"r\"", TraditionalForm],
+ FormBox["\"long-term\"", TraditionalForm]},
+ AxesOrigin->{1., 0},
+ DisplayFunction->Identity,
+ Frame->{{False, False}, {False, False}},
+ FrameLabel->{{None, None}, {None, None}},
+ FrameTicks->{{Automatic, Automatic}, {Automatic, Automatic}},
+ GridLines->{None, None},
+ GridLinesStyle->Directive[
+ GrayLevel[0.5, 0.4]],
+ ImagePadding->All,
+ Method->{
+ "DefaultBoundaryStyle" -> Automatic, "DefaultMeshStyle" ->
+ AbsolutePointSize[6], "ScalingFunctions" -> None},
+ PlotLabel->FormBox["\"continuous\"", TraditionalForm],
+ PlotRange->{{1.0005000612142856`, 3.9999999387857144`}, {0, 1}},
+ PlotRangeClipping->True,
+ PlotRangePadding->{{
+ Scaled[0.02],
+ Scaled[0.02]}, {0, 0}},
+ Ticks->{Automatic, Automatic}],
+ GraphicsBox[{{}, {{},
+ {RGBColor[0.368417, 0.506779, 0.709798], PointSize[
+ 0.002777777777777778], AbsoluteThickness[1.6],
+ PointBox[CompressedData["
+1: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
+hIT7p7xGQbjnbArahXuWA2MEf0OhTwH3LvuCCX774Uwl3J/zrCP4sEtOirhP
+k4gjeJ5UbUIvaV9I8KLvXv/b0/fBHCTtLodm2T4KcHFr7cZri5Fvktrbh/vr
+n0onQzDfEXG9DffCm06vxPswa54e3N//NHc27gXuruvA/RlJ/iW4j2Ua7cL9
+zWAFdtwzM38h9LJfTi3APTXXgNDvLu/lxP0VkeOduLfh9+fGPen2IkLPJS3L
+9Y+n74M5SFvPrONeSaMAs29cm/d4JvLua1V34D5NQenbI8ybxvnz4T7sgHEQ
+3hduHZDEfYg+ryDuA48/F8R9RnKZLe5JcsfEcK93cLUM7j0jOdfivtBpvzHu
+m3IHNuJea4GfIu4XDLcI495siKaH+5nZ1zbg/mvGc9V/PH0fzEHafDLTcmiU
+Aly2/czHcVorsLnGJ65hzH8OIk+MYX5vRf81vOfgXCuL9xfzNn3EfU6H3eUv
+mM+V9knAveTu1qqvmH8Y9K0D958SnGrx/mHfrXTce5Ry3MR79QbOetw/fPx4
+Fu5PHVvzFvdXbKm2uG9bv78S93ZtRiv+8fR9MAdplzdXecIEBfhYD/vmM43I
++35yXJaMefeUdGsTzCtz6qsnYj6k0LjNCvNWBgnpSZhnKx4incR852h4ON5v
+6Wo+Y4l5/WX7z+F9b6SHgRnmqy2fleD9FdP1wacwn84ffgjvD71KmmeO+fU2
+yoN479bHORvvl7da7sB70+zP5//p6fvg6Z8nN9LZDs6gAufWbKEtzUe+WoTz
+ux7m+1r6733KQ/612b6rhzAfHhWWz431yW3WOYcxryBMs5zA+khpw2AtzMv4
+eC6di/XWjoc+6WL+ZpeVxHesH9sxIq2Neb1Aew52rL+z75UV3stW3kj4ifVf
+eZ7fxXvTiJNzWbFe5kz9QrzfE/JWeea0p++DOUgp80dLu1iowKvTfwZyPEFe
+83vUkinMm4VnFQY/Rn4zj4d0P+Y3xjMXf8G8SlCd5Tjmu9+FcMViXupzuRIZ
+8/41904OYt7uE7lzDPORlyNYUjAf+zDciIr5t6MaNu2YJ+1asPIz5q+4vt//
+HPMWxo2NNMybqH7za8B8yOuqvlHMFz9L4Ho17en7YA5SVZ3sg71zqcBaixfn
++NxB/ttDpxnRmFemuVC+hyM/3PAmWhfzHPFHNu3D+oZsl5wbmNcdj9cSjUA+
+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
+7pM9y6y8Uu3/ALJUdMY=
+ "]]}, {}}, {}},
+ AspectRatio->NCache[GoldenRatio^(-1), 0.6180339887498948],
+ Axes->{True, True},
+ AxesLabel->{
+ FormBox["\"r\"", TraditionalForm],
+ FormBox["\"long-term\"", TraditionalForm]},
+ AxesOrigin->{0.958203125, 0},
+ DisplayFunction->Identity,
+ Frame->{{False, False}, {False, False}},
+ FrameLabel->{{None, None}, {None, None}},
+ FrameTicks->{{Automatic, Automatic}, {Automatic, Automatic}},
+ GridLines->{None, None},
+ GridLinesStyle->Directive[
+ GrayLevel[0.5, 0.4]],
+ ImagePadding->All,
+ Method->{"CoordinatesToolOptions" -> {"DisplayFunction" -> ({
+ (Part[{{Identity, Identity}, {Identity, Identity}}, 1, 2][#]& )[
+ Part[#, 1]],
+ (Part[{{Identity, Identity}, {Identity, Identity}}, 2, 2][#]& )[
+ Part[#, 2]]}& ), "CopiedValueFunction" -> ({
+ (Part[{{Identity, Identity}, {Identity, Identity}}, 1, 2][#]& )[
+ Part[#, 1]],
+ (Part[{{Identity, Identity}, {Identity, Identity}}, 2, 2][#]& )[
+ Part[#, 2]]}& )}},
+ PlotLabel->FormBox["\"discrete\"", TraditionalForm],
+ PlotRange->{{1.005, 4.}, {0, 1}},
+ PlotRangeClipping->True,
+ PlotRangePadding->{{
+ Scaled[0.02],
+ Scaled[0.02]}, {0, 0}},
+ Ticks->{Automatic, Automatic}]}
+ },
+ GridBoxAlignment->{
+ "Columns" -> {{Left}}, "ColumnsIndexed" -> {}, "Rows" -> {{Baseline}},
+ "RowsIndexed" -> {}},
+ GridBoxSpacings->{"Columns" -> {
+ Offset[0.27999999999999997`], {
+ Offset[2.0999999999999996`]},
+ Offset[0.27999999999999997`]}, "ColumnsIndexed" -> {}, "Rows" -> {
+ Offset[0.2], {
+ Offset[0.4]},
+ Offset[0.2]}, "RowsIndexed" -> {}}],
+ Function[BoxForm`e$,
+ TableForm[BoxForm`e$]]]], "Output",
+ CellChangeTimes->{
+ 3.777165731941354*^9, 3.7771657820785303`*^9, {3.7771658378010435`*^9,
+ 3.7771658501008472`*^9}, {3.777165934060048*^9, 3.7771659669945774`*^9},
+ 3.777166070392551*^9, 3.7771673335171857`*^9}]
+}, {2}]],
+
+Cell[TextData[{
+ "The following two Manipulate environments are interactive versions of the \
+above observations. The first shows the continuous model\[CloseCurlyQuote]s \
+time series alongside its long-term solutions, both as ",
+ Cell[BoxData[
+ FormBox["r", TraditionalForm]],
+ FormatType->"TraditionalForm"],
+ " changes, and the second shows the same for the discrete model. For the \
+discrete model, observe how the long-term series begins to split just as the \
+time series begins to experience undamped oscillation."
+}], "Text",
+ CellChangeTimes->{{3.7771675269872046`*^9, 3.777167533399252*^9}, {
+ 3.7771676214465485`*^9, 3.777167728826147*^9}}],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"Plot", "[",
+ RowBox[{
+ RowBox[{"Evaluate", "[",
+ RowBox[{
+ FractionBox[
+ RowBox[{
+ SuperscriptBox["E",
+ RowBox[{"L", " ", "r", " ", "t"}]], "L", " ", "0.4"}],
+ RowBox[{"L", "+",
+ RowBox[{
+ RowBox[{"(",
+ RowBox[{
+ SuperscriptBox["E",
+ RowBox[{"L", " ", "r", " ", "t"}]], "-", "1"}], ")"}],
+ "0.4"}]}]], "/.",
+ RowBox[{"L", "\[Rule]",
+ FractionBox[
+ RowBox[{"r", "-", "1"}], "r"]}]}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{"t", ",", "0.001", ",", "30"}], "}"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
+ RowBox[{"Plot", "[",
+ RowBox[{
+ FractionBox[
+ RowBox[{"rr", "-", "1"}], "rr"], ",",
+ RowBox[{"{",
+ RowBox[{"rr", ",", "1.0005", ",", "r"}], "}"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",", "4"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}],
+ "]"}]}], "}"}], "}"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.005", ",", "4", ",",
+ "0.005"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
+ 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
+ 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
+ 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
+ 3.7771649653355174`*^9}, {3.7771659821597023`*^9, 3.7771659959476337`*^9}, {
+ 3.7771660854460907`*^9, 3.7771661285863004`*^9}, {3.777166160232567*^9,
+ 3.7771662350691833`*^9}, {3.7771673403857517`*^9, 3.7771673415618715`*^9}, {
+ 3.777167559817835*^9, 3.7771676101671667`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 3.305, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1.2}, 1.005, 4, 0.005}}, Typeset`size$$ = {
+ 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$140633$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$140633$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ Plot[
+ Evaluate[
+ ReplaceAll[
+ E^($CellContext`L $CellContext`r$$ $CellContext`t) $CellContext`L
+ 0.4/($CellContext`L + (
+ E^($CellContext`L $CellContext`r$$ $CellContext`t) - 1)
+ 0.4), $CellContext`L -> ($CellContext`r$$ -
+ 1)/$CellContext`r$$]], {$CellContext`t, 0.001, 30},
+ PlotRange -> {0, 1}, PlotLabel -> "continuous",
+ AxesLabel -> {"t", "x(t)"}],
+
+ Plot[($CellContext`rr - 1)/$CellContext`rr, {$CellContext`rr,
+ 1.0005, $CellContext`r$$}, PlotRange -> {{1, 4}, {0, 1}},
+ PlotLabel -> "continuous", AxesLabel -> {"r", "long-term"}]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.005, 4, 0.005}},
+ "Options" :> {}, "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {117., 123.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{{3.777167574221195*^9, 3.777167610995882*^9}}]
+}, {2}]],
+
+Cell[CellGroupData[{
+
+Cell[BoxData[
+ RowBox[{"Manipulate", "[",
+ RowBox[{
+ RowBox[{"TableForm", "[",
+ RowBox[{"{",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"ListPlot", "[",
+ RowBox[{
+ RowBox[{"RecurrenceTable", "[",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{
+ RowBox[{"x", "[",
+ RowBox[{"n", "+", "1"}], "]"}], "\[Equal]",
+ RowBox[{"r", " ",
+ RowBox[{"x", "[", "n", "]"}],
+ RowBox[{"(",
+ RowBox[{"1", "-",
+ RowBox[{"x", "[", "n", "]"}]}], ")"}]}]}], ",",
+ RowBox[{
+ RowBox[{"x", "[", "0", "]"}], "\[Equal]", "0.4"}]}], "}"}], ",",
+ "x", ",",
+ RowBox[{"{",
+ RowBox[{"n", ",", "0", ",", "30"}], "}"}]}], "]"}], ",",
+ RowBox[{"Joined", "\[Rule]", "True"}], ",",
+ RowBox[{"Mesh", "\[Rule]", "Full"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}], "]"}], ",",
+ RowBox[{"ListPlot", "[",
+ RowBox[{
+ RowBox[{"dlmplot", "[",
+ RowBox[{"[",
+ RowBox[{"1", ";;",
+ RowBox[{"20",
+ RowBox[{"(",
+ RowBox[{
+ RowBox[{"Round", "[",
+ FractionBox[
+ RowBox[{"r", "-", "1.005"}], "0.005"], "]"}], "+", "1"}],
+ ")"}]}]}], "]"}], "]"}], ",",
+ RowBox[{"PlotRange", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"1", ",", "4"}], "}"}], ",",
+ RowBox[{"{",
+ RowBox[{"0", ",", "1"}], "}"}]}], "}"}]}], ",",
+ RowBox[{"PlotLabel", "\[Rule]", "\"\\""}], ",",
+ RowBox[{"AxesLabel", "\[Rule]",
+ RowBox[{"{",
+ RowBox[{"\"\\"", ",", "\"\\""}], "}"}]}]}],
+ "]"}]}], "}"}], "}"}], "]"}], ",",
+ RowBox[{"{",
+ RowBox[{
+ RowBox[{"{",
+ RowBox[{"r", ",", "1.2"}], "}"}], ",", "1.005", ",", "4", ",",
+ "0.005"}], "}"}]}], "]"}]], "Input",
+ CellChangeTimes->{{3.777163681244874*^9, 3.7771638468583126`*^9}, {
+ 3.777163957467636*^9, 3.77716398467824*^9}, {3.7771640761216917`*^9,
+ 3.7771642136305895`*^9}, {3.7771645056535025`*^9, 3.777164556673809*^9}, {
+ 3.7771646075070252`*^9, 3.777164730339535*^9}, {3.7771649500323143`*^9,
+ 3.7771649653355174`*^9}, {3.7771659821597023`*^9, 3.7771659959476337`*^9}, {
+ 3.7771660854460907`*^9, 3.7771661285863004`*^9}, {3.777166160232567*^9,
+ 3.7771662350691833`*^9}, {3.7771673403857517`*^9, 3.7771673415618715`*^9}}],
+
+Cell[BoxData[
+ TagBox[
+ StyleBox[
+ DynamicModuleBox[{$CellContext`r$$ = 3.175, Typeset`show$$ = True,
+ Typeset`bookmarkList$$ = {}, Typeset`bookmarkMode$$ = "Menu",
+ Typeset`animator$$, Typeset`animvar$$ = 1, Typeset`name$$ =
+ "\"untitled\"", Typeset`specs$$ = {{{
+ Hold[$CellContext`r$$], 1.2}, 1.005, 4, 0.005}}, Typeset`size$$ = {
+ 387., {70., 76.}}, Typeset`update$$ = 0, Typeset`initDone$$,
+ Typeset`skipInitDone$$ = True, $CellContext`r$137964$$ = 0},
+ DynamicBox[Manipulate`ManipulateBoxes[
+ 1, StandardForm, "Variables" :> {$CellContext`r$$ = 1.2},
+ "ControllerVariables" :> {
+ Hold[$CellContext`r$$, $CellContext`r$137964$$, 0]},
+ "OtherVariables" :> {
+ Typeset`show$$, Typeset`bookmarkList$$, Typeset`bookmarkMode$$,
+ Typeset`animator$$, Typeset`animvar$$, Typeset`name$$,
+ Typeset`specs$$, Typeset`size$$, Typeset`update$$, Typeset`initDone$$,
+ Typeset`skipInitDone$$}, "Body" :> TableForm[{{
+ ListPlot[
+
+ RecurrenceTable[{$CellContext`x[$CellContext`n +
+ 1] == $CellContext`r$$ $CellContext`x[$CellContext`n] (
+ 1 - $CellContext`x[$CellContext`n]), $CellContext`x[0] ==
+ 0.4}, $CellContext`x, {$CellContext`n, 0, 30}], Joined -> True,
+ Mesh -> Full, PlotRange -> {0, 1}, PlotLabel -> "discrete",
+ AxesLabel -> {"t", "x(t)"}],
+ ListPlot[
+ Part[$CellContext`dlmplot,
+ Span[1, 20 (Round[($CellContext`r$$ - 1.005)/0.005] + 1)]],
+ PlotRange -> {{1, 4}, {0, 1}}, PlotLabel -> "discrete",
+ AxesLabel -> {"r", "long-term"}]}}],
+ "Specifications" :> {{{$CellContext`r$$, 1.2}, 1.005, 4, 0.005}},
+ "Options" :> {}, "DefaultOptions" :> {}],
+ ImageSizeCache->{438., {117., 123.}},
+ SingleEvaluation->True],
+ Deinitialization:>None,
+ DynamicModuleValues:>{},
+ SynchronousInitialization->True,
+ UndoTrackedVariables:>{Typeset`show$$, Typeset`bookmarkMode$$},
+ UnsavedVariables:>{Typeset`initDone$$},
+ UntrackedVariables:>{Typeset`size$$}], "Manipulate",
+ Deployed->True,
+ StripOnInput->False],
+ Manipulate`InterpretManipulate[1]]], "Output",
+ CellChangeTimes->{
+ 3.7771660008727407`*^9, 3.7771660666138906`*^9, 3.777166117958968*^9, {
+ 3.7771661846076736`*^9, 3.77716623608088*^9}, 3.777167342067255*^9}]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+},
+WindowSize->{759, 833},
+WindowMargins->{{249, Automatic}, {Automatic, 28}},
+FrontEndVersion->"10.4 for Microsoft Windows (64-bit) (April 11, 2016)",
+StyleDefinitions->"Default.nb"
+]
+(* End of Notebook Content *)
+
+(* Internal cache information *)
+(*CellTagsOutline
+CellTagsIndex->{}
+*)
+(*CellTagsIndex
+CellTagsIndex->{}
+*)
+(*NotebookFileOutline
+Notebook[{
+Cell[CellGroupData[{
+Cell[580, 22, 180, 2, 144, "Title"],
+Cell[763, 26, 156, 2, 30, "Text"],
+Cell[CellGroupData[{
+Cell[944, 32, 99, 1, 63, "Section"],
+Cell[1046, 35, 399, 7, 68, "Text"],
+Cell[1448, 44, 332, 10, 55, "Input"],
+Cell[1783, 56, 1642, 55, 101, "Text"],
+Cell[3428, 113, 173, 4, 30, "Text"],
+Cell[3604, 119, 325, 10, 25, "DisplayFormula"],
+Cell[3932, 131, 1211, 39, 101, "Text"],
+Cell[5146, 172, 684, 16, 99, "Text"]
+}, Open ]],
+Cell[CellGroupData[{
+Cell[5867, 193, 91, 1, 63, "Section"],
+Cell[CellGroupData[{
+Cell[5983, 198, 102, 1, 43, "Subsection"],
+Cell[6088, 201, 1151, 33, 92, "Input"],
+Cell[7242, 236, 495, 13, 31, "Input"]
+}, Closed]],
+Cell[CellGroupData[{
+Cell[7774, 254, 105, 1, 35, "Subsection"],
+Cell[7882, 257, 897, 19, 125, "Text"],
+Cell[8782, 278, 757, 19, 87, "Text"],
+Cell[CellGroupData[{
+Cell[9564, 301, 2824, 72, 250, "Input"],
+Cell[12391, 375, 2667, 52, 283, "Output"]
+}, {2}]],
+Cell[15070, 430, 1022, 22, 144, "Text"],
+Cell[CellGroupData[{
+Cell[16117, 456, 1293, 32, 163, "Input"],
+Cell[17413, 490, 61123, 1029, 172, "Output"]
+}, {2}]],
+Cell[78548, 1522, 654, 12, 87, "Text"],
+Cell[CellGroupData[{
+Cell[79227, 1538, 2618, 64, 255, "Input"],
+Cell[81848, 1604, 2312, 46, 257, "Output"]
+}, {2}]],
+Cell[CellGroupData[{
+Cell[84194, 1655, 2864, 70, 233, "Input"],
+Cell[87061, 1727, 2382, 47, 257, "Output"]
+}, {2}]]
+}, Open ]]
+}, Open ]]
+}, Open ]]
+}
+]
+*)
+
diff --git a/calc-diffeq-analysis/crowd-escape-panic.nb b/calc-diffeq-analysis/crowd-escape-panic.nb
index a319c46..9dbbe18 100644
--- a/calc-diffeq-analysis/crowd-escape-panic.nb
+++ b/calc-diffeq-analysis/crowd-escape-panic.nb
@@ -1,3818 +1,3818 @@
-(* Content-type: application/vnd.wolfram.mathematica *)
-
-(*** Wolfram Notebook File ***)
-(* http://www.wolfram.com/nb *)
-
-(* CreatedBy='Mathematica 10.4' *)
-
-(*CacheID: 234*)
-(* Internal cache information:
-NotebookFileLineBreakTest
-NotebookFileLineBreakTest
-NotebookDataPosition[ 158, 7]
-NotebookDataLength[ 143094, 3810]
-NotebookOptionsPosition[ 141099, 3743]
-NotebookOutlinePosition[ 141442, 3758]
-CellTagsIndexPosition[ 141399, 3755]
-WindowFrame->Normal*)
-
-(* Beginning of Notebook Content *)
-Notebook[{
-
-Cell[CellGroupData[{
-Cell["Crowd Escape Panic Model", "Title",
- CellChangeTimes->{{3.776600831050974*^9, 3.7766008318453026`*^9}, {
- 3.776716385892248*^9, 3.7767163898738484`*^9}, {3.776716551386162*^9,
- 3.7767165575816903`*^9}, {3.776716932379567*^9, 3.7767169360051517`*^9}}],
-
-Cell["Adam Rumpf, 5/1/2018", "Text",
- CellChangeTimes->{{3.7766008347881403`*^9, 3.776600838290375*^9}, {
- 3.7767164096961517`*^9, 3.7767164112664833`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Introduction", "Section",
- CellChangeTimes->{{3.7766008459498987`*^9, 3.776600848547045*^9}}],
-
-Cell["Based on the following paper:", "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.776717137261506*^9, 3.7767171483543005`*^9}}],
-
-Cell[TextData[{
- "D. Helbing, I. Farkas, and T. Vicsek. Simulating dynamical features of \
-escape panic. ",
- StyleBox["Nature",
- FontSlant->"Italic"],
- ", 407:487\[LongDash]490, 2000."
-}], "Text",
- CellChangeTimes->{{3.776600856235587*^9, 3.776600860481224*^9}, {
- 3.776717137261506*^9, 3.776717152796668*^9}}],
-
-Cell["\<\
-The paper describes a dynamical systems model (see below for a full \
-definition) for crowds of people running to an exit. The model consists of a \
-system of ODEs based on the forces of people acting on each other. This \
-program solves the ODEs using forward Euler\[CloseCurlyQuote]s method.\
-\>", "Text",
- CellChangeTimes->{{3.776717166514436*^9, 3.776717167632295*^9}, {
- 3.7767197161509967`*^9, 3.776719813705699*^9}, {3.77672033530317*^9,
- 3.7767203497579947`*^9}}],
-
-Cell["\<\
-This demonstration consists mostly of a single Manipulate environment to \
-produce an animation of a crowd attempting to escape a building. People are \
-represented as randomly-sized dots. The color of the dot represents the \
-amount of crush force experienced, with redder color indicating more force, \
-which a planner would ideally like to avoid since this can lead to injury. A \
-time series is also displayed in the lower right corner, with the green \
-series indicating number of successful escapes (which occurs when a dot \
-crosses the threshold of the exit) and the red series indicating total force.\
-\>", "Text",
- CellChangeTimes->{{3.776719828336033*^9, 3.7767199711270523`*^9}}],
-
-Cell["\<\
-There are also controls to change the layout of the room and the size and \
-behavior of the people. Due to the computational intensity of this program \
-changes are not applied in real time, and are instead applied by pressing the \
-\[OpenCurlyDoubleQuote]apply changes\[CloseCurlyDoubleQuote] button, at which \
-point the simulation will restart with the new parameters. Before applying \
-the changes, the prospective layout is drawn over the current layout in a \
-gray outline. This button can also be pressed even without applying changes \
-simply to randomly restart the simulation with different starting positions.\
-\>", "Text",
- CellChangeTimes->{{3.7767199785696683`*^9, 3.776720048478415*^9}, {
- 3.776720086455348*^9, 3.776720145692374*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["ODE Model", "Section",
- CellChangeTimes->{{3.7767171834275007`*^9, 3.776717186634338*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Notation", "Subsection",
- CellChangeTimes->{{3.776717255983509*^9, 3.7767172568825264`*^9}}],
-
-Cell[TextData[{
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- " = time\n",
- Cell[BoxData[
- FormBox["N", TraditionalForm]]],
- " = number of pedestrians\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["m", "i"], TraditionalForm]]],
- " = mass of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox[
- SubscriptBox["v", "i"], "0"], "(", "t", ")"}], TraditionalForm]]],
- " = desired speed of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " at time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox[
- SubscriptBox[
- OverscriptBox["e", "\[RightVector]"], "i"], "0"], "(", "t", ")"}],
- TraditionalForm]]],
- " = desired direction of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " at time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"], "(", "t", ")"}],
- TraditionalForm]]],
- " = actual velocity of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " at time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["\[Tau]", "i"], TraditionalForm]]],
- " = characteristic time for pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " (time taken for actual velocity to match desired velocity)\n",
- Cell[BoxData[
- FormBox["W", TraditionalForm]]],
- " = set of walls\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "ij"], TraditionalForm]]],
- " = interaction force between pedestrians ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "iW"], TraditionalForm]]],
- " = interaction foroce between pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and wall ",
- Cell[BoxData[
- FormBox["W", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "i"], "(", "t", ")"}],
- TraditionalForm]]],
- " = position of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " at time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["A", "i"], ",",
- SubscriptBox["B", "i"]}], TraditionalForm]]],
- " = constants describing the repulsive interaction force acting on \
-pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["d", "ij"], TraditionalForm]]],
- " = distance between pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- "\[CloseCurlyQuote]s centers of mass\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["d", "iW"], TraditionalForm]]],
- " = distance between pedestrain ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and wall ",
- Cell[BoxData[
- FormBox["W", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "ij"], "=",
- RowBox[{"(",
- RowBox[{
- SuperscriptBox[
- SubscriptBox["n", "ij"], "1"], ",",
- SuperscriptBox[
- SubscriptBox["n", "ij"], "2"]}], ")"}]}], TraditionalForm]]],
- " = normalized vector pointing from pedestrian ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- " to ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "iW"], TraditionalForm]]],
- " = direction perpendicular to wall ",
- Cell[BoxData[
- FormBox["W", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["r", "i"], TraditionalForm]]],
- " = radius of pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox["r", "ij"], TraditionalForm]]],
- " = sum of radii of pedestrians ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{"k", ",", "\[Kappa]"}], TraditionalForm]]],
- " = large constants that control body force and sliding friction, \
-respectively\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "ij"], TraditionalForm]]],
- " = tangential direction between pedestrians ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "iW"], TraditionalForm]]],
- " = direction tangential to wall ",
- Cell[BoxData[
- FormBox["W", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- SuperscriptBox[
- SubscriptBox["\[CapitalDelta]v", "ij"], "t"], TraditionalForm]]],
- " = difference in tangential velocities of pedestrians ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{"g", "(", "x", ")"}], "=",
- RowBox[{"{",
- RowBox[{GridBox[{
- {"0",
- RowBox[{
- RowBox[{"if", " ", "x"}], "<", "0"}]},
- {"x",
- RowBox[{
- RowBox[{"if", " ", "x"}], "\[GreaterEqual]", "0"}]}
- }], "=",
- RowBox[{"max",
- RowBox[{"{",
- RowBox[{"0", ",", "x"}], "}"}]}]}]}]}], TraditionalForm]]],
- " = function to zero out negative arguments"
-}], "Text",
- CellChangeTimes->{{3.7767171907543736`*^9, 3.776717249892484*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Estimated Parameters", "Subsection",
- CellChangeTimes->{{3.776717291936208*^9, 3.776717297689221*^9}}],
-
-Cell[TextData[{
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["m", "i"], "=",
- RowBox[{"80", "kg"}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SuperscriptBox[
- SubscriptBox["v", "i"], "0"], "=",
- RowBox[{"1",
- FractionBox["m", "s"]}]}], TraditionalForm]]],
- " , which corresponds to the paper\[CloseCurlyQuote]s \
-\[OpenCurlyDoubleQuote]normal\[CloseCurlyDoubleQuote] conditions\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["\[Tau]", "i"], "=",
- RowBox[{"0.5", "s"}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["A", "i"], "=",
- RowBox[{"2", "\[Times]",
- SuperscriptBox["10", "3"], "N"}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["B", "i"], "=",
- RowBox[{"0.08", "m"}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{"k", "=",
- RowBox[{"1.2", "\[Times]",
- SuperscriptBox["10", "5"],
- FractionBox["kg",
- SuperscriptBox["s", "2"]]}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{"\[Kappa]", "=",
- RowBox[{"2.4", "\[Times]",
- SuperscriptBox["10", "5"],
- FractionBox["kg",
- RowBox[{"m", " ", "s"}]]}]}], TraditionalForm]]],
- "\n",
- Cell[BoxData[
- FormBox[
- RowBox[{"2",
- RowBox[{
- SubscriptBox["r", "i"], "~",
- RowBox[{"U", "[",
- RowBox[{
- RowBox[{"0.5", "m"}], ",",
- RowBox[{"0.7", "m"}]}], "]"}]}]}], TraditionalForm]]]
-}], "Text",
- CellChangeTimes->{{3.7767173053782897`*^9, 3.7767173428142323`*^9}}]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Model Definition", "Subsection",
- CellChangeTimes->{{3.776717265068303*^9, 3.776717272637017*^9}}],
-
-Cell[TextData[{
- "The change in pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- "\[CloseCurlyQuote]s velocity at time ",
- Cell[BoxData[
- FormBox["t", TraditionalForm]]],
- " is given by the acceleration equation"
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717401793109*^9}}],
-
-Cell[BoxData[
- FormBox[
- RowBox[{
- RowBox[{
- SubscriptBox["m", "i"],
- FractionBox[
- RowBox[{"\[DifferentialD]",
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"]}],
- RowBox[{"\[DifferentialD]", "t"}]]}], "=",
- RowBox[{
- RowBox[{
- SubscriptBox["m", "i"],
- FractionBox[
- RowBox[{
- RowBox[{
- SuperscriptBox[
- SubscriptBox["v", "i"], "0"],
- RowBox[{"(", "t", ")"}], " ",
- RowBox[{
- SuperscriptBox[
- SubscriptBox[
- OverscriptBox["e", "\[RightVector]"], "i"], "0"], "(", "t",
- ")"}]}], "-",
- RowBox[{
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"], "(", "t", ")"}]}],
- SubscriptBox["\[Tau]", "i"]]}], "+",
- RowBox[{
- UnderscriptBox["\[Sum]",
- RowBox[{"j", "(",
- RowBox[{"\[NotEqual]", "i"}], ")"}]],
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "ij"]}], "+",
- RowBox[{
- UnderscriptBox["\[Sum]", "W"],
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "iW"]}]}]}],
- TraditionalForm]], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717420150271*^9}}],
-
-Cell[TextData[{
- "Velocity is change in position, so by definition ",
- Cell[BoxData[
- FormBox[
- RowBox[{
- FractionBox[
- RowBox[{"\[DifferentialD]",
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "i"]}],
- RowBox[{"\[DifferentialD]", "t"}]], "=",
- RowBox[{
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"], "(", "t", ")"}]}],
- TraditionalForm]]],
- "."
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717450738205*^9}, {
- 3.776719148617407*^9, 3.7767191506667504`*^9}}],
-
-Cell[TextData[{
- "The repulsive interaction force between ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- " is"
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717472722627*^9}}],
-
-Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox["A", "i"],
- RowBox[{"exp", "(",
- FractionBox[
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}],
- SubscriptBox["B", "i"]], ")"}],
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "ij"]}],
- TraditionalForm]], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.7767174700431833`*^9}}],
-
-Cell["Some other simple definitional constraints include", "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.77671748395348*^9}}],
-
-Cell[BoxData[{
- FormBox[
- RowBox[{
- SubscriptBox["d", "ij"], "=",
- RowBox[{"\[LeftDoubleBracketingBar]",
- RowBox[{
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "i"], "-",
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "j"]}],
- "\[RightDoubleBracketingBar]"}]}], TraditionalForm], "\n",
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "ij"], "=",
- FractionBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "i"], "-",
- SubscriptBox[
- OverscriptBox["r", "\[RightVector]"], "j"]}],
- SubscriptBox["d", "ij"]]}], TraditionalForm], "\n",
- FormBox[
- RowBox[{
- SubscriptBox["r", "ij"], "=",
- RowBox[{
- SubscriptBox["r", "i"], "+",
- SubscriptBox["r", "j"]}]}], TraditionalForm]}], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.7767175006033335`*^9}}],
-
-Cell[TextData[{
- "Pedestrians touch each other whenever their distance ",
- Cell[BoxData[
- FormBox[
- SubscriptBox["d", "ij"], TraditionalForm]]],
- " is less than their combined radii ",
- Cell[BoxData[
- FormBox[
- SubscriptBox["r", "ij"], TraditionalForm]]],
- ". In this case, two additional forces take effect. Body force counteracts \
-body compression, and sliding friction impedes relative tangental motion. \
-They are given, respectively, by"
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.7767175064492064`*^9}}],
-
-Cell[BoxData[{
- FormBox[
- RowBox[{
- RowBox[{"k", "(",
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}], ")"}],
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "ij"]}], TraditionalForm], "\n",
- FormBox[
- RowBox[{
- RowBox[{"\[Kappa]", "(",
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}], ")"}],
- SuperscriptBox[
- SubscriptBox["\[CapitalDelta]v", "ji"], "t"],
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "ij"]}],
- TraditionalForm]}], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717519142268*^9}}],
-
-Cell["\<\
-The tangential direction and tangnetial velocity differences are given, \
-respectively, by\
-\>", "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717524388327*^9}}],
-
-Cell[BoxData[{
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "ij"], "=",
- RowBox[{"(",
- RowBox[{
- RowBox[{"-",
- SuperscriptBox[
- SubscriptBox["n", "ij"], "2"]}], ",",
- SuperscriptBox[
- SubscriptBox["n", "ij"], "1"]}], ")"}]}], TraditionalForm], "\n",
- FormBox[
- RowBox[{
- SuperscriptBox[
- SubscriptBox["\[CapitalDelta]v", "ij"], "t"], "=",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "j"], "-",
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"]}], ")"}], "\[CenterDot]",
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "ij"]}]}],
- TraditionalForm]}], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717535569138*^9}}],
-
-Cell[TextData[{
- "Combining all of the forces, we can define the interaction force between \
-pedestrians ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and ",
- Cell[BoxData[
- FormBox["j", TraditionalForm]]],
- " as"
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717541801302*^9}}],
-
-Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "ij"], "=",
- RowBox[{
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{
- SubscriptBox["A", "i"],
- RowBox[{"exp", "(",
- FractionBox[
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}],
- SubscriptBox["B", "i"]], ")"}]}], "+",
- RowBox[{"k", " ",
- RowBox[{"g", "(",
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}], ")"}]}]}], ")"}],
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "ij"]}], "+",
- RowBox[{"\[Kappa]", " ",
- RowBox[{"g", "(",
- RowBox[{
- SubscriptBox["r", "ij"], "-",
- SubscriptBox["d", "ij"]}], ")"}],
- SuperscriptBox[
- SubscriptBox["\[CapitalDelta]v", "ji"], "t"],
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "ij"]}]}]}],
- TraditionalForm]], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717554097148*^9}}],
-
-Cell[TextData[{
- "and between pedestrian ",
- Cell[BoxData[
- FormBox["i", TraditionalForm]]],
- " and a wall it is"
-}], "Text",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.7767175595062294`*^9}}],
-
-Cell[BoxData[
- FormBox[
- RowBox[{
- SubscriptBox[
- OverscriptBox["f", "\[RightVector]"], "iW"], "=",
- RowBox[{
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{
- SubscriptBox["A", "i"],
- RowBox[{"exp", "(",
- FractionBox[
- RowBox[{
- SubscriptBox["r", "i"], "-",
- SubscriptBox["d", "iW"]}],
- SubscriptBox["B", "i"]], ")"}]}], "+",
- RowBox[{"k", " ",
- RowBox[{"g", "(",
- RowBox[{
- SubscriptBox["r", "i"], "-",
- SubscriptBox["d", "iW"]}], ")"}]}]}], ")"}],
- SubscriptBox[
- OverscriptBox["n", "\[RightVector]"], "iW"]}], "-",
- RowBox[{"\[Kappa]", " ",
- RowBox[{"g", "(",
- RowBox[{
- SubscriptBox["r", "i"], "-",
- SubscriptBox["d", "iW"]}], ")"}],
- RowBox[{"(",
- RowBox[{
- SubscriptBox[
- OverscriptBox["v", "\[RightVector]"], "i"], "\[CenterDot]",
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "iW"]}], ")"}],
- SubscriptBox[
- OverscriptBox["t", "\[RightVector]"], "iW"]}]}]}],
- TraditionalForm]], "DisplayFormula",
- CellChangeTimes->{
- 3.7767172377664404`*^9, {3.776717397554256*^9, 3.776717568888282*^9}}]
-}, Open ]]
-}, Open ]],
-
-Cell[CellGroupData[{
-
-Cell["Code", "Section",
- CellChangeTimes->{{3.776600864408964*^9, 3.7766008650447807`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell["Initialization", "Subsection",
- CellChangeTimes->{{3.776600871130811*^9, 3.776600873087188*^9}}],
-
-Cell[BoxData[
- RowBox[{
- RowBox[{"(*", " ", "constants", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"Dynamic", "[", "v0", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "Np", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "bb", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "par1", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "par2", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "W", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "Wg", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "lo", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "Ap", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "Aw", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "door", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "\[Kappa]", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"m", "=", "80.0"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"pedestrian", " ", "mass"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"v0", "=", "1.0"}], ";", " ",
- RowBox[{"(*", " ",
- RowBox[{"desired", " ", "pedestrian", " ", "velocity"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"\[Tau]", "=", "0.5"}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "time", " ", "to", " ", "acquire", " ", "desired", " ", "velocity"}],
- " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Ap", "=",
- RowBox[{"2.0", "*",
- SuperscriptBox["10", "3"]}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Aw", "=",
- RowBox[{"1.0", "*",
- SuperscriptBox["10", "3"]}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "repulsive", " ", "interaction", " ", "force", " ", "constant", " ",
- RowBox[{"(",
- RowBox[{"people", ",", " ", "wall"}], ")"}]}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"B", "=", "0.08"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"repulsive", " ", "interaction", " ", "force", " ", "constant"}],
- " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"k", "=",
- RowBox[{"1.2", "*",
- SuperscriptBox["10", "5"]}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"body", " ", "force", " ", "constant"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"\[Kappa]", "=",
- RowBox[{"2.4", "*",
- SuperscriptBox["10", "5"]}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"sliding", " ", "friction", " ", "force", " ", "constant"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"Np", "=", "20"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"number", " ", "of", " ", "pedestrians"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"radmin", "=",
- FractionBox["0.5", "2"]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"minimum", " ", "pedestrian", " ", "radius"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"radmax", "=",
- FractionBox["0.7", "2"]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"maximum", " ", "pedestrian", " ", "radius"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"W", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "20.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",", "5.75"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "5.75"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "5.75"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",", "5.75"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "20.0"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",", "4.25"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "4.25"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "4.25"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",", "4.25"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}]}], "}"}]}], "}"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{"list", " ", "of", " ", "wall", " ", "segments"}], ",", " ",
- RowBox[{
- "expressed", " ", "as", " ", "the", " ", "coordinates", " ", "of", " ",
- "its", " ", "endpoints"}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Wg", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"2", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"3", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"3", ",", "2"}], "]"}], "]"}]}], "}"}], "]"}], ",",
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"5", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"6", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"6", ",", "2"}], "]"}], "]"}]}], "}"}], "]"}]}], "}"}]}],
- ";",
- RowBox[{"(*", " ",
- RowBox[{
- "graphics", " ", "objects", " ", "for", " ", "the", " ", "walls"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"door", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "5.25"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",", "4.75"}], "}"}]}], "}"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- RowBox[{
- "line", " ", "segment", " ", "that", " ", "people", " ", "will", " ",
- "try", " ", "to", " ", "move", " ", "towards"}], ",", " ",
- RowBox[{
- "and", " ", "directly", " ", "right", " ", "after", " ", "that"}]}],
- " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"dt", "=", "0.1"}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "time", " ", "increment", " ", "for", " ", "finite", " ", "difference",
- " ", "solution"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"cutoff", "=", "45.0"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"simulation", " ", "time", " ", "cutoff", " ",
- RowBox[{"(", "s", ")"}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"bb", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}]}], "}"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "bounds", " ", "of", " ", "initial", " ", "position", " ", "box"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"par1", "=", "1.5"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"parameters", " ", "of", " ", "layout"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"par2", "=", "2.0"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"colrad", "=", "0.6"}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "radius", " ", "of", " ", "column", " ", "in", " ", "the", " ", "column",
- " ", "layout"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Nw", "=", "3"}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "maximum", " ", "number", " ", "of", " ", "walls", " ", "in", " ", "any",
- " ", "layout"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"lo", "=", "0"}], ";",
- RowBox[{"(*", " ",
- RowBox[{"layout", " ", "index"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"(*", " ", "variables", " ", "*)"}], "\n",
- RowBox[{"Dynamic", "[", "rad", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "radsum", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "r", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "v", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "dvi", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "dij", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "nij", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "tij", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "dvijt", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "e0", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "fij", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "pos", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "pressure", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "niw", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "tiw", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "diw", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "fiw", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "evac", "]"}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Dynamic", "[", "tpressure", "]"}], ";"}], "\n",
- RowBox[{"(*", " ", "subroutines", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"g", "[", "x_", "]"}], ":=",
- RowBox[{"Max", "[",
- RowBox[{"0", ",", "x"}], "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "function", " ", "to", " ", "cut", " ", "off", " ", "negative", " ",
- "arguments"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"dijcalc", "[",
- RowBox[{"i_", ",", "j_"}], "]"}], ":=",
- RowBox[{"EuclideanDistance", "[",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], ",",
- RowBox[{"r", "[",
- RowBox[{"[", "j", "]"}], "]"}]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"dniwcalc", "[",
- RowBox[{"i_", ",", "w_"}], "]"}], ":=",
- RowBox[{"wallnorm", "[",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], ",", "w"}], "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "calculates", " ", "distances", " ", "and", " ", "normal", " ",
- "vectors", " ", "for", " ", "walls"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"fijcalc", "[",
- RowBox[{"i_", ",", "j_"}], "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"i", "\[Equal]", "j"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], ",",
- RowBox[{
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"Ap", " ",
- RowBox[{"Exp", "[",
- FractionBox[
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "-",
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], "B"], "]"}]}], "+",
- RowBox[{"k", " ",
- RowBox[{"g", "[",
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "-",
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], "]"}]}]}], ")"}],
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], "+",
- RowBox[{"\[Kappa]", " ",
- RowBox[{"g", "[",
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "-",
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], "]"}],
- RowBox[{"dvijt", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}],
- RowBox[{"tij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}]}]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"fiwcalc", "[",
- RowBox[{"i_", ",", "w_"}], "]"}], ":=",
- RowBox[{
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"Aw", " ",
- RowBox[{"Exp", "[",
- FractionBox[
- RowBox[{
- RowBox[{"rad", "[",
- RowBox[{"[", "i", "]"}], "]"}], "-",
- RowBox[{"diw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], "B"], "]"}]}], "+",
- RowBox[{"k", " ",
- RowBox[{"g", "[",
- RowBox[{
- RowBox[{"rad", "[",
- RowBox[{"[", "i", "]"}], "]"}], "-",
- RowBox[{"diw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], "]"}]}]}], ")"}],
- RowBox[{"niw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], "-",
- RowBox[{"\[Kappa]", " ",
- RowBox[{"g", "[",
- RowBox[{
- RowBox[{"rad", "[",
- RowBox[{"[", "i", "]"}], "]"}], "-",
- RowBox[{"diw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], "]"}],
- RowBox[{"(",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], ".",
- RowBox[{"tiw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], ")"}],
- RowBox[{"tiw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"nijcalc", "[",
- RowBox[{"i_", ",", "j_"}], "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"i", "\[Equal]", "j"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "0"}], "}"}], ",",
- FractionBox[
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "-",
- RowBox[{"r", "[",
- RowBox[{"[", "j", "]"}], "]"}]}],
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"tijcalc", "[",
- RowBox[{"i_", ",", "j_"}], "]"}], ":=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-",
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j", ",", "2"}], "]"}], "]"}]}], ",",
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j", ",", "1"}], "]"}], "]"}]}], "}"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"tiwcalc", "[",
- RowBox[{"i_", ",", "w_"}], "]"}], ":=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"-",
- RowBox[{"niw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w", ",", "2"}], "]"}], "]"}]}], ",",
- RowBox[{"niw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w", ",", "1"}], "]"}], "]"}]}], "}"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"dvijtcalc", "[",
- RowBox[{"i_", ",", "j_"}], "]"}], ":=",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "-",
- RowBox[{"v", "[",
- RowBox[{"[", "j", "]"}], "]"}]}], ")"}], ".",
- RowBox[{"tij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"e0calc", "[", "i_", "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "1"}], "]"}], "]"}], "\[GreaterEqual]",
- RowBox[{"door", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1"}], "]"}], "]"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "past", " ", "the", " ", "door", " ", "just", " ", "go", " ",
- "right"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"1", ",", "0"}], "}"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "otherwise", " ", "find", " ", "the", " ", "closest", " ", "point",
- " ", "on", " ", "the", " ", "door"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"Piecewise", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"door", "[",
- RowBox[{"[", "1", "]"}], "]"}], "-",
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}]}], ",",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "2"}], "]"}], "]"}], "\[GreaterEqual]",
- RowBox[{"door", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2"}], "]"}], "]"}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"door", "[",
- RowBox[{"[", "2", "]"}], "]"}], "-",
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}]}], ",",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "2"}], "]"}], "]"}], "\[LessEqual]",
- RowBox[{"door", "[",
- RowBox[{"[",
- RowBox[{"2", ",", "2"}], "]"}], "]"}]}]}], "}"}]}], "}"}],
- ",",
- RowBox[{"{",
- RowBox[{"1", ",", "0"}], "}"}]}], "]"}]}], "\[IndentingNewLine]",
- "]"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"dvicalc", "[", "i_", "]"}], ":=",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- FractionBox[
- RowBox[{
- RowBox[{"v0", " ",
- RowBox[{"e0", "[",
- RowBox[{"[", "i", "]"}], "]"}]}], "-",
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}]}], "\[Tau]"], "+",
- RowBox[{
- FractionBox["1", "m"],
- RowBox[{"(",
- RowBox[{
- RowBox[{"Sum", "[",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"j", "\[Equal]", "i"}], ",", "0", ",",
- RowBox[{"fij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",", "Np"}], "}"}]}], "]"}], "+",
- RowBox[{"Sum", "[",
- RowBox[{
- RowBox[{"fiw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"w", ",", "1", ",", "Nw"}], "}"}]}], "]"}]}], ")"}]}]}],
- ")"}], "dt"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "finite", " ", "difference", " ", "calculation", " ", "of", " ", Cell[
- TextData[Cell[BoxData[
- FormBox[
- OverscriptBox[
- SubscriptBox["\[CapitalDelta]v", "i"], "\[RightVector]"],
- TraditionalForm]]]]]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"vcalc", "[", "i_", "]"}], ":=",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "+",
- RowBox[{"dvi", "[",
- RowBox[{"[", "i", "]"}], "]"}]}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"rcalc", "[", "i_", "]"}], ":=",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "+",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "dt"}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"vcap", "[", "i_", "]"}], ":=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"Norm", "[",
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "]"}], "\[LessEqual]", "v0"}], ",",
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], ",",
- FractionBox[
- RowBox[{"v0", " ",
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}]}],
- RowBox[{"Norm", "[",
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "]"}]]}], "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{
- "caps", " ", "speed", " ", "to", " ", "prevent", " ", "people", " ",
- "from", " ", "moving", " ", "unrealistically", " ", "quickly"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"update", " ", "process"}], " ", "*)"}], "\n",
- RowBox[{
- RowBox[{"update", "[",
- RowBox[{"dummy_:", "0"}], "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"calculate", " ", "desired", " ", "directions"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"e0", "=",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"e0calc", "[", "i", "]"}], ",",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"calculate", " ", "pairwise", " ", "distances"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"dijcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}]}], ",", "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",",
- RowBox[{"i", "-", "1"}]}], "}"}]}], "]"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "calculate", " ", "symmetric", " ", "and", " ", "antisymmetric", " ",
- "pairwise", " ", "values"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"dij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"dijcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}]}], ";",
- RowBox[{"(*", " ", "distance", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{"nijcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"pointing", " ", "vector"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"-",
- RowBox[{"nij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"tij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{"tijcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"tangential", " ", "vector"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"tij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"-",
- RowBox[{"tij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"dvijt", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"dvijt", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"dvijtcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"relative", " ", "tangential", " ", "velocity"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"(*", " ", "forces", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"fij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{"fijcalc", "[",
- RowBox[{"i", ",", "j"}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"fij", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{"-",
- RowBox[{"fij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",",
- RowBox[{"i", "-", "1"}]}], "}"}]}], "]"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"calculate", " ", "wall", " ", "values"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{"(*",
- RowBox[{
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"niw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], ",",
- RowBox[{"diw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}]}], "}"}], "=",
- RowBox[{"dniwcalc", "[",
- RowBox[{"i", ",", "w"}], "]"}]}], ";"}], "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"niw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"dniwcalc", "[",
- RowBox[{"i", ",", "w"}], "]"}], "[",
- RowBox[{"[", "1", "]"}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"diw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"dniwcalc", "[",
- RowBox[{"i", ",", "w"}], "]"}], "[",
- RowBox[{"[", "2", "]"}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"tiw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], "=",
- RowBox[{"tiwcalc", "[",
- RowBox[{"i", ",", "w"}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"fiw", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "w"}], "]"}], "]"}], "=",
- RowBox[{"fiwcalc", "[",
- RowBox[{"i", ",", "w"}], "]"}]}]}], ",", "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"w", ",", "1", ",", "Nw"}], "}"}]}], "]"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "calculate", " ", "changes", " ", "in", " ", "velocity", " ", "and",
- " ", "position"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"dvi", "[",
- RowBox[{"[", "i", "]"}], "]"}], "=",
- RowBox[{"dvicalc", "[", "i", "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"change", " ", "in", " ", "velocity"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "=",
- RowBox[{"vcalc", "[", "i", "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"velocity", " ", "update"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"v", "[",
- RowBox[{"[", "i", "]"}], "]"}], "=",
- RowBox[{"vcap", "[", "i", "]"}]}], ";",
- RowBox[{"(*", " ",
- RowBox[{"cap", " ", "speed", " ",
- RowBox[{"(",
- RowBox[{"just", " ", "in", " ", "case"}], ")"}]}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "=",
- RowBox[{"rcalc", "[", "i", "]"}]}]}], ",",
- RowBox[{"(*", " ",
- RowBox[{"position", " ", "update"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}]}]}], "\n",
- RowBox[{"(*", " ",
- RowBox[{"generate", " ", "layout", " ",
- RowBox[{"{",
- RowBox[{
- RowBox[{"wall", " ", "lines"}], ",", " ",
- RowBox[{"wall", " ", "graphics"}], ",", " ",
- RowBox[{"bounding", " ", "box"}], ",", " ", "door"}], "}"}]}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"wallgen", "[",
- RowBox[{"layout_", ",", "p1_", ",", "p2_"}], "]"}], ":=",
- RowBox[{"Switch", "[",
- RowBox[{"layout", ",", "\[IndentingNewLine]", "0", ",",
- RowBox[{"(*", " ",
- RowBox[{"single", " ", "door"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"(*", " ", "W", " ", "*)"}],
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "20.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "20.0"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}]}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "Wg", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "20.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "20.0"}], "}"}]}], "}"}], "]"}], ",",
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}]}], "}"}], "]"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "bb", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "door", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"], "-", "0.5"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"], "+", "0.5"}]}], "}"}]}], "}"}]}], "}"}],
- ",", "\[IndentingNewLine]", "1", ",",
- RowBox[{"(*", " ",
- RowBox[{"column", " ", "and", " ", "door"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"(*", " ", "W", " ", "*)"}],
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "20.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "20.0"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"10.0", "-", "p2"}], ",", "5.5"}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "Wg", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",", "20.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",", "20.0"}], "}"}]}], "}"}], "]"}], ",",
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"11.0", ",",
- RowBox[{"-", "10.0"}]}], "}"}]}], "}"}], "]"}], ",",
- RowBox[{"Disk", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"10.0", "-", "p2"}], ",", "5.5"}], "}"}], ",",
- "colrad"}], "]"}]}], "}"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "bb", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"1.0", ",", "9.0"}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "door", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "+",
- FractionBox["p1", "2"], "-", "0.5"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"5.0", "-",
- FractionBox["p1", "2"], "+", "0.5"}]}], "}"}]}], "}"}]}], "}"}],
- ",", "\[IndentingNewLine]", "2", ",",
- RowBox[{"(*", " ",
- RowBox[{"hallway", " ", "with", " ", "bulge"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"(*", " ", "W", " ", "*)"}],
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"7.0", ",", "6.5"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"7.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"6.5", "+",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"6.5", "+",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"13.0", ",", "6.5"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"13.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "6.5"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"7.0", ",", "3.5"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"7.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"3.5", "-",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"3.5", "-",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"13.0", ",", "3.5"}], "}"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"13.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "3.5"}], "}"}]}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "Wg", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"7.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"6.5", "+",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"13.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "6.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "7.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"13.0", "+",
- RowBox[{"0.5",
- RowBox[{"Tan", "[",
- RowBox[{"0.5", "p1"}], "]"}]}]}], ",", "7.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"6.5", "+",
- RowBox[{"0.5",
- RowBox[{"Sec", "[", "p1", "]"}]}], "+",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"7.0", "-",
- RowBox[{"0.5",
- RowBox[{"Tan", "[",
- RowBox[{"0.5", "p1"}], "]"}]}]}], ",", "7.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0.0", ",", "7.0"}], "}"}]}], "}"}], "]"}], ",",
- RowBox[{"Polygon", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"7.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"3.5", "-",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"13.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "3.5"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"20.0", ",", "3.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"13.0", "+",
- RowBox[{"0.5",
- RowBox[{"Tan", "[",
- RowBox[{"0.5", "p1"}], "]"}]}]}], ",", "3.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"10.0", ",",
- RowBox[{"3.5", "-",
- RowBox[{"0.5",
- RowBox[{"Sec", "[", "p1", "]"}]}], "-",
- RowBox[{"3.0",
- RowBox[{"Tan", "[", "p1", "]"}]}]}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"7.0", "-",
- RowBox[{"0.5",
- RowBox[{"Tan", "[",
- RowBox[{"0.5", "p1"}], "]"}]}]}], ",", "3.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0.0", ",", "3.0"}], "}"}]}], "}"}], "]"}]}], "}"}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "bb", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0.0", ",", "8.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"4.0", ",", "6.0"}], "}"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ", "door", " ", "*)"}],
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"15.0", ",", "6.0"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"15.0", ",", "4.0"}], "}"}]}], "}"}]}], "}"}]}],
- "\[IndentingNewLine]", "]"}]}], "\n",
- RowBox[{"(*", " ",
- RowBox[{
- "generates", " ", "a", " ", "color", " ", "that", " ", "varies", " ",
- "linearly", " ", "from", " ", "green", " ",
- RowBox[{"(",
- RowBox[{"at", " ", "input", " ", "0"}], ")"}], " ", "to", " ", "red",
- " ",
- RowBox[{"(",
- RowBox[{
- "at", " ", "input", " ", "equal", " ", "to", " ", "max", " ",
- "pressure"}], ")"}]}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"colmap", "[",
- RowBox[{"x_", ",",
- RowBox[{"max_:", "1800"}]}], "]"}], ":=",
- RowBox[{"RGBColor", "[",
- RowBox[{
- RowBox[{"Min", "[",
- RowBox[{
- FractionBox["x", "max"], ",", "1"}], "]"}], ",",
- RowBox[{"0.8",
- RowBox[{"(",
- RowBox[{"1", "-",
- RowBox[{"Min", "[",
- RowBox[{
- FractionBox["x", "max"], ",", "1"}], "]"}]}], ")"}]}], ",", "0"}],
- "]"}]}], "\n",
- RowBox[{"(*", " ",
- RowBox[{
- "generates", " ", "a", " ", "normalized", " ", "vector", " ", "and", " ",
- "distance", " ", "for", " ", "a", " ", "given", " ", "layout", " ",
- "pointing", " ", "from", " ", "a", " ", "specified", " ", "wall", " ",
- "to", " ", "a", " ", "specified", " ", "coordinate"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"wallnorm", "[",
- RowBox[{"coord_", ",", "wall_"}], "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"pt", ",",
- RowBox[{"far", "=", "1000"}]}], "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Switch", "[",
- RowBox[{"lo", ",", "\[IndentingNewLine]", "0", ",",
- RowBox[{"(*", " ",
- RowBox[{"single", " ", "door"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"Switch", "[",
- RowBox[{"wall", ",", "\[IndentingNewLine]", "1", ",",
- RowBox[{"(*", " ",
- RowBox[{"top", " ", "wall"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "\[GreaterEqual]",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2", ",", "2"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"next", " ", "to", " ", "long", " ", "side"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"near", " ", "corner"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2"}], "]"}], "]"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ">",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"2", ",", "2", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"too", " ", "far", " ", "to", " ", "right"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"inside", " ", "doorway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2", ",", "2"}], "]"}], "]"}]}],
- "}"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "2",
- ",",
- RowBox[{"(*", " ",
- RowBox[{"bottom", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "\[LessEqual]",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2", ",", "2"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"next", " ", "to", " ", "long", " ", "side"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "1", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"near", " ", "corner"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2"}], "]"}], "]"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ">",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"5", ",", "2", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"too", " ", "far", " ", "to", " ", "right"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"inside", " ", "doorway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2", ",", "2"}], "]"}], "]"}]}],
- "}"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "3",
- ",",
- RowBox[{"(*", " ", "nothing", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "1", ",",
- RowBox[{"(*", " ",
- RowBox[{"column", " ", "and", " ", "door"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"Switch", "[",
- RowBox[{"wall", ",", "\[IndentingNewLine]", "1", ",",
- RowBox[{"(*", " ",
- RowBox[{"top", " ", "wall"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "\[GreaterEqual]",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2", ",", "2"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"next", " ", "to", " ", "long", " ", "side"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"near", " ", "corner"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2"}], "]"}], "]"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ">",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"2", ",", "2", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"too", " ", "far", " ", "to", " ", "right"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"inside", " ", "doorway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "2", ",", "2"}], "]"}], "]"}]}],
- "}"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "2",
- ",",
- RowBox[{"(*", " ",
- RowBox[{"bottom", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"1", ",", "1", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "\[LessEqual]",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2", ",", "2"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"next", " ", "to", " ", "long", " ", "side"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "1", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"near", " ", "corner"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2"}], "]"}], "]"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "of", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ">",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"5", ",", "2", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"too", " ", "far", " ", "to", " ", "right"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"inside", " ", "doorway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"4", ",", "2", ",", "2"}], "]"}], "]"}]}],
- "}"}]}], ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "3",
- ",",
- RowBox[{"(*", " ", "column", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ">",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"5", ",", "2", ",", "1"}], "]"}], "]"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"too", " ", "far", " ", "to", " ", "right"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"closest", " ", "point", " ", "on", " ", "column"}],
- " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{
- RowBox[{"W", "[",
- RowBox[{"[", "7", "]"}], "]"}], "+",
- RowBox[{"colrad",
- RowBox[{"(",
- FractionBox[
- RowBox[{"coord", "-",
- RowBox[{"W", "[",
- RowBox[{"[", "7", "]"}], "]"}]}],
- RowBox[{"Norm", "[",
- RowBox[{"coord", "-",
- RowBox[{"W", "[",
- RowBox[{"[", "7", "]"}], "]"}]}], "]"}]], ")"}]}]}]}],
- ";"}]}], "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]", "2", ",",
- RowBox[{"(*", " ",
- RowBox[{"hallway", " ", "with", " ", "bulge"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Switch", "[",
- RowBox[{"wall", ",", "\[IndentingNewLine]", "1", ",",
- RowBox[{"(*", " ",
- RowBox[{"top", " ", "wall"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"par1", "\[Equal]", "0"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"straight", " ", "hallway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "6.5"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"angled", " ", "hallway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "\[LessEqual]", "7.0"}], "||",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "\[GreaterEqual]",
- "13.0"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"straight", " ", "section"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "6.5"}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "middle", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<", "10.0"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "half"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], ">",
- RowBox[{
- RowBox[{
- RowBox[{"-",
- RowBox[{"Cot", "[", "par1", "]"}]}],
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], "+", "6.5", "+",
- RowBox[{"7",
- RowBox[{"Cot", "[", "par1", "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "angled", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"7", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "-", "6.5"}], ")"}],
- RowBox[{"Cot", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}],
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]], ",",
- FractionBox[
- RowBox[{"6.5", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "-", "7"}], ")"}],
- RowBox[{"Tan", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}],
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]]}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "corner", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"7.0", ",", "6.5"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "half"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], ">",
- RowBox[{
- RowBox[{
- RowBox[{"Cot", "[", "par1", "]"}],
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], "+", "6.5", "-",
- RowBox[{"13",
- RowBox[{"Cot", "[", "par1", "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "angled", " ", "wall"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"13", "\[VeryThinSpace]", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{"6.5", "-",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], ")"}], " ",
- RowBox[{"Cot", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], " ",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+", " ",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]], ",",
- FractionBox[
- RowBox[{"6.5", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{"13", "-",
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], ")"}], " ",
- RowBox[{"Tan", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], " ",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]]}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "corner", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"13.0", ",", "6.5"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ",", "\[IndentingNewLine]", "2", ",",
- RowBox[{"(*", " ",
- RowBox[{"bottom", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"par1", "\[Equal]", "0"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"straight", " ", "hallway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "3.5"}], "}"}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"angled", " ", "hallway"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "\[LessEqual]", "7.0"}], "||",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "\[GreaterEqual]",
- "13.0"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"straight", " ", "section"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "3.5"}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "middle", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "<", "10.0"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "half"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "<",
- RowBox[{
- RowBox[{
- RowBox[{"Cot", "[", "par1", "]"}],
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], "+", "3.5", "-",
- RowBox[{"7",
- RowBox[{"Cot", "[", "par1", "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"left", " ", "angled", " ", "wall"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"7", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{"3.5", "-",
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}]}], ")"}],
- RowBox[{"Cot", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}],
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]], ",",
- FractionBox[
- RowBox[{"3.5", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{"7", "-",
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], ")"}],
- RowBox[{"Tan", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}],
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]]}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "corner", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"7.0", ",", "3.5"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "half"}], " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "<",
- RowBox[{
- RowBox[{
- RowBox[{"-",
- RowBox[{"Cot", "[", "par1", "]"}]}],
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}]}], "+", "3.5", "+",
- RowBox[{"13",
- RowBox[{"Cot", "[", "par1", "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{"right", " ", "angled", " ", "wall"}], " ",
- "*)"}], "\[IndentingNewLine]",
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"13", "\[VeryThinSpace]", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], "-", "3.5"}], ")"}], " ",
- RowBox[{"Cot", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], " ",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+", " ",
- SuperscriptBox[
- RowBox[{"Cot", "[", "par1", "]"}], "2"]}]], ",",
- FractionBox[
- RowBox[{"3.5", "+",
- RowBox[{
- RowBox[{"(",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "1", "]"}], "]"}], "-", "13"}], ")"}], " ",
- RowBox[{"Tan", "[", "par1", "]"}]}], "+",
- RowBox[{
- RowBox[{"coord", "[",
- RowBox[{"[", "2", "]"}], "]"}], " ",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]}],
- RowBox[{"1", "+",
- SuperscriptBox[
- RowBox[{"Tan", "[", "par1", "]"}], "2"]}]]}], "}"}]}],
- ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ", "corner", " ", "*)"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"13.0", ",", "3.5"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ",", "\[IndentingNewLine]", "3", ",",
- RowBox[{"(*", " ", "nothing", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pt", "=",
- RowBox[{"{",
- RowBox[{"far", ",", "5.0"}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"lo", "\[Equal]", "1"}], "&&",
- RowBox[{"wall", "\[Equal]", "3"}]}], ",", "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"coord", "-", "pt"}],
- RowBox[{"Norm", "[",
- RowBox[{"coord", "-", "pt"}], "]"}]], ",",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{
- RowBox[{"EuclideanDistance", "[",
- RowBox[{"coord", ",",
- RowBox[{"W", "[",
- RowBox[{"[", "7", "]"}], "]"}]}], "]"}], "\[LessEqual]",
- "colrad"}], ",", "0", ",",
- RowBox[{"Norm", "[",
- RowBox[{"coord", "-", "pt"}], "]"}]}], "]"}]}], "}"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{
- FractionBox[
- RowBox[{"coord", "-", "pt"}],
- RowBox[{"Norm", "[",
- RowBox[{"coord", "-", "pt"}], "]"}]], ",",
- RowBox[{"Norm", "[",
- RowBox[{"coord", "-", "pt"}], "]"}]}], "}"}]}],
- "\[IndentingNewLine]", "]"}]}]}], "\[IndentingNewLine]", "]"}]}],
- "\[IndentingNewLine]",
- RowBox[{"(*",
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"Show", "[",
- RowBox[{
- RowBox[{"Graphics", "[", "Wg", "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Text", "[",
- RowBox[{
- RowBox[{"wallnorm", "[",
- RowBox[{"pt", ",", "w"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"15", ",", "9"}], "}"}]}], "]"}], "}"}], "]"}], ",",
- RowBox[{"Graphics", "[",
- RowBox[{"{",
- RowBox[{"Red", ",",
- RowBox[{"Arrow", "[",
- RowBox[{"{",
- RowBox[{"pt", ",",
- RowBox[{"pt", "+",
- RowBox[{"2",
- RowBox[{
- RowBox[{"wallnorm", "[",
- RowBox[{"pt", ",", "w"}], "]"}], "[",
- RowBox[{"[", "1", "]"}], "]"}]}]}]}], "}"}], "]"}]}], "}"}],
- "]"}], ",",
- RowBox[{"PlotRange", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"0", ",", "20"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"0", ",", "10"}], "}"}]}], "}"}]}]}], "]"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"pt", ",",
- RowBox[{"{",
- RowBox[{"4.0", ",", "6.0"}], "}"}]}], "}"}], ",", "Locator"}],
- "}"}], ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{"{",
- RowBox[{"w", ",", "1"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"1", ",", "2", ",", "3"}], "}"}]}], "}"}]}], "]"}], "*)"}],
- "\n",
- RowBox[{"(*", " ", "restart", " ", "*)"}], "\n",
- RowBox[{
- RowBox[{"restart", "[",
- RowBox[{
- RowBox[{"layout_:", "0"}], ",",
- RowBox[{"np_:", "Np"}], ",",
- RowBox[{"p1_:", "par1"}], ",",
- RowBox[{"p2_:", "par2"}]}], "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"{",
- RowBox[{"W", ",", "Wg", ",", "bb", ",", "door"}], "}"}], "=",
- RowBox[{"wallgen", "[",
- RowBox[{"layout", ",", "p1", ",", "p2"}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"Np", "=", "np"}], ";", "\[IndentingNewLine]",
- RowBox[{"par1", "=", "p1"}], ";", "\[IndentingNewLine]",
- RowBox[{"par2", "=", "p2"}], ";", "\[IndentingNewLine]",
- RowBox[{"rad", "=",
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"radmin", ",", "radmax"}], "}"}], ",", "np"}], "]"}]}],
- ";", "\[IndentingNewLine]",
- RowBox[{"radsum", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"np", ",", "np"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"rad", "[",
- RowBox[{"[", "i", "]"}], "]"}], "+",
- RowBox[{"rad", "[",
- RowBox[{"[", "j", "]"}], "]"}]}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",", "i"}], "}"}]}], "]"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "np"}], "}"}]}], "]"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"r", "=",
- RowBox[{"Transpose", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"bb", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "Np"}], "]"}], ",",
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"bb", "[",
- RowBox[{"[", "2", "]"}], "]"}], ",", "Np"}], "]"}]}], "}"}],
- "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"layout", "\[Equal]", "1"}], ",", "\[IndentingNewLine]",
- RowBox[{"(*", " ",
- RowBox[{
- "check", " ", "for", " ", "collisions", " ", "with", " ",
- "column"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"While", "[",
- RowBox[{
- RowBox[{
- RowBox[{"EuclideanDistance", "[",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], ",",
- RowBox[{"W", "[",
- RowBox[{"[",
- RowBox[{"-", "1"}], "]"}], "]"}]}], "]"}], "<", "colrad"}],
- ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[", "i", "]"}], "]"}], "=",
- RowBox[{"{",
- RowBox[{
- RowBox[{"RandomReal", "[",
- RowBox[{"bb", "[",
- RowBox[{"[", "1", "]"}], "]"}], "]"}], ",",
- RowBox[{"RandomReal", "[",
- RowBox[{"bb", "[",
- RowBox[{"[", "2", "]"}], "]"}], "]"}]}], "}"}]}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ",", "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "np"}], "}"}]}], "]"}], ";"}]}],
- "\[IndentingNewLine]", "]"}], ";", "\[IndentingNewLine]",
- RowBox[{"v", "=",
- RowBox[{"dvi", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"np", ",", "2"}], "}"}]}], "]"}]}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"dij", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"np", ",", "np"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"nij", "=",
- RowBox[{"tij", "=",
- RowBox[{"dvijt", "=",
- RowBox[{"e0", "=",
- RowBox[{"fij", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"np", ",", "np", ",", "2"}], "}"}]}], "]"}]}]}]}]}]}],
- ";", "\[IndentingNewLine]",
- RowBox[{"niw", "=",
- RowBox[{"tiw", "=",
- RowBox[{"fiw", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Nw", ",", "2"}], "}"}]}], "]"}]}]}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"diw", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Nw"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"pressure", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}], ",", "Np"}],
- "}"}]}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{"pos", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}], ",", "Np", ",",
- "2"}], "}"}]}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pos", "[",
- RowBox[{"[", "1", "]"}], "]"}], "=", "r"}], ";",
- "\[IndentingNewLine]",
- RowBox[{"evac", "=",
- RowBox[{"tpressure", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}]}], "]"}]}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{"generate", "[", "]"}], ";"}]}], "\[IndentingNewLine]",
- "]"}]}], "\n",
- RowBox[{"(*", " ",
- RowBox[{
- "generate", " ", "all", " ", "positions", " ", "for", " ", "entire", " ",
- "time", " ", "horizon"}], " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"generate", "[",
- RowBox[{"dummy_:", "0"}], "]"}], ":=",
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"step", "=", "1"}], "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"step", "++"}], ";", "\[IndentingNewLine]",
- RowBox[{"update", "[", "]"}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pos", "[",
- RowBox[{"[", "step", "]"}], "]"}], "=", "r"}], ";",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pressure", "[",
- RowBox[{"[",
- RowBox[{"step", "-", "1"}], "]"}], "]"}], "=",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"Total", "[",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"Norm", "[",
- RowBox[{"fij", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "]"}], ",",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",", "Np"}], "}"}]}], "]"}], "]"}],
- ",",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}]}], ";",
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"evac", "[",
- RowBox[{"[", "step", "]"}], "]"}], "=",
- RowBox[{"Length", "[",
- RowBox[{"Select", "[",
- RowBox[{
- RowBox[{"r", "[",
- RowBox[{"[",
- RowBox[{";;", ",", "1"}], "]"}], "]"}], ",",
- RowBox[{
- RowBox[{"#", "\[GreaterEqual]", "11.0"}], "&"}]}], "]"}],
- "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"tpressure", "[",
- RowBox[{"[",
- RowBox[{"step", "-", "1"}], "]"}], "]"}], "=",
- RowBox[{"If", "[",
- RowBox[{
- RowBox[{"step", "<", "10"}], ",", "0", ",",
- RowBox[{"Min", "[",
- RowBox[{
- RowBox[{"Total", "[",
- RowBox[{"pressure", "[",
- RowBox[{"[",
- RowBox[{"step", "-", "1"}], "]"}], "]"}], "]"}], ",",
- RowBox[{"1800", "Np"}]}], "]"}]}], "]"}]}]}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"t", ",", "dt", ",", "cutoff", ",", "dt"}], "}"}]}], "]"}],
- ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pressure", "[",
- RowBox[{"[",
- RowBox[{"-", "1"}], "]"}], "]"}], "=",
- RowBox[{"pressure", "[",
- RowBox[{"[",
- RowBox[{"-", "2"}], "]"}], "]"}]}], ";", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"tpressure", "[",
- RowBox[{"[",
- RowBox[{"-", "1"}], "]"}], "]"}], "=",
- RowBox[{"tpressure", "[",
- RowBox[{"[",
- RowBox[{"-", "2"}], "]"}], "]"}]}], ";"}]}], "\[IndentingNewLine]",
- "]"}]}], "\n",
- RowBox[{"(*", " ", "initialize", " ", "*)"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"{",
- RowBox[{"W", ",", "Wg", ",", "bb", ",", "door"}], "}"}], "=",
- RowBox[{"wallgen", "[",
- RowBox[{"lo", ",", "par1", ",", "par2"}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"rad", "=",
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"radmin", ",", "radmax"}], "}"}], ",", "Np"}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"radsum", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Np"}], "}"}]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"Do", "[", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"i", ",", "j"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"radsum", "[",
- RowBox[{"[",
- RowBox[{"j", ",", "i"}], "]"}], "]"}], "=",
- RowBox[{
- RowBox[{"rad", "[",
- RowBox[{"[", "i", "]"}], "]"}], "+",
- RowBox[{"rad", "[",
- RowBox[{"[", "j", "]"}], "]"}]}]}]}], ",", "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"j", ",", "1", ",", "i"}], "}"}]}], "]"}], ",",
- "\[IndentingNewLine]",
- RowBox[{"{",
- RowBox[{"i", ",", "1", ",", "Np"}], "}"}]}], "]"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"r", "=",
- RowBox[{"Transpose", "[",
- RowBox[{"{",
- RowBox[{
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"bb", "[",
- RowBox[{"[", "1", "]"}], "]"}], ",", "Np"}], "]"}], ",",
- RowBox[{"RandomReal", "[",
- RowBox[{
- RowBox[{"bb", "[",
- RowBox[{"[", "2", "]"}], "]"}], ",", "Np"}], "]"}]}], "}"}],
- "]"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"v", "=",
- RowBox[{"dvi", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "2"}], "}"}]}], "]"}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"dij", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Np"}], "}"}]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"nij", "=",
- RowBox[{"tij", "=",
- RowBox[{"dvijt", "=",
- RowBox[{"e0", "=",
- RowBox[{"fij", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Np", ",", "2"}], "}"}]}], "]"}]}]}]}]}]}],
- ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"niw", "=",
- RowBox[{"tiw", "=",
- RowBox[{"fiw", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Nw", ",", "2"}], "}"}]}], "]"}]}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"diw", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{"Np", ",", "Nw"}], "}"}]}], "]"}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pressure", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}], ",", "Np"}],
- "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"pos", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}], ",", "Np", ",",
- "2"}], "}"}]}], "]"}]}], ";"}], "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"evac", "=",
- RowBox[{"tpressure", "=",
- RowBox[{"ConstantArray", "[",
- RowBox[{"0", ",",
- RowBox[{
- RowBox[{"Floor", "[",
- FractionBox["cutoff", "dt"], "]"}], "+", "1"}]}], "]"}]}]}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{
- RowBox[{"pos", "[",
- RowBox[{"[", "1", "]"}], "]"}], "=", "r"}], ";"}],
- "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"restart", "[", "]"}], ";"}]}]}]], "Input",
- CellChangeTimes->{{3.7766008761831923`*^9, 3.776600882799075*^9},
- 3.776717606385376*^9}]
-}, Closed]],
-
-Cell[CellGroupData[{
-
-Cell["Demonstration", "Subsection",
- CellChangeTimes->{{3.7766008885632277`*^9, 3.7766008904796133`*^9}}],
-
-Cell[CellGroupData[{
-
-Cell[BoxData[
- RowBox[{"Manipulate", "[",
- RowBox[{
- RowBox[{"Module", "[",
- RowBox[{
- RowBox[{"{", "step", "}"}], ",", "\[IndentingNewLine]",
- RowBox[{
- RowBox[{"step", "=",
- RowBox[{"1", "+",
- RowBox[{"Floor", "[",
- FractionBox["t", "dt"], "]"}]}]}], ";", "\[IndentingNewLine]",
- RowBox[{"Framed", "[",
- RowBox[{"ListPlot", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"4.8",
- FractionBox["tee", "cutoff"]}], "+", "14.6"}], ",",
- RowBox[{
- RowBox[{"2.5",
- FractionBox[
- RowBox[{"evac", "[",
- RowBox[{"[",
- RowBox[{
- FractionBox["tee", "dt"], "+", "1"}], "]"}], "]"}],
- "Np"]}], "+", "0.2"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"tee", ",", "0", ",", "t", ",", "dt"}], "}"}]}], "]"}],
- ",",
- RowBox[{"Table", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{
- RowBox[{
- RowBox[{"4.8",
- FractionBox["tee", "cutoff"]}], "+", "14.6"}], ",",
- RowBox[{
- RowBox[{"2.5",
- FractionBox[
- RowBox[{"tpressure", "[",
- RowBox[{"[",
- RowBox[{
- FractionBox["tee", "dt"], "+", "1"}], "]"}], "]"}],
- RowBox[{"1800", "Np"}]]}], "+", "0.2"}]}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"tee", ",", "0", ",", "t", ",", "dt"}], "}"}]}],
- "]"}]}], "}"}], ",",
- RowBox[{"PlotStyle", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"Directive", "[",
- RowBox[{
- RowBox[{"Opacity", "[", "0.5", "]"}], ",",
- RowBox[{"RGBColor", "[",
- RowBox[{"0", ",", "0.8", ",", "0"}], "]"}]}], "]"}], ",",
- RowBox[{"Directive", "[",
- RowBox[{
- RowBox[{"Opacity", "[", "0.5", "]"}], ",",
- RowBox[{"RGBColor", "[",
- RowBox[{"1", ",", "0", ",", "0"}], "]"}]}], "]"}]}], "}"}]}],
- ",",
- RowBox[{"Joined", "\[Rule]", "True"}], ",",
- RowBox[{"Prolog", "\[Rule]",
- RowBox[{"{",
- RowBox[{
- RowBox[{"RGBColor", "[",
- RowBox[{"0.95", ",", "0.95", ",", "0.95"}], "]"}], ",",
- RowBox[{"Rectangle", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"14.5", ",", "0.1"}], "}"}], ",",
- RowBox[{"{",
- RowBox[{"19.5", ",", "2.9"}], "}"}]}], "]"}]}], "}"}]}], ",",
- RowBox[{"Epilog", "\[Rule]",
- RowBox[{"Join", "[",
- RowBox[{
- RowBox[{"{",
- RowBox[{"Text", "[",
- RowBox[{
- RowBox[{"\"\