From 232268bcf3cfed1eb4a21bfa8b8ae19a68ad1857 Mon Sep 17 00:00:00 2001
From: Edward Sabinus <edward.sabinus@informatik.uni-halle.de>
Date: Fri, 17 Nov 2023 16:26:15 +0100
Subject: [PATCH] adopted Create_And_Test_Parsers.bat to new project name;
 Added alternative Tree form: like functions in Haskell; works currently with
 classic trees; TODO: implement function trees BUG: need seperator between
 each function tree (like end of lemma or inductioncase)

---
 ANTRL-Grammatiken/ADT/ADT.g4                  |    2 +-
 .../ADT/ADT_Bsp_Peano_FuncBrackets.svg        |  955 +++++++
 .../ADT/ADT_Bsp_Peano_FuncBrackets.txt        |   11 +
 .../Task_Bsp_plus_komm_FuncBrackets.svg       |  400 +++
 .../Task_Bsp_plus_komm_FuncBrackets.txt       |    5 +
 .../Induction_Bsp_plus_komm_FuncBrackets.svg  | 2505 +++++++++++++++++
 .../Induction_Bsp_plus_komm_FuncBrackets.txt  |   21 +
 ANTRL-Grammatiken/Lib/EquationRules.g4        |    2 +-
 ANTRL-Grammatiken/Lib/TreeAndLexerRules.g4    |   14 +-
 .../Metamodell/Beweis/Transformation.cs       |    2 +-
 .../Eingabeverwaltung/Parser/ADT_Listener.cs  |   20 +
 .../Parser/ADT_Parser/ADT.interp              |    8 +-
 .../Parser/ADT_Parser/ADTBaseListener.cs      |   72 +
 .../Parser/ADT_Parser/ADTListener.cs          |   60 +
 .../Parser/ADT_Parser/ADTParser.cs            |  754 +++--
 .../Parser/Listener_Helper.cs                 |   38 +-
 .../Parser/Proof_Listener.cs                  |   24 +-
 .../Parser/Proof_Parser/Proof.interp          |    8 +-
 .../Parser/Proof_Parser/ProofBaseListener.cs  |   72 +
 .../Parser/Proof_Parser/ProofListener.cs      |   60 +
 .../Parser/Proof_Parser/ProofParser.cs        | 1078 ++++---
 .../Eingabeverwaltung/Parser/Task_Listener.cs |   30 +-
 .../Parser/Task_Parser/Task.interp            |    8 +-
 .../Parser/Task_Parser/TaskBaseListener.cs    |   72 +
 .../Parser/Task_Parser/TaskListener.cs        |   60 +
 .../Parser/Task_Parser/TaskParser.cs          |  894 ++++--
 .../Parser/TransformationStep_Listener.cs     |   19 +
 Create_And_Test_Parsers.bat                   |    6 +-
 Test_Parsers.bat                              |    6 +-
 29 files changed, 6410 insertions(+), 796 deletions(-)
 create mode 100644 ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.svg
 create mode 100644 ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.txt
 create mode 100644 ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.svg
 create mode 100644 ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.txt
 create mode 100644 ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.svg
 create mode 100644 ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.txt

diff --git a/ANTRL-Grammatiken/ADT/ADT.g4 b/ANTRL-Grammatiken/ADT/ADT.g4
index ab0dced..1c57947 100644
--- a/ANTRL-Grammatiken/ADT/ADT.g4
+++ b/ANTRL-Grammatiken/ADT/ADT.g4
@@ -23,4 +23,4 @@ var : BEZ ':' sort ;
 // mytree imported from TreeAndLexerRules
 
 axioms      : 'axioms' axiom+ ;
-axiom       : BEZ ':' mytree '=' mytree;
\ No newline at end of file
+axiom       : BEZ ':' eq_s ;
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.svg b/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.svg
new file mode 100644
index 0000000..6115e8d
--- /dev/null
+++ b/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.svg
@@ -0,0 +1,955 @@
+<svg width="1805.1000000000001" height="805.2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><line x1="727.109375" y1="7.5" x2="34.5" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="34.5" y1="39.5" x2="15.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="34.5" y1="39.5" x2="54.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="109.0" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="109.0" y1="39.5" x2="92.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="109.0" y1="39.5" x2="125.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="125.5" y1="71.5" x2="125.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="260.5" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="260.5" y1="39.5" x2="177.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="260.5" y1="39.5" x2="241.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="241.5" y1="71.5" x2="220.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="241.5" y1="71.5" x2="240.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="241.5" y1="71.5" x2="262.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="262.75" y1="103.5" x2="262.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="260.5" y1="39.5" x2="344.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="344.0" y1="71.5" x2="295.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="344.0" y1="71.5" x2="319.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="344.0" y1="71.5" x2="341.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="341.75" y1="103.5" x2="341.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="344.0" y1="71.5" x2="367.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="344.0" y1="71.5" x2="392.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="392.75" y1="103.5" x2="392.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="556.0" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="556.0" y1="39.5" x2="438.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="556.0" y1="39.5" x2="497.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="423.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="445.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="467.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="467.75" y1="103.5" x2="467.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="494.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="520.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="520.75" y1="103.5" x2="520.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="546.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="71.5" x2="571.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="571.75" y1="103.5" x2="571.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="556.0" y1="39.5" x2="673.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="600.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="620.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="642.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="642.75" y1="103.5" x2="642.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="669.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="695.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="695.75" y1="103.5" x2="695.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="721.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="673.5" y1="71.5" x2="746.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="746.75" y1="103.5" x2="746.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="805.25" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="805.25" y1="39.5" x2="759.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="805.25" y1="39.5" x2="789.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="789.0" y1="71.5" x2="770.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="789.0" y1="71.5" x2="785.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="789.0" y1="71.5" x2="807.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="807.75" y1="103.5" x2="807.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="805.25" y1="39.5" x2="820.25" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="805.25" y1="39.5" x2="851.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="851.5" y1="71.5" x2="832.25" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="851.5" y1="71.5" x2="848.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="851.5" y1="71.5" x2="870.75" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="870.75" y1="103.5" x2="870.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="1375.71875" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1375.71875" y1="39.5" x2="887.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1375.71875" y1="39.5" x2="929.5" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="929.5" y1="71.5" x2="908.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="929.5" y1="71.5" x2="926.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="929.5" y1="71.5" x2="951.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="951.0" y1="103.5" x2="910.4375" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="910.4375" y1="135.5" x2="872.3125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="872.3125" y1="167.5" x2="839.0625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="839.0625" y1="199.5" x2="839.0625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="839.0625" y1="231.5" x2="839.0625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="872.3125" y1="167.5" x2="905.5625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="905.5625" y1="199.5" x2="905.5625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="905.5625" y1="231.5" x2="905.5625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="910.4375" y1="135.5" x2="948.5625" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="948.5625" y1="167.5" x2="948.5625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="948.5625" y1="199.5" x2="948.5625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="951.0" y1="103.5" x2="951.0" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="951.0" y1="103.5" x2="991.5625" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="991.5625" y1="135.5" x2="991.5625" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="991.5625" y1="167.5" x2="991.5625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1375.71875" y1="39.5" x2="1224.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1224.0" y1="71.5" x2="1202.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1224.0" y1="71.5" x2="1221.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1224.0" y1="71.5" x2="1245.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1245.5" y1="103.5" x2="1142.8125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1142.8125" y1="135.5" x2="1081.3125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1081.3125" y1="167.5" x2="1048.0625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1048.0625" y1="199.5" x2="1048.0625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1048.0625" y1="231.5" x2="1048.0625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1081.3125" y1="167.5" x2="1114.5625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1114.5625" y1="199.5" x2="1114.5625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1114.5625" y1="231.5" x2="1114.5625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1142.8125" y1="135.5" x2="1204.3125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="167.5" x2="1204.3125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="199.5" x2="1178.3125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="199.5" x2="1204.3125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="231.5" x2="1171.0625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1171.0625" y1="263.5" x2="1171.0625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1171.0625" y1="295.5" x2="1171.0625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="231.5" x2="1237.5625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1237.5625" y1="263.5" x2="1237.5625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1237.5625" y1="295.5" x2="1237.5625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1204.3125" y1="199.5" x2="1230.3125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1245.5" y1="103.5" x2="1245.5" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1245.5" y1="103.5" x2="1348.1875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1348.1875" y1="135.5" x2="1314.9375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1314.9375" y1="167.5" x2="1314.9375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1314.9375" y1="199.5" x2="1314.9375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1348.1875" y1="135.5" x2="1381.4375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="167.5" x2="1381.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="199.5" x2="1355.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="199.5" x2="1381.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="231.5" x2="1343.3125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1343.3125" y1="263.5" x2="1310.0625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1310.0625" y1="295.5" x2="1310.0625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1310.0625" y1="327.5" x2="1310.0625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1343.3125" y1="263.5" x2="1376.5625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1376.5625" y1="295.5" x2="1376.5625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1376.5625" y1="327.5" x2="1376.5625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="231.5" x2="1419.5625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1419.5625" y1="263.5" x2="1419.5625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1419.5625" y1="295.5" x2="1419.5625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1381.4375" y1="199.5" x2="1407.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1375.71875" y1="39.5" x2="1552.875" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1552.875" y1="71.5" x2="1530.875" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1552.875" y1="71.5" x2="1550.375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1552.875" y1="71.5" x2="1574.875" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1574.875" y1="103.5" x2="1534.3125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1534.3125" y1="135.5" x2="1496.1875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1496.1875" y1="167.5" x2="1462.9375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1462.9375" y1="199.5" x2="1462.9375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1462.9375" y1="231.5" x2="1462.9375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1496.1875" y1="167.5" x2="1529.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1529.4375" y1="199.5" x2="1529.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1529.4375" y1="231.5" x2="1529.4375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1534.3125" y1="135.5" x2="1572.4375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1572.4375" y1="167.5" x2="1572.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1572.4375" y1="199.5" x2="1572.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1574.875" y1="103.5" x2="1574.875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1574.875" y1="103.5" x2="1615.4375" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1615.4375" y1="135.5" x2="1615.4375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1615.4375" y1="167.5" x2="1615.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1375.71875" y1="39.5" x2="1863.9375" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1863.9375" y1="71.5" x2="1841.9375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1863.9375" y1="71.5" x2="1861.4375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1863.9375" y1="71.5" x2="1885.9375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1885.9375" y1="103.5" x2="1771.6875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1771.6875" y1="135.5" x2="1710.1875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1710.1875" y1="167.5" x2="1676.9375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1676.9375" y1="199.5" x2="1676.9375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1676.9375" y1="231.5" x2="1676.9375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1710.1875" y1="167.5" x2="1743.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1743.4375" y1="199.5" x2="1743.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1743.4375" y1="231.5" x2="1743.4375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1771.6875" y1="135.5" x2="1833.1875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="167.5" x2="1833.1875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="199.5" x2="1807.1875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="199.5" x2="1833.1875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="231.5" x2="1799.9375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1799.9375" y1="263.5" x2="1799.9375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1799.9375" y1="295.5" x2="1799.9375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="231.5" x2="1866.4375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1866.4375" y1="263.5" x2="1866.4375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1866.4375" y1="295.5" x2="1866.4375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1833.1875" y1="199.5" x2="1859.1875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1885.9375" y1="103.5" x2="1885.9375" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1885.9375" y1="103.5" x2="2000.1875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2000.1875" y1="135.5" x2="1962.0625" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1962.0625" y1="167.5" x2="1928.8125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1928.8125" y1="199.5" x2="1928.8125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1928.8125" y1="231.5" x2="1928.8125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1962.0625" y1="167.5" x2="1995.3125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="199.5" x2="1995.3125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="231.5" x2="1969.3125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="231.5" x2="1995.3125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="263.5" x2="1957.1875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1957.1875" y1="295.5" x2="1923.9375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1923.9375" y1="327.5" x2="1923.9375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1923.9375" y1="359.5" x2="1923.9375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1957.1875" y1="295.5" x2="1990.4375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1990.4375" y1="327.5" x2="1990.4375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1990.4375" y1="359.5" x2="1990.4375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="263.5" x2="2033.4375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2033.4375" y1="295.5" x2="2033.4375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2033.4375" y1="327.5" x2="2033.4375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1995.3125" y1="231.5" x2="2021.3125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2000.1875" y1="135.5" x2="2038.3125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2038.3125" y1="167.5" x2="2038.3125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2038.3125" y1="199.5" x2="2038.3125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="727.109375" y1="7.5" x2="1419.71875" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<rect x="1546.875" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1548" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="473.0" y="64.0" width="49.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="475" y="73" style="font-family:sans-serif;font-size:10px;">
+operation
+</text>
+<rect x="1562.4375" y="224.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1564" y="233" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="2017.3125" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2019" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1351.9375" y="192.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1353" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="736.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="738" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1778.9375" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1780" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1222.5625" y="256.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1224" y="265" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1521.375" y="96.0" width="19.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1523" y="105" style="font-family:sans-serif;font-size:10px;">
+m0
+</text>
+<rect x="1413.0625" y="320.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1415" y="329" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1003.0625" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1005" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1514.4375" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1516" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="936.5" y="96.0" width="29.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="938" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_s
+</text>
+<rect x="1728.4375" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1730" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="330.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="332" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="735.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="737" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="1036.0625" y="256.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1038" y="265" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1857.9375" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1859" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1508.4375" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1510" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="859.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="861" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="319.5" y="64.0" width="49.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="321" y="73" style="font-family:sans-serif;font-size:10px;">
+operation
+</text>
+<rect x="1859.9375" y="320.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1861" y="329" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="649.0" y="64.0" width="49.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="651" y="73" style="font-family:sans-serif;font-size:10px;">
+operation
+</text>
+<rect x="1366.4375" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1368" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1980.3125" y="256.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1982" y="265" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1298.3125" y="256.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1300" y="265" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="331.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="333" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="747.0" y="64.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="749" y="73" style="font-family:sans-serif;font-size:10px;">
+vars
+</text>
+<rect x="631.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="633" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="78.5" y="64.0" width="28.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="80" y="73" style="font-family:sans-serif;font-size:10px;">
+sorts
+</text>
+<rect x="1985.1875" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1987" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1231.0" y="96.0" width="29.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1233" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_s
+</text>
+<rect x="1157.5625" y="320.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1159" y="329" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="1351.9375" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1353" y="233" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="251.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="253" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="1569.875" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1571" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="1665.1875" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1667" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="217.0" y="64.0" width="49.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="219" y="73" style="font-family:sans-serif;font-size:10px;">
+operation
+</text>
+<rect x="1356.71875" y="32.0" width="38.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1358" y="41" style="font-family:sans-serif;font-size:10px;">
+axioms
+</text>
+<rect x="1404.5625" y="256.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1406" y="265" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1519.3125" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1521" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1557.4375" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1559" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="2026.9375" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2028" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1524.4375" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1526" y="265" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1093.5625" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1095" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1818.1875" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1820" y="233" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="2017.8125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2019" y="265" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="19.0" y="32.0" width="31.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="21" y="41" style="font-family:sans-serif;font-size:10px;">
+name
+</text>
+<rect x="1851.4375" y="256.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1853" y="265" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="528.5" y="32.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="530" y="41" style="font-family:sans-serif;font-size:10px;">
+operations
+</text>
+<rect x="1174.8125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1176" y="233" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="1722.4375" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1724" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1907.8125" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1909" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1240.5" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1242" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="1847.4375" y="64.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1849" y="73" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="381.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="383" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="485.75" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="487" y="105" style="font-family:sans-serif;font-size:10px;">
+&gt;&lt;
+</text>
+<rect x="933.5625" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="935" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1127.8125" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1129" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1600.4375" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1602" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1754.9375" y="256.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1756" y="265" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1298.0625" y="352.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1300" y="361" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1265.0625" y="288.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1267" y="297" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1913.4375" y="384.0" width="21.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1915" y="393" style="font-family:sans-serif;font-size:10px;">
+mal
+</text>
+<rect x="1036.3125" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1038" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="411.0" y="64.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="413" y="73" style="font-family:sans-serif;font-size:10px;">
+operations
+</text>
+<rect x="1109.5625" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1111" y="265" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1417.9375" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1419" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1189.3125" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1191" y="233" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1594.4375" y="160.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1596" y="169" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1451.1875" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1453" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="938.5625" y="224.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="940" y="233" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="860.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="862" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="589.75" y="96.0" width="21.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="591" y="105" style="font-family:sans-serif;font-size:10px;">
+mal
+</text>
+<rect x="1194.0" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1196" y="105" style="font-family:sans-serif;font-size:10px;">
+p1
+</text>
+<rect x="237.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="239" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="281.75" y="96.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="283" y="105" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="560.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="562" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="685.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="687" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="895.4375" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="897" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1756.6875" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1758" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="818.0625" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="820" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1174.8125" y="192.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1176" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="1965.8125" y="224.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1967" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="884.5625" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="886" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1289.0625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1291" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1855.6875" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1857" y="233" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="660.75" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="662" y="105" style="font-family:sans-serif;font-size:10px;">
+&gt;&lt;
+</text>
+<rect x="868.5" y="64.0" width="38.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="870" y="73" style="font-family:sans-serif;font-size:10px;">
+axioms
+</text>
+<rect x="1605.4375" y="192.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1607" y="201" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1832.4375" y="96.0" width="19.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1834" y="105" style="font-family:sans-serif;font-size:10px;">
+m1
+</text>
+<rect x="845.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="847" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2018.4375" y="288.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2020" y="297" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="927.5625" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="929" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1150.0625" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1152" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="539.25" y="96.0" width="14.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="541" y="105" style="font-family:sans-serif;font-size:10px;">
+-&gt;
+</text>
+<rect x="913.0" y="64.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="915" y="73" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="1980.3125" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1982" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1975.4375" y="320.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1977" y="329" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1631.9375" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1633" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="229.0" y="32.0" width="63.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="231" y="41" style="font-family:sans-serif;font-size:10px;">
+constructors
+</text>
+<rect x="1845.4375" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1847" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1878.9375" y="320.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1880" y="329" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="890.5625" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="892" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="360.25" y="96.0" width="14.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="362" y="105" style="font-family:sans-serif;font-size:10px;">
+-&gt;
+</text>
+<rect x="1269.9375" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1271" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="2033.3125" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2035" y="233" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="970.5625" y="160.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="972" y="169" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="509.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="511" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="986.5625" y="192.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="988" y="201" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="797.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="799" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1818.1875" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1820" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1366.4375" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1368" y="233" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="827.3125" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="829" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1361.5625" y="288.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1363" y="297" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="456.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="458" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="1883.8125" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1885" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1551.4375" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1553" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1880.9375" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1882" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="899.5" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="901" y="105" style="font-family:sans-serif;font-size:10px;">
+p0
+</text>
+<rect x="1738.4375" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1740" y="265" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="457.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="459" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1985.4375" y="384.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1987" y="393" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1099.5625" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1101" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1803.6875" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1805" y="233" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="2023.3125" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2025" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="252.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="254" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1333.1875" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1335" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1400.21875" y="32.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1402" y="41" style="font-family:sans-serif;font-size:10px;">
+&lt;EOF&gt;
+</text>
+<rect x="1371.5625" y="352.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1373" y="361" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="796.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="798" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="1231.0625" y="320.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1233" y="329" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1293.9375" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1295" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1560.375" y="96.0" width="29.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1562" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_s
+</text>
+<rect x="1452.4375" y="256.0" width="21.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1454" y="265" style="font-family:sans-serif;font-size:10px;">
+mal
+</text>
+<rect x="1912.1875" y="288.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1914" y="297" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="900.5625" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="902" y="265" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1803.6875" y="192.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1805" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="1441.9375" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1443" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2012.4375" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2014" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1355.5625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1357" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1916.8125" y="256.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1918" y="265" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1398.5625" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1400" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="765.25" y="96.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="767" y="105" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1655.9375" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1657" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="684.75" y="96.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="686" y="105" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="1403.9375" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1405" y="233" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="561.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="563" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1871.4375" y="96.0" width="29.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1873" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_s
+</text>
+<rect x="782.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="784" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="714.25" y="96.0" width="14.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="716" y="105" style="font-family:sans-serif;font-size:10px;">
+-&gt;
+</text>
+<rect x="794.0625" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="796" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1301.4375" y="224.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1303" y="233" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="1126.0625" y="256.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1128" y="265" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="842.5" y="64.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="844" y="73" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="210.25" y="96.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="212" y="105" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="316.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="318" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1965.8125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1967" y="265" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="382.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="384" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="816.75" y="64.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="818" y="73" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="1189.3125" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1191" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="946.0" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="948" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="1969.4375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1971" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="923.0" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="925" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1216.5625" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1218" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="442.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="444" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1226.8125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1228" y="233" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="510.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="512" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="115.5" y="96.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="117" y="105" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="617.25" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="619" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="827.0625" y="256.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="829" y="265" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1207.5" y="64.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1209" y="73" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="632.75" y="128.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="634" y="137" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="976.5625" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="978" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="1027.0625" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1029" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="780.0" y="64.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="782" y="73" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="825.75" y="96.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="827" y="105" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1536.375" y="64.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1538" y="73" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="114.5" y="64.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="116" y="73" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="36.5" y="64.0" width="35.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="38" y="73" style="font-family:sans-serif;font-size:10px;">
+Peano
+</text>
+<rect x="411.25" y="96.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="413" y="105" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1666.4375" y="256.0" width="21.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1668" y="265" style="font-family:sans-serif;font-size:10px;">
+mal
+</text>
+<rect x="717.609375" y="0.0" width="19.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="719" y="9" style="font-family:sans-serif;font-size:10px;">
+adt
+</text>
+<rect x="95.0" y="32.0" width="28.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="97" y="41" style="font-family:sans-serif;font-size:10px;">
+sorts
+</text>
+<rect x="-0.5" y="64.0" width="31.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2" y="73" style="font-family:sans-serif;font-size:10px;">
+name
+</text>
+<rect x="1902.9375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1904" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="793.25" y="32.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="795" y="41" style="font-family:sans-serif;font-size:10px;">
+vars
+</text>
+<rect x="1217.5" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1219" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1917.0625" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1919" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="1786.4375" y="320.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1788" y="329" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="145.5" y="64.0" width="63.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="147" y="73" style="font-family:sans-serif;font-size:10px;">
+constructors
+</text>
+</svg>
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.txt b/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.txt
new file mode 100644
index 0000000..5b41bd9
--- /dev/null
+++ b/ANTRL-Grammatiken/ADT/ADT_Bsp_Peano_FuncBrackets.txt
@@ -0,0 +1,11 @@
+name Peano
+sorts Nat
+constructors null: Nat
+             nach: Nat -> Nat 
+operations plus: Nat >< Nat -> Nat
+           mal:  Nat >< Nat -> Nat
+vars n : Nat, m : Nat
+axioms p0: plus n null = n
+       p1: plus n (nach m) = nach (plus n m)
+       m0: mal n null = null
+       m1: mal n (nach m) = plus (mal n m) n
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.svg b/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.svg
new file mode 100644
index 0000000..53f0a14
--- /dev/null
+++ b/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.svg
@@ -0,0 +1,400 @@
+<svg width="1028.5" height="821.7" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><line x1="486.46875" y1="7.5" x2="463.46875" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="463.46875" y1="39.5" x2="185.5625" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="463.46875" y1="39.5" x2="212.5625" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="212.5625" y1="71.5" x2="73.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="73.0" y1="103.5" x2="60.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="60.75" y1="135.5" x2="14.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="60.75" y1="135.5" x2="45.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="167.5" x2="26.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="167.5" x2="41.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="167.5" x2="63.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="63.75" y1="199.5" x2="63.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="60.75" y1="135.5" x2="76.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="60.75" y1="135.5" x2="107.5" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="107.5" y1="167.5" x2="88.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="107.5" y1="167.5" x2="104.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="107.5" y1="167.5" x2="126.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="126.75" y1="199.5" x2="126.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="73.0" y1="103.5" x2="85.25" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="212.5625" y1="71.5" x2="352.125" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="352.125" y1="103.5" x2="261.125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="261.125" y1="135.5" x2="223.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="223.0" y1="167.5" x2="189.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="189.75" y1="199.5" x2="189.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="189.75" y1="231.5" x2="189.75" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="223.0" y1="167.5" x2="256.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="256.25" y1="199.5" x2="256.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="256.25" y1="231.5" x2="256.25" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="261.125" y1="135.5" x2="299.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="299.25" y1="167.5" x2="299.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="299.25" y1="199.5" x2="299.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="352.125" y1="103.5" x2="352.125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="352.125" y1="103.5" x2="443.125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="443.125" y1="135.5" x2="405.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="405.0" y1="167.5" x2="371.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="371.75" y1="199.5" x2="371.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="371.75" y1="231.5" x2="371.75" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="405.0" y1="167.5" x2="438.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="438.25" y1="199.5" x2="438.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="438.25" y1="231.5" x2="438.25" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="443.125" y1="135.5" x2="481.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="481.25" y1="167.5" x2="481.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="481.25" y1="199.5" x2="481.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="463.46875" y1="39.5" x2="554.75" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="554.75" y1="71.5" x2="537.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="554.75" y1="71.5" x2="572.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="463.46875" y1="39.5" x2="741.375" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="741.375" y1="71.5" x2="741.375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="741.375" y1="103.5" x2="562.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="562.75" y1="135.5" x2="529.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="562.75" y1="135.5" x2="560.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="562.75" y1="135.5" x2="596.5" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="596.5" y1="167.5" x2="525.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="525.75" y1="199.5" x2="511.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="525.75" y1="199.5" x2="540.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="596.5" y1="167.5" x2="593.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="593.25" y1="199.5" x2="575.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="593.25" y1="199.5" x2="611.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="596.5" y1="167.5" x2="667.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="667.25" y1="199.5" x2="648.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="667.25" y1="199.5" x2="686.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="741.375" y1="103.5" x2="762.5" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="762.5" y1="135.5" x2="724.75" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="762.5" y1="135.5" x2="759.75" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="762.5" y1="135.5" x2="800.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="800.25" y1="167.5" x2="728.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="728.75" y1="199.5" x2="714.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="728.75" y1="199.5" x2="743.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="800.25" y1="167.5" x2="796.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="796.25" y1="199.5" x2="778.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="796.25" y1="199.5" x2="814.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="800.25" y1="167.5" x2="871.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="871.75" y1="199.5" x2="851.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="871.75" y1="199.5" x2="892.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="741.375" y1="103.5" x2="920.0" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="920.0" y1="135.5" x2="905.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="920.0" y1="135.5" x2="935.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="935.0" y1="167.5" x2="920.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="935.0" y1="167.5" x2="949.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="486.46875" y1="7.5" x2="509.46875" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<rect x="101.25" y="192.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="103" y="201" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="47.25" y="128.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="49" y="137" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="567.5" y="96.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="569" y="105" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="698.0" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="700" y="233" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="738.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="740" y="233" style="font-family:sans-serif;font-size:10px;">
+6
+</text>
+<rect x="541.25" y="128.0" width="43.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="543" y="137" style="font-family:sans-serif;font-size:10px;">
+case_pt
+</text>
+<rect x="826.0" y="224.0" width="51.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="828" y="233" style="font-family:sans-serif;font-size:10px;">
+maxsteps
+</text>
+<rect x="52.75" y="192.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="54" y="201" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="606.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="608" y="233" style="font-family:sans-serif;font-size:10px;">
+6
+</text>
+<rect x="115.75" y="192.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="117" y="201" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="43.5" y="96.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="45" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="178.0" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="180" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="116.75" y="224.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="118" y="233" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="284.25" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="286" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="360.0" y="160.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="362" y="169" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="460.25" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="462" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="509.25" y="192.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="511" y="201" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="535.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="537" y="233" style="font-family:sans-serif;font-size:10px;">
+4
+</text>
+<rect x="569.25" y="192.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="571" y="201" style="font-family:sans-serif;font-size:10px;">
+minsteps
+</text>
+<rect x="809.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="811" y="233" style="font-family:sans-serif;font-size:10px;">
+9
+</text>
+<rect x="21.25" y="192.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="23" y="201" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="577.0" y="160.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="579" y="169" style="font-family:sans-serif;font-size:10px;">
+task_pt
+</text>
+<rect x="474.96875" y="0.0" width="23.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="476" y="9" style="font-family:sans-serif;font-size:10px;">
+task
+</text>
+<rect x="246.125" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="248" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="292.75" y="224.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="294" y="233" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="551.5" y="224.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="553" y="233" style="font-family:sans-serif;font-size:10px;">
+minsteps
+</text>
+<rect x="944.25" y="192.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="946" y="201" style="font-family:sans-serif;font-size:10px;">
+1
+</text>
+<rect x="535.25" y="64.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="537" y="73" style="font-family:sans-serif;font-size:10px;">
+ind_var
+</text>
+<rect x="241.25" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="243" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="711.25" y="160.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="713" y="169" style="font-family:sans-serif;font-size:10px;">
+case
+</text>
+<rect x="897.5" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="899" y="169" style="font-family:sans-serif;font-size:10px;">
+IH
+</text>
+<rect x="550.0" y="160.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="552" y="169" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="442.46875" y="32.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="444" y="41" style="font-family:sans-serif;font-size:10px;">
+task_eq
+</text>
+<rect x="741.0" y="128.0" width="43.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="743" y="137" style="font-family:sans-serif;font-size:10px;">
+case_pt
+</text>
+<rect x="489.96875" y="32.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="491" y="41" style="font-family:sans-serif;font-size:10px;">
+&lt;EOF&gt;
+</text>
+<rect x="681.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="683" y="233" style="font-family:sans-serif;font-size:10px;">
+8
+</text>
+<rect x="495.0" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="497" y="233" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="641.75" y="192.0" width="51.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="643" y="201" style="font-family:sans-serif;font-size:10px;">
+maxsteps
+</text>
+<rect x="724.375" y="96.0" width="34.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="726" y="105" style="font-family:sans-serif;font-size:10px;">
+ind_pt
+</text>
+<rect x="515.5" y="160.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="517" y="169" style="font-family:sans-serif;font-size:10px;">
+case
+</text>
+<rect x="623.0" y="224.0" width="51.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="625" y="233" style="font-family:sans-serif;font-size:10px;">
+maxsteps
+</text>
+<rect x="204.0625" y="64.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="206" y="73" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="36.0" y="160.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="38" y="169" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="251.25" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="253" y="265" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="337.625" y="96.0" width="29.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="339" y="105" style="font-family:sans-serif;font-size:10px;">
+eq_s
+</text>
+<rect x="772.25" y="192.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="774" y="201" style="font-family:sans-serif;font-size:10px;">
+minsteps
+</text>
+<rect x="174.0625" y="64.0" width="23.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="176" y="73" style="font-family:sans-serif;font-size:10px;">
+task
+</text>
+<rect x="746.25" y="160.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="748" y="169" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="278.25" y="192.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="280" y="201" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="0.5" y="160.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2" y="169" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="144.75" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="146" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="513.5" y="96.0" width="47.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="515" y="105" style="font-family:sans-serif;font-size:10px;">
+induction
+</text>
+<rect x="81.75" y="192.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="83" y="201" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="359.75" y="256.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="361" y="265" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="98.5" y="160.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="100" y="169" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="81.75" y="128.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="83" y="137" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="724.375" y="64.0" width="34.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="726" y="73" style="font-family:sans-serif;font-size:10px;">
+config
+</text>
+<rect x="168.75" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="170" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="53.75" y="224.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="55" y="233" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="428.125" y="128.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="430" y="137" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="326.75" y="192.0" width="90.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="328" y="201" style="font-family:sans-serif;font-size:10px;">
+fTreeBracketFree
+</text>
+<rect x="417.25" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="419" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="431.75" y="256.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="433" y="265" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="754.5" y="224.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="756" y="233" style="font-family:sans-serif;font-size:10px;">
+minsteps
+</text>
+<rect x="712.25" y="192.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="714" y="201" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="846.25" y="192.0" width="51.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="848" y="201" style="font-family:sans-serif;font-size:10px;">
+maxsteps
+</text>
+<rect x="72.75" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="74" y="169" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="350.75" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="352" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="904.25" y="192.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="906" y="201" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="883.5" y="224.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="885" y="233" style="font-family:sans-serif;font-size:10px;">
+12
+</text>
+<rect x="177.75" y="256.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="179" y="265" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="347.125" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="349" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="466.25" y="160.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="468" y="169" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="235.25" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="237" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="906.5" y="128.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="908" y="137" style="font-family:sans-serif;font-size:10px;">
+ih_pt
+</text>
+<rect x="918.5" y="160.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="920" y="169" style="font-family:sans-serif;font-size:10px;">
+maxpt
+</text>
+<rect x="38.25" y="192.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="40" y="201" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="476.25" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="478" y="233" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="423.25" y="192.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="425" y="201" style="font-family:sans-serif;font-size:10px;">
+fTree
+</text>
+<rect x="780.75" y="160.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="782" y="169" style="font-family:sans-serif;font-size:10px;">
+task_pt
+</text>
+</svg>
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.txt b/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.txt
new file mode 100644
index 0000000..3eff064
--- /dev/null
+++ b/ANTRL-Grammatiken/Aufgabenstellung/Task_Bsp_plus_komm_FuncBrackets.txt
@@ -0,0 +1,5 @@
+task forall n:Nat, m:Nat : plus n m = plus m n
+  induction n
+    case null maxpt 4 minsteps 6 maxsteps 8
+    case nach maxpt 6 minsteps 9 maxsteps 12
+    IH maxpt 1
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.svg b/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.svg
new file mode 100644
index 0000000..f9d64d9
--- /dev/null
+++ b/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.svg
@@ -0,0 +1,2505 @@
+<svg width="4252.6" height="805.2" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"><line x1="2347.53515625" y1="7.5" x2="665.984375" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="665.984375" y1="39.5" x2="141.0" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="141.0" y1="71.5" x2="106.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="141.0" y1="71.5" x2="138.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="141.0" y1="71.5" x2="157.0" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="141.0" y1="71.5" x2="175.5" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="175.5" y1="103.5" x2="41.75" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="41.75" y1="135.5" x2="29.5" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="29.5" y1="167.5" x2="14.0" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="29.5" y1="167.5" x2="45.0" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="199.5" x2="26.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="199.5" x2="41.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="45.0" y1="199.5" x2="63.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="63.75" y1="231.5" x2="63.75" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="41.75" y1="135.5" x2="54.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="175.5" y1="103.5" x2="199.0" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="199.0" y1="135.5" x2="199.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="199.0" y1="167.5" x2="150.75" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="150.75" y1="199.5" x2="114.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="114.75" y1="231.5" x2="114.75" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="114.75" y1="263.5" x2="114.75" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="150.75" y1="199.5" x2="186.75" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="186.75" y1="231.5" x2="186.75" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="186.75" y1="263.5" x2="186.75" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="199.0" y1="167.5" x2="247.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="247.25" y1="199.5" x2="247.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="247.25" y1="231.5" x2="247.25" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="175.5" y1="103.5" x2="254.125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="175.5" y1="103.5" x2="309.25" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="309.25" y1="135.5" x2="309.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="309.25" y1="167.5" x2="309.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="309.25" y1="199.5" x2="309.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="665.984375" y1="39.5" x2="1190.96875" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1190.96875" y1="71.5" x2="1190.96875" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1190.96875" y1="103.5" x2="387.5" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="387.5" y1="135.5" x2="369.75" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="387.5" y1="135.5" x2="405.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1190.96875" y1="103.5" x2="623.5" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="623.5" y1="135.5" x2="424.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="623.5" y1="135.5" x2="441.75" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="623.5" y1="135.5" x2="476.25" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="476.25" y1="167.5" x2="455.0" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="476.25" y1="167.5" x2="497.5" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="199.5" x2="414.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="199.5" x2="470.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="470.125" y1="231.5" x2="470.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="470.125" y1="263.5" x2="421.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="421.875" y1="295.5" x2="385.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="385.875" y1="327.5" x2="385.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="385.875" y1="359.5" x2="385.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="421.875" y1="295.5" x2="457.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="457.875" y1="327.5" x2="457.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="457.875" y1="359.5" x2="457.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="470.125" y1="263.5" x2="518.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="518.375" y1="295.5" x2="518.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="518.375" y1="327.5" x2="518.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="199.5" x2="525.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="497.5" y1="199.5" x2="580.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="580.375" y1="231.5" x2="580.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="580.375" y1="263.5" x2="580.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="580.375" y1="295.5" x2="580.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="623.5" y1="135.5" x2="822.75" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="822.75" y1="167.5" x2="714.125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="714.125" y1="199.5" x2="714.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="714.125" y1="231.5" x2="714.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="714.125" y1="263.5" x2="665.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="665.875" y1="295.5" x2="629.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="629.875" y1="327.5" x2="629.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="629.875" y1="359.5" x2="629.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="665.875" y1="295.5" x2="701.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="701.875" y1="327.5" x2="701.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="701.875" y1="359.5" x2="701.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="714.125" y1="263.5" x2="762.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="762.375" y1="295.5" x2="762.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="762.375" y1="327.5" x2="762.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="822.75" y1="167.5" x2="931.375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="744.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="771.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="771.125" y1="231.5" x2="771.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="797.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="830.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="830.625" y1="231.5" x2="830.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="863.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="896.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="896.125" y1="231.5" x2="896.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="896.125" y1="263.5" x2="896.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="896.125" y1="295.5" x2="847.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="847.875" y1="327.5" x2="811.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="811.875" y1="359.5" x2="811.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="811.875" y1="391.5" x2="811.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="847.875" y1="327.5" x2="883.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="883.875" y1="359.5" x2="883.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="883.875" y1="391.5" x2="883.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="896.125" y1="295.5" x2="944.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="944.375" y1="327.5" x2="944.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="944.375" y1="359.5" x2="944.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="969.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="1036.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="231.5" x2="1014.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="231.5" x2="1036.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="263.5" x2="1013.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1013.875" y1="295.5" x2="1013.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1013.875" y1="327.5" x2="1013.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1013.875" y1="359.5" x2="1013.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="263.5" x2="1042.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="263.5" x2="1058.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1036.125" y1="231.5" x2="1057.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="1062.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="1078.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="931.375" y1="199.5" x2="1118.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1118.625" y1="231.5" x2="1118.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1118.625" y1="263.5" x2="1118.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1118.625" y1="295.5" x2="1118.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1118.625" y1="327.5" x2="1118.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1190.96875" y1="103.5" x2="1301.875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1301.875" y1="135.5" x2="1284.125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1301.875" y1="135.5" x2="1301.125" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1301.875" y1="135.5" x2="1319.625" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1319.625" y1="167.5" x2="1185.875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1185.875" y1="199.5" x2="1173.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1173.625" y1="231.5" x2="1158.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1173.625" y1="231.5" x2="1189.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1189.125" y1="263.5" x2="1170.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1189.125" y1="263.5" x2="1185.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1189.125" y1="263.5" x2="1207.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1207.875" y1="295.5" x2="1207.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1185.875" y1="199.5" x2="1198.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1319.625" y1="167.5" x2="1343.125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1343.125" y1="199.5" x2="1343.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1343.125" y1="231.5" x2="1294.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1294.875" y1="263.5" x2="1258.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1258.875" y1="295.5" x2="1258.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1258.875" y1="327.5" x2="1258.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1294.875" y1="263.5" x2="1330.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1330.875" y1="295.5" x2="1330.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1330.875" y1="327.5" x2="1330.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1343.125" y1="231.5" x2="1391.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1391.375" y1="263.5" x2="1391.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1391.375" y1="295.5" x2="1391.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1319.625" y1="167.5" x2="1398.25" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1319.625" y1="167.5" x2="1453.375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1453.375" y1="199.5" x2="1453.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1453.375" y1="231.5" x2="1453.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1453.375" y1="263.5" x2="1453.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1190.96875" y1="103.5" x2="1994.4375" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1994.4375" y1="135.5" x2="1593.875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1994.4375" y1="135.5" x2="1610.875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1994.4375" y1="135.5" x2="1645.375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1645.375" y1="167.5" x2="1624.125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1645.375" y1="167.5" x2="1666.625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1666.625" y1="199.5" x2="1520.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1520.375" y1="231.5" x2="1508.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1508.125" y1="263.5" x2="1492.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1508.125" y1="263.5" x2="1523.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1523.625" y1="295.5" x2="1504.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1523.625" y1="295.5" x2="1520.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1523.625" y1="295.5" x2="1542.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1542.375" y1="327.5" x2="1542.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1520.375" y1="231.5" x2="1532.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1666.625" y1="199.5" x2="1690.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1690.125" y1="231.5" x2="1690.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1690.125" y1="263.5" x2="1629.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1629.375" y1="295.5" x2="1593.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1593.375" y1="327.5" x2="1593.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1593.375" y1="359.5" x2="1593.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1629.375" y1="295.5" x2="1665.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1665.375" y1="327.5" x2="1665.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1665.375" y1="359.5" x2="1665.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1690.125" y1="263.5" x2="1750.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="295.5" x2="1750.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="327.5" x2="1707.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="327.5" x2="1750.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="359.5" x2="1714.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1714.875" y1="391.5" x2="1714.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1714.875" y1="423.5" x2="1714.875" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="359.5" x2="1786.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1786.875" y1="391.5" x2="1786.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1786.875" y1="423.5" x2="1786.875" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1750.875" y1="327.5" x2="1794.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1666.625" y1="199.5" x2="1751.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1666.625" y1="199.5" x2="1812.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1812.875" y1="231.5" x2="1812.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1812.875" y1="263.5" x2="1812.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1812.875" y1="295.5" x2="1812.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1994.4375" y1="135.5" x2="2395.0" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2395.0" y1="167.5" x2="1998.5" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1998.5" y1="199.5" x2="1998.5" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1998.5" y1="231.5" x2="1998.5" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1998.5" y1="263.5" x2="1931.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1931.625" y1="295.5" x2="1883.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1883.375" y1="327.5" x2="1847.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1847.375" y1="359.5" x2="1847.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1847.375" y1="391.5" x2="1847.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1883.375" y1="327.5" x2="1919.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1919.375" y1="359.5" x2="1919.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1919.375" y1="391.5" x2="1919.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1931.625" y1="295.5" x2="1979.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1979.875" y1="327.5" x2="1979.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1979.875" y1="359.5" x2="1979.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="1998.5" y1="263.5" x2="2065.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="295.5" x2="2065.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="327.5" x2="2021.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="327.5" x2="2065.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="359.5" x2="2029.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2029.375" y1="391.5" x2="2029.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2029.375" y1="423.5" x2="2029.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="359.5" x2="2101.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2101.375" y1="391.5" x2="2101.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2101.375" y1="423.5" x2="2101.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2065.375" y1="327.5" x2="2108.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2395.0" y1="167.5" x2="2338.0" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2106.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2133.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2133.625" y1="231.5" x2="2133.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2160.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2193.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2193.125" y1="231.5" x2="2193.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2226.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2258.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2258.625" y1="231.5" x2="2258.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2258.625" y1="263.5" x2="2258.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2258.625" y1="295.5" x2="2197.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2197.875" y1="327.5" x2="2161.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2161.875" y1="359.5" x2="2161.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2161.875" y1="391.5" x2="2161.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2197.875" y1="327.5" x2="2233.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2233.875" y1="359.5" x2="2233.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2233.875" y1="391.5" x2="2233.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2258.625" y1="295.5" x2="2319.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="327.5" x2="2319.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="359.5" x2="2275.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="359.5" x2="2319.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="391.5" x2="2283.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2283.375" y1="423.5" x2="2283.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2283.375" y1="455.5" x2="2283.375" y2="480.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="391.5" x2="2355.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2355.375" y1="423.5" x2="2355.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2355.375" y1="455.5" x2="2355.375" y2="480.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2319.375" y1="359.5" x2="2362.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2357.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2448.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2448.875" y1="231.5" x2="2389.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2448.875" y1="231.5" x2="2411.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2411.125" y1="263.5" x2="2388.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2388.875" y1="295.5" x2="2388.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2388.875" y1="327.5" x2="2388.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2388.875" y1="359.5" x2="2388.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2411.125" y1="263.5" x2="2417.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2411.125" y1="263.5" x2="2433.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2448.875" y1="231.5" x2="2448.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2448.875" y1="231.5" x2="2486.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2486.625" y1="263.5" x2="2463.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2463.875" y1="295.5" x2="2463.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2463.875" y1="327.5" x2="2463.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2463.875" y1="359.5" x2="2463.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2486.625" y1="263.5" x2="2492.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2486.625" y1="263.5" x2="2509.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2448.875" y1="231.5" x2="2508.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2488.0416666666665" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2516.7083333333335" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2338.0" y1="199.5" x2="2569.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2569.375" y1="231.5" x2="2569.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2569.375" y1="263.5" x2="2569.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2569.375" y1="295.5" x2="2533.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2533.375" y1="327.5" x2="2533.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2533.375" y1="359.5" x2="2533.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2569.375" y1="295.5" x2="2605.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="327.5" x2="2605.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="359.5" x2="2561.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="359.5" x2="2605.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="391.5" x2="2557.125" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2557.125" y1="423.5" x2="2521.125" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2521.125" y1="455.5" x2="2521.125" y2="480.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2521.125" y1="487.5" x2="2521.125" y2="512.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2557.125" y1="423.5" x2="2593.125" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2593.125" y1="455.5" x2="2593.125" y2="480.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2593.125" y1="487.5" x2="2593.125" y2="512.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="391.5" x2="2653.625" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2653.625" y1="423.5" x2="2653.625" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2653.625" y1="455.5" x2="2653.625" y2="480.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2605.375" y1="359.5" x2="2648.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2395.0" y1="167.5" x2="2791.5" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2637.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2664.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2664.375" y1="231.5" x2="2664.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2690.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2723.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2723.875" y1="231.5" x2="2723.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2756.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2789.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2789.375" y1="231.5" x2="2789.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2789.375" y1="263.5" x2="2789.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2789.375" y1="295.5" x2="2741.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2741.125" y1="327.5" x2="2705.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2705.125" y1="359.5" x2="2705.125" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2705.125" y1="391.5" x2="2705.125" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2741.125" y1="327.5" x2="2777.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2777.125" y1="359.5" x2="2777.125" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2777.125" y1="391.5" x2="2777.125" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2789.375" y1="295.5" x2="2837.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2837.625" y1="327.5" x2="2837.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2837.625" y1="359.5" x2="2837.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2824.925" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2853.975" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2853.975" y1="231.5" x2="2846.975" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2853.975" y1="231.5" x2="2860.975" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2883.525" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2902.575" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2791.5" y1="199.5" x2="2945.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2945.625" y1="231.5" x2="2945.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2945.625" y1="263.5" x2="2945.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2945.625" y1="295.5" x2="2909.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2909.625" y1="327.5" x2="2909.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2909.625" y1="359.5" x2="2909.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2945.625" y1="295.5" x2="2981.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2981.625" y1="327.5" x2="2981.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2981.625" y1="359.5" x2="2981.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2347.53515625" y1="7.5" x2="3978.0859375" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3978.0859375" y1="39.5" x2="3952.5859375" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3978.0859375" y1="39.5" x2="4003.5859375" y2="64.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4003.5859375" y1="71.5" x2="4003.5859375" y2="96.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4003.5859375" y1="103.5" x2="3446.046875" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3446.046875" y1="135.5" x2="3103.875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3446.046875" y1="135.5" x2="3121.375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3446.046875" y1="135.5" x2="3155.875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3155.875" y1="167.5" x2="3134.625" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3155.875" y1="167.5" x2="3177.125" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3177.125" y1="199.5" x2="3043.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3043.125" y1="231.5" x2="3030.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3030.875" y1="263.5" x2="3015.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3030.875" y1="263.5" x2="3046.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3046.375" y1="295.5" x2="3027.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3046.375" y1="295.5" x2="3043.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3046.375" y1="295.5" x2="3065.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3065.625" y1="327.5" x2="3065.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3043.125" y1="231.5" x2="3055.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3177.125" y1="199.5" x2="3200.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3200.875" y1="231.5" x2="3200.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3200.875" y1="263.5" x2="3152.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3152.625" y1="295.5" x2="3116.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3116.625" y1="327.5" x2="3116.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3116.625" y1="359.5" x2="3116.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3152.625" y1="295.5" x2="3188.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3188.625" y1="327.5" x2="3188.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3188.625" y1="359.5" x2="3188.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3200.875" y1="263.5" x2="3249.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3249.125" y1="295.5" x2="3249.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3249.125" y1="327.5" x2="3249.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3177.125" y1="199.5" x2="3256.0" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3177.125" y1="199.5" x2="3311.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3311.125" y1="231.5" x2="3311.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3311.125" y1="263.5" x2="3311.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3311.125" y1="295.5" x2="3311.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3446.046875" y1="135.5" x2="3788.21875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3788.21875" y1="167.5" x2="3474.4375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3474.4375" y1="199.5" x2="3474.4375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3474.4375" y1="231.5" x2="3474.4375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3474.4375" y1="263.5" x2="3417.0" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3417.0" y1="295.5" x2="3362.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3362.625" y1="327.5" x2="3314.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3314.375" y1="359.5" x2="3278.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3278.375" y1="391.5" x2="3278.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3278.375" y1="423.5" x2="3278.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3314.375" y1="359.5" x2="3350.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3350.375" y1="391.5" x2="3350.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3350.375" y1="423.5" x2="3350.375" y2="448.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3362.625" y1="327.5" x2="3410.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3410.875" y1="359.5" x2="3410.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3410.875" y1="391.5" x2="3410.875" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3417.0" y1="295.5" x2="3471.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3471.375" y1="327.5" x2="3471.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3471.375" y1="359.5" x2="3471.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3474.4375" y1="263.5" x2="3531.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3531.875" y1="295.5" x2="3531.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3531.875" y1="327.5" x2="3531.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3788.21875" y1="167.5" x2="3696.875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3509.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3536.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3536.625" y1="231.5" x2="3536.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3563.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3596.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3596.125" y1="231.5" x2="3596.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3629.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3661.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3661.625" y1="231.5" x2="3661.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3661.625" y1="263.5" x2="3661.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3661.625" y1="295.5" x2="3613.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3613.375" y1="327.5" x2="3577.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3577.375" y1="359.5" x2="3577.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3577.375" y1="391.5" x2="3577.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3613.375" y1="327.5" x2="3649.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3649.375" y1="359.5" x2="3649.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3649.375" y1="391.5" x2="3649.375" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3661.625" y1="295.5" x2="3709.875" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3709.875" y1="327.5" x2="3709.875" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3709.875" y1="359.5" x2="3709.875" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3734.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3801.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="231.5" x2="3780.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="231.5" x2="3801.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="263.5" x2="3779.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3779.375" y1="295.5" x2="3779.375" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3779.375" y1="327.5" x2="3779.375" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3779.375" y1="359.5" x2="3779.375" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="263.5" x2="3808.375" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="263.5" x2="3823.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3801.625" y1="231.5" x2="3823.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3828.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3844.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3696.875" y1="199.5" x2="3884.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3884.125" y1="231.5" x2="3884.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3884.125" y1="263.5" x2="3884.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3884.125" y1="295.5" x2="3884.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3884.125" y1="327.5" x2="3884.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3788.21875" y1="167.5" x2="4102.0" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="3923.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="3950.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="3950.125" y1="231.5" x2="3950.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="3976.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4009.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4009.625" y1="231.5" x2="4009.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4042.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4075.125" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4075.125" y1="231.5" x2="4075.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4075.125" y1="263.5" x2="4075.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4075.125" y1="295.5" x2="4075.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4075.125" y1="327.5" x2="4075.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4119.25" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4156.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="231.5" x2="4135.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="231.5" x2="4156.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="263.5" x2="4134.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4134.625" y1="295.5" x2="4134.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4134.625" y1="327.5" x2="4134.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4134.625" y1="359.5" x2="4134.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="263.5" x2="4163.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="263.5" x2="4179.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4156.875" y1="231.5" x2="4178.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4197.208333333333" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4227.041666666667" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4102.0" y1="199.5" x2="4280.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4280.875" y1="231.5" x2="4280.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4280.875" y1="263.5" x2="4280.875" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4280.875" y1="295.5" x2="4232.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4232.625" y1="327.5" x2="4196.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4196.625" y1="359.5" x2="4196.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4196.625" y1="391.5" x2="4196.625" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4232.625" y1="327.5" x2="4268.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4268.625" y1="359.5" x2="4268.625" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4268.625" y1="391.5" x2="4268.625" y2="416.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4280.875" y1="295.5" x2="4329.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4329.125" y1="327.5" x2="4329.125" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4329.125" y1="359.5" x2="4329.125" y2="384.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4003.5859375" y1="103.5" x2="4561.125" y2="128.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4561.125" y1="135.5" x2="4543.375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4561.125" y1="135.5" x2="4560.375" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4561.125" y1="135.5" x2="4578.875" y2="160.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4578.875" y1="167.5" x2="4387.875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4387.875" y1="199.5" x2="4344.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4344.375" y1="231.5" x2="4328.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4344.375" y1="231.5" x2="4359.875" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4359.875" y1="263.5" x2="4341.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4359.875" y1="263.5" x2="4356.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4359.875" y1="263.5" x2="4378.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4378.625" y1="295.5" x2="4378.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4387.875" y1="199.5" x2="4375.625" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4387.875" y1="199.5" x2="4406.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4406.875" y1="231.5" x2="4391.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4406.875" y1="231.5" x2="4422.375" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4422.375" y1="263.5" x2="4403.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4422.375" y1="263.5" x2="4419.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4422.375" y1="263.5" x2="4441.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4441.625" y1="295.5" x2="4441.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4387.875" y1="199.5" x2="4431.375" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4578.875" y1="167.5" x2="4576.875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4576.875" y1="199.5" x2="4576.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4576.875" y1="231.5" x2="4528.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4528.625" y1="263.5" x2="4492.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4492.625" y1="295.5" x2="4492.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4492.625" y1="327.5" x2="4492.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4528.625" y1="263.5" x2="4564.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4564.625" y1="295.5" x2="4564.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4564.625" y1="327.5" x2="4564.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4576.875" y1="231.5" x2="4625.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4625.125" y1="263.5" x2="4625.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4625.125" y1="295.5" x2="4625.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4578.875" y1="167.5" x2="4673.375" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4578.875" y1="167.5" x2="4769.875" y2="192.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4769.875" y1="199.5" x2="4769.875" y2="224.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4769.875" y1="231.5" x2="4721.625" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4721.625" y1="263.5" x2="4685.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4685.625" y1="295.5" x2="4685.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4685.625" y1="327.5" x2="4685.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4721.625" y1="263.5" x2="4757.625" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4757.625" y1="295.5" x2="4757.625" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4757.625" y1="327.5" x2="4757.625" y2="352.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4769.875" y1="231.5" x2="4818.125" y2="256.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4818.125" y1="263.5" x2="4818.125" y2="288.0" style="stroke:black; stroke-width:1px;" />
+<line x1="4818.125" y1="295.5" x2="4818.125" y2="320.0" style="stroke:black; stroke-width:1px;" />
+<line x1="2347.53515625" y1="7.5" x2="4029.0859375" y2="32.0" style="stroke:black; stroke-width:1px;" />
+<rect x="2960.625" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2962" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3980.0859375" y="96.0" width="47.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3982" y="105" style="font-family:sans-serif;font-size:10px;">
+induction
+</text>
+<rect x="2672.625" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2674" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2500.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2502" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2509.125" y="512.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2511" y="521" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1782.875" y="256.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1784" y="265" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="3131.875" y="160.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3133" y="169" style="font-family:sans-serif;font-size:10px;">
+ind_case
+</text>
+<rect x="3340.375" y="448.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3342" y="457" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1003.875" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1005" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3639.625" y="224.0" width="44.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3641" y="233" style="font-family:sans-serif;font-size:10px;">
+termpart
+</text>
+<rect x="2125.125" y="256.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2127" y="265" style="font-family:sans-serif;font-size:10px;">
+p1
+</text>
+<rect x="2977.125" y="384.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2979" y="393" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="2489.375" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2491" y="297" style="font-family:sans-serif;font-size:10px;">
+/
+</text>
+<rect x="1607.375" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1609" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="3839.125" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3841" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="3037.375" y="288.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3039" y="297" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="3449.4375" y="192.0" width="50.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3451" y="201" style="font-family:sans-serif;font-size:10px;">
+start_tree
+</text>
+<rect x="2896.125" y="384.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2898" y="393" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="114.0" y="64.0" width="54.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="116" y="73" style="font-family:sans-serif;font-size:10px;">
+lemmaDef
+</text>
+<rect x="166.5" y="160.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="168" y="169" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4736.625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4738" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="21.75" y="224.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="23" y="233" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3941.625" y="256.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3943" y="265" style="font-family:sans-serif;font-size:10px;">
+p0
+</text>
+<rect x="1161.46875" y="64.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1163" y="73" style="font-family:sans-serif;font-size:10px;">
+singleProof
+</text>
+<rect x="3398.875" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3400" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3499.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3501" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4052.0" y="192.0" width="100.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4054" y="201" style="font-family:sans-serif;font-size:10px;">
+transformation_step
+</text>
+<rect x="180.5" y="128.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="182" y="137" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="52.75" y="224.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="54" y="233" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="2541.875" y="224.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2543" y="233" style="font-family:sans-serif;font-size:10px;">
+result_tree
+</text>
+<rect x="2096.875" y="448.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2098" y="457" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="1754.375" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1756" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="290.75" y="128.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="292" y="137" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2433.875" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2435" y="233" style="font-family:sans-serif;font-size:10px;">
+subst
+</text>
+<rect x="3987.125" y="224.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3989" y="233" style="font-family:sans-serif;font-size:10px;">
+direction
+</text>
+<rect x="249.125" y="128.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="251" y="137" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="16.0" y="160.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="18" y="169" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="346.25" y="160.0" width="47.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="348" y="169" style="font-family:sans-serif;font-size:10px;">
+induction
+</text>
+<rect x="3421.046875" y="128.0" width="50.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3423" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_basis
+</text>
+<rect x="2386.125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2388" y="265" style="font-family:sans-serif;font-size:10px;">
+[
+</text>
+<rect x="1655.375" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1657" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3628.375" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3630" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="368.0" y="128.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="370" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_var
+</text>
+<rect x="2322.875" y="416.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2324" y="425" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3096.375" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3098" y="169" style="font-family:sans-serif;font-size:10px;">
+IA
+</text>
+<rect x="2877.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2879" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1632.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1634" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4175.625" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4177" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="400.75" y="160.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="402" y="169" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="2378.875" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2380" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="4570.375" y="160.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4572" y="169" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="2949.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2951" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3455.9375" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3457" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1054.125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1056" y="265" style="font-family:sans-serif;font-size:10px;">
+]
+</text>
+<rect x="2414.375" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2416" y="297" style="font-family:sans-serif;font-size:10px;">
+/
+</text>
+<rect x="3749.375" y="320.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3751" y="329" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="1701.375" y="448.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1703" y="457" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="4174.875" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4176" y="265" style="font-family:sans-serif;font-size:10px;">
+]
+</text>
+<rect x="2621.125" y="416.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2623" y="425" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="447.875" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="449" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="4535.875" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4537" y="169" style="font-family:sans-serif;font-size:10px;">
+IH
+</text>
+<rect x="4396.625" y="288.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4398" y="297" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1276.625" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1278" y="169" style="font-family:sans-serif;font-size:10px;">
+IH
+</text>
+<rect x="3001.875" y="288.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3003" y="297" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="729.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="731" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4725.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4727" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1246.875" y="352.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1248" y="361" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3786.625" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3788" y="233" style="font-family:sans-serif;font-size:10px;">
+subst
+</text>
+<rect x="4797.125" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4799" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2684.125" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2686" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4350.875" y="256.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4352" y="265" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="752.375" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="754" y="361" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1898.375" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1900" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="242.75" y="256.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="244" y="265" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3937.5859375" y="64.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3939" y="73" style="font-family:sans-serif;font-size:10px;">
+proof
+</text>
+<rect x="4430.625" y="288.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4432" y="297" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="2359.375" y="384.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2361" y="393" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="2269.875" y="480.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2271" y="489" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="2857.475" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2859" y="265" style="font-family:sans-serif;font-size:10px;">
+]
+</text>
+<rect x="1430.875" y="256.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1432" y="265" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="2572.125" y="480.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2574" y="489" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2756.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2758" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2575.875" y="352.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2577" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="485.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="487" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="911.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="913" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3677.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3679" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1165.875" y="288.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1167" y="297" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="4056.625" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4058" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2524.625" y="416.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2526" y="425" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3760.875" y="288.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3762" y="297" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="176.75" y="288.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="178" y="297" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="428.5" y="192.0" width="53.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="430" y="201" style="font-family:sans-serif;font-size:10px;">
+zu·zeigen:
+</text>
+<rect x="286.75" y="192.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="288" y="201" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="2015.875" y="448.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2017" y="457" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="598.5" y="128.0" width="50.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="600" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_basis
+</text>
+<rect x="2888.625" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2890" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2897.575" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2899" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="4009.5859375" y="32.0" width="39.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4011" y="41" style="font-family:sans-serif;font-size:10px;">
+&lt;EOF&gt;
+</text>
+<rect x="1096.125" y="320.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1098" y="329" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="3591.125" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3593" y="265" style="font-family:sans-serif;font-size:10px;">
+lr
+</text>
+<rect x="2536.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2538" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1899.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1901" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4668.375" y="192.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4670" y="201" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="4737.375" y="224.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4739" y="233" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2753.375" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2755" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="1969.875" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1971" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="2286.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2288" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2645.375" y="384.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2647" y="393" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="4262.125" y="416.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4264" y="425" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="2445.375" y="288.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2447" y="297" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4358.375" y="192.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4360" y="201" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="1790.375" y="288.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1792" y="297" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="3804.875" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3806" y="297" style="font-family:sans-serif;font-size:10px;">
+/
+</text>
+<rect x="4480.625" y="352.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4482" y="361" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="2488.625" y="448.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2490" y="457" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1980.0" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1982" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="786.25" y="160.0" width="73.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="788" y="169" style="font-family:sans-serif;font-size:10px;">
+transformation
+</text>
+<rect x="2080.375" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2082" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3117.875" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3119" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="4460.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4462" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="154.25" y="224.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="156" y="233" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1644.375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1646" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2558.375" y="384.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2560" y="393" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="3095.625" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3097" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2741.5" y="192.0" width="100.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2743" y="201" style="font-family:sans-serif;font-size:10px;">
+transformation_step
+</text>
+<rect x="4128.125" y="384.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4130" y="393" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="364.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="366" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1073.625" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1075" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="4112.125" y="352.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4114" y="361" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="2649.125" y="480.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2651" y="489" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="4052.625" y="320.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4054" y="329" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="3974.0859375" y="64.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3976" y="73" style="font-family:sans-serif;font-size:10px;">
+singleProof
+</text>
+<rect x="3040.125" y="320.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3042" y="329" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="389.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="391" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4532.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4534" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="550.375" y="256.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="552" y="265" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="1947.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1949" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3643.125" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3645" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1160.125" y="224.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1162" y="233" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="1682.375" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1684" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2262.375" y="448.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2264" y="457" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2250.875" y="416.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2252" y="425" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2821.425" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2823" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="3281.125" y="256.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3283" y="265" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="1370.375" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1372" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2767.125" y="416.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2769" y="425" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="741.375" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="743" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4413.375" y="256.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4415" y="265" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="3573.625" y="224.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3575" y="233" style="font-family:sans-serif;font-size:10px;">
+direction
+</text>
+<rect x="689.125" y="192.0" width="50.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="691" y="201" style="font-family:sans-serif;font-size:10px;">
+start_tree
+</text>
+<rect x="3865.625" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3867" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="214.75" y="192.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="216" y="201" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3824.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3826" y="233" style="font-family:sans-serif;font-size:10px;">
+}
+</text>
+<rect x="995.375" y="288.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="997" y="297" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="983.875" y="320.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="985" y="329" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="4330.875" y="224.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4332" y="233" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="4377.875" y="256.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4379" y="265" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="3228.125" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3230" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3933.625" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3935" y="233" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="1814.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1816" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1059.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1061" y="233" style="font-family:sans-serif;font-size:10px;">
+}
+</text>
+<rect x="3756.875" y="352.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3758" y="361" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="4104.625" y="320.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4106" y="329" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="437.625" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="439" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3639.375" y="416.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3641" y="425" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1500.375" y="320.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1502" y="329" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3251.0" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3253" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="1966.0" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1968" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3257.375" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3259" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="508.375" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="510" y="361" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3271.875" y="448.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3273" y="457" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="1850.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1852" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3951.0859375" y="32.0" width="54.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3953" y="41" style="font-family:sans-serif;font-size:10px;">
+mainProof
+</text>
+<rect x="3461.375" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3463" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3556.375" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3558" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4039.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4041" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="50.5" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="52" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="3168.375" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3170" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1782.375" y="448.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1784" y="457" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3819.625" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3821" y="265" style="font-family:sans-serif;font-size:10px;">
+]
+</text>
+<rect x="4115.75" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4117" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="438.25" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="440" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="3167.625" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3169" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3051.875" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3053" y="265" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2240.125" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2242" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4308.125" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4310" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="779.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="781" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1182.375" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1184" y="297" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2572.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2574" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="597.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="599" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="373.875" y="384.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="375" y="393" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3242.625" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3244" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="304.75" y="224.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="306" y="233" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="2756.125" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2758" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1297.625" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1299" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2428.375" y="288.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2430" y="297" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="3559.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3561" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="647.484375" y="32.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="649" y="41" style="font-family:sans-serif;font-size:10px;">
+lemma
+</text>
+<rect x="2512.375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2514" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="36.0" y="192.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="38" y="201" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="4296.625" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4298" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2880.025" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2882" y="233" style="font-family:sans-serif;font-size:10px;">
+}
+</text>
+<rect x="1393.25" y="192.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1395" y="201" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="1971.4375" y="128.0" width="46.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1973" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_step
+</text>
+<rect x="934.375" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="936" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="2484.5416666666665" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2486" y="233" style="font-family:sans-serif;font-size:10px;">
+}
+</text>
+<rect x="2008.375" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2010" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3317.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3319" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4393.375" y="224.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4395" y="233" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="3384.5" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3386" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3629.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3631" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1721.375" y="320.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1723" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="3506.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3508" y="233" style="font-family:sans-serif;font-size:10px;">
+{
+</text>
+<rect x="695.625" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="697" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="3525.375" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3527" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="617.875" y="384.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="619" y="393" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="557.875" y="288.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="559" y="297" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="4353.125" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4355" y="297" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2149.875" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2151" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1108.625" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1110" y="361" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1826.375" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1828" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="877.625" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="879" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1262.375" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1264" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1226.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1228" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="353.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="355" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2358.875" y="320.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2360" y="329" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="1358.875" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1360" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2767.375" y="224.0" width="44.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2769" y="233" style="font-family:sans-serif;font-size:10px;">
+termpart
+</text>
+<rect x="3772.875" y="384.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3774" y="393" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="4367.625" y="288.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4369" y="297" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="4751.375" y="192.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4753" y="201" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1197.875" y="320.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1199" y="329" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1167.46875" y="96.0" width="47.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1169" y="105" style="font-family:sans-serif;font-size:10px;">
+induction
+</text>
+<rect x="4368.625" y="320.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4370" y="329" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="881.375" y="192.0" width="100.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="883" y="201" style="font-family:sans-serif;font-size:10px;">
+transformation_step
+</text>
+<rect x="2201.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2203" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2358.5" y="160.0" width="73.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2360" y="169" style="font-family:sans-serif;font-size:10px;">
+transformation
+</text>
+<rect x="3856.625" y="224.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3858" y="233" style="font-family:sans-serif;font-size:10px;">
+result_tree
+</text>
+<rect x="790.875" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="792" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1144.625" y="256.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1146" y="265" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="2286.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2288" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3861.625" y="320.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3863" y="329" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="4544.375" y="224.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4546" y="233" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2035.875" y="320.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2037" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="2572.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2574" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2288.0" y="192.0" width="100.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2290" y="201" style="font-family:sans-serif;font-size:10px;">
+transformation_step
+</text>
+<rect x="1586.375" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1588" y="169" style="font-family:sans-serif;font-size:10px;">
+IS
+</text>
+<rect x="3438.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3440" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4253.375" y="224.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4255" y="233" style="font-family:sans-serif;font-size:10px;">
+result_tree
+</text>
+<rect x="4751.125" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4753" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="3182.375" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3184" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1560.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1562" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="808.125" y="224.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="810" y="233" style="font-family:sans-serif;font-size:10px;">
+direction
+</text>
+<rect x="2918.125" y="224.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2920" y="233" style="font-family:sans-serif;font-size:10px;">
+result_tree
+</text>
+<rect x="4315.375" y="256.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4317" y="265" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="3013.625" y="224.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3015" y="233" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="53.75" y="256.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="55" y="265" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1790.875" y="352.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1792" y="361" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="1021.125" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1023" y="233" style="font-family:sans-serif;font-size:10px;">
+subst
+</text>
+<rect x="2170.625" y="224.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2172" y="233" style="font-family:sans-serif;font-size:10px;">
+direction
+</text>
+<rect x="2632.625" y="448.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2634" y="457" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1011.125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1013" y="265" style="font-family:sans-serif;font-size:10px;">
+[
+</text>
+<rect x="681.625" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="683" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4471.625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4473" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3292.625" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3294" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1494.625" y="256.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1496" y="265" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="88.0" y="96.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="90" y="105" style="font-family:sans-serif;font-size:10px;">
+lemma
+</text>
+<rect x="3108.125" y="192.0" width="53.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3110" y="201" style="font-family:sans-serif;font-size:10px;">
+zu·zeigen:
+</text>
+<rect x="3520.125" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3522" y="233" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="1237.875" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1239" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2222.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2224" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="3731.375" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3733" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="1596.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1598" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="165.75" y="256.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="167" y="265" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="226.25" y="224.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="228" y="233" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4045.125" y="288.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4047" y="297" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="2583.125" y="512.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2585" y="521" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3156.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3158" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3329.375" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3331" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="570.375" y="320.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="572" y="329" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="2223.875" y="416.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2225" y="425" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="4164.125" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4166" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4184.625" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4186" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="4319.125" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4321" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="4543.625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4545" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3020.625" y="320.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3022" y="329" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="2272.375" y="384.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2274" y="393" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="3389.875" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3391" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="851.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="853" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="452.25" y="160.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="454" y="169" style="font-family:sans-serif;font-size:10px;">
+ind_case
+</text>
+<rect x="3288.625" y="288.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3290" y="297" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="2656.875" y="256.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2658" y="265" style="font-family:sans-serif;font-size:10px;">
+IH
+</text>
+<rect x="2165.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2167" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1597.625" y="192.0" width="53.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1599" y="201" style="font-family:sans-serif;font-size:10px;">
+zu·zeigen:
+</text>
+<rect x="0.5" y="192.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2" y="201" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="1746.5" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1748" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="2117.125" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2119" y="233" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="2500.125" y="480.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2502" y="489" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="862.875" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="864" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1100.125" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1102" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1320.875" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1322" y="361" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="82.25" y="224.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="84" y="233" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2502.875" y="288.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2504" y="297" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="3528.125" y="256.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3530" y="265" style="font-family:sans-serif;font-size:10px;">
+L1
+</text>
+<rect x="3544.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3546" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1799.375" y="320.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1801" y="329" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="4053.125" y="224.0" width="44.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4055" y="233" style="font-family:sans-serif;font-size:10px;">
+termpart
+</text>
+<rect x="1310.625" y="224.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1312" y="233" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1718.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1720" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3084.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3086" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1423.375" y="224.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1425" y="233" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="167.0" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="169" y="105" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="691.875" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="693" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1907.375" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1909" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3104.625" y="384.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3106" y="393" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="2226.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2228" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4427.875" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4429" y="233" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1309.875" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1311" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1658.125" y="192.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1660" y="201" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="2068.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2070" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3790.625" y="256.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3792" y="265" style="font-family:sans-serif;font-size:10px;">
+sub
+</text>
+<rect x="2212.875" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2214" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="451.625" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="453" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2156.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2158" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="2350.875" y="480.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2352" y="489" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3017.375" y="256.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3019" y="265" style="font-family:sans-serif;font-size:10px;">
+forall
+</text>
+<rect x="3646.875" y="192.0" width="100.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3648" y="201" style="font-family:sans-serif;font-size:10px;">
+transformation_step
+</text>
+<rect x="4556.875" y="160.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4558" y="169" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="4813.125" y="320.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4815" y="329" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="2433.875" y="320.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2435" y="329" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="1194.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1196" y="233" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="4673.625" y="352.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4675" y="361" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1794.375" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1796" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="385.125" y="224.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="387" y="233" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="130.0" y="96.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="132" y="105" style="font-family:sans-serif;font-size:10px;">
+L1
+</text>
+<rect x="1581.375" y="384.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1583" y="393" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="2504.625" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2506" y="265" style="font-family:sans-serif;font-size:10px;">
+]
+</text>
+<rect x="3819.375" y="288.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3821" y="297" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="1088.625" y="288.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1090" y="297" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="3510.875" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3512" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1156.375" y="192.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1158" y="201" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="1886.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1888" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2032.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2034" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3055.625" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3057" y="361" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="1298.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1300" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1703.875" y="352.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1705" y="361" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="1958.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1960" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2511.7083333333335" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2513" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="3168.625" y="192.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3170" y="201" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="436.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="438" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3751.71875" y="160.0" width="73.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3753" y="169" style="font-family:sans-serif;font-size:10px;">
+transformation
+</text>
+<rect x="4116.125" y="288.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4118" y="297" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4689.125" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4691" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4785.625" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4787" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4004.625" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4006" y="265" style="font-family:sans-serif;font-size:10px;">
+rl
+</text>
+<rect x="4604.125" y="288.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4606" y="297" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3877.625" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3879" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="2843.475" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2845" y="265" style="font-family:sans-serif;font-size:10px;">
+[
+</text>
+<rect x="3054.625" y="320.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3056" y="329" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="4618.625" y="320.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4620" y="329" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="4174.125" y="288.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4176" y="297" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="4558.375" y="192.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4560" y="201" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="863.625" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="865" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3178.625" y="384.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3180" y="393" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="3973.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3975" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="873.875" y="416.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="875" y="425" style="font-family:sans-serif;font-size:10px;">
+null
+</text>
+<rect x="1025.125" y="256.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1027" y="265" style="font-family:sans-serif;font-size:10px;">
+sub
+</text>
+<rect x="1996.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1998" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1531.375" y="320.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1533" y="329" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="794.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="796" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="118.25" y="192.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="120" y="201" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4372.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4374" y="233" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2032.875" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2034" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="754.625" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="756" y="233" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="4592.625" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4594" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4653.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4655" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1973.5" y="192.0" width="50.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1975" y="201" style="font-family:sans-serif;font-size:10px;">
+start_tree
+</text>
+<rect x="4431.625" y="320.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4433" y="329" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="3245.875" y="384.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3247" y="393" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4540.125" y="128.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4542" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_hyp
+</text>
+<rect x="2708.625" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2710" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2103.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2105" y="233" style="font-family:sans-serif;font-size:10px;">
+{
+</text>
+<rect x="2445.375" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2447" y="265" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="2647.875" y="224.0" width="33.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2649" y="233" style="font-family:sans-serif;font-size:10px;">
+axiom
+</text>
+<rect x="4416.125" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4418" y="297" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="2441.375" y="352.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2443" y="361" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="825.625" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="827" y="265" style="font-family:sans-serif;font-size:10px;">
+lr
+</text>
+<rect x="1039.375" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1041" y="297" style="font-family:sans-serif;font-size:10px;">
+/
+</text>
+<rect x="1386.875" y="320.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1388" y="329" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="1514.625" y="288.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1516" y="297" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="4068.625" y="352.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4070" y="361" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="12.25" y="128.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="14" y="137" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="762.625" y="256.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="764" y="265" style="font-family:sans-serif;font-size:10px;">
+p0
+</text>
+<rect x="2353.5" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2355" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="1280.875" y="128.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1282" y="137" style="font-family:sans-serif;font-size:10px;">
+ind_hyp
+</text>
+<rect x="2816.625" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2818" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3120.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3122" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2459.375" y="384.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2461" y="393" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="4131.875" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4133" y="265" style="font-family:sans-serif;font-size:10px;">
+[
+</text>
+<rect x="520.25" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="522" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="874.125" y="224.0" width="44.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="876" y="233" style="font-family:sans-serif;font-size:10px;">
+termpart
+</text>
+<rect x="2236.625" y="224.0" width="44.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2238" y="233" style="font-family:sans-serif;font-size:10px;">
+termpart
+</text>
+<rect x="2140.875" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2142" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="425.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="427" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2693.125" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2695" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="2334.375" y="448.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2336" y="457" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1324.625" y="192.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1326" y="201" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="1718.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1720" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3580.875" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3582" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2129.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2131" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1196.875" y="288.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1198" y="297" style="font-family:sans-serif;font-size:10px;">
+sort
+</text>
+<rect x="4236.125" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4238" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="680.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="682" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2519.875" y="384.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2521" y="393" style="font-family:sans-serif;font-size:10px;">
+nach
+</text>
+<rect x="4496.125" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4498" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3703.375" y="384.0" width="13.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3705" y="393" style="font-family:sans-serif;font-size:10px;">
+m
+</text>
+<rect x="4141.875" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4143" y="233" style="font-family:sans-serif;font-size:10px;">
+subst
+</text>
+<rect x="1765.875" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1767" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="561.875" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="563" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="38.25" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="40" y="233" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1448.875" y="288.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1450" y="297" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="3688.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3690" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4160.125" y="288.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4162" y="297" style="font-family:sans-serif;font-size:10px;">
+/
+</text>
+<rect x="4247.625" y="384.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4249" y="393" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4193.708333333333" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4195" y="233" style="font-family:sans-serif;font-size:10px;">
+}
+</text>
+<rect x="4262.375" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4264" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4559.625" y="352.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4561" y="361" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1490.875" y="224.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1492" y="233" style="font-family:sans-serif;font-size:10px;">
+eq_var_def
+</text>
+<rect x="2805.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2807" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2770.875" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2772" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2332.53515625" y="0.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2334" y="9" style="font-family:sans-serif;font-size:10px;">
+proof
+</text>
+<rect x="102.75" y="288.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="104" y="297" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3441.9375" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3443" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1529.125" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1531" y="265" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="416.75" y="160.0" width="15.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="418" y="169" style="font-family:sans-serif;font-size:10px;">
+IA
+</text>
+<rect x="2633.875" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2635" y="233" style="font-family:sans-serif;font-size:10px;">
+{
+</text>
+<rect x="2289.875" y="352.0" width="59.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2291" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBracket
+</text>
+<rect x="2550.875" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2552" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4200.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4202" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4664.625" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4666" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1434.875" y="192.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1436" y="201" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2833.125" y="384.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2835" y="393" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="4145.875" y="256.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4147" y="265" style="font-family:sans-serif;font-size:10px;">
+sub
+</text>
+<rect x="799.875" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="801" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="1657.625" y="256.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1659" y="265" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="740.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="742" y="233" style="font-family:sans-serif;font-size:10px;">
+{
+</text>
+<rect x="1091.125" y="224.0" width="55.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1093" y="233" style="font-family:sans-serif;font-size:10px;">
+result_tree
+</text>
+<rect x="2400.125" y="256.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2402" y="265" style="font-family:sans-serif;font-size:10px;">
+sub
+</text>
+<rect x="2370.375" y="288.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2372" y="297" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2838.975" y="224.0" width="30.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2840" y="233" style="font-family:sans-serif;font-size:10px;">
+subst
+</text>
+<rect x="2718.875" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2720" y="265" style="font-family:sans-serif;font-size:10px;">
+lr
+</text>
+<rect x="1693.875" y="416.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1695" y="425" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3281.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3283" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3450.375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3452" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="669.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="671" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3776.625" y="256.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3778" y="265" style="font-family:sans-serif;font-size:10px;">
+[
+</text>
+<rect x="923.375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="925" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="4336.125" y="288.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4338" y="297" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="3330.125" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3332" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="608.875" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="610" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1671.625" y="224.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1673" y="233" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="2687.375" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2689" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="3565.375" y="416.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3567" y="425" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="2366.375" y="352.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2368" y="361" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="1053.375" y="288.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1055" y="297" style="font-family:sans-serif;font-size:10px;">
+n
+</text>
+<rect x="1532.375" y="352.0" width="20.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1534" y="361" style="font-family:sans-serif;font-size:10px;">
+Nat
+</text>
+<rect x="3299.125" y="320.0" width="24.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3301" y="329" style="font-family:sans-serif;font-size:10px;">
+plus
+</text>
+<rect x="3378.375" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3380" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="153.5" y="96.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="155" y="105" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="991.375" y="352.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="993" y="361" style="font-family:sans-serif;font-size:10px;">
+treeLeaf
+</text>
+<rect x="1842.875" y="416.0" width="9.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1844" y="425" style="font-family:sans-serif;font-size:10px;">
+y
+</text>
+<rect x="965.875" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="967" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="2701.375" y="224.0" width="45.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2703" y="233" style="font-family:sans-serif;font-size:10px;">
+direction
+</text>
+<rect x="2927.125" y="256.0" width="37.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2929" y="265" style="font-family:sans-serif;font-size:10px;">
+mytree
+</text>
+<rect x="4222.041666666667" y="224.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4224" y="233" style="font-family:sans-serif;font-size:10px;">
+=
+</text>
+<rect x="93.75" y="256.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="95" y="265" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="2744.625" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2746" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3919.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3921" y="233" style="font-family:sans-serif;font-size:10px;">
+{
+</text>
+<rect x="860.125" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="862" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="279.25" y="160.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="281" y="169" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+<rect x="815.375" y="320.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="817" y="329" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="3616.875" y="352.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3618" y="361" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="4248.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="4250" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2560.625" y="448.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2562" y="457" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2188.125" y="256.0" width="10.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2190" y="265" style="font-family:sans-serif;font-size:10px;">
+lr
+</text>
+<rect x="1516.875" y="320.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1518" y="329" style="font-family:sans-serif;font-size:10px;">
+:
+</text>
+<rect x="1479.125" y="288.0" width="27.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1481" y="297" style="font-family:sans-serif;font-size:10px;">
+fixed
+</text>
+<rect x="1180.125" y="256.0" width="18.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1182" y="265" style="font-family:sans-serif;font-size:10px;">
+var
+</text>
+<rect x="489.0" y="192.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="491" y="201" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="2913.125" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2915" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="1572.375" y="352.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1574" y="361" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="3625.625" y="224.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3627" y="233" style="font-family:sans-serif;font-size:10px;">
+,
+</text>
+<rect x="2475.625" y="256.0" width="22.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2477" y="265" style="font-family:sans-serif;font-size:10px;">
+sub
+</text>
+<rect x="3216.625" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3218" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2018.375" y="352.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2020" y="361" style="font-family:sans-serif;font-size:10px;">
+(
+</text>
+<rect x="633.375" y="288.0" width="65.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="635" y="297" style="font-family:sans-serif;font-size:10px;">
+functionTree
+</text>
+<rect x="2105.375" y="352.0" width="7.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="2107" y="361" style="font-family:sans-serif;font-size:10px;">
+)
+</text>
+<rect x="1621.375" y="160.0" width="48.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1623" y="169" style="font-family:sans-serif;font-size:10px;">
+ind_case
+</text>
+<rect x="497.375" y="320.0" width="42.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="499" y="329" style="font-family:sans-serif;font-size:10px;">
+treeBez
+</text>
+<rect x="1311.125" y="160.0" width="17.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="1313" y="169" style="font-family:sans-serif;font-size:10px;">
+eq
+</text>
+<rect x="3854.125" y="288.0" width="60.0" height="15.0" style="fill:orange; stroke:rgb(0,0,0);" rx="1"/>
+<text x="3856" y="297" style="font-family:sans-serif;font-size:10px;">
+classicTree
+</text>
+</svg>
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.txt b/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.txt
new file mode 100644
index 0000000..52c8509
--- /dev/null
+++ b/ANTRL-Grammatiken/Beweis/Induction_Bsp_plus_komm_FuncBrackets.txt
@@ -0,0 +1,21 @@
+lemma L1: forall y:Nat : plus null y = y induction y
+IA: zu zeigen: plus null null = null    
+plus null null
+    {p0, lr, plus null null, [null/n]}
+= null
+IH: fixed y:Nat : plus null y = y
+IS: zu zeigen: fixed y:Nat : plus null (nach y) = nach y
+plus null (nach y)
+    {p1, lr, plus null (nach y), [null/n,y/m]}
+= nach (plus null y)
+    {IH, lr, plus null y, []}
+= nach y
+
+proof
+IA: zu zeigen: forall m:Nat : plus null m = plus m null 
+plus null m
+  {L1,lr,plus null m,[m/y]}
+= m
+  {p0,rl,m,[m/n]}
+= plus m null
+IH: fixed n:Nat : forall m:Nat : plus n m = plus m n
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Lib/EquationRules.g4 b/ANTRL-Grammatiken/Lib/EquationRules.g4
index 9a735c8..ade92a3 100644
--- a/ANTRL-Grammatiken/Lib/EquationRules.g4
+++ b/ANTRL-Grammatiken/Lib/EquationRules.g4
@@ -14,4 +14,4 @@ fixed : 'fixed'  var (',' var)* ;
 
 eq_var_def: ( (fixed ':') (forall ':')? | (forall ':') (fixed ':')? )? ;
 
-eq: eq_var_def mytree '=' mytree ;
\ No newline at end of file
+eq: eq_var_def eq_s ;
\ No newline at end of file
diff --git a/ANTRL-Grammatiken/Lib/TreeAndLexerRules.g4 b/ANTRL-Grammatiken/Lib/TreeAndLexerRules.g4
index 1f21ac0..476ddc7 100644
--- a/ANTRL-Grammatiken/Lib/TreeAndLexerRules.g4
+++ b/ANTRL-Grammatiken/Lib/TreeAndLexerRules.g4
@@ -2,9 +2,17 @@ grammar TreeAndLexerRules;
 
 // tree is a reserved word in antrl3, a parser rule with that name is confusing antlr4
 
-mytree   : treeLeaf | treeNode ;
-treeLeaf : BEZ ; 
-treeNode : BEZ '(' mytree (',' mytree)*  ')' ;
+mytree : classicTree | fTree ;
+eq_s: classicTree '=' classicTree | fTree '=' fTree ;
+
+classicTree: treeLeaf | treeNode ;
+treeLeaf   : BEZ ; 
+treeNode   : BEZ '(' classicTree (',' classicTree)*  ')' ;
+
+fTree : fTreeBracketFree fTree | treeBracket | treeBez ;
+fTreeBracketFree : fTreeBracketFree fTree | treeBez ;
+treeBracket  : '(' fTree ')' ;
+treeBez : BEZ ;
 
 /*
  * Lexer Rules
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Metamodell/Beweis/Transformation.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Metamodell/Beweis/Transformation.cs
index 0a00368..2b1f092 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Metamodell/Beweis/Transformation.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Metamodell/Beweis/Transformation.cs
@@ -20,7 +20,7 @@ namespace Eingabeverwaltung.Metamodell
         public override string ToString()
         {
             string res = "Transformation:\r\n";
-            res += "proof\r\n" + startTree.ToString() + "\r\n";
+            res += startTree.ToString() + "\r\n";
             foreach (TransformationStep ts in transformationSteps) res += ts.ToString(); 
             return res;
         }
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Listener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Listener.cs
index 8b396da..e2c1edc 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Listener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Listener.cs
@@ -133,6 +133,12 @@ namespace Eingabeverwaltung.Parser
         public void EnterMytree([NotNull] ADTParser.MytreeContext context) { }
         public void ExitMytree([NotNull] ADTParser.MytreeContext context) { }
 
+        public void EnterEq_s([NotNull] ADTParser.Eq_sContext context) { }
+        public void ExitEq_s([NotNull] ADTParser.Eq_sContext context) { }
+        // classic Trees
+        public void EnterClassicTree([NotNull] ADTParser.ClassicTreeContext context) { }
+        public void ExitClassicTree([NotNull] ADTParser.ClassicTreeContext context) { }
+
         public void EnterTreeLeaf([NotNull] ADTParser.TreeLeafContext context) { }
         public void ExitTreeLeaf([NotNull] ADTParser.TreeLeafContext context)
             => LH.ExitTreeLeaf(context.BEZ().GetText());
@@ -140,6 +146,20 @@ namespace Eingabeverwaltung.Parser
         public void EnterTreeNode([NotNull] ADTParser.TreeNodeContext context) { }
         public void ExitTreeNode([NotNull] ADTParser.TreeNodeContext context)
             => LH.ExitTreeNode(context.BEZ().GetText(), context.ChildCount, context.GetText());
+        // function Trees
+        public void EnterFTree([NotNull] ADTParser.FTreeContext context) => throw new NotImplementedException();
+
+        public void ExitFTree([NotNull] ADTParser.FTreeContext context) => throw new NotImplementedException();
+
+        public void EnterFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+        public void ExitFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBracket([NotNull] ADTParser.TreeBracketContext context) => throw new NotImplementedException();
+        public void ExitTreeBracket([NotNull] ADTParser.TreeBracketContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBez([NotNull] ADTParser.TreeBezContext context) => throw new NotImplementedException();
+
+        public void ExitTreeBez([NotNull] ADTParser.TreeBezContext context) => throw new NotImplementedException();
 
         // useless Interface requirements
         public void EnterEveryRule(ParserRuleContext ctx) { }
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADT.interp b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADT.interp
index 650b312..653664a 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADT.interp
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADT.interp
@@ -51,9 +51,15 @@ var
 axioms
 axiom
 mytree
+eq_s
+classicTree
 treeLeaf
 treeNode
+fTree
+fTreeBracketFree
+treeBracket
+treeBez
 
 
 atn:
-[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 19, 131, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 3, 2, 5, 2, 32, 10, 2, 3, 2, 3, 2, 5, 2, 36, 10, 2, 3, 2, 3, 2, 3, 2, 3, 2, 5, 2, 42, 10, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 7, 4, 53, 10, 4, 12, 4, 14, 4, 56, 11, 4, 3, 5, 3, 5, 3, 6, 3, 6, 6, 6, 62, 10, 6, 13, 6, 14, 6, 63, 3, 7, 3, 7, 6, 7, 68, 10, 7, 13, 7, 14, 7, 69, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 7, 8, 77, 10, 8, 12, 8, 14, 8, 80, 11, 8, 3, 8, 3, 8, 5, 8, 84, 10, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 7, 9, 92, 10, 9, 12, 9, 14, 9, 95, 11, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 6, 11, 103, 10, 11, 13, 11, 14, 11, 104, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 5, 13, 115, 10, 13, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 7, 15, 124, 10, 15, 12, 15, 14, 15, 127, 11, 15, 3, 15, 3, 15, 3, 15, 2, 2, 16, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 2, 2, 2, 128, 2, 31, 3, 2, 2, 2, 4, 45, 3, 2, 2, 2, 6, 48, 3, 2, 2, 2, 8, 57, 3, 2, 2, 2, 10, 59, 3, 2, 2, 2, 12, 65, 3, 2, 2, 2, 14, 71, 3, 2, 2, 2, 16, 87, 3, 2, 2, 2, 18, 96, 3, 2, 2, 2, 20, 100, 3, 2, 2, 2, 22, 106, 3, 2, 2, 2, 24, 114, 3, 2, 2, 2, 26, 116, 3, 2, 2, 2, 28, 118, 3, 2, 2, 2, 30, 32, 5, 4, 3, 2, 31, 30, 3, 2, 2, 2, 31, 32, 3, 2, 2, 2, 32, 33, 3, 2, 2, 2, 33, 35, 5, 6, 4, 2, 34, 36, 5, 10, 6, 2, 35, 34, 3, 2, 2, 2, 35, 36, 3, 2, 2, 2, 36, 37, 3, 2, 2, 2, 37, 41, 5, 12, 7, 2, 38, 39, 5, 16, 9, 2, 39, 40, 5, 20, 11, 2, 40, 42, 3, 2, 2, 2, 41, 38, 3, 2, 2, 2, 41, 42, 3, 2, 2, 2, 42, 43, 3, 2, 2, 2, 43, 44, 7, 2, 2, 3, 44, 3, 3, 2, 2, 2, 45, 46, 7, 3, 2, 2, 46, 47, 7, 16, 2, 2, 47, 5, 3, 2, 2, 2, 48, 49, 7, 4, 2, 2, 49, 54, 5, 8, 5, 2, 50, 51, 7, 5, 2, 2, 51, 53, 5, 8, 5, 2, 52, 50, 3, 2, 2, 2, 53, 56, 3, 2, 2, 2, 54, 52, 3, 2, 2, 2, 54, 55, 3, 2, 2, 2, 55, 7, 3, 2, 2, 2, 56, 54, 3, 2, 2, 2, 57, 58, 7, 16, 2, 2, 58, 9, 3, 2, 2, 2, 59, 61, 7, 6, 2, 2, 60, 62, 5, 14, 8, 2, 61, 60, 3, 2, 2, 2, 62, 63, 3, 2, 2, 2, 63, 61, 3, 2, 2, 2, 63, 64, 3, 2, 2, 2, 64, 11, 3, 2, 2, 2, 65, 67, 7, 7, 2, 2, 66, 68, 5, 14, 8, 2, 67, 66, 3, 2, 2, 2, 68, 69, 3, 2, 2, 2, 69, 67, 3, 2, 2, 2, 69, 70, 3, 2, 2, 2, 70, 13, 3, 2, 2, 2, 71, 72, 7, 16, 2, 2, 72, 83, 7, 8, 2, 2, 73, 78, 5, 8, 5, 2, 74, 75, 7, 9, 2, 2, 75, 77, 5, 8, 5, 2, 76, 74, 3, 2, 2, 2, 77, 80, 3, 2, 2, 2, 78, 76, 3, 2, 2, 2, 78, 79, 3, 2, 2, 2, 79, 81, 3, 2, 2, 2, 80, 78, 3, 2, 2, 2, 81, 82, 7, 10, 2, 2, 82, 84, 3, 2, 2, 2, 83, 73, 3, 2, 2, 2, 83, 84, 3, 2, 2, 2, 84, 85, 3, 2, 2, 2, 85, 86, 5, 8, 5, 2, 86, 15, 3, 2, 2, 2, 87, 88, 7, 11, 2, 2, 88, 93, 5, 18, 10, 2, 89, 90, 7, 5, 2, 2, 90, 92, 5, 18, 10, 2, 91, 89, 3, 2, 2, 2, 92, 95, 3, 2, 2, 2, 93, 91, 3, 2, 2, 2, 93, 94, 3, 2, 2, 2, 94, 17, 3, 2, 2, 2, 95, 93, 3, 2, 2, 2, 96, 97, 7, 16, 2, 2, 97, 98, 7, 8, 2, 2, 98, 99, 5, 8, 5, 2, 99, 19, 3, 2, 2, 2, 100, 102, 7, 12, 2, 2, 101, 103, 5, 22, 12, 2, 102, 101, 3, 2, 2, 2, 103, 104, 3, 2, 2, 2, 104, 102, 3, 2, 2, 2, 104, 105, 3, 2, 2, 2, 105, 21, 3, 2, 2, 2, 106, 107, 7, 16, 2, 2, 107, 108, 7, 8, 2, 2, 108, 109, 5, 24, 13, 2, 109, 110, 7, 13, 2, 2, 110, 111, 5, 24, 13, 2, 111, 23, 3, 2, 2, 2, 112, 115, 5, 26, 14, 2, 113, 115, 5, 28, 15, 2, 114, 112, 3, 2, 2, 2, 114, 113, 3, 2, 2, 2, 115, 25, 3, 2, 2, 2, 116, 117, 7, 16, 2, 2, 117, 27, 3, 2, 2, 2, 118, 119, 7, 16, 2, 2, 119, 120, 7, 14, 2, 2, 120, 125, 5, 24, 13, 2, 121, 122, 7, 5, 2, 2, 122, 124, 5, 24, 13, 2, 123, 121, 3, 2, 2, 2, 124, 127, 3, 2, 2, 2, 125, 123, 3, 2, 2, 2, 125, 126, 3, 2, 2, 2, 126, 128, 3, 2, 2, 2, 127, 125, 3, 2, 2, 2, 128, 129, 7, 15, 2, 2, 129, 29, 3, 2, 2, 2, 14, 31, 35, 41, 54, 63, 69, 78, 83, 93, 104, 114, 125]
\ No newline at end of file
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 19, 178, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 3, 2, 5, 2, 44, 10, 2, 3, 2, 3, 2, 5, 2, 48, 10, 2, 3, 2, 3, 2, 3, 2, 3, 2, 5, 2, 54, 10, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 7, 4, 65, 10, 4, 12, 4, 14, 4, 68, 11, 4, 3, 5, 3, 5, 3, 6, 3, 6, 6, 6, 74, 10, 6, 13, 6, 14, 6, 75, 3, 7, 3, 7, 6, 7, 80, 10, 7, 13, 7, 14, 7, 81, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 7, 8, 89, 10, 8, 12, 8, 14, 8, 92, 11, 8, 3, 8, 3, 8, 5, 8, 96, 10, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 7, 9, 104, 10, 9, 12, 9, 14, 9, 107, 11, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 6, 11, 115, 10, 11, 13, 11, 14, 11, 116, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 5, 13, 125, 10, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 5, 14, 135, 10, 14, 3, 15, 3, 15, 5, 15, 139, 10, 15, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 7, 17, 148, 10, 17, 12, 17, 14, 17, 151, 11, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 5, 18, 160, 10, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 7, 19, 167, 10, 19, 12, 19, 14, 19, 170, 11, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 2, 3, 36, 22, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 2, 2, 2, 174, 2, 43, 3, 2, 2, 2, 4, 57, 3, 2, 2, 2, 6, 60, 3, 2, 2, 2, 8, 69, 3, 2, 2, 2, 10, 71, 3, 2, 2, 2, 12, 77, 3, 2, 2, 2, 14, 83, 3, 2, 2, 2, 16, 99, 3, 2, 2, 2, 18, 108, 3, 2, 2, 2, 20, 112, 3, 2, 2, 2, 22, 118, 3, 2, 2, 2, 24, 124, 3, 2, 2, 2, 26, 134, 3, 2, 2, 2, 28, 138, 3, 2, 2, 2, 30, 140, 3, 2, 2, 2, 32, 142, 3, 2, 2, 2, 34, 159, 3, 2, 2, 2, 36, 161, 3, 2, 2, 2, 38, 171, 3, 2, 2, 2, 40, 175, 3, 2, 2, 2, 42, 44, 5, 4, 3, 2, 43, 42, 3, 2, 2, 2, 43, 44, 3, 2, 2, 2, 44, 45, 3, 2, 2, 2, 45, 47, 5, 6, 4, 2, 46, 48, 5, 10, 6, 2, 47, 46, 3, 2, 2, 2, 47, 48, 3, 2, 2, 2, 48, 49, 3, 2, 2, 2, 49, 53, 5, 12, 7, 2, 50, 51, 5, 16, 9, 2, 51, 52, 5, 20, 11, 2, 52, 54, 3, 2, 2, 2, 53, 50, 3, 2, 2, 2, 53, 54, 3, 2, 2, 2, 54, 55, 3, 2, 2, 2, 55, 56, 7, 2, 2, 3, 56, 3, 3, 2, 2, 2, 57, 58, 7, 3, 2, 2, 58, 59, 7, 16, 2, 2, 59, 5, 3, 2, 2, 2, 60, 61, 7, 4, 2, 2, 61, 66, 5, 8, 5, 2, 62, 63, 7, 5, 2, 2, 63, 65, 5, 8, 5, 2, 64, 62, 3, 2, 2, 2, 65, 68, 3, 2, 2, 2, 66, 64, 3, 2, 2, 2, 66, 67, 3, 2, 2, 2, 67, 7, 3, 2, 2, 2, 68, 66, 3, 2, 2, 2, 69, 70, 7, 16, 2, 2, 70, 9, 3, 2, 2, 2, 71, 73, 7, 6, 2, 2, 72, 74, 5, 14, 8, 2, 73, 72, 3, 2, 2, 2, 74, 75, 3, 2, 2, 2, 75, 73, 3, 2, 2, 2, 75, 76, 3, 2, 2, 2, 76, 11, 3, 2, 2, 2, 77, 79, 7, 7, 2, 2, 78, 80, 5, 14, 8, 2, 79, 78, 3, 2, 2, 2, 80, 81, 3, 2, 2, 2, 81, 79, 3, 2, 2, 2, 81, 82, 3, 2, 2, 2, 82, 13, 3, 2, 2, 2, 83, 84, 7, 16, 2, 2, 84, 95, 7, 8, 2, 2, 85, 90, 5, 8, 5, 2, 86, 87, 7, 9, 2, 2, 87, 89, 5, 8, 5, 2, 88, 86, 3, 2, 2, 2, 89, 92, 3, 2, 2, 2, 90, 88, 3, 2, 2, 2, 90, 91, 3, 2, 2, 2, 91, 93, 3, 2, 2, 2, 92, 90, 3, 2, 2, 2, 93, 94, 7, 10, 2, 2, 94, 96, 3, 2, 2, 2, 95, 85, 3, 2, 2, 2, 95, 96, 3, 2, 2, 2, 96, 97, 3, 2, 2, 2, 97, 98, 5, 8, 5, 2, 98, 15, 3, 2, 2, 2, 99, 100, 7, 11, 2, 2, 100, 105, 5, 18, 10, 2, 101, 102, 7, 5, 2, 2, 102, 104, 5, 18, 10, 2, 103, 101, 3, 2, 2, 2, 104, 107, 3, 2, 2, 2, 105, 103, 3, 2, 2, 2, 105, 106, 3, 2, 2, 2, 106, 17, 3, 2, 2, 2, 107, 105, 3, 2, 2, 2, 108, 109, 7, 16, 2, 2, 109, 110, 7, 8, 2, 2, 110, 111, 5, 8, 5, 2, 111, 19, 3, 2, 2, 2, 112, 114, 7, 12, 2, 2, 113, 115, 5, 22, 12, 2, 114, 113, 3, 2, 2, 2, 115, 116, 3, 2, 2, 2, 116, 114, 3, 2, 2, 2, 116, 117, 3, 2, 2, 2, 117, 21, 3, 2, 2, 2, 118, 119, 7, 16, 2, 2, 119, 120, 7, 8, 2, 2, 120, 121, 5, 26, 14, 2, 121, 23, 3, 2, 2, 2, 122, 125, 5, 28, 15, 2, 123, 125, 5, 34, 18, 2, 124, 122, 3, 2, 2, 2, 124, 123, 3, 2, 2, 2, 125, 25, 3, 2, 2, 2, 126, 127, 5, 28, 15, 2, 127, 128, 7, 13, 2, 2, 128, 129, 5, 28, 15, 2, 129, 135, 3, 2, 2, 2, 130, 131, 5, 34, 18, 2, 131, 132, 7, 13, 2, 2, 132, 133, 5, 34, 18, 2, 133, 135, 3, 2, 2, 2, 134, 126, 3, 2, 2, 2, 134, 130, 3, 2, 2, 2, 135, 27, 3, 2, 2, 2, 136, 139, 5, 30, 16, 2, 137, 139, 5, 32, 17, 2, 138, 136, 3, 2, 2, 2, 138, 137, 3, 2, 2, 2, 139, 29, 3, 2, 2, 2, 140, 141, 7, 16, 2, 2, 141, 31, 3, 2, 2, 2, 142, 143, 7, 16, 2, 2, 143, 144, 7, 14, 2, 2, 144, 149, 5, 28, 15, 2, 145, 146, 7, 5, 2, 2, 146, 148, 5, 28, 15, 2, 147, 145, 3, 2, 2, 2, 148, 151, 3, 2, 2, 2, 149, 147, 3, 2, 2, 2, 149, 150, 3, 2, 2, 2, 150, 152, 3, 2, 2, 2, 151, 149, 3, 2, 2, 2, 152, 153, 7, 15, 2, 2, 153, 33, 3, 2, 2, 2, 154, 155, 5, 36, 19, 2, 155, 156, 5, 34, 18, 2, 156, 160, 3, 2, 2, 2, 157, 160, 5, 38, 20, 2, 158, 160, 5, 40, 21, 2, 159, 154, 3, 2, 2, 2, 159, 157, 3, 2, 2, 2, 159, 158, 3, 2, 2, 2, 160, 35, 3, 2, 2, 2, 161, 162, 8, 19, 1, 2, 162, 163, 5, 40, 21, 2, 163, 168, 3, 2, 2, 2, 164, 165, 12, 4, 2, 2, 165, 167, 5, 34, 18, 2, 166, 164, 3, 2, 2, 2, 167, 170, 3, 2, 2, 2, 168, 166, 3, 2, 2, 2, 168, 169, 3, 2, 2, 2, 169, 37, 3, 2, 2, 2, 170, 168, 3, 2, 2, 2, 171, 172, 7, 14, 2, 2, 172, 173, 5, 34, 18, 2, 173, 174, 7, 15, 2, 2, 174, 39, 3, 2, 2, 2, 175, 176, 7, 16, 2, 2, 176, 41, 3, 2, 2, 2, 18, 43, 47, 53, 66, 75, 81, 90, 95, 105, 116, 124, 134, 138, 149, 159, 168]
\ No newline at end of file
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTBaseListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTBaseListener.cs
index 86a09e5..83e828b 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTBaseListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTBaseListener.cs
@@ -180,6 +180,30 @@ public partial class ADTBaseListener : IADTListener {
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitMytree([NotNull] ADTParser.MytreeContext context) { }
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterEq_s([NotNull] ADTParser.Eq_sContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitEq_s([NotNull] ADTParser.Eq_sContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterClassicTree([NotNull] ADTParser.ClassicTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitClassicTree([NotNull] ADTParser.ClassicTreeContext context) { }
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="ADTParser.treeLeaf"/>.
 	/// <para>The default implementation does nothing.</para>
 	/// </summary>
@@ -203,6 +227,54 @@ public partial class ADTBaseListener : IADTListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitTreeNode([NotNull] ADTParser.TreeNodeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTree([NotNull] ADTParser.FTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTree([NotNull] ADTParser.FTreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBracket([NotNull] ADTParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBracket([NotNull] ADTParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBez([NotNull] ADTParser.TreeBezContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBez([NotNull] ADTParser.TreeBezContext context) { }
 
 	/// <inheritdoc/>
 	/// <remarks>The default implementation does nothing.</remarks>
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTListener.cs
index 20ddf0c..63e63e4 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTListener.cs
@@ -152,6 +152,26 @@ public interface IADTListener : IParseTreeListener {
 	/// <param name="context">The parse tree.</param>
 	void ExitMytree([NotNull] ADTParser.MytreeContext context);
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterEq_s([NotNull] ADTParser.Eq_sContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitEq_s([NotNull] ADTParser.Eq_sContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterClassicTree([NotNull] ADTParser.ClassicTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitClassicTree([NotNull] ADTParser.ClassicTreeContext context);
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="ADTParser.treeLeaf"/>.
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
@@ -171,5 +191,45 @@ public interface IADTListener : IParseTreeListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	void ExitTreeNode([NotNull] ADTParser.TreeNodeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTree([NotNull] ADTParser.FTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTree([NotNull] ADTParser.FTreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTreeBracketFree([NotNull] ADTParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBracket([NotNull] ADTParser.TreeBracketContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBracket([NotNull] ADTParser.TreeBracketContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ADTParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBez([NotNull] ADTParser.TreeBezContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ADTParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBez([NotNull] ADTParser.TreeBezContext context);
 }
 } // namespace Eingabeverwaltung.Parser.ADT_Parser
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTParser.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTParser.cs
index 55c135a..d7683cc 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTParser.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/ADT_Parser/ADTParser.cs
@@ -43,11 +43,13 @@ public partial class ADTParser : Parser {
 	public const int
 		RULE_adt = 0, RULE_name = 1, RULE_sorts = 2, RULE_sort = 3, RULE_constructors = 4, 
 		RULE_operations = 5, RULE_operation = 6, RULE_vars = 7, RULE_var = 8, 
-		RULE_axioms = 9, RULE_axiom = 10, RULE_mytree = 11, RULE_treeLeaf = 12, 
-		RULE_treeNode = 13;
+		RULE_axioms = 9, RULE_axiom = 10, RULE_mytree = 11, RULE_eq_s = 12, RULE_classicTree = 13, 
+		RULE_treeLeaf = 14, RULE_treeNode = 15, RULE_fTree = 16, RULE_fTreeBracketFree = 17, 
+		RULE_treeBracket = 18, RULE_treeBez = 19;
 	public static readonly string[] ruleNames = {
 		"adt", "name", "sorts", "sort", "constructors", "operations", "operation", 
-		"vars", "var", "axioms", "axiom", "mytree", "treeLeaf", "treeNode"
+		"vars", "var", "axioms", "axiom", "mytree", "eq_s", "classicTree", "treeLeaf", 
+		"treeNode", "fTree", "fTreeBracketFree", "treeBracket", "treeBez"
 	};
 
 	private static readonly string[] _LiteralNames = {
@@ -133,37 +135,37 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 29;
+			State = 41;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__0) {
 				{
-				State = 28; name();
+				State = 40; name();
 				}
 			}
 
-			State = 31; sorts();
-			State = 33;
+			State = 43; sorts();
+			State = 45;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__3) {
 				{
-				State = 32; constructors();
+				State = 44; constructors();
 				}
 			}
 
-			State = 35; operations();
-			State = 39;
+			State = 47; operations();
+			State = 51;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__8) {
 				{
-				State = 36; vars();
-				State = 37; axioms();
+				State = 48; vars();
+				State = 49; axioms();
 				}
 			}
 
-			State = 41; Match(Eof);
+			State = 53; Match(Eof);
 			}
 		}
 		catch (RecognitionException re) {
@@ -201,8 +203,8 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 43; Match(T__0);
-			State = 44; Match(BEZ);
+			State = 55; Match(T__0);
+			State = 56; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -246,19 +248,19 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 46; Match(T__1);
-			State = 47; sort();
-			State = 52;
+			State = 58; Match(T__1);
+			State = 59; sort();
+			State = 64;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__2) {
 				{
 				{
-				State = 48; Match(T__2);
-				State = 49; sort();
+				State = 60; Match(T__2);
+				State = 61; sort();
 				}
 				}
-				State = 54;
+				State = 66;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -299,7 +301,7 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 55; Match(BEZ);
+			State = 67; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -343,17 +345,17 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 57; Match(T__3);
-			State = 59;
+			State = 69; Match(T__3);
+			State = 71;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 58; operation();
+				State = 70; operation();
 				}
 				}
-				State = 61;
+				State = 73;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==BEZ );
@@ -400,17 +402,17 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 63; Match(T__4);
-			State = 65;
+			State = 75; Match(T__4);
+			State = 77;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 64; operation();
+				State = 76; operation();
 				}
 				}
-				State = 67;
+				State = 79;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==BEZ );
@@ -458,33 +460,33 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 69; Match(BEZ);
-			State = 70; Match(T__5);
-			State = 81;
+			State = 81; Match(BEZ);
+			State = 82; Match(T__5);
+			State = 93;
 			ErrorHandler.Sync(this);
 			switch ( Interpreter.AdaptivePredict(TokenStream,7,Context) ) {
 			case 1:
 				{
-				State = 71; sort();
-				State = 76;
+				State = 83; sort();
+				State = 88;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				while (_la==T__6) {
 					{
 					{
-					State = 72; Match(T__6);
-					State = 73; sort();
+					State = 84; Match(T__6);
+					State = 85; sort();
 					}
 					}
-					State = 78;
+					State = 90;
 					ErrorHandler.Sync(this);
 					_la = TokenStream.LA(1);
 				}
-				State = 79; Match(T__7);
+				State = 91; Match(T__7);
 				}
 				break;
 			}
-			State = 83; sort();
+			State = 95; sort();
 			}
 		}
 		catch (RecognitionException re) {
@@ -528,19 +530,19 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 85; Match(T__8);
-			State = 86; var();
-			State = 91;
+			State = 97; Match(T__8);
+			State = 98; var();
+			State = 103;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__2) {
 				{
 				{
-				State = 87; Match(T__2);
-				State = 88; var();
+				State = 99; Match(T__2);
+				State = 100; var();
 				}
 				}
-				State = 93;
+				State = 105;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -584,9 +586,9 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 94; Match(BEZ);
-			State = 95; Match(T__5);
-			State = 96; sort();
+			State = 106; Match(BEZ);
+			State = 107; Match(T__5);
+			State = 108; sort();
 			}
 		}
 		catch (RecognitionException re) {
@@ -630,17 +632,17 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 98; Match(T__9);
-			State = 100;
+			State = 110; Match(T__9);
+			State = 112;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 99; axiom();
+				State = 111; axiom();
 				}
 				}
-				State = 102;
+				State = 114;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==BEZ );
@@ -659,11 +661,8 @@ public partial class ADTParser : Parser {
 
 	public partial class AxiomContext : ParserRuleContext {
 		public ITerminalNode BEZ() { return GetToken(ADTParser.BEZ, 0); }
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
-		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public Eq_sContext eq_s() {
+			return GetRuleContext<Eq_sContext>(0);
 		}
 		public AxiomContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -687,11 +686,9 @@ public partial class ADTParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 104; Match(BEZ);
-			State = 105; Match(T__5);
-			State = 106; mytree();
-			State = 107; Match(T__10);
-			State = 108; mytree();
+			State = 116; Match(BEZ);
+			State = 117; Match(T__5);
+			State = 118; eq_s();
 			}
 		}
 		catch (RecognitionException re) {
@@ -706,11 +703,11 @@ public partial class ADTParser : Parser {
 	}
 
 	public partial class MytreeContext : ParserRuleContext {
-		public TreeLeafContext treeLeaf() {
-			return GetRuleContext<TreeLeafContext>(0);
+		public ClassicTreeContext classicTree() {
+			return GetRuleContext<ClassicTreeContext>(0);
 		}
-		public TreeNodeContext treeNode() {
-			return GetRuleContext<TreeNodeContext>(0);
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
 		}
 		public MytreeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -732,19 +729,139 @@ public partial class ADTParser : Parser {
 		MytreeContext _localctx = new MytreeContext(Context, State);
 		EnterRule(_localctx, 22, RULE_mytree);
 		try {
-			State = 112;
+			State = 122;
 			ErrorHandler.Sync(this);
 			switch ( Interpreter.AdaptivePredict(TokenStream,10,Context) ) {
 			case 1:
 				EnterOuterAlt(_localctx, 1);
 				{
-				State = 110; treeLeaf();
+				State = 120; classicTree();
 				}
 				break;
 			case 2:
 				EnterOuterAlt(_localctx, 2);
 				{
-				State = 111; treeNode();
+				State = 121; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class Eq_sContext : ParserRuleContext {
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
+		}
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
+		}
+		public FTreeContext[] fTree() {
+			return GetRuleContexts<FTreeContext>();
+		}
+		public FTreeContext fTree(int i) {
+			return GetRuleContext<FTreeContext>(i);
+		}
+		public Eq_sContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_eq_s; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterEq_s(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitEq_s(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public Eq_sContext eq_s() {
+		Eq_sContext _localctx = new Eq_sContext(Context, State);
+		EnterRule(_localctx, 24, RULE_eq_s);
+		try {
+			State = 132;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,11,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 124; classicTree();
+				State = 125; Match(T__10);
+				State = 126; classicTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 128; fTree();
+				State = 129; Match(T__10);
+				State = 130; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class ClassicTreeContext : ParserRuleContext {
+		public TreeLeafContext treeLeaf() {
+			return GetRuleContext<TreeLeafContext>(0);
+		}
+		public TreeNodeContext treeNode() {
+			return GetRuleContext<TreeNodeContext>(0);
+		}
+		public ClassicTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_classicTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterClassicTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitClassicTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public ClassicTreeContext classicTree() {
+		ClassicTreeContext _localctx = new ClassicTreeContext(Context, State);
+		EnterRule(_localctx, 26, RULE_classicTree);
+		try {
+			State = 136;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,12,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 134; treeLeaf();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 135; treeNode();
 				}
 				break;
 			}
@@ -780,11 +897,11 @@ public partial class ADTParser : Parser {
 	[RuleVersion(0)]
 	public TreeLeafContext treeLeaf() {
 		TreeLeafContext _localctx = new TreeLeafContext(Context, State);
-		EnterRule(_localctx, 24, RULE_treeLeaf);
+		EnterRule(_localctx, 28, RULE_treeLeaf);
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 114; Match(BEZ);
+			State = 138; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -800,11 +917,11 @@ public partial class ADTParser : Parser {
 
 	public partial class TreeNodeContext : ParserRuleContext {
 		public ITerminalNode BEZ() { return GetToken(ADTParser.BEZ, 0); }
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
 		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
 		}
 		public TreeNodeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -824,29 +941,29 @@ public partial class ADTParser : Parser {
 	[RuleVersion(0)]
 	public TreeNodeContext treeNode() {
 		TreeNodeContext _localctx = new TreeNodeContext(Context, State);
-		EnterRule(_localctx, 26, RULE_treeNode);
+		EnterRule(_localctx, 30, RULE_treeNode);
 		int _la;
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 116; Match(BEZ);
-			State = 117; Match(T__11);
-			State = 118; mytree();
-			State = 123;
+			State = 140; Match(BEZ);
+			State = 141; Match(T__11);
+			State = 142; classicTree();
+			State = 147;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__2) {
 				{
 				{
-				State = 119; Match(T__2);
-				State = 120; mytree();
+				State = 143; Match(T__2);
+				State = 144; classicTree();
 				}
 				}
-				State = 125;
+				State = 149;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
-			State = 126; Match(T__12);
+			State = 150; Match(T__12);
 			}
 		}
 		catch (RecognitionException re) {
@@ -860,105 +977,386 @@ public partial class ADTParser : Parser {
 		return _localctx;
 	}
 
+	public partial class FTreeContext : ParserRuleContext {
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext treeBracket() {
+			return GetRuleContext<TreeBracketContext>(0);
+		}
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterFTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitFTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeContext fTree() {
+		FTreeContext _localctx = new FTreeContext(Context, State);
+		EnterRule(_localctx, 32, RULE_fTree);
+		try {
+			State = 157;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,14,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 152; fTreeBracketFree(0);
+				State = 153; fTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 155; treeBracket();
+				}
+				break;
+			case 3:
+				EnterOuterAlt(_localctx, 3);
+				{
+				State = 156; treeBez();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class FTreeBracketFreeContext : ParserRuleContext {
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public FTreeBracketFreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTreeBracketFree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterFTreeBracketFree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitFTreeBracketFree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeBracketFreeContext fTreeBracketFree() {
+		return fTreeBracketFree(0);
+	}
+
+	private FTreeBracketFreeContext fTreeBracketFree(int _p) {
+		ParserRuleContext _parentctx = Context;
+		int _parentState = State;
+		FTreeBracketFreeContext _localctx = new FTreeBracketFreeContext(Context, _parentState);
+		FTreeBracketFreeContext _prevctx = _localctx;
+		int _startState = 34;
+		EnterRecursionRule(_localctx, 34, RULE_fTreeBracketFree, _p);
+		try {
+			int _alt;
+			EnterOuterAlt(_localctx, 1);
+			{
+			{
+			State = 160; treeBez();
+			}
+			Context.Stop = TokenStream.LT(-1);
+			State = 166;
+			ErrorHandler.Sync(this);
+			_alt = Interpreter.AdaptivePredict(TokenStream,15,Context);
+			while ( _alt!=2 && _alt!=global::Antlr4.Runtime.Atn.ATN.INVALID_ALT_NUMBER ) {
+				if ( _alt==1 ) {
+					if ( ParseListeners!=null )
+						TriggerExitRuleEvent();
+					_prevctx = _localctx;
+					{
+					{
+					_localctx = new FTreeBracketFreeContext(_parentctx, _parentState);
+					PushNewRecursionContext(_localctx, _startState, RULE_fTreeBracketFree);
+					State = 162;
+					if (!(Precpred(Context, 2))) throw new FailedPredicateException(this, "Precpred(Context, 2)");
+					State = 163; fTree();
+					}
+					} 
+				}
+				State = 168;
+				ErrorHandler.Sync(this);
+				_alt = Interpreter.AdaptivePredict(TokenStream,15,Context);
+			}
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			UnrollRecursionContexts(_parentctx);
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBracketContext : ParserRuleContext {
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBracket; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterTreeBracket(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitTreeBracket(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBracketContext treeBracket() {
+		TreeBracketContext _localctx = new TreeBracketContext(Context, State);
+		EnterRule(_localctx, 36, RULE_treeBracket);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 169; Match(T__11);
+			State = 170; fTree();
+			State = 171; Match(T__12);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBezContext : ParserRuleContext {
+		public ITerminalNode BEZ() { return GetToken(ADTParser.BEZ, 0); }
+		public TreeBezContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBez; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.EnterTreeBez(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IADTListener typedListener = listener as IADTListener;
+			if (typedListener != null) typedListener.ExitTreeBez(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBezContext treeBez() {
+		TreeBezContext _localctx = new TreeBezContext(Context, State);
+		EnterRule(_localctx, 38, RULE_treeBez);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 173; Match(BEZ);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public override bool Sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
+		switch (ruleIndex) {
+		case 17: return fTreeBracketFree_sempred((FTreeBracketFreeContext)_localctx, predIndex);
+		}
+		return true;
+	}
+	private bool fTreeBracketFree_sempred(FTreeBracketFreeContext _localctx, int predIndex) {
+		switch (predIndex) {
+		case 0: return Precpred(Context, 2);
+		}
+		return true;
+	}
+
 	private static char[] _serializedATN = {
 		'\x3', '\x608B', '\xA72A', '\x8133', '\xB9ED', '\x417C', '\x3BE7', '\x7786', 
-		'\x5964', '\x3', '\x13', '\x83', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
+		'\x5964', '\x3', '\x13', '\xB2', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
 		'\t', '\x3', '\x4', '\x4', '\t', '\x4', '\x4', '\x5', '\t', '\x5', '\x4', 
 		'\x6', '\t', '\x6', '\x4', '\a', '\t', '\a', '\x4', '\b', '\t', '\b', 
 		'\x4', '\t', '\t', '\t', '\x4', '\n', '\t', '\n', '\x4', '\v', '\t', '\v', 
 		'\x4', '\f', '\t', '\f', '\x4', '\r', '\t', '\r', '\x4', '\xE', '\t', 
-		'\xE', '\x4', '\xF', '\t', '\xF', '\x3', '\x2', '\x5', '\x2', ' ', '\n', 
-		'\x2', '\x3', '\x2', '\x3', '\x2', '\x5', '\x2', '$', '\n', '\x2', '\x3', 
-		'\x2', '\x3', '\x2', '\x3', '\x2', '\x3', '\x2', '\x5', '\x2', '*', '\n', 
-		'\x2', '\x3', '\x2', '\x3', '\x2', '\x3', '\x3', '\x3', '\x3', '\x3', 
-		'\x3', '\x3', '\x4', '\x3', '\x4', '\x3', '\x4', '\x3', '\x4', '\a', '\x4', 
-		'\x35', '\n', '\x4', '\f', '\x4', '\xE', '\x4', '\x38', '\v', '\x4', '\x3', 
-		'\x5', '\x3', '\x5', '\x3', '\x6', '\x3', '\x6', '\x6', '\x6', '>', '\n', 
-		'\x6', '\r', '\x6', '\xE', '\x6', '?', '\x3', '\a', '\x3', '\a', '\x6', 
-		'\a', '\x44', '\n', '\a', '\r', '\a', '\xE', '\a', '\x45', '\x3', '\b', 
-		'\x3', '\b', '\x3', '\b', '\x3', '\b', '\x3', '\b', '\a', '\b', 'M', '\n', 
-		'\b', '\f', '\b', '\xE', '\b', 'P', '\v', '\b', '\x3', '\b', '\x3', '\b', 
-		'\x5', '\b', 'T', '\n', '\b', '\x3', '\b', '\x3', '\b', '\x3', '\t', '\x3', 
-		'\t', '\x3', '\t', '\x3', '\t', '\a', '\t', '\\', '\n', '\t', '\f', '\t', 
-		'\xE', '\t', '_', '\v', '\t', '\x3', '\n', '\x3', '\n', '\x3', '\n', '\x3', 
-		'\n', '\x3', '\v', '\x3', '\v', '\x6', '\v', 'g', '\n', '\v', '\r', '\v', 
-		'\xE', '\v', 'h', '\x3', '\f', '\x3', '\f', '\x3', '\f', '\x3', '\f', 
-		'\x3', '\f', '\x3', '\f', '\x3', '\r', '\x3', '\r', '\x5', '\r', 's', 
-		'\n', '\r', '\x3', '\xE', '\x3', '\xE', '\x3', '\xF', '\x3', '\xF', '\x3', 
-		'\xF', '\x3', '\xF', '\x3', '\xF', '\a', '\xF', '|', '\n', '\xF', '\f', 
-		'\xF', '\xE', '\xF', '\x7F', '\v', '\xF', '\x3', '\xF', '\x3', '\xF', 
-		'\x3', '\xF', '\x2', '\x2', '\x10', '\x2', '\x4', '\x6', '\b', '\n', '\f', 
-		'\xE', '\x10', '\x12', '\x14', '\x16', '\x18', '\x1A', '\x1C', '\x2', 
-		'\x2', '\x2', '\x80', '\x2', '\x1F', '\x3', '\x2', '\x2', '\x2', '\x4', 
-		'-', '\x3', '\x2', '\x2', '\x2', '\x6', '\x30', '\x3', '\x2', '\x2', '\x2', 
-		'\b', '\x39', '\x3', '\x2', '\x2', '\x2', '\n', ';', '\x3', '\x2', '\x2', 
-		'\x2', '\f', '\x41', '\x3', '\x2', '\x2', '\x2', '\xE', 'G', '\x3', '\x2', 
-		'\x2', '\x2', '\x10', 'W', '\x3', '\x2', '\x2', '\x2', '\x12', '`', '\x3', 
-		'\x2', '\x2', '\x2', '\x14', '\x64', '\x3', '\x2', '\x2', '\x2', '\x16', 
-		'j', '\x3', '\x2', '\x2', '\x2', '\x18', 'r', '\x3', '\x2', '\x2', '\x2', 
-		'\x1A', 't', '\x3', '\x2', '\x2', '\x2', '\x1C', 'v', '\x3', '\x2', '\x2', 
-		'\x2', '\x1E', ' ', '\x5', '\x4', '\x3', '\x2', '\x1F', '\x1E', '\x3', 
-		'\x2', '\x2', '\x2', '\x1F', ' ', '\x3', '\x2', '\x2', '\x2', ' ', '!', 
-		'\x3', '\x2', '\x2', '\x2', '!', '#', '\x5', '\x6', '\x4', '\x2', '\"', 
-		'$', '\x5', '\n', '\x6', '\x2', '#', '\"', '\x3', '\x2', '\x2', '\x2', 
-		'#', '$', '\x3', '\x2', '\x2', '\x2', '$', '%', '\x3', '\x2', '\x2', '\x2', 
-		'%', ')', '\x5', '\f', '\a', '\x2', '&', '\'', '\x5', '\x10', '\t', '\x2', 
-		'\'', '(', '\x5', '\x14', '\v', '\x2', '(', '*', '\x3', '\x2', '\x2', 
-		'\x2', ')', '&', '\x3', '\x2', '\x2', '\x2', ')', '*', '\x3', '\x2', '\x2', 
-		'\x2', '*', '+', '\x3', '\x2', '\x2', '\x2', '+', ',', '\a', '\x2', '\x2', 
-		'\x3', ',', '\x3', '\x3', '\x2', '\x2', '\x2', '-', '.', '\a', '\x3', 
-		'\x2', '\x2', '.', '/', '\a', '\x10', '\x2', '\x2', '/', '\x5', '\x3', 
-		'\x2', '\x2', '\x2', '\x30', '\x31', '\a', '\x4', '\x2', '\x2', '\x31', 
-		'\x36', '\x5', '\b', '\x5', '\x2', '\x32', '\x33', '\a', '\x5', '\x2', 
-		'\x2', '\x33', '\x35', '\x5', '\b', '\x5', '\x2', '\x34', '\x32', '\x3', 
-		'\x2', '\x2', '\x2', '\x35', '\x38', '\x3', '\x2', '\x2', '\x2', '\x36', 
-		'\x34', '\x3', '\x2', '\x2', '\x2', '\x36', '\x37', '\x3', '\x2', '\x2', 
-		'\x2', '\x37', '\a', '\x3', '\x2', '\x2', '\x2', '\x38', '\x36', '\x3', 
-		'\x2', '\x2', '\x2', '\x39', ':', '\a', '\x10', '\x2', '\x2', ':', '\t', 
-		'\x3', '\x2', '\x2', '\x2', ';', '=', '\a', '\x6', '\x2', '\x2', '<', 
-		'>', '\x5', '\xE', '\b', '\x2', '=', '<', '\x3', '\x2', '\x2', '\x2', 
-		'>', '?', '\x3', '\x2', '\x2', '\x2', '?', '=', '\x3', '\x2', '\x2', '\x2', 
-		'?', '@', '\x3', '\x2', '\x2', '\x2', '@', '\v', '\x3', '\x2', '\x2', 
-		'\x2', '\x41', '\x43', '\a', '\a', '\x2', '\x2', '\x42', '\x44', '\x5', 
-		'\xE', '\b', '\x2', '\x43', '\x42', '\x3', '\x2', '\x2', '\x2', '\x44', 
-		'\x45', '\x3', '\x2', '\x2', '\x2', '\x45', '\x43', '\x3', '\x2', '\x2', 
-		'\x2', '\x45', '\x46', '\x3', '\x2', '\x2', '\x2', '\x46', '\r', '\x3', 
-		'\x2', '\x2', '\x2', 'G', 'H', '\a', '\x10', '\x2', '\x2', 'H', 'S', '\a', 
-		'\b', '\x2', '\x2', 'I', 'N', '\x5', '\b', '\x5', '\x2', 'J', 'K', '\a', 
-		'\t', '\x2', '\x2', 'K', 'M', '\x5', '\b', '\x5', '\x2', 'L', 'J', '\x3', 
-		'\x2', '\x2', '\x2', 'M', 'P', '\x3', '\x2', '\x2', '\x2', 'N', 'L', '\x3', 
-		'\x2', '\x2', '\x2', 'N', 'O', '\x3', '\x2', '\x2', '\x2', 'O', 'Q', '\x3', 
-		'\x2', '\x2', '\x2', 'P', 'N', '\x3', '\x2', '\x2', '\x2', 'Q', 'R', '\a', 
-		'\n', '\x2', '\x2', 'R', 'T', '\x3', '\x2', '\x2', '\x2', 'S', 'I', '\x3', 
-		'\x2', '\x2', '\x2', 'S', 'T', '\x3', '\x2', '\x2', '\x2', 'T', 'U', '\x3', 
-		'\x2', '\x2', '\x2', 'U', 'V', '\x5', '\b', '\x5', '\x2', 'V', '\xF', 
-		'\x3', '\x2', '\x2', '\x2', 'W', 'X', '\a', '\v', '\x2', '\x2', 'X', ']', 
-		'\x5', '\x12', '\n', '\x2', 'Y', 'Z', '\a', '\x5', '\x2', '\x2', 'Z', 
-		'\\', '\x5', '\x12', '\n', '\x2', '[', 'Y', '\x3', '\x2', '\x2', '\x2', 
-		'\\', '_', '\x3', '\x2', '\x2', '\x2', ']', '[', '\x3', '\x2', '\x2', 
-		'\x2', ']', '^', '\x3', '\x2', '\x2', '\x2', '^', '\x11', '\x3', '\x2', 
-		'\x2', '\x2', '_', ']', '\x3', '\x2', '\x2', '\x2', '`', '\x61', '\a', 
-		'\x10', '\x2', '\x2', '\x61', '\x62', '\a', '\b', '\x2', '\x2', '\x62', 
-		'\x63', '\x5', '\b', '\x5', '\x2', '\x63', '\x13', '\x3', '\x2', '\x2', 
-		'\x2', '\x64', '\x66', '\a', '\f', '\x2', '\x2', '\x65', 'g', '\x5', '\x16', 
-		'\f', '\x2', '\x66', '\x65', '\x3', '\x2', '\x2', '\x2', 'g', 'h', '\x3', 
-		'\x2', '\x2', '\x2', 'h', '\x66', '\x3', '\x2', '\x2', '\x2', 'h', 'i', 
-		'\x3', '\x2', '\x2', '\x2', 'i', '\x15', '\x3', '\x2', '\x2', '\x2', 'j', 
-		'k', '\a', '\x10', '\x2', '\x2', 'k', 'l', '\a', '\b', '\x2', '\x2', 'l', 
-		'm', '\x5', '\x18', '\r', '\x2', 'm', 'n', '\a', '\r', '\x2', '\x2', 'n', 
-		'o', '\x5', '\x18', '\r', '\x2', 'o', '\x17', '\x3', '\x2', '\x2', '\x2', 
-		'p', 's', '\x5', '\x1A', '\xE', '\x2', 'q', 's', '\x5', '\x1C', '\xF', 
-		'\x2', 'r', 'p', '\x3', '\x2', '\x2', '\x2', 'r', 'q', '\x3', '\x2', '\x2', 
-		'\x2', 's', '\x19', '\x3', '\x2', '\x2', '\x2', 't', 'u', '\a', '\x10', 
-		'\x2', '\x2', 'u', '\x1B', '\x3', '\x2', '\x2', '\x2', 'v', 'w', '\a', 
-		'\x10', '\x2', '\x2', 'w', 'x', '\a', '\xE', '\x2', '\x2', 'x', '}', '\x5', 
-		'\x18', '\r', '\x2', 'y', 'z', '\a', '\x5', '\x2', '\x2', 'z', '|', '\x5', 
-		'\x18', '\r', '\x2', '{', 'y', '\x3', '\x2', '\x2', '\x2', '|', '\x7F', 
-		'\x3', '\x2', '\x2', '\x2', '}', '{', '\x3', '\x2', '\x2', '\x2', '}', 
-		'~', '\x3', '\x2', '\x2', '\x2', '~', '\x80', '\x3', '\x2', '\x2', '\x2', 
-		'\x7F', '}', '\x3', '\x2', '\x2', '\x2', '\x80', '\x81', '\a', '\xF', 
-		'\x2', '\x2', '\x81', '\x1D', '\x3', '\x2', '\x2', '\x2', '\xE', '\x1F', 
-		'#', ')', '\x36', '?', '\x45', 'N', 'S', ']', 'h', 'r', '}',
+		'\xE', '\x4', '\xF', '\t', '\xF', '\x4', '\x10', '\t', '\x10', '\x4', 
+		'\x11', '\t', '\x11', '\x4', '\x12', '\t', '\x12', '\x4', '\x13', '\t', 
+		'\x13', '\x4', '\x14', '\t', '\x14', '\x4', '\x15', '\t', '\x15', '\x3', 
+		'\x2', '\x5', '\x2', ',', '\n', '\x2', '\x3', '\x2', '\x3', '\x2', '\x5', 
+		'\x2', '\x30', '\n', '\x2', '\x3', '\x2', '\x3', '\x2', '\x3', '\x2', 
+		'\x3', '\x2', '\x5', '\x2', '\x36', '\n', '\x2', '\x3', '\x2', '\x3', 
+		'\x2', '\x3', '\x3', '\x3', '\x3', '\x3', '\x3', '\x3', '\x4', '\x3', 
+		'\x4', '\x3', '\x4', '\x3', '\x4', '\a', '\x4', '\x41', '\n', '\x4', '\f', 
+		'\x4', '\xE', '\x4', '\x44', '\v', '\x4', '\x3', '\x5', '\x3', '\x5', 
+		'\x3', '\x6', '\x3', '\x6', '\x6', '\x6', 'J', '\n', '\x6', '\r', '\x6', 
+		'\xE', '\x6', 'K', '\x3', '\a', '\x3', '\a', '\x6', '\a', 'P', '\n', '\a', 
+		'\r', '\a', '\xE', '\a', 'Q', '\x3', '\b', '\x3', '\b', '\x3', '\b', '\x3', 
+		'\b', '\x3', '\b', '\a', '\b', 'Y', '\n', '\b', '\f', '\b', '\xE', '\b', 
+		'\\', '\v', '\b', '\x3', '\b', '\x3', '\b', '\x5', '\b', '`', '\n', '\b', 
+		'\x3', '\b', '\x3', '\b', '\x3', '\t', '\x3', '\t', '\x3', '\t', '\x3', 
+		'\t', '\a', '\t', 'h', '\n', '\t', '\f', '\t', '\xE', '\t', 'k', '\v', 
+		'\t', '\x3', '\n', '\x3', '\n', '\x3', '\n', '\x3', '\n', '\x3', '\v', 
+		'\x3', '\v', '\x6', '\v', 's', '\n', '\v', '\r', '\v', '\xE', '\v', 't', 
+		'\x3', '\f', '\x3', '\f', '\x3', '\f', '\x3', '\f', '\x3', '\r', '\x3', 
+		'\r', '\x5', '\r', '}', '\n', '\r', '\x3', '\xE', '\x3', '\xE', '\x3', 
+		'\xE', '\x3', '\xE', '\x3', '\xE', '\x3', '\xE', '\x3', '\xE', '\x3', 
+		'\xE', '\x5', '\xE', '\x87', '\n', '\xE', '\x3', '\xF', '\x3', '\xF', 
+		'\x5', '\xF', '\x8B', '\n', '\xF', '\x3', '\x10', '\x3', '\x10', '\x3', 
+		'\x11', '\x3', '\x11', '\x3', '\x11', '\x3', '\x11', '\x3', '\x11', '\a', 
+		'\x11', '\x94', '\n', '\x11', '\f', '\x11', '\xE', '\x11', '\x97', '\v', 
+		'\x11', '\x3', '\x11', '\x3', '\x11', '\x3', '\x12', '\x3', '\x12', '\x3', 
+		'\x12', '\x3', '\x12', '\x3', '\x12', '\x5', '\x12', '\xA0', '\n', '\x12', 
+		'\x3', '\x13', '\x3', '\x13', '\x3', '\x13', '\x3', '\x13', '\x3', '\x13', 
+		'\a', '\x13', '\xA7', '\n', '\x13', '\f', '\x13', '\xE', '\x13', '\xAA', 
+		'\v', '\x13', '\x3', '\x14', '\x3', '\x14', '\x3', '\x14', '\x3', '\x14', 
+		'\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x2', '\x3', '$', '\x16', 
+		'\x2', '\x4', '\x6', '\b', '\n', '\f', '\xE', '\x10', '\x12', '\x14', 
+		'\x16', '\x18', '\x1A', '\x1C', '\x1E', ' ', '\"', '$', '&', '(', '\x2', 
+		'\x2', '\x2', '\xAE', '\x2', '+', '\x3', '\x2', '\x2', '\x2', '\x4', '\x39', 
+		'\x3', '\x2', '\x2', '\x2', '\x6', '<', '\x3', '\x2', '\x2', '\x2', '\b', 
+		'\x45', '\x3', '\x2', '\x2', '\x2', '\n', 'G', '\x3', '\x2', '\x2', '\x2', 
+		'\f', 'M', '\x3', '\x2', '\x2', '\x2', '\xE', 'S', '\x3', '\x2', '\x2', 
+		'\x2', '\x10', '\x63', '\x3', '\x2', '\x2', '\x2', '\x12', 'l', '\x3', 
+		'\x2', '\x2', '\x2', '\x14', 'p', '\x3', '\x2', '\x2', '\x2', '\x16', 
+		'v', '\x3', '\x2', '\x2', '\x2', '\x18', '|', '\x3', '\x2', '\x2', '\x2', 
+		'\x1A', '\x86', '\x3', '\x2', '\x2', '\x2', '\x1C', '\x8A', '\x3', '\x2', 
+		'\x2', '\x2', '\x1E', '\x8C', '\x3', '\x2', '\x2', '\x2', ' ', '\x8E', 
+		'\x3', '\x2', '\x2', '\x2', '\"', '\x9F', '\x3', '\x2', '\x2', '\x2', 
+		'$', '\xA1', '\x3', '\x2', '\x2', '\x2', '&', '\xAB', '\x3', '\x2', '\x2', 
+		'\x2', '(', '\xAF', '\x3', '\x2', '\x2', '\x2', '*', ',', '\x5', '\x4', 
+		'\x3', '\x2', '+', '*', '\x3', '\x2', '\x2', '\x2', '+', ',', '\x3', '\x2', 
+		'\x2', '\x2', ',', '-', '\x3', '\x2', '\x2', '\x2', '-', '/', '\x5', '\x6', 
+		'\x4', '\x2', '.', '\x30', '\x5', '\n', '\x6', '\x2', '/', '.', '\x3', 
+		'\x2', '\x2', '\x2', '/', '\x30', '\x3', '\x2', '\x2', '\x2', '\x30', 
+		'\x31', '\x3', '\x2', '\x2', '\x2', '\x31', '\x35', '\x5', '\f', '\a', 
+		'\x2', '\x32', '\x33', '\x5', '\x10', '\t', '\x2', '\x33', '\x34', '\x5', 
+		'\x14', '\v', '\x2', '\x34', '\x36', '\x3', '\x2', '\x2', '\x2', '\x35', 
+		'\x32', '\x3', '\x2', '\x2', '\x2', '\x35', '\x36', '\x3', '\x2', '\x2', 
+		'\x2', '\x36', '\x37', '\x3', '\x2', '\x2', '\x2', '\x37', '\x38', '\a', 
+		'\x2', '\x2', '\x3', '\x38', '\x3', '\x3', '\x2', '\x2', '\x2', '\x39', 
+		':', '\a', '\x3', '\x2', '\x2', ':', ';', '\a', '\x10', '\x2', '\x2', 
+		';', '\x5', '\x3', '\x2', '\x2', '\x2', '<', '=', '\a', '\x4', '\x2', 
+		'\x2', '=', '\x42', '\x5', '\b', '\x5', '\x2', '>', '?', '\a', '\x5', 
+		'\x2', '\x2', '?', '\x41', '\x5', '\b', '\x5', '\x2', '@', '>', '\x3', 
+		'\x2', '\x2', '\x2', '\x41', '\x44', '\x3', '\x2', '\x2', '\x2', '\x42', 
+		'@', '\x3', '\x2', '\x2', '\x2', '\x42', '\x43', '\x3', '\x2', '\x2', 
+		'\x2', '\x43', '\a', '\x3', '\x2', '\x2', '\x2', '\x44', '\x42', '\x3', 
+		'\x2', '\x2', '\x2', '\x45', '\x46', '\a', '\x10', '\x2', '\x2', '\x46', 
+		'\t', '\x3', '\x2', '\x2', '\x2', 'G', 'I', '\a', '\x6', '\x2', '\x2', 
+		'H', 'J', '\x5', '\xE', '\b', '\x2', 'I', 'H', '\x3', '\x2', '\x2', '\x2', 
+		'J', 'K', '\x3', '\x2', '\x2', '\x2', 'K', 'I', '\x3', '\x2', '\x2', '\x2', 
+		'K', 'L', '\x3', '\x2', '\x2', '\x2', 'L', '\v', '\x3', '\x2', '\x2', 
+		'\x2', 'M', 'O', '\a', '\a', '\x2', '\x2', 'N', 'P', '\x5', '\xE', '\b', 
+		'\x2', 'O', 'N', '\x3', '\x2', '\x2', '\x2', 'P', 'Q', '\x3', '\x2', '\x2', 
+		'\x2', 'Q', 'O', '\x3', '\x2', '\x2', '\x2', 'Q', 'R', '\x3', '\x2', '\x2', 
+		'\x2', 'R', '\r', '\x3', '\x2', '\x2', '\x2', 'S', 'T', '\a', '\x10', 
+		'\x2', '\x2', 'T', '_', '\a', '\b', '\x2', '\x2', 'U', 'Z', '\x5', '\b', 
+		'\x5', '\x2', 'V', 'W', '\a', '\t', '\x2', '\x2', 'W', 'Y', '\x5', '\b', 
+		'\x5', '\x2', 'X', 'V', '\x3', '\x2', '\x2', '\x2', 'Y', '\\', '\x3', 
+		'\x2', '\x2', '\x2', 'Z', 'X', '\x3', '\x2', '\x2', '\x2', 'Z', '[', '\x3', 
+		'\x2', '\x2', '\x2', '[', ']', '\x3', '\x2', '\x2', '\x2', '\\', 'Z', 
+		'\x3', '\x2', '\x2', '\x2', ']', '^', '\a', '\n', '\x2', '\x2', '^', '`', 
+		'\x3', '\x2', '\x2', '\x2', '_', 'U', '\x3', '\x2', '\x2', '\x2', '_', 
+		'`', '\x3', '\x2', '\x2', '\x2', '`', '\x61', '\x3', '\x2', '\x2', '\x2', 
+		'\x61', '\x62', '\x5', '\b', '\x5', '\x2', '\x62', '\xF', '\x3', '\x2', 
+		'\x2', '\x2', '\x63', '\x64', '\a', '\v', '\x2', '\x2', '\x64', 'i', '\x5', 
+		'\x12', '\n', '\x2', '\x65', '\x66', '\a', '\x5', '\x2', '\x2', '\x66', 
+		'h', '\x5', '\x12', '\n', '\x2', 'g', '\x65', '\x3', '\x2', '\x2', '\x2', 
+		'h', 'k', '\x3', '\x2', '\x2', '\x2', 'i', 'g', '\x3', '\x2', '\x2', '\x2', 
+		'i', 'j', '\x3', '\x2', '\x2', '\x2', 'j', '\x11', '\x3', '\x2', '\x2', 
+		'\x2', 'k', 'i', '\x3', '\x2', '\x2', '\x2', 'l', 'm', '\a', '\x10', '\x2', 
+		'\x2', 'm', 'n', '\a', '\b', '\x2', '\x2', 'n', 'o', '\x5', '\b', '\x5', 
+		'\x2', 'o', '\x13', '\x3', '\x2', '\x2', '\x2', 'p', 'r', '\a', '\f', 
+		'\x2', '\x2', 'q', 's', '\x5', '\x16', '\f', '\x2', 'r', 'q', '\x3', '\x2', 
+		'\x2', '\x2', 's', 't', '\x3', '\x2', '\x2', '\x2', 't', 'r', '\x3', '\x2', 
+		'\x2', '\x2', 't', 'u', '\x3', '\x2', '\x2', '\x2', 'u', '\x15', '\x3', 
+		'\x2', '\x2', '\x2', 'v', 'w', '\a', '\x10', '\x2', '\x2', 'w', 'x', '\a', 
+		'\b', '\x2', '\x2', 'x', 'y', '\x5', '\x1A', '\xE', '\x2', 'y', '\x17', 
+		'\x3', '\x2', '\x2', '\x2', 'z', '}', '\x5', '\x1C', '\xF', '\x2', '{', 
+		'}', '\x5', '\"', '\x12', '\x2', '|', 'z', '\x3', '\x2', '\x2', '\x2', 
+		'|', '{', '\x3', '\x2', '\x2', '\x2', '}', '\x19', '\x3', '\x2', '\x2', 
+		'\x2', '~', '\x7F', '\x5', '\x1C', '\xF', '\x2', '\x7F', '\x80', '\a', 
+		'\r', '\x2', '\x2', '\x80', '\x81', '\x5', '\x1C', '\xF', '\x2', '\x81', 
+		'\x87', '\x3', '\x2', '\x2', '\x2', '\x82', '\x83', '\x5', '\"', '\x12', 
+		'\x2', '\x83', '\x84', '\a', '\r', '\x2', '\x2', '\x84', '\x85', '\x5', 
+		'\"', '\x12', '\x2', '\x85', '\x87', '\x3', '\x2', '\x2', '\x2', '\x86', 
+		'~', '\x3', '\x2', '\x2', '\x2', '\x86', '\x82', '\x3', '\x2', '\x2', 
+		'\x2', '\x87', '\x1B', '\x3', '\x2', '\x2', '\x2', '\x88', '\x8B', '\x5', 
+		'\x1E', '\x10', '\x2', '\x89', '\x8B', '\x5', ' ', '\x11', '\x2', '\x8A', 
+		'\x88', '\x3', '\x2', '\x2', '\x2', '\x8A', '\x89', '\x3', '\x2', '\x2', 
+		'\x2', '\x8B', '\x1D', '\x3', '\x2', '\x2', '\x2', '\x8C', '\x8D', '\a', 
+		'\x10', '\x2', '\x2', '\x8D', '\x1F', '\x3', '\x2', '\x2', '\x2', '\x8E', 
+		'\x8F', '\a', '\x10', '\x2', '\x2', '\x8F', '\x90', '\a', '\xE', '\x2', 
+		'\x2', '\x90', '\x95', '\x5', '\x1C', '\xF', '\x2', '\x91', '\x92', '\a', 
+		'\x5', '\x2', '\x2', '\x92', '\x94', '\x5', '\x1C', '\xF', '\x2', '\x93', 
+		'\x91', '\x3', '\x2', '\x2', '\x2', '\x94', '\x97', '\x3', '\x2', '\x2', 
+		'\x2', '\x95', '\x93', '\x3', '\x2', '\x2', '\x2', '\x95', '\x96', '\x3', 
+		'\x2', '\x2', '\x2', '\x96', '\x98', '\x3', '\x2', '\x2', '\x2', '\x97', 
+		'\x95', '\x3', '\x2', '\x2', '\x2', '\x98', '\x99', '\a', '\xF', '\x2', 
+		'\x2', '\x99', '!', '\x3', '\x2', '\x2', '\x2', '\x9A', '\x9B', '\x5', 
+		'$', '\x13', '\x2', '\x9B', '\x9C', '\x5', '\"', '\x12', '\x2', '\x9C', 
+		'\xA0', '\x3', '\x2', '\x2', '\x2', '\x9D', '\xA0', '\x5', '&', '\x14', 
+		'\x2', '\x9E', '\xA0', '\x5', '(', '\x15', '\x2', '\x9F', '\x9A', '\x3', 
+		'\x2', '\x2', '\x2', '\x9F', '\x9D', '\x3', '\x2', '\x2', '\x2', '\x9F', 
+		'\x9E', '\x3', '\x2', '\x2', '\x2', '\xA0', '#', '\x3', '\x2', '\x2', 
+		'\x2', '\xA1', '\xA2', '\b', '\x13', '\x1', '\x2', '\xA2', '\xA3', '\x5', 
+		'(', '\x15', '\x2', '\xA3', '\xA8', '\x3', '\x2', '\x2', '\x2', '\xA4', 
+		'\xA5', '\f', '\x4', '\x2', '\x2', '\xA5', '\xA7', '\x5', '\"', '\x12', 
+		'\x2', '\xA6', '\xA4', '\x3', '\x2', '\x2', '\x2', '\xA7', '\xAA', '\x3', 
+		'\x2', '\x2', '\x2', '\xA8', '\xA6', '\x3', '\x2', '\x2', '\x2', '\xA8', 
+		'\xA9', '\x3', '\x2', '\x2', '\x2', '\xA9', '%', '\x3', '\x2', '\x2', 
+		'\x2', '\xAA', '\xA8', '\x3', '\x2', '\x2', '\x2', '\xAB', '\xAC', '\a', 
+		'\xE', '\x2', '\x2', '\xAC', '\xAD', '\x5', '\"', '\x12', '\x2', '\xAD', 
+		'\xAE', '\a', '\xF', '\x2', '\x2', '\xAE', '\'', '\x3', '\x2', '\x2', 
+		'\x2', '\xAF', '\xB0', '\a', '\x10', '\x2', '\x2', '\xB0', ')', '\x3', 
+		'\x2', '\x2', '\x2', '\x12', '+', '/', '\x35', '\x42', 'K', 'Q', 'Z', 
+		'_', 'i', 't', '|', '\x86', '\x8A', '\x95', '\x9F', '\xA8',
 	};
 
 	public static readonly ATN _ATN =
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Listener_Helper.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Listener_Helper.cs
index 7f7cfa9..532f912 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Listener_Helper.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Listener_Helper.cs
@@ -2,6 +2,7 @@
 using System.Linq;
 using System.Collections.Generic;
 using Eingabeverwaltung.Metamodell;
+using static Eingabeverwaltung.Parser.Listener_Helper;
 
 namespace Eingabeverwaltung.Parser
 {
@@ -21,6 +22,22 @@ namespace Eingabeverwaltung.Parser
         public Equation equation;
         // Tree
         public List<Tree> trees;
+        // Coords for ParsingExceptions
+        public class Coords
+        {
+            public readonly int line;
+            public readonly int column;
+
+            public Coords(int line, int column)
+            {
+                this.line = line;
+                this.column = column;
+            }
+        }
+        public class ParsingException : Exception 
+        { 
+            public ParsingException(Coords coords,string message) : base("Error in "+coords.line+":"+coords.column+": "+message) { }
+        }
         public Listener_Helper(List<Sort> adt_sorts, List<Operation> adt_ops, List<Variable> adt_vars, List<Axiom> adt_axioms, Equation equation, List<Tree> trees)
         {
             this.adt_sorts = adt_sorts;
@@ -62,12 +79,13 @@ namespace Eingabeverwaltung.Parser
             adt_vars.Add(new Variable(variableName, sort));
         }
 
+        public void ExitTreeLeaf(string treeName) => ExitTreeLeaf(treeName,new Coords(-1,-1));
         // Trees
         /// <summary>
         /// TreeLeaf is whether a Variable or a constant (ComposedTree without children)
         /// </summary>
         /// <param name="treeName"></param>
-        public void ExitTreeLeaf(string treeName)
+        public void ExitTreeLeaf(string treeName, Coords coords)
         {
             Tree result = null;
             Variable variable = findVariableInADT_Vars(treeName);
@@ -75,15 +93,15 @@ namespace Eingabeverwaltung.Parser
                 result = new TreeVariable(variable);
             else
             {
-                Operation operation = findOperationInADT_Ops(treeName, 0);
+                Operation operation = findOperationInADT_Ops(treeName, 0, coords);
                 if (operation != null)
                     result = new ComposedTree(operation, new List<Tree>());
             }
             if (result == null) throw new Exception("The Tree " + treeName + " could not be found in Vars or Operations of the ADT!");
             trees.Add(result);
         }
-
-        public void ExitTreeNode(string treeName, int context_ChildCount, string context_Text)
+        public void ExitTreeNode(string treeName, int context_ChildCount, string context_Text) => ExitTreeNode(treeName, context_ChildCount, context_Text, new Coords(-1, -1));
+        public void ExitTreeNode(string treeName, int context_ChildCount, string context_Text, Coords coords)
         {
             int childCount = (int)Math.Ceiling(((double)(context_ChildCount - 3)) / 2); // -1 for BEZ, -1 for "(", -1 for ")", ceiling(/2) = -1 for each "," between 2 children
                                                                                         // All children of current tree are in this.trees because inner trees 1st, but sure is sure
@@ -156,6 +174,8 @@ namespace Eingabeverwaltung.Parser
                     return sort;
             return null;
         }
+        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount) => findOperationInADT_Ops(operationName, inputtedChildCount, new Coords(-1,-1));
+        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount, bool testChildCount) => findOperationInADT_Ops(operationName, inputtedChildCount, testChildCount, new Coords(-1, -1));
 
         /// <summary>
         /// Returns null if not able to find. Throws Exception if inputtedChildCount != expected ChildCount from the found Operation.
@@ -163,7 +183,7 @@ namespace Eingabeverwaltung.Parser
         /// <param name="operationName"></param>
         /// <param name="inputtedChildCount"></param>
         /// <returns></returns>
-        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount) => findOperationInADT_Ops(operationName, inputtedChildCount, true);
+        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount, Coords coords) => findOperationInADT_Ops(operationName, inputtedChildCount, true, coords);
         /// <summary>
         /// Returns null if not able to find
         /// </summary>
@@ -171,13 +191,13 @@ namespace Eingabeverwaltung.Parser
         /// <param name="inputtedChildCount"></param>
         /// <param name="testChildCount"></param>
         /// <returns></returns>
-        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount, bool testChildCount)
+        public Operation findOperationInADT_Ops(string operationName, int inputtedChildCount, bool testChildCount, Coords coords)
         {
             foreach (Operation operation in adt_ops)
             {
                 if (operation.name == operationName)
                 {
-                    if (testChildCount) Test_ComposedTree_ChildCount_is_corrent(operation, inputtedChildCount);
+                    if (testChildCount) Test_ComposedTree_ChildCount_is_corrent(operation, inputtedChildCount, coords);
                     return operation;
                 }
             }
@@ -254,10 +274,10 @@ namespace Eingabeverwaltung.Parser
         /// </summary>
         /// <param name="operation"></param>
         /// <param name="inputtedChildCount"></param>
-        private void Test_ComposedTree_ChildCount_is_corrent(Operation operation, int inputtedChildCount)
+        private void Test_ComposedTree_ChildCount_is_corrent(Operation operation, int inputtedChildCount, Coords coords)
         {
             if (operation.sorts.Count != inputtedChildCount + 1)
-                throw new Exception("The Operation_Tree " + operation.name + " was inputted with " + inputtedChildCount + " children, expected " + (operation.sorts.Count - 1) + " children!");
+                throw new ParsingException(coords,"The Operation_Tree " + operation.name + " was inputted with " + inputtedChildCount + " children, expected " + (operation.sorts.Count - 1) + " children!");
         }
         private void Test_ComposedTree_Children_Sorts_are_correct(Operation operation, List<Tree> children)
         {
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Listener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Listener.cs
index 13224ef..04f09d6 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Listener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Listener.cs
@@ -5,6 +5,7 @@ using Antlr4.Runtime;
 using Antlr4.Runtime.Misc;
 using System.Collections.Generic;
 using System;
+using Eingabeverwaltung.Parser.ADT_Parser;
 
 namespace Eingabeverwaltung.Parser
 {
@@ -242,13 +243,32 @@ namespace Eingabeverwaltung.Parser
         public void EnterMytree([NotNull] ProofParser.MytreeContext context) { }
         public void ExitMytree([NotNull] ProofParser.MytreeContext context) { }
 
+        public void EnterEq_s([NotNull] ProofParser.Eq_sContext context) { }
+        public void ExitEq_s([NotNull] ProofParser.Eq_sContext context) { }
+        // classic Trees
+        public void EnterClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+        public void ExitClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+
         public void EnterTreeLeaf([NotNull] ProofParser.TreeLeafContext context) { }
         public void ExitTreeLeaf([NotNull] ProofParser.TreeLeafContext context)
-            => LH.ExitTreeLeaf(context.BEZ().GetText());
+            => LH.ExitTreeLeaf(context.BEZ().GetText(),new Listener_Helper.Coords(context.Start.Line,context.Start.Column)); 
 
         public void EnterTreeNode([NotNull] ProofParser.TreeNodeContext context) { }
         public void ExitTreeNode([NotNull] ProofParser.TreeNodeContext context)
-            => LH.ExitTreeNode(context.BEZ().GetText(), context.ChildCount, context.GetText());
+            => LH.ExitTreeNode(context.BEZ().GetText(), context.ChildCount, context.GetText(), new Listener_Helper.Coords(context.Start.Line, context.Start.Column));
+
+        public void EnterFTree([NotNull] ProofParser.FTreeContext context) => throw new NotImplementedException();
+        public void ExitFTree([NotNull] ProofParser.FTreeContext context) => throw new NotImplementedException();
+
+        public void EnterFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+        public void ExitFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBracket([NotNull] ProofParser.TreeBracketContext context) => throw new NotImplementedException();
+        public void ExitTreeBracket([NotNull] ProofParser.TreeBracketContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBez([NotNull] ProofParser.TreeBezContext context) => throw new NotImplementedException();
+
+        public void ExitTreeBez([NotNull] ProofParser.TreeBezContext context) => throw new NotImplementedException();
 
         // useless Interface requirements
         public void EnterEveryRule(ParserRuleContext ctx) { }
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/Proof.interp b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/Proof.interp
index 2665437..cde52d1 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/Proof.interp
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/Proof.interp
@@ -91,9 +91,15 @@ fixed
 eq_var_def
 eq
 mytree
+eq_s
+classicTree
 treeLeaf
 treeNode
+fTree
+fTreeBracketFree
+treeBracket
+treeBez
 
 
 atn:
-[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 31, 258, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 3, 2, 7, 2, 64, 10, 2, 12, 2, 14, 2, 67, 11, 2, 3, 2, 3, 2, 7, 2, 71, 10, 2, 12, 2, 14, 2, 74, 11, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 5, 3, 81, 10, 3, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 5, 6, 93, 10, 6, 3, 7, 3, 7, 3, 8, 5, 8, 98, 10, 8, 3, 8, 6, 8, 101, 10, 8, 13, 8, 14, 8, 102, 3, 8, 6, 8, 106, 10, 8, 13, 8, 14, 8, 107, 3, 8, 7, 8, 111, 10, 8, 12, 8, 14, 8, 114, 11, 8, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 5, 10, 121, 10, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 5, 11, 128, 10, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 5, 13, 138, 10, 13, 3, 13, 3, 13, 5, 13, 142, 10, 13, 5, 13, 144, 10, 13, 3, 13, 3, 13, 3, 14, 3, 14, 6, 14, 150, 10, 14, 13, 14, 14, 14, 151, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 18, 3, 18, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 178, 10, 20, 12, 20, 14, 20, 181, 11, 20, 5, 20, 183, 10, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 7, 25, 203, 10, 25, 12, 25, 14, 25, 206, 11, 25, 3, 26, 3, 26, 3, 26, 3, 26, 7, 26, 212, 10, 26, 12, 26, 14, 26, 215, 11, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 223, 10, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 231, 10, 27, 5, 27, 233, 10, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 5, 29, 242, 10, 29, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 7, 31, 251, 10, 31, 12, 31, 14, 31, 254, 11, 31, 3, 31, 3, 31, 3, 31, 2, 2, 32, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 2, 5, 3, 2, 6, 9, 4, 2, 14, 14, 28, 28, 3, 2, 19, 20, 2, 251, 2, 65, 3, 2, 2, 2, 4, 77, 3, 2, 2, 2, 6, 82, 3, 2, 2, 2, 8, 85, 3, 2, 2, 2, 10, 92, 3, 2, 2, 2, 12, 94, 3, 2, 2, 2, 14, 97, 3, 2, 2, 2, 16, 115, 3, 2, 2, 2, 18, 118, 3, 2, 2, 2, 20, 125, 3, 2, 2, 2, 22, 132, 3, 2, 2, 2, 24, 135, 3, 2, 2, 2, 26, 147, 3, 2, 2, 2, 28, 153, 3, 2, 2, 2, 30, 155, 3, 2, 2, 2, 32, 167, 3, 2, 2, 2, 34, 169, 3, 2, 2, 2, 36, 171, 3, 2, 2, 2, 38, 173, 3, 2, 2, 2, 40, 186, 3, 2, 2, 2, 42, 190, 3, 2, 2, 2, 44, 192, 3, 2, 2, 2, 46, 196, 3, 2, 2, 2, 48, 198, 3, 2, 2, 2, 50, 207, 3, 2, 2, 2, 52, 232, 3, 2, 2, 2, 54, 234, 3, 2, 2, 2, 56, 241, 3, 2, 2, 2, 58, 243, 3, 2, 2, 2, 60, 245, 3, 2, 2, 2, 62, 64, 5, 6, 4, 2, 63, 62, 3, 2, 2, 2, 64, 67, 3, 2, 2, 2, 65, 63, 3, 2, 2, 2, 65, 66, 3, 2, 2, 2, 66, 68, 3, 2, 2, 2, 67, 65, 3, 2, 2, 2, 68, 72, 5, 4, 3, 2, 69, 71, 5, 6, 4, 2, 70, 69, 3, 2, 2, 2, 71, 74, 3, 2, 2, 2, 72, 70, 3, 2, 2, 2, 72, 73, 3, 2, 2, 2, 73, 75, 3, 2, 2, 2, 74, 72, 3, 2, 2, 2, 75, 76, 7, 2, 2, 3, 76, 3, 3, 2, 2, 2, 77, 78, 7, 3, 2, 2, 78, 80, 5, 10, 6, 2, 79, 81, 5, 12, 7, 2, 80, 79, 3, 2, 2, 2, 80, 81, 3, 2, 2, 2, 81, 5, 3, 2, 2, 2, 82, 83, 5, 8, 5, 2, 83, 84, 5, 10, 6, 2, 84, 7, 3, 2, 2, 2, 85, 86, 7, 4, 2, 2, 86, 87, 7, 28, 2, 2, 87, 88, 7, 5, 2, 2, 88, 89, 5, 54, 28, 2, 89, 9, 3, 2, 2, 2, 90, 93, 5, 14, 8, 2, 91, 93, 5, 26, 14, 2, 92, 90, 3, 2, 2, 2, 92, 91, 3, 2, 2, 2, 93, 11, 3, 2, 2, 2, 94, 95, 9, 2, 2, 2, 95, 13, 3, 2, 2, 2, 96, 98, 5, 16, 9, 2, 97, 96, 3, 2, 2, 2, 97, 98, 3, 2, 2, 2, 98, 100, 3, 2, 2, 2, 99, 101, 5, 18, 10, 2, 100, 99, 3, 2, 2, 2, 101, 102, 3, 2, 2, 2, 102, 100, 3, 2, 2, 2, 102, 103, 3, 2, 2, 2, 103, 105, 3, 2, 2, 2, 104, 106, 5, 24, 13, 2, 105, 104, 3, 2, 2, 2, 106, 107, 3, 2, 2, 2, 107, 105, 3, 2, 2, 2, 107, 108, 3, 2, 2, 2, 108, 112, 3, 2, 2, 2, 109, 111, 5, 20, 11, 2, 110, 109, 3, 2, 2, 2, 111, 114, 3, 2, 2, 2, 112, 110, 3, 2, 2, 2, 112, 113, 3, 2, 2, 2, 113, 15, 3, 2, 2, 2, 114, 112, 3, 2, 2, 2, 115, 116, 7, 10, 2, 2, 116, 117, 7, 28, 2, 2, 117, 17, 3, 2, 2, 2, 118, 120, 7, 11, 2, 2, 119, 121, 7, 5, 2, 2, 120, 119, 3, 2, 2, 2, 120, 121, 3, 2, 2, 2, 121, 122, 3, 2, 2, 2, 122, 123, 5, 22, 12, 2, 123, 124, 5, 26, 14, 2, 124, 19, 3, 2, 2, 2, 125, 127, 7, 12, 2, 2, 126, 128, 7, 5, 2, 2, 127, 126, 3, 2, 2, 2, 127, 128, 3, 2, 2, 2, 128, 129, 3, 2, 2, 2, 129, 130, 5, 22, 12, 2, 130, 131, 5, 26, 14, 2, 131, 21, 3, 2, 2, 2, 132, 133, 7, 13, 2, 2, 133, 134, 5, 54, 28, 2, 134, 23, 3, 2, 2, 2, 135, 137, 7, 14, 2, 2, 136, 138, 7, 5, 2, 2, 137, 136, 3, 2, 2, 2, 137, 138, 3, 2, 2, 2, 138, 143, 3, 2, 2, 2, 139, 141, 7, 28, 2, 2, 140, 142, 7, 5, 2, 2, 141, 140, 3, 2, 2, 2, 141, 142, 3, 2, 2, 2, 142, 144, 3, 2, 2, 2, 143, 139, 3, 2, 2, 2, 143, 144, 3, 2, 2, 2, 144, 145, 3, 2, 2, 2, 145, 146, 5, 54, 28, 2, 146, 25, 3, 2, 2, 2, 147, 149, 5, 28, 15, 2, 148, 150, 5, 30, 16, 2, 149, 148, 3, 2, 2, 2, 150, 151, 3, 2, 2, 2, 151, 149, 3, 2, 2, 2, 151, 152, 3, 2, 2, 2, 152, 27, 3, 2, 2, 2, 153, 154, 5, 56, 29, 2, 154, 29, 3, 2, 2, 2, 155, 156, 7, 15, 2, 2, 156, 157, 5, 32, 17, 2, 157, 158, 7, 16, 2, 2, 158, 159, 5, 34, 18, 2, 159, 160, 7, 16, 2, 2, 160, 161, 5, 36, 19, 2, 161, 162, 7, 16, 2, 2, 162, 163, 5, 38, 20, 2, 163, 164, 7, 17, 2, 2, 164, 165, 7, 18, 2, 2, 165, 166, 5, 42, 22, 2, 166, 31, 3, 2, 2, 2, 167, 168, 9, 3, 2, 2, 168, 33, 3, 2, 2, 2, 169, 170, 9, 4, 2, 2, 170, 35, 3, 2, 2, 2, 171, 172, 5, 56, 29, 2, 172, 37, 3, 2, 2, 2, 173, 182, 7, 21, 2, 2, 174, 179, 5, 40, 21, 2, 175, 176, 7, 16, 2, 2, 176, 178, 5, 40, 21, 2, 177, 175, 3, 2, 2, 2, 178, 181, 3, 2, 2, 2, 179, 177, 3, 2, 2, 2, 179, 180, 3, 2, 2, 2, 180, 183, 3, 2, 2, 2, 181, 179, 3, 2, 2, 2, 182, 174, 3, 2, 2, 2, 182, 183, 3, 2, 2, 2, 183, 184, 3, 2, 2, 2, 184, 185, 7, 22, 2, 2, 185, 39, 3, 2, 2, 2, 186, 187, 5, 56, 29, 2, 187, 188, 7, 23, 2, 2, 188, 189, 7, 28, 2, 2, 189, 41, 3, 2, 2, 2, 190, 191, 5, 56, 29, 2, 191, 43, 3, 2, 2, 2, 192, 193, 7, 28, 2, 2, 193, 194, 7, 5, 2, 2, 194, 195, 5, 46, 24, 2, 195, 45, 3, 2, 2, 2, 196, 197, 7, 28, 2, 2, 197, 47, 3, 2, 2, 2, 198, 199, 7, 24, 2, 2, 199, 204, 5, 44, 23, 2, 200, 201, 7, 16, 2, 2, 201, 203, 5, 44, 23, 2, 202, 200, 3, 2, 2, 2, 203, 206, 3, 2, 2, 2, 204, 202, 3, 2, 2, 2, 204, 205, 3, 2, 2, 2, 205, 49, 3, 2, 2, 2, 206, 204, 3, 2, 2, 2, 207, 208, 7, 25, 2, 2, 208, 213, 5, 44, 23, 2, 209, 210, 7, 16, 2, 2, 210, 212, 5, 44, 23, 2, 211, 209, 3, 2, 2, 2, 212, 215, 3, 2, 2, 2, 213, 211, 3, 2, 2, 2, 213, 214, 3, 2, 2, 2, 214, 51, 3, 2, 2, 2, 215, 213, 3, 2, 2, 2, 216, 217, 5, 50, 26, 2, 217, 218, 7, 5, 2, 2, 218, 222, 3, 2, 2, 2, 219, 220, 5, 48, 25, 2, 220, 221, 7, 5, 2, 2, 221, 223, 3, 2, 2, 2, 222, 219, 3, 2, 2, 2, 222, 223, 3, 2, 2, 2, 223, 233, 3, 2, 2, 2, 224, 225, 5, 48, 25, 2, 225, 226, 7, 5, 2, 2, 226, 230, 3, 2, 2, 2, 227, 228, 5, 50, 26, 2, 228, 229, 7, 5, 2, 2, 229, 231, 3, 2, 2, 2, 230, 227, 3, 2, 2, 2, 230, 231, 3, 2, 2, 2, 231, 233, 3, 2, 2, 2, 232, 216, 3, 2, 2, 2, 232, 224, 3, 2, 2, 2, 232, 233, 3, 2, 2, 2, 233, 53, 3, 2, 2, 2, 234, 235, 5, 52, 27, 2, 235, 236, 5, 56, 29, 2, 236, 237, 7, 18, 2, 2, 237, 238, 5, 56, 29, 2, 238, 55, 3, 2, 2, 2, 239, 242, 5, 58, 30, 2, 240, 242, 5, 60, 31, 2, 241, 239, 3, 2, 2, 2, 241, 240, 3, 2, 2, 2, 242, 57, 3, 2, 2, 2, 243, 244, 7, 28, 2, 2, 244, 59, 3, 2, 2, 2, 245, 246, 7, 28, 2, 2, 246, 247, 7, 26, 2, 2, 247, 252, 5, 56, 29, 2, 248, 249, 7, 16, 2, 2, 249, 251, 5, 56, 29, 2, 250, 248, 3, 2, 2, 2, 251, 254, 3, 2, 2, 2, 252, 250, 3, 2, 2, 2, 252, 253, 3, 2, 2, 2, 253, 255, 3, 2, 2, 2, 254, 252, 3, 2, 2, 2, 255, 256, 7, 27, 2, 2, 256, 61, 3, 2, 2, 2, 25, 65, 72, 80, 92, 97, 102, 107, 112, 120, 127, 137, 141, 143, 151, 179, 182, 204, 213, 222, 230, 232, 241, 252]
\ No newline at end of file
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 31, 305, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 3, 2, 7, 2, 76, 10, 2, 12, 2, 14, 2, 79, 11, 2, 3, 2, 3, 2, 7, 2, 83, 10, 2, 12, 2, 14, 2, 86, 11, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 5, 3, 93, 10, 3, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 5, 6, 105, 10, 6, 3, 7, 3, 7, 3, 8, 5, 8, 110, 10, 8, 3, 8, 6, 8, 113, 10, 8, 13, 8, 14, 8, 114, 3, 8, 6, 8, 118, 10, 8, 13, 8, 14, 8, 119, 3, 8, 7, 8, 123, 10, 8, 12, 8, 14, 8, 126, 11, 8, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 5, 10, 133, 10, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 5, 11, 140, 10, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 5, 13, 150, 10, 13, 3, 13, 3, 13, 5, 13, 154, 10, 13, 5, 13, 156, 10, 13, 3, 13, 3, 13, 3, 14, 3, 14, 6, 14, 162, 10, 14, 13, 14, 14, 14, 163, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 18, 3, 18, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 190, 10, 20, 12, 20, 14, 20, 193, 11, 20, 5, 20, 195, 10, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 7, 25, 215, 10, 25, 12, 25, 14, 25, 218, 11, 25, 3, 26, 3, 26, 3, 26, 3, 26, 7, 26, 224, 10, 26, 12, 26, 14, 26, 227, 11, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 235, 10, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 243, 10, 27, 5, 27, 245, 10, 27, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 5, 29, 252, 10, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 5, 30, 262, 10, 30, 3, 31, 3, 31, 5, 31, 266, 10, 31, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 7, 33, 275, 10, 33, 12, 33, 14, 33, 278, 11, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 5, 34, 287, 10, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 7, 35, 294, 10, 35, 12, 35, 14, 35, 297, 11, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 2, 3, 68, 38, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62, 64, 66, 68, 70, 72, 2, 5, 3, 2, 6, 9, 4, 2, 14, 14, 28, 28, 3, 2, 19, 20, 2, 297, 2, 77, 3, 2, 2, 2, 4, 89, 3, 2, 2, 2, 6, 94, 3, 2, 2, 2, 8, 97, 3, 2, 2, 2, 10, 104, 3, 2, 2, 2, 12, 106, 3, 2, 2, 2, 14, 109, 3, 2, 2, 2, 16, 127, 3, 2, 2, 2, 18, 130, 3, 2, 2, 2, 20, 137, 3, 2, 2, 2, 22, 144, 3, 2, 2, 2, 24, 147, 3, 2, 2, 2, 26, 159, 3, 2, 2, 2, 28, 165, 3, 2, 2, 2, 30, 167, 3, 2, 2, 2, 32, 179, 3, 2, 2, 2, 34, 181, 3, 2, 2, 2, 36, 183, 3, 2, 2, 2, 38, 185, 3, 2, 2, 2, 40, 198, 3, 2, 2, 2, 42, 202, 3, 2, 2, 2, 44, 204, 3, 2, 2, 2, 46, 208, 3, 2, 2, 2, 48, 210, 3, 2, 2, 2, 50, 219, 3, 2, 2, 2, 52, 244, 3, 2, 2, 2, 54, 246, 3, 2, 2, 2, 56, 251, 3, 2, 2, 2, 58, 261, 3, 2, 2, 2, 60, 265, 3, 2, 2, 2, 62, 267, 3, 2, 2, 2, 64, 269, 3, 2, 2, 2, 66, 286, 3, 2, 2, 2, 68, 288, 3, 2, 2, 2, 70, 298, 3, 2, 2, 2, 72, 302, 3, 2, 2, 2, 74, 76, 5, 6, 4, 2, 75, 74, 3, 2, 2, 2, 76, 79, 3, 2, 2, 2, 77, 75, 3, 2, 2, 2, 77, 78, 3, 2, 2, 2, 78, 80, 3, 2, 2, 2, 79, 77, 3, 2, 2, 2, 80, 84, 5, 4, 3, 2, 81, 83, 5, 6, 4, 2, 82, 81, 3, 2, 2, 2, 83, 86, 3, 2, 2, 2, 84, 82, 3, 2, 2, 2, 84, 85, 3, 2, 2, 2, 85, 87, 3, 2, 2, 2, 86, 84, 3, 2, 2, 2, 87, 88, 7, 2, 2, 3, 88, 3, 3, 2, 2, 2, 89, 90, 7, 3, 2, 2, 90, 92, 5, 10, 6, 2, 91, 93, 5, 12, 7, 2, 92, 91, 3, 2, 2, 2, 92, 93, 3, 2, 2, 2, 93, 5, 3, 2, 2, 2, 94, 95, 5, 8, 5, 2, 95, 96, 5, 10, 6, 2, 96, 7, 3, 2, 2, 2, 97, 98, 7, 4, 2, 2, 98, 99, 7, 28, 2, 2, 99, 100, 7, 5, 2, 2, 100, 101, 5, 54, 28, 2, 101, 9, 3, 2, 2, 2, 102, 105, 5, 14, 8, 2, 103, 105, 5, 26, 14, 2, 104, 102, 3, 2, 2, 2, 104, 103, 3, 2, 2, 2, 105, 11, 3, 2, 2, 2, 106, 107, 9, 2, 2, 2, 107, 13, 3, 2, 2, 2, 108, 110, 5, 16, 9, 2, 109, 108, 3, 2, 2, 2, 109, 110, 3, 2, 2, 2, 110, 112, 3, 2, 2, 2, 111, 113, 5, 18, 10, 2, 112, 111, 3, 2, 2, 2, 113, 114, 3, 2, 2, 2, 114, 112, 3, 2, 2, 2, 114, 115, 3, 2, 2, 2, 115, 117, 3, 2, 2, 2, 116, 118, 5, 24, 13, 2, 117, 116, 3, 2, 2, 2, 118, 119, 3, 2, 2, 2, 119, 117, 3, 2, 2, 2, 119, 120, 3, 2, 2, 2, 120, 124, 3, 2, 2, 2, 121, 123, 5, 20, 11, 2, 122, 121, 3, 2, 2, 2, 123, 126, 3, 2, 2, 2, 124, 122, 3, 2, 2, 2, 124, 125, 3, 2, 2, 2, 125, 15, 3, 2, 2, 2, 126, 124, 3, 2, 2, 2, 127, 128, 7, 10, 2, 2, 128, 129, 7, 28, 2, 2, 129, 17, 3, 2, 2, 2, 130, 132, 7, 11, 2, 2, 131, 133, 7, 5, 2, 2, 132, 131, 3, 2, 2, 2, 132, 133, 3, 2, 2, 2, 133, 134, 3, 2, 2, 2, 134, 135, 5, 22, 12, 2, 135, 136, 5, 26, 14, 2, 136, 19, 3, 2, 2, 2, 137, 139, 7, 12, 2, 2, 138, 140, 7, 5, 2, 2, 139, 138, 3, 2, 2, 2, 139, 140, 3, 2, 2, 2, 140, 141, 3, 2, 2, 2, 141, 142, 5, 22, 12, 2, 142, 143, 5, 26, 14, 2, 143, 21, 3, 2, 2, 2, 144, 145, 7, 13, 2, 2, 145, 146, 5, 54, 28, 2, 146, 23, 3, 2, 2, 2, 147, 149, 7, 14, 2, 2, 148, 150, 7, 5, 2, 2, 149, 148, 3, 2, 2, 2, 149, 150, 3, 2, 2, 2, 150, 155, 3, 2, 2, 2, 151, 153, 7, 28, 2, 2, 152, 154, 7, 5, 2, 2, 153, 152, 3, 2, 2, 2, 153, 154, 3, 2, 2, 2, 154, 156, 3, 2, 2, 2, 155, 151, 3, 2, 2, 2, 155, 156, 3, 2, 2, 2, 156, 157, 3, 2, 2, 2, 157, 158, 5, 54, 28, 2, 158, 25, 3, 2, 2, 2, 159, 161, 5, 28, 15, 2, 160, 162, 5, 30, 16, 2, 161, 160, 3, 2, 2, 2, 162, 163, 3, 2, 2, 2, 163, 161, 3, 2, 2, 2, 163, 164, 3, 2, 2, 2, 164, 27, 3, 2, 2, 2, 165, 166, 5, 56, 29, 2, 166, 29, 3, 2, 2, 2, 167, 168, 7, 15, 2, 2, 168, 169, 5, 32, 17, 2, 169, 170, 7, 16, 2, 2, 170, 171, 5, 34, 18, 2, 171, 172, 7, 16, 2, 2, 172, 173, 5, 36, 19, 2, 173, 174, 7, 16, 2, 2, 174, 175, 5, 38, 20, 2, 175, 176, 7, 17, 2, 2, 176, 177, 7, 18, 2, 2, 177, 178, 5, 42, 22, 2, 178, 31, 3, 2, 2, 2, 179, 180, 9, 3, 2, 2, 180, 33, 3, 2, 2, 2, 181, 182, 9, 4, 2, 2, 182, 35, 3, 2, 2, 2, 183, 184, 5, 56, 29, 2, 184, 37, 3, 2, 2, 2, 185, 194, 7, 21, 2, 2, 186, 191, 5, 40, 21, 2, 187, 188, 7, 16, 2, 2, 188, 190, 5, 40, 21, 2, 189, 187, 3, 2, 2, 2, 190, 193, 3, 2, 2, 2, 191, 189, 3, 2, 2, 2, 191, 192, 3, 2, 2, 2, 192, 195, 3, 2, 2, 2, 193, 191, 3, 2, 2, 2, 194, 186, 3, 2, 2, 2, 194, 195, 3, 2, 2, 2, 195, 196, 3, 2, 2, 2, 196, 197, 7, 22, 2, 2, 197, 39, 3, 2, 2, 2, 198, 199, 5, 56, 29, 2, 199, 200, 7, 23, 2, 2, 200, 201, 7, 28, 2, 2, 201, 41, 3, 2, 2, 2, 202, 203, 5, 56, 29, 2, 203, 43, 3, 2, 2, 2, 204, 205, 7, 28, 2, 2, 205, 206, 7, 5, 2, 2, 206, 207, 5, 46, 24, 2, 207, 45, 3, 2, 2, 2, 208, 209, 7, 28, 2, 2, 209, 47, 3, 2, 2, 2, 210, 211, 7, 24, 2, 2, 211, 216, 5, 44, 23, 2, 212, 213, 7, 16, 2, 2, 213, 215, 5, 44, 23, 2, 214, 212, 3, 2, 2, 2, 215, 218, 3, 2, 2, 2, 216, 214, 3, 2, 2, 2, 216, 217, 3, 2, 2, 2, 217, 49, 3, 2, 2, 2, 218, 216, 3, 2, 2, 2, 219, 220, 7, 25, 2, 2, 220, 225, 5, 44, 23, 2, 221, 222, 7, 16, 2, 2, 222, 224, 5, 44, 23, 2, 223, 221, 3, 2, 2, 2, 224, 227, 3, 2, 2, 2, 225, 223, 3, 2, 2, 2, 225, 226, 3, 2, 2, 2, 226, 51, 3, 2, 2, 2, 227, 225, 3, 2, 2, 2, 228, 229, 5, 50, 26, 2, 229, 230, 7, 5, 2, 2, 230, 234, 3, 2, 2, 2, 231, 232, 5, 48, 25, 2, 232, 233, 7, 5, 2, 2, 233, 235, 3, 2, 2, 2, 234, 231, 3, 2, 2, 2, 234, 235, 3, 2, 2, 2, 235, 245, 3, 2, 2, 2, 236, 237, 5, 48, 25, 2, 237, 238, 7, 5, 2, 2, 238, 242, 3, 2, 2, 2, 239, 240, 5, 50, 26, 2, 240, 241, 7, 5, 2, 2, 241, 243, 3, 2, 2, 2, 242, 239, 3, 2, 2, 2, 242, 243, 3, 2, 2, 2, 243, 245, 3, 2, 2, 2, 244, 228, 3, 2, 2, 2, 244, 236, 3, 2, 2, 2, 244, 245, 3, 2, 2, 2, 245, 53, 3, 2, 2, 2, 246, 247, 5, 52, 27, 2, 247, 248, 5, 58, 30, 2, 248, 55, 3, 2, 2, 2, 249, 252, 5, 60, 31, 2, 250, 252, 5, 66, 34, 2, 251, 249, 3, 2, 2, 2, 251, 250, 3, 2, 2, 2, 252, 57, 3, 2, 2, 2, 253, 254, 5, 60, 31, 2, 254, 255, 7, 18, 2, 2, 255, 256, 5, 60, 31, 2, 256, 262, 3, 2, 2, 2, 257, 258, 5, 66, 34, 2, 258, 259, 7, 18, 2, 2, 259, 260, 5, 66, 34, 2, 260, 262, 3, 2, 2, 2, 261, 253, 3, 2, 2, 2, 261, 257, 3, 2, 2, 2, 262, 59, 3, 2, 2, 2, 263, 266, 5, 62, 32, 2, 264, 266, 5, 64, 33, 2, 265, 263, 3, 2, 2, 2, 265, 264, 3, 2, 2, 2, 266, 61, 3, 2, 2, 2, 267, 268, 7, 28, 2, 2, 268, 63, 3, 2, 2, 2, 269, 270, 7, 28, 2, 2, 270, 271, 7, 26, 2, 2, 271, 276, 5, 60, 31, 2, 272, 273, 7, 16, 2, 2, 273, 275, 5, 60, 31, 2, 274, 272, 3, 2, 2, 2, 275, 278, 3, 2, 2, 2, 276, 274, 3, 2, 2, 2, 276, 277, 3, 2, 2, 2, 277, 279, 3, 2, 2, 2, 278, 276, 3, 2, 2, 2, 279, 280, 7, 27, 2, 2, 280, 65, 3, 2, 2, 2, 281, 282, 5, 68, 35, 2, 282, 283, 5, 66, 34, 2, 283, 287, 3, 2, 2, 2, 284, 287, 5, 70, 36, 2, 285, 287, 5, 72, 37, 2, 286, 281, 3, 2, 2, 2, 286, 284, 3, 2, 2, 2, 286, 285, 3, 2, 2, 2, 287, 67, 3, 2, 2, 2, 288, 289, 8, 35, 1, 2, 289, 290, 5, 72, 37, 2, 290, 295, 3, 2, 2, 2, 291, 292, 12, 4, 2, 2, 292, 294, 5, 66, 34, 2, 293, 291, 3, 2, 2, 2, 294, 297, 3, 2, 2, 2, 295, 293, 3, 2, 2, 2, 295, 296, 3, 2, 2, 2, 296, 69, 3, 2, 2, 2, 297, 295, 3, 2, 2, 2, 298, 299, 7, 26, 2, 2, 299, 300, 5, 66, 34, 2, 300, 301, 7, 27, 2, 2, 301, 71, 3, 2, 2, 2, 302, 303, 7, 28, 2, 2, 303, 73, 3, 2, 2, 2, 29, 77, 84, 92, 104, 109, 114, 119, 124, 132, 139, 149, 153, 155, 163, 191, 194, 216, 225, 234, 242, 244, 251, 261, 265, 276, 286, 295]
\ No newline at end of file
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofBaseListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofBaseListener.cs
index 2528626..7f56e97 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofBaseListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofBaseListener.cs
@@ -372,6 +372,30 @@ public partial class ProofBaseListener : IProofListener {
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitMytree([NotNull] ProofParser.MytreeContext context) { }
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterEq_s([NotNull] ProofParser.Eq_sContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitEq_s([NotNull] ProofParser.Eq_sContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="ProofParser.treeLeaf"/>.
 	/// <para>The default implementation does nothing.</para>
 	/// </summary>
@@ -395,6 +419,54 @@ public partial class ProofBaseListener : IProofListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitTreeNode([NotNull] ProofParser.TreeNodeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTree([NotNull] ProofParser.FTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTree([NotNull] ProofParser.FTreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBracket([NotNull] ProofParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBracket([NotNull] ProofParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBez([NotNull] ProofParser.TreeBezContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBez([NotNull] ProofParser.TreeBezContext context) { }
 
 	/// <inheritdoc/>
 	/// <remarks>The default implementation does nothing.</remarks>
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofListener.cs
index ddd56b8..94d9572 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofListener.cs
@@ -312,6 +312,26 @@ public interface IProofListener : IParseTreeListener {
 	/// <param name="context">The parse tree.</param>
 	void ExitMytree([NotNull] ProofParser.MytreeContext context);
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterEq_s([NotNull] ProofParser.Eq_sContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitEq_s([NotNull] ProofParser.Eq_sContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterClassicTree([NotNull] ProofParser.ClassicTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitClassicTree([NotNull] ProofParser.ClassicTreeContext context);
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="ProofParser.treeLeaf"/>.
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
@@ -331,5 +351,45 @@ public interface IProofListener : IParseTreeListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	void ExitTreeNode([NotNull] ProofParser.TreeNodeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTree([NotNull] ProofParser.FTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTree([NotNull] ProofParser.FTreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBracket([NotNull] ProofParser.TreeBracketContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBracket([NotNull] ProofParser.TreeBracketContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="ProofParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBez([NotNull] ProofParser.TreeBezContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="ProofParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBez([NotNull] ProofParser.TreeBezContext context);
 }
 } // namespace Eingabeverwaltung.Parser.Proof_Parser
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofParser.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofParser.cs
index 78b1d1f..d1d302c 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofParser.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Proof_Parser/ProofParser.cs
@@ -49,13 +49,15 @@ public partial class ProofParser : Parser {
 		RULE_axiom = 15, RULE_direction = 16, RULE_termpart = 17, RULE_subst = 18, 
 		RULE_sub = 19, RULE_result_tree = 20, RULE_var = 21, RULE_sort = 22, RULE_forall = 23, 
 		RULE_fixed = 24, RULE_eq_var_def = 25, RULE_eq = 26, RULE_mytree = 27, 
-		RULE_treeLeaf = 28, RULE_treeNode = 29;
+		RULE_eq_s = 28, RULE_classicTree = 29, RULE_treeLeaf = 30, RULE_treeNode = 31, 
+		RULE_fTree = 32, RULE_fTreeBracketFree = 33, RULE_treeBracket = 34, RULE_treeBez = 35;
 	public static readonly string[] ruleNames = {
 		"proof", "mainProof", "lemma", "lemmaDef", "singleProof", "proof_end", 
 		"induction", "ind_var", "ind_basis", "ind_step", "ind_case", "ind_hyp", 
 		"transformation", "start_tree", "transformation_step", "axiom", "direction", 
 		"termpart", "subst", "sub", "result_tree", "var", "sort", "forall", "fixed", 
-		"eq_var_def", "eq", "mytree", "treeLeaf", "treeNode"
+		"eq_var_def", "eq", "mytree", "eq_s", "classicTree", "treeLeaf", "treeNode", 
+		"fTree", "fTreeBracketFree", "treeBracket", "treeBez"
 	};
 
 	private static readonly string[] _LiteralNames = {
@@ -135,34 +137,34 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 63;
+			State = 75;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__1) {
 				{
 				{
-				State = 60; lemma();
+				State = 72; lemma();
 				}
 				}
-				State = 65;
+				State = 77;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
-			State = 66; mainProof();
-			State = 70;
+			State = 78; mainProof();
+			State = 82;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__1) {
 				{
 				{
-				State = 67; lemma();
+				State = 79; lemma();
 				}
 				}
-				State = 72;
+				State = 84;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
-			State = 73; Match(Eof);
+			State = 85; Match(Eof);
 			}
 		}
 		catch (RecognitionException re) {
@@ -206,14 +208,14 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 75; Match(T__0);
-			State = 76; singleProof();
-			State = 78;
+			State = 87; Match(T__0);
+			State = 88; singleProof();
+			State = 90;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if ((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6))) != 0)) {
 				{
-				State = 77; proof_end();
+				State = 89; proof_end();
 				}
 			}
 
@@ -259,8 +261,8 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 80; lemmaDef();
-			State = 81; singleProof();
+			State = 92; lemmaDef();
+			State = 93; singleProof();
 			}
 		}
 		catch (RecognitionException re) {
@@ -301,10 +303,10 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 83; Match(T__1);
-			State = 84; Match(BEZ);
-			State = 85; Match(T__2);
-			State = 86; eq();
+			State = 95; Match(T__1);
+			State = 96; Match(BEZ);
+			State = 97; Match(T__2);
+			State = 98; eq();
 			}
 		}
 		catch (RecognitionException re) {
@@ -345,20 +347,21 @@ public partial class ProofParser : Parser {
 		SingleProofContext _localctx = new SingleProofContext(Context, State);
 		EnterRule(_localctx, 8, RULE_singleProof);
 		try {
-			State = 90;
+			State = 102;
 			ErrorHandler.Sync(this);
 			switch (TokenStream.LA(1)) {
 			case T__7:
 			case T__8:
 				EnterOuterAlt(_localctx, 1);
 				{
-				State = 88; induction();
+				State = 100; induction();
 				}
 				break;
+			case T__23:
 			case BEZ:
 				EnterOuterAlt(_localctx, 2);
 				{
-				State = 89; transformation();
+				State = 101; transformation();
 				}
 				break;
 			default:
@@ -400,7 +403,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 92;
+			State = 104;
 			_la = TokenStream.LA(1);
 			if ( !((((_la) & ~0x3f) == 0 && ((1L << _la) & ((1L << T__3) | (1L << T__4) | (1L << T__5) | (1L << T__6))) != 0)) ) {
 			ErrorHandler.RecoverInline(this);
@@ -467,51 +470,51 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 95;
+			State = 107;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__7) {
 				{
-				State = 94; ind_var();
+				State = 106; ind_var();
 				}
 			}
 
-			State = 98;
+			State = 110;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 97; ind_basis();
+				State = 109; ind_basis();
 				}
 				}
-				State = 100;
+				State = 112;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==T__8 );
-			State = 103;
+			State = 115;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 102; ind_hyp();
+				State = 114; ind_hyp();
 				}
 				}
-				State = 105;
+				State = 117;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==T__11 );
-			State = 110;
+			State = 122;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__9) {
 				{
 				{
-				State = 107; ind_step();
+				State = 119; ind_step();
 				}
 				}
-				State = 112;
+				State = 124;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -552,8 +555,8 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 113; Match(T__7);
-			State = 114; Match(BEZ);
+			State = 125; Match(T__7);
+			State = 126; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -597,18 +600,18 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 116; Match(T__8);
-			State = 118;
+			State = 128; Match(T__8);
+			State = 130;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__2) {
 				{
-				State = 117; Match(T__2);
+				State = 129; Match(T__2);
 				}
 			}
 
-			State = 120; ind_case();
-			State = 121; transformation();
+			State = 132; ind_case();
+			State = 133; transformation();
 			}
 		}
 		catch (RecognitionException re) {
@@ -652,18 +655,18 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 123; Match(T__9);
-			State = 125;
+			State = 135; Match(T__9);
+			State = 137;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__2) {
 				{
-				State = 124; Match(T__2);
+				State = 136; Match(T__2);
 				}
 			}
 
-			State = 127; ind_case();
-			State = 128; transformation();
+			State = 139; ind_case();
+			State = 140; transformation();
 			}
 		}
 		catch (RecognitionException re) {
@@ -703,8 +706,8 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 130; Match(T__10);
-			State = 131; eq();
+			State = 142; Match(T__10);
+			State = 143; eq();
 			}
 		}
 		catch (RecognitionException re) {
@@ -746,35 +749,35 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 133; Match(T__11);
-			State = 135;
+			State = 145; Match(T__11);
+			State = 147;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__2) {
 				{
-				State = 134; Match(T__2);
+				State = 146; Match(T__2);
 				}
 			}
 
-			State = 141;
+			State = 153;
 			ErrorHandler.Sync(this);
 			switch ( Interpreter.AdaptivePredict(TokenStream,12,Context) ) {
 			case 1:
 				{
-				State = 137; Match(BEZ);
-				State = 139;
+				State = 149; Match(BEZ);
+				State = 151;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				if (_la==T__2) {
 					{
-					State = 138; Match(T__2);
+					State = 150; Match(T__2);
 					}
 				}
 
 				}
 				break;
 			}
-			State = 143; eq();
+			State = 155; eq();
 			}
 		}
 		catch (RecognitionException re) {
@@ -821,17 +824,17 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 145; start_tree();
-			State = 147;
+			State = 157; start_tree();
+			State = 159;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 146; transformation_step();
+				State = 158; transformation_step();
 				}
 				}
-				State = 149;
+				State = 161;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==T__12 );
@@ -874,7 +877,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 151; mytree();
+			State = 163; mytree();
 			}
 		}
 		catch (RecognitionException re) {
@@ -926,17 +929,17 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 153; Match(T__12);
-			State = 154; axiom();
-			State = 155; Match(T__13);
-			State = 156; direction();
-			State = 157; Match(T__13);
-			State = 158; termpart();
-			State = 159; Match(T__13);
-			State = 160; subst();
-			State = 161; Match(T__14);
-			State = 162; Match(T__15);
-			State = 163; result_tree();
+			State = 165; Match(T__12);
+			State = 166; axiom();
+			State = 167; Match(T__13);
+			State = 168; direction();
+			State = 169; Match(T__13);
+			State = 170; termpart();
+			State = 171; Match(T__13);
+			State = 172; subst();
+			State = 173; Match(T__14);
+			State = 174; Match(T__15);
+			State = 175; result_tree();
 			}
 		}
 		catch (RecognitionException re) {
@@ -975,7 +978,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 165;
+			State = 177;
 			_la = TokenStream.LA(1);
 			if ( !(_la==T__11 || _la==BEZ) ) {
 			ErrorHandler.RecoverInline(this);
@@ -1021,7 +1024,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 167;
+			State = 179;
 			_la = TokenStream.LA(1);
 			if ( !(_la==T__16 || _la==T__17) ) {
 			ErrorHandler.RecoverInline(this);
@@ -1069,7 +1072,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 169; mytree();
+			State = 181; mytree();
 			}
 		}
 		catch (RecognitionException re) {
@@ -1113,31 +1116,31 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 171; Match(T__18);
-			State = 180;
+			State = 183; Match(T__18);
+			State = 192;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
-			if (_la==BEZ) {
+			if (_la==T__23 || _la==BEZ) {
 				{
-				State = 172; sub();
-				State = 177;
+				State = 184; sub();
+				State = 189;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				while (_la==T__13) {
 					{
 					{
-					State = 173; Match(T__13);
-					State = 174; sub();
+					State = 185; Match(T__13);
+					State = 186; sub();
 					}
 					}
-					State = 179;
+					State = 191;
 					ErrorHandler.Sync(this);
 					_la = TokenStream.LA(1);
 				}
 				}
 			}
 
-			State = 182; Match(T__19);
+			State = 194; Match(T__19);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1178,9 +1181,9 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 184; mytree();
-			State = 185; Match(T__20);
-			State = 186; Match(BEZ);
+			State = 196; mytree();
+			State = 197; Match(T__20);
+			State = 198; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1220,7 +1223,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 188; mytree();
+			State = 200; mytree();
 			}
 		}
 		catch (RecognitionException re) {
@@ -1261,9 +1264,9 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 190; Match(BEZ);
-			State = 191; Match(T__2);
-			State = 192; sort();
+			State = 202; Match(BEZ);
+			State = 203; Match(T__2);
+			State = 204; sort();
 			}
 		}
 		catch (RecognitionException re) {
@@ -1301,7 +1304,7 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 194; Match(BEZ);
+			State = 206; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1345,19 +1348,19 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 196; Match(T__21);
-			State = 197; var();
-			State = 202;
+			State = 208; Match(T__21);
+			State = 209; var();
+			State = 214;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__13) {
 				{
 				{
-				State = 198; Match(T__13);
-				State = 199; var();
+				State = 210; Match(T__13);
+				State = 211; var();
 				}
 				}
-				State = 204;
+				State = 216;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -1404,19 +1407,19 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 205; Match(T__22);
-			State = 206; var();
-			State = 211;
+			State = 217; Match(T__22);
+			State = 218; var();
+			State = 223;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__13) {
 				{
 				{
-				State = 207; Match(T__13);
-				State = 208; var();
+				State = 219; Match(T__13);
+				State = 220; var();
 				}
 				}
-				State = 213;
+				State = 225;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -1463,22 +1466,22 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 230;
+			State = 242;
 			ErrorHandler.Sync(this);
 			switch (TokenStream.LA(1)) {
 			case T__22:
 				{
 				{
-				State = 214; @fixed();
-				State = 215; Match(T__2);
+				State = 226; @fixed();
+				State = 227; Match(T__2);
 				}
-				State = 220;
+				State = 232;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				if (_la==T__21) {
 					{
-					State = 217; forall();
-					State = 218; Match(T__2);
+					State = 229; forall();
+					State = 230; Match(T__2);
 					}
 				}
 
@@ -1487,21 +1490,22 @@ public partial class ProofParser : Parser {
 			case T__21:
 				{
 				{
-				State = 222; forall();
-				State = 223; Match(T__2);
+				State = 234; forall();
+				State = 235; Match(T__2);
 				}
-				State = 228;
+				State = 240;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				if (_la==T__22) {
 					{
-					State = 225; @fixed();
-					State = 226; Match(T__2);
+					State = 237; @fixed();
+					State = 238; Match(T__2);
 					}
 				}
 
 				}
 				break;
+			case T__23:
 			case BEZ:
 				break;
 			default:
@@ -1524,11 +1528,8 @@ public partial class ProofParser : Parser {
 		public Eq_var_defContext eq_var_def() {
 			return GetRuleContext<Eq_var_defContext>(0);
 		}
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
-		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public Eq_sContext eq_s() {
+			return GetRuleContext<Eq_sContext>(0);
 		}
 		public EqContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1552,10 +1553,8 @@ public partial class ProofParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 232; eq_var_def();
-			State = 233; mytree();
-			State = 234; Match(T__15);
-			State = 235; mytree();
+			State = 244; eq_var_def();
+			State = 245; eq_s();
 			}
 		}
 		catch (RecognitionException re) {
@@ -1570,11 +1569,11 @@ public partial class ProofParser : Parser {
 	}
 
 	public partial class MytreeContext : ParserRuleContext {
-		public TreeLeafContext treeLeaf() {
-			return GetRuleContext<TreeLeafContext>(0);
+		public ClassicTreeContext classicTree() {
+			return GetRuleContext<ClassicTreeContext>(0);
 		}
-		public TreeNodeContext treeNode() {
-			return GetRuleContext<TreeNodeContext>(0);
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
 		}
 		public MytreeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1596,19 +1595,139 @@ public partial class ProofParser : Parser {
 		MytreeContext _localctx = new MytreeContext(Context, State);
 		EnterRule(_localctx, 54, RULE_mytree);
 		try {
-			State = 239;
+			State = 249;
 			ErrorHandler.Sync(this);
 			switch ( Interpreter.AdaptivePredict(TokenStream,21,Context) ) {
 			case 1:
 				EnterOuterAlt(_localctx, 1);
 				{
-				State = 237; treeLeaf();
+				State = 247; classicTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 248; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class Eq_sContext : ParserRuleContext {
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
+		}
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
+		}
+		public FTreeContext[] fTree() {
+			return GetRuleContexts<FTreeContext>();
+		}
+		public FTreeContext fTree(int i) {
+			return GetRuleContext<FTreeContext>(i);
+		}
+		public Eq_sContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_eq_s; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterEq_s(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitEq_s(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public Eq_sContext eq_s() {
+		Eq_sContext _localctx = new Eq_sContext(Context, State);
+		EnterRule(_localctx, 56, RULE_eq_s);
+		try {
+			State = 259;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,22,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 251; classicTree();
+				State = 252; Match(T__15);
+				State = 253; classicTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 255; fTree();
+				State = 256; Match(T__15);
+				State = 257; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class ClassicTreeContext : ParserRuleContext {
+		public TreeLeafContext treeLeaf() {
+			return GetRuleContext<TreeLeafContext>(0);
+		}
+		public TreeNodeContext treeNode() {
+			return GetRuleContext<TreeNodeContext>(0);
+		}
+		public ClassicTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_classicTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterClassicTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitClassicTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public ClassicTreeContext classicTree() {
+		ClassicTreeContext _localctx = new ClassicTreeContext(Context, State);
+		EnterRule(_localctx, 58, RULE_classicTree);
+		try {
+			State = 263;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,23,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 261; treeLeaf();
 				}
 				break;
 			case 2:
 				EnterOuterAlt(_localctx, 2);
 				{
-				State = 238; treeNode();
+				State = 262; treeNode();
 				}
 				break;
 			}
@@ -1644,11 +1763,11 @@ public partial class ProofParser : Parser {
 	[RuleVersion(0)]
 	public TreeLeafContext treeLeaf() {
 		TreeLeafContext _localctx = new TreeLeafContext(Context, State);
-		EnterRule(_localctx, 56, RULE_treeLeaf);
+		EnterRule(_localctx, 60, RULE_treeLeaf);
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 241; Match(BEZ);
+			State = 265; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1664,11 +1783,11 @@ public partial class ProofParser : Parser {
 
 	public partial class TreeNodeContext : ParserRuleContext {
 		public ITerminalNode BEZ() { return GetToken(ProofParser.BEZ, 0); }
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
 		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
 		}
 		public TreeNodeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1688,29 +1807,257 @@ public partial class ProofParser : Parser {
 	[RuleVersion(0)]
 	public TreeNodeContext treeNode() {
 		TreeNodeContext _localctx = new TreeNodeContext(Context, State);
-		EnterRule(_localctx, 58, RULE_treeNode);
+		EnterRule(_localctx, 62, RULE_treeNode);
 		int _la;
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 243; Match(BEZ);
-			State = 244; Match(T__23);
-			State = 245; mytree();
-			State = 250;
+			State = 267; Match(BEZ);
+			State = 268; Match(T__23);
+			State = 269; classicTree();
+			State = 274;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__13) {
 				{
 				{
-				State = 246; Match(T__13);
-				State = 247; mytree();
+				State = 270; Match(T__13);
+				State = 271; classicTree();
 				}
 				}
-				State = 252;
+				State = 276;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
-			State = 253; Match(T__24);
+			State = 277; Match(T__24);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class FTreeContext : ParserRuleContext {
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext treeBracket() {
+			return GetRuleContext<TreeBracketContext>(0);
+		}
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterFTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitFTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeContext fTree() {
+		FTreeContext _localctx = new FTreeContext(Context, State);
+		EnterRule(_localctx, 64, RULE_fTree);
+		try {
+			State = 284;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,25,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 279; fTreeBracketFree(0);
+				State = 280; fTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 282; treeBracket();
+				}
+				break;
+			case 3:
+				EnterOuterAlt(_localctx, 3);
+				{
+				State = 283; treeBez();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class FTreeBracketFreeContext : ParserRuleContext {
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public FTreeBracketFreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTreeBracketFree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterFTreeBracketFree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitFTreeBracketFree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeBracketFreeContext fTreeBracketFree() {
+		return fTreeBracketFree(0);
+	}
+
+	private FTreeBracketFreeContext fTreeBracketFree(int _p) {
+		ParserRuleContext _parentctx = Context;
+		int _parentState = State;
+		FTreeBracketFreeContext _localctx = new FTreeBracketFreeContext(Context, _parentState);
+		FTreeBracketFreeContext _prevctx = _localctx;
+		int _startState = 66;
+		EnterRecursionRule(_localctx, 66, RULE_fTreeBracketFree, _p);
+		try {
+			int _alt;
+			EnterOuterAlt(_localctx, 1);
+			{
+			{
+			State = 287; treeBez();
+			}
+			Context.Stop = TokenStream.LT(-1);
+			State = 293;
+			ErrorHandler.Sync(this);
+			_alt = Interpreter.AdaptivePredict(TokenStream,26,Context);
+			while ( _alt!=2 && _alt!=global::Antlr4.Runtime.Atn.ATN.INVALID_ALT_NUMBER ) {
+				if ( _alt==1 ) {
+					if ( ParseListeners!=null )
+						TriggerExitRuleEvent();
+					_prevctx = _localctx;
+					{
+					{
+					_localctx = new FTreeBracketFreeContext(_parentctx, _parentState);
+					PushNewRecursionContext(_localctx, _startState, RULE_fTreeBracketFree);
+					State = 289;
+					if (!(Precpred(Context, 2))) throw new FailedPredicateException(this, "Precpred(Context, 2)");
+					State = 290; fTree();
+					}
+					} 
+				}
+				State = 295;
+				ErrorHandler.Sync(this);
+				_alt = Interpreter.AdaptivePredict(TokenStream,26,Context);
+			}
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			UnrollRecursionContexts(_parentctx);
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBracketContext : ParserRuleContext {
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBracket; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterTreeBracket(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitTreeBracket(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBracketContext treeBracket() {
+		TreeBracketContext _localctx = new TreeBracketContext(Context, State);
+		EnterRule(_localctx, 68, RULE_treeBracket);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 296; Match(T__23);
+			State = 297; fTree();
+			State = 298; Match(T__24);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBezContext : ParserRuleContext {
+		public ITerminalNode BEZ() { return GetToken(ProofParser.BEZ, 0); }
+		public TreeBezContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBez; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.EnterTreeBez(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			IProofListener typedListener = listener as IProofListener;
+			if (typedListener != null) typedListener.ExitTreeBez(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBezContext treeBez() {
+		TreeBezContext _localctx = new TreeBezContext(Context, State);
+		EnterRule(_localctx, 70, RULE_treeBez);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 300; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1724,9 +2071,22 @@ public partial class ProofParser : Parser {
 		return _localctx;
 	}
 
+	public override bool Sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
+		switch (ruleIndex) {
+		case 33: return fTreeBracketFree_sempred((FTreeBracketFreeContext)_localctx, predIndex);
+		}
+		return true;
+	}
+	private bool fTreeBracketFree_sempred(FTreeBracketFreeContext _localctx, int predIndex) {
+		switch (predIndex) {
+		case 0: return Precpred(Context, 2);
+		}
+		return true;
+	}
+
 	private static char[] _serializedATN = {
 		'\x3', '\x608B', '\xA72A', '\x8133', '\xB9ED', '\x417C', '\x3BE7', '\x7786', 
-		'\x5964', '\x3', '\x1F', '\x102', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
+		'\x5964', '\x3', '\x1F', '\x131', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
 		'\t', '\x3', '\x4', '\x4', '\t', '\x4', '\x4', '\x5', '\t', '\x5', '\x4', 
 		'\x6', '\t', '\x6', '\x4', '\a', '\t', '\a', '\x4', '\b', '\t', '\b', 
 		'\x4', '\t', '\t', '\t', '\x4', '\n', '\t', '\n', '\x4', '\v', '\t', '\v', 
@@ -1737,199 +2097,237 @@ public partial class ProofParser : Parser {
 		'\x16', '\t', '\x16', '\x4', '\x17', '\t', '\x17', '\x4', '\x18', '\t', 
 		'\x18', '\x4', '\x19', '\t', '\x19', '\x4', '\x1A', '\t', '\x1A', '\x4', 
 		'\x1B', '\t', '\x1B', '\x4', '\x1C', '\t', '\x1C', '\x4', '\x1D', '\t', 
-		'\x1D', '\x4', '\x1E', '\t', '\x1E', '\x4', '\x1F', '\t', '\x1F', '\x3', 
-		'\x2', '\a', '\x2', '@', '\n', '\x2', '\f', '\x2', '\xE', '\x2', '\x43', 
-		'\v', '\x2', '\x3', '\x2', '\x3', '\x2', '\a', '\x2', 'G', '\n', '\x2', 
-		'\f', '\x2', '\xE', '\x2', 'J', '\v', '\x2', '\x3', '\x2', '\x3', '\x2', 
-		'\x3', '\x3', '\x3', '\x3', '\x3', '\x3', '\x5', '\x3', 'Q', '\n', '\x3', 
-		'\x3', '\x4', '\x3', '\x4', '\x3', '\x4', '\x3', '\x5', '\x3', '\x5', 
-		'\x3', '\x5', '\x3', '\x5', '\x3', '\x5', '\x3', '\x6', '\x3', '\x6', 
-		'\x5', '\x6', ']', '\n', '\x6', '\x3', '\a', '\x3', '\a', '\x3', '\b', 
-		'\x5', '\b', '\x62', '\n', '\b', '\x3', '\b', '\x6', '\b', '\x65', '\n', 
-		'\b', '\r', '\b', '\xE', '\b', '\x66', '\x3', '\b', '\x6', '\b', 'j', 
-		'\n', '\b', '\r', '\b', '\xE', '\b', 'k', '\x3', '\b', '\a', '\b', 'o', 
-		'\n', '\b', '\f', '\b', '\xE', '\b', 'r', '\v', '\b', '\x3', '\t', '\x3', 
-		'\t', '\x3', '\t', '\x3', '\n', '\x3', '\n', '\x5', '\n', 'y', '\n', '\n', 
-		'\x3', '\n', '\x3', '\n', '\x3', '\n', '\x3', '\v', '\x3', '\v', '\x5', 
-		'\v', '\x80', '\n', '\v', '\x3', '\v', '\x3', '\v', '\x3', '\v', '\x3', 
-		'\f', '\x3', '\f', '\x3', '\f', '\x3', '\r', '\x3', '\r', '\x5', '\r', 
-		'\x8A', '\n', '\r', '\x3', '\r', '\x3', '\r', '\x5', '\r', '\x8E', '\n', 
-		'\r', '\x5', '\r', '\x90', '\n', '\r', '\x3', '\r', '\x3', '\r', '\x3', 
-		'\xE', '\x3', '\xE', '\x6', '\xE', '\x96', '\n', '\xE', '\r', '\xE', '\xE', 
-		'\xE', '\x97', '\x3', '\xF', '\x3', '\xF', '\x3', '\x10', '\x3', '\x10', 
-		'\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', 
+		'\x1D', '\x4', '\x1E', '\t', '\x1E', '\x4', '\x1F', '\t', '\x1F', '\x4', 
+		' ', '\t', ' ', '\x4', '!', '\t', '!', '\x4', '\"', '\t', '\"', '\x4', 
+		'#', '\t', '#', '\x4', '$', '\t', '$', '\x4', '%', '\t', '%', '\x3', '\x2', 
+		'\a', '\x2', 'L', '\n', '\x2', '\f', '\x2', '\xE', '\x2', 'O', '\v', '\x2', 
+		'\x3', '\x2', '\x3', '\x2', '\a', '\x2', 'S', '\n', '\x2', '\f', '\x2', 
+		'\xE', '\x2', 'V', '\v', '\x2', '\x3', '\x2', '\x3', '\x2', '\x3', '\x3', 
+		'\x3', '\x3', '\x3', '\x3', '\x5', '\x3', ']', '\n', '\x3', '\x3', '\x4', 
+		'\x3', '\x4', '\x3', '\x4', '\x3', '\x5', '\x3', '\x5', '\x3', '\x5', 
+		'\x3', '\x5', '\x3', '\x5', '\x3', '\x6', '\x3', '\x6', '\x5', '\x6', 
+		'i', '\n', '\x6', '\x3', '\a', '\x3', '\a', '\x3', '\b', '\x5', '\b', 
+		'n', '\n', '\b', '\x3', '\b', '\x6', '\b', 'q', '\n', '\b', '\r', '\b', 
+		'\xE', '\b', 'r', '\x3', '\b', '\x6', '\b', 'v', '\n', '\b', '\r', '\b', 
+		'\xE', '\b', 'w', '\x3', '\b', '\a', '\b', '{', '\n', '\b', '\f', '\b', 
+		'\xE', '\b', '~', '\v', '\b', '\x3', '\t', '\x3', '\t', '\x3', '\t', '\x3', 
+		'\n', '\x3', '\n', '\x5', '\n', '\x85', '\n', '\n', '\x3', '\n', '\x3', 
+		'\n', '\x3', '\n', '\x3', '\v', '\x3', '\v', '\x5', '\v', '\x8C', '\n', 
+		'\v', '\x3', '\v', '\x3', '\v', '\x3', '\v', '\x3', '\f', '\x3', '\f', 
+		'\x3', '\f', '\x3', '\r', '\x3', '\r', '\x5', '\r', '\x96', '\n', '\r', 
+		'\x3', '\r', '\x3', '\r', '\x5', '\r', '\x9A', '\n', '\r', '\x5', '\r', 
+		'\x9C', '\n', '\r', '\x3', '\r', '\x3', '\r', '\x3', '\xE', '\x3', '\xE', 
+		'\x6', '\xE', '\xA2', '\n', '\xE', '\r', '\xE', '\xE', '\xE', '\xA3', 
+		'\x3', '\xF', '\x3', '\xF', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', 
 		'\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', 
-		'\x3', '\x11', '\x3', '\x11', '\x3', '\x12', '\x3', '\x12', '\x3', '\x13', 
-		'\x3', '\x13', '\x3', '\x14', '\x3', '\x14', '\x3', '\x14', '\x3', '\x14', 
-		'\a', '\x14', '\xB2', '\n', '\x14', '\f', '\x14', '\xE', '\x14', '\xB5', 
-		'\v', '\x14', '\x5', '\x14', '\xB7', '\n', '\x14', '\x3', '\x14', '\x3', 
-		'\x14', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', 
-		'\x16', '\x3', '\x16', '\x3', '\x17', '\x3', '\x17', '\x3', '\x17', '\x3', 
-		'\x17', '\x3', '\x18', '\x3', '\x18', '\x3', '\x19', '\x3', '\x19', '\x3', 
-		'\x19', '\x3', '\x19', '\a', '\x19', '\xCB', '\n', '\x19', '\f', '\x19', 
-		'\xE', '\x19', '\xCE', '\v', '\x19', '\x3', '\x1A', '\x3', '\x1A', '\x3', 
-		'\x1A', '\x3', '\x1A', '\a', '\x1A', '\xD4', '\n', '\x1A', '\f', '\x1A', 
-		'\xE', '\x1A', '\xD7', '\v', '\x1A', '\x3', '\x1B', '\x3', '\x1B', '\x3', 
-		'\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x5', '\x1B', '\xDF', 
-		'\n', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', 
-		'\x3', '\x1B', '\x3', '\x1B', '\x5', '\x1B', '\xE7', '\n', '\x1B', '\x5', 
-		'\x1B', '\xE9', '\n', '\x1B', '\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1C', 
-		'\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1D', '\x3', '\x1D', '\x5', '\x1D', 
-		'\xF2', '\n', '\x1D', '\x3', '\x1E', '\x3', '\x1E', '\x3', '\x1F', '\x3', 
-		'\x1F', '\x3', '\x1F', '\x3', '\x1F', '\x3', '\x1F', '\a', '\x1F', '\xFB', 
-		'\n', '\x1F', '\f', '\x1F', '\xE', '\x1F', '\xFE', '\v', '\x1F', '\x3', 
-		'\x1F', '\x3', '\x1F', '\x3', '\x1F', '\x2', '\x2', ' ', '\x2', '\x4', 
-		'\x6', '\b', '\n', '\f', '\xE', '\x10', '\x12', '\x14', '\x16', '\x18', 
-		'\x1A', '\x1C', '\x1E', ' ', '\"', '$', '&', '(', '*', ',', '.', '\x30', 
-		'\x32', '\x34', '\x36', '\x38', ':', '<', '\x2', '\x5', '\x3', '\x2', 
-		'\x6', '\t', '\x4', '\x2', '\xE', '\xE', '\x1C', '\x1C', '\x3', '\x2', 
-		'\x13', '\x14', '\x2', '\xFB', '\x2', '\x41', '\x3', '\x2', '\x2', '\x2', 
-		'\x4', 'M', '\x3', '\x2', '\x2', '\x2', '\x6', 'R', '\x3', '\x2', '\x2', 
-		'\x2', '\b', 'U', '\x3', '\x2', '\x2', '\x2', '\n', '\\', '\x3', '\x2', 
-		'\x2', '\x2', '\f', '^', '\x3', '\x2', '\x2', '\x2', '\xE', '\x61', '\x3', 
-		'\x2', '\x2', '\x2', '\x10', 's', '\x3', '\x2', '\x2', '\x2', '\x12', 
-		'v', '\x3', '\x2', '\x2', '\x2', '\x14', '}', '\x3', '\x2', '\x2', '\x2', 
-		'\x16', '\x84', '\x3', '\x2', '\x2', '\x2', '\x18', '\x87', '\x3', '\x2', 
-		'\x2', '\x2', '\x1A', '\x93', '\x3', '\x2', '\x2', '\x2', '\x1C', '\x99', 
-		'\x3', '\x2', '\x2', '\x2', '\x1E', '\x9B', '\x3', '\x2', '\x2', '\x2', 
-		' ', '\xA7', '\x3', '\x2', '\x2', '\x2', '\"', '\xA9', '\x3', '\x2', '\x2', 
-		'\x2', '$', '\xAB', '\x3', '\x2', '\x2', '\x2', '&', '\xAD', '\x3', '\x2', 
-		'\x2', '\x2', '(', '\xBA', '\x3', '\x2', '\x2', '\x2', '*', '\xBE', '\x3', 
-		'\x2', '\x2', '\x2', ',', '\xC0', '\x3', '\x2', '\x2', '\x2', '.', '\xC4', 
-		'\x3', '\x2', '\x2', '\x2', '\x30', '\xC6', '\x3', '\x2', '\x2', '\x2', 
-		'\x32', '\xCF', '\x3', '\x2', '\x2', '\x2', '\x34', '\xE8', '\x3', '\x2', 
-		'\x2', '\x2', '\x36', '\xEA', '\x3', '\x2', '\x2', '\x2', '\x38', '\xF1', 
-		'\x3', '\x2', '\x2', '\x2', ':', '\xF3', '\x3', '\x2', '\x2', '\x2', '<', 
-		'\xF5', '\x3', '\x2', '\x2', '\x2', '>', '@', '\x5', '\x6', '\x4', '\x2', 
-		'?', '>', '\x3', '\x2', '\x2', '\x2', '@', '\x43', '\x3', '\x2', '\x2', 
-		'\x2', '\x41', '?', '\x3', '\x2', '\x2', '\x2', '\x41', '\x42', '\x3', 
-		'\x2', '\x2', '\x2', '\x42', '\x44', '\x3', '\x2', '\x2', '\x2', '\x43', 
-		'\x41', '\x3', '\x2', '\x2', '\x2', '\x44', 'H', '\x5', '\x4', '\x3', 
-		'\x2', '\x45', 'G', '\x5', '\x6', '\x4', '\x2', '\x46', '\x45', '\x3', 
-		'\x2', '\x2', '\x2', 'G', 'J', '\x3', '\x2', '\x2', '\x2', 'H', '\x46', 
-		'\x3', '\x2', '\x2', '\x2', 'H', 'I', '\x3', '\x2', '\x2', '\x2', 'I', 
-		'K', '\x3', '\x2', '\x2', '\x2', 'J', 'H', '\x3', '\x2', '\x2', '\x2', 
-		'K', 'L', '\a', '\x2', '\x2', '\x3', 'L', '\x3', '\x3', '\x2', '\x2', 
-		'\x2', 'M', 'N', '\a', '\x3', '\x2', '\x2', 'N', 'P', '\x5', '\n', '\x6', 
-		'\x2', 'O', 'Q', '\x5', '\f', '\a', '\x2', 'P', 'O', '\x3', '\x2', '\x2', 
-		'\x2', 'P', 'Q', '\x3', '\x2', '\x2', '\x2', 'Q', '\x5', '\x3', '\x2', 
-		'\x2', '\x2', 'R', 'S', '\x5', '\b', '\x5', '\x2', 'S', 'T', '\x5', '\n', 
-		'\x6', '\x2', 'T', '\a', '\x3', '\x2', '\x2', '\x2', 'U', 'V', '\a', '\x4', 
-		'\x2', '\x2', 'V', 'W', '\a', '\x1C', '\x2', '\x2', 'W', 'X', '\a', '\x5', 
-		'\x2', '\x2', 'X', 'Y', '\x5', '\x36', '\x1C', '\x2', 'Y', '\t', '\x3', 
-		'\x2', '\x2', '\x2', 'Z', ']', '\x5', '\xE', '\b', '\x2', '[', ']', '\x5', 
-		'\x1A', '\xE', '\x2', '\\', 'Z', '\x3', '\x2', '\x2', '\x2', '\\', '[', 
-		'\x3', '\x2', '\x2', '\x2', ']', '\v', '\x3', '\x2', '\x2', '\x2', '^', 
-		'_', '\t', '\x2', '\x2', '\x2', '_', '\r', '\x3', '\x2', '\x2', '\x2', 
-		'`', '\x62', '\x5', '\x10', '\t', '\x2', '\x61', '`', '\x3', '\x2', '\x2', 
-		'\x2', '\x61', '\x62', '\x3', '\x2', '\x2', '\x2', '\x62', '\x64', '\x3', 
-		'\x2', '\x2', '\x2', '\x63', '\x65', '\x5', '\x12', '\n', '\x2', '\x64', 
-		'\x63', '\x3', '\x2', '\x2', '\x2', '\x65', '\x66', '\x3', '\x2', '\x2', 
-		'\x2', '\x66', '\x64', '\x3', '\x2', '\x2', '\x2', '\x66', 'g', '\x3', 
-		'\x2', '\x2', '\x2', 'g', 'i', '\x3', '\x2', '\x2', '\x2', 'h', 'j', '\x5', 
-		'\x18', '\r', '\x2', 'i', 'h', '\x3', '\x2', '\x2', '\x2', 'j', 'k', '\x3', 
-		'\x2', '\x2', '\x2', 'k', 'i', '\x3', '\x2', '\x2', '\x2', 'k', 'l', '\x3', 
-		'\x2', '\x2', '\x2', 'l', 'p', '\x3', '\x2', '\x2', '\x2', 'm', 'o', '\x5', 
-		'\x14', '\v', '\x2', 'n', 'm', '\x3', '\x2', '\x2', '\x2', 'o', 'r', '\x3', 
-		'\x2', '\x2', '\x2', 'p', 'n', '\x3', '\x2', '\x2', '\x2', 'p', 'q', '\x3', 
-		'\x2', '\x2', '\x2', 'q', '\xF', '\x3', '\x2', '\x2', '\x2', 'r', 'p', 
-		'\x3', '\x2', '\x2', '\x2', 's', 't', '\a', '\n', '\x2', '\x2', 't', 'u', 
-		'\a', '\x1C', '\x2', '\x2', 'u', '\x11', '\x3', '\x2', '\x2', '\x2', 'v', 
-		'x', '\a', '\v', '\x2', '\x2', 'w', 'y', '\a', '\x5', '\x2', '\x2', 'x', 
-		'w', '\x3', '\x2', '\x2', '\x2', 'x', 'y', '\x3', '\x2', '\x2', '\x2', 
-		'y', 'z', '\x3', '\x2', '\x2', '\x2', 'z', '{', '\x5', '\x16', '\f', '\x2', 
-		'{', '|', '\x5', '\x1A', '\xE', '\x2', '|', '\x13', '\x3', '\x2', '\x2', 
-		'\x2', '}', '\x7F', '\a', '\f', '\x2', '\x2', '~', '\x80', '\a', '\x5', 
-		'\x2', '\x2', '\x7F', '~', '\x3', '\x2', '\x2', '\x2', '\x7F', '\x80', 
-		'\x3', '\x2', '\x2', '\x2', '\x80', '\x81', '\x3', '\x2', '\x2', '\x2', 
-		'\x81', '\x82', '\x5', '\x16', '\f', '\x2', '\x82', '\x83', '\x5', '\x1A', 
-		'\xE', '\x2', '\x83', '\x15', '\x3', '\x2', '\x2', '\x2', '\x84', '\x85', 
-		'\a', '\r', '\x2', '\x2', '\x85', '\x86', '\x5', '\x36', '\x1C', '\x2', 
-		'\x86', '\x17', '\x3', '\x2', '\x2', '\x2', '\x87', '\x89', '\a', '\xE', 
-		'\x2', '\x2', '\x88', '\x8A', '\a', '\x5', '\x2', '\x2', '\x89', '\x88', 
-		'\x3', '\x2', '\x2', '\x2', '\x89', '\x8A', '\x3', '\x2', '\x2', '\x2', 
-		'\x8A', '\x8F', '\x3', '\x2', '\x2', '\x2', '\x8B', '\x8D', '\a', '\x1C', 
-		'\x2', '\x2', '\x8C', '\x8E', '\a', '\x5', '\x2', '\x2', '\x8D', '\x8C', 
-		'\x3', '\x2', '\x2', '\x2', '\x8D', '\x8E', '\x3', '\x2', '\x2', '\x2', 
-		'\x8E', '\x90', '\x3', '\x2', '\x2', '\x2', '\x8F', '\x8B', '\x3', '\x2', 
-		'\x2', '\x2', '\x8F', '\x90', '\x3', '\x2', '\x2', '\x2', '\x90', '\x91', 
-		'\x3', '\x2', '\x2', '\x2', '\x91', '\x92', '\x5', '\x36', '\x1C', '\x2', 
-		'\x92', '\x19', '\x3', '\x2', '\x2', '\x2', '\x93', '\x95', '\x5', '\x1C', 
-		'\xF', '\x2', '\x94', '\x96', '\x5', '\x1E', '\x10', '\x2', '\x95', '\x94', 
-		'\x3', '\x2', '\x2', '\x2', '\x96', '\x97', '\x3', '\x2', '\x2', '\x2', 
-		'\x97', '\x95', '\x3', '\x2', '\x2', '\x2', '\x97', '\x98', '\x3', '\x2', 
-		'\x2', '\x2', '\x98', '\x1B', '\x3', '\x2', '\x2', '\x2', '\x99', '\x9A', 
-		'\x5', '\x38', '\x1D', '\x2', '\x9A', '\x1D', '\x3', '\x2', '\x2', '\x2', 
-		'\x9B', '\x9C', '\a', '\xF', '\x2', '\x2', '\x9C', '\x9D', '\x5', ' ', 
-		'\x11', '\x2', '\x9D', '\x9E', '\a', '\x10', '\x2', '\x2', '\x9E', '\x9F', 
-		'\x5', '\"', '\x12', '\x2', '\x9F', '\xA0', '\a', '\x10', '\x2', '\x2', 
-		'\xA0', '\xA1', '\x5', '$', '\x13', '\x2', '\xA1', '\xA2', '\a', '\x10', 
-		'\x2', '\x2', '\xA2', '\xA3', '\x5', '&', '\x14', '\x2', '\xA3', '\xA4', 
-		'\a', '\x11', '\x2', '\x2', '\xA4', '\xA5', '\a', '\x12', '\x2', '\x2', 
-		'\xA5', '\xA6', '\x5', '*', '\x16', '\x2', '\xA6', '\x1F', '\x3', '\x2', 
-		'\x2', '\x2', '\xA7', '\xA8', '\t', '\x3', '\x2', '\x2', '\xA8', '!', 
-		'\x3', '\x2', '\x2', '\x2', '\xA9', '\xAA', '\t', '\x4', '\x2', '\x2', 
-		'\xAA', '#', '\x3', '\x2', '\x2', '\x2', '\xAB', '\xAC', '\x5', '\x38', 
-		'\x1D', '\x2', '\xAC', '%', '\x3', '\x2', '\x2', '\x2', '\xAD', '\xB6', 
-		'\a', '\x15', '\x2', '\x2', '\xAE', '\xB3', '\x5', '(', '\x15', '\x2', 
-		'\xAF', '\xB0', '\a', '\x10', '\x2', '\x2', '\xB0', '\xB2', '\x5', '(', 
-		'\x15', '\x2', '\xB1', '\xAF', '\x3', '\x2', '\x2', '\x2', '\xB2', '\xB5', 
-		'\x3', '\x2', '\x2', '\x2', '\xB3', '\xB1', '\x3', '\x2', '\x2', '\x2', 
-		'\xB3', '\xB4', '\x3', '\x2', '\x2', '\x2', '\xB4', '\xB7', '\x3', '\x2', 
-		'\x2', '\x2', '\xB5', '\xB3', '\x3', '\x2', '\x2', '\x2', '\xB6', '\xAE', 
-		'\x3', '\x2', '\x2', '\x2', '\xB6', '\xB7', '\x3', '\x2', '\x2', '\x2', 
-		'\xB7', '\xB8', '\x3', '\x2', '\x2', '\x2', '\xB8', '\xB9', '\a', '\x16', 
-		'\x2', '\x2', '\xB9', '\'', '\x3', '\x2', '\x2', '\x2', '\xBA', '\xBB', 
-		'\x5', '\x38', '\x1D', '\x2', '\xBB', '\xBC', '\a', '\x17', '\x2', '\x2', 
-		'\xBC', '\xBD', '\a', '\x1C', '\x2', '\x2', '\xBD', ')', '\x3', '\x2', 
-		'\x2', '\x2', '\xBE', '\xBF', '\x5', '\x38', '\x1D', '\x2', '\xBF', '+', 
-		'\x3', '\x2', '\x2', '\x2', '\xC0', '\xC1', '\a', '\x1C', '\x2', '\x2', 
-		'\xC1', '\xC2', '\a', '\x5', '\x2', '\x2', '\xC2', '\xC3', '\x5', '.', 
-		'\x18', '\x2', '\xC3', '-', '\x3', '\x2', '\x2', '\x2', '\xC4', '\xC5', 
-		'\a', '\x1C', '\x2', '\x2', '\xC5', '/', '\x3', '\x2', '\x2', '\x2', '\xC6', 
-		'\xC7', '\a', '\x18', '\x2', '\x2', '\xC7', '\xCC', '\x5', ',', '\x17', 
-		'\x2', '\xC8', '\xC9', '\a', '\x10', '\x2', '\x2', '\xC9', '\xCB', '\x5', 
-		',', '\x17', '\x2', '\xCA', '\xC8', '\x3', '\x2', '\x2', '\x2', '\xCB', 
-		'\xCE', '\x3', '\x2', '\x2', '\x2', '\xCC', '\xCA', '\x3', '\x2', '\x2', 
-		'\x2', '\xCC', '\xCD', '\x3', '\x2', '\x2', '\x2', '\xCD', '\x31', '\x3', 
-		'\x2', '\x2', '\x2', '\xCE', '\xCC', '\x3', '\x2', '\x2', '\x2', '\xCF', 
-		'\xD0', '\a', '\x19', '\x2', '\x2', '\xD0', '\xD5', '\x5', ',', '\x17', 
-		'\x2', '\xD1', '\xD2', '\a', '\x10', '\x2', '\x2', '\xD2', '\xD4', '\x5', 
-		',', '\x17', '\x2', '\xD3', '\xD1', '\x3', '\x2', '\x2', '\x2', '\xD4', 
-		'\xD7', '\x3', '\x2', '\x2', '\x2', '\xD5', '\xD3', '\x3', '\x2', '\x2', 
-		'\x2', '\xD5', '\xD6', '\x3', '\x2', '\x2', '\x2', '\xD6', '\x33', '\x3', 
-		'\x2', '\x2', '\x2', '\xD7', '\xD5', '\x3', '\x2', '\x2', '\x2', '\xD8', 
-		'\xD9', '\x5', '\x32', '\x1A', '\x2', '\xD9', '\xDA', '\a', '\x5', '\x2', 
-		'\x2', '\xDA', '\xDE', '\x3', '\x2', '\x2', '\x2', '\xDB', '\xDC', '\x5', 
-		'\x30', '\x19', '\x2', '\xDC', '\xDD', '\a', '\x5', '\x2', '\x2', '\xDD', 
-		'\xDF', '\x3', '\x2', '\x2', '\x2', '\xDE', '\xDB', '\x3', '\x2', '\x2', 
-		'\x2', '\xDE', '\xDF', '\x3', '\x2', '\x2', '\x2', '\xDF', '\xE9', '\x3', 
-		'\x2', '\x2', '\x2', '\xE0', '\xE1', '\x5', '\x30', '\x19', '\x2', '\xE1', 
-		'\xE2', '\a', '\x5', '\x2', '\x2', '\xE2', '\xE6', '\x3', '\x2', '\x2', 
-		'\x2', '\xE3', '\xE4', '\x5', '\x32', '\x1A', '\x2', '\xE4', '\xE5', '\a', 
-		'\x5', '\x2', '\x2', '\xE5', '\xE7', '\x3', '\x2', '\x2', '\x2', '\xE6', 
-		'\xE3', '\x3', '\x2', '\x2', '\x2', '\xE6', '\xE7', '\x3', '\x2', '\x2', 
-		'\x2', '\xE7', '\xE9', '\x3', '\x2', '\x2', '\x2', '\xE8', '\xD8', '\x3', 
-		'\x2', '\x2', '\x2', '\xE8', '\xE0', '\x3', '\x2', '\x2', '\x2', '\xE8', 
-		'\xE9', '\x3', '\x2', '\x2', '\x2', '\xE9', '\x35', '\x3', '\x2', '\x2', 
-		'\x2', '\xEA', '\xEB', '\x5', '\x34', '\x1B', '\x2', '\xEB', '\xEC', '\x5', 
-		'\x38', '\x1D', '\x2', '\xEC', '\xED', '\a', '\x12', '\x2', '\x2', '\xED', 
-		'\xEE', '\x5', '\x38', '\x1D', '\x2', '\xEE', '\x37', '\x3', '\x2', '\x2', 
-		'\x2', '\xEF', '\xF2', '\x5', ':', '\x1E', '\x2', '\xF0', '\xF2', '\x5', 
-		'<', '\x1F', '\x2', '\xF1', '\xEF', '\x3', '\x2', '\x2', '\x2', '\xF1', 
-		'\xF0', '\x3', '\x2', '\x2', '\x2', '\xF2', '\x39', '\x3', '\x2', '\x2', 
-		'\x2', '\xF3', '\xF4', '\a', '\x1C', '\x2', '\x2', '\xF4', ';', '\x3', 
-		'\x2', '\x2', '\x2', '\xF5', '\xF6', '\a', '\x1C', '\x2', '\x2', '\xF6', 
-		'\xF7', '\a', '\x1A', '\x2', '\x2', '\xF7', '\xFC', '\x5', '\x38', '\x1D', 
-		'\x2', '\xF8', '\xF9', '\a', '\x10', '\x2', '\x2', '\xF9', '\xFB', '\x5', 
-		'\x38', '\x1D', '\x2', '\xFA', '\xF8', '\x3', '\x2', '\x2', '\x2', '\xFB', 
-		'\xFE', '\x3', '\x2', '\x2', '\x2', '\xFC', '\xFA', '\x3', '\x2', '\x2', 
-		'\x2', '\xFC', '\xFD', '\x3', '\x2', '\x2', '\x2', '\xFD', '\xFF', '\x3', 
-		'\x2', '\x2', '\x2', '\xFE', '\xFC', '\x3', '\x2', '\x2', '\x2', '\xFF', 
-		'\x100', '\a', '\x1B', '\x2', '\x2', '\x100', '=', '\x3', '\x2', '\x2', 
-		'\x2', '\x19', '\x41', 'H', 'P', '\\', '\x61', '\x66', 'k', 'p', 'x', 
-		'\x7F', '\x89', '\x8D', '\x8F', '\x97', '\xB3', '\xB6', '\xCC', '\xD5', 
-		'\xDE', '\xE6', '\xE8', '\xF1', '\xFC',
+		'\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x11', 
+		'\x3', '\x11', '\x3', '\x12', '\x3', '\x12', '\x3', '\x13', '\x3', '\x13', 
+		'\x3', '\x14', '\x3', '\x14', '\x3', '\x14', '\x3', '\x14', '\a', '\x14', 
+		'\xBE', '\n', '\x14', '\f', '\x14', '\xE', '\x14', '\xC1', '\v', '\x14', 
+		'\x5', '\x14', '\xC3', '\n', '\x14', '\x3', '\x14', '\x3', '\x14', '\x3', 
+		'\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x16', '\x3', 
+		'\x16', '\x3', '\x17', '\x3', '\x17', '\x3', '\x17', '\x3', '\x17', '\x3', 
+		'\x18', '\x3', '\x18', '\x3', '\x19', '\x3', '\x19', '\x3', '\x19', '\x3', 
+		'\x19', '\a', '\x19', '\xD7', '\n', '\x19', '\f', '\x19', '\xE', '\x19', 
+		'\xDA', '\v', '\x19', '\x3', '\x1A', '\x3', '\x1A', '\x3', '\x1A', '\x3', 
+		'\x1A', '\a', '\x1A', '\xE0', '\n', '\x1A', '\f', '\x1A', '\xE', '\x1A', 
+		'\xE3', '\v', '\x1A', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', 
+		'\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x5', '\x1B', '\xEB', '\n', '\x1B', 
+		'\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', '\x3', '\x1B', 
+		'\x3', '\x1B', '\x5', '\x1B', '\xF3', '\n', '\x1B', '\x5', '\x1B', '\xF5', 
+		'\n', '\x1B', '\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1D', 
+		'\x3', '\x1D', '\x5', '\x1D', '\xFC', '\n', '\x1D', '\x3', '\x1E', '\x3', 
+		'\x1E', '\x3', '\x1E', '\x3', '\x1E', '\x3', '\x1E', '\x3', '\x1E', '\x3', 
+		'\x1E', '\x3', '\x1E', '\x5', '\x1E', '\x106', '\n', '\x1E', '\x3', '\x1F', 
+		'\x3', '\x1F', '\x5', '\x1F', '\x10A', '\n', '\x1F', '\x3', ' ', '\x3', 
+		' ', '\x3', '!', '\x3', '!', '\x3', '!', '\x3', '!', '\x3', '!', '\a', 
+		'!', '\x113', '\n', '!', '\f', '!', '\xE', '!', '\x116', '\v', '!', '\x3', 
+		'!', '\x3', '!', '\x3', '\"', '\x3', '\"', '\x3', '\"', '\x3', '\"', '\x3', 
+		'\"', '\x5', '\"', '\x11F', '\n', '\"', '\x3', '#', '\x3', '#', '\x3', 
+		'#', '\x3', '#', '\x3', '#', '\a', '#', '\x126', '\n', '#', '\f', '#', 
+		'\xE', '#', '\x129', '\v', '#', '\x3', '$', '\x3', '$', '\x3', '$', '\x3', 
+		'$', '\x3', '%', '\x3', '%', '\x3', '%', '\x2', '\x3', '\x44', '&', '\x2', 
+		'\x4', '\x6', '\b', '\n', '\f', '\xE', '\x10', '\x12', '\x14', '\x16', 
+		'\x18', '\x1A', '\x1C', '\x1E', ' ', '\"', '$', '&', '(', '*', ',', '.', 
+		'\x30', '\x32', '\x34', '\x36', '\x38', ':', '<', '>', '@', '\x42', '\x44', 
+		'\x46', 'H', '\x2', '\x5', '\x3', '\x2', '\x6', '\t', '\x4', '\x2', '\xE', 
+		'\xE', '\x1C', '\x1C', '\x3', '\x2', '\x13', '\x14', '\x2', '\x129', '\x2', 
+		'M', '\x3', '\x2', '\x2', '\x2', '\x4', 'Y', '\x3', '\x2', '\x2', '\x2', 
+		'\x6', '^', '\x3', '\x2', '\x2', '\x2', '\b', '\x61', '\x3', '\x2', '\x2', 
+		'\x2', '\n', 'h', '\x3', '\x2', '\x2', '\x2', '\f', 'j', '\x3', '\x2', 
+		'\x2', '\x2', '\xE', 'm', '\x3', '\x2', '\x2', '\x2', '\x10', '\x7F', 
+		'\x3', '\x2', '\x2', '\x2', '\x12', '\x82', '\x3', '\x2', '\x2', '\x2', 
+		'\x14', '\x89', '\x3', '\x2', '\x2', '\x2', '\x16', '\x90', '\x3', '\x2', 
+		'\x2', '\x2', '\x18', '\x93', '\x3', '\x2', '\x2', '\x2', '\x1A', '\x9F', 
+		'\x3', '\x2', '\x2', '\x2', '\x1C', '\xA5', '\x3', '\x2', '\x2', '\x2', 
+		'\x1E', '\xA7', '\x3', '\x2', '\x2', '\x2', ' ', '\xB3', '\x3', '\x2', 
+		'\x2', '\x2', '\"', '\xB5', '\x3', '\x2', '\x2', '\x2', '$', '\xB7', '\x3', 
+		'\x2', '\x2', '\x2', '&', '\xB9', '\x3', '\x2', '\x2', '\x2', '(', '\xC6', 
+		'\x3', '\x2', '\x2', '\x2', '*', '\xCA', '\x3', '\x2', '\x2', '\x2', ',', 
+		'\xCC', '\x3', '\x2', '\x2', '\x2', '.', '\xD0', '\x3', '\x2', '\x2', 
+		'\x2', '\x30', '\xD2', '\x3', '\x2', '\x2', '\x2', '\x32', '\xDB', '\x3', 
+		'\x2', '\x2', '\x2', '\x34', '\xF4', '\x3', '\x2', '\x2', '\x2', '\x36', 
+		'\xF6', '\x3', '\x2', '\x2', '\x2', '\x38', '\xFB', '\x3', '\x2', '\x2', 
+		'\x2', ':', '\x105', '\x3', '\x2', '\x2', '\x2', '<', '\x109', '\x3', 
+		'\x2', '\x2', '\x2', '>', '\x10B', '\x3', '\x2', '\x2', '\x2', '@', '\x10D', 
+		'\x3', '\x2', '\x2', '\x2', '\x42', '\x11E', '\x3', '\x2', '\x2', '\x2', 
+		'\x44', '\x120', '\x3', '\x2', '\x2', '\x2', '\x46', '\x12A', '\x3', '\x2', 
+		'\x2', '\x2', 'H', '\x12E', '\x3', '\x2', '\x2', '\x2', 'J', 'L', '\x5', 
+		'\x6', '\x4', '\x2', 'K', 'J', '\x3', '\x2', '\x2', '\x2', 'L', 'O', '\x3', 
+		'\x2', '\x2', '\x2', 'M', 'K', '\x3', '\x2', '\x2', '\x2', 'M', 'N', '\x3', 
+		'\x2', '\x2', '\x2', 'N', 'P', '\x3', '\x2', '\x2', '\x2', 'O', 'M', '\x3', 
+		'\x2', '\x2', '\x2', 'P', 'T', '\x5', '\x4', '\x3', '\x2', 'Q', 'S', '\x5', 
+		'\x6', '\x4', '\x2', 'R', 'Q', '\x3', '\x2', '\x2', '\x2', 'S', 'V', '\x3', 
+		'\x2', '\x2', '\x2', 'T', 'R', '\x3', '\x2', '\x2', '\x2', 'T', 'U', '\x3', 
+		'\x2', '\x2', '\x2', 'U', 'W', '\x3', '\x2', '\x2', '\x2', 'V', 'T', '\x3', 
+		'\x2', '\x2', '\x2', 'W', 'X', '\a', '\x2', '\x2', '\x3', 'X', '\x3', 
+		'\x3', '\x2', '\x2', '\x2', 'Y', 'Z', '\a', '\x3', '\x2', '\x2', 'Z', 
+		'\\', '\x5', '\n', '\x6', '\x2', '[', ']', '\x5', '\f', '\a', '\x2', '\\', 
+		'[', '\x3', '\x2', '\x2', '\x2', '\\', ']', '\x3', '\x2', '\x2', '\x2', 
+		']', '\x5', '\x3', '\x2', '\x2', '\x2', '^', '_', '\x5', '\b', '\x5', 
+		'\x2', '_', '`', '\x5', '\n', '\x6', '\x2', '`', '\a', '\x3', '\x2', '\x2', 
+		'\x2', '\x61', '\x62', '\a', '\x4', '\x2', '\x2', '\x62', '\x63', '\a', 
+		'\x1C', '\x2', '\x2', '\x63', '\x64', '\a', '\x5', '\x2', '\x2', '\x64', 
+		'\x65', '\x5', '\x36', '\x1C', '\x2', '\x65', '\t', '\x3', '\x2', '\x2', 
+		'\x2', '\x66', 'i', '\x5', '\xE', '\b', '\x2', 'g', 'i', '\x5', '\x1A', 
+		'\xE', '\x2', 'h', '\x66', '\x3', '\x2', '\x2', '\x2', 'h', 'g', '\x3', 
+		'\x2', '\x2', '\x2', 'i', '\v', '\x3', '\x2', '\x2', '\x2', 'j', 'k', 
+		'\t', '\x2', '\x2', '\x2', 'k', '\r', '\x3', '\x2', '\x2', '\x2', 'l', 
+		'n', '\x5', '\x10', '\t', '\x2', 'm', 'l', '\x3', '\x2', '\x2', '\x2', 
+		'm', 'n', '\x3', '\x2', '\x2', '\x2', 'n', 'p', '\x3', '\x2', '\x2', '\x2', 
+		'o', 'q', '\x5', '\x12', '\n', '\x2', 'p', 'o', '\x3', '\x2', '\x2', '\x2', 
+		'q', 'r', '\x3', '\x2', '\x2', '\x2', 'r', 'p', '\x3', '\x2', '\x2', '\x2', 
+		'r', 's', '\x3', '\x2', '\x2', '\x2', 's', 'u', '\x3', '\x2', '\x2', '\x2', 
+		't', 'v', '\x5', '\x18', '\r', '\x2', 'u', 't', '\x3', '\x2', '\x2', '\x2', 
+		'v', 'w', '\x3', '\x2', '\x2', '\x2', 'w', 'u', '\x3', '\x2', '\x2', '\x2', 
+		'w', 'x', '\x3', '\x2', '\x2', '\x2', 'x', '|', '\x3', '\x2', '\x2', '\x2', 
+		'y', '{', '\x5', '\x14', '\v', '\x2', 'z', 'y', '\x3', '\x2', '\x2', '\x2', 
+		'{', '~', '\x3', '\x2', '\x2', '\x2', '|', 'z', '\x3', '\x2', '\x2', '\x2', 
+		'|', '}', '\x3', '\x2', '\x2', '\x2', '}', '\xF', '\x3', '\x2', '\x2', 
+		'\x2', '~', '|', '\x3', '\x2', '\x2', '\x2', '\x7F', '\x80', '\a', '\n', 
+		'\x2', '\x2', '\x80', '\x81', '\a', '\x1C', '\x2', '\x2', '\x81', '\x11', 
+		'\x3', '\x2', '\x2', '\x2', '\x82', '\x84', '\a', '\v', '\x2', '\x2', 
+		'\x83', '\x85', '\a', '\x5', '\x2', '\x2', '\x84', '\x83', '\x3', '\x2', 
+		'\x2', '\x2', '\x84', '\x85', '\x3', '\x2', '\x2', '\x2', '\x85', '\x86', 
+		'\x3', '\x2', '\x2', '\x2', '\x86', '\x87', '\x5', '\x16', '\f', '\x2', 
+		'\x87', '\x88', '\x5', '\x1A', '\xE', '\x2', '\x88', '\x13', '\x3', '\x2', 
+		'\x2', '\x2', '\x89', '\x8B', '\a', '\f', '\x2', '\x2', '\x8A', '\x8C', 
+		'\a', '\x5', '\x2', '\x2', '\x8B', '\x8A', '\x3', '\x2', '\x2', '\x2', 
+		'\x8B', '\x8C', '\x3', '\x2', '\x2', '\x2', '\x8C', '\x8D', '\x3', '\x2', 
+		'\x2', '\x2', '\x8D', '\x8E', '\x5', '\x16', '\f', '\x2', '\x8E', '\x8F', 
+		'\x5', '\x1A', '\xE', '\x2', '\x8F', '\x15', '\x3', '\x2', '\x2', '\x2', 
+		'\x90', '\x91', '\a', '\r', '\x2', '\x2', '\x91', '\x92', '\x5', '\x36', 
+		'\x1C', '\x2', '\x92', '\x17', '\x3', '\x2', '\x2', '\x2', '\x93', '\x95', 
+		'\a', '\xE', '\x2', '\x2', '\x94', '\x96', '\a', '\x5', '\x2', '\x2', 
+		'\x95', '\x94', '\x3', '\x2', '\x2', '\x2', '\x95', '\x96', '\x3', '\x2', 
+		'\x2', '\x2', '\x96', '\x9B', '\x3', '\x2', '\x2', '\x2', '\x97', '\x99', 
+		'\a', '\x1C', '\x2', '\x2', '\x98', '\x9A', '\a', '\x5', '\x2', '\x2', 
+		'\x99', '\x98', '\x3', '\x2', '\x2', '\x2', '\x99', '\x9A', '\x3', '\x2', 
+		'\x2', '\x2', '\x9A', '\x9C', '\x3', '\x2', '\x2', '\x2', '\x9B', '\x97', 
+		'\x3', '\x2', '\x2', '\x2', '\x9B', '\x9C', '\x3', '\x2', '\x2', '\x2', 
+		'\x9C', '\x9D', '\x3', '\x2', '\x2', '\x2', '\x9D', '\x9E', '\x5', '\x36', 
+		'\x1C', '\x2', '\x9E', '\x19', '\x3', '\x2', '\x2', '\x2', '\x9F', '\xA1', 
+		'\x5', '\x1C', '\xF', '\x2', '\xA0', '\xA2', '\x5', '\x1E', '\x10', '\x2', 
+		'\xA1', '\xA0', '\x3', '\x2', '\x2', '\x2', '\xA2', '\xA3', '\x3', '\x2', 
+		'\x2', '\x2', '\xA3', '\xA1', '\x3', '\x2', '\x2', '\x2', '\xA3', '\xA4', 
+		'\x3', '\x2', '\x2', '\x2', '\xA4', '\x1B', '\x3', '\x2', '\x2', '\x2', 
+		'\xA5', '\xA6', '\x5', '\x38', '\x1D', '\x2', '\xA6', '\x1D', '\x3', '\x2', 
+		'\x2', '\x2', '\xA7', '\xA8', '\a', '\xF', '\x2', '\x2', '\xA8', '\xA9', 
+		'\x5', ' ', '\x11', '\x2', '\xA9', '\xAA', '\a', '\x10', '\x2', '\x2', 
+		'\xAA', '\xAB', '\x5', '\"', '\x12', '\x2', '\xAB', '\xAC', '\a', '\x10', 
+		'\x2', '\x2', '\xAC', '\xAD', '\x5', '$', '\x13', '\x2', '\xAD', '\xAE', 
+		'\a', '\x10', '\x2', '\x2', '\xAE', '\xAF', '\x5', '&', '\x14', '\x2', 
+		'\xAF', '\xB0', '\a', '\x11', '\x2', '\x2', '\xB0', '\xB1', '\a', '\x12', 
+		'\x2', '\x2', '\xB1', '\xB2', '\x5', '*', '\x16', '\x2', '\xB2', '\x1F', 
+		'\x3', '\x2', '\x2', '\x2', '\xB3', '\xB4', '\t', '\x3', '\x2', '\x2', 
+		'\xB4', '!', '\x3', '\x2', '\x2', '\x2', '\xB5', '\xB6', '\t', '\x4', 
+		'\x2', '\x2', '\xB6', '#', '\x3', '\x2', '\x2', '\x2', '\xB7', '\xB8', 
+		'\x5', '\x38', '\x1D', '\x2', '\xB8', '%', '\x3', '\x2', '\x2', '\x2', 
+		'\xB9', '\xC2', '\a', '\x15', '\x2', '\x2', '\xBA', '\xBF', '\x5', '(', 
+		'\x15', '\x2', '\xBB', '\xBC', '\a', '\x10', '\x2', '\x2', '\xBC', '\xBE', 
+		'\x5', '(', '\x15', '\x2', '\xBD', '\xBB', '\x3', '\x2', '\x2', '\x2', 
+		'\xBE', '\xC1', '\x3', '\x2', '\x2', '\x2', '\xBF', '\xBD', '\x3', '\x2', 
+		'\x2', '\x2', '\xBF', '\xC0', '\x3', '\x2', '\x2', '\x2', '\xC0', '\xC3', 
+		'\x3', '\x2', '\x2', '\x2', '\xC1', '\xBF', '\x3', '\x2', '\x2', '\x2', 
+		'\xC2', '\xBA', '\x3', '\x2', '\x2', '\x2', '\xC2', '\xC3', '\x3', '\x2', 
+		'\x2', '\x2', '\xC3', '\xC4', '\x3', '\x2', '\x2', '\x2', '\xC4', '\xC5', 
+		'\a', '\x16', '\x2', '\x2', '\xC5', '\'', '\x3', '\x2', '\x2', '\x2', 
+		'\xC6', '\xC7', '\x5', '\x38', '\x1D', '\x2', '\xC7', '\xC8', '\a', '\x17', 
+		'\x2', '\x2', '\xC8', '\xC9', '\a', '\x1C', '\x2', '\x2', '\xC9', ')', 
+		'\x3', '\x2', '\x2', '\x2', '\xCA', '\xCB', '\x5', '\x38', '\x1D', '\x2', 
+		'\xCB', '+', '\x3', '\x2', '\x2', '\x2', '\xCC', '\xCD', '\a', '\x1C', 
+		'\x2', '\x2', '\xCD', '\xCE', '\a', '\x5', '\x2', '\x2', '\xCE', '\xCF', 
+		'\x5', '.', '\x18', '\x2', '\xCF', '-', '\x3', '\x2', '\x2', '\x2', '\xD0', 
+		'\xD1', '\a', '\x1C', '\x2', '\x2', '\xD1', '/', '\x3', '\x2', '\x2', 
+		'\x2', '\xD2', '\xD3', '\a', '\x18', '\x2', '\x2', '\xD3', '\xD8', '\x5', 
+		',', '\x17', '\x2', '\xD4', '\xD5', '\a', '\x10', '\x2', '\x2', '\xD5', 
+		'\xD7', '\x5', ',', '\x17', '\x2', '\xD6', '\xD4', '\x3', '\x2', '\x2', 
+		'\x2', '\xD7', '\xDA', '\x3', '\x2', '\x2', '\x2', '\xD8', '\xD6', '\x3', 
+		'\x2', '\x2', '\x2', '\xD8', '\xD9', '\x3', '\x2', '\x2', '\x2', '\xD9', 
+		'\x31', '\x3', '\x2', '\x2', '\x2', '\xDA', '\xD8', '\x3', '\x2', '\x2', 
+		'\x2', '\xDB', '\xDC', '\a', '\x19', '\x2', '\x2', '\xDC', '\xE1', '\x5', 
+		',', '\x17', '\x2', '\xDD', '\xDE', '\a', '\x10', '\x2', '\x2', '\xDE', 
+		'\xE0', '\x5', ',', '\x17', '\x2', '\xDF', '\xDD', '\x3', '\x2', '\x2', 
+		'\x2', '\xE0', '\xE3', '\x3', '\x2', '\x2', '\x2', '\xE1', '\xDF', '\x3', 
+		'\x2', '\x2', '\x2', '\xE1', '\xE2', '\x3', '\x2', '\x2', '\x2', '\xE2', 
+		'\x33', '\x3', '\x2', '\x2', '\x2', '\xE3', '\xE1', '\x3', '\x2', '\x2', 
+		'\x2', '\xE4', '\xE5', '\x5', '\x32', '\x1A', '\x2', '\xE5', '\xE6', '\a', 
+		'\x5', '\x2', '\x2', '\xE6', '\xEA', '\x3', '\x2', '\x2', '\x2', '\xE7', 
+		'\xE8', '\x5', '\x30', '\x19', '\x2', '\xE8', '\xE9', '\a', '\x5', '\x2', 
+		'\x2', '\xE9', '\xEB', '\x3', '\x2', '\x2', '\x2', '\xEA', '\xE7', '\x3', 
+		'\x2', '\x2', '\x2', '\xEA', '\xEB', '\x3', '\x2', '\x2', '\x2', '\xEB', 
+		'\xF5', '\x3', '\x2', '\x2', '\x2', '\xEC', '\xED', '\x5', '\x30', '\x19', 
+		'\x2', '\xED', '\xEE', '\a', '\x5', '\x2', '\x2', '\xEE', '\xF2', '\x3', 
+		'\x2', '\x2', '\x2', '\xEF', '\xF0', '\x5', '\x32', '\x1A', '\x2', '\xF0', 
+		'\xF1', '\a', '\x5', '\x2', '\x2', '\xF1', '\xF3', '\x3', '\x2', '\x2', 
+		'\x2', '\xF2', '\xEF', '\x3', '\x2', '\x2', '\x2', '\xF2', '\xF3', '\x3', 
+		'\x2', '\x2', '\x2', '\xF3', '\xF5', '\x3', '\x2', '\x2', '\x2', '\xF4', 
+		'\xE4', '\x3', '\x2', '\x2', '\x2', '\xF4', '\xEC', '\x3', '\x2', '\x2', 
+		'\x2', '\xF4', '\xF5', '\x3', '\x2', '\x2', '\x2', '\xF5', '\x35', '\x3', 
+		'\x2', '\x2', '\x2', '\xF6', '\xF7', '\x5', '\x34', '\x1B', '\x2', '\xF7', 
+		'\xF8', '\x5', ':', '\x1E', '\x2', '\xF8', '\x37', '\x3', '\x2', '\x2', 
+		'\x2', '\xF9', '\xFC', '\x5', '<', '\x1F', '\x2', '\xFA', '\xFC', '\x5', 
+		'\x42', '\"', '\x2', '\xFB', '\xF9', '\x3', '\x2', '\x2', '\x2', '\xFB', 
+		'\xFA', '\x3', '\x2', '\x2', '\x2', '\xFC', '\x39', '\x3', '\x2', '\x2', 
+		'\x2', '\xFD', '\xFE', '\x5', '<', '\x1F', '\x2', '\xFE', '\xFF', '\a', 
+		'\x12', '\x2', '\x2', '\xFF', '\x100', '\x5', '<', '\x1F', '\x2', '\x100', 
+		'\x106', '\x3', '\x2', '\x2', '\x2', '\x101', '\x102', '\x5', '\x42', 
+		'\"', '\x2', '\x102', '\x103', '\a', '\x12', '\x2', '\x2', '\x103', '\x104', 
+		'\x5', '\x42', '\"', '\x2', '\x104', '\x106', '\x3', '\x2', '\x2', '\x2', 
+		'\x105', '\xFD', '\x3', '\x2', '\x2', '\x2', '\x105', '\x101', '\x3', 
+		'\x2', '\x2', '\x2', '\x106', ';', '\x3', '\x2', '\x2', '\x2', '\x107', 
+		'\x10A', '\x5', '>', ' ', '\x2', '\x108', '\x10A', '\x5', '@', '!', '\x2', 
+		'\x109', '\x107', '\x3', '\x2', '\x2', '\x2', '\x109', '\x108', '\x3', 
+		'\x2', '\x2', '\x2', '\x10A', '=', '\x3', '\x2', '\x2', '\x2', '\x10B', 
+		'\x10C', '\a', '\x1C', '\x2', '\x2', '\x10C', '?', '\x3', '\x2', '\x2', 
+		'\x2', '\x10D', '\x10E', '\a', '\x1C', '\x2', '\x2', '\x10E', '\x10F', 
+		'\a', '\x1A', '\x2', '\x2', '\x10F', '\x114', '\x5', '<', '\x1F', '\x2', 
+		'\x110', '\x111', '\a', '\x10', '\x2', '\x2', '\x111', '\x113', '\x5', 
+		'<', '\x1F', '\x2', '\x112', '\x110', '\x3', '\x2', '\x2', '\x2', '\x113', 
+		'\x116', '\x3', '\x2', '\x2', '\x2', '\x114', '\x112', '\x3', '\x2', '\x2', 
+		'\x2', '\x114', '\x115', '\x3', '\x2', '\x2', '\x2', '\x115', '\x117', 
+		'\x3', '\x2', '\x2', '\x2', '\x116', '\x114', '\x3', '\x2', '\x2', '\x2', 
+		'\x117', '\x118', '\a', '\x1B', '\x2', '\x2', '\x118', '\x41', '\x3', 
+		'\x2', '\x2', '\x2', '\x119', '\x11A', '\x5', '\x44', '#', '\x2', '\x11A', 
+		'\x11B', '\x5', '\x42', '\"', '\x2', '\x11B', '\x11F', '\x3', '\x2', '\x2', 
+		'\x2', '\x11C', '\x11F', '\x5', '\x46', '$', '\x2', '\x11D', '\x11F', 
+		'\x5', 'H', '%', '\x2', '\x11E', '\x119', '\x3', '\x2', '\x2', '\x2', 
+		'\x11E', '\x11C', '\x3', '\x2', '\x2', '\x2', '\x11E', '\x11D', '\x3', 
+		'\x2', '\x2', '\x2', '\x11F', '\x43', '\x3', '\x2', '\x2', '\x2', '\x120', 
+		'\x121', '\b', '#', '\x1', '\x2', '\x121', '\x122', '\x5', 'H', '%', '\x2', 
+		'\x122', '\x127', '\x3', '\x2', '\x2', '\x2', '\x123', '\x124', '\f', 
+		'\x4', '\x2', '\x2', '\x124', '\x126', '\x5', '\x42', '\"', '\x2', '\x125', 
+		'\x123', '\x3', '\x2', '\x2', '\x2', '\x126', '\x129', '\x3', '\x2', '\x2', 
+		'\x2', '\x127', '\x125', '\x3', '\x2', '\x2', '\x2', '\x127', '\x128', 
+		'\x3', '\x2', '\x2', '\x2', '\x128', '\x45', '\x3', '\x2', '\x2', '\x2', 
+		'\x129', '\x127', '\x3', '\x2', '\x2', '\x2', '\x12A', '\x12B', '\a', 
+		'\x1A', '\x2', '\x2', '\x12B', '\x12C', '\x5', '\x42', '\"', '\x2', '\x12C', 
+		'\x12D', '\a', '\x1B', '\x2', '\x2', '\x12D', 'G', '\x3', '\x2', '\x2', 
+		'\x2', '\x12E', '\x12F', '\a', '\x1C', '\x2', '\x2', '\x12F', 'I', '\x3', 
+		'\x2', '\x2', '\x2', '\x1D', 'M', 'T', '\\', 'h', 'm', 'r', 'w', '|', 
+		'\x84', '\x8B', '\x95', '\x99', '\x9B', '\xA3', '\xBF', '\xC2', '\xD8', 
+		'\xE1', '\xEA', '\xF2', '\xF4', '\xFB', '\x105', '\x109', '\x114', '\x11E', 
+		'\x127',
 	};
 
 	public static readonly ATN _ATN =
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Listener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Listener.cs
index 96dd6e1..f58ba4c 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Listener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Listener.cs
@@ -5,6 +5,7 @@ using Eingabeverwaltung.Metamodell;
 using Eingabeverwaltung.Parser.Task_Parser;
 using System.Collections.Generic;
 using System;
+using Eingabeverwaltung.Parser.ADT_Parser;
 
 namespace Eingabeverwaltung.Parser
 {
@@ -165,19 +166,40 @@ namespace Eingabeverwaltung.Parser
         public void ExitVar([NotNull] TaskParser.VarContext context)
             => LH.ExitVar(context.BEZ().GetText(), context.sort().BEZ().GetText());
         public void EnterSort([NotNull] TaskParser.SortContext context) { }
-        public void ExitSort([NotNull] TaskParser.SortContext context) { }        
+        public void ExitSort([NotNull] TaskParser.SortContext context) { }
 
         // Trees
         public void EnterMytree([NotNull] TaskParser.MytreeContext context) { }
         public void ExitMytree([NotNull] TaskParser.MytreeContext context) { }
 
+        public void EnterEq_s([NotNull] TaskParser.Eq_sContext context) { }
+        public void ExitEq_s([NotNull] TaskParser.Eq_sContext context) { }
+        // classic Trees
+        public void EnterClassicTree([NotNull] TaskParser.ClassicTreeContext context) { }
+        public void ExitClassicTree([NotNull] TaskParser.ClassicTreeContext context) { }
+
         public void EnterTreeLeaf([NotNull] TaskParser.TreeLeafContext context) { }
-        public void ExitTreeLeaf([NotNull] TaskParser.TreeLeafContext context) 
+        public void ExitTreeLeaf([NotNull] TaskParser.TreeLeafContext context)
             => LH.ExitTreeLeaf(context.BEZ().GetText());
-        
+
         public void EnterTreeNode([NotNull] TaskParser.TreeNodeContext context) { }
-        public void ExitTreeNode([NotNull] TaskParser.TreeNodeContext context) 
+        public void ExitTreeNode([NotNull] TaskParser.TreeNodeContext context)
             => LH.ExitTreeNode(context.BEZ().GetText(), context.ChildCount, context.GetText());
+        // function Trees
+
+        public void EnterFTree([NotNull] TaskParser.FTreeContext context) => throw new NotImplementedException();
+        public void ExitFTree([NotNull] TaskParser.FTreeContext context) => throw new NotImplementedException();
+
+
+        public void EnterFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+        public void ExitFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBracket([NotNull] TaskParser.TreeBracketContext context) => throw new NotImplementedException();
+        public void ExitTreeBracket([NotNull] TaskParser.TreeBracketContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBez([NotNull] TaskParser.TreeBezContext context) => throw new NotImplementedException();
+
+        public void ExitTreeBez([NotNull] TaskParser.TreeBezContext context) => throw new NotImplementedException();
 
         // useless Interface requirements
         public void EnterEveryRule(ParserRuleContext ctx) { }
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/Task.interp b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/Task.interp
index d1929eb..b87a428 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/Task.interp
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/Task.interp
@@ -69,9 +69,15 @@ fixed
 eq_var_def
 eq
 mytree
+eq_s
+classicTree
 treeLeaf
 treeNode
+fTree
+fTreeBracketFree
+treeBracket
+treeBez
 
 
 atn:
-[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 23, 190, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 3, 2, 3, 2, 5, 2, 53, 10, 2, 3, 2, 5, 2, 56, 10, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 5, 3, 63, 10, 3, 3, 3, 3, 3, 3, 4, 3, 4, 6, 4, 69, 10, 4, 13, 4, 14, 4, 70, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 77, 10, 5, 3, 5, 3, 5, 3, 6, 3, 6, 6, 6, 83, 10, 6, 13, 6, 14, 6, 84, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 5, 9, 96, 10, 9, 3, 10, 6, 10, 99, 10, 10, 13, 10, 14, 10, 100, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 7, 19, 135, 10, 19, 12, 19, 14, 19, 138, 11, 19, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 144, 10, 20, 12, 20, 14, 20, 147, 11, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 5, 21, 155, 10, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 5, 21, 163, 10, 21, 5, 21, 165, 10, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 5, 23, 174, 10, 23, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 7, 25, 183, 10, 25, 12, 25, 14, 25, 186, 11, 25, 3, 25, 3, 25, 3, 25, 2, 2, 26, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 2, 3, 3, 2, 10, 11, 2, 181, 2, 50, 3, 2, 2, 2, 4, 59, 3, 2, 2, 2, 6, 66, 3, 2, 2, 2, 8, 72, 3, 2, 2, 2, 10, 80, 3, 2, 2, 2, 12, 86, 3, 2, 2, 2, 14, 90, 3, 2, 2, 2, 16, 95, 3, 2, 2, 2, 18, 98, 3, 2, 2, 2, 20, 104, 3, 2, 2, 2, 22, 108, 3, 2, 2, 2, 24, 111, 3, 2, 2, 2, 26, 115, 3, 2, 2, 2, 28, 118, 3, 2, 2, 2, 30, 121, 3, 2, 2, 2, 32, 124, 3, 2, 2, 2, 34, 128, 3, 2, 2, 2, 36, 130, 3, 2, 2, 2, 38, 139, 3, 2, 2, 2, 40, 164, 3, 2, 2, 2, 42, 166, 3, 2, 2, 2, 44, 173, 3, 2, 2, 2, 46, 175, 3, 2, 2, 2, 48, 177, 3, 2, 2, 2, 50, 52, 5, 4, 3, 2, 51, 53, 5, 6, 4, 2, 52, 51, 3, 2, 2, 2, 52, 53, 3, 2, 2, 2, 53, 55, 3, 2, 2, 2, 54, 56, 5, 10, 6, 2, 55, 54, 3, 2, 2, 2, 55, 56, 3, 2, 2, 2, 56, 57, 3, 2, 2, 2, 57, 58, 7, 2, 2, 3, 58, 3, 3, 2, 2, 2, 59, 60, 7, 3, 2, 2, 60, 62, 5, 42, 22, 2, 61, 63, 5, 14, 8, 2, 62, 61, 3, 2, 2, 2, 62, 63, 3, 2, 2, 2, 63, 64, 3, 2, 2, 2, 64, 65, 5, 16, 9, 2, 65, 5, 3, 2, 2, 2, 66, 68, 7, 4, 2, 2, 67, 69, 5, 8, 5, 2, 68, 67, 3, 2, 2, 2, 69, 70, 3, 2, 2, 2, 70, 68, 3, 2, 2, 2, 70, 71, 3, 2, 2, 2, 71, 7, 3, 2, 2, 2, 72, 73, 7, 20, 2, 2, 73, 74, 7, 5, 2, 2, 74, 76, 5, 42, 22, 2, 75, 77, 5, 14, 8, 2, 76, 75, 3, 2, 2, 2, 76, 77, 3, 2, 2, 2, 77, 78, 3, 2, 2, 2, 78, 79, 5, 16, 9, 2, 79, 9, 3, 2, 2, 2, 80, 82, 7, 6, 2, 2, 81, 83, 5, 12, 7, 2, 82, 81, 3, 2, 2, 2, 83, 84, 3, 2, 2, 2, 84, 82, 3, 2, 2, 2, 84, 85, 3, 2, 2, 2, 85, 11, 3, 2, 2, 2, 86, 87, 7, 20, 2, 2, 87, 88, 7, 5, 2, 2, 88, 89, 5, 42, 22, 2, 89, 13, 3, 2, 2, 2, 90, 91, 7, 7, 2, 2, 91, 92, 7, 20, 2, 2, 92, 15, 3, 2, 2, 2, 93, 96, 5, 24, 13, 2, 94, 96, 5, 18, 10, 2, 95, 93, 3, 2, 2, 2, 95, 94, 3, 2, 2, 2, 96, 17, 3, 2, 2, 2, 97, 99, 5, 20, 11, 2, 98, 97, 3, 2, 2, 2, 99, 100, 3, 2, 2, 2, 100, 98, 3, 2, 2, 2, 100, 101, 3, 2, 2, 2, 101, 102, 3, 2, 2, 2, 102, 103, 5, 22, 12, 2, 103, 19, 3, 2, 2, 2, 104, 105, 7, 8, 2, 2, 105, 106, 7, 20, 2, 2, 106, 107, 5, 24, 13, 2, 107, 21, 3, 2, 2, 2, 108, 109, 7, 9, 2, 2, 109, 110, 5, 26, 14, 2, 110, 23, 3, 2, 2, 2, 111, 112, 5, 26, 14, 2, 112, 113, 5, 28, 15, 2, 113, 114, 5, 30, 16, 2, 114, 25, 3, 2, 2, 2, 115, 116, 9, 2, 2, 2, 116, 117, 7, 21, 2, 2, 117, 27, 3, 2, 2, 2, 118, 119, 7, 12, 2, 2, 119, 120, 7, 21, 2, 2, 120, 29, 3, 2, 2, 2, 121, 122, 7, 13, 2, 2, 122, 123, 7, 21, 2, 2, 123, 31, 3, 2, 2, 2, 124, 125, 7, 20, 2, 2, 125, 126, 7, 5, 2, 2, 126, 127, 5, 34, 18, 2, 127, 33, 3, 2, 2, 2, 128, 129, 7, 20, 2, 2, 129, 35, 3, 2, 2, 2, 130, 131, 7, 14, 2, 2, 131, 136, 5, 32, 17, 2, 132, 133, 7, 15, 2, 2, 133, 135, 5, 32, 17, 2, 134, 132, 3, 2, 2, 2, 135, 138, 3, 2, 2, 2, 136, 134, 3, 2, 2, 2, 136, 137, 3, 2, 2, 2, 137, 37, 3, 2, 2, 2, 138, 136, 3, 2, 2, 2, 139, 140, 7, 16, 2, 2, 140, 145, 5, 32, 17, 2, 141, 142, 7, 15, 2, 2, 142, 144, 5, 32, 17, 2, 143, 141, 3, 2, 2, 2, 144, 147, 3, 2, 2, 2, 145, 143, 3, 2, 2, 2, 145, 146, 3, 2, 2, 2, 146, 39, 3, 2, 2, 2, 147, 145, 3, 2, 2, 2, 148, 149, 5, 38, 20, 2, 149, 150, 7, 5, 2, 2, 150, 154, 3, 2, 2, 2, 151, 152, 5, 36, 19, 2, 152, 153, 7, 5, 2, 2, 153, 155, 3, 2, 2, 2, 154, 151, 3, 2, 2, 2, 154, 155, 3, 2, 2, 2, 155, 165, 3, 2, 2, 2, 156, 157, 5, 36, 19, 2, 157, 158, 7, 5, 2, 2, 158, 162, 3, 2, 2, 2, 159, 160, 5, 38, 20, 2, 160, 161, 7, 5, 2, 2, 161, 163, 3, 2, 2, 2, 162, 159, 3, 2, 2, 2, 162, 163, 3, 2, 2, 2, 163, 165, 3, 2, 2, 2, 164, 148, 3, 2, 2, 2, 164, 156, 3, 2, 2, 2, 164, 165, 3, 2, 2, 2, 165, 41, 3, 2, 2, 2, 166, 167, 5, 40, 21, 2, 167, 168, 5, 44, 23, 2, 168, 169, 7, 17, 2, 2, 169, 170, 5, 44, 23, 2, 170, 43, 3, 2, 2, 2, 171, 174, 5, 46, 24, 2, 172, 174, 5, 48, 25, 2, 173, 171, 3, 2, 2, 2, 173, 172, 3, 2, 2, 2, 174, 45, 3, 2, 2, 2, 175, 176, 7, 20, 2, 2, 176, 47, 3, 2, 2, 2, 177, 178, 7, 20, 2, 2, 178, 179, 7, 18, 2, 2, 179, 184, 5, 44, 23, 2, 180, 181, 7, 15, 2, 2, 181, 183, 5, 44, 23, 2, 182, 180, 3, 2, 2, 2, 183, 186, 3, 2, 2, 2, 184, 182, 3, 2, 2, 2, 184, 185, 3, 2, 2, 2, 185, 187, 3, 2, 2, 2, 186, 184, 3, 2, 2, 2, 187, 188, 7, 19, 2, 2, 188, 49, 3, 2, 2, 2, 17, 52, 55, 62, 70, 76, 84, 95, 100, 136, 145, 154, 162, 164, 173, 184]
\ No newline at end of file
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 23, 237, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 3, 2, 3, 2, 5, 2, 65, 10, 2, 3, 2, 5, 2, 68, 10, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 5, 3, 75, 10, 3, 3, 3, 3, 3, 3, 4, 3, 4, 6, 4, 81, 10, 4, 13, 4, 14, 4, 82, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 89, 10, 5, 3, 5, 3, 5, 3, 6, 3, 6, 6, 6, 95, 10, 6, 13, 6, 14, 6, 96, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 5, 9, 108, 10, 9, 3, 10, 6, 10, 111, 10, 10, 13, 10, 14, 10, 112, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 7, 19, 147, 10, 19, 12, 19, 14, 19, 150, 11, 19, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 156, 10, 20, 12, 20, 14, 20, 159, 11, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 5, 21, 167, 10, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 5, 21, 175, 10, 21, 5, 21, 177, 10, 21, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 5, 23, 184, 10, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 5, 24, 194, 10, 24, 3, 25, 3, 25, 5, 25, 198, 10, 25, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 7, 27, 207, 10, 27, 12, 27, 14, 27, 210, 11, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 5, 28, 219, 10, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 7, 29, 226, 10, 29, 12, 29, 14, 29, 229, 11, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 2, 3, 56, 32, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 2, 3, 3, 2, 10, 11, 2, 227, 2, 62, 3, 2, 2, 2, 4, 71, 3, 2, 2, 2, 6, 78, 3, 2, 2, 2, 8, 84, 3, 2, 2, 2, 10, 92, 3, 2, 2, 2, 12, 98, 3, 2, 2, 2, 14, 102, 3, 2, 2, 2, 16, 107, 3, 2, 2, 2, 18, 110, 3, 2, 2, 2, 20, 116, 3, 2, 2, 2, 22, 120, 3, 2, 2, 2, 24, 123, 3, 2, 2, 2, 26, 127, 3, 2, 2, 2, 28, 130, 3, 2, 2, 2, 30, 133, 3, 2, 2, 2, 32, 136, 3, 2, 2, 2, 34, 140, 3, 2, 2, 2, 36, 142, 3, 2, 2, 2, 38, 151, 3, 2, 2, 2, 40, 176, 3, 2, 2, 2, 42, 178, 3, 2, 2, 2, 44, 183, 3, 2, 2, 2, 46, 193, 3, 2, 2, 2, 48, 197, 3, 2, 2, 2, 50, 199, 3, 2, 2, 2, 52, 201, 3, 2, 2, 2, 54, 218, 3, 2, 2, 2, 56, 220, 3, 2, 2, 2, 58, 230, 3, 2, 2, 2, 60, 234, 3, 2, 2, 2, 62, 64, 5, 4, 3, 2, 63, 65, 5, 6, 4, 2, 64, 63, 3, 2, 2, 2, 64, 65, 3, 2, 2, 2, 65, 67, 3, 2, 2, 2, 66, 68, 5, 10, 6, 2, 67, 66, 3, 2, 2, 2, 67, 68, 3, 2, 2, 2, 68, 69, 3, 2, 2, 2, 69, 70, 7, 2, 2, 3, 70, 3, 3, 2, 2, 2, 71, 72, 7, 3, 2, 2, 72, 74, 5, 42, 22, 2, 73, 75, 5, 14, 8, 2, 74, 73, 3, 2, 2, 2, 74, 75, 3, 2, 2, 2, 75, 76, 3, 2, 2, 2, 76, 77, 5, 16, 9, 2, 77, 5, 3, 2, 2, 2, 78, 80, 7, 4, 2, 2, 79, 81, 5, 8, 5, 2, 80, 79, 3, 2, 2, 2, 81, 82, 3, 2, 2, 2, 82, 80, 3, 2, 2, 2, 82, 83, 3, 2, 2, 2, 83, 7, 3, 2, 2, 2, 84, 85, 7, 20, 2, 2, 85, 86, 7, 5, 2, 2, 86, 88, 5, 42, 22, 2, 87, 89, 5, 14, 8, 2, 88, 87, 3, 2, 2, 2, 88, 89, 3, 2, 2, 2, 89, 90, 3, 2, 2, 2, 90, 91, 5, 16, 9, 2, 91, 9, 3, 2, 2, 2, 92, 94, 7, 6, 2, 2, 93, 95, 5, 12, 7, 2, 94, 93, 3, 2, 2, 2, 95, 96, 3, 2, 2, 2, 96, 94, 3, 2, 2, 2, 96, 97, 3, 2, 2, 2, 97, 11, 3, 2, 2, 2, 98, 99, 7, 20, 2, 2, 99, 100, 7, 5, 2, 2, 100, 101, 5, 42, 22, 2, 101, 13, 3, 2, 2, 2, 102, 103, 7, 7, 2, 2, 103, 104, 7, 20, 2, 2, 104, 15, 3, 2, 2, 2, 105, 108, 5, 24, 13, 2, 106, 108, 5, 18, 10, 2, 107, 105, 3, 2, 2, 2, 107, 106, 3, 2, 2, 2, 108, 17, 3, 2, 2, 2, 109, 111, 5, 20, 11, 2, 110, 109, 3, 2, 2, 2, 111, 112, 3, 2, 2, 2, 112, 110, 3, 2, 2, 2, 112, 113, 3, 2, 2, 2, 113, 114, 3, 2, 2, 2, 114, 115, 5, 22, 12, 2, 115, 19, 3, 2, 2, 2, 116, 117, 7, 8, 2, 2, 117, 118, 7, 20, 2, 2, 118, 119, 5, 24, 13, 2, 119, 21, 3, 2, 2, 2, 120, 121, 7, 9, 2, 2, 121, 122, 5, 26, 14, 2, 122, 23, 3, 2, 2, 2, 123, 124, 5, 26, 14, 2, 124, 125, 5, 28, 15, 2, 125, 126, 5, 30, 16, 2, 126, 25, 3, 2, 2, 2, 127, 128, 9, 2, 2, 2, 128, 129, 7, 21, 2, 2, 129, 27, 3, 2, 2, 2, 130, 131, 7, 12, 2, 2, 131, 132, 7, 21, 2, 2, 132, 29, 3, 2, 2, 2, 133, 134, 7, 13, 2, 2, 134, 135, 7, 21, 2, 2, 135, 31, 3, 2, 2, 2, 136, 137, 7, 20, 2, 2, 137, 138, 7, 5, 2, 2, 138, 139, 5, 34, 18, 2, 139, 33, 3, 2, 2, 2, 140, 141, 7, 20, 2, 2, 141, 35, 3, 2, 2, 2, 142, 143, 7, 14, 2, 2, 143, 148, 5, 32, 17, 2, 144, 145, 7, 15, 2, 2, 145, 147, 5, 32, 17, 2, 146, 144, 3, 2, 2, 2, 147, 150, 3, 2, 2, 2, 148, 146, 3, 2, 2, 2, 148, 149, 3, 2, 2, 2, 149, 37, 3, 2, 2, 2, 150, 148, 3, 2, 2, 2, 151, 152, 7, 16, 2, 2, 152, 157, 5, 32, 17, 2, 153, 154, 7, 15, 2, 2, 154, 156, 5, 32, 17, 2, 155, 153, 3, 2, 2, 2, 156, 159, 3, 2, 2, 2, 157, 155, 3, 2, 2, 2, 157, 158, 3, 2, 2, 2, 158, 39, 3, 2, 2, 2, 159, 157, 3, 2, 2, 2, 160, 161, 5, 38, 20, 2, 161, 162, 7, 5, 2, 2, 162, 166, 3, 2, 2, 2, 163, 164, 5, 36, 19, 2, 164, 165, 7, 5, 2, 2, 165, 167, 3, 2, 2, 2, 166, 163, 3, 2, 2, 2, 166, 167, 3, 2, 2, 2, 167, 177, 3, 2, 2, 2, 168, 169, 5, 36, 19, 2, 169, 170, 7, 5, 2, 2, 170, 174, 3, 2, 2, 2, 171, 172, 5, 38, 20, 2, 172, 173, 7, 5, 2, 2, 173, 175, 3, 2, 2, 2, 174, 171, 3, 2, 2, 2, 174, 175, 3, 2, 2, 2, 175, 177, 3, 2, 2, 2, 176, 160, 3, 2, 2, 2, 176, 168, 3, 2, 2, 2, 176, 177, 3, 2, 2, 2, 177, 41, 3, 2, 2, 2, 178, 179, 5, 40, 21, 2, 179, 180, 5, 46, 24, 2, 180, 43, 3, 2, 2, 2, 181, 184, 5, 48, 25, 2, 182, 184, 5, 54, 28, 2, 183, 181, 3, 2, 2, 2, 183, 182, 3, 2, 2, 2, 184, 45, 3, 2, 2, 2, 185, 186, 5, 48, 25, 2, 186, 187, 7, 17, 2, 2, 187, 188, 5, 48, 25, 2, 188, 194, 3, 2, 2, 2, 189, 190, 5, 54, 28, 2, 190, 191, 7, 17, 2, 2, 191, 192, 5, 54, 28, 2, 192, 194, 3, 2, 2, 2, 193, 185, 3, 2, 2, 2, 193, 189, 3, 2, 2, 2, 194, 47, 3, 2, 2, 2, 195, 198, 5, 50, 26, 2, 196, 198, 5, 52, 27, 2, 197, 195, 3, 2, 2, 2, 197, 196, 3, 2, 2, 2, 198, 49, 3, 2, 2, 2, 199, 200, 7, 20, 2, 2, 200, 51, 3, 2, 2, 2, 201, 202, 7, 20, 2, 2, 202, 203, 7, 18, 2, 2, 203, 208, 5, 48, 25, 2, 204, 205, 7, 15, 2, 2, 205, 207, 5, 48, 25, 2, 206, 204, 3, 2, 2, 2, 207, 210, 3, 2, 2, 2, 208, 206, 3, 2, 2, 2, 208, 209, 3, 2, 2, 2, 209, 211, 3, 2, 2, 2, 210, 208, 3, 2, 2, 2, 211, 212, 7, 19, 2, 2, 212, 53, 3, 2, 2, 2, 213, 214, 5, 56, 29, 2, 214, 215, 5, 54, 28, 2, 215, 219, 3, 2, 2, 2, 216, 219, 5, 58, 30, 2, 217, 219, 5, 60, 31, 2, 218, 213, 3, 2, 2, 2, 218, 216, 3, 2, 2, 2, 218, 217, 3, 2, 2, 2, 219, 55, 3, 2, 2, 2, 220, 221, 8, 29, 1, 2, 221, 222, 5, 60, 31, 2, 222, 227, 3, 2, 2, 2, 223, 224, 12, 4, 2, 2, 224, 226, 5, 54, 28, 2, 225, 223, 3, 2, 2, 2, 226, 229, 3, 2, 2, 2, 227, 225, 3, 2, 2, 2, 227, 228, 3, 2, 2, 2, 228, 57, 3, 2, 2, 2, 229, 227, 3, 2, 2, 2, 230, 231, 7, 18, 2, 2, 231, 232, 5, 54, 28, 2, 232, 233, 7, 19, 2, 2, 233, 59, 3, 2, 2, 2, 234, 235, 7, 20, 2, 2, 235, 61, 3, 2, 2, 2, 21, 64, 67, 74, 82, 88, 96, 107, 112, 148, 157, 166, 174, 176, 183, 193, 197, 208, 218, 227]
\ No newline at end of file
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskBaseListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskBaseListener.cs
index 60785c6..32b19a3 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskBaseListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskBaseListener.cs
@@ -300,6 +300,30 @@ public partial class TaskBaseListener : ITaskListener {
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitMytree([NotNull] TaskParser.MytreeContext context) { }
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterEq_s([NotNull] TaskParser.Eq_sContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.eq_s"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitEq_s([NotNull] TaskParser.Eq_sContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterClassicTree([NotNull] TaskParser.ClassicTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.classicTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitClassicTree([NotNull] TaskParser.ClassicTreeContext context) { }
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="TaskParser.treeLeaf"/>.
 	/// <para>The default implementation does nothing.</para>
 	/// </summary>
@@ -323,6 +347,54 @@ public partial class TaskBaseListener : ITaskListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	public virtual void ExitTreeNode([NotNull] TaskParser.TreeNodeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTree([NotNull] TaskParser.FTreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.fTree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTree([NotNull] TaskParser.FTreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.fTreeBracketFree"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBracket([NotNull] TaskParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.treeBracket"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBracket([NotNull] TaskParser.TreeBracketContext context) { }
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void EnterTreeBez([NotNull] TaskParser.TreeBezContext context) { }
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.treeBez"/>.
+	/// <para>The default implementation does nothing.</para>
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	public virtual void ExitTreeBez([NotNull] TaskParser.TreeBezContext context) { }
 
 	/// <inheritdoc/>
 	/// <remarks>The default implementation does nothing.</remarks>
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskListener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskListener.cs
index d7fdb8f..3b0c10b 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskListener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskListener.cs
@@ -252,6 +252,26 @@ public interface ITaskListener : IParseTreeListener {
 	/// <param name="context">The parse tree.</param>
 	void ExitMytree([NotNull] TaskParser.MytreeContext context);
 	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterEq_s([NotNull] TaskParser.Eq_sContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.eq_s"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitEq_s([NotNull] TaskParser.Eq_sContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterClassicTree([NotNull] TaskParser.ClassicTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.classicTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitClassicTree([NotNull] TaskParser.ClassicTreeContext context);
+	/// <summary>
 	/// Enter a parse tree produced by <see cref="TaskParser.treeLeaf"/>.
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
@@ -271,5 +291,45 @@ public interface ITaskListener : IParseTreeListener {
 	/// </summary>
 	/// <param name="context">The parse tree.</param>
 	void ExitTreeNode([NotNull] TaskParser.TreeNodeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTree([NotNull] TaskParser.FTreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.fTree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTree([NotNull] TaskParser.FTreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.fTreeBracketFree"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitFTreeBracketFree([NotNull] TaskParser.FTreeBracketFreeContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBracket([NotNull] TaskParser.TreeBracketContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.treeBracket"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBracket([NotNull] TaskParser.TreeBracketContext context);
+	/// <summary>
+	/// Enter a parse tree produced by <see cref="TaskParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void EnterTreeBez([NotNull] TaskParser.TreeBezContext context);
+	/// <summary>
+	/// Exit a parse tree produced by <see cref="TaskParser.treeBez"/>.
+	/// </summary>
+	/// <param name="context">The parse tree.</param>
+	void ExitTreeBez([NotNull] TaskParser.TreeBezContext context);
 }
 } // namespace Eingabeverwaltung.Parser.Task_Parser
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskParser.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskParser.cs
index aee8ce8..5977f87 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskParser.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/Task_Parser/TaskParser.cs
@@ -46,12 +46,15 @@ public partial class TaskParser : Parser {
 		RULE_ind_pt = 8, RULE_case_pt = 9, RULE_ih_pt = 10, RULE_task_pt = 11, 
 		RULE_maxpt = 12, RULE_minsteps = 13, RULE_maxsteps = 14, RULE_var = 15, 
 		RULE_sort = 16, RULE_forall = 17, RULE_fixed = 18, RULE_eq_var_def = 19, 
-		RULE_eq = 20, RULE_mytree = 21, RULE_treeLeaf = 22, RULE_treeNode = 23;
+		RULE_eq = 20, RULE_mytree = 21, RULE_eq_s = 22, RULE_classicTree = 23, 
+		RULE_treeLeaf = 24, RULE_treeNode = 25, RULE_fTree = 26, RULE_fTreeBracketFree = 27, 
+		RULE_treeBracket = 28, RULE_treeBez = 29;
 	public static readonly string[] ruleNames = {
 		"task", "task_eq", "lemma_tasks", "lemma_task", "task_lemmata", "task_lemma", 
 		"ind_var", "config", "ind_pt", "case_pt", "ih_pt", "task_pt", "maxpt", 
 		"minsteps", "maxsteps", "var", "sort", "forall", "fixed", "eq_var_def", 
-		"eq", "mytree", "treeLeaf", "treeNode"
+		"eq", "mytree", "eq_s", "classicTree", "treeLeaf", "treeNode", "fTree", 
+		"fTreeBracketFree", "treeBracket", "treeBez"
 	};
 
 	private static readonly string[] _LiteralNames = {
@@ -129,26 +132,26 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 48; task_eq();
-			State = 50;
+			State = 60; task_eq();
+			State = 62;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__1) {
 				{
-				State = 49; lemma_tasks();
+				State = 61; lemma_tasks();
 				}
 			}
 
-			State = 53;
+			State = 65;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__3) {
 				{
-				State = 52; task_lemmata();
+				State = 64; task_lemmata();
 				}
 			}
 
-			State = 55; Match(Eof);
+			State = 67; Match(Eof);
 			}
 		}
 		catch (RecognitionException re) {
@@ -195,18 +198,18 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 57; Match(T__0);
-			State = 58; eq();
-			State = 60;
+			State = 69; Match(T__0);
+			State = 70; eq();
+			State = 72;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__4) {
 				{
-				State = 59; ind_var();
+				State = 71; ind_var();
 				}
 			}
 
-			State = 62; config();
+			State = 74; config();
 			}
 		}
 		catch (RecognitionException re) {
@@ -250,17 +253,17 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 64; Match(T__1);
-			State = 66;
+			State = 76; Match(T__1);
+			State = 78;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 65; lemma_task();
+				State = 77; lemma_task();
 				}
 				}
-				State = 68;
+				State = 80;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==BEZ );
@@ -311,19 +314,19 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 70; Match(BEZ);
-			State = 71; Match(T__2);
-			State = 72; eq();
-			State = 74;
+			State = 82; Match(BEZ);
+			State = 83; Match(T__2);
+			State = 84; eq();
+			State = 86;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			if (_la==T__4) {
 				{
-				State = 73; ind_var();
+				State = 85; ind_var();
 				}
 			}
 
-			State = 76; config();
+			State = 88; config();
 			}
 		}
 		catch (RecognitionException re) {
@@ -367,17 +370,17 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 78; Match(T__3);
-			State = 80;
+			State = 90; Match(T__3);
+			State = 92;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 79; task_lemma();
+				State = 91; task_lemma();
 				}
 				}
-				State = 82;
+				State = 94;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==BEZ );
@@ -421,9 +424,9 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 84; Match(BEZ);
-			State = 85; Match(T__2);
-			State = 86; eq();
+			State = 96; Match(BEZ);
+			State = 97; Match(T__2);
+			State = 98; eq();
 			}
 		}
 		catch (RecognitionException re) {
@@ -461,8 +464,8 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 88; Match(T__4);
-			State = 89; Match(BEZ);
+			State = 100; Match(T__4);
+			State = 101; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -505,18 +508,18 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 93;
+			State = 105;
 			ErrorHandler.Sync(this);
 			switch (TokenStream.LA(1)) {
 			case T__7:
 			case T__8:
 				{
-				State = 91; task_pt();
+				State = 103; task_pt();
 				}
 				break;
 			case T__5:
 				{
-				State = 92; ind_pt();
+				State = 104; ind_pt();
 				}
 				break;
 			default:
@@ -568,20 +571,20 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 96;
+			State = 108;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			do {
 				{
 				{
-				State = 95; case_pt();
+				State = 107; case_pt();
 				}
 				}
-				State = 98;
+				State = 110;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			} while ( _la==T__5 );
-			State = 100; ih_pt();
+			State = 112; ih_pt();
 			}
 		}
 		catch (RecognitionException re) {
@@ -622,9 +625,9 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 102; Match(T__5);
-			State = 103; Match(BEZ);
-			State = 104; task_pt();
+			State = 114; Match(T__5);
+			State = 115; Match(BEZ);
+			State = 116; task_pt();
 			}
 		}
 		catch (RecognitionException re) {
@@ -664,8 +667,8 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 106; Match(T__6);
-			State = 107; maxpt();
+			State = 118; Match(T__6);
+			State = 119; maxpt();
 			}
 		}
 		catch (RecognitionException re) {
@@ -711,9 +714,9 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 109; maxpt();
-			State = 110; minsteps();
-			State = 111; maxsteps();
+			State = 121; maxpt();
+			State = 122; minsteps();
+			State = 123; maxsteps();
 			}
 		}
 		catch (RecognitionException re) {
@@ -752,7 +755,7 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 113;
+			State = 125;
 			_la = TokenStream.LA(1);
 			if ( !(_la==T__7 || _la==T__8) ) {
 			ErrorHandler.RecoverInline(this);
@@ -761,7 +764,7 @@ public partial class TaskParser : Parser {
 				ErrorHandler.ReportMatch(this);
 			    Consume();
 			}
-			State = 114; Match(NAT);
+			State = 126; Match(NAT);
 			}
 		}
 		catch (RecognitionException re) {
@@ -799,8 +802,8 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 116; Match(T__9);
-			State = 117; Match(NAT);
+			State = 128; Match(T__9);
+			State = 129; Match(NAT);
 			}
 		}
 		catch (RecognitionException re) {
@@ -838,8 +841,8 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 119; Match(T__10);
-			State = 120; Match(NAT);
+			State = 131; Match(T__10);
+			State = 132; Match(NAT);
 			}
 		}
 		catch (RecognitionException re) {
@@ -880,9 +883,9 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 122; Match(BEZ);
-			State = 123; Match(T__2);
-			State = 124; sort();
+			State = 134; Match(BEZ);
+			State = 135; Match(T__2);
+			State = 136; sort();
 			}
 		}
 		catch (RecognitionException re) {
@@ -920,7 +923,7 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 126; Match(BEZ);
+			State = 138; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -964,19 +967,19 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 128; Match(T__11);
-			State = 129; var();
-			State = 134;
+			State = 140; Match(T__11);
+			State = 141; var();
+			State = 146;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__12) {
 				{
 				{
-				State = 130; Match(T__12);
-				State = 131; var();
+				State = 142; Match(T__12);
+				State = 143; var();
 				}
 				}
-				State = 136;
+				State = 148;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -1023,19 +1026,19 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 137; Match(T__13);
-			State = 138; var();
-			State = 143;
+			State = 149; Match(T__13);
+			State = 150; var();
+			State = 155;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__12) {
 				{
 				{
-				State = 139; Match(T__12);
-				State = 140; var();
+				State = 151; Match(T__12);
+				State = 152; var();
 				}
 				}
-				State = 145;
+				State = 157;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
@@ -1082,22 +1085,22 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 162;
+			State = 174;
 			ErrorHandler.Sync(this);
 			switch (TokenStream.LA(1)) {
 			case T__13:
 				{
 				{
-				State = 146; @fixed();
-				State = 147; Match(T__2);
+				State = 158; @fixed();
+				State = 159; Match(T__2);
 				}
-				State = 152;
+				State = 164;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				if (_la==T__11) {
 					{
-					State = 149; forall();
-					State = 150; Match(T__2);
+					State = 161; forall();
+					State = 162; Match(T__2);
 					}
 				}
 
@@ -1106,21 +1109,22 @@ public partial class TaskParser : Parser {
 			case T__11:
 				{
 				{
-				State = 154; forall();
-				State = 155; Match(T__2);
+				State = 166; forall();
+				State = 167; Match(T__2);
 				}
-				State = 160;
+				State = 172;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 				if (_la==T__13) {
 					{
-					State = 157; @fixed();
-					State = 158; Match(T__2);
+					State = 169; @fixed();
+					State = 170; Match(T__2);
 					}
 				}
 
 				}
 				break;
+			case T__15:
 			case BEZ:
 				break;
 			default:
@@ -1143,11 +1147,8 @@ public partial class TaskParser : Parser {
 		public Eq_var_defContext eq_var_def() {
 			return GetRuleContext<Eq_var_defContext>(0);
 		}
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
-		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public Eq_sContext eq_s() {
+			return GetRuleContext<Eq_sContext>(0);
 		}
 		public EqContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1171,10 +1172,8 @@ public partial class TaskParser : Parser {
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 164; eq_var_def();
-			State = 165; mytree();
-			State = 166; Match(T__14);
-			State = 167; mytree();
+			State = 176; eq_var_def();
+			State = 177; eq_s();
 			}
 		}
 		catch (RecognitionException re) {
@@ -1189,11 +1188,11 @@ public partial class TaskParser : Parser {
 	}
 
 	public partial class MytreeContext : ParserRuleContext {
-		public TreeLeafContext treeLeaf() {
-			return GetRuleContext<TreeLeafContext>(0);
+		public ClassicTreeContext classicTree() {
+			return GetRuleContext<ClassicTreeContext>(0);
 		}
-		public TreeNodeContext treeNode() {
-			return GetRuleContext<TreeNodeContext>(0);
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
 		}
 		public MytreeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1215,19 +1214,139 @@ public partial class TaskParser : Parser {
 		MytreeContext _localctx = new MytreeContext(Context, State);
 		EnterRule(_localctx, 42, RULE_mytree);
 		try {
-			State = 171;
+			State = 181;
 			ErrorHandler.Sync(this);
 			switch ( Interpreter.AdaptivePredict(TokenStream,13,Context) ) {
 			case 1:
 				EnterOuterAlt(_localctx, 1);
 				{
-				State = 169; treeLeaf();
+				State = 179; classicTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 180; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class Eq_sContext : ParserRuleContext {
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
+		}
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
+		}
+		public FTreeContext[] fTree() {
+			return GetRuleContexts<FTreeContext>();
+		}
+		public FTreeContext fTree(int i) {
+			return GetRuleContext<FTreeContext>(i);
+		}
+		public Eq_sContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_eq_s; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterEq_s(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitEq_s(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public Eq_sContext eq_s() {
+		Eq_sContext _localctx = new Eq_sContext(Context, State);
+		EnterRule(_localctx, 44, RULE_eq_s);
+		try {
+			State = 191;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,14,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 183; classicTree();
+				State = 184; Match(T__14);
+				State = 185; classicTree();
 				}
 				break;
 			case 2:
 				EnterOuterAlt(_localctx, 2);
 				{
-				State = 170; treeNode();
+				State = 187; fTree();
+				State = 188; Match(T__14);
+				State = 189; fTree();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class ClassicTreeContext : ParserRuleContext {
+		public TreeLeafContext treeLeaf() {
+			return GetRuleContext<TreeLeafContext>(0);
+		}
+		public TreeNodeContext treeNode() {
+			return GetRuleContext<TreeNodeContext>(0);
+		}
+		public ClassicTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_classicTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterClassicTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitClassicTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public ClassicTreeContext classicTree() {
+		ClassicTreeContext _localctx = new ClassicTreeContext(Context, State);
+		EnterRule(_localctx, 46, RULE_classicTree);
+		try {
+			State = 195;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,15,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 193; treeLeaf();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 194; treeNode();
 				}
 				break;
 			}
@@ -1263,11 +1382,11 @@ public partial class TaskParser : Parser {
 	[RuleVersion(0)]
 	public TreeLeafContext treeLeaf() {
 		TreeLeafContext _localctx = new TreeLeafContext(Context, State);
-		EnterRule(_localctx, 44, RULE_treeLeaf);
+		EnterRule(_localctx, 48, RULE_treeLeaf);
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 173; Match(BEZ);
+			State = 197; Match(BEZ);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1283,11 +1402,11 @@ public partial class TaskParser : Parser {
 
 	public partial class TreeNodeContext : ParserRuleContext {
 		public ITerminalNode BEZ() { return GetToken(TaskParser.BEZ, 0); }
-		public MytreeContext[] mytree() {
-			return GetRuleContexts<MytreeContext>();
+		public ClassicTreeContext[] classicTree() {
+			return GetRuleContexts<ClassicTreeContext>();
 		}
-		public MytreeContext mytree(int i) {
-			return GetRuleContext<MytreeContext>(i);
+		public ClassicTreeContext classicTree(int i) {
+			return GetRuleContext<ClassicTreeContext>(i);
 		}
 		public TreeNodeContext(ParserRuleContext parent, int invokingState)
 			: base(parent, invokingState)
@@ -1307,29 +1426,29 @@ public partial class TaskParser : Parser {
 	[RuleVersion(0)]
 	public TreeNodeContext treeNode() {
 		TreeNodeContext _localctx = new TreeNodeContext(Context, State);
-		EnterRule(_localctx, 46, RULE_treeNode);
+		EnterRule(_localctx, 50, RULE_treeNode);
 		int _la;
 		try {
 			EnterOuterAlt(_localctx, 1);
 			{
-			State = 175; Match(BEZ);
-			State = 176; Match(T__15);
-			State = 177; mytree();
-			State = 182;
+			State = 199; Match(BEZ);
+			State = 200; Match(T__15);
+			State = 201; classicTree();
+			State = 206;
 			ErrorHandler.Sync(this);
 			_la = TokenStream.LA(1);
 			while (_la==T__12) {
 				{
 				{
-				State = 178; Match(T__12);
-				State = 179; mytree();
+				State = 202; Match(T__12);
+				State = 203; classicTree();
 				}
 				}
-				State = 184;
+				State = 208;
 				ErrorHandler.Sync(this);
 				_la = TokenStream.LA(1);
 			}
-			State = 185; Match(T__16);
+			State = 209; Match(T__16);
 			}
 		}
 		catch (RecognitionException re) {
@@ -1343,9 +1462,250 @@ public partial class TaskParser : Parser {
 		return _localctx;
 	}
 
+	public partial class FTreeContext : ParserRuleContext {
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext treeBracket() {
+			return GetRuleContext<TreeBracketContext>(0);
+		}
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterFTree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitFTree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeContext fTree() {
+		FTreeContext _localctx = new FTreeContext(Context, State);
+		EnterRule(_localctx, 52, RULE_fTree);
+		try {
+			State = 216;
+			ErrorHandler.Sync(this);
+			switch ( Interpreter.AdaptivePredict(TokenStream,17,Context) ) {
+			case 1:
+				EnterOuterAlt(_localctx, 1);
+				{
+				State = 211; fTreeBracketFree(0);
+				State = 212; fTree();
+				}
+				break;
+			case 2:
+				EnterOuterAlt(_localctx, 2);
+				{
+				State = 214; treeBracket();
+				}
+				break;
+			case 3:
+				EnterOuterAlt(_localctx, 3);
+				{
+				State = 215; treeBez();
+				}
+				break;
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class FTreeBracketFreeContext : ParserRuleContext {
+		public TreeBezContext treeBez() {
+			return GetRuleContext<TreeBezContext>(0);
+		}
+		public FTreeBracketFreeContext fTreeBracketFree() {
+			return GetRuleContext<FTreeBracketFreeContext>(0);
+		}
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public FTreeBracketFreeContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_fTreeBracketFree; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterFTreeBracketFree(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitFTreeBracketFree(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public FTreeBracketFreeContext fTreeBracketFree() {
+		return fTreeBracketFree(0);
+	}
+
+	private FTreeBracketFreeContext fTreeBracketFree(int _p) {
+		ParserRuleContext _parentctx = Context;
+		int _parentState = State;
+		FTreeBracketFreeContext _localctx = new FTreeBracketFreeContext(Context, _parentState);
+		FTreeBracketFreeContext _prevctx = _localctx;
+		int _startState = 54;
+		EnterRecursionRule(_localctx, 54, RULE_fTreeBracketFree, _p);
+		try {
+			int _alt;
+			EnterOuterAlt(_localctx, 1);
+			{
+			{
+			State = 219; treeBez();
+			}
+			Context.Stop = TokenStream.LT(-1);
+			State = 225;
+			ErrorHandler.Sync(this);
+			_alt = Interpreter.AdaptivePredict(TokenStream,18,Context);
+			while ( _alt!=2 && _alt!=global::Antlr4.Runtime.Atn.ATN.INVALID_ALT_NUMBER ) {
+				if ( _alt==1 ) {
+					if ( ParseListeners!=null )
+						TriggerExitRuleEvent();
+					_prevctx = _localctx;
+					{
+					{
+					_localctx = new FTreeBracketFreeContext(_parentctx, _parentState);
+					PushNewRecursionContext(_localctx, _startState, RULE_fTreeBracketFree);
+					State = 221;
+					if (!(Precpred(Context, 2))) throw new FailedPredicateException(this, "Precpred(Context, 2)");
+					State = 222; fTree();
+					}
+					} 
+				}
+				State = 227;
+				ErrorHandler.Sync(this);
+				_alt = Interpreter.AdaptivePredict(TokenStream,18,Context);
+			}
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			UnrollRecursionContexts(_parentctx);
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBracketContext : ParserRuleContext {
+		public FTreeContext fTree() {
+			return GetRuleContext<FTreeContext>(0);
+		}
+		public TreeBracketContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBracket; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterTreeBracket(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitTreeBracket(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBracketContext treeBracket() {
+		TreeBracketContext _localctx = new TreeBracketContext(Context, State);
+		EnterRule(_localctx, 56, RULE_treeBracket);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 228; Match(T__15);
+			State = 229; fTree();
+			State = 230; Match(T__16);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public partial class TreeBezContext : ParserRuleContext {
+		public ITerminalNode BEZ() { return GetToken(TaskParser.BEZ, 0); }
+		public TreeBezContext(ParserRuleContext parent, int invokingState)
+			: base(parent, invokingState)
+		{
+		}
+		public override int RuleIndex { get { return RULE_treeBez; } }
+		public override void EnterRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.EnterTreeBez(this);
+		}
+		public override void ExitRule(IParseTreeListener listener) {
+			ITaskListener typedListener = listener as ITaskListener;
+			if (typedListener != null) typedListener.ExitTreeBez(this);
+		}
+	}
+
+	[RuleVersion(0)]
+	public TreeBezContext treeBez() {
+		TreeBezContext _localctx = new TreeBezContext(Context, State);
+		EnterRule(_localctx, 58, RULE_treeBez);
+		try {
+			EnterOuterAlt(_localctx, 1);
+			{
+			State = 232; Match(BEZ);
+			}
+		}
+		catch (RecognitionException re) {
+			_localctx.exception = re;
+			ErrorHandler.ReportError(this, re);
+			ErrorHandler.Recover(this, re);
+		}
+		finally {
+			ExitRule();
+		}
+		return _localctx;
+	}
+
+	public override bool Sempred(RuleContext _localctx, int ruleIndex, int predIndex) {
+		switch (ruleIndex) {
+		case 27: return fTreeBracketFree_sempred((FTreeBracketFreeContext)_localctx, predIndex);
+		}
+		return true;
+	}
+	private bool fTreeBracketFree_sempred(FTreeBracketFreeContext _localctx, int predIndex) {
+		switch (predIndex) {
+		case 0: return Precpred(Context, 2);
+		}
+		return true;
+	}
+
 	private static char[] _serializedATN = {
 		'\x3', '\x608B', '\xA72A', '\x8133', '\xB9ED', '\x417C', '\x3BE7', '\x7786', 
-		'\x5964', '\x3', '\x17', '\xBE', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
+		'\x5964', '\x3', '\x17', '\xED', '\x4', '\x2', '\t', '\x2', '\x4', '\x3', 
 		'\t', '\x3', '\x4', '\x4', '\t', '\x4', '\x4', '\x5', '\t', '\x5', '\x4', 
 		'\x6', '\t', '\x6', '\x4', '\a', '\t', '\a', '\x4', '\b', '\t', '\b', 
 		'\x4', '\t', '\t', '\t', '\x4', '\n', '\t', '\n', '\x4', '\v', '\t', '\v', 
@@ -1354,142 +1714,180 @@ public partial class TaskParser : Parser {
 		'\x11', '\t', '\x11', '\x4', '\x12', '\t', '\x12', '\x4', '\x13', '\t', 
 		'\x13', '\x4', '\x14', '\t', '\x14', '\x4', '\x15', '\t', '\x15', '\x4', 
 		'\x16', '\t', '\x16', '\x4', '\x17', '\t', '\x17', '\x4', '\x18', '\t', 
-		'\x18', '\x4', '\x19', '\t', '\x19', '\x3', '\x2', '\x3', '\x2', '\x5', 
-		'\x2', '\x35', '\n', '\x2', '\x3', '\x2', '\x5', '\x2', '\x38', '\n', 
-		'\x2', '\x3', '\x2', '\x3', '\x2', '\x3', '\x3', '\x3', '\x3', '\x3', 
-		'\x3', '\x5', '\x3', '?', '\n', '\x3', '\x3', '\x3', '\x3', '\x3', '\x3', 
-		'\x4', '\x3', '\x4', '\x6', '\x4', '\x45', '\n', '\x4', '\r', '\x4', '\xE', 
-		'\x4', '\x46', '\x3', '\x5', '\x3', '\x5', '\x3', '\x5', '\x3', '\x5', 
-		'\x5', '\x5', 'M', '\n', '\x5', '\x3', '\x5', '\x3', '\x5', '\x3', '\x6', 
-		'\x3', '\x6', '\x6', '\x6', 'S', '\n', '\x6', '\r', '\x6', '\xE', '\x6', 
-		'T', '\x3', '\a', '\x3', '\a', '\x3', '\a', '\x3', '\a', '\x3', '\b', 
-		'\x3', '\b', '\x3', '\b', '\x3', '\t', '\x3', '\t', '\x5', '\t', '`', 
-		'\n', '\t', '\x3', '\n', '\x6', '\n', '\x63', '\n', '\n', '\r', '\n', 
-		'\xE', '\n', '\x64', '\x3', '\n', '\x3', '\n', '\x3', '\v', '\x3', '\v', 
-		'\x3', '\v', '\x3', '\v', '\x3', '\f', '\x3', '\f', '\x3', '\f', '\x3', 
-		'\r', '\x3', '\r', '\x3', '\r', '\x3', '\r', '\x3', '\xE', '\x3', '\xE', 
-		'\x3', '\xE', '\x3', '\xF', '\x3', '\xF', '\x3', '\xF', '\x3', '\x10', 
-		'\x3', '\x10', '\x3', '\x10', '\x3', '\x11', '\x3', '\x11', '\x3', '\x11', 
-		'\x3', '\x11', '\x3', '\x12', '\x3', '\x12', '\x3', '\x13', '\x3', '\x13', 
-		'\x3', '\x13', '\x3', '\x13', '\a', '\x13', '\x87', '\n', '\x13', '\f', 
-		'\x13', '\xE', '\x13', '\x8A', '\v', '\x13', '\x3', '\x14', '\x3', '\x14', 
-		'\x3', '\x14', '\x3', '\x14', '\a', '\x14', '\x90', '\n', '\x14', '\f', 
-		'\x14', '\xE', '\x14', '\x93', '\v', '\x14', '\x3', '\x15', '\x3', '\x15', 
-		'\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x5', '\x15', 
-		'\x9B', '\n', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', 
-		'\x15', '\x3', '\x15', '\x3', '\x15', '\x5', '\x15', '\xA3', '\n', '\x15', 
-		'\x5', '\x15', '\xA5', '\n', '\x15', '\x3', '\x16', '\x3', '\x16', '\x3', 
-		'\x16', '\x3', '\x16', '\x3', '\x16', '\x3', '\x17', '\x3', '\x17', '\x5', 
-		'\x17', '\xAE', '\n', '\x17', '\x3', '\x18', '\x3', '\x18', '\x3', '\x19', 
-		'\x3', '\x19', '\x3', '\x19', '\x3', '\x19', '\x3', '\x19', '\a', '\x19', 
-		'\xB7', '\n', '\x19', '\f', '\x19', '\xE', '\x19', '\xBA', '\v', '\x19', 
-		'\x3', '\x19', '\x3', '\x19', '\x3', '\x19', '\x2', '\x2', '\x1A', '\x2', 
-		'\x4', '\x6', '\b', '\n', '\f', '\xE', '\x10', '\x12', '\x14', '\x16', 
-		'\x18', '\x1A', '\x1C', '\x1E', ' ', '\"', '$', '&', '(', '*', ',', '.', 
-		'\x30', '\x2', '\x3', '\x3', '\x2', '\n', '\v', '\x2', '\xB5', '\x2', 
-		'\x32', '\x3', '\x2', '\x2', '\x2', '\x4', ';', '\x3', '\x2', '\x2', '\x2', 
-		'\x6', '\x42', '\x3', '\x2', '\x2', '\x2', '\b', 'H', '\x3', '\x2', '\x2', 
-		'\x2', '\n', 'P', '\x3', '\x2', '\x2', '\x2', '\f', 'V', '\x3', '\x2', 
-		'\x2', '\x2', '\xE', 'Z', '\x3', '\x2', '\x2', '\x2', '\x10', '_', '\x3', 
-		'\x2', '\x2', '\x2', '\x12', '\x62', '\x3', '\x2', '\x2', '\x2', '\x14', 
-		'h', '\x3', '\x2', '\x2', '\x2', '\x16', 'l', '\x3', '\x2', '\x2', '\x2', 
-		'\x18', 'o', '\x3', '\x2', '\x2', '\x2', '\x1A', 's', '\x3', '\x2', '\x2', 
-		'\x2', '\x1C', 'v', '\x3', '\x2', '\x2', '\x2', '\x1E', 'y', '\x3', '\x2', 
-		'\x2', '\x2', ' ', '|', '\x3', '\x2', '\x2', '\x2', '\"', '\x80', '\x3', 
-		'\x2', '\x2', '\x2', '$', '\x82', '\x3', '\x2', '\x2', '\x2', '&', '\x8B', 
-		'\x3', '\x2', '\x2', '\x2', '(', '\xA4', '\x3', '\x2', '\x2', '\x2', '*', 
-		'\xA6', '\x3', '\x2', '\x2', '\x2', ',', '\xAD', '\x3', '\x2', '\x2', 
-		'\x2', '.', '\xAF', '\x3', '\x2', '\x2', '\x2', '\x30', '\xB1', '\x3', 
-		'\x2', '\x2', '\x2', '\x32', '\x34', '\x5', '\x4', '\x3', '\x2', '\x33', 
-		'\x35', '\x5', '\x6', '\x4', '\x2', '\x34', '\x33', '\x3', '\x2', '\x2', 
-		'\x2', '\x34', '\x35', '\x3', '\x2', '\x2', '\x2', '\x35', '\x37', '\x3', 
-		'\x2', '\x2', '\x2', '\x36', '\x38', '\x5', '\n', '\x6', '\x2', '\x37', 
-		'\x36', '\x3', '\x2', '\x2', '\x2', '\x37', '\x38', '\x3', '\x2', '\x2', 
-		'\x2', '\x38', '\x39', '\x3', '\x2', '\x2', '\x2', '\x39', ':', '\a', 
-		'\x2', '\x2', '\x3', ':', '\x3', '\x3', '\x2', '\x2', '\x2', ';', '<', 
-		'\a', '\x3', '\x2', '\x2', '<', '>', '\x5', '*', '\x16', '\x2', '=', '?', 
-		'\x5', '\xE', '\b', '\x2', '>', '=', '\x3', '\x2', '\x2', '\x2', '>', 
-		'?', '\x3', '\x2', '\x2', '\x2', '?', '@', '\x3', '\x2', '\x2', '\x2', 
-		'@', '\x41', '\x5', '\x10', '\t', '\x2', '\x41', '\x5', '\x3', '\x2', 
-		'\x2', '\x2', '\x42', '\x44', '\a', '\x4', '\x2', '\x2', '\x43', '\x45', 
-		'\x5', '\b', '\x5', '\x2', '\x44', '\x43', '\x3', '\x2', '\x2', '\x2', 
-		'\x45', '\x46', '\x3', '\x2', '\x2', '\x2', '\x46', '\x44', '\x3', '\x2', 
-		'\x2', '\x2', '\x46', 'G', '\x3', '\x2', '\x2', '\x2', 'G', '\a', '\x3', 
-		'\x2', '\x2', '\x2', 'H', 'I', '\a', '\x14', '\x2', '\x2', 'I', 'J', '\a', 
-		'\x5', '\x2', '\x2', 'J', 'L', '\x5', '*', '\x16', '\x2', 'K', 'M', '\x5', 
-		'\xE', '\b', '\x2', 'L', 'K', '\x3', '\x2', '\x2', '\x2', 'L', 'M', '\x3', 
-		'\x2', '\x2', '\x2', 'M', 'N', '\x3', '\x2', '\x2', '\x2', 'N', 'O', '\x5', 
-		'\x10', '\t', '\x2', 'O', '\t', '\x3', '\x2', '\x2', '\x2', 'P', 'R', 
-		'\a', '\x6', '\x2', '\x2', 'Q', 'S', '\x5', '\f', '\a', '\x2', 'R', 'Q', 
-		'\x3', '\x2', '\x2', '\x2', 'S', 'T', '\x3', '\x2', '\x2', '\x2', 'T', 
-		'R', '\x3', '\x2', '\x2', '\x2', 'T', 'U', '\x3', '\x2', '\x2', '\x2', 
-		'U', '\v', '\x3', '\x2', '\x2', '\x2', 'V', 'W', '\a', '\x14', '\x2', 
-		'\x2', 'W', 'X', '\a', '\x5', '\x2', '\x2', 'X', 'Y', '\x5', '*', '\x16', 
-		'\x2', 'Y', '\r', '\x3', '\x2', '\x2', '\x2', 'Z', '[', '\a', '\a', '\x2', 
-		'\x2', '[', '\\', '\a', '\x14', '\x2', '\x2', '\\', '\xF', '\x3', '\x2', 
-		'\x2', '\x2', ']', '`', '\x5', '\x18', '\r', '\x2', '^', '`', '\x5', '\x12', 
-		'\n', '\x2', '_', ']', '\x3', '\x2', '\x2', '\x2', '_', '^', '\x3', '\x2', 
-		'\x2', '\x2', '`', '\x11', '\x3', '\x2', '\x2', '\x2', '\x61', '\x63', 
-		'\x5', '\x14', '\v', '\x2', '\x62', '\x61', '\x3', '\x2', '\x2', '\x2', 
-		'\x63', '\x64', '\x3', '\x2', '\x2', '\x2', '\x64', '\x62', '\x3', '\x2', 
-		'\x2', '\x2', '\x64', '\x65', '\x3', '\x2', '\x2', '\x2', '\x65', '\x66', 
-		'\x3', '\x2', '\x2', '\x2', '\x66', 'g', '\x5', '\x16', '\f', '\x2', 'g', 
-		'\x13', '\x3', '\x2', '\x2', '\x2', 'h', 'i', '\a', '\b', '\x2', '\x2', 
-		'i', 'j', '\a', '\x14', '\x2', '\x2', 'j', 'k', '\x5', '\x18', '\r', '\x2', 
-		'k', '\x15', '\x3', '\x2', '\x2', '\x2', 'l', 'm', '\a', '\t', '\x2', 
-		'\x2', 'm', 'n', '\x5', '\x1A', '\xE', '\x2', 'n', '\x17', '\x3', '\x2', 
-		'\x2', '\x2', 'o', 'p', '\x5', '\x1A', '\xE', '\x2', 'p', 'q', '\x5', 
-		'\x1C', '\xF', '\x2', 'q', 'r', '\x5', '\x1E', '\x10', '\x2', 'r', '\x19', 
-		'\x3', '\x2', '\x2', '\x2', 's', 't', '\t', '\x2', '\x2', '\x2', 't', 
-		'u', '\a', '\x15', '\x2', '\x2', 'u', '\x1B', '\x3', '\x2', '\x2', '\x2', 
-		'v', 'w', '\a', '\f', '\x2', '\x2', 'w', 'x', '\a', '\x15', '\x2', '\x2', 
-		'x', '\x1D', '\x3', '\x2', '\x2', '\x2', 'y', 'z', '\a', '\r', '\x2', 
-		'\x2', 'z', '{', '\a', '\x15', '\x2', '\x2', '{', '\x1F', '\x3', '\x2', 
-		'\x2', '\x2', '|', '}', '\a', '\x14', '\x2', '\x2', '}', '~', '\a', '\x5', 
-		'\x2', '\x2', '~', '\x7F', '\x5', '\"', '\x12', '\x2', '\x7F', '!', '\x3', 
-		'\x2', '\x2', '\x2', '\x80', '\x81', '\a', '\x14', '\x2', '\x2', '\x81', 
-		'#', '\x3', '\x2', '\x2', '\x2', '\x82', '\x83', '\a', '\xE', '\x2', '\x2', 
-		'\x83', '\x88', '\x5', ' ', '\x11', '\x2', '\x84', '\x85', '\a', '\xF', 
-		'\x2', '\x2', '\x85', '\x87', '\x5', ' ', '\x11', '\x2', '\x86', '\x84', 
-		'\x3', '\x2', '\x2', '\x2', '\x87', '\x8A', '\x3', '\x2', '\x2', '\x2', 
-		'\x88', '\x86', '\x3', '\x2', '\x2', '\x2', '\x88', '\x89', '\x3', '\x2', 
-		'\x2', '\x2', '\x89', '%', '\x3', '\x2', '\x2', '\x2', '\x8A', '\x88', 
-		'\x3', '\x2', '\x2', '\x2', '\x8B', '\x8C', '\a', '\x10', '\x2', '\x2', 
-		'\x8C', '\x91', '\x5', ' ', '\x11', '\x2', '\x8D', '\x8E', '\a', '\xF', 
-		'\x2', '\x2', '\x8E', '\x90', '\x5', ' ', '\x11', '\x2', '\x8F', '\x8D', 
-		'\x3', '\x2', '\x2', '\x2', '\x90', '\x93', '\x3', '\x2', '\x2', '\x2', 
-		'\x91', '\x8F', '\x3', '\x2', '\x2', '\x2', '\x91', '\x92', '\x3', '\x2', 
-		'\x2', '\x2', '\x92', '\'', '\x3', '\x2', '\x2', '\x2', '\x93', '\x91', 
-		'\x3', '\x2', '\x2', '\x2', '\x94', '\x95', '\x5', '&', '\x14', '\x2', 
-		'\x95', '\x96', '\a', '\x5', '\x2', '\x2', '\x96', '\x9A', '\x3', '\x2', 
-		'\x2', '\x2', '\x97', '\x98', '\x5', '$', '\x13', '\x2', '\x98', '\x99', 
-		'\a', '\x5', '\x2', '\x2', '\x99', '\x9B', '\x3', '\x2', '\x2', '\x2', 
-		'\x9A', '\x97', '\x3', '\x2', '\x2', '\x2', '\x9A', '\x9B', '\x3', '\x2', 
-		'\x2', '\x2', '\x9B', '\xA5', '\x3', '\x2', '\x2', '\x2', '\x9C', '\x9D', 
-		'\x5', '$', '\x13', '\x2', '\x9D', '\x9E', '\a', '\x5', '\x2', '\x2', 
-		'\x9E', '\xA2', '\x3', '\x2', '\x2', '\x2', '\x9F', '\xA0', '\x5', '&', 
-		'\x14', '\x2', '\xA0', '\xA1', '\a', '\x5', '\x2', '\x2', '\xA1', '\xA3', 
-		'\x3', '\x2', '\x2', '\x2', '\xA2', '\x9F', '\x3', '\x2', '\x2', '\x2', 
-		'\xA2', '\xA3', '\x3', '\x2', '\x2', '\x2', '\xA3', '\xA5', '\x3', '\x2', 
-		'\x2', '\x2', '\xA4', '\x94', '\x3', '\x2', '\x2', '\x2', '\xA4', '\x9C', 
-		'\x3', '\x2', '\x2', '\x2', '\xA4', '\xA5', '\x3', '\x2', '\x2', '\x2', 
-		'\xA5', ')', '\x3', '\x2', '\x2', '\x2', '\xA6', '\xA7', '\x5', '(', '\x15', 
-		'\x2', '\xA7', '\xA8', '\x5', ',', '\x17', '\x2', '\xA8', '\xA9', '\a', 
-		'\x11', '\x2', '\x2', '\xA9', '\xAA', '\x5', ',', '\x17', '\x2', '\xAA', 
-		'+', '\x3', '\x2', '\x2', '\x2', '\xAB', '\xAE', '\x5', '.', '\x18', '\x2', 
-		'\xAC', '\xAE', '\x5', '\x30', '\x19', '\x2', '\xAD', '\xAB', '\x3', '\x2', 
-		'\x2', '\x2', '\xAD', '\xAC', '\x3', '\x2', '\x2', '\x2', '\xAE', '-', 
-		'\x3', '\x2', '\x2', '\x2', '\xAF', '\xB0', '\a', '\x14', '\x2', '\x2', 
-		'\xB0', '/', '\x3', '\x2', '\x2', '\x2', '\xB1', '\xB2', '\a', '\x14', 
-		'\x2', '\x2', '\xB2', '\xB3', '\a', '\x12', '\x2', '\x2', '\xB3', '\xB8', 
-		'\x5', ',', '\x17', '\x2', '\xB4', '\xB5', '\a', '\xF', '\x2', '\x2', 
-		'\xB5', '\xB7', '\x5', ',', '\x17', '\x2', '\xB6', '\xB4', '\x3', '\x2', 
-		'\x2', '\x2', '\xB7', '\xBA', '\x3', '\x2', '\x2', '\x2', '\xB8', '\xB6', 
-		'\x3', '\x2', '\x2', '\x2', '\xB8', '\xB9', '\x3', '\x2', '\x2', '\x2', 
-		'\xB9', '\xBB', '\x3', '\x2', '\x2', '\x2', '\xBA', '\xB8', '\x3', '\x2', 
-		'\x2', '\x2', '\xBB', '\xBC', '\a', '\x13', '\x2', '\x2', '\xBC', '\x31', 
-		'\x3', '\x2', '\x2', '\x2', '\x11', '\x34', '\x37', '>', '\x46', 'L', 
-		'T', '_', '\x64', '\x88', '\x91', '\x9A', '\xA2', '\xA4', '\xAD', '\xB8',
+		'\x18', '\x4', '\x19', '\t', '\x19', '\x4', '\x1A', '\t', '\x1A', '\x4', 
+		'\x1B', '\t', '\x1B', '\x4', '\x1C', '\t', '\x1C', '\x4', '\x1D', '\t', 
+		'\x1D', '\x4', '\x1E', '\t', '\x1E', '\x4', '\x1F', '\t', '\x1F', '\x3', 
+		'\x2', '\x3', '\x2', '\x5', '\x2', '\x41', '\n', '\x2', '\x3', '\x2', 
+		'\x5', '\x2', '\x44', '\n', '\x2', '\x3', '\x2', '\x3', '\x2', '\x3', 
+		'\x3', '\x3', '\x3', '\x3', '\x3', '\x5', '\x3', 'K', '\n', '\x3', '\x3', 
+		'\x3', '\x3', '\x3', '\x3', '\x4', '\x3', '\x4', '\x6', '\x4', 'Q', '\n', 
+		'\x4', '\r', '\x4', '\xE', '\x4', 'R', '\x3', '\x5', '\x3', '\x5', '\x3', 
+		'\x5', '\x3', '\x5', '\x5', '\x5', 'Y', '\n', '\x5', '\x3', '\x5', '\x3', 
+		'\x5', '\x3', '\x6', '\x3', '\x6', '\x6', '\x6', '_', '\n', '\x6', '\r', 
+		'\x6', '\xE', '\x6', '`', '\x3', '\a', '\x3', '\a', '\x3', '\a', '\x3', 
+		'\a', '\x3', '\b', '\x3', '\b', '\x3', '\b', '\x3', '\t', '\x3', '\t', 
+		'\x5', '\t', 'l', '\n', '\t', '\x3', '\n', '\x6', '\n', 'o', '\n', '\n', 
+		'\r', '\n', '\xE', '\n', 'p', '\x3', '\n', '\x3', '\n', '\x3', '\v', '\x3', 
+		'\v', '\x3', '\v', '\x3', '\v', '\x3', '\f', '\x3', '\f', '\x3', '\f', 
+		'\x3', '\r', '\x3', '\r', '\x3', '\r', '\x3', '\r', '\x3', '\xE', '\x3', 
+		'\xE', '\x3', '\xE', '\x3', '\xF', '\x3', '\xF', '\x3', '\xF', '\x3', 
+		'\x10', '\x3', '\x10', '\x3', '\x10', '\x3', '\x11', '\x3', '\x11', '\x3', 
+		'\x11', '\x3', '\x11', '\x3', '\x12', '\x3', '\x12', '\x3', '\x13', '\x3', 
+		'\x13', '\x3', '\x13', '\x3', '\x13', '\a', '\x13', '\x93', '\n', '\x13', 
+		'\f', '\x13', '\xE', '\x13', '\x96', '\v', '\x13', '\x3', '\x14', '\x3', 
+		'\x14', '\x3', '\x14', '\x3', '\x14', '\a', '\x14', '\x9C', '\n', '\x14', 
+		'\f', '\x14', '\xE', '\x14', '\x9F', '\v', '\x14', '\x3', '\x15', '\x3', 
+		'\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x5', 
+		'\x15', '\xA7', '\n', '\x15', '\x3', '\x15', '\x3', '\x15', '\x3', '\x15', 
+		'\x3', '\x15', '\x3', '\x15', '\x3', '\x15', '\x5', '\x15', '\xAF', '\n', 
+		'\x15', '\x5', '\x15', '\xB1', '\n', '\x15', '\x3', '\x16', '\x3', '\x16', 
+		'\x3', '\x16', '\x3', '\x17', '\x3', '\x17', '\x5', '\x17', '\xB8', '\n', 
+		'\x17', '\x3', '\x18', '\x3', '\x18', '\x3', '\x18', '\x3', '\x18', '\x3', 
+		'\x18', '\x3', '\x18', '\x3', '\x18', '\x3', '\x18', '\x5', '\x18', '\xC2', 
+		'\n', '\x18', '\x3', '\x19', '\x3', '\x19', '\x5', '\x19', '\xC6', '\n', 
+		'\x19', '\x3', '\x1A', '\x3', '\x1A', '\x3', '\x1B', '\x3', '\x1B', '\x3', 
+		'\x1B', '\x3', '\x1B', '\x3', '\x1B', '\a', '\x1B', '\xCF', '\n', '\x1B', 
+		'\f', '\x1B', '\xE', '\x1B', '\xD2', '\v', '\x1B', '\x3', '\x1B', '\x3', 
+		'\x1B', '\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1C', '\x3', '\x1C', '\x3', 
+		'\x1C', '\x5', '\x1C', '\xDB', '\n', '\x1C', '\x3', '\x1D', '\x3', '\x1D', 
+		'\x3', '\x1D', '\x3', '\x1D', '\x3', '\x1D', '\a', '\x1D', '\xE2', '\n', 
+		'\x1D', '\f', '\x1D', '\xE', '\x1D', '\xE5', '\v', '\x1D', '\x3', '\x1E', 
+		'\x3', '\x1E', '\x3', '\x1E', '\x3', '\x1E', '\x3', '\x1F', '\x3', '\x1F', 
+		'\x3', '\x1F', '\x2', '\x3', '\x38', ' ', '\x2', '\x4', '\x6', '\b', '\n', 
+		'\f', '\xE', '\x10', '\x12', '\x14', '\x16', '\x18', '\x1A', '\x1C', '\x1E', 
+		' ', '\"', '$', '&', '(', '*', ',', '.', '\x30', '\x32', '\x34', '\x36', 
+		'\x38', ':', '<', '\x2', '\x3', '\x3', '\x2', '\n', '\v', '\x2', '\xE3', 
+		'\x2', '>', '\x3', '\x2', '\x2', '\x2', '\x4', 'G', '\x3', '\x2', '\x2', 
+		'\x2', '\x6', 'N', '\x3', '\x2', '\x2', '\x2', '\b', 'T', '\x3', '\x2', 
+		'\x2', '\x2', '\n', '\\', '\x3', '\x2', '\x2', '\x2', '\f', '\x62', '\x3', 
+		'\x2', '\x2', '\x2', '\xE', '\x66', '\x3', '\x2', '\x2', '\x2', '\x10', 
+		'k', '\x3', '\x2', '\x2', '\x2', '\x12', 'n', '\x3', '\x2', '\x2', '\x2', 
+		'\x14', 't', '\x3', '\x2', '\x2', '\x2', '\x16', 'x', '\x3', '\x2', '\x2', 
+		'\x2', '\x18', '{', '\x3', '\x2', '\x2', '\x2', '\x1A', '\x7F', '\x3', 
+		'\x2', '\x2', '\x2', '\x1C', '\x82', '\x3', '\x2', '\x2', '\x2', '\x1E', 
+		'\x85', '\x3', '\x2', '\x2', '\x2', ' ', '\x88', '\x3', '\x2', '\x2', 
+		'\x2', '\"', '\x8C', '\x3', '\x2', '\x2', '\x2', '$', '\x8E', '\x3', '\x2', 
+		'\x2', '\x2', '&', '\x97', '\x3', '\x2', '\x2', '\x2', '(', '\xB0', '\x3', 
+		'\x2', '\x2', '\x2', '*', '\xB2', '\x3', '\x2', '\x2', '\x2', ',', '\xB7', 
+		'\x3', '\x2', '\x2', '\x2', '.', '\xC1', '\x3', '\x2', '\x2', '\x2', '\x30', 
+		'\xC5', '\x3', '\x2', '\x2', '\x2', '\x32', '\xC7', '\x3', '\x2', '\x2', 
+		'\x2', '\x34', '\xC9', '\x3', '\x2', '\x2', '\x2', '\x36', '\xDA', '\x3', 
+		'\x2', '\x2', '\x2', '\x38', '\xDC', '\x3', '\x2', '\x2', '\x2', ':', 
+		'\xE6', '\x3', '\x2', '\x2', '\x2', '<', '\xEA', '\x3', '\x2', '\x2', 
+		'\x2', '>', '@', '\x5', '\x4', '\x3', '\x2', '?', '\x41', '\x5', '\x6', 
+		'\x4', '\x2', '@', '?', '\x3', '\x2', '\x2', '\x2', '@', '\x41', '\x3', 
+		'\x2', '\x2', '\x2', '\x41', '\x43', '\x3', '\x2', '\x2', '\x2', '\x42', 
+		'\x44', '\x5', '\n', '\x6', '\x2', '\x43', '\x42', '\x3', '\x2', '\x2', 
+		'\x2', '\x43', '\x44', '\x3', '\x2', '\x2', '\x2', '\x44', '\x45', '\x3', 
+		'\x2', '\x2', '\x2', '\x45', '\x46', '\a', '\x2', '\x2', '\x3', '\x46', 
+		'\x3', '\x3', '\x2', '\x2', '\x2', 'G', 'H', '\a', '\x3', '\x2', '\x2', 
+		'H', 'J', '\x5', '*', '\x16', '\x2', 'I', 'K', '\x5', '\xE', '\b', '\x2', 
+		'J', 'I', '\x3', '\x2', '\x2', '\x2', 'J', 'K', '\x3', '\x2', '\x2', '\x2', 
+		'K', 'L', '\x3', '\x2', '\x2', '\x2', 'L', 'M', '\x5', '\x10', '\t', '\x2', 
+		'M', '\x5', '\x3', '\x2', '\x2', '\x2', 'N', 'P', '\a', '\x4', '\x2', 
+		'\x2', 'O', 'Q', '\x5', '\b', '\x5', '\x2', 'P', 'O', '\x3', '\x2', '\x2', 
+		'\x2', 'Q', 'R', '\x3', '\x2', '\x2', '\x2', 'R', 'P', '\x3', '\x2', '\x2', 
+		'\x2', 'R', 'S', '\x3', '\x2', '\x2', '\x2', 'S', '\a', '\x3', '\x2', 
+		'\x2', '\x2', 'T', 'U', '\a', '\x14', '\x2', '\x2', 'U', 'V', '\a', '\x5', 
+		'\x2', '\x2', 'V', 'X', '\x5', '*', '\x16', '\x2', 'W', 'Y', '\x5', '\xE', 
+		'\b', '\x2', 'X', 'W', '\x3', '\x2', '\x2', '\x2', 'X', 'Y', '\x3', '\x2', 
+		'\x2', '\x2', 'Y', 'Z', '\x3', '\x2', '\x2', '\x2', 'Z', '[', '\x5', '\x10', 
+		'\t', '\x2', '[', '\t', '\x3', '\x2', '\x2', '\x2', '\\', '^', '\a', '\x6', 
+		'\x2', '\x2', ']', '_', '\x5', '\f', '\a', '\x2', '^', ']', '\x3', '\x2', 
+		'\x2', '\x2', '_', '`', '\x3', '\x2', '\x2', '\x2', '`', '^', '\x3', '\x2', 
+		'\x2', '\x2', '`', '\x61', '\x3', '\x2', '\x2', '\x2', '\x61', '\v', '\x3', 
+		'\x2', '\x2', '\x2', '\x62', '\x63', '\a', '\x14', '\x2', '\x2', '\x63', 
+		'\x64', '\a', '\x5', '\x2', '\x2', '\x64', '\x65', '\x5', '*', '\x16', 
+		'\x2', '\x65', '\r', '\x3', '\x2', '\x2', '\x2', '\x66', 'g', '\a', '\a', 
+		'\x2', '\x2', 'g', 'h', '\a', '\x14', '\x2', '\x2', 'h', '\xF', '\x3', 
+		'\x2', '\x2', '\x2', 'i', 'l', '\x5', '\x18', '\r', '\x2', 'j', 'l', '\x5', 
+		'\x12', '\n', '\x2', 'k', 'i', '\x3', '\x2', '\x2', '\x2', 'k', 'j', '\x3', 
+		'\x2', '\x2', '\x2', 'l', '\x11', '\x3', '\x2', '\x2', '\x2', 'm', 'o', 
+		'\x5', '\x14', '\v', '\x2', 'n', 'm', '\x3', '\x2', '\x2', '\x2', 'o', 
+		'p', '\x3', '\x2', '\x2', '\x2', 'p', 'n', '\x3', '\x2', '\x2', '\x2', 
+		'p', 'q', '\x3', '\x2', '\x2', '\x2', 'q', 'r', '\x3', '\x2', '\x2', '\x2', 
+		'r', 's', '\x5', '\x16', '\f', '\x2', 's', '\x13', '\x3', '\x2', '\x2', 
+		'\x2', 't', 'u', '\a', '\b', '\x2', '\x2', 'u', 'v', '\a', '\x14', '\x2', 
+		'\x2', 'v', 'w', '\x5', '\x18', '\r', '\x2', 'w', '\x15', '\x3', '\x2', 
+		'\x2', '\x2', 'x', 'y', '\a', '\t', '\x2', '\x2', 'y', 'z', '\x5', '\x1A', 
+		'\xE', '\x2', 'z', '\x17', '\x3', '\x2', '\x2', '\x2', '{', '|', '\x5', 
+		'\x1A', '\xE', '\x2', '|', '}', '\x5', '\x1C', '\xF', '\x2', '}', '~', 
+		'\x5', '\x1E', '\x10', '\x2', '~', '\x19', '\x3', '\x2', '\x2', '\x2', 
+		'\x7F', '\x80', '\t', '\x2', '\x2', '\x2', '\x80', '\x81', '\a', '\x15', 
+		'\x2', '\x2', '\x81', '\x1B', '\x3', '\x2', '\x2', '\x2', '\x82', '\x83', 
+		'\a', '\f', '\x2', '\x2', '\x83', '\x84', '\a', '\x15', '\x2', '\x2', 
+		'\x84', '\x1D', '\x3', '\x2', '\x2', '\x2', '\x85', '\x86', '\a', '\r', 
+		'\x2', '\x2', '\x86', '\x87', '\a', '\x15', '\x2', '\x2', '\x87', '\x1F', 
+		'\x3', '\x2', '\x2', '\x2', '\x88', '\x89', '\a', '\x14', '\x2', '\x2', 
+		'\x89', '\x8A', '\a', '\x5', '\x2', '\x2', '\x8A', '\x8B', '\x5', '\"', 
+		'\x12', '\x2', '\x8B', '!', '\x3', '\x2', '\x2', '\x2', '\x8C', '\x8D', 
+		'\a', '\x14', '\x2', '\x2', '\x8D', '#', '\x3', '\x2', '\x2', '\x2', '\x8E', 
+		'\x8F', '\a', '\xE', '\x2', '\x2', '\x8F', '\x94', '\x5', ' ', '\x11', 
+		'\x2', '\x90', '\x91', '\a', '\xF', '\x2', '\x2', '\x91', '\x93', '\x5', 
+		' ', '\x11', '\x2', '\x92', '\x90', '\x3', '\x2', '\x2', '\x2', '\x93', 
+		'\x96', '\x3', '\x2', '\x2', '\x2', '\x94', '\x92', '\x3', '\x2', '\x2', 
+		'\x2', '\x94', '\x95', '\x3', '\x2', '\x2', '\x2', '\x95', '%', '\x3', 
+		'\x2', '\x2', '\x2', '\x96', '\x94', '\x3', '\x2', '\x2', '\x2', '\x97', 
+		'\x98', '\a', '\x10', '\x2', '\x2', '\x98', '\x9D', '\x5', ' ', '\x11', 
+		'\x2', '\x99', '\x9A', '\a', '\xF', '\x2', '\x2', '\x9A', '\x9C', '\x5', 
+		' ', '\x11', '\x2', '\x9B', '\x99', '\x3', '\x2', '\x2', '\x2', '\x9C', 
+		'\x9F', '\x3', '\x2', '\x2', '\x2', '\x9D', '\x9B', '\x3', '\x2', '\x2', 
+		'\x2', '\x9D', '\x9E', '\x3', '\x2', '\x2', '\x2', '\x9E', '\'', '\x3', 
+		'\x2', '\x2', '\x2', '\x9F', '\x9D', '\x3', '\x2', '\x2', '\x2', '\xA0', 
+		'\xA1', '\x5', '&', '\x14', '\x2', '\xA1', '\xA2', '\a', '\x5', '\x2', 
+		'\x2', '\xA2', '\xA6', '\x3', '\x2', '\x2', '\x2', '\xA3', '\xA4', '\x5', 
+		'$', '\x13', '\x2', '\xA4', '\xA5', '\a', '\x5', '\x2', '\x2', '\xA5', 
+		'\xA7', '\x3', '\x2', '\x2', '\x2', '\xA6', '\xA3', '\x3', '\x2', '\x2', 
+		'\x2', '\xA6', '\xA7', '\x3', '\x2', '\x2', '\x2', '\xA7', '\xB1', '\x3', 
+		'\x2', '\x2', '\x2', '\xA8', '\xA9', '\x5', '$', '\x13', '\x2', '\xA9', 
+		'\xAA', '\a', '\x5', '\x2', '\x2', '\xAA', '\xAE', '\x3', '\x2', '\x2', 
+		'\x2', '\xAB', '\xAC', '\x5', '&', '\x14', '\x2', '\xAC', '\xAD', '\a', 
+		'\x5', '\x2', '\x2', '\xAD', '\xAF', '\x3', '\x2', '\x2', '\x2', '\xAE', 
+		'\xAB', '\x3', '\x2', '\x2', '\x2', '\xAE', '\xAF', '\x3', '\x2', '\x2', 
+		'\x2', '\xAF', '\xB1', '\x3', '\x2', '\x2', '\x2', '\xB0', '\xA0', '\x3', 
+		'\x2', '\x2', '\x2', '\xB0', '\xA8', '\x3', '\x2', '\x2', '\x2', '\xB0', 
+		'\xB1', '\x3', '\x2', '\x2', '\x2', '\xB1', ')', '\x3', '\x2', '\x2', 
+		'\x2', '\xB2', '\xB3', '\x5', '(', '\x15', '\x2', '\xB3', '\xB4', '\x5', 
+		'.', '\x18', '\x2', '\xB4', '+', '\x3', '\x2', '\x2', '\x2', '\xB5', '\xB8', 
+		'\x5', '\x30', '\x19', '\x2', '\xB6', '\xB8', '\x5', '\x36', '\x1C', '\x2', 
+		'\xB7', '\xB5', '\x3', '\x2', '\x2', '\x2', '\xB7', '\xB6', '\x3', '\x2', 
+		'\x2', '\x2', '\xB8', '-', '\x3', '\x2', '\x2', '\x2', '\xB9', '\xBA', 
+		'\x5', '\x30', '\x19', '\x2', '\xBA', '\xBB', '\a', '\x11', '\x2', '\x2', 
+		'\xBB', '\xBC', '\x5', '\x30', '\x19', '\x2', '\xBC', '\xC2', '\x3', '\x2', 
+		'\x2', '\x2', '\xBD', '\xBE', '\x5', '\x36', '\x1C', '\x2', '\xBE', '\xBF', 
+		'\a', '\x11', '\x2', '\x2', '\xBF', '\xC0', '\x5', '\x36', '\x1C', '\x2', 
+		'\xC0', '\xC2', '\x3', '\x2', '\x2', '\x2', '\xC1', '\xB9', '\x3', '\x2', 
+		'\x2', '\x2', '\xC1', '\xBD', '\x3', '\x2', '\x2', '\x2', '\xC2', '/', 
+		'\x3', '\x2', '\x2', '\x2', '\xC3', '\xC6', '\x5', '\x32', '\x1A', '\x2', 
+		'\xC4', '\xC6', '\x5', '\x34', '\x1B', '\x2', '\xC5', '\xC3', '\x3', '\x2', 
+		'\x2', '\x2', '\xC5', '\xC4', '\x3', '\x2', '\x2', '\x2', '\xC6', '\x31', 
+		'\x3', '\x2', '\x2', '\x2', '\xC7', '\xC8', '\a', '\x14', '\x2', '\x2', 
+		'\xC8', '\x33', '\x3', '\x2', '\x2', '\x2', '\xC9', '\xCA', '\a', '\x14', 
+		'\x2', '\x2', '\xCA', '\xCB', '\a', '\x12', '\x2', '\x2', '\xCB', '\xD0', 
+		'\x5', '\x30', '\x19', '\x2', '\xCC', '\xCD', '\a', '\xF', '\x2', '\x2', 
+		'\xCD', '\xCF', '\x5', '\x30', '\x19', '\x2', '\xCE', '\xCC', '\x3', '\x2', 
+		'\x2', '\x2', '\xCF', '\xD2', '\x3', '\x2', '\x2', '\x2', '\xD0', '\xCE', 
+		'\x3', '\x2', '\x2', '\x2', '\xD0', '\xD1', '\x3', '\x2', '\x2', '\x2', 
+		'\xD1', '\xD3', '\x3', '\x2', '\x2', '\x2', '\xD2', '\xD0', '\x3', '\x2', 
+		'\x2', '\x2', '\xD3', '\xD4', '\a', '\x13', '\x2', '\x2', '\xD4', '\x35', 
+		'\x3', '\x2', '\x2', '\x2', '\xD5', '\xD6', '\x5', '\x38', '\x1D', '\x2', 
+		'\xD6', '\xD7', '\x5', '\x36', '\x1C', '\x2', '\xD7', '\xDB', '\x3', '\x2', 
+		'\x2', '\x2', '\xD8', '\xDB', '\x5', ':', '\x1E', '\x2', '\xD9', '\xDB', 
+		'\x5', '<', '\x1F', '\x2', '\xDA', '\xD5', '\x3', '\x2', '\x2', '\x2', 
+		'\xDA', '\xD8', '\x3', '\x2', '\x2', '\x2', '\xDA', '\xD9', '\x3', '\x2', 
+		'\x2', '\x2', '\xDB', '\x37', '\x3', '\x2', '\x2', '\x2', '\xDC', '\xDD', 
+		'\b', '\x1D', '\x1', '\x2', '\xDD', '\xDE', '\x5', '<', '\x1F', '\x2', 
+		'\xDE', '\xE3', '\x3', '\x2', '\x2', '\x2', '\xDF', '\xE0', '\f', '\x4', 
+		'\x2', '\x2', '\xE0', '\xE2', '\x5', '\x36', '\x1C', '\x2', '\xE1', '\xDF', 
+		'\x3', '\x2', '\x2', '\x2', '\xE2', '\xE5', '\x3', '\x2', '\x2', '\x2', 
+		'\xE3', '\xE1', '\x3', '\x2', '\x2', '\x2', '\xE3', '\xE4', '\x3', '\x2', 
+		'\x2', '\x2', '\xE4', '\x39', '\x3', '\x2', '\x2', '\x2', '\xE5', '\xE3', 
+		'\x3', '\x2', '\x2', '\x2', '\xE6', '\xE7', '\a', '\x12', '\x2', '\x2', 
+		'\xE7', '\xE8', '\x5', '\x36', '\x1C', '\x2', '\xE8', '\xE9', '\a', '\x13', 
+		'\x2', '\x2', '\xE9', ';', '\x3', '\x2', '\x2', '\x2', '\xEA', '\xEB', 
+		'\a', '\x14', '\x2', '\x2', '\xEB', '=', '\x3', '\x2', '\x2', '\x2', '\x15', 
+		'@', '\x43', 'J', 'R', 'X', '`', 'k', 'p', '\x94', '\x9D', '\xA6', '\xAE', 
+		'\xB0', '\xB7', '\xC1', '\xC5', '\xD0', '\xDA', '\xE3',
 	};
 
 	public static readonly ATN _ATN =
diff --git a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/TransformationStep_Listener.cs b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/TransformationStep_Listener.cs
index 125ec04..88569f2 100644
--- a/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/TransformationStep_Listener.cs
+++ b/BewerterStrukturellerInduktion/Eingabeverwaltung/Parser/TransformationStep_Listener.cs
@@ -6,6 +6,7 @@ using Antlr4.Runtime.Misc;
 using System.Collections.Generic;
 using System;
 using System.Linq;
+using Eingabeverwaltung.Parser.ADT_Parser;
 
 namespace Eingabeverwaltung.Parser
 {
@@ -282,6 +283,12 @@ namespace Eingabeverwaltung.Parser
         public void EnterMytree([NotNull] ProofParser.MytreeContext context) { }
         public void ExitMytree([NotNull] ProofParser.MytreeContext context) { }
 
+        public void EnterEq_s([NotNull] ProofParser.Eq_sContext context) { }
+        public void ExitEq_s([NotNull] ProofParser.Eq_sContext context) { }
+        // classic Trees
+        public void EnterClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+        public void ExitClassicTree([NotNull] ProofParser.ClassicTreeContext context) { }
+
         public void EnterTreeLeaf([NotNull] ProofParser.TreeLeafContext context) { }
         public void ExitTreeLeaf([NotNull] ProofParser.TreeLeafContext context)
             => LH.ExitTreeLeaf(context.BEZ().GetText());
@@ -290,6 +297,18 @@ namespace Eingabeverwaltung.Parser
         public void ExitTreeNode([NotNull] ProofParser.TreeNodeContext context)
             => LH.ExitTreeNode(context.BEZ().GetText(), context.ChildCount, context.GetText());
 
+        public void EnterFTree([NotNull] ProofParser.FTreeContext context) => throw new NotImplementedException();
+        public void ExitFTree([NotNull] ProofParser.FTreeContext context) => throw new NotImplementedException();
+
+        public void EnterFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+        public void ExitFTreeBracketFree([NotNull] ProofParser.FTreeBracketFreeContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBracket([NotNull] ProofParser.TreeBracketContext context) => throw new NotImplementedException();
+        public void ExitTreeBracket([NotNull] ProofParser.TreeBracketContext context) => throw new NotImplementedException();
+
+        public void EnterTreeBez([NotNull] ProofParser.TreeBezContext context) => throw new NotImplementedException();
+
+        public void ExitTreeBez([NotNull] ProofParser.TreeBezContext context) => throw new NotImplementedException();
         // useless Interface requirements
         public void EnterEveryRule(ParserRuleContext ctx) { }
         public void ExitEveryRule(ParserRuleContext ctx) { }
diff --git a/Create_And_Test_Parsers.bat b/Create_And_Test_Parsers.bat
index a37da4b..7c69118 100644
--- a/Create_And_Test_Parsers.bat
+++ b/Create_And_Test_Parsers.bat
@@ -6,7 +6,7 @@ call cd ANTRL-Grammatiken\ADT
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" ADT.g4
 call javac ADT*.java
 call grun ADT adt -gui ADT_Bsp_NatTree.txt
-call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BaumtransformationBewerter\Eingabeverwaltung\Parser\ADT_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.ADT_Parser" ADT.g4
+call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BewerterStrukturellerInduktion\Eingabeverwaltung\Parser\ADT_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.ADT_Parser" ADT.g4
 
 call cd %START_PATH%
 
@@ -15,7 +15,7 @@ call cd ANTRL-Grammatiken\Aufgabenstellung
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" Task.g4
 call javac Task*.java
 call grun Task task -gui Task_Bsp_plus_komm.txt
-call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BaumtransformationBewerter\Eingabeverwaltung\Parser\Task_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.Task_Parser" Task.g4
+call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BewerterStrukturellerInduktion\Eingabeverwaltung\Parser\Task_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.Task_Parser" Task.g4
 
 call cd %START_PATH%
 
@@ -24,6 +24,6 @@ call cd ANTRL-Grammatiken\Beweis
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" Proof.g4
 call javac Proof*.java
 call grun Proof proof -gui Induction_Bsp_plus_komm.txt
-call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BaumtransformationBewerter\Eingabeverwaltung\Parser\Proof_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.Proof_Parser" Proof.g4
+call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" -o "%START_PATH%BewerterStrukturellerInduktion\Eingabeverwaltung\Parser\Proof_Parser" -Dlanguage=CSharp -package "Eingabeverwaltung.Parser.Proof_Parser" Proof.g4
 
 call cd %START_PATH%
\ No newline at end of file
diff --git a/Test_Parsers.bat b/Test_Parsers.bat
index e675819..d335648 100644
--- a/Test_Parsers.bat
+++ b/Test_Parsers.bat
@@ -5,7 +5,7 @@ echo calculating ADT
 call cd ANTRL-Grammatiken\ADT
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" ADT.g4
 call javac ADT*.java
-call grun ADT adt -gui ADT_Bsp_NatTree.txt
+call grun ADT adt -gui ADT_Bsp_Peano_FuncBrackets.txt
 
 call cd %START_PATH%
 
@@ -13,7 +13,7 @@ echo calculating Task
 call cd ANTRL-Grammatiken\Aufgabenstellung
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" Task.g4
 call javac Task*.java
-call grun Task task -gui Task_Bsp_NatTree.txt
+call grun Task task -gui Task_Bsp_plus_komm_FuncBrackets.txt
 
 call cd %START_PATH%
 
@@ -21,6 +21,6 @@ echo calculating Proof
 call cd ANTRL-Grammatiken\Beweis
 call antlr4 -lib "%START_PATH%ANTRL-Grammatiken\Lib" Proof.g4
 call javac Proof*.java
-call grun Proof proof -gui demo).proof
+call grun Proof proof -gui Induction_Bsp_plus_komm_FuncBrackets.txt
 
 call cd %START_PATH%
\ No newline at end of file
-- 
GitLab