From e4b9854fa4552ff7f68904377d4561c45c276b10 Mon Sep 17 00:00:00 2001 From: Becca Date: Wed, 2 Sep 2015 16:39:21 -0500 Subject: [PATCH 001/186] Add README.txt --- README.txt | 1 + 1 file changed, 1 insertion(+) create mode 100755 README.txt diff --git a/README.txt b/README.txt new file mode 100755 index 0000000..45e66b0 --- /dev/null +++ b/README.txt @@ -0,0 +1 @@ +Yay this works! \ No newline at end of file From 445b4533942e38dbf168068a35c32ea134892fa5 Mon Sep 17 00:00:00 2001 From: shadow8t4 Date: Wed, 2 Sep 2015 16:49:15 -0500 Subject: [PATCH 002/186] Update README.txt --- README.txt | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/README.txt b/README.txt index 45e66b0..f980e9a 100755 --- a/README.txt +++ b/README.txt @@ -1 +1,3 @@ -Yay this works! \ No newline at end of file +Yay this works! + +test From e9bad3c250e1c3f351c7e6f25f6c73d028bcac1a Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Wed, 2 Sep 2015 16:53:02 -0500 Subject: [PATCH 003/186] Update README.txt --- README.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.txt b/README.txt index f980e9a..b3962f1 100755 --- a/README.txt +++ b/README.txt @@ -1,3 +1,5 @@ Yay this works! test + +Brandon was here From 5fd5254b31c49de9c9adb4b17426d955c84c954c Mon Sep 17 00:00:00 2001 From: Becca Date: Wed, 2 Sep 2015 16:55:04 -0500 Subject: [PATCH 004/186] kill me --- READMEFIRST.txt | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100755 READMEFIRST.txt diff --git a/READMEFIRST.txt b/READMEFIRST.txt new file mode 100755 index 0000000..386fd09 --- /dev/null +++ b/READMEFIRST.txt @@ -0,0 +1,37 @@ +DO THESE THINGS: + + + +git config --global user.name "NAME" + +git config --global user.email "EMAIL" + + + +Make a new directory for the repository and navigate into it: + + + +git init + +git remote add origin https://github.tamu.edu/scho4077/315ABBW.git + + + +Once you've added or changed a file: + + + +git commit -m "this is a description of what you're doing!" + +git push -u origin master + + + +Change branch as necessary + +Get updates from website with: + + + +git pull From b9096f337de3ddd10488b0e2d80f13d24351d87c Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Wed, 2 Sep 2015 16:55:59 -0500 Subject: [PATCH 005/186] Update README.txt --- README.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.txt b/README.txt index b3962f1..6dc2c14 100755 --- a/README.txt +++ b/README.txt @@ -3,3 +3,5 @@ Yay this works! test Brandon was here + +William was here From 6efa25453425184200514b3cd60342969cb1ec38 Mon Sep 17 00:00:00 2001 From: Becca Date: Wed, 2 Sep 2015 17:02:04 -0500 Subject: [PATCH 006/186] ddd --- README.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.txt b/README.txt index b3962f1..6dc2c14 100755 --- a/README.txt +++ b/README.txt @@ -3,3 +3,5 @@ Yay this works! test Brandon was here + +William was here From e7d8c66c84e95521ac172f7ba562ee4f6dd7a434 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Wed, 2 Sep 2015 17:03:49 -0500 Subject: [PATCH 007/186] Delete README.txt --- README.txt | 7 ------- 1 file changed, 7 deletions(-) delete mode 100755 README.txt diff --git a/README.txt b/README.txt deleted file mode 100755 index 6dc2c14..0000000 --- a/README.txt +++ /dev/null @@ -1,7 +0,0 @@ -Yay this works! - -test - -Brandon was here - -William was here From 2d392e59da3ae013fd5f9e956a5fd6f3c45755b3 Mon Sep 17 00:00:00 2001 From: Becca Date: Thu, 3 Sep 2015 13:05:28 -0500 Subject: [PATCH 008/186] finally added the correct readme --- readme.txt | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100755 readme.txt diff --git a/readme.txt b/readme.txt new file mode 100755 index 0000000..9485a40 --- /dev/null +++ b/readme.txt @@ -0,0 +1,45 @@ +DO THESE THINGS: + + + +git config --global user.name "NAME" + +git config --global user.email "EMAIL" + + + +Make a new directory for the repository and navigate into it: + + + +git init + +git remote add origin https://github.tamu.edu/scho4077/315ABBW.git + + + +Once you've added or changed a file: + + + +git commit -m "this is a description of what you're doing!" + +git push -u origin master + + + +Change branch as necessary + +Get updates from website with: + + + +git pull + + + +FUN FACT: When making new files, type this: + + + +git add filename.txt From 507aef28eb09b9c8b8f1c70e2af6982a97392e6f Mon Sep 17 00:00:00 2001 From: scho4077 Date: Thu, 3 Sep 2015 13:06:14 -0500 Subject: [PATCH 009/186] Delete READMEFIRST.txt --- READMEFIRST.txt | 45 --------------------------------------------- 1 file changed, 45 deletions(-) delete mode 100755 READMEFIRST.txt diff --git a/READMEFIRST.txt b/READMEFIRST.txt deleted file mode 100755 index 9485a40..0000000 --- a/READMEFIRST.txt +++ /dev/null @@ -1,45 +0,0 @@ -DO THESE THINGS: - - - -git config --global user.name "NAME" - -git config --global user.email "EMAIL" - - - -Make a new directory for the repository and navigate into it: - - - -git init - -git remote add origin https://github.tamu.edu/scho4077/315ABBW.git - - - -Once you've added or changed a file: - - - -git commit -m "this is a description of what you're doing!" - -git push -u origin master - - - -Change branch as necessary - -Get updates from website with: - - - -git pull - - - -FUN FACT: When making new files, type this: - - - -git add filename.txt From efcef55e500c572291cae4303ca017e17cd4ef47 Mon Sep 17 00:00:00 2001 From: Becca Date: Thu, 3 Sep 2015 13:09:19 -0500 Subject: [PATCH 010/186] testing the working branch --- branchtest.txt | 1 + 1 file changed, 1 insertion(+) create mode 100755 branchtest.txt diff --git a/branchtest.txt b/branchtest.txt new file mode 100755 index 0000000..14dfe0f --- /dev/null +++ b/branchtest.txt @@ -0,0 +1 @@ +testing branches! \ No newline at end of file From b287f413dcabf107d1194b20033dd83352c6d82b Mon Sep 17 00:00:00 2001 From: scho4077 Date: Fri, 4 Sep 2015 11:55:10 -0500 Subject: [PATCH 011/186] Update readme.txt --- readme.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/readme.txt b/readme.txt index 9485a40..859d29b 100755 --- a/readme.txt +++ b/readme.txt @@ -1,3 +1,5 @@ +This is helpful: http://gitimmersion.com/ + DO THESE THINGS: From 4c3c67bb72222f6cf4a2917edeeceffe30081ec2 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Wed, 9 Sep 2015 16:49:47 -0500 Subject: [PATCH 012/186] Delete branchtest.txt --- branchtest.txt | 1 - 1 file changed, 1 deletion(-) delete mode 100755 branchtest.txt diff --git a/branchtest.txt b/branchtest.txt deleted file mode 100755 index 14dfe0f..0000000 --- a/branchtest.txt +++ /dev/null @@ -1 +0,0 @@ -testing branches! \ No newline at end of file From c180da18b2ea9939d43ad5bce248fd7cfe9c1326 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Wed, 9 Sep 2015 16:49:55 -0500 Subject: [PATCH 013/186] Delete readme.txt --- readme.txt | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) delete mode 100755 readme.txt diff --git a/readme.txt b/readme.txt deleted file mode 100755 index 859d29b..0000000 --- a/readme.txt +++ /dev/null @@ -1,47 +0,0 @@ -This is helpful: http://gitimmersion.com/ - -DO THESE THINGS: - - - -git config --global user.name "NAME" - -git config --global user.email "EMAIL" - - - -Make a new directory for the repository and navigate into it: - - - -git init - -git remote add origin https://github.tamu.edu/scho4077/315ABBW.git - - - -Once you've added or changed a file: - - - -git commit -m "this is a description of what you're doing!" - -git push -u origin master - - - -Change branch as necessary - -Get updates from website with: - - - -git pull - - - -FUN FACT: When making new files, type this: - - - -git add filename.txt From c8148275ef0b74ee3c804c00a3e355431d939b31 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Wed, 9 Sep 2015 16:50:55 -0500 Subject: [PATCH 014/186] Create csvfragment.cpp --- csvfragment.cpp | 1 + 1 file changed, 1 insertion(+) create mode 100644 csvfragment.cpp diff --git a/csvfragment.cpp b/csvfragment.cpp new file mode 100644 index 0000000..8337712 --- /dev/null +++ b/csvfragment.cpp @@ -0,0 +1 @@ +// From 68feeaae5c5fb27bd8e3c7caf4fdb8169bb80bfb Mon Sep 17 00:00:00 2001 From: scho4077 Date: Wed, 9 Sep 2015 16:53:25 -0500 Subject: [PATCH 015/186] basic csv writing --- csvfragment.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/csvfragment.cpp b/csvfragment.cpp index 8337712..00f4ac0 100644 --- a/csvfragment.cpp +++ b/csvfragment.cpp @@ -1 +1,11 @@ -// +#include +#include +using namespace std; + +int main () { + ofstream csv; + csv.open ("testing.csv"); + csv << "Writing this to a file.\n"; + csv.close(); + return 0; +} From ae0b5e5a2adfa64e153d549c49aab3dc13528413 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Wed, 9 Sep 2015 16:56:40 -0500 Subject: [PATCH 016/186] Update csvfragment.cpp --- csvfragment.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/csvfragment.cpp b/csvfragment.cpp index 00f4ac0..8a6f5fe 100644 --- a/csvfragment.cpp +++ b/csvfragment.cpp @@ -5,7 +5,7 @@ using namespace std; int main () { ofstream csv; csv.open ("testing.csv"); - csv << "Writing this to a file.\n"; + csv << "Writing, this, to, a, file"; csv.close(); return 0; } From 3a53ef1533cc38977f6baaec51ec678e4a5e9bff Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:04:54 -0500 Subject: [PATCH 017/186] message --- csvfragment.cpp | 11 ----------- db_engine.h | 28 ++++++++++++++++++++++++++++ test.cpp | 5 +++++ 3 files changed, 33 insertions(+), 11 deletions(-) delete mode 100644 csvfragment.cpp create mode 100755 db_engine.h create mode 100755 test.cpp diff --git a/csvfragment.cpp b/csvfragment.cpp deleted file mode 100644 index 8a6f5fe..0000000 --- a/csvfragment.cpp +++ /dev/null @@ -1,11 +0,0 @@ -#include -#include -using namespace std; - -int main () { - ofstream csv; - csv.open ("testing.csv"); - csv << "Writing, this, to, a, file"; - csv.close(); - return 0; -} diff --git a/db_engine.h b/db_engine.h new file mode 100755 index 0000000..5c4b5ae --- /dev/null +++ b/db_engine.h @@ -0,0 +1,28 @@ +class db_engine { + //member variables + +public: + db_engine(); + + // + create(); + // + open(); + // + save(); + // + show(); + + // + insert(); + // + delete(); + // + select(); + // + project(); + // + product(); + // + union_comp(); +}; diff --git a/test.cpp b/test.cpp new file mode 100755 index 0000000..491d9f9 --- /dev/null +++ b/test.cpp @@ -0,0 +1,5 @@ +#include + +int main() { + std::cout << "Hello World!"; +} \ No newline at end of file From 5680c2e3d84670c3c4d9c8383bee6296327dae77 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:22:14 -0500 Subject: [PATCH 018/186] making more changes --- db_engine.cpp | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 db_engine.cpp diff --git a/db_engine.cpp b/db_engine.cpp new file mode 100755 index 0000000..332c645 --- /dev/null +++ b/db_engine.cpp @@ -0,0 +1,55 @@ +#include "db_engine" + +db_engine::db_engine(){ + // +} + +//create a new table in memory +db_engine::createCmd(){ + // +} + +//open a txt file, parse SQL script, load data in table +//void db_engine::openCmd(){ + // +//} + +//save all the commands to the db text file +void db_engine::saveCmd(){ + // +} + +//display the table currently stored in memory +void db_engine::showCmd(){ + // +} + +//add a tuple to a table in the memory +void db_engine::insertQuery(){ + // +} + +//remove a tuple from a table in the memory +void db_engine::deleteQuery(){ + // +} + +//search and return one more tuples from a table in the memory +void db_engine::selectQuery(){ + // +} + +//return a subset of attributes (columns) +void db_engine::projectQuery(){ + // +} + +//each row in the first table is paired with all the rows in the second table +void db_engine::productQuery(){ + // +} + +//true if relations have the same # of attributes and each attribute must be from the same domain +bool db_engine::unionComp(){ + return false; +} From 584fe622f4af524ce61587788b04ebab8bc861dc Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:23:06 -0500 Subject: [PATCH 019/186] still making more changes --- db_engine.h | 32 ++++++++++---------------------- 1 file changed, 10 insertions(+), 22 deletions(-) diff --git a/db_engine.h b/db_engine.h index 5c4b5ae..f319f02 100755 --- a/db_engine.h +++ b/db_engine.h @@ -3,26 +3,14 @@ class db_engine { public: db_engine(); - - // - create(); - // - open(); - // - save(); - // - show(); - - // - insert(); - // - delete(); - // - select(); - // - project(); - // - product(); - // - union_comp(); + void createCmd(); + //void openCmd(); + void saveCmd(); + void showCmd(); + void insertQuery(); + void deleteQuery(); + void selectQuery(); + void projectQuery(); + void productQuery(); + bool unionComp(); }; From 1dc28eaabb737b9305b41e6c30b375f05b95e421 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:24:54 -0500 Subject: [PATCH 020/186] ch ch ch ch changes --- db_engine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db_engine.cpp b/db_engine.cpp index 332c645..33a2486 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,4 +1,4 @@ -#include "db_engine" +#include "db_engine.h" db_engine::db_engine(){ // From ce45e3d6af72a2df928ca5f23f9284a6524a3def Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:42:26 -0500 Subject: [PATCH 021/186] testing a command --- db_engine.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/db_engine.cpp b/db_engine.cpp index 33a2486..30fa0b7 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -6,7 +6,7 @@ db_engine::db_engine(){ //create a new table in memory db_engine::createCmd(){ - // + //// } //open a txt file, parse SQL script, load data in table From e10021c8b3bc6dfc7b0292feabf5ee6829ca74b2 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:52:18 -0500 Subject: [PATCH 022/186] adding a README --- README.rtf | 232 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 232 insertions(+) create mode 100755 README.rtf diff --git a/README.rtf b/README.rtf new file mode 100755 index 0000000..fb28994 --- /dev/null +++ b/README.rtf @@ -0,0 +1,232 @@ +{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31506\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;} +{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} +{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;} +{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f39\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f39\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f409\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f410\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} +{\f412\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f413\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f416\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f417\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);} +{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} +{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;} +{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;} +{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} +{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} +{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} +{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} +{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} +{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} +{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} +{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;} +{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} +{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} +{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}} +{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0; +\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\chyperlink\ctint255\cshade255\red5\green99\blue193;}{\*\defchp \f31506\fs22 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1 +\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 +\ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\* +\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1 +\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{\*\cs15 \additive +\rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf17 \sbasedon10 \sunhideused \styrsid8798896 Hyperlink;}}{\*\rsidtbl \rsid8798896\rsid10840879}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0 +\mnaryLim1}{\info{\author Schofield, Rebecca T}{\operator Schofield, Rebecca T}{\creatim\yr2015\mo9\dy14\hr15\min35}{\revtim\yr2015\mo9\dy14\hr15\min51}{\version2}{\edmins16}{\nofpages1}{\nofwords189}{\nofchars1081}{\nofcharsws1268}{\vern57439}} +{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect +\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen +\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1440\dgvorigin1440\dghshow1\dgvshow1 +\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct +\asianbrkrule\rsidroot8798896\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0 +{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang +{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang +{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}} +\pard\plain \ltrpar\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 +\af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 I changed the name of the repo. To make everything pretty, rename your working folder, and type this li}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 ne: +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 +\par \tab git remote set-url origin }{\field\flddirty{\*\fldinst {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 HYPERLINK "https://github.tamu.edu/USERNAME/DMS.git" }}{\fldrslt {\rtlch\fcs1 \af31507 \ltrch\fcs0 +\cs15\insrsid8798896\charrsid8798896 https://github.tamu.edu/USERNAME/DMS.git}}}\sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 +\par I also set up development branches for each of us. I think this is the way we\rquote re supposed to have it, but this is my first GitHub project so I\rquote m not }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 at all }{\rtlch\fcs1 \af31507 +\ltrch\fcs0 \insrsid8798896 positive. +\par When beginning to work: +\par +\par \tab git checkout beccadev +\par +\par This switches to your development branch. At any time, just type git status to see what\rquote s going on. +\par Before }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 doing anything}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 , type}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 : +\par +\par }\pard \ltrpar\ql \fi720\li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10840879 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 git merge }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 +beccadev master}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 git push +\par +\par }\pard \ltrpar\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 This updates your branch with the master branch, and pushes the update to GitHub. + There is probably definitely a better way to do this. (I\rquote m pretty sure you can use git clone somehow) +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 Don\rquote t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it\rquote +s making me do this every time I edit anything, which is weird. +\par Commit changes with git commit \endash m \'93something descriptive\'94. +\par +\par If everything works the way you\rquote ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: +\par +\par \tab git merge master beccadev +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 +\par Type git push and you\rquote re done. +\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 +\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a +9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad +5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6 +b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0 +0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6 +a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f +c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512 +0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462 +a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865 +6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b +4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b +4757e8d3f729e245eb2b260a0238fd010000ffff0300504b030414000600080000002100aa5225dfc60600008b1a0000160000007468656d652f7468656d652f +7468656d65312e786d6cec595d8bdb46147d2ff43f08bd3bfe92fcb1c41b6cd9ceb6d94d42eca4e4716c8fadc98e344633de8d0981923c160aa569e943037deb +43691b48a02fe9afd936a54d217fa17746b63c638fbb9b2585a5640d8b343af7ce997bafce1d4997afdc8fa87384134e58dc708b970aae83e3211b9178d2706f +f7bbb99aeb7081e211a22cc60d778eb97b65f7c30f2ea31d11e2083b601ff31dd4704321a63bf93c1fc230e297d814c7706dcc920809384d26f951828ec16f44 +f3a542a1928f10895d274611b8bd311e932176fad2a5bbbb74dea1701a0b2e078634e949d7d8b050d8d1615122f89c0734718e106db830cf881df7f17de13a14 +7101171a6e41fdb9f9ddcb79b4b330a2628bad66d7557f0bbb85c1e8b0a4e64c26836c52cff3bd4a33f3af00546ce23ad54ea553c9fc29001a0e61a52917dda7 +dfaab7dafe02ab81d2438bef76b55d2e1a78cd7f798373d3973f03af40a97f6f03dfed06104503af4029dedfc07b5eb51478065e81527c65035f2d34db5ed5c0 +2b5048497cb8812ef89572b05c6d061933ba6785d77daf5b2d2d9caf50500d5975c929c62c16db6a2d42f758d2058004522448ec88f9148fd110aa3840940c12 +e2ec93490885374531e3305c2815ba8532fc973f4f1da988a01d8c346bc90b98f08d21c9c7e1c3844c45c3fd18bcba1ae4cdcb1fdfbc7cee9c3c7a71f2e89793 +c78f4f1efd9c3a32acf6503cd1ad5e7fffc5df4f3f75fe7afeddeb275fd9f15cc7fffed367bffdfaa51d082b5d85e0d5d7cffe78f1ecd5379ffff9c3130bbc99 +a0810eef930873e73a3e766eb10816a6426032c783e4ed2cfa2122ba45339e701423398bc57f478406fafa1c5164c1b5b019c13b09488c0d787576cf20dc0b93 +9920168fd7c2c8001e30465b2cb146e19a9c4b0b737f164fec9327331d770ba123dbdc018a8dfc766653d05662731984d8a07993a258a0098eb170e4357688b1 +6575770931e27a408609e36c2c9cbbc46921620d499f0c8c6a5a19ed9108f232b711847c1bb139b8e3b418b5adba8d8f4c24dc15885ac8f73135c27815cd048a +6c2efb28a27ac0f791086d247bf364a8e33a5c40a6279832a733c29cdb6c6e24b05e2de9d7405eec693fa0f3c84426821cda7cee23c674649b1d06218aa6366c +8fc4a18efd881f428922e7261336f80133ef10790e7940f1d674df21d848f7e96a701b9455a7b42a107965965872791533a37e7b733a4658490d08bfa1e71189 +4f15f73559f7ff5b5907217df5ed53cbaa2eaaa0371362bda3f6d6647c1b6e5dbc03968cc8c5d7ee369ac53731dc2e9b0decbd74bf976ef77f2fdddbeee7772f +d82b8d06f9965bc574abae36eed1d67dfb9850da13738af7b9daba73e84ca32e0c4a3bf5cc8ab3e7b8690887f24e86090cdc2441cac64998f88488b017a229ec +ef8bae7432e10bd713ee4c19876dbf1ab6fa96783a8b0ed8287d5c2d16e5a3692a1e1c89d578c1cfc6e15143a4e84a75f50896b9576c27ea51794940dabe0d09 +6d329344d942a2ba1c9441520fe610340b09b5b277c2a26e615193ee97a9da6001d4b2acc0d6c9810d57c3f53d30012378a242148f649ed2542fb3ab92f92e33 +bd2d984605c03e625901ab4cd725d7adcb93ab4b4bed0c99364868e566925091513d8c87688417d52947cf42e36d735d5fa5d4a02743a1e683d25ad1a8d6fe8d +c579730d76ebda40635d2968ec1c37dc4ad9879219a269c31dc3633f1c4653a81d2eb7bc884ee0ddd95024e90d7f1e6599265cb4110fd3802bd149d520220227 +0e2551c395cbcfd24063a5218a5bb104827061c9d541562e1a3948ba99643c1ee3a1d0d3ae8dc848a7a7a0f0a95658af2af3f383a5259b41ba7be1e8d819d059 +720b4189f9d5a20ce0887078fb534ca33922f03a3313b255fdad35a685eceaef13550da5e3884e43b4e828ba98a77025e5191d7596c5403b5bac1902aa8564d1 +080713d960f5a01add34eb1a2987ad5df7742319394d34573dd35015d935ed2a66ccb06c036bb13c5f93d7582d430c9aa677f854bad725b7bed4bab57d42d625 +20e059fc2c5df70c0d41a3b69acca026196fcab0d4ecc5a8d93b960b3c85da599a84a6fa95a5dbb5b8653dc23a1d0c9eabf383dd7ad5c2d078b9af549156df3d +f44f136c700fc4a30d2f81675470954af8f09020d810f5d49e24950db845ee8bc5ad0147ce2c210df741c16f7a41c90f72859adfc97965af90abf9cd72aee9fb +e562c72f16daadd243682c228c8a7efacda50bafa2e87cf1e5458d6f7c7d89966fdb2e0d599467eaeb4a5e11575f5f8aa5ed5f5f1c02a2f3a052ead6cbf55625 +572f37bb39afddaae5ea41a5956b57826abbdb0efc5abdfbd0758e14d86b9603afd2a9e52ac520c8799582a45fabe7aa5ea9d4f4aacd5ac76b3e5c6c6360e5a9 +7c2c6201e155bc76ff010000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f +7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be +9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980 +ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5b +babac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c0200001300000000000000000000000000000000005b436f6e74656e +745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000000000000000300100005f72656c732f +2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c00000000000000000000000000190200007468656d652f7468656d652f74 +68656d654d616e616765722e786d6c504b01022d0014000600080000002100aa5225dfc60600008b1a00001600000000000000000000000000d6020000746865 +6d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b0100002700000000000000000000000000d00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000cb0a00000000} +{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d +617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169 +6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363 +656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e} +{\*\latentstyles\lsdstimax371\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 1; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 5; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 9; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 1;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 2;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 3; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 4;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 5;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 6; +\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 7;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 8;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Indent; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 header;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footer; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index heading;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of figures; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope return;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation reference; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 line number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 page number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote text; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of authorities;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 macro;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 toa heading;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 5;\lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Closing; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Signature;\lsdsemihidden1 \lsdunhideused1 \lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 4; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Message Header;\lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Salutation; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Date;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Note Heading; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Block Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 FollowedHyperlink;\lsdqformat1 \lsdpriority22 \lsdlocked0 Strong; +\lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Document Map;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Plain Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 E-mail Signature; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Table;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 1; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 3; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 6; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 6; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Contemporary;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Elegant;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Professional; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 2; +\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Theme;\lsdsemihidden1 \lsdlocked0 Placeholder Text; +\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2; +\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List; +\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1; +\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision; +\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1; +\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1; +\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2; +\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2; +\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2; +\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3; +\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3; +\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4; +\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4; +\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4; +\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5; +\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5; +\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5; +\lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6; +\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6; +\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 6; +\lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis; +\lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdsemihidden1 \lsdunhideused1 \lsdpriority37 \lsdlocked0 Bibliography; +\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;\lsdpriority41 \lsdlocked0 Plain Table 1;\lsdpriority42 \lsdlocked0 Plain Table 2;\lsdpriority43 \lsdlocked0 Plain Table 3;\lsdpriority44 \lsdlocked0 Plain Table 4; +\lsdpriority45 \lsdlocked0 Plain Table 5;\lsdpriority40 \lsdlocked0 Grid Table Light;\lsdpriority46 \lsdlocked0 Grid Table 1 Light;\lsdpriority47 \lsdlocked0 Grid Table 2;\lsdpriority48 \lsdlocked0 Grid Table 3;\lsdpriority49 \lsdlocked0 Grid Table 4; +\lsdpriority50 \lsdlocked0 Grid Table 5 Dark;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 1; +\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 1;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 1;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 1; +\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 1;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 2;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 2; +\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 2;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 2; +\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 3;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 3;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 3;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 3; +\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 3;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 4; +\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 4;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 4;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 4;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 4; +\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 4;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 5; +\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 5;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 5;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 5; +\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 5;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 6;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 6; +\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 6;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 6; +\lsdpriority46 \lsdlocked0 List Table 1 Light;\lsdpriority47 \lsdlocked0 List Table 2;\lsdpriority48 \lsdlocked0 List Table 3;\lsdpriority49 \lsdlocked0 List Table 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark; +\lsdpriority51 \lsdlocked0 List Table 6 Colorful;\lsdpriority52 \lsdlocked0 List Table 7 Colorful;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 List Table 2 Accent 1;\lsdpriority48 \lsdlocked0 List Table 3 Accent 1; +\lsdpriority49 \lsdlocked0 List Table 4 Accent 1;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 1;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 1; +\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 List Table 2 Accent 2;\lsdpriority48 \lsdlocked0 List Table 3 Accent 2;\lsdpriority49 \lsdlocked0 List Table 4 Accent 2; +\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 2;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 3; +\lsdpriority47 \lsdlocked0 List Table 2 Accent 3;\lsdpriority48 \lsdlocked0 List Table 3 Accent 3;\lsdpriority49 \lsdlocked0 List Table 4 Accent 3;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 3; +\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 4;\lsdpriority47 \lsdlocked0 List Table 2 Accent 4; +\lsdpriority48 \lsdlocked0 List Table 3 Accent 4;\lsdpriority49 \lsdlocked0 List Table 4 Accent 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 4;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 4; +\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 List Table 2 Accent 5;\lsdpriority48 \lsdlocked0 List Table 3 Accent 5; +\lsdpriority49 \lsdlocked0 List Table 4 Accent 5;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 5;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 5; +\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 List Table 2 Accent 6;\lsdpriority48 \lsdlocked0 List Table 3 Accent 6;\lsdpriority49 \lsdlocked0 List Table 4 Accent 6; +\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 6;}}{\*\datastore 010500000200000018000000 +4d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000 +d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff +ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000200c +db162fefd001feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 +00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 +000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000 +0000000000000000000000000000000000000000000000000105000000000000}} \ No newline at end of file From 572d57b46c9ebea4578f4255281624e1d484412b Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:54:08 -0500 Subject: [PATCH 023/186] added README.txt --- README.txt | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100755 README.txt diff --git a/README.txt b/README.txt new file mode 100755 index 0000000..bc38460 --- /dev/null +++ b/README.txt @@ -0,0 +1,25 @@ +I changed the name of the repo. To make everything pretty, rename your working folder, and type this line: + + git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git + +I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. +When beginning to work: + + git checkout beccadev + +This switches to your development branch. At any time, just type git status to see what’s going on. +Before doing anything, type: + + git merge beccadev master + git push + +This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) +Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. +Commit changes with git commit –m “something descriptive”. + +If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: + + git merge master beccadev + +Type git push and you’re done. + From 7c252e37466b90c95ef057c394a3bfa33b8da8df Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 15:55:53 -0500 Subject: [PATCH 024/186] deleted rtf format --- README.rtf | 232 ----------------------------------------------------- 1 file changed, 232 deletions(-) delete mode 100755 README.rtf diff --git a/README.rtf b/README.rtf deleted file mode 100755 index fb28994..0000000 --- a/README.rtf +++ /dev/null @@ -1,232 +0,0 @@ -{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff31507\deff0\stshfdbch31506\stshfloch31506\stshfhich31506\stshfbi31507\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} -{\f37\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} -{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhimajor\f31502\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0302020204030204}Calibri Light;} -{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;} -{\fdbminor\f31505\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;} -{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman;}{\f39\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} -{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} -{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f39\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\f40\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} -{\f42\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\f43\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\f44\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\f45\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} -{\f46\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\f47\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\f409\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\f410\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} -{\f412\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\f413\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\f416\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\f417\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);} -{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} -{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} -{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbmajor\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} -{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} -{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} -{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhimajor\f31528\fbidi \fswiss\fcharset238\fprq2 Calibri Light CE;}{\fhimajor\f31529\fbidi \fswiss\fcharset204\fprq2 Calibri Light Cyr;} -{\fhimajor\f31531\fbidi \fswiss\fcharset161\fprq2 Calibri Light Greek;}{\fhimajor\f31532\fbidi \fswiss\fcharset162\fprq2 Calibri Light Tur;}{\fhimajor\f31535\fbidi \fswiss\fcharset186\fprq2 Calibri Light Baltic;} -{\fhimajor\f31536\fbidi \fswiss\fcharset163\fprq2 Calibri Light (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} -{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} -{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);} -{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;} -{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);} -{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fdbminor\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE;} -{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;} -{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);}{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;} -{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;} -{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;} -{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \froman\fcharset238\fprq2 Times New Roman CE;}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr;} -{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek;}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur;}{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew);} -{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic);}{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic;}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese);}} -{\colortbl;\red0\green0\blue0;\red0\green0\blue255;\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0; -\red128\green0\blue128;\red128\green0\blue0;\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\chyperlink\ctint255\cshade255\red5\green99\blue193;}{\*\defchp \f31506\fs22 }{\*\defpap \ql \li0\ri0\sa160\sl259\slmult1 -\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 -\ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext0 \sqformat \spriority0 Normal;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\* -\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa160\sl259\slmult1 -\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{\*\cs15 \additive -\rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf17 \sbasedon10 \sunhideused \styrsid8798896 Hyperlink;}}{\*\rsidtbl \rsid8798896\rsid10840879}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0 -\mnaryLim1}{\info{\author Schofield, Rebecca T}{\operator Schofield, Rebecca T}{\creatim\yr2015\mo9\dy14\hr15\min35}{\revtim\yr2015\mo9\dy14\hr15\min51}{\version2}{\edmins16}{\nofpages1}{\nofwords189}{\nofchars1081}{\nofcharsws1268}{\vern57439}} -{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl1440\margr1440\margt1440\margb1440\gutter0\ltrsect -\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen -\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin1440\dgvorigin1440\dghshow1\dgvshow1 -\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct -\asianbrkrule\rsidroot8798896\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0 -{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0\ltrpar \sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang -{\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang -{\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}} -\pard\plain \ltrpar\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af31507\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 -\af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 I changed the name of the repo. To make everything pretty, rename your working folder, and type this li}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 ne: -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 -\par \tab git remote set-url origin }{\field\flddirty{\*\fldinst {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 HYPERLINK "https://github.tamu.edu/USERNAME/DMS.git" }}{\fldrslt {\rtlch\fcs1 \af31507 \ltrch\fcs0 -\cs15\insrsid8798896\charrsid8798896 https://github.tamu.edu/USERNAME/DMS.git}}}\sectd \ltrsect\linex0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896\charrsid8798896 -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 -\par I also set up development branches for each of us. I think this is the way we\rquote re supposed to have it, but this is my first GitHub project so I\rquote m not }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 at all }{\rtlch\fcs1 \af31507 -\ltrch\fcs0 \insrsid8798896 positive. -\par When beginning to work: -\par -\par \tab git checkout beccadev -\par -\par This switches to your development branch. At any time, just type git status to see what\rquote s going on. -\par Before }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 doing anything}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 , type}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 : -\par -\par }\pard \ltrpar\ql \fi720\li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid10840879 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 git merge }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 -beccadev master}{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 git push -\par -\par }\pard \ltrpar\ql \li0\ri0\sa160\sl259\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 This updates your branch with the master branch, and pushes the update to GitHub. - There is probably definitely a better way to do this. (I\rquote m pretty sure you can use git clone somehow) -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 Don\rquote t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it\rquote -s making me do this every time I edit anything, which is weird. -\par Commit changes with git commit \endash m \'93something descriptive\'94. -\par -\par If everything works the way you\rquote ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: -\par -\par \tab git merge master beccadev -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid10840879 -\par Type git push and you\rquote re done. -\par }{\rtlch\fcs1 \af31507 \ltrch\fcs0 \insrsid8798896 -\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a -9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad -5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6 -b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0 -0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6 -a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f -c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512 -0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462 -a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865 -6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b -4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b -4757e8d3f729e245eb2b260a0238fd010000ffff0300504b030414000600080000002100aa5225dfc60600008b1a0000160000007468656d652f7468656d652f -7468656d65312e786d6cec595d8bdb46147d2ff43f08bd3bfe92fcb1c41b6cd9ceb6d94d42eca4e4716c8fadc98e344633de8d0981923c160aa569e943037deb -43691b48a02fe9afd936a54d217fa17746b63c638fbb9b2585a5640d8b343af7ce997bafce1d4997afdc8fa87384134e58dc708b970aae83e3211b9178d2706f -f7bbb99aeb7081e211a22cc60d778eb97b65f7c30f2ea31d11e2083b601ff31dd4704321a63bf93c1fc230e297d814c7706dcc920809384d26f951828ec16f44 -f3a542a1928f10895d274611b8bd311e932176fad2a5bbbb74dea1701a0b2e078634e949d7d8b050d8d1615122f89c0734718e106db830cf881df7f17de13a14 -7101171a6e41fdb9f9ddcb79b4b330a2628bad66d7557f0bbb85c1e8b0a4e64c26836c52cff3bd4a33f3af00546ce23ad54ea553c9fc29001a0e61a52917dda7 -dfaab7dafe02ab81d2438bef76b55d2e1a78cd7f798373d3973f03af40a97f6f03dfed06104503af4029dedfc07b5eb51478065e81527c65035f2d34db5ed5c0 -2b5048497cb8812ef89572b05c6d061933ba6785d77daf5b2d2d9caf50500d5975c929c62c16db6a2d42f758d2058004522448ec88f9148fd110aa3840940c12 -e2ec93490885374531e3305c2815ba8532fc973f4f1da988a01d8c346bc90b98f08d21c9c7e1c3844c45c3fd18bcba1ae4cdcb1fdfbc7cee9c3c7a71f2e89793 -c78f4f1efd9c3a32acf6503cd1ad5e7fffc5df4f3f75fe7afeddeb275fd9f15cc7fffed367bffdfaa51d082b5d85e0d5d7cffe78f1ecd5379ffff9c3130bbc99 -a0810eef930873e73a3e766eb10816a6426032c783e4ed2cfa2122ba45339e701423398bc57f478406fafa1c5164c1b5b019c13b09488c0d787576cf20dc0b93 -9920168fd7c2c8001e30465b2cb146e19a9c4b0b737f164fec9327331d770ba123dbdc018a8dfc766653d05662731984d8a07993a258a0098eb170e4357688b1 -6575770931e27a408609e36c2c9cbbc46921620d499f0c8c6a5a19ed9108f232b711847c1bb139b8e3b418b5adba8d8f4c24dc15885ac8f73135c27815cd048a -6c2efb28a27ac0f791086d247bf364a8e33a5c40a6279832a733c29cdb6c6e24b05e2de9d7405eec693fa0f3c84426821cda7cee23c674649b1d06218aa6366c -8fc4a18efd881f428922e7261336f80133ef10790e7940f1d674df21d848f7e96a701b9455a7b42a107965965872791533a37e7b733a4658490d08bfa1e71189 -4f15f73559f7ff5b5907217df5ed53cbaa2eaaa0371362bda3f6d6647c1b6e5dbc03968cc8c5d7ee369ac53731dc2e9b0decbd74bf976ef77f2fdddbeee7772f -d82b8d06f9965bc574abae36eed1d67dfb9850da13738af7b9daba73e84ca32e0c4a3bf5cc8ab3e7b8690887f24e86090cdc2441cac64998f88488b017a229ec -ef8bae7432e10bd713ee4c19876dbf1ab6fa96783a8b0ed8287d5c2d16e5a3692a1e1c89d578c1cfc6e15143a4e84a75f50896b9576c27ea51794940dabe0d09 -6d329344d942a2ba1c9441520fe610340b09b5b277c2a26e615193ee97a9da6001d4b2acc0d6c9810d57c3f53d30012378a242148f649ed2542fb3ab92f92e33 -bd2d984605c03e625901ab4cd725d7adcb93ab4b4bed0c99364868e566925091513d8c87688417d52947cf42e36d735d5fa5d4a02743a1e683d25ad1a8d6fe8d -c579730d76ebda40635d2968ec1c37dc4ad9879219a269c31dc3633f1c4653a81d2eb7bc884ee0ddd95024e90d7f1e6599265cb4110fd3802bd149d520220227 -0e2551c395cbcfd24063a5218a5bb104827061c9d541562e1a3948ba99643c1ee3a1d0d3ae8dc848a7a7a0f0a95658af2af3f383a5259b41ba7be1e8d819d059 -720b4189f9d5a20ce0887078fb534ca33922f03a3313b255fdad35a685eceaef13550da5e3884e43b4e828ba98a77025e5191d7596c5403b5bac1902aa8564d1 -080713d960f5a01add34eb1a2987ad5df7742319394d34573dd35015d935ed2a66ccb06c036bb13c5f93d7582d430c9aa677f854bad725b7bed4bab57d42d625 -20e059fc2c5df70c0d41a3b69acca026196fcab0d4ecc5a8d93b960b3c85da599a84a6fa95a5dbb5b8653dc23a1d0c9eabf383dd7ad5c2d078b9af549156df3d -f44f136c700fc4a30d2f81675470954af8f09020d810f5d49e24950db845ee8bc5ad0147ce2c210df741c16f7a41c90f72859adfc97965af90abf9cd72aee9fb -e562c72f16daadd243682c228c8a7efacda50bafa2e87cf1e5458d6f7c7d89966fdb2e0d599467eaeb4a5e11575f5f8aa5ed5f5f1c02a2f3a052ead6cbf55625 -572f37bb39afddaae5ea41a5956b57826abbdb0efc5abdfbd0758e14d86b9603afd2a9e52ac520c8799582a45fabe7aa5ea9d4f4aacd5ac76b3e5c6c6360e5a9 -7c2c6201e155bc76ff010000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f -7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be -9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980 -ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5b -babac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c0200001300000000000000000000000000000000005b436f6e74656e -745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000000000000000300100005f72656c732f -2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c00000000000000000000000000190200007468656d652f7468656d652f74 -68656d654d616e616765722e786d6c504b01022d0014000600080000002100aa5225dfc60600008b1a00001600000000000000000000000000d6020000746865 -6d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b0100002700000000000000000000000000d00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000cb0a00000000} -{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d -617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169 -6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363 -656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e} -{\*\latentstyles\lsdstimax371\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1; -\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4; -\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7; -\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 1; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 5; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 6;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index 9; -\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 1;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 2;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 3; -\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 4;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 5;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 6; -\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 7;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 8;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 9;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Indent; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 header;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footer; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 index heading;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of figures; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 envelope return;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 footnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation reference; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 line number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 page number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote reference;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 endnote text; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 table of authorities;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 macro;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 toa heading;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 3; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 3; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Bullet 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 3; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number 5;\lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Closing; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Signature;\lsdsemihidden1 \lsdunhideused1 \lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 4; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Continue 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Message Header;\lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Salutation; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Date;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Note Heading; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text Indent 3; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Block Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Hyperlink;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 FollowedHyperlink;\lsdqformat1 \lsdpriority22 \lsdlocked0 Strong; -\lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Document Map;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Plain Text;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 E-mail Signature; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Top of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Bottom of Form;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal (Web);\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Acronym; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Address;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Cite;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Code;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Definition; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Keyboard;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Preformatted;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Sample;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Typewriter; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 HTML Variable;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Normal Table;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 annotation subject;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 No List; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Outline List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 1; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Simple 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Classic 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Colorful 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 3; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Columns 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 6; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Grid 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 5;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 6; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 7;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table List 8;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table 3D effects 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Contemporary;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Elegant;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Professional; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Subtle 2;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 1;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 2; -\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Web 3;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Balloon Text;\lsdpriority39 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Table Theme;\lsdsemihidden1 \lsdlocked0 Placeholder Text; -\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2; -\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List; -\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1; -\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision; -\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1; -\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1; -\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2; -\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2; -\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2; -\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3; -\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3; -\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4; -\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4; -\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4; -\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5; -\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5; -\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5; -\lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6; -\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6; -\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 6; -\lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis; -\lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdsemihidden1 \lsdunhideused1 \lsdpriority37 \lsdlocked0 Bibliography; -\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;\lsdpriority41 \lsdlocked0 Plain Table 1;\lsdpriority42 \lsdlocked0 Plain Table 2;\lsdpriority43 \lsdlocked0 Plain Table 3;\lsdpriority44 \lsdlocked0 Plain Table 4; -\lsdpriority45 \lsdlocked0 Plain Table 5;\lsdpriority40 \lsdlocked0 Grid Table Light;\lsdpriority46 \lsdlocked0 Grid Table 1 Light;\lsdpriority47 \lsdlocked0 Grid Table 2;\lsdpriority48 \lsdlocked0 Grid Table 3;\lsdpriority49 \lsdlocked0 Grid Table 4; -\lsdpriority50 \lsdlocked0 Grid Table 5 Dark;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 1; -\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 1;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 1;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 1; -\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 1;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 2;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 2; -\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 2;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 2; -\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 3;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 3;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 3;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 3; -\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 3;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 4; -\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 4;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 4;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 4;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 4; -\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 4;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 5; -\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 5;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 5;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 5; -\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 5;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 6;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 6; -\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 6;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 6; -\lsdpriority46 \lsdlocked0 List Table 1 Light;\lsdpriority47 \lsdlocked0 List Table 2;\lsdpriority48 \lsdlocked0 List Table 3;\lsdpriority49 \lsdlocked0 List Table 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark; -\lsdpriority51 \lsdlocked0 List Table 6 Colorful;\lsdpriority52 \lsdlocked0 List Table 7 Colorful;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 List Table 2 Accent 1;\lsdpriority48 \lsdlocked0 List Table 3 Accent 1; -\lsdpriority49 \lsdlocked0 List Table 4 Accent 1;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 1;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 1; -\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 List Table 2 Accent 2;\lsdpriority48 \lsdlocked0 List Table 3 Accent 2;\lsdpriority49 \lsdlocked0 List Table 4 Accent 2; -\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 2;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 3; -\lsdpriority47 \lsdlocked0 List Table 2 Accent 3;\lsdpriority48 \lsdlocked0 List Table 3 Accent 3;\lsdpriority49 \lsdlocked0 List Table 4 Accent 3;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 3; -\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 4;\lsdpriority47 \lsdlocked0 List Table 2 Accent 4; -\lsdpriority48 \lsdlocked0 List Table 3 Accent 4;\lsdpriority49 \lsdlocked0 List Table 4 Accent 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 4;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 4; -\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 List Table 2 Accent 5;\lsdpriority48 \lsdlocked0 List Table 3 Accent 5; -\lsdpriority49 \lsdlocked0 List Table 4 Accent 5;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 5;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 5; -\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 List Table 2 Accent 6;\lsdpriority48 \lsdlocked0 List Table 3 Accent 6;\lsdpriority49 \lsdlocked0 List Table 4 Accent 6; -\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 6;}}{\*\datastore 010500000200000018000000 -4d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000 -d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000200c -db162fefd001feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000 -00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000 -000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000 -0000000000000000000000000000000000000000000000000105000000000000}} \ No newline at end of file From b98c3966370b570e3a6a4c14af1d57e4ccbd1169 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 16:25:22 -0500 Subject: [PATCH 025/186] updating --- a.out | Bin 0 -> 17470 bytes db_engine.cpp | 3 ++- db_engine.h | 5 ++++- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100755 a.out diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..e63ad4387585e2180cc535465889233c33d32134 GIT binary patch literal 17470 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 aZCRU)?Kd&lr6OUw?{!EedD+T~Qv4Sup7)Ue literal 0 HcmV?d00001 diff --git a/db_engine.cpp b/db_engine.cpp index 30fa0b7..4afe038 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -5,7 +5,8 @@ db_engine::db_engine(){ } //create a new table in memory -db_engine::createCmd(){ +//creates a vector +void db_engine::createCmd(){ //// } diff --git a/db_engine.h b/db_engine.h index f319f02..a949dfd 100755 --- a/db_engine.h +++ b/db_engine.h @@ -1,5 +1,8 @@ +#include +#include + class db_engine { - //member variables + std::vector cmdList; public: db_engine(); From 83d0ae00fe395e7472644851590356441f660620 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Mon, 14 Sep 2015 16:46:41 -0500 Subject: [PATCH 026/186] Update README.txt --- README.txt | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/README.txt b/README.txt index bc38460..f0ade72 100755 --- a/README.txt +++ b/README.txt @@ -2,24 +2,26 @@ I changed the name of the repo. To make everything pretty, rename your working f git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git -I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. +I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. When beginning to work: git checkout beccadev -This switches to your development branch. At any time, just type git status to see what’s going on. +This switches to your development branch. At any time, just type git status to see what’s going on. Before doing anything, type: git merge beccadev master git push -This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) -Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. -Commit changes with git commit –m “something descriptive”. +This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) +Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. +Commit changes with git commit –m “something descriptiveâ€. -If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: +If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: git merge master beccadev -Type git push and you’re done. +Type git push and you’re done. + +MAKE SURE TO: commit often and delete your .o file before pushing. From 0b3fa73bda56028ffd22d7878d37d6fa3aa998a8 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 16:46:49 -0500 Subject: [PATCH 027/186] done saveCmd --- dbCmds.txt | 5 +++++ db_engine.cpp | 20 ++++++++++++++++---- db_engine.h | 1 + test.cpp | 5 ++++- 4 files changed, 26 insertions(+), 5 deletions(-) create mode 100644 dbCmds.txt diff --git a/dbCmds.txt b/dbCmds.txt new file mode 100644 index 0000000..9405325 --- /dev/null +++ b/dbCmds.txt @@ -0,0 +1,5 @@ +a +b +c +d +e diff --git a/db_engine.cpp b/db_engine.cpp index 4afe038..d6346c8 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,13 +1,16 @@ #include "db_engine.h" db_engine::db_engine(){ - // + cmdList.push_back("a"); + cmdList.push_back("b"); + cmdList.push_back("c"); + cmdList.push_back("d"); } //create a new table in memory //creates a vector void db_engine::createCmd(){ - //// + // } //open a txt file, parse SQL script, load data in table @@ -15,9 +18,18 @@ void db_engine::createCmd(){ // //} -//save all the commands to the db text file +//should write cmdList to a .txt file void db_engine::saveCmd(){ - // + std::ofstream dbCmdFile; + dbCmdFile.open("dbCmds.txt", std::ios_base::app); + + std::vector::iterator it = cmdList.begin(); + while (it != cmdList.end()){ + dbCmdFile << *it << "\n"; + ++it; + } + + cmdList.clear(); } //display the table currently stored in memory diff --git a/db_engine.h b/db_engine.h index a949dfd..7c9b31c 100755 --- a/db_engine.h +++ b/db_engine.h @@ -1,3 +1,4 @@ +#include #include #include diff --git a/test.cpp b/test.cpp index 491d9f9..0eafca0 100755 --- a/test.cpp +++ b/test.cpp @@ -1,5 +1,8 @@ #include +#include "db_engine.h" int main() { - std::cout << "Hello World!"; + db_engine engine; + engine.saveCmd(); + std::cout << "succesfully traversed the code!"; } \ No newline at end of file From efb56324cffc36335328eb440deb642c1034637b Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 16:49:57 -0500 Subject: [PATCH 028/186] fixed desync --- README.txt | 16 +++++++++------- a.out | Bin 17470 -> 0 bytes dbCmds.txt | 5 ----- 3 files changed, 9 insertions(+), 12 deletions(-) delete mode 100755 a.out delete mode 100644 dbCmds.txt diff --git a/README.txt b/README.txt index bc38460..f0ade72 100755 --- a/README.txt +++ b/README.txt @@ -2,24 +2,26 @@ I changed the name of the repo. To make everything pretty, rename your working f git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git -I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. +I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. When beginning to work: git checkout beccadev -This switches to your development branch. At any time, just type git status to see what’s going on. +This switches to your development branch. At any time, just type git status to see what’s going on. Before doing anything, type: git merge beccadev master git push -This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) -Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. -Commit changes with git commit –m “something descriptive”. +This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) +Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. +Commit changes with git commit –m “something descriptiveâ€. -If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: +If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: git merge master beccadev -Type git push and you’re done. +Type git push and you’re done. + +MAKE SURE TO: commit often and delete your .o file before pushing. diff --git a/a.out b/a.out deleted file mode 100755 index e63ad4387585e2180cc535465889233c33d32134..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 17470 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 aZCRU)?Kd&lr6OUw?{!EedD+T~Qv4Sup7)Ue diff --git a/dbCmds.txt b/dbCmds.txt deleted file mode 100644 index 9405325..0000000 --- a/dbCmds.txt +++ /dev/null @@ -1,5 +0,0 @@ -a -b -c -d -e From f710bc5f9113864cca232a1ddbfc04cc50da64e9 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 16:54:10 -0500 Subject: [PATCH 029/186] Revert "Update README.txt" This reverts commit 83d0ae00fe395e7472644851590356441f660620. --- README.txt | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/README.txt b/README.txt index f0ade72..bc38460 100755 --- a/README.txt +++ b/README.txt @@ -2,26 +2,24 @@ I changed the name of the repo. To make everything pretty, rename your working f git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git -I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. +I also set up development branches for each of us. I think this is the way we’re supposed to have it, but this is my first GitHub project so I’m not at all positive. When beginning to work: git checkout beccadev -This switches to your development branch. At any time, just type git status to see what’s going on. +This switches to your development branch. At any time, just type git status to see what’s going on. Before doing anything, type: git merge beccadev master git push -This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) -Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. -Commit changes with git commit –m “something descriptiveâ€. +This updates your branch with the master branch, and pushes the update to GitHub. There is probably definitely a better way to do this. (I’m pretty sure you can use git clone somehow) +Don’t forgot to use git add filename.txt to add any files you want saved to git. Or just use git add * to grab them all. For some reason it’s making me do this every time I edit anything, which is weird. +Commit changes with git commit –m “something descriptive”. -If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: +If everything works the way you’ve anticipated and it compiles properly and completely done, return to master with git checkout master and merge: git merge master beccadev -Type git push and you’re done. - -MAKE SURE TO: commit often and delete your .o file before pushing. +Type git push and you’re done. From 0678531d8114fbf23045ccc4c5d4427796a0eec1 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 16:59:59 -0500 Subject: [PATCH 030/186] testing real quick --- db_engine.cpp | 2 +- db_engine.h | 2 +- test.cpp | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/db_engine.cpp b/db_engine.cpp index 30fa0b7..fc004f9 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,7 +1,7 @@ #include "db_engine.h" db_engine::db_engine(){ - // + //USELESS COMMENT } //create a new table in memory diff --git a/db_engine.h b/db_engine.h index f319f02..3543acf 100755 --- a/db_engine.h +++ b/db_engine.h @@ -1,5 +1,5 @@ class db_engine { - //member variables + //useless comment public: db_engine(); diff --git a/test.cpp b/test.cpp index 491d9f9..cc7dc7c 100755 --- a/test.cpp +++ b/test.cpp @@ -1,5 +1,5 @@ #include int main() { - std::cout << "Hello World!"; + std::cout << "Hello nothing!"; } \ No newline at end of file From f0d54ab69d9ed244bf8afd4cc16fb0a24e2e0c48 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:31:05 -0500 Subject: [PATCH 031/186] got our stuff together --- a.out | Bin 0 -> 36339 bytes db_engine.cpp | 52 ++++++++++++++++++++++++++++++++++++++++++-------- db_engine.h | 9 ++++++--- test.cpp | 11 +++++++++-- 4 files changed, 59 insertions(+), 13 deletions(-) create mode 100755 a.out diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..16a80ad064e9ab6d2b417cf7053568de4e208a4b GIT binary patch literal 36339 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 literal 0 HcmV?d00001 diff --git a/db_engine.cpp b/db_engine.cpp index 10abbbf..c4df4ba 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,13 +1,49 @@ #include "db_engine.h" +using namespace std; + db_engine::db_engine(){ // } //create a new table in memory //creates a vector -void db_engine::createCmd(){ - // +void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ + string output = ""; + output += "CREATE TABLE " + tableName + " ("; + + vector::iterator it = attributes.begin(); + while (it != attributes.end()){ + if (it == attributes.begin()) + if ((it + 1) != attributes.end()) + output += *it + ","; + else + output += *it; + else + output+= " " + *it; + + ++it; + } + + output += ") PRIMARY KEY ("; + + vector::iterator it2 = pkeys.begin(); + while (it2 != pkeys.end()){ + if (it2 == pkeys.begin()) + if ((it2 + 1) != pkeys.end()) + output += *it2 + ","; + else + output += *it2; + else + output+= " " + *it2; + + ++it2; + } + + output += ");"; + + cout << output; + //cmdList.push_back(output); } //open a txt file, parse SQL script, load data in table @@ -17,10 +53,10 @@ void db_engine::createCmd(){ //should write cmdList to a .txt file void db_engine::saveCmd(){ - std::ofstream dbCmdFile; - dbCmdFile.open("dbCmds.txt", std::ios_base::app); + ofstream dbCmdFile; + dbCmdFile.open("dbCmds.txt", ios_base::app); - std::vector::iterator it = cmdList.begin(); + vector::iterator it = cmdList.begin(); while (it != cmdList.end()){ dbCmdFile << *it << "\n"; ++it; @@ -30,13 +66,13 @@ void db_engine::saveCmd(){ } //display the table currently stored in memory -void db_engine::showCmd(){ - // +void db_engine::showCmd(string tableName){ + cmdList.push_back("CREATE TABLE " + tableName + ""); } //add a tuple to a table in the memory void db_engine::insertQuery(){ - // + //table.push_back(); } //remove a tuple from a table in the memory diff --git a/db_engine.h b/db_engine.h index ba2ea28..e7192d7 100755 --- a/db_engine.h +++ b/db_engine.h @@ -2,15 +2,18 @@ #include #include +using namespace std; + class db_engine { - std::vector cmdList; + vector cmdList; + //vector> table; public: db_engine(); - void createCmd(); + void createCmd(string tableName, vector attributes, vector pkeys); //void openCmd(); void saveCmd(); - void showCmd(); + void showCmd(string tableName); void insertQuery(); void deleteQuery(); void selectQuery(); diff --git a/test.cpp b/test.cpp index 37541d8..a5a6be7 100755 --- a/test.cpp +++ b/test.cpp @@ -1,8 +1,15 @@ #include #include "db_engine.h" +using namespace std; + int main() { db_engine engine; - engine.saveCmd(); - std::cout << "succesfully traversed the code!"; + + vector attributes; + vector pkeys; + attributes.push_back("username VARCHAR(20)"); + attributes.push_back("password VARCHAR(20)"); + pkeys.push_back("password"); + engine.createCmd("users", attributes, pkeys); } \ No newline at end of file From e9e631aa6b5b8256b58863d896afaeaa186e7a3f Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:34:55 -0500 Subject: [PATCH 032/186] changed show --- db_engine.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/db_engine.cpp b/db_engine.cpp index c4df4ba..02d0a90 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -65,9 +65,9 @@ void db_engine::saveCmd(){ cmdList.clear(); } -//display the table currently stored in memory +//display the database void db_engine::showCmd(string tableName){ - cmdList.push_back("CREATE TABLE " + tableName + ""); + cmdList.push_back("SHOW " + tableName + ""); } //add a tuple to a table in the memory From 7fe87111fc2f9ae30cac72f5dde463b9fec78089 Mon Sep 17 00:00:00 2001 From: Becca Date: Mon, 14 Sep 2015 18:39:04 -0500 Subject: [PATCH 033/186] assignments for the night --- db_engine.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/db_engine.cpp b/db_engine.cpp index 02d0a90..ff96c0c 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -8,6 +8,7 @@ db_engine::db_engine(){ //create a new table in memory //creates a vector +//DONE void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ string output = ""; output += "CREATE TABLE " + tableName + " ("; @@ -52,6 +53,7 @@ void db_engine::createCmd(string tableName, vector attributes, vector Date: Tue, 15 Sep 2015 02:57:09 -0500 Subject: [PATCH 034/186] Update db_engine.cpp --- db_engine.cpp | 110 +++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 99 insertions(+), 11 deletions(-) diff --git a/db_engine.cpp b/db_engine.cpp index 30fa0b7..b88d9d4 100755 --- a/db_engine.cpp +++ b/db_engine.cpp @@ -1,12 +1,50 @@ #include "db_engine.h" +using namespace std; + db_engine::db_engine(){ // } //create a new table in memory -db_engine::createCmd(){ - //// +//creates a vector +//DONE +void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ + string output = ""; + output += "CREATE TABLE " + tableName + " ("; + + vector::iterator it = attributes.begin(); + while (it != attributes.end()){ + if (it == attributes.begin()) + if ((it + 1) != attributes.end()) + output += *it + ","; + else + output += *it; + else + output+= " " + *it; + + ++it; + } + + output += ") PRIMARY KEY ("; + + vector::iterator it2 = pkeys.begin(); + while (it2 != pkeys.end()){ + if (it2 == pkeys.begin()) + if ((it2 + 1) != pkeys.end()) + output += *it2 + ","; + else + output += *it2; + else + output+= " " + *it2; + + ++it2; + } + + output += ");"; + + cout << output; + //cmdList.push_back(output); } //open a txt file, parse SQL script, load data in table @@ -14,42 +52,92 @@ db_engine::createCmd(){ // //} -//save all the commands to the db text file +//should write cmdList to a .txt file +//DONE void db_engine::saveCmd(){ - // + ofstream dbCmdFile; + dbCmdFile.open("dbCmds.txt", ios_base::app); + + vector::iterator it = cmdList.begin(); + while (it != cmdList.end()){ + dbCmdFile << *it << "\n"; + ++it; + } + + cmdList.clear(); } -//display the table currently stored in memory -void db_engine::showCmd(){ - // +//display the database +//DONE +void db_engine::showCmd(string tableName){ + cmdList.push_back("SHOW " + tableName + ""); } //add a tuple to a table in the memory +//BECCA void db_engine::insertQuery(){ - // + //table.push_back(); } //remove a tuple from a table in the memory +//BECCA void db_engine::deleteQuery(){ // } //search and return one more tuples from a table in the memory +//WILLIAM void db_engine::selectQuery(){ // } //return a subset of attributes (columns) -void db_engine::projectQuery(){ - // +//BRANDON +vector db_engine::projectQuery(vector< vector > table, vector attributes, string query){ + /* + So basically this is what's going on: + - Take the table to iterate through, this is the 2D vector (input 1) + - Take the vector of attributes that pertains to the respective table (input 2) + - Take a string that will be used for the program to search for in the attributes (input 3) + - In the attributes vector, iterate through each attribute until the attribute (string) matches the input query + - For every iterator, have a counter that counts how many attributes are skipped over in the vector until the attribute is found + - This counter will be used to iterate through each vector (row) in the list, skip over that many attributes, and push that into a result vector + - Once all vector's elements at the specified attribute are pushed back, return the result vector + */ + int counter = 0; //counter for iterating through the attributes, initialized at 0 for reasons + vector result; + + //Loop through the vector until we have found a string in it that matches the query + for(int i=0; i < attributes.size(); i++){ + counter++; + if(attributes[i] == query) + break; + else + continue; + } + + //So let's say we have a 2-D Vector (the table) that contains all of the rows, we iterate through each row + std::vector< std::vector >::const_iterator row; + std::vector::const_iterator col; + + for (row = table.begin(); row != table.end(); ++row) { + //Instead of col != row->end() we have it counter, in order for the program to access the correct data under the correct attribute + for (col = row->begin(); col != counter; col++) { + result.push_back(col); //Now we store that row's attribute into the result vector + } + } + + return result; } //each row in the first table is paired with all the rows in the second table -void db_engine::productQuery(){ +//BRANDON +vector< vector > db_engine::productQuery(vector< vector > table_1, vector< vector > table_2){ // } //true if relations have the same # of attributes and each attribute must be from the same domain +//WILLIAM bool db_engine::unionComp(){ return false; } From 68263bd0131327022c7ecb655a976cecddbada0a Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 02:57:33 -0500 Subject: [PATCH 035/186] Update db_engine.h --- db_engine.h | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/db_engine.h b/db_engine.h index f319f02..05e7b60 100755 --- a/db_engine.h +++ b/db_engine.h @@ -1,12 +1,19 @@ +#include +#include +#include + +using namespace std; + class db_engine { - //member variables + vector cmdList; + //vector> table; public: db_engine(); - void createCmd(); + void createCmd(string tableName, vector attributes, vector pkeys); //void openCmd(); void saveCmd(); - void showCmd(); + void showCmd(string tableName); void insertQuery(); void deleteQuery(); void selectQuery(); From c23f25b20a36088947c480d8900291c620ea010a Mon Sep 17 00:00:00 2001 From: Becca Date: Tue, 15 Sep 2015 10:21:16 -0500 Subject: [PATCH 036/186] updates --- a.out | Bin 36339 -> 36312 bytes dbCmds.txt | 2 ++ db_engine.cpp | 25 +++++++++++++++++++++---- db_engine.h | 2 +- test.cpp | 15 +++++++++++++-- 5 files changed, 37 insertions(+), 7 deletions(-) create mode 100644 dbCmds.txt diff --git a/a.out b/a.out index 16a80ad064e9ab6d2b417cf7053568de4e208a4b..0ade4b55f0bfeb69d4ca4750456a87693da31d04 100755 GIT binary patch delta 12580 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 attributes, vector pkeys){ + //creates the proper command and adds it to the cmdList + //make this better, we need a heterogenous container string output = ""; output += "CREATE TABLE " + tableName + " ("; @@ -43,8 +45,7 @@ void db_engine::createCmd(string tableName, vector attributes, vector t){ + string output = "INSERT INTO " + tableName + " VALUES FROM ("; + + vector::iterator it = t.begin(); + while (it != t.end()){ + if (it == t.begin()) + if ((it + 1) != t.end()) + output += *it + ","; + else + output += *it; + else + output+= " " + *it; + + ++it; + } + + cmdList.push_back(output + ");"); } //remove a tuple from a table in the memory diff --git a/db_engine.h b/db_engine.h index e7192d7..e56f754 100755 --- a/db_engine.h +++ b/db_engine.h @@ -14,7 +14,7 @@ public: //void openCmd(); void saveCmd(); void showCmd(string tableName); - void insertQuery(); + void insertQuery(string tableName, vector t); void deleteQuery(); void selectQuery(); void projectQuery(); diff --git a/test.cpp b/test.cpp index a5a6be7..392549b 100755 --- a/test.cpp +++ b/test.cpp @@ -5,11 +5,22 @@ using namespace std; int main() { db_engine engine; - + vector attributes; vector pkeys; + //we need a better way to do this + //going for function right now attributes.push_back("username VARCHAR(20)"); attributes.push_back("password VARCHAR(20)"); pkeys.push_back("password"); + engine.createCmd("users", attributes, pkeys); -} \ No newline at end of file + + vector tuple; + tuple.push_back("csce315"); + tuple.push_back("12345"); + + engine.insertQuery("users", tuple); + + engine.saveCmd(); +} From cdc2b3ccf6fe84c34e8646a363afb3346b75581f Mon Sep 17 00:00:00 2001 From: Becca Date: Tue, 15 Sep 2015 10:21:27 -0500 Subject: [PATCH 037/186] updates --- a.out | Bin 36312 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index 0ade4b55f0bfeb69d4ca4750456a87693da31d04..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 36312 zcmeHwdwf*Ywf~t+2ExN6h>!TFjED*(csYwAQ9p?TJAft@Wn%k^B9wz4y$?%$dNw z_xJhz^Se8rIcx8=)?Rz&;OvtjXvX~mq4+u(KEvw*WNoriF zHOUHC7hAKf3BdU93kZc!#S9$Lq7BT^d|tq8{7SPFqBJWY5d+UwXv;vOAtB34hJcPL z_(7RU8faO5K`&C#NS}_An{a82ts&)OU zvjRvl9U!o7k!uo?m!aZ~SRLbmQb_^^Bx2z6TAqO>-zwyzo+lcNo|U@1Om@lF|k3MrQev|QII2pew_??H}8Tg%s-$(E}kwBYj6Ic@wclzEWq>Z~!_ml9Weyjrn zZJaAH%bE!|6+hbKEc~Y9Hv_){{AeqNQ}Lrb@{*5bZvnN)V|j>UU>zp@+pW#BgD;fd zUUu7e1?h764g|2?so@8xj2qsc0e=$&xbahGf2we#StmFAWK_&e&f^)%{S)N4@kcV? z2QtXHF+;gu%fMfjf&WJt?D437pZA%+#qR~jy z3V*CBR(xqV9IJ0@*&JS9Qx~pjY;39B1j34{Xlr?}^7<-rsYJ!~wTuI`Alh(8BuKWZ zSZiZhEu<9J*4MO!V{J7Jv1nOsu&M@^VAcAv>Tq>YxVktTthl~vei-r=K@|#IRxAQm zAn$_pHPMFJaLa~htSwU0e98eR!RQ%hY06|L>43AaV079u=W z+5iSfjVvf@Zipp{iY}^YMXox^QCci5W*ll!UxlivN>-a#uqcC^n4*eZR9X*nH-~F$ zVzu>bjgF3RYosmO(p=Nn5W79RsYsRQ(5VTS=FPlT#Tuh!>1GX9vijOw##+_kVAaB~ zsS;II6&4*(TcZK3t}7$rGd7z`A<~S&s!Q2|>&vPZgi#_}RjP1ehDo*plt?<(rEQUD zq-|3qsH$C3WZbba(!4QNAC9!OwX~Var8I1!X%Y>q<<>P;Y+`?CQe6SDjkUGmC{x8& zcy;sU2AHKX5^ZmakgZm+!JsHq`%_IU($Nq@f^^-Bnra%Ft!tMq4bLwuvaT&JyJl&) zq_CuLp|y0)nkCnig^LU4EA*N*U|GQanx+3t+$-s9T=_Fs!$n9A#pM$YkED73^;lHJMf$@n=s(Ob3STieJ0cFI)i&9eKOPRGK0G%J(+1P0|s|WI*Vye z)d#mo`ojRytoC55q~BvYhv{{aev4^#oxuu8zs5AX%wRy$FEh=qGFT+(pEJ!aGU%7| z51D4y7|fUS513|`7_=n4pJ}@M;PBsoIR9~`>FR?6lKv;A>EeS&CH+;VPiDGT(ho5` zo$0-jzK?0T^5AYsf0k*w@Ze5K-_0~#cW{fO?_ioPJJ>4eHm2#SgX<)HE7Nq*!3s&Q zXPT}#7?AYGn5Ih(7D>92X}aQ|U((kxO&1)@m-IDE)5QiYNnge^U2AaoudIIw(|)E0 zkS>0^EdH~PhvKh=w!S`GQC)VVcgv!H6*}_NP60=5oD;C@k3!J<8+OviLS4R}UFEkz z+k0bKqesQXHWcQ~*amr6e9o{|hvIKkk#WnF16TVktNr?(f)(qmP}iw1BN>{T&%{$B z-ca|N(a_?Tqvz+%*ut!#?rS`uxNjerMo)QKxVldL2D2=Fx$U)Qe1C_ihsE9e?4b=C zl0~i#ZM|~i6(|Vh#?I^!QP3^_Nk0lIiywM+$>?wC_sF%Ax`pDMBhMZ>v6x7E_K?cA z^;kahhPpaO>|ep%-0)8eUW9`^-uah!`^eVLzj)d&ysL9$bQIP&=g9y%u>HYbMn|9I z)O!DHBo7MiWVD9T>>yd6^q?;GUbL7lX-Rce=&oZ$=$WDTfj%&Yx(^%$updmu_cPPM z*rjN*Dq_2Y(e6Tb3dMs*hvw}Jb$1@MXGr=PBcOn+@goQCWWH}fHDQ`cCM{r(5-u) z7Q_Q2+KX`!o2wchMU_zF5G)aj@8g&ditj2V=swU&(6x)mgMUx$UqA~0zfQ>eNZ$Vl z@jt_Wp!w~W{yaK5bQP4EO|JN^B7kLGUn78if>e_2$G{2wh`OQnb?C>K{UEjOIzScd zVhmi6RDt+l2aHd92%$g-LD;(;zXN2j?+0#MZ{9Ykk>*>W_;!bm1bf(c;O{Z~?_-oi zv+V_Lcc{B_uN@Zwu}y~Iqr!l8?CjnD9ai%#seXGe7-#}JmlXije&a(Z_#?68c-02y z_rRH~b9r3sGFS!OOsT)YU>=Iod!&qiLWZHJAs!|X9ukWG;NU*0v=l=%Dsa@Wf0FX) zLY2&S`S{HMwu@c$IV7f1X02tB+MJ`JTW||X#81(yU?rG+JBM4eMdv`MdmlC5|F6{V zU#VZ0axZwd{do-iWU?Rs6Z9)Rj(!7n7ueG5HFSZgZX?Ne9cGi8zA&EKiA77th=g+D zb~9lJ4lV2zTaN`W81;qXY-&`fYjy9z{jALk?5H$9s=MMoh!b&XIWRIC)BkTjt0_xkV5gbd*Sir@kr0mnJmG6gxIZz1G*Av`3CH}llf5I zUb_voF#6tgEI)=zYYCpP%bnLxKd=CIRHUT=eAhm?$qN|`($0pJ4RdVyC?0po!|KBP1elhAk zg%_Rdeg7fq5M{>^7e^kiSm6vaSKJhfzD3oB&PKghm>r-X4ou?-63)}y1PzX0mKMT@ z&AL2*85$%FBR;rW4@^S1QxO8Hk_sFkoBc;nI6S?_zNN)HrnoD}ePnw*fEuLsF$%pU zW4U5lr$h>`9vk|#$h%c{74EN6OBp^|kwJ}HB^(92WxUp{ZdZLE1(3(S5b?pEQpWhU z5#|s7=wjr-S9ssl`uY193^IU;dR`K{JGUeTu)AeMli@_z_ftL?>@P4M2e7@c z9_}M*#!65chB4JQeop^f^FGSQ&6AC| zo3i5D2M`}@*X=HZdxQ|&jd1|K17xsSSH}%W_zoz(y|^LuskUy%*rE7q6|EOCI9Bx9 z+*RDxD>oz&_zZGL+jbsR4SSO^9>ycpZ#t^Rg6chD z%TI`6iAjK%h#R_W##(1H%AM#7??G^v8X~**iLYhJ%~MrtCd<9+Fb7g|CmBakmFFFb zOy~;X%whLKl1x%LpN+QxBqVE7z3&XjIX94 zhb7CuAWMQpl_PBcX*Z$u(GS>Op)Od3)!Zvet_C8Ax?hu%wyq&>kx1T?lsv|EYF$LW zKu$tD#(|%O<~$XO_i?$W6-qiBnAxCE8CLy4bh0WwXb(*i?czauCnC1d1{qW8MC<%U z6f*vjwCQtFCn$6Toe{mA^*s{6G%yk8`X5d$y};QT%6RS)9d!_gS6u0q=t1cWGhF09 z3p|!u_P+xr$VJi-=;-m){g}%shj*HfzCQF3EWn!va&YNK)3IB0_Sur}@- zvF?0@R_k|{{7i5ZreFz@*S0$oN~k$yvcriUkUmA!J%o}5>`^#RS^O~Kw*3cjq$8pD z%jNMm?az~I>tVkPOX=Mr&I%#ZA+G%56gF)CtHh5;W#g~f9ZG`fR*9a#M!xJFV=AR3 zt;LydKdf~W!uoAxRE`myefH&Vqm(Y(H|}Nx^9--_=RUhq5&BRjINST}caI4t5SSUi zj#7qZ!Op$1OkLY6!v0xgtnHQ6DeiY)1{VyBEck6bTqHFXKS=6kLpR-$7_Z`FZtr`N z&S&2vYndRnO*)TSu}i6is5%kF49y->IBvSE#74=HRNy02z!XeVC(Cu(gk|>Idz}@m zWf^G|{0Uj&N%;rFNGTOemQw-S!|qtk#aAmMpra0LmaYo*dr)kTs_MhCh6!TW>+H2+ z*XyeG+GnG{p)0_<2O{=j;jtGBk3GzX`u5tJCEMCPGAr-gW4|p`&@K227z2xztwH$z z)}Wn3R}WntJes%tlkgv<#MZ+V(kOOxh&3BqjQwd<-Gum`BCW>&I=^EubquI~g|jDm z)L6Fo4RCD-D+kl@SX0>5fGYmOJ4q>2fX5^}d%*s_Y(S{~cb~Yz%b__Ozxy$0=H1te zxfjMu_{qYz=$PoGjl!jJtdltJfDqY@9@s$y2Hfs!FHAEm87?OdH=cH6hLTxgm1-Cpb$=Ix@oK6^47hJw1U zc$%ZIy%-2H&O0S-?HsmZXMq*Xf{~(qc)zfJmSY9oE(cRon<%j0M&aI$7;DM~-R1M9 zDP^3JC_^=+?YIl5{zboM|LTR)!cl1fnf(9;^4S#IzOVEk0<(>Z5yixNESNFi_tT1! zQRo^^A>8jl3wohtl3|S&5XdR-UI$a5YlOJw>w=HSn7fPSC0f==un(8_dGrDb`@qKR z`g>~jIkuyb+7Bu^eWDliNzt8s`|rYP;vjNac7u%1a5L^4a4h+_jQE^@$)IMFU{B&2 z4I?`B_$K3=D9|{iYG8lKephz*I5dkHfbM}f+kTent3C`lPstJqP8;ki?^?&%TCaVR z$fF=T6n}}gnXe^eAu$-ETT*^l#QK@sQL7Wc0fRJz*r%)LqaT}`pfEJyOyJ=;1f;< zT1C##8PIXW{<*BIo`HVDlAa3v68q#CH?Ws+1A8HA;n=_y+$!KyH$0fSfo<*}cOBbF zr__tVM_9{lwY2;!jn%Ezu%A}(dFbf&UudrGU5tb52RJywHSaRP%O;Hx@d916dpmis z0`6d{>i~iMyEky-C zC%4StZq#%q+oS6Mf&D|QB8QfbU;VU9yO1f}whKg)LDITApR@x?r6-ZtdvGyT`W(yR zmf?6U_n7?+H|c}V$ zlb>-dH(>wu*KYNgi9&vFuM+vFz{fGx46Qqktl!(`x>X?6;UO-MLswcqn{BF~yg)VC z>lhA>XFA2XU-s19x==40`Aa7vNH{-{QP2PdRi20-;hgO%=wee%{$D};`~9xNyvdtA z%5gkh4QtEC$PINJU=Di$8d7HTW>qG8MfozDN#8@{1QSyn=Z@f$7&5_)txPk2@?#PY zKJucyFk3R4hxaE~O^J!s1SXOCfBtY+$0{X>=U$U3L+hH7TV`x}bM6HPx7l~nyK|T# z4%>&6Dkr#eCAx9ihkFc{5?m>XiL?eux>G~2DSG`XniG+#x2Vpk4kJ*qagjzV4AUP$5bwMW&))=~Ru7{c@u z?c4M#vxpKG8@nONGJr0U+V7@%G{dj{lIRW2y0OStWR0U#Q|lDeq0}yt#iuw4R#+J6 zH_>yppflv$IdSP zC7**TkH1zPe`i_zKbDN1^6SvnL!Qv$p|-a|UAN4F8#T_#FYl_GRZxzYzq~6pYj%0p zr)CwQ3Z;kib6V^O95=x2J9?Vm3T+)3jh*p5YsES|{k04?!mUF&crL8VOG5j*$SO~4 z!MFH;A|DGRYV9HWxtB&q5Ahk^EURw)(x$p-VXPyDSClqIYGW;Jmt7XVA>7c6XR~AB zn)VK>Yz3Z+ulAR%s9x!}{5LKsUmdLSFRxsAgMYSliRHKETy9l`R({lPSxYN}OR9tZ z>Lu5d2f;eqn&YpiEW2Sz;c>h*blfL zkpHtk3|N4>;PZr-@g4@yun)?so^zt{qJBj9ep5S;xeo=N!ltH=+S`|HtBKOXbg zg9XJJ$_4BI>;o)?+?R<5{E&FS9IW9U0GtKb1Go&ZAMkF#5x}nl7GP5I1YjxPTYzf- z{aE960A33C0AK{L2XF^qKj2}&5x~~~3((ZVfTe(Epa-o1tOV=;yan(9z!+c;;6DTQ z13m*d0{APyHM9d@2jGW*4*=$3zn}+jE?__4J%A&Cj{_FKE*|t?{+DM7U?1QbKpXIV zzT*bDS@zihdEW|diiW0)r6<8<67oL;9jfEagLHZw zP_Il2$a|1(^lhNOIS&01(1*vN9|rxyapZMdxIuF9UrY=zQ4Pt$uZ&Zw9?E1AQClUjsdp{*Qp(2m0k1 z@*f608~50AGSFWKeJ1D`>yN%x1p1r|`DcNC6X>NG=*vLA4|EJg?)3-#VbC+#XB+5G zfPPtq{EvYC&N%rGgFeBZS^n#wp925SRDL!Z?UHfmvq1j{3nZF$LEuf$3LZ=>$pnnnccS(PLc_1+kT{l*b`@we? z^l)o0%6S5GzBl?M%9(O)QjViO>gC*SPMe3yXll=A}C ztK=(n=c65}!S^2cE+ij*iFzVRdJOb4X1TW)>Gy-a4D@-3yXAiZ^cd*hPo?X2dLHzm z^8;2{DjjLce;@QaKo4Y~pMtr~e$X@d;{woM2EEuNKkZ%(`qT>o79ah~uFh` z8;3mF=M>D{?kx_8t=#Ot0Q5beyY)BbuLk{j&@ZAs_@%W!=zjw}(|CD5=s6|s{!jT& zfbJiM{ygZVpl2Gd-Uod-=$YF06wE<4fPPH|{TG0~2Xuc1dNt^MpyQ!$_xgkWGU%D~ zz*6F=we&b}92FA?xi_w=)YD2d^p|KIi?c8nLGPnr!_Jb#0= zT_bV=zH6;p6>;hez)O7dtxBf7XL$0i_f>lD@s#|V$9jqUnC^A5kWueK&qdc?fR77! z&OGF?{*AQXdFEiUn6>J`Y|rCfqz`7F^-{L=r)-r?sRjiq7Xh)tS7Uw5hZW{S%(*X% z(Wi0EvVJP@Z+d3|)9>}!Uh6krQtfPBN3wl8eAZn)#*g@r^$Qblfz-47fF-_rJl55| zl~#z6+kyF(uH>C%zL?eIdu6gR#?v0(6IoWj$2a7$UYGc{vq=0#Hn01$eMhscXC(fJ zZx%4m`Fy|i;igCG8xwYW0Cwj1{xQdTFo&r3bIA0MlYHNqWIZ~Gm`5iU;QFJMeVVa9dDs#^&hovTWxbiDTjfcg^+dMsg>37m**?U3e7;}g zT3r)-7-YXb!S|07t-}+1xMBW8;tx+GzB`9J@8|eFH`&@Y$@kSs)|VzRe$Qmzb5pG6 zC;Q%;Yz;~L$5VWt%e5Yv>bw6Wt7obYi{Ymv-hC4Bf0pY#xs-M^*S9;*dN9v7l4rff z|J?jbK27ky;eRdgzZUra&;r=vlEC#61LrHwVCYU9R@Hy{w(aT3;C8W1S+55)Fnsq`QJHrhhMPOnOvL92A4N@FP@p;yx}#gOoKx;#t; zBot`KIhiwPHf;W_6SSF2r0)M=>MntE8;0Fe0s;+whfZV4BEgh5DJ6|9MyXGM=7*gn zZS=ras-%BBIiPd?zX9fZcB!SksoUuT4JYI&y-w5c0u2{wxLm^NrEWUL9TB{}6x_Kk!kC3H&O?iy@&f-OmGMrJxpM~zE`1!R0h6m-EemNJYENe5a zUHH+Z!euM*L7h5$8wvlwsRP221r9!b1EEFu-9RSw;hoxOdw4@bbA#0|76(*}8LcRO zT7Bfi_OLe7nbQJHT7`x4qPIuuBCXMR_#$8!UkHpeZkQ)u#VV|_=Cw!L=0)3T=e5?< z-d3|Q5}kL=>ay}>^EUFUKXXe8i}6XHdC-Ah|MM@Y^5b(q^YIBG&z5^2I!pGkay*|# z-1968LpWQPYhVpm$r2}L zVwPt@EAYNGxOmRk&g&#^s~(~zd=zQx64X1(3L~afd74-R(=umh_8q`!$=*rK^y1Zm z5k0b1$vzL)f}U+2llgAlyjh!bCV2LdcB_Y9reH9F8GjMKiFjwu+)f7Fgcg%cfjDrEL1uQ?oGGPq@G;n|^#zrzNr_ zgn1#?S7=>5RSCRsDpd$jWT7VoIl+S>Ci)UGvY=>AQWKbRif1)&lYz@o+L2{S9_m8v zrYa>*@_5RoQ&jG`&^Yf@&xKQ&!bF@*(~<(Oo_fVpaID2I%cA)`oB1|@th|Ge8jB)i(S32mU687 z@XM0j-!wg>C!^P*gJa;+eSK~eBaHeU=sb*y^BS6K8{6^8I16LI+@xF#Ms<-5h4n^T zlKi-f0`WE!TN-uekZ!NAAly56X*bG8S;Ig6eeS z>;IXNa*84+dZW3obAN!rbf&mUrfn0P@DSD5(!9~%-W+Y%*c_?za~O%%x3tCFP$Z^| z!ikLhke?;8$i;DQ>51M^BF&pxt(vxt__$tj^p=s@Vec@WDrmqn1#N9Lx2x}}S^S(J zvN-VgY@Jhv+yTfHj#2(5`3M^A70^b*4JOCLAJjOnwYgVElOSJ5S8M38R-5SO6R3|T z`Bf}ESGCFY*+edOk})AY*D8~1yJqwxKD(R9d5eyHGQm=npy|k&8qU_xNZq8ImjMVy5U9IDLtQ<@b( zD*3%@?(;f>9@Y{l4$)j=nEcgQ0i>|UuMvJpB`;?EWH7~uIP=G{0z!)E{AQgZNL*6$ zUjdvm|GilOVDSG5o!^Y7g2W{?KYI~x^+x}_SplTDz7t>#C?I7pikq?oBWER2crB*I zA&*V4jI_{M-T&F-nf5T@W2N$jxP1>v*3-rRaRp+PP)YIs%(H4h1+S24V z>r_66!(i&EtCPrY@Eo3<`OUg_x5=;V$NZSHrRC>sfp*1oNP=1S_mCOEl%rDV{&PPF z&iqGn1HyV#=l7e6X#r;RH}ESd`OTDQSTodLpfjfAH`uSG6uB2NAJZ*zwCmkY46bo;ARdi(tf1m-tv<~#f5JM(^%QNvXKeI0mbetsd3A%BH{ z#FRv(()Aw#!I__*$7As8{Hf)oriZ~x-!=N1eG+pHz)=cEF!>BL{>N33vwZV?*AWhE z2!>y!l4*ng8wk$)W}nKcP&xd%{7m`zJ!@xv|EhJu>R+XD7(G+-oAgP@OkGUalXdw;2BD$Jzc>X?T^S5KD?|PUUA`GtRIX$`lfO{sH*^DAb^dh*p<${$ zuFR1CsLsy~0B11e8r%&T^3SVO93?6JH#PrF8S>XutNi@Tk29nst&JJ-->+w{=cHsv zNm|hi`Fn0urLJ)nj(BSOZ_)Wv+dp46QE=8lN`WS6V3*FHQjB%JE|~qp8B9Kd`(lRt z=iQ_@Dh#8Bsrjb?Z+zd$8rAvvY@jowB*l+YnpoKTBP!SM$qHTszy*Y{pXpbVfO9Lq zuS4a_KUG0=-g_G#TUCPWG#^R@0W(1q>zpWwdofEh_dO@ki&Iq0{cJ2AOXZ4nPL#yGIPt{Xf1E@w zo^&$zm9cnkO{E9#m@i2u>0WuFD48}fujMzm!Ye1QxZ%%BM*`zboH{d> z?6uAxi_j^rl``o};4e($XMfJN-W^RNWWaO$aO0m2d=~uEY>*pysz&)%{iOke5?F|< zn;hP+JuZHAt>DxBinkdLo(M|ytM$NBpTM*LV#&Z^&ExO~GoIa}@uhnHVaCZ_z*ElN z6gipn|34zudgRd#X?^D+K&_^7*_PL#q5`De_lo`R4z@Mt)5O`IPBaZX@_T zJeetF9Jm{Jo^bTe4eJ<5gulyx|GLOYAAcSL-tRJ=@JrA$VIMx9%E0zxcthj)oEwAL ztec3NGx_;EBg5%(#k)Sh>szzNC~#v2{9RfOpSxu+J^9-i`1#B{%U$7D{4*pMo)6P_ zz7N2#NUnH}7?S`ueQppu{9#c*IFVh#T8&S=AJu6*pF?Hfv#1QafTuou-jKoQ|AEHy zxjqJCpPX#P&*%9V9+fNdX*{1_Wib0&4Zxoa`Fzfu!N~cf=I8qt48{%*0q+;g*vmIF z;17uWvAj(EECc=>;8|b3_rP$TT=8ER*n@aJKg+;*8ACDfCp+%r`3h}aDtMi6fK?gr zdxYe zG@kD-Fc|rt(Re-w%V7MF&vsJ|-)CVka!#G-UhX{L$e3$X_RN$q(wET-Dmu1b@cs|$9P$pN) zS`R$?HQ(=I$dfDHvD5r~Ux9)5KZa+7U&Wo*0nNYU+<>6f6?@N9lsu54H9klCo8i9=cNcVak4t{7)Dp6@L% zm~qTIRq4<7!x+psM6@%$_pAi1jEFL!D z44(#`^-cXh=jR0P!q9nJxse!}>zK_K4F}YgSKLDQ(uGDqJ zH#I-spJG5#!cP%#>yH=0fhoUF+riXp1MqJAJ(@rD9J$|XJm0%wI7P0gN4~q9MS{n; zIxQfa=nfL9fTuouUx49Ha<#0VYdoLtXZV6#LDzV`FUL?SSM*C%#7+OXz|(G_6n`rb z{ycfFlOl{h6~I#;zIVWIv0QO%M+W(S&VWB1%DCxsrQq}Ay&H<=yEhEYz_VPw7s7Cj zTrKOXnxF5tG8jFd6uh9uTz;kH@O=h`cDdsHT;Mq#ruxrl203R;SNib1TL$A-Gc}&? zS1}m-+@kS(kCH)ezoVYY4!iReUWmASQ}EbNn5OWiUPm;);WO~%4EXner``BI4ujG2 zEI1_bd=H0VhFtMjlg9IXM+Vd1R{#%Fqy?S`L^*svmf=dd;{699hgg7c9OL^S416bqVY1*|_GkFNYdp6?z<*sMT8rZq9j7u{IJB^)Q9a&P z+ZKz)+VR;5K0C3rdSzv}ysWC4=Qf6yjY(a%)Iq9i32$s{Sq~xd-);F&1O9W}+8BvN z>IxSXFI;Sq5N@dJKx$F3rT%4J*WT20yD2BQVwn`PymHA6!LUiO7!yyHBL7O4QtH-+ zaXugZlU-Qb+KN*E7Ziv2Fh>mMII_YGIOFgRq;LRb4UXEYi{O9T?X{9FYG{xH4$DjN z#77I6t?;$wE3a8n9uAj@QgzTjyIC?RLysD5SmmI|Be5OQ`RxV#&6~tME{PYA( zN9p=W6ZJ%i10hc+S>a_jtypqH*;0%D``3@7$RU@pMd~vZWmQoe4p|iq28&DZMU2|| zNbPN591|F9N*qcE!j1CH3^{T#nPC~#=V6zzOdLsk0~#%PLZb6b$Us0&8q`M$@@UA6 zXC$Vx7MHd+C)y)|qaa&aZ!fDrm5Rba9?Ti8DhXE=>mxaNoMNg79QT=SiPEN;j&R}( z&=reuxMg!Yj+^X=d_sh$=LiPZS6;uOD$LVHn_JqN;IR#OuA~Oesg4N6VWCU38aQ_p zrcF^K`8<(429j*4q_-@tMR$rt@FkNVDwwVVsw$4>Y7<8#+;qh0rEVgFLD*6oa!I&q zvD6@`QKCW9l~HG4D$6JB_g^VmNsv0Fb{X-xH2+;F=aJGS9b-_&lVN#;W=b3I0MX=e zovFmCSZR0}`+1A5~4;reI z&1XNW#DS@>ead;Fx+3}@Q8n}=hXtNtn;cMzGb)Mdr?odNz~Lw9Ud@rRjE;Q#{&|gf z_w`9}uHNe2Pk6+yIx$!sLd$bn)0*%&k~4I{)>d(8o&l`RY)!Q&PSnL|u+k?o8g@Qf zzYaHJJa+{l?A1Ju*3GIoec1V3q@csRne2gca+3$%rno7Gh*U%Tw+{bJ7jmK}GovjQ z;rL)2&wLys6{F?}6N!D2L*1p(noTnF!qQ_O@245%wC7X}Px!u=?#RXSn*nVJh+>u`i!Gh*=gLJ`ULN3;p0y&=JQbMl+Nl>$I_(r zE3Q}UiMi5Zj72TYOELLVg48r&>;NTq|MK-kn9F3E7nHzP)tH4dp0!7qlfY9OkY`a- zB&I#Jw{5OztIIUANIM>UkviO2pTiARF_wxX8A6RXjHOhT*5`Dkm`8~_<|{HQGjlAb zC)T%YR+9knXP$YD`2;+IM`NefVTBr}Wv1!g;TP66Mrzcpz~L1xty5fdVk1bhvE6Qm ziL=$ib`st5>(vHXG+F(n)KV`;@0+Py|{2STj8>nXm}+MO)YhiRE4TyCwl9YyQbVf*+rf8NWa^pESh9Aa_wu$ zo>E*KjWl9qxvD+VcKd&OSa*(EZtk4Hyt1^>_kyM2DmD8PM{!;3Vgzl1B{&YjRpw)b zSk?reRx3=kN~wxE*0m`{m*u&0?O$BdibwsiXOOJCx=*Cv(r};nAJlQ|0!~&dn6T*~ z_e30v<5@~=WDSEVg)y6~txs9Sz=mjsSbbZ|W(+%ZY8sO&VT>t?)pt0RC0vKa#2v!5 zZIaVoZZoK{MjFboa4asagRjLR33E#wWXb4S3%9wkTJJ{WH45Icc*AwE&d0d6tWu7W zzKW88FR_X;t83Y&7~42$3!dVIn4n@)A&OO44BJz6bYZS`J37Lxc!yQql? Date: Tue, 15 Sep 2015 10:22:56 -0500 Subject: [PATCH 038/186] updates --- dbCmds.txt | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 dbCmds.txt diff --git a/dbCmds.txt b/dbCmds.txt deleted file mode 100644 index 8aae8f5..0000000 --- a/dbCmds.txt +++ /dev/null @@ -1,2 +0,0 @@ -CREATE TABLE users (username VARCHAR(20), password VARCHAR(20)) PRIMARY KEY (password); -INSERT INTO users VALUES FROM (csce315, 12345); From a449b76e2124ab83157260a7fc76d4b0174dd85c Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 16:30:25 -0500 Subject: [PATCH 039/186] updating structure --- Attribute.h | 37 ++++++++++++++++++++++++++++++++++ DBEngine.cpp | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++ DBEngine.h | 25 +++++++++++++++++++++++ Relation.h | 16 +++++++++++++++ test.cpp | 24 ++++------------------ 5 files changed, 139 insertions(+), 20 deletions(-) create mode 100755 Attribute.h create mode 100755 DBEngine.cpp create mode 100755 DBEngine.h create mode 100755 Relation.h diff --git a/Attribute.h b/Attribute.h new file mode 100755 index 0000000..2c1bd3d --- /dev/null +++ b/Attribute.h @@ -0,0 +1,37 @@ +#include +#include + +using namespace std; + +//Funtional, might need more functionality + +template +class Attribute { + //a named column of a relation + string name; + vector values; + bool isKey; + int size; +public: + Attribute(){ } + + Attribute(vector v){ + this.values = v; + } + + Attribute(const Attribute& a){ + this.values = a.getAll(); + } + + Attribute& operator=(const Attribute& a){ + this.values = a.getAll(); + } + + string getName(){ + return name; + } + + vector getAll(){ + return this.values; + } +}; \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp new file mode 100755 index 0000000..a2842e4 --- /dev/null +++ b/DBEngine.cpp @@ -0,0 +1,57 @@ +#include "DBEngine.h" + +using namespace std; + +DBEngine::DBEngine(){ + // +} + +//create a new table in memory +void DBEngine::createCmd(){ + // +} + +//open a txt file, parse SQL script, load data in table +//void DBEngine::openCmd(){ + // +//} + +//should write cmdList to a .txt file +void DBEngine::saveCmd(){ + // +} + +//display the database +void DBEngine::showCmd(){ + // +} + +//add a tuple to a table in the memory +void DBEngine::insertQuery(){ + // +} + +//remove a tuple from a table in the memory +void DBEngine::deleteQuery(){ + // +} + +//search and return one more tuples from a table in the memory +void DBEngine::selectQuery(){ + // +} + +//return a subset of attributes (columns) +void DBEngine::projectQuery(){ + // +} + +//each row in the first table is paired with all the rows in the second table +void DBEngine::productQuery(){ + // +} + +//true if relations have the same # of attributes and each attribute must be from the same domain +bool DBEngine::unionComp(){ + return false; +} diff --git a/DBEngine.h b/DBEngine.h new file mode 100755 index 0000000..9ec458b --- /dev/null +++ b/DBEngine.h @@ -0,0 +1,25 @@ +#include +#include +#include +#include "Relation.h" + +using namespace std; + +class DBEngine { + //member variables + //NOT DONE + //vector tables; + +public: + DBEngine(); + void createCmd(); + //void openCmd(); + void saveCmd(); + void showCmd(); + void insertQuery(); + void deleteQuery(); + void selectQuery(); + void projectQuery(); + void productQuery(); + bool unionComp(); +}; diff --git a/Relation.h b/Relation.h new file mode 100755 index 0000000..222b8a5 --- /dev/null +++ b/Relation.h @@ -0,0 +1,16 @@ +#include +#include +#include "Attribute.h" + +using namespace std; + +//NOT DONE +class Relation { + //a table with rows and columns + string name; + vector< Attribute > att; +public: + Relation(); + Relation(vector< Attribute > a) { att = a; } + void addTuple(vector< Attribute > tuple); +}; \ No newline at end of file diff --git a/test.cpp b/test.cpp index 392549b..a419a4a 100755 --- a/test.cpp +++ b/test.cpp @@ -1,26 +1,10 @@ #include -#include "db_engine.h" +#include "DBEngine.h" using namespace std; int main() { - db_engine engine; - - vector attributes; - vector pkeys; - //we need a better way to do this - //going for function right now - attributes.push_back("username VARCHAR(20)"); - attributes.push_back("password VARCHAR(20)"); - pkeys.push_back("password"); - - engine.createCmd("users", attributes, pkeys); - - vector tuple; - tuple.push_back("csce315"); - tuple.push_back("12345"); - - engine.insertQuery("users", tuple); - - engine.saveCmd(); + DBEngine engine; + Relation r; + Attribute a; } From 0e99c2e305da2d7c929906caeb0a78855fc6d46a Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 16:32:05 -0500 Subject: [PATCH 040/186] updating structure --- db_engine.cpp | 127 -------------------------------------------------- db_engine.h | 23 --------- 2 files changed, 150 deletions(-) delete mode 100755 db_engine.cpp delete mode 100755 db_engine.h diff --git a/db_engine.cpp b/db_engine.cpp deleted file mode 100755 index d4060eb..0000000 --- a/db_engine.cpp +++ /dev/null @@ -1,127 +0,0 @@ -#include "db_engine.h" - -using namespace std; - -db_engine::db_engine(){ - // -} - -//create a new table in memory -//creates a vector -//DONE -void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ - //creates the proper command and adds it to the cmdList - //make this better, we need a heterogenous container - string output = ""; - output += "CREATE TABLE " + tableName + " ("; - - vector::iterator it = attributes.begin(); - while (it != attributes.end()){ - if (it == attributes.begin()) - if ((it + 1) != attributes.end()) - output += *it + ","; - else - output += *it; - else - output+= " " + *it; - - ++it; - } - - output += ") PRIMARY KEY ("; - - vector::iterator it2 = pkeys.begin(); - while (it2 != pkeys.end()){ - if (it2 == pkeys.begin()) - if ((it2 + 1) != pkeys.end()) - output += *it2 + ","; - else - output += *it2; - else - output+= " " + *it2; - - ++it2; - } - - output += ");"; - - cmdList.push_back(output); -} - -//open a txt file, parse SQL script, load data in table -//void db_engine::openCmd(){ - // -//} - -//should write cmdList to a .txt file -//DONE -void db_engine::saveCmd(){ - ofstream dbCmdFile; - dbCmdFile.open("dbCmds.txt", ios_base::app); - - vector::iterator it = cmdList.begin(); - while (it != cmdList.end()){ - dbCmdFile << *it << "\n"; - ++it; - } - - cmdList.clear(); -} - -//display the database -//DONE -void db_engine::showCmd(string tableName){ - cmdList.push_back("SHOW " + tableName + ""); -} - -//add a tuple to a table in the memory -//maybe make a table object? -//BECCA -void db_engine::insertQuery(string tableName, vector t){ - string output = "INSERT INTO " + tableName + " VALUES FROM ("; - - vector::iterator it = t.begin(); - while (it != t.end()){ - if (it == t.begin()) - if ((it + 1) != t.end()) - output += *it + ","; - else - output += *it; - else - output+= " " + *it; - - ++it; - } - - cmdList.push_back(output + ");"); -} - -//remove a tuple from a table in the memory -//BECCA -void db_engine::deleteQuery(){ - // -} - -//search and return one more tuples from a table in the memory -//WILLIAM -void db_engine::selectQuery(){ - // -} - -//return a subset of attributes (columns) -//BRANDON -void db_engine::projectQuery(){ - // -} - -//each row in the first table is paired with all the rows in the second table -//BRANDON -void db_engine::productQuery(){ - // -} - -//true if relations have the same # of attributes and each attribute must be from the same domain -//WILLIAM -bool db_engine::unionComp(){ - return false; -} diff --git a/db_engine.h b/db_engine.h deleted file mode 100755 index e56f754..0000000 --- a/db_engine.h +++ /dev/null @@ -1,23 +0,0 @@ -#include -#include -#include - -using namespace std; - -class db_engine { - vector cmdList; - //vector> table; - -public: - db_engine(); - void createCmd(string tableName, vector attributes, vector pkeys); - //void openCmd(); - void saveCmd(); - void showCmd(string tableName); - void insertQuery(string tableName, vector t); - void deleteQuery(); - void selectQuery(); - void projectQuery(); - void productQuery(); - bool unionComp(); -}; From 91ae6e305ad99640e7f7ab430a77ae5ecf38cb64 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 18:56:40 -0500 Subject: [PATCH 041/186] Create Attribute.h --- Attribute.h | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) create mode 100644 Attribute.h diff --git a/Attribute.h b/Attribute.h new file mode 100644 index 0000000..87b2c25 --- /dev/null +++ b/Attribute.h @@ -0,0 +1,58 @@ +#include +#include + +using namespace std; + +//Funtional, might need more functionality + +//template +class Attribute { + //a named column of a relation + string name; + vector values; + bool isKey; + int size; + +public: + + void initializeAttribute(string n, vector a){ + + name = n; + values = a; + } + + string getName(){ + return name; + } + + Attribute(){ } + + void display() + { + cout<<"Atribute name:\t"< v){ + this.values = v; + } + + Attribute(const Attribute& a){ + this.values = a.getAll(); + } + + Attribute& operator=(const Attribute& a){ + this.values = a.getAll(); + } + + + + vector getAll(){ + return this.values; + } +*/ +}; From 163270d71a8ceceaa595f84264e9bb813c88fd37 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 18:59:58 -0500 Subject: [PATCH 042/186] Create test2.cpp --- test2.cpp | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 test2.cpp diff --git a/test2.cpp b/test2.cpp new file mode 100644 index 0000000..5b0a6f8 --- /dev/null +++ b/test2.cpp @@ -0,0 +1,26 @@ +#include +//#include "DBEngine.h" +#include +#include "Attribute.h" + +using namespace std; + +int main() { + + /* + DBEngine engine; + Relation r; + Attribute a; + */ + + vector shamWow; + pendejo.push_back("rag"); + pendejo.push_back("sponge"); + pendejo.push_back("wooow"); + pendejo.push_back("cloth"); + + Attribute atributo; + atributo.initializeAttribute("atributo",shamWow); + + atributo.display(); +} From 0dba891839ed0880f8d16f875f16306d0fd86cc3 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 19:11:46 -0500 Subject: [PATCH 043/186] Update test2.cpp --- test2.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test2.cpp b/test2.cpp index 5b0a6f8..280656a 100644 --- a/test2.cpp +++ b/test2.cpp @@ -14,10 +14,10 @@ int main() { */ vector shamWow; - pendejo.push_back("rag"); - pendejo.push_back("sponge"); - pendejo.push_back("wooow"); - pendejo.push_back("cloth"); + shamWow.push_back("rag"); + shamWow.push_back("sponge"); + shamWow.push_back("wooow"); + shamWow.push_back("cloth"); Attribute atributo; atributo.initializeAttribute("atributo",shamWow); From b842955e3e44b707b4b4ca12d6f386a275ba19f9 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:16:58 -0500 Subject: [PATCH 044/186] Update test.cpp --- test.cpp | 66 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 64 insertions(+), 2 deletions(-) diff --git a/test.cpp b/test.cpp index 491d9f9..0c956a1 100755 --- a/test.cpp +++ b/test.cpp @@ -1,5 +1,67 @@ +/* #include +#include "DBEngine.h" + +using namespace std; int main() { - std::cout << "Hello World!"; -} \ No newline at end of file + + + //DBEngine engine; + vector my_vector = {"Name", "Grade", "Happiness"}; + string at1 = "Name", at2 = "Grade", at3 = "Happiness"; + + + Attribute attribute_1(at1);//, attribute_2(at2), attribute_3(at3); + + + //Relation r(line1, my_attributes); + + //r.displayTableName(); +*/ + +#include +//#include "DBEngine.h" +#include +#include "Attribute.h" + +using namespace std; + +int main() { + + /* + DBEngine engine; + Relation r; + Attribute a; + */ + + vector shamWow; + shamWow.push_back("rag"); + shamWow.push_back("sponge"); + shamWow.push_back("wooow"); + shamWow.push_back("cloth"); + + Attribute atributo; + atributo.initializeAttribute("atributo",shamWow); + atributo.display(); + + vector doom; + doom.push_back("zombieman"); + doom.push_back("revenant"); + doom.push_back("imp"); + doom.push_back("archvile"); + + Attribute atributo2; + atributo2.initializeAttribute("attribute_2", doom); + atributo2.display(); + + + + + string line1 = "Table_1"; + + + + //Relation r(line1, my_attributes); +} + From 990dfa0056c04acf298b44132f07c87151aa5853 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:17:21 -0500 Subject: [PATCH 045/186] Create Attribute.h --- Attribute.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Attribute.h diff --git a/Attribute.h b/Attribute.h new file mode 100644 index 0000000..9d53d4c --- /dev/null +++ b/Attribute.h @@ -0,0 +1,47 @@ +#include +#include + +using namespace std; + +//Funtional, might need more functionality + +//template +class Attribute { + //a named column of a relation + string name; + + bool isKey; + int size; + +public: + + vector values; + + void initializeAttribute(string n, vector a){ + + name = n; + values = a; + } + + string getName(){ + return name; + } + + Attribute(){ } + + void display() + { + cout<<"Atribute name:\t"< getElements(){ + return values; + } + */ +}; From b24f5117f4ddfb071097405cbdb7ea16617d2be8 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:17:52 -0500 Subject: [PATCH 046/186] Create Relation.h --- Relation.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 Relation.h diff --git a/Relation.h b/Relation.h new file mode 100644 index 0000000..c41db03 --- /dev/null +++ b/Relation.h @@ -0,0 +1,47 @@ +#include +#include +#include "Attribute.h" + +using namespace std; + +//NOT DONE +class Relation { + //a table with rows and columns + string name; //The title the user gives it + vector< Attribute > att; //A vector of the columns + +public: + Relation(); + + //constructor + Relation(string n, vector< Attribute > a) { + name = n; + att = a; + } + + void addTuple(vector< string > tuple) { + + //Loop through the attribute columns + for(int i = 0; i < att.size(); i++) { + + //Loop through the elements in the i'th column + for(int j = 0; j < att[i].values.size(); j++){ + + //In this column, at this element's spot, assign an element from the tuple vector to this spot + (att[i].values[j]).assign(tuple[i]); + } + } + } + + void displayTableName() { + cout << "The table name is: " << name << endl; + } + + vector< Attribute > getAttributes(){ + return att; + } + + int getSize() { + return att.size(); + } +}; From f5db5ac3ecb4f238c86edd533aec3640104255ad Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:19:10 -0500 Subject: [PATCH 047/186] Update and rename db_engine.cpp to DBEngine.cpp --- DBEngine.cpp | 73 ++++++++++++++++++++++++++ db_engine.cpp | 143 -------------------------------------------------- 2 files changed, 73 insertions(+), 143 deletions(-) create mode 100755 DBEngine.cpp delete mode 100755 db_engine.cpp diff --git a/DBEngine.cpp b/DBEngine.cpp new file mode 100755 index 0000000..a854dec --- /dev/null +++ b/DBEngine.cpp @@ -0,0 +1,73 @@ +#include "DBEngine.h" + +using namespace std; + +DBEngine::DBEngine(){ + // +} + +//create a new table in memory +void DBEngine::createCmd(){ + // +} + +//open a txt file, parse SQL script, load data in table +//void DBEngine::openCmd(){ + // +//} + +//should write cmdList to a .txt file +void DBEngine::saveCmd(){ + // +} + +//display the database +void DBEngine::showCmd(){ + // +} + +//add a tuple to a table in the memory +void DBEngine::insertQuery(){ + // +} + +//remove a tuple from a table in the memory +void DBEngine::deleteQuery(){ + // +} + +//search and return one more tuples from a table in the memory +void DBEngine::selectQuery(){ + // +} + +//return a subset of attributes (columns) +/* +vector DBEngine::projectQuery(Relation table, string query){ + + /* + So basically this is what's going on: + - Take the table to iterate through, this is the relation (input 1) + - Take a string that will be used for the program to search for in the attributes (input 2) + - Iterate through each attribute until the attribute (string) matches the input query + - For every iterator, have a counter that counts how many attributes are skipped over in the vector until the attribute is found + - This counter will be used to iterate through each vector (row) in the list, skip over that many attributes, and push that into a result vector + - Once all vector's elements at the specified attribute are pushed back, return the result vector + + + for(int i = 0; i < table.getSize(); i++) { + + + } + +} +*/ +//each row in the first table is paired with all the rows in the second table +void DBEngine::productQuery(){ + // +} + +//true if relations have the same # of attributes and each attribute must be from the same domain +bool DBEngine::unionComp(){ + return false; +} diff --git a/db_engine.cpp b/db_engine.cpp deleted file mode 100755 index b88d9d4..0000000 --- a/db_engine.cpp +++ /dev/null @@ -1,143 +0,0 @@ -#include "db_engine.h" - -using namespace std; - -db_engine::db_engine(){ - // -} - -//create a new table in memory -//creates a vector -//DONE -void db_engine::createCmd(string tableName, vector attributes, vector pkeys){ - string output = ""; - output += "CREATE TABLE " + tableName + " ("; - - vector::iterator it = attributes.begin(); - while (it != attributes.end()){ - if (it == attributes.begin()) - if ((it + 1) != attributes.end()) - output += *it + ","; - else - output += *it; - else - output+= " " + *it; - - ++it; - } - - output += ") PRIMARY KEY ("; - - vector::iterator it2 = pkeys.begin(); - while (it2 != pkeys.end()){ - if (it2 == pkeys.begin()) - if ((it2 + 1) != pkeys.end()) - output += *it2 + ","; - else - output += *it2; - else - output+= " " + *it2; - - ++it2; - } - - output += ");"; - - cout << output; - //cmdList.push_back(output); -} - -//open a txt file, parse SQL script, load data in table -//void db_engine::openCmd(){ - // -//} - -//should write cmdList to a .txt file -//DONE -void db_engine::saveCmd(){ - ofstream dbCmdFile; - dbCmdFile.open("dbCmds.txt", ios_base::app); - - vector::iterator it = cmdList.begin(); - while (it != cmdList.end()){ - dbCmdFile << *it << "\n"; - ++it; - } - - cmdList.clear(); -} - -//display the database -//DONE -void db_engine::showCmd(string tableName){ - cmdList.push_back("SHOW " + tableName + ""); -} - -//add a tuple to a table in the memory -//BECCA -void db_engine::insertQuery(){ - //table.push_back(); -} - -//remove a tuple from a table in the memory -//BECCA -void db_engine::deleteQuery(){ - // -} - -//search and return one more tuples from a table in the memory -//WILLIAM -void db_engine::selectQuery(){ - // -} - -//return a subset of attributes (columns) -//BRANDON -vector db_engine::projectQuery(vector< vector > table, vector attributes, string query){ - /* - So basically this is what's going on: - - Take the table to iterate through, this is the 2D vector (input 1) - - Take the vector of attributes that pertains to the respective table (input 2) - - Take a string that will be used for the program to search for in the attributes (input 3) - - In the attributes vector, iterate through each attribute until the attribute (string) matches the input query - - For every iterator, have a counter that counts how many attributes are skipped over in the vector until the attribute is found - - This counter will be used to iterate through each vector (row) in the list, skip over that many attributes, and push that into a result vector - - Once all vector's elements at the specified attribute are pushed back, return the result vector - */ - int counter = 0; //counter for iterating through the attributes, initialized at 0 for reasons - vector result; - - //Loop through the vector until we have found a string in it that matches the query - for(int i=0; i < attributes.size(); i++){ - counter++; - if(attributes[i] == query) - break; - else - continue; - } - - //So let's say we have a 2-D Vector (the table) that contains all of the rows, we iterate through each row - std::vector< std::vector >::const_iterator row; - std::vector::const_iterator col; - - for (row = table.begin(); row != table.end(); ++row) { - //Instead of col != row->end() we have it counter, in order for the program to access the correct data under the correct attribute - for (col = row->begin(); col != counter; col++) { - result.push_back(col); //Now we store that row's attribute into the result vector - } - } - - return result; -} - -//each row in the first table is paired with all the rows in the second table -//BRANDON -vector< vector > db_engine::productQuery(vector< vector > table_1, vector< vector > table_2){ - // -} - -//true if relations have the same # of attributes and each attribute must be from the same domain -//WILLIAM -bool db_engine::unionComp(){ - return false; -} From d28e68beb0f54939cd2557505887b8232e7fe0ce Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:19:49 -0500 Subject: [PATCH 048/186] Update and rename db_engine.h to DBEngine.h --- db_engine.h => DBEngine.h | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) rename db_engine.h => DBEngine.h (52%) diff --git a/db_engine.h b/DBEngine.h similarity index 52% rename from db_engine.h rename to DBEngine.h index 05e7b60..bd807fe 100755 --- a/db_engine.h +++ b/DBEngine.h @@ -1,19 +1,21 @@ #include #include #include +#include "Relation.h" using namespace std; -class db_engine { - vector cmdList; - //vector> table; +class DBEngine { + //member variables + //NOT DONE + //vector tables; public: - db_engine(); - void createCmd(string tableName, vector attributes, vector pkeys); + DBEngine(); + void createCmd(); //void openCmd(); void saveCmd(); - void showCmd(string tableName); + void showCmd(); void insertQuery(); void deleteQuery(); void selectQuery(); From 758d3e55cc0e719083c60ef43b008226f7617913 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:21:06 -0500 Subject: [PATCH 049/186] Update DBEngine.cpp --- DBEngine.cpp | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index a2842e4..a854dec 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -3,7 +3,7 @@ using namespace std; DBEngine::DBEngine(){ - // + // } //create a new table in memory @@ -42,10 +42,26 @@ void DBEngine::selectQuery(){ } //return a subset of attributes (columns) -void DBEngine::projectQuery(){ - // +/* +vector DBEngine::projectQuery(Relation table, string query){ + + /* + So basically this is what's going on: + - Take the table to iterate through, this is the relation (input 1) + - Take a string that will be used for the program to search for in the attributes (input 2) + - Iterate through each attribute until the attribute (string) matches the input query + - For every iterator, have a counter that counts how many attributes are skipped over in the vector until the attribute is found + - This counter will be used to iterate through each vector (row) in the list, skip over that many attributes, and push that into a result vector + - Once all vector's elements at the specified attribute are pushed back, return the result vector + + + for(int i = 0; i < table.getSize(); i++) { + + + } + } - +*/ //each row in the first table is paired with all the rows in the second table void DBEngine::productQuery(){ // From f748c986fa156e5c33682cb2e87642103e393c00 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 20:21:19 -0500 Subject: [PATCH 050/186] Update Attribute.h --- Attribute.h | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Attribute.h b/Attribute.h index 87b2c25..5be40a0 100644 --- a/Attribute.h +++ b/Attribute.h @@ -29,13 +29,18 @@ public: void display() { - cout<<"Atribute name:\t"< v){ this.values = v; From d4e1e5bc04ebb6f673ac817eb382ce380fa94fe9 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:21:26 -0500 Subject: [PATCH 051/186] Update Attribute.h --- Attribute.h | 44 +++++++++++++++++++++++++++----------------- 1 file changed, 27 insertions(+), 17 deletions(-) diff --git a/Attribute.h b/Attribute.h index 2c1bd3d..08e12c9 100755 --- a/Attribute.h +++ b/Attribute.h @@ -5,33 +5,43 @@ using namespace std; //Funtional, might need more functionality -template +//template class Attribute { //a named column of a relation string name; - vector values; + bool isKey; int size; + public: - Attribute(){ } - - Attribute(vector v){ - this.values = v; - } - - Attribute(const Attribute& a){ - this.values = a.getAll(); - } - - Attribute& operator=(const Attribute& a){ - this.values = a.getAll(); + + vector values; + + void initializeAttribute(string n, vector a){ + + name = n; + values = a; } string getName(){ return name; } - vector getAll(){ - return this.values; + Attribute(){ } + + void display() + { + cout<<"Atribute name:\t"< getElements(){ + return values; + } + */ +}; From 2b1141bfe7763ced81537203e2c9f15bfe71d958 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 20:21:50 -0500 Subject: [PATCH 052/186] Update test2.cpp --- test2.cpp | 24 +++++++++++++++++++++++- 1 file changed, 23 insertions(+), 1 deletion(-) diff --git a/test2.cpp b/test2.cpp index 280656a..2a02bcb 100644 --- a/test2.cpp +++ b/test2.cpp @@ -1,7 +1,8 @@ #include //#include "DBEngine.h" #include -#include "Attribute.h" +//#include "Attribute.h" +#include "Relation.h" using namespace std; @@ -23,4 +24,25 @@ int main() { atributo.initializeAttribute("atributo",shamWow); atributo.display(); + + vector doom; + doom.push_back("zombieman"); + doom.push_back("revenant"); + doom.push_back("imp"); + doom.push_back("archvile"); + + Attribute atributo2; + atributo2.initializeAttribute("atributo2",doom); + + atributo2.display(); + + vector setOfAttributes; + vector attNames; + attNames.push_back("attName1"); + attNames.push_back("attName2"); + + Relation myLittleRelation; + myLittleRelation.initializeRelation("randomName", attNames, setOfAttributes); + + myLittleRelation.display(); } From 6fa6ad2b44bfe6828b4577d6a7fd21d177454d9e Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:22:17 -0500 Subject: [PATCH 053/186] Update Relation.h --- Relation.h | 41 ++++++++++++++++++++++++++++++++++++----- 1 file changed, 36 insertions(+), 5 deletions(-) diff --git a/Relation.h b/Relation.h index 222b8a5..8aadaf7 100755 --- a/Relation.h +++ b/Relation.h @@ -7,10 +7,41 @@ using namespace std; //NOT DONE class Relation { //a table with rows and columns - string name; - vector< Attribute > att; + string name; //The title the user gives it + vector< Attribute > att; //A vector of the columns + public: Relation(); - Relation(vector< Attribute > a) { att = a; } - void addTuple(vector< Attribute > tuple); -}; \ No newline at end of file + + //constructor + Relation(string n, vector< Attribute > a) { + name = n; + att = a; + } + + void addTuple(vector< string > tuple) { + + //Loop through the attribute columns + for(int i = 0; i < att.size(); i++) { + + //Loop through the elements in the i'th column + for(int j = 0; j < att[i].values.size(); j++){ + + //In this column, at this element's spot, assign an element from the tuple vector to this spot + (att[i].values[j]).assign(tuple[i]); + } + } + } + + void displayTableName() { + cout << "The table name is: " << name << endl; + } + + vector< Attribute > getAttributes(){ + return att; + } + + int getSize() { + return att.size(); + } +}; From 560e345828b1964e534d8163dd77769eb71b9af1 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 20:22:35 -0500 Subject: [PATCH 054/186] Update test.cpp --- test.cpp | 63 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 60 insertions(+), 3 deletions(-) diff --git a/test.cpp b/test.cpp index a419a4a..0c956a1 100755 --- a/test.cpp +++ b/test.cpp @@ -1,10 +1,67 @@ +/* #include #include "DBEngine.h" using namespace std; -int main() { +int main() { + + + //DBEngine engine; + vector my_vector = {"Name", "Grade", "Happiness"}; + string at1 = "Name", at2 = "Grade", at3 = "Happiness"; + + + Attribute attribute_1(at1);//, attribute_2(at2), attribute_3(at3); + + + //Relation r(line1, my_attributes); + + //r.displayTableName(); +*/ + +#include +//#include "DBEngine.h" +#include +#include "Attribute.h" + +using namespace std; + +int main() { + + /* DBEngine engine; Relation r; - Attribute a; -} + Attribute a; + */ + + vector shamWow; + shamWow.push_back("rag"); + shamWow.push_back("sponge"); + shamWow.push_back("wooow"); + shamWow.push_back("cloth"); + + Attribute atributo; + atributo.initializeAttribute("atributo",shamWow); + atributo.display(); + + vector doom; + doom.push_back("zombieman"); + doom.push_back("revenant"); + doom.push_back("imp"); + doom.push_back("archvile"); + + Attribute atributo2; + atributo2.initializeAttribute("attribute_2", doom); + atributo2.display(); + + + + + string line1 = "Table_1"; + + + + //Relation r(line1, my_attributes); +} + From c052e7cbf09b7922b7d37dafb098c78e70faa847 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 20:23:47 -0500 Subject: [PATCH 055/186] Create Relation.h --- Relation.h | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 Relation.h diff --git a/Relation.h b/Relation.h new file mode 100644 index 0000000..69ccfea --- /dev/null +++ b/Relation.h @@ -0,0 +1,45 @@ +#include +#include +#include "Attribute.h" + +using namespace std; + +//NOT DONE +class Relation { + //a table with rows and columns + string name; //the name of the relation (table) + vector att; + vector attributeNames; + +public: + //Relation(); + + void initializeRelation(string n, vector attNames, vector a) + { + attributeNames = attNames; + name = n; + att = a; + } + + void addTuple(vector< Attribute> tuple); + + void display() + { + cout<<"\n\nDisplay of relation--------------------------------"< Date: Tue, 15 Sep 2015 20:35:43 -0500 Subject: [PATCH 056/186] Update Attribute.h --- Attribute.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Attribute.h b/Attribute.h index 5be40a0..b57879e 100644 --- a/Attribute.h +++ b/Attribute.h @@ -29,8 +29,8 @@ public: void display() { - cout<<"\nAtribute name:\t"< Date: Tue, 15 Sep 2015 20:36:07 -0500 Subject: [PATCH 057/186] Update test2.cpp --- test2.cpp | 3 +++ 1 file changed, 3 insertions(+) diff --git a/test2.cpp b/test2.cpp index 2a02bcb..0167b02 100644 --- a/test2.cpp +++ b/test2.cpp @@ -37,6 +37,9 @@ int main() { atributo2.display(); vector setOfAttributes; + setOfAttributes.push_back(atributo); + setOfAttributes.push_back(atributo2); + vector attNames; attNames.push_back("attName1"); attNames.push_back("attName2"); From b2fa6c1a556167f37e7051581ba25abb0beb523e Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 20:36:33 -0500 Subject: [PATCH 058/186] Update Relation.h --- Relation.h | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/Relation.h b/Relation.h index 69ccfea..8668481 100644 --- a/Relation.h +++ b/Relation.h @@ -32,12 +32,7 @@ public: cout<<"\nAttribute name: "< Date: Tue, 15 Sep 2015 20:55:21 -0500 Subject: [PATCH 059/186] attribute works as expects --- Attribute.h | 25 ++++++++++++++++++------- Relation.h | 14 ++++++++------ a.out | Bin 0 -> 29594 bytes test.cpp | 38 ++++++++++++-------------------------- 4 files changed, 38 insertions(+), 39 deletions(-) create mode 100755 a.out diff --git a/Attribute.h b/Attribute.h index 9d53d4c..2c51e1b 100755 --- a/Attribute.h +++ b/Attribute.h @@ -9,25 +9,36 @@ using namespace std; class Attribute { //a named column of a relation string name; - - bool isKey; + string type; + bool key; int size; public: vector values; - - void initializeAttribute(string n, vector a){ - + + Attribute(string n, string t, bool k){ name = n; - values = a; + type = t; + key = k; + size = 0; + } + + void addRow(string v) { + values.push_back(v); } string getName(){ return name; } - Attribute(){ } + string getType(){ + return type; + } + + bool isKey(){ + return key; + } void display() { diff --git a/Relation.h b/Relation.h index c41db03..568f020 100755 --- a/Relation.h +++ b/Relation.h @@ -6,21 +6,19 @@ using namespace std; //NOT DONE class Relation { - //a table with rows and columns string name; //The title the user gives it - vector< Attribute > att; //A vector of the columns + vector att; //A vector of the columns public: Relation(); //constructor - Relation(string n, vector< Attribute > a) { + Relation(string n, vector a) { name = n; att = a; - } + } void addTuple(vector< string > tuple) { - //Loop through the attribute columns for(int i = 0; i < att.size(); i++) { @@ -28,11 +26,15 @@ public: for(int j = 0; j < att[i].values.size(); j++){ //In this column, at this element's spot, assign an element from the tuple vector to this spot - (att[i].values[j]).assign(tuple[i]); + att[i].addRow(tuple[i]); } } } + string getTableName() { + return name; + } + void displayTableName() { cout << "The table name is: " << name << endl; } diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..d8082f0af5f9dda34369707a36b35b40de1e84a9 GIT binary patch literal 29594 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 E01-!;=l}o! literal 0 HcmV?d00001 diff --git a/test.cpp b/test.cpp index b6b03b0..03a58ce 100755 --- a/test.cpp +++ b/test.cpp @@ -5,40 +5,26 @@ using namespace std; -int main() { +int main() { + Attribute atributo("shamWow", "VARCHAR(10)", false); - /* - DBEngine engine; - Relation r; - Attribute a; - */ + atributo.addRow("rag"); + atributo.addRow("sponge"); + atributo.addRow("wooow"); + atributo.addRow("cloth"); - vector shamWow; - shamWow.push_back("rag"); - shamWow.push_back("sponge"); - shamWow.push_back("wooow"); - shamWow.push_back("cloth"); - - Attribute atributo; - atributo.initializeAttribute("atributo",shamWow); atributo.display(); - vector doom; - doom.push_back("zombieman"); - doom.push_back("revenant"); - doom.push_back("imp"); - doom.push_back("archvile"); + Attribute atributo2("doom", "VARCHAR(20)", false); + + atributo2.addRow("zombieman"); + atributo2.addRow("revenant"); + atributo2.addRow("imp"); + atributo2.addRow("archvile"); - Attribute atributo2; - atributo2.initializeAttribute("attribute_2", doom); atributo2.display(); - - - string line1 = "Table_1"; - - //Relation r(line1, my_attributes); } From e90e0c990f9c3f90c3200d60f8f12d7213beadb5 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 21:03:01 -0500 Subject: [PATCH 060/186] Update Relation.h --- Relation.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/Relation.h b/Relation.h index 8668481..6f69bfa 100644 --- a/Relation.h +++ b/Relation.h @@ -21,7 +21,16 @@ public: att = a; } - void addTuple(vector< Attribute> tuple); + void addTuple(vector tuple) + { + else + { + for(int i = 0; i < att.size(); ++i) //for all the attributes + { + att[i].pushBack(tuple[i]); + } + } + } void display() { From 6004fe724f5d771999d1c05bb6e65ea8ba2804ab Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 21:03:35 -0500 Subject: [PATCH 061/186] Update test2.cpp --- test2.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/test2.cpp b/test2.cpp index 0167b02..1c23c06 100644 --- a/test2.cpp +++ b/test2.cpp @@ -47,5 +47,14 @@ int main() { Relation myLittleRelation; myLittleRelation.initializeRelation("randomName", attNames, setOfAttributes); + + //adding tuple business----------------------- + + vector tuple; + tuple.push_back("hadoken"); + tuple.push_back("soryuken"); + + myLittleRelation.addTuple(tuple); + myLittleRelation.display(); } From 70e29704301f9c16d5c608ec3a448801b29b5828 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 15 Sep 2015 21:04:08 -0500 Subject: [PATCH 062/186] Update Attribute.h --- Attribute.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Attribute.h b/Attribute.h index b57879e..92c435b 100644 --- a/Attribute.h +++ b/Attribute.h @@ -41,6 +41,11 @@ public: { return values.size(); } + + void pushBack(string s) + { + values.push_back(s); + } /* Attribute(vector v){ this.values = v; From 92a5ba2e9388746268e52b43f0c15b03d1f645b1 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 21:13:15 -0500 Subject: [PATCH 063/186] updated DB engine --- DBEngine.h | 24 ++++++++++-------------- 1 file changed, 10 insertions(+), 14 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index 32e96c2..e889297 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -5,21 +5,17 @@ using namespace std; -class DBEngine { - //member variables - //NOT DONE - //vector tables; +class DBEngine { + vector tables; public: DBEngine(); - void createCmd(); - //void openCmd(); - void saveCmd(); - void showCmd(); - void insertQuery(); - void deleteQuery(); - void selectQuery(); - void projectQuery(); - void productQuery(); - bool unionComp(); + + void addRelation(Relation r) { + tables.push_back(r); + } + + vector getRelations() { + return tables; + } }; From dce018766019028ef22322c8fa3128bc2c2f991e Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 21:33:15 -0500 Subject: [PATCH 064/186] new framework --- DBEngine.h | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index b621ed4..ed5de9c 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,14 +22,14 @@ public: tables.push_back(r); } - void showTable() {} - void saveToFile() { /*???*/ } - void insertTuple() {} - void deleteTuple() {} - void selectTuples() {} - void project() {} - void product() {} - void unionComp() {} + void showTable() { /*Becca*/ } + void saveToFile() { /*Becca*/ } + void insertTuple() { /*William*/ } + void deleteTuple() { /*William*/ } + void selectTuples() { /*Becca*/ } + void project() { /*Brandon*/ } + void product() { /*Brandon*/ } + void unionComp() { /*William*/ } vector getRelations() { From 66196158fc1ab481fecb223f36f0a448066e443b Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 21:37:11 -0500 Subject: [PATCH 065/186] Update Relation.h --- Relation.h | 66 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 45 insertions(+), 21 deletions(-) diff --git a/Relation.h b/Relation.h index c41db03..6850ce0 100644 --- a/Relation.h +++ b/Relation.h @@ -7,41 +7,65 @@ using namespace std; //NOT DONE class Relation { //a table with rows and columns - string name; //The title the user gives it - vector< Attribute > att; //A vector of the columns + string name; //the name of the relation (table) + vector att; + vector attributeNames; public: - Relation(); + //Relation(); - //constructor - Relation(string n, vector< Attribute > a) { + void initializeRelation(string n, vector attNames, vector a) + { + attributeNames = attNames; name = n; att = a; - } + } void addTuple(vector< string > tuple) { - //Loop through the attribute columns - for(int i = 0; i < att.size(); i++) { - - //Loop through the elements in the i'th column - for(int j = 0; j < att[i].values.size(); j++){ - - //In this column, at this element's spot, assign an element from the tuple vector to this spot - (att[i].values[j]).assign(tuple[i]); + + if(tuple.size() != att.size()){ + cout << "\n ERROR" << endl; + } + else { + //Loop through the attribute columns + for(int i = 0; i < att.size(); i++) { + att[i].pushBack(tuple[i]); } } } - void displayTableName() { - cout << "The table name is: " << name << endl; - } - vector< Attribute > getAttributes(){ - return att; + void projectQuery(string input) + { + cout << "-----------Initiated Query Projection---------" << endl; + for(int i = 0; i < att.size(); i++) { + if(att[i].getName() == input) { + + cout << "Column Title: " << input << endl; + for(int j = 0; j < att[i].getSize(); j++) { + cout << att[i].values[j] << endl; + } + + break; + } + else + cout << "Attribute input not valid" << endl; + } } + + void display() + { + cout<<"\n\nDisplay of relation--------------------------------"< Date: Tue, 15 Sep 2015 21:38:49 -0500 Subject: [PATCH 066/186] Update test.cpp --- test.cpp | 52 +++++++++++++++++++++++++--------------------------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/test.cpp b/test.cpp index 0c956a1..69b71bd 100755 --- a/test.cpp +++ b/test.cpp @@ -1,29 +1,8 @@ -/* -#include -#include "DBEngine.h" - -using namespace std; - -int main() { - - - //DBEngine engine; - vector my_vector = {"Name", "Grade", "Happiness"}; - string at1 = "Name", at2 = "Grade", at3 = "Happiness"; - - - Attribute attribute_1(at1);//, attribute_2(at2), attribute_3(at3); - - - //Relation r(line1, my_attributes); - - //r.displayTableName(); -*/ - #include //#include "DBEngine.h" #include -#include "Attribute.h" +//#include "Attribute.h" +#include "Relation.h" using namespace std; @@ -43,6 +22,7 @@ int main() { Attribute atributo; atributo.initializeAttribute("atributo",shamWow); + atributo.display(); vector doom; @@ -52,16 +32,34 @@ int main() { doom.push_back("archvile"); Attribute atributo2; - atributo2.initializeAttribute("attribute_2", doom); + atributo2.initializeAttribute("atributo2",doom); + atributo2.display(); + vector setOfAttributes; + setOfAttributes.push_back(atributo); + setOfAttributes.push_back(atributo2); + + vector attNames; + attNames.push_back("attName1"); + attNames.push_back("attName2"); + + Relation myLittleRelation; + myLittleRelation.initializeRelation("randomName", attNames, setOfAttributes); + //adding tuple business----------------------- - string line1 = "Table_1"; + vector tuple; + tuple.push_back("hadoken"); + tuple.push_back("soryuken"); + myLittleRelation.addTuple(tuple); + myLittleRelation.display(); - //Relation r(line1, my_attributes); + string input_query = "atributo"; + cout << "\nThe attempted input query is: " << input_query << endl; + + myLittleRelation.projectQuery(input_query); } - From cf5ad99b9ff0f1bf5bf0292e27183160ea2bb86f Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 21:39:24 -0500 Subject: [PATCH 067/186] Update Attribute.h --- Attribute.h | 38 ++++++++++++++++++++++++++++++-------- 1 file changed, 30 insertions(+), 8 deletions(-) diff --git a/Attribute.h b/Attribute.h index 9d53d4c..7f0df44 100644 --- a/Attribute.h +++ b/Attribute.h @@ -9,12 +9,11 @@ using namespace std; class Attribute { //a named column of a relation string name; - bool isKey; int size; public: - + vector values; void initializeAttribute(string n, vector a){ @@ -31,17 +30,40 @@ public: void display() { - cout<<"Atribute name:\t"< getElements(){ - return values; + int getSize() + { + return values.size(); } - */ + + void pushBack(string s) + { + values.push_back(s); + } +/* + Attribute(vector v){ + this.values = v; + } + + Attribute(const Attribute& a){ + this.values = a.getAll(); + } + + Attribute& operator=(const Attribute& a){ + this.values = a.getAll(); + } + + + + vector getAll(){ + return this.values; + } +*/ }; From 8dc821422bd10ad809295cf53ed2b522978eac96 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 21:42:08 -0500 Subject: [PATCH 068/186] oosp --- DBEngine.h | 10 +++++++++- test.cpp | 3 +++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/DBEngine.h b/DBEngine.h index ed5de9c..4452ec2 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,7 +22,15 @@ public: tables.push_back(r); } - void showTable() { /*Becca*/ } + void showTables(String name) { + for(int i = 0; i < tables.size(); i++) { + if (tables.getTableName() == name) { + name.display(); + break; + } + } + } + void saveToFile() { /*Becca*/ } void insertTuple() { /*William*/ } void deleteTuple() { /*William*/ } diff --git a/test.cpp b/test.cpp index bd7f2f3..017d8e9 100755 --- a/test.cpp +++ b/test.cpp @@ -26,5 +26,8 @@ int main() { vec.push_back(att1); vec.push_back(att2); + //beginning testing of core DB functions engine.createTable("table1", vec); + engine.showTables("table1"); + } From 3a18ac0608126a5572c0cb8eeaf34c5b2356ac73 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 21:49:49 -0500 Subject: [PATCH 069/186] Update Relation.h --- Relation.h | 85 +++++++++++++++++++++++++++++++++++------------------- 1 file changed, 55 insertions(+), 30 deletions(-) diff --git a/Relation.h b/Relation.h index b27f6fc..18a79f1 100755 --- a/Relation.h +++ b/Relation.h @@ -4,57 +4,82 @@ //Functional class Relation { - string name; //The title the user gives it - vector att; //A vector of the columns + //a table with rows and columns + string name; //the name of the relation (table) + vector att; + vector attributeNames; public: - Relation(); + //Relation(); - //constructor - Relation(string n, vector a) { + void initializeRelation(string n, vector attNames, vector a) + { + attributeNames = attNames; name = n; att = a; } - void addTuple(vector tuple) { - //Loop through the attribute columns - for(int i = 0; i < att.size(); i++) { - - //Loop through the elements in the i'th column - for(int j = 0; j < att[i].values.size(); j++){ - - //In this column, at this element's spot, assign an element from the tuple vector to this spot - att[i].addRow(tuple[i]); + void addTuple(vector< string > tuple) { + + + if(tuple.size() != att.size()){ + cout << "\n ERROR" << endl; + } + else { + //Loop through the attribute columns + for(int i = 0; i < att.size(); i++) { + att[i].pushBack(tuple[i]); } } } - string getTableName() { - return name; + void removeTuple(int tupleNum) + { + if (tupleNum > att[0].getSize() || tupleNum < 0) + { + cout<<"ERROR! index out of bound"< getAttributes() { - return att; - } - - int getSize() { - return att.size(); - } - - void display() { + + void display() + { cout<<"\n\nDisplay of relation--------------------------------"< Date: Tue, 15 Sep 2015 21:51:50 -0500 Subject: [PATCH 070/186] Update Attribute.h --- Attribute.h | 59 ++++++++++++++++++++++++++++++++++------------------- 1 file changed, 38 insertions(+), 21 deletions(-) diff --git a/Attribute.h b/Attribute.h index 9d8587b..6621b08 100755 --- a/Attribute.h +++ b/Attribute.h @@ -9,41 +9,29 @@ using namespace std; class Attribute { //a named column of a relation string name; - string type; - bool key; + bool isKey; int size; public: + vector values; - - Attribute(string n, string t, bool k){ + + void initializeAttribute(string n, vector a){ + name = n; - type = t; - key = k; - size = 0; - } - - void addRow(string v) { - values.push_back(v); + values = a; } string getName(){ return name; } - string getType(){ - return type; - } - - bool isKey(){ - return key; - } + Attribute(){ } void display() { - cout<<"Atribute name:\t"< v){ + this.values = v; + } + + Attribute(const Attribute& a){ + this.values = a.getAll(); + } + + Attribute& operator=(const Attribute& a){ + this.values = a.getAll(); + } + + + + vector getAll(){ + return this.values; + } +*/ }; From 5010901a322a601f6af8bd45fa4cb00a344d2095 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 21:58:44 -0500 Subject: [PATCH 071/186] added function to DBEngine.h --- DBEngine.h | 27 ++++++++++++++++++--------- a.out | Bin 58342 -> 67444 bytes test.cpp | 21 ++++++++++++++++++--- 3 files changed, 36 insertions(+), 12 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index 4452ec2..f701b20 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,22 +22,31 @@ public: tables.push_back(r); } - void showTables(String name) { + Relation getTableFromName(string n) { + //will return first occurence for(int i = 0; i < tables.size(); i++) { - if (tables.getTableName() == name) { - name.display(); - break; + if (tables[i].getTableName() == n) { + return tables[i]; } } } + void showTables(Relation r) { + r.display(); + } + void saveToFile() { /*Becca*/ } - void insertTuple() { /*William*/ } - void deleteTuple() { /*William*/ } - void selectTuples() { /*Becca*/ } - void project() { /*Brandon*/ } + void insertTuple() { /*DONE*/ } + void deleteTuple() { /*DONE*/ } + void selectTuples() { /*William*/ } + void project() { /*DONE*/ } void product() { /*Brandon*/ } - void unionComp() { /*William*/ } + + bool unionComp(Relation r1, Relation r2) { + //Two relations are union-compatible if they have the same # of attributes and each attribute must be + //from the same domain + + } vector getRelations() { diff --git a/a.out b/a.out index 3b18417de0c281f8c617229deafd3b3a74e85387..b0c907a543bd46c03dbca52ef7cdc401cadaf480 100755 GIT binary patch literal 67444 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 RX2T*Z8fDim(UDka{XZY1qR{{V literal 58342 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 SIrYo1&XVo0#94f)_5T3N@Z vec; vec.push_back(att1); vec.push_back(att2); + + Attribute att3("name", "VARCHAR(20)", true); + att1.addRow("Fry"); + att1.addRow("Bender"); + att1.addRow("Leela"); + att1.addRow("Zoidberg"); + + Attribute att4("age", "INTEGER", false); + att2.addRow("22"); + att2.addRow("5"); + att2.addRow("22"); + att2.addRow("50"); + + vector vec2; + vec2.push_back(att3); + vec2.push_back(att4); //beginning testing of core DB functions engine.createTable("table1", vec); - engine.showTables("table1"); + engine.createTable("table2", vec2); + engine.showTables(engine.getTableFromName("table1")); } From 856c73172af5090f0460269f0419f2867444d995 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 22:02:16 -0500 Subject: [PATCH 072/186] something --- Relation.h | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/Relation.h b/Relation.h index 18a79f1..ee95ad7 100755 --- a/Relation.h +++ b/Relation.h @@ -8,20 +8,21 @@ class Relation { string name; //the name of the relation (table) vector att; vector attributeNames; + int size; public: //Relation(); - void initializeRelation(string n, vector attNames, vector a) - { + void initializeRelation(string n, vector attNames, vector a) { attributeNames = attNames; name = n; att = a; + size = 0; } - void addTuple(vector< string > tuple) { - - + int getSize() { return size; } + + void addTuple(vector tuple) { if(tuple.size() != att.size()){ cout << "\n ERROR" << endl; } @@ -33,8 +34,7 @@ public: } } - void removeTuple(int tupleNum) - { + void removeTuple(int tupleNum) { if (tupleNum > att[0].getSize() || tupleNum < 0) { cout<<"ERROR! index out of bound"< Date: Tue, 15 Sep 2015 22:08:18 -0500 Subject: [PATCH 073/186] fixed my stuff --- Attribute.h | 2 +- Relation.h | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/Attribute.h b/Attribute.h index 9d8587b..8c9435c 100755 --- a/Attribute.h +++ b/Attribute.h @@ -41,7 +41,7 @@ public: void display() { - cout<<"Atribute name:\t"< att; //A vector of the columns + itn size; public: Relation(); @@ -14,6 +15,7 @@ public: Relation(string n, vector a) { name = n; att = a; + size = 0; } void addTuple(vector tuple) { @@ -25,10 +27,13 @@ public: //In this column, at this element's spot, assign an element from the tuple vector to this spot att[i].addRow(tuple[i]); + size++; } } } + int getSize() { return size; } + string getTableName() { return name; } @@ -57,4 +62,4 @@ public: } } -}; +}; \ No newline at end of file From 773544da13ead426ffd8ecfd1dcc962fd013dd5e Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 22:20:14 -0500 Subject: [PATCH 074/186] use THIS --- DBEngine.h | 2 +- Relation.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index f701b20..64fcef2 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -45,7 +45,7 @@ public: bool unionComp(Relation r1, Relation r2) { //Two relations are union-compatible if they have the same # of attributes and each attribute must be //from the same domain - + //return (() && ()); } diff --git a/Relation.h b/Relation.h index 64b8aa3..7a90300 100755 --- a/Relation.h +++ b/Relation.h @@ -6,7 +6,7 @@ class Relation { string name; //The title the user gives it vector att; //A vector of the columns - itn size; + int size; public: Relation(string n, vector a) { From d69186dc44169f653c27890d54a6441c51e55855 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 22:23:41 -0500 Subject: [PATCH 075/186] use THIS --- Attribute.h | 6 ------ Relation.h | 10 ++++------ a.out | Bin 67444 -> 67444 bytes 3 files changed, 4 insertions(+), 12 deletions(-) diff --git a/Attribute.h b/Attribute.h index fde2fcc..4b60d4d 100755 --- a/Attribute.h +++ b/Attribute.h @@ -41,12 +41,6 @@ public: cout< a){ - - name = n; - values = a; - } void erase(int position) { diff --git a/Relation.h b/Relation.h index 7a90300..3082e02 100755 --- a/Relation.h +++ b/Relation.h @@ -22,7 +22,7 @@ public: for(int i = 0; i < att.size(); i++) { //Loop through the elements in the i'th column - for(int j = 0; j < att[i].values.size(); j++){ + for(int j = 0; j < att[i].getValues().size(); j++){ //In this column, at this element's spot, assign an element from the tuple vector to this spot att[i].addRow(tuple[i]); @@ -46,8 +46,6 @@ public: } } } - - int getSize() { return size; } string getTableName() { return name; @@ -68,7 +66,7 @@ public: cout << "Column Title: " << input << endl; for(int j = 0; j < att[i].getSize(); j++) { - cout << att[i].values[j] << endl; + cout << att[i].getValues()[j] << endl; } break; @@ -81,10 +79,10 @@ public: void display() { cout<<"\n\nDisplay of relation--------------------------------"<U$~Yp4ZYgfV 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 Date: Tue, 15 Sep 2015 22:27:32 -0500 Subject: [PATCH 076/186] fixed a dumb thing --- Relation.h | 2 +- a.out | Bin 67444 -> 67444 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/Relation.h b/Relation.h index 3082e02..5edec44 100755 --- a/Relation.h +++ b/Relation.h @@ -12,7 +12,7 @@ public: Relation(string n, vector a) { name = n; att = a; - size = 0; + size = a.size(); } int getSize() { return size; } diff --git a/a.out b/a.out index 6c894cd3d756f418cb03f5bad74ce7eb0120aa7a..14839936c51fc6bdf006db0a5ae3fea6b3db8a09 100755 GIT binary patch delta 3885 zcmYkDQ?26X^2Q4t0OK|o=x4J=njmu$>6M#Bxwm+@^EMG$q}$K1@x^a0<& zi8oJAJN2N8WJYcUc`GL~97JV&sZenn?L~51yBQX?W|Ql7_j?Cy;}1UP{LcCP&bjxV zxdS)Kd)z4RQP~<+_N)^8DXY40xL@(|u1@iCTd+|qUlIR~vNRo=o6>A9t+z$AOwOx( z?b0h}bhW{h5H8}?)`-g@G-s(zv9~nkst50yBgE%2Dl%DIQ>~FRh4@}A@7GJ1e_Uo$ zv;qH--k4(q&dO}*9U^(q=DmvMO`p(rZC4F;qPzC z$hc(rN%W^8RUV8v)hok@CdtDwDYD*DYaV5EXWcMz)u&^lgehXVtQwRg9#G#L#6})c z!{d4h@v!U{e@aZ1pT?guKW1d;-vn1XJEYb;-{{}p)!&scPApb0B#>FCrVr&3mK&q1 zz7Ed*V^XcT(CF{I8tmVlTq{V1A`|tYG2X}@$wcHQn%F!12 z-l9RK^JnFwSur9-USAYzn)`RTVd6kpkrg9v%}SDU^BxjOa%WzmsFIER-Y+lZMMuBF z#n?+*>}9JPw5i-G#e7E70CnfvIw*4G_8#SLr}9A0gx%w9aK zXsXYc*i34THo&Oo%HV41>@KU_#WN_qpq=~Pm@!EUhFQ%u(`|RH*0cdPh;N#tr5Sa# zp51lG&35I62J1DSFzOkFGzw*xUeUJwT#J;mExI0M4?Ydn3*JRzU9Cg*$bU$5$gKP+ z886luC77JTWMf%6?COX%=|a~4#r?$FwKW8^8L}xqs$aU1^oxtHkXQ022`TR>7$P>x zM+(NL#a<6qD`uPRTH{_iWi!3pM-JWkO6`XqjQ}HG$TtdxC%tEkm+maobv<}WURp`( z>uJpJYM1^&^DlDbl7x^-?Or)}$rw>A81f8h3G+`h_f6Owd=pCB()iHLqY{D9YWf>yc(fiC`0v(TXw|Gw=`CkgO;>8+F~u zcs;tY5k07(AHxspdH`QXODJ))Vt=o$J1`ra=tMVeMGroU{!pbzX`m4x(1w;UMY(}i zG&NBGGtr4t(2WlCU;+B^2@K#qw1g|lA+(|&9oU0A<-~i@jZ@HrPoh7(NKtBN1PB~L zOK(MKM=R>+z&<=kC&r;0N1z8Y(T@%c;5xKKD9U!UVl_H&FFLUi-FO~7*n$2c8iS5f z03Se0A4Pctt+)vtxC@$u2R}kTUdI5Y9V7oPMX{q5XQ2ag(TPrUV+DF}7Z&+x z_-F+1EL!?1%2l*t%5e%{COYvkbmJoQ;FIXb=P-bK&=RRAN70JCctJRDI683*y0Hp9 zc&J4$()~1!6A0jEXz8aY79RyL1085bC(cJVu0s!QM?dbt0PaUie=Y>A7{%Mpfm6_l z%g~MM(1Tk~6j6Z2E&>7cqh)}ibfOhQdHp(Y1Uk`*Zp=mxE=NB;g#q+oVib9&blrxF zFc-_P7(c-}j61FCJ{(a*L!*(4p#v3VEvDfMXvdGS5P!lFbi7Xi+=M>-5<4-CFR&aw zwsu^JYq1iKVgru*kd5N#R$W(O6y*x0VbOnS*lFB-hK2C=Sb`N;hx^foXHml*XW6KQ z_XDP38|L6>zEqt!72WtWdT)OgniP`8j#P7ZO?{Rgn#2{}BoW_6JNEp6M0^-4(Txr0 z$5vc>i^GH(TKJNhcAIC4PRzv{a?+}a!mgICs_QGN<=l;fWcJ2BqK;N-$l(f`TvudK ztBHsot(-nA?K$$$aEj6UNJL&ee6~ZHzl`Ju}1*fPTCD#ONUEKb% zDXl74rP|d;{6_9`rJAz30v!Zq%UiD0ki}J9OJ_c_g1=?c#Ir2aZdmnjVU`T(ZSS~ye6MH8iSik#M zh!Uk#t5pXcGzqJE<{h&TZh7Hgy69BH-d!TZ8TIi)e-+${u*SY7aZAQ}(|HDyz2CCH z*ru2HSMBpAa-LAXI`TJ@u&JfTiiDV}hP4p1$bPU3Wr>ebTsTTH?sr?qB@(dzT92TY>3I_+HYsQ&=~DC#%> delta 3959 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 O?IsbW-uYqLq<;fh7ZNW3 From fc0f899568e65ed6d1830e6b509acfa0042bbfbe Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 22:36:44 -0500 Subject: [PATCH 077/186] union comp done --- DBEngine.h | 4 +--- Relation.h | 12 ++++++++++++ a.out | Bin 67444 -> 72106 bytes test.cpp | 38 ++++++++++++++++++++++++++++++-------- 4 files changed, 43 insertions(+), 11 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index 64fcef2..ecb9590 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -43,9 +43,7 @@ public: void product() { /*Brandon*/ } bool unionComp(Relation r1, Relation r2) { - //Two relations are union-compatible if they have the same # of attributes and each attribute must be - //from the same domain - //return (() && ()); + return ((r1.getSize() == r2.getSize()) && (r1.getDomains() == r2.getDomains())); } diff --git a/Relation.h b/Relation.h index 5edec44..525a0d9 100755 --- a/Relation.h +++ b/Relation.h @@ -88,4 +88,16 @@ public: } } + + //make this better + vector getDomains() { + vector ds; + + for (int i = 0; i < size; ++i) + { + ds.push_back(att[i].getType()); + } + + return ds; + } }; diff --git a/a.out b/a.out index 14839936c51fc6bdf006db0a5ae3fea6b3db8a09..428fec69e91141398d3a78fd8715e16fc279e764 100755 GIT binary patch literal 72106 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 JBeB@}{{Wzo9Ap3h diff --git a/test.cpp b/test.cpp index 884021d..93f1781 100755 --- a/test.cpp +++ b/test.cpp @@ -25,16 +25,16 @@ int main() { vec.push_back(att2); Attribute att3("name", "VARCHAR(20)", true); - att1.addRow("Fry"); - att1.addRow("Bender"); - att1.addRow("Leela"); - att1.addRow("Zoidberg"); + att3.addRow("Fry"); + att3.addRow("Bender"); + att3.addRow("Leela"); + att3.addRow("Zoidberg"); Attribute att4("age", "INTEGER", false); - att2.addRow("22"); - att2.addRow("5"); - att2.addRow("22"); - att2.addRow("50"); + att4.addRow("22"); + att4.addRow("5"); + att4.addRow("22"); + att4.addRow("50"); vector vec2; vec2.push_back(att3); @@ -45,4 +45,26 @@ int main() { engine.createTable("table2", vec2); engine.showTables(engine.getTableFromName("table1")); + Attribute att5("name", "VARCHAR(20)", true); + att5.addRow("Yrf"); + att5.addRow("Redneb"); + att5.addRow("Aleel"); + att5.addRow("Grebdoiz"); + + Attribute att6("age", "INTEGER", false); + att6.addRow("44"); + att6.addRow("10"); + att6.addRow("44"); + att6.addRow("100"); + + vector vec3; + vec3.push_back(att5); + vec3.push_back(att6); + + engine.createTable("table3", vec3); + + cout << "a"; + cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table2")); + cout << engine.unionComp(engine.getTableFromName("table2"), engine.getTableFromName("table3")); + } From 38a4fdefe310d69f3f31d46509bbe928d88f254b Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 23:13:28 -0500 Subject: [PATCH 078/186] more testing --- Attribute.h | 1 + DBEngine.h | 27 ++++++++++++++------------- OUTPUT.txt | 45 +++++++++++++++++++++++++++++++++++++++++++++ Relation.h | 11 ++++------- a.out | Bin 72106 -> 76409 bytes test.cpp | 16 +++++++++++----- 6 files changed, 75 insertions(+), 25 deletions(-) create mode 100755 OUTPUT.txt diff --git a/Attribute.h b/Attribute.h index 4b60d4d..c38f0df 100755 --- a/Attribute.h +++ b/Attribute.h @@ -23,6 +23,7 @@ public: void addRow(string v) { values.push_back(v); + size++; } vector getValues() { return values; } diff --git a/DBEngine.h b/DBEngine.h index ecb9590..c720c03 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -18,9 +18,9 @@ public: tables.push_back(r); } - void createTable(Relation r) { - tables.push_back(r); - } + void createTable(Relation r) { tables.push_back(r); } + vector getRelations() { return tables; } + void showTable(Relation r) { r.display(); } Relation getTableFromName(string n) { //will return first occurence @@ -31,23 +31,24 @@ public: } } - void showTables(Relation r) { - r.display(); + void saveToFile(vector cmds) { + ofstream file; + file.open("savefile.txt"); + + for(int i = 0; i < cmds.size(); ++i){ + file << cmds[i] << endl; + } + + file.close(); } - void saveToFile() { /*Becca*/ } void insertTuple() { /*DONE*/ } void deleteTuple() { /*DONE*/ } - void selectTuples() { /*William*/ } - void project() { /*DONE*/ } + void selectTuples() { /*DONE*/ } + void project(Relation r, string n) { r.projectQuery(n); } void product() { /*Brandon*/ } bool unionComp(Relation r1, Relation r2) { return ((r1.getSize() == r2.getSize()) && (r1.getDomains() == r2.getDomains())); } - - - vector getRelations() { - return tables; - } }; diff --git a/OUTPUT.txt b/OUTPUT.txt new file mode 100755 index 0000000..526f77f --- /dev/null +++ b/OUTPUT.txt @@ -0,0 +1,45 @@ +Assuming previously defined Attribute, compiled in a vector known as 'vec' and with subsequent numbers added + +To create a table: + + engine.createTable("table1", vec); + +This creates a Relation object with the appropriate Attribute objects. It displays nothing. + +To display the table: + + engine.showTables(engine.getTableFromName("table1")); + +This results in such output: + + Display of relation-------------------------------- + Relation name: table1 + + Attribute name: name + Elements: Fry Bender Leela Zoidberg + Attribute name: age + Elements: 22 5 22 50 + +With table3 having an equal domain to table1, this: + + cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); + + +This will display: + + 1 + +To project a table's column: + + engine.project((engine.getTableFromName("table1")), "name"); + + +This will display: + + -----------Initiated Query Projection--------- + Column Title: name + Fry + Bender + Leela + Zoidberg + diff --git a/Relation.h b/Relation.h index 525a0d9..40084c8 100755 --- a/Relation.h +++ b/Relation.h @@ -59,11 +59,11 @@ public: return att; } + //assumes that all attribute titles are unique void projectQuery(string input) { cout << "-----------Initiated Query Projection---------" << endl; for(int i = 0; i < att.size(); i++) { if(att[i].getName() == input) { - cout << "Column Title: " << input << endl; for(int j = 0; j < att[i].getSize(); j++) { cout << att[i].getValues()[j] << endl; @@ -77,15 +77,12 @@ public: } void display() { - cout<<"\n\nDisplay of relation--------------------------------"<_31P}wF9xlN|BSr!kFL-hVq9I9>6AUU91uSVy zrD`l{RlL;NYL!~G(Uuq#1zW4pQr~!~M5VgZP@5{&cx(R8vu5UG=bW=S*!O+E@B96K z9XNZF^9O6Zg*M*>$VWZ*HCR38nex2+l5F(1(3qP!DS-bu~>x*y&^IyJ3jauA}gyz0{3ifBc5v$F_S2 zek1T3jh{QvP6o;*AIsDAm!gjGrAYC_Q|Dv8*)wEp)}L|@+AwU^ikvH+0?IS&2ZiXH z$Z#7Z#==wY)JSHe>CagBfQS52@W+y$>wzEZA?HR9{5Kx@*L(2ydX#&y2j20(f8PUt zg@-=B^uVw1z_0btf1?Ng4IcPO9(w-T1OIam{3jmxpogA!dGMzjJy)4|1Z)y&aAiAb z+dm*_dwCa;k?0AjTM7lGdw^0eAw~X85pop9pW0Aq$tkCB%$cHs!6nP8DucD5qMA@J zsDkG#56&xFQeGP>tC>|%R9jnCtAZEjhcZqJ21840s;&$c7nKH!Dk`cHC=Tw%5G#Bu-vof;s&MldDZhlct zNtUqI7UgFl&0^;Y7A#g|F*K_TmK23bmQwNh`e1cgO>I?WQAK%ZMR0jK^5lmmmsHh- zBzILsZB{X2l~*nkN=0oBEXgQYT2vDZ)fAP7YEfv`Jm4llwepf+Rc)xItY}$I$^2ke z{;5G|rX`kDmR97H>|5UX!TIUPJq5nh?kOz_6&d%?NSB8o)*54cp}k1G^XAOUugVY7 zC;1^L9;0;ePAv6}3a16($Kss)$wAmMKSN|`mmB})hbE@mYON@%ToPIuEUT%hs?l~w z)tat|i%To=ma`Qt(+vo*B_$=nTBb5oa6#pjL<_n!_Ka*}2Jw8RP==Q9GXJov;E^onPGz90TccKEQ0USC%`TzLX6`1-G)#D~l=%kx5?IozqhQIgOLbA!6Wp!ZM_FvAMoEL2v)mA7` z&dDsthEx~ch!)aV7oM_gNO$4g>zzy&-aYRJTzETgQ&zSM&$-%$JQtqp1RDxmc&;IA zD0JaDSKF}Eh37iKhH4j{>jWF>U3jilY*^*Oa~)yBIv1XGZo_&P-mXVT+u*`;Jhfq? z3(vKb4G+2ScCA9%CKsOTFB@81c&>SDXmjDYp0Q!O3vbtJq_w;7?loG63vbtYrAsLceP3ScT6WTy-Cu~G0i1r*G5S{!!(oM|@cu4+l&$26OASD~cuV46+1D^JolGtH*k6_E7znP!viN|*HYOtVRLrAqoL zrr8v`QY2l&G@D?TlJw*|#B#Z0rQb+t=+9@A`MU2T#+hv@^E z-X!UnOtVRKZItvhrrDIb)=PRK(`-Urt0a9g(`+JL)sjAzX*P|nLP?KinpNMGC+P#2 zW|emZB)uQgtm>|Gq%;1O)9~75*$wY!uin*@H$P`vTlMt;mA!4tDgoQlQUc1k5{!Em zuVNA!+ih@vXXmpE+f^I3#rlO#nhUZ_J(f0w{DRQl+Zcr_y zVdd8ib-k-se(kF}@w%10eSJ{#sAmJu6)I=tH+_B2axM0Z+ES=m1$R4eFFnu9tz>+ns_In%%TH<*U9v=eem8zlZT$xGuY?nQ@TU1GLUr1DD5Z=TlUZX=QWvNsWfWdQl&I$v0w1>$nc0~VOMG|0n!ZFA@G4n6>TD}EzIm(4$dg?VvFd1C&^8l zcapVF;?0Z$)eg{FMqAEiVexDcY3Ic%tgCaZ*g}EUmhBgbEkrrn(Tn2RBAjpDo=LV?znuM5N$qMWZW+{Lv; zI9~^6?0OOX6SXaU6uLy>&5WbW9)Q;G(3ZzoSUg)q+LN&g>&iY+6d!>e>*(^D8Allk zpmin7IF~t_npr5i7V#i&f^(n7z@?l$(?kUEj-op821((3<8z3KZ1OTliY|ktOfl4X z7_9p;NKz%I_;hF!B{$w6DP`UgOQonml5TKD#bT8~Qfe!Q(E zPp^LVPq-@HASou@L$Bi-=vXZz5AMcN*4M%!}c7_o%{tu0jx#1^8QDvFP1 zi*RPe5-+xh{>w>j+I$v;z9sQy#(_!)XlKE_Sy((JdbD|#=%oap8M$GJ)aQK%uMKv#Dlzw z!>X)3?>beAA>R2JSmU;0;k=eYqs9uZJw=yIQl=>C%tw4*hE=NM44ndPqU6RKR;A48 zu~dp0R_O+3%Rgdi&$Xv``xBCzHeXBDgUlN$LWXq>Np8Qi()4yL$Ga5{2^_a7Js!HIA6xO>)!bn<(^raY-}dEEAyh zVY=Z*EG%C46=`?HDy(Y(cG6%A1zKB1XTlzlU2U|p%KUQH~o3W#XdZ9pT%c{9z3sKH0ijQZDa4rOA>^3I) ze~;v*&CgP3x5S$n2Wk^Q>lWHFiG{^$VT*>j~5iE^Ip-iJyQ&Sr2%JDY=~nEoQkxDlk#lf@;? zj04pP(ArKn)UdF44Opbr$11GrBkT#n77Dbse0q-9LX`9AU-!Wl;d}|4v279kza+V7 zb039XCU!M54pa|-uF?ltSUg)q+9RpEQ9LV?zn6SXZwIVVzlyn#hHzv=R_Mf6Y8 zwv50gm~*qln;A!$3ZV6M*2`NE5!V)x))}j?uJf^Xi+Z6zYs)1$QZGa~mr#5>TZA(s zmUv`s+AR7PlZ-~pwP%4|yK~mJr~|RyjcbMoIxJQ>UF)zV4KvtBtjM-`8YQ>ln^S1b z@wsBzS&YvRg_;>hj&y+5KhdEL4iU}dhd|;%PNCX$dUK2@XBN2P`b9Voqr9krZY+d~ z8s|uHTD>o^Chsnfvk4}-4vHl-Y6zqa&QG||k1W4y1h({H9&ZJpNq~&WdT6O)e2i$- z%s9w}0Il!PITarf(M*2iCf+)yK<~B@<(vSnxXuyIuRnx@Naece98qJu6sOhu^SFI* zj^z40me45Y&<1B6ghrL$^~r(KOdcc0Xl*g$&}t)qZYISn1dD0GHxmzsNHcjt8rhSY zqFc_Z(#eF`X`~(TdK5D|MX{9YKEkNswEbltyiCQM+rSxRrL4uo#BC&FMkMPgVpcQb zKy3ohH)*vjEZ&eQ(pJPOtm_^;a)Q8DS%xmJnQ@@nSccr>jSxMWStxu-JjkhBzsOBq zi{5@C-r2fqA8Z%SJHQ!jyR2U*==UURL!Bzb_htP;m7Ei}u^H8JzH4ujeOT0dZyeHtR-u3yBYd^-4Bn3e@4Dp5H91kPy90uU;u4`S(9zfkDq5^rW4s7`>^kLZTSSy;RV zEYezH71q^^XRNS=0&LX^ z!}s>V7Lm3aoKcSJdI`^uVG9LXTb9g_dLhbLLhLKXp+IZPaBT}w&Txv4H?Roju6H0I%F6+(|H0ap zAcd}wcr)W5=K<&{-2xGDZ4qy5i&a?HC3tBEwost8W#)9L7owb*6d%tP;T#o9ywr>6 zpF=X%yA=8hi8nJ2R3SiXBJ1U|xA(yok@gihqa4?D6JAJyEfi>NSy;fg_;=$c|AbuU^?`Hw}@yaKm0;G$g+B0f1czf%DD_&as48klPNE%z4AUr z)F_kUw0Z}p?!$eI)edfZvgtH=scafQ|Bh$=DtUAH*2|1 zY6k7_zfHxPT2J+86~FEfiKIKluqm$hg)=jj^>U*`6`UVIXk00UNkEWoz zwRSYZ*@{hnJc8f*D^8MYX)K{p)hI%%_#`2!eBSY~CY)FPYaa{|&IiC5Ehqp%Qu}`* z84rqR)KoF5nQ@@<0CX3*j)ldW3q;!YVinf)I$o-Tz*LdjOu4o#+#*xL%6ptvQDeb9 z*-b0g>jpGTD^@7n3)b5lMUtag%X(5%b?bTTG*|0seM4*@-5GP_KC~X;{F09eqMUvh zm2xhH#O}pg|nU8xKVDTAlae# z<-Q0K&hL2&%H!f>J$CTpY9ySCxz`_4BY7Tk^uA~$oS$($6jRWuFQL&JAjj26I3Mv8 zR87;K#9m`uLBiR{UCEdlZK6iA_eCS&9PO!5Ck1_l*U95*B%H5-Gg>1KLMb$DI+|Gv zpJirWx0P==Uozv;m!98yyVe;K2ei-Z#?5>M*{OQ1uTNgWZdloy-B8z)-I&#*U!u-7 zn3tZ{Z)r2xnAO`D7#D>}jlg6#29mQIo+Ep9BaC@1`=l+|4cqyWxtmiL2bL6;n!TkH zub?L-7!JO%J_w+V))4m_a$G=gq= zg{w4a^nsLE?LSU?7^w9=rEKd!>w$uFKUT6ZU=-qx^RmS8y~gt+n%hjn4R?0Y6CYvp z`*2_UBt0A5x~UF76!&a|KiocL*LShr8fFda@c(9s-@Yw`4T@1|{r-(2VsQMn{`b<& zqaC{Chg&_`CdcxXy$<$p!+jNB;e_#61({E2_;F4cJ@0o>Xw+c$i1i}u53JwSS-lv| zQ0u2>_0)Z|K3pbyk)B{07NDVWqCxq;>@O$U0Npsk(*s)5)aPpVW9LM(a=M2|F^Hk` zEGJx$*0u@4U-_Cn;eXBpl(`Z71AD;mCAUse}2UGrM6y2UZ$f zQ6cSGlyR8uJ`(*%=8z8Oa?FD0$xbpZ9k?v(#dm%yd)2k?fG4XX?4kjZU(D)5rLqK+ z#Mx)1xXWrC&ZIl&|BaT?-w#?A=-`i`)w15$ZKJ<`+PaV3chDjtr2ZdlLvy7GjuQXR zl=xm}|Gkbs(uTr5i?HecUj13`Qv;3w>~Y%yxI+z(9pS;iw!Q2Ye4olND25fc|I=OH z;Vj|m=EtOVRTJ(+D?6MuxEsrEcpk3qbm|e$Y1k@muMj+LPTtCG_)vfHxO!`<+@?|Z zz<%Gr-iW^Pg)}+}>v8_38=&-5tl;ZuqrT}7<-SdaUcIc7-4}gWcghauCJa*l{SNKr zlWN@RTA!36ZhcZ9c2ww{KK1#!snUP4U6gkaw+*jd@V4P` zMq1leH{`{voxbkm_1(Vph~dFY)=pU1-yBVM4=-1{kGE4}uTumOt9yKF+Cqa~%=$=m zkJc+*sY9-4xa@rmVn6b&hun{1w~eT&@&-uNtdVBRl#S8m>~IZs%J+8GzzKTvGNVmY z&x#aBFV6e8--~k?hZm>Ai=ECi)VCF!z`BaR!&Kbxd@dk7Q`e-?2+17%EQ^$;k9oT-svWJT*!*l_e8Wwfrlz@iX8`9d> zC;IDB2MiSJ&LfZG9Qm0ksi}UHll|LpBGoy)KY^LOuG9G)Tqxx=)u#f{;XG{+Bc58Y zV_n`@(zXTg<|LNZw(CN-HjW3g8_O^zENZj)ot2c{u&7Or9w^)1jh(xgoTHrl_?)og z9xh$AJlNId><`_dY^SrJyrZmXtJ_A=nc}VP-{29!L?pLE;dUt84uzpK^0?Wyf(-?2 z*NV4yA1fTT3Pw>4m+{fEEa%7Hgyo?4?armp$;`AV`fdnK=ycR*xHD@sCzFUpU=~^Vd_3SjTr?Dq~`gFKAL=Jga?*9+;M0BU9 z{m+Q5c`XfOAH50|M-PGQ7`MuIAyGZ^ZdS0n(=Dc`cs+9lnOr@y>X`wplTLC(D)&Gu zMLBoBhR5O-F^){GB8H)esP@zV(ec|8d-Av6O3|y;@bm@u_BexE{!i3(#9ppfUC+T- z8@sOm#VIe&W+ewdDI4`KA)gwcBwM(>B156)S=N^h3_0)J1PRYSo z!T0dXKUu{#;l6>YTnNmXwh?Q&e2?(_?{KdK&krckc@m0X*bA3*FiMK+`S-uA=fgc9 z6AiT!9R|H)K|4Ir=^P^SguWrK{D8{5m3eOf8|I?KEQA5kgPobw-SQ6nHUTg-9zZI9!3GT zqx)v!p&{MD-W#p^a=PDaCfv6--H*1qU*pofI#Tx*e!3K)`?&*kPhyD!bpJ&B_w9B6 zx$AynkTf?Bzn5SmSG?5e(tSsy?q7ctt@~pGb(dZ;K=%`LzuAl5qgFUvbiB$sh9I<# z5l^+@1T{P-!>yg)=@nHuTuy(1%V_5`_}xCManG-^PC6WQ+$(o1bv@4r`}fglQ27p4 z)7!EfqQGJvQn>Ft!m|ul9azY3ltyPZQ1$(|Uiio+FL+WYC%YjpS)e34<;l6v@a3hr z7bxv|E^3F{9p_*@54G!gsNJcBk$T=+pmiD*?o+&Jd6ZvXNSo|%j_PFmMb;j=m2)c1 zV-LCpJaWgF)tTEk7N`#ArEukTI9(FQjpKW{4S(gm;{jh&4poI57{Pt58JEsj^b%fS z$Z{#$=?s^9&P8EmU&P33`%mQTmnq)HNHAcY>>qJkFivc0?Fc^~zv?k+u}wce{~Hpf zj=Cy+7>Ma$z9^8@A`imPGp09Tu>EN-?dD5XNG!xE2JT^WDrBsAyDqJ3e+Ymj8wZTV z>nLJN4j+|Uc1*XAvlkUMwIQ06IP?$`ABTb+RYZ!#S{IY-R|s?jtCupwv*Xk zgf8vQe{o%m2;Kd|cLlG@*rChNR)5X}*?X|=UY)hu*L_k9z1yAFKz5JnXF;Ec!pBMB z+nhK4+}C${*6tDapbL#yn~yqK-#xSSkg$zO?((lh0@Dp%w1Bg*fHKa0kP4fZEk>;6 z<21f&peKCRzOK{sfr}I@v$$Io`UOprzSHh}#hW@}?|;ZuO5LEc}t}_)gV)y4-Im}Q~G{f-HdKoJd#+Vu@?huoP*aH3aF_i7_Sty1gZt|!Z(tq8UPy`x^1?j#93mEyA*$fL zkSx%8gcp)!;_y0*k+_G?N3+!n$#kx2(&1C@h2&R17at5*uR0$-EM|tq&w+Sa7d?-- zR)_!ZEF>rCyOd4Rm>ST#xNaAB4}VLnb-5c%7@_>=G2-rlgO^>mcfBe82ruvcNvGL` z_aXtU77n1!gH87y1Hk{YS zX$+>dJHt8LV-_dE`JuG8E#_{3OxvAVpV0|mSiLnMHznZ4WV3)CZE^lc>qHh;sCAB$ zjMbsjgnI(ZX6}w!oO*G@q87bOZ*e-177Z89FmrP%wA_woqLC&SgWXaV# z#bFVjzhOm8Pt=Q^+=hQT_hY+`rqEy8lj;r#(0Kg?J(SCGS&H+L7K^@S5H1Ydh+Sz7A4#G~hhGqg zy^E*c7{CKY46w^O(xD`>p_`n^wb;M;#y|z~YOP|gkvp7s!i~7oX-C{Xt=KAf`<&+{ z(ZTgZC-y_v`O?bSVtSlxiHDzA)oTfS)6)z+{|zVUQL@81j$KTKM!Z%*xBXkMRYW?8 zilJ|zC)=lebHY8L-8pxsbyA0O7UH~1@p#(T!BJ%2p7srs$v}HfNj&VilK&0Qb$$K6 z;W-YeXy_14~r7J(PKOyK~qM za_Rf5uNZH{U_&2dVq)p!)K$4#)o6J_W{RpzC1m%%gQRVe?Ev+iCBfJ#HDk{(bX={e^v&Nv`IWCzD!=KI$y?fW(Y(`Z7A^VN6nvDzLgfDM9=T13zG3fl7J~$DalM<{ zQ1(#wXx=1Kw7dkr``Vjh+%Qw4jqio?K|_4+#HwhN9oz0EV~H?T)HtVBiEZA2H^ z@Z#F#&`rI#_DTW~@WWSRo1t;#2ImGu@vuG%x^F^dZ*cyC8AWID0oM-PM&~ubF+Xs! zRnhMJW2bp*p>EiVYw2QN_fUELK@xZaLg2c!A&^#Wma^;ScVB|fN(zC&;q^-a8rSmL zkhLbe(V*9I95ejbTV=PumqSLQ5Nz%ea4A{q z46_um$vIPs$XaLfm1Kc;GZl62y&I*&InHSCz$)58ZI1JebkhFKwu@l4-b0AFGkDIcw1(4vhqLEp#=|> ztdbo4ds2U(`gQ}W|E`teUCzqrxtugpRn=>3(koMFeJRPX(jJ8u^sV36xyBRDtQF;M)6NSmd0Don!^ zg1a8+pZ^E7}9H#I7w!_uiyN~5;q_={F z?+4@y@0(tP#*3gSkh8%|@PKB8xt;To5M(mPj6x=v@R4zwBTu~g z>FGk(E6jB;9N**ql{PRF1r!(ovclX5hV{$XtcLpCT)07I+_c@VO+@vU#$ZF=xXDU@>L7R-4z#qbb?ofOc4I z2EJs@0jtdo&WYl1t~S>@_j72I)h04z>XG$LCnvl@gq5-ef-AAwY@p?GcgLxEr}Q3- zby*wCYID7lFY+h|qp_?uzu|%%{g$dak4P4dfGEzm9Gfmr(Ln9d6usI6S;f0OH)2ph zkUW}q$Bhe+kHb@fi9!i3Ke28cFkgh%p|B3?&?_;`inALQ!0+0-U*1M}5d6ha-M=#3ftyVCN;5EEgmv!=4(g@WQf(d1XWN(hCFxi9z|`oq01col9n zow{2^Xp3uFJmT8d--j znd5#);%GY<#&}Z^xi2_GY-QWp?%o$X@J)!=%MB5ll*fBu5W^b22k8K>llbfbf<#U+h*cQy{ zNx#p8eu3JFcx{s_u4CXttS9X2nivJp#umX0EU~^|@tP)%dh=$p{v3EmYW6{Y4=Req zj)l1srT7ogdx_KwI@~pKUH9$wIHTTP3-57ak+ZC0EX?l|%Zo9^{7-G)rDBwE*9G1I zlBtlbveOxdxZUGSHB+Q(`_3*|y*Hsg2{-W`=R@7Z(Wx+45BRXejO!uFtX?wmHL4nc+M9eu*A$O2of2s)kYzL8*;sR-D2fGOHHAf%{@a zV9}A+p_!y{AmcV??jC6ymOfVKdeyQ4GyNuK^QUfx0wX|HE!Z)@DkGC4OnBAOgq5?P zClD>GmQBui>=zXF=$|lJyrK8S)XzJ_H)VV;~L{9&-M;g-EVcHafR+)R2`5GGyuse$(lr*)mPRXR=a(`>;|u zi`ME@JGPb@jT|`EtW-8SIUkz>+b@nD= zy>mC%u*M^kO9ao<*;~Fgr{^_yzU;=$WOrJr5b75et#?-Fj=0{L#xkzkO4pd@uzMB0 z-Wf7LDJ#4P!q$BdzRS^6=OPb8?G6HXKUjZpPs66o6ZOlG?b3%%mvZOZ3vC& z$!@rGOgrYQ%-oZ{nbGjCoQBV`w|tYB)3C#t^?fL}_HUshGT!Fjz0}VkXE%I4qwk=d z*{h%TWl!y{`D=FLrDKw_8!N`7Q4}h#svI9DsCkA_%TA>nR~G)I@^bve>eAE;>dIAF2`RdFICHtv#Ms=wBUKc^2*vW{IT_-x_Y&6#=KeC zGvip$HE z6;-O5vgKu!MU^2{jz6khR8z8ad3i;dqQBIfniXm${?2$=jmj;9wd&%k^3vk6nk6b{ z?)h-8gK*PSily**?=8@O96WU*8z^g0jakEW&*YY7685rSP!@xa0B3%fGvQ@ zzeRq)GXZ-6^8iQTu-FQ~Ou!9*1%S^1)&sr^xB+m#&BzZp8L$H|53m<71UPD#QnvtR z0^SQ)0JsUT94`P6x~coCa6`I1jKMupDp$;3~it zz()Z)0AB;_1>6ZZ3MWq=`YiGTP6R9foDNtII3I8W;1z%^fNKFe0DlYE3-}J;D4fFm zSHMibJ%9y(!!XCy10Dys0dOK<3t#}S1Mp(NUcfbgqf(Um0bnNJgMbBqoq+X#y?`44 zM_`6;0Xzz@18^c>FW@}DQTR*Bg@BoWs{jiCp98E1>;>EaI0|!E3*bqB9e}F=djTH> z9ED@>TL3cw+W`vz_rrpt9`IPe4S>@CTL9+*b^ula_5xl5I0}E6;5NWazy|;e0Jj3x z0}jH1Yy;qQz!tzu0XqOI0eb=K0Y~A0t@VJJfWHGQ0DK>?9`H-R4S+}BPOSy-WWWx< zGXZ-67XgmKNnck0W&%C~SP1wf;3~lRxa-^qcr9QX;46R*;BYLxlhHrZ0LKDWaVZXX zGvHFd-GJ)=58d9^_YmOKfIJ88H-PEr&+h}~0WQKGQ9ai?2Q0bU=pfBK$0Sf`I`ZMYg@Ls@&0AB{&4)_(I1Gwj16d_5pWM+8`E9T7jRlP{EO4RZv-3*_%dKN;L_dj zFW^CcLpucI-_mLW{2I^!eCuPBhl9_#kCF~J4lob!Qow4!^d95`?D+)w05AI#b^@wB zC=Y+3GxMLw2j~D60H%Eo{{Y?&xB+l0U<=@Zy~qbRA5dYwdk`=c@I$}=;JUBiAHaVC zt^+Lm2K^bZ8n6d2^IwpMd65C#TY~SZdCFIx;yZlU;NpdS&t|b=K(9Po6Xe7Hgi_sZ- zB#-=Cfo}&LO(UlKUBG_=`u&mgtksFsKMDT3?aY9h7D-21><7Ia^pid4vqAq7^o@~p zBfk{%JI)Fy3=J{$TLb!2pnH}70O&oSpW=~!E9gfAy#2om^pp2OPf9?W1D&=e;TKuI zV?dt|I=ezF`fSkaK|k7qUJCjK(7oEn8qgmE-P3;1JNJ@*E9f8Zg}w{)ulGVvO2k}0 z!&|>GppOE5N~C?JerJO|7j&=oT?%?3=wAL^1Nt?fd)4m)pg#nb8qmGk#~RS@2i>cEJOKJH_d?$a zdfQ&;yFh;hbg%kJ@}qr$?q%N?(7y)V%f8v5r_S=$zZCQ|(7noE19|{-+)BjkUk`wO z4(M1)#iVZqy?8J5U7)Yn3q1(~`FhaPJmil7y%ls%`$2yXbg%j=1^w@!XL`tA1Nw=x z0}4y7nD#vY`b^Nh{IeDGT+qGzvkUanz0i{|*Io^}SNUT=ZwB47|AYQA=&2t1mx8_< zbT9v`0sTwRz3h7c^rS3r`?i99#9rvTK%WG z1^rggz3f{9`rV*=)!zf4KLxti{IC`Dp1tJX1$y!vZ}~|>lsX!8FaL}IJq>iO#W0ja z&5yG|p9#9x_*M#f@m}Pw0lj)J`5yp%J?Jw%%HIn5>!5qJ&t0G=pY7c~lTa~ZLH8P; z#(+K*^ou>ppAGsgpnJ_PrJ%Qh4iM9SYe3izx@Y}^-U+&A{ewO_+dKa*&?oMNo-`EW zE9hSJI|lU2K=-QO*`R+Hbg%YP3i^$pd-b0+pg*{m{11Ts#9qqZ3i=Mvz1qhv&=1M+ zZXZe5L&^m`)uVpKfL;N*SNoU^`gcL!&m(^+=<7iDs^2xBZv@?|ejfn+t-a*m3i>B| zq3;5HzjFfWSP%V@um?5{bg%jw1Nt=3z1qiY(C32g)jmo=U*;iy40Kup`qiMHAF1Ej ztCMa_1QLO3lSjb!JMaY%Pr@&}PB-h&mqFj}TQ3nKZDrXIUMZw1}UA4%8==mP!x$o#HysLwd?Wu6~U z-`xuz%bO3rr@-gcA3~tN0eVKH9HgcGK~K&LsGJyd>hT2V^FXg7ecZ!nNZixFenf=6 z?|^SR_`V`vrZ-;_2DYsi1k@(-ogbTzdW{2LXrA{tmJ50#=xLOLUsx|hnZE+`r$P5> z*EfRx4(ML};t|k~%=ga!GUx%&z5Ko#^g_@xpi3pz_%5AUh~3_L4O-`FMs|P^dSqp{qYXy<3RWF$Je0eg6`#y zBd|CBUC_P!F&*>{(8V9CyzMLn-`s_?div`|Z#j>E?_KbXCm(*{_GQO^ z(1%?ZV;yejyFs4vcZpOF@q{-jE&w{T9$C zupIotb|6YUZUy~0(7!-D=?QN=eha?eT;#3CJD|T0x|bebgFgJ?fch=V!7r?b@z)Ut zW4_%BeLCnjT;iSoQqX5!8had*_7D1vpa&w$N1A^4G3YOY{zKB+WBY-8TfukPqJVmY ze1CTF<*fGKnA9XI2$r`SeEVG%yM0j3utV@{67(HD$oacVPQb z?6(NMOTkwSzURp|)|+n)%PlhP|4eVbN5J<8_@sU2#^$4)JHYq-V()gb2lQWp?$s_1 zIuzqD=w9t}GU!7~O#58wt;eO{ODgr&;~LOU0X>!;QvaYY1pPkPl(Z&xIa2@N>jhsg z>kYi&`Z#y>pd0;7Nk2dfkopH-&*Ff(obud!h?72Slu{Qj38*VP=;J_t0dy~Yb3yL` zeQ)asmJx-S*6#zLzYF^J5>Rg&W48n9^D_7r zFAJ#3NI6K8z8mx%pr^;6vz%e0A-^)9UM0Q5yPV13+X22h87EwP+4_0Pe9+IS_Fj*M zK>so50S`TH1^pe+?<76(7oOwGZ^2jp9W(BwxcFS-9_`u%zA-fcRZV%vy7(f-t6_&@ z?g3vt`6hbvO$OhvS~Cs>V)N18mxAxF;ET1sC;b}GM}}gzAJTse`gG7IP#^rl{Tfl) z^;^&@K;MCQ(xtKW5c|OwsKcpFY(Lep`B>gCUg~4FAIcdAdL`)hvAl<3%OT%<@TIK4 zelN>II;^*AJR;vU;LE-`pdLd!X=`kGROta+dcik`eE5asAxipIT+Y14yPxg?{b!(` z0^Z2{)FbIgv}e%IkEFZW2g?};zT;NLXt!p($OXL=^m&nTkY@f0(4UHxA2jN5Bk2DG z{XY7w!`mNEfN#Sp?|Rw+`k?Cqs+|2Z<qemXS)vpr$Tl{KEl7B~%`a=@q&-ndKgH_WY|HeV;_Cbu_FxdZQvU+o{fA?VZ z7m2@~?ElGr>L)||c+c^dLm0n%KmQ%W)%8RD+lHxohx(rws(vxlf8#K9{V@N|{Z+^Q z{tri}4~P4|7_L4U&iKv|{>MkE$5Z?-q^Q;u#vdN(|JMQPUnBiLJV1T_0LDK*!2iNQ z>URhF|9qf&<3Pq+4=QLZP){E0|Hmlx=E45E4^_Pf`x_5YYYy>$aEN;I5dTx7)MKOk zn@6k7hxywNQ!gFH_*0|(4M(Vk!~K})nh$6E`Xl^*I#T`V2)}cLdQal79O=LJXm#&V z{wI!7zc`BVJC63>cAWax(f;R;QFo>KH>IkdrTW($qyClZfBRUq<5>UuW7PY{`9C{O zeS93_Z;$amdV+fNc>k8;)icL4{?iluU!JJGJi*^|qPpQk#y>sLzvU$L;#mKiW7X?p z8Gq)aD>f}uTTk}Cc#3-WWdA=-R)3ZFv#0oh-#m`j_s01@7_Yt>=l{WY^}X?ozcZfr z?lk{<>1yo+|DFkI!vz1s6Vw9||JwxO-%9ttFtT|MrQhb)x^y z$?De0{`;n=`%d*gd8&H!RL1X|;{W(G_3;${b*HH>CH~QA{%5ADXEObN$W$+8GXATn z{u@qLH%#;2K26;`jq$!|{;$qdADr%g=nQrJbbs@7^@HjDzfD&kO!v2)sh&R5zb&A) zo#lV)EcM5;7;g*sZ<(oXnc;tMhPr14<2TOq@0_J}&h&pWQ*}$cW0wEHEcNhgf9q`Z z>)DLolXb+i`^51!}Wkf*ks=l|*Xs^dI=$6RcP z9&qzq)i{^&*X9zx@qF_9FpvCQc`R}31^&C{tDP74AIw*uUf_Rgp8DQA|BvRW_4642 z<2>T;$tTZk^Zj=(P(NDW|7d~gT)?{f*+Typ3)LqJ{m)&fesiH8t$Iy?e@B7(LxKOU zi_~ow`9Hfz?Ysyb_|c1T`A_(d2ma%M|9Id(9{7(3{^NoFc;G)C_>TwvLpX&P?N@^5eax?I3VCrk`8T!0!=ox(L}gk$S_y~dA85! z()|L0vG`1rP8KZo#|#`|pe-Mt!iYWFhXjNIKTF!`flqcMeZ8TZ?EmXvY-?f6GN$Yw z5d0hi7aF+Oz~u(sVBl>AK4{=m2EJ(E8wP%8;6Du(5k027lPyC8 z)cgtPKAOM!`halU9>Hgm#~_lRuEezwzbgEKIp+s!L#5@F!MfVAQXueh1bzvMLeufX zj;;y@E6R&Yf+e+e!Nuj3<*Ixj4yX_?`1}b!qds!tF{n|0^oRhHDlKh7?TXscvg+Ci z^_f$GQzlO+t5`gtHdIs-O3POh>S}8y)YgQB#CUA6MgqVWjRq0z#?da5cimcnXV4VIgusMp8$% z0rp_9s z1)eyJDg-Dp%@=_jf!btKLW)nH);2nw~gvabnduiNmK~@{4UZCmaWbMKu`rrj2uDp#(F#lh7>8AD`Bi1e z;=<$L47UuK0mu~$QT}q3Vw@E)5ED$Yjo)r?iR#KW6YU2!;{t>7sRcHAQy6twKfjJe z=bCSGeLtLwon%0W&UJy!wbn5D)TINmAYl<#hgtF?S@2ecgs}!%smo0|$3V`b3<0?+ zHOs&#kXE~58IB-PX|t^mY3CVJu)B>1dWHsFoTIzSA?oyZ zS$PS#s~{McG$~C>F0KW4N!2nQbrX)HaiNuVe%^daDl4vAf(BfKlVZZj>bhc{`w~u< zS1zs!vlbU)6=qWyj>>FYOt1;K+(s*^pqwtp6cbfv-xhH=GH|G}<4_cp)vOA&Bn3FjXaKnnMhnBN)feWXrl z88%K>jvw#gY<_#+cD<~=lnRgufj(xid=_$W;XR>E+xx=pCV#c$(t1-*tG_`j4teyY z&2R5RGqKQNNY@}-zRhp#=kV;#Z|`fDn*1A$VCs)GTey6ipVI>UYTTvleSPx&Kq6Q^ zor-RMw}Rl#pSpiQSW``YISayO2DGEUh4%pG&Tp4QJyaH+_J5BBoS^n=qbm!;iCk*3g7{c4OVs$cV{P;8Q%+I#T(7Uw;C@~4{ok^GVA9^|KqR)4z>GS=j`?a$`3(CWpz zBDem%&lUm$KRhcS++TF6zyDY{{{q3CU$qr#);0}#H3(mAJ_`pUvpavU$=_@8TRp7+ zo6n~Cw={{f_NQ(s6jJgQ%`uk3T_M#KXY>Hj$&wy{xA~_=;H@|d5BJDFV~frh(fp(= zQf&S-lRu&um1pu7Mi3(XafV0!O(s7#0NerW1HyS8`A0mb*(TbKZE{8CzsMv1jIBDu zq=*a=Nwvfyf9M6B|EP!z5lL0+k$=OBI)8!D+k(jUv&!U;tp6U9|KNxMZPLO z(7#>B*gxFC=CiolJn|>Lq&e~|qk)n6M*?r#zMD1QUgR_%tNab0>3r|m1&~gL+r3Hd6(oW?Ga(SglZe@7eoTC#3dO`HVLcd7 zks%Q)zfCdmgTnju?mUTDh1m7kKzuURTLCvp;)&S8vg;`~F%e&8+jY`F{7_}rKLhc@ z!u$0D@%x9@D+BSvm0gDn#E%GXgbu`~;Iz+x8zu2Xd|__a18!m>PM)&!{6PGH%Ff>d z@dsf(4!BVgPsEqFcD{8J6V)L&OR><6GW>@sJ3qRKiI}DByf+Yk80N7;H%j7({PN$- zGj3ucPK2`a&p`YU%FZhT@khFo;dr7tDjau566MQBH%7-3RcbU6m_#{2E1HxjU(UzE z9~X@jIb%HV$9v#U@W7uKh39yZr2f$tMex9L{D{SmeMa=^5#fz;D^FXLq6#9~XPSo` z&ey&e?doj7N4G0(lKAjcEV5k{15bSdX5$`73H7-8@by6YbA^(o{S4p3kN8Z3x8r0p z@RYMDLXMaI_llf@RdPi8e^l@Xs<9FM=(mE8)}PZ4%S~AwK&(G_`Tt$8#HyE%fTtXO zSI=;UT$MT$hST1Fu@^}RCm=$8`#knwgP#I?EcqnI!p{J|FGfGTPzpL&eZINSNY-Gf z2mWf26Fokx0X{WGf5%(j=v^b^J5)-he;J-Jczy@ZkRw-o7iI7~H-N$RkOWMsl*8{; z8LXTs246f&9FTf;C zefXU)gVpmogXi~M40p;E-(wm)zb|C4@;^3sp2NVPulU>~DYl+Pz_Z+$b2O(}PAHx+ zMm*1XVK_*x_`c8Jc^(DB47uVS$FKSMJsiWUa#iXWgXg&d3}4ArsnZOe--9#M$rayI z0)GI?t-d}W7`RIUzg3|=vu6e*eS}=Xp^Kwmm#z@TsPq3>T_WpBsFd!E^n`aMoZgpWpd26w4LoL>WBK zV`Ml+u1Z~D@cf>iAx*A$8f)-8ACke!zu(~beK*62az)?8fI`2Go*57f*NF_{4W8e@ zGVohihFpW^_t6ZG$QAk+JkRB0u>Svr!Sg&rhNI<*Zz~O+=aMiSCs#l$NK;MR4JLZv z=KxRrc^(df_5URX&+obzD&>mrm<^uiE-=`3^{Bz~dozZ4a>chLz{l#pJm;F_@|-{h zYwv9ATM^Imff%O972kFlJkN_@$dD^ObTW9J_rrjsgruQb4$p~Wu>LvG;CYS$!^LvN z8Q=!ba}60zma9_VF?gOg#9-UQGX~G^&KZ`-75go~V|5r_Puly{_Y6P3zhtoO=b&M+ z{gdW_&+))l0#Cp3TptG8U$z@O&*OCCzcF}zm&d?w^BAUJ-;Q#4jsSxlx62Kl=k_t! zc5ow2kSod=q4nW8oD5)-Pyl=^yJ`%7^4S65OO-43 z(G8yG2{Me9D<1x$VZ@Si9PsqRG*gduUbxWUi_ExW^9Bu`=hraUe(^(t=Q%PAo8*df zEe)RM7BFz#!|<8G^Sl)X+b>c_YJGUl41@LmnFhaRW`OAMxU|^ddHxuK^&7t161#XV z7{g4t;v7bU=Xt0MmVZ19q#yX5IRn2nXSf!4+TON*fXQ%p!0_|?c!n$Fit!l>Ys%qy ztPEEE41?$SH4Mke75*{!`)39OWBCW8B3N!@$OWGAd7dGI<*zq*o|DL6{nljg{EnJo zf?P458$8e7V9-~56AS!E{ImC=SRP0iiiIW1<#){t_IcGL;A81|j^TgG=rc`n;Vf>0 z=Xoy-T;DVN!r(h+2AB+w&z~DS&-G!j^U=gZv_1hdKG<>iLWBQhae(aM^}`(o&vR@U zrpOiFgaV%uV_nKKGH5T)X<*P-)EgX2JkMWXI7O~XU1ab)--yB1?^=WBxkwCYa>aRf z2G8&E8LH)qb+5tmdvAt0a>Zw!2G4VH8Em<`4W8%cG1&HSqWv5h+dr29&vJQ=DFd3N1b*{RJkJSXu=?=){*mbAcAtkYsWJT8@bkP_ z23udd44&tzG1zh7kfXGGo{z|2%MBPj&+TTg?P`(1^E`D1+n%oheq;iix}{L?_R?VZ zdA=`$)#p)z=Xn_n^>W2G*apw@%o%LGjD*7U1J9vmuztui`1^7-{$imj^+VuCCLE$h zwH6wT26qF``>9pe2L#ce(dtnnhvz^tSUp6AyyV0xACc&f(FH0{Ci?=g6u_rjpBI4AHJ%|F-p$I7|T z;CU`1!})Sms>$Ga-VTGs|K8viFVpx+p(^zcgXg)745@O(czmobm*-zHSUoQ`_*Z5I zhz{Fzufg-Y4TdY^insUBz*xUL=agZzT=52;!5_CWAQ*kc-=Z-1PBT8(cJh|N^PD1v z%jJr7i@|3G0)j#Jl)%5oz;b!+C4+50KQefp`^;eLx82}*P8x%4|9=BM1^qF3OQGQH zp;W<1Em2$=TH3r`q2nfcO>lpm|7is({ zhW|oD=m(xF%V7Py#^8DG7=z{SGkBge%wX&NuyL{VJQaA#f7h&It-a@Y@YfoCp4Y_i zh+MJ%XYf4thT*;h0qS#u=eb1;JiCZtJ_=&FJP(^;rd)Bpu)*^j9|mjh3kJ_~a~bp% z=K>l$&pTtdLaw+EPSf_T8Xhnh4Q>Zs{At?TXhZ$l@DE@{V)O*f&%YbOfNGL(ror=E zJcj4xioYRb@I1$w!S>Vd8vMo_jh`k|oFioLJO`DbPOkWyUchrbA32V782)RQ287ev zJ1sqS{muuT_VVw#Fxd9C$l!UtBLkX^gdZ6>nRB8yJ})wOo-4>;*C%%vJkK*{xLB?@XV>6)4m*Qw|A`Z|e4a1QVC&_0 zgXg*8ZhQ{#2MA{1rNr>_9DIiToAl5jroT#xY_ zDF&V;#V}v+(a(!7Hgfp)au_zs75jb$KQa^$jJ4}m2G4Wr7|?7a{NCWVn|ieMV&Bu} zE4zGE7q9G>6jf9Nmn^HQH1Bx_Ys!i$^yfS!HKE#29saB)-xZ%V|NMEu+?@RR!5~tz z2c*uK6>#y~{16BW-oiEQNLMzS@L^pTQW*+*ac3%G|AtP6m5Buo@Mv?!f3n#O%=qC5?)JCb16V}|0 zbgs&?<9B&|76)2)i_Ht?lSU}DI=A0_r=bz%+wOspE7oWduRVE*#!HaoLjcO6|26#ueqWS=xGyn!9wX)#Ny}=b^Bx-Me~ScqnnH=XP*B?|2Le=stQ- zn1_CcmYapSynivoHOM*3gY)2!TFel$DvD}r@%0dggQA@N8pUvJreEuhFwKq;Q>*K0 zmtxi~xq{wHH@(8L_csK~Z(Enkg%JZ~xQMJwGkTVBr9eeWEApa;WtXH_?LY2tpsR%= zjC*LQEW?!PQon!dbd6+L#q-Xcn;(od-(m^HF(ZGL@kswTAmfBfvR$7{!rG`5OH`RK zu&#kKWmV&{&(l+;qTKC;ch_gt4||CZ;&L(lA) zS(WITWv5l^zqOv#uM--je0nGAo>-$t{{Y0p7c33#?xu6t@7b3euCPUS7!LE;l8nI)XUtAnjD6VMON%x5m9V z#ML$X&T0Qbq=9EZn6dy0Z*1?ivc)m9-B8%S;(q z!b)XKLBo(rpHow{Y%V?qMdge8T%L&4OJghGT42a(7-M^FR7Z&;*`vjq<(Ix)2%>-O zYY&R8DLPPw?LbrD6Y2Em0QKde=%(b-IHFaA8-K*=yzAts3O>EMjnG=r`KubK_3FNA|qJpIR@so2FeXR$Zr!JN}ORdj$nY?wNTw zTqqo_n)5V!Csb1{y-U< zZY4;OYkDFpVVVyUwX@_*o^5e#l+_k96g3@Dc8N8{=LMgBa3w|fnUC;+Yn?Qpo)sT* z*3!=eoBUa+`8bCHEnLhjdOGZMG(~`$phS7nEq<2fO~|o6w(p~nZ;W!Zep}>*rPKDs zU3Rue`Pebo2Df>x+By@j6D*A0imG#}Ty)lbX^yuDF!S5MRrHIM(z{_S4s z9q{wmVG_~4%uoc7fnMA7epSt@D+u-<&np7Xd(R-q6Ycl*5&95HU;JAP5> z|LpLhC1F6rIsEWxfwPU3QE%x$(b!Zp^8gjXb6bQ@4re}>>P*E#;+{uRj3BT#vDwF- zOebHG5PY1B#J0D5f?_1mq{vGX29zpiDR&9E$f;gXtQTiL3bba~ZJQsU?`!;!SSef8 zoy$_9kq%cdg=(KVLB)&ew1b9TTtL6O%y|ZWL{_fs)hNZq{sObdBYF~KF4E#d%w9K) zRGFm5skZ){Ce0EjLNgXs3xMn`-Rawzy<8-1$3(R;d`|9?e=|?yPJm z*BggS_tF5O1#V0Ym37edPNtwPWHJ#HQm4aODI=GkvXr?Hs!eY)9hqj+%GjCcELHh_ zxtYAnnJ-Tjuy(9J8jAfn19#jW~a1;UOQ_)%oOBS9?r!Aa8L|suI}}hDx|pvVZtY6P)pMh z`gUg0U+4}z@;HUgDwLlQt0_;XxtDpOJee}Wv zh7;AC1s!;m5;&6n1vR6&%Ec1Qg33x?gJEJ(5@G_sxuyyS)(xg~*&w0hBt%UDKY9nd zY=ZKJJ7u&n0g(a1ZQ&Y|Q2*nu1%Ro+^`a3C}@3@Bt?vPx|ek}?~dWh4rFxmTSzk2xylZhi**(pN}xRjKq zNKfvXnnx$VXK9TpEu{q#dx)c*(ad9>dWW?ue1yPC&z7f3t%G2zv_W+^iBuiy9IHyR z4LVz(4v%GBWWWfMX8!c+i5Z>kORZySdsjX-tIcBbJUY-R)ied5V-&738<|f_dbEYDSauKZx zNVVow8Yf;3AY_pCWkX;tum_yY*`ORTBnu?UfIBBGuGm*pqWzJ*c^(KqHdw=3{7BaT z>=vTt-$?o)1q5#mILYefyv0f)ZDo|kIm0DFs7BD)^^FXW0U#iCe`3k@@TpU%AesZl z(DwyjZrp^sXGM*DZi6|7_ayZ<6XeWa8yY;Pq#cs>`Gt(lykB6@I16C2o)wtP2#L9B za_NM^-Se}lICaNT;1Ku$8JVs*B2JPZL!6h}${-(uNYugXnF3tqcnAX}o7hQZyIeZlvC9*dhrnO7{>lpsq7m5DrIt#&Uw*0h?GM X%Ll_MY+SX=<-_(Zc19_edHwBw#`Rsm literal 72106 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 cmds; + cmds.push_back("CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind);"); + cmds.push_back("SHOW animals"); } From 1902e6f3d55a76545f786789a84ef9c21edf0f8e Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 23:21:38 -0500 Subject: [PATCH 079/186] fixing more things --- Attribute.h | 5 +++++ OUTPUT.txt | 23 +++++++++++++++++++++++ Relation.h | 20 ++++++++++++++++++++ a.out | Bin 76409 -> 76922 bytes savefile.txt | 2 ++ test.cpp | 4 +++- 6 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 savefile.txt diff --git a/Attribute.h b/Attribute.h index c38f0df..fb3fd48 100755 --- a/Attribute.h +++ b/Attribute.h @@ -26,6 +26,11 @@ public: size++; } + string getElementAt(int pos) + { + return values[pos]; + } + vector getValues() { return values; } string getName(){ return name; } string getType(){ return type; } diff --git a/OUTPUT.txt b/OUTPUT.txt index 526f77f..c79684b 100755 --- a/OUTPUT.txt +++ b/OUTPUT.txt @@ -4,12 +4,14 @@ To create a table: engine.createTable("table1", vec); + This creates a Relation object with the appropriate Attribute objects. It displays nothing. To display the table: engine.showTables(engine.getTableFromName("table1")); + This results in such output: Display of relation-------------------------------- @@ -20,6 +22,7 @@ This results in such output: Attribute name: age Elements: 22 5 22 50 + With table3 having an equal domain to table1, this: cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); @@ -29,6 +32,7 @@ This will display: 1 + To project a table's column: engine.project((engine.getTableFromName("table1")), "name"); @@ -43,3 +47,22 @@ This will display: Leela Zoidberg + +With an arbitrary vector of strings as cmds (until we are able to parse effectively): + + engine.saveToFile(cmds); + + +This will result in a text file with the contents: + + CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind); + +SHOW animals; + +//insert + +//delete + +//select + +//product \ No newline at end of file diff --git a/Relation.h b/Relation.h index 40084c8..f8e7a49 100755 --- a/Relation.h +++ b/Relation.h @@ -47,6 +47,26 @@ public: } } + vector findTuple(string attributeType, string type) + { + vector tupleSlot; // tuples that have the attribute in question + for (int i = 0; i < att.size(); ++i)// find attribute in question + { + if(att[i].getName() == attributeType) + { + for (int j = 0; j < att[i].getSize(); ++j)//search through all the values of the attribute column + { + if (att[i].getElementAt(j) == type) + { + tupleSlot.push_back(j); + } + } + + } + } + return tupleSlot; + } + string getTableName() { return name; } diff --git a/a.out b/a.out index eb1cbf71b518fb4e78ded57887ae17b53da75cfb..6c65e5bc42aff5db3790aee350e4e214c6c2fd3d 100755 GIT binary patch literal 76922 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%0AO55%V=xj` zf+WZPih4XH+eK9k=+h`~v)7La*@7p##J%}!YLJbB?-)j~>VOl2a97k%f^eVmY|-eo z;i}9=eZ3*ecpVN9n|6-0Qd#v~Kgn#>g>#x2Q54L$+entavIyp+)_rl-{7|tZA#DS z)q5H-=`b8hgNyc`=h^D$V;mTnRC8`7!K;)!kZ{ha5Y7pQ+dqpuk+7&KHGzV*x}xj~ z#SfKs(LlN60!U2)KY9l{Hi1OKoicD4fyjW^w{VRl)PFqKu0s81GX*{mMmRdaxO}<@ z>Qjb}uqPk>q0l&l;?K93ukbmnbl{Sa{>Zz#S1NLrp4>2{tH#%UwNEU$6zre9@#@Vj z4tJ3~lWQ3%McJX7n4E?Q=6|2tuiwL*<%q(3lodVB@c&X8kpEO{-8MB3g2;(Z#A$|f zubbz(C;>+I;hth1^Ceq2UWShls!<5Wz2)Sq?*i>jC&dnz#M+fR!;!4%8g)8wjAgmY zGhl@Ge?6&e;`?FQQX#xYSgqUjV!aD-<7S{EfujI)8pY*$({{dl1pbcH%||<->8N3G z_wl~o)&-ukXFIQlQ0WVy$i-=emESikZ>5=$PsGrh9Ch1pbRa$?|MQU{*NPoL$e@tS zhTWX957?WtK{;Zm$&vIq+&<}mjy^2JOr%*_#+=^7hvbY8R8 zRMhjx6M)TXTF_N{B-Le;;4gMY-p~_u+fv|A-~ck@`YLUXGQ{}+U>W55$SrmRZA}3# zD^7%gmIv&9yGmiM$LNwv&CL<%`Y2y%*xnRcBtw2`TK)}lX)OI{r^dE@=L&}Fc&-@l zvY>d)0-Vm|@xhusge_22?uDDenKYoA&LzISHaq-I{C0zHGdz87UQSX9s-F<&QYvr_ z5y}QW)K1k6)d1&o;!b#p+WJ&i5L?K}cPvELoQ7*~b|Zn{@0)LrAi(>!dtSHr+wCom z=ATeW;ZkodCxw5dbQ`|VY&+Pw)4|c?q?^6858IEAbbiaQ9Yr2(37GpqcLPYJst_>j zLQW}zTLGB&M(rgP_Y6{Ox04Ea?>V8OZIdA~4N2WHW*nz=4n80?>@E$jug64;n7X@%-L^6kecNTWkr$?4{N}y3&)ADO@P5u|Rfe+V&n8 zDXoE0w##ndeA=6-(>YfDx)Fbwi14d7UHJ*-J_6A@U=xxKu8HHtk%8lKwp`wCzr_+P J6-_Tc{U1FP)=~ff literal 76409 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 X%Ll_MY+SX=<-_(Zc19_edHwBw#`Rsm diff --git a/savefile.txt b/savefile.txt new file mode 100644 index 0000000..e5ca19f --- /dev/null +++ b/savefile.txt @@ -0,0 +1,2 @@ +CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind); +SHOW animals; diff --git a/test.cpp b/test.cpp index 3e02259..1b99116 100755 --- a/test.cpp +++ b/test.cpp @@ -72,5 +72,7 @@ int main() { vector cmds; cmds.push_back("CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind);"); - cmds.push_back("SHOW animals"); + cmds.push_back("SHOW animals;"); + + engine.saveToFile(cmds); } From ed1a6fa87908680c306b5b519d9fd3b81326cd4e Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 23:38:44 -0500 Subject: [PATCH 080/186] message --- Attribute.h | 5 ----- DBEngine.h | 17 +++++++++++++---- Relation.h | 7 ++++--- a.out | Bin 76922 -> 76899 bytes savefile.txt => savefile.db | 0 test.cpp | 21 ++++++++++++++++----- 6 files changed, 33 insertions(+), 17 deletions(-) rename savefile.txt => savefile.db (100%) diff --git a/Attribute.h b/Attribute.h index fb3fd48..50949a1 100755 --- a/Attribute.h +++ b/Attribute.h @@ -46,10 +46,5 @@ public: { cout< cmds) { ofstream file; - file.open("savefile.txt"); + file.open("savefile.db"); for(int i = 0; i < cmds.size(); ++i){ file << cmds[i] << endl; @@ -42,10 +42,19 @@ public: file.close(); } - void insertTuple() { /*DONE*/ } - void deleteTuple() { /*DONE*/ } - void selectTuples() { /*DONE*/ } + void insertTuple(Relation r, vector t) { r.addTuple(t); } + + //need to add find by name + void deleteTuple(Relation r, int n) { + cout << "a"; + r.removeTuple(n); } + + void selectTuples() { + // + } + void project(Relation r, string n) { r.projectQuery(n); } + void product() { /*Brandon*/ } bool unionComp(Relation r1, Relation r2) { diff --git a/Relation.h b/Relation.h index f8e7a49..85a9f15 100755 --- a/Relation.h +++ b/Relation.h @@ -31,7 +31,7 @@ public: } } - void removeTuple(int tupleNum) { + void removeTuple(int tupleNum) { if (tupleNum > att[0].getSize() || tupleNum < 0) { cout<<"ERROR! index out of bound"<+5%a2YNn5Frv!MDY@m0MU@784#){6|lq@ zjn-I)YSGe`I;KvgDlrTSwpvq*zBot4dLn3}qQ)`b@3+q0Hz)U=lSIGwzVH3f4fm|Q z*IIk+wbmZaI@8Woq0DJ7QuPAHk6%zI zgm%urHZ9t~M9miun1EkeoQ+6}3rfbo!)>%O&}c}=_Bv8fXKgs`5xZ!hQUO7*9(8To zDn-CWk}+^36++6QQj!94q7!}0S<)Wg_GUG>lqcH`r|D6uR0<44;D;&(KD)Ne3;{qSQt2){n~9fjYa z_zl4C2>hIBC<<(YJZ#r)BS{_YOAF1Pz!44#H>%l(=D??!0BEj1;NvRSoCo4*h!g^L#o|k*_$y~$6 zt8jSf^5UX!S$R%rc{r@XGggG>TQkYX#mS3jA3$n{oPYZ|3mz5S@7G9i_ z7tSdxEY4j4!mOFuW#h^UewH7SQg+$YRGlkN9k)2AtROdByritWG(Tr~MlPhJ<}S-A z4VRbZ6qJ``7$7x& zTt-nrd8DbbDXA1OXJ&Q|WZJAfYW>vQ!s4=s>N(jVh@iQ%L=dFfM)k}Tn_ZM%3dp<%O+oGP=xDp|@^Z>^w3&3C?Nc!VVvPxK2z_jOqqwjv zlr?Qmc5!x?zRoU(;x1h)E)03Aa9SA7UYwCVE(}}driv_dagX|~Q_t%@%Pt?2Vuom8 ze$mqMW#RnN(&AFvO)-NTbi32E@LTGh36GrRsb)|$uFx|o=>)1 zGiNw7bIS8q7L=>y`O9;cm!O|X*Yjw3PC=2HK4nUHY;ua4o|!RuN_b52nB-H{l=<@~ zP0k3XCXcnz^XG$Q94Bs^oLvdyC7*yJf6@PJ9C>U$e}n@I4U!N4jzHF&=dzApg;TU& zU1F1ke!7ERaaaLP+X<>PLXQJaM@;e0hb~2E5U;M(b;?h?2_Z(Ds?_{#PcLG#axT{> zDVz0(amCSsu@A!<7D~Y z2cGeZNm&j&V<3~}JMbp43 z_a|CYFp{m8czB=!Lv8KO#2tp-eroBT0;>JEavTR96-18ZWhA#Ww<8^Q3Co-!EsauM z%ra!DmIf&=U^$-UIw{X#nIV14Mk&u=nNy~vM#_^}=2U4}BjwXsra3JoQXa!Hr$);n zDWAkLr$kGZl#gMVQ=ug&<-=I!6lh72@?e%Z#9IPV?#nWVc1x0!<5=d9Zc$SHx(;Oy z<(Ag(fjI6{mXla+mhy)zbLh4-O8H%uIb>TJr2HDo9I7pKQhteL4$+p4QvNH;9GWdP zQr^xohh)ndDL=t7hhj^Klpki9L$GC$l<#GkL$4)E%J;C$q16(U^6e~hNVTL$`6iY* zWLg4JzLsSUm6jwaU(GUyNQ*)_^`nf+e_Whi`EL5!y{%buGj=u9tPQI4UE4Ma*!A~8 zL1j$`1CLq0O;d48dEa_-+Ui#WIcioSM&~Eu*TSOFeOL{thhB7L5JU6NRJ&tSC zs-bRBEva(#x0MxbYgd2kt2p83tJ~V!q2`fK2e&U$);Zs`w?EC;_K9JbQ1yZ<0PeXR ztXxmlr#Tm_It&#XIcaWo`p@_C#FJjVHTX??yEW|$$q)P%`AoPjy}FipkQG4vto3l| zTnGi?DDsT7d6)+(i98F)lOjB|tdw5;81W>dg};aj_oYiS#9N=^uy0~|<@(mIz*Sk> z1~9eicLeEGcM8&$Z2gU5Dg|{;?%vEw;n}yu=yJHN7u&Qp;?Qz8JEt4DG`b8|oUw8T zbW>IA-|VJRjP|0^L2j)3E{FEw?TbmS-Z~nhrQ#&9g#sa0Y*Dr?L|J(h-<>VOc{(^_TqU-M z{#7JbZ=Fq{?UJu$9;hHd{c_sUn~im6i%2`ut+AFro+!3Zps{6Kq4Wz;)~%RD-P$6Y zMKb%MCl~ug^naS<>aAf49c$adJWyEx^<}hWA{*<@7LoQ-x5irD94WR?ps{7yrD6+F z*7I2Iy0t|(?*XTKzli>ykzBpCm_nC|UA4>uwFsbo6>TYIW8K*z(thXGSj!->W$RUJ zBi?RHzBRrY%EzVv9)2bZe}o_*k)p z0*x(GmPo%4W&Po^9@rwBtHBv-%S5C9-$}+G#u?PQI$7G}nbM$EU8GdE!%G~o-mRUM z&BusH&JiQ>c!)&)MViqlt=BRSR0Dv$EH`~Bh_}gezsC(9~Tvc8-IZDQnhx2#H= zr?{yUv#g3rH-6%#J(pGS_PZokZ~Zs5KTj;FWge(zfcl5%)r-N??XoH+jrdU}i6R%c z>De+iV2>4BC21ooS2~gES&z2%pc94jT5!fXo6}cJf1Tv&t?d*#TU=7hJW#Cw^^edE z=d-cy;sTLY?bcY!k+|c6QAvT2E4Hj#EVdA3S^w^VEy7t3PIp^G|ADqG1944ct(AN& z^Jr56)IUL6s@Pa}wurQCZjH6f!KFBCp+IBHmK?E#DC_W^*dm;te(Yt7=s$(6d{-6=vik9QLW zi+eVTE+ii0HC!Ym_Ut=BL=bPyr8?c&E}SP(Xv|{9MN)LRT-p>vt@iyrTO_HH^%Cz& z#K`S#k(4%jyQvhjNYV{fAykTOg^Q&0)>e{nHAL1_v80xHpn?GPFVm|Nz|-v_DJHc~ z{4pkpBIDfjY47c6`2slIZ4v#C zv~9VHLT{3ME%Ruz1fc#k_RH;TtUFsoTBBQIEyHYEDA3rl>q6-lqO6m9VvBJ4+{9yz z!9^+s%^?|KA7js6cI?hGr9pjnZVzHl5!A=6otATP%Nkw6IbuZK3z0yvMWEJDi7%&$ zWe+hwNffGO9^{Px^>5Ol85R+>xxui5t|-e!J; z?F8mQZUm^`OXr+IW2$S(kJ`i==d743&LPVB;$J;*j&ME?&KTwP(K({V5z?Hk-ZuzA zyLFD#`oK+SjB{v%^?SFtw&h7YFM$e2;YPT1m~AohK=GM{Jxq>aBM7F&1+~P(Au>!B zTwuG_;hfuKk_of*N7~Wdsh47{tK5{^ceqx=s(HT$UZ!H!5^%WC-Jbi-b(QNq*a#Ytc4-}sO+1Gq~_X^@{@@%nrm}ll3n?^uHpue^(dB+yFSco=Am5W~KB{EJ zkApTba=Q&@*iM?8N-@J#RJ!v$H|-^yp`?#VMmWR#VzH!_d7y#-^&fKvUjm+P!x=Ft zW$ceJNxD7XP0yCRLF}=|sEh7N>mqweCCX}ew+EdloVS28*4aU0`UfNzBzB(a48jV(3y3P_Z7;GG`WBAkB(r@Jkp|8U!uVhX)M z^0myP%|!t9U(uFdv9a!K5os^DHP*5gkDJji6liSOnN5_mVU6sGEv#&P-|S_J=s%mS zBOD;>4$0Rt4^#<2eLHRW8$@(#i%9di+VW>SN{1~JXl!YlBeoD_T}1KSExy7z#?uzj ze=W(lbxWaNO1_qPpw}7_rMmBcB)%rE&C1<#ec&#erdPCJld#X8*OR2@KlKf2*8HrCz3BGSs;8f$q6@5Nv;QlPQr(%E7QQPzuZ^uQM3{2e&mZ4v#y zAQ|^PDfAMttCo478UXArEoEcf*&@<5yEWEwh;0i68e4udOKc&^il_MQCYNx&`ns1b zqW?*@EpJokU6QY59&I)P)DK|4{2n5@wMC@8;nrA72HsynzfhpD<)7z>Eks$TQG9o{ z2CdxVrT;2LbI6r?C z5@HrQUe<^j)1*0Dy%DGO;Ic+)C9zht(3mAqY<|%#8g1#*TWndw?syZgj6t2FXxC|? zPA&65B>~h2=#{f+1>W?r@lx%qnXI;6P?hV|*I=mHN?^r-d0$4?*RF2${@UbXm3?m& z?OMY{hpnTTzd`b~%tOxrK>gL!^H&hj?KnD$5?*j?tYtG^2ZWsz2)SbCc{9XLK~=6# zwCyCY4r628+38a6-T!j4b2J(h+s0Be+`q5~ZVHthfX8XwnkALLaFgBgj|4G`vd~J9 zz5botgxf0O*Y`xca9#+`n1R<)D&n^;qTCxK8r~YF+AUP3x|Vq~n*~r`!(RI26|s;A z;H6q?x_DVomFtsiFB4dgg1K8SyVSdajYQ888BNs3dO>v9TFm?;TTkYx4?z9x)H8!k zcXy%)Q^HkljkOGl7q?TOu`|)OQ&5%bhuL-#SkJ%Q13O*n-Hdv%cAka?#kTiJu3r6+ zb&(i6?;#X6+V?FkVT;|FCqg#5wb3#rj^=GG5%cD4#F&+ll`kefW}{`WJpo2#Jvk!6 zZasu6_HNftO0d?0GuFIAX@zy$9vG0;^+E%-Qn1B}z!D6vJPVrRhR11?*vrM93CY#-{*6Mj?dtY_N-xv_+id)FrkqbIfU{@hRq~?d>N@MD(Qr<8X4P4j zf-Tl8dZyXB3hi|(qS=~HwPNPTabm>%qOv_Z^YAEeUs*Sf{a8-E^&+oeH7n}1heA4GCXd?wRjOu|P;k*T$?t&x|KZ0v!HzUQ4**`nlOOV`K z*#mO7f`s#4PeBbd?fp}FAV@f$1gE=cYq%0k?ukaiIm}a|ItuzK&;yNx^F?sFYt&5B z`u4;$;cVtru50%%6F-)-#50m%iH9YtJ~5mD_Ya5Lap}O;OQD;m+Uvq ztLA-M6>96#=-@!PDtO9sJM4GTJEXLwS0zzc`nG1gBA*cFfES`cYpS5pV|I-#$|9eVUg2LL+0iQ5833G_d6Lt)| zsbO71#b5C4z|LWKb-%;jF06rp+rCan-*Vr*c1j=k&~}IKY=6T6_!wbcYkFm4y00PK z*9ey-z-2z0GvbH(x`<&7FW5%&n^r5E`d2M%u75v5-)Ph6pU<7FBOMMIT_ZlTeNYT8 z;~#o^WukSS_-L0^f-4((gxydT3``6ixat|>1oIt&87uHtt2G@Je~5qL)3?0vyq&uB z&$i|`+d&*ta8RdSaCjDd(p3qgFUf86^{BrvggCM>U6OPgYxf7>0Sibgy}Be3r^8lj z7u_e5$$YJ$c`CpI`X4;#l@%QDki|BT#WyDQ1WK<&lhqaYp>{z`ZP;UGFz65cEv65; z@`oGEj5~}=sLYPVbp}ithP-7xFL`{^vSVOvgPszRb;O?3&fd{0OP8LL6~STS(=j%7 zc$rIvgZ1VJYea|toh|27LzO>uv=eK9?GBj5DF=Rx>g{EHC0`k`_VtlwkVESs%i+gJn;nY(06VLp z*1f!I#J*uK$4KLUiwr+t{Oh-jo%yD-qVk`tI7J`(>_@@XAxhQTKgnG2%>N&z~`b+4XdljwL4$ymS zVeGIv&oQiKxC|@jl4Fl5d!|*oj4Bzuk$#V|i5}=`M)cT*AJ9t?UDCJAvy!?7;|B{G!U+Z=&DLRG0>N-&?amarpom?MDrqHj z*dQaCEwox!*rQuKfKW4+Vja;jRZNGgwm`)?RM=wu{R?ThA$?b<*~j@<4a=%=3*#%B z&Splf=kNdEuptX%mWwHhW)E|h$i(N&jg{r}QgY33By1+J;+gtlEl zyxHiA-X9me^5aWVT{9jKQV7JxiLc z_#QNmO$h>a01|x5L(o4^A$I8*YPkyN7+bccD^bOm$j!rTcgd*42u> z`f2vY|NM$RJ>tqn>ptYoivAnzR!6@$SM+p#u+p;?eP`sH(Q0kc=LtQ4qgQl$hkz8` z$FJPl#6_yoyvZrA9X4&n{g(iy^V1BmtQ{Y*U*z4z%I)=^^Zv>TaO?{02UYDGi(4}L z<(7=RCTcxF_R42<4QnD;(arU8lcNZQwW0mEFM}FQ=~Z@(ds)NWn)wq(hy9-9J5NR0 zwVq-A=R2vhxmC9NyY}`;m3y$A0CT3&ugO>`sEk|?w~}aGgLXN0J5IQc6F*Lvl_8vX zD|SE4@X~rjUd0b#Gl|uWs{Aw%peasf?>vdS>m$M2Ak8jpU=^YKQfe%0kQP@rSU*8? zF(=`~^vZ7-F{W3(jf$<-O%Rt}i4%VlShS2w8gnIQ0#-C!L@-OqrSjR-O}Pp!(|jC)NRSx?9>NwtL= zu>%9j8?B-Aq8;_@wkG1^v3;r1@Mg|cnJ(1`SE$M&VAeGZT+cC9Bl@h}nI&Ch{qzYM z*ttdPIeP&NkvOqK{8K1*>#y&AjK2`(xwtmUy_?0oc61)i&v@Vg zerSkmdE90l_;>?$Wx;(V1b}{P6OH3_dG#63aM`fl1HxQ|J0-1M-KxrmgS8E-1{~S? zgs@+WhB*uNB{F^_ii6ELX{fx_5zg~QUPY62B^5G}w;eI_b~PB21jyY2lq9}H6=Iv^ zW}Q#-WhF(z2Pn{J&;3RW4a@rMV=A?<(Vq8>)={v@+czijgy-g)4Y>BiAjZnzymgFI z3vzO5vUbb&AiSV!vKGka56>bG`fJv!--?iC>lW}x z;1O!htQsk-XUghjS6e9gU73~dWLAF2z*n|9spK?(983^i6i&Km(n3C|a!v$XdCJJ^ zmDv!-TR>tI3|9Sh_hHp*Wc?CsXCZCVQSXS(l+F9j&G~SB?$mAZmaDTN#v4NcGBL z)-{Mtbs=D_>L?83(qg4SoT191bAm<;e0<)X4O#GX$l4Xe!%Qq%=F%LxHSl^L=abzy zpEQ{I){~T8xv)VtL(1Qc_0FAhm~~_KoUr3Jw(XP$yBe&^AMIqj?QwZrfs1$=ek-FX zc6oIP%+n5d|KSKS5K*;JBL_Zi+i08GT$ObSSt9n%PFn_w+^W+7HjE%ybAzzS+x z+a%UTaYCinsglhF6&tNT!*Z|wgXm_s3{FKnhqp*@rr}%j7_iat+?Vi-dpx&8YIMYN z)9Go`b0$pt`TiPqXyxh+l@;sI>IObTEQ+6FA#hyuA#zX;^M zF)~^!=QUz-z-tRJaxpoaY@1oPa^Y@!k~Ho+MmWskR{u4qW^lU7GMqP))0TtgcUvV0 zmUS$dgmK&kWScb+{Si5d+Gt+153CXD3+ydCv`K*qogdo#fN)!8eU2OTF@ zDw|!y?U7QgBOWdkzgAdc&@^aghubN=@8Pz) z0{SV#9E@1!u**VE;^b=XCdXVm-eF%M*6A^{1?%J%d!2mp&FCHh6V4bfex-Y4BYGtE z+VK{t)^SDm8vSZ6fF8x9(ASP}Y*>25TsuC2fWzb3@znc8mrgBOS<+)2E!Cmy?ijQLF|>Q&y6tj8!tmJtx`;$0 z(5Z!I5?>l!{&!7@-8XID-F;JZ2T>2iUG=ChJoUbpq! zZ5>5psQ)i{*?PW+2}2+Ie%)^CpOSw@@cSgsFdH^W|Je2&BK9GU{**!VjQunXrFSzc zKekdZ3HFsxlgz3B0313@g#G?Cu*o|jPu)1kpb&OjnrXbn;jOm+F@ZE!$NRIT1vstvM{uo86V1pC5Lq6o-Hl`V&1*N zNRh{KxVesXetA<0lx&8QP1adB0sPpT>xHQ6Tu3?Q9g0DEc{8NTGlFJo8S>`lI=?C8 z%?ig&Tod?m8g+hjYo5ThVf2^>4*Mnl;~zM53bLWD(wqcI8Vvhbd-Rp24vRuB~(yK6`vEp1sJ((#-C&$iAUaL0$ z7l#6CSvWZAcNnGey~-j{jw_XJ zA|4*oE2-Qcac$zQ-*#@|V^q?8kR(2)xs?zd=^7jD5`m8tSN*`(rp)<#7#eFvhho9S zy7p`FBF9RTwSNyajNCig#-NS2P*%KR&OecRM`cZ9wX6M7^3Hol@`!>xgLb;Scl1}D zSR6M|UxSb66XzWv=lzKV_fRE><-2XBJC3ru1NRTqcfO}tH%t(DlH(%1Jy{Pqq z+Vk9rdkG_XW&f*}sBG-LgqdjH{a(UlQlsNu!Z%dkT&{K4nbmnAMVq|Y9rc_-R2X8b z;CRHtUTm;-V}bAD!s*}t5I0AzY{rTk^@Y<7=mY!0X(Z1P99!NOPPc6oA8cl*sbk2^ z)}wcK7C!{y-B%Y!Z2te`IYoDI_FZ!4lnV%k{|*178J*+ohR=ZGKwIk;XYZpoP!*v| zBgTnk?Z#EMRq-3jvBU95oLwW1>xi>kQI-+VRh%8i$F%Iu-&%0S{2#Q^V!v#=L-1=PZ-?M}rR!|d6U1~Ag8%7D zNQ{Kw3qQr}v<=c)Oceg{i{#uM^=zY4L|)lO+hAm#(TP&rBl6$4igQNiyCTtfm+k@4 zB~G_TcGQZ66|U*mR8gO(?%>Ldb0uSB>-xJoC_pq>tGW1c;2-#Vd%JxiwbxGj1u|Lu zqHj&{^v9jF^{u4L%6!MID>VNVn|Iu1>Vrm2BoR5Cq4icY+-7}qr>Mm13R=lah(zmO z47qS!VK3*nW{|6k$VoBEWIT+bwVkgSqP|CfCFYs|OWg9Nk@SaHzL=+u|E6#_fK?od zn2Q;nPkB+MuNj(=H$mMV!T-Q(hPg7VImBD7bbE-)6;tPzl#H*bOh?qlIxpV-|01f3 z@jRE9*r=`q^VL17J4{a-cB1Z8t{ivw!@;jnOBS&Ec27!)udAXJriH|V& z;qGQ@&C4DAxchI+zm|R?4Qs+{=5n{A9B-K8{`Jh;s3mILBV6n(Jb9BmXCy+dYRr*o zT+DIzqBaT>B`D z&n{a&c*_Rol|6_Vte@WkF4rEkZuu2S(Y@D7?ArZnGAWiWHFf|ixI?@%b;W}Wps+eVBq zuT{!>aBi{J9ru}jkz=NRzngVEW_nI7+r`9f5-xkDKQDR5Ouy&_a&?~Re;`xGO#hJc zy3e)=+Ujk=s#!TOcDRV3A-mGUjpq}YZ*)yF8&g3SWNgRlZyR0}nxHa^VLbqr7 ztr*R9)=ytiuyRWOi@1Uez5! zJsyy;%Rzw(X&40-@fR@<}_hEK_hJmcFfL3p|ZZsVm+N@{yMr)zSqaaJq z?xhh~sB*DX;j~0^+Rd2V7tu7qnV=eE6*aqEPn_U`@{l}@Ay?Hrl+EmB7D{x?Zs+ST zW_rUsOz(UcyMYdes14R>H&Ya3*5Ug`=fr-DOEL&(2OW)x{SWkmr#PBDi%zSM?gK*8R?U=~Y|FZf&GO z=wDb=W3A#$p;@Q14aXDhZiLrZeL5*+ginERS)<)o&E1?9I?jD<8}lBk=E*f6a@BlP zxa?JPv*aDC=JC79)p^xiOQw!h^E|fLY1N!6I&>Q!?a#uhxf?^I0TW^iM%Zq>Y65m% zHHqM=iQ(wDM#idH_fM)voX`^`Z?BqL;Pgi8u^XHW^R)n3HF2fGtNEQ|z#xfEt{(Bcp`qg?cm++t0q*&s(B6W=0&ZV zyRFN%6S+h5cw`6iTzF_>nprhpmQy3TiD+3h;XbUIcfSN~#6<7|E{sQOIbhPOW`mV0 z@+ipCt7c_H7OH$J{m)es&B?0CX03leLoLM3SV}b6v1;<~_8Bx6$=z1Ci8bWTL$e(M zL6BJ_5ft(X8*12*4{Xp&qj(hpHd}{F$3ap7RdU2UxuOfkjaeEG{1>KNbv3x6-`U-K zJ&_$fl1Q26wdfxo=S-AqhDe-~2*aFfW19G|V{Pn@OZ&(bvtuRZdma_7a>YXl*!H11 zi!X2T$y|g#5Q)Ng$Dh4suGjB?#j%%da)TDvHPzSAbbC_&ocRemDki|OmR07U`~))0 zg>XOdpt%rUjdg5&Lq(rwLvQmXDZVikdK)iEh2Dk(?c4Vq_e@jtJZ{3AXf&@sU5kJx z@1nMtnC3S6G~8ydB2E1T-b1z1f-$-PXNcas0ka^kwAjelm>`tvl}Co=I)- zj*fW&3Jna=4OG5ug(NQKc*P=gjPpYW@I72F?y#SXufG7T*T5$GK1;{nkNk{(P15oA zB-1MkM>J(tUNHhUMn;8B52(!QGtVNZ%p1|138Ix*Sw5mQz4D?Fjl6KpJn_3pmEUJn zexAPVyZDUCJyzAVXmwyZVVTGUGONl*jLfXMVgw!*?o8XE|1KuI&ocnH{S6ZWc%iYaz5LK8RsACTwauxx zgj>5WvAr?9DxQRjPf%6R7!PjRLiBhm{M@;0hBQh9l4!QzVY{6JC8 z^8C~LsJ<#xn7=%~sJsl;1|*TM@6>{_lER!-f#M~B()_}l@`B=`QQagpM>E>81F9@% zMgEe4!u;gC#VRys&g?ly2k-~2^H&D&r^hLHadAaap2|_#o=L69&n+)5J^l3XIpKn$ zvV8oJ_?(KB>byyFrle1rGcq;hL{+vdXZiWXm#Na6rK+r?xM*pf;R@?{a$ zF<{LrE?%yFR=j+1LH_cbB2}8dBEKl7s9Y7`4`}C<<}O)&MSg0`dTF2W$k~3D^pl_ay3Lr_42gDS%G^ zW&!>Sumtb`U=3j0Q>YJ^1lR~T1F#iv31AX-4ZRjH1@KH`i2tOE=H zHUcICwgR33nAA_HQot0zb%0rb8v#oIp9ib~`~t8Ja4=SwM!>TGTLG5=CiO=>z!bpE zfLVaM080R02CM;m53mmKQ@}<*g%zz8a4=vJwjfRhOaYt&m<6~9umrFaum4)6-VM!;VJwgNr?n1rpV_X4H> zCg2R01vnV61n?BV8o=>@b%3(~8v*kHTLH@flaiFW8ZZU$*MM1o&jOYJHUicFT7Y$c z#~^TN1UwzE74TfZBy3r}2rvb(954&;X224_djM+yw*%GzCLqXZ1UwzE6>tGy61Lea z1WW;30hk4NJzxpoZonGAX23eYHo!)}{s;nF0Z#!;IvDZ*Qvl}zW&u73SOWMeU=84z z2u-#CUJ2L)c+#`&?QMW*fWw9;H6Jhy@OHrYfQ^7F0b2oY1&qU0;1^ae}=ydH2qAg>x%0@efG3iuM>7Qjycn*iGZ+W==Fh!0@b*Xsd;fEM5)z=LrW zw+3)A;AX&k0Cxj!2ebg=5yvNDULOxQ5^xP*I^cbP%K!)B)zzCYd$ z$nTK%0WJdE`$BvB2Ecx}A-5TDJm7A?AupmH;6%VAY>2r8Fa?nJEVBTc0ZRY_2p4Jq z9|qh4n1BGR32-W48(=eF0Dqxp48q?aU@71tz?%Tq0PY0b2si*&3k`rz09t^2Qk6Iy z;{$hjQUK3GC_EqVFhu2R0B-`^47ditY$ISDU@PFFS7GPjN?it+2KYO``G9L*Lp{KI z0XG7^4A=me@OpcDGvEn;{NwC_H{ege>452g+!1*h;3I$=0AB&z47l=5vI*faUBD8+`G8LYt^sTZ+z5EdJ7^cM7O)xcE5JnTgErw^v#s9VBfvyp8)&-my^#SSuz6ZDlaDat+fM)?V05$_!fW!8o-Z7Y$fN6jO_QOuVRe&o2Hv!%X z_!(dW;JA-qCm{cpmO56cYXAd)&459`^KiRi8DJ6M2Edd44gUgu_zCO;oc}581RU}i z+Ql}RkAIGK0Y`j+b^)))&6hQRGuogp;7ea)`~u1ja)2e@z`r=}{R(g-;NWjDegXNX z+2g(XfU;AhL2auB0K(kcH9&~XZIrRM?vA?UQlt^PXTzXu&luq%BN@JYd- zLYKSJcLF~K^be$Y<`{Ui_iRM7K4-xy8T z^7BAXm>g7C5?u9P2YLW>ul6^Az5w)-J?ifS{Tk4{{J$6Uo4cSV#9>YEf<6NDI?%oJ zn+p1epo=dRl8mvA@sS65uPH%JId}U(KM8a!A+GdIpw9sPOb_}_&^LhY<=?%aZvx%R zKMCZaJ z3qki9zX=IAmv$k41n3WUA%809Z*?I*5A?*4xBlxu9|8KY(f&c1Hg5tw9dxhpu@m&A zpnLW2UeGJLpeOioPVRy}0`!}@pic#TBj{f1S03mOgYMOT>p=fI=$`h2{%IHO?*v^< z^KO4H=z~GWC5r3(O6UbYgO1S5l|BOWab3`-fo&^_%3{SnZ; z`gbSj+dxnAkiQr7uR-^;zc=ij-i7_3AKnFhD(GWDN2uuPzdX>-0o`-{gT4;*fJgmJ zpl<@*(|*t&?xOv@pg#|~r~SBgeg$;T{s;ZzF6dK1_osX7mk0WgF6iq(KL&I!|7`;O z4A8yK?>j+X0(xH$|Lq061avR^5^(Lm0d%kP+X&FNcTs;T=&yA_&jbAv(7pO^9q1~< zJ3iV3`Vi1P*FVt5f$k-LFX)rIsGram^Aq&R9{w8v`X82e};GeZ32BL=wAJ|6ZB-zz4~u2=*zmOpU_XKHC@n0fPO3JUh(Tx(C-J`tAFx9 ze;#zN{#gh5YoL3Mf6xzrzQDu3J3*f{)BXHE0(JI+z6$ib==#&wCR~TufQjd({2GxBY^i0tI3c8n_g`hWq?&YWJKyL%xYaHGW`swF*kHhCd zF9AIetsly?Z$IcYpnHwO{DM$eFNwxN7qN0dh7xH5zxES<6H2>WqIpy_&}_ipa)#q z;dnX&^u?f0@}OS?`fow^ifgU_{aMhx=Jl^Z51i|5=To511iia?y%&5BfiD=Xr}lRO z?gU&h$ou+g1n7SO9k&Q$<^}yd74%lf|C;o5_roE)$AIg<86E2j`3k}J;hdmaNxnNA zd{N`$X7DY}b~)ceU&?tD^eWK5qMXg%a^3*ny17Ah0{QTZ=!Go%?_1FC1Kn#J9gcw(RtqO@Xu(z4!T=A)MFj!z0M1&(QF65XgxQ9J|6T85Bg5f*MJ^$ zq0?V`L2m&4M$((T?dU%k&kW8Fs&ifBP|s69-voNlh0b;|LEj7d9i)Hc-A+09*31v8 zIWBV8&ds2|1bWbe{wU~!FYsQc_JBSH^i+@f2SCpQ-OZo0W5~g{XAk=QtpBycj*PYb z>k_Kvj7dGu0N;WI-sAKl(AR-pK{@>&=$IFd@y_w=yjy8 zaL94kNjZh!Q;WRMZ`XnT6VQ_>2fyfc?gu>ty3EJxyxZ9WzGHK|=i>p;XMpZCABP-* z`vstncF}`&j01fW=*POy>5sXf?*iRkpS<H-JUxPliz*~=}KraS;b~k$L1z$b*y!1#IhPV`T zuefgn=to}Sy`D}5JqvWVIEMX}2l~CBS5VJp?{Rh=_yU&()nfAPcjx1{eiVFHgAZoK ztP`Z~0sS`6-PRG(4}iW4bgy|aF6ak9PmQjR zGVLq}{rGb4`EoPpYe1LzQsM2dr@;3G_`K%98=w!U2&$)|_0Vzjx1j$O^rzW>>%7|; z0i~~98B|5la*K2vuJcDY@%})&@8DyB2wk$vrylnq_c;$hCkFk~ z)g|O@k3ZBm@IwFM_+R7Nt-3*VT(_|&VNXzji}r}&qv>$F4^ zE>pMY!hms*vfRJHr~aTZi6{9pREgdA!6*A)@~JfcW}nI!dZqe8vkV>%a*F?Up9=X) z@X?vg9MKe7ADz1fs@)amUmvd?jPuvWsXt5p>p1W}8E;n@^b`MBb&CHg^;4AZqm-`g z=*Ip*bl_C~dA^nY)#^@)g9?-hCpv8E{}casH4@Z?_<*nO(+q?yMnb%*b;9X|CJvV7({5rZ%8+@}+K_4L?>3B%X>)t~&x z+J<@5`+)Vf$DR9Vg70D0do^MBfdqAP=X&kFQS`y7{(tz?H2-;Ow*NMty2BpZ^1&dei5BB3?Zb@89NE+Y-v0f))%%ivDbfGCzUp^<{9F2{KlNe$uD<@;2dJz2`FHhKclYx@+D|>u&wpKi zb#;IL+XtzpgZ%#*sQxv;|J4BX=>X>69_W8~ka{@D|4fpqPh$SQLH_RttM3Q-Zyc1?sUw{GSX{uO8yR>nE!15P#KBwQi{Yy`k#W zq5j8*sfUL7w;rap9_nvAR6Tbn^N%0quRL5;4)_0hxT+n_{MCp1Up_*;e7N5_T)iXt zzaQbh`zUqyk^V=IR1X}<{Ow2iZ#hHu81Qd6T74hzzkZC`bBzDp z5$fGz{huGJK0cQD*GKptJYGF`oPXPK>WSl+|HJYAuTM~4AMdX|L0xkK^PipI-*%#U zcBKE+k?N(9%s+ABrC*(|cAn&a_GI687yZ#{*_cTVxYH%fhTivRji z>KCJ!e`6H!`;z_7r>OO#{Rc*?TSxov8?81;{-e>vKa)b9Kc@QMAE#bO_1`pB?N9Z$ zr>eG8|9_29FO2cuJ5K#}oc~Yb)t^rF?>tp)J(c-;$NRrKO?@}sUvrwOJdOD;PV+xE zK|Pn|ePr!#;3ME|vCt4}BT|9qyp@eKc_Gt`}D_`f|v zeR_uf#k17zv;40F)hlQFTh3PRp3VG=LH|9I)jgB^k4;h!PGbI!$^MV0sE;T6e?CQh zE%^_o_#X?YC#L#en5v$g%KU?&OYb^QZJFkOV!C>1n*aT2>MhAXGTjgS-_!lyWvF-3 z{a0tGZzTUkhJVjY_1p~qhcncBGnjv2rvK%6YGbDVkxX@eCiA~O$N#rk>Y;P|jpwN6 zB)@Z(|K2S1tJ(f7v(=wwGymHx|JFI`>n#7ibJb1f`hRz>y6ar#_nu4q<8%Di%~RKB z`}fRM_hkFm&s7g+`?qJSCnf*A;9r=_w*Eekdj9G>{|D!(=JWh@=$-S~N1vYW-#%YG zIp1G(fm(NgA0zyQ3;cI3P`51b|7(GIdx5|HLbdrqOz1Cp_)q$e2ma%M|9Id(9{7(3 z{^NoFc;G)C_>TwvcYB~+Cq9RFCWCk4m^T-+(eU7So73Qrh$^41%l);$k^w=<9i+?4 z*4gC*U9O9>%b$PWUQE=6c)M(Z?8M%7xfh8@4VvE9E~;AHUO!#Nt$9g!G}S3-HV9ZG zcysT{(iz^@V#2GAl6X&)X+yuDK!cyJ%ZY-;jUf&DXlUC1zTLLR>Khaa{4DkvJz917 zE=||f|Hr||`bDm7{9gCd;~GAz;VT;cOT#ZT>@_eba)xSnyoTd7oTlM<8ZOarg@)H? zc#DR=*YI%-pVjac4gaO#7aI0T((P+_yoTd7oTlM<8ZOarg@)H?810PdQ>L6A7@0jU zI~2$)D5_X_VqjeI*yM463zz2Rjv5ypJ8E%hPEqbMe2cuIpbXz42U1TRGvTzc3srGh z$z@CNjspbRL&_c@HM*UXq8rj>n?DZIN%OA_3gtEr{-c49Qgc6xeAJla)YRm$qoISEK5JfJQg&cW@|dy7smizJ7t$=}V509z9DUE>!1R=E z*T5X$;(Up4w2F)CJ&_=xH=onRCH6j1XuW7!T%3OvKzxF~0H0OICHm!2NMi3eU#}A2 z{qu3~9lD;!KJjbxlGN*bl+`J)J5Gg>)2ci}EK<$dpuiI~`v#P>2RUg#M%+G!R0m;{Y|#$9xi-OJXB( zKt)mqHR9l#_%V;ZK^DQ8c0u_DsiavNr7n3j5i zkxli9GqWg`U#nD(5M;8?37FOit;{)u%C8IjzVlm3gUy{7cjv=7! z+8|p~@oRm)!{RUgG=9)s@x`yi4@xYLFFqrF(31G#8Sw+oxbT5pH^m(bg@sq%F=cE5 zb5eIKpw@JL2OqDDkML&k>@e);t9UKA`MP&s`i}LfZT|_xHcqlF{ zcSDgFwF*Zn<}S-ARU(UAT=%B*^o){Uw1V3~EX{SU-m+3V{2j)26b0CfqO>$;6;1i%N+gB>6Ax)J>yPLfV3w${0()_Tq8Qx|orf`UQt87Y%bW!ssKBcAF@8mXa? zxt$5tFFxvad@hRaM2gCM`OL?ss$m**!>nw&AJ9J__s zrR<9Akj^eGsz_d3QBasSsvu7#v$QOyY?(^VTU7+nHY_i-DJ$|z8HaQ#ghAtGDXgG# zC57cGSq4vXdHzb|We_Bn7U$)Z=cwfTW#J{I*yJO;EDv=}2|{yo!}%+7^GnLZvbl&# z<~As0P{9V59OG){QE0$sa z=U~T_NU@}1G4~valnaWM6h~MWFGlobN?4BaOYed^|fcQAZ|I-!3V20W!SiGxZzdgF$tlRXfRE)K}3JUXCN0BUL%^axlXin{SsZD zdQ(rMzeX!AdGw{JZ>~${>kHu&%^2-JV?UQ?XMJ;>yFu4C*Tt-lm@U%2sn62_eS&aE zlDW<=Av2QUvrDn#?`9C3^=k$Mg|$Z4j~J!}nAP9F-$d8f7Yf|pg{i5`hURGMney+D zakg*nODtPwa||_%8k%uy&=P&4VEk_`BG%~oM;d~z5Z!-|0MGUf+s12x!nyGp0g8Jd zIa74|+dy>IZ>t?)*<4n=*{|!WEeSUVqwC;WZYP;!JyBM>6ya_z(>uILi zwk{IRwygqU`ain;yqqlPms?SvCK~&^Qe%Y3m6tLk*03rO0|IB%@4{&bnH+^o`s~T@ZbBu1^;N4(6v`dQ%#*pH1wlQ(0 zlNb+8O#IjxpMZEU=tN0A9+6+2E529c{=KtOJffh6_@EOd`FME6#9dBeJZ@o`c&anL zuQG8`XM8_p;-Aj={*n9lo$&`L6R&i}4^So!>5Ly3xe?kKpQKFO&>25SnRuWxey}p< z`Of%*l{tTR#t*^yIOs%4J|16En)9ub7_WvZa~|!C|A{i^$Ikd+%AEH);}6AoY>^Ws z`FMU|-r$BGuFUzzSt%ZGtDEymXZ#V)Vk950j*R4;nRt0q-ifjE@hT9D1SVc~dWt2* z%a_k?_+w*{B4>mL{x}c(@gDdSV(^^L3F?#f7=j0$>xUcv!NA9@qTum2z?6~4h5+A-Ch#psqfu}yrIvz(+(n=hC7!N7i7fG4+GyMWT z;?p$Vtdq6CQ%=^PAaWhaOaHsULj4nU9B67hDENcbny7j7l;C6a=jn&-rbPM8%l~hI z-_4&NXgT~Yn(0hA;`>AxPJ4seUKAxAj||&2&u0(O`0>EI$tT$jKMDLkmw9@=G;|2| z4qc=r+hCao{&JBMyFRP~K7gIFqUSqaX~ygtDBn#`GX2Z+gvRrGS*8p*;@d)vPr5oN z7&AlSa8jiles{uTDoEp#l2bhc>hV{~NqSl9_fTz9Oe}gF? zN9@a`@%)~aX|x>iJ)p*OUm+$l9^Tb>?svsBK#od{>TS#CK37bP|ClN?p5F~JEtVtp z!_#=~8_0CD9F@9TM~qV}D72URo-r{_WXjce zelN?!Z)TaU)_8tb&ZIBX)!iD;{oR<1|KHR2lcv~sGk)Uw*zIy(38rJ^i2G^42Xx*E zmU-Z>&~mt+36t^vjT+DIy_wAQ!Q&dwefF4!%Mp8YYCON&Vk(j&#t80%(Lem|lgW(3 z@fy$X|C#2<5#JsGKUn9TV2$SI{&Y;nKhJAC_k&?F;r57rcDwvul_^z@N-fg(do(|) zOS(?ux&IiG@#jMt&+qh@7RV9br)WI)(_=bGj(7%ZVM$tAj+#w|IoN zYCQLUWP(^puLAF8?`N8y`(-f&XNPn-c8OX&CmUOn2dj#G@kpl zGMT!~8qa+(n9RHwjDgB_xqkywogDGazs7UF1t!KxOe+k(o?m8O+^zB4-+{^a|7nfq z{*6p#9s5Azxi1!z@!MD^OntZy6w_omVqYhXZ;0~qgBs88IhpuPr=){z+fxPxHNpnR z0Z;k-?w;vVIV!bY;~$Qazg^?AbA!TZ)`t;rIOTBPNhYKJ2H=g)g`f{FXnyXK$7J}w z(s=H_$7K9A;1F9rztd(KEk}H3ukqaPg~>kR!%E->;h(u~O%N)c2O0iio6|hsdK7p! zJ^!ZpxgQ?W>2gGTq4C_mhl$q%OvyuSJ-NRnlUbivYCQK9U^4ywh{kh2N~XSY#QlDa z=e`_FC(9A%890P~=KiTn9&#DPz8iDN4?KlguNvXA(NR^z#^1Cx>en#OZK4<^&U zy@uKCaz7HLWI1A;)_8vR&r~8u>`kum{C=HjnjDpyt?@y9zA)`B*Ld!i#$?9BT^gS- zIY@NmJo~i9b0144qcP2Z@fH zmygB3rhM*`%7kGfDOKaSe>BtSazs3)@e3vg1!MHNLgTqV4AWO~#IuYeZ28>Jg=vx; z@vf1^uZ{B0LY_{|#6eHECBrKWjYqIbym*j@Wxa<3F4n6bz=h zq=SyL<#RtnCNr+eHJVw#&e$-rhDXweI-tCmw!9(l)r9zP&fmc{~e9z zem+db58rD%_r+yGm?Y`sk+vM}x5|WRE9rdT-R%9T=I4HaOlG}p)p+io#AL?jad0^G z1`(3>a<8=YFV6_7VQjczKcvI4!KF=xj!n?*K))-(s=Ic%(Os`@atGx{$wrRjQ^1u zzdb!DoW}n%G@kocGZ}ml@Ph@@`LIFr&(QPtOikXc@k_M)z8e3L#&iFACUgBYb)2my z_rYQ^dS0pV+=q+F`2Puw=YE+?ST-f?(fGxBJ;XGT^pVDMe?q2vTxO8qfW>m@o_^eFZ$@H}03j#66Rkz88G#^W_8>&VJ9+^JSxO^b4gjO@ALFiKN9m1azFkn)PdOACt^Lx{ZnD}MnIZ}yfH z=9lN^C67-%b%G)xT#&aCrSYlCex*3CV)^n_rk&8NsnX1}Ig`!_g-wagn0!Yo@~W}4 zQl4Lij}}TwRCvL-)G+NSFUXZQ+zWCF3w|bl6*8Ptlo!qeV`)V$|4L*yrJw-(+2xsO zcp1J}-hB>F&zwDZQf4@u5ni5CP~`k@!H{N8o0c7#8 zy9UQq+#G!RRZzZ4c(cpLq=due%Swwcqq$4Vmxc37 zON&dPaWFVNGh_0U`SZj0xK4U0b!<4CTU@d#yu5ftemEy1b8$*23yy>8b5p}}Q^GJZ zI~6^G9!(wBiFb@J&zcYp<5l@^?#h*^r-j2s#ijV$mEi)sZ=ZufnUOUU!eV{ z2%FWRH=F|Yvc;Tg9YZP2{Iyv#(d?NL^}!{oI9%g4K0Dg!kd1*tsp$St2(4q}=+1YY zEg0b#$7TqR3uljoH}o3SZSym`Yrmw#OlpkU&T~Rf*(`?$TXC*CcHf9Lb1;)_=XIKCjGae2-z?--U@k$N)Hq*omy z?X;!&<=JLZVZC!(gSs0}UhAC<5t;9k!r2p~Ke}AgPhFh9w4liLnu~Ec*&LRpUt`XA z_NcYV-SnP^!j5t8n01i_$f2Io!QFYsW8P!>*fW0)<{d_E2oXR>2*t={#)|M9IHU~c zl_`ZeWo7tAiOWGwMn{igk(ZNp+SJLRBKR&pH8n4vLDJj`#7dzEBf}G?o>2=XbU97p znc`JE6WSBUI5;B2tU41)D$152ddR(${gI;QnPGR#OdSrG@#^T5sP-dGgwpgXp3jJd zrsWl8#hxA&v>~`KqD92SOdy4i* z$I2ork3+JFlg1)O%R{IvCoaTSaHd384*NVkrMuoa5*b?9qbfDrF{)gGzKFj~mzvGmNuCW9Ni%HP&NhGoB0~##|iI=XH_n z8g!>lzzDz!9G+X!5x>Mt>0De+VM_B)t}`r%jLXg=il=Vd4-tl#e#Ve=xhimuAr7Fd zxg5cWsXb4>&;nsHhB2-*935nzb?taWq5-+~(cKZo9t_E+Y7L|2Mr5#gJ0u&SH5@rM zoPnO4U6Nn4yf`mEJ8BB2MopIv55=x5Zc97|1~rVVr)KSn>B0`lW)7vM!ncvR95s(+ zZE^Np#Ntp7R+PzNW<;sf@fb2P9Hx~PFQ0|4SN~5dSGL)+O$Q=>V?rzJAU@=60N*Lfs-s4<6pOH!%mUWXZr^ zLfO4oT9aTy45g$)^~!k^(?d~bc~yI+diJ7SoU{EWU@-8wcW47@bZiHF`(s406FDDe zdylNN@Q^QUoIpxkVzkIPgeCi9MaI{e)Cg0Zj?K7!=vPmuxV*eKV^oh161|dVke{XT zglwL94EBryk`@}cazM5RuU_K2;rF|3+bx%?zSqhDzWDy5K?zAdGxu;fS2$d@i;FTG z6xPv}`^eN1gt4%I?VEr&R*;0K}xJ1m9#N*Ei@A*dwS4ywF_ zY2HjM-X(kTI*fe-9B1qkD}64%p=={oaAJ({fy2`e-bo&Q>OH*jURPyM%Zd$|we&T? zCcjq7I?hl67cFKtx<}n18v@(}C90FI@H;whBAa#Dp^f%DF{VWNw5SbByB$`e9SG6| z0Jbc}_0^dBb^o~Oq^J#MI$S~kam30Z%0pqUQV$~g7p$7W43AX2$I7^{rq5~ghBf-6 z)D;p@9}^tLQm$P*ul_^x!QUmq>FR;9pmzOz{%?3% z(GKcKxPwx#?QST`BoD`bveZOmeLbY%3gJ&foTlDU}r6yVrTng@?VnWp}*0-I*=$mQBAmTpjG0wB?TNagzchi5`_C`Xp2Ux)swODJiF}SmR-lbrt_<; zbjqNeVvmdEW=FlNj335|zvW%tOZy61W}ru-ifudTsgqPDl`)Khqn~p3obwUP5>cf7 zK5SlaHt+nj6#vS{s#dlPD2@<98DnH6gSze8WkTU51A4Wvz?~TC=1+C&A+g`hZO1Ok z4a*Fkygfsg?rU5xxGG-A<1@`^S3zdw9%76#lblTh!XS6mBArVt((p-#VF_vo1m~2O=KR3bm}O4z zEH+9t8R?gyMzWE?$mc6X#A#pvXPl?V0mwS4U3 zKrYdS6E|K}xy6H$N#4sysmOtYGvQI1@<_t}MGlgMROVc_3+}v-nVfvmkmU}P2cOD^ z#rP|kdJ((Y)9xe9zLgAy)4LT8Zn!$cD2rShFPxp7TGym z0n2jT=Ew^>{CIMW@qAdelojuhQrp#bxqS?-=en9BzNe1lREdl3s^)n16KZX@>6@Fc zw~O7PK#BGY2g2Z0Lx~eDObJNSDwP(DxZQ1Bf6J|HMS{^bT1Faqb4{d-x3xH?6}dzaqW?qnC zdlcAZn_w^&I1XsoyKO0`$aw%K=@L58PgPNdInVnQfxZ{Qu@q=)3aF*ZHBNL^4l=Zq z3rF^MpGTN`DeOqKd}>$xL*!B)`e?z$4tL|yff)RWdX_Y(n>jxX%<)*v9?}-5D*wVv zVPFh02B!J({@y;~$KH1j_{ziculDsMp&<-PB#8O@;cX4hx?S}z+ZFzHeT{MZ6RHBa zsF;gIp-jo6>Tk5GsMgE0OEWv^JGl1l>zan842n_Ug~HSatpmH4QZ&|(a;7pC6)y(C zI!lsudAq%&tNBolSK_5q9Lwc5&^&Gsr#4e;lXQHkqiMEqk9IO<@-$Q3+)B1-xmQ}b zg6o`7V~bNiUf^oiYP&)*{10`DFz|-E@YQ@u0jMz+^ZRHbwcgQrpp22Q`q^TEY$n?F z9>Q>%A?4=0z_(6NuJe9YfkI4>AtJOqQlY(U%83S3`Fl+KEhWN^ZuPV8S?(hp{RA%7 bI*NG*U8^*g-TnRT?hQFVyFn_pUO)X0_$guP literal 76922 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%0AO55%V=xj` zf+WZPih4XH+eK9k=+h`~v)7La*@7p##J%}!YLJbB?-)j~>VOl2a97k%f^eVmY|-eo z;i}9=eZ3*ecpVN9n|6-0Qd#v~Kgn#>g>#x2Q54L$+entavIyp+)_rl-{7|tZA#DS z)q5H-=`b8hgNyc`=h^D$V;mTnRC8`7!K;)!kZ{ha5Y7pQ+dqpuk+7&KHGzV*x}xj~ z#SfKs(LlN60!U2)KY9l{Hi1OKoicD4fyjW^w{VRl)PFqKu0s81GX*{mMmRdaxO}<@ z>Qjb}uqPk>q0l&l;?K93ukbmnbl{Sa{>Zz#S1NLrp4>2{tH#%UwNEU$6zre9@#@Vj z4tJ3~lWQ3%McJX7n4E?Q=6|2tuiwL*<%q(3lodVB@c&X8kpEO{-8MB3g2;(Z#A$|f zubbz(C;>+I;hth1^Ceq2UWShls!<5Wz2)Sq?*i>jC&dnz#M+fR!;!4%8g)8wjAgmY zGhl@Ge?6&e;`?FQQX#xYSgqUjV!aD-<7S{EfujI)8pY*$({{dl1pbcH%||<->8N3G z_wl~o)&-ukXFIQlQ0WVy$i-=emESikZ>5=$PsGrh9Ch1pbRa$?|MQU{*NPoL$e@tS zhTWX957?WtK{;Zm$&vIq+&<}mjy^2JOr%*_#+=^7hvbY8R8 zRMhjx6M)TXTF_N{B-Le;;4gMY-p~_u+fv|A-~ck@`YLUXGQ{}+U>W55$SrmRZA}3# zD^7%gmIv&9yGmiM$LNwv&CL<%`Y2y%*xnRcBtw2`TK)}lX)OI{r^dE@=L&}Fc&-@l zvY>d)0-Vm|@xhusge_22?uDDenKYoA&LzISHaq-I{C0zHGdz87UQSX9s-F<&QYvr_ z5y}QW)K1k6)d1&o;!b#p+WJ&i5L?K}cPvELoQ7*~b|Zn{@0)LrAi(>!dtSHr+wCom z=ATeW;ZkodCxw5dbQ`|VY&+Pw)4|c?q?^6858IEAbbiaQ9Yr2(37GpqcLPYJst_>j zLQW}zTLGB&M(rgP_Y6{Ox04Ea?>V8OZIdA~4N2WHW*nz=4n80?>@E$jug64;n7X@%-L^6kecNTWkr$?4{N}y3&)ADO@P5u|Rfe+V&n8 zDXoE0w##ndeA=6-(>YfDx)Fbwi14d7UHJ*-J_6A@U=xxKu8HHtk%8lKwp`wCzr_+P J6-_Tc{U1FP)=~ff diff --git a/savefile.txt b/savefile.db similarity index 100% rename from savefile.txt rename to savefile.db diff --git a/test.cpp b/test.cpp index 1b99116..726d10d 100755 --- a/test.cpp +++ b/test.cpp @@ -44,6 +44,7 @@ int main() { engine.createTable("table1", vec2); engine.createTable("table2", vec); engine.showTable(engine.getTableFromName("table1")); + cout << "\n\n"; Attribute att5("name", "VARCHAR(20)", true); att5.addRow("Yrf"); @@ -63,16 +64,26 @@ int main() { engine.createTable("table3", vec3); - cout << "\n"; - cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table2")); - cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); - cout << "\n"; + //cout << "\n"; + //cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table2")); + //cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); + //cout << "\n"; - engine.project((engine.getTableFromName("table1")), "name"); + //engine.project((engine.getTableFromName("table1")), "name"); vector cmds; cmds.push_back("CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind);"); cmds.push_back("SHOW animals;"); engine.saveToFile(cmds); + + vector t; + t.push_back("Professor"); + t.push_back("180"); + + //engine.insertTuple((engine.getTableFromName("table1")), t); + engine.deleteTuple((engine.getTableFromName("table1")), 2); + + cout << "\n\n"; + engine.showTable((engine.getTableFromName("table1"))); } From 5a43be3b80e7a2cbc41fd0bb8deed083d1f7f66d Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 23:42:40 -0500 Subject: [PATCH 081/186] final turnin --- a.out | Bin 76899 -> 0 bytes savefile.db | 2 -- 2 files changed, 2 deletions(-) delete mode 100755 a.out delete mode 100644 savefile.db diff --git a/a.out b/a.out deleted file mode 100755 index 020464293aa1dbfa12d513402d44cb74c2455f4a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 76899 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 bI*NG*U8^*g-TnRT?hQFVyFn_pUO)X0_$guP diff --git a/savefile.db b/savefile.db deleted file mode 100644 index e5ca19f..0000000 --- a/savefile.db +++ /dev/null @@ -1,2 +0,0 @@ -CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind); -SHOW animals; From e2776d245960cb227fca10b32bef6664c3560460 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 15 Sep 2015 23:44:58 -0500 Subject: [PATCH 082/186] to turn in --- DBEngine.h | 6 +++--- Relation.h | 4 ++-- a.out | Bin 0 -> 63298 bytes test.cpp | 23 +++++++++++++++-------- 4 files changed, 20 insertions(+), 13 deletions(-) create mode 100755 a.out diff --git a/DBEngine.h b/DBEngine.h index 4834ed6..dadb143 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -42,12 +42,12 @@ public: file.close(); } - void insertTuple(Relation r, vector t) { r.addTuple(t); } + //void insertTuple(Relation r, vector t) { r.addTuple(t); } //need to add find by name - void deleteTuple(Relation r, int n) { + /*void deleteTuple(Relation r, int n) { cout << "a"; - r.removeTuple(n); } + r.removeTuple(n); }*/ void selectTuples() { // diff --git a/Relation.h b/Relation.h index 85a9f15..995e3ea 100755 --- a/Relation.h +++ b/Relation.h @@ -17,7 +17,7 @@ public: int getSize() { return size; } - void addTuple(vector tuple) { + /*void addTuple(vector tuple) { //Loop through the attribute columns for(int i = 0; i < att.size(); i++) { @@ -66,7 +66,7 @@ public: } } return tupleSlot; - } + }*/ string getTableName() { return name; diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..e1e1dddf7af997bedbbd9fe4c73080e53b082138 GIT binary patch literal 63298 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 vec; vec.push_back(att1); - vec.push_back(att2); + vec.push_back(att2);*/ Attribute att3("name", "VARCHAR(20)", true); att3.addRow("Fry"); @@ -41,17 +41,24 @@ int main() { vec2.push_back(att4); //beginning testing of core DB functions + cout << "\a"; engine.createTable("table1", vec2); - engine.createTable("table2", vec); + cout << "\a"; + //engine.createTable("table2", vec); engine.showTable(engine.getTableFromName("table1")); + cout << "\n\n"; - Attribute att5("name", "VARCHAR(20)", true); + cout << "\a"; + + /*Attribute att5("name", "VARCHAR(20)", true); att5.addRow("Yrf"); att5.addRow("Redneb"); att5.addRow("Aleel"); att5.addRow("Grebdoiz"); + cout << "\a"; + Attribute att6("age", "INTEGER", false); att6.addRow("44"); att6.addRow("10"); @@ -62,7 +69,7 @@ int main() { vec3.push_back(att5); vec3.push_back(att6); - engine.createTable("table3", vec3); + engine.createTable("table3", vec3);*/ //cout << "\n"; //cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table2")); @@ -71,18 +78,18 @@ int main() { //engine.project((engine.getTableFromName("table1")), "name"); - vector cmds; + /*vector cmds; cmds.push_back("CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind);"); cmds.push_back("SHOW animals;"); - engine.saveToFile(cmds); + engine.saveToFile(cmds);*/ vector t; t.push_back("Professor"); t.push_back("180"); //engine.insertTuple((engine.getTableFromName("table1")), t); - engine.deleteTuple((engine.getTableFromName("table1")), 2); + //engine.deleteTuple((engine.getTableFromName("table1")), 2); cout << "\n\n"; engine.showTable((engine.getTableFromName("table1"))); From 7d858e8b10463e2cb1cdd27e9b3a76e5132d3c57 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 15 Sep 2015 23:48:50 -0500 Subject: [PATCH 083/186] Update DBEngine.h --- DBEngine.h | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index dadb143..57ea9d8 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -3,10 +3,10 @@ #include #include "Relation.h" -//still in progress +//still in progress class DBEngine { vector tables; - int size; + int size; public: DBEngine(){ @@ -55,7 +55,24 @@ public: void project(Relation r, string n) { r.projectQuery(n); } - void product() { /*Brandon*/ } + /* + Relation product(string p_name, Relation table_1, Relation table_2) { + + vector all_att; + + //Insert table 1 attributes + all_att.insert(all_att.begin(), (table_1.getAttributes()).begin(), (table_1.getAttributes()).end()); + //Insert table 2 attributes + all_att.insert(all_att.begin(), (table_2.getAttributes()).begin(), (table_2.getAttributes()).end()); + + Relation temp(p_name, all_att); + + vector table1_stuff; + + + return temp; + } + */ bool unionComp(Relation r1, Relation r2) { return ((r1.getSize() == r2.getSize()) && (r1.getDomains() == r2.getDomains())); From 6b2039896da2f691dec0acc1e449bf8a368bdae9 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 16 Sep 2015 16:43:49 -0500 Subject: [PATCH 084/186] Lexical Parser cpp file. --- LParser.cpp | 2 ++ 1 file changed, 2 insertions(+) create mode 100755 LParser.cpp diff --git a/LParser.cpp b/LParser.cpp new file mode 100755 index 0000000..624d094 --- /dev/null +++ b/LParser.cpp @@ -0,0 +1,2 @@ +// Lexical Parser +// Test file \ No newline at end of file From f755bbc42ac8def26d5a9119575311f815895752 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 16 Sep 2015 17:28:32 -0500 Subject: [PATCH 085/186] Updated LParser.cpp 9-16-15 --- LParser.cpp | 50 +++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) diff --git a/LParser.cpp b/LParser.cpp index 624d094..2a17ee5 100755 --- a/LParser.cpp +++ b/LParser.cpp @@ -1,2 +1,50 @@ // Lexical Parser -// Test file \ No newline at end of file +// Test file + +#include +#include "DBEngine.h" + +using namespace std; + +int digit(char c) +{ + if(isdigit(c)) + { + return atoi(c); + } + return 0; +} + +char alpha(char c) +{ + toupper(c); + string a = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + int x = 0; + while(x != a.length()) + { + if(c == a[x]) + { + return c; + } + x++; + } + return "?"; +} + +char space(char c) +{ + if(c == " ") + { + return c; + } + return "?"; +} + +char arnold(char c) +{ + if(c == ";") + { + return c; + } + return "?"; +} \ No newline at end of file From c8ecb606fd061fb899b1cbf77f0d925fe65f8c4d Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 17 Sep 2015 17:14:28 -0500 Subject: [PATCH 086/186] cleared out the bad code --- Attribute.h | 30 +++++++-------- DBEngine.h | 45 +++++++++------------- OUTPUT.txt | 4 +- Relation.h | 91 ++++++------------------------------------- a.out | Bin 63298 -> 63265 bytes test.cpp | 108 ++++++++++++---------------------------------------- 6 files changed, 73 insertions(+), 205 deletions(-) diff --git a/Attribute.h b/Attribute.h index 50949a1..084706a 100755 --- a/Attribute.h +++ b/Attribute.h @@ -6,7 +6,7 @@ using namespace std; //Funtional, might need more functionality //template -class Attribute { +class Attribute{ vector values; string name; string type; @@ -21,30 +21,28 @@ public: size = 0; } - void addRow(string v) { + void addCell(string v){ values.push_back(v); size++; } - string getElementAt(int pos) - { - return values[pos]; - } - - vector getValues() { return values; } + string operator[](int i){ return values[i]; } + vector getValues(){ return values; } string getName(){ return name; } string getType(){ return type; } bool isKey(){ return key; } - int getSize(){ return size; } + int getSize(){ return size; } //may need to change primary key implementation - void display() - { - cout<<"Attribute name:\t"<< name <<"\n"; - cout<<"Elements: "; + void display(){ + cout << "-------------\n"; + cout << name << "\n" << type << "\n\n"; - for (int i = 0; i < values.size(); ++i) - { - cout<::iterator it = values.begin(); + while (it != values.end()){ + cout << *it << "\n"; + it++; } + + cout << "-------------\n"; } }; diff --git a/DBEngine.h b/DBEngine.h index dadb143..2b25e6f 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -13,25 +13,37 @@ public: size = 0; } + void createTable(string n) { + Relation r(n); + tables.push_back(r); + size++; + } + void createTable(string n, vector a) { Relation r(n, a); tables.push_back(r); + size++; } - void createTable(Relation r) { tables.push_back(r); } - vector getRelations() { return tables; } - void showTable(Relation r) { r.display(); } + void createTable(Relation r){ + tables.push_back(r); + size++; + } - Relation getTableFromName(string n) { + vector getRelations(){ return tables; } + //void showTable(Relation r){} + + Relation getTableFromName(string n){ //will return first occurence - for(int i = 0; i < tables.size(); i++) { - if (tables[i].getTableName() == n) { + for(int i = 0; i < tables.size(); i++){ + if (tables[i].getTableName() == n){ return tables[i]; } } } - void saveToFile(vector cmds) { + void saveToFile(vector cmds){ + //writes nothing meaningful ofstream file; file.open("savefile.db"); @@ -41,23 +53,4 @@ public: file.close(); } - - //void insertTuple(Relation r, vector t) { r.addTuple(t); } - - //need to add find by name - /*void deleteTuple(Relation r, int n) { - cout << "a"; - r.removeTuple(n); }*/ - - void selectTuples() { - // - } - - void project(Relation r, string n) { r.projectQuery(n); } - - void product() { /*Brandon*/ } - - bool unionComp(Relation r1, Relation r2) { - return ((r1.getSize() == r2.getSize()) && (r1.getDomains() == r2.getDomains())); - } }; diff --git a/OUTPUT.txt b/OUTPUT.txt index c79684b..2d883ab 100755 --- a/OUTPUT.txt +++ b/OUTPUT.txt @@ -53,12 +53,14 @@ With an arbitrary vector of strings as cmds (until we are able to parse effectiv engine.saveToFile(cmds); -This will result in a text file with the contents: +This will result in a db file with the contents: CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind); SHOW animals; + + //insert //delete diff --git a/Relation.h b/Relation.h index 995e3ea..a404706 100755 --- a/Relation.h +++ b/Relation.h @@ -9,76 +9,21 @@ class Relation { int size; public: + Relation(string n) { + name = n; + size = 0; + } Relation(string n, vector a) { name = n; att = a; size = a.size(); } - int getSize() { return size; } + //addAttribute - /*void addTuple(vector tuple) { - //Loop through the attribute columns - for(int i = 0; i < att.size(); i++) { - - //Loop through the elements in the i'th column - for(int j = 0; j < att[i].getValues().size(); j++){ - - //In this column, at this element's spot, assign an element from the tuple vector to this spot - att[i].addRow(tuple[i]); - size++; - } - } - } - - void removeTuple(int tupleNum) { - if (tupleNum > att[0].getSize() || tupleNum < 0) - { - cout<<"ERROR! index out of bound"< findTuple(string attributeType, string type) - { - vector tupleSlot; // tuples that have the attribute in question - for (int i = 0; i < att.size(); ++i)// find attribute in question - { - if(att[i].getName() == attributeType) - { - for (int j = 0; j < att[i].getSize(); ++j)//search through all the values of the attribute column - { - if (att[i].getElementAt(j) == type) - { - tupleSlot.push_back(j); - } - } - - } - } - return tupleSlot; - }*/ - - string getTableName() { - return name; - } - - void displayTableName() { - cout << "The table name is: " << name << endl; - } - - vector getAttributes() { - return att; - } + string getTableName() { return name; } + vector getAttributes() { return att; } + int getSize() { return size; } //assumes that all attribute titles are unique void projectQuery(string input) { @@ -98,24 +43,12 @@ public: } void display() { - cout<<"\nDisplay of relation--------------------------------"< getDomains() { - vector ds; - for (int i = 0; i < size; ++i) - { - ds.push_back(att[i].getType()); - } - - return ds; + cout << "--------------------------\n"; } }; diff --git a/a.out b/a.out index e1e1dddf7af997bedbbd9fe4c73080e53b082138..1a24079c2b46a44cf732db100bd1f54b509a9514 100755 GIT binary patch literal 63265 zcmd6Q3w%_?_5a-@ixCh4qD7$^F)E6N1Q3H_T^`XyBSr#B5!}2MNX_e)Yyhn&Em&D& zG+NOS|ftUy-E764)3O1@A!3M;@7ykS$lDS#In-k_0T5h=E<2F#}EiSPg%3biH%ZLP#+kBCr<7 zH4aU)rEf*6rEElH$cTg_V&D-ngJ7U3cP+|klFHD})$lo6x92C9OwGT6y1Ul++M3GA zlg8IpUr<|9-?IFI-BxgmFg^g9dfGw&6%<_af9j^vl)M_ATUR>&VS1gwE+ z#Erm@y1{ZM_7?vv^yn`#TILP^!M87aaq5eAe)pzfpnVcQ!V~cuj^8KnGkS6g;wRz9 zaGU~iWq(h_ZxDV1@jDqmzd$}rKglckF~P`qFc9q1DEx+M;t7Dq>p1%{1iz6wO+cBj zF7mxgfL9ABGq3<2bI=>jiNVU>};J z)m7uh(I!l`!r{er4fWyXXhl;r9Jaz&E)CC)EUsyeMw({SRx~$9nyv8svS|KA;c#?G zQ^T@wWkq$kqPDi7YAFb_t}1Ju)Le5*q)<|2%`@{E3s)_#2scHf0CSZ^3u+pgQM5TS zskpu-s&WC}JR`rb^s1`aSCv&1R~1Uu=8CdHq}l8&!6J*PvJ#xthpQ^0RZGbD^5x;i zNK`EzwHQeSQO(A}T_%A#njDz!D~hgXwx z!gKP_=tW`lxU#rxQW)*e$q#Eupyyf=Wzh+FW&mm<^^2oR!jYz?h9=ExvV4`u=2zF2 zF10Y;b!w;)TU=EYZe}Xq3eT-yR)b#5jx@K_MVPJ1Xaq;EA{tp<6Se9hbyanZ5H{&r zOX@0W>a8ng%m`1+&9km3DV{zfJRx^N?uFKjdGn@CFAnGDPE_c5^N?i{wJuF;GGV&J zGjQcE{+A&XMGa~^Z8A;phtO$bCri)18B0abD#H9>Ablj_hTd{&4NQH8RqD{wkVDa# z|F_@22}?)1wLq7No_jx*pfqc-&VTsca%Ph?z`eeh`NegIYl{gZ+sh@&HBC=FNoTw8 zx@y6Xb>Uf;33)EOS<6T(aN*tSX2^v%J_GX?x$tJqBfivy=Q?Y`JQtp8unFZZJl91N zmbma-YfWf$;kn+Lu-t{`x@*Ep7v8MXq^)t`Ii@DGyYTceO!$%u?_RgoyYMHP%zztR zc=`e+Y;xg^pF-MZ7vAlgbhz-w$6@|X7oPr)30*F{+xO^p;propP_*hmru`-~%5H-C z*uT0SL%V8w<~Bp`z3`1y*;ema`*0n4dI&M5myq1Ew-@28-Aq#@d%7h364Pl+cS!md zOjE^sHc9$9rs-n!te5mtOjAXB+9mx%rm31eD<%DHrm2!Wjgo$pX{usRxun0sG*z&t zRMPh|P1WlON%}6Psd7DelKwo?RH>e9N#DXWRjDUS(oIZLg?cPWe}-wQPS3%A0dZC( z(^Q$By^@~KG*zXiOVYEMri%1*Ncu{qPh@(Nq^C1YmFQV7>5G}BD)h8VdIHl_fu5C; zK96Y*aZjV9$1u&I?I}k(|Ifv-7jGVqSDx;3{b_Es4)uDtXh8nRlh+B_0l zo}$*1-a)eHf-EMUJ)B|2a00BpCeQ6h@VTY){}n1B2#uZ zz43hTe-RC^xf@>CwrEkj$+<C+QP^z80 zfwipIiX*X>!>d*t3ACK^xfO?dd%@;u&t%_UZrR`csJHhS`Yun|Q24EadjYr?wz2S5 zW_^abYHz|&D&({|WksJmus4l;*pdZF*|)(dMm)@T2`)u#YZ(Ws6kzKu)ez|us1%3> z<{7K$%+g1WkDUr9{z>|bPfDIr-gYFmi+e4T^ScfDlEzWyxcORjfFKSibg z-ABlCQqdIdDF(aFE9?Hxf@6{PJtVhnxt&>GlK5K2focR$lD`=E{Wtf+mvm`01)R*+ z{{Ffoj0C;-?70uq9K761_9iO!7zb)4*=y&ZfAvEm){05#}^!1p`o(xrPT;1p5yH|WAhmKUErGhzF|%lFCNrxbgP z1GS#)J;*_S>;od!l3xru@gQeAgWj7hRS<9AgslAzy5yY3N>h5mK^I;srA?8MeKO)l zGw5W=t~=vcBqVLV3uBwYQp%uH4E8FotTN~_&>Ki@+wu&v+7e&OI8d7awmwX$mIB}J zpi7s&LIJ0Us=q-OMn-w@*)sqR0Y;L%fF-deBQKUgB+7p5A4f5WlJi#NOyw+Oy8bZ9 zZCifBO8+SFwTuJR0kHKkilLZ|eX1XWCxX1jtFfN<;QXL3tkCqOWQz2KD0}zckD@P< za}#oU_eJ=Bk>s{5ud~vVR9_eestaK2_t=*eY^=Y&NNuaU8tXYr^@SChzN{>ez7S;( zVfFnjqmpyq-~9R_{0CKE{=!O&CBBw%w7C~x>rdF1AE1hU`y#dd#H+EMPs2&YxUfRh zE5_@Ii=;0^+0$8le|?dhBfYBMPaPBfr;yyXrI(eikoa20fjS7VbqD+M)}f>5i`2Fs zIa8FNrwtA``oaoLU+l@!7ozN?tiHd#NX`ZLEje;vtfTZY1WvwtA*wTuHrXMO7~ z_T>~d)}M|^ZKr!R*7Gbj7w8KsG<_MZ`a+cb?Y|yHUnJ*B~KYPG_ZW zNqjBiKyf3obvOHRH5==%FH&2XS7SYY!^R1HVTGtyY-Q<%GA=~fuf2a1eUY3`Ag6a< zPG?2GBe`wMc*ajrePNt!0&LyOzI=|2_1BlvS;L)PjrE+X`oaoLUsmJPN4H@QXZ8K* z7z^9>dwzWp{*PCExr|w_miSu6(M}$~)<3Z?KSmY(_C;#@nO9>y3kS%!utL+9%@d_B zMA?_K`u_SNIY)a{kD_f`E@MTPk_^T<34eo4D|CU2nL%BLHLc%nNJWPZqEzw<+w&my z?WmHr%T$>z%jA!#Y6f*sR+}G_37|sc>s&Q(4UG4&>bA9vgIo@<^#Emjt->=u+8`d} zz4T!IG*v`JlsyW$`W2PreD5!)A-M}`=fsMJOLL07CLBfeY=FPs&#EijT!VAE)O!1K zKBVhk^I|E*pP~fp*Kul-(n`-x9IQY%TC|PK`0EKot$4(~kCnI0eFTa2t%oSl-gk*v z%WOq$E$t9z78T>VX;Pxy{tf8+3;OQ!igtS=t4R^$S<>iEX=00Taz0pweEZydg3m8| zRhJ?Jsc|>XJyKfkxlQ)&KjvV7hxPVykwD9O)4zkNf9vgUkfDC270Tb{DQcenqWahE zDbmHcuOrd5^#jWFn|~I8c9{mhuNv&KZv&xUfp*!~vwVs`CrN9cmAY5_#ePmAbN>SD zUNxL~ti8YPfM2iLdx`_>&X!Fgw7GksM4}6&)1{Yt?QI8+g7v-jI%G>_y&O#b#qJrP$xxw=M`XHgB1x*4WQ0ObypJhi=k>otrx1yEgXyDOQ zBsuruq%@VIaS*ns>^T($=PwqW`)pCHlc;C^nNhU) zJKt8JXz2H!bJeBVLJc^8oqMn-)>RbfC<=5HJ-aufs4XMl%GqBV=|!7=wNr(D+jw?w znrZ~cwQS_5dV<5>p};A@LC@zM|8%*k-J-YySi+zbm@zduV@S&#S6#cULum2`({k zLoC~-^VEt8zRF0f5C*#iKh!V+HLmVx+0^dh_U~^a)2i(S=#WU;$YJl+BBw_$F;8pD zUe$DlyXl{Rw4?A48{VJY-dcF5sEShs?Jdu=#|p6JVCFWxkFhIp?@Y5~vthqhz-9kzeP@m*DTm?r3O(ItfkTmIDUv`LGm)|J>? zXa?686!}5CozxB}abRJf2}OQbqvx6jN<3C*?>}CeK@6=I+NKw%#%VL&pO4YcHn8<= zu_##IjLAzhl&wNmhVpimHNj9Oj5zsjE6r2PvL}YWlnx&o-%d42t$N#v#1-sgwkUnr zLDPquo*3dCA$jaU$K_E0j~dk&8|x4s6PJ#8^kFkJgW+_K8e?)Uy~F+u=&o_6*OHW5 zR7mUE?_9ZE+Dkp8KHA$rKl&bOmeuGgjmM&!GP;Q~Jc&EbfW9>I=(#cdiO(rNdB?S6 z^IR2z9$Y;m_g7LS9PgiLk<;Z5A~`)>%sfx3^}jX}X8k_s_%XAD9W_0tE7lUGr`uTf zH#`52j-Qb}$D8wrnzAE=-65Vj6r-gqe1fgnjAsiN1|*FP>)0=MN6dJ;1>|JTLzQqW z;aSDzcEeNOi#CxqPClP|fM2lxlX#S(Zf_~8OxpD*l%abXKm*0xumdnzlRMlkNP!v|{rsoVkHhL-l)-$lGQwjFWX{<`3I6vcLz z#NM{=rI=Q2&z5acs$Gw|_sNsG@SXGWyz;nDch&N|9@ z^i3H_GlFJ}Nx77#@!W8^heqkHhwU*XG3WM=qAz{eo-W76JM435I*IrZ+iHVpWa7YI z#ZTVV-*Wvm6!IRnJ{6)>HW=OZ4SP5Qg*LRK5Zdt{QV1$$Hx#oAirI;A>$JCUO^$I4 zyX=P$R|?T>%eoy)PzbmWkOH?^d+iWqL|1;*_PlLx64ARW==EWX67swe1f3*pE;A|uB4L5c@lSIvOF#mvo0n1 zgP3i9=#H=EYMRIW#Z@Z~TG0`-a@bBn(zdMFo}LA=`0SI!MCs!R_+!xfcJjr@hnQb_ zR=ceX4Z@IvR3;Wfqu8(uEU?ew-9oW|P#9XCrK*q0zQ7cAPmAp;YF!9JMl-21UCT_d zh26zfpuu!ad8M~kB%)eP(3CY-GmmX=qbylT+wzh2#@{=MZ2PP6#7Npp`=1b@&YBHG zx80)=L!X?xYfb4`(sqQ-7YEKLIe6>f%$eC5=>)$Wro8teIHD>W5;<*6h{jm&yJ_g#4@=frqPZjPkP%&&2PsS{=#7qKd1zo<-JGjkdlvvoIR;Uj9A&iA% zE~y#xb2E!#A7U~bEQ-C3f(Pv;R96&(6V{Eae2keH)sj}4=$+AY)T+lUFY2@_}&CeTKf1H&Emd^w$6xKT}#jrL>YMLANP z_O-kXc(!&o>3Cw_fs?7Op?7>1l2lBr+FmN&o?Y7|!b)hyzDT+jul`P?^#n;WoUUW7 zk1!XV36q#Db~W4uSJqALx#f{HDf>nzdmrNMS%a~s-`{OF%3btAh)fKkOWavJa^{Ne zh#Q$8&&P18BH~^Tac_jUA?k(e9dYk}i^UeMSK?l8Uqqo9alf%2W%H%s-_tmYuipmG zoUHsFhJ1C$&^zcLCrSSOUkfh@E!tbah`Xf|&{DsWf8*myUgi>Yx&Vs07fKB+p4$aU z?6p_R&0*yozb4(@U34y|dp8audFa*fH{cqv)*S#OjOpR@|i$ z-gm!=h-~=w+P{{#i}%NSQhEOtGsSs7Kxrk&eYeQ3FS+ZZh{MVbaz?{hxs+p!il7}s zpX|V!B)EIFx+5C2EfF&Yux;wk=@{7Kf$;LNWT!I#xS*MZCoTB^w(i`jp$F_?t{h*Wm0X&wQ(W_oYKa#X)=7o#HK!Xx++jz_g8ve~O!46?@!MVi zA7;&wM<->8&*OTN2budX@v%;kLE;iWht?J;~si6dCGa8eaTg)- z&FIV~P&eE8?1K(iU~X zlA~cvl}idchpv8(Po#0CT=xg5lJ>XL9;8;_F7ZW%uHGoC0y148Go6OE!(J?L7)W?w zC{q-B#Xf-92JSiaI_>dNAq{A!KHdT>urH^57M!_{2(*=S+^>5&Ul*Hb(^Dr~^H6s8=V&SJyls%=ub!WW>3oh^$c z=%*ScSaL}wvy`Z_Kc|Xc@rYKcn3}GZqmtO)?c)ytD`NBLIqRY4#uI^Q3#Z-a>=3dr z;D^PJF!#mxV}>F(+yz;D@L&%XpV2>ekn9bS+4gZ7sTZHaYVkR!7N5ghe2~*=DGx2# zaVLTIJh=Lsn>gO*GR|Ec7}&aQjJCKF-S($?!Ot-s;@6^VU*1c%-R&sxUVA6v=4`q{ z@E`MR`ZF@4sWAub8zt^_Hmyz1zab=LCA;l2ImN^@;!X#}c1*Xvl7&RZFt;$1&7F?v z&P?dCBgS=t1^cwPR|!Ib^XS~^c$fNrbay(&h<#9!J6Yn6%+okzpq5dQ}x*K_2* zAvu~E>}OTJbWTD@%YGLl}TMfm93>(96| z%+nQwGE3UZVO3y6-{C2FYk|Hyx}OR|^eHbR0`{?_+u!LBWS9LCD(m?f*P!H67&i3; zn{xS2)hq@x`&2a^sN0HCmi^E{W>HHH>_@kq!DDMVpp_#lTg>wRO559n51#cGwZhm? zI0aZ(AkA0oU20o~>_CfhYX#>ss4Z0p=Drqf;{LrrtiIa+;2e0sk@EWHs z6d5Z;QkKEXIG9SzS?Yig+&~J(U^=&yfCjIq=u+-b)G`Q;u?)(Jh&HEZqM~kDGGJ!Y z#q^>NrCIwUMyjY_qy6?)R)Ct;%29F)`pP}hbM}vRD*~$QrVX}V!t!tbWDBrKqhf!a zb+|_4C8o_em+TlYSR>HV3J53)7|jKAm#~S|6{y^#+O{ z<CqpokA9s&EiHw$$z!+Ojyy@b?G%}>rz{hZx@duJR!@z}l+dh{jeQ9FdQ2HpFTHe-N#9qm->C=pyo zyHqAIYbdzG-pWNl3JRU;4e(ryTh?IRSZ}|g7Fu1wJY9jTqwA5O-M$TX%;M|l&3{9R z=oX@79bIpq#A(CIhTv(xp1;aEdWSd$vAHWTrYrFs6G<}9JL2C;TDFK=NU^gxJgqCf zYK5n2m0r$vsf<-gcL!I`Zk z$X0w!g?&kRT|^lj2-%te+_Ffkniht)B`wxT|@+HzpC_AkRLGDh}A ztxCF0KVf~S_;$`GHGfd?bM|cEmGaeVt__4e<4NR-*WwyMJCilVl1Fbgv8xWOl!Jp~ zUw?ota|;OB=U~0zq{Z{yZ2Zj%ofN-Zy(&JAG;5eYtfi)`?J4cBJuR& z9yLvTPCq769`4hR=U#`DKKWy*bhFEFZMJPe#!o*AP*m)6U#A~we7%qx|9gHZRbmpt zKlKe8U#A$ldYjC2Wcr!#&xNnUepTX7L7&r)ds&ApXr1oUj~iYCx(~O{Uqw+3 zRkYK7Myg0U4xx5-C2D7zto)r+&7QxjE_B+D@u1Z?7@02>?)#P5q;%R>qFco=budyX zadj}#A>C13-z#x*Ffs}^-!QrL!N}|ISmY)lJDGGgavs}82NUK{;yKA*Ss6Q7YIyQL zCwUczsj1bu&rCM+%tnOWr+7g0I6YDOsigHC{=mu~N~Ow=c#rN6ybP!T?gRWNP649Z zUh$DoyX`!%D!O1RPeVNfhug@pL{QhFQIC1A zSIilTC7$-Mmps_XwBN?;MFJ-|bbjC)3vm47q%O;L0tV1*OhiLdo^WtZa^Miub&sVy zz#g8@rK9y9I;6;Ud^>d?s@tyRGNJFzl_PGp+H(Y-a7ba?JDP;V2WrjpxtY%FK4>3N zDvn77W1X_V?*56O*V3&riE^Oe4tor}3@Ipd3?wR1UdxxT(r>cwqsQT7 zn5QccuVs^XB1>pV;RC2+jy8Cif)0y;_wYc^NNiwPh}Vn7u4<_UBZ;x#P$+Bm5uhN#Zu5yS#Q5UBP5;* z3KXaTe#QPRyDiHUyGu_6;)ADhB73VmTx_6+>3Yz8?WwG{ZTiV__Y7{fCx}>LD>(5zGDfESxmmRp41CoH@yh_#z$@eY{*z>lS9WCzBzJFM8B&-^_{8 zTDYb)G*X?3tcjJ5lzs-;=;yXmR{Hi+pRKjqyF6R#eB9Z=xyD(a$b2X(Ax~s<>sWP0 zx;@Bp$8xpu6A}>T^6!8xH5QxfU-7(v*hhige=fAIohA<2hk3fNT}XGbKx|>VG8gUk zMPP_pEhgs{#lS{~fsLyBo9qGX&8qF?y6-6!Z?gBXaaYB!p`m{Fs>R6U?qD`LXhRRV zEZX)>-)5C`r}o-m#;0s+nIe>HU6kJ;ZkDtc1aFqK6&T+;I$Dl@zVP+H{>*kf(}S2b z^vS~4opTKFedWEDJT%>jrn@1st{sI3Fwj=dUAW*S;{)=NF&64^&yu6(MUoBF2s*Zu z_!Kk+P8mH5Jgk1T7y#$_K2in=ckxq;pD~Rms9g>GqC+(hd)>bJT~c}cipOBa ztSUT!*O|dcHw4gaFJV6YD)Z1gK8@Dfo%0X#$<)8{Yo@O6nHI%rbGl1nx8}gXxuE^L zY^$X0(ilOkI%jVQh;~UVnscxywjc*bF$W4t&i!aw>|e#PzZE_EQF?J~mwnSlGOlAkl4sqAB~E-YIHbkds-|TAPzq(psG}vIMd0lGbR>*pk*; zb8stWd%-sST~^~{Aa^hed=%lke9=>WX5s6qLrg~n$BY=klT}(#UsZ7vJ`I0; z#iB*EfYWQ5t6K17b!$#b(@l|^v&$;#tC!WFz>JDWb43%~4x_95#{KAT_V$jzho&~7yOZ#N zj<*2k0R9tj55AW9?v~!(TS2$B_V%s=90K?>U^d_$!1;hj09ON!&O|oAsetbQE&v?y z49WwJ0bB=|2lzB#3E&>UM!+M0?SP~4QMFFMsems7E&v=1oxBzBHNbU%O_(fC1Fi(z z1Nao+5x`Es(fGjJ%Yah>_W>>dw4OtG!1Dpu0bU3AG+-0p9>A{w9s%qG96bo-0H*?G zZbNy%a{zAzyby35;7q`$0cQj50jvf*0=N=zG`_OD0dOkd4*?edZU?*-@YjIr0N)0D z8t@~)J%A&&qdeerz|r^!V+3$2U^CzXz{de^1$+{49pJA4p9Xvja1UTF;1R&dxMe&V zUva(;a4KLm-~zyUz*_;o0JskDVZf&W9|zn6_%h%Tz`cN@@#W9MfKve{;E9F>fL8+E z3RnTS4zLmMX~5NhdjK~89s&Fz;OH#NdI@kU;0Qbcu>f!q;H`j{1Fi!s1$-KC3E&>U zM*)ujJ_R@$pPPLNa4O*2fC~TzbfP@q2*7oKxqwdtP6gZpxB&17;MV|0T z0$cz%;02Ti%mQ2oI2Q0}z)HY9fVTi10lXh@G``~U1mIM_=KvP~z6^LP;NJk(0jB=~ z$76z;gg=0p|kV4Y(ZealoGf?gZQecmVJS;9$Iqn)_03 z@A-gh080S>1sDaqAN#&_fQJCL0}k4S{sB$_%)s}h769e|-U>Jq@OyyOfSJF8d;o6) zd>rsWz@30Yu<{=Qya;dvzD{-$e1)liQvnwME(W|6@IkBR+|F4>$>M(I3Gt;EivhJ-|-D4S*B(fnVYQ_W^zv zaPVoC^=H8I0q4C1`2wy2tOfiN-~)i?yp3@MydQ8E;1<9`fP?=8e(@de62Pf|yL!-1 z!0GRxUBD*54S?GLw*zMEN4tRQ0S9NJ+yU?l_%z@Gz)62bIl$rXqMv~L2-r@*YQO`4 z4*(861OMOYJ(L4{4sZ@&_4^nXz;%bv9$*Q!WIF-x2Rs1y5#Zo4n1_EyKLM8k&H>yE z7zG^o5A+l8O28)o4`3^>2XOvBp}&B;KE!xpUCO|IV|CGGw)u0at9cB;zkpm&A{A!?bK)=|B zz5)0fK|jxjz8&~AeU#q^`g5R<^C_PZfZYN8TpxN4=p%Fd`!^Hxv-_Y|gFXp#$|?iD zl>UQW3OdxllfD7;DCkgsPx^My9{|0;hrSQ=ouFgc^emr|W?8#IpPWoDT$L{44|>*F zA?rmS`b^N@0Q~_UdNt@v&-QPBHR!8B_Z@%GxAswfJLo(6pzi~HcOUeObliUh-EVwy zK+ibGUw>wTo(H<0epZ7%A9TO^SA)K^kNP)&{%9ZdZwGy6ANB78-3I;4`V!FntVLKpzQuu222jLBAYy-~NMM z1G?Y%WemW&2D+d9$N_y5=)V02{VC9W`w#j{eb85f-UB+^AW!*i06qOYfBUo@^ov2y z_9?#)^!cFs_8;r)643qnmjike=zjg13Hn`q(5pfJdLQkt27MFge(TQ$(07CG$KQ6) z_w~{KKG2VV?q^>!GO-^U=ik2^&}a2Qp9y*dbU*o4gB}H)z6_>f>iP%z8qodLw+*0g z?4$nepg-A1`F)_j4El7R_A`#h{5s!Xe{w)C0Nu|%%>?~Q(EY}z8uU4!`{~bW&}%{W z8=noJKh{V2?VxY%gT4>+mqGWFe+C$T2XsIA=YT%&0{`)y3HnIT{pN2q=o9)VzZ&!q z=zi^Q0KFV^zwz4+`lF!x`7irG?*={FZ~O;gzXZD9_~w83c6pjUuC&V!x<+y>C^2K}03`W34(?uKu}K;K{|^1X_DA;c5xjP_#> zfId3UpU=T3Sk`%<`{~j7pqGR0r{^W0-_i%Y7W4-|&raqKY4U$J=udz?&4>Ot=zjy< zZ=K%>`pA5LIUfMM33NX>55@pK40?5P`$=-1gnWSs{&JoJ`ZUn}#ybl7S3&pV;{nj0 z2fe@X=DFZW6aD$%dEw(jLe{0p{Xv@Y<~d>y=s1>2)E7-3JrsT^>i5(8sh}?fJ>RGN z0?;>tUhF}qUf&A(`=GawUJ}E=b8n7)wM*Wj|H!vwQpoy{`R4iO+lhSD7ly1&%-7(Z zkNrM`d?P0N+p7^-@b^K_Wj**gd?Cv6lR*D8=ze-Q2lQJ(_tWDj=v(?I{{ZNFLHCpU z6QElc`OAG5=o3Kq(m%@c5a@S;@C5%G+6|9mr%??L3NWWKL^ z=cC+ek?%0_`K=RogFbYMzuX@O{Zi2Vl{~mschhGeP&U$z*ehKKWv7Vj& z_3T5wQ>KQjbC?gm%20aX$1M&~E~Lya%0p%mn=_pnpKR?axOo@_q4Ae?IO8 z{VCA>_;?)jw?Th8nGe0b?F9YNPx;difPUj;{`A2kaDE)}wpY~O^Fgl$J(S!&(v(99 z=o>)4kMxYYU;w=BSrqvuPYYR(Gv6>*zT#EEyEEF-ftLE#A>SLww~hJEbmdF3kGwze z*mSK=Q~dKCK)%yvXniU2&c}X^I0C=|4_$K%WJ=pT0yvUje%4OSL~A z>yU40p+6r_gZ?n+Ui!lE*aLbe=#Nrob>!tiu7sk#@%Is#OE-4z^|7 zgAtMON50CUko6gsapyyv^b*i_f_{?^y%zL~iv9V$oArZ!O>%kHc(WbeC;9>Mg_85> zdBFQe?}2_(G977_KLq-MEB*Nx0mF4C=+(*PllYj5eEX3vl$=lVu>kaOSNZdCE9eh` zJ}$XD(mD981N~Xh`;*6Z%8@Va^d~5?pYzL9&xYn<$biv zuL)UsK6Kt+TMGKMKJ;49J3$Y5(8=fBpl6nbtgn*3%bQQ;djk13AfMQeKf3ZI*^fQQ zS9)#8YGi$Xb>(x7BkRjJ#j-k(Z#m=Xt-f}P|1YOtwzeNx-uWoUImmZ%ng6_vf_^FJ zUgOU44}iV|bU*v?1n6G^{TYtu`Tl(DLB4s{d5RC~H1e?k^jV-kO1VAY zFAv_=J$R%4IPre(jp2}W3+?kxS3OrI?SGN4yWD$zlAi;hXI6x)rx4Hh$W@PPKCoXS zaCr{-yw*R~GYRw_&_Bz1@N>q`Rgd%^`Kl{J)-L8d<8I%1wHo>Of3Oe1KgqbzmCw~b zEZx@NPvSlc?u$d5PGCDZz>ft!M(maMrhQ?+q9LJG$K8|OmT@fqSp{l{1IWrWz!ukyG2)*g21cqJ}oSlAWU;_Td^eZfmAzk6nZU|PUKNPrhSHL=y zK_RAT8AEqO{HDlB(8P*3Gh@z`1 zfHm}Inf0LNGqpd1RewsXn@}#HCwm7l+opI@h4`%Fe)EBSdRW7Hi%>j%LEe){TT zZ{P$nbK%L0tZ$QFgx>Vjc1*vY(EWZTW7MGx>w&~}dIJ|wO)d<+7_cr6UT0ks{Bpp$ zKM;f=zcUSl2hte*9;1Kb1wGGZ<70ybP`LX7)&eAI7+FPDeyrt}bukiG1Q%Mf0dGB1 z$~}@kCHS{=Xe5l!t-*T()|x=@PXX%>f#6f=){oMI?;K~nlo5Prfc0KR5ci)x$_VZW zS}z5I-#^aUcwF%HLDr7U;N1hQw=;tuWLocM246hh+HrgkCy@^i3V!DV>pO#kTL)V| z8O->G6N3L3V*TTU;9WzkRYMp*I3&0&%i1V-!AFN#UmeEy zn&H7$Pqbbg9(;GW^(Tq%Ix+aoldNx!2tGB!`q2o+*Pj&p>&ez%PYQnFWUE)=2Tl$? zGtzqI6Tz20Vg2$GjBg$p{KBbL>nXvnonk$73gf+}+_vg0Yu%{ep3&Bmqk=DtvYs0i z{Q79?q0zyoa;)EelGk@X8Qgc8b;oJJwWnG4oW}ScP9y$zr}O&O>A}C9ZoMn<=d**` z&#+$34!)gjy)N-BX9T}zy-M_D4BEw02#=eDWM?{W%z-zwpvez~dhhcs}J02Jgl(ZYEbUd`}|`{==j+ z|7#w@UDL zKbbl|cxoF}-tD(7Z z*<$#8s8Feh8u1R@&UwiV>9oq9hFPKVhpIwC`La*`Gk{OCmf_lpUju&O;%maq(dwG| za7%Nf8VDS2;Fo5x(medGMk*Yxt*NXES2eeU7uD3)ST%__prXLwF@M? zx42~H_{D7ef(g0#`MDFvg9q!1S#z_em1R%JoiH&s-wLd}Q<~+R$_(6wYv2W37!K%m z4XgkzEszO8TWM*>T|$s?TrNT8aad?U8^Ermr3GgJq-O+c>Z70qTae1gJPu@T#)9*3 z37m2Vug9n7X%jQxdZexM(eE@XjF@KS=fonIk$I&mBYCG!XQ7ub6O8bYp;`_G zJ^(JTI$#P<*M-xTWey1Zn6%FXN;S?@46OAse#dPhz2vd6dq3;5{nU;WTg+ec+e$-ich?3a2kyDfU~V)xa0j*b+S{;sVp7! z26L^;2CE9s8B7*JtTH!{gd7k+6UPOeI?}*sW}FjB6vhg_jMU%5`oberXoP9|(Lnrfamxt}`YQzbd+L$X_zF24bjJ`jKlh6b=JNo~O5RL`wqJ=XpB zrO9b~3Li3)F>5iwVfgf1zn~cw=7L(9#qqF;<7?`xYFnx!c=)1r(FO5(VT`IHi*lDJ zpWyg3qx@D_4{!HyT-vxF|txQ$uw{w8F}bED0}as;G;EmsF#yNukoJs&Hg^RirT*Mo(%Z zRxV%FY6c4me5MN7(Mm;KO%-xCpkiEdr8QM^CElURt!k*Ni$MQPB$p0W?lq-zSW~33 zWib@Eq8<)|NjA1rqRx1_rhZX_p;c5?!uv8Qm?LndDv>Uj1VnD4wGCiSWzo%~jM>LU zj6wmLDr0{N(n3h#d{!fHq?8b}S#xkS(cB}L@^jKcNa5^OBeEqGznJ}x!Q><2E+0(` z2`Q?}n|*~KaY-&e6*zbKyVF9z;0#=s&yiI8l3bp%h)ccUe^XirDelh%SRD#D`y(vM z5==eUAca>L8ccb!k84a<`SKJ>bg|A%88euC2GY22&u7wR-CqL7FnrC-;vv1v~%bR^J`G?Quv~S9DS)g3CxSV~v z*~puG$RfdvyGcKQh`W6D;E<5A=^!DjC(#v*^*8Vl(A?#XOVptc4(46wDvYQpXRzN$ zDsRpiMpmmFC!35KCi5@eH)uxwW)qR8%fHx9`5%E!{!RIeNJvU#LsMamCx4Yvvv98{K@HqC{Ga^{>?eZSY5u0!a*?Q3^aUk zSHvu){Na1ck;3ye+V3&>1&NDE8~88a+~uwIa+S4RfxQYiS5wZw<51XLey=XSSC=<@ znhH!glRg23i8K83pO`Zo)aA#ra#zT9#Tgy0+s{kFoAOhV@TNKgNBNXL_dZoHN&Tg- zq?q!#x_nYIR-P_jobyU1nMtNpRtRk;r)C}^(9?HjxoOb2%bX`vKSI#wIwXS#{$;KcZk ziTDiogCRFc;_2}GHhJO)IOp;1Lh110)~AQuD2b;-D#q_}6Vq{oW&Ei`{6Ne2Ns0JD zmhpcQ@q?Z7_(VLMgux*ikBRt^mRa`_@uy%ND|e$Lp3W!F z%{t|xrdy*dv;Mfy&?@YL^tzIWPjXH)G2POW#+@1Qba|pQ2`TvORHWd~@WGGq!Jp}a z&+);Z<%2)l2Y*fqp7S}wdapNy;De|A@X8O(!K@zY9F&{-RFAT(vDG1i5}1ptS3O*> z10H&Hh2T^5iiact-1SPPu7qSV)3vX(E#)z>;7^<8hdu9#*fr^V<)+cv7VJl z_4x7sb*bkhD^vS{(g-f!6a0zzwpPfX1U@bJRQ@}GXS;i=LXyv1{N(={GI+`JPr$Pt zKL5{fsa!4V6X-bQkewulvw>%RbHDW@oqsa$UiFjgg`Xz%r_R&sfydhl)_ZN`j5uM5 z5B{@KPpW-b4Scr8e8(Mry#F&)o)2c_lrO_m8qfC-7>ebJXG1lf&-pNz8Ip!YmG$sB zVg^&sWR2&0tPFUhP{JaO=lk0XX5W23@WTa@c-f-!^ZgHoadO4;L>kZcPZ+A@itl`2 zktRQUew)GY`8kc}^MVXtl`EbL)p$N<%3$h$SL6BK3WK`hd^*FM&kEq#F5gRJI9;xI z&sgL6J{`jdx#IgH8qfE47^cY;dz_%EhwpDNd?;5uKc?|~o}Qsau9kHf@Wat=^7;BT zIzQj@W*9A3Ja?|~e6NSW^mm7@r{e^L7a}gd*7^B997DET@w_4&e)gBoEi;UlE8g?a zc)s7tV8;DEjpuvS3`67!z0!ETPt7n)u6Rc4I8{I2lVGTnE1reXc)s_*kSkY=yTW2Ch8oZJRTzw( zlxsYnPh^-aS3EZf{BRw2gKz8n^R?VefB&xWe1DQ*vRv`p;y}d@-?L%Jmn+_L)_A@T z$$+GUCpDh$p)(lyyrS`ZuY_T~T;Wp;QuXt@2@L1S73DOZ?_)9;{iy|hI8Kp_zn3Lc zyw9fd^LbkaqbJ{x{DMljJmZ7k?St>t_4EBk2BYVn9<2E1cR}3vdo-TUYckxT^>By5 zU#9R+3l-lj(|ErB&tUW+3obJCf$yC#nE7}m@LuCvqx17SBn*bnM>L+#WiwnWSKQ#% zc)r)oVA_38$q%33W>8n0w`)A#n`AKh^97Bst_%?^&wvtc)Odc6gaJtj zJ&1VqD}AVz^Z6mkmn~P=SB>ZUmJC>NC42>VuX>))`T3qJgR$GT#=k!%M6^@(pvLq4 zK8Ad`f)^+r<-q6Q8S>*x3Axz4% zV{nK`C(Htpa^U+73^&OY{+`D3dn^p5{{0%y_x>1+eYhG9wA7>fW%B<(@fsR{`tNQgK2l6#`8T=2BQx#jpzHP47qZ(tZ!>P-{)Xxlq;SuHu(7= z!CbEKcs^9x<#&4+OuGj)p5G&2FnV&vNR^-8Ibkqzo2Bu5zn)=?T=77c$*;%pT#f&{ z#-FP7r&!~Epz-{U62psfwX7F3p6@X-82fPIDT*Jy@5x}~^C^wzd+rSCibp^+p6??t zs4M(Kjpz4y7)*b6Xgr_eXZWmK@qQKzDaVWNxicUs;XaM$d-@DUp3iGMzkk7Ch>{tSbWe?;T?emR4gzYl3VzX!o!+I?2z`JFHZBhS|~{#`8xqlX^>KP+vOWw)10 zesdXkn&PKM>$%})yvFlAD2C;7g@%(NCL$+M;{+Gt{yB-XNPduwGa^v^37z{sy#wa}B zt75oGuJ|6L#*ftY5Ytw|A2gotM=_`??)gLD92b7ChQa6qzimi-Ws$;vMyS|7YWyUv zx0oRkzM}E`E(n9slR%EDhu@20FynZ!#`Aq}2BYWK1D}O?cQ8rMt91UzIF;YXXASUP z^ZkE)@JDn#e6Nk+`*Ov8fv_* z7)*bsXgt50#4tjx_)d(*^LsrEP-6-A1Mk(Z$8~`lZJ6eQX9aC!rU3ul}A0#bCdRwEmlMUkE()WbFOrx&{R*b$)*5f#HjCh2N#| ze1DRmUaq(=rSbe8A%m&^O^xUK`wZjcihcQciXVQ@gu%%9c8%xz+YBcEKQ%t2=c5_l z5y;@x-#j1ub-+^&d{36)ak=62ihr z(0IOQ$zb}mQR7dVsPO7)SwGi!z8}tTlU(sG;RUMxo^wNjIaT8y0^X~?Ki2vAJx~US zOTsG}|HibCq_-)w^{&SA`&kTTew~u5+U0kd7%rA8_Qx8}@3Jto$Q8GTfT!P^Y-gHv ze!g$cVEXkt;Jx_&i_V{+`5z*sa9*YH{0;@fIJx3GCgW8-D^Cb%i~?mEpMXSSkq`bh z;HeKA^*EY#zp3$$O%F*`X5HVX@zb>4&KD}qqhJtN55Kp@VD$59ji0RXM$Qcy&+n5l z82lH3_ma_^VcSN!n1Ck%$4DvjrR!VE^9k7zuYInr@o?|GN5 zhu=?SctEcBUZBSFJ#hxZ|C<`m@5wP3d79_S`G_eWEyW||RTZ_h;l*_g_4>KwFh1g6 zt6o2;YKk^TTkvlY_-ylxIoHe%mlT)H35SuInUK12hKp3)5MEr{P>D+9=~MYH0eG^s zu{IKoROe34zi^60Lb#@SIZ~7JE%iuibxU2{&8D5gSu>@X%V$r!x-e`~Y{tant;nOU z(n>VajECkM8?EsCN%>*+Ct6b_PgvJf)YjaB6ncsOH4v^w#-^4kN$1tnAb(l3qyP_N zH^{TM;VVk6nLe!~94-#mRn*kGADlO&Yc9XMtZ+_v&a~+zg_H-&>Bqa(W85x;dfq!c z^V74YU0poG;sduv*7IjwRTiDB{I>^iufhP# zpH&tG;X3&*4B^U(=19E2%n5}{b&h;K${vn3Rp9?C6jv2qM9Eh)MG8?z*@SQ%bGe$F zGA$Zys;O*=M%Z*-_!!!b^MwDXu4-t!Ib7GUG!m{TE~(5bEQR2}`kegm zoV+kPS(c9x!HDKhO2|7wGS8Y44&zbnaMkkV`4@%5^$ksR(9{|{?_B|EW_zx~+nidJefLTBKTdl|#9GX0n^ z!QGEaytK8fqN&<+-c>r^5yC{aCqkG+X%+v6dMzC>ot{;5wuu@kQigB6=rPIRAY)m{QytpY4^OPdPI6c8s{F@@2 z#Kuzf%4>4Fx)Pt`uFlSOq1r0=e8OanhUp` zsE=TgbFuF^5eh43Up1>N?6pF|>7fBAo1rBVpVTtxT{RnzVj{emYB-f*;^B!vnBs@H z`sXVtJy34F;UcVbAU_<}0T1`ck+&IA<0iQ#lb4dty2{1bF-cz85qWn@91$<$5Vs>- z36wq6%Ql>o3b^6o5`{u=fA9)g7%ydWATb3esf9FU;f0WD8k)s5oKy^71mmBoRN_R2 z>*(+(C$hh3=riXF>3J2x8>=kTORB$nnm+{^us9M8&uNUW^lAbY%$#0W591Zd&#%J9 zBN~~*_t&^0J9?R@QCu~Z9Gna(;|!Jb@Soi}LAUiQ3pkWeWBBB*0a6Q| zas^}|mR*7#jxgSq&%ID{m^3#WW$QyAF4aq#6mdDE+7B~VOImHCZHxpv!{l(;h2HAm=(`z9e_QHSkpBAa8YpL7 z;ZXvN{{(Oae+PhmXF;mZ@v&CZej9SFs|87>GHHp#AeBXHn~OOHiKjk=vw@ok9m4Tf z1GdbOin`*eIpIPG)#Fq}TQrwX5cf@7+~^I2+l_W+qW>BiAFq$Md5mju@=}!eAstav zf3IBaePok{^9nx|_A`(UUe8rAsQ$JXe!`ThhI)0j$YUupm0U%>c9}eR|yWwKdtFzv#Ar@C2 z!@3I7%ka*76ixyxdiHOJ3&8 z`zXcjIh0c6l*Yx6&Sg_+CXs8-q%x>?`!tSmA1_6nYL*v@?|uxE;@EnK$%8)7V=Kf; z7x&y|hLys&CsltfxH=tQ0NotlAhJDjARFmXxCv)Xh){Ty$@+xbt`W=sv~ZK0#Yo;P0{4GLE` zH-wkKE5{dtM4ixNg1sqgcG($qtkBFxUVRVtDSMTj%f{x zi}KjE&;A>x{`bPrxcCe;+E*Cg0hdM9{YKZ^NIBiafV-5+%cgp_Qmt;zz``Zm12+C# zxI*3FrPCPq%*=}1Z>jj;2*Zgs!DV@!IhS~UKz7W>)Ggm*rMN5Nnw0vepr4lFDiR+p z*M>q%Qfpu8(tEU1E77=C7RNbuEeMHQ`H$s6xW**j5BIv@Izp4ZGE79WlOGoaO}*Sy zGnQVNbhnr0Y7mAMTEs^&bcTd2pmRdza>M%>6K|zfuD#w`i$nV#91b*jj3y$X*XFR# z5oP`ab7m{&wb&Jh@%^~?O=(%n+#`)S>C$1fu)r8k;tnnKP)QCos%Y*LPc>x0_d428 zx1?|zLiw|BO)d;$RZn#eoE|{z?(s+*ca&7O82TAe9}hP^yZnzOuycu@ugfDz9QLDl zOhX=Ufy<@tqG3-d&!4#c4KIW0>R)^!xeS8y6hM3<JnXi+}s9GKa~X3MfAj#eKY*0+BawMf-lJjjE>&LbIyk*;z^$3I_w;wduY}?{@^93 z|9tn9s7?PcK3+Sv zji{asiGGB!jmf)#)N=lAoZ3;R-ju-;WBm?^+bTNRLTkf&?n=GnnH1N7pWie=5l=rX z<#wyAct^pTO9tMvfjjM_&9;kAJ^>Q1f`W+^wc-;r_H}-0c*JscU=Z=<`9TB{#tMMFZbEFARlC~^QINR~kN=TQTHN9{j55&9q zAFMp?3d#P|(T+Gien(5xxL=<;E&`uzIF>}?&dV&u@cx%vC6~nFXBo%ty1J@!2As-? zInN<0Og;q@6_lsAJeAP3|8Ui;4Tw4ViBpuq$=NW}*YV|K*y6d2YQ)bKlCs8!N4FHG zyPaW|Q8YV3LQ@cn1KhF^SBbY zT*_1*N|_|3;r|w3+B!fHnziNhRxigY#I>qV!>ArnXja>(KA+U^ z6j#y>Io>mhi^rvyuGRV|?jET}RQyN4nHb4OdFoD^Qnl25oOxo~DeiI7;665`OUgSC z#^f16Ix;@yU4**PFUxuz8c2D>G|r)(`NvXArY53)*C`5irNNx-~NuezR4TprRFBU@jR>959Dr%r* zWeI}$$m`)&i2^Q^8w1nH5JE1Ql8_}=vd4TQ@02LuLb)+;w`R;h(>@l%-yGe(IVmB; z7!MIx^W_?YrrP2+qvgE6w^Sv#w=^U-1|A?Y2nL#bS0bM#sRVso4WF}heZF$h{HJTE zn`@1!s$4X2{Ftip(N&c-jZLGQ@+Xd-I6kMLHfOA~I}`OY?WMEk3MWR6IOS_UxaW`CCx6(~e%r9T=RW8NUpf@DQ}H8Y+F|$&$L|#U z7*53RIJvW|ei{<6z0{?F_zl4Cc>MeV`7rGyuUa)Exsh=OVrb=?re}@mg z)TiF>`QU4P@HhJKdB0Ekn|$!&eE9sC5B^afyzPUZ>%-?aebS$$`OMYx1d>Up$Cdi9 za!^R(=JFbDhEl8VUMMJ~>6Y~ZVobj ztjJ}{BC{)&R5nB_>ZeteHZ)W;SdptsqIu^>BGIMwwaX)mO3NdqRaLcR%Rrblv!r2s zL*)$>VTqMAOwZ$8q^zklQePn%n5rb2Us>CLtPK_83u`K)Di!bz)AGW_Gs|YrEGaE4 z3ro_5(vmRZtag@Qk;D|a2%ObK%1WbUOUZasQ>3nI zb$M0sGU`sXQXAYYDJzRKFqUUU=GH8)M6+gBG&ELMFj<+=E^0z)w4$jpYE@TMmsQuH z<4D&US6y0JV_iCJT4Y>Ku61cq;nZo7u{mRNCRo$v&6_f{Fp`%uPNC<`Lz3}S@f4XK z2vg-g4OjkRe~gi)=s}0VxgmhROED&moi0A>dQ4qG>t5g(NH2HM8&9mnw3B8%=+IM; zA~rAm?y>7Im8Du6b)M)s_h3p)v3{b{AHHiLiQw}%6X7;oe9I+7RoK>Sk_}g zmJ6?o7Sc!;o@JSk>%yD4m9%^p-aU_pTzKQdFnxgw&-vGcVi%tCz6tYOc=`k;EOg;H z2b-|eh0icZz&aP6bH52qEs)x+PZQR=@JAaY z;6@joev=8CU3mH{CTwxx>5rJu?!p^Ci?p3CyxX_h?ZO)$jp;jGc=~T9bh+?uzsYvt z>EoGDuTZ|#9gH8%_-2XU$~aZ1d%eVO zV4SMc-6rvR#;F?JD<%FV#;FqBbrN61IJ>-ip~SCdoL${rEb-Zlvx~b!i0A#au=%BH z3!2|3Sheq9@tndP?d_3}Rj}ik-2!&JHY8-(Uq!-0i`%FR1uenTZppF=ZflRG^z0T@ zSe!HD)YT{tj{2$A+=AveOPFxwMVaVGt8wO*;dd^y3R;e3KNpP7WaOE{sRga`dI~1J z+HmHOQ&%!;LF?2&L38j;FxPX;bCRm%*gqhKMD=exAKZ@H0IR#^h3$(M$EuuLuz;+s?|=97JWb!~$-@{B+XVN0;9l6y%-fjsY3j1Q8C|WAQ|6Qu+;X5Ug>Bes zK~nZ!7&hG3^1cX{g4X+Z4-|W3+l8eN>Affvh?|*aq)NkkpxBGsE@hfJNpl}F6}0}8 zc#wAk`Ez06{gF})@%98@_g`4heA`OqX})g_!1R{y5EQh0Q;@1;d!Qr`)a7OSikc6ruQ6wuy?XHh|db+>O&gs2evSferT&7DbcW@tBrTtq_Pg2$-?kNWQa<8QOZv@98 z?HZC>x8B91zm@y@cn{P{fNe#T>WRSbzrGK?q)9KH^I4iCjJ)|Tk0y2h1!e<1NnXH` z)bYVgqJ%xW4w?GwL}s>Ucon}tWSYK&jAcX zfo-{zmG#vYDeZEv%DUf&xktaSK+~3MFOz;D%I^H|2-+eke~6UcZ4v%|LvriZr&;JY z)fV0ZwHaXB0=DHwR@PTrq_kVSD(gO5wS@(mw%k)FZ6V6eVDWt!3Q73}45N2jg#T34 zmfx_@C31fs?@?zvz_!I~%VQ{_&$dWuKlQ4t`x;EkDDZXGq3XMj_iPvIs9_y5nX~mi zR*Ehp9_00~NI&OXVE_6IDS~)AlkD`>c1iixKT%AQF{6vaSV}UI6oWm|E2$Vs>8(PNTetp=N&j2!@8dmCT>#taDb;^`08#a2 zB&A8;$^I-&5=PolNs=_W7sFRWPm&killDt9q!WpL9?jMvCFxe;k1VOKFFYGPx~R!Vg7TSfFW3P_>09`(_s3S6d|IT(9D# zEyDjYl3TY9fm33?D);yC9w_>#s!LC2WqlbIDQ%=zW!<;I$3|ONplQpbu=ER2_D>ES zL0cqcGg2mrO4=g)KT2}z)>B#NVAU4h14aLP+j92HRjjP9wn%C7y(;VeIo1zo3kx)D zsh%!vA$!)pN@c$agty@Fv?02yyK%JZ^4eF5#EUV9EoJx-F^Qx!& zJuHh*B*&pCvKU2fy8$wKnmY^jAYtIAWB@6$Sk#@PrJ+~w{)a-okM}G9VB1ZU?+5P@ zaUav8eBwd2*ot#6mfS?y?MT(9`bx_CSzeOe8;L@Njh{(%ioM6qgG?&>@Jl4uEnbBt zSwyzMz8Zxl)!+RktTJ7)`t#q}%oTUp>x7-TcOkM;$>S{{Z7mi-%v}kYh%g3D6ZtE& zlFxJ*C6ZEV?NdI?Z0CCMxBmn(U|)^8_viO65F{H%7QIA_27LjvZL1umIDD}0enYO) zyh`kzkQyhnO(=_+Mcr5|uE&apq`rdIxetN=wr#glp}r%@8rw|LyF-**xDCx}qxQCJ zC9rGA*^J)Xnv`i0%T8+fcvSw7y+G<+@tEBqH*+5YcKxfogY|W)Jp}f*{&ocINz7DiuO7DVXZT1OveEKX%Qtm;@%xV%qgPzc{Tg~MisX0WtMO&BCEoO0+P5>5{H?1()Jxf!| z20rsqTEUhdJgP#$kjI|&k`y-V<{m6)-dzxAF9__0$kHIPfJ*7eVOy8eu)Xi7M)SF& zeF^z*SGoA3qaAh~h6*LZZfFT* zT^K%e^K(WBX0Og@0pxYiz7!chjeJrIw)|?B3Vq7wnXVKiAnFtZ6xRzb$wI?=ixsql zGQG5~kN)bT)ZS~v=4OmrJ%-d6!H~+-c~>3Cf-G&w+Ae6VONY%oXzyT0$bkEF`CB-` zFb-QA@k2RJCzRu^s|7>QmGoXGY2v8wmE-^WHTucOXEJWz-SP5#~u9d1RpmLnf%4K%+5FW(#`nXKcr0x`xV8pDts7r z2fcn__+aDPZBCukKxO5d=Ry-{?NQ*5V)bYf?oxN9&W_24HcfiAVE~mDYGv>5FV)}< zwTErf3KZki8Eem{XlEhGcySEjGt5lq; zn9U?`H8C#s+4y$k=A~z*m)NL3v3sa+&gf$|`Pi)3jESDs) z6DS@IfrlL-?3Fn8e12xQH2lYOMYYn6cj>B!EViK445xbVc!ul<@34OZx=VlPizK8L zRn$8Bdsk}1htN5u8V}mrK|kUaCM(xOmvWu!pcpr;_qnuQ7!VA1Hm5JR;kUn!4=exG!w(kcr_s!DBV?YEkoB_FWXys*WsKGO>m6 z1HYLK!ff)MXg&)&XuqXKfixB_catiCs|1md=>!e|+4nW3J-%d?^b2mKwkVZ+Ozz`V zGBzq{jWN%9+7weEM%Vrk*v&z`bu0`6^>^|p0f?WF$yOLjQfm>x;$}}@PQbU2&S_L! zcl6rPEixN-+GoB_(S~jGdKkU_IdwGo=!C-UhQjScf9$kxr!j73-|V&@Lf@#4?zF$A z`^nYOa7rKrI*DEOwcLf~VslkTZXdm$f>p7q;h_D2Jni0LdcTZL+j(SeOS zpQe*xw{XL&IgHm=R_wN-=YxR3jvjsNkJyG92}=8v<~>;Wwlj-Ru9F-K+6&8oU(s%V zXRmZcd}m@&^e_4i1-=JEn_QS$P?{& zy9SQr>h@^R-pexR?Y2&Sjy{n+0yTS;v}(mcD>?#6Q7|;7@!*q^{0_>8o^pD@j<8J> zlE6`>0(o0Ao8qufCqu>nis8ZvR?ID345U$@SsV`??UEgtfKFGO>DW5TT1j*_q-WcA zzfYzX>{im;ZGQoc^q0-A{AAPqDtVj>dAqkaV2b_;!l#hYt)Edw+did?(v{M>nQc9W zyC0audXd)51Zkav*7-~8E)Fm+O}gimn6zA*9T3+}P#oLKp{#V%N2B_dR&l)9#K?mJ zcCUf%amMJhuazMj-mF?4-U2<_q6X%BvSAj+8frzm6`ctJ5@EO<*NK5S8O5xJCEhr_ zrD7vS=X&N7@~#e=SjuS(G1Hh(F&VRR#pJBx_!uP zG_7sI&#I1MvC#ISKOk{JjrK(>xj9zTHxbviI3_q*+|EVqda>{ZCJhhyGFkKGnDbpp zH-iuN;Pe#b{^g3*X1C~mCcANN(b1;0+kbpni*6%Cw;7^?L>EAOT6FhFwgnrN=r-DG z*=i%YEIp-ia)r+X-P%3mwi}b>H5L^?UUAjfgG7k2;;RwwQ(pi6Eb`KRSmcC~J(uhkE z?kZ{-DM>GpU2K&tqIR^4n*UtX{0_Hpmx{ANgN<@v%IRE8nLlL#cl6yRyURY2e7a2b z28b$g4xwp(Ui3*#0WH{Ol({0`{uj3S<-Qp;k<%CHNST=*m36B50Xj=-s1tohysZVD zYM$t{$DmS?wZ|;K=5o%=w*6<$)GVa6X}J9rtW0zy%l>jKG8`)2WgpxVqXN-szpfEO zo|wC5O)=ybws(X^$)sr*bKfb^ zj)zp+SsvQeZjS?RuC`}EHy|jkQ1mM0S@xwo(5OT6v;h9}TL+ot2x6y34tYYgQ8l%z zrFayRGy}LgW;a^fiPoZL7VLJ)eU3#y9aL*OrL_qu(S|>YdPyp@VYgk2mb==J>$E}E zb1p9pkBTh&%{N&`vX}NxNXFYsdror1ytE#2X?iZEt*TxnqAdHPmqbJu;q4f3FmN1T zZvwf0ETTKn{M~3in!W%X4zaqEZDZc%1v`}(cJDu3QW*8!OZVMW?^%{f`D1bPr5seh z)1CpwwVBLRHU*~QLbvf!XfDHsv?0r3+ibkTtiVLMH(u3XDMmS+v9*kvloMwXk$d$% zHY#~0xf#7Flki5*nWR9n#Z3KFk!z!^8U)_eOp?n9m`wW5B;1Pw198>Z+jonoor&rU z6#xI}Orod#+0fHI=W>@@)K4BqC%8q@BY%7&u}3yTs_ph)|D}6mJ$fYBEqX$-#hjJR zl&hKBA7^hWx2T53S$f5|MP~uy;}*^QweS*GqkWe2SgfYo5%05eK9gJI>@&J{AO^op zmUh@LaujjX;TD@W=mthELgdr!K&Sx|iW@M^m$yUYFb<8o?UnC|2&mbe_V53~$TQlD zW1^k*P`*wmwxS~>&Lp&X3kMCTTkLZvK`CqQZgz*g_MdnV{{Aj0RFY{gZHxVDjB41I zEou_jV&@>M*s-gOkB|i}VWS#RF-Gi#;hjTPKg;(zs2*>1Ns*`oJPo8w=)3V@^N`gW zWhID2r^>LUf6#7UBKMfQ;TXS^Pu zt%Qv^ohw(E`GyFHdnzcoIYnj81mF|u)B;&TqWa>@?msF%ciJbgG35ViTo`{riuoe= zQ9Cd@?c>o8h0V_iz7PsgDDDy3B>kh>7m@oNMa}Qg`Dv2zhS(cL&F|XRLgn|@k&~j9 zEC2`;(>!itBD`lE)zc<$-?tFhUz5y26b!= zky&=nFBMWx{D;-Ve^5>QhdJ>hrBhQbRLd3@!*jb8er(bk2+(u0{|Y-_-I)s}yTD|p zeK970&$=yFg}iPO5Pr3g(RkWNMbI_hB_s$Mnle9wK z($MDZKM<0##GUpT9AaXAv3E(aeWp$7L?Mwe*L)8}J<%BnyX{|K$SNUq+K+Mg@|Bm^ zCN1O?b1t|CiS(ZY88Y$h{+^Wc4C1hcN~ZV)n2_BY*L{vrbG}!+tJnRPS+3 z^L^MXT5o1&()4UbCnt|gF2i2k%T_WM*p96Oe`#h$C2-RWApHH`IggI1esyG1>>$8eO&&5~KflPXcXG$Nixy>lrF^>xE;en47QMoeJC`$tZJW>)1+z#MMx(=JCYW{K7{98r%RIyI` zPjZi0&aC-c*agxvsHfL8|BHJ0X0~ZJLq_6#Bs>K(E6}(E-<>htajNPLtS&hZ zVRf11-51aq$?xjsP+Wa9XfCVoS}l&`YVl{X)0DhgoQe9qSBqa)dsEJy{!3)vEZ1V~ zEJnR9L+ZV75*EfQ7F@fR?8SC_Ck%Wq3#TE94`*f5U&N>vPIu8wmo2!FoFk}P{tKta zo@Li2ES&DxPGoFd_737&vpH~F)~m!Ja!j_{g>nz$=;LR9Q#69cbEn(SzVq*F5OLmqw!h^@7Pw;I z?zsY_A+@Wl@ zbENB3(`U)OalwD|Pn6hfT<`^0SIK&qjZE;uZEnq>fpL#|TH`$O=EH0o8hNeZiKTdZ zfhQB< z)kE>$#ip5>NR{nW&m1u>&^rlRQ!KTXQiyFy#kQ_c{g9^}nh5H3#APJ9SJkLptt(z) zYPE!5E4hS7x8I`61*9_PSTo4#!kH8kj5Ob9;7n{@(GU$ycq3~xxa!W4ln2=B zv=_m2e_rk|O`U7@K9m7@Nw?2@lR+Hyq&sbj*1_&zob+ggQ`oG znbHc^o88IJe-GMkKJ|aYt4or+w^w%$%#XKMcQtg;!>b$4VJsc3H|{@^S9j&sL~W$c z)d=zF=OPq+KKc=2g?|L)m%e+}F|1wov$9F}YQZ^dSSMZ;mEDdg-V(*`bLlV0C3^co zNu_$eP3}1&QDiH|$gMPT*u7{?!=oBJcV~v{meK&0%3)_j>x_Lw#KJaLw9yiZj35&84XG%zvX*S3#EpgeV+DeMOS_ymI zlV{@7fo&+kvL|t!t2WrtB$&AQvP7iHh%;wHl&_uhXA7&Ujo?@Y)GPKp^`sNY zAsW8xKv7~F?Gd(I*3m5Ii@F>nDr#8>S)sf?@Ogj~1XJ(|U&+dF%0ia2Bnwq1CUR_V z9nUmMqM1thL54))j9S8{7*0AckCJC`$FOBC^0B2U`W8$~MaRwUjGxtDBvZw3qIJcY z`fdT4~{*)T&L~tZ`szf3{WZYq=yifL+QRpM( zUXAp1(B{qdmqn>ef_b_C8R?s4^sW)*$k!wNk`GZH2kgy6W8AbhZnk^=Dag(C4-aCb zzbqp?yaqhCVVJk!nHP=9X1fhkI2CKuKJ*&+J`m zJQif@(Y?ee3t7G;Sva~;ofb1j_k1=@aK@6M=h&*F42d|0cd_gHRFa$+K?>qyBE8_V;gV`F3a zJ!dR)=DX!U8@0W81zOs;66X`i?9uX50j*dfe8|1{7LfS1E8 z0A&^^`=QXcEtSdWzB&MW@lAj!Nsvr-wunXI@?=&L?7tF4wA)ww6-Dsd(B6t@v%iI8 zu!~IODuUmJ_Li^RK6t>Lub^csliSP45c(G_YO}BBNMW-sU>&z~P&E1}QLlx!+5O{~ zGKHUj!o@~=Tg?G7+?5U7!>zDpAFDa#$HHWn{X`I8p)mZ_gJdhdFWCu5J<*I!dK@LHplZp8?uQ zD5;DrxqP07UQh&--U)n{JsDNmk30r!;$GNSSca=dUSr(6@%P#NoK@ndI(|+%8s_$M zZW0;BY-7g1jh_?0?uJFi+FMpUETJVdsd zRif=(_5$#>`j3rg?Jq)KI&Wn&(KO*Y_O8#-3kY~l{7{tSD_ZC^y~ZD^C)XL+Be4Z6-7ENHIE?ksA)DI41%qmR$YvWi+S z$|Ptm&+aM$(JpF^W*;nQo}ay&%hjTD{ynAnlfveI6g>0q)WYUH_766pvfKU|Jt^;x zJeN>CeV*R@&nZ2}K$6=71(WvIzf;gMKO0(9m7Q7CQl34$2zOaUEz#_eMJ+dF<7rn% z{&szCqS=x_>R{XGEURGE;hyLTzp!xn;gC~#q|K`R={TpcC6$E6zay)hpa@;(!Jaq< z2Przz7i<@KVzV-UGiw>9M5FbUiyEU9Sv95A6&Li!q3+?Tit37*Xu}0rR+a>&8!)}H zp{}a*`mEZ;S@jiFrP0dTn$dj(Yqn0P%FeQuRg^_*>o2$V<6jUhrS^gPxu=oY`{tzu`&X zRLu!ct8&200B<@23j1_VPZj771Fi+!47dsKw}86Ccv|>!@LV{Jm3Mqselqf1z;6m6mTuzt$>>V?*-fixEb&O;2yw?49j{0a1`Jnz#_m;0IL9x!?T>V zfTIC70Zs?p1y~Pw0PsG*3>+!=2;eBdy?{l4Zvj>Tege1_@L1T=O@LzncL6R2JOFq* zUF)qw4qygOah(M?3UD4^5nvr) z72uz5%!k z@DShuz)t`(a7yfPn9N2276TRmE(NRtTnV@q@Ls@8fR6+20(=(m0N`H044f+a4&W%j z0hpkR0E+;t0B;3c3-~bLCcwu5cL8n#JOKDIU?gD%S@BrYC05foE?LfGPqW~uY76IM{7zKO|@Ls^z0UrlE?pHlMdjKZ_9s*nr zcnnUt{RZH8z(as@08jlj@&m2{d=PLu;8TDn|E8yBFJJ-S$ADi4%*MFw1Y8YRyc>K1 z-T=4@umkV_VA@OI6Q||g4>%ss2Al&p5))7qumkWxz~eBbKLvOd;9kHh;7Fz6>&9h( z*?`{$oDO(1{LL!B?*gs`dL>e3_GQBFk35$vndaa6aG*cy2xEinn@T_-`5AfOp$d`rxBl1_|1DpdmAMk0wn*iSdd=PNbyT}K41K>Wu zZvdv9W?8!cvjNZg8}tG2LBJ}&#{t&@)*Xa=0duhxu?O&5fQJCDK7@Kthu!!9^#Xng z%lY|$d$5|+8}x#q_g~qpu-H~gnfhrdO1+jL5J8p>8pWX4Ei}f^bNqbf&NG$J-jNF^>^Sm z{`8P_K_VS-()Zz4b9%@+7cdRKME=qszjdIm2PuxO%g+Wq|BR6QKbkl?(o6e6p98vI z{pFzF3Ho`7Ui&dZAAT z{eoWT<)9bzLSGH~RiI-UjF-Qb&j!$!f=*d`$-e{i)u5l@L*EDb#$NKLr9y{5_v@c* z&<}#{r$5s{Kk-a|{>nk02)bYSt3h7`x?lMlKwsNS`5mBd1pN%Z_Jh6)beKy|`K3Xq z`$6~9ziiMy?1erZ^z^g*^Ou8u9O!=iyBhS7p!@aj2GFO2?$^E!(3gVl$NxUimx1nA ze_GJ8)_@K-+EYH+px*;J+z3zlbkHB|gET^cz6;Z9nMu^g`!9Ui&`iaBDo}w;J^ApifMsYx}za^p8N# zN~9xBo#_Dm#F4$UAM}x+`?Zhj$FZRMwJ#g=%X*>n%+ONM{p4Q`dR;H{)u4X`bU*oQ z0DT?ke)D4o=+A=gH@^3Q{s!m+eB_sg_3Hu9ecKOu+ByF7$8^vy2Hh`zIp|mQLSGGf zHRyiw+W`7apwkyh!!L3E?f|_Fbl>)azPXq3)3E;D)=U0u&|d?6s!#pXLC-qZUw_L% zzY6p$pZu#qUk19LecAx}8qodvuLJaZK=+gXKF}Wp-FN;+!TWm2pAGuQz0jwFe$09P z{ZkJ5NYMTIXEo>rp!@be=vRU6H$FN*uj?iMKG46?OZ{mB;n#!i*T31IcY*F_pQeL; z+$jJ4EeCxf=zjgX8uS9t!KSBvZvcHZ=zjg%0s5Cf_v_z%pl|3Ue;W30p6Z334f-C? zPxs+(I_MvOKG=s|4tm;XfBjeu`f$+w^kW0)=Y#H7eh27b(69EXe;?=%fqtF`J)1b} zKfMV06^ZmqSEa3m@5I1)W)#w$kQ1^(xR0|#dY&o*{fnUc>1h?{4WRq!(OS?S1wAXV ze8gG*CeU95eTol#7w7}W`1=V5K+gf)Pfi&S@EXwlS^dEul$H(KK?*+ZD{@ROl=jHkH@iFLYhlH$)65E3~<$cl+?9+gb?Wy?w zMx1&x8T2ZY-$eRNx1nRWw#K?RK_2Buw-4#gNi0X}&1%pGj}2LciFCxt#|F^nfgbXp zlaCJ2*MWXF>1+J?;6CTM<3iSz9_6r}4D1Np1bWDW&U!|H{uJo{Mf!dI^~^!KdE-OY zY>#qSPZab=K@WM*Si^t_rSAYZVK}bQ!}SGo))|x_4daT>8v(%M5ru)c0-F&2* zbwSA5&U8a>_Z%NAZ#B{lyHJm#v;EU?-}?@v+syLDd8ebi_aNN`ll|w*L!e&?dJfCM z&l$J4B|pbtKm2CUMK22c>zRyn3oi24i}|3h2Hj6DZUX%=(Eaq{LC{|V-D}-TKA!?T zaIqdI<^Fu`L%NTU?rh{q!_VDb$}0_y^=X&*^O+5L5$JyN&UDaQLHFac9Q4hgKg_yT zdh^NltVO!np^(M@g&xP}%vDFN4YsD;2~8!xeEx9R)R6Th+{dLuoOC{ycpUWWeCT{$ zaq2Yh_L2`i$G8miD-!d&#sTY@jC2nmT_`b~w(Ijje+6_uK5hbi`gDIj9t6D>^zy{= z6Zq&ry5Aw4A0PWbKRWEsN7`}lk3sj+Q_6$SWxfx3U-BqIy2D84$43?D`7`|O+*;7* zf$nGLHi3Qz=w5yU`P>EiKF}L+pZ4JGzV_x2(p`ON$Xdj78@jb>#O&S2~v-WP`Q~=|Y9tj=t)j z?hw*#K{~N-ws$&dKc0Ktf0@7Cm<;+>(7p6V+7G%7x|e+;zc+zCe5SSwX;|`!D2Q&swDGm=m&U63aoH{k948v2*?F z*#-K$pg+udn*8fIgmi85yz3#q$Kd(tC!kjbP|jvoIhVz+2PY%l(yRUXnGbsQH6iP( z;b+B_-0}+yDR1P zqZSVit?GAYYHQlspp(+FdU^usq2Q&~mw?25|53qeYi+=ZEVu4w1hmu>0z<9|E=v7+ z;G#VN>kzT%x)ly>W^i`uR|8}5Z&zQ5qxA#^k4M_-;F^H-Jza46xxqrKPE~UBdBNWX zto-1{fK_u$$1S!VHIgt)k;l{tfpce`Wm*3fIB|Qx`Z<%lA2H*Xv$zh@TGt?BY2f{Meu=ubx$Dp z!xW4|5bjOk?KgS5kC#5`dO+8;Ep5arY1W5n$PweQCy;po5SIoQShE57z8R$Yuarr_ zf25)pV25rB-W9Oc1cGk|tUm>UPo`QwNew;|w4O-|?n$$LmB#xggTdB*R_js0^+#C` z9L4+F`vqS~w_fQN#EWTf%KdNCgWnloeW!nLOMmM}{dxbb0l{w!wr(95+>v2@dtmVK zf!2Qy4B`c?TQh>M53)K31>YKCy)`)a;b7~%!MuNcNbtu)tsiFwpUbqiW%B+9LxZ0T zvpyLbynC2+$1vXib6D`XW2_gC4*uzA>*b?)zwMYCzLjPD;n?6S$60?rHi#E<{w?>v zJuV3RuH$)q`}iOxqEC(wzBAmqdw39&^*4v}{x8Fc|LF-=BF)AVgU^nzwwxGz`9$kC za{r4F!P`%^)|?dl?n%}|C-J`Lq~PyQwf=B&@SCSv`%e!3`V{M5CkIuy^ z)3@#@6+enZgw2{hKt;s|=j}ip$5KcFwg}<^wpvtZTPRSoX|2&W^zRt@DIjZP-sTSo z3C7^lbv#|LaGNyjuc4_Quf0io*7Xkw1#*_S;RCPXNqnBB>+JvIVC0<(J?r>D_tQ~> zLP9@I!?QG;sNoC^uhMX_hRZa(UBmk|{H}&iX!yK_FKhUgh978n)L>n|hG%IwQNtM; zUZo*CZQ*yBhPP{YzlK6|T`rwA?Sib4C38!{Sw)pKjZNodjn5gEGd}B@C1qu!$4ADE zUQ}ONQ??Y}4lJu|z_$Zgc@xG?I)B^(tG1zT`4T)cKv_y8PKh<9v7vrULw(tpy3(@i@NGlGn5lCMi>8lR!pcXF&B@El88-$zSeMS4 zn>D2*Yi!QgaXEQbVC7e(T8^>wz*le$ynqYCE?uvIrNE^G(jjOoC8ghm1Zn-aAC;2c z56&`ZN3m%sDZyC)scFH=nkZ;NS@Ng%1Gx_P;5=LcC)~zs|J2P3L%6{!M_=G|6xy9) zMR2ECd5%~F(=%Vx$=3jqz*Z%lf11hb+jpK3i zN5-sy>3ik+2CiBN8Ke#xfyivr;Mo~uA;cnc0tv{Y0;r;2 z&?zGYjHbspfhY$C<^neWxOBxGlMEb!wvf9F#pIwspzvrGHTX1eJmlEG*%^#w2Bir@ zV+CH4F*yS%7T}j+QT&0xzXlJ&H2}$TN)339FAPgPz?jVHpJGO3YP%Ik&CI#@w2OwRf|W*%7rm1uUMS3RQU+~Q;hDXt_lQBOuhEK)S=%>t$jIl zXnHiYc5>>_#i_NIr4F8a&42H>C*=$al7S+O;lBF&62Ffnuf|HH5KJqG$Rd5YwM$4C=wH_u#>TDX=%MBWib`)-n1i~ zQ7USd)mf$WOUm5VTP(Fp-VuC(R*CP=>g!9d$20&tY&BHgP=PEiJibA5mmxC%Q$?aI zf0>o3WMzdk!~~OW?jO*&RBL&=zKsEsajr%Mthwg)E(djOEWNr*&Nav6y2HuEK@t~| zb6sh2-KG-;tod1Vs})+NDWP?%XGX@L(ZcNA-P)CG!2tLPQ&%p z_?FMgX^7S{}(6X{fMN?TtT{I$JCt5lD^05IdDDb5+Bu6c!)s|)kK2E%6{?)=e|kdUG}zgcGp5|_mMlYw*RUz-vF2G68* z{%ncGE{XX$ia6C9{x_$D5aW7HfVEQrXT5|;S%N9&3dHa!QLV{u)^$y(DjjD>2J*;Y z@~ar$JHyRD{7inc?%S;M+nT_9l)cGs>%et7f1S=xzR9QIU!yIWJj&AKch;S7bQp3KNRppv zKh3i{zgfrT>-=WjOa9@rIrW?ToE9h(EiTKfe|y)|g@z7a9XX<^2%sW;7#QsXm zzds>=md>B0^CzZHj2}dPirDaP_B}@G{JY5O&KPii4Q_%;!OLkyB8|b-3p9k z;jWP7y65dMU4L!@-qQIeCE!hQ29EH_KS}3LP=9GFi!}LjbpC{DtdP#XFoBRLkBfZr zuh;px0pJd%UW2>bCx4I5Kh_Lvogp#*7k%>Q(J&&6OURHAwU+qgFTYRaKP4eULey&T z$-m})m4BWB&NWegR_gqT{okeYADd92i5l3V^E(yjn}2*=-Ee%kgUM%b_xt33f1OHE zY!Ygin13knj_$kCPUFOez;969At5Syn9#+Nd?P0ogtk)@JQpC0pOK%L7dg#))t}#? z@(mcLpt&a2Z}46)72M^ggpx?9m~G~G;!~}tCq51SV8}`gsqp+Zd*Y9B_UGMsQsIRd z|12J#ZW+HT9^cF-i_&@RZ3}=5n9zV$OSK{%5E#rs8;qjgtFRyrFOATQ@P)I?gilXgvOS%gm4Q z_~DkB_u}y;lOM#+6Dzw|Kkl#7~*FU8IL<3dBf;e?oZ#YIS!ttl5m-=#06b1LNwOPDeegF*Imz~6HSk#;;~lU4;Cs0t@_ry|qI?;i)Odcc!B8kye0QPo ze2U~1d)vSd)Aw$$Rj23oRt)FK z6{o#vJiqs1D3_~c&BY|mcJX@{2E*qq8qe>882(GH_>N2C`My1aDgRxK=XYWZ>Wcm8 zG;cmjfoHw^&X?g-x#HbPjpz5L49CdTvVN}d{9cY>id?bA3954V{R+ds@zou223FqrlZ9iaH( zcgPGAr}6y0kHL)7 z3gEr^cePH>^L!W#pHFH$zt3d2Qm&Tuca7)y2@IxQeyc0vMb8Tcf3n8&J5C05#rFyt z&vObGjQ)IEmrTk_ks+Yb{uuGM&+Gr%xau9zn^p64eq znDnn`Jii}c;5P&e=b_CibUJTdC746peQ3>V$Rpa^H9)qz1SHOX0 zIXn-D!SM4F;8|~CIIPo`jtmLOq~|w-EQjZ+Fc`T_(s+Is#4tv#mUW}X^E+n-b;Y?x zzz@ZrSwE%;)v|u3)APF^2J@Whb>O}D{6MGYIVKDj$Q9?l9jo}{cias0%Nf3?@gwzk zH+J|Djpui445r^-(|DdE!~k<@&*NY)`tX9r^BgsX5pu=5|0cbjkBr=o$Hox(=eZLMr^^-Rh-f^| z!(li_u9h`ZG}OI!xXvVoC)B)#_2|#p63xU7=E76cz&nKVCsDb_@VTY?p`Q( zz7)m~I9b)pbDeUzzz^>vDJ=41EVMhqC9627bP{4SJ1UE!B$JkN1rF#0eE9l>%gn;Ih8`jT9M z(|Den$bbab!RUDw@R_c0Cq!IE>GV9$i^0g} zO5nZ5dzBCVIb9CF=Vf?IuK0FL<9S{dgOT&tGZmlwo|xfbx#C`_hqP&EB2Q(p68J=nDXz{ zc%J9NaGqST=Y6g!hvxw?79Ao@>OQt~ftV z;~$@@FxP>`@FwtVSMJ~tqfQt-T9wap85xZIX#?I%4nNfCYfcX_xw8-OTaD*AFAUq| zYFTez!7m4%dcyMu8BD$FHJ<0* zFqnD&Pa4nju^5bfo{+1`;W>p2MsH_m{KXn?E9Ts(hrba zmi0@G->&s!qQ;+|r}*Ld1Pq3s`5Mpj5g3d-*J(V@Ic0#@CHzR^c|Huo!*T_WV^#S) z7mmS{f04%X+ye$=m(T<}{TY6j&cJWe8CD2B`T6E5UCz4GLri9^mn-&fHJ;~MFc|*# zYCONgXMk8F9MX86zsO+ZY~Cy9E2ez46t9?f)==YK%^%bR6>hqJb`e;M6 z5&x!y?>0}HbH(gPQDMoPNCdIzak0y$xk%-;ktJ2Ni%^KXeJcNS18 zO_*en5UDJ0LTqB5rCw<*Z>+Aq-qaJGHC?KiF?-78;fRT`8gn13MP7B4TA~#Vcxk?_ z&Wc<;J}<)dL@UeW4eQF%s>&PWzlcOiYsw?#NLb%k#{Vi3$*rtJ`jTi-K3>MIm3MC= zmljRB^Oq7&6WDk&^!C@IAy9L^hye_2wtw4&^~NL58mxVm^II^gPAB~cKr zl7DIvSyb9k5z8=rYgrE@yL>M3+V?>g#Lk!Eq>b zX;IhFva-R#7fIN^&xm8<`X1E4dq!J7L<`aP{n&rX6F)y4$e`A8jo!tuHr? zcjeA=gfNcvi4ew9T7{oetEC~P(X&b#rlGeJ`^c?cjz;HKmo`QCErZq$S0{|CsaPI? z4XQ1Z4u~};9G|Hqnje|Yaa-GWbA0+RybS$tKIJkiRt?&KMaL&Wu4Q zS-cAC5mxLfLNQJ=p>$ffnT>&`gcmafVxE#@7^BCTivLiA<5^j~}S5snR+|?W9 zx*UgdW6oTiXN+`ZQ<&D&t(L`3KG8JOt6rv|FTL?IL!t^Y45vg&CW+j8HMJ8KRV=Bj zQPS~fL}>}t&-7o?M5MG+k^AT+ABJ7}?HXN(=^qgw6$R)xAtLIb^&ex`}g3~@3DX%I{wy~~~y!5=!VXwM{mc(sBYAP`Qx!Cs{ zBjH7}XU-~#cuk)0hiDs0rfG@9#=F=9SINfN7zanE9R8+Qe>f=+rno4s_W4Rmca&Ri zI6o^L$cw~uz{7KLaj1Ir0 z6dt;GOQ8@vBYd3}!S~wiNDRU8YK~2slOd$a+6M6&#}~p)LH{Q!mH3yDYWhOTzwB!m z`i%K7ow6_-wMAh)+xmO1d6S?4ODdv~Idw57Kn=kB=~KfsFkTgTd1Y9WL@Va-AMbIp zcJwk{qd1`|IXDTD`WY(e;aaGT=(wbirmp&>e7#OIQP*C6y}z~v{1=L*x^kTg*G zDA`BjwHKva`v}I@k&Ym5PBDP;%mA7QnaH5W0BEX=CaaQ*;{>g6lt00fu327PY?g~Y z3rcvR35K~r^|Z5IjA;y4Z}Fa^EIGsoyMpI)$J*pYfL0R!2(9%J6SeokcdjQC{@)PNwd$2 zT+?ShMNks0YAB?bqrPYOHb0T5L&136C+a}lS9`iC>73!sc z+aY!aoBwPW>yl5mLX0VD;-nIPT8`+VzkjV(F|ypkri7oC`k6WhuZN?UMt`e{8Glk) zZH?MM9pce9DCtfqU<-I1^}`y`q!z1(!q2`(K=w6!JC ziZ5fI-YrW^rxi6^>qIIS7tU*_FNs1oDjV=bptQaa1|HUBS!q>cMR-woA~w#iudAR^ zEGop#VB#zRRG5s?&2lfxKaG#-?+CaxEjM*&afK87mg>l=zzG`qaIyT9N6vfe?NO?nTWGS5MDjXr@Wp7FvTy{onQ2Ng=jt<5T5Er+A-X#Q>AUjc`2}&yV1t9Q+7*CT*S%I|nK9sazjp&P;i| z49i%@pxv>?8JFs_4A+?dE#_Gn7UQ8PEp<;ku}Y2P{ntHxFKMB1u@P#tFC1IQmPFNq zL)X|y+Ka@Fqf4p0Y^rxHGlMu| zE`B#(7QUaUS-zVK9oqQT-A<+x>@v!CVi)BETXZ>3hgzg|Ae z-2FLr2deyR8)dPn$o<6C5oO+3v%@O8tMIWRI0!EGbXn#ycTZzXx^!4gEHK97xr9sJ z8GH!TT2SrV3mx^~?*4PI-~U?QeJ)R2KuWf#fm> z&g1;pyAqD5oPANZ)lPP5;@`S(`ysB%^_-rNR{GUv`{ncZX5Iacd*wh;o{nQMEm9(n z6rgBcuL32`Z65C9k#wa?EU`Xu8#n#x5K!mS%T~6_@Rn@5oVLJET?!GzuJLB-W zO<^@wh0rThYhFa~5<*`Z*Y~n0v3W|2rhSmT*J>rc+-@2;tpbMiA3yyDeo z_xO(jj02@=@}`Ju^UiNLpeRp&E9oJq%xp)%n@a}XBZDjIghjQBPrjECDpJX4r{jq)Yo`)vE?WZl^iO=t`8^fnu#jQ zJ6fK~>{_q5O4j;kwu)jDrMR-$jA7t-ywd%#RAh#}OKcw^A!)3ejix(Axt-^j`Z}tm zo(fmUnZjyg;y+#K$Jj1*`M~++Jx;Wxj4x3p4RF3TRYFPhVqDb<)3KAHtTFo&S<=)L zsl&O=wKaHqJbHa(S#E-eCrs2)yTy8(OT+n2nOPMw` zQv4IfMB%$pgI@m+1&*%tT53QM8ngxWRxd{dVp`R!fmQpt4Qkod>w6fU;!1c($A?fc z@wgPz0Q;0%n!tv~hjO{rS)y3f3-?PQm<gzk=Cad; vec; - vec.push_back(att1); - vec.push_back(att2);*/ - - Attribute att3("name", "VARCHAR(20)", true); - att3.addRow("Fry"); - att3.addRow("Bender"); - att3.addRow("Leela"); - att3.addRow("Zoidberg"); + vector v; + v.push_back(att1); + v.push_back(att2); + v.push_back(att3); - Attribute att4("age", "INTEGER", false); - att4.addRow("22"); - att4.addRow("5"); - att4.addRow("22"); - att4.addRow("50"); + Relation r("AltFood", v); + //r.display(); - vector vec2; - vec2.push_back(att3); - vec2.push_back(att4); - - //beginning testing of core DB functions - cout << "\a"; - engine.createTable("table1", vec2); - cout << "\a"; - //engine.createTable("table2", vec); - engine.showTable(engine.getTableFromName("table1")); - - cout << "\n\n"; - - cout << "\a"; - - /*Attribute att5("name", "VARCHAR(20)", true); - att5.addRow("Yrf"); - att5.addRow("Redneb"); - att5.addRow("Aleel"); - att5.addRow("Grebdoiz"); - - cout << "\a"; - - Attribute att6("age", "INTEGER", false); - att6.addRow("44"); - att6.addRow("10"); - att6.addRow("44"); - att6.addRow("100"); - - vector vec3; - vec3.push_back(att5); - vec3.push_back(att6); - - engine.createTable("table3", vec3);*/ - - //cout << "\n"; - //cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table2")); - //cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); - //cout << "\n"; - - //engine.project((engine.getTableFromName("table1")), "name"); - - /*vector cmds; - cmds.push_back("CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind);"); - cmds.push_back("SHOW animals;"); - - engine.saveToFile(cmds);*/ - - vector t; - t.push_back("Professor"); - t.push_back("180"); - - //engine.insertTuple((engine.getTableFromName("table1")), t); - //engine.deleteTuple((engine.getTableFromName("table1")), 2); - - cout << "\n\n"; - engine.showTable((engine.getTableFromName("table1"))); + engine.createTable("Food", v); + engine.createTable(r); + engine.createTable("Sadness"); + //vector rs = engine.getRelations(); + Relation r2 = engine.getTableFromName("Food"); + r2.display(); } From 58e37d41c3a69e379e25b2c358e237ffdabb215f Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 17 Sep 2015 17:20:01 -0500 Subject: [PATCH 087/186] removed LParser --- LParser.cpp | 50 -------------------------------------------------- 1 file changed, 50 deletions(-) delete mode 100755 LParser.cpp diff --git a/LParser.cpp b/LParser.cpp deleted file mode 100755 index 2a17ee5..0000000 --- a/LParser.cpp +++ /dev/null @@ -1,50 +0,0 @@ -// Lexical Parser -// Test file - -#include -#include "DBEngine.h" - -using namespace std; - -int digit(char c) -{ - if(isdigit(c)) - { - return atoi(c); - } - return 0; -} - -char alpha(char c) -{ - toupper(c); - string a = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; - int x = 0; - while(x != a.length()) - { - if(c == a[x]) - { - return c; - } - x++; - } - return "?"; -} - -char space(char c) -{ - if(c == " ") - { - return c; - } - return "?"; -} - -char arnold(char c) -{ - if(c == ";") - { - return c; - } - return "?"; -} \ No newline at end of file From 684cf1f81130f6e7443d90c104dd50e43dee8ca7 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 17 Sep 2015 18:30:45 -0500 Subject: [PATCH 088/186] Updated DBEngine functions --- Attribute.cpp | 57 ++++++++++++++++++++++++++++++++++++++++ Attribute.h | 44 ++++++++----------------------- DBEngine.cpp | 70 ++++++++++++++++++++++++++++++++++++++++++++++++++ DBEngine.h | 60 ++++++++++++------------------------------- Relation.cpp | 44 +++++++++++++++++++++++++++++++ Relation.h | 56 ++++++++-------------------------------- a.out | Bin 63265 -> 0 bytes test.cpp | 6 +++++ 8 files changed, 213 insertions(+), 124 deletions(-) create mode 100755 Attribute.cpp create mode 100755 DBEngine.cpp create mode 100755 Relation.cpp delete mode 100755 a.out diff --git a/Attribute.cpp b/Attribute.cpp new file mode 100755 index 0000000..9a66043 --- /dev/null +++ b/Attribute.cpp @@ -0,0 +1,57 @@ +#include +#include +#include "Attribute.h" + +Attribute::Attribute(string n, string t, bool k){ + name = n; + type = t; + key = k; + size = 0; +} + +void Attribute::addCell(string v){ + values.push_back(v); + size++; +} + +string Attribute::operator[](int i){ + return values[i]; +} + +vector Attribute::getValues(){ + return values; +} + +string Attribute::getName(){ + return name; +} + +string Attribute::getType(){ + return type; +} + +bool Attribute::isKey(){ + return key; +} + +void Attribute::setName(string s){ + name = s; +} + +//may need to change primary key implementation +int Attribute::getSize(){ + return size; +} + +void Attribute::display(){ + cout << "-------------\n"; + cout << name << "\n" << type << "\n\n"; + + vector::iterator it = values.begin(); + while (it != values.end()){ + cout << *it << "\n"; + it++; + } + + cout << "-------------\n"; +} \ No newline at end of file diff --git a/Attribute.h b/Attribute.h index 084706a..30f10ee 100755 --- a/Attribute.h +++ b/Attribute.h @@ -3,9 +3,6 @@ using namespace std; -//Funtional, might need more functionality - -//template class Attribute{ vector values; string name; @@ -14,35 +11,14 @@ class Attribute{ int size; public: - Attribute(string n, string t, bool k){ - name = n; - type = t; - key = k; - size = 0; - } - - void addCell(string v){ - values.push_back(v); - size++; - } - - string operator[](int i){ return values[i]; } - vector getValues(){ return values; } - string getName(){ return name; } - string getType(){ return type; } - bool isKey(){ return key; } - int getSize(){ return size; } //may need to change primary key implementation - - void display(){ - cout << "-------------\n"; - cout << name << "\n" << type << "\n\n"; - - vector::iterator it = values.begin(); - while (it != values.end()){ - cout << *it << "\n"; - it++; - } - - cout << "-------------\n"; - } + Attribute(string n, string t, bool k); + void addCell(string v); + string operator[](int i); + vector getValues(); + string getName(); + string getType(); + bool isKey(); + int getSize(); + void setName(string s); + void display(); }; diff --git a/DBEngine.cpp b/DBEngine.cpp new file mode 100755 index 0000000..a813c90 --- /dev/null +++ b/DBEngine.cpp @@ -0,0 +1,70 @@ +#include +#include +#include +#include "DBEngine.h" + +DBEngine::DBEngine(){ + size = 0; +} + +void DBEngine::createTable(string n){ + Relation r(n); + tables.push_back(r); + size++; +} + +void DBEngine::createTable(string n, vector a){ + Relation r(n, a); + tables.push_back(r); + size++; +} + +void DBEngine::createTable(Relation r){ + tables.push_back(r); + size++; +} + +vector DBEngine::getRelations(){ + return tables; +} + +Relation DBEngine::getTableFromName(string n){ + //will return first occurence + for(int i = 0; i < tables.size(); i++){ + if (tables[i].getTableName() == n){ + return tables[i]; + } + } +} + +void DBEngine::saveToFile(vector cmds){ + //writes nothing meaningful + ofstream file; + file.open("savefile.db"); + + for(int i = 0; i < cmds.size(); ++i){ + file << cmds[i] << endl; + } + + file.close(); +} + +//assumes that all attribute titles are unique +Relation DBEngine::projection(vector input, Relation r){ + + +// for(int i = 0; i < input.size(); i++) { +// it = find(r.getAttributes().begin(), r.getAttributes().end(), input[i]) + + //if(r[i].getName == input[]) +// } +} +/* +void renameAttribute(vector v, string o, string s){ + for(int i = 0; i < v.size(); ++i){ + if(v[i].getName() == o){ + v[i].setName(s); + } + } +} +*/ diff --git a/DBEngine.h b/DBEngine.h index 792c36b..f2e5e3f 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -4,53 +4,25 @@ #include "Relation.h" //still in progress -class DBEngine { +class DBEngine{ vector tables; int size; public: - DBEngine(){ - size = 0; - } - - void createTable(string n) { - Relation r(n); - tables.push_back(r); - size++; - } - - void createTable(string n, vector a) { - Relation r(n, a); - tables.push_back(r); - size++; - } + DBEngine(); + void createTable(string n); + void createTable(string n, vector a); + void createTable(Relation r); + vector getRelations(); + //void showTable(Relation r); + Relation getTableFromName(string n); + void saveToFile(vector cmds); - void createTable(Relation r){ - tables.push_back(r); - size++; - } - - vector getRelations(){ return tables; } - //void showTable(Relation r){} - - Relation getTableFromName(string n){ - //will return first occurence - for(int i = 0; i < tables.size(); i++){ - if (tables[i].getTableName() == n){ - return tables[i]; - } - } - } - - void saveToFile(vector cmds){ - //writes nothing meaningful - ofstream file; - file.open("savefile.db"); - - for(int i = 0; i < cmds.size(); ++i){ - file << cmds[i] << endl; - } - - file.close(); - } + //operations + //void selection(); + Relation projection(vector input, Relation r); + //void renaming(); + //void setUnion(); + //void setDiff(); + //void crossProduct(); }; diff --git a/Relation.cpp b/Relation.cpp new file mode 100755 index 0000000..09eeaf7 --- /dev/null +++ b/Relation.cpp @@ -0,0 +1,44 @@ +#include +#include +#include "Relation.h" + +Relation::Relation(string n){ + name = n; + size = 0; +} + +Relation::Relation(string n, vector a){ + name = n; + att = a; + size = a.size(); +} + +string Relation::getTableName(){ + return name; +} + +vector Relation::getAttributes(){ + return att; +} + +vector Relation::getAttributeNames(){ + vector temp; + for(int i = 0; i < size; ++i){ + temp.push_back(att[i].getName()); + } + return temp; +} + +int Relation::getSize(){ + return size; +} + +void Relation::display(){ + cout << "--------------------------\n"; + cout << name << "\n"; + for (int i = 0; i < att.size(); ++i){ + att[i].display(); + } + + cout << "--------------------------\n"; +} diff --git a/Relation.h b/Relation.h index a404706..75ef810 100755 --- a/Relation.h +++ b/Relation.h @@ -2,53 +2,17 @@ #include #include "Attribute.h" -//Functional -class Relation { - string name; //The title the user gives it - vector att; //A vector of the columns +class Relation{ + string name; + vector att; int size; public: - Relation(string n) { - name = n; - size = 0; - } - Relation(string n, vector a) { - name = n; - att = a; - size = a.size(); - } - - //addAttribute - - string getTableName() { return name; } - vector getAttributes() { return att; } - int getSize() { return size; } - - //assumes that all attribute titles are unique - void projectQuery(string input) { - cout << "-----------Initiated Query Projection---------" << endl; - for(int i = 0; i < att.size(); i++) { - if(att[i].getName() == input) { - cout << "Column Title: " << input << endl; - for(int j = 0; j < att[i].getSize(); j++) { - cout << att[i].getValues()[j] << endl; - } - - break; - } - else - cout << "Attribute input not valid" << endl; - } - } - - void display() { - cout << "--------------------------\n"; - cout << name << "\n"; - for (int i = 0; i < att.size(); ++i){ - att[i].display(); - } - - cout << "--------------------------\n"; - } + Relation(string n); + Relation(string n, vector a); + string getTableName(); + vector getAttributes(); + vector getAttributeNames(); + int getSize(); + void display(); }; diff --git a/a.out b/a.out deleted file mode 100755 index 1a24079c2b46a44cf732db100bd1f54b509a9514..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63265 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 rs = engine.getRelations(); Relation r2 = engine.getTableFromName("Food"); r2.display(); + + vector v1 = r2.getAttributeNames(); + + for (int i = 0; i < v.size(); ++i){ + cout << v1[i]; + } } From b6af7f18c8da6b2213de394c9f86fc98079aa7a9 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Mon, 21 Sep 2015 16:27:23 -0500 Subject: [PATCH 089/186] insertions done --- Attribute.cpp | 13 ++++++++++++- Attribute.h | 4 +++- DBEngine.cpp | 26 ++++++++++++++++++++------ DBEngine.h | 4 ++-- Relation.cpp | 44 ++++++++++++++++++++++++++++++++++++++++++++ Relation.h | 4 ++++ a.out | Bin 0 -> 91732 bytes test.cpp | 31 +++++++++++++++++++------------ 8 files changed, 104 insertions(+), 22 deletions(-) create mode 100755 a.out diff --git a/Attribute.cpp b/Attribute.cpp index 9a66043..2ecee1c 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -2,6 +2,13 @@ #include #include "Attribute.h" +Attribute::Attribute(){ + name = ""; + type = ""; + key = 0; + size = 0; +} + Attribute::Attribute(string n, string t, bool k){ name = n; type = t; @@ -26,6 +33,10 @@ string Attribute::getName(){ return name; } +void Attribute::setName(string s){ + name = s; +} + string Attribute::getType(){ return type; } @@ -34,7 +45,7 @@ bool Attribute::isKey(){ return key; } -void Attribute::setName(string s){ +void Attribute::rename(string s){ name = s; } diff --git a/Attribute.h b/Attribute.h index f74e650..fa98b14 100755 --- a/Attribute.h +++ b/Attribute.h @@ -11,14 +11,16 @@ class Attribute{ int size; public: + Attribute(); Attribute(string n, string t, bool k); void addCell(string v); string operator[](int i); vector getValues(); string getName(); + void setName(string s); string getType(); bool isKey(); int getSize(); - void setName(string s); + void rename(string s); void display(); }; \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp index a813c90..1e47c4a 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -59,12 +59,26 @@ Relation DBEngine::projection(vector input, Relation r){ //if(r[i].getName == input[]) // } } -/* -void renameAttribute(vector v, string o, string s){ - for(int i = 0; i < v.size(); ++i){ - if(v[i].getName() == o){ - v[i].setName(s); + +//ASAP: TEST ALL OF THIS +void rename(Relation r, vector oldnames, vector newnames){ + if (oldnames.size() != newnames.size()) { + cout << "Failure to rename: number of attributes do not match."; + return; + } + + else if (oldnames != r.getAttributeNames()) { + cout << "Failure to rename: the attributes to be renamed do not exist in the relation."; + return; + } + + else { + Attribute temp; + + for(int i = 0; i < oldnames.size(); ++i){ + temp = r.getAttributeByName(oldnames[i]); + temp.setName(newnames[i]); } } } -*/ + diff --git a/DBEngine.h b/DBEngine.h index f2e5e3f..8533656 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -19,9 +19,9 @@ public: void saveToFile(vector cmds); //operations - //void selection(); + //Relation selection(); Relation projection(vector input, Relation r); - //void renaming(); + void rename(Relation r, vector oldnames, vector newnames); //void setUnion(); //void setDiff(); //void crossProduct(); diff --git a/Relation.cpp b/Relation.cpp index 09eeaf7..300cde1 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -29,6 +29,16 @@ vector Relation::getAttributeNames(){ return temp; } +Attribute Relation::getAttributeByName(string s) { + for(int i = 0; i < size; ++i){ + if (att[i].getName() == s) { + return att[i]; + } + } + + cout << "Failure to return: the requested attribute does not exist."; +} + int Relation::getSize(){ return size; } @@ -42,3 +52,37 @@ void Relation::display(){ cout << "--------------------------\n"; } + +void Relation::insertTuple(vector tuple){ + if (tuple.size() != this->size) { + cout << "Failure to insert: the sizes do not match."; + } + + else { + for (int i = 0; i < att.size(); ++i) { + att[i].addCell(tuple[i]); + } + } +} + +void Relation::insertFromRelation(Relation r){ + if (r.size != this->size) { + cout << "Failure to insert: the sizes do not match."; + return; + } + + else if (this->getAttributeNames() != r.getAttributeNames()) { + cout << "Failure to insert: the attributes do not match."; + return; + } + + else { + vector newAtts = r.getAttributes(); + + for (int i = 0; i < newAtts.size(); ++i) { + for (int j = 0; j < newAtts[i].getSize(); ++j) { + this->att[i].addCell(newAtts[i][j]); + } + } + } +} diff --git a/Relation.h b/Relation.h index 5a25284..beea397 100755 --- a/Relation.h +++ b/Relation.h @@ -13,6 +13,10 @@ public: string getTableName(); vector getAttributes(); vector getAttributeNames(); + Attribute getAttributeByName(string s); int getSize(); void display(); + void insertTuple(vector tuple); //we are assuming they are in order + void insertFromRelation(Relation r); + //void removeTuple(); }; \ No newline at end of file diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..0bb0543c863526d695c22da3b330690c31f64a50 GIT binary patch literal 91732 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 TK~ rs = engine.getRelations(); - Relation r2 = engine.getTableFromName("Food"); - r2.display(); + vector tuple; + tuple.push_back("Omelette"); + tuple.push_back("Fried Rice"); + tuple.push_back("Grouper"); - vector v1 = r2.getAttributeNames(); + r.insertTuple(tuple); + r.display(); - for (int i = 0; i < v.size(); ++i){ - cout << v1[i]; - } + vector o; + vector n; + + o.push_back("Breakfast"); + o.push_back("Lunch"); + o.push_back("Dinner"); + + n.push_back("Tsafkaerb"); + n.push_back("Hcnul"); + n.push_back("Rennid"); + + //engine.rename(r, o, n); } \ No newline at end of file From 8e308110b847aa66930ae292c453159ad1db1305 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Mon, 21 Sep 2015 22:00:02 -0500 Subject: [PATCH 090/186] Projection implemented, correct output, but segfaults --- DBEngine.cpp | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 1e47c4a..eaa3e49 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -52,12 +52,13 @@ void DBEngine::saveToFile(vector cmds){ //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ - -// for(int i = 0; i < input.size(); i++) { -// it = find(r.getAttributes().begin(), r.getAttributes().end(), input[i]) + for(int i = 0; i < input.size(); ++i) { - //if(r[i].getName == input[]) -// } + for(int j = 0; j < r.getSize(); ++j) { + if((r.getAttributes())[j].getName() == input[i]) + (r.getAttributes())[j].display(); + } + } } //ASAP: TEST ALL OF THIS From 94e2844ffa8b2bee1ff4aca1f4016bd03aca8b93 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 22 Sep 2015 00:03:53 -0500 Subject: [PATCH 091/186] Projection is now working correctly, no segfault --- DBEngine.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index eaa3e49..16b6f7a 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -52,13 +52,19 @@ void DBEngine::saveToFile(vector cmds){ //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ + vector v; + string new_name = r.getTableName() + " Projection"; + for(int i = 0; i < input.size(); ++i) { for(int j = 0; j < r.getSize(); ++j) { if((r.getAttributes())[j].getName() == input[i]) - (r.getAttributes())[j].display(); + v.push_back((r.getAttributes())[j]); } } + + Relation temp(new_name, v); + return temp; } //ASAP: TEST ALL OF THIS From 45eb8cf148aef08e7a9212bccbb6f0e98ba780a3 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Tue, 22 Sep 2015 00:05:17 -0500 Subject: [PATCH 092/186] Updated test to prove projection works --- test.cpp | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/test.cpp b/test.cpp index 1c138cb..e6f7261 100755 --- a/test.cpp +++ b/test.cpp @@ -47,5 +47,15 @@ int main() { n.push_back("Hcnul"); n.push_back("Rennid"); + //Projection test + vector projectTest; + projectTest.push_back("Breakfast"); + projectTest.push_back("Dinner"); + + cout << "\n***Initiated Projection***\n" << endl; + + Relation sub_r = engine.projection(projectTest, r); + sub_r.display(); + //engine.rename(r, o, n); -} \ No newline at end of file +} From 7e221bf13e8348065cd6354da51be22f5dc46be8 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 22 Sep 2015 07:32:39 -0500 Subject: [PATCH 093/186] Create Parser.cpp as of now, this parser can take a string and break it into tokens --- Parser.cpp | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Parser.cpp diff --git a/Parser.cpp b/Parser.cpp new file mode 100644 index 0000000..4a9092f --- /dev/null +++ b/Parser.cpp @@ -0,0 +1,44 @@ + +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include + +using namespace std; + +/* + as of now, this parser can take a string and break it into tokens +*/ + + +vector tokenize(string ss) +{ + string tempString; + stringstream lineStream(ss); + vector output; + + while (lineStream >> tempString) + { + output.push_back(tempString); + } + + return output; + +} + +int main () { + + + string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; + + + vector listOfTokens = tokenize(ss); + + + for (int i = 0; i < listOfTokens.size(); ++i) + { + cout<<" slot "< Date: Tue, 22 Sep 2015 09:03:42 -0500 Subject: [PATCH 094/186] fixed rename --- Attribute.cpp | 4 ---- Attribute.h | 1 - DBEngine.cpp | 9 +++------ DBEngine.h | 4 ++-- Relation.cpp | 6 +++++- Relation.h | 3 ++- a.out | Bin 91732 -> 91755 bytes test.cpp | 29 +++++++++++++++++------------ 8 files changed, 29 insertions(+), 27 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index 2ecee1c..093aace 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -45,10 +45,6 @@ bool Attribute::isKey(){ return key; } -void Attribute::rename(string s){ - name = s; -} - //may need to change primary key implementation int Attribute::getSize(){ return size; diff --git a/Attribute.h b/Attribute.h index fa98b14..0e92a40 100755 --- a/Attribute.h +++ b/Attribute.h @@ -21,6 +21,5 @@ public: string getType(); bool isKey(); int getSize(); - void rename(string s); void display(); }; \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp index 1e47c4a..26670b8 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -28,7 +28,7 @@ vector DBEngine::getRelations(){ return tables; } -Relation DBEngine::getTableFromName(string n){ +Relation& DBEngine::getTableFromName(string n){ //will return first occurence for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ @@ -61,7 +61,7 @@ Relation DBEngine::projection(vector input, Relation r){ } //ASAP: TEST ALL OF THIS -void rename(Relation r, vector oldnames, vector newnames){ +void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ if (oldnames.size() != newnames.size()) { cout << "Failure to rename: number of attributes do not match."; return; @@ -73,11 +73,8 @@ void rename(Relation r, vector oldnames, vector newnames){ } else { - Attribute temp; - for(int i = 0; i < oldnames.size(); ++i){ - temp = r.getAttributeByName(oldnames[i]); - temp.setName(newnames[i]); + r.renameAttribute(oldnames[i], newnames[i]); } } } diff --git a/DBEngine.h b/DBEngine.h index 8533656..20a921c 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -15,13 +15,13 @@ public: void createTable(Relation r); vector getRelations(); //void showTable(Relation r); - Relation getTableFromName(string n); + Relation& getTableFromName(string n); void saveToFile(vector cmds); //operations //Relation selection(); Relation projection(vector input, Relation r); - void rename(Relation r, vector oldnames, vector newnames); + void rename(Relation& r, vector oldnames, vector newnames); //void setUnion(); //void setDiff(); //void crossProduct(); diff --git a/Relation.cpp b/Relation.cpp index 300cde1..f81adee 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -29,7 +29,7 @@ vector Relation::getAttributeNames(){ return temp; } -Attribute Relation::getAttributeByName(string s) { +Attribute& Relation::getAttributeByName(string s) { for(int i = 0; i < size; ++i){ if (att[i].getName() == s) { return att[i]; @@ -39,6 +39,10 @@ Attribute Relation::getAttributeByName(string s) { cout << "Failure to return: the requested attribute does not exist."; } +void Relation::renameAttribute(string oldstr, string newstr){ + this->getAttributeByName(oldstr).setName(newstr); +} + int Relation::getSize(){ return size; } diff --git a/Relation.h b/Relation.h index beea397..ffeadcd 100755 --- a/Relation.h +++ b/Relation.h @@ -13,7 +13,8 @@ public: string getTableName(); vector getAttributes(); vector getAttributeNames(); - Attribute getAttributeByName(string s); + Attribute& getAttributeByName(string s); + void renameAttribute(string oldstr, string newstr); int getSize(); void display(); void insertTuple(vector tuple); //we are assuming they are in order diff --git a/a.out b/a.out index 0bb0543c863526d695c22da3b330690c31f64a50..7af9855056d0116baf03cd7a58c3d1222fcd2d86 100755 GIT binary patch delta 30507 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 M{0>_Bm`1euf8G0jR{#J2 literal 91732 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 TK~ tuple; tuple.push_back("Omelette"); tuple.push_back("Fried Rice"); tuple.push_back("Grouper"); - r.insertTuple(tuple); - r.display(); + engine.getTableFromName("Food").insertTuple(tuple); - vector o; - vector n; + vector old; + vector newa; - o.push_back("Breakfast"); - o.push_back("Lunch"); - o.push_back("Dinner"); + old.push_back("Breakfast"); + old.push_back("Lunch"); + old.push_back("Dinner"); - n.push_back("Tsafkaerb"); - n.push_back("Hcnul"); - n.push_back("Rennid"); + newa.push_back("Tsafkaerb"); + newa.push_back("Hcnul"); + newa.push_back("Rennid"); - //engine.rename(r, o, n); + engine.rename(engine.getTableFromName("Food"), old, newa); + engine.getTableFromName("Food").display(); + cout << "finished"; } \ No newline at end of file From 75be5ae221a2991420fc23574fba9cb4956e4970 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 09:03:53 -0500 Subject: [PATCH 095/186] fixed rename --- a.out | Bin 91755 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index 7af9855056d0116baf03cd7a58c3d1222fcd2d86..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91755 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 bkc2pB4D5nHL6vA!j!V0Gp Date: Tue, 22 Sep 2015 16:18:52 -0500 Subject: [PATCH 096/186] Create Parserv2 --- Parserv2 | 175 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 175 insertions(+) create mode 100644 Parserv2 diff --git a/Parserv2 b/Parserv2 new file mode 100644 index 0000000..af89934 --- /dev/null +++ b/Parserv2 @@ -0,0 +1,175 @@ + +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include + +using namespace std; + +/* + as of now, this parser can take a string and break it into tokens +*/ + + +vector tokenize(string ss) +{ + string tempString; + stringstream lineStream(ss); + vector output; + + while (lineStream >> tempString) + { + output.push_back(tempString); + } + + //testing--------------- + cout<<"TokenList: "; + + for (int i = 0; i input) +{ + // if (input[0] != "(") + // { + // cout<<"ERROR! missing parenthesis"< input) +{ + cout<<"TokenList: "< input) +{ + string relationName; + + cout<<"insert-cmd function was called"< input) //calls par_command() or par_query() depending on first item from token list +{ +/* +• Match the first item in the token list and determine weather this is a command or a query. +• Call functions par_command() or par_query(); +• After either par_command() or par_query() returns, make sure the line ends properly with “;†token +*/ + string tempChar = input.back(); + if (tempChar != ";") + { + cout<<"ERROR! missing semicolon "< listOfTokens = tokenize(ss); + par_line(listOfTokens); + + +} From ac43cf74b94ab4eb4eff3e14d648c383156fed3b Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 22 Sep 2015 17:11:51 -0500 Subject: [PATCH 097/186] Update Parserv2 --- Parserv2 | 55 ++++++++++++++++++++++++++++++++++++++++++++----------- 1 file changed, 44 insertions(+), 11 deletions(-) diff --git a/Parserv2 b/Parserv2 index af89934..8e53d6a 100644 --- a/Parserv2 +++ b/Parserv2 @@ -63,22 +63,51 @@ void displayTokenList(vector input) } -void insertCMD(vector input) +vector insertCMD(vector input) { - string relationName; - - cout<<"insert-cmd function was called"< output; + if (input[0] == "INTO") { input.erase(input.begin()); - relationName = input[0]; + + output.push_back(input[0]); //pushing relation name + + input.erase(input.begin()); + + if (input[0] == "VALUES" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + + if(input[0] == "(") + { + input.erase(input.begin()); + + while(input[0] != ")") //inserting all values to relation + //for (int i = 0; i < 2; ++i) + { + if (input[0] == ",") input.erase(input.begin()); + + output.push_back(input[0]); + + input.erase(input.begin()); + } + + return output; + + } + + else cout<<"Syntax error!"< input) //calls par_command() or par_query() dependi if ( input[0] == "INSERT") { + cout<<"\nPassing the following arguments to dbEngine: \nCommand type: "< insertInput = insertCMD(input); + cout<<"arguments: "< Date: Tue, 22 Sep 2015 18:38:04 -0500 Subject: [PATCH 098/186] Update Parserv2 --- Parserv2 | 85 ++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 71 insertions(+), 14 deletions(-) diff --git a/Parserv2 b/Parserv2 index 8e53d6a..675cbb1 100644 --- a/Parserv2 +++ b/Parserv2 @@ -37,21 +37,21 @@ vector tokenize(string ss) } -void par_select(vector input) -{ - // if (input[0] != "(") - // { - // cout<<"ERROR! missing parenthesis"< input) +// { + // // if (input[0] != "(") + // // { + // // cout<<"ERROR! missing parenthesis"< input) { @@ -112,6 +112,49 @@ vector insertCMD(vector input) +vector createCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + // vector output; + + // output.push_back(input[0]) //pushing relation name + + + + // if (input[0] == "VALUES" && input[1] == "FROM") + // { + // input.erase(input.begin()); + // input.erase(input.begin()); + + + // if(input[0] == "(") + // { + // input.erase(input.begin()); + + // while(input[0] != ")") //inserting all values to relation + // //for (int i = 0; i < 2; ++i) + // { + // if (input[0] == ",") input.erase(input.begin()); + + // output.push_back(input[0]); + + // input.erase(input.begin()); + // } + + // return output; + + // } + + // else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list { @@ -150,13 +193,27 @@ void par_line(vector input) //calls par_command() or par_query() dependi if ( input[0] == "INSERT") { - cout<<"\nPassing the following arguments to dbEngine: \nCommand type: "< insertInput = insertCMD(input); cout<<"arguments: "< insertInput = insertCMD(input); + cout<<"arguments: "< listOfTokens = tokenize(ss); par_line(listOfTokens); From 40848ba29cf875ae393d0f34b62c58710f381e34 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 22 Sep 2015 18:40:39 -0500 Subject: [PATCH 099/186] Update Parserv2 --- Parserv2 | 3 --- 1 file changed, 3 deletions(-) diff --git a/Parserv2 b/Parserv2 index 675cbb1..17394b4 100644 --- a/Parserv2 +++ b/Parserv2 @@ -7,9 +7,6 @@ using namespace std; -/* - as of now, this parser can take a string and break it into tokens -*/ vector tokenize(string ss) From 41ee4c99d2431cf92f2d48b8cae2afc463cbfc85 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 18:42:50 -0500 Subject: [PATCH 100/186] fixed rename --- Condition.h | 13 +++++++++++++ DBEngine.cpp | 5 ++--- DBEngine.h | 2 -- 3 files changed, 15 insertions(+), 5 deletions(-) create mode 100755 Condition.h diff --git a/Condition.h b/Condition.h new file mode 100755 index 0000000..cc06978 --- /dev/null +++ b/Condition.h @@ -0,0 +1,13 @@ +#include +#include "Attribute.h" + +using namespace std; + +class Condition{ + Attribute att; + +public: + //currently only implemented for comparison + Condition(Attribute a); + Condition(Attribute a); +}; \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp index 26670b8..db596e6 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -29,7 +29,6 @@ vector DBEngine::getRelations(){ } Relation& DBEngine::getTableFromName(string n){ - //will return first occurence for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ return tables[i]; @@ -37,8 +36,8 @@ Relation& DBEngine::getTableFromName(string n){ } } +//currently writes nothing meaningful void DBEngine::saveToFile(vector cmds){ - //writes nothing meaningful ofstream file; file.open("savefile.db"); @@ -60,7 +59,7 @@ Relation DBEngine::projection(vector input, Relation r){ // } } -//ASAP: TEST ALL OF THIS +//TEST ERRORS MATCHING void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ if (oldnames.size() != newnames.size()) { cout << "Failure to rename: number of attributes do not match."; diff --git a/DBEngine.h b/DBEngine.h index 20a921c..8a71981 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -17,8 +17,6 @@ public: //void showTable(Relation r); Relation& getTableFromName(string n); void saveToFile(vector cmds); - - //operations //Relation selection(); Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); From 156903415c46c296d3a57cadb1a075e1e5724a5c Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 18:54:21 -0500 Subject: [PATCH 101/186] fixed file extension --- Parserv2.cpp | 262 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 262 insertions(+) create mode 100755 Parserv2.cpp diff --git a/Parserv2.cpp b/Parserv2.cpp new file mode 100755 index 0000000..17394b4 --- /dev/null +++ b/Parserv2.cpp @@ -0,0 +1,262 @@ + +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include + +using namespace std; + + + +vector tokenize(string ss) +{ + string tempString; + stringstream lineStream(ss); + vector output; + + while (lineStream >> tempString) + { + output.push_back(tempString); + } + + //testing--------------- + cout<<"TokenList: "; + + for (int i = 0; i input) +// { + // // if (input[0] != "(") + // // { + // // cout<<"ERROR! missing parenthesis"< input) +{ + cout<<"TokenList: "< insertCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + vector output; + + if (input[0] == "INTO") + { + input.erase(input.begin()); + + output.push_back(input[0]); //pushing relation name + + input.erase(input.begin()); + + if (input[0] == "VALUES" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + + if(input[0] == "(") + { + input.erase(input.begin()); + + while(input[0] != ")") //inserting all values to relation + //for (int i = 0; i < 2; ++i) + { + if (input[0] == ",") input.erase(input.begin()); + + output.push_back(input[0]); + + input.erase(input.begin()); + } + + return output; + + } + + else cout<<"Syntax error!"< createCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + // vector output; + + // output.push_back(input[0]) //pushing relation name + + + + // if (input[0] == "VALUES" && input[1] == "FROM") + // { + // input.erase(input.begin()); + // input.erase(input.begin()); + + + // if(input[0] == "(") + // { + // input.erase(input.begin()); + + // while(input[0] != ")") //inserting all values to relation + // //for (int i = 0; i < 2; ++i) + // { + // if (input[0] == ",") input.erase(input.begin()); + + // output.push_back(input[0]); + + // input.erase(input.begin()); + // } + + // return output; + + // } + + // else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list +{ +/* +• Match the first item in the token list and determine weather this is a command or a query. +• Call functions par_command() or par_query(); +• After either par_command() or par_query() returns, make sure the line ends properly with “;†token +*/ + string tempChar = input.back(); + if (tempChar != ";") + { + cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); + cout<<"arguments: "< insertInput = insertCMD(input); + cout<<"arguments: "< listOfTokens = tokenize(ss); + par_line(listOfTokens); + + +} From db10f428031de25aa04c34df05badc22500eaf63 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 18:54:36 -0500 Subject: [PATCH 102/186] fixed file extension --- Parserv2 | 262 ------------------------------------------------------- 1 file changed, 262 deletions(-) delete mode 100644 Parserv2 diff --git a/Parserv2 b/Parserv2 deleted file mode 100644 index 17394b4..0000000 --- a/Parserv2 +++ /dev/null @@ -1,262 +0,0 @@ - -#include // std::string -#include // std::cout -#include // std::stringstream -#include -#include - -using namespace std; - - - -vector tokenize(string ss) -{ - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - //testing--------------- - cout<<"TokenList: "; - - for (int i = 0; i input) -// { - // // if (input[0] != "(") - // // { - // // cout<<"ERROR! missing parenthesis"< input) -{ - cout<<"TokenList: "< insertCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - vector output; - - if (input[0] == "INTO") - { - input.erase(input.begin()); - - output.push_back(input[0]); //pushing relation name - - input.erase(input.begin()); - - if (input[0] == "VALUES" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - - if(input[0] == "(") - { - input.erase(input.begin()); - - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) - { - if (input[0] == ",") input.erase(input.begin()); - - output.push_back(input[0]); - - input.erase(input.begin()); - } - - return output; - - } - - else cout<<"Syntax error!"< createCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - // vector output; - - // output.push_back(input[0]) //pushing relation name - - - - // if (input[0] == "VALUES" && input[1] == "FROM") - // { - // input.erase(input.begin()); - // input.erase(input.begin()); - - - // if(input[0] == "(") - // { - // input.erase(input.begin()); - - // while(input[0] != ")") //inserting all values to relation - // //for (int i = 0; i < 2; ++i) - // { - // if (input[0] == ",") input.erase(input.begin()); - - // output.push_back(input[0]); - - // input.erase(input.begin()); - // } - - // return output; - - // } - - // else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list -{ -/* -• Match the first item in the token list and determine weather this is a command or a query. -• Call functions par_command() or par_query(); -• After either par_command() or par_query() returns, make sure the line ends properly with “;†token -*/ - string tempChar = input.back(); - if (tempChar != ";") - { - cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = insertCMD(input); - cout<<"arguments: "< listOfTokens = tokenize(ss); - par_line(listOfTokens); - - -} From f8a192385685511fdc738ae91460d7290a40b90d Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 22 Sep 2015 20:34:47 -0500 Subject: [PATCH 103/186] Update Parserv2.cpp --- Parserv2.cpp | 41 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 17394b4..a50b1f1 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -7,6 +7,9 @@ using namespace std; +/* + as of now, this parser can take a string and break it into tokens +*/ vector tokenize(string ss) @@ -107,11 +110,33 @@ vector insertCMD(vector input) } +vector showCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< exitCMD(vector input) +{ + if (input[1] != ";") + { + cout<<"ERROR: missing semicolon!"< createCMD(vector input) { - //relation name will be the first element of the vector of data returned by this function + // //relation name will be the first element of the vector of data returned by this function // vector output; // output.push_back(input[0]) //pushing relation name @@ -211,6 +236,12 @@ void par_line(vector input) //calls par_command() or par_query() dependi } + if ( input[0] == "SHOW") + { + showCMD(input); + } + + } @@ -253,10 +284,16 @@ int main () { string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; - string ss2 = "CREATE TABLE animals ( name VARCHAR(20) , kind VARCHAR(8) , years INTEGER ) PRIMARY KEY (name, kind);"; + string ss2 = "SHOW Dogs ;"; + string ss3 = "EXIT ; "; vector listOfTokens = tokenize(ss); + //vector listOfTokens2 = tokenize(ss2); + //vector listOfTokens3 = tokenize(ss3); + par_line(listOfTokens); + //par_line(listOfTokens2); + //par_line(listOfTokens3); } From 37610790ac0407ea6af52843657c83454cf24cac Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 22 Sep 2015 21:05:11 -0500 Subject: [PATCH 104/186] Update Parserv2.cpp --- Parserv2.cpp | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index a50b1f1..13486cb 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -120,6 +120,8 @@ vector showCMD(vector input) cout<<"\nPassing the following arguments to dbEngine: "< exitCMD(vector input) @@ -131,6 +133,8 @@ vector exitCMD(vector input) if (input[0] != "EXIT") { cout<<"Wrong function/syntax error!"< input) //calls par_command() or par_query() dependi showCMD(input); } + if ( input[0] == "EXIT") + { + exitCMD(input); + } + } @@ -288,12 +297,12 @@ int main () { string ss3 = "EXIT ; "; vector listOfTokens = tokenize(ss); - //vector listOfTokens2 = tokenize(ss2); - //vector listOfTokens3 = tokenize(ss3); + vector listOfTokens2 = tokenize(ss2); + vector listOfTokens3 = tokenize(ss3); par_line(listOfTokens); - //par_line(listOfTokens2); - //par_line(listOfTokens3); + par_line(listOfTokens2); + par_line(listOfTokens3); } From 97eaea15f22675f32189176c88d810712b44bd00 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 21:17:45 -0500 Subject: [PATCH 105/186] updates --- Attribute.cpp | 1 - DBEngine.cpp | 2 +- Parserv2.cpp | 262 -------------------------------------------------- Relation.h | 2 +- 4 files changed, 2 insertions(+), 265 deletions(-) delete mode 100755 Parserv2.cpp diff --git a/Attribute.cpp b/Attribute.cpp index 093aace..eb35167 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -45,7 +45,6 @@ bool Attribute::isKey(){ return key; } -//may need to change primary key implementation int Attribute::getSize(){ return size; } diff --git a/DBEngine.cpp b/DBEngine.cpp index db596e6..a082cd6 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -59,7 +59,7 @@ Relation DBEngine::projection(vector input, Relation r){ // } } -//TEST ERRORS MATCHING +//test error matching void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ if (oldnames.size() != newnames.size()) { cout << "Failure to rename: number of attributes do not match."; diff --git a/Parserv2.cpp b/Parserv2.cpp deleted file mode 100755 index 17394b4..0000000 --- a/Parserv2.cpp +++ /dev/null @@ -1,262 +0,0 @@ - -#include // std::string -#include // std::cout -#include // std::stringstream -#include -#include - -using namespace std; - - - -vector tokenize(string ss) -{ - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - //testing--------------- - cout<<"TokenList: "; - - for (int i = 0; i input) -// { - // // if (input[0] != "(") - // // { - // // cout<<"ERROR! missing parenthesis"< input) -{ - cout<<"TokenList: "< insertCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - vector output; - - if (input[0] == "INTO") - { - input.erase(input.begin()); - - output.push_back(input[0]); //pushing relation name - - input.erase(input.begin()); - - if (input[0] == "VALUES" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - - if(input[0] == "(") - { - input.erase(input.begin()); - - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) - { - if (input[0] == ",") input.erase(input.begin()); - - output.push_back(input[0]); - - input.erase(input.begin()); - } - - return output; - - } - - else cout<<"Syntax error!"< createCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - // vector output; - - // output.push_back(input[0]) //pushing relation name - - - - // if (input[0] == "VALUES" && input[1] == "FROM") - // { - // input.erase(input.begin()); - // input.erase(input.begin()); - - - // if(input[0] == "(") - // { - // input.erase(input.begin()); - - // while(input[0] != ")") //inserting all values to relation - // //for (int i = 0; i < 2; ++i) - // { - // if (input[0] == ",") input.erase(input.begin()); - - // output.push_back(input[0]); - - // input.erase(input.begin()); - // } - - // return output; - - // } - - // else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list -{ -/* -• Match the first item in the token list and determine weather this is a command or a query. -• Call functions par_command() or par_query(); -• After either par_command() or par_query() returns, make sure the line ends properly with “;†token -*/ - string tempChar = input.back(); - if (tempChar != ";") - { - cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = insertCMD(input); - cout<<"arguments: "< listOfTokens = tokenize(ss); - par_line(listOfTokens); - - -} diff --git a/Relation.h b/Relation.h index ffeadcd..faa89ea 100755 --- a/Relation.h +++ b/Relation.h @@ -17,7 +17,7 @@ public: void renameAttribute(string oldstr, string newstr); int getSize(); void display(); - void insertTuple(vector tuple); //we are assuming they are in order + void insertTuple(vector tuple); //assuming they are in order void insertFromRelation(Relation r); //void removeTuple(); }; \ No newline at end of file From 11299fd6c5e21c187ab16002a6e832b9e3fb6d7a Mon Sep 17 00:00:00 2001 From: scho4077 Date: Tue, 22 Sep 2015 21:30:28 -0500 Subject: [PATCH 106/186] Update Parserv2.cpp --- Parserv2.cpp | 99 ++++++++++++++++++++++++---------------------------- 1 file changed, 46 insertions(+), 53 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 17394b4..6d77211 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -1,17 +1,4 @@ - -#include // std::string -#include // std::cout -#include // std::stringstream -#include -#include - -using namespace std; - - - -vector tokenize(string ss) -{ - string tempString; +tring; stringstream lineStream(ss); vector output; @@ -107,11 +94,37 @@ vector insertCMD(vector input) } +vector showCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< exitCMD(vector input) +{ + if (input[1] != ";") + { + cout<<"ERROR: missing semicolon!"< createCMD(vector input) { - //relation name will be the first element of the vector of data returned by this function + // //relation name will be the first element of the vector of data returned by this function // vector output; // output.push_back(input[0]) //pushing relation name @@ -211,52 +224,32 @@ void par_line(vector input) //calls par_command() or par_query() dependi } + if ( input[0] == "SHOW") + { + showCMD(input); + } + + if ( input[0] == "EXIT") + { + exitCMD(input); + } + + } } - - -// void par_command(string ss) -// { - -// } -// void par_query(string ss); -// { - // if (input[0] == "select"); -// } - -// void par_insert(); -// void par_relationName(); -// void par_literals(); - - -// void par_condition(); -// void par_conjuction(); -// void par_automicexpr(): -// /* -// • try to match the current pointer in the token list with the atomic-expr grammar. -// • If an Expr is identified, call par_expr() grammar function -// */ -// void par_expr(): -// /* -// try to match the current pointer in the token list with the expr grammar. -// Check the current token and identify a proper query (e.g., if project-query is identified, call par_project() grammer function). -// */ -// void par_projection(): -// /*try to match the current pointer in the token list with the projection grammar -// â—¦ Call grammar function par_attribute_list -// â—¦ (later on, return a View after the evaluation) -// */ int main () { - - string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; - string ss2 = "CREATE TABLE animals ( name VARCHAR(20) , kind VARCHAR(8) , years INTEGER ) PRIMARY KEY (name, kind);"; + string ss2 = "SHOW Dogs ;"; + string ss3 = "EXIT ; "; vector listOfTokens = tokenize(ss); - par_line(listOfTokens); + vector listOfTokens2 = tokenize(ss2); + vector listOfTokens3 = tokenize(ss3); - + par_line(listOfTokens); + par_line(listOfTokens2); + par_line(listOfTokens3); } From 52c801715ca547acc9228ad35260c5359e59235e Mon Sep 17 00:00:00 2001 From: scho4077 Date: Tue, 22 Sep 2015 21:49:37 -0500 Subject: [PATCH 107/186] Update Parserv2.cpp --- Parserv2.cpp | 159 ++++++++++----------------------------------------- 1 file changed, 31 insertions(+), 128 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 6d77211..7e15a93 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -20,23 +20,6 @@ tring; } - -// void par_select(vector input) -// { - // // if (input[0] != "(") - // // { - // // cout<<"ERROR! missing parenthesis"< input) { cout<<"TokenList: "< showCMD(vector input) } cout<<"\nPassing the following arguments to dbEngine: "< exitCMD(vector input) if (input[1] != ";") { cout<<"ERROR: missing semicolon!"< createCMD(vector input) { - // //relation name will be the first element of the vector of data returned by this function - // vector output; - - // output.push_back(input[0]) //pushing relation name - - - - // if (input[0] == "VALUES" && input[1] == "FROM") - // { - // input.erase(input.begin()); - // input.erase(input.begin()); - - - // if(input[0] == "(") - // { - // input.erase(input.begin()); - - // while(input[0] != ")") //inserting all values to relation - // //for (int i = 0; i < 2; ++i) - // { - // if (input[0] == ",") input.erase(input.begin()); - - // output.push_back(input[0]); - - // input.erase(input.begin()); - // } - - // return output; - - // } - - // else cout<<"Syntax error!"< openCMD(vector input){ + // +} +vector closeCMD(vector input){ + // +} +vector saveCMD(vector input){ + //open-cmd ::== OPEN relation-name +//close-cmd ::== CLOSE relation-name +//save-cmd ::== SAVE relation-name +} +vector updateCMD(vector input){ + // +} - -void par_line(vector input) //calls par_command() or par_query() depending on first item from token list -{ -/* -• Match the first item in the token list and determine weather this is a command or a query. -• Call functions par_command() or par_query(); -• After either par_command() or par_query() returns, make sure the line ends properly with “;†token -*/ - string tempChar = input.back(); - if (tempChar != ";") - { - cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = insertCMD(input); - cout<<"arguments: "< deleteCMD(vector input){ + // } int main () { From 74bc10d0adc9d163bce91f024e842d588c3e538f Mon Sep 17 00:00:00 2001 From: scho4077 Date: Tue, 22 Sep 2015 21:51:39 -0500 Subject: [PATCH 108/186] Update Parserv2.cpp --- Parserv2.cpp | 41 +++++++++++++++++++++++++++++++---------- 1 file changed, 31 insertions(+), 10 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 7e15a93..150bab1 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -112,27 +112,48 @@ vector exitCMD(vector input) vector createCMD(vector input) { if (input[0] != "CREATE") { - cout << "Error, create keyword is missing." < openCMD(vector input){ + if (input[0] != "OPEN") { + cout << "Error: open keyword is missing." < openCMD(vector input){ - // + cout << "relation: " << input[1] << endl; } vector closeCMD(vector input){ - // + if (input[0] != "CLOSE") { + cout << "Error: close keyword is missing." < saveCMD(vector input){ - //open-cmd ::== OPEN relation-name -//close-cmd ::== CLOSE relation-name -//save-cmd ::== SAVE relation-name + if (input[0] != "SAVE") { + cout << "Error: save keyword is missing." < updateCMD(vector input){ From db3469594acd349201d27ade48cdba56567408f4 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Tue, 22 Sep 2015 21:53:35 -0500 Subject: [PATCH 109/186] Update Parserv2.cpp --- Parserv2.cpp | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 150bab1..427bbdb 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -143,6 +143,7 @@ vector closeCMD(vector input){ cout << "\nPassing the following arguments to dbEngine: " << endl; cout << "command :" << input[0] << endl; cout << "relation: " << input[1] << endl; + return input; } vector saveCMD(vector input){ @@ -154,14 +155,26 @@ vector saveCMD(vector input){ cout << "\nPassing the following arguments to dbEngine: " << endl; cout << "command :" << input[0] << endl; cout << "relation: " << input[1] << endl; + return input; } vector updateCMD(vector input){ - // + //UPDATE relation-name SET attribute-name = literal { , attribute-name = literal } WHERE condition } vector deleteCMD(vector input){ - // + //DELETE FROM relation-name WHERE condition + if (input[0] != "DELETE") { + cout << "Error: save keyword is missing." < Date: Tue, 22 Sep 2015 21:54:13 -0500 Subject: [PATCH 110/186] Update Parserv2.cpp --- Parserv2.cpp | 42 +++++++++++++++++++++++++++++++++++++++++- 1 file changed, 41 insertions(+), 1 deletion(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 13486cb..0db1a5a 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -62,7 +62,6 @@ void displayTokenList(vector input) } } - vector insertCMD(vector input) { //relation name will be the first element of the vector of data returned by this function @@ -137,6 +136,47 @@ vector exitCMD(vector input) return input; } +vector saveCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< closeCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< openCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< createCMD(vector input) { From 3e7cc47af59d0f55fb827008b66b97ca432f91d4 Mon Sep 17 00:00:00 2001 From: scho4077 Date: Tue, 22 Sep 2015 21:57:52 -0500 Subject: [PATCH 111/186] Update Parserv2.cpp --- Parserv2.cpp | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/Parserv2.cpp b/Parserv2.cpp index 427bbdb..4d4b742 100755 --- a/Parserv2.cpp +++ b/Parserv2.cpp @@ -171,22 +171,14 @@ vector deleteCMD(vector input){ cout << "\nPassing the following arguments to dbEngine: " << endl; cout << "command :" << input[0] << endl; - cout << "relation: " << input[1] << endl; + cout << "relation: " << input[2] << endl; for (int i = 0; i < input.size(); ++i) { cout << input[i] << "\n"; } } int main () { - string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; - string ss2 = "SHOW Dogs ;"; - string ss3 = "EXIT ; "; + string ss = "DELETE FROM animals WHERE (age == 12);"; - vector listOfTokens = tokenize(ss); - vector listOfTokens2 = tokenize(ss2); - vector listOfTokens3 = tokenize(ss3); - - par_line(listOfTokens); - par_line(listOfTokens2); - par_line(listOfTokens3); + vector listOfTokens = tokenize(s); } From 0cb05ed10a69f1cf01e6a9ab3523b972fb36f7ef Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 22:16:39 -0500 Subject: [PATCH 112/186] almost done with commands --- Parser.cpp | 44 -------------------------------------------- Parserv2.cpp | 10 +++++----- a.out | Bin 0 -> 38917 bytes 3 files changed, 5 insertions(+), 49 deletions(-) delete mode 100644 Parser.cpp create mode 100755 a.out diff --git a/Parser.cpp b/Parser.cpp deleted file mode 100644 index 4a9092f..0000000 --- a/Parser.cpp +++ /dev/null @@ -1,44 +0,0 @@ - -#include // std::string -#include // std::cout -#include // std::stringstream -#include -#include - -using namespace std; - -/* - as of now, this parser can take a string and break it into tokens -*/ - - -vector tokenize(string ss) -{ - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - return output; - -} - -int main () { - - - string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; - - - vector listOfTokens = tokenize(ss); - - - for (int i = 0; i < listOfTokens.size(); ++i) - { - cout<<" slot "< deleteCMD(vector input){ cout << "\nPassing the following arguments to dbEngine: " << endl; cout << "command :" << input[0] << endl; cout << "relation: " << input[2] << endl; - for (int i = 0; i < input.size(); ++i) { - cout << input[i] << "\n"; - } + cout << "condition: " << input[5] << input[6] << input[7] << endl; + + return input; } int main () { - string ss = "DELETE FROM animals WHERE (age == 12);"; + string s = "DELETE FROM animals WHERE ( age == 12 ) ;"; vector listOfTokens = tokenize(s); - deleteCMD(listofTokens); + deleteCMD(listOfTokens); } diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..6a77a3df2bea8473f5f60940f721d90c854fadc5 GIT binary patch literal 38917 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 ZKX7r$9%5-6L>Eeo#$bJu!9R%^{|#1L+kyZ9 literal 0 HcmV?d00001 From a7463a1e89b51868250e3a77ec223f617ae84e2d Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 22:49:17 -0500 Subject: [PATCH 113/186] output.txt --- OUTPUT.txt | 90 +++++++++++++++++++++++++++++++----------------------- 1 file changed, 52 insertions(+), 38 deletions(-) diff --git a/OUTPUT.txt b/OUTPUT.txt index 2d883ab..3e44c42 100755 --- a/OUTPUT.txt +++ b/OUTPUT.txt @@ -1,70 +1,84 @@ -Assuming previously defined Attribute, compiled in a vector known as 'vec' and with subsequent numbers added +show incorrect/correct example for each cmd/query -To create a table: +--------------- +Queries +--------------- - engine.createTable("table1", vec); +Selection: +correct: select ( age == 12 ) people ; +incorrect: select ( age ))))) people ; -This creates a Relation object with the appropriate Attribute objects. It displays nothing. +Projection: -To display the table: +correct: project ( age ) people ; +incorrect: x - engine.showTables(engine.getTableFromName("table1")); +Renaming: +correct: rename ( age, years old ) ; +incorrect: x -This results in such output: +Set Union: - Display of relation-------------------------------- - Relation name: table1 +correct: x +incorrect: x - Attribute name: name - Elements: Fry Bender Leela Zoidberg - Attribute name: age - Elements: 22 5 22 50 +Set Difference: +correct: x +incorrect: x -With table3 having an equal domain to table1, this: +Cross Product: - cout << engine.unionComp(engine.getTableFromName("table1"), engine.getTableFromName("table3")); +correct: x +incorrect: x +------------------- +Commands +------------------- -This will display: +Open: - 1 +correct: OPEN people ; +incorrect: OPEN ; +Close: -To project a table's column: - - engine.project((engine.getTableFromName("table1")), "name"); +correct: CLOSE people ; +incorrect: CLOSE ; +Save: -This will display: +correct: SAVE people ; +incorrect: SAVE ; - -----------Initiated Query Projection--------- - Column Title: name - Fry - Bender - Leela - Zoidberg +Exit: +correct: EXIT ; +incorrect: EXIT people ; -With an arbitrary vector of strings as cmds (until we are able to parse effectively): +Show: - engine.saveToFile(cmds); +correct: SHOW people ; +incorrect: SHOW ; +Create: -This will result in a db file with the contents: +correct: CREATE TABLE people ( age INTEGER, name VARCHAR ( 20 ) ) PRIMARY KEY ( name ) ; +incorrect: CREATE TABLE people age name ; - CREATE TABLE animals (name VARCHAR(20), kind VARCHAR(8), years INTEGER) PRIMARY KEY (name, kind); - -SHOW animals; +Update: +correct: x +incorrect: x +Insert: -//insert +correct: INSERT INTO people VALUES FROM ( 12, "Benny" ) ; +incorrect: INSERT INTO people 12 "Benny" ; -//delete +Delete: -//select - -//product \ No newline at end of file +correct: x +incorrect: x From 6fe791a41fac371eb816a61a074250bade01778a Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Tue, 22 Sep 2015 23:03:50 -0500 Subject: [PATCH 114/186] parser OUTPUT.txt finished --- OUTPUT.txt | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/OUTPUT.txt b/OUTPUT.txt index 3e44c42..09bc7f9 100755 --- a/OUTPUT.txt +++ b/OUTPUT.txt @@ -1,5 +1,3 @@ -show incorrect/correct example for each cmd/query - --------------- Queries --------------- @@ -12,27 +10,27 @@ incorrect: select ( age ))))) people ; Projection: correct: project ( age ) people ; -incorrect: x +incorrect: project age people ; Renaming: correct: rename ( age, years old ) ; -incorrect: x +incorrect: rename age years ; Set Union: -correct: x -incorrect: x +correct: union ( people + animals ) ; +incorrect: union people animals ; Set Difference: -correct: x -incorrect: x +correct: difference ( people - animals ) ; +incorrect: difference people animals ; Cross Product: -correct: x -incorrect: x +correct: product ( people * animals ) ; +incorrect: product people animals ; ------------------- Commands @@ -70,8 +68,8 @@ incorrect: CREATE TABLE people age name ; Update: -correct: x -incorrect: x +correct: UPDATE people SET ( age = 10 ) WHERE ( name == "Bob" ) ; +incorrect: UPDATE ( age = 10 ) WHERE people ; Insert: @@ -80,5 +78,5 @@ incorrect: INSERT INTO people 12 "Benny" ; Delete: -correct: x -incorrect: x +correct: DELETE FROM people WHERE ( name == "John" ) ; +incorrect: DELETE IN people WHEN (name=John) ; From 670668124b27d08890c7ea7ee11baf83e7953d80 Mon Sep 17 00:00:00 2001 From: Alex Huddleston Date: Tue, 22 Sep 2015 23:27:34 -0500 Subject: [PATCH 115/186] Create Parserv3.h --- Parserv3.h | 242 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 242 insertions(+) create mode 100644 Parserv3.h diff --git a/Parserv3.h b/Parserv3.h new file mode 100644 index 0000000..154cffe --- /dev/null +++ b/Parserv3.h @@ -0,0 +1,242 @@ +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include + +using namespace std; + + +class Relation +{ + string name; + + public: + + string getName() + { + return name; + } +} + + + +class Union +{ + string Un1; + string Un2; + + Union (string s1, string s2) + { + Un1 = s1; + Un2 = s2; + } + + string getUnion() + { + return "Union of " + Un1 + " and " + Un2; + } +} + +class Product +{ + string Pr1; + string Pr2; + + Product(string s1, string s2) + { + Pr1 = s1; + Pr2 = s2; + } + + string getProduct() + { + return "Product of " + Pr1 + " and " + Pr2; + } +} + +class Difference() +{ + string D1; + string D2; + + Difference(string s1, string s2) + { + D1 = s1; + D2 = s2; + } + + string getDifference() + { + return "Difference of " + D1 + " and " + D2; + } +} + +class Rename() +{ + string newName; + string oldName; + + Rename(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doRename() + { + return "Renaming " + oldName + " to " + newName; + } +} + +class Projection() +{ + string newName; + string oldName; + + Rename(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doRename() + { + return "Projecting " + oldName + " onto " + newName; + } +} + +class Operand() +{ + string op; + + Operand(string str) + { + op = str; + } + + void setOperand(string str) + { + op = str; + } + + string getOperand() + { + return op; + } +} + +class Op() +{ + string op; + + Op(string str) + { + op = str; + } + + void setOp(string str) + { + op = str; + } + + string getOp() + { + return op; + } +} + +class Comparison() +{ + Op op; + Operand operand1; + Operand operand2; + + Comparison(string str1, string str2, string str3) + { + operand1.setOperand(str1); + op.setOp(str2); + operand2.setOperand(str3); + } + + void setComparison(string str1, string str2, string str3) + { + operand1.setOperand(str1); + op.setOp(str2); + operand2.setOperand(str3); + } + + string getComparison() + { + return op1.getOperand() + " " + op.getOp() + " " + op2.getOperand(); + } +} + +class Conjunction() +{ + string conj; + + Conjunction(string str) + { + conj = str; + } + + void setConjunction(string str) + { + conj = str; + } + + string getConjunction() + { + return conj; + } +} + +class Condition() +{ + string cond; + + Condition(string str) + { + cond = str; + } + + void setCondition(string str) + { + cond = str; + } + + string getCondition() + { + return cond; + } +} + +class Selection() +{ + string select; + + Selection(string str) + { + select = str; + } + + string getSelection() + { + return select; + } +} + +class expr +{ + Relation r; + + selection + projection + renaming + Union + difference + product + +} + From 6f10af0b32a8ace8f2129d0525225b38eac82976 Mon Sep 17 00:00:00 2001 From: Alex Huddleston Date: Tue, 22 Sep 2015 23:44:51 -0500 Subject: [PATCH 116/186] Update Parserv3.h --- Parserv3.h | 254 +++++++++++++++++++++++++++-------------------------- 1 file changed, 130 insertions(+), 124 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index 154cffe..1fb63d7 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -7,17 +7,24 @@ using namespace std; -class Relation +class Relation { string name; - public: + Relation(string str) + { + name = str; + } + void setRelation(string str) + { + name = str; + } string getName() { return name; } -} +}; @@ -36,7 +43,7 @@ class Union { return "Union of " + Un1 + " and " + Un2; } -} +}; class Product { @@ -53,9 +60,9 @@ class Product { return "Product of " + Pr1 + " and " + Pr2; } -} +}; -class Difference() +class Difference { string D1; string D2; @@ -70,14 +77,14 @@ class Difference() { return "Difference of " + D1 + " and " + D2; } -} +}; -class Rename() +class Renaming { string newName; string oldName; - Rename(string s1, string s2) + Renaming(string s1, string s2) { newName = s1; oldName = s2; @@ -87,156 +94,155 @@ class Rename() { return "Renaming " + oldName + " to " + newName; } -} +}; -class Projection() +class Projection { string newName; string oldName; - Rename(string s1, string s2) + Projection(string s1, string s2) { newName = s1; oldName = s2; } - string doRename() + string doProjection() { return "Projecting " + oldName + " onto " + newName; } -} +}; -class Operand() +class Operand { string op; - Operand(string str) - { - op = str; - } + public: - void setOperand(string str) - { - op = str; - } - - string getOperand() - { - return op; - } -} + Operand() + { + } + + Operand(string str) + { + op = str; + } + + void setOperand(string str) + { + op = str; + } + + string getOperand() + { + return op; + } +}; -class Op() +class Op { string op; - Op(string str) - { - op = str; - } - - void setOp(string str) - { - op = str; - } - - string getOp() - { - return op; - } -} + public: + Op() + { + } + + Op(string str) + { + op = str; + } + + void setOp(string str) + { + op = str; + } + + string getOp() + { + return op; + } +}; -class Comparison() +class Comparison { Op op; Operand operand1; Operand operand2; - Comparison(string str1, string str2, string str3) - { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); - } + public: - void setComparison(string str1, string str2, string str3) - { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); - } - - string getComparison() - { - return op1.getOperand() + " " + op.getOp() + " " + op2.getOperand(); - } -} + Comparison(string str1, string str2, string str3) + { + operand1.setOperand(str1); + op.setOp(str2); + operand2.setOperand(str3); + } + + void setComparison(string str1, string str2, string str3) + { + operand1.setOperand(str1); + op.setOp(str2); + operand2.setOperand(str3); + } + + string getComparison() + { + return operand1.getOperand() + " " + op.getOp() + " " + operand2.getOperand(); + } +}; -class Conjunction() +class Conjunction { string conj; - - Conjunction(string str) - { - conj = str; - } - - void setConjunction(string str) - { - conj = str; - } - - string getConjunction() - { - return conj; - } -} + public: + Conjunction(string str) + { + conj = str; + } + + void setConjunction(string str) + { + conj = str; + } + + string getConjunction() + { + return conj; + } +}; -class Condition() +class Condition { string cond; - - Condition(string str) - { - cond = str; - } - - void setCondition(string str) - { - cond = str; - } - - string getCondition() - { - return cond; - } -} + public: + Condition(string str) + { + cond = str; + } + + void setCondition(string str) + { + cond = str; + } + + string getCondition() + { + return cond; + } +}; -class Selection() +class Selection { string select; - - Selection(string str) - { - select = str; - } - - string getSelection() - { - return select; - } -} - -class expr -{ - Relation r; - - selection - projection - renaming - Union - difference - product - -} - + public: + Selection(string str) + { + select = str; + } + + string getSelection() + { + return select; + } +}; From 049183c4cb15e1c348756ad4e9b96e6fb06dfb48 Mon Sep 17 00:00:00 2001 From: Alex Huddleston Date: Wed, 23 Sep 2015 02:45:53 -0500 Subject: [PATCH 117/186] Update Parserv3.h --- Parserv3.h | 188 +++++++++++++++++++++++++++++++++++------------------ 1 file changed, 124 insertions(+), 64 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index 1fb63d7..830f98e 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -11,38 +11,63 @@ class Relation { string name; - Relation(string str) - { - name = str; - } - - void setRelation(string str) - { - name = str; - } - string getName() - { - return name; - } + public: + Relation() + { + } + + Relation(string str) + { + name = str; + } + + void setRelation(string str) + { + name = str; + } + string getName() + { + return name; + } }; - +class Attribute +{ + string name; + + public: + Attribute(string str) + { + name = str; + } + + void setAttribute(string str) + { + name = str; + } + + string getAttribute() + { + return name; + } +}; class Union { string Un1; string Un2; - Union (string s1, string s2) - { - Un1 = s1; - Un2 = s2; - } - - string getUnion() - { - return "Union of " + Un1 + " and " + Un2; - } + public: + Union (string s1, string s2) + { + Un1 = s1; + Un2 = s2; + } + + string getUnion() + { + return "Union of " + Un1 + " and " + Un2; + } }; class Product @@ -50,16 +75,17 @@ class Product string Pr1; string Pr2; - Product(string s1, string s2) - { - Pr1 = s1; - Pr2 = s2; - } - - string getProduct() - { - return "Product of " + Pr1 + " and " + Pr2; - } + public: + Product(string s1, string s2) + { + Pr1 = s1; + Pr2 = s2; + } + + string getProduct() + { + return "Product of " + Pr1 + " and " + Pr2; + } }; class Difference @@ -67,16 +93,17 @@ class Difference string D1; string D2; - Difference(string s1, string s2) - { - D1 = s1; - D2 = s2; - } - - string getDifference() - { - return "Difference of " + D1 + " and " + D2; - } + public: + Difference(string s1, string s2) + { + D1 = s1; + D2 = s2; + } + + string getDifference() + { + return "Difference of " + D1 + " and " + D2; + } }; class Renaming @@ -84,16 +111,17 @@ class Renaming string newName; string oldName; - Renaming(string s1, string s2) - { - newName = s1; - oldName = s2; - } - - string doRename() - { - return "Renaming " + oldName + " to " + newName; - } + public: + Renaming(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doRename() + { + return "Renaming " + oldName + " to " + newName; + } }; class Projection @@ -101,16 +129,17 @@ class Projection string newName; string oldName; - Projection(string s1, string s2) - { - newName = s1; - oldName = s2; - } - - string doProjection() - { - return "Projecting " + oldName + " onto " + newName; - } + public: + Projection(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doProjection() + { + return "Projecting " + oldName + " onto " + newName; + } }; class Operand @@ -216,6 +245,11 @@ class Condition { string cond; public: + + Condition() + { + } + Condition(string str) { cond = str; @@ -246,3 +280,29 @@ class Selection return select; } }; + +class Expression +{ + string exp; + + public: + + Expression() + { + } + + Expression(string str) + { + exp = str; + } + + void setExpression(string str) + { + exp = str; + } + + string getExpression() + { + return exp; + } +}; From bcd025153a2f57dd5513b88bd30756a4be686f98 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Wed, 23 Sep 2015 02:47:08 -0500 Subject: [PATCH 118/186] Create Parserv4.cpp --- Parserv4.cpp | 429 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 429 insertions(+) create mode 100644 Parserv4.cpp diff --git a/Parserv4.cpp b/Parserv4.cpp new file mode 100644 index 0000000..8d5f17b --- /dev/null +++ b/Parserv4.cpp @@ -0,0 +1,429 @@ +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include +#include "Parserv3.h" + +using namespace std; + +vector tokenize(string ss) +{ + string tempString; + stringstream lineStream(ss); + vector output; + + while (lineStream >> tempString) + { + output.push_back(tempString); + } + + //testing--------------- + cout<<"TokenList: "; + + for (int i = 0; i input) +{ + cout<<"TokenList: "< showCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< saveCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< closeCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< openCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< exitCMD(vector input) +{ + if (input[1] != ";") + { + cout<<"ERROR: missing semicolon!"< createCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + + if (input[0] == "CREATE" && input[1] == "TABLE") + { + input.erase(input.begin()); + input.erase(input.begin()); + + Relation r; + r.setRelation(input[0]); + + input.erase(input.begin()); + + if(input[0] == "(") + { + input.erase(input.begin()); + + vector e1; + + while(input[0] != ")") //inserting all values to relation + { + if (input[0] == ",") + { + input.erase(input.begin()); + } + + e1.push_back(input[0]); + + input.erase(input.begin()); + } + + vector e2; + + if(input[0] == "PRIMARY" && input[1] == "KEY") + { + input.erase(input.begin()); + input.erase(input.begin()); + + if(input[0] == "(") + { + + while(input[0] != ")") //inserting all values to relation + { + if (input[0] == ",") + { + input.erase(input.begin()); + } + + e2.push_back(input[0]); + + input.erase(input.begin()); + } + + cout << "Creating a table: " << r.getName() << "\n"; + cout << "Primary key: "; + while(!e2.empty()) + { + cout << e2[0].getExpression() << " "; + e2.erase(e2.begin()); + } + + return input; + } + } + } + + else cout<<"Syntax error!"< insertCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + + if (input[0] == "INTO") + { + input.erase(input.begin()); + + Relation r(input[0]); + + input.erase(input.begin()); + + if (input[0] == "VALUES" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + + if(input[0] == "(") + { + vector e; + input.erase(input.begin()); + + while(input[0] != ")") //inserting all values to relation + //for (int i = 0; i < 2; ++i) + { + if (input[0] == ",") input.erase(input.begin()); + + e.push_back(input[0]); + + input.erase(input.begin()); + } + + cout << "Inserting: "; + while(!e.empty()) + { + cout << e[0].getExpression() << " "; + e.erase(e.begin()); + } + cout << "into " << r.getName() << ".\n"; + + return input; + + } + + else if (input[0] == "RELATION") + { + input.erase(input.begin()); + + Expression e; + + while(input[0] != ";") + { + e.setExpression(e.getExpression() + input[0]); + } + + cout << "Inserting: " << e.getExpression() << " into " << r.getName() << ".\n"; + + return input; + } + + else cout<<"Syntax error!"< updateCMD(vector input) +{ + //parse Relation r + + //parse out SET + if(input[0] == "SET") + { + input.erase(input.begin()); + + Relation r(input[0]); + + input.erase(input.begin()); + + //parse out ( and send everything until ) into an Expression vector + if(input[0] == "(") + { + + vector e; + input.erase(input.begin()); + + while(input[0] != ")") + { + e.push_back(input[0]); + } + } + + if(input[0] == "WHERE") + { + Condition c; + while(input[0] != ";") + { + c.setCondition(/*c.getCondition +*/ input[0]); + } + } + } + + else cout<<"Syntax error!"< deleteCMD(vector input) +{ + // parse out DELETE FROM + if (input[0] == "DELETE" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + Relation r(input[0]); + if(input[0] == "(") + { + vector e; + input.erase(input.begin()); + + while(input[0] != ")") + { + if (input[0] == ",") input.erase(input.begin()); + + e.push_back(input[0]); + + input.erase(input.begin()); + } + + cout << "Deleting: "; + while(!e.empty()) + { + cout << e[0].getExpression() << " "; + e.erase(e.begin()); + } + cout << "from " << r.getName() << ".\n"; + + return input; + + } + else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list +{ +/* +• Match the first item in the token list and determine weather this is a command or a query. +• Call functions par_command() or par_query(); +• After either par_command() or par_query() returns, make sure the line ends properly with “;†token +*/ + string tempChar = input.back(); + + if (tempChar != ";") + { + cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); + cout<<"arguments: "< insertInput = insertCMD(input); + cout<<"arguments: "< listOfTokens = tokenize(ss); + vector listOfTokens2 = tokenize(ss2); + vector listOfTokens3 = tokenize(ss3); + + par_line(listOfTokens); + par_line(listOfTokens2); + par_line(listOfTokens3); + + +} From c6c5caaf027cea27f18de2e0aa81510759e1fe3e Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 23 Sep 2015 15:24:42 -0500 Subject: [PATCH 119/186] Added default constructor values to classes for Parser. --- Parserv3.h | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 57 insertions(+), 1 deletion(-) diff --git a/Parserv3.h b/Parserv3.h index 830f98e..d3f7812 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -14,6 +14,7 @@ class Relation public: Relation() { + name = NULL; } Relation(string str) @@ -36,6 +37,11 @@ class Attribute string name; public: + Attribute() + { + name = NULL; + } + Attribute(string str) { name = str; @@ -58,6 +64,12 @@ class Union string Un2; public: + Union() + { + Un1 = NULL; + Un2 = NULL; + } + Union (string s1, string s2) { Un1 = s1; @@ -76,6 +88,12 @@ class Product string Pr2; public: + Product() + { + Pr1 = NULL; + Pr2 = NULL; + } + Product(string s1, string s2) { Pr1 = s1; @@ -94,6 +112,12 @@ class Difference string D2; public: + Difference() + { + D1 = NULL; + D2 = NULL; + } + Difference(string s1, string s2) { D1 = s1; @@ -112,6 +136,12 @@ class Renaming string oldName; public: + Renaming() + { + newName = NULL; + oldName = NULL; + } + Renaming(string s1, string s2) { newName = s1; @@ -130,6 +160,12 @@ class Projection string oldName; public: + Projection() + { + newName = NULL; + oldName = NULL; + } + Projection(string s1, string s2) { newName = s1; @@ -150,6 +186,7 @@ class Operand Operand() { + op = NULL; } Operand(string str) @@ -175,6 +212,7 @@ class Op public: Op() { + op = NULL; } Op(string str) @@ -200,7 +238,13 @@ class Comparison Operand operand2; public: - + Comparison() + { + op = NULL; + operand1 = NULL; + operand2 = NULL; + } + Comparison(string str1, string str2, string str3) { operand1.setOperand(str1); @@ -225,6 +269,11 @@ class Conjunction { string conj; public: + Conjunction() + { + conj = NULL; + } + Conjunction(string str) { conj = str; @@ -248,6 +297,7 @@ class Condition Condition() { + cond = NULL; } Condition(string str) @@ -270,6 +320,11 @@ class Selection { string select; public: + Selection() + { + select = NULL; + } + Selection(string str) { select = str; @@ -289,6 +344,7 @@ class Expression Expression() { + exp = NULL; } Expression(string str) From 71961f665914ae9ca275b248495a2f96fc42dadb Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Wed, 23 Sep 2015 16:08:19 -0500 Subject: [PATCH 120/186] Re-Updated projection... again. --- DBEngine.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index d028aea..6101b46 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -51,12 +51,19 @@ void DBEngine::saveToFile(vector cmds){ //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ + vector v; + string new_name = r.getTableName() + " Projection"; -// for(int i = 0; i < input.size(); i++) { -// it = find(r.getAttributes().begin(), r.getAttributes().end(), input[i]) + for(int i = 0; i < input.size(); ++i) { - //if(r[i].getName == input[]) -// } + for(int j = 0; j < r.getSize(); ++j) { + if((r.getAttributes())[j].getName() == input[i]) + v.push_back((r.getAttributes())[j]); + } + } + + Relation temp(new_name, v); + return temp; } //test error matching @@ -76,4 +83,4 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna r.renameAttribute(oldnames[i], newnames[i]); } } -} \ No newline at end of file +} From e7037e5909b9c19c94ef94ab7208e32e19bf784a Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Wed, 23 Sep 2015 16:34:15 -0500 Subject: [PATCH 121/186] rename fixed and insert attributes add --- Condition.cpp | 29 +++++++++++++++++++++++++++++ Condition.h | 16 ++++++++-------- DBEngine.cpp | 4 ++-- DevelopmentLog.pdf | Bin 0 -> 100703 bytes Parser.zip | Bin 0 -> 96401 bytes Relation.cpp | 6 ++++++ Relation.h | 1 + a.out | Bin 38917 -> 91755 bytes test.cpp | 15 --------------- 9 files changed, 46 insertions(+), 25 deletions(-) create mode 100755 Condition.cpp create mode 100755 DevelopmentLog.pdf create mode 100755 Parser.zip diff --git a/Condition.cpp b/Condition.cpp new file mode 100755 index 0000000..d8ef7e1 --- /dev/null +++ b/Condition.cpp @@ -0,0 +1,29 @@ +#include +#include "Attribute.h" + +using namespace std; + +//currently only implementing for comparison +void equality(Attribute a, string s){ + +} + +void equality(Attribute a, int i){ + +} + +void gt(Attribute a, int i){ + +} + +void lt(Attribute a, int i){ + +} + +void gte(Attribute a, int i){ + +} + +void lte(Attribute a, int i){ + +} \ No newline at end of file diff --git a/Condition.h b/Condition.h index cc06978..ea1bda4 100755 --- a/Condition.h +++ b/Condition.h @@ -3,11 +3,11 @@ using namespace std; -class Condition{ - Attribute att; - -public: - //currently only implemented for comparison - Condition(Attribute a); - Condition(Attribute a); -}; \ No newline at end of file +//currently only implementing for comparison +Condition(); +void equality(Attribute a, string s); +void equality(Attribute a, int i); +void gt(Attribute a, int i); +void lt(Attribute a, int i); +void gte(Attribute a, int i); +void lte(Attribute a, int i); \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp index d028aea..ceafe75 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -62,12 +62,12 @@ Relation DBEngine::projection(vector input, Relation r){ //test error matching void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ if (oldnames.size() != newnames.size()) { - cout << "Failure to rename: number of attributes do not match."; + cout << "FAILURE TO RENAME: number of attributes do not match.\n"; return; } else if (oldnames != r.getAttributeNames()) { - cout << "Failure to rename: the attributes to be renamed do not exist in the relation."; + cout << "FAILURE TO RENAME: the attributes to be renamed do not exist in the relation.\n"; return; } diff --git a/DevelopmentLog.pdf b/DevelopmentLog.pdf new file mode 100755 index 0000000000000000000000000000000000000000..6d6db276269ea3dac5f12d51ccf1578477546464 GIT binary patch literal 100703 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 zⅆ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 WSwEgV-m015yA08dp^P*qeeba-@iRLygu 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 oGj}sv2S+ a){ size = a.size(); } +void Relation::insertAttributes(vector a){ + for (int i = 0; i < a.size(); ++i){ + att.push_back(a[i]); + } +} + string Relation::getTableName(){ return name; } diff --git a/Relation.h b/Relation.h index faa89ea..c2769c3 100755 --- a/Relation.h +++ b/Relation.h @@ -10,6 +10,7 @@ class Relation{ public: Relation(string n); Relation(string n, vector a); + void insertAttributes(vector a); string getTableName(); vector getAttributes(); vector getAttributeNames(); diff --git a/a.out b/a.out index 6a77a3df2bea8473f5f60940f721d90c854fadc5..d954f1a32fc31e60c9fc1b48ddaffa37793bd254 100755 GIT binary patch literal 91755 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 g{L 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 literal 38917 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 ZKX7r$9%5-6L>Eeo#$bJu!9R%^{|#1L+kyZ9 diff --git a/test.cpp b/test.cpp index 3cc2d12..f747bb8 100755 --- a/test.cpp +++ b/test.cpp @@ -50,22 +50,7 @@ int main() { newa.push_back("Hcnul"); newa.push_back("Rennid"); -<<<<<<< HEAD - //Projection test - vector projectTest; - projectTest.push_back("Breakfast"); - projectTest.push_back("Dinner"); - - cout << "\n***Initiated Projection***\n" << endl; - - Relation sub_r = engine.projection(projectTest, r); - sub_r.display(); - - //engine.rename(r, o, n); -} -======= engine.rename(engine.getTableFromName("Food"), old, newa); engine.getTableFromName("Food").display(); cout << "finished"; } ->>>>>>> master From 4cf8190e16d30acfd9d4e03c1534a6b9656e3274 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Wed, 23 Sep 2015 17:09:10 -0500 Subject: [PATCH 122/186] update --- EngineMkFile.mak | 5 +++++ 1 file changed, 5 insertions(+) create mode 100755 EngineMkFile.mak diff --git a/EngineMkFile.mak b/EngineMkFile.mak new file mode 100755 index 0000000..64006b8 --- /dev/null +++ b/EngineMkFile.mak @@ -0,0 +1,5 @@ +all: + g++ test.cpp Attribute.cpp Relation.cpp Condition.cpp DBEngine.cpp -o test + +clean: + rm *o test \ No newline at end of file From e793c790e42c862e4d61b106d21db4e061ed1092 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Wed, 23 Sep 2015 17:10:09 -0500 Subject: [PATCH 123/186] update --- Condition.cpp | 29 +++++++++++++++++++++++++++++ EngineMkFile.mak | 5 ----- test | Bin 0 -> 92165 bytes 3 files changed, 29 insertions(+), 5 deletions(-) create mode 100755 Condition.cpp delete mode 100755 EngineMkFile.mak create mode 100755 test diff --git a/Condition.cpp b/Condition.cpp new file mode 100755 index 0000000..d8ef7e1 --- /dev/null +++ b/Condition.cpp @@ -0,0 +1,29 @@ +#include +#include "Attribute.h" + +using namespace std; + +//currently only implementing for comparison +void equality(Attribute a, string s){ + +} + +void equality(Attribute a, int i){ + +} + +void gt(Attribute a, int i){ + +} + +void lt(Attribute a, int i){ + +} + +void gte(Attribute a, int i){ + +} + +void lte(Attribute a, int i){ + +} \ No newline at end of file diff --git a/EngineMkFile.mak b/EngineMkFile.mak deleted file mode 100755 index 64006b8..0000000 --- a/EngineMkFile.mak +++ /dev/null @@ -1,5 +0,0 @@ -all: - g++ test.cpp Attribute.cpp Relation.cpp Condition.cpp DBEngine.cpp -o test - -clean: - rm *o test \ No newline at end of file diff --git a/test b/test new file mode 100755 index 0000000000000000000000000000000000000000..bb0df00435ec80350cfc7400001ba3ec27f0c4fb GIT binary patch literal 92165 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 literal 0 HcmV?d00001 From cd14f55be7aebc7534f7789ddba26f980faee124 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 23 Sep 2015 17:34:36 -0500 Subject: [PATCH 124/186] Adding DBEngine functions into CreateCMD parser function. --- DBEngine.cpp | 10 +++ Parserv2.cpp | 196 -------------------------------------------- Parserv3.h | 225 +++++++++++++++++++++++++++++---------------------- Parserv4.cpp | 74 +++++++++++------ a.out | Bin 38917 -> 87749 bytes 5 files changed, 185 insertions(+), 320 deletions(-) delete mode 100755 Parserv2.cpp diff --git a/DBEngine.cpp b/DBEngine.cpp index d028aea..a10368c 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -27,6 +27,16 @@ void DBEngine::createTable(Relation r){ vector DBEngine::getRelations(){ return tables; } + +//To check if a relation name is already used. +bool DBEngine::isRelation(string n){ + for(int i = 0; i < tables.size(); i++){ + if (tables[i].getTableName() == n){ + return true; + } + } + return false; +} Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ diff --git a/Parserv2.cpp b/Parserv2.cpp deleted file mode 100755 index cb848f3..0000000 --- a/Parserv2.cpp +++ /dev/null @@ -1,196 +0,0 @@ -#include -#include -#include -#include -#include - -using namespace std; - - -vector tokenize(string ss) -{ - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - //testing--------------- - cout<<"TokenList: "; - - for (int i = 0; i input) -{ - cout<<"TokenList: "< insertCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - vector output; - - if (input[0] == "INTO") - { - input.erase(input.begin()); - - output.push_back(input[0]); //pushing relation name - - input.erase(input.begin()); - - if (input[0] == "VALUES" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - - if(input[0] == "(") - { - input.erase(input.begin()); - - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) - { - if (input[0] == ",") input.erase(input.begin()); - - output.push_back(input[0]); - - input.erase(input.begin()); - } - - return output; - - } - - else cout<<"Syntax error!"< showCMD(vector input) -{ - if (input.size() > 3) - { - cout<<"Syntax error!"< exitCMD(vector input) -{ - if (input[1] != ";") - { - cout<<"ERROR: missing semicolon!"< createCMD(vector input) -{ - if (input[0] != "CREATE") { - cout << "Error: create keyword is missing." < openCMD(vector input){ - if (input[0] != "OPEN") { - cout << "Error: open keyword is missing." < closeCMD(vector input){ - if (input[0] != "CLOSE") { - cout << "Error: close keyword is missing." < saveCMD(vector input){ - if (input[0] != "SAVE") { - cout << "Error: save keyword is missing." < updateCMD(vector input){ - //UPDATE relation-name SET attribute-name = literal { , attribute-name = literal } WHERE condition -} - -vector deleteCMD(vector input){ - //DELETE FROM relation-name WHERE condition - if (input[0] != "DELETE") { - cout << "Error: save keyword is missing." < listOfTokens = tokenize(s); - deleteCMD(listOfTokens); -} \ No newline at end of file diff --git a/Parserv3.h b/Parserv3.h index d3f7812..0064a9b 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -7,22 +7,22 @@ using namespace std; -class Relation +class PRelation { string name; public: - Relation() + PRelation() { - name = NULL; + name = "~"; } - Relation(string str) + PRelation(string str) { name = str; } - void setRelation(string str) + void setPRelation(string str) { name = str; } @@ -32,117 +32,140 @@ class Relation } }; -class Attribute +class PAttribute { string name; + string type; + string size; public: - Attribute() + PAttribute() { - name = NULL; + name = "~"; + type = "~"; + size = "~"; } - Attribute(string str) + PAttribute(string str, string t) + { + name = str; + type = t; + size = "~"; + } + + PAttribute(string str, string t, string s) + { + name = str; + type = t; + size = s; + } + + void setPAttributeName(string str) { name = str; } - void setAttribute(string str) + void setPAttributeType(string t) { - name = str; + type = t; } - string getAttribute() + void setPAttributeSize(string s) + { + size = s; + } + + string getPAttribute() { return name; } }; -class Union +class PUnion { string Un1; string Un2; public: - Union() + PUnion() { - Un1 = NULL; - Un2 = NULL; + Un1 = "~"; + Un2 = "~"; } - Union (string s1, string s2) + PUnion (string s1, string s2) { Un1 = s1; Un2 = s2; } - string getUnion() + string getPUnion() { return "Union of " + Un1 + " and " + Un2; } }; -class Product +class PProduct { string Pr1; string Pr2; public: - Product() + PProduct() { - Pr1 = NULL; - Pr2 = NULL; + Pr1 = "~"; + Pr2 = "~"; } - Product(string s1, string s2) + PProduct(string s1, string s2) { Pr1 = s1; Pr2 = s2; } - string getProduct() + string getPProduct() { return "Product of " + Pr1 + " and " + Pr2; } }; -class Difference +class PDifference { string D1; string D2; public: - Difference() + PDifference() { - D1 = NULL; - D2 = NULL; + D1 = "~"; + D2 = "~"; } - Difference(string s1, string s2) + PDifference(string s1, string s2) { D1 = s1; D2 = s2; } - string getDifference() + string getPDifference() { return "Difference of " + D1 + " and " + D2; } }; -class Renaming +class PRenaming { string newName; string oldName; public: - Renaming() + PRenaming() { - newName = NULL; - oldName = NULL; + newName = "~"; + oldName = "~"; } - Renaming(string s1, string s2) + PRenaming(string s1, string s2) { newName = s1; oldName = s2; @@ -154,211 +177,217 @@ class Renaming } }; -class Projection +class PProjection { string newName; string oldName; public: - Projection() + PProjection() { - newName = NULL; - oldName = NULL; + newName = "~"; + oldName = "~"; } - Projection(string s1, string s2) + PProjection(string s1, string s2) { newName = s1; oldName = s2; } - string doProjection() + string doPProjection() { return "Projecting " + oldName + " onto " + newName; } }; -class Operand +class POperand { string op; public: - Operand() + POperand() { - op = NULL; + op = "~"; } - Operand(string str) + POperand(string str) { op = str; } - void setOperand(string str) + void setPOperand(string str) { op = str; } - string getOperand() + string getPOperand() { return op; } }; -class Op +class POp { string op; public: - Op() + POp() { - op = NULL; + op = "~"; } - Op(string str) + POp(string str) { op = str; } - void setOp(string str) + void setPOp(string str) { op = str; } - string getOp() + string getPOp() { return op; } }; -class Comparison +class PComparison { - Op op; - Operand operand1; - Operand operand2; + POp op; + POperand operand1; + POperand operand2; public: - Comparison() + PComparison() { - op = NULL; - operand1 = NULL; - operand2 = NULL; + op.setPOp("~"); + operand1.setPOperand("~"); + operand2.setPOperand("~"); } - Comparison(string str1, string str2, string str3) + PComparison(string str1, string str2, string str3) { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); + operand1.setPOperand(str1); + op.setPOp(str2); + operand2.setPOperand(str3); } - void setComparison(string str1, string str2, string str3) + void setPComparison(string str1, string str2, string str3) { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); + operand1.setPOperand(str1); + op.setPOp(str2); + operand2.setPOperand(str3); } - string getComparison() + string getPComparison() { - return operand1.getOperand() + " " + op.getOp() + " " + operand2.getOperand(); + return operand1.getPOperand() + " " + op.getPOp() + " " + operand2.getPOperand(); } }; -class Conjunction +class PConjunction { string conj; public: - Conjunction() + PConjunction() { - conj = NULL; + conj = "~"; } - Conjunction(string str) + PConjunction(string str) { conj = str; } - void setConjunction(string str) + void setPConjunction(string str) { conj = str; } - string getConjunction() + string getPConjunction() { return conj; } }; -class Condition +class PCondition { string cond; public: - Condition() + PCondition() { - cond = NULL; + cond = "~"; } - Condition(string str) + PCondition(string str) { cond = str; } - void setCondition(string str) + void setPCondition(string str) { cond = str; } - string getCondition() + string getPCondition() { return cond; } }; -class Selection +class PSelection { string select; public: - Selection() + PSelection() { - select = NULL; + select = "~"; } - Selection(string str) + PSelection(string str) { select = str; } - string getSelection() + string getPSelection() { return select; } }; -class Expression +class PExpression { - string exp; + PRelation rel; + PSelection sel; + PProjection proj; + PRenaming ren; + PUnion un; + PDifference diff; + PProduct prod; + string temp; public: - Expression() + PExpression() { - exp = NULL; } - Expression(string str) + PExpression(string str) { - exp = str; + temp = str; } - void setExpression(string str) + void setPExpression(string str) { - exp = str; + temp = str; } - string getExpression() + string getPExpression() { - return exp; + return temp; } }; diff --git a/Parserv4.cpp b/Parserv4.cpp index 8d5f17b..f6c0bb4 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -118,8 +118,8 @@ vector createCMD(vector input) input.erase(input.begin()); input.erase(input.begin()); - Relation r; - r.setRelation(input[0]); + PRelation r; + r.setPRelation(input[0]); input.erase(input.begin()); @@ -127,21 +127,39 @@ vector createCMD(vector input) { input.erase(input.begin()); - vector e1; + //vector e1; + + vector a; while(input[0] != ")") //inserting all values to relation { + PAttribute temp; + if (input[0] == ",") { input.erase(input.begin()); } - e1.push_back(input[0]); + temp.setPAttributeName(input[0]); input.erase(input.begin()); + + if(input[0] == "INTEGER") + { + temp.setPAttributeType(input[0]); + input.erase(input.begin()); + } + else + { + temp.setPAttributeType(input[0].substr(0,input[0].find("("))); + temp.setPAttributeSize(input[0].substr(input[0].find("("), input[0].find(")"))); + input.erase(input.begin()); + } + + a.push_back(temp); } - vector e2; + vector apk; //save primary keys temp storage if(input[0] == "PRIMARY" && input[1] == "KEY") { @@ -153,23 +171,21 @@ vector createCMD(vector input) while(input[0] != ")") //inserting all values to relation { + PAttribute temp; + if (input[0] == ",") { input.erase(input.begin()); } - e2.push_back(input[0]); + temp.setPAttributeName(input[0]); + + apk.push_back(temp); input.erase(input.begin()); } - cout << "Creating a table: " << r.getName() << "\n"; - cout << "Primary key: "; - while(!e2.empty()) - { - cout << e2[0].getExpression() << " "; - e2.erase(e2.begin()); - } + return input; } @@ -190,10 +206,12 @@ vector insertCMD(vector input) { input.erase(input.begin()); - Relation r(input[0]); + PRelation r(input[0]); input.erase(input.begin()); + vector s; + if (input[0] == "VALUES" && input[1] == "FROM") { input.erase(input.begin()); @@ -202,7 +220,11 @@ vector insertCMD(vector input) if(input[0] == "(") { - vector e; + if(input[0].at(0) == '\"') + { + s.push_back(input[0].substr(1,input[0].find_last_of("\""))); + } + vector e; input.erase(input.begin()); while(input[0] != ")") //inserting all values to relation @@ -218,7 +240,7 @@ vector insertCMD(vector input) cout << "Inserting: "; while(!e.empty()) { - cout << e[0].getExpression() << " "; + cout << e[0].getPExpression() << " "; e.erase(e.begin()); } cout << "into " << r.getName() << ".\n"; @@ -231,14 +253,14 @@ vector insertCMD(vector input) { input.erase(input.begin()); - Expression e; + PExpression e; while(input[0] != ";") { - e.setExpression(e.getExpression() + input[0]); + e.setPExpression(e.getPExpression() + input[0]); } - cout << "Inserting: " << e.getExpression() << " into " << r.getName() << ".\n"; + cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; return input; } @@ -263,7 +285,7 @@ vector updateCMD(vector input) { input.erase(input.begin()); - Relation r(input[0]); + PRelation r(input[0]); input.erase(input.begin()); @@ -271,7 +293,7 @@ vector updateCMD(vector input) if(input[0] == "(") { - vector e; + vector e; input.erase(input.begin()); while(input[0] != ")") @@ -282,10 +304,10 @@ vector updateCMD(vector input) if(input[0] == "WHERE") { - Condition c; + PCondition c; while(input[0] != ";") { - c.setCondition(/*c.getCondition +*/ input[0]); + c.setPCondition(/*c.getCondition +*/ input[0]); } } } @@ -301,10 +323,10 @@ vector deleteCMD(vector input) input.erase(input.begin()); input.erase(input.begin()); - Relation r(input[0]); + PRelation r(input[0]); if(input[0] == "(") { - vector e; + vector e; input.erase(input.begin()); while(input[0] != ")") @@ -319,7 +341,7 @@ vector deleteCMD(vector input) cout << "Deleting: "; while(!e.empty()) { - cout << e[0].getExpression() << " "; + cout << e[0].getPExpression() << " "; e.erase(e.begin()); } cout << "from " << r.getName() << ".\n"; diff --git a/a.out b/a.out index 6a77a3df2bea8473f5f60940f721d90c854fadc5..a09701b37fd268a79cf4aaf2d49eb0951c61e5a1 100755 GIT binary patch literal 87749 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 ZKX7r$9%5-6L>Eeo#$bJu!9R%^{|#1L+kyZ9 From c2cb81d31ddc226e8ce60c9703687e7c3ca77c2f Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 12:42:08 -0500 Subject: [PATCH 125/186] Removed isRelation function --- DBEngine.cpp | 9 --------- 1 file changed, 9 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 1d969c8..116638e 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -28,15 +28,6 @@ vector DBEngine::getRelations(){ return tables; } -//To check if a relation name is already used. -bool DBEngine::isRelation(string n){ - for(int i = 0; i < tables.size(); i++){ - if (tables[i].getTableName() == n){ - return true; - } - } - return false; -} Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ From 1f004caf3faa88b62a7cb18689c5e9060338dddc Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 13:13:39 -0500 Subject: [PATCH 126/186] Added a key bool to PAttribute, made sure CreateCMD saves which are keys. --- Parserv3.h | 9 +++++++++ Parserv4.cpp | 18 ++++++++---------- a.out | Bin 91755 -> 88288 bytes 3 files changed, 17 insertions(+), 10 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index 0064a9b..ff44cfd 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -37,6 +37,7 @@ class PAttribute string name; string type; string size; + bool key; public: PAttribute() @@ -44,6 +45,7 @@ class PAttribute name = "~"; type = "~"; size = "~"; + key = false; } PAttribute(string str, string t) @@ -51,6 +53,7 @@ class PAttribute name = str; type = t; size = "~"; + key = false; } PAttribute(string str, string t, string s) @@ -58,6 +61,7 @@ class PAttribute name = str; type = t; size = s; + key = false; } void setPAttributeName(string str) @@ -75,6 +79,11 @@ class PAttribute size = s; } + void setPAttributeKey() + { + key = true; + } + string getPAttribute() { return name; diff --git a/Parserv4.cpp b/Parserv4.cpp index f6c0bb4..09a7383 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -127,8 +127,6 @@ vector createCMD(vector input) { input.erase(input.begin()); - //vector e1; - vector a; while(input[0] != ")") //inserting all values to relation @@ -159,8 +157,6 @@ vector createCMD(vector input) a.push_back(temp); } - vector apk; //save primary keys temp storage - if(input[0] == "PRIMARY" && input[1] == "KEY") { input.erase(input.begin()); @@ -171,21 +167,23 @@ vector createCMD(vector input) while(input[0] != ")") //inserting all values to relation { - PAttribute temp; if (input[0] == ",") { input.erase(input.begin()); } - temp.setPAttributeName(input[0]); - - apk.push_back(temp); + for(int i = 0; i < a.size(); ++i) + { + if(input[0] == a[i].getPAttribute()) + { + a[i].setPAttributeKey(); + break; + } + } input.erase(input.begin()); } - - return input; } diff --git a/a.out b/a.out index d954f1a32fc31e60c9fc1b48ddaffa37793bd254..4375acc41b4eb4b625a45b483108ca1e38cb6f31 100755 GIT binary patch literal 88288 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 BGhP4y literal 91755 zcmeFaeOy&l_CJ2^g{x?!_>hvBUX=_B5zWlf?D~LR3zd9mtW-cir4R@%YG#EZB_ZWh zHa0oMl$AAB)R<$98L5dqQ{$MGqx3izWsJ&-%HsE4Yp;FoxtDv;neXrOU&oiMv)5XC zt+m%)d+mMpdAPSFr%ZG@9ELue#u$T2HC;T6QhyD@{V^8>H`3@}c#QLmbB%VuxbWY@ z6oTqZ!)6h!VU+Mi07l~fNT))Kbb9zi!`=#QXs9hDNcsYYM@|)7Q=^I+!g5AXJ+ig> zZ7u?)^NEH_$siot$S6MC{Flt5dVZ>*&x=Dz`` z)uw*o%cApwm5QNYrH4;6+}%OpHPrR4LOrtcR1aPZU%w&^D4B1EaQvVU0UOYXS{^Jz99i4>h zj{npZRPR7;)qURVwfpv`uGx5Z;@CACH&@O%2efnXpN>unaGfqVKLh{!3a+2P9)M@# zf1H#%3M9}|&IbSvlyd^Qjr|2jZP7;`oVf9y?4U#Yyq7AT^e?rYd{1rFhjgjYUJw$B zn#}NYDRmZjra&4WUGYCw%BKN#!~e7JKN|m~``D+{PHLO7ImYPch~cIZp8V7Am*XAc zlmD60eSP%!n5R^yR;OE%rJqG@8@_%oG zPqvZsqz%584St;so?^z0|Dng1HvV}SjN$B`3cNd12+G}U~+g&ztN^I=++3+ug!fj5gVrQz% ztJ)tY#Ln~>k47=v4>?^h`+43==dv29hViP%FA0%jARia`vNF#(IU>P0w*IQR%^Nhma^2A*286gxLy9=x6hPx>+!Ql~6knpTiqSd^ca zk(=YYDQ$5QR802`&&)6O;Vf^-A};3^O$y_zY2+kvs`lxOwB+d*rYXB2Cp#}IH>{(> z)SZzwBMG%fAUae(W@Y#?q?y!a?o6jr`oABG~|mKj4?7P|YC`YgXK!3vCE`8!K3Pvynj4<1C}@u#=BC-H|QQLcbvvY!r%OEI26X zss(RdW6rYRX>F#DbPJx=Y5G`b!Rs|E(F!bhz3wIaQVU+M4GCXj!PDAUAFC~R>-@OZ zg72o80oPmbv^LjAl?6}hZhdUB;A!oxk7^5Eue*u1&4Sl!TEf>@@Yc2UUJIVqxcaEG z;Po{l(GFPfbRD3NdJBGlMgsaRcv|c0qsfBT*BC@=w&1PT5Qfa#6jN?ulq1T5@28P~ zF&2D(3*KAW808<22=|umj@o4yEf-F!aT_h?%)sByeLXm%@%oGYm8pmH6T z$5EMvNJ9;mFQGCGjfQG252G?&jxZsI{R+f6?^Bu5S3^CQ-=H#ud_x_VcT$-`y`hH7FHyN0m8-e@Je4W58>+bc z6qPBY8`g695h_zCH^%(xkQStcvwG>O<3YTMt+whjv_?#_u98~iYJNI1$c?JT? z*fs=#IMX{g9>81L+{s)1#S-V7UE7FEm5$GOg-9*+o%@y$ZX1;}|EtXr;P;mA^uBuJ zGOwe~TfWEp-mk@|{}S@P+0J~!^`3j`lh^4aZuy9iUfs>1sWp%{4PdH~X=Q^tGt$cw< zs8ouYn40Mxx)T*t-AvU-$Ei{Dli zTZHo=#mU9WGK!BKhs5GXnR6Z0hQ&mJ!g{h82D8NuWigYWbzZROU8>0SL7kwA+Qi3H zu`_uL)E>$XE>@ON+?p1jr8xTvXCoKaaj~+DB7Vo`V)55Mla1@BHY_F*ERKO>)8eVA z>|-WDYc*FW)1td5OY1zfBwOCklwMM0EOK)7H9mn#KKfP%W8m_bVveN#ojBT5PvE6Y5j z;Dji6f-9~gT(E*KvAqBc6QCepDbNx{Uz#Wws}yjtvMiMpxJo=6Iun%w!a*EGmAI%( zDPRH=bW#emMA4To3hI>@PMlY%ou!52T0lZZ;er+Hn!+w(0u-bu1zMu$yIU0WQ3|+NSyn;{;zhv#rGRiyKw&H{ znx_;n0Sb;bGlP~W`W_YqFDofrM1~^;iK1X9S6oN9U!EB{~ zi@f@q*24||L{+WBXQ#L=o}rac0mGXDDmZg!-D2!bRj>V9jar z4X(J3aKQ=&C!fdUlmfy*f${*iU?*1bq*6o- zRSL93(RZ6rBa{LzBKHEjBU=N=>lgyh4M;V`U;D<`k@R?e(8iM9R=p2m`~Vy^W!d_&DlX5o{SfzVs) z?}>{n;9*&<|1@>}6`en+bbSR{y=lM}7BaKm)WJR0hYdh)k7QBxRDGFJ$D$75d`BVN z_X_RD_@^>Sy1dqZKd$;9k9~oPcc@~C42h+xSS7^H>4Ql;Gs>rhd zMA5BF)6!c1C=_|Q->?N2qTcddpw)@oH@|LaIoeaQ?tal4;7qPx=vaS{MXbbDZf?H3lkC?1gg6?8r zeO7Rbh;@m{S|{i)j|Dt%Sa9ROiqNW-VmbP)VUSs~UeKE@HNO&E6e&4^3scp3O@dxw zVQmrIzkq9a#bh-oC1X@vZDH*!xaW!WK9e;`(C1rNFB9Ayz`^twDN;8!(2Zhck4Mm7 z|0mGsse+qKO4^&Ose;~PVNDZUe_}nz*Rqrc^sMxtg*9JTe*muGIg_IUIqm6Gw1QC=rkE$Dw&TV#5t;ZJ-Peejix7( zIWJEP$TPEXR6vZGl8?hvdg$uBTyMeY{lc=pLcGE7*b#r#nrVKWoV#;qhQC{3!ddmq%@wqE*!CDxbK7C%9@jj-R z^+#J;UUFl?*+Iou=vJtI3vjP<qbe}N1TZKs5E5KB zDHqVG7u|=QwOF)X_N1&DNjm4;oh+}yi#<7rsDSVIlH+P3iqNg_;n7}NHEKS_Y3%@M z`IJm-OUr9*Y1wMg5|8sBEj_s=YgrzmCDgCagEgFAVcI&!XGl@PXs?!+4DOG_jB-L& z5C-cxm^7*UH7cf5xOKJff~9OlF{QjA1slBOhp1LNx-Ma_LI~`a=wOML1)^hjgZORi z?6Grf#zZ4ztG4~GUZtndU^sc7ysCO4$g9WcBBYg9Uoth@di89&0;KjbG`;$cmS^>9 z3n9g;?;=yQ_UaA6QW8)M^6GM?Q>?c3Y6nO}awB8%{3rM7JctT6A}Bz)-_%%t&pYT< zZ~0!{EdMFOyY20_)Zy*?>`s%99E$A1kr+oN%7|HoM5ue7vriFES8U@O{|*^3k_F9F z?B={k4yYQ{#!Wnn8UT(}kMGNi#OA?!LzEcq=X^0{wA6fDv;9jEb$-Sy;8(;d9z~XTIr!JBu};x8nJKHkc-72sekF_ z5|6Qi7Fs0oGR}zTelil}A62;q8yEOblDWUz(+*`hvL?3$0i@8ED>NC4$&g0TOeCi| zucL-;3%*((sZv~>w=&wPs;Xuy=M1OI=h|dHOi_M>{sz9OfR(*!)UQ1AD7RthR5253 zJ|sJNx0p1RCi}&!wf@bhJgI!Q(liUMQ$k*3AynI+QvQidu)9@5VX|s?0V}3V7U)BB zv6i6*2`D;C;1muC%I;ya1o)zq3XX?d+R#xxL`!1i6l0M>g4`O$cMfG#d1_3smug72fgbKU-V;S-s@i?E>`sWfXy~S@7BhYPnNNeHl{t%;#mrNWJGwF^{ zIjorMhrzI$n=+ZOIvgq{YxJGi5b{?ZCWVb9*NvSWG#^oYKgK6@O_RjXy)vTpe56eQ>1C#;F;R7;+eZdVrkBtaQjA`Tp>!SR=K*E|_Pwm?s zAGq*wo0l47ENrfviT`FJeP$!&Ldn8U?QB(He7Fj58C&o7mQRLPXj-3KkCp(>T|%u0 zS?Q7c5GiA<6w(c>xiTOzP3&kTW-2rDHH}&er=!9qRH%aI)`M}Aq(VSRg?~{)m=NgO zR2WB0oC;Bqjk`^yQOy#?EGq8T!&B7~4)^?v!;0CE2SpM|orTPv3=?qQnVnD4_ftNPevJC%V5t+ncJHLnxzHP7+vc>qUH>WmO%1*QVSr_U|PY7X|SQL^cux6cU&P6 znWB>)n`0(Fa|sA^6f>%N?}($7;gsvZfSBbzrv-<_Kb(DF3UXYPnd8ufwf>zSlTT#N z;hzWDLH;=mImhkfQ|xaOgRzxaD_n3JuL|w-Hv^i}7XVwiB2& z{m*?wigu@;N^X0Adoa1_6muIq8JfJ*E=SO+_++`v!%Bm4SuwTQn#-JYH$yGHR*-}L zn_O06HtG~}+0<|qnog3-MxavoTy}+(;ttAXrMEO0zMkkgqz%rF(84k7w$_O;>jYmF zoy|;P_m#$2>z|^|?$$bXI=k5G90n3MrIyl&oO-Z;FwbM?T*p?(PFN?a_EWU@bL5H; zpSNCtf5J>^c96Z2csLY;5ql-&Gxw%cWY?vXfB8xhZ1Z14dt}IHWgq*_LtFOJZL#vh z{sp*~b@WVJzk`v={lS(}?x*qo%>fBV>yE}rs<12 zX}%ndz6wUDxrQC^Jv|S@j_2YN*z}u(j+RF6hYYnEs4*wolK4yU$i!<`#$a^<~_zanqr5Ghq*}eCOQ!JfMx0NhFsh@z(h-0#r!-m zk4pA0>8dd$#0N}KCyk+<(4*u>Ttw|2sdur_5H}hENl2i91?+!Rr(h-v-WuW!1xSF? zr%`ZIkC4eQ4^NV43^y3pHsyF^^rz74Bz560b4egiaxU)$QOM5bWqFE!LDR>s>$4r5Fmop%i*cCKppdv=5Xq|6c zXUJdFMP9S_WQn^~n}aQBpd}()rqn7=h!L^}OCucHBSBYeSVWFl?c+R}2n1R;V%rRe{YC}&xThO%T??8KF2%nJI;W;xa0>HCxz@_&KIr9=4IZw6-7d{p)Dds8M@>vx7O}U*}@0 z5r2U1sTkhi5x;?$gGT&5dNd~{9-NBAf* z^nV%Q^oGMpM|fXI*AdYSMp#Pu7^=!W7 zW#&0Es|9CL&I8z4dt2Y9#r$A;<>;9z)71L6lS7d4JHfTsl537k?&g-ynC_WI# zL~ZMta1uRxMbA3~p$GX7Ik}Y{ZKLG1+bvxx7ThWpB%P84*P9lo z9Tjpi(hetGS_*Qim<}ejs;VbnPGC)x4LCtvh+<%+G?s{J6(a4SNT&9hTa-9OpIFv~ zmiyFR=!Z^TvDaWXshVxz9R|KgPUVGaU_Ft}nVIgI(u7Lfs8#Dvpr@~3-_eVZN&U5O zom^BVpdX3hb3#$`NHpyqsu}#RsOMk!CTOL*y|Rg>6Dry+X7OeU9zdgf7g$u#gH;d* z{k*I%rJ`ED$Y67aOlUHhal7_{Tg76yt7xdM^`B2G{lL7?n-~7(ys%lR3)%U@sI;y; zqfK_2k7ni`vmSCvXI@mPXAD=$DA! zNM_Qopi2^;%RicY-D;@-wM8J92{Tv}FQQsCWp2Pu-4eY*g1D83EaJ>O!J64J?u1FE z2;Jv(Xm1T&JfeYnX&sAz!gH47m)of&f$sQ`dxv}e7NQ83htBy{fVyvis;sIJ^8xbD z^N{O5dI1G#|2N3rJl^i$Q``d~$dOITxn46aaQwAG z=?Oo}Xg`ly5NPLFCqfS%(`vjlX`qKyo_wRf>Mdtta9^ftgD;ZSfQ!+i4vov2I)kKkVem=;~LK?&S z549mT=VO5o&4Wo}nClwpgALdU7cU0s42`2bFfhOuoafD1EGQ#N+{! z3icW*swaJh6cF}lQLaIV&emWZt1CQ zGu7cT`|D()r?O~s{YEo}svC%0c8Xd(yg$XVf0yoR?eCC`Ama*|K(8gs!)@c>9wu(9lrE}I!k+_4QVTJ`qwyRp z41jNT;2ur0(fMJzDtMnpp*aScP|^>1s@aV(6s=1!Sb|28Nx9idNwSV`n>oso9Xy*r?<>b(QrN)lsXQ(XW#E5L@g2GoRM_uOS#b z3#Q}YEB`02kVM`9q|tT?CKU&p^d0RH!zA>(dKM$RNl(_8CUp{%_7E!Aq}#}(DFKrL zV=$0|P8y%Q2d={ro>~NVsmVcy;|9_kJ{-eqjNwp`K%h*63~6?H5b-8jidl$35g}$+ z#!|pmHZ5Y2B)8(cB*_ICja~wz7Dqkl2fst zZ3x?d^IxV0Uu7peN3jkW4iw)=*u` zz7*LIZ%rS1_&vH^^okvaX~U813fPe1$Ws%mqtE5O4!J0}*6EEXx{onn) zrKL2vkv6F7Dm?B{$&G3zc;x8$v`i4LcfqCo!6_^f8^Gd^f2dX-u=pg%c5Uw>Z7(=Y zd+TX;3jGjRROWV}PC}yssL#O^uw^`KS@p56S2%IM2j@|bwC8}eJu7!qmFTzYzJ3X< z;d}4Wye1%|H7;sRpm(VyUPR$uSw3%rY1?30olK&OsU~fG1gy;@6wOI|;mi*A|H>#` z>2J78tSaFB2j*6b?i`#4xqTKP)C*yX<8tCwVK^IZfT6Tk6O=d5Xv?lrJZwL(<72bw z-@k}jYDB0v4U-{p#}A;>_&flr?yk6S{vFC2V72}m(E{=^@njxgfifE3{16JThNWGO z;_VjA%Sp3xteIojI$EMq^pOEMhseB{2P&qyy_xTOFILm2ulo*Th3>rJkkjxeMu0YS zE*l{t*xeVimDZqo7t6(P?aAN^TJ)7#5~cE6-zq^LM3wMO^dGP^ab-{-J%LKnKigZi zcSYlBnC&fpc_~d+`;H{j!|(qM3MVLqCBX_W zglO@5!v^jHKj)$>=>yB-sdPDm*AFl*XckhJtOM~-mUM$MIFJZFpyfD?8fEYvdK^kd z=QP-Zb&Lu&$_pjJ^eELqd)|Xs+*RSk)w%3Oc+t{v^2F%{AE3<=mz~Qdkn8ocsMrua zI!h(H8WI;z2pM%%gy;!`^y-(e#gZ5Qwl%;Ct7`qZiuEYl^&&B^*iF42cr4N8eXLpZ zK2{XOsrRv{sNTnl15Pb#FsX%kAM4~#o!?_hX!Cgr{??W3BD?leGij4p-IpIio(?=u z@iE1*usti@89pQjkaJ%uqY^48Une42juwtk-Cb|Nw*{PPs3*ZP*V z7DfvuBx~Lw`TapH2-8Vf?xHDF&BQcu*0}I^t^U*Jr&=j;>Ej)$HO9~?*PKGYn1j^&Cb+R6a#*K?LRaSJ3?v`v{gv`f}vo&zz;_ifxKxfH3uGT0I+GXy%LFNy)X==0a; zdU`g?I>3|Q40u^$Tjq{?ahcg|0`lTsdbr4gn*AM)KL+G{&WdnENWBlMdn_2F_) zc?K9xe$CBTy*4>GnIO=NqkSL}4^_ZfG__iutk}cz*X#ILBR&JEb_ruSd}T`HePlZ4 z_wj1|H~fXX#$`9f<#mB_?2eKZ9^{r<|A+w6Z6f;#a*rpT78d?mPXe1ZL67><8kYDZ z`1CG;srJ4gBviZ}*mYdLnZh9Wef@ar5G>!jI(Z)(jf&4>&s-XShSvK3_>@^@^>^yB zdT+8`wnWC05^A@43GslS69nCP>&$)X@WiS?vZ)-e zM$0Q?pB#qwI2Fl$L4Oi}_mhxGXaf^M@H8Bl2-n?$+ax&dxznjDOLxyQAAQohH6bq@ z>z9OU#I);ZH@Jd6b!N72-s3>=LlL-N&+mou)#$mFHr~c8>WcYd+Hs_}HY?3Hg}>x` z!O5%5_O4d#T}w^*8q5Bp^Hn?G(pvv82-6K?j(3SeHZWjkt$#o56$U)QOi%IEgXs~* z-7h%y$j@Y>xqA_Q`C(we{TeVWQiKe{|68?b$WkqftmP# zW?h$3IFwuW_lo@FLtNztdg0lxvB7U{V0U_qx4C+@lJzz0Ry)Q_qALuj!MA6qJ?4JV zO)c=Kb;o$eM)oLi{sW>V*{gYYMPoc&ftSC0;1^=jA1T(KCK~|$9c~PjSLkISKi$Hl zwy4hwZaxw1O;{B( zPoVQVV9O*pcgVc)Naz(wb6|C(-=)B=NgH1lT1Ig|(keWdu=sNqkYW9@&?B5E=owkH z>{4AY4DqV0Z}q4Q#Id*j%oXu@Ert}AjJ^{Q!aFRKBlKHN{J5)R4HxdFwEhOpSHV)M zQ4D&!iGGtqE#x3JX={ADux9j0`^jj=0c>`Y-3hXdNDG_|R6MRJ$@{t?M+R9vy z;@X0ir1XUdr}|I?UO_&GmbknInKQKrGn(=x8Jc z-t)mZkDtVc(Kg!LQTIgY>H+Ox(vL4F65k_9_S5ZJ&cw8ML0}K3n#w_ws>DHowUcR` z83HVG2yxO@jJ^dMP`8h#l4N{|#0?J2Vhki+{^u`|(7du*wz^kKDtPHvHUelfenFzx z*Ncp`;({F(PP~CH!l>4)Y9x~q^20qm0b6#2?k0o~U*~gkeQ}87$rmeVU#lUXCM;O^ z(p02J^GhU;QLS=x3fT@7X&lE`wFG~OWRXIPRp?gLZ%-?99cp9n&`MM7yIUfxoGxCF zA;W!&WCKl}fw%G5fXBB2$CElY`QZq%I*HB0GM46l_4?-ZN;RS=*&na1&p~Ciy9AHV zg71{yu4N%q+wwO4AT2;zKA07gwW!OhWI*_aQ+gjFGDYw5Dq_&CNXQseV-0H6Xe&R;VI7J*F-69Vj7<0^h9$20tdfdz`Ob~R}cOZyUzc@27<^l zwf_I;$)@bDRpzzBSdB!&hkS%a4exUab}QEJ$ti8RnBqd|=R09T%V z<3Z9WA0yGTgPT)>x=^RyX_7eljys4hK=^`45}uw_%%WO*g?nZs@Tk@v78R6ueg-Ni zpFG05;_RRw+06gqn<8Cl!0@#an`*wdNx_fNYF=lVZTlp+ZI=B+-WL!5O_9B*Wai%( z&TulP9#rB^{+c8ET+e>-5P|j5U%dJRZwaUdg1p}+CjMwLW&Vm zd^-&Jg0C8YL9PQOO4MO8sdrDMjcq|e~Uy}-g!y9pTs(lXU1W?_Q=al<>j=y@8=%ul9a>OB2@+w2JZOC%YBRMZ;Ir|R z4%8;&qeS7Yzgj>2KB-!d1ivrS6?p6iTHc51x{d^J?=0a{yhKD$-6()^9wa+)sp0?I zy}(;`3*l+Y>K<_rvJ#fa_y`x0rVo4mhkcLS%bNx81bzC~x=f(FY+f32`e;R0 z2t66b!W(dX;H?Rs2%Ws8XikI(25fa7_7D6vcq04{w#;NAd|CC3zF3p>K#;H1%7~iP z_DWGdHXTooO~*?u*vMhf4JOz;Hmz4gBXyI4!qt%AjAymj61b{5$WfzeG$b-{&8- z7HZ4>2WBNTaq%nNpWJ385V_Ui(_LlB)crQL$c*I*VJ1)vwksBA2QjrxGn}RcU zN`)^jKBZ!L9PZ}r9;xoH(T@S*DxK0_)SO+raOS{oYtnJ`*lFXvW2eOrOB!U1!%yno zFh8TnXQUM8WiB)(FDE3k!4b8>Z9nTf@f0{QN9q>Z0u2Y@aXN zm{^#To#mdElbLN?UYK8u-?24j6lKi6AtSqRp5e{RE6z2hW#{GPWEt~w@^Xq6W@j0T zvon49g_m5CHaRUPuP7V8MVwK*lpACDGchA4x41Cd?aO!L=YER|^Dc4w7G~r8#^P-J zuyK|(FV`r(RpJ60oldv9eJYYQVGilQhFbi-Y;H`k00Gj}t0k6hRB7Mhe zJMAa}?gyk_m>i9b;kAHU0jmL*V#~W8@E$+|Pj*HlPr3o$0Zaw-0~P@0A4fWtST9v=1_2j~IJ1xyFL9k2wj3a|=r;FB#adjW?7`T^$vM&a4sI|1VX zFTpKJde(Ou5;D{jsV;SSO9nc@K(TPz%_ueoekp%pa-zmv(O88C145Qa=TfunDjRFb2OE8ube7222M`1zZkT0QeN(TEH!U)qwi}>j1mr zk%T6|-heUqh0!s9Nr1}$QvvS-EC756a4ldBU^U99QbiiK$O8^J#Mt#6Kz`cM+ z0R4cGufcElrPJAfNr1NkrUKRg762XsTniYn2X+Hi10Dd}0oV-Ku@-vq%cyaH9>8IM z>3}JKC4g50Rsm)K)&SlLSP!@c(7-RKJ`U&x`~c7c_%&cUVAfv5H()v7CcsYs>i|2w z4u1j01IC<z%77l0rvq`1AYNm2k6C;#pq)g(*WIo>3|-h7yS=-0Pr7x2I?CJU@z#)K0;gpJ_;BW2RlASI|03bselE5 z1%OWht_2)>5b^-;06YL#4cH9$Jz(rPkoPaN6YxI3binq95Ep<6fSUkU0oDN?1Z)O8 z0vJ0G{yB_s1lR{~7T{FCrGSqBt_S=F;5NX>dgul02iOca1~3-wdLD2j;4#2ifSo=; zeZZA~>j4h}HUn0D3O{3^zw|Ts3-B4hg@DHZR|Cd=4m$xS0`3JY0Q3Vs1Q<04?FEbn z+zIFfeEtjg1@J4tYQV@Z;V-}mfK7nc1IC_x)1J(hq0&D`LU(Sn3g#Q7P03ZJj_5#vR3N8ig|2^sfUJFDjx^?-GNM*y1un*n2nV!rqZb_0$FOa+_^SO8cExE8Pqup00gz&gMqfK7lM ze@1=u*I9r`fVTps1AYTo0(kog=mo3-jJg1E1?UDG{R_$+F+Oo%n&iW=Y?|R%8sj)C zx_#7I2XY#)NU6rGQs{8vq*KhqPO(>XK5a=LoaCk6jkm9@02>jJ(y z3!k?%B4TwHW+Xlz{x?BhHelp{ZNc)c3&`65dLr7zd>4f0uxl@V(qOI^;tD%+_#*+pMQTKhnF zyNEs-^gBVf)3*WoJ_nukWuIK%8pvDx$ME{d4~>vl0D2kDBbQj@Q9s_SY$v<+LC!ni zvx}$Wpl=5qDK6lrtU&$l5t!@Su)~M?HK0=*M3#owaeY9}Y{-dz(B6*ap#Ri{9UDN8 zMEzb?J1ud)9rRz@u(LPl&7iZt?hdij;;+a^tjXH2GY<3#pxgOt0_c-LM=B2ZbD{DB z^&9<&;I*JXi}T0_L+p4g;IB21^C|e2Tje;HFaybHgq$%OT3W6KjND?8bNQNx(#VJ_ zBEZT04>`FH+uM5_^u?fGV%4LD3CDeR7vdgtyZ9Ln`mHu}vhzOCKNshb$1QeJoX!Ze zcRA!d0y&rp0)D$8K;HoR^PnTu2k5y0`gYKFwLw1!`aaNmS?gQk=LG2QfNs}svq3)y zdK~%Nc+q3#6y@(&?Qi;y-GN8!{Y}3L`e_^VRiM-3Q+EE|2>M4hbn+GE0WAE2iw z9TZo+J0Pw=r+Ln-f8|{fm62;)rR^dToM0us3E(^U818}K+~lL!dnMT3T=3occ=-M$ zIcq>K1^suSa%8PUXtH|?_?`#fNGo5F(#81?^fy4q(l21oq5%Ck=m%}=p!(ghHvANH zIyc+%yFmTnpdSL=Yo$BKGXvF`0eZV9T3Y4>(dU?S{%$+ycJl8-{RyCl%S%*e3+U58 z4;QBtN8Ld$0G;D#*2&{2@-*xXf!{8U;y}M2bh|j30Qz>&?cyj4^k+bS-Rh4p@v#Pc zshh&b2eo@M=rcjLv*Rt$mxFE>7mc9b2fAHcL`UP=sSW)Jpl=4WmkIkU>ZbScDBHvDbBk1H` zJN?lZ0C6_@DL*BE-Usxc{^PZPQ?jPYPcy(b1$=|7ew6h!$=L!sW`X_(oJVF^#wU%5 z%0Pc@fSg+J*~R;I(Enqjhhp>~=-;-4EobJk1PrC z^P>SfBk4;0FZOX42l`Kt6D}@E&jiqqgMPBO$OT^<^w{}x4d??w9|xJ{ymL#y&ds2E zLAUeATcA$_-Oe8gpkE0(`(uN>Ke{84*MSe=5wJt{BdEPT$k_pU3eF?9g~%Bfuy;1( zdSy9Sa<3(>_4-?`9jQ9W8;yo~z;73S zvq3)(bi4K}2R#;aJAZBfo%~@JKifec&_?}(p!WeCAkbb*f1D8ccJ}qgJ;1j7JsR}3 z{5@OfcK#;&O@Hq@xxY6<9{Jm6ZI4r3Kyv?sejn&|?P&ykWgGsA#y!jBZO{`yUktik zf24qZ2k6s-?3=;^fb7c!{Uw|FG~VBWeQ$z(FU}+DE&iZ&LAe@7#CIHgBc2w%=J0%^ z?;!L&0zNx`oB(|-=oIf}esaz=?d{zYd8Li|qe0&ZI&L8b>d#VklK$DCztRSMIq2Kl z(7yrn7SKmqJ36{^kqe z^CjnR$TwhLDL`b*OCHn5)Sov6`g1q-)2eP0CZ>JE7a!RK;< z?@IxgdT6DXR3CQ9h*UKM*T~yblJBhJEB4F`Zu|*82xvTX$$$% za$Rv8d@I0bcU{r_EW>yLbh|hk4tljseX?T)==(uGnLn0;Z`ii*^B>9C0D1!GMb`F) zTmOJ>3HWT+KcFuMeO7BZ=5-tU4^G~E5bhtSX50-srALzT= zpx+1j4$$r9nJu8xCm8MKnSG!;U$n1(9Q1B&(7Pj{$ANB_*N219uMPSP(EEUHH&6RO zF9dzG)jyWJejn&}f$p}_E#qX1(Cy^!1N~Ff|DCnIa~cmMG~GB3`m4xqms;tTectZ4 zz&ZqaxV%qs;zRv|kiQG(k!!aHkFyumc;)y7-_n;_T0S7Yzl89;9T?ZEpfCRKEiEIg z_S_htZv=e|=pHNGa{p>K=yO508?T>(z7X_q^8)!J63^f)Zliu2=p}8`p8)z@pyM(l z5bu)%_Gd|byZle~7ovU>*;2bb*q>hpVrBJMGuY381H-zFnSK1NqZHuYs({Z7&D6W2m^osGH>=K8Q72+4f=UjdUl}Q^rXi`(CzG< z0J;bCaN~>ovJv{HfL=hlUbEOs^Ri{XYz^ex558$uJDh4Dk(@@z*$etL5s-7hB8TV1 zh{^hX9z22LG3*bIz78+H-B{>fM;k>KOCLx@S%P^=yP!%8TU$XTv_h#&W4;G z(31o{vmY(@cb9`c5OlkFZUg8SwL#wwx)=0It@0(0)Af9B(C35B_d!Nm?9_20dx=z? z{1T1EJp}%6?IwBx=xac?TQ{YE{ygY*c`g_9jiA3y3N82JLhqB^2fm55_IYLt=vRUs zG`~?SNzNtlWbZ-nEd$?3LTG)K`(!6TzX$YTR{Ekq-1kPJ+h}74$sY~+Q=rqiDc^FR zY&PihEUVppvgM$^1A3;lzUBIJ1L$4%+RNV#dMD7sjXQ2X=)FO=8@DGw?_ooSYmD9l zv7ZHcTkA&BGXZ=a@L^a4{9w7Sk_9^bY7_03ntpO#&W@(~t3b~K-EJIg1ib`wOp}57 z61!A?H|V#5j^+gDa^IZV5eIrH=uhK3vcxhDC}u4C;L+#e{>bb0`&kK~e*-yo<0A$1 zdeH6soeTO$pxd=`4d_SPsJ|KXFG0t)QJ|fc{j9e{zFj;tg6>CsJNu(?;k6(1(N_8J zk=|cS0G-D#$o|hzpW;38eM>*+d=#?3xB>Edpg+Q`bE#iXKps8g z&HF{o7J1aKvR_2;@j0~%e0J@Q!~!B2>)A`eYsRN#Jsb!6JkZ0fo2V})fW8*;om5{A zvTrug4Nlj0vBnOk>+M+MZKvy#SmUVE zwf;;zcjbDdm+?-7>*$$AQ-o{RnMO;5>w`0mKSjFk>SgSYbiLin_$t!%VlU%YKL4A` z)!fUdbGbh6WgO=7_3d1bo@G4O&UN=$Mh&0;*v|FNS;jr>T`!$w{JA}yf7IUf<5|YH z?Ok7-Wvq;%^S?*AHug65MY-1YHa_F?4INzX_BLMV;QD)SV>h4w(!uppZ{z-st}lBV zk9DN;Lmgd@oo)Qk(e?YYjoVM7^Npvu@HqO*r=@P_Z#*CE!lU}{N4vJ4ZG6J#Ez#Y9 z-*&p|&OXL_r@OvC+o#aV&LEzO9 z4vdkg5w1&(X&|wzDG7JGjHev#pCgU;94?$UlB|D0)>AIW9g!H{_mG&!=+Ayv@*nJE zLGEbRc;j~@*LogtrlSk}QsWd?u44gUg~N4?n9~AUXV0M99gY>$x($wwMW&%`(pntR zv99xtI8^fBKj|Cky3Cj!dLD6xN6(>H34inCrUTfn z7+G{u0L-6++>uuINuOK_}3#K{d@WY2Zcs)>zF(_hZ(g9CF-A`e!bn|Uu%rv z+zfDv-T#Ytv+d{qIljWpEnx+ybeU)OUEW09&;G;$Z>hD zj~xbb%~uZNAqUZKcdF6Rbu{2q7d{p-2PfM^#u;(0qv(TW`y9sGSU@<8V?r3>J=-vf zTyHxeEY&c+b-0?H#+^>rzn#YYPC9>t%!AfILvu)x(Z>C{Dq|YZXjesNl{#1xtj_kV9{NhQh1}#h~$d zA>|4wM~j@Q&K^EHUCNtpQ)N67$Vc_t=?wAc7$3NW!Ux~m!r1|#)BP1Xq7=Y;!s@7Y zdidnKUt99=x`>Z%^weeG4b9T9Q3BRvc|@?YHN5_|E=8XwppP?3eu0k*+$wO7!2JTh z6!^Wsc3nijz<~ls2%ISJYJu|wE*5yZ!21P0E^w>BP=8!Le*7iw_~|pJC%aQ}@`{%Z zat}|uAaS_+x&@h;gNLVGFnC@eKCieC-^p8?Q-p8fxrbgj?Ba_qm}7*icv0d7T0Y(1 zRI#Tbs7CbjGc}sY0u?{~j-cX?k@5F{g~xi@4+W>O1b-{=pN3T0q^W5|zO0<=fX-=<&?Nkyj8a-!ZqB^Sw9KO7H2PknkrRvqif^tOMO+hqj40H^=PktiBLWi> zhZNmZl$BjjG-T<>5osfa56RA*KcvW)QRqvYZVV|dDjZT&m^q{%BlCug1=&SI#?73R zGGWL9Qa*TC;?SXq7Yu<7#^qCHy2nm;4@(?&LE=!uQE~@VIr$qjQI1=2?s%P)<7gDU z8fF0JbVMy6;A}sNKxF$w0#WS;F|8dn&FOSa0f>ln<>dK5!=5T`HAl5~I@%TB%ry&t z9A}o%-wqKq;_`O<97zJ&?KILr5>sBoDIL0Jo)q@gz=`At`e9P%{>vD{c0?-8F2|3+ zIaWDz<*riMxg@Hc;{~E!?{EuF3kKHMkN@qfiJmhNe=nwD43s!>h(g`o{xA5WijUze z>N6@XYrx+Q_-}N~F&sA!$H~W3GER#+$bUb@UvWY-QBUs-p=4txqqBp~V@O>LDd9h; zNYpNM_~RILjQ%>h_z7I93WlSL5!0@VqpKq#>a3`9qPn?=*u`;9r*5Z3bULdOQDTtX zopHu#r;Py$y&|Uw_(*k%9vN;#bh_lUQKwDnc3HF&$-mt|V^X)1i|S!kGlfM!t}D^F zELsUXH=0cFkjO+w2(q06D%!hD8BQ1)6|e-ZJk2o^xQ@U@DeH*kw9aS?Sr@I0Jl)}# z)Qv=S>IaKEpW!$+no2P)ZbFxUz{{dX)4V$e|D6W8-{JVV)9Lu@famEpp(E`0!oIu= zFk&-0IQ6KEs4*N7F^OaPjY)}%=;SV5y!1K@dWT~GxSYn>Br{ZjK|?(;ljIop;J?$j z7Jpl@@kqv~#Q;Y_l(9az2pMK@E~U#M$d*HL@-lOav$FA^Lhk&*0l7#XUS{Lv9z=11gT5z%S%bx+sc;~W4>$TIakD$J=Z zXwK3YJRwBiqSAPRTBx4q={XBJ^k6Di#a547oN|iF&CgrlF3u~;S&)a%q*59wT9{wx z3x^_NNES9LW-iPqG*}jKQQjMWsxwV?-r@oyqi{i{HG6ZWw)i^@-`dT=mv##aGj75( zfIMu_w{B6zg3r#&vdZ8YfVk3pB!96HBhK;&!~_$i&mRz6gt4SXP6I$!oGB>W*Vm_a zo2a<~es$Km)(l{U(+(?&BJ0$mym^Ej1t0@>jFHjPjmBOiDD5ot-9*JM$mN-r6QeoMmjwx z;r%H==<6Ux;*X>)U8K)w@->LAKf~!^+6+OsxfJ-LucI`Eo*ATT6Z1M^Gbc4M;VDfq4jC>&=jxrS35l@;XNopjFbkG4mvOy^P%NT zMd^E78|nJ`de9%C_-Iz7BecH4;(;Zc(6ykhudf%~qF|HAA-!aZ*024N0UWXD`uh5F zuPD^ln_%H1wEuE|rE5K1UtixnBNwQ&?4(26ulY2jq(aw@x~#7s>HF1m6ez%Ulbzar zK^v6nsHwWXzFwv8T+@-HfT>^C*X^gYY^|@af2*XvzK|ySu~swn>-sbukWa7-;zREr z(08iopgPt=_q)d3hZAf4YPtTbmiqjSNzDwXv%ZE8ht$_gp&EYJ6c-GOER`+wHTJQP z`g*@(^KFVl#Ax+Aia15!VfKeYTE>XQAse*N3&C>cimDc1i9ycD~-zTPkK zOMM-GTCavW{vx25heU`U0KVo>h0*01_Pl~NNGq%=xv9qm6o z|517lr@yJ2(sc7QRbT%N)vxj4U<9li>GZTBMPRm=5f&eTbzeCCNUZ0=;qmlbSbRHk zU*51B5m-g&^_2yU_D7lf_QCiLhF%W^<1wj3d#orvkHAV!uV1Xh2rP!G!t$SP==DZ0 zeOlodj7DW(Z9V7Jud{~ zX-lc~5n=RcjRYoweheYZ5n;H)V2Qt<4Zgn(et-==&IW&u4SrxNJdN8(@o*p}W|HhRClM#<57Zxg-x zzHO-9r7ME~w&Q5AEl&JP((3dk>0U zeP23M@4}UeU;Fuljb6KWZjbes19^3uT$iwN{5ga1t>c{N;rfw&O4MPr&U+UD4{5FP ztyl2+dWN{@xQ^wt&bL{>_eZ=Py2!(P(8R|w;N4;JYMJm)xy-|SuPb)mHz7Gm=PA5T z@b3%%_-hq@u;B3^KI@%5O5wGfgb0Q2A#$`mvjsnHjN;e*xJK~b->UGPME(aha@ylU zknF6Vqxdfo{tJNbD(6-(SNP{mRs2JRc&Fequ2A?Q!GACKtFBad-QNDL@bX6iPxhQh zQv7<8`3AxF5cyi~Cc!^ELGe?5q=UX09?t%=fG7EHUG8DN{`?o;9})a|v9r72iv+(< z^qwR58o@WpIMV&{nc$1O9_D;n_~&5br7QHtWGlQZ%Z(!7$)49HD}1K#-z)g^a}+*X z@LL7{eMmffBKQl66~FHHbEA~}y0Hqc_c3#TXM1i_c!VDxHwphCk)!?mu;5cCDt^5( z_@~I(B6&>v=S$%qcB$gmdWUvU_8gj`@LK*{!QVGY;kErY15bA9{UAe*mBJsFqWIl{ ze?#y`Zc=!y_Y5pm$*ec+z{~YK8ww@J|c>wL=v?N$~px?-oDsH`GD;uhL(-A72st7ZVi!Ad%k#9Y_5>Px2wHZ|Il@yqnL0 z|J-PUFB3V#mwC8?*84}nCkzb6?+|>FSK;+|IV$*e`3k>`rQy3i*gPXUCyJbG!H*IA zr=mAS@IK(f<+s(s-yAaT_6gp9rP4cEt`zI0sO!9v}Pw}74wG1Oi@S)?5ew&B*pFdCW>weq@JjG|@?-br835&jg zOZ>A2DSVm8ZwKcPf1mjZum0kDq`(vZz!3_QB>W=<|9FAIYy0O3enN`ELmeM~0iNXd zp04nl1plG%e*#%^b;6&rMB!f- ziS+x8BquaKcRNGjADN{1wf_eReqqRX&lh}XKDkTqeQr^5bew-7c>lS<@{Jzh+uIj- zvNK8Ys#olvF8G%&RC2T*$_4*Hp2DMtwiuALi|}P_*-vQ{91m!;C=HHUXRm>vC=Q26@H|l4*E7GkE2wD zzgO_D3;uSQfAxAM@=V1)YqH|k{W1-B9@n`FPv6#};|{^c+~DEzZvJZ+Pl_D>7=_pV zKf?UNWC4+I2-(?rvEm;pv|9y#pV;FT{C42O#s7Zce@Eg__ix9ul>EPn|8?E2f}ePi z(mPz_PXM0U>(5sB5rUs1`~xLE_54^S_+ujfM&bX1;A75La>@k1Q}CC{yg5;{@*Y7DKhWq@zM=}ME(!OrwV>tv68Rl z+$H$o!xWx=n~08j!B>etFI8yc%s#5W(qlY=QD6-4r1#cLh4%^dA;BLSr0`nr$AbT1 zuEGxz{!9CYUng7xJo)FNg^IsM_!k3DdUMAsJi>;LmziG*7T|O%{tZ(+jMetc75ugl z3a{l934WFIuO5$8z<0qvz0VnGsN-4TFSypj2>uo<&OQKM$0`%#&oSW1{?O~nKK&HF zWQ>P77YP4Vg5Q>+@Opk(EcpI6DLlf1j~c;u8n5vE1^=_)SB_J7EyoQ8vgeqzSI6ho zg6}&~@#}H@fZ%=7FJlaK>=*n8S1JC{f*&v-eE(hwd`y_@{VRayxVlow(fx9V;KxXN zb^PxV{N9m@UysLc1b9k_|WywVZk36r{rkAeFr>^ zqc5*lc-^k91C`#TV-N^JA4c~SJ@eQojV?Q^3NfWqwSwB_+ytVz2ijAI*~JMfxyuli;k0C=PCK2{dl?HmnSJXsLsbC!FQK-Y5#mE z_|WUke+xcE#+QzV$>%G*p2bSOo=3_A|G4PAMD#u__~iwPA7c5a6Z|%5FWkt-4}zbc z=HasTL!ShtcS*X!BkcJo2A=$XK<3#u1pk2WyC-=VqwRkg_%6<~jQID`g;RmoSxyj& z3k@R2BXOwv>j%MyUMG%+W2xV}&hv16-Cs+9?_#-sL=UagahLF~8RwxQ>Z+qg@S)dJ zM+Dz_s)re;3;&cvrFYha3a|V92Enfk!QUzP(EXMNfhYgCL;SNz_(S(&-w^z*5)TW+ zo_0f&J>#U`bvz6f{GCIUo!UP$1n-l)ktuSX2A=vi^!eqN881v0@T15{m37fvp~WXD zd-j~;VNAB*#|u7mA9B9ncTZ9Ly5Bz(d`FS5{rs!oL-)PAqk$9;$3o(8yx{LYU&-$z z_N)M&+M9BcJT^)2PldGWW#GGtE-Uy&_(xwB zY|p3*lzg9z3q8NwDEM~E6hFe1kAs4LM*IeM@ew&($$3Tc%yhvQ3cfDI!x-)V=LCPd z%okekSAuuOEB<97=Zp)L{O;2f-YxiPf)CvvE*AVHOBBEM|8~J2ll6d4CCFUm^G-kP(?67^8w?OhDo*1Velw>W>*Qi2jHmBJ(2#K~b29 z-`Z>Kz1P`ipE|dy`~IlzT6drQSdVW#_THyn7rk|Izj2A@^D839pOyA~p?_26>H7aA zOP5CKpU;)h|4;gf>rp@aK3>=F@2uNioIczZ`rB_Z{UsUW>!7FX=!y4pKR4Ul{@v34 zSm^f!AKZFB2|DrrONZRv@&7la{ff-zteYd{F4G_L=Vb|7D>+a>R5u z=g&$1aUJF>LjRr*aQnw>?{jnC7Wx->qr@2MG?%^RJef?)=3kg#PvorhoSwfBrz| zHw5?GJpWthTR+0>e_YzX@T1&+oY%Z8^myE_3H`T4UI>Tm=O00TxBOrK^Y7CBJA}^@ z`O>WOxE~$iKlpsr{>0zBUuXI&Tlfz?&R+f)zdGL9FXYGHflmDSH^DKdS8uz_^l!|g z0X~jyKqvYBg6OU5{|@Mc8@FD4!M1llK4ROu-@?DYD*eRv{tDbf>qsK~Kr$w@TW7)wW0c(BXc*CjGxw($9ZL`)?d_ zdnd0qW$AIB1fBRF*V&#E`WIg0e&`+a^!cLDe@E=g>B+ZTKTodPcJw#P>9YgFr2gZ& z@yCRIOXTJF{1u@;BKCq`?dP9_{r9ZJe=Y6f zI^lmw`&?uE@|GXt{^NbF$A$j-ht};Q4$rrR9@i&t3jI^haQjc$r{?B9EA-fJ{-Mz0 z{n>8`J>KtrN1f*x=Wz|8$8qvd=x@Eu^LeMt=l4LTI!_!Ad`a4WzQyew|KD~ktyc@6 zlidIOz1-gE$@_(VkTKoa-HG(`(MVpOmiE&ow|92^mM!l8Kif=q_`ELk%@)&L{~e+K zMV;wxKEDWh${t^q_V>lEAD!dRzm~LrL)ypw`mt@E=l&XxdnEm|g#Hfk?`~Z$flhe) z_qVzIx264`N&6*r|JOkWWC>q7ri!AZx5?|qj0e^va~lC<9go!0d?Z{~hz|Cm0{ zS$gqY@lQxU@jm;{NIy59U$@VH#{R_LE0Okp`$J5BQt1C8^!S|8qx(Fc*nfRL=!6eX z2|sJnPgm%#Z*c$4F5G=?y4p!sI&rnT-R$?x(O@)``@m-0ZT9)K5AE@EGCeswL@Q&i zZSI@xdgH*DxlVW7J?c$xH`PoBrj7f`xPzG>8Pge=qyDIc4m;D)cw(9-cjs`Y^SIxg zb~{h4%rDi@bE1(QU#=|xm?3fOo8=ti8@AJLhoOyctnT^Zac;uvI>SoaF z4bkO|?Hal~n%)ARI;M%{r(JV=nk~#1skmIakBha`BTp#bqq(uW=Dy!t$QqNm%hTz& z*E+#%UpxOo^Gm(~+Mmu{*~o@RxY}CMdd+=r8|SWpU){gFlbLMy3dG5>mH*3-&s@FQ z$PUcG<&Eu(S`Y)hJm`A3BJe$ObLE4(mv`!$V9{=)Sr0SKuGBD9y4345?8fd^W4dzM zZ9^yOjR{&eCRtWnFgvDwtJ}V9`rTnR*xQ2Ip|2^vc;2=(t>&Z~9=Jj*;1)HyIB%xo zW^X#Fx3g8!vF5m&p^wIb8Bi-VWSAQbJ#Q{Bc9>HS+H6;N=3MjbtvqN>m!LDl6VtwX zx3+4`a5NskRC+M1Cb4F3%d3atSIy9@YnXMmL=5pvC}C56XvefO*|FAc;+-tL={?(b zV@kRWg&*A^$w2i@cRU`A!QA!rr?=}Ho7b-!ybT9jhOicmX^)QYnZXEl(X4N`=CeJ> z7+gN6nS*%)d0_I~b}83(!8YEl;t4t{Do>W}qSrc&v_hPbu{KQOvW&HMG9;a~Hs9^o zIojqlv3YY4=C#|HG#jKj@#2cASX3lPcCf$Y7PzpW7udpUZtgV401f7fdK%J{886aA zEO(ZOjrE7b4!c6f4XkhzHd$Do(g|;sYlG%pLvMdzHPafqIPBgr@E)VK)z+|_EdNkr zx@N8rwvMWoQzG2#6arc$zCZ{LIf8MB6+5$Hg-yttlrbX>y(#;FeOdW9WJFWX zG%#Y-G|Z&i2eulxKvK61x@*->_mV`Ww4fjX=^=W96oK6tl3T<(M+&nq*RNIUsz>*L zEEY<3^PVoxgw*sE_q;lxD-W#TrQ<{iq-`}OqyS>IOQx~NR$D`e(d=}_-N|HhNPdk3 z4fLA}&QA#_HMgy*$sHdTSe5L@i#jkqw?-=~JMAK}g=d3@6ep}5o?1#IE#E=r^io4d zYQ9y=R?hB0yXpv<`AG&dbKnB~#>!#gy}KF34;sYw{BstU#9(}AwtCc^Hauebwrm@s zB`I%oL7OA@DmZl6G%i_0QF6HmtAiP1-HSkxJeFG5-aACRA}@Ps*7ub3*p4WyVsx~| zu@6fjbn@(|)q2B8cRW2fK{k*n6?KfK)(SJ!0HTu1Eo31>wuQv=aN^DrQ$PwPogrm5 zc%EVf^I-Xj(MZi5WGEly)ksfP4RAI>2S4h%)@oR#FX?&0Er~bX2Uj4Wj2L}Bml+HI zu;;|QY#K`tvC1VWx43p{_9a=|>^CP9WQsJLc0|E#JL4VS%aFs=YU53thK+j+c2q=11TS|r?DBsNW|^1TF03}o~C9YOh@FkgDl g{L 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 From 550a180dc0c36792c23b86769a77194069d966ac Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 13:18:45 -0500 Subject: [PATCH 127/186] Removed a.out --- a.out | Bin 91755 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index d954f1a32fc31e60c9fc1b48ddaffa37793bd254..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 91755 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 g{L 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 From 1448b0147ddc1febac33c9daf3f693a8796cdd8b Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 13:55:45 -0500 Subject: [PATCH 128/186] Added case for insert to do projected, to add more cases later. --- Parserv3.h | 35 ++++++++++++++++++++++++++++------- Parserv4.cpp | 29 +++++++++++++++++++++++------ 2 files changed, 51 insertions(+), 13 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index ff44cfd..50355ed 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -188,25 +188,35 @@ class PRenaming class PProjection { - string newName; - string oldName; + string AName; + string RName; public: PProjection() { - newName = "~"; - oldName = "~"; + AName = "~"; + RName = "~"; } PProjection(string s1, string s2) { - newName = s1; - oldName = s2; + AName = s1; + RName = s2; + } + + void setAName(string s) + { + AName = s; + } + + void setRName(string s) + { + RName = s; } string doPProjection() { - return "Projecting " + oldName + " onto " + newName; + return "Projecting " + AName + " onto " + RName; } }; @@ -388,11 +398,22 @@ class PExpression PExpression(string str) { temp = str; + /* + if(str == "project") + { + proj.setAName(""); + proj.setRName(""); + }*/ } void setPExpression(string str) { temp = str; + /* + if(proj.getAName() != "~" && proj.getRName() != "~") + { + proj.setAName() + }*/ } string getPExpression() diff --git a/Parserv4.cpp b/Parserv4.cpp index 09a7383..b947cc2 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -184,7 +184,9 @@ vector createCMD(vector input) input.erase(input.begin()); } - + + // send create commands to DBEngine + return input; } } @@ -251,15 +253,30 @@ vector insertCMD(vector input) { input.erase(input.begin()); - PExpression e; + //PExpression e(input[0]); - while(input[0] != ";") + //input.erase(input.begin()); + + if(input[0] == "project") { - e.setPExpression(e.getPExpression() + input[0]); + PProjection p; + + input.erase(input.begin()); + + if(intput[0].at(0) == "(") + { + p.setAName(input[0].substr(1, input[0].find(")"))); + } + + input.erase(input.begin()); + + p.setRName(input[0]); + + input.erase(input.begin()); + + // send projection command to DBengine. } - cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; - return input; } From 9360e236e0563804a4749924950753a727e3c7ac Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 18:38:11 -0500 Subject: [PATCH 129/186] Removed Parser.zip submission file. --- Parser.zip | Bin 96401 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 Parser.zip diff --git a/Parser.zip b/Parser.zip deleted file mode 100755 index 4f50457c156dda2b040e78bdad64c5f90ff4adf7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96401 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 oGj}sv2S+ Date: Thu, 24 Sep 2015 19:39:07 -0500 Subject: [PATCH 130/186] Added stoi() using in Parser, added compile message to README --- Parserv3.h | 54 +++++++++++------------------------------------- Parserv4.cpp | 58 ++++++++++++++++++++-------------------------------- README.txt | 9 ++++++++ 3 files changed, 43 insertions(+), 78 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index 50355ed..d686cfa 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -36,32 +36,28 @@ class PAttribute { string name; string type; - string size; - bool key; + int size; public: PAttribute() { name = "~"; type = "~"; - size = "~"; - key = false; + size = 0; } PAttribute(string str, string t) { name = str; type = t; - size = "~"; - key = false; + size = 0; } - PAttribute(string str, string t, string s) + PAttribute(string str, string t, int s) { name = str; type = t; size = s; - key = false; } void setPAttributeName(string str) @@ -74,16 +70,11 @@ class PAttribute type = t; } - void setPAttributeSize(string s) + void setPAttributeSize(int s) { size = s; } - void setPAttributeKey() - { - key = true; - } - string getPAttribute() { return name; @@ -188,35 +179,25 @@ class PRenaming class PProjection { - string AName; - string RName; + string newName; + string oldName; public: PProjection() { - AName = "~"; - RName = "~"; + newName = "~"; + oldName = "~"; } PProjection(string s1, string s2) { - AName = s1; - RName = s2; - } - - void setAName(string s) - { - AName = s; - } - - void setRName(string s) - { - RName = s; + newName = s1; + oldName = s2; } string doPProjection() { - return "Projecting " + AName + " onto " + RName; + return "Projecting " + oldName + " onto " + newName; } }; @@ -398,22 +379,11 @@ class PExpression PExpression(string str) { temp = str; - /* - if(str == "project") - { - proj.setAName(""); - proj.setRName(""); - }*/ } void setPExpression(string str) { temp = str; - /* - if(proj.getAName() != "~" && proj.getRName() != "~") - { - proj.setAName() - }*/ } string getPExpression() diff --git a/Parserv4.cpp b/Parserv4.cpp index b947cc2..0752b54 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -127,6 +127,8 @@ vector createCMD(vector input) { input.erase(input.begin()); + //vector e1; + vector a; while(input[0] != ")") //inserting all values to relation @@ -150,13 +152,15 @@ vector createCMD(vector input) else { temp.setPAttributeType(input[0].substr(0,input[0].find("("))); - temp.setPAttributeSize(input[0].substr(input[0].find("("), input[0].find(")"))); + temp.setPAttributeSize(stoi(input[0].substr(input[0].find("("), input[0].find(")")))); input.erase(input.begin()); } a.push_back(temp); } + vector apk; //save primary keys temp storage + if(input[0] == "PRIMARY" && input[1] == "KEY") { input.erase(input.begin()); @@ -167,26 +171,22 @@ vector createCMD(vector input) while(input[0] != ")") //inserting all values to relation { + PAttribute temp; if (input[0] == ",") { input.erase(input.begin()); } - for(int i = 0; i < a.size(); ++i) - { - if(input[0] == a[i].getPAttribute()) - { - a[i].setPAttributeKey(); - break; - } - } + temp.setPAttributeName(input[0]); + + apk.push_back(temp); input.erase(input.begin()); } - // send create commands to DBEngine + return input; } } @@ -253,30 +253,15 @@ vector insertCMD(vector input) { input.erase(input.begin()); - //PExpression e(input[0]); + PExpression e; - //input.erase(input.begin()); - - if(input[0] == "project") + while(input[0] != ";") { - PProjection p; - - input.erase(input.begin()); - - if(intput[0].at(0) == "(") - { - p.setAName(input[0].substr(1, input[0].find(")"))); - } - - input.erase(input.begin()); - - p.setRName(input[0]); - - input.erase(input.begin()); - - // send projection command to DBengine. + e.setPExpression(e.getPExpression() + input[0]); } + cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; + return input; } @@ -293,22 +278,23 @@ vector insertCMD(vector input) vector updateCMD(vector input) { - //parse Relation r + PRelation r(input[0]); + + input.erase(input.begin()); - //parse out SET if(input[0] == "SET") { input.erase(input.begin()); - PRelation r(input[0]); - - input.erase(input.begin()); - //parse out ( and send everything until ) into an Expression vector if(input[0] == "(") { + vector a; + vector s; + vector e; + input.erase(input.begin()); while(input[0] != ")") diff --git a/README.txt b/README.txt index bc38460..f4baea9 100755 --- a/README.txt +++ b/README.txt @@ -1,3 +1,12 @@ +//---IMPORTANT---// + +The function stoi() is used in the parser .cpp file to parse integers from the input. +When compiling things with the parser included, make sure you compile using: + +g++ -std=c++11 *.cpp + +//---------------// + I changed the name of the repo. To make everything pretty, rename your working folder, and type this line: git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git From 60b95250f17c04ccae357e7392cc388584a1730a Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 20:02:57 -0500 Subject: [PATCH 131/186] condition support & selection --- Attribute.cpp | 4 ++++ Attribute.h | 2 ++ Condition.cpp | 59 +++++++++++++++++++++++++++++++++++++------------- Condition.h | 15 +++---------- DBEngine.cpp | 16 ++++++++++++++ DBEngine.h | 7 +++--- Relation.cpp | 4 ++++ Relation.h | 2 ++ a.out | Bin 38917 -> 92259 bytes test.cpp | 30 ++++--------------------- 10 files changed, 83 insertions(+), 56 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index eb35167..01437da 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -60,4 +60,8 @@ void Attribute::display(){ } cout << "-------------\n"; +} + +void Attribute::clearAllValues(){ + values.clear(); } \ No newline at end of file diff --git a/Attribute.h b/Attribute.h index 0e92a40..f721ff7 100755 --- a/Attribute.h +++ b/Attribute.h @@ -1,3 +1,4 @@ +#pragma once #include #include @@ -22,4 +23,5 @@ public: bool isKey(); int getSize(); void display(); + void clearAllValues(); }; \ No newline at end of file diff --git a/Condition.cpp b/Condition.cpp index d8ef7e1..5e2dd9f 100755 --- a/Condition.cpp +++ b/Condition.cpp @@ -1,29 +1,58 @@ #include -#include "Attribute.h" +#include "Relation.h" using namespace std; //currently only implementing for comparison -void equality(Attribute a, string s){ - +Relation equality(string attName, string s, Relation r){ + Attribute att = r.getAttributeByName(attName); + vector r_atts = r.getAttributes(); + vector new_atts = r_atts; + + for (int i = 0; i < new_atts.size(); ++i) { + new_atts[i].clearAllValues(); + } + + for (int i = 0; i < att.getSize(); ++i) { + if (att[i] == s){ + for (int j = 0; j < r_atts.size(); ++j){ + new_atts[j].addCell(r_atts[j][i]); + } + } + } + + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + return new_r; +} +/* +vector equality(Attribute a, int i){ + for (int i = 0; i < a.getSize(); ++i) { + // + } } -void equality(Attribute a, int i){ - +vector gt(Attribute a, int i){ + for (int i = 0; i < a.getSize(); ++i) { + // + } } -void gt(Attribute a, int i){ - +vector lt(Attribute a, int i){ + for (int i = 0; i < a.getSize(); ++i) { + // + } } -void lt(Attribute a, int i){ - +vector gte(Attribute a, int i){ + for (int i = 0; i < a.getSize(); ++i) { + // + } } -void gte(Attribute a, int i){ - +vector lte(Attribute a, int i){ + for (int i = 0; i < a.getSize(); ++i) { + // + } } - -void lte(Attribute a, int i){ - -} \ No newline at end of file +*/ \ No newline at end of file diff --git a/Condition.h b/Condition.h index cc06978..1f720ec 100755 --- a/Condition.h +++ b/Condition.h @@ -1,13 +1,4 @@ -#include -#include "Attribute.h" +#pragma once +#include "Relation.h" -using namespace std; - -class Condition{ - Attribute att; - -public: - //currently only implemented for comparison - Condition(Attribute a); - Condition(Attribute a); -}; \ No newline at end of file +Relation equality(string attName, string s, Relation r); \ No newline at end of file diff --git a/DBEngine.cpp b/DBEngine.cpp index a082cd6..1383e6f 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -1,6 +1,7 @@ #include #include #include +#include "Condition.h" #include "DBEngine.h" DBEngine::DBEngine(){ @@ -48,6 +49,11 @@ void DBEngine::saveToFile(vector cmds){ file.close(); } + +Relation DBEngine::selection(string attName, string s, Relation r){ + equality(attName, s, r); +} + //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ @@ -78,3 +84,13 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } +Relation DBEngine::setUnion(Relation r1, Relation r2){ + if (r1.getAttributes() != r2.getAttributes()){ + cout << "Failure to union: the relations are not union-compatible"; + return; + } + + else { + + } +} \ No newline at end of file diff --git a/DBEngine.h b/DBEngine.h index 8a71981..5d91084 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -1,3 +1,4 @@ +#pragma once #include #include #include @@ -17,10 +18,10 @@ public: //void showTable(Relation r); Relation& getTableFromName(string n); void saveToFile(vector cmds); - //Relation selection(); + Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); - //void setUnion(); + Relation setUnion(); //void setDiff(); - //void crossProduct(); + //void crossProduct(); }; diff --git a/Relation.cpp b/Relation.cpp index f81adee..613916d 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -17,6 +17,10 @@ string Relation::getTableName(){ return name; } +Attribute Relation::operator[](int i){ + return att[i]; +} + vector Relation::getAttributes(){ return att; } diff --git a/Relation.h b/Relation.h index faa89ea..8aa2a4b 100755 --- a/Relation.h +++ b/Relation.h @@ -1,3 +1,4 @@ +#pragma once #include #include #include "Attribute.h" @@ -11,6 +12,7 @@ public: Relation(string n); Relation(string n, vector a); string getTableName(); + Attribute operator[](int i); vector getAttributes(); vector getAttributeNames(); Attribute& getAttributeByName(string s); diff --git a/a.out b/a.out index 6a77a3df2bea8473f5f60940f721d90c854fadc5..141fa42c15bb17b11edbda39c82013d560d828cc 100755 GIT binary patch literal 92259 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 literal 38917 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 ZKX7r$9%5-6L>Eeo#$bJu!9R%^{|#1L+kyZ9 diff --git a/test.cpp b/test.cpp index 4174101..5740ec7 100755 --- a/test.cpp +++ b/test.cpp @@ -1,5 +1,6 @@ #include #include +#include "Condition.h" #include "DBEngine.h" using namespace std; @@ -26,31 +27,8 @@ int main() { v.push_back(att2); v.push_back(att3); - //Relation r("Food", v); - //r.renameAttribute("Breakfast", "BFST"); - //r.display(); - engine.createTable("Food", v); - - vector tuple; - tuple.push_back("Omelette"); - tuple.push_back("Fried Rice"); - tuple.push_back("Grouper"); - - engine.getTableFromName("Food").insertTuple(tuple); - - vector old; - vector newa; - - old.push_back("Breakfast"); - old.push_back("Lunch"); - old.push_back("Dinner"); - - newa.push_back("Tsafkaerb"); - newa.push_back("Hcnul"); - newa.push_back("Rennid"); - - engine.rename(engine.getTableFromName("Food"), old, newa); - engine.getTableFromName("Food").display(); - cout << "finished"; + + Relation r = equality("Breakfast", "Pancakes", engine.getTableFromName("Food")); + r.display(); } \ No newline at end of file From 32015a74097cebf8d69d3ed0f3f642a2fb0849fb Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Thu, 24 Sep 2015 20:40:50 -0500 Subject: [PATCH 132/186] Parser is ready to be linked with DBEngine --- Parserv4.cpp | 253 +++++++++++++++++++++++++++++++-------------------- 1 file changed, 153 insertions(+), 100 deletions(-) diff --git a/Parserv4.cpp b/Parserv4.cpp index 0752b54..0732896 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -46,9 +46,9 @@ vector showCMD(vector input) cout<<"Syntax error!"< saveCMD(vector input) { cout<<"Syntax error!"< closeCMD(vector input) { cout<<"Syntax error!"< openCMD(vector input) { - if (input.size() > 3) + if (input.size() > 2) { cout<<"Syntax error!"< updateCMD(vector input) { vector a; + PAttribute temp; + vector s; - vector e; + //vector e; input.erase(input.begin()); while(input[0] != ")") { - e.push_back(input[0]); + temp.setPAttributeName(input[0]); + a.push_back(temp); + temp.setPAttributeName("~"); + + input.erase(input.begin()); + + if(input[0] == "=") + { + input.erase(input.begin()); + + s.push_back(input[0]); + } + + else + { + cout<<"Syntax error!"< updateCMD(vector input) vector deleteCMD(vector input) { - // parse out DELETE FROM if (input[0] == "DELETE" && input[1] == "FROM") { input.erase(input.begin()); input.erase(input.begin()); PRelation r(input[0]); - if(input[0] == "(") + + if(input[0] == "WHERE") { - vector e; - input.erase(input.begin()); - - while(input[0] != ")") + if(input[0] == "(") { - if (input[0] == ",") input.erase(input.begin()); + //PCondition c; - e.push_back(input[0]); + PComparison c; + POperand oops1; + POperand oops2; + POp op; - input.erase(input.begin()); + while(input[0] != ")") + { + oops1.setPOperand(input[0]); + input.erase(input.begin()); + + oops2.setPOperand(input[0]); + input.erase(input.begin()); + + op.setPOp(input[0]); + input.erase(input.begin()); + + c.setPComparison(oops1.getPOperand(), op.getPOp(), oops2.getPOperand()); + } } - - cout << "Deleting: "; - while(!e.empty()) - { - cout << e[0].getPExpression() << " "; - e.erase(e.begin()); - } - cout << "from " << r.getName() << ".\n"; - - return input; - } - else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list @@ -379,57 +416,73 @@ void par_line(vector input) //calls par_command() or par_query() dependi else { - //command - // if ( input[0] == "open-cmd" || input[0] == "close-cmd" || - // input[0] == "save-cmd" || input[0] == "exit-cmd" || - // input[0] == "show-cmd" || input[0] == "create-cmd" || - // input[0] == "update-cmd" || input[0] == "insert-cmd" || - // input[0] == "delete-cmd" ) - // { - // par_command(input[0]); - // } - - //query - // if ( input[0] == "select" || input[0] == "project" || - // input[0] == "product" || input[0] == "difference" || - // input[0] == "union" || input[0] == "renaming" || - // input[0] == "update-cmd" || input[0] == "insert-cmd" || - // input[0] == "delete-cmd" ) - // { - // par_query(input[0]); - // } - - if ( input[0] == "INSERT") - { - cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = insertCMD(input); + cout<<"arguments: "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = createCMD(input); + cout<<"arguments: "< insertInput = deleteCMD(input); + cout<<"arguments: "< insertInput = updateCMD(input); + cout<<"arguments: "< Date: Thu, 24 Sep 2015 20:42:59 -0500 Subject: [PATCH 133/186] updating --- DBEngine.cpp | 23 ++++++++++++++++++++++- DBEngine.h | 2 +- Relation.cpp | 10 ++++++++++ Relation.h | 1 + test.cpp | 30 ++++++++++++++++++++++++++++-- 5 files changed, 62 insertions(+), 4 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 1383e6f..9b9aabe 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -85,12 +85,33 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } Relation DBEngine::setUnion(Relation r1, Relation r2){ - if (r1.getAttributes() != r2.getAttributes()){ + if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible"; return; } else { + vector r1_atts = r1.getAttributes(); + vector r2_atts = r2.getAttributes(); + vector new_atts = r1_atts; + + for (int i = 0; i < r2_atts.size(); ++i) { + for (int j = 0; j < r2_atts[i].getSize(); ++j){ + new_atts[i].addCell(r2_atts[i][j]); + } + } + for (int i = 0; i < new_atts.size(); ++i) { + for (int j = 0; j < new_atts.size(); ++j){ + if (new_atts[i] == new_atts[j]){ + new_atts.erase(new_atts.begin() + i); + continue; + } + } + } + + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + return new_r; } } \ No newline at end of file diff --git a/DBEngine.h b/DBEngine.h index 5d91084..878a42e 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -21,7 +21,7 @@ public: Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); - Relation setUnion(); + Relation setUnion(Relation r1, Relation r2); //void setDiff(); //void crossProduct(); }; diff --git a/Relation.cpp b/Relation.cpp index 613916d..932905f 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -21,6 +21,16 @@ Attribute Relation::operator[](int i){ return att[i]; } +vector Relation::getTuple(int index){ + vector temp; + + for (int i = 0; i < att.size(); ++i){ + temp.push_back(att[i][index]); + } + + return temp; +} + vector Relation::getAttributes(){ return att; } diff --git a/Relation.h b/Relation.h index 8aa2a4b..50a240a 100755 --- a/Relation.h +++ b/Relation.h @@ -13,6 +13,7 @@ public: Relation(string n, vector a); string getTableName(); Attribute operator[](int i); + vector getTuple(int index); vector getAttributes(); vector getAttributeNames(); Attribute& getAttributeByName(string s); diff --git a/test.cpp b/test.cpp index 5740ec7..4d2d945 100755 --- a/test.cpp +++ b/test.cpp @@ -29,6 +29,32 @@ int main() { engine.createTable("Food", v); - Relation r = equality("Breakfast", "Pancakes", engine.getTableFromName("Food")); - r.display(); + Attribute att4("SecondBreakfast", "VARCHAR(20)", true); + Attribute att5("SecondLunch", "VARCHAR(20)", false); + Attribute att6("SecondDinner", "VARCHAR(20)", false); + + att4.addCell("Pancakes"); + att4.addCell("Bacon"); + att4.addCell("Eggs"); + att5.addCell("Turkey Sandwich"); + att5.addCell("Pasta Salad"); + att5.addCell("Taco"); + att6.addCell("Steak"); + att6.addCell("Fajitas"); + att6.addCell("Spaghetti"); + + vector v2; + v2.push_back(att4); + v2.push_back(att5); + v2.push_back(att6); + + engine.createTable("MoarFood", v2); + + vector test = engine.getTableFromName("Food").getTuple(1); + + for (int i = 0; i < test.size(); ++i){ + cout << test[i] << " "; + } + + //engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); } \ No newline at end of file From de204d8b92ed9d9bf464e75189de8b0f859461e6 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 20:46:30 -0500 Subject: [PATCH 134/186] get tuple function added --- DBEngine.cpp | 4 ++-- DBEngine.h | 2 +- a.out | Bin 92259 -> 96403 bytes 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 9b9aabe..55a245b 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -84,7 +84,7 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } -Relation DBEngine::setUnion(Relation r1, Relation r2){ +/*Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible"; return; @@ -114,4 +114,4 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ Relation new_r("TEMP", new_atts); return new_r; } -} \ No newline at end of file +}*/ \ No newline at end of file diff --git a/DBEngine.h b/DBEngine.h index 878a42e..4b8a309 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -21,7 +21,7 @@ public: Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); - Relation setUnion(Relation r1, Relation r2); + //Relation setUnion(Relation r1, Relation r2); //void setDiff(); //void crossProduct(); }; diff --git a/a.out b/a.out index 141fa42c15bb17b11edbda39c82013d560d828cc..3302e97fa905135c2ea21061f3e37c70ccfb5c30 100755 GIT binary patch delta 29645 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 OpzCmOYIj}V(f<#`EQlun From b281363943cfcb24d2608c06f88213fb5d1dfe25 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 20:46:43 -0500 Subject: [PATCH 135/186] get tuple function added --- a.out | Bin 96403 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index 3302e97fa905135c2ea21061f3e37c70ccfb5c30..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96403 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 Date: Thu, 24 Sep 2015 20:55:14 -0500 Subject: [PATCH 136/186] Update DBEngine.cpp --- DBEngine.cpp | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 96b315d..f646e1f 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -58,12 +58,19 @@ Relation DBEngine::selection(string attName, string s, Relation r){ //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ + vector v; + string new_name = r.getTableName() + " Projection"; -// for(int i = 0; i < input.size(); i++) { -// it = find(r.getAttributes().begin(), r.getAttributes().end(), input[i]) + for(int i = 0; i < input.size(); ++i) { - //if(r[i].getName == input[]) -// } + for(int j = 0; j < r.getSize(); ++j) { + if((r.getAttributes())[j].getName() == input[i]) + v.push_back((r.getAttributes())[j]); + } + } + + Relation temp(new_name, v); + return temp; } //test error matching From 2ae80b04f3a3d25ed46d53b5f4928c0c2f824c8c Mon Sep 17 00:00:00 2001 From: scho4077 Date: Thu, 24 Sep 2015 21:00:21 -0500 Subject: [PATCH 137/186] Update test.cpp --- test.cpp | 34 +--------------------------------- 1 file changed, 1 insertion(+), 33 deletions(-) diff --git a/test.cpp b/test.cpp index 24d03c1..f21b31b 100755 --- a/test.cpp +++ b/test.cpp @@ -28,31 +28,6 @@ int main() { v.push_back(att3); engine.createTable("Food", v); -<<<<<<< HEAD - - vector tuple; - tuple.push_back("Omelette"); - tuple.push_back("Fried Rice"); - tuple.push_back("Grouper"); - - engine.getTableFromName("Food").insertTuple(tuple); - - vector old; - vector newa; - - old.push_back("Breakfast"); - old.push_back("Lunch"); - old.push_back("Dinner"); - - newa.push_back("Tsafkaerb"); - newa.push_back("Hcnul"); - newa.push_back("Rennid"); - - engine.rename(engine.getTableFromName("Food"), old, newa); - engine.getTableFromName("Food").display(); - cout << "finished"; -} -======= Attribute att4("SecondBreakfast", "VARCHAR(20)", true); Attribute att5("SecondLunch", "VARCHAR(20)", false); @@ -75,12 +50,5 @@ int main() { engine.createTable("MoarFood", v2); - vector test = engine.getTableFromName("Food").getTuple(1); - - for (int i = 0; i < test.size(); ++i){ - cout << test[i] << " "; - } - //engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); -} ->>>>>>> beccadev +} From 091f084b45f718d20f9fbbbf64aae6b9b63f89b0 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 21:00:31 -0500 Subject: [PATCH 138/186] fixed a thing --- DBEngine.cpp | 8 ++++---- DBEngine.h | 2 +- test.cpp | 34 +--------------------------------- 3 files changed, 6 insertions(+), 38 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 96b315d..f622cd5 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -85,7 +85,7 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } -/*Relation DBEngine::setUnion(Relation r1, Relation r2){ +Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible"; return; @@ -102,17 +102,17 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } - for (int i = 0; i < new_atts.size(); ++i) { + /*for (int i = 0; i < new_atts.size(); ++i) { for (int j = 0; j < new_atts.size(); ++j){ if (new_atts[i] == new_atts[j]){ new_atts.erase(new_atts.begin() + i); continue; } } - } + }*/ //currently all returned relations are called TEMP Relation new_r("TEMP", new_atts); return new_r; } -}*/ +} diff --git a/DBEngine.h b/DBEngine.h index 4b8a309..878a42e 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -21,7 +21,7 @@ public: Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); - //Relation setUnion(Relation r1, Relation r2); + Relation setUnion(Relation r1, Relation r2); //void setDiff(); //void crossProduct(); }; diff --git a/test.cpp b/test.cpp index 24d03c1..f21b31b 100755 --- a/test.cpp +++ b/test.cpp @@ -28,31 +28,6 @@ int main() { v.push_back(att3); engine.createTable("Food", v); -<<<<<<< HEAD - - vector tuple; - tuple.push_back("Omelette"); - tuple.push_back("Fried Rice"); - tuple.push_back("Grouper"); - - engine.getTableFromName("Food").insertTuple(tuple); - - vector old; - vector newa; - - old.push_back("Breakfast"); - old.push_back("Lunch"); - old.push_back("Dinner"); - - newa.push_back("Tsafkaerb"); - newa.push_back("Hcnul"); - newa.push_back("Rennid"); - - engine.rename(engine.getTableFromName("Food"), old, newa); - engine.getTableFromName("Food").display(); - cout << "finished"; -} -======= Attribute att4("SecondBreakfast", "VARCHAR(20)", true); Attribute att5("SecondLunch", "VARCHAR(20)", false); @@ -75,12 +50,5 @@ int main() { engine.createTable("MoarFood", v2); - vector test = engine.getTableFromName("Food").getTuple(1); - - for (int i = 0; i < test.size(); ++i){ - cout << test[i] << " "; - } - //engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); -} ->>>>>>> beccadev +} From db4396b95239dfa71083a791844dcd39b8c662a4 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 21:15:12 -0500 Subject: [PATCH 139/186] remove tuple implemented --- Attribute.cpp | 5 +++++ Attribute.h | 1 + DBEngine.cpp | 18 ++++++++++++++++-- Relation.cpp | 12 ++++++++++++ Relation.h | 2 +- a.out | Bin 0 -> 97311 bytes test.cpp | 8 ++++---- 7 files changed, 39 insertions(+), 7 deletions(-) create mode 100755 a.out diff --git a/Attribute.cpp b/Attribute.cpp index 01437da..5c2a0d6 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -21,6 +21,11 @@ void Attribute::addCell(string v){ size++; } +void Attribute::removeCell(int index){ + values.erase(values.begin() + index); + size--; +} + string Attribute::operator[](int i){ return values[i]; } diff --git a/Attribute.h b/Attribute.h index f721ff7..9bb84fd 100755 --- a/Attribute.h +++ b/Attribute.h @@ -15,6 +15,7 @@ public: Attribute(); Attribute(string n, string t, bool k); void addCell(string v); + void removeCell(int index); string operator[](int i); vector getValues(); string getName(); diff --git a/DBEngine.cpp b/DBEngine.cpp index f622cd5..fb4e210 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -87,8 +87,22 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ - cout << "Failure to union: the relations are not union-compatible"; - return; + vector v1 = r1.getAttributeNames(); + vector v2 = r2.getAttributeNames(); + + for (int i = 0; i < v1.size(); ++i){ + cout << v1[i] << " "; + } + cout << "\n"; + + for (int i = 0; i < v2.size(); ++i){ + cout << v2[i] << " "; + } + cout << "\n"; + + + cout << "Failure to union: the relations are not union-compatible.\nreturning the first relation.\n"; + return r1; } else { diff --git a/Relation.cpp b/Relation.cpp index d2dca12..86a6dad 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -110,3 +110,15 @@ void Relation::insertFromRelation(Relation r){ } } } + +void Relation::removeTuple(int index){ + if (index >= this->size) { + cout << "Failure to delete: the requested index is out of bounds."; + } + + else { + for (int i = 0; i < att.size(); ++i) { + att[i].removeCell(index); + } + } +} \ No newline at end of file diff --git a/Relation.h b/Relation.h index 7de9d11..2a8846c 100755 --- a/Relation.h +++ b/Relation.h @@ -23,5 +23,5 @@ public: void display(); void insertTuple(vector tuple); //assuming they are in order void insertFromRelation(Relation r); - //void removeTuple(); + void removeTuple(int index); }; \ No newline at end of file diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..c56b01fd09d05495e3e07c266d7bb3f32ed25e2d GIT binary patch literal 97311 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 KJGQcg?EeAH390x1 literal 0 HcmV?d00001 diff --git a/test.cpp b/test.cpp index f21b31b..bf7b4c3 100755 --- a/test.cpp +++ b/test.cpp @@ -29,9 +29,9 @@ int main() { engine.createTable("Food", v); - Attribute att4("SecondBreakfast", "VARCHAR(20)", true); - Attribute att5("SecondLunch", "VARCHAR(20)", false); - Attribute att6("SecondDinner", "VARCHAR(20)", false); + Attribute att4("Breakfast", "VARCHAR(20)", true); + Attribute att5("Lunch", "VARCHAR(20)", false); + Attribute att6("Dinner", "VARCHAR(20)", false); att4.addCell("Pancakes"); att4.addCell("Bacon"); @@ -50,5 +50,5 @@ int main() { engine.createTable("MoarFood", v2); - //engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); } From d5ea5433e04f2d4f00cf13e55522cc08714e18ec Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Thu, 24 Sep 2015 21:33:25 -0500 Subject: [PATCH 140/186] union works --- DBEngine.cpp | 50 ++++++++++++++++++++++++++++++++------------------ a.out | Bin 97311 -> 97311 bytes 2 files changed, 32 insertions(+), 18 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index fb4e210..3ddb6b6 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -87,26 +87,40 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ - vector v1 = r1.getAttributeNames(); - vector v2 = r2.getAttributeNames(); - - for (int i = 0; i < v1.size(); ++i){ - cout << v1[i] << " "; - } - cout << "\n"; - - for (int i = 0; i < v2.size(); ++i){ - cout << v2[i] << " "; - } - cout << "\n"; - - cout << "Failure to union: the relations are not union-compatible.\nreturning the first relation.\n"; return r1; } else { - vector r1_atts = r1.getAttributes(); + //currently all returned relations are called TEMP + Relation new_r = r1; + vector temp; + bool duplicate = false; + + for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { + temp = r2.getTuple(i); + + for (int j = 0; j < new_r.getAttributes()[0].getSize(); ++j){ + if (temp == new_r.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate) { + new_r.insertTuple(temp); + } + + duplicate = false; + } + + return new_r; + + + + + + /*vector r1_atts = r1.getAttributes(); vector r2_atts = r2.getAttributes(); vector new_atts = r1_atts; @@ -116,17 +130,17 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ } } - /*for (int i = 0; i < new_atts.size(); ++i) { + for (int i = 0; i < new_atts.size(); ++i) { for (int j = 0; j < new_atts.size(); ++j){ if (new_atts[i] == new_atts[j]){ new_atts.erase(new_atts.begin() + i); continue; } } - }*/ + } //currently all returned relations are called TEMP Relation new_r("TEMP", new_atts); - return new_r; + return new_r;*/ } } diff --git a/a.out b/a.out index c56b01fd09d05495e3e07c266d7bb3f32ed25e2d..54f580c771995270a139f89552204b6cc6a36474 100755 GIT binary patch delta 14343 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 Jd)UZl{}0bu;S>M> delta 14245 zcmZvj3tUxI_Q%f#t^$&PA`c}Fn2DGLn3k3)%t)bSnWKef31x*=3TBFCT}UZNNpOh= z%M#27_yWB?@P(izV5TssgHGk8s4nR!HvNmty8qvP9Jtop&!_c0Ywh*ed!K#wc}Q#9 zEo<8?`3+u<3!3;j3eF$)&simvoKe*<2BbD3p$@`nkF1Ajd7!SAzgt8 zysg5mudi?Bia0H?wkBVoHs99leB&W6*S zfp>%?Di5FQ@W}m&JE!2VYAmG(-pdlHEO0a%Zo3lrUKcjb_QtJ=Jy{wZkGamaP))4P zYN@*=iZ&>rmeJnclR5N#n`3~o#n%3*glU>31K<5p-)A-vGw%) z)6cOfRR8oK( zXhd?V??q2d%RQ2qmu>$YT`eM8@(tE%t4O(>u~Its?8D4%>-$_Fv*s`j!#|Ys2Orz+ zOo74-fxI-1yzFErpP53T<(}guoF{lgLME)zRajevwNSY8M(KOyUruN4QQ?h9FI#6y zsMoDKoz5ly_FeKM??zsBoGj&%v`{3?4*yFZ7NMaw;W9t*m+lcW&|oHzg%9sSsodj- zE-$M!9lh3G z@oJ)1vf2dKYP>*4wKJP}H3!ZTqIfYGRqLSrPN(&MR$GUVs$m_)3932OOS9#v5;MNh zUCf%9uzZJ@+&Dg07)&wL)^5^8`^&`o)pKWSww<5ko6hbpb-blegydyci?txieSL;c zLJOaS*0m6|33h&bY5LNH7C9jznVb-RI49=T;KUa%on%kUJ;l2;eY?}y;mk8z)hcQE zoY$OGtke&-aWw&Itz%OepFcb1@2^F+@i6%KmOGvIC)j=0;=K80&%$6AC$z{2KI5`m zwT{u;U7cRv?2&M@VxVG#c?lJ&_8+1v2^V?ZP(Jf{lP;n!4OInd`9z{aFjgeyjpK_T zUrdk~-YcK*mV^c#daYC(i!_r&1g}u*Xg`nXlF{^#8b{n*UnI zW)ashlnD(WV zjiM^~>tyY4vR|C$uy3T4pj&Ct3_p7Ko(Psn+h+7;FHzl$uwHM&UCrVL7;)m_W5G{7 zO*Q>{+5Bb>W^AnO?=M9#Hh`Xg`MuDx^}Jp}TVmdLPp}>L7f-d)PLl5{SABoHf>Sr! z4OjBggq;1WY`4t%ltl&qM^unq-c-VsqmF1naq?D*!&=89#M08)LV7iABYV}>JAE!= zO|*PYf1jf$`$(>XpR|)yGpB|Pq{XksviEGeUoCTEZ`!8KV~m}ol=&fUZtqidWHfD= zueGQYJOPj_>3|$g4iS~%D9L1wVlpLVr&!*SlHiZ;D;T> z?xraVF9v*5*b$t#N(O5*?)4x{_w%n0p0uGEw!Ca#+?sgaJ={C5P^fv?8oyyxs%!1Q zO5v$1&t=k6sCn6b-1C_7ETGG;M_6YY!k@SB%;Rqk-yv0AfwvBps@V;aYP4$gkhO%0 zO`F#;d*vlPM=8$>LM?>agAXf)yPi_rx=0@_im)EylOS7o;g3kDX1r6XyaaE}l&aZ} zW~n}=S|`Y2LdA`X*D|~Hr1YGoJO@ZmsG?irx$7C#tvhM_8xhuSvRk}`7rwkgbjyq% zC)4o~y!Di9HTw}QTW71*Vxbla726H3^>0;cg9t3-Hq1fsZ#kRR!LV1%!$l2k%GK|EUUZ$qMY%R z=?};pLe0yr;OTp)^wo688a&1-v+)*QGe>4K!&UOrs&$IYCRE($c(!1bZ5oAT29FJs z*?0@j7Adot;VSt>)%vSwEfgxo$Fqg0Y=11L%*>!MhvbswO+4N4A zLRC-Ex2tp?l07r{p{X*PUHLyRvzg&4xt+gNpw`emyjG!D{KzJ(;u=^;qq2f~r|c8W z8n@rnoJi?e!PYX-oUMx|jatVsQL0d=*acy&8mPKf|DH(H#ygdl$D5EZQ!FO&g!0%I z!Xg^bt#^fcN8(FT713y&yIVL%k5hHW$-2=pYdEiKZaouZ`BewNR+o5P2=LSH&`Ln(|DS zo>1k6$X(5SdLDIM9ATX(SJ-$JF!bj5RZ`_8c(;P2YW5>Tsb1s%Z=Zb${ z7RXmAJ{Er2W=5+jSgx91lNE%D4Gq?+p{l|{S%KTI$XzN7mlZ?_pl1orDphEMzq6=n9Rq(W`V3S#dDxc@8?o&gk6oKju zB%2qos(a&nS)p3x$dnb#l&auG)jB~|5GuAlSgRgX6`qt8xDAu!GK4@`Kr~TlLSmJawU6R><$1q}}p@5Dmy!CH%6@jH;kh708zboT7eS zb{ou9534a0$_m_uF}PHiC@Y8tRCroeFjK06zUoCLT2>G$o-$#r`iCkoL>Az-5jR)( zuU!7-o5YPA(FHT5Dp)PX%pbIuzY}crw~6@>Q;pNzIUnsiMT6-7O$`@igK))uF8V8O z4sjw?_9$Vgbvz}zDO4-c4>NG+dwYaI?^?+&!aqbueMuGvxsNAqP?SI-o=qRZlqh!52Je}v6(3G-E96X4fs z?}9f<@pd1h%%5hfs!w8$&Hml(5V4zt)o$b8N}Vd~u2Dj}`#Q*c_@hI7}Y9j*<^ywkyzoV4j zOqnfQsh8gRYuGry zW-U{ht9dy8p5=qCE?34-szHYe%_g+0RV~+GYyGeJ%}+cV@wu7l;##g;k8{_$4%Z50 z9_8YCSlK?{t{--|RtvMW))C<1ds_LXao;%|z75LUn%Oz87nLo6yFS$6YFFke7uT!G z)|WcT1TQwL@^Jrxde#2QV#@} z>#D_m^mJ?c$* zsUVy&T2>I#Yy6w$C)4R)o1aWyrpAKhY!Ica802~H!{OQ^c@Jn*xMC3d)OKXWVKhc3!KgjZ%rG$$mtBnzh!y8fwKVG!89-s1@ghSz)J84*aTh%+ri$L zzF;53gTuf%U=p|l%m7z`Mc~_*)oQSqGf30E1nohZRr`?}&;bvuH#^va6OMyG?G{a2 z0S*9t_(cv522;VgU=H{QHlYgeWv~If3!AUjUDKWf!@-qc9Jmoo23x>P&@*d)gGt~SFax{}7J(_toX$G1 z6m)>;c_`dN(<;Fjunim!_Qg9!8aM*X2P?oz@Dylm!a?A26b5I3!96wYU2qs!2_}L6 z1T(-dz#{MuuoAp49~}qz`+7UL6$}qRVlWQ84km*m@R=bKd<859Uk9tf!UCt&X~)5F z7_?saH!Lt5EaKnKz;$3MSOMmMC%{s$39JKu1RdaQgi{u%X(Pb_-~=!cw1TPN8ZZac z@FlAh><-p}V^?BzI&d%(22ZTY*TDhcS6~vzzxri>XTV~x1q=_?v{e2@6ZFG}?lf>A zSOl&IJwr6j0S*B72CQ6z4uDl3 zVd}uqYcb_fnwAANfvZ3b1&?t%IJX#!7yJ$^g}+vU5rQv(ZJ_;QoZ3FPT-W2&f}_DC z&{~Cq41TZyfuK7!rUq~j*aq^A$}d#YlEE18J1`0S3CsY)uuT_%Nnj6?)N+>a;wRIm=r z0ndS@;E?U;IQTr+2L1pB>zX#893uw*1}1^2U=bCWFVpOfYN*3WJY;b>J?r9XtXCM__~5iNauSFbRBO7veyDH{!r~V1pG0 zr8sBRB(|M2kmgE1507J0@i`sYcaLpu{spE10w;4f&J=H0Ca$v;CCl5BJihAkq7LK z$D80mSW}wg3eDqxreHh?R^Hn0Npi^T}R7;x%E6b3WEG;kxB4_1Q};0dq+ybQL1 z1MG+&jEx730pACcz=L20=-G_5Va36HIH&}Zz$WkwupJ!uHF|zGb~Z2${2Q1IP6ac; znP4%v1gr*kgLbe1)P~^l1jE4|-yj|g2b006U?#W-e7YD1c{r#B+rTz(dJB4v#nKKA z13kY*2f>KnaFe=hM{_c5E)%Blxcpe*fZr z(R86CjHS}AC3@7GbDYkXx$$9_V7C`#B<#5RXj2(BWQt#>v#%)y@-k&XUdM4C3;#Aan&(oG_x34SlNUVc zrfJX84#XU!M#v*{4M|%N*~BB?rrztr*h(6{UhlT@HK((N8`phC_aBY0tasP6{&ojpSJkRz!Taw>Uk&{;A?K~AAD8}z7&^PJAPJj1R(b!cX1hqiiPf5n9B z>^1?%y3^3GIR>nWrxlC@EMna-|I3S=NlIg;Wbr%(#yM9SJ6$(F$0$I{}32NJ4>bp^FT?jo-(I{Sp8 zAZ^If$Fjs5I|a>vUPZZE^lnENIi1^hmxE8y()tj~Wwa+!BiaYkHOO%C->S3T6btD| zk3+gqI%H2Ofb32?gryPEm##tjkpDKFji*@1k@Ps^6iOGeV4Lp!@EcC&bG+IR+P|$o zdy|@BtbviZF^;^qhvEG$YP*g4N~J<8p#4?YOD#oR6F)XkUF0+&nb7Hsry zVx#ANFVh92E23YwN3shPQLcM?yyJA1^QO0GYO0l!EQ)`gIBh%?T!TnljU`1HeMyO?6z5b`L zwVmsGnJ>0lO0VFvUr-S_I6uqjyvk!jPTxHKZ#zp(MNHCLPNxMIt4A#TP!Y!NA+H^g zkg+>-@0hpMbv~b_>DUHCVB1B*{c)={Hp+#prm|gnR4CpGpWs(`i_1Jb zw9I|6hx=G}Oa(t{J^^?KqHBm5M*h2X@BYixCBBI6+Z~1tXYy{Hy+R9iN3s)Cf@25O zKz>cl;+XB>QxUO8ce}BiHgE22S=0+psl@j5v8=(-bvOr6=EokEgV27Wl0A|5OQm`Q zjixO4^b6!~Y+idKF~hNYb?-&_YFo&mDSP|lqRiUM2UY@EM>UZ9sTt0v$g47v&8Aq$ zk7#nG&MIgDq3O{=b;2sC_kl2Wh=w1~ z**9nkqO=2^xall_-h);{2GBlneExvmEohb6RN5NErZNKWTWcudpw3oNJS0{F?g;WDMi<%+P+e12Tg%OYkDIT(kQiRMpq<*8Ciz!I zvfVViicjfe9REOBIBua5$bV7|-c-N2*@QA4_QJf)i|?j@Rw# zCcz?{@4%r}G$3(e-n>RCDX#7TtHWKYx%p%1=rbWEhn|22%~(df@F^>^bY`hofOQ?_S6F zvX6p%k;XvIr5VTcsEu%&%umF@Go7QBd&D?%k2rZ7-m_>2Vw$NDvVpE0)4i*GvxQlgy~3Hjf`=Gpy8&%(B^2JB&v?PwhYKJacx{ z8r->Z(VaK^?ryp4rLFR?ob}SmJuEd|+BFZ$HZQHnV%h1bt+&j@@vbfwho^R`i{+@N zcA<;qjHmWv7fZI6wzR8dwU_pOSMFcd)lw7UrB!z2iE6v@q}RKm{5DUBs}y(UTMD`0 zL*ve-(b=<^lyKoz>VGcCHtF2MU8(fTaIZNt;xL_fIi|)hXR}aS{8v_YmT9YLo`e6< zgNA(5-;4i0DEt>f&wVrGc2j#xS>5J)c452G%w{tFzp3zFi0$Av|8m1Nyz;w=A!Yy` zAH``!AEUGwem?O_qAd7y{y#JOuHNhAD2@|t z4*C@ueAwWA09)=ak#1~|ZO5-K zGTb6Uew$C8H~gshw^Wu-UN;_ML+SAwK_TWu;r1+k|G?(NG=HsvvTi&SQdSTrtPjXW z4HuQ>rukx8n{NbRCVoX8KU@6oD3NI^`@_oId}bC7Wb;^HVF`PP?JI0$(SMn$VR-cJ zizL&HSjG;s7ULRYK_SOqlBM{UOaAleCcSnV5pHZgn_#SVL&i0Go86es*aHUhVA1Td z5$gf#UB&{A{zeTqjyA4&uxTvOc-#W*n2}{c+fJjNRYJXtL_%K?Gny#qxqj8O+)QIq8 z^F!WI>kkRV?>xR7bLXMP4o{@KVfcH&*>1#pLCZ8syx4M9XvBI$OWIrD%^qW{&S>t2 zfoB?%eb^>9k2!|hE$l89W5nJ9-_X4^x3I2^4KwPyV?4!%zb|_zq-8;zs1`0HJ{#i0 z7_Yj_ zScb790MqfTQ6GR>`G$Wlc%C!j0i17RPA~K;-ze$D`(?xivgIM#JlT;uRYy(@l^q#k zoDW38KqD&%r+kQ-QGez2!@bfA^?37Km1Kl!UOr4VUoo1|%xC0!5POilZ^Q>yKSIakIZ%4QC_nyCz>% From 4b1fbf077d6ee5a4ae070b15b5048824b6e510c4 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Thu, 24 Sep 2015 21:37:27 -0500 Subject: [PATCH 141/186] Update DBEngine.cpp --- DBEngine.cpp | 80 ++++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 78 insertions(+), 2 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 6101b46..5c3e864 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -1,6 +1,7 @@ #include #include #include +#include "Condition.h" #include "DBEngine.h" DBEngine::DBEngine(){ @@ -27,6 +28,7 @@ void DBEngine::createTable(Relation r){ vector DBEngine::getRelations(){ return tables; } + Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ @@ -48,6 +50,11 @@ void DBEngine::saveToFile(vector cmds){ file.close(); } + +Relation DBEngine::selection(string attName, string s, Relation r){ + equality(attName, s, r); +} + //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ @@ -66,15 +73,52 @@ Relation DBEngine::projection(vector input, Relation r){ return temp; } +Relation DBEngine::product(string new_name, Relation r1, Relation r2){ + + Relation temp(new_name); + vector a1; + + + for(int i = 0; i < r1.getAttributes().size(); ++i){ + a1.push_back(r1.getAttributes()[i]); + } + + for(int i = 0; i < r2.getAttributes().size(); ++i){ + a1.push_back(r2.getAttributes()[i]); + } + + temp.insertAttributes(a1); + + vector tuple1; + vector tuple2; + vector result_tuple; + + + //Don't we need to find the bigger one to start first? + if(r1.getSize() >= r2.getSize()) + { + //Combine tuples from relations into one, push back that tuple into the resultant relation via insertTuple + //Yeah have fun + } + + else if(r2.getSize() > r1.getSize()) + { + // + } + + + return temp; +} + //test error matching void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ if (oldnames.size() != newnames.size()) { - cout << "Failure to rename: number of attributes do not match."; + cout << "FAILURE TO RENAME: number of attributes do not match.\n"; return; } else if (oldnames != r.getAttributeNames()) { - cout << "Failure to rename: the attributes to be renamed do not exist in the relation."; + cout << "FAILURE TO RENAME: the attributes to be renamed do not exist in the relation.\n"; return; } @@ -84,3 +128,35 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } } + +/*Relation DBEngine::setUnion(Relation r1, Relation r2){ + if (r1.getAttributeNames() != r2.getAttributeNames()){ + cout << "Failure to union: the relations are not union-compatible"; + return; + } + + else { + vector r1_atts = r1.getAttributes(); + vector r2_atts = r2.getAttributes(); + vector new_atts = r1_atts; + + for (int i = 0; i < r2_atts.size(); ++i) { + for (int j = 0; j < r2_atts[i].getSize(); ++j){ + new_atts[i].addCell(r2_atts[i][j]); + } + } + + for (int i = 0; i < new_atts.size(); ++i) { + for (int j = 0; j < new_atts.size(); ++j){ + if (new_atts[i] == new_atts[j]){ + new_atts.erase(new_atts.begin() + i); + continue; + } + } + } + + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + return new_r; + } +}*/ From 7166b53797110909a83f494553ded3371349778c Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Thu, 24 Sep 2015 21:38:07 -0500 Subject: [PATCH 142/186] Update DBEngine.h --- DBEngine.h | 1 + 1 file changed, 1 insertion(+) diff --git a/DBEngine.h b/DBEngine.h index 878a42e..82d444e 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -20,6 +20,7 @@ public: void saveToFile(vector cmds); Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); + Relation product(string s1, Relation r1, Relation r2); void rename(Relation& r, vector oldnames, vector newnames); Relation setUnion(Relation r1, Relation r2); //void setDiff(); From 78914574dabceb40792d686fedc1ee5128dfc163 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:29:00 -0500 Subject: [PATCH 143/186] Update test.cpp --- test.cpp | 37 +++++++++++++++++++++++++++++++------ 1 file changed, 31 insertions(+), 6 deletions(-) diff --git a/test.cpp b/test.cpp index 3cc2d12..0d7ee26 100755 --- a/test.cpp +++ b/test.cpp @@ -1,10 +1,12 @@ #include #include +#include "Parserv3.h" #include "DBEngine.h" using namespace std; //still in progress +/* int main() { DBEngine engine; Attribute att1("Breakfast", "VARCHAR(20)", true); @@ -26,7 +28,7 @@ int main() { v.push_back(att2); v.push_back(att3); - //Relation r("Food", v); + Relation r("Food", v); //r.renameAttribute("Breakfast", "BFST"); //r.display(); @@ -50,7 +52,6 @@ int main() { newa.push_back("Hcnul"); newa.push_back("Rennid"); -<<<<<<< HEAD //Projection test vector projectTest; projectTest.push_back("Breakfast"); @@ -62,10 +63,34 @@ int main() { sub_r.display(); //engine.rename(r, o, n); -} -======= + engine.rename(engine.getTableFromName("Food"), old, newa); engine.getTableFromName("Food").display(); cout << "finished"; -} ->>>>>>> master +} + +*/ +int main () { + + string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; + string ss2 = "SHOW Dogs ;"; + string ss3 = "EXIT ; "; + + DBEngine engine; + + // vector listOfTokens = tokenize(ss); + // vector listOfTokens2 = tokenize(ss2); + // vector listOfTokens3 = tokenize(ss3); + + // par_line(listOfTokens); + // par_line(listOfTokens2); + // par_line(listOfTokens3); + + parse(ss, engine); + parse(ss2, engine); + parse(ss3, engine); + + engine.save(); + + +} From ecc31ea072873fe83971e64ffb0e84f285d98893 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:30:09 -0500 Subject: [PATCH 144/186] Update Parserv3.h --- Parserv3.h | 848 ++++++++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 741 insertions(+), 107 deletions(-) diff --git a/Parserv3.h b/Parserv3.h index 1fb63d7..dea692c 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -3,246 +3,880 @@ #include // std::stringstream #include #include +#include "DBEngine.h" using namespace std; - -class Relation +class PRelation { string name; - Relation(string str) - { - name = str; - } - - void setRelation(string str) - { - name = str; - } - string getName() - { - return name; - } + public: + PRelation() + { + name = "~"; + } + + PRelation(string str) + { + name = str; + } + + void setPRelation(string str) + { + name = str; + } + string getName() + { + return name; + } }; +class PAttribute +{ + string name; + string type; + int size; + + public: + PAttribute() + { + name = "~"; + type = "~"; + size = 0; + } + + PAttribute(string str, string t) + { + name = str; + type = t; + size = 0; + } + + PAttribute(string str, string t, int s) + { + name = str; + type = t; + size = s; + } + + void setPAttributeName(string str) + { + name = str; + } + + void setPAttributeType(string t) + { + type = t; + } + + void setPAttributeSize(int s) + { + size = s; + } + + string getPAttribute() + { + return name; + } +}; - -class Union +class PUnion { string Un1; string Un2; - Union (string s1, string s2) - { - Un1 = s1; - Un2 = s2; - } - - string getUnion() - { - return "Union of " + Un1 + " and " + Un2; - } + public: + PUnion() + { + Un1 = "~"; + Un2 = "~"; + } + + PUnion (string s1, string s2) + { + Un1 = s1; + Un2 = s2; + } + + string getPUnion() + { + return "Union of " + Un1 + " and " + Un2; + } }; -class Product +class PProduct { string Pr1; string Pr2; - Product(string s1, string s2) - { - Pr1 = s1; - Pr2 = s2; - } - - string getProduct() - { - return "Product of " + Pr1 + " and " + Pr2; - } + public: + PProduct() + { + Pr1 = "~"; + Pr2 = "~"; + } + + PProduct(string s1, string s2) + { + Pr1 = s1; + Pr2 = s2; + } + + string getPProduct() + { + return "Product of " + Pr1 + " and " + Pr2; + } }; -class Difference +class PDifference { string D1; string D2; - Difference(string s1, string s2) - { - D1 = s1; - D2 = s2; - } - - string getDifference() - { - return "Difference of " + D1 + " and " + D2; - } + public: + PDifference() + { + D1 = "~"; + D2 = "~"; + } + + PDifference(string s1, string s2) + { + D1 = s1; + D2 = s2; + } + + string getPDifference() + { + return "Difference of " + D1 + " and " + D2; + } }; -class Renaming +class PRenaming { string newName; string oldName; - Renaming(string s1, string s2) - { - newName = s1; - oldName = s2; - } - - string doRename() - { - return "Renaming " + oldName + " to " + newName; - } + public: + PRenaming() + { + newName = "~"; + oldName = "~"; + } + + PRenaming(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doRename() + { + return "Renaming " + oldName + " to " + newName; + } }; -class Projection +class PProjection { string newName; string oldName; - Projection(string s1, string s2) - { - newName = s1; - oldName = s2; - } - - string doProjection() - { - return "Projecting " + oldName + " onto " + newName; - } + public: + PProjection() + { + newName = "~"; + oldName = "~"; + } + + PProjection(string s1, string s2) + { + newName = s1; + oldName = s2; + } + + string doPProjection() + { + return "Projecting " + oldName + " onto " + newName; + } }; -class Operand +class POperand { string op; public: - Operand() + POperand() { + op = "~"; } - Operand(string str) + POperand(string str) { op = str; } - void setOperand(string str) + void setPOperand(string str) { op = str; } - string getOperand() + string getPOperand() { return op; } }; -class Op +class POp { string op; public: - Op() + POp() { + op = "~"; } - Op(string str) + POp(string str) { op = str; } - void setOp(string str) + void setPOp(string str) { op = str; } - string getOp() + string getPOp() { return op; } }; -class Comparison +class PComparison { - Op op; - Operand operand1; - Operand operand2; + POp op; + POperand operand1; + POperand operand2; public: - - Comparison(string str1, string str2, string str3) + PComparison() { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); + op.setPOp("~"); + operand1.setPOperand("~"); + operand2.setPOperand("~"); } - void setComparison(string str1, string str2, string str3) + PComparison(string str1, string str2, string str3) { - operand1.setOperand(str1); - op.setOp(str2); - operand2.setOperand(str3); + operand1.setPOperand(str1); + op.setPOp(str2); + operand2.setPOperand(str3); } - string getComparison() + void setPComparison(string str1, string str2, string str3) { - return operand1.getOperand() + " " + op.getOp() + " " + operand2.getOperand(); + operand1.setPOperand(str1); + op.setPOp(str2); + operand2.setPOperand(str3); + } + + string getPComparison() + { + return operand1.getPOperand() + " " + op.getPOp() + " " + operand2.getPOperand(); } }; -class Conjunction +class PConjunction { string conj; public: - Conjunction(string str) + PConjunction() + { + conj = "~"; + } + + PConjunction(string str) { conj = str; } - void setConjunction(string str) + void setPConjunction(string str) { conj = str; } - string getConjunction() + string getPConjunction() { return conj; } }; -class Condition +class PCondition { string cond; public: - Condition(string str) + + PCondition() + { + cond = "~"; + } + + PCondition(string str) { cond = str; } - void setCondition(string str) + void setPCondition(string str) { cond = str; } - string getCondition() + string getPCondition() { return cond; } }; -class Selection +class PSelection { string select; public: - Selection(string str) + PSelection() + { + select = "~"; + } + + PSelection(string str) { select = str; } - string getSelection() + string getPSelection() { return select; } }; + +class PExpression +{ + PRelation rel; + PSelection sel; + PProjection proj; + PRenaming ren; + PUnion un; + PDifference diff; + PProduct prod; + string temp; + + public: + + PExpression() + { + } + + PExpression(string str) + { + temp = str; + } + + void setPExpression(string str) + { + temp = str; + } + + string getPExpression() + { + return temp; + } +}; + + +vector tokenize(string ss) +{ + + string tempString; + stringstream lineStream(ss); + vector output; + + while (lineStream >> tempString) + { + output.push_back(tempString); + } + + //testing--------------- + cout<<"TokenList: "; + + for (int i = 0; i input) +{ + cout<<"TokenList: "< showCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< saveCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< closeCMD(vector input) +{ + if (input.size() > 3) + { + cout<<"Syntax error!"< openCMD(vector input) +{ + if (input.size() > 2) + { + cout<<"Syntax error!"< exitCMD(vector input) +{ + if (input[1] != ";") + { + cout<<"ERROR: missing semicolon!"< createCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + + if (input[0] == "CREATE" && input[1] == "TABLE") + { + input.erase(input.begin()); + input.erase(input.begin()); + + PRelation r; + r.setPRelation(input[0]); + + input.erase(input.begin()); + + if(input[0] == "(") + { + input.erase(input.begin()); + + //vector e1; + + vector a; + + while(input[0] != ")") //inserting all values to relation + { + PAttribute temp; + + if (input[0] == ",") + { + input.erase(input.begin()); + } + + temp.setPAttributeName(input[0]); + + input.erase(input.begin()); + + if(input[0] == "INTEGER") + { + temp.setPAttributeType(input[0]); + input.erase(input.begin()); + } + else + { + temp.setPAttributeType(input[0].substr(0,input[0].find("("))); + temp.setPAttributeSize(stoi(input[0].substr(input[0].find("("), input[0].find(")")))); + input.erase(input.begin()); + } + + a.push_back(temp); + } + + vector apk; //save primary keys temp storage + + if(input[0] == "PRIMARY" && input[1] == "KEY") + { + input.erase(input.begin()); + input.erase(input.begin()); + + if(input[0] == "(") + { + + while(input[0] != ")") //inserting all values to relation + { + PAttribute temp; + + if (input[0] == ",") + { + input.erase(input.begin()); + } + + temp.setPAttributeName(input[0]); + + apk.push_back(temp); + + input.erase(input.begin()); + } + + + + return input; + } + } + } + + else cout<<"Syntax error!"< insertCMD(vector input) +{ + //relation name will be the first element of the vector of data returned by this function + + if (input[0] == "INTO") + { + input.erase(input.begin()); + + PRelation r(input[0]); + + input.erase(input.begin()); + + vector s; + + if (input[0] == "VALUES" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + + if(input[0] == "(") + { + if(input[0].at(0) == '\"') + { + s.push_back(input[0].substr(1,input[0].find_last_of("\""))); + } + vector e; + input.erase(input.begin()); + + while(input[0] != ")") //inserting all values to relation + //for (int i = 0; i < 2; ++i) + { + if (input[0] == ",") input.erase(input.begin()); + + e.push_back(input[0]); + + input.erase(input.begin()); + } + + cout << "Inserting: "; + while(!e.empty()) + { + cout << e[0].getPExpression() << " "; + e.erase(e.begin()); + } + cout << "into " << r.getName() << ".\n"; + + return input; + + } + + else if (input[0] == "RELATION") + { + input.erase(input.begin()); + + PExpression e; + + while(input[0] != ";") + { + e.setPExpression(e.getPExpression() + input[0]); + } + + cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; + + return input; + } + + else cout<<"Syntax error!"< updateCMD(vector input) +{ + PRelation r(input[0]); + + input.erase(input.begin()); + + if(input[0] == "SET") + { + input.erase(input.begin()); + + //parse out ( and send everything until ) into an Expression vector + if(input[0] == "(") + { + + vector a; + PAttribute temp; + + vector s; + + //vector e; + + input.erase(input.begin()); + + while(input[0] != ")") + { + temp.setPAttributeName(input[0]); + a.push_back(temp); + temp.setPAttributeName("~"); + + input.erase(input.begin()); + + if(input[0] == "=") + { + input.erase(input.begin()); + + s.push_back(input[0]); + } + + else + { + cout<<"Syntax error!"< deleteCMD(vector input) +{ + if (input[0] == "DELETE" && input[1] == "FROM") + { + input.erase(input.begin()); + input.erase(input.begin()); + + PRelation r(input[0]); + + if(input[0] == "WHERE") + { + if(input[0] == "(") + { + //PCondition c; + + PComparison c; + POperand oops1; + POperand oops2; + POp op; + + while(input[0] != ")") + { + oops1.setPOperand(input[0]); + input.erase(input.begin()); + + oops2.setPOperand(input[0]); + input.erase(input.begin()); + + op.setPOp(input[0]); + input.erase(input.begin()); + + c.setPComparison(oops1.getPOperand(), op.getPOp(), oops2.getPOperand()); + } + } + } + + // send delete command to DBEngine + } + else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list +{ +/* +• Match the first item in the token list and determine weather this is a command or a query. +• Call functions par_command() or par_query(); +• After either par_command() or par_query() returns, make sure the line ends properly with “;†token +*/ + string tempChar = input.back(); + + if (tempChar != ";") + { + cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); + cout<<"arguments: "< insertInput = createCMD(input); + cout<<"arguments: "< insertInput = deleteCMD(input); + cout<<"arguments: "< insertInput = updateCMD(input); + cout<<"arguments: "< listOfTokens = tokenize(input); + par_line(listOfTokens); +} + From 5cadbd35ae3bd6477ed9d9374b78e8be697b23ab Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:30:32 -0500 Subject: [PATCH 145/186] Update DBEngine.h --- DBEngine.h | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/DBEngine.h b/DBEngine.h index 8a71981..d5ae85a 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -1,3 +1,4 @@ +#pragma once #include #include #include @@ -6,8 +7,9 @@ //still in progress class DBEngine{ vector tables; + vector commands; int size; - + public: DBEngine(); void createTable(string n); @@ -17,10 +19,13 @@ public: //void showTable(Relation r); Relation& getTableFromName(string n); void saveToFile(vector cmds); - //Relation selection(); + Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); + Relation product(string s1, Relation r1, Relation r2); void rename(Relation& r, vector oldnames, vector newnames); - //void setUnion(); + void save(); + void storeCommands(string s); + //Relation setUnion(Relation r1, Relation r2); //void setDiff(); - //void crossProduct(); + //void crossProduct(); }; From 391cc2ab50948a30394f97dc2dc7b6110a992b50 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:31:23 -0500 Subject: [PATCH 146/186] Added the save function --- DBEngine.cpp | 47 ++++++++++++++++++----------------------------- 1 file changed, 18 insertions(+), 29 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 5c3e864..26e15f2 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -24,12 +24,27 @@ void DBEngine::createTable(Relation r){ tables.push_back(r); size++; } + +void DBEngine::storeCommands(string s){ + commands.push_back(s); +} + +void DBEngine::save(){ + + ofstream file; + file.open("savefile.txt"); + + for(int i = 0; i < commands.size(); ++i){ + file << commands[i] << endl; + } + + file.close(); +} vector DBEngine::getRelations(){ return tables; } - Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ @@ -38,19 +53,6 @@ Relation& DBEngine::getTableFromName(string n){ } } -//currently writes nothing meaningful -void DBEngine::saveToFile(vector cmds){ - ofstream file; - file.open("savefile.db"); - - for(int i = 0; i < cmds.size(); ++i){ - file << cmds[i] << endl; - } - - file.close(); -} - - Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } @@ -78,7 +80,6 @@ Relation DBEngine::product(string new_name, Relation r1, Relation r2){ Relation temp(new_name); vector a1; - for(int i = 0; i < r1.getAttributes().size(); ++i){ a1.push_back(r1.getAttributes()[i]); } @@ -93,20 +94,6 @@ Relation DBEngine::product(string new_name, Relation r1, Relation r2){ vector tuple2; vector result_tuple; - - //Don't we need to find the bigger one to start first? - if(r1.getSize() >= r2.getSize()) - { - //Combine tuples from relations into one, push back that tuple into the resultant relation via insertTuple - //Yeah have fun - } - - else if(r2.getSize() > r1.getSize()) - { - // - } - - return temp; } @@ -129,6 +116,8 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } + + /*Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible"; From c523e779b98abe6779b44b02b2fef82f214875e1 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:32:14 -0500 Subject: [PATCH 147/186] Delete Parserv2.cpp --- Parserv2.cpp | 196 --------------------------------------------------- 1 file changed, 196 deletions(-) delete mode 100755 Parserv2.cpp diff --git a/Parserv2.cpp b/Parserv2.cpp deleted file mode 100755 index cb848f3..0000000 --- a/Parserv2.cpp +++ /dev/null @@ -1,196 +0,0 @@ -#include -#include -#include -#include -#include - -using namespace std; - - -vector tokenize(string ss) -{ - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - //testing--------------- - cout<<"TokenList: "; - - for (int i = 0; i input) -{ - cout<<"TokenList: "< insertCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - vector output; - - if (input[0] == "INTO") - { - input.erase(input.begin()); - - output.push_back(input[0]); //pushing relation name - - input.erase(input.begin()); - - if (input[0] == "VALUES" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - - if(input[0] == "(") - { - input.erase(input.begin()); - - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) - { - if (input[0] == ",") input.erase(input.begin()); - - output.push_back(input[0]); - - input.erase(input.begin()); - } - - return output; - - } - - else cout<<"Syntax error!"< showCMD(vector input) -{ - if (input.size() > 3) - { - cout<<"Syntax error!"< exitCMD(vector input) -{ - if (input[1] != ";") - { - cout<<"ERROR: missing semicolon!"< createCMD(vector input) -{ - if (input[0] != "CREATE") { - cout << "Error: create keyword is missing." < openCMD(vector input){ - if (input[0] != "OPEN") { - cout << "Error: open keyword is missing." < closeCMD(vector input){ - if (input[0] != "CLOSE") { - cout << "Error: close keyword is missing." < saveCMD(vector input){ - if (input[0] != "SAVE") { - cout << "Error: save keyword is missing." < updateCMD(vector input){ - //UPDATE relation-name SET attribute-name = literal { , attribute-name = literal } WHERE condition -} - -vector deleteCMD(vector input){ - //DELETE FROM relation-name WHERE condition - if (input[0] != "DELETE") { - cout << "Error: save keyword is missing." < listOfTokens = tokenize(s); - deleteCMD(listOfTokens); -} \ No newline at end of file From d32864988ffe122f6dc03cf08f7e8b3172c79c10 Mon Sep 17 00:00:00 2001 From: Brandon Jackson <1drummer@att.net> Date: Fri, 25 Sep 2015 00:34:14 -0500 Subject: [PATCH 148/186] Results of the parser linking the save command --- saveFile | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 saveFile diff --git a/saveFile b/saveFile new file mode 100644 index 0000000..948b094 --- /dev/null +++ b/saveFile @@ -0,0 +1,3 @@ +INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ; +SHOW Dogs ; +EXIT ; From d1e610a8c6efea85083d1f44666c80602ad84b6d Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Sat, 26 Sep 2015 07:09:44 -0500 Subject: [PATCH 149/186] working on crossprodut --- DBEngine.cpp | 99 +++++++++++++++++++++++++++++++++++++-------------- DBEngine.h | 4 +-- Relation.cpp | 4 +++ Relation.h | 1 + a.out | Bin 97311 -> 101732 bytes test.cpp | 21 ++++------- 6 files changed, 86 insertions(+), 43 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 3f1082f..08becc2 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -101,6 +101,7 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ else { //currently all returned relations are called TEMP Relation new_r = r1; + new_r.setTableName("TEMP"); vector temp; bool duplicate = false; @@ -122,32 +123,76 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ } return new_r; - - - - - - /*vector r1_atts = r1.getAttributes(); - vector r2_atts = r2.getAttributes(); - vector new_atts = r1_atts; - - for (int i = 0; i < r2_atts.size(); ++i) { - for (int j = 0; j < r2_atts[i].getSize(); ++j){ - new_atts[i].addCell(r2_atts[i][j]); - } - } - - for (int i = 0; i < new_atts.size(); ++i) { - for (int j = 0; j < new_atts.size(); ++j){ - if (new_atts[i] == new_atts[j]){ - new_atts.erase(new_atts.begin() + i); - continue; - } - } - } - - //currently all returned relations are called TEMP - Relation new_r("TEMP", new_atts); - return new_r;*/ } } + +Relation DBEngine::setDiff(Relation r1, Relation r2){ + if (r1.getAttributeNames() != r2.getAttributeNames()){ + cout << "Failure to diff: the relations are not union-compatible.\nreturning the first relation.\n"; + return r1; + } + + else { + //currently all returned relations are called TEMP + Relation new_r = r1; + new_r.setTableName("TEMP"); + vector temp; + bool duplicate = false; + + for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i){ + new_r.removeTuple(i); + } + + for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) { + temp = r1.getTuple(i); + + for (int j = 0; j < r2.getAttributes()[0].getSize(); ++j){ + if (temp == r2.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate){ + new_r.insertTuple(temp); + } + + duplicate = false; + } + + //make this one for loop later! + + for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { + temp = r2.getTuple(i); + + for (int j = 0; j < r1.getAttributes()[0].getSize(); ++j){ + if (temp == r1.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate){ + new_r.insertTuple(temp); + } + + duplicate = false; + } + + return new_r; + } +} + +Relation DBEngine::crossProduct(Relation r1, Relation r2){ + vector new_atts = r1.getAttributes(); + + for (int i = 0; i < r2.getAttributes().size(); ++i) { + new_atts.push_back(r2.getAttributes()[i]); + } + + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + + + return new_r; +} \ No newline at end of file diff --git a/DBEngine.h b/DBEngine.h index 878a42e..53aa9c2 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,6 +22,6 @@ public: Relation projection(vector input, Relation r); void rename(Relation& r, vector oldnames, vector newnames); Relation setUnion(Relation r1, Relation r2); - //void setDiff(); - //void crossProduct(); + Relation setDiff(Relation r1, Relation r2); + Relation crossProduct(Relation r1, Relation r2); }; diff --git a/Relation.cpp b/Relation.cpp index 86a6dad..18d4728 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -23,6 +23,10 @@ string Relation::getTableName(){ return name; } +void Relation::setTableName(string s){ + name = s; +} + Attribute Relation::operator[](int i){ return att[i]; } diff --git a/Relation.h b/Relation.h index 2a8846c..172627f 100755 --- a/Relation.h +++ b/Relation.h @@ -13,6 +13,7 @@ public: Relation(string n, vector a); void insertAttributes(vector a); string getTableName(); + void setTableName(string s); Attribute operator[](int i); vector getTuple(int index); vector getAttributes(); diff --git a/a.out b/a.out index 54f580c771995270a139f89552204b6cc6a36474..fdcea516825c0a6437cc643cb7f00dac49fc9e1a 100755 GIT binary patch literal 101732 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 v2; v2.push_back(att4); v2.push_back(att5); - v2.push_back(att6); engine.createTable("MoarFood", v2); - engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); } From 6247ac10ca73541dbda1a8915aa16a35679516d3 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Sat, 26 Sep 2015 07:11:33 -0500 Subject: [PATCH 150/186] crossproduct attributes correct --- DBEngine.cpp | 4 ++++ a.out | Bin 101732 -> 101732 bytes 2 files changed, 4 insertions(+) diff --git a/DBEngine.cpp b/DBEngine.cpp index 08becc2..208da05 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -189,6 +189,10 @@ Relation DBEngine::crossProduct(Relation r1, Relation r2){ for (int i = 0; i < r2.getAttributes().size(); ++i) { new_atts.push_back(r2.getAttributes()[i]); } + + for (int i = 0; i < new_atts.size(); ++i) { + new_atts[i].clearAllValues(); + } //currently all returned relations are called TEMP Relation new_r("TEMP", new_atts); diff --git a/a.out b/a.out index fdcea516825c0a6437cc643cb7f00dac49fc9e1a..5ff86971b2e65438c64477dbf8868317d02057c8 100755 GIT binary patch delta 13197 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 QL;Y~A(h4TL#vK0je>#P+kpKVy delta 12975 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 z Date: Sat, 26 Sep 2015 23:00:45 -0500 Subject: [PATCH 151/186] Remove a.out --- a.out | Bin 97311 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100755 a.out diff --git a/a.out b/a.out deleted file mode 100755 index 54f580c771995270a139f89552204b6cc6a36474..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 97311 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%0DlO0xE}c`@C7|ZL-{D^FF9B0J&bwO1H1?L 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 Date: Sat, 26 Sep 2015 23:24:24 -0500 Subject: [PATCH 152/186] Fixing commit issues --- Attribute.cpp | 9 ++++++++ Attribute.h | 3 +++ Condition.h | 14 ++++--------- DBEngine.cpp | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++ DBEngine.h | 4 ++++ Parserv3.h | 29 +++++++++++++++++++++++++ README.txt | 9 ++++++++ Relation.cpp | 32 ++++++++++++++++++++++++++++ Relation.h | 6 +++++- a.out | Bin 38917 -> 0 bytes test.cpp | 31 +++++++++++++++++++++++++++ 11 files changed, 183 insertions(+), 11 deletions(-) delete mode 100755 a.out diff --git a/Attribute.cpp b/Attribute.cpp index eb35167..5c2a0d6 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -21,6 +21,11 @@ void Attribute::addCell(string v){ size++; } +void Attribute::removeCell(int index){ + values.erase(values.begin() + index); + size--; +} + string Attribute::operator[](int i){ return values[i]; } @@ -60,4 +65,8 @@ void Attribute::display(){ } cout << "-------------\n"; +} + +void Attribute::clearAllValues(){ + values.clear(); } \ No newline at end of file diff --git a/Attribute.h b/Attribute.h index 0e92a40..9bb84fd 100755 --- a/Attribute.h +++ b/Attribute.h @@ -1,3 +1,4 @@ +#pragma once #include #include @@ -14,6 +15,7 @@ public: Attribute(); Attribute(string n, string t, bool k); void addCell(string v); + void removeCell(int index); string operator[](int i); vector getValues(); string getName(); @@ -22,4 +24,5 @@ public: bool isKey(); int getSize(); void display(); + void clearAllValues(); }; \ No newline at end of file diff --git a/Condition.h b/Condition.h index cc06978..51c031e 100755 --- a/Condition.h +++ b/Condition.h @@ -1,13 +1,7 @@ -#include -#include "Attribute.h" +#pragma once +#include "Relation.h" using namespace std; -class Condition{ - Attribute att; - -public: - //currently only implemented for comparison - Condition(Attribute a); - Condition(Attribute a); -}; \ No newline at end of file +//currently only implementing for comparison +Relation equality(string attName, string s, Relation r); diff --git a/DBEngine.cpp b/DBEngine.cpp index 26e15f2..21ba967 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -45,6 +45,10 @@ vector DBEngine::getRelations(){ return tables; } +<<<<<<< HEAD +======= + +>>>>>>> master Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ @@ -53,6 +57,11 @@ Relation& DBEngine::getTableFromName(string n){ } } +Relation DBEngine::selection(string attName, string s, Relation r){ + equality(attName, s, r); +} + + Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } @@ -73,6 +82,7 @@ Relation DBEngine::projection(vector input, Relation r){ Relation temp(new_name, v); return temp; +<<<<<<< HEAD } Relation DBEngine::product(string new_name, Relation r1, Relation r2){ @@ -95,6 +105,8 @@ Relation DBEngine::product(string new_name, Relation r1, Relation r2){ vector result_tuple; return temp; +======= +>>>>>>> master } //test error matching @@ -116,6 +128,7 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } +<<<<<<< HEAD /*Relation DBEngine::setUnion(Relation r1, Relation r2){ @@ -126,6 +139,44 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna else { vector r1_atts = r1.getAttributes(); +======= +Relation DBEngine::setUnion(Relation r1, Relation r2){ + if (r1.getAttributeNames() != r2.getAttributeNames()){ + cout << "Failure to union: the relations are not union-compatible.\nreturning the first relation.\n"; + return r1; + } + + else { + //currently all returned relations are called TEMP + Relation new_r = r1; + vector temp; + bool duplicate = false; + + for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { + temp = r2.getTuple(i); + + for (int j = 0; j < new_r.getAttributes()[0].getSize(); ++j){ + if (temp == new_r.getTuple(j)){ + duplicate = true; + break; + } + } + + if (!duplicate) { + new_r.insertTuple(temp); + } + + duplicate = false; + } + + return new_r; + + + + + + /*vector r1_atts = r1.getAttributes(); +>>>>>>> master vector r2_atts = r2.getAttributes(); vector new_atts = r1_atts; @@ -146,6 +197,12 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna //currently all returned relations are called TEMP Relation new_r("TEMP", new_atts); +<<<<<<< HEAD return new_r; } }*/ +======= + return new_r;*/ + } +} +>>>>>>> master diff --git a/DBEngine.h b/DBEngine.h index d5ae85a..ce1702c 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -23,9 +23,13 @@ public: Relation projection(vector input, Relation r); Relation product(string s1, Relation r1, Relation r2); void rename(Relation& r, vector oldnames, vector newnames); +<<<<<<< HEAD void save(); void storeCommands(string s); //Relation setUnion(Relation r1, Relation r2); +======= + Relation setUnion(Relation r1, Relation r2); +>>>>>>> master //void setDiff(); //void crossProduct(); }; diff --git a/Parserv3.h b/Parserv3.h index dea692c..0ddb5a7 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -7,6 +7,10 @@ using namespace std; +<<<<<<< HEAD +======= + +>>>>>>> master class PRelation { string name; @@ -262,6 +266,15 @@ class PComparison public: PComparison() +<<<<<<< HEAD + { + op.setPOp("~"); + operand1.setPOperand("~"); + operand2.setPOperand("~"); + } + + PComparison(string str1, string str2, string str3) +======= { op.setPOp("~"); operand1.setPOperand("~"); @@ -276,6 +289,15 @@ class PComparison } void setPComparison(string str1, string str2, string str3) +>>>>>>> master + { + operand1.setPOperand(str1); + op.setPOp(str2); + operand2.setPOperand(str3); + } + +<<<<<<< HEAD + void setPComparison(string str1, string str2, string str3) { operand1.setPOperand(str1); op.setPOp(str2); @@ -284,6 +306,10 @@ class PComparison string getPComparison() { +======= + string getPComparison() + { +>>>>>>> master return operand1.getPOperand() + " " + op.getPOp() + " " + operand2.getPOperand(); } }; @@ -391,6 +417,7 @@ class PExpression return temp; } }; +<<<<<<< HEAD vector tokenize(string ss) @@ -880,3 +907,5 @@ void parse(string input, DBEngine &engine) par_line(listOfTokens); } +======= +>>>>>>> master diff --git a/README.txt b/README.txt index bc38460..f4baea9 100755 --- a/README.txt +++ b/README.txt @@ -1,3 +1,12 @@ +//---IMPORTANT---// + +The function stoi() is used in the parser .cpp file to parse integers from the input. +When compiling things with the parser included, make sure you compile using: + +g++ -std=c++11 *.cpp + +//---------------// + I changed the name of the repo. To make everything pretty, rename your working folder, and type this line: git remote set-url origin https://github.tamu.edu/USERNAME/DMS.git diff --git a/Relation.cpp b/Relation.cpp index f81adee..86a6dad 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -13,10 +13,30 @@ Relation::Relation(string n, vector a){ size = a.size(); } +void Relation::insertAttributes(vector a){ + for (int i = 0; i < a.size(); ++i){ + att.push_back(a[i]); + } +} + string Relation::getTableName(){ return name; } +Attribute Relation::operator[](int i){ + return att[i]; +} + +vector Relation::getTuple(int index){ + vector temp; + + for (int i = 0; i < att.size(); ++i){ + temp.push_back(att[i][index]); + } + + return temp; +} + vector Relation::getAttributes(){ return att; } @@ -90,3 +110,15 @@ void Relation::insertFromRelation(Relation r){ } } } + +void Relation::removeTuple(int index){ + if (index >= this->size) { + cout << "Failure to delete: the requested index is out of bounds."; + } + + else { + for (int i = 0; i < att.size(); ++i) { + att[i].removeCell(index); + } + } +} \ No newline at end of file diff --git a/Relation.h b/Relation.h index faa89ea..2a8846c 100755 --- a/Relation.h +++ b/Relation.h @@ -1,3 +1,4 @@ +#pragma once #include #include #include "Attribute.h" @@ -10,7 +11,10 @@ class Relation{ public: Relation(string n); Relation(string n, vector a); + void insertAttributes(vector a); string getTableName(); + Attribute operator[](int i); + vector getTuple(int index); vector getAttributes(); vector getAttributeNames(); Attribute& getAttributeByName(string s); @@ -19,5 +23,5 @@ public: void display(); void insertTuple(vector tuple); //assuming they are in order void insertFromRelation(Relation r); - //void removeTuple(); + void removeTuple(int index); }; \ No newline at end of file diff --git a/a.out b/a.out deleted file mode 100755 index 6a77a3df2bea8473f5f60940f721d90c854fadc5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 38917 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 ZKX7r$9%5-6L>Eeo#$bJu!9R%^{|#1L+kyZ9 diff --git a/test.cpp b/test.cpp index 0d7ee26..8ff77f2 100755 --- a/test.cpp +++ b/test.cpp @@ -1,6 +1,10 @@ #include #include +<<<<<<< HEAD #include "Parserv3.h" +======= +#include "Condition.h" +>>>>>>> master #include "DBEngine.h" using namespace std; @@ -28,6 +32,7 @@ int main() { v.push_back(att2); v.push_back(att3); +<<<<<<< HEAD Relation r("Food", v); //r.renameAttribute("Breakfast", "BFST"); //r.display(); @@ -93,4 +98,30 @@ int main () { engine.save(); +======= + engine.createTable("Food", v); + + Attribute att4("Breakfast", "VARCHAR(20)", true); + Attribute att5("Lunch", "VARCHAR(20)", false); + Attribute att6("Dinner", "VARCHAR(20)", false); + + att4.addCell("Pancakes"); + att4.addCell("Bacon"); + att4.addCell("Eggs"); + att5.addCell("Turkey Sandwich"); + att5.addCell("Pasta Salad"); + att5.addCell("Taco"); + att6.addCell("Steak"); + att6.addCell("Fajitas"); + att6.addCell("Spaghetti"); + + vector v2; + v2.push_back(att4); + v2.push_back(att5); + v2.push_back(att6); + + engine.createTable("MoarFood", v2); + + engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); +>>>>>>> master } From 3436a00452c27593e502ab72d0af0660dcd9be75 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 00:58:19 -0500 Subject: [PATCH 153/186] Fixed merge issues. Everything compiles and runs again. --- DBEngine.cpp | 58 +++++++++------------------------------- DBEngine.h | 14 +++------- Parserv3.h | 52 +++-------------------------------- Parserv4.cpp | 8 ++++++ saveFile => savefile.txt | 0 test.cpp | 33 +++++++---------------- 6 files changed, 37 insertions(+), 128 deletions(-) rename saveFile => savefile.txt (100%) diff --git a/DBEngine.cpp b/DBEngine.cpp index c2dcf20..3435d56 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -44,14 +44,7 @@ void DBEngine::save(){ vector DBEngine::getRelations(){ return tables; } - -<<<<<<< HEAD -<<<<<<< HEAD -======= -======= ->>>>>>> master - ->>>>>>> master + Relation& DBEngine::getTableFromName(string n){ for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ @@ -64,7 +57,7 @@ Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } - +/* Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } @@ -73,6 +66,7 @@ Relation DBEngine::selection(string attName, string s, Relation r){ Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } +*/ //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ @@ -89,9 +83,7 @@ Relation DBEngine::projection(vector input, Relation r){ } Relation temp(new_name, v); - return temp; -<<<<<<< HEAD -<<<<<<< HEAD + return temp; } Relation DBEngine::product(string new_name, Relation r1, Relation r2){ @@ -113,11 +105,7 @@ Relation DBEngine::product(string new_name, Relation r1, Relation r2){ vector tuple2; vector result_tuple; - return temp; -======= ->>>>>>> master -======= ->>>>>>> master + return temp; } //test error matching @@ -138,12 +126,10 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna } } } + -<<<<<<< HEAD -<<<<<<< HEAD - - -/*Relation DBEngine::setUnion(Relation r1, Relation r2){ +/* +Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible"; return; @@ -151,9 +137,7 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna else { vector r1_atts = r1.getAttributes(); -======= -======= ->>>>>>> master +*/ Relation DBEngine::setUnion(Relation r1, Relation r2){ if (r1.getAttributeNames() != r2.getAttributeNames()){ cout << "Failure to union: the relations are not union-compatible.\nreturning the first relation.\n"; @@ -187,13 +171,9 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ +/* - - /*vector r1_atts = r1.getAttributes(); -<<<<<<< HEAD ->>>>>>> master -======= ->>>>>>> master + vector r1_atts = r1.getAttributes(); vector r2_atts = r2.getAttributes(); vector new_atts = r1_atts; @@ -213,19 +193,7 @@ Relation DBEngine::setUnion(Relation r1, Relation r2){ } //currently all returned relations are called TEMP - Relation new_r("TEMP", new_atts); -<<<<<<< HEAD -<<<<<<< HEAD - return new_r; - } -}*/ -======= + Relation new_r("TEMP", new_atts); return new_r;*/ } -} ->>>>>>> master -======= - return new_r;*/ - } -} ->>>>>>> master +} diff --git a/DBEngine.h b/DBEngine.h index acdbe4e..11531a6 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,18 +22,10 @@ public: Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); Relation product(string s1, Relation r1, Relation r2); - void rename(Relation& r, vector oldnames, vector newnames); -<<<<<<< HEAD -<<<<<<< HEAD + void rename(Relation& r, vector oldnames, vector newnames); void save(); - void storeCommands(string s); - //Relation setUnion(Relation r1, Relation r2); -======= - Relation setUnion(Relation r1, Relation r2); ->>>>>>> master -======= - Relation setUnion(Relation r1, Relation r2); ->>>>>>> master + void storeCommands(string s); + Relation setUnion(Relation r1, Relation r2); //void setDiff(); //void crossProduct(); }; diff --git a/Parserv3.h b/Parserv3.h index cd5c580..c6d52fa 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -7,13 +7,6 @@ using namespace std; -<<<<<<< HEAD -======= - -<<<<<<< HEAD ->>>>>>> master -======= ->>>>>>> master class PRelation { string name; @@ -269,18 +262,6 @@ class PComparison public: PComparison() -<<<<<<< HEAD -<<<<<<< HEAD - { - op.setPOp("~"); - operand1.setPOperand("~"); - operand2.setPOperand("~"); - } - - PComparison(string str1, string str2, string str3) -======= -======= ->>>>>>> master { op.setPOp("~"); operand1.setPOperand("~"); @@ -295,19 +276,6 @@ class PComparison } void setPComparison(string str1, string str2, string str3) -<<<<<<< HEAD ->>>>>>> master -======= ->>>>>>> master - { - operand1.setPOperand(str1); - op.setPOp(str2); - operand2.setPOperand(str3); - } - -<<<<<<< HEAD -<<<<<<< HEAD - void setPComparison(string str1, string str2, string str3) { operand1.setPOperand(str1); op.setPOp(str2); @@ -316,14 +284,6 @@ class PComparison string getPComparison() { -======= - string getPComparison() - { ->>>>>>> master -======= - string getPComparison() - { ->>>>>>> master return operand1.getPOperand() + " " + op.getPOp() + " " + operand2.getPOperand(); } }; @@ -431,10 +391,8 @@ class PExpression return temp; } }; -<<<<<<< HEAD -<<<<<<< HEAD - +/* vector tokenize(string ss) { @@ -835,7 +793,7 @@ void par_line(vector input) //calls par_command() or par_query() dependi • Match the first item in the token list and determine weather this is a command or a query. • Call functions par_command() or par_query(); • After either par_command() or par_query() returns, make sure the line ends properly with “;†token -*/ + string tempChar = input.back(); if (tempChar != ";") @@ -921,8 +879,6 @@ void parse(string input, DBEngine &engine) vector listOfTokens = tokenize(input); par_line(listOfTokens); } +*/ -======= ->>>>>>> master -======= ->>>>>>> master +void parse(string s, DBEngine &e); \ No newline at end of file diff --git a/Parserv4.cpp b/Parserv4.cpp index 0732896..c70802a 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -486,6 +486,13 @@ void par_line(vector input) //calls par_command() or par_query() dependi } } +void parse(string input, DBEngine &engine) +{ + engine.storeCommands(input); + vector listOfTokens = tokenize(input); + par_line(listOfTokens); +} +/* int main () { @@ -503,3 +510,4 @@ int main () { } +*/ \ No newline at end of file diff --git a/saveFile b/savefile.txt similarity index 100% rename from saveFile rename to savefile.txt diff --git a/test.cpp b/test.cpp index 42bbc52..b47941d 100755 --- a/test.cpp +++ b/test.cpp @@ -1,14 +1,7 @@ #include -#include -<<<<<<< HEAD -<<<<<<< HEAD -#include "Parserv3.h" -======= -#include "Condition.h" ->>>>>>> master -======= -#include "Condition.h" ->>>>>>> master +#include +#include "Parserv3.h" +//#include "Condition.h" #include "DBEngine.h" using namespace std; @@ -35,9 +28,7 @@ int main() { v.push_back(att1); v.push_back(att2); v.push_back(att3); - -<<<<<<< HEAD -<<<<<<< HEAD + Relation r("Food", v); //r.renameAttribute("Breakfast", "BFST"); //r.display(); @@ -101,13 +92,10 @@ int main () { parse(ss3, engine); engine.save(); - - -======= - engine.createTable("Food", v); -======= - engine.createTable("Food", v); ->>>>>>> master + /* + + //engine.createTable("Food", v); + //engine.createTable("Food", v); Attribute att4("Breakfast", "VARCHAR(20)", true); Attribute att5("Lunch", "VARCHAR(20)", false); @@ -131,8 +119,5 @@ int main () { engine.createTable("MoarFood", v2); engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); -<<<<<<< HEAD ->>>>>>> master -======= ->>>>>>> master + */ } From 50bff50cefd936033bb28bbbd7b6fd8f45c2c27d Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 15:27:14 -0500 Subject: [PATCH 154/186] Starting DBApp development. --- DBApp.cpp | 12 ++++++++++++ test | Bin 92165 -> 169165 bytes test.cpp | 8 +++++--- 3 files changed, 17 insertions(+), 3 deletions(-) create mode 100755 DBApp.cpp diff --git a/DBApp.cpp b/DBApp.cpp new file mode 100755 index 0000000..d12b1c2 --- /dev/null +++ b/DBApp.cpp @@ -0,0 +1,12 @@ +#include // std::string +#include // std::cout +#include // std::stringstream +#include +#include +//#include "Parserv3.h" +//#include "DBEngine.h" + +int main() +{ + cout << "Testing."; +} \ No newline at end of file diff --git a/test b/test index bb0df00435ec80350cfc7400001ba3ec27f0c4fb..28ebf9cf9211799297e666fe8b008deb2322f53f 100755 GIT binary patch literal 169165 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 diff --git a/test.cpp b/test.cpp index b47941d..8a5c3f8 100755 --- a/test.cpp +++ b/test.cpp @@ -92,7 +92,7 @@ int main () { parse(ss3, engine); engine.save(); - /* + //engine.createTable("Food", v); //engine.createTable("Food", v); @@ -117,7 +117,9 @@ int main () { v2.push_back(att6); engine.createTable("MoarFood", v2); + + //engine.getTableFromName("Food").display(); - engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); - */ + // engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + } From bcb9b0de81b8a9f602751eb6000815f4bf10ba03 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 15:38:01 -0500 Subject: [PATCH 155/186] Added namespace --- DBApp.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/DBApp.cpp b/DBApp.cpp index d12b1c2..82f49d6 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -6,7 +6,9 @@ //#include "Parserv3.h" //#include "DBEngine.h" +using namespace std; + int main() { - cout << "Testing."; -} \ No newline at end of file + cout << "Testing." << endl; +} From e244c6ca45361518a24c531c67352fea19e60346 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 16:48:08 -0500 Subject: [PATCH 156/186] Commented out DBApp.cpp as it's being developed. test.cpp all tests compile and run into test file. --- DBApp.cpp | 34 ++++++++++++++++++++++++++++++---- Relation.cpp | 2 +- test | Bin 169165 -> 173416 bytes test.cpp | 27 ++++++++++++++++++++++----- 4 files changed, 53 insertions(+), 10 deletions(-) diff --git a/DBApp.cpp b/DBApp.cpp index 82f49d6..eacadaa 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -3,12 +3,38 @@ #include // std::stringstream #include #include -//#include "Parserv3.h" -//#include "DBEngine.h" +#include "Parserv3.h" +#include "DBEngine.h" using namespace std; - +/* int main() { - cout << "Testing." << endl; + cout << "**********************" << endl; + cout << "* Generic Restaurant *" << endl; + cout << "**********************" << endl; + cout << "- Login -" << endl; + cout << "1. Login" << endl; + cout << "2. Request new account" << endl; + cout << "Enter coice: "; + int n; + cin >> n; + string u; + string p; + switch(n) + { + case 1: cout << "- Login -" << endl; + cout << "Enter username: "; + cin >> u; + cout << "Enter password: "; + cin >> p; + // implement user database. + break; + case 2: cout << "Not implemented." << endl; + break; // not implemented. + default: cout << "Not an option." << endl; + return 0; + } + } +*/ \ No newline at end of file diff --git a/Relation.cpp b/Relation.cpp index 86a6dad..0e3f95a 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -69,7 +69,7 @@ int Relation::getSize(){ void Relation::display(){ cout << "--------------------------\n"; - cout << name << "\n"; + cout << getTableName() << "\n"; for (int i = 0; i < att.size(); ++i){ att[i].display(); } diff --git a/test b/test index 28ebf9cf9211799297e666fe8b008deb2322f53f..a3e72f00e1fe26abc809b47c79268f1a41c2fda8 100755 GIT binary patch literal 173416 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 e1y_k(4kh@Aw%Z? diff --git a/test.cpp b/test.cpp index 8a5c3f8..25c217c 100755 --- a/test.cpp +++ b/test.cpp @@ -93,9 +93,26 @@ int main () { engine.save(); - - //engine.createTable("Food", v); - //engine.createTable("Food", v); + Attribute att1("Breakfast", "VARCHAR(20)", true); + Attribute att2("Lunch", "VARCHAR(20)", false); + Attribute att3("Dinner", "VARCHAR(20)", false); + + att1.addCell("Pancakes"); + att1.addCell("Waffles"); + att1.addCell("Biscuits"); + att2.addCell("Turkey Sandwich"); + att2.addCell("Caesar Salad"); + att2.addCell("Pizza"); + att3.addCell("Steak"); + att3.addCell("Shrimp"); + att3.addCell("Ribs"); + + vector v; + v.push_back(att1); + v.push_back(att2); + v.push_back(att3); + + engine.createTable("Food", v); Attribute att4("Breakfast", "VARCHAR(20)", true); Attribute att5("Lunch", "VARCHAR(20)", false); @@ -118,8 +135,8 @@ int main () { engine.createTable("MoarFood", v2); - //engine.getTableFromName("Food").display(); + engine.getTableFromName("MoarFood").display(); - // engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); } From 851821750c5e8f935231b3098b3d04c2397874b5 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 23:24:02 -0500 Subject: [PATCH 157/186] Added functionality of EXIT, SHOW, SAVE, INSERT, and CREATE commands through parser. Added some functions to help with that. --- Attribute.cpp | 14 ++- Attribute.h | 1 + DBEngine.cpp | 24 ++--- DBEngine.h | 1 + Parserv3.h | 24 +++++ Parserv4.cpp | 248 +++++++++++++++++++++++++++++++++++--------------- savefile.txt | 6 +- test | Bin 173416 -> 159619 bytes test.cpp | 25 +++-- 9 files changed, 249 insertions(+), 94 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index 5c2a0d6..a87ee9e 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -16,6 +16,13 @@ Attribute::Attribute(string n, string t, bool k){ size = 0; } +Attribute::Attribute(string n, string t, bool k, int s){ + name = n; + type = t; + key = k; + size = s; +} + void Attribute::addCell(string v){ values.push_back(v); size++; @@ -56,7 +63,12 @@ int Attribute::getSize(){ void Attribute::display(){ cout << "-------------\n"; - cout << name << "\n" << type << "\n\n"; + cout << name << "\n" << type; + if(type == "VARCHAR") + { + cout << "(" << size << ")"; + } + cout << "\n\n"; vector::iterator it = values.begin(); while (it != values.end()){ diff --git a/Attribute.h b/Attribute.h index 9bb84fd..19881ce 100755 --- a/Attribute.h +++ b/Attribute.h @@ -14,6 +14,7 @@ class Attribute{ public: Attribute(); Attribute(string n, string t, bool k); + Attribute(string n, string t, bool k, int s); void addCell(string v); void removeCell(int index); string operator[](int i); diff --git a/DBEngine.cpp b/DBEngine.cpp index 3435d56..951ab45 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -25,6 +25,17 @@ void DBEngine::createTable(Relation r){ size++; } +void DBEngine::insertValues(string r, vector v) +{ + for(int i = 0; i < tables.size(); i++) + { + if (tables[i].getTableName() == r) + { + tables[i].insertTuple(v); + } + } +} + void DBEngine::storeCommands(string s){ commands.push_back(s); } @@ -51,23 +62,14 @@ Relation& DBEngine::getTableFromName(string n){ return tables[i]; } } + cout << "No Relation with this name." << endl; + exit(1); } Relation DBEngine::selection(string attName, string s, Relation r){ equality(attName, s, r); } -/* -Relation DBEngine::selection(string attName, string s, Relation r){ - equality(attName, s, r); -} - - -Relation DBEngine::selection(string attName, string s, Relation r){ - equality(attName, s, r); -} -*/ - //assumes that all attribute titles are unique Relation DBEngine::projection(vector input, Relation r){ diff --git a/DBEngine.h b/DBEngine.h index 11531a6..114ccad 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -15,6 +15,7 @@ public: void createTable(string n); void createTable(string n, vector a); void createTable(Relation r); + void insertValues(string r, vector v); vector getRelations(); //void showTable(Relation r); Relation& getTableFromName(string n); diff --git a/Parserv3.h b/Parserv3.h index c6d52fa..e6422ca 100644 --- a/Parserv3.h +++ b/Parserv3.h @@ -36,6 +36,7 @@ class PAttribute { string name; string type; + bool key; int size; public: @@ -43,6 +44,7 @@ class PAttribute { name = "~"; type = "~"; + key = false; size = 0; } @@ -50,6 +52,7 @@ class PAttribute { name = str; type = t; + key = false; size = 0; } @@ -57,6 +60,7 @@ class PAttribute { name = str; type = t; + key = false; size = s; } @@ -70,6 +74,11 @@ class PAttribute type = t; } + void setPAttributeKey() + { + key = true; + } + void setPAttributeSize(int s) { size = s; @@ -79,6 +88,21 @@ class PAttribute { return name; } + + string getPAttributeType() + { + return type; + } + + bool getPAttributeKey() + { + return key; + } + + int getPAttributeSize() + { + return size; + } }; class PUnion diff --git a/Parserv4.cpp b/Parserv4.cpp index c70802a..38571d7 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -1,5 +1,6 @@ #include // std::string #include // std::cout +#include // std::ofstream #include // std::stringstream #include #include @@ -25,6 +26,7 @@ vector tokenize(string ss) { cout< input) } } -vector showCMD(vector input) +vector showCMD(vector input, DBEngine &engine) { if (input.size() > 3) { @@ -49,25 +51,58 @@ vector showCMD(vector input) PRelation r(input[0]); // send show command to DBEngine + engine.getTableFromName(r.getName()).display(); return input; } -vector saveCMD(vector input) +vector saveCMD(vector input, DBEngine &engine) { - if (input.size() > 3) + if (input.size() > 2) { cout<<"Syntax error!"< att = r.getAttributes(); + for (int i = 0; i < att.size(); ++i) + { + output << "-------------\n"; + output << att[i].getName() << "\n" << att[i].getType(); + if(att[i].getType() == "VARCHAR") + { + output << "(" << att[i].getSize() << ")"; + } + output << "\n\n"; + + vector values = att[i].getValues(); + vector::iterator it = values.begin(); + while (it != values.end()) + { + output << *it << "\n"; + it++; + } + output << "-------------\n"; + } + output << "\n--------------------------"; + + input.erase(input.begin()); return input; } -vector closeCMD(vector input) +vector closeCMD(vector input, DBEngine &engine) { if (input.size() > 3) { @@ -81,7 +116,7 @@ vector closeCMD(vector input) return input; } -vector openCMD(vector input) +vector openCMD(vector input, DBEngine &engine) { if (input.size() > 2) { @@ -95,28 +130,22 @@ vector openCMD(vector input) return input; } -vector exitCMD(vector input) +vector exitCMD(vector input, DBEngine &engine) { - if (input[1] != ";") - { - cout<<"ERROR: missing semicolon!"< createCMD(vector input) +vector createCMD(vector input, DBEngine &engine) { //relation name will be the first element of the vector of data returned by this function - if (input[0] == "CREATE" && input[1] == "TABLE") + if (input[0] == "TABLE") { input.erase(input.begin()); - input.erase(input.begin()); PRelation r; r.setPRelation(input[0]); @@ -152,14 +181,14 @@ vector createCMD(vector input) else { temp.setPAttributeType(input[0].substr(0,input[0].find("("))); - temp.setPAttributeSize(stoi(input[0].substr(input[0].find("("), input[0].find(")")))); + temp.setPAttributeSize(stoi(input[0].substr(input[0].find("(") + 1, input[0].find(")")))); input.erase(input.begin()); } a.push_back(temp); } - vector apk; //save primary keys temp storage + //vector apk; //save primary keys temp storage if(input[0] == "PRIMARY" && input[1] == "KEY") { @@ -171,34 +200,50 @@ vector createCMD(vector input) while(input[0] != ")") //inserting all values to relation { - PAttribute temp; + //PAttribute temp; if (input[0] == ",") { input.erase(input.begin()); } - temp.setPAttributeName(input[0]); + //temp.setPAttributeName(input[0]); - apk.push_back(temp); + //apk.push_back(temp); + + for(int i = 0; i < a.size(); ++i) + { + if(input[0] == a[i].getPAttribute()) + { + a[i].setPAttributeKey(); + } + } input.erase(input.begin()); } - - - - return input; } } + + vector dba; + + for(int x = 0; x < a.size(); ++x) + { + Attribute temp(a[x].getPAttribute(), a[x].getPAttributeType(), a[x].getPAttributeKey(), a[x].getPAttributeSize()); + dba.push_back(temp); + } + + engine.createTable(r.getName(), dba); + + return input; } - else cout<<"Syntax error!"< insertCMD(vector input) +vector insertCMD(vector input, DBEngine &engine) { //relation name will be the first element of the vector of data returned by this function @@ -206,7 +251,8 @@ vector insertCMD(vector input) { input.erase(input.begin()); - PRelation r(input[0]); + PRelation pr(input[0]); + Relation r = engine.getTableFromName(input[0]); input.erase(input.begin()); @@ -218,65 +264,115 @@ vector insertCMD(vector input) input.erase(input.begin()); + vector a = r.getAttributes(); + if(input[0] == "(") { - if(input[0].at(0) == '\"') - { - s.push_back(input[0].substr(1,input[0].find_last_of("\""))); - } - vector e; input.erase(input.begin()); - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) + for(int i = 0; i < a.size(); ++i) { - if (input[0] == ",") input.erase(input.begin()); + if(a[i].getType() == "INTEGER") + { + if(input[0].at(0) == '\"') + { + cout << "Incorrect type matching. Tried to insert string." << endl; + cout << "The values should be: "; + for(int x = 0; x < a.size(); ++i) + { + cout << a[x].getType(); + if(a[x].getType() == "VARCHAR") + { + cout << "(" << a[x].getSize() << ")"; + } + cout << endl; + } + exit(1); + } + s.push_back(input[0]); + input.erase(input.begin()); + } - e.push_back(input[0]); + else + { + if(input[0].at(0) == '\"') + { + s.push_back(input[0].substr(1,input[0].find_last_of("\"") - 1 )); + //engine.getTableFromName(pr.getName()).getAttributes()[i].display(); + input.erase(input.begin()); + } + else + { + cout << "Incorrect type matching. Tried to insert integer." << endl; + cout << "The values should be: "; + for(int x = 0; x < a.size(); ++x) + { + cout << a[x].getType(); + if(a[x].getType() == "VARCHAR") + { + cout << "(" << a[x].getSize() << ")"; + } + cout << endl; + } + exit(1); + } + } - input.erase(input.begin()); + if (input[0] == ",") + { + input.erase(input.begin()); + } } - - cout << "Inserting: "; - while(!e.empty()) + if(input[0] != ")") { - cout << e[0].getPExpression() << " "; - e.erase(e.begin()); + cout << "Too many values trying to be inserted. Only insert " << a.size() << " values."; + cout << "The values should be: "; + for(int x = 0; x < a.size(); ++x) + { + cout << a[x].getType(); + if(a[x].getType() == "VARCHAR") + { + cout << "(" << a[x].getSize() << ")"; + } + cout << endl; + } + exit(1); } - cout << "into " << r.getName() << ".\n"; - + engine.insertValues(r.getTableName(), s); + input.erase(input.begin()); return input; - } else if (input[0] == "RELATION") { input.erase(input.begin()); - PExpression e; + //PExpression e; - while(input[0] != ";") - { - e.setPExpression(e.getPExpression() + input[0]); - } + // while(input[0] != ";") + // { + // e.setPExpression(e.getPExpression() + input[0]); + // } - cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; + //cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; + + cout << "Not yet implemented." << endl; return input; } - else cout<<"Syntax error!"< updateCMD(vector input) +vector updateCMD(vector input, DBEngine &engine) { PRelation r(input[0]); @@ -316,7 +412,7 @@ vector updateCMD(vector input) else { - cout<<"Syntax error!"< updateCMD(vector input) // send update command to DBEngine } - else cout<<"Syntax error!"< deleteCMD(vector input) +vector deleteCMD(vector input, DBEngine &engine) { if (input[0] == "DELETE" && input[1] == "FROM") { @@ -400,7 +496,7 @@ vector deleteCMD(vector input) else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list +void par_line(vector input, DBEngine &engine) //calls par_command() or par_query() depending on first item from token list { /* • Match the first item in the token list and determine weather this is a command or a query. @@ -420,7 +516,7 @@ void par_line(vector input) //calls par_command() or par_query() dependi { cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = insertCMD(input); + vector insertInput = insertCMD(input, engine); cout<<"arguments: "< input) //calls par_command() or par_query() dependi cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = createCMD(input); + vector insertInput = createCMD(input, engine); cout<<"arguments: "< input) //calls par_command() or par_query() dependi cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = deleteCMD(input); + vector insertInput = deleteCMD(input, engine); cout<<"arguments: "< input) //calls par_command() or par_query() dependi cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = updateCMD(input); + vector insertInput = updateCMD(input, engine); cout<<"arguments: "< input) //calls par_command() or par_query() dependi if ( input[0] == "SHOW") { - showCMD(input); + cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< listOfTokens = tokenize(input); - par_line(listOfTokens); + par_line(listOfTokens, engine); } /* int main () { diff --git a/savefile.txt b/savefile.txt index 948b094..4a00946 100644 --- a/savefile.txt +++ b/savefile.txt @@ -1,3 +1,3 @@ -INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ; -SHOW Dogs ; -EXIT ; +SHOW Food ; +SHOW MoarFood ; +SAVE ; diff --git a/test b/test index a3e72f00e1fe26abc809b47c79268f1a41c2fda8..3161c6b93068e2b3d712941319b6a7c4dc69e417 100755 GIT binary patch literal 159619 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 literal 173416 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 listOfTokens = tokenize(ss); @@ -87,11 +87,11 @@ int main () { // par_line(listOfTokens2); // par_line(listOfTokens3); - parse(ss, engine); - parse(ss2, engine); - parse(ss3, engine); + // parse(ss, engine); + // parse(ss2, engine); + // parse(ss3, engine); - engine.save(); + // engine.save(); Attribute att1("Breakfast", "VARCHAR(20)", true); Attribute att2("Lunch", "VARCHAR(20)", false); @@ -135,8 +135,17 @@ int main () { engine.createTable("MoarFood", v2); + engine.getTableFromName("Food").display(); engine.getTableFromName("MoarFood").display(); - engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); - + //engine.setUnion(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + + string x; + cout << "Enter DBMS Commands: "; + while(getline(cin, x)) + { + //cout << x << endl; + parse(x, engine); + cout << "Enter DBMS Commands: "; + } } From b42b05dc3868abc2809d2ca68438a72291b1c722 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Sun, 27 Sep 2015 23:26:45 -0500 Subject: [PATCH 158/186] Updated README.txt --- README.txt | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/README.txt b/README.txt index f4baea9..3357358 100755 --- a/README.txt +++ b/README.txt @@ -5,6 +5,12 @@ When compiling things with the parser included, make sure you compile using: g++ -std=c++11 *.cpp +ALSO, now that we are compiling into a standalone executable, compile using this command: + +g++ -o test -std=c++11 *.cpp + +"test" can be anything you want, but for now our executable is "test". + //---------------// I changed the name of the repo. To make everything pretty, rename your working folder, and type this line: From 4809a518ad39b5ad5fe8c642df7663f02ec23bd2 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Mon, 28 Sep 2015 15:46:42 -0500 Subject: [PATCH 159/186] crossprod almost done --- DBEngine.cpp | 27 ++++++++++++++- DevelopmentLog.pdf | Bin 100703 -> 0 bytes OUTPUT.txt | 82 --------------------------------------------- a.out | Bin 101732 -> 0 bytes test | Bin 92165 -> 0 bytes test.cpp | 3 +- 6 files changed, 28 insertions(+), 84 deletions(-) delete mode 100755 DevelopmentLog.pdf delete mode 100755 OUTPUT.txt delete mode 100755 a.out delete mode 100755 test diff --git a/DBEngine.cpp b/DBEngine.cpp index 208da05..5d67824 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -185,8 +185,10 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ Relation DBEngine::crossProduct(Relation r1, Relation r2){ vector new_atts = r1.getAttributes(); + int r1_attsize = r1.getAttributes()[0].getSize(); + int r2_attsize = r2.getAttributes()[0].getSize(); - for (int i = 0; i < r2.getAttributes().size(); ++i) { + for (int i = 0; i < r2_attsize; ++i) { new_atts.push_back(r2.getAttributes()[i]); } @@ -194,6 +196,29 @@ Relation DBEngine::crossProduct(Relation r1, Relation r2){ new_atts[i].clearAllValues(); } + vector r1_tuple; + vector r2_tuple; + + for (int i = 0; i < r1_attsize; ++i) { + r1_tuple = r1.getTuple(i); + + for (int a = 0; a < r1_tuple.size(); ++a) { + cout << r1_tuple[a] << " "; + } + + for (int j = 0; j < r2_attsize; ++j) { + r2_tuple = r2.getTuple(j); + + for (int b = 0; b < r2_tuple.size(); ++b){ + cout << r2_tuple[b] << " "; + } + + cout << "\n"; + } + + cout << "\n\n"; + } + //currently all returned relations are called TEMP Relation new_r("TEMP", new_atts); diff --git a/DevelopmentLog.pdf b/DevelopmentLog.pdf deleted file mode 100755 index 6d6db276269ea3dac5f12d51ccf1578477546464..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 100703 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 zⅆZ_RL}_R9{p5^;$Sk!@$8TtWy>$95(ZpDc~)!#^iDXP4ep*lo#1^Y1!u#7w3@p zKe{yG+{VIpjL=#O*pMxGsA@f_Lh+;v8|z--Xy_>A!12cXnOb?8nI{~r!q$kQP;>K` z??TQEy1zGRlfxoebS!&9zib4MQr!!yQ=jr%no22^`))~1oA5QFqQsmVLQ*^3;An%OCcxj-&v6O37z61#y1eUY zhQ?LvEm6`6ZP|C>Wc^*!B@_%{qMu|8Ky zZuA~q_W;|QPn+70=zR}g-Kc{)H7hU@!ZN7kxb0D9vU!TX+AyX|XSfhrGaj}G`2NuP zigG~KS=^@4EITM8;rVdRlGZx>Tm8Xsoo%ZXbrOMl|ErBCIF{ffyu=52OLm&0BR4pZ zJ_6GOmTeV*Sm&a1!?X7O^rs<%U4%sSqL@pT_x*A^u_zDQK%bLVi-E*(%xvYNV}w3i zJaB~OK9B{<@{99@$gzk8Vs`zNI=uFa8t5kG*a%uV9D0n&e7?rn+A({oGri?SXeWuw znGBN4awkk42Owaw`{-zb1znAxIVvXyB^1hOok5zInqT1# z+CB_Z>(nQR^d8&Sz;U-djV6y9_Nh|qRMgc{sZlEfe=mCVx9%FHY08GM72b+1?l!+G zC*w_$Za=&Wz@6N_Be{}o$*8!$^9{pGtb9cqSpW^!Pmq!4x93Mk!$6k;`s>??a)nCC zW4XYn|3J6Lz!26RfWR`E5(tT$Xpt^904k!xvRYeXN@@v8cFC_yzbw4IXI>`I{0i}Tu?V(cR4=4h}-~8ZX7e7p0b~w{GXn}o?374S+R&WU)F4W z(9?2^_YaV6Zc?90u}AaG=y_>eZt63hIQm~YR$emoeI`0DvY*duD;W6}({tp~a&X2b z)y5}j_7CnCmUsEQHGTF=P)O03YYJ+VFn!UUy4y{FP?Nsi(#RO87bOEY^MN}WwGyXa zxPSr*0Bma2I6cwhNU?I5U0WfTJI=IsD)TX#WCfZ*v4tkw_b--8As>HZJ1w*Vy^l|C z3Vlp-T*Y~xJ9ec^a~@u|PjB8nh)9;sPH&J>LcuLpZw6Q&&VD+)CYk2QxknljbF6}7Lgw=Vd)sd{GD?2~FFWG)0s$VkX6RBLED3*mUy9t7r42PHC2PP39? z(*^M@aat^WK$Lki#UAwkd~lSg7r*>(S<2Evs>-hRd4~ z;B>{St z?u<`GQ&aBM)55reIU6ugUC5fzon&qImbg)%IhwdJt2vtKmL@fP&eJ?eKl0cm^jr3j zCuNez+x335`^OS>)T^n&KH{Mm7I&@#KO8003q8H>RJkaYJjY>zz_h@0Z&R;CAQ${w zs3NlwHL3SdMP7Bk)Yi=D_G_?OjNAP+QerKMlIR3>nmaJs?deyzjv8tdws@<-+{$#w zz|#2jZEBVY2h06+?M446l%cHs+r$#*O@&RSbEfkt*Dhp?uf+?w8hon@+1}-yYm9r_ zo_Vx0jhqawB{!S>NTF^5Z5p%7%);>NSUj(Ll?Eeub=C_^PFeyig;;S#YCO;0Wz-D- zXNJ*@lE>P2;VArcP74$-0V%+Rf4KdLV#nzcFXg z(r5n#>fm6aI^@%(9gPmZ*6n^rEqP4+dMLgpexT^SC@@90`8KO)Fj+=@A#<7Jrfn>8EGVto z$YzpSXT$QzHrcnP!^!;y<{_Mxs!HAdE}Vm^se(d>!*1_;QghW>i^J-O5Y^rD;AZ#E zn_S(g#%?{jNoPtU)yZ6$P5HTQqj6H3$K3JQ{A&H|`?&U9Z|lwUa=py`3==R_tnM41 zlBP+lFVj6)7T3-MJ~>U=TSEQBQCf)%hv)gwhI27yy^zav+6*HdrlZ-jHK4t%$`qd# zM{BUce4=+h?x{(L^X6orQ09!y4MyugI{Pg5A=_~7&MUUzW6;e9Aff&S-0{uYy-aPU zc=i}eEvj|Nt7)vomX|;+)`jm9*O+WmIEt~pQP88=-!M&Mq5@&sQ8nnZ^@2YWRWDh= zCSUq%^Q+mtT;$|aOxjH+$7sfxJeN7>CR=v)=PN_YHM;%ctQb$Z(W7f-A;%pl1=5*&#@^pF%Oio zlH4~8(2z{a*OMxFObT2`1ZM;z1CFwE8DBRn+-6ObV97qn6w$X8jaHJ$5fvYj+iQflF_Or=^a%plp@ipjGdVl2j2$`s!FX#Vshx!R#-{9 zcAAn27U@-2-m6kAuO?|LsqVW02b9K%3(hZ_sE)?(%fL13mobMb&VBqMnWtKx{f#0S zhU+fi(R6YD*#M8?1p`5m_7h?2>v$Jlj)JJ9CTX{^44{EqRS|H>29 zMP3cFy*RmiV9nNxDZG^{-Tb^Fl1F)ciPO=y|2))|YmnReT((Zjl|giwk%jAQYR<|K z$}rnH?7~sA%T^yl*<72!g;}(-!HvO{J7T;OX)@il88fGJ)!ieaHp8IlFvVqP&DD57 zs?EJ9r}l(#a%L6*>qhYfKPYRJ^mINFFI~a5@+r#Te0D$MnIoIU)uQsbarkJrqL{b@ zj>blFEx#YL9Sf1i=IH1bXub7r%0jwz+F3RavhS(cDtF6|mObeun$|k$Rt2AYX^aB^ zQ;?Ph#YvJMCZJ*s@Qd2YM=9y(`bW*>^4AKlb5)ZO!HucS zWqU5$jbli7)DNKu+#CVqgMfz-Ul`ak<<*qv`ida>@$bY);=#U^CurbD#s?>rlLJL3cqSMjab-13;vNJyBm(4qlw*Sm zap@w^{nAsNnB>05kJY82wjjzIA~)()hhgOn{{=q1-)xY7dX@p&1_cZkiyjBPM^GJM z`SMe4+^)GBq;4Qv|9o^a#{xgioB$6qKT2-ijY}$+YY*}?lR)V7=PY44CfAs_#jyS6 z-Ik57oC%FSbqjJ$cO zLZ63dB+=Z_(Zd}gak*)27;a7}#iQKike> z%dX;>JsYn)f4?^g{i?|!Kt*m=#8as)Om$;sOi>9}lqAsLfYiw?E%j<{j!+3#5L9VW z*#2~1C7u`MJ2Sv%UeLYA`h;`_SCqACW(t0`Ce5`=&HF@Z4c};$=v%Ts*kD@FS#*0U zyK*W%>0owdU!=%7(+*mcKJB5cT_L4aR-1&m%I-_9xu$)w$3C z@-Xl5inzfJ?4W4!pH&=U*kSa|Vu|eI?KhyY52wHxOqy+5H{mvW0gw1TxpazU=pg8h zsuhYRar)hH-Gy;;)osG?N<*86h23^dO%T^OCfDSO<4 z`4jkM;;04vXX6)}Ble{Hj2qIC(44+IsR7gRwNjZo@A>ekZU1;TEA&{Wdi7YEcq_4tR+gfxjC ze5eV!3lelEg(=Q6qnt;^S+{kv9vbAG|1ftuaabA?ER66*E)x$}AsIG>GHCUt&STbN z8>$+PSww0?-7%*z;FydBW7X>qSfw&VY#K10>_ZQjL+mzW+H3Z*)2Nw5_>7#{Rjc=L zt|T}&ke`^jF38eZmZUV!j;r=PAki9gK}WM~yy*t~U(F zZYO5VJHV=2m19V@O#Ceu9B4J$`9&_}N*O@4ujGJcT3_lJ+xE@gncF!h{~Tj3OL(35 z_*HXhclS_@8|&9FadxKBd39u_`>53s!gWHe5!5zju zrI%{dPK`!ela$o4k@YAY1KXnXv~6~tP=_-dd#sZu!6yJqTTRKSamCSGx0#)ZCKoIa0bjmC;Lvb<5}C-tkMRxStmq@sR}yT@@N4e`*U|u+7cBHEWJeTfUE8) zzr^l9u?OjK3Z{3lPnYHpKdsON1dmoN2hTCFPRE4-%UwXj`&UQ6&0HBk3Id9fPK zLg2~|{A7JDQ7An(=o7@pDHf4-qx1@ZN=K2k06?GD+@e&DoV zji=twCR46;Qj(%?wm}a+V+5#W+ua6iOhNq?bkVR@_h6&L4+67W_cKlTg=`(FuIV1-Ut)C9D7Js|~q5 zSG$1gA;|5f#Cz6XLiZ4&GY|1L$miBPm3to-p*vRKfC6*8@yZTQ8?pIn%_`c};es~1 z9mk6vBiW7)R<+k+DA-xsH{oD&=c%%8?1_A$SpaO2StCsk#6aedBJgv6+>{2sR7)(b zrnvwf?6JE1U;rojTy1VNgfsPA&0iY|LvuQkWQ15ayu807gw|GT+WE=jXV6xV?i9{% z{%?m+7y`ZS=kB>OjMtJNo%kPpVXJD)*+&E0xQCO1$k*0$qGdW7Z;mfIru;^!+!>-CSLdH=LtMf?Wi+Kxb6t3$qRv53{iuO{xV zyj{mfWO*tlIo}n1f%DjiN49@ zaq>f5{v{q{Gll2T^F%yt4|4k*HZRAHi#Fhm{uAxq3Vn2+zsf@I@e1P!O!F+Iwk(9z z6vFA&C-SfS#4SDW_~HS7?ZoI1I!idep2^9-Di*YK3cgJUF*ir{_fg>=aVto72=ARs zr~TD3Gtf;82M(j}%fvE(oo?^>D9sIglP)CA4&o(%U9=aqYZJQTfU`uAPG_IPHo*MS za`{(Bl+VVnKzE^2W`77)3${y;!=*(aq zU3sgZlQ5f|PrEef<_zBL?QbeXzN%K5nRW`iiGIAe44gAhKdz!bSoG_ikTP1}fsp9q zt`Q=tlaKH$4BL^kUmso5w?_z_(jt&fBzhv7_VzKRKSFcE#Psf7f^&cF7$vO=EZN3# zL(dMpyX3a=!_Xu7m@TOHqi4T>=msrrIlF8G$)5>}X#jrZstMOC^8!xwnuHEN03VD^8iILgGMRSnZa*nDSBg*mcIs33HKM-&@D#$B;w@lJf&|Ayd+{H(gO zVbLjK(>&q-yrqy90ogk6%vNhldSBV!m9*51>`7aD@Gn7TGIAC+s!z)O332%BmMX<( zZ>C!Ncal`M!;u>8>qybJ)*VXR%Wc1yE|m}Q#u6tGWh77XN?k%;bX%yL_9j%ocmowR z4-8}y($L{{J zVG;aKOce6rphf>hul!tm^))#R4pM-NnZ_Tf|n|bklbMQl9bmaBf zDV+p@wy(O8-?6J*cIRz6R-)9}6-eM&X5{}(fUz*jll`gQMCJ_7>)%I|1j%1G0?T8 zV(5%T(C&+1+~h~NPXjwr6F-G*8B8#l-2Yhq7@LA`5*dQEtMA0LG5c))KxoJ|wgk`Q z(igc-Z^$OS$@05u+BK@n@>Zwd0^57>uwC?jZi?ctEPlame8|5nsdP+6QfS2#74|t- zbLjreCc8ZVSYrp)?{S~}(!d}gjS~-{S40kT5r47eZ?`-Ae`tH_s5riDTR27tF2OZ~ z;O-6~Sa5d>?(U5xxJz({CP3rvGz1#A#+}C9-Qkhnx#!$_zIX3^=iTwWG3K5%d+w?~ zx<*ykTDxoSg@u~&QA$YhHgrrr-UoR8J}-;?;1dKH^2j*C}+#>1%z{CIa6SvY)sSZKf-_g0PLXeu^!SVYz1kQT;3`QI#FrCCt2Z5yObN)qly|9tEMGTb7CF z93SKhBM_;`1Kz)Ewc%f+DgHBQZaAy)WT?uSC5-$L5V%unzE|0WqxUr0=3sE z(f;m4oogTd1q(}%2zl)r9=!bOm7EU$4<{4u zE0p2MRUL-E=&||47yhuYp+JjtYc7r(Ecb{HU+hpp@HeuuugK)TfoDuyGvr|`Y5=VQ z!@_C*5{7uVkOsW&E@s9c2bPF%10CeGf7ME|bST96S4c%i$w9J<0z2s+qTivADCvJd zT@($!)_&SXb>rX?IOLGv?mB$#dASBIByrhOtp5k8OXw22xJ*nc{$Gj=!1Fpp|4g{A zQ}E?j*wPKpi%Ygbr+PwH5rE8|&?}UR*o#N8se{A)-RH>J{!iT8js*UO3SD^V)}d?9 zRpBqXM_FV0aId>dQww2V=;_OE+` zU!}1uO4<4`)z;`Wx;$?PeD)MIB}}JJoFghVdv+JTmXcAIPomy$1b`U zyFJURHum|6SZ^0&ed1YliOb2q%d00Bb>o)OPKDj@sjEcsoX+wt`yDzb-Fq|W^t={O8ZxaYlzj9{y z{68kgqM-C5vI5KALW2Jwoujio-z<`ElL%kEYmyid@H@o#*Q_LrEldr>fe-H!A&B@a z9FLrWn1;aI3-8gcTN=LMjP(sO*7@7O1xtZGL6NwWD%@Z%eVkEHOxycghpK_|C8dWk?p2wvcWOn<_HFt(%itbPwq26fB z5)HmkhgRf9+!s!Mo)kUwQN`Z{YWUzaSQh19<&J@)?w}5ljnIczTZAjvb2Id9E>EGC zOMzGGl2`iQ;HU4?eS2e*7Xo$oUcl!BoGHCKc|a#xX(aII^u|nG$B?Je+}lCc{a!DE zW*3|(sFOu^{0#T+t&c?CZRxh-?SL@4e)HQIbt(7E+Zn0+4B|RHf##hKzpuA8C@Ex@eDjyQCWW9s(|X%=m(jIDvOe+|QjbM#6b_xm$r~dJb|VX9 zyMTH7ePxgDTHWrmR#CB*4lirbl$^LYqQ~l)y`4tC#PX1c_kOhWp>bj{7MHM8 zIriMxyxu6CBZ3Iv7vMSxs*vPQVE|I7hN-IMQaR3gOQ2*~5wju(55}q(&AlIb3_ara zxusl*DA=NY;$s_&!)YoCtEGRUllzHH)fa+?k3mjuXeS4(6~b}oiEIZ%3&z^ zrdSN~p>q6e=pM%Db9K~tOSV2>>MRhDY2cPWVbS*ElF+=Z{o&(Qxm1QLK|rKdhq1tKenWG24e`-~7YB(WwxP*=HRlVClytmCFy@|u zA@N!{Vr`mYGyXGavpyE#`Kp3o5xYa6guv5C>covlHnvgMYYj%nEr$i9yKh2XC?>~D zhY3z4*^yF>z2xhR@_dbpM)2_NJV)?ODLEuDdwBk;4YT{RALs;_ev7*!JbtK0!o{Ec z%&E3|Zf}}(l;YiLc6mcGEx|h0X7PO@d12Ix_ZdZzk9mybj_90C&QZZ{i9#D zYHU|&xRw>&l;fO|mHgyX-K9q9gqk)QmX_kktB)gM+E=<*g<2Sj#R`RV%eIqqpTE4t zqx>O$8E}jeTVa&BWYv9sZ|%FKv&B2$^6==czjR{@briaCTFUZdOeQiE2(xPRKd7&I zP_xVH1fjANiA3x&U&%Qgv0urZ!7O3gL!QNrwj9%?tJ1;OV`O#CAq>QZ((q4*=-Rvy zwd36NVc5imV!;}tiix9Z>?HO{lfJXNOQsigbo$0(`kizuL#NXwU0lbe?jgAQ4Eno( zD7y{F^=X2Efyc{8^A6e))ak^hNe7fEOQ(!AfOTiSIe}e@K5X~QwC1FRA&TXBeTEI~ z(UmjL865F2S(lG)dh5gU?MpbhI7vq?cBC-0@cw2Ze|nuDN31pVpY^KO>6itq2G1qQ zwyg1#!^{MTuON@xfv^=U7=YJKAfrB$v0g83o3u=ZXdgz#O@AwA_7Jmi-KBwSHx7)!wPFfg+L_aBn7?se$j!hX_T6*$ z#f$SsM>9}spuDqhP~uGc={qBq<~->nqbm~6R=}~z(*Z&WQl2@C_7g9F#?yOI~;S(iZ(+%lm!2{J=NO1G5@WA z*J0>`&Jrou{`($SL@ysYaDJ28I>*<`_Ao*UzlQGBSsmQy%l&ry>D{!b#;CdFP`rX! zuzYbN=dQ9*sa1(fWNld^3D>gtl`We3+|9UX(ckgI0yt^G!B)dI-f%R%DKeL}ac?l# zO}=t!{+-$(h595|$<(Jd{&`to1kSk=uK8KqnOXVyTBn1#`i+GH*L`W%eXZsynC*SF zZbL7lb;Vw*u~}qA+~yn$*Bp!83=84GPrienZ=09JU{B0PPXtH4DOb2p1s#(7K9c9J zPj(f_Z@>|?HC|=(7d6Sp=~mD+RgXiCD?PLUG3W;C^nl?MPRgDIkA3)PU9X<}fS!D~ zes#n>ibGLXFK)P4IiZVQizYd&gyl4H)n&MMzH2`{Ipe*&9@i~Zr{5n$IF>8=dRNiW*KIC2b1nxPAXfPHr z;Z7#ar)e8k=T*%rVfZw@Yg>SMsc?GE!MrB)0DenC?a-{{afVY#Il;b@c^n>!9(C>O zoxOWUoVN5XCbN?+oYuOa^3oM6t7|o+CCe3ctLsSupNl4)_%-G70ektgLJ5UQ9;ed;ey5NvR+%80* zhA`GZxM3|&qx4-OZo698H#)K61fZ(0Gi`_*+-Ttk-pMezTA*_2c8!t>ZHQFhAxMRe z09!P-#eCwM3k*{;RWy;Z_&gCCAnmNl&{TpWtQL+V3lxj%9r?t{9*QihRx~U%saeRY zXi)oZ#5ixaL?t6*$v6*Ib+&hK4d82qMU~gD{Y_5UmeTnf2?r~`AlxY`L9!Ti1FUO{_Zk<+XhZcP@G^yyzHos{NPN_}S3{SD)DAsbwo*c9s zDw*1@!`Cexog`S~%q`|9vJtNt3ek!Hbv=`5+Nd>KDo(BiOR82b^;8wZr~zQEtRMlP zRbFrbnClGcBB+(K%K#LQYiGdf_DbdKTmbWB^}KcN(G0NhJ=Z#SdFcE_iyn0Eq9ya$ zxpM{EP2T~)< z>hKA29@^PBia;^I(LBB`=d@FzF@L}?TM4`?y-KgO@NK;01Fi7O&Ubfs4zfWoF=)-l zu*UF~z22DymCkACYNY_=x%xkLvABwh)SLwIK`WO$=K$^R2_My#l1^nmwf<5Jm2qz` z8Rkq2pE(h5)ftK^o~_i-FE?$widca&a);o-n1i@xPLK8u{T+IPcaL6Xk{UCiI;8L1 z-09LyEtqT)Nq9$=Ly~zTEUH;-4j&a7_)o@yR_QzYt4X`P(rv{Ogk;!~4R zXl9%8Ep9Fq-j$`ipw*=1B-}vc6NOspUCukDL1d4_REyGZ54YD=L&l{kn`b}O%BSbz z)G8BQwTJ!KH0|>fN=&*^Tt#6~z1pK%XP$j!y=iNfPC7PG#if=ED0S&?wdL#>o`QR0 z>-%ff8ZVbV_Pnq`Mr0d$pg7aBNwAV0UHhhHXME8;R*x|+7Q48@kqhfMjTCR`3JG6Y zu{JmmpR#4|XAo})Od!;3jQw{CB)q5z3?$U7k9GMQ9TXh^4@qXDuZ}AYR`NhPI13^) z2T_<4y=lX|={6B>xx*)!o44bV1w&2xGgvp|QXI{$+yYA32h@0dk|L&Q$7}nY`AnKJ z&TkoK%M!$w#MC?4Zy0B73ij)iUFRj;j)2W>eb#&?bs5eQ^wqUvB$YDN%K5W2&HE8W z>!*w2j#&%D1G8ef^}^+q*j~NQGeN^>Rja(sfc0NbD@RPP^=9?L&FwIn#3?qR=Acib6AKM;#wH(`C1nTs>;pO6RE8UD+S1_HEcm0luz`X4= z1RzlIRBw4-IQCo;Y1Wl*zUiO(iK!jP^4ipXyZNAf&=pd^9w*+SBpJ-c0IpadMZ=BH64)PTOa1FQJONDs#%(nm#SGb+we5^ zkfFjB&R+eM&5FHR{6CO1d$lMV9eeeczsPA~iC;Zsjn+xWBoC@dtTh1CpzfVynz;sR0|jQnz1@Wtlw4InbbJIo z%Nkx-q>!Ey1ft+IhgX83?@wsb1LW7(xba0C5Cy}PPk4|aLMvz2uUbP^t}*2xNe;ZN ze!ku64sVA$HLnT8#k~jgP?-|In3)Wo*ySrOEkC#*z^eLV&c_J14&eI3%GCO6cl6p} zTqA@*j@dwT+rk;91?5pXneyx^I?z5MZ8MMw^@|XDur}Qse>I#oq_i;C0aHBKQ_1M~ z{XNzim=hx_Fy+)3PC!VgSnt9Lr(5zL@<6T z4_%G)mOnx0LO_}Wl5Lkw1F_q(+(O_T`051-vQx>eH#S|zY8YinhyLjP?c1J6b0=S< zx~5AXjdUrpNLpii^jibwpzp*=`@i`%f5|!X_nlz%Fs;3c_yGT(&3BDtS&1jD5d0k3 zzjo9J;-3mC=nVK9>T_+jJ6-pG%k85&b%i#rcIr47mT|LiHPTE_Xpe*qnfvd4!p|kv z9{q8ZZ7Asqyw=10l5Eu`kbr|UcIh*xC;#VVRDN$YcfJRP9w+-uv*Df)X08XLtum1>5yDwXzRpUG8_i3yuM z>GPz4lNThNN5|-W30`!Xamg~2Sw=VTCU&*6)!4e z$3W>uy<=lTziW0_BFJJRw`2R1)W{i6w%VJ+!3R&G-kak@pvPea8hVl=sEDijX*U-Z z`nJd|rO3-8Ua|zm3G=z`>BXpGC`uGzcpJ)k1J7;(5$-`2Q8b-Bg-;Mda)@LDVw?j< z{_-QUcnco6UW6oLB!H4I2Et0;gScLa3C9jZDE^(<;>~K8ML#7|G$Ta6cJaO|nFTv7 zH{zOA(ktatYeeA;;X#(vce^~m$_wPqQ3IJ>yq>j_K2UTrE9HenmPD}RYR{(=qo3C- zlJ|H_J`uP=;-RFuN?tS^7+y3k@*0Uv_2)v{NqItkA`W<{Jty3BgO%fya~AIpYWj96 z6`|)Q$zc`^*lx`}ZEOCcIj-aD=WBvoo{zdEFSDwh4lDj(bB4!hOdD9_9N`LeYl1%Q zXZP)7C_?*T2AUf`w*6bV-~BBe#Iwq)R3rF9sJ}7rLWJ=m!fRYud_ww$%e&(%N{Z;| z2hs@{q3OYW2F|94`)Lv0ag}zgm$KcheKTAsgbwd*yBV052LFD8HnR|4E$a>b_D&96 z^7CdzTNb`Yea@{XssVrdfu;F2Z&_FR$g_WBdDlGmSXS3o99ccb{hw3i9A0tcKT&m$ zxPYe$ng8ypK8GZIrSepmc$a+F63LFXPo8-q!-LCTSNKUeim5`R^$zZSHBdA06}7?( zIK=GFFR`eV?@V$tk(+CoCV&#QS|l$2@0!ZeJGO8-Z^9U z&di67pL?VV%8zeZ-15t275qOineG4+1^d=sua`RO?d^K|M0rxEsorlG1Jh;V<3b%- z73C=V|F6v2POsX|FaL~Z=O4JQY7RGq-ah)vsFRJO&^~k<7w@H+WI8CSB@XmEYHBjl4VaiTme409 zY*bb0{N0q6tXCQ zTg5sNjL6LIRf{A^ex54wn80 zlvd59h-5=^3kO(G*C1al4L@->&^!a1MMog5;FDv#DC5Qa7!&J-LSQU zH(B0fU1>^bF-`s;;#Pr(CyZReVVycEUCX`oFXU*slfnH|Mq^SzgUV-NnoM+_O~O?+ zeNe;g-1XDY9TCkN{7WWl;Y*iB$og{C>$D6`?&wqC#^(?%2?`mX_ISJ<)v^wo&wS0&ci%sH=3dC%LB3yaE3%citHNR{On z%1@+JkTxpJo1GYYV@Z=c1uecfvwUdL5-R`Kq>6gfZoi@~PZ6Dj%Lb^7Xfh$U$??B7 zRWrZIWOeo#_-rV6$zDdY!-Z?uQ8$ghWVI( zo_}*sr$cB$(@Ni!ly_Z)rJuMupyZ_)#w306KQ$kHRlH`~l)d1^xdNeyks-tM&CIu^ zvsbxU2@fA`m1f08%?22w9`o+cw--)hN9*5j1u%UYM#++IK{ut+LpGzF3aGb$zz{GP zE6Em8XRu&0HKOoTT9evokf`m7?fkN7U=L($`=UZ+FKh3SVVDz5}9v( z>H?rRRM{W z(>y`|KdBv+izS418K?n=lT}Vb^HzYOBJP5*XH%ym)O2M)Wl}U>);b}NQ$EKnL;0nH z9m&u7PG(5_Kxg@`Nv9?(nk7w#l*4^Kob6j@vh`z z3h$_H9Oa<35wNR7OLvK=F8)C}9vLcu{go_I>iOwxX{_i^vW<@;dS_s69wFDx)X}n? zbd6osUVF{qLZUm@fngpf7JHLG3;>&tumw0Be8c z5dl8jSivjy$p03bka1(`qZRiLcXJ)fdLjJ@)V|T?uWVhz`Go4P5a@*KuO(Jg?W-*W z%{#y!cIr0pmCy?@4$=u>K3+R$Zg!=-bmpME3{o-FpYHCwGtdAIT%g}l&^2*VD6b&(Ie(?1d)}wGi6AZ| zMoP`iM#dCUVH~+9z|Y0V|DS}CZaFMB|6PphP5=#5?b|weh4YOJXGN?fAn62Augl7v zSQ^q|{3qGi(D=cx2K+A0ZlId1UdhG(99ur+({}i&F!j71&$Tsn8_^IyxrDC&PR6HV5yfy}#nYwVCJIuwn+PlaEoC z>IvSelcd1`-GgE|G5CR_*9eSV+%re`cLGLjX8TtW51ExqY+S393lZAiT2kii`3`?) zG$6Sd{rjUakjIqdxBoRUNk<8D`E8a+&TTRGYqM2)FBJWr*<`HD;?}={`2X*vszvQgcUKh_p~zpPIT)^25Mp-bB^sl*SZ7&SOGsYZ77 zC$J6rHvDP07PuC<{NRD6n-|=4%XL6{i?-D3_RqO@3vY5N4a8VVn5GHi7<( zN`f3&8}#DWa}zIZc8tD|d0X#XanGAS0TY=LXCzlZLulR~w7*_K1k73iGZl3Jp+EV!w^yu6+7|f2`wQPY1^BJX%oV-O2bv?7%qp^yt1URZ60@-O51Cfhj#ZUm- zC+XY2J3ZK8?;z)nt|PTmcT_U8Iahv45 zD`iIkR5@YFac_#Ix^u7UkE^7bdmgXQQj8A@n;Mr*+9_M=g3Be?MDE3NDr|SJ`**05OTk6oN3xG&VD=p8! zw6I=B!xnm>wz0o+8TiSZlf<+Ln>1v+=F%;Fsz%x5~HODYkB<;|{@< z*uGDdi@mOCXSU>g-7Ri}vn-p7OD*9Txno{zn@ud0ALq)~U68;hMO;%Jxov+V!L^-- z2oI6Iv&0~9H+UdzPs(mX$~S45{~-e!C&BFlb!Y)KQ1X81w8AxF{b(c<>)?B0Yp}z# zi#1)oTo^!iFttLIHOz1jxmvz*A*nN5To!-CiFZXQP#4g!ZZ`ze-U3HV(bei4%8~8j z>Jsq+NmnHr7Iw3Y1fXnX7|$cp;qv7h6oeXpT$Wl8lXh*DW+p$!u6CvVHpm>3I1)<` z$#RY06L!+@rCFfqiBdst0FD6{GbwG-oy9lOMQ0#LP8ltpZT{ovDB~In%SdY7sfW)CKx0}0n`HbRY4@KETX;*L% zWbzVF88|zOTO#}TWdXTcrE=#+54biKeU$aIih*$29e@6Yktev?KP5F5uzib|b0=j8JiiZ-qycR~$uP&Tv{Oo)mx zbrl=yU3WZHtGc&xJHD^J*Olh4RP+^-#(v(UiP2%#R3^AQ8GuWCu6RA}gfz3ps`Fe< z_I;~JHm`+r;7`um%zYI%eP<6huSsW`owt^1ohHa<`HG}S%)Q{nQjC2|iT5)^%!8tz zLsrk=Mz;V@|8z80yAV%_e)v9PQURjiQgKGsn z8tz`(2kiOtv(40!36g5w7q4q+nv`_mCsN(vTRnk*%?YdX#Sv}Xkkj?gS8p4y+UGYm z=Lz9Y!GhghF|K!M1MO;0=-%GHxS6idoSy8jqV0WSto#>AS07_H&2XkRKObB=)H0zW z4n*dJyG(sTt4t(i*%A?ON;X4v^L-I@Jop)kd^(5@C8DXuo~F^R+7ni^Tcg&pPI5Ts zjIvzoO|LFuRsI2nNPY|6;?)< zckpc$^FkPt_v+pd?H;k6r(U52Vj|+>wheNvJCNoR*F)#LgxKAaytfz~6|UKN+ZvPF zDm2gK-tI<*hHK(p{UIM~GFobX+Y&>P3CjT$V{%w#f5#GcvNe8YdXn~5hrWoIu?R(0 z&AB!Ngc~Lv9Aatq9G}mL)iO~OH*1OIhl|xh#AqhjB?BPTi{JkD+$BH;R z1}Z(({pf1=>HHHH5Pr7?v$xCdwq6Tx^*Z?raCJIKoTkzyXsZoz&@0|I3zmz)D>Q>? z7KK&1%*+G1K;X>0Hiq*rvmx8@RY$+Od}v-Hv(o)$Y0x6-uK@j)cP!9j&aFSgEiHsp%sj&Z)T!_e;b-$R4~Ht zif<)ctSRk^U20G|gHjV(Yhq)8)Ev4fr9Hd2Pcqj|@{Qb_%k!ltC1D^KnJ^Me@0kH^ zubL^aW~75!oi**V>qT>YbMX*?#Y}FQojGZ|_8}3<%IIQR$E^~-H-x2gY%;hbO~vcC zmm3dVbKLW~3fc{6SBJZ6!xD7|?KbKwrQP9SKRCABjy-2gTHYUZJPtLVQq9)3kou;& zEWf^CcI6^%&oaxndGm<6*Riz5Hf!XCqyIbTOw5bJGr?{-ZN}4!ZmFB{?7$1{F6L+r ze#Y7MO(paVuAetq{JUA1*iT9`ZXacTRg#L*#P<1MVT)1JeOAGssuTmJg4%JywN|m} zRMIKsj0VJr6_ZNQFGRiTq}Z_{X9z|`(}$))^MN$;ABM5Fsv=jt90cb-X@w+OS2sxM z^wfo^t>V-vFEH>{L4a}YF>%|BO-?j`uuPp$14C}K&QC0%5?yzz-kBfrLuhouqdRf= zv79=;WHPFS%C`KRVL&e5xY7Gqew61i>7iU6Ivt>Y;BuL{KJEShM!U{{1;d;L2k&5M z1N!Gar&Gt3FaY%U>H$Q$v2-&xeeWqWE5G7&@A1fVFX0>7=EroZeph^>tA5y-)ppiKmthsn+CoA-AV2HvtX8mvQo;b&lCY)V7KK8|V(< zUUGs|wsDXR>QTL@1f#A+#}*78e`l*my=`00(H=U(7G^-QtaxgYMu(*Nl;PIZYa~FW>IKzL26OH zVJz?S>I*)KNkzV)CcB6(ff}V{O6s9Y6CAq)mEyHZHeFgS;Z3U6YHlFDP8^q{UD~=L z+oA&QUnGiPfwD{mc|hiFdFJUa0+6`-4}dUuIS-_08J|=nUd*DGnwm}No;M-NF+^9| zs!$Ey-Ib{Q%_sX%ROe|1%CKyk{z9zM-AoH2P`M~WDuSo-oQ5xWTj0U<=E4sEi)_~v z7AdzG;Wl4g#9~KD1=PR6g--(1zfFQm@*wu}g<}BE`_uUsgZcdT{P)07?F_>3N14m8 zWg*yuaD8^#G{rW?`7sGH3Bs+ru0NH(4-C?--2S56jF}m4TL2RoA;=xjYd zICYvU8BgZ?7Cz2T5~kdK`7N01!wmNRX(qzuTTk#0j2Bs4)T?6rc3(xsfUuE}sQAku z3D%GJu?QRX;|v^{WhlE^SfQnk@b8{ zOl0GH=?XjsG5TZ%Upu&;QUdxA#veuzoZi>nm0RYGKiIj*djDus(J!#Oy4r0%_htq1 z?F_R@x{d0ZgdOHL_x)^Y_R&ck^S)rK@+0{L-)9L3@ljKohMa3?D!2X8|9Nro<{{rY zdui-wApiLmqhy-Mdaf3+CTyP(EBvM-34g0E>PdK zsRF}tuKF1PZGzOzdl0fdJuV^@?~R^!(r*NAqO-!~|&2MhC5< zy9P%Itwb=mL(frWhR;hU3gs?Hejo|bzM{ax;>AcrNfihUh7Qz2VpqQ2$Xy$9%e4|l zq3I_mV|o|@@3~nhDr?d+G$>i5hh-Py8uTAU`4J!GenA-=cvK4zo&7l3CQCT23hOkZ zugl@2h&aiIv}fv5AGwfj5_XE3#an@0CLAGbJEKMU~L^J|-X zl6Id+X2zR4BltiEMqbXiW5J$y8XSl#6njj6UWT}D?D zDK_&eo|j(l*3Ps##bT-xTDMi~{XQzsv@yl(GF6(!&(n=nbv%k4mKb6Pyt^us?GiIn z%JXD++#a4ym9y_V5gKK8$q#!N^XW`i24@MH@F=(aUg56GJTuKnT5n z+lJ6i<+|+sqiPqndbLhv*VQDu9`MuT{);8~FG>RZf$4KYlve?qCem92ZL`*&N#}oh z_Z$p@?wUW<%NQI)4KNHlU1sr{>Eo6nTf3xt>5LD4;cxp*PycIEpz+p~n70~zhik~H zP9m*5Y$3npW?Ji@f;a7`|Ni58HxrwD!_0cyrJ0ix#;J(J;2mmx;_Q~%!cfcM$hphH z^u4yiFU-2sLR5}$5H4JN1$bLa_46TjM`~6S&DA`kj(O}_fL#G@&SPz5E);!_ku6`q{d4}@ZAkmmU_ANeQ!&o% zH+kZiN9X(7X;YlTC$5v~`)ja}dW(>wnF3Ok%yzo_9MvXy{P7a`)RT7mPVh-5yrf>Gz9JyY!6 zaon2k1S3o}L8;@s-P^oVQMI{u2BS}DyxQ8CO&WBWB?6+&ug>EY3igJW2LYKay3Mx7sN8}mIk*pI zT%}f;GwKtT^<}9KZ5{p`d@m|jz;mkJ7~m5lPH@{d=gbbBbFTTSTUM5xHyxmdbVlKJlkBhg{Spq7s(Hx$vgt zFHP80Fqb#uB)EpSMpE3j`x5s<7pKFm71LcZ=BSo`cpMrey-=s!ohz#I-SAF^-{ktr2 zjP|^8a-=b=ChGBX^imWU^B`M5CFRnv{L9@odWL9lPAo;bxG7I0mK=HQ_*az3mb9N9 z65DyMfRtBY9jUx)*47B68^_k4QfI1O*m-A@BhyuK`UBkFvTnCpV>?#)jL`1WDEaajGK1bVS7XeXf8VPC|iC4LV3yOI%hW+H2C^i|+ zrqHjZ0DE5ndtiq6Wt$6EB_6w^`m~=d0x)6PBVxbHto52U;P@kb!GosUU3L1UneZJn zm))h6Hw$wDZuiycMBp}>;4LKYt3_EV`39>CKF#Ep+U(B{NDseQZ~HcSJ>dY-ofnC3 z_+Ed>X~OZQ#PH7NP*vdqamN3$RpAYo7FuxryElh`*bB z=u|bkcwxB%Y|37TA05XW87C1hJ1pWG^8}H^9EG;xHnsNbdm$R%7Wshc+W?5_@I^nq z;{SR}HvNqQk5y!n`4_S}Wb`M7S1UFbf`^0fyW}-aMX6z)tg^Bq#jOf#qjTjG*6}yFex^k?h`fb3MP1Yf z>b2>#AZ$yH!#+Dpf!(=mP9=(3Nt^DBdtI9xTFc_OFoOER1M@Sv+V?-3Cm3}WOI^vm zqv!k+_f_u{9(`&_DM%II6;6d+Vw5JyT;A1^ss+bRQyV?CSuQIlioFl`{GY?{a~u`M zCCV*kee##gE-XVF<*%=mo5=Su4#fI!G{3&k#EFs9NUjL!2++r@Q?3%j$HXzAeobAS zs&rv@%Oy2#bxweIp#@Hq+HnC8mz7QL(dgQZ5Q0izAYTcuaM-JxQUINC-HuJnY>wN9 zR^=n03|RXpXpjVq%X)X=qa%=wrsOABf|3_JRU=n>9XNs{5a2^i14oUcu)~ZgUTB<* zPWf3Wm@EOVEbk))1HD)Z&LRkFgyFqGN(H@ff8YiULkYUtXC7>bRERn%ok**c2Asn; z(y<@jUp-ieBDJ~$jAE^HxKSyh(WtTqlOXDazr;i^aZqSxfn*e~D`BCzDa4(*2hO4W`z-%9uu$Qp zd5P#Z?3s7%D{3I^&cXipsPJsWsFsPHKdFsNHRuA|s-xZ=nPi~5nr2{Jnmy3Gk;u_=+f z7?TWk_yPDT5YV!y!qsa=uFKSEgf}fA5Y`~p^qVZh{wuEP>xmcZ04)K3tZ={&5dmTe zFq!4MF@{Sx)H_z0(;`DV)a=QO`wURLQe znz^dHMLuDgKzsLm=9Jjhr~Hwd32v4RQG-4|_KH*4GH&UVN1oEKx=AD>9mH0?NN$bIU7ADRb-&l(zAR}&x7 zGFBWDuL=(Dr}uevuSFJa7pxED&B7TuiwB!p*mwh{(*#7!4(WW5K>-5VeI+zUF@G_E@&+qybFXfdo&MUpTQDSJaUjUO_DL zO^<1H=5kh!)5SZ0q`JcFS-5JJr-k%cTeVbudx|C6&PvU9sO^;4*oOWDn<8r}6y zF47&Ew2d1x4*3bSV??=}M#^M|!y{oX!pB;H{reaX;>uZv6zicX0r#Yov<$rxfR7Vz z(=ODB56Luf^QZgV5d3W8=?3E^p;jDW&gxY?2s%BaRZgo@c1_66px$U&&l6(Qma)eg zeA-KFqr3YwbIEme^U>OL!oj$;<@>3cqRaNT#x?4TZEY9F8OxIi1Ir(T6*;|DAw5EB z_jxV+rOyirh9y7gvMsg{>yv(EGa7VGYMP5WY?L@MT15;09!W>!tFhG(D#FG`nSy=I z$HG|KRa)=uZ$x?N;$c=s{L@6?a$!FS56Lu*)FI-_Zk}o8%~akKkr9Ti*xl`FJ-hw@ z*E)}r5y*o|y+6aWWykz>R?}ykhN>20Ot9vG@u`S>mSg(fDu-~W;F=*^UPpdt3Z5_O zWqXy!igj2ybkp{=J&&19XIUkd(&-gdQDjfk3S;2m(YIz;`jMsCnF-14%u*iSqM9}e zPtfhAcBz}!z#^GpZw(xcq5JN4M>5`JLlW%J#h2 zX2jr`GzH_G?kLn%LLrSwKHtC!aZ+;JkB&C=_S9d%{+LKr7r#3{G zINH|JP39TtZ0P69B3K-P&8tg&I$;>0S6K(BvGd6Ti?hg8#U58H?&y`mrf<5N;Melj z0rhZh-%@v6kxRjS=g(QtAMblSC#nlAc26uN4?(UuhcXxMpXRrhd z?(QzZ-QC>>hu|>41b29R_rAO4tW~?D>-_6=rmL&AO|&HIUy)h1qNxjfz1DT^Zx55D znKG94RY#BI2{s}hav7j0NbQvRT!5q^)68er!K#Y;NOswIPEGG|7f!NQvg^Kk>>(%} zjQFrEcFD`4IQ=p*vD18LFzn&P_GaiUx5+y3@V>lLf7on(VGxQ6rb8CpTI4rLb#!Uj ze1+=n*VRF~dVpu#;!h-s>+L?0Slkk_4C{Qav8hABPkB zr`tt7a;=FUOcXl_xD$7@96+EOv<3gduMFNf0z6+nGu$lZ75x+KEa2`foNeb!_*}ki#_A!1>>?7s`vTs*ASI}}3U7epj@vpbz)PMZ* zG}grPhE8OiIU?EQ!VVT=~W>4-!R<9n`@rwH<^XN3 zULCiZuerHOG+$tz6z&0^;~Yz3xy`P$a>sg>je#X@OaRX5&|auKB!ig8-j<&aV1a91 ztoDQZckqU4Q?)g`PgRlc&mCDD-84Y(?yM8sR-{C%r3BJcGPB)r<%Fu;ZF`{c?`a=8wK;K*a{?y7MSal!&|GWo7}vSEuHnKpn_)bz7e{0N7W`&h8fdy3=NWA@Qzw&&6~ za9ba>l!P?ixH7G~mau8^Q}6}T zpEV45zUWGhw~%UnP2$C{G3a&llV)D%rMpDXb9BZ4KaX2fKwv0PZmkPU^u70;O|-)d zI|Y_@3*AUT7X!4Y2)twpkVASRsmE#2U+J*1BIT;hoS$*}HX|rp+V0buP96C4z-GBI zLJ2fO#cQf0)>CgM4^-Ke?vm^@yhx0J7Zm z?0g&Hl4!(u>5@mbSRW1jeh#T^t{ zM3&cGeYUIG7)WgtK1w+&YHqOH5<3%LTBXoF%rQ~HE|iC(M=UqFB!luwH{~$}OYc6F zG2Kv}K=!5wM>p1hkM2vVZ|9ETS#cc+&r(8@9^qz23ra4A-y3+ntft?tI3kVrakL-8 z1}v@**Uq=$>xBAkk`|9xT`t=vpUeG5k7Nr+tcA;bLLckxa30Kn;VdTEDaCp@UL7?v zf(Ay%IiIWo!|QWjJ>fcob3Fo1bIs7|-no9E7!TSc-YH6{ReK3!T6QnakFE%k_z#Gf zx!J(hPJ`x%4dZ}iWL2Ne(b>PpbF-h`>EpD2M@{iwdk>4I+bN>ra*tm{l2fk`{2;6M zYOiIQGL??htg$|R2a5OJ#67vM5A+^zo}!6l&6bk90z|?+ugM(93`tasN z3M8aoBpRd(f>#EK364!-v%~p~)G;*DT}h81k2P4nFX7$koODf43)H%f&-~GkyrE5F z(2ZDOQrM(hZ&1D0<4<+$?x~jt-NodbDO{B{YOa8YI@f%C&02MooT|F>&eM!ZUb#er zw@lu;>j7`n@3Jey&j7Qn>d%`6gP%b76Wss4dlbtHXE#tkq&2isHT86#DD@y=9v@m}hH9XDIIx7r%Ex4gfOPFxAiKYQ%c zuhbGLH3w{Y>wthUS}mV|n_rJ*kGo2WHz4)yWQ1tK!xhWPUby4Ra;1pK$>bAER)6}+ zK7C{jJEK>*5NLd0oUw0LQolmJ{(L}4{AK=b9gkalH5z>THCPnG97da z?v)eNufNY2J#fR< zXdkQ#wtE!@`NssBch_Fo^aJ|c-(CLMu*C(EFu~(qQ}?s>*ZS$yacPfg!4mx<@oT)B z7Kl2c^W2H5jfzN12OHM9e*#VO1o^CY(_)t8%(l(qUB)RWMFS z&HTAn$YMn!$8cXYE7RIVP9xy|cQbfOEVCiPsw2@6K#=lK zpa?a69RIa{AY)@Pr4bmChcq<|)(4uhLTuUxV>%Vy{pnIe5!SQkn)++N*f@MD&U>v4`~(SV55oom_jM z+>UnI97;NR3mwCJp}m(Z1Jj7HLL56uF-iGO|htnL$gFa}u06rUMZ zC6RZPNYct@up1-!Oc)$f8n%t^M4WPOc>OL%uuTPqni%@c5qhTURH!~1%eb@}%UFET z_KR&zsnjw6p%;3&z6fb~_~e=sA+Sd@kKqyN6(;$B^%gJjnDsi4oUCXDvzX~Fjlv?M zH#)g@(@61W?|{*F>bI14S=l->%urAHUkAQ{!YTiFABpH-C>Lo=-z`79mfD7QWGmiz z0*O*u%y4Ws55a}*fvvq+nU8>1Ve1XUK-Trf*`4smfI!hbxK}9mmcTL5kVG^&#R^sF zxS7;wR|!bMh|^KiECnZNSD)i>nY?@tREb8FXPVO^0+I>Pf+VO zMX#TIH3vdX|E&1Q91OqW&C!1ru%%HBDB9tD`c>lXGW5d|(z_udl4JoufW8*GM9)(5=K(Ra7Zc!P3xMmPGJSCy`#!@E~{V5FpV4(XYntN?Oem zR2JC&?jWp?jCZOc+_%MAhW60OgPd}uskGzA`r%9yvMUeYpMn01lN{RW2mDM3dUgZ{ zvsEES>VJkpH72Vc#Mu#qdNbk#D_YDsgj`6OJ*=vW*d- zNq(U&LBF0F$|7DOy+aYy(H+1<{SeT`rXoWi{m$PVy#4zD;rS~`G~xwB(XZD&`*qRpxzs?p`qQPI&YdB@iQif9fds3HzyV?+~lgp+7^o=TDk z$->_tX^Mej_>moHSE`INDOqvV_(VdPl97ZaX~G;*dIEYG1&R`il7w80@qFKeDQTJ< zOnNN(VDB|)oux#a@quO61XpQ@Rx#pDROU|s?--80iAvr^^21p$WY-hE{{sEj208Tq zcf=N^Zp`!VdTOb<-d3JyP!(xO)k?l*o^by*BI?Gy0u@%%O>>AA3lZde6MA;NRT%33 zK!^JXMt&qSzo%x~Ll7cQnrUQ;pNW2QtYeCAv-k<$4~fyTQcW+nlkb#|*b(C>MtvLe zEXh#2an_=))4F(3p4cO^BmQHj%1NxN+Y#*vwFAoB5!fnr#Nv;)=LL#Ym)I!+|D5W6 z78!G2$Z@_4*vgprsU!0Hwx)w|p`R7Q6S#$OKPOyKby-4I5ZTds2{kTtR}}9jFB(hu za#j}4@l7;1vH!cuB)Ty4U*$I@^RUyu);I9NkcUFGM&JC3NfDk@e6jaf&+t@^tc3}+ zMo-w)72=l7D#9#k)Jdj1AeWa|L20LcZ;=5cSG>1G@fn{7s%Lu7%pp!7ukzFYt=_0V z;L`^ekI46U#TByC3h9i}GIAI{Jn~1Df!W(*_r&)ffe0BH&y1CoR;N1gueyOTx;=|- z3D?2z2o}Fkie6!SAqGNyG0bs6pG+PRhQC}>&n$kk0w*g-wXbE9TV!hsZBrT5K55)U z)Oq~4{Gu5`@LFhm(fpO+f*W10++5%kx256Vr53X-FVDeUis#)_Qg9$0flBGc!HLG z6=oy!u>?j(=`Qr6(Q<;8*_Y`qk}My>JvTd8eE%c%1wVvUj(bPF-T{8cy|nKCBmPet ze*$0SeB@I7ub;)`9gz7MUNIA>gmm0{Z1gGRKBepDIxKl%h%SEfg8dT$ci2hujNQ4^ ziadnU?Lt3x}{=gFAv)0iBn^@zc{jBspH9&*E`zTkt;@R#oyC$=bW_~q)|z2)v)NozQxW???c+Gp<9rthe~?Pm9MbU*}YS_yXG%omfAecKPCF5mTsa!7l*?(TTp>BKcu~ zVFBw1sJp!Ij@~aGf#hfJu){PG3{7fxd1c<1OCQHLI{EK6%5TSvuGsv_vl<7GqGjH> zLTHM+66JV|k>khMMqfnZ!vl8tCFmc23JuFerWt=Mp&b-pc@yRIX}Uu?6=AJLlI9~W zeUM@zbp(pad>hV-jts!R^jLmCr*B6+UYfJu7KWR~&si+);kR)h)j~ zR=yJb71;}m69~!hZm#|sSBa|;)u+CwRZyx`RI2n%!6-B{_mFSy)>i%I^NB08t^Ltm zBUzFgB>SeKeymYGxm-S(q>`rf6Bll0^6)3cv2qk`K5nh9%HL3Z@+zYtoc?F^D6Im- zI9o^VGkb1ZknPe6cX>6IvL3LoMe&Ej8@w&Zd}$@F&^I8NXczXIT0rm%Y`IKjuADM^ znk%49cuo=L2B|#V=;+?<<-3$>wf+zZbhUn@t`C;&;q<17BeeVL!*^<@A1SZ6XZzEe zGM7~L5*n@;l?ScgsPn=c0>AuEr0LQ`R(tR9%phsNz#H^RnQlA0#x;%l_;7h5Z;@=x zLFqT@v_jbcg8x}LU7k3pLfsq5@C0+2w#jNjzdWj9@e1jcr5A)-85gBOmXJWno)(IH+bR^XQ`jH2sHrC!FnJNCuT*>`^G5@7?7{ac{md8*tiPR?k%v2@we{k6>G9B?|P~Gl&P(7Wjh4f}{ zk4;oQ^vUGze=WG-PbLggXiOqRsGrg4WcSolXaJI%K_1h9RigCI8u62f zlWBmq@KJb)aln5W4M$(=1g6mb7$uRF4!qW3Pob&(3}2I$?W-4(Fq8~b?H8REMcMwE zH49t)!SumIf8_Qw`*UY(|C4JZZ`SCFS;7zEL&yhbOAfI0d;e+Bl+&3Mu zCo&MFEi;hhUURY+0f=Oc^t>EW9*?$U8`e(PGuc#On}v+UFN0QB_d zY_0j@YeRH1HF2^ z^ZncTb)z$Cv>yods%7cEWUu-O`v{61rtX`=B-u$Q86XQM=cbeHEPI_po>()6})f=w^w@kH6wYnoT zF3}**GbNE)eyDdUB{xks+|*n+tHik6Vsv4d;G@K&vO0HtPKb-8458YmZ#NKCGQu(i zM|hcxbML+VNkVA32WfS!cDwQma~TJAmfVg1x|i~>^F^P!j(7>@ywg$BqkM|_Gxahz z=6)nWa&p~d!jvy|^)XE$P4#v4>Hn`7Wsl=hxB+Jd!j-Q5Y|o72%KyUtoee95pYGcf zh97aG%p#k@KlUjag+cj#rYY>HVf%&byL!-me$Ek+W%W*50A71i zF1|e6VRzIX&wFtPfuCuX9;(P_o=$plje5P_49gb}2AJeo{E(B7+}PXMh?0;R+1iz5 z(iOZ^p}q!iN9G)8g`5yV2n1n#g`^6yx=X5$=_^Bqhw_9B`vUm#@&yh;>dWXCT8N?` z_CAjq{@C%xb=3)3Z8efuYj|M;gZ6q zy7Hk@?1#D9>m}I>_o5-|F8sRPOb4Cp_uAeOcM`B>%-xg*RjK(*#%1GcM{6YJ5~N)b%8HL+7HxR3z`^6u0vJs3Ln zIIOJ$G`y-B;oIFmX*wGV9~cbIc)54#x$X>sF`k+ahH)!ek2MlI05#qfo$xN0N5~ac zWB;y34DU)cIH5%w=$;k&`|V=Ar|LeM&n~a3?wgKwMTAGqGC1!7wac8ci-0ms8<%^Q zvs8h>z6U|C=k9gEnciN%t&$@aiG>JfD zjxOuo9{~;phw<5Kd(FcW8EviEDXBrsR}hQ1ALI@Z7UDBb5v!{4i)2eSoq^(dj{Gcm z&B&__2Nb#wWWdx7*U#;epE|AOyaDGcUhPV_gGJwqLrPz`J$D~vi|_7!OSQIBqTFfA zyV|<$BtiR+4P$;~|H1+eI%>x^aMpXLoFyh8zpMhnQe{>XFvYNIBfztYI5 zHa>EbAu5v zlele-zCh__S!k}y`a*j3iEcq+)ER?)qRL{EV9SK}|871>`+O=)u&+}qw0NAN32p95?w`t-U9`V_Y9 zjk|f#Ru7nyEjlzl$QzgS7DNlT{&cg1Pb)gL6R(igjZ6yC!*Mo;SIb<-uYsx|QN8UB z$=4SGh1Popq^c{fNiPuW!n$UOuXw7igS?0~1?RQ{Z9|px8V`ey47M%J2W|aV?O?aT z%@AbQ9Y3YIM0WSL(f`qdW8XQCIJdv|8Uj`_Y0230ZZ0oH!vTUV3$F8>c;3G_98P=7 zg`Jp_l`_k^;o{Lm%NOt85iY3hB7|&v_JkSY7JNUNd{zL3ACaC5x-4-SPJJnG_qm4E zJNLOTJ^R9Fen0?%_nIJm9D*#^VizB*;S=q+A^NA=zB-ZBx>ncj(1m;(@P@`W4p1Wn z8n*I`sjX+NI9x}^pXEpy>Q`HNgU317ee4?j6vi&e|6~IP$AL{zn!!Rq*I}NZE+lVU z5U>4UU#r8*Pw*-##7=X}7uJo~NjG=K5B}~2&xt@4z^rYm)9LSJ8rBmtd#j-Rgrs;i zhvNg7jwR88{VGQvnb9>C)lv`tFoyxMKa1M_*Z%%34unq=WJ@>pjeVglM19mP8-0f@ zg4g~XDS^6a#wbrZ1`QtJc|fhTOGw~)>QAC`*CDM$~7syXi4lK-Whk%VNhy zUODf^=j#$UUn4r?0X$0%_d>?4-RP@UtOXZ!?^Pn^tl_C7_Y5B>2C*Ksq7tIkwJ_Tb zPXEeIuB+h==qKJcp1bcI-UT}-KqlHBLEQxR%I3VvVX14@FNkTnanFk$I4fAr_Td+n zyG3KP=R9p3O>Z^tO`F|ma{Spa&AG)p0k6#lB-#MJ z*#CL!68)3XXoNTfBCJk(8?GjNDeg^Qfs*Nv6l^+iU-{#0sM7PEzny8^i;!)f2dCJ` z3Td?thB%gn<}=#c-8^ma@{k011ZF5UZQp9O;L2o*?yA!F8&xD#-Mka#jCP#VI#t(Q z6f#lQx;7^t)dI&?0Poe+9;!6|a1SKu;k0QF;Z!SV5X_qhODN`O^HCtzsteWE0gW1o z3_-%G9`3Mc2lGB`%Bu`=93j}es->t19@DX7@9V!oz4=3J=qkwyzUg$>+Q8%2h~>9? zsIQCFMl_-E`Iee3eBVV{zz7tc;o}V%AVrxHaX;u~PQIlYD^%W2Le^hSYT*#sDJata z93|O8t0qz|yp;qcKbm1tP(Yg(%P%a^$CfCbJkXM>iZ7fAU^pN+e`>7WU#Jf%@Q@WC zU~8R`E`rblaoaHMI_4y?+!{J`Q^!0QIvK>5LW*cx!LH~e*1-Izekf`0Lxp1eti2F= z+mP37pffVx&DhzMytsyv&-cUL6RHyX?FM;fQEJw377JoRg*UIoCikg0ou zyyBs>$8Po^i2W@3>MT&ni#!~=*QXuX$Pn4*BUVzx;XJOqUtZArtLVLd%CX$b zUcwP_8*!A!#@h7+DhAbk>?hSPVTT6+q9c{agyMh6MgSV_w zu8IsX`o&snDJJZ<8Q#AjGkkU83!=}~8&u;#meGQ*?8t(Wzp_nw_q~_8c zMjiMU+5Wac5!w&A;Kf?4*CYE4S0E#wrDn6&edt*Ev8_1|W?-imYkf_(Y`c(;xxX+j z{Ts^(b?*kuV8$az&GG5a<|%1pODEGvcVM4MG*;2;Y829z1xFc6=p{BHstZ`(8G9se zsOB`Qz>rqy4eG@cUFo@xjkF+JiGinE?2lWvpIU^h+`tqXOW*6O=WMhqV zE!=!!eH(OY%Y;I>hb@-JvE`~Lx%QlVaEGrvjc&YbO=3~g?Yxz`P={o0&dJ+%{p<%w zDvoY~XhFCz5`@G~H~eV9*U$!p*|tdhaT6X6g4wh|4l|4S{IuCt-}M%DENCVif@f~} z?Vgd3soOeF$A~vtHuw=5t-@|NmL3FZVUOKyW@w`P&FRUo=9!z`sR3{t$z} z5+^#JexCRjP}?!!{_fh3Z!PbJ@*PlW7bjZJz0(Ztmp7SmAwkw4yfKj4UHv8pjTJ3X zWA;mDX1}@jlDO9IwX6s-l68OqkESJ!!8lSa?hlrjV~*ZfCw$Q%zc-+l0MS^?oP~$(9hT>vg?YZ zqK5_rFqufsuf!8WwuCvDwl=V0ixJ^`Jta9p28G3T!%%O}6TA?m0QV9N&7A<$i3aDw zV`(ZSzAZN?W7mQKoxKVy73Eid@wKS$Y#|zxe!9Bifl$wt%lBnYTnxpBpr$6&zeC6v2 z{VigiU_Jaq-p*R%9_9N^QicTbaER5G_L+i5iLqL5nV{vSEktO~d*_d1h;co7zC1Fu zK_(Ox&g1FKGjxj2^L{16rru%kk-U8jqofsIYZY}BID;Fm11ld?wJq{u@+)~L9whP| z2%_c^W_y@pJ~gzBdLde(IM1;eeUYkBy)P<@)i2w@Y$vdA$pa&2&wu}?pXfd0rFgIW zL6m_P_ry}OgqHwT>2AuY(wA|r-Dt-ND_XC?PnsGJU7G9im@N~Qt zQ+@YZg5`6k{m!q=a+34us3|>60Mem~oUBuXkfRKkIh?!E_s_wI=QasEbCFly6Z|O4 zKcwg%Vb29U#rI4P(nbvbt~6#m^3Eo$ zS)KDvCmmVCsvpbC>{#9MK$CX0?ndW~_O&ibw<%4)&a#(@4YiZU2)|bUKQFS*KVwt< zHO88s;{hvqtJ?=X^T4?pubs<{QbyOEtJ#*UO|O^Cjq1xo5vYcY*d+fJ94DB~V@EGf z`WHWyyyeS_$Wx?dxQ@LS&nBsk#AnzIxDM49&sOl+#23=biOUVS(WxG&vG9!tufsbM z7?#_{i|`KFXT_#C_mqd6-!t?Vqn(w{imiEPl^22=0i}Nmz#UyKaB?o# zha0pV$PM-W9g~~9YXK#bD_-sXEt6Yb8nm8IuPGP29Y5Y1?l%ks50d5yB3*Ypa*!Lz zmpWm^w#!}ZqQL80UX5>x!0jF%l2d`X*42Pkkn>LW{b5Z}!QuU84VFIvjRo+uM@UT` zxW>jl?3IJ&R$5#mXA(o-Y^O@fVbK;oh+y|%IdR!RtjKfdVSrMWf!J9S&Z$6cz&pra zdR_D6+*46$$F6T)dC`H#!p-e1-8RrPJsA2&VVYE-ZN~f`)t4;c@xLKBEj|ke{7D;0 z1ly+9KCaI{O5= z`rCfe>aGq*9cUFe6MBG3BGKzu`}ZrB(_&JNBxcLcTSjZ01f&F>^Pmj_d*OGgJ+GnG z3wGy$ZVAqJI2hue(l*RN5x7(t6hn z3M4qG1@o;|fA$*R06sL&`d_lFoz8($9|9r!gIlqbmnN&C4E3>QTQnc;0L|8A(e7&? z(QBvdsLY@0ouz=XjWws3j`!GkN2lJT_m!Wp1Bp`UFh@r4CIPcd7^&@}e$vTPQcPle zn!~OK#o=`foB2zR8d_19B;yiT(=Sk+2S<@n7q?Wyd0pUW0<(hsGRDUYf zYZI_jie2N?m*X@971$M)+_>z(3nSD#mDRPp}AT+kXt`19UNQDFnv?|GiGR-aa> zT?t~3CdDH@UcNI$P@*NEm?P;(wO|VSB;k(%Ww4%L38+js#6`YhT)SP{xkkK(MUa0) z&9i~VrR0fk*aq2dNoaFLc*lhXxHvB485aA+(}^wN8nY@a!!p2ZPMm?GuhCDDd;Y^O z(R!!q9qB9<-v~@QQUsHYto$atQotM#hpovwmcJ&z3_E566J`_pQ^4f1WKm<-WKq@k z-vp}f;!kK(osS|%j)%$DP)B+bb`v^B8xuqmftL65fn~2GZr`2&hrR4OMN0GR;p#*h zL>V8Y&)=G-i2thV({N4;fBu+UXPtef!0mYLm`7sIVQ@DX4~Sah4DAe;D5?9~2brtd zHKCk!71;?%tL`(yxu$TA`YWK{Jzp{)kHmP_A zWj8f088!x|T^p<7UYNb2E=p$2>c3wawM*~}FuP2iqjIa%TJ31imXlfb{s|C&qk72| zkb8p!=)X1SnvX7_-m%=bJZGIbF>swZRXotI{OPR~DP5KRFwz*NJo_jRsg~A=s|>7? zE}Dg+Z&(u5nx#Wr)>`7l9zF}y{K(qV5Q!2kSRMEPi7C+qki3|jhs!?qWJ`N~v6CkB z-)P%=MD+f~GLCt->?NUQahJxTbrhvJPw)H3YB&hL0vi-Qq_#(JrGHrNt&)viHq5wJ zS&-6{t@L7<-m`)SXxBw zdwh`y*;R1k4lVMF$cqS*;LJOUN}Z^AptSlU6~pLz^c%t7D}}o7RkT$b%;4F4+kdBv zcjvWhMoHR!mt3)LBrk$(f+tBO2#AvXRqwU^3@}oO|EBBBB@!tjges*qsgkh$RNa#( z^b!3hX0Y;{4cn;X5z|8d z40!x4Wn*PRd=RH#ip(y@z#1|a&rGL3g1<5C(WXj`#4&Bwrgg+1lE|^fmQcYIE@TQD z&e@A^liH*u6(`1si=Z7=agp!(8XKjyH??lM#$bqbJfycbV5@@(*3(A%>_pMUWTsDb zx1N3$w`nl%?`Thjl&kmt_+Fo^!@$hl*R-T}yZ37t8l=nY8@0IC49$cw`Q@B*vSE_L ze$9y=`gm4|swSH7Hs=n-TOqN4PMQImdYnQD3uipEkR~sDAPJKWEkTuzy%>2yKvl+Y zxNOoWTqV56i$LoA7gwV90x~tk2np1hw7fEAL@?h~j2vr^-RUUp#EUdyv=lf|;XqHB zl=1^cmhh?efXye{k8A?#06!V|8j4OS@dJT6=@orK?EpOP!`CCH+;9~*7!WoUZxl~_ zEl1aWz^g1G6@Ww?w@LniI2w@lYIIGk6Lu{$$YHBGHq^JO^=mdR5M!jrTQzbvE{)x0 z3hRLSNajf98nFkggHU85+%vx>U723XA#hDtWOaMs;g{NlyL0Imj6smF#GWHh>yzZd z?x;F@%R#>I#mp+iK6w7d?tnGDmJ{lLaSEMNyeHDhi)T>UH`6*p#WJ~x!)z)p;%9r` zD-=7&$Ji?+JG-dGhz#7l5rpJVdx~p*Kh)EqvK#wXH$RB_eJmf;o)A`Y#hz$ZN*2GQ zv6$H%k1K(mQ1_c^KgQFaJNK|U13gCKNz_ySS4?`PO8e)cZTD`r2btquIfpcb{|6(<(6U6A9hl;pNvh7Q??hM6LGr z_6dy?fA1|5?!*S%Tb{33JO&KOt!7Qu^Y%t}w?hJM80WG8e@Xvw2DHJQ=wa5HIMs}7 z>kq!-+-NzA&WRXAfu*{BcDJJf+=Mw%-`aj=7}JdDy>7g2m?Q0s@g}xDq4os#)RK_> z-a+V1f~|QI7+B3J*unV{31Ja5kU@!u?{LHbXl8?Jqc$jD1FnNYLPb$JV%z(BhP$S>>6rYHpPk$q4QMx8LE@U3+(hS+ z2_K7n9;TmP2#p5VSQmwBmTBmYol^1;#d4ZeRx+)_`lqpLR%z4Z0Bxp6{710qX^l^~ zf0_2Zl`=hZ6gO&#&zwles>6=iw%rcxiqv<|?dDK58Px1u&|Chhxu~=#M)-x4_*)*F z!K~j>z?9!WfGU?i=F#H)Jlu-`(v8kby7e3W(ak+l9!!hngW(PJOPkMv$eonSnuwSQ zXB(PwdhL3xKaGCtY=+ailRx6kJq%*j8oRY&6RSV&s{Q5Q5#as>8!|x~n)V8tr}c&I z?YyZ&5;~_Ck4v>G{wwu6xxL5(0=bUtlUrTrW|<3_jj8~J+61O+@ut#OBZf!p$l^Vv ze07GGsq%P+P}_8ZwAQHYww(izK%JGMrqS^aV)qtf28<4`E0Z z)JYMJ?7u<%9wnjH-l4tta6?z(pBUzhtyDVS&v!q;;-iT1Lv-J8i`D&`?ylc;V%;~3 zFxn#ODfB_EC|eeyaynJUMw5fZB8?{+>SANcJY*wv6I}0qq5W!HrBAY7!-xFGY_4js z%ad5=g4Qk&2-iCqZ09~`qSxKhN^;pe8e%q%im$f2-HIYP`eoztPu#Yl*gVlS0Wpa{i}zkUP?5&oq3Dq$#6oc@E* zrw=I^ZLswLoQ*&}RAK;rS$STu1?s$b@xEMkg85(0yJz`%Yp!I+y9jt?ac8XQ>Cq~v z<$U}RJXm!4T}k!I^~TSX;}Sjejl?RbiP{yz7UXzBIb>U|3DF7F8-ncwN93pez+?H&UWNPRm znuA`3?98kUn(&@m*w=a4XXlRBmE7VyGFF759n_l0CV%MJppcRO2HM?&4Gz#j9JN~7 zai_u&&FQsYBgvwxw+N%WFhV`2m@M|VdFpFu=$ZhQFlr#eal2A|qK%pquj&NX9C>AH zvg%;2QSBFNVdUkRD$5_6*8;72%68Kfh$In~d%hF`eC{*?#IBWO1#a^R1z{(v%4%Gq z?#ySuvfa{wm@|44lrv>>(E6f+m~5tbwP54ALhXz%QnE$q#NlaPR{(Z5J;^j^hMGt^hM&>xpy#Qe&OG)HGwT( zT=)n&DX9T5DM59gn~{2;dGCOk1&PwZV*mu7q8pP!jgqhJ6uN2ShR zGj=<3qgQd$56p^~JcKlfhy2+29!giL08{{CrOn^z`KZ4O)*hxx==>N?-xT)m@*Yt1 zK{G>H-Z8P+QASZ*Lr!52;!YBomW&B@jm!yIjh$2KmR@-_8C!OiX>0!Vv`KfEv)9}5 zmsxekGUqC*sZIS4mY#WAaUkl4KORnLtKkNnYQf(lgrheBb9bhvico=gjz$k6C$fJ%o zD}(+7>A|w=!M5{bPgu)zXW24t*nhaOiqhXz$x-D!v`kWKJ4x&EBy)(A@jRvmZT7dO zE3@oLsFeh-n|}DQcq@4>rbmzm-!a|0vjMR%dd+WA*j^4_rY;)a$O?y^P@vSTYYe=W zbv>^S)`u^K%%Q%QZa(L_xCF@6jY968jyn3AR=GGP8qJ=aoZ zRQ>zk$@(g1H>NCLF7%c6Q*`KS5qr4Puxn&Yy-J0&JCW`=)f?4JzZ^}HdMRFd~UwCy1k=|qrC`l-&D^YV}_{-7gy;w zGkq?xo}oUz-tapEOJp_k{V2~r{sKP2je!7$T%wJc=iwVO?%^m?Kvdcg>eVL^ZeSq~ z9&6k(PHiL!T!OHn6<ky&Jpfzb!>uAlcp~5+={dr8Y zGc&6QwpJ8qFDEK)v=b*U_JOV@t_;`ccNre<2xnyN5L|s=l+#dnLG0C|-X7&6p~}7) zA1Ou7zE6Uqi&U|c-zVpSNC|gE)`{s1nh8d{A4B(0dAbQ0p`XbR2CGxd@(};mdPxkj41A*rfdu+19458s$o`Ho-2%FgSELEiIU{Al6h^Oi z)O>D6&Rc9@1#qp^>6&k>h;3r!@fnXl4|AZcK zqng?U;2F^^ga2f4$+Ks-<$|MsZGd#`Vs!&E90^bfG~Tcb!n>9Hyk{)tbXB=Mv+cM| zx~=Zi!8<58CO9QHAUKj$MuZi^MZ6ucO}}m9n`mt~O>`?M%^FMU8mFBEzIr)9dClpy z!x{GM|40GnD^A2*Es+j+&0RjCKI8boy)pCz-z&e$DxX$N<){9tEkOHgXHDjZ@@~Q~-LYUFaB zbDgV~?q!{LeP#iCrZzCBdKY)uPlJtGA~{o(DC!c)_g;p*V~xzaZq4wsQ9hz8@iJW& zqrA`lmwlCe!{wb>Zg8_nHLBOdqU%+iwt_ePXL`=k#;r-!)?(eX`iEXc_56xm%DQD! zfNm*|Hc?HCI1$nmP(LK8sUkCrXf(#<%kcC!0^Y5wfLMIW>G>jTVPZyxC(*3JaI@iG z+Na_P*IdKsft3(Ud1BWa__>~KoyU$+u@e)g$sCY*_J1gZm(>Xyd*cz z9#ht$gYLn4KG2-cbko-2<7`7VlAKp5fFKiuX;WNFm#>yC=sh-~j*rzQ;T+oRR47V> zYnCD$%W%RO7g;=7Szv;5f?R9ePrB)~krtdclQ&T&o|J;g*%1-+8$JNc5M z(xbythdz%mE6qY1ja>c*9tR|*sjK7(O`6P>t;W?x?LXvIZLKx{VMbv)-3{NBlxo$M z=?gt$H{&d;tTKW5t~6nQx!_z6Or>x*78vpTinypHm+B%@WNPu8Um|A5D>X}0ta0H^ zDEHf9)@Ac0|L$yXC=|l1FH0mY-){SPJ8?OceNQV4>f)ngGf$eOy@O1l$8Lp~ZjR-0 zqTYrJGt9*;i4s+&W^IYh8x{&@!1qa8AYnv}^_n&RlB2XwR1IdVElI+pTBX;DE7-x8 zce?apj>bBv{j@^2z}mM1mqsQ*v)Ia7!r{D$$3OnK@W{!*ggMiC;3c<_ixPY18GgvI zM?`XVAAgbL9KoMrG+ZRK%?95gwdVBuE#2>WL^)#mQ8u}7s4_?^jQIMO%HaxcGs&agTRx-rtS`w&@Af78QhaH?{=O{o zbICY`zH`wgsB~ z8dZipfm<{`XK6gS6fYG)V=#%TKxNQMmEwSRrLQrV?CIsHE~@oS2&M$nIIk&Y$Xmhw z!K`4mw=$R$97Pezm7|%e8GENPP#vfi8lDROkzg*_;(CV&hNh@86v1TcSkUHK8JytR z9GvVqpczT8n)-7&SV-J9UtzGwvqvA{%l3~5`h($M6je}Gvf$hRDyuIia4c{vI6t_E z>fCuz>w-&y%kegPQ*f2%VsI^2Gs4TkwZRR+s^AuXk04caU!ka6s9i~ci@}=U60I<} zmwV#dOY_9BQ|LS7tK;|)OkL6)zPe7(VUMH}V2 z;cM}@{HmYoj_16;o4-d_n)Qp@q&L0Ww4cMRuSEa_~ZV0T8e+6zudpnzrs_h zCHYtT*ZDVkj`=tFxB7QzR{w6YYW45)*LqHo<+J`H)F&(T<%Iu?|D3pd38 z3=9tRBR?1e!viA&W4(t1`2km8QebMp9qH#P8|C(M7K6Q*B@;J<3ntsZCh+3Vy4zlCaPE%u9J+%we=(#CPQ<~h3)ULSs3~RKytmEk&-Eg8& zaH28dEMvl+SH)Szj8lvSd)`hs#U$Yrb01DF_v7T!1$$mA_Ph^Z&)W@WmIrZK`HEub zrgaNrO!)5(-NO`v+dKoTLUp1!u+8wu)#i@l8b6?j>6lU2lFd*|rnakX=QRg{aHjgt4`w zg6{38*WW>XiTZUwnH|_=8r+VCe>rlI-wQ?(jr|X_llpf?N&a>a3^hF``nUvU|xzF;KAhi^+9O+NhAUl4wmkTHgUxwxi8| z2W=y&?tu0X9q51#x1(cUj%*j`ddiLb=#c21t&!-8)I0wr=_1kP4(OD$*+SRmFGqHj zuD9-x&3K1eb-KxG5294MmvrY{ZONW4-*5e5vS$zty8C%sayv@tfcV*AbWNk{2zedT zaeqFKZ2gI{I-qQ#oDOKz-DJ;eQ@`8R+eE#Tb z_;%XeeQK>KZEHXxhh=W@nvsb4@x9u`bhEf`*NB2d5m6&}eX-9Iavqa?AyK)guWp_% zs+0B=M61ObU|%Qe`%Mw=cJfK0KHF(cvu_pSweOIAAe&q-*(QkX(tO&fF51a=cItzj z?KVjNN`LaRSSJ%}*ts@-COZyA*x-8(S}z=3WWU;zU>zLfXjHkVkqgmE5 zn$z(dTV+J0ZxN~LY6{k|@-NBi&W&9=Gk-hb_J-`RJy z-DA1sv(;^U(muB+{~U+i_vDr1n7eh4<>0(ND{4_|y*e-A+Hq0FQ$o%<%`*P@N_E94 z^Ug^*=ClfGn{Uo!Q6rowB0in{JJ`n%IkO~X3ql=a`#JJD>P`-FPB>|;b53ZJf28M} zEb`4sYqYb7$S>BO1fd>P2|w|eonfM=v`yo1&Xwbo`c692ITsNvAzJQ6Epo0RqBERx z15uS&|CmrGX;0wXLbP4fV`q(sQ(g<5dx;Ja)k%LHCps<83C;_`PtHc6@1(WEd4s4$ z>;bv{Cu*~c)&N&$L2M7}48^vqoAA4f_Mom*5ofM+;YXfFSBAVdNZJ@CYPpN{h%VY6 zy14exe#}MtFc_&&glp-Y_~F{k`vDj2 zgqA8>6F_Bl^n|3L}(ioC@5Tz2O3wi4`gJ_WGYtpbgV@?`DG=?aT$RX?`O%(4-nnE;< zNR#p)QG_Ti>?X}4T1Zq*w3KKC(Q2Y~L>q}V$?MiO*M$BKqTTYkPCmE0&Ha5uwM0jV zP7s|TI(O&F{z+;eYWh2_313_je*Ak0bI_J12x9w~uX?H5(2j13|LuI@ns`28_dW|z z7dhV~zpwk9>wUe5`YOM+=i6QON%pCBx7`bxVV`B6V=uLr*%#X@>?`eS?Cb57_RaQf z_G}T!g?HBEr?alUE4x=N&LxX-B=| zf}_!K#c{*Y;#8fTo!y*0oT<)qXNGf-bC`34bBr_3>EQb$pXi+8oaWS=L1)Ancg}Mz z1eH6NI#+Z^tDWnd8|^ckn`GNcts{O1wcXBr&RXJ+$acbc26T>E1GOgSHRny2;7dqn?7rNjV7p(Zjg>Lx8h3@#pg=GBVLJ$1nLQnkGLT_uD zb%^qib*MF08EExb{mN+T4C_qgX=~K_qGGp}T3=G0v6fk1R=#6hW_?$A*1F5OTbXY? zWWA&;#IG-G{QtOT219p41pmECHUHn_)3YT}Wl0|;DOZxM4bMbblRjDUtXC-cB1wKp zRCUv->ZViGO{c1xzDVjWk@_rK-saz{(FI{#w&D8_= zr40qYv0=n-Y?!Rs)@((!K5flY%+>;{Q|W}?+vsAQZY`pD2v}cG`dDXKOO!P0T=&v-8O`72|Mtl|m-u9L zETcI_xD`6D^Lsx7|Jg3|VIkx%fFBBeDEMKbw-V<9XF`W;e)hlA0fhB(L<4a5yXX~0 zsy>Nv1<-Rp^QKealWfxYl~@HV2lBH$p}7xtw?J|Vl2S<4 ziFs$9a67OHSPpCgvVH+H=iwwy;~EIN5EbWe_Z%eWq@2 zB0gcc0=P^*%Xv|PnD5E|CvJMzYrqI_I&eR*5y&>r;Mp_q#t~RM0{#{7uS;a_)uNxz zbYg2=1&T-mzfqw1UCe9*^T>Cvg1=<>CVN;Q_ez0;&a{jvkRQR!9)V;la-=^n4OM6e z>f6hf48oTn{{*$@8u;bBf*Agcn$}g+L)J8OHv0&_f@)R<>anqybM`9^&~$y?q_={2c1`Hm;)PV~EKktZB|b>?N^;=8j`Hnd`aX zu*hOME7OXAc{#=&raDlK7^_BB3fzx;sRr)H3c|HIg`XvVzK5q4AcGbl4*4xH?v<&4 z@0tokRZ(fLV(5b$AB(4USgxZ!uzn8rmLi!Y7dX=?!av}Z1wGG}^=APz`7IlO%Yb_= zk1}uhDKd9FuQJHoGq_tLQDi9dlPm*pw-J&?^q)OE+;Ws_9eVp3uZD&{U`Jl?rQY>DBiUT)>3$+>L1w~X81(Cj`@xA`flpM)=VETuRaAn z594jZD6XScTt_CRpr5Gr#v1OSX&A`1UnYOL7on@aZM0=PS!LI z297YF#5%%!p4f%L&Qah&*f|J02Vv(=(Dy>$%MxP*l9772ZZuUlbzmj%0Cw_~mJ4_bOK$VL(EKugK_ccF{0Ly@5-ZdJ#g4eME=CQ|2A7ce6M{V4PRpS8fPfY8uBVCF$ zXg&6a^B{Q{yP780*$q4n`~dhN?3@SI0cT@v`Vi~v4o36uz?TAdqPjL?4f+x9-_!xv z#eFFG?Z7HvIk1WE^2y755&kcLW*6X-mVY4>Co-H6O*aQ6Tt2O#+|?{!VT<_tCb0DI}az;6O)V{e&;bI_C6yJlfmyc7{N z8xgyd_kqSdSpE(87jb&shQ56S`A2L=wWI%MS)x89@ikxsI339O^(gmB{TiQPEpLdJ z=Zr9(hqe2G>##$Zk334o{$VEKe+}+_DDgF51UMbIA3Eeu^!Yl~n)9d?udL?gg zRMe^S(Kn7*1^iC*d?)UTDmn^yzd4yu;rTN6wmd`pdX}3XMkId(d{Nd?t~@oUrOTkR z82WD_|qYuXo7eW#Hd|{_A-5r^xhjmRS5;4J8Rtpl^*CN5I^|>TKEO;p#k{4nxhvhhfi-I#PBeLLotZ6Gw-0QK%tzv!Szw!B+s@!yV_&WN`b?HeyYg@V^>zk0>yBW!ohf!x9 zM^6~*aQA-fi|*&057ooZkPEM&V({HkV7aUw{M1R*jraK6O**R~Uyc5wURhouemna7 zwE7U?|729t;QuWc>7Ot=ap*iJHCfUZ=b+#77}W>)jBLVJWs^9yox-W@5Nh)G;fGYr z`#_w_et~G|Wu{tWNy1atu|xPZpU2HXl};AwQqtr!-!+x+DrPpoPB-{}CwllxK6jf=ga4FI>!u;#$MI?1^ec?z0q%(z8Kgd^_9n?% z^nbqTQ^J=_6bb4@{wt5=U$G~Ao=@vEI_}Ryd}cQ-hRqU*?8C0W=lGm%-U<8{K1Z1T zH;>)Y10Jy941Nwzx%r%K`YQO{xO)x#`3riu74rYY-!jtJGnNdzeH3sy#ybNzT<$G- zRqc(Z4)e*~_(wjun|=iU^v3tYdi3ylpbfM0W6YzSXN{tl(D)W4sp#iwoMM&%M++V& zlx4`ZWjN_9<5LygrIU#HQS7MqK=X&dcg!!N9x`tQ+6BUb9Tx1cFbO`R*5dR-#BCeWM?mAL5NYu>TwgYXkXNH5dE> zfsiafu`6Gqy^ zzEYoK%a&a8G2jn5ieO=jK=`K!d_Mdz+Twt(7{}xMewxqkGztfQ`%;hMy$)p1pJ3rC ztT}kK;$BhZVSH76gm9X=kmPevQE^_T^EKc7F)$U9QED0S5taKk5E9f|wGZavufYFg zG}SVi>loF6zyvY&Vx^4Tp~7dFw41^mo?y%VPPb6 ze#PGhOm6nSnu1x_g4lSNS25EC9-Zke@ZG?dLgy@SAf8GGCSx{x@U!OiJmcmKkPn6C z8<^!EGjIGWBu`p~16OdoL9;i{CdJ9isDX?}U~?1rN6_bF`0)EIC(Rq^?G0oo{!)MY zO~s&?ZvP(qTl}|dVD{}dz&{2o=f9H6yKe&5Lw_!KfxUpsAQ#VW2EQ5BHUU3^ zphI%wGq?GR=s@7hz&LO;@D#9=(O_g$u0fIwR2WTO@UH+j0w0t-|JC3mp1lgmGT_sA z>Sy4Sakn0L6B4||I1!Rh!3+B%@%Comhq(JU;4WA*L8k!tEaV?cp8HS<$y<<&1AiM& zWrDu|+zWgMcnO*g@HfC)z_$Q<0nfE$^3D+bfxhxzEHMesqyke|V!)^k&jH_u{0#US z;1TEu?>*D<>%>4gr3GcZmpG4*t);l$NoClfZukGg~HNlI6zD;Imrz z^!)+&5s)J)jGY)Qh&0P=Ms+7Fe8wKIgqSziVy-s|&)j~M|Jn%spNQCiwdLr;b?E#J zzIukUl5(mS;-9fX%<^YfIO8zVxI`l`jj$(hG_VwROJS{)CFD<*=RuwgR3xVHx&Zza ziLB{@w@*sXr(qV>0-1lB<))wE?lnC11bQeU{2E3C{~Jz=8No6oY< z>?`#+JSOrt8GI@{vlse%TgLELDe!UFiGhEO(S$5E6(9m{z;DZN7qe;T1NkNPq2U(# zY=QSuFrp-QsfCf^O7J{J_{#7TpoqigC8puowXnnb@5AOX+WjeFfPc9C z6~fOj#?Fwu4ZaWfG|bur@O9{U1Mc=_o+?HqNygxA32-&;u7w8>?WQ5%MW&~)$Bd6b zE;8cxz*k{ehXoy$Pe?B@FDlz%nE56R272?&p!n_q7v2t|8jdMdlG!DsDaR2 z49%~L8i=qL(thKG8%{qU|az&je^c`pr{*&TO-y5@+zGvOvru18^BpWQ7bZl zKL^GjkAfcy3?c$wg#1mp7H~W-lstPttR02WM-4F+i8TeYX@UQH0ha;a2i5>l&kb*5 zzHWnm7kCrT9ue~e9-cIO3f>EJ!As5HyW;LH@CCqUTbj9tkbexD6~MQEn`HiqcX8w& zMC3OkBc270gM2Ue9Oy5AHLN>^{dju|VgoCq0hQd;8=AWiE#M8!sK)6-aE`DVT*LO_U!VP8}X5D^hk5ET$vA}X>etAGI!!XhFdvPMJ{RAdJMkRq@QrT%S{OQO1mm*^%H1c4yPN z{h_(WFtj*tUoz2XkkjqiWcHV|B<(Y3bwaJW2A#Rs(+B}8+WpPkgoZh`zV79g(2!+H zLrqaD37ClY6RrWH>^L*x{EG1yuQoD<7K6+$Ttu=#?#}z6O-s@`gH{Q@7C74s+Gh>w zUKpIgZ<<~}PaU(XAkut2C~aoY84L~Afct@|z|Yz2=TtB#ma)0Jk2m-A;u<*lo#wF9 zyhY|24sA0u?K7z54ZY6DJ2jvu9<>tKyuVk5$D7gT8L(}>+0#a?&wki0nYy4C5u(_LZTngRqB%WzfkmU%de>gfJXy1xn2u$W^Sv zcw^SQ)z(;~YP{3zx`<`sEt7S{aAUccW#+Y^#V|2U;{aivZVMxCy$wt<$S*+VU4eHU z#Tbou@kouIfxd%3f*wsZ!yKJJ=I)K(QMFBIHg^7x0qA=`?G4U_( zlwX82ruQp`k9cJt>NqoGG?Ir=hQkBWBeAJs*+{pdkl! zZv%ZC_?=}uya+a&wn}Qrik8{o)Ok^JvMlqIIorxGYk^2Gc~uO;Q+xAe*)!HbV~;_r zmMCO6;%l>VS;x$p3oHt(Xi#g@NJl`A0p_>%Lvp{F>7e&n{mg0tom;G#8pm0C&3a@k zp%c(>#aJS;h|F8)_CK_7%YA;`Q9oQu*mpg#kB4%i6z4EX2~XQQsKZ6ok?U}xaZkW2)P ze(`m*_!8*VuxAJGG&mnZTYJ>12FVTJ7YDr%^kn$tYtVgwQ-S4CYr52{Pv{nZbPR2u z1?Ku=WN60&Ckyn0{uqJtjz3a{=2pPA!0yo2+8-~}lK!ZHhEGBl{85Aa0^o6!mM|!b zf%7eFy9<(|fL(n5p!J7f;Y!~phNIU+L;D_spY0jI8fX#Twl1L*o)pWV0a53S1ExWK z8gLu%aUgna`;j&ob`F4iX=s4Y9R(W@KcWm`FB?jGAZaMiqpe z44FrvVKFck{9DlLa`4Os$iItH%n^G#YL!A;@GXz?=N){w6LsNRI~7&F+cX8XA@{hijk;w1~OxTeuTh#+{2G#v|Aj$T4>O^1kOaX z<;UUO!25trPkkLEE3*n7K|qaPk9@85mK)&?fv$ zg{&ejLLPPP6yV3eIpF)b5j1ZBXD#UcXdQ9Im^&gJwGefVKb!m>Er(1P@{_>v$9)C( zNx(QDY-Z%l&5gkTmtzF#LOVXkDssR0+EXx%p-ms96xiOM_qqRG470!3L%!b1rT$M#{dz% za2Yfr#pezQuEK0uxW`KiM_y^D(Ko0^o z24^s^uR#meikc{05BebN2|?y<;9Qih0sR^1bHGNxXTV2~I2(0+Z5x5F13LqMhGZgW z^oy^f#g{;@hCMrgr@{FU+S;R5HArp%zc}cHpeMs8UxV%goC++Dy0@TiE@U1A{SHdI zgKiDJ1fnmY3&6WjItthY_z-HXM7u>{p>H|*YtI1IKwb3Ox`a~nNGwBLjJ`7tmARp2nf7+bl!9h>hG9Q{fzkx%foDW5@E3uP=ym)U=mc$kg!{3&34F+ik>H#` z=~y5}N5Bu<12_@d{BgV+cptC{O1FZpf?Abd=wWUkGggW@MGW{@cpa;nzw+n7W96!j!0lcxJXAW#EIj_yx*hc zkO@P65;*?It^hv?7zc#SjBFDc0iC{87=v%NnG!V63fqW)t%pJQwa2NO( zQ-=SYmf&M{+lT~#OlWrmE`bc9+V(TadC>kyVKf>34( zr1^z{y^;CY1DTKg5REzS>x^bcc^9jRT#D(hs1a6!^2iuL`;XN<*NZ2R+=k z!O+%j-v*TSHFQo=?o}NLWx)BIifG&edWxYrAMWLI4RTFjIyjl2$3yafL1&vm+X7zz z=c6>rpp^moJTL+B1ewvm3cw*K?F}2ofo=WDGHh6pz|B#hhSAAMlB6(^@Zk+u<)S4kPY9K^CKkpNfUKO zM&vgf^Zgy2Au-GB7}J+fVaOjhwDSmLJaC%(aR_f0MJpaWlizsE8irms%Q1Vi$*^z^ z=y1-{CdP8iZf5~tL$sa-Z#)dTt&y}cP%8oSRY;~m!x+$`z~2FHYy`gyIG0iSHaL5r z?QL)#faC>(I^$rx{5XXD4bYcEu;Cyg!H?u|rq}u|U_ZQsaR&~Qp8znVdv-_5wx3uFu)MGS0%=B>W}18*41>!2?O;j2R6M}W;BnH;p6g?W*M*h@zw z_>#tN#SE=uI~|d1WLg8qfb%pYIBX2ArGv8_f`dM89kLTQic3Xg<9uP zYZWAO5bX(&T!hGsHFT&1z|;B&C>Y>@GaV68E&Yz*e? zcwPFbKbMU*oh{#kRh3c8&#OlB5bP44r}l`e_GV4bZKCO?5Ot>^gFL|gJQ{_%4aEx}YBeesJDUT)}|!J)UzS8n7*qd#=ipu7NjuhB10g1!#gmuUj50?9VO_U5}c#TGtjfsV3Y)nFZo18 zp|k}!BcbgZ^9>wmxCa_4fvyC)iut{~mj4lSAz(q&dKflWhRtm;%9GL4D=39+q1oU( z3tR)tKzFMwmgUj%v^=*z}J^A!$lt%<`bcrMS`xuD@U^CUf| zQuZlhPd3KFJbBlgbW@tW+<4OG*S>u5r+&}-C=I@62Pi-rgC5t4K(m7)T47gg0-YSClVj9Tkf zlc+xp)|sOVb*J7m0)J!BucIhR=Zw-6O9^xj-AA=`c7BGQB|%TntMoc`pcm*R>O&)` z5OKZ6jq6hVq(+a&Q`@FVkHyn?Xt^2R482X~<}zAiC8|LW(WCS@HK*r@sRA{n0W^d< zQZn_RzLbhO(G*W*$*gquQypqZx6>Qo7p55PhvF1R<+R=^RE=uV!&H|VQ44CL?Y@Ja zq=7V)o~N$VlU}A#fdw~_OC{(QDz7yp(gXAe)uYDLlG>6(chXZdh=x%o>P9Kl&wR_Y zUFDwb_$gp(U`Jp#U~k}nc5RYVco=XDZ~|~9a3S#Pc5Qlg;8nnNz|Fwzz&*f&?b>zi z&c}fn25kY10Tu(^0j%CWx%2b(Bftj0r1srj>}odywg$Ebb^&$=_6GLv*rQE5doXYm z@IBx(;9TG$;0mp{jlB-I8Mqy|C%Id%uJ%FTao|~CI`A4W$Dm^;zt}F>2?Jw*g@MI% zVGpMiumUgvSQS_USQ}XPMWd%7uqm)P@Ht>dU^1}Bi#^(RbNT`Y0Ecup{8Zo=;CsMH zz!|_fz=b{a7&(i8OMt6@>wueqJ9>8R*3sDqJPbSuJP*tOX7=pbu6u}pVPGt<7_c0$ za?hR#l|nUub$|_kO@S?e?KM^oB?D7{{eeS(qk!WyRtZf4&IHZ}E&?tCuGW|s+6deR z+y&eZJPJJBvsc@mp^Lz)z$}AO0Hc7aXRq!(Wh^ib7!NE1yaQM{MSD_K1J(rA0oDgL z20jHeSK~tGp4fll$aBj8N<<8R8rJ`+nJ3spSEhTR^sKA5Y-zl=BiWxVz8Fy=2~JS=4#tv{gY!5?|* zA0q3Ost^_aC#jo33B5j*_@|B~snkDpEKOzpiKC@g(tnKq*e8}=!T&Ml`%73!Uu~r5 zRev1Kq(!uvw$o9{uxu;VDrF^Fb*!dVdn?5nVvVzAT8pgJ)^_Wtl_6|VOf(SvM5>q| z=87d^gV-ZZi%br499Q7#T%VhB7w*TYJb~xxIcVC7@?(}8<~eVh=X_M2^U;4exAT;T z^fcc^()z=BIPu1FZ^n)F)zusI$2Pz5ydd4EzhG>h^D=ql>*hIcnddxDe+uro@w`yE zJm-z`ocF!a{-V=vEWdTxjpwEB$a7xt59fORl}^Z0J{adh=ZE}$56d?8kLCQH+dAe7 z>0DJN;BF0$dxGQ9;CS)Rq$?x_$C|;hZg6aRqZJiWZ|vpmRc}16m~*52UCnMhuasvL zDp$^Po|xx+Yo7CMdCt$~IX{2nd6oQsh%!x7jm>jj^+x%s)$*L@Ew7*Fyg{DxhBuDl zz4bLJ?U{DgyVTK|glyYZ|06w9$C2g4I5%Of$WI}!o=WrTs?}zs8?%U!fC zl4Ye^=_ITx))it^OVuJ!yhZ!4I<;FCp@af|_G~L8Od59MLr^>hnVSZlniI zqBJ^4nO3Z}Axc{n>op- zpguo?W18AQLZ9u@n5Onn2w zJdivQNd9i`W3aaY?0p>e{$A1$C5=$h_>U!O11#JK3pc~U-%GZlWE)DhqePGt`k$U= zt}t(I$A}p1)q>iq>^yz+$3(I@uH9@L?4J-#4R*IloTatq9`xQ(o}sLCW{j}k#e{; z*P&dl$Mr11lXE1?s_OJ|dRg~4 zeVjg4HRq?$2*TS13K8duCbP<;$10$nErV=WOqf~KK zob#!YswBs#(yBDyq{^zYoL`k!<+*^mUER*H>P~eh7gTqtySR|5q$=^vDp4hJVO3RC zX4ux~k5%s2ZvU7gaS?O}Lo6xdZ}JqUiDFZxPp3Fz09|(fodS%pVzU#KtmA@!yDlIy6&YB4{ozER)sBWkHy%8#lQY6aI-->L7op88&W&-K+B zwT2&4Yt>qApw_GP{J8o-{lE>?CbfwhsV!;?H&#EYAGwM8N&Uo0>Sy&cKcRN2o!nII zR=fF0wO8%sr_=#;fS*?9)H!aZE~<%oD?U8ZgP4%y(zznSMgLpl~5)0951CxQ9)Hkm7zkaoGM2*s|uB;-PJIV7J&9#9YH zY-RFqN#x&B>QVJ5l~%1(D=MSfsdiLWbx<9soO)h8PvupzN~Q{`o9afltL~~h-Jw!c z3f-xCtKL*m^;Lc8E;T?6paeBY4WdeFh#Eqb)o?YOs;H4_Bqgd*Y82hAMyt_ORlTj= zrhC*_HI}NWch$ReuXI1q@O;i(gzMiZm)BS3yno2d*bTyqGP#>xf=|MG1 z&7xZBBlQv0Rv)X6=^-^w&7(SMfm%Qht54OZ^oaUgeNK<6MQRb%RbQ#EsGj;-eNFY% z619XLQ_IzIYJmLrIPzaZojX@kBb__bsIgk7vu6{vL1)_}wNYo=C)8%0ZJVmCI?Fz( zw&^VUl-jPd?9*z8UNf4hU3$%UM(xpSMsu}a?WY#_MtnXN!dt<`09nVwZw z)D`S|`S({AB_h|B*RkbTt*lm>-NEWWmc7_sOd^yW$|jDg8C6r~;s2iK(>d_p(f9A@ z3!*O$(O1D-ZCRZ|d;c9{|BkW$rWmuFF8X>t#wsBa`4PJr6{YG_o9a^%HP`nGUG(*P zKYeAHO7GAFnn82vb6P^HXajAdJ#?5(Q@XygCo5!m(S3=ddq$^3zl>wA=zci%j(!El zKGCo0V~VB*;FuCU5XWB8gK+E}{ThyaqF>j?URrJljw#VYaqJa649DKl!*T2rJyIWg zYq?Y$Q=;F%u~+mc9D7Hl#^t@;Edx2-(4?HtI@XQB+XC?%mnHYFvQs9xvfk&nW9+?(+WP0F{ z8G%PW3_LO`@W|}IBOe7GnG<;A^H0*}lOJhCA0$il!Qp9CHmr~BVCdI~%;6CRoS zFM8y&z$2dr9{D2h$fCd_Uj`mo9C+mGAXdH!JhLS5%+kO!%L30V4?MFX@W{7;N4^U@ zvMTV%_kl-N2Oe1ycw}whk#&Jb)(0Nh5P0N=z$2f+BVQp>R>C7`|Ds1W1s>TPcw|f9 zk*$G8ehfVFQ{a*9fk%E0JhCJ3$j-ncy91Bx2|Thlh?RYTXMPDhvp?|6fxt5d1J4`^ zJaQ!P$kD(f#{!QW4?J=r@W@7ZWE(uP3z2g8U-ZbSz$2#vkDLiSayIbDxxgbA0*_n_ zJaQ@UNP6Ir%YjF(1Rl8>c;wf>Bi90t{1$lRdf<_)z$4j#M{2{^`!+k?E^e2wOWLLE(smiUtm&Dy=n8h%{p*#Y!QRB} zrcBrI_pU8Y{+mR(K;jOwH^s@igzQ+`d;zSSU5?y8)brbowF}yX?3?Yvb`d+yeEUwz z{%5;_N>M&Lzg@s~?2s+(C_CB?+pg`|5nI{$>=@hZciFmc1GSN+jYvy@8Py2fz>pZGG z_q}fKFrWFG_E}nLo-SR&OL-YD=N0@dujKD|6@UL{V+`%HdA8O*hv%3#GI_q%{t4^s ztS#K6wVQqz?G-8ZPqqF@Kj5>&fzM36zZhMpXQDyZbGnH|^g0cpp)`z!(+C===k*&j z3V&VnEgC~_>sdaQ#?ia<9=%WF=>t9IC(xh(q}q5d_jxoOZtiy)7SKk&J{~(87-$3^ewHV?{wz)o>tQuN~5*3j@Iiu z@&j$8O|+S|&{q0UXO*95JN-;MXeaHW-8#qYrG4}Z?WY5DkPhjLbA*o4F*;5s=p>!e z`R5FsrE_$iF3?4~q_fdw%AhNBm42mb^c!W;b;_b_%As5x#+GOzlEf3Dsd!R6C7u?| z#51C~XdzmPR-(0dRy-%#h_<4gXfHa5j^cUINpu!n#0w%>bQRsii=w-DNlX*F#BQ-i z>=paOFJiwqAP$N{;;=X(j*4UAxHutBic{jWI3vz-Sez5**%cSWMR7@_i_0QIToG5r zui~2cO=ODeB1>e89FeP2ka^pl*=C1BEIEp!xd|un6Wo+raw~q0+i+KYiHGn|9>&9Y zEPue0_*4Fjzu-muHGjjKc?)mlA9)-9#M}92-oZP07w_ghyqEX!FT9@*@IgLg-)Gk_ zf49}%ZvSlWuy@+K?A`Vrd#}CE{>9#JAFvPFhwQ`l5&Nip%sy_Puus~j?9=uc`>cJ= zK5t*JFWQ&vbo;WMVPCPY+P~V@?BDE6`?{TFXWKb;t`l+c%UZIwd`Q-j56eg7qq457 zC+o|{WCQuQY$zMa#&&cMog={HX$=32&`J8Mc+sbzOUkCl~ zdHt`m>>^)~$+D~LCSR1@?u=ZFWFo6k$vUMvY-CfU%n~_$boW@d`%9Pugf8F zs2nDT%Mo&nX>z)p zAwQHeRz?h-5sgy0rjgS)%CTX46*85o?w zxx8|2o%ab<_tULYb@qp;-v8Wa<_aB^? z)eFO-8#ip~#bGfw8_W)^JmeSy!Y5@s@4^R+PU?6l}hbE*>sT!HB@aORM**HV)uM?ZskPI1B`*ac#V*Z0uaxd|YLvu6Gd|Mh6e^ zXm8%ob75a(fT_aO;fXg%NxOQkm5Xn|GnAtze!Zy&oO*rS5R&sS_ugjgWy!;6*Lm*s zl=Bhy?Pio^(Zi@XnC=Bz6T`CVq55GWJSlEh7hch1#oRj>s?Ze_@J4(;02@ivn2H{Y z1W9}`06$Pfg-V}_+CiDhCrf||q{N~`>)@DWmnA{Pe(9UsxzifU{^m|SdyoUZhecCq> zV}K_!FkMJxQnzr_wE+r%xy)EDLTzr7_T^-~#1*eUXRzQ-s6WHK%@v2)bh^SVZrkrf z*Qw!OdKh7x%F4I^B2|h^#U(3%kUFU9{yv0SE3H`3Ak;F(Ls*h8y6e|Q4zUz+X4V@i zh{8Kst#GYxq>UCGx7ArUU0zgOln_iqMfpieZ2(qiA5u74c(#I@y&G%)QTLH(u{?)k zSNMal<$fr`{=*6s`Y?iQIsLn}!RB7RB;m@$V@}Z}s&ogpuP7M<3aostR!RNYgecUx zB0-OGcyFgPl;j>#F#AAO^uwo>=<)eZ`-9H&hq{K_)*7OF>*@(8#I4!;!Cti}yOeLJ z`iIY^K?yezlp%cO8#D}hU9e8*)y?{9=B@HMu6Rz^e6CX#pC#l3UajoZY`=77*p$?C ztM{CFnqdd`#O4CoL$rzG5U(`PwNQPiaX1(r(^r zEe=vM*u2kHb-iCHZKO{NQUu>E?KMv8ZkO~DH66>Vucdq@Sw4U{``BaLwvZMI?U@$! zZ{LR(I$W%j4i=QrXF%?y3s2E3E9353%ecT*eyR#913j9Xw9^(=!0afut$VTqFGLL- z&FKr?DP39RB^*u(te2t=K*Cp)f{LtP$OFEj(qoC>bkfEnWM&!)h_vm;v-T?XCOgUn z1aTsYtZ_R(PEy?;fju17j>37MUQOF-&dQGqB*L3=_gvJCc94#{NUx9^-u)#Yh zbX_D$25*kP8AQn6{(80*nOgQ-E`osCx1Xvr;e#m$VSmU+hdwt`9QH67LuwXxV|w=Q z31TO^OQ)PeGOx!{r!PgZvPFIj#qCI*^%(|!?F#!4$sv*4?-D2l5%iTCdeLH8=4lNBkHNUd!UqAw|#Kh&++tU_5*u{+<2A*qu#BrMH5N$(~i` zgU%MDo~mx(e2s05ID(!8#G#-h^ji<*S^Cov5A2DZO`R&X4ts@Qj|6uz1kFkW|E_6D|cv z?AGE|?N*afT45Om$p*z%3d)iM)G-YcCcQ15f9alq0SW_j=8$`LrO`@qTk#wO zJ~t*xa%p5&)bf(V98Lsu;AukAttxK z>cTWTdJTEm+HM0uy;*yv*sjPSrL%iZ4dy!Kq0L3lP*3?hUMSbxs)urOcUsLNUKLH4 zX{gdiz)OH}+-ML&#@0hl{f5v8KL>@a$BsI=tj_}yh)O80Zyd5-A1E>+yOo3Wsy1F* zsH)Cn5jmqXWt-_Q1Q?cU41qnkZlN#x2c7r3*mzzsY)e-5zqE%?-*@SC*+W7&yi@c3 zYA(fe6*(gALSVfG9gDne6>ci4X%KJ196bC<9k7idsoZteyF+Pzr>;!BSIG2(9}4kn zi1*122Cs)6;sT>sQp#c@l|nTNB2lk&sT4Cm_eVBoV>=h%i=U7G`n;>qd{(ErNHl3q zQX3hsK*E?8hF0gX=rtbT(Z?&=EFzndmqTBWk2p1na=P-a2qX4m%viF;fqXT3SJRn) zRcFx|CIhx&W{phRsH=XrEoYBnXtF3tI!X$B14=4XYQh%rlCcG5M2_>;PWljfWB2;D z4UaDbV_v8#Ao@B!+a*%5F;B6vFJE^u5`IDcwmR(FXI)9_taed5OuycNTbhi(sTsi8 z9jXlzYd4V!SQYAg&a_DDz%8f~1JNKK=$A;W>03*T=JW zGdu~`X7OElr~T=rRVHRxidY*u(R1!kFZVMrkBCh#a*e^J@NHuZ)5~yU<}F7;&ak(= z0meg@7uqazn3f9Sz7oiPu&OGltPv0QDAATg4K=};Uc_b%zw}xE*{j$H+9+7pv z0LSnaqNio%!$l_jnYv?J-t0&@XyLB>`LxdLnc{c@8Hw9fcMJyyD1QJ2iO~Khs z;T$CVwwvNrH^uvIid0AhbvFfLkT4g{4<|bGUB$QKxg5q4_7b;x$E1@2{Z)}xqSCjS zH!P@jzkJQ+p6$22N)%vt^Nq>Ph4nY$I5|qaG*ifrG=taP7OWrqam&y_opP5X=$(>P z!>U!n?|HteACb1}_s|lO^aQY)6%le*l_1WhUxbd~g{g=cUSOMG9OYEd0MaY)0ofJc zO9eu-7L^_Wc6y_9&KP@+QxQT8#(bG){PaI5z6^NBD~cu{ljMK+h$c$6)JLRPA6QHy z)uL7M*ZV>S^&q7hg%ZI{bWZtAxq9jtvP~_O>Avdxq8MlZ)?6@C%rNk)w;WlSDAn&S zp3&7+RS#FU{YV+s(HNF*dUr`L|H3 z(j0=C!W_1m(j1DK;vBJ>G9iLxUdZ=q6|qh(`t@HS18y3R^ZplQqVqEAX%z>rRbUa? z3iZl1lAGf02=ta4YAVwM#iD^k;H(Nx9L0y>+*F2~REG3ahU`>r0k4{fYb(rih~ZxS z`$cqS7MoP!5W#{*~MA-q6kQ=qW61gU|X0OjG{|V5O z5d!5Y2}l~nb$qWwSNlafK%+5fq4QwVd;7xvrXFEY@Sbt>2up9EvMEG;eNzV)o?5uY zXGc~~RHF8^Eca5BRhCtkRXDOVK0iJ?zBoQ}Hg7g-wrDnEwqQ1Awq!PaHovZ@uAr`@ zE}vFig%(CnkBfm5jw6pVio+ajAyu!W+fRopm8~S)&j5_MkV4GP9GBcJ!ilEO4jxzC z&2duyOv@XiCuM7bZK9kVKCV6|Gp92rG^aEtHK(u^8(p>vz``wH38}3uS5){)WZhZnwBxf6NBqqEsXt$2TT@9B%nq)njpk^(h<| zjywMKanJU|M(**&rNAxN2*A}fy`I}|3#O3R*f_pOBIfAIF}$>d1B|bxjMj?JH!{y5 zm194b&?93%r=4_U2)tz=y_?~=v^}1{$FQGF^wUyKnOFQVKjt?-mS_Q!0K$JIy5=PQ zPzuAk&p$ER{dsTqR-_BsP#oaCbopR}^We_o9Yn(O4HSwaL@6r7`{8ll+-tBfm*59o)%z7-+(X*54x0!Hr_YPRL3N`M+xxib=ye%CzKTL;wP%Cf)of|%Q@2Y% zHvO5gRaOH1ob8#!yNOhn00Dgqz1Mn?wS8ktgv_4emWwlyyF-4gm@+unKQvdT{`fx#cTR-;%c1o7CzsV zrjzu{f#ft7W9u5!S0TK6_{;O^9Q!yd*OaeYI6@m9)ckd&7hjlJ$A`D0 zua9?^L^a%5%buqOwLU``E!T4wO#6CFw7h!Bs4|wU8M=<4;JdCR=J^7tQ-XC%L(Ja@ zD0Vxg^2+xdoGF;Lo!Fw@K-0Y)@po>-$grc7Zd2|{m2jkeb6B(NlWx~mx@CBA9s9=k#` zCgXsncis9RV}w9I>rS!Y)`?;2^}6s&m5)PHzIHqsx81ZZsNAo6jpkMYF8$V*IF>2J zjbqt0MA=Tn_Pmht;L74Txv3fDAzykN(270-y{BeF*LjISmY zJ|Oai4fB`G%l}2imRr8Q8GRI1zAsAQu=hQUemd*cY|f44);%p#&wx1`Gj6Y7S_9AW zaK1H!RByizVU_kXCp2S5pxgM&M$U+i$%TUMd=Ve}xC?f6t)r)eIF|712$h#(Zc%{` z-3#2qF9*30f9|>0lt%8wZW*6JxhMHg22S-hqZk9b>#ysDN}Ng~7_O={I-YgzG(hNT znDh7ToV>Pv=bZU1pb+Vg;%V@d3Z4Pp>t?g*=2!+ussF|UZ#3w*oqfsLxDQOozf;wE z!34M|-?Q=stG_0BTZyR%_JwDZ`?OFIWdk*fI#f%$N7vZ4>P6C>gA*#LZ%!r;=$45D| zCgx8mT>A^S*C3~tcCJ32Cbla&uL&#}mPGO4(<~N%XXw76Y{OVDVyo}r^R)=Da|R93(Jd! zxKGIG5aK;)?l%X1HQisk?~Sx+OiXit_AX(=JKNDG-STqf`E($dH@n}Kuq?l??|p+!Q<`QmG=|lJU>RiE zeANiV0Pei9>*=WItde?dD>5o(ZC6;$$w~gHFwtjpIe@B~et9S$b<<><1W(~0wKBT{ zOn$N*gn_`@C|Z?*s11~4ly}Yyt;2=8*m`k5?ETj4CR zcec+_7}`%JvcM%bpLLoXB^p!QYb=ABY7mt`4I3 z-Ea6`<_t_JX5$eZ5@9Tipp%rJ^mi8Fh6*Qw>&Fe<=0;0gJCm6AiVpD_cDk-52NRjk zn>J^6%NqrcCeVdTc1%O{*N;BDvzY7D#FyzzZo2BctKJe3H}YmXo6o{i?mY z6vIAtbI{gTd{umVk&iQKW^l1|i5aoZGXv@Kebq2`gDG{nbyAB#6)sg*BlfC=%~V$VHY+?V@N_FxdW_RBU2M&j9l|mtn&z9US31P zSFZT#;M$$K!)HeUE}Lr;P_%}23V9lJ1YgDjl)7u7S(<12wB#@GC|`!1Kjc39%ZQMY z(6=sbb#te{!3k64#rL*8uD=LAkiVJ!+Ggs5_TphG)dKUsuz; zXS6e`YQ&Ng)2SQXAaa9vlOhv>-476%GUkUT}%wFE6l`Y zmrncTzfMeXnSJ@EV;2{Dc0dOP_RW^3uL^T&6x`9Q7L^-5kZ;1E6myI&ll*GCJ~pcE z;ijdCq;*MuE!^zXe;ZprDf(V3za-a_SZp0b&{exI<>%AD+S-p*8stB*5!_2dZf#Uc zxy*R$=c-d>Noh1Nt>WWXuZP3SasDZkTE=JXFT`_HDswkg-u9!$ls)~s3~ug%PWGg43FL0|L4cu!saNeoo2NO!bysO!b3T3_ zp=|Fm_K@rwhmb#OYg8rv#2qh9=)aoG6i?;f(PkeMfNq6SCuD|zIq@5L9;d(Ms+LXF zqdIi+CMVgs#fUDbk4C9Ena9FYL+!%f$-G<&4+Oi^&CcF6-n7NS8TUsQ;Bk6}Zv4mb5a!w>x-J%a( z;?_57`^^nCOeny8ml&C-_%jUCfA3<)R^z^S^#GafX6yw$Ks7GTH&IcoF~89UeV-OA z2fg^_K!S66Z5EKsVW8#1wYLJnN1*CxoC^?pUPzWxqXDf*9~EA%e;BW^CA%QHtn*Ut zMJZONw+LHwRbedS;wqZhkBsG2yX2}}(P{t`9l6Zc3`18;Y|WF7Yvz1oDbZJyh^Wal zRm|5e^~QGLWkzAOzH+wmjkPM7DiyT*TU&t#9r_!!^q%)8yFV9G7tE!$TD&2aGK0eD!l>) zD22llk3A*sep%<*d{<3<%QHc{7tttKYB@1Hf4^Vnn4Ofii_Pd|G`^nb;X1fpiIK-o z*eMT-?|{C(L9et{j*nYU0Tx5;OO?VAlX;EY_-|Zyui2;2!F%!_wAxjn^Hmy}iq4jE z0bi^wni1ALYTxKh>?t0tR}}3BCntRl+LchfbKpChPl?*&{;I{WZaU+_W=B*LT>Vxl zb!D8|{qT(L>cf>{B@|C}cE;;T>d_RfBvlTpeC>ZZte^B7Yj-?yN(DF)*f^96H?LYaeEwwu36!m0B< zwQOcrrpa<>Jp>e<*SRz6y-(!wB=~IGH0SHljw0ov{r&BT$DxnVo$=@t%}iBPtQsQ> z%zG@fUih5CvM04^f}^e9w0ky8w~>~C3Vq5eM-KNo+=Gx}$m3z+O4B4Jw$l5vs}?-l zQ&~bP?)+YPyOu)mE7Clu21(jXH92zgWsF*=UIs~CZYsCW*?Nhu<*&A)pPr~=ST9Iz z8*FgP4qSVGUlk4`)~cX!alyqV6epxJ63|SEEcu%r7d{UIo8xO~cf*#9(l5U)w`PdO z-twN^8&KSme72ktwLM;&78==?Url0H?d!i`y^ZZ+3c0WSVOFAcA>|wO3nI#}fU$ES zB|AfR|A4ypkUdUfT@18@EYk+2^;X|N)zKRqcp4oMHK5T6%ehu0mxl z&iAH{9FA18LbVggmcm-mKWw#^irda&2}5+tt&f5wX~=-zX*RiY?e^Q7K%1jNXQj@! z&RX5gO?=y8uomw1??dh(8~4mE(`e%bE1r1-JiU_Z#aiz3E}5(D{P0b-6L6dxJ~bB% zI>a9kXko+R5hZ%+05pm#$SnBvA*R&JAF}ETSea){hK2I#oQ;k$S%EwWcs_OUx!$Cr zxbQCW>5N(I%tfFM(sZm@`>tm;_)_HdrnMA-Z>mRQ{cKFaM&JcKA-waPMGkuNA>Is4 z3u#_In=R|dA_x|8vmLFMjD16l(6176Cr7<`{O zLMw3ibg6U2Usp{p=&9A@2t(ShiY>%VwZlG)<73fl@16npG$z|ljG;Fd@Y-ez$H}#Q z(YVM1;<@T_815DM{w@USxJ6{YF)zHNai;&aDG>v$gOOfKdZ3a$t@pzswqWOIDamL_=iJa@q-jQQcRqQ5q{ zubZxER3V+-IgnB)^DX=Em z$Up)r!iDVJ1}foF`{6BwTFG!l7-LDZNzgabM}wn@^P8rMyP2l|v2#Rf81-o=KZE zD+r9dkei|r`P*aXI!f6RDCI@%GU4bR!$xhL11-q-5DNY3jkx|AF6XsapWDIRs`s(B z2NPwUkm zJukdH#WUn&F8&JH^Us1Tq~Nw;JX|9`?#!~J2d!KpcbjRvihB{qS>;mT;nFl(tW)E1rApHmmN z1@5M`C=;~PBx%yo|gI3Gi`r_SsMw~phEoW6J? zuhzY^y&0w`RVUM*%B$?S*!YxLtjjbyhvWbncqmzS)f%QL&wuTmH$Y3xz z3;91wJUq-Q?sg{38cHUn%*vlWn~;OS%<9_YtmFW4HeGUNC0kpk#}gKEC1yz*Q(JO2 zwttmHw0YP#M8pJvtb&3foPzAE05MKZ5C@PI01_2tV-sU%5#;-S*Lb{u*e5F|69;B7 zD+4DJ5fdX@V-sc>6B{!pb81{>(Q3K*?s0<_r{%8=(&{L%U%V4ykUMBwjLh#O97=p*Q0&43<8CVKJW;(6p|L)pu|1(Z5r6DYa6Crn9~|sYaIinY@faI_wta#F@B|0o3695m|3`m-CpZ94 zZ~&g*06f6~c!C4)1P9;=4&W0Uz$Z9>PjCRA-~c|s0epf3_yh;=2@c>B9Ka_yKu>Uh zp5OpI!2x=L1M~#PV=no_m!Ky&Ku>Ty=9fR(K4#6oX<&}W{{EIDI9UJC*jNDn7(M?Z zm$0z_*;xM69%JM0^*A15_iq|2>tk;JLwk&k|I|1+*g5}OE^%@&_+(|`fQI}yfd6aQ z=J@|UR{v`>HgItI*8s)I!NCGTLw^5WR9*}X`M(A&7BuAl3EP+z986ru|7p@cf6FL4 WSwEgV-mu+r+lT7HbhM%gXO5} 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 diff --git a/test b/test deleted file mode 100755 index bb0df00435ec80350cfc7400001ba3ec27f0c4fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92165 zcmeFadw5hu(g)l#$w1Hu0Z}5L3>Psfgm4iN5C$PQXpqQ7Sw)kO1PF#CCKE(Oja-x% zqAZHK%4*gtDr#iaMMVsP1YOj~%d+uGRCFhj)vTf$70LIj>gqFRCUXM&e&73i|Ln<= zsnb=}Rn^ti)qVP$Ide;D+GMxOrOe@0;}n%@y80NUKb7)+%tgVCQk|4fou$rD9f0xR z-^Ub!`pm!<5p7_c@WlYe;(wG|BSyJ>d}3g4jaCL43kj0G(BYF)4db`#qJglS5mb+C z-S93K0WMq)upIMb{^|t?3^z8ocuCd>^G47NXL-;ytyMs z49U+KoS#=vx@7Q@Q6mSB9Fbg7m^_Tzod6!f%v9sqN%@YO6Uq$w^0n z5{ib*@B}G!5qOF~8Xw*8pD5+y0Z+t#FZ{>jU%HQdO6{b!X`2&NUsnP*mGI=BzP}yn zl$83nwC?xEPrQE0H7^6@c$@(vNpIwF1tdnpuYe)Z@Pi=08z}_kF%I~v9Q1w*{%G=l z?|@Hrkn@xSzNZ6zodcd?#*6>R<7)^1JPgKY_D=)e8z}_k?hbMeI{5hv2maqV@IUN; ze+s&z**V{VKM(v~{6`*-IQZ>O2RUU9_6HpJmq1}OJD+!uQ{sScaKJBhuz#Kd|7l`p zy3DJ_ABV-x%mkl7G290^T`~LlKFH*<9;r%g6ZvHkauo7$NgyZt?6WBck5m~`W=_q> z$t}*EpH~vdEuJ}bVt!#k?#!&Y`MD}1WB#JTf{cM;UzoiZgi9`-Q8J<=?}pq| zF3l*JG*r$4Lr2WbD#^>vD4bUkfV4$ZvLR(?_JXY9j6iW#UZ7-3c53Q~!lK-Q)bxvq zHaufWVM)d`AQlzoPz$n`WMvfRvQ|&C=}LfVuE`0X!MVUO=6)WJyL*ZgELr zK~{cV;QEZkDNr#ZFe1CKG=Q^$>lSf2zhp`jXH6$3iBpYFXJ(|%I448f4LP|5Ir&i? z9i{HfjF~B@JrdEO`!OdgkR{EeHf#TKBOul^0S+O5Yi|_hm!zgoo<5^+Mh5wPMgWFK z>1K9esmQ6PObBQPw*glm3o!Ti92jNIbl!eZ0C z5rHJl$;nS&Ohasu9$h$_pPijiLZzW9V^+a+dGNyY+>+8oxx|(&gODAR706wZ7f_3G z7iBLhLO&B-2H&EryaILM#EBWhlT*}%X;Utkm@zDQSn@e);_TTIE|`)rGiq?!-c;BoSOM6ec<(2LU`0`n#}YH z8@;q=9+oSyYP&^ugGbjVdH?hLHCW=rsQ0B#;LNpH?zq)Q!r$_KCb97v#J&bHd5+dc zW^F}$iFKI-6s?U&k2$8{Vv0iB@F8n{_YYm)P)TZAkbs8=lt2=2&IJ+vmqM zHvEZ(8Ss7^p4R5(sIuW{-EEEyHaxAp%~5T`n{_wQHrw!KO-uM18{WRQ-etqn8rK|k zHoUoJBwD=x1Ah;aY%9dX;0YCUIqjaRjvJ`(*QxgV8j$TXI5xhIvWS&chTQGz1#GT>gg2bh*=*z~wKfOd;Q> zxcm{7DbyRAj{tG{9x7A%YHZ;0J5;8SZ>;0;n^dMyZ>-_+t5iOb%GF%nL}d!?#wsp9 zO=Sw{#x-1igvu1kjb&VZfXWoYjYV8uOJ%zJYRu&F9aN@JZcOL$GAdIDH~P4I1C=Rs z8&kMkOl1n$MlY8aQkg=vF@ei-seBrh6_>A|GKFAc^KY%KL;pFY{DZ6g`mBIFg@96< zhaeDV`3ENf_?NeI_LqNko%^con~6-74qf#Iky;zN^eH3UW-1x}Z7nh2_m{uv-}cRT zzpKt)zSIA~ky6xum3aLt_gMA6koslkzm4{&(yp^mGk7yP^s1enmw|Hqu$|)Dzx@1B zuYn=Z%QB(stT!6og>~g$wbotLcq6JbF2={aH6&t&|JJ4@h;D!7%Cf_)t^V@b;BS|4 z@eO#3iZ{R+{>pV+tXx?Q?A8|Y6-c)bOXbS zb;a+5^C8X2#mbcp#MxOaev~=aQEgaEBq*#Si(xQZ{NZ@Em`Tt&H(c~~UF7W;V&%$alq`#TY0fU>TW~gUaUB;cS5ky;?JgGo>sPXI9o2@#M1sW% zCClP7w8czEz9??>` zSh+HV6buptPjba|gbP=&bsTp&6QH0_D=-p8-!xG$K`Y>57gm;eROGT%xgQS=px zf?Ko#E>^D0Bn8t&!3wQ_aN!Cb)C!mY1!-D=ktq6Z5e27d1zfCLSwsqEi-P`I0pXy4 z!dP51S}R}z6dY_}1|w1Q-6aZM*HXBM3`YvC76or|#dU-WSMcFjb`cYx;0~?8NECe! zi-I{?0T(M*t|0}vq998vAY8bDC0YR!px{icz(^E*Yq-U=!HJm4(UX)bAw^?(G(D{e z96Vu!-)jQ9ER3*36IceaFSme2eaM8B?@OCjX~VgQJWg#|C~d0zH<_`H>sD402}bFO z<2@SUPhQHtV*-koFuNuAd0ph%pf1Cz1=WkBr6*yLg5rL$!mX{~BE|?=Q7Be))K(DA zs?QB+(hXq(6ukcvGZ={}TK#vT;7?i#7m@r)!4gsM1Xo-~xNrp(S^*QFpg=1y5=CFD zDDY_oTtrqU1+1x$c~6SM*&QR`dB9>bu(EG~m$k*+p`F}1;+T09q# zJb|@(@UK6T%5{W;X5Dq{ySdzT>uf^36SzZ|6}H^UHCGxPU+ALduMM7qB`O4_OK19Z z-=;|MJY5_w_6^kbaS^!}SZk$lwziLOmN>RAK_rTZ9}Y1Ci-2)6wKda(`j(c$MdV&! zt%>~|uDFhH;R>F|q8b<`K;l}hz(^E*8KNLZE8rqp4XiZ}=V=9m3s-Q7R=@-(7^)Sp zh>*TQs)k~WR=`E%UQ$pY!4szy5Dp5oi`hm0)P2ANh^YI48H_~HcZ(=^L`&f!1|hIp z*NK8Bx#Bv)g)3OC6)*t`3bg_jVd+b~i_D+I(r4Y}uS_l5`k=_2#{9F&!iAp8LQ~7A z+NsQ;Mck^b;PzFfu8~Mz&fM!b&MH%@P5f&a`$@*zTFZW@uCu~^@AuS}S#?lti}`{} z(B)WkS5936VzouA4W^`1Fr;EhUK?D+byHb*lRk&u+TaDaiUSWUs|}9S=ikw}UmNfp zXbqMDGqeE>mJZ!xQ^|nZU=N|q-GuY4kHCFz(1uU&+ke@5q&Bz>mz9vm zzCguIx>zJ*?onM_BgO7)q0FS1`EiMgx_a$V8+=F?d76Q!yL3^zsx~+eMZTVB+>a|= zfBAOQtP!~jVbj4L8fU7fga06|ZHUh-;Wug9tEJlTDAi7}ReMADZUkTBR7-1vpbs^N zw3;@21TLf1tnkNbt#wlE^(fUIwN=|Md>+!e9as6f4N5Zl&9>@#Nm3iku~qLPd^^F1 zrZf+5lg3BS+Ut)}bUO|8QU5Isv;Lamf+F#Ud zNfGoW8|!$%btcxwELNYOZ?~~d6Wo`;HC}JArVDzGjWt7Xn~C)ji#1cwLv5^uf~zFf z{uXPIpgY)DZxP&FVr{`jjc!(%pg;aLmwFxji6WB zSl<`i=fI(ptEBiM`mK>3U(oi{3HoAN&HaLV61c{bEY=1=du^=W32rH|euIl-Ewx$D zKmIe+%2vT$N~~{KtX|6A7|QS1SceF1AXs6#k|K3u<4UV$ilEonYK|9N6L5{gELNYO zb8W2C1hurWrPcU0Te0rAYMLKfWyE@xHVB_GF|1%Is<(%@Tq0?k2>byUW5U1Y5zXfJU0SCL8Xy;Y?np9B%kbZodOK ze|h~ueAEVCr?%d@gLZ_jylOjb5MdK6q5P)9<)tmlZ#wKMJ>%A!ur9|2)M;K+@zW-w?k5E5M1 zYZuVz7TAtmzC^TM_Q&iR!H~=8`AwEr;m7_UL{z|ceED-35k=_B@ZrIpMm1_a&S|Zl zv|M&HEpN4_A^KwOEWpb)|N=WZUSpGzrw(CF+0(|B)2ZIl}SXDR<4TF ze_cp_k&}Mi`RLzt@*kit!GGSHfuXv<>VTZpEMEPbL~6b`e`R_KpO>e{9qgyia2?i( z%-zOyIB2*x+*nTN_Dz^IVWx>4xTdrY73-)Yp5%(P!QV5aC}FhU$V&zHM`A`fAu9-j z^%_i?QvMbd(<;2C+K=HbS5Bz6t z^Ox`9jr(6>{F~q1tq*^f=ijvWbZXFfVE~yZBW48>q3LV8>UJpb56U$Vh**mytDzKfPb3JI25j?-NFi7PFAKT zGJ1JUqL6O<(js|<1f5(fQ%GH2PER7zDh3S|>4T_Lo<69}Oj>{%VKeCv+78v@t@uEM zPt2^&c`7V&XJ|J!i@7bB*^RklNeUJUAd$I5GUoObl9=0~&284^w!mECm;6uJe@7Vx z&njepz;#Qg^D0tT$s7d8b5NHR&(T_d37i&brT~%WB-G_TxRe&$A(j+AN9OcbXtANq zikUXfw8~5oMuKNoVMz%?YJ<%*DO4b(nOWkWgb?Bxyst59jr7oqBu{o6ny`n~n2*IE zsekpETYYLPEwo7Fc+QCEelil}pLMwgdmQ*DwcOtwY16PAS(Dp>0Mh6SHJXgYWJsfE z7Lrq)-&I4mD7Q7l>J(S!uZ(x=s=C?QIU{J9TALb#DcXg4`O#cP?#Id3r+Q z2JSWT4!Rk4K5666tj7m`PKE8kml_yJ^q!2W4elY-@|%LH6oKy0Lq-dC_lFo|ykz2- zm_>J|%3;OSAPk1x+?1(=HQ`V()u8XdR#MQlpAkTLO@A{&*&jc z2=r|_j3Xvag{a8J-J;W|VTofF9ryRcQ`Hg<9X{o-Vm9PKkwj8wBeSQ%1l$8>=h*V# ziG&d1R6fTJtxiz`KZ88EB>(0U2vnB>RiSjo>?0sXeLjH(TOODN891E49~`$jtV)qZ%Da~rq(c21#@x$PFhYI`xhtlV}O zvu5!0k4Vvu%wx%If8ZWWZ9c}_22VyNuPAH8qvbLmD-FwKrPOA7E_2g87rprUQMc#V zb6J_ysAJ4!)1p;qK1wbdiAvFP*+q7WH!PPezo}UTdZ6c!HaI&%3&*h6UMIn-6Mj{6 zDl=)1n-!?ZpZ5C4sI$Ahj+4%=&N_#I#7(KCG$N-yEFi3NdNj}JI)kK7V&=W2*yAxt@;}+gy*P5z59~kCs5&zKHR2iiAN(!1R?>U9mPe znHG7}w7b!?K%PNg3M2Gf!w&d~p3Py$bMZ-R`b|McOQZKehTf`SAKZsxTKV^B<=>L; z+-Q5~dS*0Ajkjw5!MsEgp*PJ~@MhApts!PgWqd44C$E@2w=>9#)GA1Q0k>wfN`zx3 zxdB~?Ig!QDgvwlbA}-C<9JWi;-$>#~H^M(8WEbMd%K~L{E7ir!^2jX_IEIrV)~~^0P9@I;wPb^RU@P+d=}`-Ord#~Ga#1O6*OjAFmz;! zHZw%q4EdYB$ZPQ*EpfMLbGRjqbO{faX|>uDVub9$(g?@)NZ3_lWp|gZk)9xJHLHEP zP-xo<@*G6Sg@v9r;W_J~VkTN+)-R^b;?J*-wV_9!EofQ`cB0Kdgipk5@k3qsY;g!% zXfj)j+JhRD)c^C@Vj>yOvC7dqg4<%v7UQYd-fZDG;;*vg^01BNrM2^jzxRC_HG0(6 zb9S&s{M%e?Gve#{o{I8^kNEY(95&+j(nB3#BmPZbj(Nm?dh`*0C+}H_7aM5AFEto5 z;%PdHc3+7`jq?Z}Lx%ouMmT-j;;19M52TxjZhvez<%nN#yNCx_Eu3Udqb<$;-;Z$U z!3ejeXe6NjkH+;JzU5`*IV-DCK7bbV4`ou$1GPc#yXHPE<_F6w2Tx%qpx?KULjXI& zwb+ttNn*m7)aEYhuy81?4`rhE^=#hVzMfs8=RJbZgZzh_+(wVFQS#KQ+*Ixhw5@#$ zMjpk2C1SzNVnNC=S+LNuK<}uKlaY2f>C#e=Q^gE0=~WevrAe%bvH>Tkb5IPelqL{S zuR^3f)N9mUYl{-6=o8zz&~~5N5B<=|EA|>pm(^?o?=bL1ayl97NBb!M=m%B9jKkz;$v_S;eQd!Px|usf}n^~6)8{xLF>h6P=c1U$iN@^zb~0@VHk1S?^Ni;CWqt3!60mY5Y1#4W>a zn#G&jXWfw4X&S2(_~pilNbd1`)$XyYanf+=oY#D2j%F(ei(IcM2yz zkztFBd#RBWVz{m%3HwmCB-nb8)`PXd4Ykp!n4(xdJMTkl5ED-Oq4aMrY8s6GA3}xq?>s!!7QAvN@V5Sy465@fnV!g5 znlF%Q;z-i3pO7S-kN=3;VS8$;Nt}+XKas{L*EP}y>#-FsJ`U3v8AqcbF~k?1=dD>R zEGFI91r61pK8enUJwL;@yeWm7DU;F8)K*$@AY=2b1(UJA#4{&hVL=_vA#uLd+d9~N zkcRHz@mvk2YI2+pOgh+WsHmSjqNxp>c*YIXP_QSX#MiQw$fKbP-KlyTx&eOmMee=A z5KN`|#x~A53KJvj^4ePo&71;W#9oJO5I#;@AE7~bFNz_%dXilcgOG&Ul5d;DPYn%o z8zyDCh{VPR0^QbAn`i06WA)e3L{DSU*7}WR3|%)Ax$G1jtuK-ByrI%S+MnPeCY9}2 zpxGl;;*lmC>+z`svRUj3(KW(snbA;zM@#Fl{a0^o|Ba%}Jor;C=+N1`{kLF$_yt{m zu*n78{2elK^aWkSnyuZ@@*l_a^N}%abq)yVoRDufW4O@K$L59h{rwk+u=#rf7mwy| zy_zlmU-=tXohrC%UsQi@+7|BbKZ8yD{qHy1`a2>c$hbl#Fl)*3Xxlirhl$%N%NI4I z;G;f8Y9S_gG@g!y0q`v@T=li6E)UaH!5$ig));6;$vot#XE(-Bv@XG52^&Qg~ixJ(VQ$r>#geyi3kWz_g`@_JpF{VQ|J3A z`R70Ib-4Y{aUUMVezqah015eX|3=0m{Q23g+Th(=tTIL{?(>AoiCgP#^(jJL9YT67 zJi0AJ|gG*P=H3<(uC(PpC_R5h>T)V8lhZAh}G zpYmO+QulHrP;uT~s{x5*>zl7xWp24j1Gtfq?8CVzGvT4JguQz9*wjcv}O3EBhl44$%f2Mr3IY6Zj&0Xv z6r8ea>j#Kf{T;oFw3uD~%Go4+mk#)ynpg?q)&_}gFLCP2qEfcp9M{o2}!x$Y5L1Ii)h z;Bg08!n0&bXda{LUr5ABdi;B?)r=96+13(YsXlz1F=ep z+@y=2X{S&wcOI;7Z7rv97c5WrwlVb7NJC#GrP|Q<$!6RAkg#zVHbPUir4D0`Mv_c3 z?7VW_4#REoD2&G@pjdqdZjsccHnDT3QZl(8eUBIHyb1U6z+J<)T;4?AHb|^CAXYhi zSp;kPl{7I&ZSeD#TU(c>Hc{59tMGZpq&Ddl=_3cvrkO#wUIUluI2eSx8?>9L{qcrw zWxdTOVYVB47a4oOY1!LAyX5GHki98nFEuKJIsm4SEkj_-ijM<5qlx=HI1l=yJ@xkX zEZZ8l%p{vnUqWm686auiCqPJR{srj~E%8&XLNC-{S-KgfZH8$k6U?QW6}%B+96pUu zlrK1ku)~8#7-cHm_zM;FdL)av^~L`zoQJu65+U?=ST)CR;?{2WYeQ+zIBflbM%(gi z5^S&EI?-zS7cWA99uYdX4u!<68K6_I?f}(v*MMmL9m*T=cy9q(Kwc)E?0Oa`qjBQj zpa9p>wA)&`#in@yX|~O$VKG9{M+SWUA(=O;zGAx9pS{O_o?gxex^G=zwZIEGjgKm& zjG5q4`Rhw)(Omvg5wD&3B?1*Rr>-PCx({FKvNw1LWH!D;+cESoWQBgg zfVOupk8OIQLmnpQXxpksd=>a>q+tWmP98x()CS+6-9UM=^3OQOXzIT8e#^sKH$mYf zt*|Uy;W-d3es5gQeGtT_I+!DUV0%oSwpH*oD0q`r!}?~&H$Pe3pbZWsg1^U51FfF8 z1DsTs%pC`Na6P4ijq*a7wCYi+1BP|~Zf(WgT~1tGR$dD)+B#02e1C>ktkP*+R!$<< z3uP!gaB#Lxb~Plf3R{+D)KwAUF51J?qizpuvE{`_UkI_ns@mWI&8pV{j}!B)JE+$~ zk4HN!1?JFF;83+$3Q$om1rng5y`{j>zx{HvC86Ety7>KnayRRy52%@Rvx@EmU@w3? z9eS?oW3&h)_SQ&pEMiNF|K^&QSWBfcKiAcXdkOlBK6vGTe))NlL9S32y| zJEiQKGl+{Fz{NK|CaU$wR}c8Z_Q+Q~m_v_zm1FfE+Ev|#QsW=AYvGnem|=h9tC1d$ zK-=x6M}7Q@zlbkQcnmkSj{f-9ol!(bJ_`1w{^Ae}YuAGy((2vzP*`YovaXy+LUUL{ z{H|THi^^X)O~AAj#FX0rX@K}X{0x}`&K#`&;kRR+0xME&T7mB-fzKPT3&hyuL-6(gSx3Qxjwl+ABolqP6j8G&a{Lb@1 zOk=^h8$mmUJI{$UEI7#7|DAZ0kkx$uu{#yRE_l3X8+sTW$d67SuZOOAe+O=z(aah^ zceVa53d`TVKdk>=q#_SnR(HNuXYM@fn=NfZW*uiDN=z*BHY!TUFya&>E*&x)BcrW6 z#>HR39txTM(1^RoM-3T-i{3oF$ZBIdw}PgENn21u{WXA^#Xhd1;z=lmEEvN?1Vi|( zpiG_Oj`>#5=@6rR-_HHmzhS7`2GdR&`D_<^<}WCQ?4nox%W$_3;1u*fyo@Usifx%2 z&cdedA%i&v|6W)Sc-UHXW;s4o|?TKs^&3_1?+F-0U zl2&i)Y7i6jnhA3^3_LA*$2Nsed6qYK=#IK$d(7>*cE>TcM?ywV9Y}q+oYS5Gh8O3F zKVx;;?BZmCKvM@#gP-v57Mw*>r|k)@ojgCijThA7)wlG*TRkC#+Fo9I=>J8*aZ@Uj zR-y}^Fe_0i>Xqni!0DiDvnge4Gr14z%B)FQe>R%40r{Z{?x716 zbTqrC8+6D3sumQzyGC==28R=wzKulh9n&@T(Ip&E6~08h`MRMT8=vwuxAQS^=q+x! zmiYd02*7u!k|?1GQzB0`^#{A#aIu0@6o8+S*5x~9TaRa%E4hd-Mw>4(*NACcagUReoVa#zhambbe?5qtABNZW!FjEIG5l%e9xbHvJIQGb2$wuqSCi;$Y zXn%aTHW^#M(na{5d7_ox5=>;nRg|^ONa1&)plFL4^qO8VnQQ;~*0q1V`22hd2aM}b zNL|i%e8M)A?*0**f7a&KXOHqFaE~^!{sp`BZW5EQfYJ-Ghp9c*wdD1!@Th$^=}yR# z%f&|@!)a)*klq`e#5?}4*Z)RLFYznZD)}YK)EPgZ>Q*m?${X~BrXbyBrMBpoEC-kQ z*!d*iIAEMHn%~$gKKPI)R#Q)qeiBVT3`2TuM8S5ATp_h^=N%lMax#e6^UDQG~1P;0|>sAx$|OG196&OA#&8DW8y5$Kz>#Z}jm5j3;d^^tJlzbSe8KWK%k(%T{a;NA zsZBgZ0dIk;T>^m_cBJ zN!ZKaCyQVyXMqZO08$dw6lT%8V&~)B-dox)FYN@k6@?iTg{ig-_7Uw5>P?GNxnrz& z|F$ZW0$@1u8xX?!J*i#3V}Y4s9cPIgnk6QoqP}%OMLkPo0_QMG&@`rRgjCErjFH_5 zw=2SPhs+y~M6PC9FjeT>aExz1x`E<=q*eHEqk~_`0U7qUA3ef}g07~tVBH175U<+$ zHjnc_9DD0eToJE0W=L_#=sOT0{N5kR5$2m%{79~3jjUH_^&9#2qwm6{RHGR74J`T% z6N)hw67lw<^37JijixT7rBRe`f3Oc&1TU4spIwP~5l?7A5%RcowZ5&vtzTw=FUiT} zItFe6=Wpq`Ww77M>|QIg>x)2K$%Z`(d^a<51W*P@1UnJ~UG($yBF=gI9Qh;KMr%QR zzl3gv#|epc%!$PNr>Q}@mBX1>b`4@5vK(~E!{Q)mp|QK|C4MVaqRR?%dnTlAGfyR{ zcw34W9GJxzNWA>7-K&{q6{ME8r#B4drXV5^N2ZwU}#RBLuM zl1Uj2@U=Vv+pZ?>B7_j%=5uR(@fpdJw`v^0W`1KKO<1t-)tiwXt+%B-PPNL>DP%iT zWN;i~)e`=;ltmgXR-s#Ump-e}b*PQOLt7krPtF!$9I(ic(O#Fbo+i)G8w1z?H|IM_ za@^#HX~&V@7yuvQjCKHdD{`S$jVMYDCK>DBLLBKUQ*h6Q@3fFBSP0d&y)ocSBS2bS zPBF;VqAuTEWsN$Y+@J##7_*nDiDA!=MT|j9Se!PG=Y}3{nt-5|Brt`pEc9z5;8%Ld zj5R#PdHhvYikpPSr#L;4dk{F-YoL1=X0HD2K`Lwyu4IVxg?AITkg8VLl!OneT z)bMB>i@*rIFeRVvf{-=%!UOj;HztR$9P~8Mr=mfO9=;7bQgweIjq<`2Gdp-WHPEQ0 zLCIIPtn5ebAi8mFT_Ryznps75=k$n=w$}ukDDGI)P8JoGczy*cET0_NM6F>5z5M{0 z8Tt;j+;K;%AXFiyTQCyvZ$0VJjRp+TN?3Lzr{Eu>wQYsZ!`o)ti;x8rvN=Cx3m1|W zcHu5mvNR;vGxH}}+|j>^$v!u;UlK&1y`|`)(D&Js5KF=NywPYq(7KCnK<^I@!M!*8 z_t~d|O&+kkmwWbq^$o@I$oS9})LGmX>N?&JJco+5zOZ&>&G*@5N0*`So&amWi zac2wluk$w)58Vs8RDFPXY5M1?6aH%kKr4N7^mCXyqV9o-(sILoxiczmkj^kd}DD0Dn`U^+u3;nGwHk_J0cwZ z6_gTNj^#Var$Per)*_6}>Hp0)7UM8NF*3tabJ&-XkEI=y`yiyWfrowDAz#dkWs@nx z#(ZpBkIFiY-kYm^-OfJnr(m+}1HXr&Z4lBMYD4?AeTD?qd zL#N3#q1d*YMA^QVbL1WxLv0+1S!%>ObFF~^9xf~TSGHEN@^D}2D+_oS-`T`ywQSSY zw~fF;s{tmh)S(46lpqmS$bD@QyPN$0#C3I9${H{h{% zZ2QjE7k9%KdIq|X+ybLp3B_SS%6Tq3?Nv;qx32}>c2fqPwyo}Yn&e5-jB4@zN4Su* ze2{|v2}^hRhlPqd7a z<^F5r#?Yg_?0e*1-YkG8qVF3gN!}n3?jPiBjWClTDXfP#tZ#PkM0hpr4x)=AzS%MG zhwzDT3fN>KtkgYYF4m+M!hDSmrD+|$Z-1p|9_>z|N4wD!t_2%83{Hdz4v%(|P7}V| zq_FU{9=ZSSZH_G?kl(M49errii|6Rix1axe@(3zn{m7@a!7B)c2kG_Lb_srQ7nx{# z=Z4JPS8WgdVBEYlKWyi~v3^3%U!FezU#(d>01K?a*G=`Rw94~+1j=&;G^Bxu<$7R1 zv%h@K06ZMmG%D@P-zJnFnNt3vf7@>{Q_A-Sk0-S&{~72#^ke${H>5GVgk@6szbCYI z-|t_(-Q_>;VDUHpia7(2!Se?sq*de$NKC_-H?1NtAStb4=>R<9zhji%o2MU7#8o<_ zzqqTmZ^xMnzeP&NWfP`P^iP|OIT9Ca!P0A}M$Sqds_=V%F zYjR7}rw#J(Q_X2w3mHHOY z2e<&Y7BT_PLcUxBI0>*C@EyQ-HP@C_6AG`%mFL{+yb}; zupY1)u)`au510Vh3^)uh0l&an0GI-}1TY=&0l*@_eSm8Kn*pl|KNUfU^M; zaNDyOFa_`(z}bL@0G9w(Y(ty?egIel_zPeIpbr~8>J-!i^a9=k=mV?)%mh4sJK_v* zEMOJj6@WE>w*WQ(4%z{~;g?`11114x0{Q_r0~P^(1h@vU_gk zS1+Y{0*(Tl2bc+123Q7oCtwxe2EZD?O@Ix6HGrx&0LuXP0agKa#1nBffc*d)07n9L91h^1z4d503gK-OZA7J7Dr8WX?MtL`2Jz)G^#4+$|0LuVJ z{SEmFa4z63!UF~Y)Am8%=}Mjacf=834PYkV9>6ldqI%Q=%={2`0_J`Uc&1X105${u z1#lGP8~|(q{p!!)r-4e{4(J0sem~j`I0A4LU;*F;Ku-hY0A38(3>W}RI76vd0aF0S zeGdBpX9F$){3~D;U^8G1p#KZl4_F15fCc_@fGL2x0Mh}#04xGL@k{s%a2{Ya;C+B~ zfV%*j0lxxFKs($AP#CfV%*T0RINK z2Jj2OYQXOR>i`FR4Sj%<08`FJKLVx$p7js356~Ax`v4aM)&N!kHUQ={B2NrLzkP#x zfJ*_>0Z(cIeuPrf0h0jd115lfDc};&?*+UcFyWtw3&1^qLBRNLQExED6JQcxI-no$ zX21o2-vX`y^nC~W0U!7t@dUUXumx}rU}CaT4S=Hn$NhkK0W1J41AG{;3Xp!EuLiL5 zA+!TDS^bihvlivXYa5%vPoPdIJ{?DrGu0bT*9QZO$9dI2{9`T*Yp z%mh67-_Q$q17H>4y?`}d0n=O1Uch3&1%O)tR{=HyZUF53GsXwt zaKIp717N~1rM>}70c-(G2kiC>>;{|&xCZcQz-qu^z&gMxz-GYb0279zK41#qalfKI zU@yQTz?%W90KW&U0le)n^aAp)8lhjSQO*P$`y1>&4*3N~cMX*5hUv<+B*E1yzGK`P zmr@vp3MpCzZ-q`bPC6${?woj0m*cOCD^ufpjyY@i0Av`=GYOD>?=OK66FMi{=AP6! zaY|<{l8hYu54o?kwVOqsctVG%P=qqkSKz-d=$-BKDIxk}z$bu?sY>Ld{;Uw4(5@TO z)3^m4W6HYvRE)hH13>@g-qzM@0b>Vk_Gud-BXxOZ8(qpn@!G?%9z!$%RTNtYul+h*+p-E+6aCpzmEm| z3DBMNt%pAK2hsPBqw8A@d27KRO&|H83G!Bhz7prLKilL{Ki;TqC%gAT&Ntw5il;-M z*Mp7}9P(36sDAet;gdR`0f|Aiqrb08<_0cSgwf_^gSPIjyZ-3xj& ze^5KOfZo%APX6i*dUw#-UtJ^YwD~JG7P$s|PW~DIdM4;jc1{944|JsTkUtk_Kad^t zLy3z)e;((tr$*TEc*tL?A?FDAmfGdGuVV(1(*!wJJlNWL8DQ)Po16<*$1IPHxhMvl z-2afX>LF))4}rcG^wD-bdYEwBclRLfL3i@U2+$vJpp%{Vi2kc_9viUPNpU(e)ZV3# zvlVhMwS@e3O^Ci8^!Gr=)DfcRhv-{C-`@`X6VRJMcZ#3Gpnn6pQ@_mty#@3Ec?jK>rE#qtVIVv7jFSo&8;7vopfqP2lSZ zJx>0P?}#-N=uZ9~1p1hE=xLzSUWk*w^Ff~sI;P-Ie-?)Nb2aE!fPT82o*ANV1U<7I z`MagQll&&o3)+z%j|n*d`uTSKOG5ewfxfmK{b``D2Hi=2KIl~r`e}Y5`=0=PKF(uz z+xpSWPruW)ka?W{An!BqM~e%he**e$&?i#`UYF=Oe<{Qe{V?d?gWlCnPt!Umu6lPu zT!BvWoK^qgJ7X$iS9_Lsh#BMtEAdSNU&~{-hhmpQvG+!}z4_pK;PL4FOLA6&{xIm5 zN6L}45~0cN7s2-)_(s|JO0+Jb?*;v9(6M9;*}W)4KLmPkE7V*vBn3#QydKdeG}+TaWn~Z+M{%eqa4s_FY|4?Kcd9PYVhSh89hFz z-5Wu_7IY^&c7uLD=uUCb1bQ{-PH_<*uhg6E=pO_+?Xf!bTN>y)KzE9Ze9)UfpKbSp zdxjMkt3e;I!CC%B(7m8L#l>#WlR-!KhvGIh6t_*FCxYJ3PS;_{<0}3H%nzWCwbS+T zgX#2(iX+>Rp9VVF=OjNL^nUHgUk&;=(4FRwji8TeNB?e-@1(y8bn>rL`{FSGd=C04 zKMewXH0WXd$7=z%WKEr)W`b`a_|CNZQP$Ta=SA2N0R29k#~!eaPZ|@Iq5fJAIbVX$ zDc-k$-s!36dMHLe0lgdOPW2CiJ_>ZF`M!4-T)%F&u^ye|cPc{}>ogMJU_*s=`8v&@0izAd1y1wGn&f&APX^!q@67U!{Qi_gmCrEj$H-er6x|2V4 zgFY8@Cw~kAeLm>ykKWGy=#E6*1U`gE$PU?$p!NnJ=OfV5a2`7QNB(NilR=LbcN7mBLGKOvSi5|T5+9_an;&eGc_$yzhp6{{a1NoX2L`{6X_oxgJNvcL;pbHwxd9=zOH_6X@Ft zJ|}-127M#w6z^7ka$jxP+Z*?Eo7<^B7WB_R$F0av{n^@1(mx0EkK3Uy1--r<{p&&R z^{n%F-vat5(7ks3w(W8JMKNkA8gB-gi zq90xf@jV8+Q2y~yFZrjJ)4f=qqq;$wM5hgYLEK zx6Rk9h3+JOBj|Uc{^j=i?&&;`$p5=RuS8xt-%hvf-#3B&H0VxwJ>HA{hkVEW2YoT< zC)nltL*qCN^z3%%`Jkt_LthR0`R&j*f__#z^xdHM0Nt_uppO9EvHg9OnzqgPdSMXg z@u=@~ok{k01HDEePmQVx&r>gJKhb!65qwXR9k`zz`#T#S<>@$`r>Q^JL*M;)_R(oQ zv<39%K#!KsNKbFjH-o+d=drij^w2!~YRH~R;G_3y|3-X&wDG|ncXOzJ2la#hw?-fT zq;ECk3;_KPF35S=CI|Xr?h3Ul06B->h%SfPeGlkAfqnzdt$D@v9K#{#Nw1OT3Xb0v z^0T>4jd+gX0OWlE{%G?H>5J_Tdq6+St}i##?g5~8KwLQGy-A=e&M?Q-0D0ZIOCf}B;L|1Jh{X4~ZO+z~U?+>hN0Ij`=B9v9T! zL!fU5-D#Y6hq6r$bh0CW`cF{_?yczKo%S<&gFX;+z7Mp;W~Yf0*-It!$S?62*jIz!$uEOIPXpa)KRFHb zV$hw|_xYgbfc`cqwB3)4yia%!_&V%#&NDB9emv-5^8oo?t~E$JwdWJ?(XS|tB81Ur zyH9u+^y#1vv(p!a;=cDl*y~^i$sY^)LeS~ll5e|DI0y83pgY|US_(QnTbymLZ@d0p z5Bi>Vouw68KcD^S*Wt==4l9 z?H5~qa$m@frur*DPX^s-96ScP4|FVFLiHtfss0Yo$AOOS4AJGe0cytp&?kcaEY4%q zn?B11iW%E|fOss>cY)7oKW`A|n?QFOA8DY|n{=K0oe%m0pgXm5HR#W@Q-34qPk@eX zvrs#2`+2)XzEeCjflj~S=45|7CenLBA8VHnADR8tL7-Fny>_~7{gx*5Xyc#q5!wGJ z>QlVOPJc7h4<;W)?60neynW!0wjQK@Jq&qg?K1mdHhI*qvR_8=ae&$dKBsoaV&e1Q z`pRkDGywE|phsIbQC~~~JstAhI5!8`HwSn>@a2TO=q~qd9p-iRE$^rwpfHSpt*x$v zM9&zNl$b<@4NkidyKw7bRA^Jew2MgDwv?dR}pPmY<@&cX=v% zs`YNqzEjjzx97Q2)Vprao2RIQZqLuB;JGu;@?Pq_7|-sWsyW7kZG_es&*q-$kFlQb zda8Y~p67b0?_xa<^ioIo{4XBQhrLvt$MaS%wV%)L@8H43=?fh^&An6&pa0y!^L%f$ zwxj34-s(>s>HMRPo{xH~A3Az=_EyW{==`-f&&pHP-Z;;{daEz_e0?VmzQFKOCl4;^ zcJTRcojf0(s_s3`Q+uj<{5U%Q>^RSDr>TD*=lT9rb=&cD{@C%JE&bK&$ER=TuQtVd zUN}wdiTC{RH1#>3x5jq|e)9>QgQuwvPVoHwG}XZ8f9UMFw~yM?*|V&V+Q#R6o=J+{AosgtD|hyTZ{g{9wDkp-uF)0~ zcc~{wU9YKeKF?PPX^MLt%`dHN=b(=?FwXF|~nYfXj^VM{aSk@(j?((RoUEW_~ z)dwyQ&YMWqr;zou$8~!w#`{_l^EiF%^Q7MABnxuKdM2vNNv{1o<`h>~`gP7rJo&Eq zfE6y!@5G!|(7O1}yv^mhmD;x6bzF&MXuGslSA3%9Y(?GU!$0X8d&4vwN?0slN)X zN00Tc&t2**muJ6A)w?`6KOm&Y;E56nR`*li{$KP*dw#b2&dFb#d$Et?nXATlrmE|- zpS$%29OSv(rN;LzM(=5CVj|$hp8H(tYR_#hBxRg!6k50OpiTEYyOz;r+Qt%gy^(wW<^J0uDb9wO2|2tiD{(uV` zy9Jf&)!r`)A3 z_59JL3JCS0M8{c!Jj>l`yrqGN+@629)xB;y ze}v?IK_8XJ9A|A4LuBMxaYpX7%@gr@o|uNQ!%1G|h}U?Ic#`J`obw#<9rF4a)^IDJOB6dzaIFn2mb4U|9arR9{8^Z{_BDNdf>kv`2XJnRo#4S z#960nc<$vIUXY>T?mP{@FVwJ1_>~-H^C=SM#ApVCFNi2tNI72QRCV$3*$Gnqq)eCb zh!`Im-pyo)M}hcA5y_(vhinUO`}0ypPWe zzDUZZ9j3jVgx}~t(yH5|guhkF#*StwKX<&AFV+9gK~VZ5QqfN7=Y0ad7Wk9E4hh=M zlLZbGI8xwbftLxKCvdUA+XUV#@Cku03*0GipTMsL{v@zNSJ5wUpumv=Ckwnx;5>ng z1>Pp`UV%>td|63)-rJsm+cq931uTDIYv6dFasO;X`19y6}=&-U&0j z!;*&$PadjVWw%3>o8O5N=eil^uD3}!jwaD-U>0z0SKNF8?v7&!#CA+35ZCccrgfmE zx!s;i0AgZ2c?AK`u&0Gve{mh%t`0>w^U$4T*C{LMvr|m7xV!`3*Qb|txK##7V#-@M zrNi{hhr+%JIFTGfKho#kH=Z$UN37QDas3ROYlX{HzCbFwuZ!#8dWmQYUFm`|f`L{0 z@ZYhT=y{Xzc^(xLpv09&6zcYl&)`EBAIDkTmsGr=5ucs#ua3)8t{X?-FOFJaK0`mS67wLp{uK# zD<-a2-05*AdWhK7b$aI$kB{lxt20p&klft^)bYoU0}8z&rwI61eTp6#p<+6ZK7P#c zQ%)Qo??&?PFi=f7@#vyXwyIgeVj$O(tj5P{foH^%2|f~;?215ka6v^!k0rwmL-9f; zV+mY&ylWP4#{n0ots|D>yPz#(UA#8(1ea^di6p9XUs&AbB-a`7R7&u06S{^3j*lNp z^X^sncPnzg%k^vL6Y%MR=jk?$E9&^dzNic^VpE;mW>m)1C|68E^0>a^(gwtI_LeSQ zawP`6%hexTZiW5Swh9yt_2g`lqt@czt**dl8#{O;W7J}RBO%IIA6$YAGdQ2pazL>6YftbRv zF9IxW-rJpRxFFSDDO=?)|n=^ zU~!SkDxRNh&)%G=ZT`-{yJPe4=Gfxmtm`oiAP*~g2P>-B@VNy!b{RYa5LZTk^G3vS+ISm0*ah9NPSJj-}WufSCwXmaYt(m6Q9m0s424PiDXj|)2 zQ){JFYffY>gSgRRnGwlima<7gFj5ywd5S=qN9pkKCm!t)*ajq*T)!xgHCH8<1d26W zV9pQ(xy3~)8L!*TO`dSUl)-_l`BIuuIwMt1=NFVF&n?Z%&l!yO1t(K!K~~8Em7H^Z z0YqyUDAtt4xy7_T2`glPR-BukMHS?%C_kW*Ie3x-xl3@)L6BTrn3EOAQpvdsGUgTI z1-BUsa!}WlAT&EWBX>!5Zc!iuEy>T-GIY3U8RmRpHY!42)}p*@)GLGvd?d48tz&LU ziAv5cT(l?`BOy5_cW&u?RL&~EI>8i+O6SsRcCB(=!Ms94%bGhEi!oC|7J@Na2wQFn z@U%J2FN7tUMbxzEs{a^4*FltuOx_vg_MwFDg9*Z12Qd;KlD14yQEH}Z4O4%n+lLaK z0~UmrOQ8>Q9c3`|441ur!0lsFKeZb%uVyQoXOQDa*`ZRiI ziZ}LGyL~9(`;UScB@HGWbYL>(!^oM25?=d9zjVZhxgHG0=<*1`N7fg#`W;T_TF}%t z*Na|JutDUIUNXh#H-56iZB}eroL%ErDc14bNyQ- z_05Ge)yG=R(r@b1bU;4AGKdeee?aeHri1F(57X}kcMneN^{eIjvs&u&I}Z&rpvn3M zJ{(csEQMoBCDDeN3ua&Op(-!R<$+|F(f>ufL(v$Lt#_b*&X=X=px8|C{n(abmAe zuVtiT&}Igz;VAk)1snCT3^Qf+hc>*c>znw~rMB&F1cAER)HnM_^-@35-pKNgs7v;n z`VH@9qNG&AG1mVDycD~pzS%DcN_`W5Mz4V;{$ilquD|8|Oi07~B;IFWjTc=Cwcp60 z%W8XlRhOw*>olNWf43i2JwbMjsGs;jCQ}kW&xKQa10Oa^LWdnzQsL#?3LSSV5uE3kvwX-gl z`VU4_h$yn|h%RO^RbOdoz9AZ(2|)Wn#(#+#&6_LH^fz?Znof_nyol5hN`0SpPjpGV6$Nd>3m2GaR3w%)B3t@2bpv9**y( z%sd^AKT(pn_2z6a*DOgoCtV^pFt^Ol_$qfWs* z6pbI3xMrTQRfti&l$k$lXpFDk%FGMlc-m5Gd&H>I+9H98QGFcnUI%<%2Yf#Ve18Z0 z00;c(4)}p>@HB2?)xTQX5FGH7C!+D62)r9B99;~0r-CK!@^NM=7T0ao(J9=C2zkf{2z_?G2h#oU413^EoW(bK=2*0h#~oxOI!^W z{9wTc$7p^dCrj{;h#X_j?*;$fIL&YRahu==mT7!vkslwc^+w8}-!dk9_RiJ(qlJF~ z@ZIFx4(?`r7qvj*^8_J2CUU-==3~rI!Pg1?pBHI-iQwrWb<+Fk#Tsw?Kwlk-ruSCi zUo}+oo6YSP1pkQ0H+sJn{Mo6RpYk#t7j=j(KMQ!WXSUzReEs+n-&Ga-fHaNoF8Egj zpDFgAF8B`Ez#%!ki!{IKuQLVTD)OHd{zrlD2L9j-%`cY&>J{O?^b(EF7XA+f-*mdh z=L-I?;Fq1P@kZ|%aoV2j#TswoVUghHT%hr0|MYp_$)3pjJZ}hp=j$}T@$*-L|75bp zn-xi~PFl_Zi4)_WLBNxLww@oZ_d3BZjEJAd1n<2_^BeoOiF~sUrR3Np{MFK5Uco0| zDNK5M-soeDY44SSf9Fh%H-5WY@MSk?Jc@k0A^6GXX}q!LxZ}0_2L#_$_@@j0)hU`k zP4L-*PrF>>y@J14@N3W2c;mN+fTw#FDTCv6#iJW%?zvKdqH{0anQyHezUa8_<4%pPrv?9*PxBl9ye;@IrN4}P4?2kY{n}K`f2PQv13brhp2nMg3<&?)TQr{5 zTXfU_@8z@bkM|w$Uy7U@i8o^p{k|UAvw5J81sOcOyO!`<{2Fh@(G~I`JFK zfcUl9D{ks5FO@DIUvEYf&1pAT0Lt@j$~_sa#pQ1F>D&t5F} zKMDRL$s49$HVHn`{&$TWSwEO|eJ1!-5&k?K8*t>G=OmvP`Qrq?V7`wnG2`?x!6(Z+ zGD__HNbsA|HUHg$KjRcF|K%Gr-mG)x3jV-UjW_*L4LptO-US*@?_Q$gE5ZBneO%tb zpST~029o`O@fvUZPrnx#tsmzK|M=@P|4@U^zQ<} zj~D+N8;S(K=Ugp+gvft{rpAvH{A` z$PW)p^l=$QKCTgb7 zJoWFD5%xa@yjOVaU@PzmQT7x5D)Ns@^D(>WNBZF%YHxw~!Hkzlf}eSw<~QTFMDWYz zX}oFIQ-ZH9()ewx1>4kuPZ^}~CY}!qe)A}eH-0-6CuGkZH*36C=_5z*k=G+j1mEXE z&Ht?M|0ei5i#2|_;JXgg^1m3V@y7lkf{$D;WeR?=#DnqMV&JJ?PR`eIOuOzD{@4pN zezwxbPQm*x(s&b}KM4L3iCZ)7dY+-}%#?g<^qwvFHDZsEL%+*Pe*04L;i;nc&%l$N zk=M)gt}EhSI7!=M?Ei=0Z}4mU1tRC^b2qZO<8VHGYNg-z50O(qATiHVHnmfAP93D>4->tk1)nPTjn`^9FprM~f`4YNkIU#L zKJF6y6*)dG8$Y}(_-k@C9>a}~6VMRqmnNC7-x2&!;HiH%PVq6u*gp&SuI^qc>4Qw+ z)F6xHgrT@_tH{|cs)BSMVPTK60P)h~U%3&!*q6g~23$w8%I9yjSp%`|TSAe}m+o z&i_wqR~sAIb(XEPL?ogq32g-tv}x4RR!u68zZY7t*S@=%*z5JqIO%4CaxL|U)gl!ss!E|HfQTxQN);8f@5edk+KwyqJMZH8So+UQ@p>PAkm-j^toVN_f6Bd`Oj~HPUHTy;G~_;i$b5chv#Gc&P_Aie(u9e zhdG$fNa!yK-@sn;`CXxZO>m|z^qXh7pI^DKXegHdRiWRu!gM?CuL=FhcQgGl^VGz| zmxcaxjp=s?{kuXB>(6gMVnXZv&=I${>)jOkTYr`5BkAXPp}%mJ>DFKTuh8Ei{aF6L zYo7ZLDIos;FxH= zp+EW^&O(5@Pm2Ekk+dHP z{Uy=c+lBt`pwoQ*@PpjX$A$j-UtszTg8#PvI}KeLsUIIGp#PTi6V|o92|Dp-ah=Dt z`tZ76Wcn>lrhiVx=z~u4Jm@g}4MP8zq02Ao$BWWWZI|2MA>Z8&MWS(U4C0n~(5e3? z@8kAXE*sMRd9jx_Nk5MZ{U3yG_2e0$-*%4sv3}mukhpRmre zEA-EQfcvrW!xx4A2O>vnr?>nv_p>?2?H@9;LH;Q8XU;PHW}!EP{z?!hJT3HZzn|NG zP}<*&Uum9U9z^0GdN^)R=rbZOgkk3ManSGJ|7QOE4CvI)|A-w8<=dN%X$lR{ru z!-M!(J8FS$d27Cqe~zU6TaFeD#p>1bLhn|x^qUaalN=uwdD;Ho4m#np{shyT($5cs{{3@Iw|e{LBrcar zpc5a$_K%qMZ=85Xo%{I<>HqP9etuipKO4yFD+TSp4LXe**71HM^p^)bF1-VtJ`cjs zsQtXym(`!Ag#OjL7fn0*o8k2NZ=r{E>Gz)Jem*bqvV7hZ`cuiGc^;3O&nJZbCxYkJ zkN=0zpIcru?ErV?bJso0=Z#wzg~C5Zpws-rI^^$5`%Gi}@(pPp?xVdR^#5xtnnx_2 z|Ci9i`sa^VdEB>caQojdPvMfb&_jQ^CG>D#_$i@>`|N)y^f15sq0qzl`KRyY`GoPt z1E5n~D2x*xmiAxR;rUzsKM#5gXZ}grUwS9Ew|ep~LVsE0YwhlBtK82=19>fiPV(B_ z=6@wZr^LK?lFY~nh-?GO2)b7pBXBza_{Le}IFNs~>I>DbO3)(*;?L&Y4 zcS3(@fydpEetzNt&*zKc-|f1VKqtI?Jvk11erW!knAnr{e_mTOl%~+XCG;?F`cI*U z`!YAK^SI%@=eva-?hCJh9^=opw7>J0cs^S)pDzeKtgrr+(7&_B?d|+u75ZC5j@Ew9 zU*viI@mX$vr}Y0Zp@;GFSA_o6$GN?g`}c(YtxHV*Iq9dm!F-+*oP3Yao1l}vg>{2R zh5l*rJ8zZt&j|ffGVU!x|9hd|C~|+N(7z}2&#o*Q%IAc>eu>AuXNl=kLjSDLUlp9R zeE2h=KP3KZM%sTLbkd){xsCgIy9n<`hMqr1{bMyAH{8d659rj-;6d)^_oV+tY5%}o zOut*`zb^FfeAL&apU{8(t+ang_*s#D-dN}PgmqMVf1R$f(iK)*Wp6gR-E^nd-;?{# z>7d={@@p=dgVAtwu)U2|X?pK+EnTbDH`8>Y)gH8WIz!yWO-H@7iTl~Oa~dI~X{(>^ zbo*QAur=xrhH2yAXaaXw_q**;yY;@g$(agzjx;jk%e8FWcO6`t;QO_$gI@0%9#Ow# zZ)#K1QG19x`uqD6>6Q9uZ2@<=`{wFydS#}P(ke%trg^H<=yo2%Z&-U{ua&m&+~A;T zexK}gCerh37tb!O;gN%_w3_xBojr7UWvzlPcSgJ5Q!8zt`C&WVKTM`3^Hf}>T^fxB zovj1hS2i=sc9~vTKjRuKPbG&FHQYO<2^6$mu-~I`eK@h)-)nV>n=iBTtsxF>8S5G$6&84$z3AG@uJ0a2? zdPU&N_UXz4>q{4^%i!yJy;1e^Ojau32HkwNYI$XSwLY3VY&W4u)%p;v>%%0eOr;mn z=5D+BNZM`hCB2PR=qmae;fwoC+jOfjZ2JdRh|AofLT?vHM}tOZG^{q0c~Z>Apq-$P z`c&GZR%%E;HyU~}J;m65P92zlS>dsB&9*o4pgEm^qU{}|&7-5re46g{2R+zV2iDji z)@-agB~kpUq%`XaW}VCsLmU$d*pwaGGVNG)EHoQ;^O(W>e=PXms7kl2wa}(jy!W=cCgyYbecB%``6N5AJ)~Vu5C>w8xT6!zFA2( zCsPOrtKqgYnYL4=@p>7P&{$tan<4r}x@dQ~02M)2OdsPLh47K3Ygu z2%-Ds%PA0UatHy<6JH<%3nkuK#H_8Iu?9!vP0E;%hVpl;1gGUNbPalD7`vR-&zi}3 z9)Q7E%W#VoeKG~$vyUP`8zzSvn`vzoPnRsI5NiBLPW1?P!60QnurDJY3zcZRYzt7Vhh-_Nls+K&^pXMARjMpkCpd1Uj?dY36)S$jaWlt5apgM^@l^io4d zY`$g7R^IP=yJ`uVxk-96v)}^##>!#gouh;T3Jqc#?m2@?VlXZooZo4W>JBkoTec0+ zl9)F-rOlCh6&zYh>t_t2D7l=5)!vM;?rES%7E6t5?`$K0kyqq2svAmrY)2GlF*+LK zsKHW53miKtmCoLEMXojKQbDrxrGenqugxtWYqx2BeeIUwrj11W%?4IC)|>F(;Bz}2_;~3Jl}x0 zPUcFzVE_)T_-E7l3`DOoRZ2qcJxptoiY|8>!y)oe8csVX@6N4J=5@ffQ7jFB2+LLO zf=6+f@3fH=gf#Zd{=sk;iAVDhl4j_h^W$5UDjwerkt|58)TU&IAhFfm$OmDnr!UuR=LC)#!M~;t;V0O|?NZ zw5`)08eN^KB2^~2<>rwSw^NGB8CWqwpLBEIXNByYU3gxpG*NsTwKwUVdSl4$xSRon zj#vRn@gRzyUZ&n=bCJIU^FD7S(?cW=AsGgwV2?!!FKg5wMu`8{{db!w(oI|7Nk`ZA zv1l7{Tc_q22yJ!&i(iF7?vhE54cw8yg`tMiHB;I%O%Z1$Xm8mTbtGg!oCrs*GBxp-!S#nFz|nq&A8< zk#CEG@iESAA?|7XDr|@a3%Otc0-+Eq7nK~dNrtI@MGH1M*T{vL5l!{RW8;l^LJk8& z$jbWzys?|-;T6nSo%SuxN|P~+jf+7}#B)$HyxlXY`I&g^vFVNpl93$~ zDv>6NfqSGym8_{C=i*9;@u+YrN1ag)wluQ}qb;9iQB=NnwYOmk7RR7hE?^xRJ@(2z zj~dW&yW16+d5QQY)*cu!!y>{7!ejexT%9tzY6OX0Z|s~{Fio# zK5Wtj0IHL?q6sNDeC#+19)~6c{i;%wlVN^x-bESzWlVz$0VjW0dGNgR^VV;1s5oNs z+;qTWvLp`iX*V`0vl%={Aut&_arHEd5i`h!g`}Awa^`&`y=oJkfTso9TPMkW3osc;FE&}iq!$cy5=$&#Q|JH|5 z=VG|w${!s)LEngaY%gV@HwAY}q9fQ+ElJ7*;1CT6)A6Iu57jUGOjJ0LY*bnpwB zZ*_+I-3FiH(cKiFvv*r&qw`Qe8pjf7?irJF+DGOdu};L$I*QSQ$DCME=rCT$W41U6 zngS$)V4TlD$fja=IekK5vx!U-;IAAZAQzCBC2?KOt+X=BS-ZU6Nn`VV`SNqC<< z;iYF6sIp&X!Uag}HT;*B2M*OR(^$P-j}%on)unSza52 zu7Ah?$_ff-c`eH5gXNwA7PVGUJlRw*YjVrab?i<$ATWYF@hmI@TY}zA@h%`v*cp6) z29DFrd+supsfoK;W`tzyl=&EF%S6^KDrWV;H*Eo8L5=pO`K6OZ4LYB zE~*ds`%SS5h|^wMY*Qi)c;|Y~CVSY5mB?C8%{8|CQ&Uvdq{J(B>KDqo>+tpz^%VG6 zrds;Sy*8TmCL9?ux(2OGZ>S4pL);hM)8iBKLU_Fd8TXMF=H%< z!c_HC*+Z-Yujk&Va{y;@*7}G~Gb=tIKGXUAX+&JG06Gg!&|e~B3pbT<^nVt2W$5gE z&IZbu97ntsA3#J@mBD=In+>b5xKqVIF>#fJKnkw>IPxB++0D!qIc(}H)WG>2B!gV#5yx)z%SoYMIDYuuHPFyW)6~g<#9Mdhp zlmOcYF=5DYw$7C$ zh|&8{k+@{p>*P_PB9YnpFmX6McZxrM>CV2_N3-T;Tls!+oF@s+&?Q@l6&L6{BE>IC z6p=EAn-@-Yx*|Ov4MVwuk3LDgBYU3@q7&6SVP!*c%p0CY+3{)|2IstEhcfXlo?B35 zTBkjB=d?bYp+a-sPnjK}Cb`9IU}qAY*glb@dh-slMvNh&>h~u?g zp1>jLiFT?DiRS#GOz@k{=T)ISvrp^>A+&S#JmkM{^K6&5^*6l9W@QPt2{|t;K3$)=jf?Z7AWt z%kF%`iXGo@?FSb>t37B101+a<68Giie6xW=lU)wXVtW4COP(!7iQamF+`4(C66QzK zBrTXAc~Q=8xT@h}rMr(&4#U zy!L0>$ zF!FnSLuAWvKy(= za$EZ1npGZ5d2634Qv97MYndZnw8hIv32(u8?gwNWGsT45YTcCWVzVmeXXNQ7rt-bp z2N_4m-3Codh9Ka|x@o8Ww)j$#M54Vz8279M{A9jusu=JPv|s9Kf#a3{)frxuZ*8dh z5>AlIyE|xGH3r3W6IKc?h0ciW(fK^Yq;e4wCJcn$IXX)B+k;_$&%8J(J)8_++HhW1 zjmx~75~63|$&*LB&j4S*wJ);+Bz3S2DtJ&Oj*40{Qq;ms=`aVq0?Hg&F^#ZFYBQB- zJUdAhdCP|BwHUd#B8#=W&d3Htiv%*c&@Ip?4gCF}XWHd4TfLuvmszpzQusc(#vaFHw<>`Bd*= z(C1}LCv{arZ;d*iF2B4k@96O-MFRzOP#m6dFvz1IYzBUm2}MC0v>(z!*?#a ebxcC+H3oJ;=?w#@IrpS;TtY_QEqRv1iT?-xdQvk0 diff --git a/test.cpp b/test.cpp index 1d6a304..10fb8fd 100755 --- a/test.cpp +++ b/test.cpp @@ -43,5 +43,6 @@ int main() { engine.createTable("MoarFood", v2); - engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")); + //engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); } From 96eb1a28c073b091dc87529035da9fc1b3d16f26 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Mon, 28 Sep 2015 16:03:41 -0500 Subject: [PATCH 160/186] cross product done --- DBEngine.cpp | 21 +++++++-------------- a.out | Bin 0 -> 107878 bytes 2 files changed, 7 insertions(+), 14 deletions(-) create mode 100755 a.out diff --git a/DBEngine.cpp b/DBEngine.cpp index fa8575c..4e8ffb9 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -212,31 +212,24 @@ Relation DBEngine::crossProduct(Relation r1, Relation r2){ new_atts[i].clearAllValues(); } + //currently all returned relations are called TEMP + Relation new_r("TEMP", new_atts); + vector r1_tuple; vector r2_tuple; + vector temp; for (int i = 0; i < r1_attsize; ++i) { r1_tuple = r1.getTuple(i); - for (int a = 0; a < r1_tuple.size(); ++a) { - cout << r1_tuple[a] << " "; - } - for (int j = 0; j < r2_attsize; ++j) { r2_tuple = r2.getTuple(j); + temp = r1_tuple; + temp.insert(temp.end(), r2_tuple.begin(), r2_tuple.end()); - for (int b = 0; b < r2_tuple.size(); ++b){ - cout << r2_tuple[b] << " "; - } - - cout << "\n"; + new_r.insertTuple(temp); } - - cout << "\n\n"; } - - //currently all returned relations are called TEMP - Relation new_r("TEMP", new_atts); return new_r; diff --git a/a.out b/a.out new file mode 100755 index 0000000000000000000000000000000000000000..a30738a629d88890cfa900230fa822f47a01968b GIT binary patch literal 107878 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 q-vWL%_;h*=0sjVg)$5M|IcfA7 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�W)?4S_YwY1? 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 literal 0 HcmV?d00001 From 479a1e3029120875d5da666895edefb0deb8fda4 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 16:18:49 -0500 Subject: [PATCH 161/186] Changed SAVE command functionality --- DBEngine.cpp | 13 +++++++++++++ DBEngine.h | 3 ++- Parserv4.cpp | 6 +++--- test | Bin 159619 -> 155647 bytes 4 files changed, 18 insertions(+), 4 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 951ab45..0714b25 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -51,6 +51,19 @@ void DBEngine::save(){ file.close(); } + +void DBEngine::save(string n){ + + ofstream file; + string name = n + ".txt"; + file.open(name); + + for(int i = 0; i < commands.size(); ++i){ + file << commands[i] << endl; + } + + file.close(); +} vector DBEngine::getRelations(){ return tables; diff --git a/DBEngine.h b/DBEngine.h index 114ccad..3c8f6d7 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -23,8 +23,9 @@ public: Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); Relation product(string s1, Relation r1, Relation r2); - void rename(Relation& r, vector oldnames, vector newnames); + void rename(Relation& r, vector oldnames, vector newnames); void save(); + void save(string n); void storeCommands(string s); Relation setUnion(Relation r1, Relation r2); //void setDiff(); diff --git a/Parserv4.cpp b/Parserv4.cpp index 38571d7..92dcb19 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -66,8 +66,8 @@ vector saveCMD(vector input, DBEngine &engine) //PRelation pr(input[0]); // send save command to DBEngine - //engine.save(); - + engine.save(input[0]); + /* Relation r = engine.getTableFromName(input[0]); ofstream output; string name = r.getTableName() + ".txt"; @@ -96,7 +96,7 @@ vector saveCMD(vector input, DBEngine &engine) output << "-------------\n"; } output << "\n--------------------------"; - + */ input.erase(input.begin()); return input; diff --git a/test b/test index 3161c6b93068e2b3d712941319b6a7c4dc69e417..e72e3b0ef9e9e8277d501e610ce3f019f33a4821 100755 GIT binary patch literal 155647 zcmce<34D~*^*27?hSWAuQRB*}sBy!fD4?|ladglCkwwvpAwYmABr%yN;s!$eF^y5Q zrp0P2t@@Lyt*I7^wuZ3CL~Uza8~12ko-rt?OHJK)zu$B2z0dPZW)%Cr|Nrm_cka38 zp6#A{?z#6_=9*Z^>HYili`Y;9$d4kdb?s9uApJiQ>A1qjDUOVc>>MeM91%GzvLmo| zz@Nn{Hs5U7Yr5HT0C4%)4u9L@Z)AVgSQfKz<$h9&L~Lofvm`(NQ*6F!x#%Lrv}Gg` zm3BfY>x%i>zG8m4z-?JfVenZ&B>6<;e~L$tXZm@jpDpu^{I<0EksSXfoA$~5i&0~} zm__6Q`QI-M`$*|KiCO$!)L-Q+>OWdAZFy9_cC@AKcQ*Pt(GBfyDy*Cn4ZmD=nQP>? zrAifv95b(S#tFlZnK$d`d6iZ53yxke@`R&L7(TSFdg!sDH^n6G8RMsj7}k!Im*dBB zQvIYD|A^2pGO#~kgYZY+V83w}{Nb5vKYV}Oj;~(x=B+Y0B@Jav;h)^ZolMcQ)Ty&^EN`uB_nm1N_mB z9CO+%_@VvyDbONvpegr4xhMX1$KO5%b|lK(@HZ5H2N~Gmretvd{tgb*`Soc0?SVgz z>HhfRhdikdZKr;i-~Ye^2klH4?M?gF{cNZHn_vIweg}T_$=a6T+9Pmv!=%1Q{{sTGec4rQ|-Ijy?{yFGhkz>3#2eR4iz#Q@% zl0%+dbJ$@*4*H!r#%0$We0R(t|HnD_*5r_LZ4Uf-IqbQ24!%d^u=6cB?}gA_w2Qa?sy5hdf{9&}(WA z`XA+>Ukm(Qv8r`lQVtBne%P0vJ&ir5?_Df)``>v+p5lGN@F&fZzq+cdE>T{aC@YJUoq1{5M1wbGUU^+zMV)rf+PNk%x3;2uR@uz*s+kq@B4y`~ zKWkEA)Qs}F%9&-A)pcWMPD%_LHgj%yZCRqWyfOhmEH?Af(o18P5_eMFm|?LAlfdA7 z;EgCN1GVbQ%4UFI`Mi16GX?3aNp;81gm|^u2i0N6&aSMQRR-Y_W!1A|rDx5Yubk_K zvmpeit6W%NnVmMwd`k=)t|C^?2HlGC`B~*0UR_gBMPiWcxU#X;b!8I(m|s1MHk-Mi zysWlD&NynE>9#$4p z(;Qo#h>2d45+h+sSf#FF_}Hq-gj1vLgz_3lBnoREm=p3&JWDtln~a!QJ-?>Bwt_8! zwQbrTKXYDnoikneB-gzT-@$={HeUFEDFv=<(JHIvqW|51!7k#<;u|wC zg{m+u5;Ny=hAmi7R#Q=1S6x*;uQG9Y*`-Blr{UI4l~tFb1#VwEr+$7#Rl>K`cT(QC z#-zmXnXo)~jGt6JuP#>UzESI{%T)Jybz@l%76uQuQR6V3QJ1 zKTCA#GxQmXV6L9kcd~Aq@J?5TJu`(SCH%=UucB&BVs2SQZEba}bAa&NH?v~aywXb< z zcFMrSvMZl{k$#aaSo>{0TYBi_*aq$tnT++CAGYs;@3y^upGs^8w~Jih+P4RWwiAC= z@6RE`j*+>h&rGTB5V_3MpL^h9aN9m|ov9}dzZqNK{*jvuz20hF*I5N4_p$i|I?Mjf zHJChraJv^~TS1M|;U3qd2n0u>0XVH?KZOA}QVI7d3c#(+*f=r(CvW>H4#15{(i9KC z?Y^50r2)7-3n6@J0B-l?gijB^x#zc^xdAx$?DkU=fOD^IKMMkIyVqyiq5zy@Za>Qc zaJ%Pj3JowLq38Z>EnN7=RB5 zzkenb!0GoaaCGGdBR|8It|f1mHY>v!4Y4IM3beXHfuNWPvD`1>ijE zv!CSw_^}p8`E#9P$&^89LJ)QoojUhRk%E z)EBbOP?>I#dM)b=k?ECEzle2)#`JQj&tRP)F}+CY=d(^XPuEC&BI^u+>FH8GlXWfu z=~Ahm$~uoG)5TIhk#&Z~bdl7LWt|~09hLeKtTPm*^QC?e>kNVEh}8FCouMz?^ECj6 z?8Z7nUb;)_16gONOLs`UKkE!}={Bi0+rr%KE;n7fJm=))}hOQK{d{ zIzv=CU+TYMouMfmk@_!KXGlu-d`10lWKC!jP?BCQ^%<-)grpZq{e0FLI?^>#pU65xMtZu`&t&~@)=Q;+D(eg# z>0+s$$T~wtx=8BBvd&PEj!OLq))^ww`BFcKb%us?MC$vn&XADq`BKK8bx!$om(&Nc z&Z(a6ka~aCImOd$QvduM)H#LIEmHr8bxz&%N~yokI;U)UIqJhc7@K_N!g%tn_>#AK zN+*v^wbgu49EqpaEs`SD^G;IPNzv$#j_8VeGfSH#v7;f#FH;_aM!UDK#j#m zHI??`Hwf^=2Ggquy*iWi&o^RxSHzRhT!tp){abj&dg4t}ym%8zrM81ucfDc>{o~bS zokE}Lc2dCsWZi|TQnvBWvIVgz#2r5jticW2P$SfDlU;o`z+YHI_5nF6zH zB$R4zJp!|SEf0RZUn!aPc+*r;Z&yFuq>be;N$V&RAriz)zD_fbRZ|f;+Io^{Z-7~r zwk3`xmBy(@wT^K-PDD@b82tJM9d6(mD!KVa>k1dO}x-&?mn+JWVwmDRO8 zf%m=wOgpy{l~;ozUJF+Nf7EnN^@JhWWf>ZhMLgC>$?G>JOKW!eUhaEx_8f*N!7yH&Y~!! zM>Gh{eqKBRmmYskC>ECqM$N{26!;p6uj|@Q)?aAZGzEWdruXXV0TOn#jDyh{1g;kJ zMVazGRd;KPr(#_k592K@##^q%=+GMhZVNb(2UIxxC`;u5p|Sx)*g_(VW0uItB+@tq zRhdFpt5j>^Y9rW|qKK^kGo?D~t%};xoljZ+2LECCILjp)*Q5L1951AGsm(jnz7R&1GV z$6!-4Hu*TQOB$n=!%iGS$qj^LJ35pk(l4>MAYC~Rg8)R}B4*GG7@fY!DSCrI}^>3pAt_&kt=auQ| z#gjo{ibBG;xhXU`3wq7)4S)!KbaH$l+>4-)y`{kQ31^dynCMB4jEeV6{P1=0WP4n) zUIQK=t?C!Nq^nhAneg}SeQZt$?ia}{k^$TK6B#fXN8+msJ0{xFE>New2dN-9hlcMB zKUyu>oPh{2!RS~d0V4G{GwkBCfAwPxbsPy6@FSTA?T?;`Rj5@aE&9L0@WnNQp4NzU zL#N>lR4$1$Qt}mAL?_S&W}m)a?ut1OZyNNttVTp_+NHlxO1^An4>#Qm5(Y!O`BNsu zNu6hnHMA*M!7vs{y++gSYZuR6}GwG~N#^IhXzf18;=am^ItfnWJb*x1#C%?Jc*=%h8fU>b!uH-#TgXrrZ(UieFERO( z^`aM=spnZwz!=wez}ecs17*rPOniXB22ClifYnAcYs5O3)hziz-(WKjm^RM12!K_Q z8c8sSCj�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 From 7c8eb084d92da0ee433538f339bb0ac24b0d4719 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 17:02:04 -0500 Subject: [PATCH 162/186] Doing things. --- Attribute.cpp | 5 ++++- Attribute.h | 1 + DBEngine.cpp | 7 ++++--- DBEngine.h | 15 +++------------ test | Bin 155647 -> 166381 bytes test.cpp | 8 ++++++++ 6 files changed, 20 insertions(+), 16 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index a87ee9e..0ef939e 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -7,6 +7,7 @@ Attribute::Attribute(){ type = ""; key = 0; size = 0; + limit = 0; } Attribute::Attribute(string n, string t, bool k){ @@ -14,13 +15,15 @@ Attribute::Attribute(string n, string t, bool k){ type = t; key = k; size = 0; + limit = 20; } Attribute::Attribute(string n, string t, bool k, int s){ name = n; type = t; key = k; - size = s; + size = 0; + limit = s; } void Attribute::addCell(string v){ diff --git a/Attribute.h b/Attribute.h index 19881ce..72b97d6 100755 --- a/Attribute.h +++ b/Attribute.h @@ -10,6 +10,7 @@ class Attribute{ string type; bool key; int size; + int limit; public: Attribute(); diff --git a/DBEngine.cpp b/DBEngine.cpp index cb43ca4..9bfc700 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -25,7 +25,7 @@ void DBEngine::createTable(Relation r){ size++; } -void DBEngine::insertValues(string r, vector v) +void DBEngine::insertValues(string r, vector v) { for(int i = 0; i < tables.size(); i++) { @@ -58,11 +58,12 @@ void DBEngine::save(string n){ string name = n + ".txt"; file.open(name); - for(int i = 0; i < commands.size(); ++i){ + for(int i = 0; i < commands.size(); ++i) + { file << commands[i] << endl; } - file.close(); + //file.close(); } vector DBEngine::getRelations(){ diff --git a/DBEngine.h b/DBEngine.h index 7d519b6..d23dffb 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -21,22 +21,13 @@ public: Relation& getTableFromName(string n); void saveToFile(vector cmds); Relation selection(string attName, string s, Relation r); - Relation projection(vector input, Relation r); -<<<<<<< HEAD - Relation product(string s1, Relation r1, Relation r2); - void rename(Relation& r, vector oldnames, vector newnames); + Relation projection(vector input, Relation r); + Relation product(string s1, Relation r1, Relation r2); void save(); void save(string n); - void storeCommands(string s); - Relation setUnion(Relation r1, Relation r2); - //void setDiff(); - //void crossProduct(); -======= - void save(); void storeCommands(string s); void rename(Relation& r, vector oldnames, vector newnames); Relation setUnion(Relation r1, Relation r2); Relation setDiff(Relation r1, Relation r2); - Relation crossProduct(Relation r1, Relation r2); ->>>>>>> master + Relation crossProduct(Relation r1, Relation r2); }; diff --git a/test b/test index e72e3b0ef9e9e8277d501e610ce3f019f33a4821..8eb7a6dbd351bb4bc980718691701fc4397977a4 100755 GIT binary patch literal 166381 zcmcG134B$>_5TAmL^MHB<5q%2MFkCrh+7-f=tDsx5XA)pA}ESLAyHfjLM*S(r?{lz zR#R81ZH=`kVhv%@ht+D_YFsL@b-B-=#62#^|NA{>X71dV_mKAU`#(P6y*YE{Y;)$! znYs7Qol`dA_^w^L#O$YQ>=!YXT6ZrMkp3TwHQy29l*Wd}wvCm>4v6g++ZtF~;m_ig znqT(2!!)zs-GIx_7Wmr|e?z;n#P3pmx$ixt6pPt!%bnlk7k*03PyKG5qnP$P7Aux| zLMiK_l-4gwO%S;KE~PN|EFzM8isgTbM^Iqe1*V<-E;RDnZ>t~4@o$W&AJerIC6-J1 z6+2u055EojSosH4=kfQ@9aYYuI}Q^}`~7~QHniWi-Kl8jL^rfI^=0K8W%%W@%LPV$ z`>j&NVh2y1a_*492Twh3z|<+zs%H`yWzoYSY2>y!kXLTHc-~8;M zU-0)>tOS39@pqJg^}zRG`0H=VoAb4eK^khlw=>_}@m*kkZ;$V7&2N6uHneF^7Vy~t zf3zd}oHp}6v>!i3`W5SAzIVm)yS2&psQz+_qoY>mzzC>T&F4 z!!LRqRe3*)p(N$Y{)_(;IGMpzYPqVi%u^nlnXu^g5-ivgW|d1^o!zb;ZdeN za>1ViJQtmJ^XRn?jGYUAd>(nW$OC^i5B+2E(0?S4-R{j}w>$FC-zyLOEAsRg$3QN- z^~od8K6&Knna2*NHsn#Z2I<>7lk9y{NXNB-hG z^!Lak&pmnQOvz)r9(}*cBTqw~e!Mb|{h!GLpOlC1eR=5bkw=~l zdGs2ahyLez=+6XxPt0nqH%QTX3Yzcdv^;TvEF z(vRJ&^a~CB>y3SCvgpK+AIz#cZ{mRmGA9@ks~kRNWaW92W==YP%B-qMGslcPcIxzL zlg3Oqcj}~AW##!7PoGvft7^i`s>;e(<%yS6jxu=1PMt7o)}&e5JZIw>RTs>hG~v9; zi4&$xoHR97dFII{jjlTU+zGR$Ost$Teb(@aqpJoEoOr>6nUz&DCrqgVpsZ}-CFPft zT|(T^vyL5DcFJflI1_k>RaS!9^h+zx1;GhZr%sya{ z+aZ<1r_ZW91%QjEpGTWboIRm(<|L6+f4Vf?l5{bgv z2IhpkqfQcz#wLeNoPP0)2{R|LMzA(d`$H#Aoj%K%Zo+8Sd=`F#13T?x;RB}ZsL@r2 zOq?=JehezHT{*p)T~s-9!nE@z{dfEg)stbhp=vc4ZOXLs^LLn<8SN-tjy|Jr&KfeS z8Y5$7*~K*N=&G4HUG#tJFxW+WS$yMM454Wl7F823;0T*NyK=^)nX{%(n=o}s)n%2J zl&GBsTRTmeb_r_W_A}3~zIf8Ks?b*dmGZ_lMpq4<2+M=V$)l%FomDo){i4>>E>+#9 z&KeFYWsgqJO{ZI1kAagOTB$ODHe7CME_7Ot2~`u!Fyyds&b)bE zsbexv2aDk$oHe@%FdAxThw|e`jh;SQ2H5B-sGlP`b?W*oMKD%R>O5FCPk5&*!=4#J zqpQNfGIi3l^Q$hXoHTRh^qI~9qGR8Tiu0zHU&0uFv4(g2I)5T!BufKhl@-%2Wqcep zX%>8mXcH9;-B~pqL0arIp=#3XDR2?8n>M`?(RM=Bl9xnXFD@1Ts#2- z`-EeUtvuwQlGq6&h97fm<)DKG9dxMv9y=EB!3PZ-94#IaJ9g~YVaE)w9C*+nehufq zu37&qYzwTkShodMSNe^K)!^Fiu2|t{`z_43;%JHOl?Ji4$->06E1xd0F0u8P`)xj3 zzVBsN25u7@gZY{t*7v|~TVK8V6f6g~h@I`~w*-dP6aT!9TOq{Ou?tL_iBjGwcBv`9 z`p8A#wq@*EQ?AVC#+Mjg`J-EOATjasH&bOa> z5AN?5EcW1B)7wvj2j`xF{Vet1T*KN=lLs%dKzy(9;M{w$pJoqk_aa!=;=#E`V?V7P z-0nHBF7V*otFWJT56-F7TJ{t7;M~8mpK=e*Js|rT>%sj!t??e5`#<(` zfd}UvlKsr^;M{++pV=Oq`)>AAX`t?sre7Tb8}O|$#NHtur^ z{x9fVieD^WK=e%OMtt`94a*FjnPw?p!!ko=rb)_|v&>MLX^`?vmKh>5^-{i&WroJg zLMfliGDBjfM#^WhOgGQWkn$*&83HrorF0QT9DWrn;=tCYL5%uttUmU35?8R9Zc zQvU8zlo{GG4O0G`Wrnm&y_7#@nV~GRP|E*inISAwBjvYP=2mEChLm4nnIS7PUdn%G znV~9EF6EUhGel)drM!&gJyNJ45e6fo0BR=owqM1Ob+QW&^vtoHGu2KPi zWAnJo6=;&V1piH5ND`x=WKleERS-{>1@S~Wcpafae$Q(HJRKyz-?-6~i&?%REEhFS z*$%b?@U#$E?0~}z@Y&LSLNQ$`6G+=}@x&^h;$`TTHW&iHlf#XiLz!-w|;EQ zjx(M0?zd6hUbN+?Zg0T2IdtQABG}U{S<##*@87A*o`uaisrG0D2-WW6G^brwLDH%k zy$()Shz{$BC#u`Qu_Ktew>erI!-$n5R zG?%VP2VV=Xvi5kYB8aE(t<<&>>#kHRp?|2FtVQTk-4-g?jjS8cH;z-Wl`m1TE?KrN zKCv0Nmh2iw7AgqYF>2`!*S^rU7u~3%BK}GF15tc8%My@ZywGBA=#VbSgWX}UA(lAj zM)W{_x^!bp_x>!p>Y*6M5nmVUr-LieI`opnRX-%EJLX;W zLzn9P=3WKK5ZiyYyw@!-?uxHBZd}%k>7tRv<=lY}HUOrL8;Q!RL9w8Lvq0EuI;PsA zkleBy6p=+d)=0_gH=LMQOvW({@*9vBso~A6G>9BwMjhia#$U2L8_mlNnbN}e;VY{K zMrktu2=PiwJXzWe{;h2i<=xtL${I=2g|i(+#gHD+ATs)S@d#Yn!!e;)oF*7GlZE)g z&scm#>lQNqLd#SI{@h6K(Afhd>}(kaqooL34QPw+bnunBTT?t;*2?}c-qK*a3MR2~s3t3ZS`B*Hjmi5yKL$qE!@2wkmGEsd*?|G}^)<+|;7&b$1toS!gqJA^1V%QjF3Y=vzGOC-vu!(dYBlW~e zNV?XjJ6ril?Xgn30?3FE6~K@VevnXUkPhZ5wv4uev8WlIc!t;`lEs$8Hta*m4TR(x zG#HV{j6edXrYMqnIx2|3O9m6!Q2)8`Z=s;CeMQBYVhFEO#M)A`j5VB^hMhfZT-Gp= zp#)oquglo~;fswMYnuvgY0CB~`V+l1be*SlCi7gUNPN_KAEdfY)Gq@4RtkBQ6l3wj zR~6JXK_-{spdI@df3a|M6_Z+``h8Tum0=|7yfR#ac)}N^BqEF(n?jSLpu==uH;52M zC&w4U{Sy>&*A%%n(QGn_fu3N`sCX~O_g@iDtcgq3Yrx&4R{esPbhU^q6aL<|yUhu~ z{X!W<(qY?vDIG@RNPKl+$3$D&1?p6{BNYVaNcXJ`qt(21S%?r5j0PbI5UEF+ZWo_@ zA&fQDaVS{8k7OLIS@s*uLX9$L(f)0QFU}eCv?S&Y9fsFaxdhTk$yaC*9YCv?eTIJ7 z6JsEr>h+AwMnp~Z=qi*FZ<*1XSM2mRNRp-kR7vshnZ@+b2}2Q*X9vz~xHu5O02HGv1d)4_h? z0}M8(N(V(OCQ+>s>*p-y$PYRPo2kIGamGae%!<@VfMhlnF-6EGV|kpUNt76&OXIi$%#c%LM0n2*@5YxL~;ZU8b1PZU1lV*evkeX zzh47cq;Csoc?o7xJWfX6Tk-wruFc5#3T|pb%F_d-HDpxSCe{+%BEjX5k>a*e#PCT~ zAaUX_631#5%f;edfJA>$D!$Iby^M6 z+UUx3@MlyjAI-W-!KoRxZo=qm08#^yZUxft#A*})P6rD}QkViW9bATDm?KesF_d zHJ!uEJj^jxXX|@nk#w+&Z{1?o1qp^K^@|ySUHpNQvufLJYSVP^E|Ujz{`>r%SJu%@ zDvm5`M>aXXsk+7Zl$XoHA>9a;AvqZHE^_b@$w|#45+5$7af5qhT3!{eeYd=pScB*fh>`q;$x9O<;t^lC1UA?Img4C$@Vs<1x$1df6{c;&3E z`CA4q9K>Jiq3^0;X|WD|r-QwzHIqo_>XH=((|ItgIu=M)777S=N9we4s1{w@rGBL+QROcwWs>rx9!y z)|kx|nm}{Q=n8i};BdRYP^q>v$Knw*BN@(vg49Pz-nbzTq?y)uRg;K84gn02c}1$sT$L67my=FMTjwp@#~-1 z@Y3SK%W;5l=JLYJHt$En%OOB9;iU)q7k*KcYqf4VdN;&(9g>^j;w|FS&c*MLyhA4G z3~P*w-^Aate2TjGD8QpG{tiSpE!n%kc-AKC zyp~7&nMid~k*X~XTaQG>n=V@iZDMVG&1HfJ!fCSjP6wZ3_L*0gYTI$ z!xEges-HFs`^=lPPpWL8%up#6SEhw?Bwnias5eUN1}+#v0!Rn_pvL^S3+68bk#yPn zBHVe&viErnBcYg^Hhf$`#aJ2D@Ppb#Wb#4sL`x$kQcW71Va8VN-R&G~D~l=v?z3a{7mM?0>+y zx$#kRDPT6(L$Zc=Y9t~}t@?>rt2?#>h{~or3Ranr`A~m15PrOncl~jg7RO5;!xZgs6T;xot2opUKR)MOibaHS% z*utzZeCE=^tVAOLBX|6Vy%7>M7MQ!5<0f2Y7v{dyP{d0Or@d=0HL$3c8g2qi!$f1w zOAXn}Qi*VpC1X8w4g;|lTI@_GbJ(4lr?nz{aVo<4j2E7zYU97C4p)J44VG2Krs{oD zRq(i8gw<=Yt;urk69v4acd&*VLl6BAebjhn`r9hZMjmGu`unYZ)D))a;1%WAq4FW0 zv}M?RS>CMUKKf6>?AOR%0YV%g;+}P^G_w}7PqQ+x(`P>fL?lJB%h<&3eZmk6ciXR2 z3R3&1xMlWk`@_UA`{A{U4Vvj-JN)jv+rAy6p)4bX$5YEVwsWMIxDiaV76$o2s>CLRk7)_3}8(uH*d%Bc1Ms2L_gP6 zop&5B7yTkZM53jy=5;?hHQ!{fMs{1M7i>mT$CzSc^1vS#*&_97wO@20Xz+9HINqGA z0jO2OYdEjw+;OB9&VW%%=iT9}^4rjxJHVt}++KW2#Q#+uq)5*!P?51T{E6L?giv$i z)Qr1Gmq+~K|7w?}HwA>ti(Zn@>c#*xw!1X&`RwtY>eWSC{2%Styevc1j^1c5agzcu z;;nz$SuXdk%#or2R z6(L9x2eK)eeT zp@E8A5Hiv9-?TxvVt!SMKe=Mo9#4o9d-E2>w<~5D$^e+z%52e*e+xRO8J&ZUN(V0^ zcYkL zC3-{J;zT)|U3cL>*&Sk)Xr2!i*zq9&q~pC51|I2P4Uh=Kf4Kgo!j3hGIoG!f=thaF z7C_t@tZZjL)9Lm~HrvIHiefAP{^%B82p-{E} zO%@uWi*VmE)Lr0oTcEn3J{|O=Zo@p?n!(R3Ka}Ejq!=nIt=`71(oWfP-~#cvtEr&3 z5D{nZoGfgo!r;z7V`$v@R}v0J_UKZW2qvvqY}VYFn?c##orhX674OEDb-puRFPen6 z&xH2;5VFe}4hF_OJQ!K?->yR9SAo9gU=vC)IAAC8+mbx5ODWEYzh_a$=U?86tn$qb zLce4GnEooM|5wAzmIt)!QEPbUvIjJTQ9*otn{n@xLx8pLjK_i;`nc9`|kLzt3aAMpal z*TfRtRH+*)rBpe-MkH$EEG6sYOE$MeyMcIo1W@95!C}Hb1Xl=zN}fb$s&Wxi9rWkEsi{KoQ9Pug)=3A|(n^EK6#ZS#CMn>w9p%N~5va5=7!fEP9O(h1$(bap z;bg5CrB)Q4yPE2oD9r21bJw-1J^E49#FAq9swFq5`}&^%je*}_VSoO4qJTIgJp5B}$`MRL zxRY5{A7wdES;EjlYqn!q8k!`Hhl`{o=w&`JTb@a?=ZxDcZpUdqZp(8kwDVovsGknD z;o{tR`zu@nxSi1^Gsa#5bwJhlF2#B7?}RcL=LN-D?Oy4Q?{5*wTB+$4sx?TZgJXqG zt7%;R#NQGmcVK{?IOw$q43b1Nkm6tA zYe*t`HD2IoT}4`7LPVRe%*Ai(>Tdh~GNwrhc&qMk?8d8;q*XXx3qY2xWc^yS2oh4NLmK)zBn;^2CMtM5AJLys)5FywZ0NM zWi@V!KH_7w+jaloMWFW!?&cM&8j|}G!5o#n>Gw?}M2)DBl?iz7f)iB~T zGjVm(84G&~oQ17?xK_{uF7+zHfQ%&Pq?ZEAhC=J96WLP7Q!hG(Ok37fj(H|*AT9^d zc6b)Bb99JGzw{y1!xbQw9s3ag{S?qdQ*VUv+jdpbR>MPxWWuuby*G$wVA`p;UW&(l zU09w8-f?4xxvM$W{jtw;Ju&uWL141;MBN%$qNJKMS1+MGlXX(kvHuyaV8U|cTA|qD zd@WK@CoN39w)hGoQmiCxpk6V=1_{ALu_uZ$_KPquHQc|oO4tf@vtm(N4@0|*JgksZ zN$q+-MA(bEr)uYzp*a}60r!+5QVT%c*ng7@Qgwu(fiBC0#Nz9Pgj7JbUkRS0c+6_S zFEk8}hAVnwzpaQPUdgGrOX2j!$!plg2(6Wu-5{)3;hg*_Ucm+5?GdV-lS@+oOK|hT z{I{!bH=!YOf`*zV5MY2vrnEOCK%6Lg)Ugf{slcM(T{{R@sQ}GekaFM|8MuC|Z45AD z7;bG3T^-c=(3)P}Myrx>~Kw3a5G#v?GZf z5wVXfYn8~OO#wUNIXPRiYllv6Pa*!XC|9CGRZsFdeJuXNcvG-@U?AH0K3QZq;=-H*HM zA?bL^9_geG#3MkY0@|;KNz!F4(n)4MXo+_BSwczX1Fx??2N_9)>S@?NfQsuI%m*zx zA4F9CK2o2hyH+ zhdohBdqjfH$s(3ixSm)DV^gw!BgP$B_Ky0CGzD-gBb=EJgl{B}oQu;HoXxSO(@9v`MgaG zfAYD87+I6g<3utOjrvzQIFon=X6-gp?yNDps$W4-Og=Kb%w5gNCbH74*Ua+*(SON! z`KlW$U#W6_nbam}fHJnrek0x1&iY72|FFV&$TaS5!B|a*+KIAvKv3EN^5I&cUr5Vg z4?&m;{SOjCpB0YGeum6tLIw*^mmk~>GIsyv3|ShmR+51T)f<$mROll0RTxy)#myn} zy>V-=Z4V)bfx1~4aOB;Ir2u1pAYlMEHeof4og6>^yGp30gWWLkaoVvfW|yq)O$57} z^)y0{aK~&-L+Gqj0Ir}qM0yp8{mo+8u6`ds}_=e{mVrrt>-WKLHyGNeuw;p&8m zrWwYRU9~^05)&|Bc;iB-*6VB;2^dEMhg-W!XGG$?I3F@g2d{RgcqU(Qk@YL|GgNGH zb{E-3%23eAx&-+PXW?X7tM#FR+Fs}?b88p_CmpMxb}4OZ#Yeo?#K+2hu@=>k>EIkK zHkzhuP^*b&|q4+BT9O7IHiyryn6 zLyRJ_jNgkLP434OVLv9o?lF9w{*F+hgMV*eq1cL>yKo_2F8YCzc-1%Dnn6`kZ~ID= z7e{Vk;l0~t8r*;$lgpVou7>mG0Fg*&K1NJlvbT51ir`YUP}cWl?aB^Uor={Wawm@x z=H98fx!LWV8*P8Y@KpTln)w`)i9GjyRkPBNcs(THZo!FK+FdQP_dejk%uPH)Kg<%> z=fnFcqa4rBp9(~K?cA`IXUeVAkl)^p4$zA4wumqN#|!%T$-A&tw070ou<#tYxed!+ zO;CT3J9{ENvBTr+B=d-&`oc+1V0`&^_MAu@O@cO}4yxgLu^gI0hs}HM+#}m+XN338 zRS{wypZZ=#TK2tj_Y%Y0J9m|0uc3oKjFheOy>nYIZXzfdlB>}ma_?L(sn31yTyIiW zr4FD{LPmH!sc8<`7P2P$-Z^_Gj&Y?{5OUsF?5-Wkb23;k$~`OM^j|C?n{;q4_D8If zs>Ku13E}-FmcxJPgEQ1%xW@taOr>ziTqMllgL6WWH|hQD6!&!r%jUKqQRG4_#GS^4 zPUGn4AA{lB>7IEV+VshxXx73jTv!?K1|r$b#MY9rOv{2j`mB>%kOOj^kCtGR4(gW!mA~CBjQAM~V~Bh7AK-4P>JG*#OLzBUphDdx`*y~ zE=rlXYCniqL=t*rhw`B`ckBP&@XstD24#dFV1_pk510#`Ra@D8|Jn9k{ z^KGq4qo`+MM5e|wHnM{e$nXqk1AhLm_x8RXM&!;n)CueIZ^#M0AGzUwrL>dG#YR>1 zpv0dw%VuE5)t!>@GAD=5r)12hb~#STc<*bn0qScj=T4~B!l8$w0Al&V=%3f zbz(-wo9{cHm~p6zfxMzD=x3QeE=}?b_Xk-?>0JNf=VtXU@VY4r86Nv;<_0K6ydD3% zhnR^Ua;2Oq+Y>Ml6>xnTY*z(i{!ELBE4(Q`vA@i3IZI=x)oDwy>&i`2m06avd3dhI zL)@{K?hil;TtxPJ2o)nRsdMLQj7D}Fy!J4ehj(;#N-B6KuW&k$u7Ocx#+6G6BKIkq zQFgL89BXo9mK<#~qEJ0Zs78{_iB!qYEO-BbT8Yi>|C5Nj`KMG|u2OIQJ>$c3HGmBe zg!11rUV=usySEi9WTnf zmJa^L>umT2O_5LrsEBg5M6}3S{H}1-*=e32k<-6aBH{fIX(fV*nlpgVeIKA;d^=Ow zs(k@(V#_vJ)i}3%M~afV7Sct`9hci-Lie=O1il2m--dFL1Y*olTBORUMVypkkGDZ`_1Ma9b+Pbl zpf34a`HA~e`E5zln{*6RU~eV({C?DhN6Oib^-U@^>=w1*x0oFu2dpjKw51x+-TANi zN4wZd7qPILds1h(7%X4>mp(elv4gbf;3yVlS`c<8D7&mU-vM@D$!VAO)zC` zHxA+7;fx!?S@t zanwlO)>(@iU0U6d?=&7vw-7a&`9>b}a#G8HB2=Kn1C1fn@$O~SZ!={T*S>mTjf2s zjs40_wel{`qhDm)z7sOUI6>R+y2gsIDqEHZe9|Ru0_&8KyyW9?P+(}OxU2k{kOKDf z^BidONZ7#4Sdkdx2*2y_HgWpdZP=sMysU|n%UP0j(yN+T9D!n(m)!w^lKiAFk%#le z&;Bgl&kXA8NWIwe9VWqX;+J|*ZQ3&*r1rZl~K$NRq+8|kt?@Qq7NY+<;v_<@zwec?B z;4*gbXOgyL*>!He6!e4uKs*X;W&E4BfQZ~-&#n*+_QBoo;tXidlvy&vKM6SqpES1{ z&?vHWd=oX9$FPwOB7l|EqZPKD@U2GMXaxb?vtV95nbl~q#8?=}>7Wk-YAA9GB4KMh z@qB#$R~g_t$uD-<78KQwKoNVTMuB56A9I0_tj57@_DcR8T=V$!vq@4tJfk9dh;AFu zBJ+myquf!xXxVkxwlj*yXru%;x!5OoWLWimOu6mkhW7f5`gj~RAdSvpiy^{^ECR8G^k-QXmlbHM;TF2c z!5sJobuq(VSgD39bV#VQ*FxQO477nOQeSB|LO6?cnlziCp%4qi|JHa1;5Nl&y-wFG zY`c)k4Z4E@VXIxfR|PlS&TIC;$XU)H?1!Kb^!`1K5jiC6&b7EO?43cl15nIE&L78UX44b$#-0!de4q`C-Ke+DKN*QCPE7?EmKar87Zq|t@~e|F!&%EIjZo+oM%2f zvN=fKeId?a*8-7Q*e=(bF=N1Ma-9e845bgJta@AoH?i_>tTB5lbNG86_sw~;P`HD0 zAmGvS03L-a83!K%*QBjqBuM5qx6L#BGq~<=>j2m7sGNTL5QwXd?6uE+Fcij)?1*3_ zkX$;r30IOl&nls3J@Y%Vj(FCIPeeWIuRt-Lm7;)~_N*PBB0=1F?qtH4D~34P-mn`j zg>1@oE|K6Wo7@530IRzO`MhDPkTp9QE+0uF5RbU~q#5`>nGZ1VVVIgr)wuczP@!TJ zq7P*p=z@>XR)jVqLpFI&B8?Ykavjf}CC!AN-Cj-qiLNPoe&q&GHeog3|Eb)FTh1($ zyB(Us{OMp?gP6pbnY>{FO}*L@TzfIjUypKc=K0qsx zd=k(xBv&|zqOMXXYMXe8JF>#qwmGs^J6UaL$r_G06m%bTv2@T^=1q68<{`?eCt9iz znIAUmDYh@LjUFdD<7TP}vUq-9e&XJ0en$hyy8947DsBWk+|Raqrp>UQ2~z3c9&%+` zg4{5?;p4Y}>ZaX|q#fPhEOMP@M$=RGl0QZh*CH4vxD(z&WW~-+47~I!dRQW3m5xc? z5#=qGe@ThLh+858j% zKgA-{5M5kBCo@2 zuX*x|>_2s8>m*o6CrvqXM$)l`oCe_t-kCGoLu@}Cn*$UxX^veeooUZ()fpV}IfJPU zOr$wCw2lqC|AUR`VEJuagb1I%cJFVgoj+F%l0l4~P9tTY{rS_~pTysCf083v;(9G| zk7H!{fRlaqwnM-Khpz*Cw`Z)^*rrCL&@w_!o*^EPWBhaO>tG?hE)^H=EeRdJSIXZDKt`CzI&fOg4|B z7}C8)m?D5iH?hv(%8)TWYZFUH6r&1_A|p$t{0&&zJ1-3_7j7xF0=eD9sULl0r6`o} zOpCLvo!lXEzIDS>G>PbiNiH2+fVO7#;_;H`F|Ruzvqtq$i_n$hYkqg6@P zYH0UPTHX5_r&T|rRTDu`t-2s^1q&89t<2K4#E&<5lE;t1(u*E$?qb-0iD6De5%I`6WMT{T`wkTO7;Z65XOJ!*_3yG}JpM{#JII_VAu!7M!g>P}CMX z!S{nJe@&v{jS7+biXyH*7W&IAz;6DLaq$!LV-8PYdY29`E7~a};#Ap_wuFq=f$WCB zv&&@;9l=@AJ4O2_-jNa}hM4=+Ii;f_nxru<^J!9|gWc;txJJIbKEEc>Rd#0)4*Lkg z(r@hRD#Js2Po#HhRj~*Y9@=}bsWON5cIctKckP|L>02uVA(yu}>%; z&mx|QyQRq!Gh1DWk_SZ__RiJN_ACakeKN=NbqL`(Ka04Zi*t|UN~=EoDAOd~G&2v+ z9&%3Bv%$K*fQJ_m0aEgWq?cf4WVa{G+dRJq zcH?T{o=j!8bFJ3mseUqAy0gN5<=Np7YX|3zWwf+4 z!qeW7u`6%4a-t$5^#zKyzn86#c^S2l-kMDF)%NFxGwkWujH!<8Bf1pOP=c|C+&%I-1Tqr(!00TACC2;Il-`*D(ygg^o)Nf(RXvh z?gM-H3R=1DyHmAW3WJ45HhK??n5|NwK1LR;9bG#c>=N*B{d$`S?Y(mLayXS53`&U- zTLa&yzs7)e<~?g>*q*>@bFFiOOpu(mA%ip?t;tX`KsIzOcn>@pR{ zf1-sh5r<2FwSb-3tIt->@ih8C!Zv`h0Du(Q$`mX*7}eR-;`yYlJQ;mI;89GxGQ4h~lwe z+|?U5GAHD!WA3^c8u;}*qsW0vNqOAa^-l+~tH#$&5d99S@$sNICWg2oa#-BL$s5Dk zLd4fTA}~C@Xz{_WiKBg|By;F{bAXPt+Xr&S?RjSA^dqV0CMI)d?NA@b5l_J7l3}7` z6;Xxuqe5>Rh4wcJ9WER0?m_QWOdYco+C>#A+{n6g@X-)l4-J^ar`&_>OL8dr1e!Je z%kX;=%n>pBdV-&xi`PR0X7$80qhaJZ`ERZSV#=I9=s$$Nnxa_Lba3!hjv$5qHxrg@ z1rN=^^jp9h*Ba@+hXj!R@@&aoGb-4lLZrLKsbu46E^8sFC|Aj(0;1Fr&w5Tei06{* z4gfP_=(1ThITM_h(Y;-d?n}2|S{3c}fg++j(JuY>rnI6dzPg+OnwuYd3ob^Y1<7Za z{{G|&C#Q4Zw;`9Z|Hzo=LE5=9`@c9u>v>lLaYSl-mux{7i2e|?tOggsWtE=}P8Au; zYL?;tftcgIbAOzx!qLNr!8O2_h|Fw?`&mPQSzM2~zf+eVBT0=te?eVaI_WN%Wu0Tc zHK?=g-$mO-tM?G#BQn&k|Dm&$mJl&x4DxKeMY zIQBA#^LABnF7g)%d3gPSJQB)#>5vU;g+wsPpdNJO8S`ODlCq5Xqhtxu;kFW*I^WnG z&O_fYXFIgRTiJVKSJ4^)Rmyya|G4~;qeMJ6{2ToaxNkw+VTskbP;N6Q_XDNi@s?aD zmk0`NT5l4e6M>uybA-ceFqmH-015bRqZCr$l$>Z&mT1-6Q)Wtt)0FtdOW7l2fb%cq zw;unN@?SHRUP&Z(EY2TsR{(ZB!UIxlCnTBgxK8*F4VE&;8M-w26Ep_HR@9V8h!XeN zc7GAKDW2kWg<3sAQI=_PwaMf}eN@;c3Oj*xl64EoByv{Wv^U7W9aeL=@Nz<;9)ZTKcCf84^joLU zIx`3elFPYie==|~8^Kq>%-E8f9mRvZD zA+2rP8C^puyCTVC{Qb4uzgDZw(!rfqQ%!~gg@^~PCr}}d*kf}PF%s#Hssa!vr?F@B z#5XhKp5F($TGVtbLRG}qm$ zIks9Br|#tvXdZ#q`stuYE}TjNQ?*S$@=J%gTBYWfkS5En-6@%!1bc{N7^<2aTS*?E z+S$GSEr51vOXC8Yn|p+>GMw~VZD^x`bi;+0iFov7muKD#DY$?$**~67oyi%kV1B@G zkR|fz(9b#AVjvbg9y@Ap?4!|PC!s-OKNn!OMYRi0{oyW+XSljgenkyh(M2(NfSx;k zG97su+*@ZgD22SnT^G+54HROwo@&4d@+%DId4qN?dZQh^@{rzGrAJ8P4C5qop`=(u z@zOyhC}NI}=c2lSJ6iDJQ$Q%OO1e{{b9Xe-n*-XXgSgGzzL;UGqFB8kyQT&(08bKA z1EhnCNY~9u@4%s!)1!ke&_26YRxtULA=gUBQwNAKjSby(9E;hG)Bs>cjs(r>=jov6 z`nd@#{eFHJa%79}3yQ!Q7wu*nI}W9&sj*fHM{h?Fm&=3k(h+Yivt#w2)7Ziuj_4_K zk|YLhvUw2}^>mv{x6an>H2^bb(@EWBA6 z*@cP>s+}>ZK^IVi5XL1xp@0^KGYnA7MX%{5LywCHA-0BdTndLVT4($cT|{TpWyb3; zkb0s?-#p=F39)qW3`j&gu?CIQ6DMB`m8~aE0a%Qop7J{3-BSl(=tR}u{4M&`jC zvA>24AK5+cpE7xaq|A5TX7Hiir$SNFzz?IjLLCQ4wg&|Sn$x6h9xlUa*B6i#qw8Xs z2k;*l)<8%Xh!PmNjbEA0PeNXJ>v)4iBk!M!*OdS^{^)$^=d`2^DaXT-Ipw(Fc_RlB z_?-%D3jWcBUfb?yYZG{D@j)qc#rIvRw&|SwKkT=C5klCu(hU&)&**)x?N+v4)*h%| z_Gs?uV!yqJY+6q2o0AFhxmL?1K-SPK+wFu&@??5ILMzfgI!Irso5DdnQa}o z#DIUC0`Q;NLo)B$nfxPy&6D|vrsW2^ncy0St&<3@7XaKgRVmCcsP_|wt12#l-a^0$ z3RuWKo=3nC1<1&nNr1U9fvtS3*$B{8fO_N@%-MDsVS8#pQdDlE2DZ-jL|+fzTK}kq zkcPGRnqnHj952ZJg)7S1VeV?KB-|GI+;y|Xg1JucPe!)}9%K|rFd0`X$)G5?06;g( zs#T?8IbOlzP;rL{@suF#um{x8k*7*XlW7EIF&zY^jX#H%v(;b>UnYmsKOvFluJPC#{Eo3C7~(e-zgrU{c{nz zG6$hjV^h0PHiWS3Sm_3NFy^ccm(2K*E{T zQC=-fg|c}an1k1PBUG49T%o+|wxE$s&d zdFz>Y%^|&YNA*_g0k;TSW9D>lw-!|{?B{FI`qrx5c@fi_w68uF9Bh*EdlARYrlWwI z;R|hL4s=Vbi_nB~_$XHcrv?PqM^IxY$QlAl2{03+gtP*1u#;fBapB%b6)ddKQ2Go8 zv#=5a+jS30qT7L)6?T$W&wXP8Xqef&o}8a0z|7|214{@PqO*A`G43P4$R@M-%^skM z7}taVw^zI`UL9oxvqQ4K2eWoB@?h5Z$I}b4HV?~&BA4!OA($Gq7vp!6qoBkwYS8@_G-OxMSYxiDdV{?op&pdtejf(PI}7 z`%4nXxS-s{`{!s@qL6gZEf>yNA&!%hz0ZMfP}|sh+!$GgNj_d7896d>Zy(wMwU?R7zZp_yZNu)cu0B4@Ea24 zmEjzpt=CcHr6Jgpc%61UL$F$0I94fb1lhV$=?8%}32r0=mz!R?RJxRRx8R8%5m!U- zUHZF;@EiF%OW8RP%7x%JFsi)}Y(1c-2;;U%_tc`wg}1k8(F#(EHk8D5HQ4xg1;lckAf)= zAV#?|1engnlasKsje^=$IMLsOS=D#+U`~H_L{=2E#%RS*a#3)V_J#zyxvLrWymgM; z@sW7CXafzgq>x|9S}oyDb##*qhT3|m7vC6j7I1LU50J(oCMs@&zCcv$(>N3W-R!y; zXwLQvp?hZEZ9z?myQnni4MCXPmU++1cJ;eRPI|=q-tx#4s~LVR7&e*3uXQXQm+ua0~ynB<84l) z%g*$4zEkW}C!~R@S$XK3yq&ETOYvY2Iy!649hzcJbn7$%?5wj-yA z(cULfkG`<$QSgj*6S-y^?E?|T8m&E4XtgB7wc{g3(|R#l#ap0;g^RSn`B<2h zJ)<25k({HPPdTt~CMuSjKT-_ovGK}7A?e`$*F6M0Rmq7SD{#YMXPx)iz0T7%LV7og zcY$H@8SS5M>)qTOl!x_9SPREX1jzyKl6ikkA-yd&uW{xSYaOL4{pk;vRr=q^Jn#;5inv1b>WnU1~Jsf*_xUzoAT#0CZXfAu^T@ z^t)pkH4ioHnM=d-2y|{yxRI13I2=nhW@p4{sP&@Z;~Fj6#U|v4jv2)Of+#Vie9 z2CK%WjfSs+d_D~qi=ciVR*j)tqTz5T>-z9IY94BMFzuS%hu4U)Z6B708crY^lYlx6 zwO%yrszbX(T3`*V8Y%+b+m%DZ^=TjCSM14Alvuj%dg$mBdzlJ{idB(owqj`!#VUq{uz04)ka63-3GuilqmM>k zEn4Yz_asRbG><+*ew%~~?^b|Fnd{vSLBj^JP6vk&3(4Psl7hPAVNZZyBSnu za;q}^93?v&XE@`AlnQ@T2Co2YDUCOj8V#yYdY2ZJYY8Q$$=y*(U&X+el*#gTDju^{s4fFXlVUm3C_d4u&-_0p<=W^bO)4 z0h-CXUTDHda{2Tuddb|?%$!{!J#XD?+@ih!PZ89_lNAf#pAE(X_F+?fmvW5(^_WAD zcKu{lYl|jR{lzI#jm52dNMz6F1q2Li_bWkE(_u9Jv5S-3%XXkWzmyiD(bke5=(_kj zOuuc|0^#Kvh?ovOAUE{Cd3&9(c-g@GYcwm^&@6BkvS9-!a$SGm{*6;nn74YiF$iwi zFVq(*&AaM{F4gsi663eKAaErBkwem-2W==w6o!-7omA+NV9(yP1?+A zDC)^s3(~(mfoe~Ch+st?mV8S2JC$O7P#C)aKK3h_$(g$ zr@hjpSa)L8dN6&6l;spgwWs=rVRs$HQS%L>KSiEa%%|yo;srUL$;2@P`Z}w2+yN3# zyb)}GC9O@&vw#q>i}4mf64hVQjLC{G6Xm_^Q-k@fca`dCt(Vms?S^}Y>DW`Uu#E%- zkC)oRF$^SGYI%3+k3CM({&1%L?!+u_8BQ*0!XIf(&jYjMGbeM1xBLgF)-w6^O(}P) zZzt)lf-vk~C*9fE(mhNHD&6?am#%EHq+74tt#nRXGwe&i+C1THH8eH5xEg8{$AID^ zT}wHLcV+^?-^OFl=QN>ZxFgPDXE{~&5`RnorYc@Sxyf08{UZ&+z+6C@+-gIcJ6LVn zPp55CWorrFg1wlkSc`JAqxEM;3kT*&*cPwWD`=VtoTT)GMsKCJp7b7*-xcf8tkuyw zC!|-%3NuPx<}_*UlKy_U{1zH70X=iSop@FLw^45+ycppjAhjK%b44>bKj~qJSPO`O zxXjrEEYrcQ9)>WQY~_;EVevc+jBLY%>xn}mK#=Liu29$7irPjWZyPJUYMK^z7NILlBc${(20jZL)c^!LK^@<~B z0D+n-yYm-@*_^8#?q|TIc!{zv@!E){Sk=#jUIP33JpRr;^Dbpry)aq!r5?7lG`D@g zz7>hF)2dMBVPmPuy!IiaAhjHyiElt;-F3QL7=b<@@kD15osSdvHIhd;(Lm0#Fq1^i z*@;Gi|5A!%=_cQS_&t+)#e=_>7s+oN#M!nJ^CB&Y!)^y@?aW|U>jAekoNDFSPTqm| z@I(6f$#)>ySAXa$5OdAo?KINAD$#YunmUSZ!bLG>`4aIb+$0K>s1rOU9bC=iGQlGl zB4D_l6_vj2rlZ%+}U2xfySsWfa3%R8@2I*>X z({HcZm#*y3>&_*_L9!lw&FasGo$v?*#p1N)8ClEvx3Ww^_eS38ut?guEO97WV%XpT zXbhia|G?7OUDkY%YS6|USYcj!ChQ4t3&7|hC~cma-cQ&uF9f}GaI@i#v*1Ga5Ub)o z>>gbe&Au+}P)?;;FR%Jo<^dj!4DK^%Uwp%^JQWVl2dEVCE*v_&@O(m=Xe8+LuDZpn z6e6~Jh2Ca#FYuJTb}vsCQbH7^(ELQ_bHpZ4KUCbt}CaFCJNREInJ4+3Ps| zOb1H{ioOeH1fws^wke`AzK5f?!gt~P$@P5z`M^XR^L|3b1Uz%Vy}GJD6bg15M&5aj znCTpkjshJS)VH6b0!k1uA<_&38z1%6m^5JrjfA5kP1|$4wi*!L^P-eJPn4(Oad6>i z4L%|OAK(Gk-?YdH8z7mgz#oMXI}BjJ0R24CU>f~~g6JHjKXaXN7L8&iVw~v5lH$mq z%ll4}V!sUnOU{#R_wtdVge9(|gEik8J4Z(I@1}C{u(d#9weKTon!CL!p_CsN4e9G>h%mw zBi-I9;FjhHxOL37`MRW>0k=&hl7P#h48ieQU1^dh;Erac5X&8K-SOhk&`^{p^$B+j zRBt$8R(z%Nd5U>)^*SnxxLQj8)wueM{KR=T{Fb=d-%5TxSFO1yX?Bm=FqmE`DLFec zKy%0>Vpi$u2Es>z>A{dbc;QGglwcb5XcI@SlrU%0z|Ol|Jn90hB*2abE$3`5euQU{ zAHgt-z9{84&g9h;F#9a>FvF2>N|Bkbh_+W#T838LWii`2QZ><3;Vdh5M6f`<@XGRD zEMapcvcpwJY&HFfM~elDuqh}Outz8M!}#0HRu`csgPmkfj2yl>7*6XS zzS$Kh=J>?7j}mtM zV@A@s?e@@To{|xZMrnBzIL9qDi-+zW4~e8uL3TIoW|>a&Fs{UGwIJURA?`0D?b=Xg zo7*cTG)f2EoqY6h`WMtU@!w2&U-R;t%z&+Yh73=m#)8L~?|7%GU3P@=pxjpI3*XaD zA(x@x(kziX=Na;Ef`Rgro>=rF*~_J+I2}Uv9dPm#vF4QpMVL;T6ewML9N^KjATK_g z1TbvU!RPW5Z)@T=olPRKw7cyaM4nNHi5lLU<+RH>Phwj^lzivwX$+CrYrP_SZK7o9 zkX$3>J}EF7`*MgNN^o&!7Q3?LAj*6^l=|U?3L1EDh#un)4$))a!6ACR!p}K_S`<|~1zsmRXanR9F3x`GV89u8(v7n|W`N>OR|DQYJxkE5sk{n$ zhzjbT%GM7i1l8(hdm3JUcM2Sam^i~XP#w;W!@E{?GvdS{xc5|}*+{yDh~^o(YHTse z@ozung>%#?=4#8Or4I4>B z`$WYHs1oxI#oTF)QEn+Wd&++V3o}zg3Z6tW%|{Mk0MocHzKQdA5=pJtF$M-nYsh2@Y2I zk-3!rm_%UKaQ$&R!$?%~%RV7UmDo5)H3x_0WNGn{W$Oy=ZbE>)C!*?`z>26UIh?9` zm3jzO-K6JUY~}Sm^@vXLYHW)vp?(1**$$RSGZM1kIpp1Qk!ynwwe_Xz(_+3p*EGfo z?H!nH1EGIZ+Bn>GjhVBS!c~{TK6ZdzNpv3D78-R5L26XA5_j5?F_TL_EuK1*MYZuA zf~~u`H{f@~v{w`0-yeH1vDLJD!^0pbPq5Q*YT_vr^Wv#^N#l`Dy&lRANdmWEM7Ujl zu+o?ZgVzA3@pLp{#Cp5L*5dRi{I(v}Ha#V4A;w$mP^>q+cy&A_m-3vi6b1!BH ztHU|e0mnNC39&_iT)x_nrP+EI18C)s6N1NjI~~k3!R1kd=MBOrwnVN z40i=-WB1IR(g$+rQ`>o_55gxfjvYlym>3>MdYSxRh;=D6=Z>p`Qc*=V_jEx+S_z$Ug|5-Z~? zzT2F4zyFe+NkVSR6hGaTDSsD2c=8g7J7{#tzD10L6h-3eR3gFpm|IkO6+zGzvF^yS zmV%owH5bf(+aoy6nLt|pOp3@pt6Nl6dA;6EY@a|7HQMheY?-63F<0*J4GdXOZo$g` z3)A$aEJBF0B3CHj(oJWj@G8KT*l6Nx4Mnm4zZ(OK6!2@$hhH$&^HDHdFTL8Pxt z5Zf#h-JB2n62;+2%8k8$0cEgxVv8Hmc0}Uy5s6Rf1U!8ve7(Z$C}nO_(?ZZ9wi%Hu zwro$MG;j-Vn`6u2sUBMjX&TR7uDOB&85RD3j#Tz*MkL2WcX$Ec*eIk+EY|mOH%pZC zh%W6T5}8msd4BAtElAR9FqVsDuV>gf(ftK84x>50tk2jx9cG>z1O?m{O9_T%fJwL& z{f0kma=BO4pB&=3b)MbK>=1v7TpY|AP2tiq4i-pMFwZBDWOaUXeUbPy)?8)6@_&+yIlSD{@nbU)PjnU=l2 zLMGw$lPT(+X3NShQCgkwCQ&(uXfn!Cg?nbC6?K!5ekP02bwROM*{&-?e&4D)=G!9E zE@?OYRt>u0!oQ#EIC=k!W}=rm!O*8TWkCgll|-;vDwxgUF%M8KxCO2>aL+ZtjVBsC za+Re{*hYQIt`5QD0k;bdpO8ynASQw4cHII8n7fDN-Hgu}j#1A=zqQBZ8W+R~H^&Mg zAKxC;c z78G$q1-~WZ>IE`xJW*n3%)yopM!K3!yn1E`kW^v_fP)=GD8@VK!XgwyiTkqBfAvhK zKJ46oebC04UW{o>uiJ^vyw`6GlEDh_yFBk9>F^skvxP6QTg(s&UAK^V zFdb~mZ}SqnsjOov7><&?0Q&#-61xE|%Gu$L;UckW4f@5>sMJ4fHm;k_@5y$3DqWTvBM7#z`iliDCD%06aY6U=Nk zK;4+dJfA9OM`HLE^2>`-1oAB$=Ju5TD+T3gfz46S3aJv<)S4={h{Kw>>17zqdzTwd zcZ~(BWrmDgP8xm;)*0TbbsqzYxtw&J`e3Jbxv4!Si+6E7TZ9X`@lH~_6eR>X)VgGP3t7_*M%y;?-rWElg44{nz4CY+HG*3k?VHMi( zg+ouGCxzD9p9@T?AVgu5^m|&g&vAU-Tac}YtF-n8BgYt(Ly9SR64pultv0;dU>=~D zQp5vul=v_s@k@ef9)4ZIDo9)i6Y)7Xk$8YgELD*BoG9soRi+xlsZ?vNh&{FT5mS4Q z6zimD9!$12K0zBUH<+^(Q;PcBZ{yKM;=NSjdJ%O=gM8JN`VwCuU1^>c#kWgHG9WC<-~k={QUM10C<9CJYb};;pvLK76`z1l)iG9*ia=!=?}5kWQ6bI~ zsrW)$h{+-qZDkIj+Czba)>;wI)Y?Z(+csq;MTBiY zox}^Z;c|nyLNTSN4=Oj-8;K_ira7B_Ndp^z7A3Y5&FVb`CRLE>t0E~{($6XU}t4uDSoKM^@hQv%0P+;+hp*fVX&t%Ak3K1FgR2h zNCg=Dbyq>K6l;~iM#EqiWgta_Z8CVzFnCHDnsfi9j|_v?w15`ZS=N1Q7a?0d+s=rTV0XoWx`2eV&(xS(Q#TKJx&29P2M0NVJe5k01& z$B3Cqu?j4_fxG9i0+9-6aN{mgw1m%9g`_oVmk(ua+1=FjBdMym8|8(L+fCBEVxi+9 zYK+CR5pvDbKWK99IH9$cwC+$^YeB2og`DG+R&$hA4@;}8-t@sxA*4s|q*CKWLtZ^u zqFSbd+fEmqN>~GCli!aNUpial05!y1{oTypzusBkBHvkR6`_r)I~8pq(Z(y<-TXaR z(F#p}f3*|(;T!aW9xJm8FmVzOA~);9OO=hiSgaFiLuln{i>fxA$EOJ6g#eRtnZJgCXQ){2J%SX;J(XS}oLKsnO~wQ>3$^ zcBU2!O>v?YW!6IN7%keKScP*wWs5U24!`7@jVu>PXjjN&F0;CY#eY=J@rL!6(8r=o zH?St4WWL}+hF5?jl_$05Jk+}lYMoN6F~tWwlp73eCaL|_QEM>ZD?HTY26lo{t2f25 z9?ByI)|b?HpRdZ+WWWPF)RzqGTfj0KaZN-~n+>?Dhq~6lUL@*k4z<;Q-`FuU&Uyp8 zm#BYmsO<*)M-SDen6rs`wL^`Wh&I=u=3k~=*54E>}?M>8v4z<{T5A;wE zHn491%WU8dh;(F$0mnSlUmDm8M194fmKyNuJwpqeVqm`~>Vpn-h5YVd#K9|>{Gxv8clIy zVW`z32KGEqGJoJ+h}f#hfM4@aUox+k*32M6mkM>YE8dz_l@_tX1)lM}1JXAZ|dAtpUxYTuR-i7Wf!$(I4!%qxzKNFCjD4ZafR^=%!2%3wsIs&9Kdaduza zH@0r*i2XMVOZ+%I@l|}qhAoCCUJK6Z0YV%1tD$kuT@uJEJ)w2x+`5IF;vfMA*-?JuM^8eU-_wXpHtZV%ArIHXrNJ6*=Xb=<- zLIME-Mra@bA^{?afQUA^G$ay|*y%t(M!5ux7!d)LaZpiF(Lo0pR0fejMF$iaL_|bH zL}XAAQ2|jI@~vHGpLBK66@B0D`~C5I9_xW#Rcr0D&py{Wb?J_GYH^7-(O=~k`iHIz zACj4M!?+Ar?pW9G%rWT$T?J*8C55iiGQX>&tRT+Fnc}w#A#bu?gS;hV$m%pgE z!d03#!<#5v*}k${5f(I+jltizj4?w-XAE?eR?f)x`dnpGU3q@LuQdT4;dIdbNvnv_%AG;I`#jV z`-WQCp!xDjr+Gcar4?SEUsb)t3V&I#xI^TYP4|{&p>hVggv%vzW|#W&s$5>5ugup` zUaAsF7$c%9rB0VE3BR4}_BQnN~8#}I} zYesQJ1?5}eol#s+R)R5v%FD?Zm&;*_$m~36K^=H%SxHIREV9q@O{=8*DyZfP^D|1P z6_=uVB8QdDK&c8*QS}zsA2u#y2y(q4JDnhBL!Nz zym`~7=2iGbR%K~Hkw`BtE%o|Dc3x>g-gIw;n2SaILliSyIVeV+R}3pEL%*YWd}y9ejI5k7qY{%}X`yRa9_9jskX`1_ zLmwMfR9s#mMwjLJboUwP>ONQc(9t0YE)OZ4pT7q4KM|`4ww(z39JR4 z1a1LF;5S@%1G@r`07n8_V6jvVOaiXKkM7R^ZU-&^jzoSdfknV4fXiUF6}SOd2RsOj z#+v2=a1O9lybx=Esla2viNGzfb#?QAhk$Em*~nuKs&D84gzNa1^wnP&;@)R=mwquP66(3f%*WR0j>k~!y0HOa5C^D za1k&9zrg+iuq$vYa3t^mun3rfTQ~Fz?S;S%zz2YPfo}uP0QUo9S_#n#cc+qowp7+JAvuI zlfYVF1b+SfIIt^Fv_ss$L|_qcB(Mf}D{vj~Y2Z#^tM2Nz!0kXk@F;L4P@q4*2y_Ae33LO)@z8w=&<&gi%mt2gA>XUePF;{M@B;8# z;8Eypy220icYs}iPCV8v2aW`;0;YCHyg(oDB=9f5h>k+Iu15a=4g_Wcw*#wydw{Ee zKLIxbT|JO5FcEkGI1<jY422F{ITGaq&L0hZ2!8V$xD)sRa3bB5jsuX+kta| zM}cnu1>Vg#3v>Zf@=#u&4_E|z8dw8-7q|}S%tyY!J-{=-umY4f8RZ0~0%rp!0-pd@ z0e1pd0rvqn1KSj$o`H7&F906~w(1Q#U@B0<2sp%m&7!2=OK`6?hUj5oj+)zQ9Sq zHNYC+cHqVt$QQU97|~aV)4;C4?xmKRxKTn9W4JP2%c8`AX`;#!~!SPFClR{*B~9|z6@{s3G96h7n&90fcI zyb&l;(NBRc;AWs3_#to#kp5=rJm5g!8sK!`cHlPPQQ&T%7=UpKbOBrXkskOQun2e> zxD1$5iFyVu03HO=-*~(LjGl@19ftskHQ;t&^V`usfHlCFL0De_lYobS z*}${Fa^MqlF&=;$fSZBu01pCZ{R!nAjQI)Z0v-UmfeY_IJpwt%VJApp| zPXe_&(J$RXj0ScE&IFDGJ_sxVt_9WrUk9!O?gj1y(lbe!#yhhQHxhAK!&~0Nw*E2QIoF`4dztKO?Pdfs;0+WCvf%gK7fFA;DfYE!A z9_Ru_WTT$|lYm+8BTnGUzk#Bet?^RRlr+5 zL^@zOa65410mKJP{Rr(b4&&lulnb~6C??`s`Vi_F*aA2Od`I9sU=QFL;Deu{oWSRR zCxLr_F*ztVFbSA+1o;DZ0;_=E0#^Z3K12NiZw4L&E(Trz?gqBX#XJK{1r9xmas#u0 zRlpM9D&S(^X5i1jqrmo`Bi zs$y(yqrxMW*|4?;pMd{KXD`*2JFpWSGd#N0bxj-3ikK$`x4EW!pU#~qDcNA^5y$_7 z*ohbt9kbY;9^EQ4T0bPc5dV8$x>OfeuMcYyHX0e>nDlD=?+iWKsAmRrqHS}sv-AkV z9rN0_g~J#p#p=9psqRg}^yx!n49Fv6p~L4$7Ebj2FjeMEL1lihm(J3sX7pD)!N zBD>p7c6$SH(bq5Rzg(*82fO+_ZwvU@3c3~aTglHu20wPMGy<=eAATmm&W+=GKeq?+ zSqps*^lnDIFre>%UJbpcQ7;PU$DuE8AidL$wPge8J41gCx>ft7b9%i?>FtlY&yx95 zy;FQkk)D2S$N8k89?(9HM4N6%^+4YmeDv2#b#090xFJxE_0S_PhSn*c9?+f8aVizg zZH9dAkUq#Q<#QHx9bjkG-{R5VqoGfy1gbptsr7Nv*EuIa?_$)a1metvJ_Y(vqy8tU zQ=I#e{{rX-vG07t5GVE5Jpn(f;ivb1FV(q>er}R_4{!;re@A`}82n`3>!@`u)a;*2 zTS`vlJ_Y;l;jcRps$AR^NvB_0ya?T@pY?#QVVtHJ(<5ddvZ3@@&^tj7)elH7fgTSX zOVL37vt^8(K~a1(Ptd;eM?-l$!R6QlKZ&rj>L>f5ceT*TH~khJ#YyAb`I8|Zs{dPM zUKDSFhHD|%S@n}N=#!ya)z@U`Ug)XtRbSr~f$|?jkO(G{5zm;fu3g6 zXGxvT6Y0O8?~2}(}w=7)VNhs@8JZm{P($&TVmLxsk{?rI{``9z*3 zb$v4Q_RvF}2Pyqr=x*p%?Y{1XPCDOp)Z1N+5e$0 zhu+SZeqzA?TIlyd4^@v;z8%p21ijRl-d?Ob(8~|~UFc~>9d)eMEzTymmjK;m)Onpn z={vI?YF*Oq-f=kF{uw4)kde6A(;Br9EM&Ey(|3GkI#ZYyqUW3;xtlf;8@yKr-?DTcNX0TKJ&9v@64*Q};q2r@^bmB^V0rXJw7{%2Y`aRIA zv0vYh7* zJo};dZ$Ll$8~)?b;mE&LIVira(Dn7|a8o%9^WJ3mxdnDfh^fBb4C~do&`Y5w8+F5a zbv5)m8_>5xUk2T3J$V@VTIg2i*Nf1fg>F@k^p}}8Hjq9I`ex`>=cUQepMV}T{tfG@ zxzOK%o^LF_T`n^8@ee(!vGuxYEA$BHJ&oxN_dO0nZvowE-E4`_3F9Di ztMf(*gsq6zDt#_=DvwoqKZJ^_LdQ?@B*nJ@>2YgUIM*8LgXT%YebcS*RBt_6pkABQS>Eql4?mrt z|3rSiGWemmzYX~D!_N<}3pK9v^25(X=>H`@7Y%+Wo-={C6X0iGbX{F9x_{E5G;qG8 z^J=HS{gdOcJJi%VKW9tyLFhY?Uwu7N%-dvML{nU~@bgO-+>6J)GsTb}+46M{*=>T| zayT=DGSppmHZusU5^fRb>BK+_nyH{mhXrYmelXoBChd> zE7bg^mmhjIbbZ~FSRTmFux=thr(ic7c2@I36fR&UL7xuW`hH-z@7n|V)6fSRbzbL@ z|19X+p<9i|-N^qP=ybkw`VDbX|KaN$nh(#y&WV1ZukWf2c4|H}t?zaq-yN_IRX-Hh zap>EikHCJQTtoGCAl-?CC!kxEyEF7;%rl|tjp~0b{JWsjI>-6AAzohVfY$q03H)@0 zoz?Y7E%YRdd??QK(Az^FLJrk+DC&+**%Zfa=!2nG8}$(D)U&XocM3y|1M(B!7S9Hu z)BW}Od`2yG-0Q5>7KS;ZsHc+9wh4f#;NF|3<+!|pijLbVgs-zn((pof}wNsq$EC(u)|Utey+{pwnz zKMTDB%|{1=<8U;m*+`Z*7k<9!VV#d3`dR2!ajt}Z40@>g(%T36Vd(n$+kIPLyi@*39P3GMJKwE;a1dOGw_al*Bj41ExEtNNt)#zRk_`pgP0 zha)afpKIagx?a}xwF7!8^ijrg@cNGGD;;_v^lI!o{lWRz=jhF*pWmX|WB!8OM57-$ zet0z}+cyPvXJChATcDqek$$M$xzN9WZZ*#R&`&`R)ekA&vxxUR^oOwToNJ2r-atNE z;m4a~{oLa)^n0L(%7@~-2z_M(=@UBOzAE%k{e$9Mjr6;ryD839hB(dRAAXL*?poN@ zk1NA-fokaXWb5m=wa{BYx4Mqo0lh7BtA2JIdJ6Pi#{6lln4Swnxp1Gj0Y5#UpN2lh z?8o$6AQyJ=y{+T*L#KC(t=eTJ^iB<=-vqrYbgS#m{m|o}j}+L{dBSkrc^3LW=mkOg zE%ozPd`CRbf=+#;KE2_2TMG0!(5EreKqBz#V|1Z$>^Z#1II5408 z;m4j5+7IPZ3;kN?R`bSs=o!$h=G)!S2SX1vUdjI{=-JS%&O1?8V7|8SPvz_ZJr#Nd z_UrqFoF9XpXXV0fA?&Q`+Yh~_fqYg%UjY5L=Hacd+X%Z*{gC2KgT5VlHz($&b%u7) zV|KJt>uV>B-$=Et*Ur$lLPzxl%58Z5ln#9x^faSxc>c5laU6o~gYG!$s&Lpj-8q1SFi;K>9T3 zH$%6Y$0kFc3O!VRqjFMwxzL}-zSHdsUdI^k|G>{7*oEr%biL3S`hMto{rU`kEb2EG z_ALf-{oY})H`Q;#m3Y1jJD3OR*YMsz8uaGSt?F+w^eY=kKNtGd&_mS^jn~!CTSLFz zn7>^vMM&QY{kjIyABLU^J=D60(qDvL&_McxtAx0|f&9~;FK8hBWa#D4v78CipW(UI zT<9~PPcZ8CarOOoHT1O&_}>bBIdrS~KMegz=vMRkMd$|_@SlK*cn9=Q{f_D{4f-~V z{HcFaeE){N0{hNtLqDUn$K84{_3?fjb_1`G?^QTg2ix)TRKJc|kNn2NZn&|&;EUdK zq5O73p9}rB)+c9S_k@KXDpx!P^iB(%@>z-Wr=iol<6IXUuU%eN>+w#8pSU#Z_L&R4 zGjywU%xdV-(5=SDR_GTIhgJI=hJL;Q{UY=;&~dvl&_4~&brWzS<2ZC&-UoEU^;H`5 zPoal8|4=M`DZKiGZs3H)5FluL2qasMRra!NEgKMTkE(NHt@EqCT`jrjDU(LEz z{%fJfHxU00=&=pNe;m4iUS*8mE^q8n{7ziBO@wY$zRu9+K`#wTFB@7fKlDA&2N-qK zk9v=z5c+=_(5s;fxAl7-YoY&u^r7Z?%6|v+_wk&|>U#S)^wZFr8{;#)2jWBrr|%TH zjXK}Mp>av^Jpp|*_MN$=empF&j#&>o`c5Lv&(1=VouNPak>6R^Sb6M zy$U)W;{(}4 zR8QP)R8D6focCa7RZpFvuYw+`o+zKS$ma=_&!4UHDS@Az4dhb`eUC*x6z6*A^xf4^ z=MU0%L*HkiQ=D1QcSAp5Lz$lqj?=MQJ|`qQKkVjIVLl|gVgtx!5?fL zR|Wi~!0sx{7srssIV#xBelRdzC&TV@*zF^`n@x5*19lYOJ(!<#yYkR>RR39hh3GrP zwB7|z8|fv`uS30JSsEy(;d%Wj%A&qKdygpjBn;^F7Z>+0%mjDlV7 z%HVpnxNr)VQGd)1gN}ABKHrcY_~8{~|w8{n2k=*A@Hq{jfl0 zMS2hDy`Wp2r?a59hd$ky-thdm1p2MeL$wF_uZ3O>J=8oy`g-U~q2n|Yh|lmo*>32M zLeDhn_H?}fl>QX-ozO$o6X{X7A^nDhPW4FfZH2xF`_46ndZe++=S%XF3qNfzFId%+ zA9@6It8%V{9t#~1D5v2$WITlK(DmnL>x1JkJ~ulIyY{!&)y+5hvD4iG*>5gFp9ei7 zNO#xk30TlP4c%&8kp_JSbgTND41F7P4C_ESXi%wRe6F=0CpzSF(8rkl$gV@I9&ZoW?S-9HyjjpcY#^WAh~qSL{rgU? z*@5v)*?C*OB1GT5p63%q8dY{>6!*k{9@;&S>8_NM!;E3d(M0(PS) zVf}sW!25cepjSe-YKQ&M=Rn8uE|9(?P(Np(-_t<)cvQ?X=%M-@_1hHa>!4fJe=hXp z&@IP5^m)+R7~?a%53v$D#c!o=g6?m?|9p1kVdDhp@&OuVQYOl`F&%%E@#8KZL4fnCrp??qEDt#gJqtI_Qrso%) zs2-}Jw?lj*jXLT}U0<(-o&g=xM<9Rb>iTjA^jn~Zx(*=!$DwCWv!2JDgK-}odUK85rte1CO4>`Gv_j_f9y>>iclkNo+O-znG?W52#WsegE+4bc?$ zYS<;tw?0p9g`NuCY92TYeGqh7_tfXZYaWVYGW2}t?_=LtZHo6_f%&4d8*76Fp~nOH zSqndHpl>BVe=+&l7$|oM{Ja3W7hqQ(50!gupxor|Ec~S`tgCw#`_7Ffe~$&?+UmwU z4ZBe7PJYs$uY-P&{OmOO;qO_KT_NlyR`dIIADisH48&gxJJ+JRI?WD$rwn#AmP-}<2+gKjlnu7ti9I+dlqT@CM_Y=XWUy487OKlHbuR~XZWcu(OX z>|$%J>p1}hXaU_SpET$(&?jD=58s86{k#x%ZrE9!PphGihHh0KYoT9b5eL=L4(NRw z(2qm!1>LH>oEb8{9Ai0*@4rB=Xdu3H=y?s~UkLpsi~KtyPl~Su`U>njBjyIiAB~H< z1N~+_{CosEtMl+~==&ScPeI=YeQr=W<-(WhF$x1J@!mT9cM!E)EJybuT^>`2H??W%ezO%?sk7_+` zdfs;t_AyIC`=fXgMqrM``4P*fz&JF#x0eR}W9XsQ4U~Q|bg{Z)KtXEN5tyvKY!gGY$8BO_Laj}_ ztF$iA`fC5Mi3|vp}E^Ml(l&GI}tr!Q1_D5)AM84dIkJh%P?rw{1w)vFDYFlJQ zeL}Jwrd=m)AzQL5)U52{I>2V2w$vtW&}NG#IoyE*v=_p}*fy&*akou-C`>$I!;9vq z#lP9U)5L0rwm}oe9Nn=0j8ogEiPxRl>za6x?#ChT->iw>Gzu!Usx~Us^;)5rEpw^2 z;WAp)#qX^rW1ZF6qGbQ-Cq~KKnsv|~v5DSVrMO(~t(uYF+?CE7llxXVTz@&daWl%l<+iP75AnwYL_af)3wZMi1CwP|~t zVym6@kJ`1*oTAR2P5TaQz9xQgXlI;ayC&Ut7>PN(LVM3HR#NBu(WYInizRmLKX!4< zj@x}`i#+-*J>v=vd}#YV)x*GR+n>pzNIiP;Mg z-aJU#*GNpzUTuW>IucHUAG=#@+Bp5p#+A9&_Ylrq^gm~JiJ<~|M zB()x)3 zGK8RE7iu^f=d`7^{wo}|A8ccAZ`gtKA2>4RIqIh--L)Z(`ceG9niJJLdatej{SMpr zlxHpFxz~|#DR>^0HHf(&_A2OOv=ZAiAZG9zIW$v|F>hXL>)q=LEFf&!%i-c@8&2X2 z9IxB9g^N#|n7TJ=(?1Tky%jbe9d&;=d|e9f_;z@3Ie+(j{Tp-C@Agw?3q79)ojK5L z9nEb``f?pCutgf{AW`d!zb~M7ZM|)1o}s#_KcD=b{f5pt|2LZ3@;s)`*Il$8IOpr} zMzsQ7t@Rco%hAGPC@_oYp&vS~}~;;*(QKikCPd|HU^heuMg zwbyJob*Jb~oA&GbPaCMe+Qb`N%n;PWw!sKzdi-b2=$yZ^nb>O6UWygp*{-C0d;FWt z#AkMGL!6lB82{%uny_}qibtF|*ss>Kqp{)@Ef4$a!?d%p;`6YZu>W4ThQBSbETTR3 zKaSY!T;EL8L~Gy2iH*_P+i_w~wDwY*sEgJP#ff*DYO9)w&zov@H50!!)y~I>qcL&F z_|e#1a#A&)?Ow87i*Sn*x3@z1wI7;`FKpVgt;9uJ8+-+Jhdus*Ryf6UpWjM+=oosj zrTDw^)-PL%^*EKZ5GS+Xqq)B_di8yHQ z^L!KWm_z$1O8m>AVgIBCv{=ws+Z-(( zX{r&BV)g?ZsyJjl!!B zH=|6^Pj)&qsOKG%UW*ssIJIBFYga!VFScpg@_6xIjnuz}O}eYOSQDT5d=_B7SL zZjL^%h?M7IwM)&#iCFz$UNh}JbeI;h&boBa7TB>we94A2BK8XD>R_QwJ8csWV!p76 zMLcLD2aMck6EE@Tr0S;sp{^;E*5KK?L9za#<9~8~tzTvT{_|^KiSR#2^Sjmos9dXS zqoDI5*6ebPd!F5!=ee#E;4Plr55{@ViSMLmFJ#oaHsVlTxQs4g4U_zG#8#_Xqy~jo=tnwA)Y6G zr%n6OA@0I8h(o++*Y-HX5q*D`11~P|aA>es|1P6Im&5?muY)bue&#-l7%kS3f%PiZ zLB^$UeP33-)U`c)h3vl#tigi%bwhowAJmp&hS6lIOn6@}UEDzUyXe$nd zYcD3yS>cfc@oI#IFF)^(&~_$>)s3{f+KHDMX+I{2|2EP#wi6FVYLB)PMw#g+<#%gO^VndwvnG1gh zOMBNP&c|t=cM|tC>;GOS@l7*rNk?%{ymsCtK91KO>Lk94Z?m|Qc&fQ}qN8}VdCLzw ziqp-t9UaAgn`;|7iW4m~q&nB4-9I{sCtGUkI*Dy96S4mp4QL)|3L6}8#=#WS@BcUF ziu$qg|6)%5jr&c3j*d>RGS;tG8|u3aoCD<9y56n2SN8}0Q3HR}z#ld6M-BW@1Ao-O zA2skt4g669f7HMqHSk9b{Qsi{wzqZbfj-qyV$48^*QZN7?~(YxE{Ow9Nt_-zM9{W| z)9VNLz%3_zGvk-I@TN`ic!whBI4VpYH7=a@aq}I=#0;TZ9CBe@Si|>~4MM+@-oQ+8ODT#~hZJ7%7iAEK$R{{;oajA7KGs zvC=o(64W>S-5=g3aH#!dGG5&6*S8qXD4vhQ8Cx=D$GP=A#Ygb5D#u8+Ys9GXzf>p7 zQxz-I*YUB6;|w34kC8ej|Nk6La(kFFTFmYIAmh`FFEhT)c!2Q)<9WugRcpC+e@U~YTM47atu}+!2j?Kq!$mz=Kwm4K_<3hQmEO(|B4TJ_!Rac zzM#W7U*WS6{)@zXdH1^|2&3It_1ovv}n>4PASG{(bPu!F_c{lWuku| zA*r!@@nO5>G=17)PZC@!4}>jN#DvA#;%ttHwh>(-n$h{e7HjJg-K?=Ax@|NmF*xVg zJB!AR2Z2JX@Gd&MQ|_WgQiLOVVB>2VXEqxgWyi@X>`IZ@?6+ODs83e!%mKezq8J<{ z9bOehA-Kt9qRm8x*^mWZ22xqu5okmp5>#bl+YR6%!9~dE$fR*ol!c;;l0i1H*)p4v ztLTo1xM_3SRZ(<=QzaS21{@BKN~3kc&G>H@RQ)#FuhC8LX+zD^62lg9d|_Df03$Qe z$gW1EW4o|9ViE^+9F*1B5$&p+S#=Wzz0Gz7tn8v4`7~!BXs9O^kRP!e|M4yhJ})!V zM>0k&1~?`}9_u|TFvIjLq3N<0X3Jj1r3EFGgIy~ke_ z#hc8_3_R(|saluN`^dDZ!F0DgyzI5)-#tZ@l$B0%RhCv1Pb>8nx@a1yC@S;$Ls2A} zX5spT1x0y2q5C2$n)inN-ZPE2bY{88^Gz!-&ffY=ZK!XLhZs+u&zCnFrvc2vqM~?? z7fB4fx3tjcLq7wMmB&y1XNnlEEH@)gFcE71&&)Z*tnIuT0G03trtn&_+P$xyx+P#Q z_byMBt5PkgPep?yXuCYs^(xgOHpCm^K}m3+h}-K;a?B=enCQx=yw2p~Oh!77(&pAb zg&4+o86;NBp5f2S7l{>qpTr`yhfd)2m5apEGQT%*$k5E5{=8{?lvA0L!MoE+D--i8 zi%SZ778i;{Ix5PmC=!WREWfavKceH7zv4m-u%jGNSs%Sb%Hu9ugr&oz;SWu)H0>z z<>zBDrj9TRAsFdIk6ay~rqymq86uG;oXurT^*<)sA_YxFYTik;yK#i?Q8J;f+jJ5i zJZ-5%K~pnb8>#fUb~ldjonIzg`cdFRUH2&_89T=Ge!E+j{G7g(eiZmHr%!`qOkZnv z>&CU5Ud^LAi4Svn8a;H1SMhJKyK#j1n2D8KV9J9woQ(BN`5B9&^SG8%>DBe?NH(DO zXfvmmtPnS1hpt^!dUbtU!|C@@aM&nc3Pt6w>Lm}H1OHWeb-g?h3k2HK^|3sA6RP-?okE&a=vr4DtLxn=e20g&WfJtbDNYqX(}JctDym9fe|;S% zEk?4T%3q~d<)>-cm|k74XLEXWeNXAJR;$lnrKi&Y)hm`k`ljx8OyL^!f7}$XIsey9>0MXI z^sXyp`p&8Y=w1Wu$A{uwQ+oPy=d`6ym+5P1;bqv&`F{$H+L-z#ZR&p3DtxPpHn;v6 z_%N6MD@aZ8U!_;~yAE=Cv%UHF9MV!wD*aKuKXdeVrvC+Lsfkp2b${n1r;p)=QTZxV z&Ei1j#{4hbmj`e7yEyn}8g0s6KQJ6CKEjk<@clKx3*4R3jY?kcPo<~dJR%bn|IYjK zblaWx%Y-UU905OGAfydq%NG^ zWG0f9OUo%H!Camci}cGlJzcmPH%qHfS>)>Uo=*Shvr9T3VL#D!&`pBK%kN zr_O(kz=g_x`;Rhx&j)pP^&jT^>xB?I^tG#0yZbW5fwP5LCmKZuB2nwVVBRUzx-OX4 zuugLuDSh988BwjnjG_apFtxr4<|FE#GX(REgjx>;^N~WWbAtKCLakqd`6!{*CBb|X zq1GG0e6&#Oh+w{H{SC}uKBoS;OfVlS)cHJ^j}z)V9n3cq>iiqb$K!lD#7OD;4$-{+ zd}$ONqDB34pJ2YFQ0KQ`zLikttzf=2&O>=dO5b+~ERNK9#-KVxTcOS$1{%F8L8$XW zFi*FXF5euY{pBPWhv;CzyDa#Q7JMfQ{t64evjyM9g1_=Ip2n?Hd|!8&V8PQo5y~Dn z05N)-*5Alh{$%7aVlv-NR=ky;L<|1|z}v*-{bV?J$~UR48+(E6ChQVF#l)8~Z+ zPrNCfcHk-BqKvpPLXx&HgsP_fT@tkQI z9M9O_i01;^o8#$f5zobMg5#OY@u>F}%<;5}4UXqezY&j%?alG@u!tv-A4;kE!OtA% z^`qXOFvpX`*RiU-9=3?bY94zE_BPQ>xTni<>5YSrzw7+v^Bd`*`olkU`^(RFAA-kU zo4M>fdxCj&9ZOcU{jB@B{5)&N;;$3>$<#q^-3~eFTPx;$2i^LyI@4SO-WB3JI~;th z;XK=l8)h>5arKaXcIn=PxQqFLS4!T`{Ikp-zF+d~nBU8Mmw}S+$^3cdOP5Gq#orSb z`c$r&vm~$b&0~Jh`;y&FB2 zPyGH8c)mr(jD*E(-+r-MCz4s+$b8Kl$yYGn9s`8@@7gcD(O$8?nbmHhIiX z9%4RXxwNlh{;$mU{!H@9&vE9HE=XRLs}}|l<(v4EQ`-=$$ECWB(LJ>&HSqNlE0Pxi~&#aU&r~DGoR0Vzhr5z z%KIAgsoc+dvVD6@P~<0{=lLY&)0p4K^_j)|9Olja4L?hu_mdGjWxjMDmbOD|Ke)=R zACJ*Lh3JL_67{QjCnf(K^Ao^RJWnr_ysDr5%)i}R@~V9uEu?)q&jTHJK#pMk?_Oz- z=}zD1Z_Jbbulh<})z9n99~mThRS#b?zm5GQIHaFOcpgK3&UTabDxQ|i$90yxDpx<| z&GSqZ^BX%!dsW_tz@w{Nww+`9dwkMf&0|@uWITW8{;bNig!vynkoGFhSHQb2^N#CK z3;q!M`TEXaKi`256=!1%e5#*}L()E#^P0>2L7tyc9DRG7`8)Ty^5N549MPmUVadKsCr(<_NCkpRsZ>vc`;M^ zk7WOi+DZTAgC(EBd-aLaPT)}AUc^qQ{_`$)vTxGI zt=p;dLS#qDZ@*Xas$W%s59MbC+Yd>R_NBTvAvQDb<8i9`;it^^SSszGXZy5Hq5bFS zd{bdtCGGdI{SxpL{|nr&RK5L^?MpJG{Ta5u!1mwHmV8&{+g&03r1>Ski}`Hk&FhxG zFrQj2?MJcwcIJP1U-GJ-oM67>a4>&~`Srbn`S{KGI~ zf5*J7i{!gA-}y@E|4>KCt9l#E{NeW`kKdluw_Na{`e6mzo3F?J&iq{Nha;sM@gL^R z*Kt=}CF42KP3Ei0do%Nmr$`>l8-1I_{Fb3^{aE#f7nslDd{KOT`zP}|kGSq`hjFdzp`C`xWfx5cA{sJX^qg z^B!{CEg2#GsCZJqQ@LK}by_Lg=P~~Q&%>&I{>FZ`jFEo$F|at!_S^SLUe)t?wvW0_ z@;ljotDZ97OWh@}`tyy<|I}CVBiVi~_)zWgAlp~WkoKxwViKi)`-hUJza2!|1m z-1@Og{}kc@=FQikZ!kY}zO+~UFs4`Nc)II+Q&HPb+K+I^42FTHdOpu_s(5Oc@AreW zPnYIm8}ng&Ubu<*uq5dx=5A@P#`{3#w{(=es;i;QFTGmwDeT7&p622F_LA?%{Jm^H zkJqK&G5-?tk?%?S(agWj{NuHfk7Par4MF9#v!8*?PhkG*UD96pDQ3R*9m%VDu3`Qh z`=7{uwlVL!R@yIO{wwgR>`dtp-&@Axd zHdNZHe!hkIJ@-pKn(faqFTR(&Dp$Kcvi=u*Dfz8zKbZMVBP9P{=5xSPzRq;XEB}u% z|8{}oN3i{e%y)82UX7zTbO7=bcfaJ-IysejvwbD=wI$MC<@FJ=Y%-vmAmS#576dF<-j$810NC%1m=m$Vpwj!os=Uo3eQ z|4inWejxcwwqFUJ#>K{wlJCXm_h;Guf$t@+=Fi6cLtnRE1)lP)St9Lm*{E-0!IS^( z+>Yy+FJXT7B)86d>y*Mu_A~xR$*cbMiEb}#jGr!?ASmC$MbciCcP{gj@+F_oiT=*~ z!`!~g|4!z=?jh}QsBh<(|67XWm3`3wdOi|(AA`dev%u@|oRaqX-!6ft$C&?RpX3LE zqiq*>s-K#6ZvFU>{wc&!o#z7sq#_~p2lF--Jmp*Txm%ZRW&VBUPNQ+crTEWsJgwPJBJ)lj zFPQH1?KbAuc5&;+gCs3pVEzW?aj0*4LrNE<5sKm4(@SM$KN%$x5Ilrq1M?Z@c32=PzmpI9LMsP_7h z`DMwHZ_oDO!(_hQP5pBa^V8-_dlml*=7%4Xd@TFrGNga=byE%Vt=z%>Ut<1R?k8C8 z>f5i(59}lD+c7_Wxbz>-^D2s|Z*##@J(!=@+{^aW+|O10Y+$}@gZv9w|mus1Sf!nv=m#h;mPmM8hf%pYOCbdKazza5t;^KEiW@~VCo zf~WW|ZIwLzZCu*cvwc-Rw|=bp=N{(Q_m#X$SMm4an0MYUc{M*@c^&z`e7hDr_1kON z9%1WS5%b$`ck9R9oRa^9`6qfwUY!>jkCJ}wI3)RRx&G6^Q@Ku^ko>dKjhM#vVU?0s z<7GAT6R(xLs<#iBKV2w!OgsAaBlFMglDz!HJ0n>#o)6L_Q>|O$?|m_EelGtb^XBKU zWw_9w`e}ca^rOo49P{RJ{Sose-%I;$obP{`Kgr{?C-cRa=*YkM`P4Jao1e?P#C+oC z(!XloADEv%O!B4d-!)eHKlfv>{bJ@zDkP87sJ?AuzMSiAAoC}fPs(@eOn2rRWlR4P z`bb{Ilg9j+cO|dt;b!JTXdAqQE z5%^I3zeeYqib32zUts(7>}OAn^smabm-$VfNnXtlO~zpzYi}zK-k--FB(w$}D&GO% zsok^KkMci9w?{n3rGGUK-^2Ek*gl?fd4u_R%cZ>+Dr0k99`7?b7BLu%8~IL z>muztv(}$^^K+kt%zt^Wv{(K43+BHtt&3Xb%J-ne3RyofHkm;pc&dka9A_uacM9|7 z=M+nrU(!?NTfz3Yodle|(9wSLJ$#dHWH` zW7^R-$9U;~WjDzyKb@F2KTq!ip8CmNQ$KODz4^VbeCD^Tkp5$3wxX7K^ZmDfFh6N` zu>BF{&+~aojcaX!j6Zs?v`=RLJ;2BDz7f*d{?%pDUX4>9^Y>Rv9>YZ6YM77OFZo5x zzr_Bhw3a;6Vi((+uV21me(*igzJL=9ohai!_<`hAKmQZ+=5^FB%rD(1?WeP!9yiMK zl=*iB(sZ7U3{VB0`t7C?>E{;Ko?*U}$7yTk-)G)@y;jHk(In|d%~!)GN&ja%N?y$a zdCYI&_Eq+GFmHa(>T%}Nlck?F98dgB(!cpVsNu|;>vKNyDO}I0pFhLA`8~-_+p`eF4K(nB%ln^-9Qk3J%KHGc18et0Lzt9j`u=AXDn@-88_W6U4p`BwGM zE4|YHd0w}uI43i2e!uZf=FRK&&CK^(A@d!;`JMnz<$CQ&$=?_yg_x-_U;hxvtNOo( z`HAmIzKb*$k1&7bJjtgqzn}SgtAg$0rb+)>7f4=>yUEO(pFe&HK8}4F!BHgryjUsy zs5mDuZ@!;d!o2x@@>9$oJ170jX{M?~iiS*yk9`IBy^ZSRVm^VNFy1;xA z&+}^j>_0>LDLNzlKg9l@WZwKf#xC%o`gvPSbQDkYPtuQz{p2%0Wsc-k|6IrX;Tp-S z_Ie9E)&IjCB(M705w<_tTk`QjZjH-iz6W`|q5P*XZ+@;ZnR)a5hr7U2zEAOaygmE> z8`~!?l=*gI{uAAv4-9aQ?SH;s+N*eam&-Ue{+oI3=aZOE`&{zv*w;el*S#lsRX_KE zr#Q{;nLow$4nDsq`zvmf`I_JR8qIw9kJ7&yUkkvK|H;E8-;d*Yn(ZrwNnVxfOSZr8 zisb2UztYwe6A1N(>b`FMxU2q&pAZC3{*R54{6V`EO4xq%y^^nB`}f%X2ksAX%zwf5 z=KG&>kdX2D>`gb<-uG^&_RsWlr zH$N{p%e*+~0b#I1GF!`w46x zw^aI9_4z*Y=Jyj?R7wBCc|OTv|Aox=?2Tsd=o5eX#7s(c2V`5#r%6bPF4J`GQY7(`pIEGKQV89uQK6J z(*MBQrTs*<&t!h^V96{0JD3-rNj{S8e`Nj#wpabX$sM8FB@;ZA%WPku+v9q$t@QsU z`>(X{b3fbf=pgM?e|y%#{@>s!-)m<{d)1!{@09%F!;)9!TEV>ey_#2kv<*m0rEcQ%h-HI7QbtC&@ugtcsM{+`0) z7WOCD{<$=nuj&tx)iU2PrzGE)oMW57y!kz=V&;!>eJVeTm>;{?t*2k1e+uyq^XB#c zXUvyye{RF}KQV9qo>Z?zGEVdRoNng#9+dg+Vm~vPH-FFWapk8%+F#4|AA_fUd-?&% zC)=c8LkFhuXui*u!2F&i(!M?WnZSG-t{*kt=Q3};zI%=NqlMCsYIoaRGT+^OCEt$y zyTH@?66Wi;tJvOrJy_2CE$5{lEMxR-ANWxH>J;1W?kMe5Jm;AIg~y|s2YS`WIHRtX z_UY2SxCuP@pJy5`bJ@P#S!u7@{b#o4ADtcV8;wF~8q6mU;8{UJIDt$Kz3* zceXHZevbJ$^UirP-%gxw+xuj`ug#ZyH|8H;-h6-QE#?pHmG<4){$u9PR7+mXGkurI z_8rNI#K0 zexsQm!MyqTdnNPc_3B#YpR17m)p-02Jk3ijHc0+hxXhr@O3Aw~Nd9!JQq>HJl72y=gG><$@O?dq1We~R$PJKZuaF{&p+dh-$(Y%7V`I)3oB>Ln2jWcqu^im zCetB)zppsI5oL5pj2S=!zywXBXp;xA( zdRXs_neaa;D;fT$`HN7gg`T_ufALJOr+j8c@1)CF{8ICPg;|$NFO?+ygXEjfRH{kqjVa6BRZ57;!ah%9(Hz~ufpq_nG)JK)n7K< zTZ*4ce9gwU2_>O+KESo=|bp)65muQ91s8Gra}q z>X~SwJbYwiB=`1=_7oI(3#NNYyrmg4vPWSwAqYQ&@w%-iKd-_YNRTeO4mnHiGouV0 zrWhkFkDO*3;x6>+ag(ED`dNLC-N=0k7daQplg>_dJ3wl`q5}A%gZb&F32p-$jHb| z@?;Os^<2TN4b*lqrXOx}xTKL-SxWsyAMM^k%n#+WGqduO zP{2M)lVpen3F;|1DX0|`5*?<$C#Rn*O)@el#AJ!TpX1FO6R4cz{vJ#z6a` z*IeF%P;*rFzRFBBU#=%3xo=_dRIUn-UJE&?9{T6+-48$VURX8*lTLxRqM|+z{BZrW z|4B{pL^fvBZ$v(-zOf7?NcK=)K?`MMq);cX@39tL-_%HQAQ(EtxIiuqb%{Rzn=YY` z(~4Pn_jrB2G9QMad8VMAn(Yn-XN(TQ~l#t~AP`FO7lMOvWcpG4=lx_iasa zBuUoui`rCN1ia0Ry2cE3w}gSFZEauD3Mffz1I1E^ZvFc`?jC-LTV@t?&wdZz*s6=n z2)`UZeu>BjHi~nszWD+`ek)f>qxs$Xz@g zu*?5R0_8=zJh$%v zTW=NAc8MfYvgkQ4JV7JOyW!%Wqb^H7&FtiTvXd9MDFU~+=^?+;g#r0NdfQ8~I9Ct; zNy*O|(ROvU2FJPj?UV`8@)`dADJ{LLP>ax;+wJnEQimD9@t5_}r*B9omLTK}TIEYs z+CmPQe%ge(T5jxJuaVmRsG@8yxxW5PVEqvBdvUZ~KRLnufKSX2JKej;I9L+A;M4cBMF%Scv^nmv2A#;Jpu06R83p~BBW$wAnY7|V1Fm;d-^QT zaP#@}zqXGbu$~1tDCcdP@59&i?Zf)<6tro1_)M<5d`{Gn;}D0S;=_QDNsEU2Is&Z; zm~Q`FZEhdmoD!>xicrwnKl}Kg_MWF=xlUTr4EAm4h^R_0<`63Y$BJQ)t4Rm+L9mjT zz`+1s4qL#F-wen{CFOP96Npf-&w>qpjLdm;efqPotWp7a@fjKSj?kYHk@0>{3zS$s!C40(q z+U3>r*>i(PnIP4Ff;Ke>-Tbkn95~DH?e8?bCr>jK93iM&P$FEYX7NVy&v)zFTZuRJ z9Dy%Y8?c+IW1QGe8GeUMaRy2-%Zbw{Kc0F+2XU9|_RLrRF-Y>=is5XJl}{B04Uf;c z2FJ_{B&JsB;tx8kJd%;@5ao^S`eJ)-XvzBBN6^aC2PvO?MxvcQ+qQ}|l!TK6XF^*U z{LX=d1R$o`#p3231+hdk!s67x=+`jWX2|kgp`P&9#H{|yNeP}-FmlUUyR>U@f@)Rd zY*ey6wG7XxTY!ZIRiGE|k?}q}ZXQ-&R!?iC3BzhjACY9w3Yk6rV5G(a4S9_x#90@v z0`cJ`D%0}xmMtS=G?1h}*=qT(^^R9aDeqLOMH#cH|2&MID)7o5j)3X=%ws&meilSD#jFv zYM(0-+sVUfjBBb;iI1T{K_%h$&%=4@K)kz!L81LXE*L2)P>aDEnmOcTun|0ZK1;f7L};1uUS#XlI6Yfd6JYG91;yP^?fG~-?m>l`D^{WUY~~X053(Pu~#gQQ%Ph^MfH@@Q4-E8W#p%% zlPk$TUoMsuP{-?{T<{Hl&1Eu(HbsZS0UiboUEiKn6`jRf)OeBUe*Z+>k)KiTb)i@` zOhy_u)&!Cuk`X>Hywsls*f{%X>Q9%K=RbY87+QsA!I9;~J0&p9SXTQ5OaQ*}lEPoC zD6Iduc}kEq;3Mci9I`ie0xG@mD5Z4lm(S-gL!=vpbh~DwCRV{ukYB1Qp(ykV(nqti zGrUQt_RESPTYu4IK{Sr!1#aU4@)PPQeJa&T6Be%U^NC5 zs?JJqSRf2pa3DrBlBc0=RMMUXlc;_D5#63B5%vtsaoQbs5hSb|4l6DQP* zotVvpw?fWTPZ)PH|9vW~rh?F!>XV=UH<>OF(%d%@Q5E`#D~u#?SLN@2N3Rv1i5?a| z>|-GiZ>w9-Fad~yRv$<{|2YhPb^ZLB#@y}l`JAzHJg|_|fRqQ^T&-dU792}07h2Ho zW>1B8Vt0;dyHueYk}^wJBGzf(15j`?69#>Z{G2n=gHyCj$$U$$d5n3G?fTs>Ke`#2 zb7c8i?H=|!&O*S4hffdQ_Ygj386PSHDD6M3KT*YR+G?@aLoI2dVoCJil<*MIgjASH zm%*b=5=v#@%dJL!K+R@A_ve^frD#C@l>DSqXEK2>=m=iASR=6MA{9{Zf5-oj$9qjMb0d0 z67St7Rh_34-DS@NXhPJx@ShyFqbO-LR59q=Xlp~vDpxP<|6|M0mI#1bYaC}`Kdih1 z>RQLThFCP))Wy^KfBP9FDf$wMrYGZRXFo~p7oOQtEK}^o;_Mxdm)vYO_reCGX3ldq z1I_YORL<2DCPLoNo(LHO3eyvZW;Q;_N&KB9nSms;Bl9D47-w)X^YG(1u^Miv9jrCAr>TO;o=l0(*AcSyjo zQC+ZBebYu#E!!|Ug(Vi{fOw%L(KyFM+FcAE{6ErI%f8RL&}fgD<$@~HXzp%4_Zz#* z0|Fir*hE|RhXt{S569@fV7}`9I&s^gj=-XyvZ47228 zA+ubzV2}FHd>UTkdL7q}@eWOs@_{xku8GeS4D+?+o6EXrxU_u0060oSd^%lV#|C6eIJ`<2FjQ&`L?P3}cMAaxX2Ek(( z3g*AM{eAU)JMg5WFb3GyF1b@XjUGv!j@2&>i@5CXE3=5P0D-VvGL7Z!!q%JJ3o=FKjFe}F-uF}r*4~GA z$_gPR@XbYYLDN74OeJZ41!ZV9GNZYkkt-tY7y7`HNr65D9FNdrHv58pK$8Zy#h23Y zLUyKM?K@;r#Oy8j;@#@Ewam`lg!YbxjngxG2A*Bym<-4)4NMACdWkHeQGx1ATXWi~ z2JNn}v%uUd8V@;ypCTqSfivG(b|i2(j*sJ zM@0SZf4@6RRn}q+(5+DPx?Z+rc<~(`VMu_xr!sIdCIp0IxQbK|D2Ale1`P(=?I zXkLHWJbr&EweFAB9#!w4^$6PghBO8{g&zpRUZuDDrUI&(~tIMkBK!VJlqH#b>~j!GgpgA!wB96cFj~xlEPC-H}K9*I!}p zXL@9kw)Ih@Y1e!zqi;qkdw#0Ywy~=9r&uZf*ge)07ocEyx_>&oWH$aH@YaQubvIgGNg+r<7{W4k&O_oedS09dqP2GyD+rA&)DoMYC{)bYFhch?r>G_?~r8cqSZfn_Lx_Fuk zZg8iFZn3ei;faOTJU|6EsPnA$bPm-=@be4MNjds-D$|W{rbfvG)hqmtiuhhIu}aBZ z3OVOoD?j~+1nc_de)zUs<3Jh_H+29vBZWShN)e_LD$p&cN-YF>qCbbMk%q8keBiM; zK!#GEt;qk7m0QF9~ZybjV6I7+0_L$Ou8gc^EyV>L2OS**kQRE+EFeO`R%)TlfTX@SVRHhCw2SQwluf=;6e zA4(@q$pr{UyXCj0*9L2^Aebtq4G5NT{y7k==Y`s+A78!0uoDa7h-m+;t`?GEXJcF< zeS;2*znfBeEtYBx4>lRQl;mo$OKIBhXi}*VXvt(0t{3yE=&r3gYv;GAAUng4n{}u# zp`eo&zI2NTZ)NafP72Sp^yM>REZAH+V%CMI2DrKSmqZZpI6*B|KrD-yTt%LV0q;_+ zopR`43PC2A;eH0dtX*^wSB+dfpzA zF;D0C9OHzAw3rB<^Lgx+@LAAiz> z=j{D-i9yy`M1}y6Ar*CSy4_to?RFP&4j9Q9br<;(fap6ThUUaDrYs2WoO1hoo7GO6 zTMhPuxmC08Fpgq&P$z@N z$gvhl&3Kj4x4^7CRF46M5WI-&VIKu)rF2#n(iba`pz5#VNv(JrG{CbI8c>-trVd_q zjRx_b6S#;BPPdcD`zJb*h|W9Sm)ZQw;Gwk6qM71V7BBjdXODJb3!ikWbF8IEO|KHeQ|mB53WMPvr56x1*I}6Ti4vaj z&Q6p7sdi!2JS0#pPGF7d2+q%8V%1ney0C;SG{ehr8$HJ9CCtp+uS3|^4oW^D*RXWT zUA$aO23fcQ{lMC4Dag5gX2!V>7j*2p;thpC*<;(8WhGWvKGG>_Lg0cPI#Klk#z$?9 zbU%zYf#RJeqjL~!|6q>N1Z&8@lg88Eg&f{CzBrVwv~>!&5R^=|-T+p{~V5z$cCGU7if$JyCw)W6VV+v4J)6`zbJP&7%knR^1NBq;0R!b8K69)=1rzv8ul}=tCd$Gc1;5U`z$9>)m zf9ktyH)!_MZ4AwBM+kse;H{elm11wF-UB~ zu0H86AKnzFq$Dimafybo@H68-3CJ>onTciCbR4gC@u-%wfVeA3nwCw$MPFEovEytb zb>vVSc0e#AS8K52(3%0wDTYaLI*Na>kNm@Lkw}EY4g|)Z&OL{4@q{9uF$4~xYSeN- zDRDgCoGVjz2WI&Z#s~=J(bwsx#lpvwBZSwP8mNo_Ta`XjYBEs(0NTcj*s6A&>19Dz zm{)b3VKi9%`z3Vh}nRqm)^36?0|-oP%QwiQ?H;}Fp&`p zKK-IWzm03l*CRJ0LnztW{RlHbUEiNMAuYU_VZ=a^u8acR%=Y%fg75BgqcWR0Iwop|4`{$+!cn72j&Xmw6xING_D`GJgjv}E+0tI{24Fa3mlXBN zc@Rn%@W@2$!YQyhalk?a=P6#PYcg?H!heK{w?rKZ5{Q5#Lca@&t_MvbCF`9!fY5A| zSNb;lQDsAQb}3;iv5%|v36#Q#;*aE@QWg;B4bKwBmSDslnWkprID@-?qNsK}VX>fU zRXSWDQ;*n|GP>6GQ+P)SCma@uIJZMUNR82ngC)wwbyc>T#a?XYpUO!Zzy74sW|X@s z)ZL_=tGE6pv2)6Qf>T%?v;Y^f!DqV`7*1L%jB27n+u1};Thm2FZX%4b+M6%LcGhQk zK164%tCN1m?bl;CR6m5dlw&wM_JB|1w8M;st>5>P-~LodBbbO@;LOc(nqn2?jl8yH zv7Mr$2gYdfW1&4}(cQB~QOtlCfE$H}nD)e9Xw6oy0u7~i@0KcSgnoAEh}Jer;e`uD z(&W@xLzek27|@X@TM%-n2@nvV7)mFqnT3@dn$XrTXGVOgh)$bluRBx0v? zA__7Q9I9>)eKrFsg>Ar3*0j@e5gW%}3(N)%TG>yWNw?=wFG8+?&m0yot99Pv z|M*4YNN9NPw#?>4J(Gd+-7%jjiC)C?3#Y{PF?S zf@}pDdEeA0e0`t=Ap807L2Rnud-Gk~4ZH18E#Hlv-UI)a^9fI~7&Mwc2j5>zMVJA?uB zwV8>0mO?9!FtuR2sbBAzC{a6(hi(Vdbu$sAu|Ej+fInK&JQS9DU|e#?2epo)!-Wev zzUsD@PG{k)QRALwJTgCKvZ-z=<*@;d#ncy6>inb?PT|2SNIo{KoztMk z794ae^cqtK?9~0L_xA5j)h(R)f{8Ta>f`~tWTKrYjGkDyumiTW14-Y zsDNI;Ti!^F`l)|g1cI{E?!xdp=dq>O&#+}T>aa(2tx7P3Ttr8;i0A9lW0@i|-z z=nt9OmCsLyFAj*X`4vzc5(K2M)Us%tkHx7kky|Ps_VqB>$)`l{pgawVs%n|$^c2Rt zEK2>ai2J5V6?_WxSZCeB#3>Ko6nRF`YV}dz{K%-i1g;nqb{_UNrZObTcA?|RH7@Xd zns-b^&QfuCFyqvF#+->i{b17)J+Co2$9tE{9NPC_KUcMgrJE9)p2-Pv_H_j0A`LG@nR@02 zedM}2R{r+w>H#;x;S!ztxH~r8stcD0&XSU@$KCqw>h9qsIW>xS*+KJ0A;mvhw96?+ zP4V3SRQ7ZG5QsOgyb1S?XB#Am%c2)lJ8}&%vN4NV(Ucn}0DO1AZaUi&Z>f*ppPFIF zfP<_x@>gTOdh2;GtQkj;rMl%C&+F?iYlz(40N)77q@oD*bWbZt=#NnozRV~5;Z5vX zbV}gtU*{K_i~6GzQJpQ$)<&j>pKW>d6kGRNBm*6=b|IqQu%AaySr&5j ztsD^uNn?>B_+vw{WtR@vlzf`KC*;jYx2QYTIUdSkHeQS2>(uSD5(STmvgc8?{yAd^ zst)yK%p<2ECpXvDJ`!QNOkO%={86HKCU?$aZ8xc$XlEd@)C{-tNxiEWj%o5$S`)SJ z@_Q{`v-u!oXS$KdP2Abnx60_OesM-NOA?qTBJ8a8GrX!%TFRdq?@6@+72btf1z)lU z$e_#GuD%wxxW`uiL{ zSeD$`vJ~6QVjEFQ|BY`l^%>Zh{Z91Id?jdLA=P1;!G|yMdQF!Yq)(e4 zz^9wH)h!!WPT2{Ls_a;)-`8jRm%b2w8S_m-ak7#O#0k@yIYyM-NGfAg%{7v*hiLl@ z?nW|V;NvfnwV@B&Gdp&)MoJ<>rYN1y_=It*;0Gb}lL8$v9ETI%^qfz*1r%3XwM2Qb z0Iu5{XsTWB!j#CfsBI(g!Tv|C5H+>vX@|jkd8Yptjv|~+uG&ZgoRj|C{N1TGOp@O4g3hK?APmzTw zs8A|83-eH3xS^gKSwV@c^r5me?AeWX616P2aoh^QEdYs0nvZc8w-cjFIehu!j{!I7 zJNdD>j@cgErdh7&ox@pQF-0Fg1M4mjas-KSJ(D}B`;jam&F8eG`V5ZXd<^k%| z1IKNwGOtDr?Ss_N#-5>m{xM(8&p(2h&~Ns%>Al++?UdB8iiR7-nM(cKt1QmH+wAg= zCk%~F9fMB&`<@E_4xXGn<7(*A_9zUG^vv`&D4!jKa#9;9#HCix#_ zT{@qJG(SH9m;Y4`MpXJ&8Y#|}tRW6^fNXHWspEC(8Rnlao}}3d^`iPA&Cy82r@1J) z3$J+x-n^4=!P2UD#;;^R6i=;ogKFY0@{NjgMG-*=)YP7P!529h`}R@WnZ7X(A{+ZM zS|BuLL5gfSo8i2_JIO^+sr`kpwyU_jT4guAaijE_)b@IHgT1Cbhs;y6t8QAH0@5UB zX8BX3bV?LGEs!F1HoscSx2=`MJPGLgclP{lc&c=W-bnMyv?t#lkikq(e$aQ?{)RIQ zdahM%*EgcpqVQr%$gUWh6QBSD9_#%D8Z9773$JOq+C$%zKrAC)&hU&xr2Yt?qUjP6A literal 155647 zcmce<34D~*^*27?hSWAuQRB*}sBy!fD4?|ladglCkwwvpAwYmABr%yN;s!$eF^y5Q zrp0P2t@@Lyt*I7^wuZ3CL~Uza8~12ko-rt?OHJK)zu$B2z0dPZW)%Cr|Nrm_cka38 zp6#A{?z#6_=9*Z^>HYili`Y;9$d4kdb?s9uApJiQ>A1qjDUOVc>>MeM91%GzvLmo| zz@Nn{Hs5U7Yr5HT0C4%)4u9L@Z)AVgSQfKz<$h9&L~Lofvm`(NQ*6F!x#%Lrv}Gg` zm3BfY>x%i>zG8m4z-?JfVenZ&B>6<;e~L$tXZm@jpDpu^{I<0EksSXfoA$~5i&0~} zm__6Q`QI-M`$*|KiCO$!)L-Q+>OWdAZFy9_cC@AKcQ*Pt(GBfyDy*Cn4ZmD=nQP>? zrAifv95b(S#tFlZnK$d`d6iZ53yxke@`R&L7(TSFdg!sDH^n6G8RMsj7}k!Im*dBB zQvIYD|A^2pGO#~kgYZY+V83w}{Nb5vKYV}Oj;~(x=B+Y0B@Jav;h)^ZolMcQ)Ty&^EN`uB_nm1N_mB z9CO+%_@VvyDbONvpegr4xhMX1$KO5%b|lK(@HZ5H2N~Gmretvd{tgb*`Soc0?SVgz z>HhfRhdikdZKr;i-~Ye^2klH4?M?gF{cNZHn_vIweg}T_$=a6T+9Pmv!=%1Q{{sTGec4rQ|-Ijy?{yFGhkz>3#2eR4iz#Q@% zl0%+dbJ$@*4*H!r#%0$We0R(t|HnD_*5r_LZ4Uf-IqbQ24!%d^u=6cB?}gA_w2Qa?sy5hdf{9&}(WA z`XA+>Ukm(Qv8r`lQVtBne%P0vJ&ir5?_Df)``>v+p5lGN@F&fZzq+cdE>T{aC@YJUoq1{5M1wbGUU^+zMV)rf+PNk%x3;2uR@uz*s+kq@B4y`~ zKWkEA)Qs}F%9&-A)pcWMPD%_LHgj%yZCRqWyfOhmEH?Af(o18P5_eMFm|?LAlfdA7 z;EgCN1GVbQ%4UFI`Mi16GX?3aNp;81gm|^u2i0N6&aSMQRR-Y_W!1A|rDx5Yubk_K zvmpeit6W%NnVmMwd`k=)t|C^?2HlGC`B~*0UR_gBMPiWcxU#X;b!8I(m|s1MHk-Mi zysWlD&NynE>9#$4p z(;Qo#h>2d45+h+sSf#FF_}Hq-gj1vLgz_3lBnoREm=p3&JWDtln~a!QJ-?>Bwt_8! zwQbrTKXYDnoikneB-gzT-@$={HeUFEDFv=<(JHIvqW|51!7k#<;u|wC zg{m+u5;Ny=hAmi7R#Q=1S6x*;uQG9Y*`-Blr{UI4l~tFb1#VwEr+$7#Rl>K`cT(QC z#-zmXnXo)~jGt6JuP#>UzESI{%T)Jybz@l%76uQuQR6V3QJ1 zKTCA#GxQmXV6L9kcd~Aq@J?5TJu`(SCH%=UucB&BVs2SQZEba}bAa&NH?v~aywXb< z zcFMrSvMZl{k$#aaSo>{0TYBi_*aq$tnT++CAGYs;@3y^upGs^8w~Jih+P4RWwiAC= z@6RE`j*+>h&rGTB5V_3MpL^h9aN9m|ov9}dzZqNK{*jvuz20hF*I5N4_p$i|I?Mjf zHJChraJv^~TS1M|;U3qd2n0u>0XVH?KZOA}QVI7d3c#(+*f=r(CvW>H4#15{(i9KC z?Y^50r2)7-3n6@J0B-l?gijB^x#zc^xdAx$?DkU=fOD^IKMMkIyVqyiq5zy@Za>Qc zaJ%Pj3JowLq38Z>EnN7=RB5 zzkenb!0GoaaCGGdBR|8It|f1mHY>v!4Y4IM3beXHfuNWPvD`1>ijE zv!CSw_^}p8`E#9P$&^89LJ)QoojUhRk%E z)EBbOP?>I#dM)b=k?ECEzle2)#`JQj&tRP)F}+CY=d(^XPuEC&BI^u+>FH8GlXWfu z=~Ahm$~uoG)5TIhk#&Z~bdl7LWt|~09hLeKtTPm*^QC?e>kNVEh}8FCouMz?^ECj6 z?8Z7nUb;)_16gONOLs`UKkE!}={Bi0+rr%KE;n7fJm=))}hOQK{d{ zIzv=CU+TYMouMfmk@_!KXGlu-d`10lWKC!jP?BCQ^%<-)grpZq{e0FLI?^>#pU65xMtZu`&t&~@)=Q;+D(eg# z>0+s$$T~wtx=8BBvd&PEj!OLq))^ww`BFcKb%us?MC$vn&XADq`BKK8bx!$om(&Nc z&Z(a6ka~aCImOd$QvduM)H#LIEmHr8bxz&%N~yokI;U)UIqJhc7@K_N!g%tn_>#AK zN+*v^wbgu49EqpaEs`SD^G;IPNzv$#j_8VeGfSH#v7;f#FH;_aM!UDK#j#m zHI??`Hwf^=2Ggquy*iWi&o^RxSHzRhT!tp){abj&dg4t}ym%8zrM81ucfDc>{o~bS zokE}Lc2dCsWZi|TQnvBWvIVgz#2r5jticW2P$SfDlU;o`z+YHI_5nF6zH zB$R4zJp!|SEf0RZUn!aPc+*r;Z&yFuq>be;N$V&RAriz)zD_fbRZ|f;+Io^{Z-7~r zwk3`xmBy(@wT^K-PDD@b82tJM9d6(mD!KVa>k1dO}x-&?mn+JWVwmDRO8 zf%m=wOgpy{l~;ozUJF+Nf7EnN^@JhWWf>ZhMLgC>$?G>JOKW!eUhaEx_8f*N!7yH&Y~!! zM>Gh{eqKBRmmYskC>ECqM$N{26!;p6uj|@Q)?aAZGzEWdruXXV0TOn#jDyh{1g;kJ zMVazGRd;KPr(#_k592K@##^q%=+GMhZVNb(2UIxxC`;u5p|Sx)*g_(VW0uItB+@tq zRhdFpt5j>^Y9rW|qKK^kGo?D~t%};xoljZ+2LECCILjp)*Q5L1951AGsm(jnz7R&1GV z$6!-4Hu*TQOB$n=!%iGS$qj^LJ35pk(l4>MAYC~Rg8)R}B4*GG7@fY!DSCrI}^>3pAt_&kt=auQ| z#gjo{ibBG;xhXU`3wq7)4S)!KbaH$l+>4-)y`{kQ31^dynCMB4jEeV6{P1=0WP4n) zUIQK=t?C!Nq^nhAneg}SeQZt$?ia}{k^$TK6B#fXN8+msJ0{xFE>New2dN-9hlcMB zKUyu>oPh{2!RS~d0V4G{GwkBCfAwPxbsPy6@FSTA?T?;`Rj5@aE&9L0@WnNQp4NzU zL#N>lR4$1$Qt}mAL?_S&W}m)a?ut1OZyNNttVTp_+NHlxO1^An4>#Qm5(Y!O`BNsu zNu6hnHMA*M!7vs{y++gSYZuR6}GwG~N#^IhXzf18;=am^ItfnWJb*x1#C%?Jc*=%h8fU>b!uH-#TgXrrZ(UieFERO( z^`aM=spnZwz!=wez}ecs17*rPOniXB22ClifYnAcYs5O3)hziz-(WKjm^RM12!K_Q z8c8sSCj�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 Date: Mon, 28 Sep 2015 18:47:43 -0500 Subject: [PATCH 163/186] OPEN and CLOSE commands work properly, filtered SAVE command. --- DBEngine.cpp | 35 +++++++++++++++++++++++++++++++++-- DBEngine.h | 3 ++- Parserv4.cpp | 15 +++++++++++++-- test | Bin 166381 -> 173121 bytes 4 files changed, 48 insertions(+), 5 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 9bfc700..b0eb5d2 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -52,15 +52,46 @@ void DBEngine::save(){ file.close(); } +void DBEngine::deleteRelation(string n) +{ + // to conserve memory after closing a file. + for(int i = 0; i < tables.size(); i++) + { + if (tables[i].getTableName() == n) + { + tables.erase(tables.begin() + i); + } + } +} + void DBEngine::save(string n){ ofstream file; string name = n + ".txt"; file.open(name); - for(int i = 0; i < commands.size(); ++i) + for(int i = 0; i < commands.size() - 1; ++i) { - file << commands[i] << endl; + if(commands[i].substr(0, 4) == "SAVE") + { + continue; + } + if(commands[i].substr(0, 4) == "SHOW") + { + continue; + } + if(commands[i].substr(0, 4) == "OPEN") + { + continue; + } + if(commands[i].substr(0, 5) == "CLOSE") + { + continue; + } + else + { + file << commands[i] << endl; + } } //file.close(); diff --git a/DBEngine.h b/DBEngine.h index d23dffb..de714f6 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -22,7 +22,8 @@ public: void saveToFile(vector cmds); Relation selection(string attName, string s, Relation r); Relation projection(vector input, Relation r); - Relation product(string s1, Relation r1, Relation r2); + Relation product(string s1, Relation r1, Relation r2); + void deleteRelation(string n); void save(); void save(string n); void storeCommands(string s); diff --git a/Parserv4.cpp b/Parserv4.cpp index 92dcb19..78b39a5 100644 --- a/Parserv4.cpp +++ b/Parserv4.cpp @@ -109,9 +109,11 @@ vector closeCMD(vector input, DBEngine &engine) cout<<"Syntax error!"< openCMD(vector input, DBEngine &engine) cout<<"Syntax error!"<%aV%wlqFZ|hd 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

ZYCt5iAoMUNh3_tTN4A2vcU?Ap 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 literal 212279 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 From 7f0f5c4a975abe59e99b547aec62ef7d431a7a83 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 30 Sep 2015 13:00:51 -0500 Subject: [PATCH 183/186] Took out unncessary comments in code. --- DBEngine.cpp | 59 +---- DBEngine.h | 1 - Parser.cpp | 626 ++++++++++++++++++--------------------------------- Parser.h | 489 ---------------------------------------- test | Bin 212489 -> 204297 bytes test.cpp | 40 ---- 6 files changed, 223 insertions(+), 992 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 32a06ef..417c7bf 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -94,7 +94,7 @@ void DBEngine::save(string n){ } } - //file.close(); + file.close(); } vector DBEngine::getRelations(){ @@ -167,18 +167,6 @@ Relation DBEngine::rename(vector newnames, Relation &r) } return r; } - /* - else if (oldnames != r.getAttributeNames()) { - cout << "FAILURE TO RENAME: the attributes to be renamed do not exist in the relation.\n"; - return; - } - - else { - for(int i = 0; i < oldnames.size(); ++i){ - r.renameAttribute(oldnames[i], newnames[i]); - } - } - */ } @@ -229,83 +217,38 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ vector temp; //bool duplicate = false; - /* - for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) - { - new_r.removeTuple(0); - } - */ int size = 0; - //cout << "test1" << endl; for(int x = 0; x < r2.getAttributes().size(); ++x) { - //cout << "test2" << endl; for (int i = 0; i < r2.getAttributes()[x].getSize(); ++i) { - //cout << "test3" << endl; temp = r2.getTuple(i); for(int y = 0; y < new_r.getAttributes().size(); ++y) { size = new_r.getAttributes()[y].getSize(); - //cout << "test4" << endl; new_r.getAttributes()[y].getSize(); for (int j = 0; j < size; ++j) { - //cout << "test5" << endl; for(int a = 0; a < temp.size(); ++a) { - //cout << "test6" << endl; for(int b = 0; b < new_r.getTuple(j).size(); ++b) { - //cout << "test7" << endl; - //cout << temp[a] << " " << new_r.getTuple(j)[b] << " " << b << endl; if (temp[a] == new_r.getTuple(j)[b]) { new_r.removeFromTuple(b, j); - //cout << "test" << endl; - //duplicate = true; - //break; } } } size = new_r.getAttributes()[y].getSize(); } - /* - if (!duplicate) - { - new_r.insertTuple(temp); - } - */ - //duplicate = false; } } } - - //make this one for loop later! - /* - for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { - temp = r2.getTuple(i); - - for (int j = 0; j < r1.getAttributes()[0].getSize(); ++j){ - if (temp == r1.getTuple(j)){ - duplicate = true; - break; - } - } - - if (!duplicate){ - new_r.insertTuple(temp); - } - - duplicate = false; - } - */ - return new_r; } } diff --git a/DBEngine.h b/DBEngine.h index 81009d3..ddbdd13 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -18,7 +18,6 @@ public: void insertValues(string r, vector v); vector getRelations(); bool isRelation(string n); - //void showTable(Relation r); Relation& getTableFromName(string n); void saveToFile(vector cmds); Relation selection(string attName, string s, Relation r); diff --git a/Parser.cpp b/Parser.cpp index d665816..1c19bfa 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -45,197 +45,167 @@ void displayTokenList(vector input) Relation condition(vector input, Relation &r, DBEngine &engine) { Relation rfinal = r; - - //UNTESTED - //testing to see if there is an && or || present - /* - if (input.size() > 3) { - //test print - for (int i = 0; i < input.size(); ++i) - cout << "input[i]: " << input[i] << "\n"; - - - //this is probably wrong, added a cout for testing - string bin_op = input[3]; - cout << "bin_op, should be && or ||: " << bin_op << "\n"; - - //making each half a new vector, probably a better way to do this - vector firsthalf; - vector secondhalf; - - //again, all untested. it's weird to not test this stuff - for (int i = 0; i < input.size(); ++i){ - if (i < 3) - firsthalf.push_back(input[i]); - else - secondhalf.push_back(input[i]); - + + Attribute a1 = r.getAttributeByName(input[0]); + input.erase(input.begin()); + string op = input[0]; + input.erase(input.begin()); + Attribute a2; + string c; + if(r.isAttribute(input[0])) + { + a2 = r.getAttributeByName(input[0]); + input.erase(input.begin()); + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + int offset = 0; + if(op == "==") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else if(op == "!=") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else if(op == ">=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == ">") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x - offset); + offset += 1; + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + } } - - //calling condition again with each half - Relation r1 = condition(firsthalf, rfinal); - Relation r2 = condition(secondhalf, rfinal); - - //NO IDEA IF THIS ACTUALLY WORKS - //HOORAY - //HOW THE FUCK DO PEOPLE CODE LIKE THIS - if (bin_op == "&&"){ - //with engine as the DBEngine object that maybe exists - return engine.crossProduct(r1, r2); - } - - else if (bin_op == "||"){ - //with engine as the DBEngine object that maybe exists - return engine.setUnion(r1, r2); - } - - else { - cout << "Something strange happened. bin_op: " << bin_op << "\n"; - cout << "Returning the initial relation."; - return rfinal; - } - } - - else { - */ - Attribute a1 = r.getAttributeByName(input[0]); + else if(input[0].at(0) == '\"') + { + c = input[0].substr(1, input[0].find_last_of("\"") - 1); input.erase(input.begin()); - string op = input[0]; - input.erase(input.begin()); - Attribute a2; - string c; - //cout << input[0] << endl; - for(int x = 0; x < input.size(); ++x) + int offset = 0; + //input.erase(input.begin()); + if(op == "==") { - cout << input[x] << endl; - } - if(r.isAttribute(input[0])) - { - a2 = r.getAttributeByName(input[0]); - input.erase(input.begin()); for(int i = 0; i < r.getAttributes().size(); ++i) { if(r.getAttributes()[i].getName() == a1.getName()) { - /* - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size; ++j) + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - if(r.getAttributeByName(a1.getName()).getValues()[j] == ) + if(r.getAttributeByName(a1.getName()).getValues()[j] != c) { - rfinal.insertTuple(r.getTuple(j)); - } - }*/ - int offset = 0; - if(op == "==") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else if(op == "!=") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else if(op == ">=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == ">") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x - offset); - offset += 1; - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); + rfinal.removeTuple(j - offset); + offset += 1; } } } } } - else if(input[0].at(0) == '\"') + else if(op == "!=") { - c = input[0].substr(1, input[0].find_last_of("\"") - 1); - input.erase(input.begin()); - int offset = 0; - //input.erase(input.begin()); - if(op == "==") + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(r.getAttributeByName(a1.getName()).getValues()[j] == c) + { + rfinal.removeTuple(j - offset); + offset += 1; + } + } + } + } + } + else if(op == ">=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") { for(int i = 0; i < r.getAttributes().size(); ++i) { @@ -243,7 +213,7 @@ Relation condition(vector input, Relation &r, DBEngine &engine) { for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - if(r.getAttributeByName(a1.getName()).getValues()[j] != c) + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) { rfinal.removeTuple(j - offset); offset += 1; @@ -252,7 +222,15 @@ Relation condition(vector input, Relation &r, DBEngine &engine) } } } - else if(op == "!=") + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") { for(int i = 0; i < r.getAttributes().size(); ++i) { @@ -260,7 +238,7 @@ Relation condition(vector input, Relation &r, DBEngine &engine) { for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - if(r.getAttributeByName(a1.getName()).getValues()[j] == c) + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) { rfinal.removeTuple(j - offset); offset += 1; @@ -269,124 +247,79 @@ Relation condition(vector input, Relation &r, DBEngine &engine) } } } - else if(op == ">=") + else { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) - { - rfinal.removeTuple(j - offset); - offset += 1; - } - } - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) - { - rfinal.removeTuple(j - offset); - offset += 1; - } - } - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == ">") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) - { - rfinal.removeTuple(j - offset); - offset += 1; - } - } - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) - { - rfinal.removeTuple(j - offset); - offset += 1; - } - } - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } + cout << "Attribute type is not an INTEGER." << endl; + exit(1); } } - if(input[0] == "&&") + else if(op == ">") { - input.erase(input.begin()); - Relation rtemp = rfinal; - rfinal = condition(input, rtemp, engine); + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) + { + rfinal.removeTuple(j - offset); + offset += 1; + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } } - else if(input[0] == "||") + else if(op == "<") { - input.erase(input.begin()); - Relation rtemp = rfinal; - Relation rtemp2 = condition(input, r, engine); - rfinal = engine.setUnion(rtemp, rtemp2); + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) + { + rfinal.removeTuple(j - offset); + offset += 1; + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } } - return rfinal; - //} + } + if(input[0] == "&&") + { + input.erase(input.begin()); + Relation rtemp = rfinal; + rfinal = condition(input, rtemp, engine); + } + else if(input[0] == "||") + { + input.erase(input.begin()); + Relation rtemp = rfinal; + Relation rtemp2 = condition(input, r, engine); + rfinal = engine.setUnion(rtemp, rtemp2); + } + return rfinal; } tuple, Relation> expression(vector input, DBEngine &engine) @@ -395,10 +328,6 @@ tuple, Relation> expression(vector input, DBEngine &engin tuple, Relation> t(input, rfinal); if(input[0] == "select") { - /* - cout << "Not yet implemented." << endl; - exit(1); - */ input.erase(input.begin()); vector s; Relation r("TEMP"); @@ -448,16 +377,13 @@ tuple, Relation> expression(vector input, DBEngine &engin input.erase(input.begin()); get<0>(t) = input; get<1>(t) = rfinal; - //cout << rfinal.getSize() << endl; return t; } else if(input[0] == "(") { t = expression(input, engine); rfinal = engine.projection(temp, get<1>(t)); - //get<0>(t) = input; get<1>(t) = rfinal; - //cout << rfinal.getSize() << endl; return t; } } @@ -665,12 +591,6 @@ tuple, Relation> expression(vector input, DBEngine &engin vector showCMD(vector input, DBEngine &engine) { - /* - if (input.size() > 3) - { - cout<<"Syntax error!"< saveCMD(vector input, DBEngine &engine) { cout<<"Syntax error!"< att = r.getAttributes(); - for (int i = 0; i < att.size(); ++i) - { - output << "-------------\n"; - output << att[i].getName() << "\n" << att[i].getType(); - if(att[i].getType() == "VARCHAR") - { - output << "(" << att[i].getSize() << ")"; - } - output << "\n\n"; - - vector values = att[i].getValues(); - vector::iterator it = values.begin(); - while (it != values.end()) - { - output << *it << "\n"; - it++; - } - output << "-------------\n"; - } - output << "\n--------------------------"; - */ input.erase(input.begin()); return input; @@ -739,10 +625,6 @@ vector closeCMD(vector input, DBEngine &engine) { cout<<"Syntax error!"< openCMD(vector input, DBEngine &engine) { cout<<"Syntax error!"< exitCMD(vector input, DBEngine &engine) vector createCMD(vector input, DBEngine &engine) { - //relation name will be the first element of the vector of data returned by this function if (input[0] == "TABLE") { @@ -798,8 +675,6 @@ vector createCMD(vector input, DBEngine &engine) { input.erase(input.begin()); - //vector e1; - vector a; while(input[0] != ")") //inserting all values to relation @@ -830,8 +705,6 @@ vector createCMD(vector input, DBEngine &engine) a.push_back(temp); } - //vector apk; //save primary keys temp storage - if(input[0] == "PRIMARY" && input[1] == "KEY") { input.erase(input.begin()); @@ -842,17 +715,12 @@ vector createCMD(vector input, DBEngine &engine) while(input[0] != ")") //inserting all values to relation { - //PAttribute temp; if (input[0] == ",") { input.erase(input.begin()); } - //temp.setPAttributeName(input[0]); - - //apk.push_back(temp); - for(int i = 0; i < a.size(); ++i) { if(input[0] == a[i].getPAttribute()) @@ -940,7 +808,6 @@ vector insertCMD(vector input, DBEngine &engine) if(input[0].at(0) == '\"') { s.push_back(input[0].substr(1,input[0].find_last_of("\"") - 1 )); - //engine.getTableFromName(pr.getName()).getAttributes()[i].display(); input.erase(input.begin()); } else @@ -1087,27 +954,6 @@ vector updateCMD(vector input, DBEngine &engine) vector s; if(input[0] == "(") { - //PCondition c; - /* - PComparison c; - POperand oops1; - POperand oops2; - POp op; - - while(input[0] != ")") - { - oops1.setPOperand(input[0]); - input.erase(input.begin()); - - oops2.setPOperand(input[0]); - input.erase(input.begin()); - - op.setPOp(input[0]); - input.erase(input.begin()); - - c.setPComparison(oops1.getPOperand(), op.getPOp(), oops2.getPOperand()); - } - */ input.erase(input.begin()); while(input[0] != ")") { @@ -1176,7 +1022,6 @@ vector query(vector input, DBEngine &engine) tuple, Relation> t = expression(input, engine); Relation r = get<1>(t); r.setTableName(pr.getName()); - //r.display(); input = get<0>(t); engine.createTable(r); @@ -1205,8 +1050,6 @@ void par_line(vector input, DBEngine &engine) //calls par_command() or p cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = insertCMD(input, engine); - //cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = createCMD(input, engine); - //cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = deleteCMD(input, engine); - //cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = updateCMD(input, engine); - //cout<<"arguments: "< listOfTokens = tokenize(input); par_line(listOfTokens, engine); } -/* -int main () { - - - string ss = "INSERT INTO animals VALUES FROM ( Joe , cat , 4 ) ;"; - string ss2 = "SHOW Dogs ;"; - string ss3 = "EXIT ; "; - - vector listOfTokens = tokenize(ss); - vector listOfTokens2 = tokenize(ss2); - vector listOfTokens3 = tokenize(ss3); - - par_line(listOfTokens); - par_line(listOfTokens2); - par_line(listOfTokens3); - - -} -*/ diff --git a/Parser.h b/Parser.h index e6422ca..08f37da 100644 --- a/Parser.h +++ b/Parser.h @@ -416,493 +416,4 @@ class PExpression } }; -/* -vector tokenize(string ss) -{ - - string tempString; - stringstream lineStream(ss); - vector output; - - while (lineStream >> tempString) - { - output.push_back(tempString); - } - - //testing--------------- - cout<<"TokenList: "; - - for (int i = 0; i input) -{ - cout<<"TokenList: "< showCMD(vector input) -{ - if (input.size() > 3) - { - cout<<"Syntax error!"< saveCMD(vector input) -{ - if (input.size() > 3) - { - cout<<"Syntax error!"< closeCMD(vector input) -{ - if (input.size() > 3) - { - cout<<"Syntax error!"< openCMD(vector input) -{ - if (input.size() > 2) - { - cout<<"Syntax error!"< exitCMD(vector input) -{ - if (input[1] != ";") - { - cout<<"ERROR: missing semicolon!"< createCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - - if (input[0] == "CREATE" && input[1] == "TABLE") - { - input.erase(input.begin()); - input.erase(input.begin()); - - PRelation r; - r.setPRelation(input[0]); - - input.erase(input.begin()); - - if(input[0] == "(") - { - input.erase(input.begin()); - - //vector e1; - - vector a; - - while(input[0] != ")") //inserting all values to relation - { - PAttribute temp; - - if (input[0] == ",") - { - input.erase(input.begin()); - } - - temp.setPAttributeName(input[0]); - - input.erase(input.begin()); - - if(input[0] == "INTEGER") - { - temp.setPAttributeType(input[0]); - input.erase(input.begin()); - } - else - { - temp.setPAttributeType(input[0].substr(0,input[0].find("("))); - temp.setPAttributeSize(stoi(input[0].substr(input[0].find("("), input[0].find(")")))); - input.erase(input.begin()); - } - - a.push_back(temp); - } - - vector apk; //save primary keys temp storage - - if(input[0] == "PRIMARY" && input[1] == "KEY") - { - input.erase(input.begin()); - input.erase(input.begin()); - - if(input[0] == "(") - { - - while(input[0] != ")") //inserting all values to relation - { - PAttribute temp; - - if (input[0] == ",") - { - input.erase(input.begin()); - } - - temp.setPAttributeName(input[0]); - - apk.push_back(temp); - - input.erase(input.begin()); - } - - - - return input; - } - } - } - - else cout<<"Syntax error!"< insertCMD(vector input) -{ - //relation name will be the first element of the vector of data returned by this function - - if (input[0] == "INTO") - { - input.erase(input.begin()); - - PRelation r(input[0]); - - input.erase(input.begin()); - - vector s; - - if (input[0] == "VALUES" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - - if(input[0] == "(") - { - if(input[0].at(0) == '\"') - { - s.push_back(input[0].substr(1,input[0].find_last_of("\""))); - } - vector e; - input.erase(input.begin()); - - while(input[0] != ")") //inserting all values to relation - //for (int i = 0; i < 2; ++i) - { - if (input[0] == ",") input.erase(input.begin()); - - e.push_back(input[0]); - - input.erase(input.begin()); - } - - cout << "Inserting: "; - while(!e.empty()) - { - cout << e[0].getPExpression() << " "; - e.erase(e.begin()); - } - cout << "into " << r.getName() << ".\n"; - - return input; - - } - - else if (input[0] == "RELATION") - { - input.erase(input.begin()); - - PExpression e; - - while(input[0] != ";") - { - e.setPExpression(e.getPExpression() + input[0]); - } - - cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; - - return input; - } - - else cout<<"Syntax error!"< updateCMD(vector input) -{ - PRelation r(input[0]); - - input.erase(input.begin()); - - if(input[0] == "SET") - { - input.erase(input.begin()); - - //parse out ( and send everything until ) into an Expression vector - if(input[0] == "(") - { - - vector a; - PAttribute temp; - - vector s; - - //vector e; - - input.erase(input.begin()); - - while(input[0] != ")") - { - temp.setPAttributeName(input[0]); - a.push_back(temp); - temp.setPAttributeName("~"); - - input.erase(input.begin()); - - if(input[0] == "=") - { - input.erase(input.begin()); - - s.push_back(input[0]); - } - - else - { - cout<<"Syntax error!"< deleteCMD(vector input) -{ - if (input[0] == "DELETE" && input[1] == "FROM") - { - input.erase(input.begin()); - input.erase(input.begin()); - - PRelation r(input[0]); - - if(input[0] == "WHERE") - { - if(input[0] == "(") - { - //PCondition c; - - PComparison c; - POperand oops1; - POperand oops2; - POp op; - - while(input[0] != ")") - { - oops1.setPOperand(input[0]); - input.erase(input.begin()); - - oops2.setPOperand(input[0]); - input.erase(input.begin()); - - op.setPOp(input[0]); - input.erase(input.begin()); - - c.setPComparison(oops1.getPOperand(), op.getPOp(), oops2.getPOperand()); - } - } - } - - // send delete command to DBEngine - } - else cout<<"Syntax error!"< input) //calls par_command() or par_query() depending on first item from token list -{ -/* -• Match the first item in the token list and determine weather this is a command or a query. -• Call functions par_command() or par_query(); -• After either par_command() or par_query() returns, make sure the line ends properly with “;†token - - string tempChar = input.back(); - - if (tempChar != ";") - { - cout<<"ERROR! missing semicolon "< insertInput = insertCMD(input); - cout<<"arguments: "< insertInput = createCMD(input); - cout<<"arguments: "< insertInput = deleteCMD(input); - cout<<"arguments: "< insertInput = updateCMD(input); - cout<<"arguments: "< listOfTokens = tokenize(input); - par_line(listOfTokens); -} -*/ - void parse(string s, DBEngine &e); \ No newline at end of file diff --git a/test b/test index 8833e9b6fec9a24bf4de26d5bef7e7d913b6c5fd..c4326f6aae22b4f460b47b1240cee392e6c6881a 100755 GIT binary patch delta 65270 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 z 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 delta 70124 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 GKl*=uYE*^* diff --git a/test.cpp b/test.cpp index 1f34d4c..ff4d2cf 100755 --- a/test.cpp +++ b/test.cpp @@ -8,46 +8,6 @@ using namespace std; int main () { DBEngine engine; - - Attribute att1("Breakfast", "VARCHAR(20)", true); - Attribute att2("Lunch", "VARCHAR(20)", false); - Attribute att3("Dinner", "VARCHAR(20)", false); - - att1.addCell("Pancakes"); - att1.addCell("Waffles"); - att1.addCell("Biscuits"); - att2.addCell("Turkey Sandwich"); - att2.addCell("Caesar Salad"); - att2.addCell("Pizza"); - att3.addCell("Steak"); - att3.addCell("Shrimp"); - att3.addCell("Ribs"); - - vector v; - v.push_back(att1); - v.push_back(att2); - v.push_back(att3); - - engine.createTable("Food", v); - - Attribute att4("Dessert", "VARCHAR(20)", true); - Attribute att5("MidnightSnack", "VARCHAR(20)", false); - - att4.addCell("IceCreamSundae"); - att4.addCell("ChocolateBar"); - att5.addCell("HummusandCarrots"); - att5.addCell("PotatoChips"); - - vector v2; - v2.push_back(att4); - v2.push_back(att5); - - engine.createTable("MoarFood", v2); - - //engine.getTableFromName("Food").display(); - //engine.getTableFromName("MoarFood").display(); - - engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); string x; cout << "Enter DBMS Commands: "; while(getline(cin, x)) From 4d1b2a4f8ef08523fb7e02780270e608316c5986 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Wed, 30 Sep 2015 13:02:20 -0500 Subject: [PATCH 184/186] Took out unnecessary comments in code. --- Parser.cpp | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index 1c19bfa..c41a61b 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -19,17 +19,6 @@ vector tokenize(string ss) { output.push_back(tempString); } - - //testing--------------- - //cout<<"TokenList: "; - - // for (int i = 0; i Date: Wed, 30 Sep 2015 16:48:54 -0500 Subject: [PATCH 185/186] git hates me --- DBEngine.cpp | 48 ------------------------------------------------ DBEngine.h | 9 ++++++++- test.cpp | 23 +++++------------------ 3 files changed, 13 insertions(+), 67 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 32a06ef..d86d1b5 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -227,85 +227,37 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ Relation new_r = r1; new_r.setTableName("TEMP"); vector temp; - //bool duplicate = false; - /* - for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) - { - new_r.removeTuple(0); - } - */ int size = 0; - //cout << "test1" << endl; - for(int x = 0; x < r2.getAttributes().size(); ++x) { - - //cout << "test2" << endl; for (int i = 0; i < r2.getAttributes()[x].getSize(); ++i) { - - //cout << "test3" << endl; temp = r2.getTuple(i); for(int y = 0; y < new_r.getAttributes().size(); ++y) { size = new_r.getAttributes()[y].getSize(); - //cout << "test4" << endl; new_r.getAttributes()[y].getSize(); for (int j = 0; j < size; ++j) { - //cout << "test5" << endl; for(int a = 0; a < temp.size(); ++a) { - //cout << "test6" << endl; for(int b = 0; b < new_r.getTuple(j).size(); ++b) { - //cout << "test7" << endl; - //cout << temp[a] << " " << new_r.getTuple(j)[b] << " " << b << endl; if (temp[a] == new_r.getTuple(j)[b]) { new_r.removeFromTuple(b, j); - //cout << "test" << endl; - //duplicate = true; - //break; } } } size = new_r.getAttributes()[y].getSize(); } - /* - if (!duplicate) - { - new_r.insertTuple(temp); - } - */ - //duplicate = false; } } } - //make this one for loop later! - /* - for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { - temp = r2.getTuple(i); - - for (int j = 0; j < r1.getAttributes()[0].getSize(); ++j){ - if (temp == r1.getTuple(j)){ - duplicate = true; - break; - } - } - - if (!duplicate){ - new_r.insertTuple(temp); - } - - duplicate = false; - } - */ - return new_r; } } diff --git a/DBEngine.h b/DBEngine.h index 81009d3..7916e96 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -31,5 +31,12 @@ public: Relation rename(vector newnames, Relation &r); Relation setUnion(Relation r1, Relation r2); Relation setDiff(Relation r1, Relation r2); - Relation crossProduct(Relation r1, Relation r2); + Relation crossProduct(Relation r1, Relation r2); + Relation update(); + + //UPDATE Senator + //SET Party = ‘Independent’ + //WHERE Name = ‘Joseph Lieberman’; + + //Relation deleteCmd(); }; diff --git a/test.cpp b/test.cpp index 710b098..82732f7 100755 --- a/test.cpp +++ b/test.cpp @@ -1,7 +1,7 @@ #include #include #include "Parser.h" -//#include "Condition.h" +#include "Condition.h" #include "DBEngine.h" using namespace std; @@ -30,25 +30,11 @@ int main () { engine.createTable("Food", v); - Attribute att4("Dessert", "VARCHAR(20)", true); - Attribute att5("Midnight Snack", "VARCHAR(20)", false); + //engine.update - att4.addCell("Ice Cream Sundae"); - att4.addCell("Chocolate Bar"); - att5.addCell("Hummus and Carrots"); - att5.addCell("Potato Chips"); - - vector v2; - v2.push_back(att4); - v2.push_back(att5); - - engine.createTable("MoarFood", v2); - - //engine.getTableFromName("Food").display(); - //engine.getTableFromName("MoarFood").display(); - - engine.crossProduct(engine.getTableFromName("Food"), engine.getTableFromName("MoarFood")).display(); + /*actual testing string x; + cout << "Enter DBMS Commands: "; while(getline(cin, x)) { @@ -56,4 +42,5 @@ int main () { parse(x, engine); cout << "Enter DBMS Commands: "; } + */ } From e3ef70bf1536697f14395063975a6376b7df6f61 Mon Sep 17 00:00:00 2001 From: Rebecca Schofield Date: Wed, 30 Sep 2015 16:54:56 -0500 Subject: [PATCH 186/186] added the framework --- DBEngine.cpp | 11 +++++++++-- DBEngine.h | 7 +------ a.out | Bin 107878 -> 129922 bytes 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index ca1d681..b216922 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -217,8 +217,7 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ vector temp; int size = 0; - -<<<<<<< HEAD + for(int x = 0; x < r2.getAttributes().size(); ++x) { for (int i = 0; i < r2.getAttributes()[x].getSize(); ++i) @@ -284,4 +283,12 @@ Relation DBEngine::crossProduct(Relation r1, Relation r2){ return new_r; +} + +//UPDATE Senator +//SET Party = ‘Independent’ +//WHERE Name = ‘Joseph Lieberman’ + +Relation DBEngine::update(Relation r, string attNameSet, string attSet, string attNameWhere, string attWhere){ + return r; } diff --git a/DBEngine.h b/DBEngine.h index c688cb8..4b4eb3b 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -31,11 +31,6 @@ public: Relation setUnion(Relation r1, Relation r2); Relation setDiff(Relation r1, Relation r2); Relation crossProduct(Relation r1, Relation r2); - Relation update(); - - //UPDATE Senator - //SET Party = ‘Independent’ - //WHERE Name = ‘Joseph Lieberman’; - + Relation update(Relation r, string attNameSet, string attSet, string attNameWhere, string attWhere); //Relation deleteCmd(); }; diff --git a/a.out b/a.out index a30738a629d88890cfa900230fa822f47a01968b..a6a30151de03aa827c2b549141a08bd40ce2e7cb 100755 GIT binary patch literal 129922 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 q-vWL%_;h*=0sjVg)$5M|IcfA7 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�W)?4S_YwY1? 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

o6EcQwGH)dhShR@=YWIXg!8D=S(4tsnwdE3 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 From 298a699d9f64ce4dd8ca719ba5ee71ae7a14ff9b Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 18:51:56 -0500 Subject: [PATCH 164/186] Renamed Parser files. --- Parserv4.cpp => Parser.cpp | 0 Parserv3.h => Parser.h | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename Parserv4.cpp => Parser.cpp (100%) rename Parserv3.h => Parser.h (100%) diff --git a/Parserv4.cpp b/Parser.cpp similarity index 100% rename from Parserv4.cpp rename to Parser.cpp diff --git a/Parserv3.h b/Parser.h similarity index 100% rename from Parserv3.h rename to Parser.h From f42f788e99e82ecc62012e85c818a62c73a313f8 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 19:11:26 -0500 Subject: [PATCH 165/186] Changed #includes to renamed header. --- DBApp.cpp | 2 +- Parser.cpp | 2 +- test | Bin 173121 -> 173119 bytes test.cpp | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DBApp.cpp b/DBApp.cpp index eacadaa..cb9dc19 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -3,7 +3,7 @@ #include // std::stringstream #include #include -#include "Parserv3.h" +#include "Parser.h" #include "DBEngine.h" using namespace std; diff --git a/Parser.cpp b/Parser.cpp index 78b39a5..d26d7dc 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -4,7 +4,7 @@ #include // std::stringstream #include #include -#include "Parserv3.h" +#include "Parser.h" using namespace std; diff --git a/test b/test index 71512f21527da6cc917f3bbd47a5446937ff1c10..049f86f04f34dbd2b3953f224cd9f47dc88a8822 100755 GIT binary patch delta 11323 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 delta 11326 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 #include -#include "Parserv3.h" +#include "Parser.h" //#include "Condition.h" #include "DBEngine.h" From 260d6bfd4cb5eccdaa0ab17f71685d30098496eb Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 19:23:10 -0500 Subject: [PATCH 166/186] Commented out some test output. --- Parser.cpp | 28 ++++++++++++++-------------- test | Bin 173119 -> 169023 bytes 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index d26d7dc..1568341 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -20,13 +20,13 @@ vector tokenize(string ss) } //testing--------------- - cout<<"TokenList: "; + //cout<<"TokenList: "; - for (int i = 0; i input, DBEngine &engine) //calls par_command() or p cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< insertInput = insertCMD(input, engine); - cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = createCMD(input, engine); - cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = deleteCMD(input, engine); - cout<<"arguments: "< input, DBEngine &engine) //calls par_command() or p input.erase(input.begin()); vector insertInput = updateCMD(input, engine); - cout<<"arguments: "<e#d*7RRN&V;ZsqZ`Io_n@?@45HAd6OPG?saIp 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 From 5e587340541091b9aefd92999101c1f87d3f6ae6 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Mon, 28 Sep 2015 19:52:50 -0500 Subject: [PATCH 167/186] Just to keep most recent changes on server. --- DBEngine.cpp | 2 +- Parser.cpp | 35 +++++++++++++++++++++++++++-------- test | Bin 169023 -> 173181 bytes 3 files changed, 28 insertions(+), 9 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index b0eb5d2..ede10e5 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -113,7 +113,7 @@ Relation& DBEngine::getTableFromName(string n){ } Relation DBEngine::selection(string attName, string s, Relation r){ - equality(attName, s, r); + return equality(attName, s, r); } //assumes that all attribute titles are unique diff --git a/Parser.cpp b/Parser.cpp index 1568341..15873ea 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -507,6 +507,13 @@ vector deleteCMD(vector input, DBEngine &engine) else cout<<"Syntax error!"< input, DBEngine &engine) +{ + PRelation pr(input[0]); + + input.erase(input.begin()); +} + void par_line(vector input, DBEngine &engine) //calls par_command() or par_query() depending on first item from token list { /* @@ -533,7 +540,7 @@ void par_line(vector input, DBEngine &engine) //calls par_command() or p } - if ( input[0] == "CREATE") + else if ( input[0] == "CREATE") { cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< input, DBEngine &engine) //calls par_command() or p } - if ( input[0] == "DELETE") + else if ( input[0] == "DELETE") { cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< input, DBEngine &engine) //calls par_command() or p } - if ( input[0] == "UPDATE") + else if ( input[0] == "UPDATE") { cout<<"\nPassing the following arguments to dbEngine: \nCommand: "< input, DBEngine &engine) //calls par_command() or p } - if ( input[0] == "SHOW") + else if ( input[0] == "SHOW") { cout<<"\nPassing the following arguments to dbEngine: \nCommand: "<8pP+;K-m!zD9UG&T2!3nn6oj&xmO1GmnX}AtX72VlzSrZQGamV^ zq_;Okz0r2ji;{`{X=pNqaGJPo_;2ejQNMN9M9$y3i^)<;FO_Rkxwc&_QJN6CHBc1} z>>-3z-08(h(@yrGl&ZBgXbg~7dCz|@GUw`?Uo3s<)MhUpeB1S)>Dfj{isVi1(jL~+ z<0I47m1N+Dyz1m98~A>Og6|HVWZ;Jw__Bc?sq!t< zpq8N`&d|Wcz)vvn$tmq$vVl)QX#dOxKH1Rzr5gCPO(u)RH>DXW>gZgPDZ{|8XW&mW z@ar4+nFf9X1Amc$-%#hnewLxaQ?D?Y)*1Nfc=OtP1HX|$eyf4s*uXC|@VyQEy~L;Z zse76jDvAsZd<^_z1K-!cFE#MH8~A4oe18MK%)qw<7%IvQ6-^EN3Io5Hfp0VLgADvC z13%cnuQu>Q1fSx^zgL{IH&k%=|7#og%?*4{1HXlV?`PnL8TcUvepdrO@)e8IaJZo& z&d?yjz)vvnTN?Pu27aW0Z#M8-8ThFhpW=@)RHSJY;6)qw83ul91Am%<-^RetH1J~$ z{6z+S9QbPgV-*-G;tdVf8Tf4t{Coqyn}NU8z;9>Z7aI8OoqUUFuc4xYv%*wl;P)`_ ziw*pa27al5-^su~W8fzk_+^|QBbHxhLq)lvL85_Q@e2FhFW#~?)Z_@ihW|GVPDbfx zl%|oCy~2Ti;g^V(h%V#wS430hwU=`GEYXy3?M0kENi-!|dm*Qf5={x#p3mvSL{nn5 zXK~uHj~J9P?3tXghiGI{lRbme+li(GYER|#W}<0pu_tqSJ<)ZEj^p$yqA9W3LpZ&J zXiBJdPfpJxni8qqM6@M*Ix#4N+N&Oe5k84%N}TozPLCy;5~jV3)5D0SL}@SObbq2L zLE4Kr-IHiajP^oKClXEh(4NofwnS4Nv}b{~IKrcdK?%^F$pxAd?MHM5rvr$lglA9X zbR(iE&)JhX?LjoFo)j!k& zKNB57bOom`5lwl_UdHLKh^G8yFXi-EqA73Li#UCfXv$aiLQWqgn$nRypVNnlrZi;F z`UmzM;roa|`Ny8g1@;h4dB>i?>Fq>QzOkordNa|KX6(tFUQaZo7keD1R}qb+fF9uV z5~3;1*gZKtk7!CSc9VrOrW1qmioNO)IW&oA$|v>;PLCy;(ulo`)5D0S^kFaMbbq2L zJ=lvl-IHia3-&@zClXEBz@E?PwnWovw_CC}BZ?Tb%njGm67Kw8j7JaFlFQ zTZC1kMa~s!><>N~pW%&nsP)-MKWj?ox2B5Rw3w1tg)*qQ@t4CP8kYSDg|Dj(z6QJG zONX4jx?pwy!mrq}Q0GPomU>9qkh>)neEC^pnG1XYqZT$v1;oYTu^P(`;tn zFe#aB>N{Kh{xv37RU{z9bI^ zBe9i)U^X466m8qX0tRNt51X)M1INfFANC!<)rYkmG)DIDIg&SMuq0pgXFm>Z?|mK_ zR=B7+VSSl}4@p2@Oc>&8iKpt$ry6c9T~pdHdokv6iKh>rgcza+XZegMFM&xYvD&(l z^y<@*z^5!~TwS22NXFXXH9_&Y-M;IoXS#$(&ojAupv+jn)_YfjM_% z7P>@qn8j)v#f_k$vzvMeyIak9g9`b0P_|~V9{H0~UTGpbDb!`TZ1wQAt-Q*Kf6APjg2`*O$wXo` z6ks*X_b$oMSHidK%5dKf2X|1kBa0x8`OY)P*ErGexmHB&Jd)F=oUV&=InI#drN2%imkS$ zDA!0Q@Y8Dhn|(PVs8b?MCNaxDr}1zuk#jJjbt_*YACXldTF6?AG|Qd0vsoj32ZiwA zE~vtJ%ABXp7Tyiru(0{G)Mn74FS!Vpga^-pM8~u)vFRQ2GrKS{Wl}nKzMwlzO)+0e zdiaVR^6qKksq-$okZg)RuTm&@eY_WQxooZirl#{A%P!;cR$BpEG%DIf+G;YfLvQ%7 zk4H6-#<6pwLgfz>c4t&`xycu-@#yBQdq4o4n5Cz>*M1{=R-5gt!_g(>TEpFxP_l>< zc%4le-Ll0;Ji?Ks@WkL-Ej~qPW3k$nvi+k&+U^tH(oEEqd#K6>bLBR!T%W5J_IPxx z^fzmh7H;|abA4p8wZ1$Ko;o1?3&Na88*aBQLoFoCSL<)pQHF~M)08_1=$fR> z&>8`S3Hyac`)hs{rp{mqX>(qk+(;r77z?&8JzBoIiM^K|Aq`-c(?jJqH!(+gbJ^9( zT8wYrI({>ClVKTc`AMiO$4u>#Qf^pA^(xrB@hw}t&36sHj11BI!Mj^5qZ#bj_>i{S zH}L^THZG$FaEZF68&`h0<}#YY8cc|l?5x{_@bRad2~M9|2c0=CxrFraT~+PuZpWNc zU7IvfA3GfOGyJ$iqS`=z%t|NtSW=M_J~ z3(^S0N?hcu(C2qKl#$XvEVi7K%ZQn`11FWW&hU$i7i}oz>uolvZN9|{%Spl6S3gtK z`H?Nii0Jggi`)Z|ulNC_D{n$4pE9RE2kIEathTq=R~hkje)~~4w1Cx{=qGJp;S-x% z7GDN0FWaJaK;TD27I0D=lJvxI=tEwWN|JebnFP7n)3`~#r_RddCV2&7Y|F)U#Vw9f zvuxfPwIx4rvZy6*Z?$#j2`M{YCF2B{sgj{5*{z8!T5Q=s7U=k!UBqkn-g&b&amC(p zkF}c=CJ)-c#!L#4-eF57wG96lRjG}>s&<4Jjq>AH=5I;nNoP~>^2FV(~1>bLPx z5=+VJ1oNHT$x>d*o!9hzCP?9u)pk^nWvcJeCCuzc`pm9U**Cri`!k*GsrLWZ#6GOE z<5c!BVk5tr$Zz(=WDm>3_nkAIYlfAzAH6_XWHz}RQ+%_@bXpO zAIF_?MJn&A&f|m5MosZ=P#*^LQ(+&rd`bs?WxDJ=?W!|bzcMX;4_Btmn0-pC`qSx< zn43~fOXFP@{B(F=8#Dl?!km|idk*}XzP7rqCbEpDgX)hU0dbz{`~kcBbyJofU0=TX zK0Ch2U-CS1{^>%w&hU3h#%deD7ENmtckU3W#Kj}26HBz!5kwV0-NAWQTkXTT)?4i2 zv~Og;BW(Y(ehnTIpRUq+r1uy29x3N|u(G%o(#Xv-eAvP1uIy9AUoLa7pOnVTJR_?6 z2%0zCy9!d6LS*Mt3wl8%XVgPVpoy${-x{PLnA_~ojHRA8F-n4YhIG8nl4eHXbTM~U zC%O3vRyebD%KuqVt&P>KI&5ydzublf zI0Uym?#^%G)(&@zKRd;>U+x3kP^ZlKR|&|=P^Ih|rlfJNRlb=j2#f%2oz*u=RJEdPF}OEb(KHZ&@bOwWJ&={2soX{R=C zX~_;|g44OFTD7A6Sn;>)JgeWa1jQjVb zwbNT%3FXMGL?2;o*0vg(gVz7z!pS#C3pKY5%=t-;`+{&o*D#1%reTIx=GvM`F{!(; zLu)%p<;=de%cPeJ$h6h=630`v+gpg{-GIqVzWFxvqJ=?K>QffjOANxEaJU*QHBS*%#~l<#UXE zaXt8md(I@u`@>DTD}y&v(Q3QMmaq4fS8QY@y@S}5+#$?&YD1TfILxq{@hy69=gIVw zfw@nY;SSgF1SB8Z?yc1FlsWr{`4IziZkuzi+QP6{EB%p3`E9VPwih9yy3%(Oo4YQw zp38f}+TDMx^=b4GL*qBu7kSNGc44`&q5q6weP3)XrLzSuc8FP&M-sg6 z>%S<33y8%N1tl6jwZe9zSG%%{FZPn&VgValH2z~3$*3!`f=v9xQa6s5*0Tc}XL-H= zaj_J6)gl(1KekTS4PYXpjbob%8nfFm0Y^T{mnCVzk&;cRl5~YNWXbA*ue_BtB*1$#1{SEzyKJ}Oiw^%liIl4@;3SbEM;&0EO0;JiLcynb|+fHKD9FuS?U|Vl?ervwx(`s<)kz*2@v#m|{8yLnlr3(&Yk=QER z!HDg-Rl45V+=SJZPpq1HgRvTI30W+|9?4v`ufigEVSD>Y-u$jwjXQh9p?u=J%O7wJ zP50qp32rM!h_!094dQ#FzHN2mB;U3?@SquaiudEhJ=|c*j$MI8S)>>zx4hI4U^PAc zQRiU+d%R=3w27tf9Od^NUu7rFt7nx{u0eGg#$(vPg%g2D9BUwH)-IH+HU~`(A8Z~KI+Lp(zLpw-t2O4_7nV_DPxI;< ze&*apW{HP1Zz&er%RVFiUQSKK;cz?zD|_=1SFg#ewq0aOy_nUG`=6kV$`cL4$bxof z*L?;1=;ct0O}|@omck4POvYTY+UldNHRUFPHdVIM@4agMDN>XVZNhm21}*tp$(mZ5xASJ!H&(7oiql6$&OEsQ=*CHHeviu4QU=cykt z6wW)vN0xviHft<2-mUA}J159JUd{J&t@@Ytcp*d#QOaJmi3>mI;KFq%Z(2bea+I3p z^84Avs@RVeWK0}_-cCeE^`J3P=i+*jM_(In$u9&?8xYvH+7_UdIj6RIuieZR7e-q` za?x;gwfw)G@%v&!M|a>;Eu~EFj6RqFqBGzxk9-y6)yT9QY^Ox8PNP#)ohw$(XM8DB zK1{&0#CvRERV+m5qBP+R|-37_0wnBt4DJ59gg}aDEC; zQ8bd8^M#9`iLV@e1Bs^7hHCjIs#cx5_dH-Jj5hyyFp)9$=it+pZzHXgsO zG1Hx(T>Z{s|15UlaO1FDl=hvEI|fs42_b!`hOrB;d3VlTK!OFy4ud?8`vC7?{Q<)% zl5?8*)Iw$w{rT>~jq7@U1h1sN>g83qOkQ@zLCny6F>gNRoP}HUB;)9@ypDKh!^Zb9 z{ZY)gfAM@4S!k$Qn8Pj14>M@5&$Um=Ani{C9Yzl4V121K<#?#$=aU-+{1#G;8;a9K zAMgtJS3q*kKG?c~`k;B`3Z1L>!9kcV@lriJ#8$rH>$9G`;g&OaxZLt7cHj-akU#Ny z4LlNjtL@=)xur)LJw;bd=RGm)!4fJyQyiqpf(Y_AviEELt@{&={c?&bs27p z-hg&9h}TpNc@~_{}RSJR}QYWp8~kk?T42O@{O+Xne|QypD?@va+&PH z+kSF$#ekU0n5tIWUL>B6Xdo*?OIl(|i34T>sL^-dp$Ot5KKGnyz8RMA>W5Op zHEF1@56AyXI_a&;W*J(`jpwjC`D(YkkWMJgtK}Q?kn`XYzq24L+mAqiwl6S@?mz;qPNxF6pbTUG?^fwM?J&0KfOpjE{M=A;Av}xLBGn6Xd~WSw=MVUGo{LvI^^|0_U77(&vAFc) z;HS3^aVD;zEaaeHhc9<)ibcXSZNAQWSp=?+K3_f1L78*ZUD($+jp6F*I#_;a3xtad$j7_ucfdfjj~;ZO_9GkIFS zCOf-)LMHDr!BH>q+|U}n2%gpE3(fSPVltg%c}IvI@YVH+1;xjyfzU^sl0vmlJ0Xmm zQ}xhV2wH8QuzH7^jyXXWf{4r&ZE{ZWjuR;$a~c@@dVkb2(4%GBF<|o$h17QVB`!YU z8$C}IzFBRtEbFju;`Vx=h0khITd@ZJ%NsCPYiN6 zbm)W9ht)mOqV+x6pRFemv!i6M8uZI#J}*tvthYGB#vSobNSaEu1sOCDHJrKIiZ2~r zfv#!q41#*96DvFH9lst9+tX?Ii}WGB42Ame2UABmhrg8FJ<=lS8@gEIv7@_D;<0~@ z)B*xaWHITLaCT-}UaiMr%*U8QypWZ;V$Ow1M7-e&D+=B&@bBXo%g{jK-Eu zyfI$fuu*Hhp})C5ObE_Mq4T{pqsNYWtX?b`I46R_py1mXo|Woei{e%`wV%oKy$t z87L79bSiY@rd<1<1-evMQ>c#E0->f*AF)>u3?DH_;7KPGVZ_+$?>Diu;f<}fd1z8& z#D1Ktjo7J4hMxEoY{Q7T!#{e%hWlk)oI78D37GM~*YZrt_HHR!yD(tP*-Jso)&r76IVXuj(?#A=(uP80`A-t4F1;G~LB zep0eO4;jN5Y1>4DZ}FxZtdg$B$*tPZQKF7eVhkFv}-tL*{AEBgu#7K7DB9|6^P z6}Frh>V3B|lCTm(y(PiN-UIuYc3jf-h=DBjXw#0Du!U$f+A-{%p>)rdY<)Qp%yN1m;lU8S$m3P}I}9=m1{vbj`P&za+U_{k4?~aD#Md9Nr`hUaK5^ z^RR(eGMwh31%cjx3zU3j<7+Ctt<|>X-?V*4Orc-bwu7{3m#({1Ws}6632mt7P~_Ux zrPbC`#8LG)nmo4JdQ8*R66x`8rpL3}ANlzNQaFfF+iZA@BU#`vKg%ScRGS2O6Cjx< z-XzyfL|l3p_a$W`S*nd*M+Vqv&cpt5oj>TrTi(1Se~ZY|IViQbdYVsGTRfK#D#F!4 z(B5K;q*&l#jZs+Y3{da4?ufEvG>rl@_CQ?72t)K{R@+tDK%Z39_FokJ$t_x_Q^YZz zhuHzmD+3KzL=(mv*6S-2!4m^{5PI~D?GU_EH#Tib5BWET_7Ia4S>s-(IWBKMm1Ot{u_nN&h@a>ln4e8gc&`t~o5uR{4)vTuI&G zzrh=QF4`ea6FaBoU9w$bo@h%rh`*_?zAuKC>;+j!&SG3%_G2%W_*#~$q37va>4)Pe z8r(6^Hg?|W^?7UY^!zW9&}IQr5N)+j4(A~1geQioEW3SN1 zBI;#&ZcSq^{+qF%i1~!E*U15R#rHR^^(U5pyou#&p_?bZ;F`Ld|C{aw#H1U)c?AX! zn+Pqm?TQZN7Iq141-N1mIM?n&(cp19J&Cc<2PxVeH><5sti1{vkWVI=9cbZf76MR+bx3jvEA&a^_7Lw^0;;6eLAMvKd=qR?!3XMKC;>myp8)!vo zd*)MY(#e!|OL1N)c}mR#%jvKw?l4k^=r3W7A|dT^JdIsC86o}5q*LB59ngjB{>kWO zdbXlY6>A_%U2tBb*~C-cmS6BG7^WJycynwtpI+RCmge%%P)|r3VUV)T7Lkx@2u>kE zZHt_$3eFH|DV1+AR$G8K8PhM9cQi6JBRWp4-q46whp1%J#?0%q@0bTT=?K^JRo6R? z0!QSfWG>4W*LvPse>r6{z$I9PG}pCb&T%~xgm#?A)jKqtn<}*PiMf*`oWAdV>R){SotPpOiO%C% zHhb~0q*NsOkXb%)^$QTXE5J4M)>JRH^AmqdGd?2pa1q-AcTHrSTB2M^{J%!%4(ao$ z17g;*&T^zRL)H58|t8XTlbC%-)_JUF~-V)J=X59qp1lsN@)H!#07&!d33L0EKRkqdRQw0*Z zsf0jC1C{HJw}{rx_f96_Oa*1U6Dl#6D&q{@be2@ZS@oVT7y6VYoEE?~^do;U$?&x& zC54=i7yUy`-^(Pxg(;`3w$T>kN$!5OiEjwpT^Ak!=afuUv*KUqCuGIYl4)RwOUY&s z(p{92-g;e#7mM(bzq5 z&>4l5Hc54`a|YT-1X{`i)#4QOJkDF+<3}CP6M}`CpV*Q?a(M*$K1lm7Zt6f8{NDkC z`fj-kM*b_%d3;=q1A2Ri9_KFzxg^9An2h;{mvd>PweiE3OXSLvfexhT^$|^V1{zIv z^7yL|s86(DN|zUxB{H-8BXpG8i_*%xz)}G>tmI8E7>1`I7^>BF$kj z1X|<_bUfKnKcCS@RMhi82YuzNhyR`;P$6KoNfc-s{I-JXfSzHl!;6y3YMeIMSYt6J zBUB1 z&~_J{^$4^TKa1%fbp?R5_oeqPg#)_#4j3%?Next@K>s67%SG<5G0MhX01D*f1QviYXEiG}Dfb9~t5t zTw{s)QJ~k=Km*X3{}t#R?yfP;83SO^A_C1o%zB`&QU^E#T}ZAx8R%#Hq@X3;On!{w zf$k+c>N!gfRMhi0KPz+ABTmaW+Of5JPgdJNkoLuNf%n9S#zSvOr5b2EL`{Jn)V5L7 zX)~7}muu{zYx+|Fd_Wf?W zk560|WYJMaJ@U<`^T8_ye-R^A8h%ZJ4qYX8)yT#nOdK;tmD~eE?2Xob2A@4>&~$fj z0OIa+6r&+Bzkcc(^(QyaPf34bBdv@mX&9hsoh!6jlKFCf7hNPC(Cjl)BlR?7watK- z{SWRc9UeXT(#0DBv@eT8*C~6kULB`a=NPNE>D8%f^>k;o{Nd==0QC5)-whM`zf~98mC4ZF>v4xrKrTw4=;pJ z?AlRsGR+$Nqy{@(7Ge3dFZBw4?KDg6bMy1W66g5{YM9G^5TsPCKEhjI9?+YCVw5hQ z!c5^tKZ*p z8=F*~@gDqzR1r5d%qOj-VCXRq!D!?7yhuIu;|Ga6bCy5KS-`5gcs1=!KY_EUkM^M< zk>V$CzUV_gfx{A$>awn1)eZkE1y8*O-9#u=J#ui&zkoGW@)NyFoZJ*Ym@^7TM||Uz z@pY5VgCJ?fqeJ~ZaSRwWz8B1eIe15oW>O!oKJCYU-{itP|AdFVMQa$U(8dHZHQIM_ zwhz?Wvx!svS?2OOvSeoQUx&#{Q`qRQgA&GR>Q>U;YGDKz1Dd|!M%87cerg*D&Ccn4m5a#=;MpyhmLyVZxKd^1??+8duP2C~Xq zo^r$9?9?|sJAU3%#HZWZ2S$zP>X1jm$ZfJmy`x9>bqbGeP%nzEW9uiC)q7Iej9$93 z)c;Y|K`1-e6HfZDu95C?RZsdB&ZX7i#&a z2iMKz4x)|ybuICT`)NB+uU%tvXVycgvZq)?Wu$$vL4uo}MiL=H0&@)4iv|g9s1G@p zn^J6E&F+2INxt8cwJwjB=Owd@^3c8qaRH9mxtAhTXJ`^KQyx03FKQ|W3s?B+?nt6y@SBnoJQwgV0-ZIIUc=p&oi)GpU|qg%CYN`| zFg9UxzIShMv^#lA-)CBF2LyZD_kCoqWcJhdZQbALhVMZj9dIdJKGco%xYSABo6J8G z-F#`9tn_D(ErMDdPEZuH! zW{qzB>ATXV;go;Ti|W0J6O=mgyg$JtGO?@$_`>uTZ~66J^o6PKL!pR&VM-sY@S7R) zdeK+9^5kCl#59QI&+>Em2MHLTn0AQ@=}4-18heiy@w-%n{PR-0$|)4QjAh4?uQg%2 zueo}T1>yY4bVE=2$~0t+m~Fy&=U1lPVaK+i9a@*&YQp}x)=my-r+zQz!BT(i*{mDt zUB^4@OH>vL-+`+`0akA8^1uJZp9S*^f~JcZaI>A>Enuu+>z(h<8ESGHuhGt z;U7l-j}vNC%jr5;`{pRWGFs#*o{iR^krpuTA8UKaib>SgFB?YCR8XYRCa zlGKW8DK%(m)r!4!C#3I0(yw|vj-=GhUqd|o}^Z|(lQEjHNXQ?jBiKoomuc*-(ID3 zp}yHp?#H^{pC>=lpMEgIE2L)SAv3#szlmJCFRT4$E3a(5vXuPn(~tH1GfYl2^UXKf zjLp}F?f5fZ9@vk4`Dcp!FojjjY9cS}%VPeD_Ie8aW%vn<5Hp+hS7&)v3VZdh1o@Lb z{6{eAryQwO-AbC>ksHDWqW=DW@W30B8eOTN- zZ_1e|?E8P(w|*{Aw^h3t74Z!)v1)FV{x~z(5(2PMdb7cg>&P?uurZH&%dgI0yC3^E zTf`gu>j%2y1DRt->m#ybyA*eT$5P{y>voBlK8DZWcR@rwD2xig_ujs&{?Jj- z!uiEP_8dCr!pD>Tz`O!Z;w3F`OIBiXQPpTas>-Hc`XzF!kmMw85s_q`D%sjk87WC2 zmiLa^`i=tL@#3E`psyJj_pz%`^-oA5ROe78o)iFI&#chQ$uHAx=^i+61AEqO-1c_wN~_Y z0Vl9Rq~~3;A7sffZxu-y*e1MsJ-MPENC~nQiKIfWk+ElShZjkesWUW@+ z@Y{gGf@-~ueo`$wS_&{i#s z5Egg^I%&1AplO^h40KlwxC#T^xqb13ujDt?!ggVS->a-);SZ4ycm*sp7Zx;?jfI6F zs)g4?PjC|Nm{16}RRf)c0pfM78N+5_fof>&ooK{^)Knf829wpPbakS#(M|Gg8aaui z3iy11C0@&?e#1%12?(V8IgtzS8U)0ZbAi?!xPEOA%7kBPpJbBDf2b}$-AHNXE(KX` zb>l6ljvT!1RYSpd!e3zlZ=kp5wHsC8F+x2jkv~bjme+3!J-b!OSRu(t@sO*enmgiR zwVn1-O5Bk@2l5fr-^A@zQ$u^<2^k?j!$qy;iI1o~sMfy8$pTIye;OT25)F^5lFNl8 zNRdBD)P%phLpBRb_t^G>)$w_3?5oDoDebr$%$X zP>m0@MVVjewW!beSBdW{BFj(%jS*t`RQ0GH7vo`7@g~`x>QJn#i_sm8J`<0=4%bsM z>PbG9vAjhAkC9)!@buQ@G}lu>I=4c?(C}H_KvnzcaTETgm2ClZ|IaTnq!Ls6MTWKL zGR>2|LIWT3r(l3Ctn@i%wQUomST;#D{imNZm`ix*}E9*C2ab<<%1E3RUu+htvOqDz5^~?45OOr7HU~gXnpcXL*lg z9qNxLiQ^wR^s+(rsw%slM8DBRD^&J#22t&N_7sV}rHg83EVDsW9JKHxwmr$N&}B`O zR^UN1gKR^USBFH0>!O}2`}aD|J_uHMSJ2!Zsf&iFY^y;u7CbjHb;LulG?bcHb{Zy_pU_sQk~<6{2Om!mz5fEKdyC!( z;PbmwmCZEBo>zJ4BsxbIEmPSk2GOf3FTRc~KXu{u=V z4`^<`jaym5IW4W9Hi&Auy$GV{IW4yjh(gOkrN9dvePF1rnQ|`Pu`@7uW}W6#sAh1X zO-rvc4GnmX?PO@c6Kw?t90<_XC*N|v7#$0{V34~qPxB-uiLjj=6e`npGt9mOd3mK=@@ypP&Qb~x4n?*WT| zmufj2pthoc&}1Q>!BN{<4Qf!BZ;z(xo*3z!5f1WpH*0+#_RfG+|~cvbmRH-{tA z8^4%UfkIk{$z!2atpcxHj0_iVZ9R%hBOMpedD9nm7U@EW*xEbh) zS7N8vaX1oy>w#&&#mExtfUg1f0>1#BX=1@&jzk``fe{F-jTf`W0waMdfT_T(z)av_ zU_LMcdqy#^J+K@&9#{>03FwCpL)J7vj{pmS8NlnnEMPqhb0M$;uoO4}SYbh7CJH8e z(XbX60=xz^1HEw;qd(1+0$c}N2;2)?13Uvf1GE9%yx_RM$&?6;1U>~c1GfU{PkBwk zB|$!LJFp071C|42T*FxCbCd-rgy7>4x~xnFo(5(BZveA^_ke}KBpgXgfm?tTz#^cj zsmXK&7y_&YCIbU-IL-i$0%ifv0E>V(faO3RT>n=C(|jBjhabMcSq?@5@BlCkcnr7* zcoDc2SQ~d$ih&Wpa$qX38aM&yhi}B{;i5Dd=mX3Eh5@sH-GGI_G+-%kCa?mS4KxK| zNd0hR2tnaI7|FmNff>L7xKhsot^*bV_X10S9|9|YEpao#GuUM60gMCQ2BrZY0T%(o zn!<5lZ(uQSBCs4d2UrdK0O*IwUS&Zc0R@*phr<*K!@+2X55Ly|i-Eg{M*Uf$f$NZ; zD}X0~k&t)8Ez4BkpFsNSS8>hZFmN)k6leq5fHLl7*KUsXz&PMbz*L~+I0~64*ns)K zKY>L+&oC@2;A~(u@MWN13-lB)0cZ+G#K88zMZht@t-w{lV&Gn2Iq)#B8u$R{7lvgS zfu07g1!ja{{lAMs78ntS0Hh`g1_^cYBgU+!W@ z^tc6u%mf$)&P+mt_%$9|Pecg(wl6RRJz_=!U`wDM3?~6IfK!3hP<#;>g7#tk(DlGr zU^y@mmfiya1rqI01OQV=0j09dAWr1N7eg|V3u-<4W08R%M0k;FofS&`afRBKlao97`u#AACfT_St zU?y-cFdukqEF1?Wk3+=3t-#vxn54i+;5R@s@UaDjX($w=qapAIU=h$|JPZT-1FL|` zfSzrk7?=Qj089h6nSdbz4hL=pZU7boM?D3@z!!n0b|%whU?lJc&%#=h=_rEfT_R|U?%V;Fdvva3GIP9fn~t&fmOgplhM8d z0s|%hTTQ`G0S5!KI$-^;Kw&Q!-viG8rKd4gz^1_39WmCxNZ?qY88{y}4fq={A6RcH z36jzHDqse%(F_;{4h9x>!ul^op$v?lfz`k^Gtn>sT?$M9 zt^uY2Hv<;|_XD>AuKOa|ToW&o3C!!U3xun>3-SY|=t zHVW0i#&ggx5vu^00DKmh23!PO1Uv=Y3cLU;1~$)xVPG7v8aN2(*99jWU;^+kFb((% za1pTMT(k%F1{MP+04?PxY($|N*nA$ART2^l&;E+X702~jT2K*ej75FW%82A8K4h&ul!@%c(Aw96HfM#IBC1?js0VgkufbO#G%l186pM_1TF$D0d57hT#nQUOa)c|Gl8aFCQ}|T z1h@m347>)+0MhRUt^?)+_X3N6XMiO@8}J8U?cQ)07zwmwq6f?<6a%LLBeI|X_!Mw2 z@CD!*U@6cBya23?&8Pwx3A_iaFk@M*0>2+JCNK{8`Dz3Nd}j@2J#b?-^Z}oF0X+fC z2730#`nPPtnD;lC%6CB!c=UA$0!#Nn5V-JdbT#ncdx&@d`0ryf4mX+p0TuxpeE^5y z$S~kuU?H%K90OJZ1Bx-X`e4=r6M$EM89m7wcFp`0#z%*b5a23$h7hMPp z0iFaV1HS=g0Gl6$VW1hf7dQ`i23QKL0$vAtqGvomLXQBWfT_UVz)WDk#~5M@3Xvr+ z4D1Q4Lf6a$W+37>fM!HI={OnymjUyE$AQJb-+<-7KY`W2Nu`K%AW|?e0r)8}4frQ; z5it1#3z+e9U>vX%I1N|E6~Om_rZh}WUNf*6oJv@XLKE~AFv8I8R$6{SG&MCV9Q^yoPfQ7 zi-41WTY)!$#lVbfh#a^RSPeV|^h3{m0Zah)_!aGeLx78bCBVH@aSnyZbY#B2;34oY zU?#9$HI@}H0hkXo1NQ>I0ahrBW2BbynH$QU7%4)&d0jahBL&G(_mvxjf%g@U)>5~2 zm+>Q5Uz(8YW-jhw>e0Y+t=y}=TgvKM^67f+wZRX=e@FnPRk(5ZGs&%6tSoIUHH%Kd zEyG`l@!As&e-I4=QI{lPbgCXJAN7>{8y*A0^X_BEbZS((SgC{-dDvaWqYd1dcUOrb zTy|IKPq_ZBGM#YCU1dGtp1aCEl|BoMS_?%9(C%`sruABFByOIpZ;-LPepeFXr2x16 zD9e8+V^MAxgYu)_A3LzwnOuHbtc;6=BfftqOJZTj?GI%;;jllHql9UHD3^f4m;CYA zQBDmiYZ{clbcVaL7IOH#$Bq!l>3um))W?7osMg;>*~PI~84xFhH@Blfl(E6nPKEVc zuuI*eo(XV^LHVD1%Jj}sfcrp{1MWXoepn#+$Ib*%@BU*4PB~7ii-nRfux^r7)Kl3d zaEa119^ppZr+x{NL+(?b1VurcV?GIlEU7sSraQd}bj87sPn!U@B$P+o7oMe~JpR72 zq&@ofGMrfmUAJg#VwNa%+rn7VUrJP47)$s|=}$P}FJ(GVnxdSDmzuhUxtUC}M6oxD z3zb*Eb(@0Xl)sc45Ue}lug8uFmB z-Or&MS^ZdvepU)~y9eSduLzQVu2#0U$C9i4H=l3r=~zed-;b5L=~Afc8W4jNul9)W zH57;atweP|SELKpHLxcAtxN|?9{9Jio^bx(%09yVe=BDR_x`QiAbkIC#iJvz2r38< z|E=@~*8TGD$Buc_Ss6=|=Q>K^7S9Kd9nFa`(=fKU`5{D2Zrfa_(Hlav$fC0`{q zUUG4N1iGUt7!g<(Neya)jB3X?%_gC~&jUUUW7APig=_<(Y(F7ObDs=#L;X7_yJTW& zCSYowM&kr@-hl^7f1tEec#@SM)s|io)8R`|(cYdONj#|GH^+hm9iN^gHh^*`C61faw7l^kPA_YAH@z3MOj@Cvs)0|zu z4D}v(ob)m3UEW=yyxm1=R;$o~1%^VqN9Ys!zS-q-!~8U_u2n0s7FR)ocM}>mLqjjp z5Vcfknj|%=djJfcOWQ1^TpH?jtsyR$Ov>~m^!z%LvYv28O;QpG`%21KLhzTU{Ov%@8HdP3bC&W<%J7*c{FG-5r9Z9FTtVDH(<3adbi7-Z1rW3Z2mGy-EWn~}X z2w6Ex*i%++0PBvG9b#o{T}mqhDYmi6bX9gJbz4jRuIE5}p$_)%gT}=P@azReFO&OvCB|)4|O=u(3#1G zIOig1JO|@AK;rbUREh41;r}K?>EBZdYIhkG`>Epc(wf`g9;bqtFpyCTCqR<>W2v%( z6hyixN1-69n~THo7gcyItEu3YP{0?R5AIL6D%*RZD;`0apR2?1548zfrbPF`g18OF zWny%DLdjQ7F9t%%9yf>McN}J1hAvZ6u>^d6QP23+lhD<8b^&<%0%2SfTPIr$aH2d(i_2Typ4hE~h-zTk?+M#q8r%WHH=t&Ps3TA&{``(WipCI&MJD|cTScYxhrNE$&^2HoC?hbif4@$QBIUKiKAlGSy(j^7mb23O7n}WH1EXW}e$<`Hg z_`}lkH<`W*Qm0%Jh)+T6K#f~Eh(^JbQ36^nLpcUL6$SlzPZ>^YJ5k>;SS;<>V<3_s zJj5t0_tzavLj6qC^E2g@70Qf0h%7L~;h2O5F2Ap+(N%Jq=w~`aZa~9PkmHF@wkRL< zk;0>!V8SCqI^8nvduZT-`Z!V?Y*A*==J8qp`Y2S18YVT3K#?92^)AG*nsN7qe_-sIreRGgLWCxG7Y*(N~I)ZYd{v<9M?lqUE7VTeB1qeJ%`_ zW@NvG#TnRA5fqsvJC7iLEzF^GL6UY41m_9}p0Rh5CTQRpJJzCnZpL7C3|DTLVKppV z@#qI^9j-(Hqx*zA9KkdPM;J_D%d6Ey)b| z58he-IUjb0z|&}v;E$oaJzCvCQ9cl@?VuozfS~x@0z;A7qm`&e_<`8(iUy;DZpSD` z!ISUBD3=JY#3&C4-C8RFLxBBTD~W`CS}S7-N3`a9W4Lz<+{+?Lm}>#41aMQZK|R+X)9l!%$>_6|s*0JR)93yA7ysM{p4JgjCDGmL^kBd&hrYs-Qj)4JpmU zrh|xp@PFoPDE3DEI~3C~^u`Drn72`DobbcZ_ytrBtr5sTJ&_g3>Z;N1g{ci6-Kr^6y~pA|MKV6ExIvqscw7d+W z8jAlbaXmtP3r#q%73Nuo|BfOF^*vQ#_jC|(MBrH2av2DE>wk2O_=oB7??n9+wWaGZ z5W|#E`092U#mODSq4g2UFKIG?*wNQ06CvZ8gyISk_f@I}N-hnl`9|1cG!UkhO64f2 zS=0kCdK1HMr89eBi&?^55WCraDDvs3Y#)si@;Q`~I*JACb`Qj)j>?kJG_ScpP^$wS z#k6z@tEo`kh57cF9*tc=IWYpAz6`}{&_@>st~)_|sr2B3f#NanX>Ph-2JyZ|JOWV! zf*-I0ag2Bk#OHL{P6DwD!~oj;(n0J4LEY@S48)s?G*Sw5MX8`8Kb`eGhH@6%9af|B z2kD)E8TE%zkK3k(RVI3d@A9bk>ZES4fw*9710t6$9q`H;C*B6pkjw;kQZEtA==U+W zM3_MBDCYeTH7l=-LSLLiu_yREn42KFfS_Q)>$QOpRA94ndSbYD5QF+Y%0wt}8;IiK zPL#?6+-IVEO!dia11ETe>wc6S%F2{d=dvFl9~_bWZp;6x_w zmNc9R`VHuQ2Qj*2tWBW z@aaUw1E&mmc%l*oj9Qk6uZzjmvL`0Gx^!rU+>FO*FHvkp_1fY&Vxl@hVpM|X;ejB& zL=8<<_n9C*Cjys@eK&wO3Oj3|%bDj_>N9jd>O;CbaW!qYCvpz;<}R2-&>V3S#7hwF zY*Yqe?FLD`c6jdCg*zJ&gYpOekL*Cymv!Nn!|pRtJ^>@-vD*d^MWVuOKg!waW$ihX z_lV0{*PAG>Qs!phOt5FJ!!Zc{xO{{0&cLnsGhhrS#2$8+cn57Q>2NQI9U@hiPkDP6Qy8jk@6Nnrl_f) znk9;zSnHHJlK@MUR)D%Qp_V&ZXO;5NB&^$;9dH*%nM)#Dl}#i_;ZnF(ivfS zen-k`+_L9ntcmh@O2A}Hq_5^FiNJQ}(C(rHk6W#(k%DWT6Bm_yrb5S(`PgJhZqh0x zcQPW&P~Ms>1xMAxnh7HQIzxN9hV*i_pVc0fwr*i|_?1uM3{^8FMk zxZSL-4#$H!s1I4~jIRHNTB}`ZRo1~orsy6)PxrnK$C!GMJHJ|qej3raDE*#B`_$nu z>JEO+8fSZo?pt@h45$R%ehJJ5cd?J0-jeRBV3wzDC^l=nLmz%evj zn1LnX0l5nXIWiFAp&PgcxfiB899|UYthGwz(>VCl!$KPMoWpU9jJ&kgX+-`&SOA}< z>o<_Q@f<&21~fqV8rt-tHf3x1CA(W-BC_#wB1^@&CCiip@f1)M7d|w8l=X`$o z?!FV{bV$(w%1DkePLjCKv|f(r$rn>M88TQHmW zMX31&x(E$$MfLCV={mG26)Wb`r6@1j=hM|_(+1$m3mlF>8Lp3bL5ZdZ3OB+0bD`27 zw*y`4CE;}f<=JW2gkn%!@jSoYaUY2C&gaEW?m831OUh@Eao>RAKJfWP=zb6fLGWvz zb0E$<&#!%4@1Z*;Po}SH7dL8un*?cdvdxxW9 zw%Az2xP6+?= zdqPNsodfSsWt<9Zz6rGZ963xmhDtkBbhO&*Q0YLCZ>ml&#)9lOr?Ih68}8*|_%IvR zBMife*Pku*0{w3f-1AytJM3Hof48+kpU zS!cbQzuyEV4915B^JxE66=+`sdI8l;g|9b(jHj0IAdi83nR>*l2ZOJJ+_B(~&s@5q z(~02cg0E>e{|x==76;!$u;p7|#+3WZpf@j|f~WAPR|erD5GF0$B|{&?_}X(I@Fb}O zw0i*L01D7#703w`u1U8D{qof$yMml<3b+pjnYGZ|5O$jYdh3)&8P2Sjkh(!AABe8HI}LGdUm?i4Uh@4-PLdtetFXio&) zn+gHjSAZNq6}qe2K|Vr`M3ARIKE&j8kPlF{7VySW=uPojAPnTItTr0tNR~|m`3x08 zpsiMWIZYnywq($6iHMEe;2%cc%uQt(DhH(EejAnjX%vlD8Fv3joCDL$w~&wfgG^4B zrg$wK8_EM)h0%!;|$vuA-`Y$~|#23e8LuR;2Q{%5*8`1nRTNGkGGt@; zC@L%F@DbQ>&|Bx2?>O9JLEm1hUs?F|sxupEY^=w-B)0?a{=Q0eU{*NH)ub2GcIb>J z$J^R_Ad@HrWasN3*RO4CL{$H~=xA&849?Hj=1qB9O={M@W0>7AhT8FOr$*a1DgxBAxAE*V_&H9#iazOS z?6BE)dm6WFb|4=&i@xS*taG!U^E4{lG_uqlz1+)4b+_O0G>*7y-%kDAA?dJFke;-R8Eeo78)?>Oj@+tBxMl&|=$@ z$9na+XR-`6S^xhNC>@*AsP!tyvC5yjy~>~QELy%^1v{P$V))4*hQp{3u&4e;Ntf7} z47X}ep4lq6rTA^tI*Q6xPgqsBE90JO`8q1Nr&_&^JT^f1{TS2a&G#uvSJ!hDyTA-x z&E{%#HWldV1`*CCj}O$-Dx0G8WdmjKr9fXkAdehe{y|at@*!pD%STke7mt6SwvnRr zC6_YzQh-a#9m?!TyAkC1p?bV!vO9bFPTt55)kiAH@~9~!f0`K%!}4rX+|#f;+Z6XQ zEY~*0z2VdFdm)o$+1a2;8*@1)cWU8=_WNUvid*poi4q7Tryty_@91JQ1;s`(Lxf$(@ z@%!U;^gofN3&hQ0wR8Jtr&+h!iI#S(Z0Xw0j83#mx0BrIkK55dq1DB;ol%n6taehR zouz`iwzJHiqCQg*ev@1l##ZPlGtMdZGZh@!BuowCB-l9o`#;O0N^mR5YbjlRG0o}a zL4jLTP-sG>Q^WcPZD#4)%rLtALDUZh?$FQ58))7Z6`@|Bqgzz4Z}0bnzL9dih-E#(eup4Ie}T$Vx8#5I?(cM zYN+Z(XSb=haW5VDIfRquIZYwUEjv9}xQJ3dS0DLxu3&bGDTHtFa4Mp0)xAc8wyU6| zdG*XM6uy6J=GP}OZnz!)mki#Ol_aFOp`43qDD3S6_V&Tu;r= zBBv>-53zJPBJ$J3{&Nf)J{?#-`I=KBp2ihn3;{zoTt@j{qMH%a@TKxmUr@`P2=RS1 zawqn4)2L!6=JTv-I@B5PuvWeHJ$dfJ3Xh|)yO3{OLvspTro~Dm1bw9CrGh7wIZed! z;0eL&s1WAVKvG}fGK)gKLdQl>q^{-C%&*X~RBE{!wQkfG7vHi*Hgvx<(Bc7ZIEzxi z4snf(xnOG-PW_41^leF(4Wc%JDt04Tw5g?AyH$|dOg+9vTaVLNT>LJraGJtar)>dj ztgMbUe650_o|M?v$KJXmg0G#>=5?o8x7OiWQ?H$2?Vj41T>NN3wfY zuh{BW(*8Z@%n)kW18>ZrmU}Tx@icNTBDm{pwtZA=%)p*Rx7m+Uzz%JQdI)T@yd?atmE^e(eR-I|_o4M)vRJIUh+Pt~!4wa6 zRAeTzt<^fC8@G~qo^i{OUkW}&mZOyfx;@PD3p1!_ANDw9XUH#K1=$9kqo{l}UG1g( ze5|h{)#R}soz9V)W>4u&O%GPDxJ#qJ4~Z@2W}g*4K~N8R+#JTO`Pm})HQKr#K3sN@ z*@2?=#3QV>{|w`n4~Gf9?IPVmbK^f>#e8ct7ll7p^w2xA{37^z@rs2%^eDG8R-VxA z6ZwgP?`@=vZ*WI@RF;6=IO_6zFV-uj!f$ly#7CG1FlBKRasZ*duau$=z;~}wzOLGS zpi*#s^JJ>x*oN^$Z#Hs>0uHL7QO>uVCPRP4qstv(KPTyYFvCV43|70eWUkXhUJ`t^ z;ML1$+d*_@GF2QzEYG7~4`K)GAs(?N=58okd6nW1VG& zqryXKXo#D{ct7dGM7%iCeY?Aa%|!@)Nbop{JgkC4hplC{6`Y}uv0BI97`IxB2Ch@d zyepJ@7{Td2g{~dO&{|Ny5e)4O>U%^5C%rSRskH%5u(gY_H?TH-GX%f(JUgmEU3r{$V0_;W3PV z390XJOWge$U=(XT>R-xgsXC(2@8GRhDF$M`&);P+M7~*y2eH_nXgSzw4{iJoX?y`S zXyLLr7UsYBd<6?i+x&zAj>F~HLG(Kgr>yyr)*OfHi+*Im=S<7kuMc7I5~?_kjw*8e z6Gm&(Sjy_bw}^Ocv?qmwZHuU*=zqe)RLNr2wlaDci*6ToIv{VE~D|f8cWMhVAv1PMvZp9MWsM(hfb46A+|)0DH8l{<2Yc17zt6Zh1SZ8`_f2i4&sv`4e`f8`lyV9)P&JXZK`i9zY3_vO`Ml9AHnx^=OZ|r6JIQex zv9)_Lv#kjj{1;XWp>VKmk#{KiG&(U*T(H?3AkNiaV6hJ=8)AOjYuJi4y|07quyrzS zW>XQ=BZmv$>clDVb} z?eYO#D@Lw(ocf-@*0Nsi`$=MK)mSz*n^M5WGT(XzBehji!5K{EsR`Vro+5oTnul^V zn>j%@5vsv>-M$tbO4?)?hu7188U6&&UIz+5J5*Y5lL7pu)n;BHv4 z+h6do@2RpBKF=h_IZV;XyVUcX3W{;vNA!weGo3H987n#D0@tIxKZkMs)q^gl1Yg@Z#Snstki! zO*6|7b`i9(3<2Rz4Z8LM1$>Xyn7NdjM1nWVl8J27Mk6)bby~`Wy^B)7wrx8_Yre-~ zO_p_mL}8Z4Cb1Q7s(@HjncVNK4ps`gOm=U@iq(DruHBdVFQ*AiX4vQhLJ#!WY8rGN z1DZhb=h3-c64TZie`E@a9j9!tBkLriTT4Av*se+UYr*$qajRBBuLZ7q<3s8P>?OxY zXRQd_fDqT6%3a86{iU;K1<$9LAJEBb8O*lkG$xkS{AoGZ`UxcW2Y4`S4vSdqUp;Enqz3#{#F;#umu+%V-x(X>BMvWgZ z-dXUDZ?X0STKyw3*tE6Gwv4Y8_O`Qv%NqGc@cy-o-!JCs1jliiXBC{&NtUEFCySH;<{RO!^HVeR~WoWX3@ z2jbg;5BQD7U%<*urR5i}C|bx;vwT!Jlht!5A8c%w&t6ck__;nN@0!I@#kXnHMHuTv zDHqNC@al`$x0m0cN{yZ($0ao3`rMf`hm|{1_$8#j0*Z%}N~Cnu{Ay=49Zp&j3(v&y z!6odB)>n|N8j&+eoc>pH@c2jIl6l>Xz$+5)ZB?si7OuXok^L*=bYwn9`PFE(H=V6U ztH;v0)lbD*Lkdf6NTk3TJQt?Ur71NS(H>e|gMF7#Lj^Tzk6(Net69FEj;Ykf7hI$b zmsLbmoaDXd#OwnLEVHcljNs1-K3KXDB6zak3Dp!@i@{9)ne_mhrTan-Xg8W!i@?pA z$?OPWZwFg<=hm-`cNM%$aPKn4t+b4vwwm(8is>4fvt77Mfpsb()b)|7TRO{isbc+y z#O_4FKb=f#>fo(7I$DPb4x?Xju|0Q#dj1Q8D3|?157F{^m#sZa@&8i6F|o2^vsTM| zVf)K!vGA`2cRdg~F8GN`?%Yvn#%&QdQ%|ZMK{;CDY=E#|2V3WcPztF>pO;Y#q-=i0 zG^-w-sF*^zfJ0r9@)wKQrfYJ)D|o6APWN3=Lu{2ZY19?O(PMXM%@x=yzeEMN`d(PX zoqSPxF?tyr{G1$D5uKjY<0?ASg2v(!)m`#Z7ZFZa&cd!omh%PwFq4ftME*O$7uHbG zRcz#3&sJhH*sn3vujVFSl+|YWbEM$$Ni^#^V!@-PXw0fr9~FE^KpaIte2R7@hKH>E&s8T@o|DbPx;zhjIdjsXErjaS(XUy zdS3`!$L6w5v%Hl}hEc!`30zgh_kZ`v7AT;iY>E#=WDx;HMMMP!eeSp=;)Y9RW{RdoZVwksL<}AAnpt9* z;Zl;CnJJ=@&#a8f%FGna>fw@9X5{w%-!pUXeHVWH{e0>>=ggTi=bV{2Gk1GDI^%x4 z)V(M|dTo8=&Q95DB?J9a(O@ufnz%0bZ*!rj-&{DE^EVeVqtw2s!nG+}TOmu7CI;IA zgs?3jg$t{=u_-4F8`(!vy4qH!F~GRoC!psOBS!Y?b*ai{<+35UO`m+-I%na5GUIwz zX#?xyK1pH+-gMvRW_d-JL8iG2rQ-h^1m77{l8$d;4t}zZ?^h)FuHZ>JzDdV7>iFRb z-$D%<=_+D%4V-lR1RbA@QvW6E_~eB8&#dE9AL_q!9pBAhu&8`PhOXiXjcYJu>G+Lx z{24la6CFQW$M@9nb98(!jgS6wbrs%Pg~6~|$5+Oi*B0sc&2;jcb^PW!eu<9nqvMwn zpZurrw9r+Q=^C`u@ek|xzB+z|j^A6yKcnOO>-beVz9m3caY0uRsN+}b_^ow(n~oo( z__CLO=0jvv0>;^?@Y zt|C^~AWX+k(DB>r_{lncxQ=hu@gsEnbd^v3N9rmv)C%yTbo?wGKU&A1q2qVd@w0XO z7#%-H$BzYHi9c3>t|Cs?V6~3lNyjhJ@q6j`n|1uoI(~_cAMfB>45hk?E{+OAnU0^L z;~&=XyXyEAI(|1D|BQ~GpyO9@eh0Dqy6Y+~=o%#I_|@y#pMG(c7lIA;cGvNLuQtgj zT|;RGN!3)_@vq%Qq9vlMIQ=!zlzD3^IDM9AO1L#;oIXi3CEA)2P9Gtf5^PNor}q<0 ziM1w|)0W-Dpp;RQ%^7bJjZA8&$>Q`DqA7vaq;q-$(X_SHBy)NV(H=y{a(X$@lvry_ zoL)#YCDa;kPR}En5^0TrXiK}9#GnjXQ~MZ zJ&OCYjS~h^F*X6U*u4 zL}Mu+0-Rn*G^LpuZ%)r6n$k;+!NM6ci9va#ruHEjG=*r&CpFca&Lo=BNKF-|M-WZv zqo#t>1Bs^eP*cX~K15Sms43xeBGHr$YKl1BiD+8wHI`h?h$IFr^O|fWG@X`1TZycr6=OO*9te7876$Kd`$~y~XP;=uSyInM_x(9__ zlm_2`UEWQTsszcEqJtX}`!2-agKT&e-NFWTKcuf_UuxTt-WyRj7wV4GA~xmm8xOqG z_H}1tqR)YT5j(w%Uw^=UPe?Gnckn=X_l=TqvJWdyG#Qtc9jHzWkpif#%Vo7~0?6aJ z0m%kipUZ6hHxaD%k?(==NzL7PAFqC+$|Y@NmVSv+4|b$qloY{!?Ki-<>n#@7zqPSh z8+4}yojT7Etk~u=^%A(Azqs^WLLv8Y^F~`bZ@?p^f z@A%w63KE*sHp$yr?4X2{GrS_L8rm+PpK3+p_li6XpXj*-lGci}TT(&VE%Ve1>JYRG zWV;4E8MulM);Y3pKIFz93)fTK{@HUyGH~#`P|NArY zCy%?ltdatNc(6_BU5r=!*ca)(9jCoUHsr-}YYQnRM}Be)y!lEUDrm^Ep+2$(mu7t>_uR_;~q;QU|7f*6)P+{be6OP%LDH}trT#SR}tpdfhV z42eJ+%1dtA?JIwrKbR5^rW%bzy*_^AR)Z_j#nD^TJI(lHhaD}r?IdHhwTOno6=^mJ zu@I(OZ5Ll>ek0mRJz1|2Z7t1FZ!RnrVbIpVJ}YrYSC|WjRHJ1$SI+17+nc$Q)ug-29$uPMHhRim2`q zkyviUSZ?!u%4@Zyw(m5&NXDTP<5FfW7!3n?W@@s9Sfjy8+pMt8;~>Q+Y8h#~fk}W- z^(hZ;!S@ej*QuoIE+S%0W1gb|E&IMA8z|qYi|pnnc012FRXV+^H8BK(cU}oGbY3Nf zibkD}(-+((8c?fELSI5L)&<1tZ{yn1aZtszH z-D?}ApIqYH`-LTqY2UV(J3?zEuf*Z@ zM<;t&#n=v065&7cnniS#4bY~|m(;Sbn0V-djtYu-BQ|imc?Cs>%jIzuAk8PZytiV~ z^K59Q$vEXzmYo^csV(CzbEzAwX#)k<{xd1Y%*Imck*16-Nf2{BJC+$`yt|&=$PAOt zvZmugjqj{y-NuDWi&)mUuukE^lxn>~CqhIgXZBU0Za*eykF*QA)${8WHh4n&wt0N>R#ctChJ$v`D&ruk1M}afAtJtwh1xPDdsn^o#k~$`qHLUz9WMLl#?F5 zB`eYNJL;I>>i9byL&iR%?P2Oj%9p`@U1J+4^oVdI)Yq&MY<6^_hvgZ_-JB=7QHQ|} z!<7Z8#W;oJ28t!f7wJV3(l63BB%xoVhe^U$sHOl>|M!0aPg$chWu1vx#0E_=Ngiz0 zq>;uuh3v#6U(0ueJg&76(Pr*`bU@SHTMcyLGm1qQz7T_UFa2|hAK2Q z&njy6aWy#1XeW@LFWK$Zv|ES{8 z@{K>L*Zh$n)0NuIKl0i#ZYnPRc0}W-H`_6U;ift?|z_?ABzHbdEKd654jp z8tM(_i9)3nkLlaE+oWddm)WQ(?c2#1=mGhanwZt*LCWh*-RD`!l<3eXq1Nqq!EINKeM^w4D;ot_rP%)C517;swYgrauq%oEsmAtJ!tyS$ z_iJo*+%^##$5j%!S{=>4br5A&yR`5ejpH(o?qXMSV{M)az~yk_Q$bBSLPFWBn}5ij`!s(DVxG_T>fMnh6}P9F>}f+}_fre{q7Tma6%3l?ia)MMA3FEWu!3h7 zd7sAM>3p)Vma`&p`be48&G@i_#rzZ9zFmEZ%O6t%o?MpVt}K-E3G^;IH!IS6jV8;P zgP7ZM?WCt!$LCr}8C>U|$Jxr~;*BSdvGsK=dVYfJAq?aJjsK{gEqgGJ2jrhtdstOY zcGpEaJHD8;k>v%|52X3uVC{N*T)XR9`3HC?0$?sSdwZga! zsYTZqJAPI0(-SOdK|pwH%M?R7u44?O^fsl{e1x9n2TeCI%$sqnWyx23nhxWdwCU6O zQ})(^9@0E^WkGA-));!U#Z9s_TLM=Ag}u+RnCAkGv1gf7*OEm?y0M`zL^ut{L}J4u zTQT{Cu=dZtt@-4(lZx1zh_zyg&9I=es^~{{{e@8PNwDu`h{{X+lvPLi7(0E+lIOK> z&BJ-ecHvEyy~dY$t@V%jj!qL$_Jy5LKWpnKnHG#zg25+p_a|6Nb^zZP=d#%^c5i>X zj9O`)Ugjj9GJ7dT%3TMXbYHA(+6<%2JugV(LvxyanbWe@IV?t4YP;DDdTc+xNiw`T z=PfGY1}GslDZmw5!4PB$J}zUh^~U&h57uT;NYk4%%egb$fL_Ph#EwDn6|XA& z!3Hz>&RhZHTESIzg@+K2b+uoJy=;yE1!38onJZJZw`h>tnAI^f($ndc@ddi%6jHyG#-pq zqm0*dwmq+9xc@FP5{ZN-6L`(9|E;!9__)(m7H{psuH^YOZ7PH{p+e@iDx&99i2g^1 zTWL`g(1f)O&cCWeYELQePSeny&0f_?@?!<7x=H)lsZ~9ue49jEk|-E`230CM04CX`zC1?C zW35()G@kz&-ACl39L)x<9v_&@NDo$AewFz|wb3jQ;6!S*?L2T|^>XCE_0&DLE_?$O zt+p~^!D;l5)XL}I*jn_P@e25uQ{&W4Y9qV7CM@-9o`^pgT<}yCZn_;$Kt{8DznN5> zGUxp`KWuRR@8Y0VfpNpr~D7>U*A=d4zrpKAx+*X(!!IK&rJPVvW{$_ap*1# zdP~~leG=+Ooj$u}ZpGqk&r&ffF0XIKc5n2P`m^MX%Z-&Uvy_c7bO?}dBDKXMz6RUE zb;2Co5Zzu`e~6xeh%!VWY;rgwsFG} zJfqq4b%(jos>IkOkBT^{5vzWTyZww9cV+A4aAWz`>|;4ia$?fv9@1pib8~Wsu`4tk zzw@Hi_5xvj9d@iuTM*l|xyZY>;+=AQNn!(D?by2#gSWC`!F~*s?Ph1#Y#Xv%(|e5< zt+ttj_4WRXMPzH1%P!prXO~}HE+w^<2UN`Hw&*2r-07;+QRw#7c||CJc_%R zVc_$KwdWhJw#E6eD_dF`d%Vf@w|VV#X$?E}T7Yp*Zt-wL++}Nw^epST^~u2Z`Jy^$ zUh&)oH>kp_ADgT4Qp3F&o}!VVSy^WWCKRZuprCno-)ouni>zc@_Mg?1B%>xN3L|1}eT? z0#qIlbVtjZseD2xS3S5dLR~4>!D^fBXru7NvN2GX$^}3p+s{jw{6?^U4$?iI_2FLa zPV&jrDj6#cH@z3Luij`CcY75zIV}WcqrE2ZK8SjESos>C#DccPS)$jX)rz`CUNYTV zZdJZg>%+cKr=kzpQ;=4sT}qGSz3B)1704?)H3pVP&xQxT2nCN<6|d%-xmw+~Gu}cG zF;6R1npD3>URZ5G>AYz*l{Zn-0)999up)M)nmQ9R$OBJ%Z>CU?m9D0fJc6gcNk0NS zHNxm0!-U*y&UaI;u|nDCk|@i=HE6h^&iKE``2_2P{d9jVE3q)Yv=4+U8R{{dX5UNOzi^iD}=jzJQCO+Z?;I-8ts^pFTg4xr1Ze$ zve5W{5=9Tz>n%Uap9`p}m@GFJxv)6du4~R+_QVS%P{=Fb$u=Gu zu8%ayp#~2vs5>>T+@AOFK9MGmr_K&LG}oTfdfTP==TE&wrD}Y2Tx$`o!G&4$w7A}k z3t%VS@#)9rQs-&8M{wz7(6k3cDlc8oV2h#X%54%)$(EAgLLK?BY%z_hbe_eO`enYw zcPwp|RLA~rq_US_SX8r-y-fDXgQSX%$RmN(v zwIm7cWsyvpFOKNv-%ao?t}_C&A;yZu`(<|J)$B}x#|Aqzpv2(6|}sd*RU6k>bfVMSXHrn5pxY*?U}UK&+_zZN+q;Roz2S?)U!m53W{mQAgsE_+*{6*kQS*Qia6=5 zWCu6o;E!p&-wZDQ5ED`y8*e;^kgMm)X!!IozbA*}KR{`>1Pf`!1IcS;25M?X;(z5< zt@&Pk^E)uIrW2(ann+r(G$tG$-)D&DBeuO;#Orl6$*%eDjK7h@6x25IzS4f>AuRj*vnB|bKAo&%LR1|2T zo1^2Y@q3jLimFjL&BrQ6M>wpr+Hw#E=JZ}_*aqyy<=-o7eGhSXp?S`@Y3iokWZ;!n84@8(r3Xe6tDag<{5bZyy7doWU7f;ZHGv%fx^4|BtQyH zj&{)`xM819m)+ac?!?sPTEC&25~{q_mhR9>p&Pk?jE~#NxBa|onvmd*aqM?mW*mpE z%P%RRn7|76`FeIG*3Swnf$iTH#vbkqXzWN7Z_Fp{BmW?Eg?SZxp^5b-GW@EZ@VJ4C zTVaZpIp07J6!HwbLahjreFWe++ZI)HUa+1-B<$r0N+=exHV1qIcTf#K9A)vy z{cwZ~p}_dD;RpOo!}(64y^Dlsed@)8K|W*n7a%4fd_+?A$@$q0922 zP#f7_w2}Q7O&gBvr*K+30)2)UHaG%3Glxbs;3#IF?%s!E8o9Ep4}!hMk`~pdcI{Zv z2Q3m$tR}ZkmFH-~@jmr0rtGie#a?9=yh?;)WY(}NAGEc+!JAWHadzUt+03&vk;)MD zh4-Q!5rd9`wCn#fK4UaBC5oEiLQRP_K1*OcA0J3qZJtns@nOpjwHWKp8{;Mwn$#PP zkEW`_v2BXZ^EbiP4ad(=wIc00UR{7)`n8wC?i})+vmZ^d>+luD&qCbG%i>Uie)EXmSo|Cm*O=+oL0%FD~O;eLujqn?6FS<}OQ zmXFUUz2La?jV2hO7n}tj)Z>zxtG-@|Kt7P>yZ-M{>-J<_C*;4{RwOE`Eg55{wq>P< zeWaG`*x@$ql1=;oR`Vid49C%HfnMEVCVkX$z+A9!M5&2~q&QWXc%HzVLru*S8aq~D zClmWUiekMJTLjDcsHLSDRpx4yBHT7SXn^U64)Lggcp020uDHG502(pym<&6BowaJ{6%W6UID(u=6>8V=1cNL zJqzNdiLk6zSv0L@Xi6xUzs?}b0=q+X%^@0g(W|Dv?in_Bc=L$3iD;!=(R(`ra#Cnl z$M+d#I_j6TpIeaj3UzRuM{M*fX6z>AFDR!t3s*NfS2L3bmwybvHyx|336~Hmr24^h z;wE<)<8VZ?HV|%<|E8{Kga&JRm@bf5(?@+Qp8wJEYvS?I7J=dhHN}2;vz6{5C~<;r zWiBBT8-%L>YP7AV5Y{MLk2?3FpppH2w5eq&ZN&{5_o2q>j^l|>M=%xgf*(`lwF?dt zwpuM}R@<|Ie5}=Fx(Oe3G}L+vJ(breG5H-`&;(2nf6633` zs-<{U9Nm|ZQ5f7gf-F(U#~^Dy`HxvNmb|6tY8zkiIC~5n!CeJ)-{ld1jw=+8qQ4o3 zMj}Mi*LN)LxKH~C^1ngcZWE7dN5bH0A~qav(Ml4!coKQKzOI?1YwR)FYa8fVrs+az z;ku6DwuIQG^sh{J7Ro9A*dCCC!_ddmXh~Uyi=Dgz%SMEYYg<4csnFI|SS+H(xsL?5 z8e9=+&KU#cdFUx}d@S4E6(b&LvP zR5}>i8?zmJ9G0o8sFUCg;#;d4<{+J*8tcKd7#rMKNawlOYP&@fQr*GuVBut%=NLM= z-BDKlShoJ8uV*J>sn^o+?9j=u4X4CS#w|=bUoBaL~0^>mRU{(j!Y(&nt}SjHp)%UiVUPWwy+tg)h<;Z zcylsVbz6`og-9F`;_8qyAug^Elgvpd{k{u@B;H||RNGA!$heso`Snwy!Gj?K% zHVnv2O?!zFke#C;CEke@hVg(b71|+$ZIC1!+J9rFPkh=Z{)h6%#N(!`2`G`>scg}z zOeo`XF{i$=MWoDfZW7sm2R`*~5&kI#h4PKb;rBwJ3>if{gAtkTG?%THZ`46p!UsV- zfWA43cf{xX6;ZC>`Q{rU8cd$1a7W8GKVeSOo~Gm*VGu4Kxi#8Tq!2+SD?{2`kg6s9 z@Rc|QFEud2DJILDg0K~ zcNZ}M{3r;^D(jHUm~~K)r66zfBXD5FbBHvbMR_KkCi#5aG=c_>bIR{2X`u)=?$lfq_r*xLmK7e*QK*@pxc&2JA}w8u*UFD5uL?6X$*&=a*q56i zEP5D9hA3~;LBH17DiBI*a$@Xw62lW@#Vzi{USbv$b4S&0Zg@q(1Pf|#tCJiqC@!K% z6c)yE_xV-j%3pZB;8<lhmXb7Z9^Yz+!ocx zY=@6lF)kG}ewvS>o)6=Le^7x0z*|^t3$amyBykH(nrDe_Fat+JWqFn|j$`1*|L0=| zJ{o!-ONT+77{=G(t~OPx$#;i~2dGy|Lmyr0`B>!e@fWHnPb)qyfFJ*#j{~XidduW^P!(8h?}!6Ly{Wn$eU;BrTx3w+ zz(tFea%PZK^?bZOggD&CAKg{R{?D zju7BJ8ozf4VBpU4Lx}ce(I?`>QP0PH=&O9L;^X_!-@r%B#Z`PX^i$PnarpQTikgp! zG`@~;Z1P_|X7PBdK4Nks4BW@w)Q|Fthc=9&p1Wv1uhm;<{ryQ>ljFeuv)HNX`S=C; zDt|%o@k{6@AItt@=h(q5)%$1~Oos7cY@v5CgIw3`e^C_LhU2)D$6N7HyAtJ|D+dbI z!68M;3qYk`ac{DDJn%ak+&OVxbpIdEkbm!@i}FQ^YxiJ2xwiX1T>Fe0sCTXZAkDQT zc&Uw^gg$Gxx+8eVuMj`CcX`}7ns#FEvhaUy&80dQcVxQLE_Q^Z-$A$FZrCaK;o?)p%B#+ zVm>Za6u$zxe$rUJ_jrpcgu`lMbVeYJD8G#IP5d?ny~0>Vj1ba?;45EQ@;*Ejp8hr| z9kSG;D%aGLw5lh_&j+$$--Po|$2`sIr(>zwr(*-n`0bSVne+SO3B-_Fu(dWNA8#vu zg_&1Am!3!_2PPYAV{k6~^i+}f<&G7%{LJ}F=xul#nfYly^oFu_Wdf$GzqF>lU z!nX#nj_2FPy{NQ7f7ME;D&bkZRtI2`(rWVnR`y+lamfJoWw0-OqGtT3ACtZhO87oa z^o`Ff+(^Aup*34}>I5|A`ZN~tZCKC`WGA04iYI5tDq-ilW_%47Ze(Wk=*RYb>ur3- z%uake)c8>vYx-RWV?i40{av4!{;8sWO?4O;^}NU<1BA|*{ka#z`fFZ%no3^8?CRS< z%W5#{Y59%%5n4X)$F;oQPty{WicjBK(uX+4S*i57mT^QXyYPM5)IHR9;pi_hp(->B z`w5c|>n5=mB|YW!!|%zK!n7|bnxBzqVcHccPZGMWfUeSX-S5kCF9gTDEZT6nMWW3e zYU3r^+(Daatje-;C(v zklSV|r$ zbMkPCBJcQRpE$ntiyZnduci-V>3W$j_*E(Jt_2%=vGLebsJ%H?d(Ch%y<% zS2}lPv!iB-R>NIb>ZqAYH7hDJ#<8lWS{g^CZ1~Z)IiK`hNk;kPGZO4^#=;af;m1y{ z5xCm4jY?sger#uqPG-k`>}Cw@!@uYAyfnkLIkuY>wG#hEvgFct#%IQ|oS!-w-3PI~ zKecljfKh*YIa2l&#(8~8k(U^b!N8be? zomp+ar!xBd?+R8N|NPJ7^b!&dKK<)4YHK&mmAC}q%16ZFpZ#@E6$DT^D)jjT(-arJ zcqdz;H=d!JkNbC&OF~pxw^aT)pdpn$2lV_H>CfiYg)}PP3b7@>#u&H8Yu_t<{%arO zk$7f$%HOyxo<;rEp~+YAWC%~0hq|(9zx6h5>&f2!Ex5@#1Y7w8rGHoYN{HS4Ezy|S zg~i%@jVHRWb;WJi4BKL3VfukzZBIzi%jwvQnMQAC;L$U^@@(tf13dh^n1^z}`nEH- zEu7CR*6GHQ=ubOo-A|-S1n^g4)&C6S)qmjFx>yYN9^>Rr^udm?UnjQX=1^mLcXs#Y zl6GS{QXBg4PNe70mMXL(?Qe`@n{EY#2Wfkll8dLtP`5k)<~S5rRQlnkl8RVRhk$Tc z^JR2>&GgL&@5!OLaU2V}9c;9YU@5m-1uejpYQ1ECglrQXY>Q=!ZpTNhr)`ry0bFqs z>*};Q|9ji5CG-$n_ZwS$xpo}EF5d2J{5YC_a{T3Y?#4f2SohyM1pJ6j_>oQfEO{!w z>PV|&!HayFI|C5LUm0vi>vL?;-3`@_`#Cz=aNSiUDIo~*G| zp?ot+m-~+pLx2Bn7fB1d*L7fP|A-uLQ|s0&G$Gy42cUdG`#w}VQr_1Hjlxmg)nD8O z^Hm#QDn>;z`yXxGL+IKIWKJCW@^8Oxr|CLHd5vYk(Q-#$`yybN{v(cZFcibyio!$; zpr7L7^K3;TYG6{q2$Om0*XHh3>W@Ep!weCy!4a(d&*1*A@pPddg73rWm6BU#`e0H& zqq~t^G}VNgU(+g3;^`DYmK)CuX32l~H~A6@6tfOSvgv>IZ0zWDTsYhJSD%=taa`tO zT0xF45kpf#<+&*1JrtkvWX;kW?V0Ir-yuKou%VYqZ*qb!1=N4Y4#QQhR?0hX#_*C8Iu}6J~~PL!KDxm?PZm zAz&yzU*_)9S-hIsUI}xEa%DMC2GN@as(qh?msPGta%J=W4sM*SdHrk{+xB;`SMESK zIQqPZ`N$4D&TR&=n!h{ogZVS<)PuQMJD9)Sj{l~^hHT@Cp>V7X^>i~AWuDh|OA8Ye(f-%L+=FSc^=Jz{b z`8Pspwx64Ttgqy{>VB*$r$ujXGYmy`7hj>j7Q*94R>ZcYqSbboSk$KeSLjcmoo&47 zfaik@sZ}RBQs&dnTW2mX)9zlY%%QL}mLA>Wfc((I=>9stbifNF{n_5f?-+0OW25cy zUGB8jx?C9~x@=5Xe^V>QG0S!^5PaILC$NBKlO>Lv#!U}JcX)jT z{sFv}`k)bT7qzM(4+Qy&QoEK57jv>OFBe?Ru3#a#O_7`;BtcrJbGk!c{+nXhKYr9@ zF*P?Aejsk%=XoRB(yeH|nk=oTink)8Uf>P#RNYUDu6TRYW{6tV#sQ*spJK?xew;4m zw73nc**r(IJg$hA2}w?h@59P(D<-G;$z7Zz(~K{8xU~>PEo5` zB8%EDm0B?l#heuPw9D@*y&dzFk2y)c16#J{>MN8MX+oc>psUb#MX9xNvY3;&w+e3g zBSqhMUpdGb`aTe0r8)}h^_E<{s^D9p{*F>RUFhSacnneQj6Z`w4Ii|WEu?Rh&{wUr zSRwSO3g!!acBR%?=;I{rqk>!Rsp#9%Qm!U_e~IW)9d#2T^r;G(3w>UXMePnw7IRWO z2`Ud#^mT73r?^PImJLFm`q<}03+}I~V82k`M$y+-=;I{br~A@s=;3S@| zQwP124nE)wi;0IIQ3o@WD0zw=cnx~!DSA*4YVv`ituYhVDkm<#Oc%5_mVXj%;xk>I3wwp89%@!@K7`BgV5$np#> zo8d&Z(qc;UdJ0Ag2Sg9JuI$2VUr~g=6>;DsawND~zL_cXY*Qrn2uV(g4~)vq+z=Wa^dl2yf0NlnNUcbkZ0RPt!l{zQM*s6Z7aItBod+Cu*0I^aYgc9 z-mn;Ca|%NliKZ(dTGvdzMTWH$hEW}L-K4&T$AY9zsP;}%ZnkPkwW$44shumjZ??9~`)wYC#CG=>h=(8`2=oD^RLmA|1F7A_1k@FRGki9=oyEp2h? zFH7Q@cm*`=@~WqJi!hhBMr{|~ZQ8a#>a-2-bo4fy&Wp6}j^K;^#*&X^O<(E(*FyT& zdHG{oyZ*~PwH?7GlQzcwca*QUcSO(Dk8y^L+qRoE263#A-0XmvxJzpGJ=m9 zV^X{mU{Nm(J3#;|D2fea8JqS*;As8I=kpfOPl`q{bxan6>YV-2$JV+_!TF}biP)sHd_pD z>#dMK2$F9R5I!3tS9wYimKb!XT<>eg<3JuPeuAcWHP(sDQG!+nUd>vvnf-6yA8Urn_cM zg~CqLiGHc@;z-nvKP4gzuTt0nT(pN^UQw7XBzsZS1VNOYto>aDP6>qOfqyv)XO74_IxR~Mty#gLjubQw#x z8MGfs_0x&=Rz#gh^lMEtSz+IHclbC=;r-wt4{wS=I;pF(D0S~aHF`={$N|yNI#$zK zq_9`(T5eN#^F_;Cg?vgU@`}P64v`uURhvb7?>12xO>>`gk+I|^?(iTZ1zwF>)L zov2;mjUmzB`4t`wC6c~{ub5<=ELJw>b$~2n)YNZ{LemnhDY65XN=Kem@9^<-+FQrq z_s_0lRjLwKXnB5v&Y)N%Ry@S_)V1L0^?_|D%M+$i2JUNGl z+fM9qkG6q>aU;pr+*Q4=M5Op*8N*!hz}F=2@sXOED!kD|d2)1egx&tB_J>aB@0=tX zL@?ZlbD1mH$s2Jj>> z2Y3s(85jU>4g)&?F93T1>wqsH{3aj#j8G8@=_Z5W3t%?z8nBKG0s5gMBO;WH_a$2a zvw)L;tAVqDrNE28GeCnoZUF)N0NwBsd;k_&EHDw64vavq$pwxAmH?LkD_Y=>X&phK z8VuS94R}r49f{Wj>tAI_gVbucr0lo1Gcs#}@0hkWV z0B!>20FMGU1AhS?272N=bisl`D-`O0U4edh1Aikh8CVI-0{#um1%}}~Sptj)RseH= z)xbkQgTKLW184$zHAj1(8JGoZhO3Cxz=6P0;AUVIa6iyei$XhGUisl;gMq*V;Cx^P za0@U8xC6Kucnf$Kn2Iy%1z;Ai4!92JhfiHffeFB~zzm=Z4*WU59AGJM3$O}!8dwW- z^Fu!I#z!&HxX};`oCr(@&H`owR{@KFhk<3l?|@Z618)1&0zHA=_!8$RFadZPm;pQw z%mMxm+zfQXN(0OtWs!5DkG{R-UK76t>Wft!KNLt!v*Gq4)CA7}_c z`*tuG*bit1TIQfI1BK1N)xe#=QeXw}3@|7R76XR@z1yMzFcw$_Ob1>EW&@vS4?}^S zfMvi8U=?r*uok!*=pBk>8IDK;y8<&pvHqu_kORgl;AY@S;9=k`;054)U>&ei1cs`e z!Egnb47?4@0=glw<^sn7OMsh!6+n6%RSo>*^mL9hSOP4IMnr(W0&T#{9pMq)5_iK67z?BWaR%@jFc)~fGa?Cm z3_Jro9S;X0!0!UXfqN4WaSICl645cRPcI1I7hcL!;URF(0ALy({Q|Rq^j4HNI&L-) z9RZVowNShln2h%Kfn`AFL2wA@4WvII771Jpd=6L!Tuk*q8_-gVLdak!#!p`i2F3#C z0n>pef!V+!A^;2rhGt?J0qHgEY+yfN5pV;r4A^o4JO<7N8sZFwWk3^fH!vA^-hx6F3eQf& z7y;i0mI5yV&j3x6&@pfX(5({`17m?zz;vJ!jz!tP2w)L#3a|{=VKO=fP6O5f_XACx z5gA}I@FFk^Xc;mE9iuQ0SPI+Qp>PI_ z!@ydg(`+Djg<9ZMpm(Cda0eI*OrDF5fkT1Wz*m7qz;}RUz&cg1C9h%0drr#`maUdbuhep zA>#pKfro(UK(`m60QfSn2v`X$16~JK0sjWp0;lC*j`YSd111Ak1G9kJfw{nQz!D(+ zo?->C_e+>#z&BsAV3H+c7K32|wp$1Vz|O!d;C5gUa1XEyNWX0-gb0Fk@F-0sa6C!Adv;+?EH2fXh~4 zxdErX41K^J`G^E?EYNKr*8fO`F&~I^x($NBb?-nBxN$E8f!97jsDXbSf`KEE2R?*> zz%)V_unJfLJP$kr3_lEc;837wv3)rNB~P$CI@FQAk3e7Wfp^a(18u-JfZplY=Yg?6&(F~g*c+G)oCYicZUvSBcLJ+` z2Z6P~bDvwFU^q4fFk*rCfayT@FQ5R}7FYyK2bKY61FL{XfOWw0K)(@~<>xR|z}>(s z;8|cU@B**|_&2Zu==3F45pXilfJwZ|f`SPJ`WfbA;9Xz|FsBM30-C;prNA{nzfrIp zm;k&8%m4;`jiCY70!xVg1|3m7&<0$69uAJi>G@l<1EvBqfUUlRfj~>+?=dDQH2VRb z0XG9Tk24s)1s(?80M>#3H_-1%12jVsaQRR06u1eP3p@fW1zrQ50k*mf1AqsC-eU}g zAAqqy(-lM*H~^SE2J3$w3PoTX29^PD0IPr95 z_4FIy$;nn=O~ZfJ?mf0Q)9U*+aT(Is)eSV&uf%`n@5z~+r2zR-M=8`}BW?wr1Jh~k zi?TEQkH_|F#3+4Hj+!p{d(8)N7tCLXS^1(o4pPSbf65DEq@aOk{(NkoNfp&E zrU-k`pYbWtA^5yc2?O@mV|y}aO=gk9rX8q{{7W9#NeXbSL^=Mi$MT{~$=~HVh(1b% zlM$CHN=5rn5Sh^U|9P3J2z$(f{iL!NgcE>Hw_cR@#KQiecjdFOQjqb;UHJyk$;;xUK<6Z99M|L&6kW!n*y0~~OJ^x4s^dS8?YAjdgL52Xnzo`*qn{=2 z8ja}=$ltAdEJqEJ{9P+S)Pg7g;d~uLOZh}s=y!6#1dy*%F%-piyy%jOV#j}ZWSysR zi4)x<-%W9nlNWFM?_>K!GIoBB{8>EWHTYloMm$^}|F7)c1^C>*awOr>f8~LMv;LK5 z5*Ga{uOWQzUwJoBI?0W2+3SkGkqH%4RSgwgr7+|2`{ZeWs}GjNmiv$8ABRi9&PgCD zqY|Wc9%mGVPHQo(5)k~859Eaj zh}^jc@)p9{2l5fZzaPjK30)q__kq$~VOeZ<1n&0-a$2@V$nldWdSZuO|Ta}loQdw zHI$d3X&iD0wa$O|*gl)g-kT#A^pM&atq;W#yNk*bsN_B!=03GH_Io7X?*XUdAISkp zz@$f{mLu#5GIoC?FC=XLNZvv??2&wgaKoiXJPg19G7PC@=SkD{Fy zUGM5dTz#5C#Augq#$uGHaVEo4`UmZFA`=nlJ67F zY9t3F1Lro96A2eKk~0Z&8_5d^XQDmf2DDFxHy0bpk%KT-DzW)|2boMMp#OE0uQ#&) zziZK{IW~UO|JPciwHk_gqmx}8)QRRZh{hl&1g_IS+($fK1K~y8G;^{m6YVAWvlRFz zJIOavU|*h-?B0j$c9J6r4>-vK39FpsnF_8UJmDno272s+B0im~U!v(8>~hoxrxGXm zJ_%iOk^}kzr{0$n33KnunS@17@!pUA2FIQbWBP!=Eu*DnH}E}x4WI~@}d~T;~=!$ zL!*DFQQSiLHE1!Oc9D;yNXDPJpbhX~S*2WJ^a%O*+v%@4WB&;=2o(VF#2g^qYeS+nSgaN_wePHK-2n;_}*>$~ApwDq@ z4dnMUf2LzuG95@iMI~gV? z4urtbFgX(#aR>rD&!#VNj7Wn#I}P6W$nOu90$o?4XlyT%kMj-?9&*zmQlM8TilOc8 z_BJ%X<}Z;w2BEK35tRLcjD8XFK*Hb%c_v}c2zd?R)ChSu;fx6REaAKe`37NDgzP>T zStm0>Nza#-(CNPK0>YyUh*2QkSBd!`PJ*COa@`2xC?T!xengvpb%Pf?qcaV1vfwN;f$Y+7l6nS_$PPRiOx5!x?>~@*d`87~iDAXa= zhPzPlBh+DcarH6bS~6M;ic35Q_h??>G79C`XnA1hj3wtRo?AFG;vGTwX2*+=+@=U@zvGN+inpk-^;r&?oETJt{ zzCm~`R(2mLg*A$f6BfAow1XQU=-A>C528bym`3AK9v>%f8Hw}K%s9I}!U=OGRX1n) z^W5HA&8#~hKdXya7sDz+Oz-mlA49IAeg^83^uFpY38tZbCF=Pl!OErbpi#IaIISpj zDq1Qp8U^Poy2x8b!Kqta!ku10&pJhUf#9_n;x@4DBw@ zBplP7G6d}IF7H>h;-|ilAz$El{SQR)g`g0A9GZ=a% zDMyM_5dA>(p!3Bvg&0S~N)UZf!w(xfK*S|A$h(+pbiGI0T`1}^ljKZnS+Xe$LvScb zj?97;7te-c7i!r+k)hDlTCNap~ed1w(mEj+i2~>3n&v-9Ch-@ZAP$L~I%SjJL5f z>hY*^B*{7D%8RC83yhVeso3Wh$76ezgQsGns+uCXMI=LR3(5K5DV=`J6^S)R<5h_^ z`>A;w=`b~IgWE_c1PA5G1bgLW1c&791eNj$L0tuSltMqZHzHT|mg_yV%Idaa|GG4d+;S@>8(bhJ_MD?Mrjz0<~7?WyTYl^BK1_54>_~-fRDkrK+QatIU-D#HJ>@Uk59mh z553VZv}vP2W&GnS2KB4t_0wVA0EpekZ7QeaW%9?<;a=bXyM1h9Fzz(aKe#a;LOz0M zpDasHqkV_bu+J6ZyOzsQPfM-G{W{)mcX0+IYejwg{-ymCD*-laMElCgxa^{iFE)@% zc|wyr3b`9I?e?bR@3fWjXHQH1G1tL7f|L5~e5a5Zj z8ROQM+E`ce+t03d!JG;Kx^!^%Nkqux?ayF0i$^hYKED8Q9)n}Mu&j(#0 zpMaR_MikGIew?bE4}!QT`-AU%9z`b_dvO!d^)Beg!VdqK`5@|GNFEuIoaZpU!L>tD z4?GWDfNOBNuZD6e%KXm7Vh}?>(0R=3A+$|jV7Iq2Lfhax*<&U)=1NFpz9>h|lmeWu zqkL2zFcaoFCE=;Xi^{1k6oes19BEurLEJ~p9y;$$1K~+EAe>i%XfDS+i{?8}>;OKF ze!U*ufS&A!W*~d&nPzBYZpCyNd2j1-L*2e^XUl|9%bvf0tBjR<{&_ z_9xfIDY&FT4eeYm9Y91cmS<*3fng}N!aEcb4EU$!Yh#AC(r2N5EZV(BYh*2mW%3_$ zVB}sDx5!PiQT!am0y&O~w@@sVhok5<3&p`uyaIZiuCJ08W#c+>Bh`ahO3b=d^=JPZ zV)asf7~cn1CQJUWj;oKWs><4DAGj!F>b;Q2wGTBkHHARaEStGHia}=iW>CiTYH5e8O82{aa9&g@P5GU!pLddMBwa;lq*r;H{RHLT$K5 zT5H1x*zn!p+F=2BVxjevH>AUID2-bv3(1f)+K_}kJ_m_f+MA^A?@$IlF{Pztn>IQ& zjV@?@3-~MKpRBqJ3PrXG{0YrZ^Q!c=XC$K_r@tm*J>;FAMlaxvS=cOq6H;4R943@k z+@`FT@&;bYwJU}U$Jcw_rp?JX|4v4}_HF%4$?dlU`D1VE=SptJ7UcJn|4em%_#tH7 zX*j7v_2=;%{a??H0^c5dsBUx6GV8roo1hW69j0*%`3*q9m1aHH?zaoleId=K>Se9n zdfTab0dzJ}#Y}|2Mr1dUnuY8>WWS+qI$MTpA!nPBEoFhbqtFV9n2qIS2(qqaEi_#( zI}=bCNQG};Ena|Z=rZe!>ez^USE_%5XG5EPD7vAdHUVB4mCRbcCWf znbP0Dgc^lxHtmFE$E(P0vMO;bM|P!_M_ePD&e=oAzHPP6QHN|cjX^^l?Vixff^M6m zFS4Jq>?maaPCFscL96XwCMS=r%jo26OuuaK52o|Mm<%h{dfSq7%`wFa5vc zuY=e(Gr;`~yUs!;bnm+{n-e|8ypDz>?!vD0fK2u=q~LC8v>h=Tgm_Ztr;8WvuUD6?S!WII>;F=PpWkNA1qJFHNPk zrM2&?uI?j~JyzE`7xDG8t9%U%q@wrLjL7CdtawOxN@}IGE8?wd7b$z>>Xz$?6_ose zTB%l%`JrktSH!O_RCncc{z%O={o};eI$*&$J2tDa__weia%@pO0&K1^kOpi~{d?Nw zNup!UY3rvxMI|ahB?{IUn6qMwI&PYAf%NjnYOLE-5kz z)ro5Ut~v+UU26`cfE{X}t78y%wPTR7v`+ZZvpZCnv&PMMjhpdo%G{yCos0T1yr?h3 z?Whp2YdOB+pwsd>3|9q_Yo`kL7r(7tK`}ekAiD^6W!zRQUqJ=86>C;dz$Xx18E=_v zSV=LuxQdIIX&Jhh$;FyXD$vC&5zeH5f2iN$abAqRWKjlR3iM?)1?<9Q4aMloA1Om$ zhzj@;@F_~`C`Mn_QwCoOaPj|(;)Xm;uH9;&|I}+-{yt~SZuPNBu{~-D$%l{OG;Ghd z#$AT(+17ZVVY{|99t58by&bahKE_>!1Z7Gq(g(lTIU!!Zo$xV&jq+c_I~z5>h=&*r zG6JpbAm;6%um}k^AES#=BZJaf0XOih9QR%|MftP~8cL7lsvea1x#~>&bCtis*ypO3 zLh#Ejo!GPZ10pN0yF$bMslp+Z{7)6;?kvG-i?v5a;b=4 zNH)dnQ&G;T!nd_5#T}WP`_z5z#9vVxl1-)i)WqnyzruUGT7M6kWf~of)w0ZBBWoqS zY0&r)O8ra)n^QZ{`p;C@q(uBfsZQR#(*JLIJ8qjjS?IBF+w4PP)?Ur-vRHg20tOWV z@uSYv=U=F2tNvy#l6O7&@0xDM?Rpl;s%X~}EA`l`rFT8wgix-o=Lr6@<#v1aDCwW? z-HzM!9Cxw2UC$D!Cs0;A?|RDJ6!W=?axe3m7(1b-tT?CbpR4fbR$*!wM?vF;`TwRz zmEiUwZ?zF0*DZ5;dQkWMDlGC^xyPbvJ;*BAKp({D_RB%Xs3Df(;`iDY4Nkj9Xy|0F8eTLBKHQau+_G(H8ZThaI z+&mQ)^7|t)1@y}@92l$YArOe1GcqL_P({w0IrQLe4pi=1}75y4;25E3Udn2o4CSbl_RWAJR=bN6xDx)LB4Y)b^lsLMHeQs*bou>JDQ8_(q2h>P2^ku3&prTURrLwt)xH6*;X17)wCjqV> z%tCQq^5Fw67BL}gcTSpZKF`h4ab#*R0tW{^1k*feRJe$TBV7)n5X;op^p_u@e zX|V~#j0a22D+TvC$++#oBZ3!GAK3>6^F1`WSys`Ln=%aQ}6Fk z*901mi~G(s9!uD6wAoFj$_3i|oeGQDSH%2SOA5z+@VYGnUSZsxhZ`)tj)uK^La1A5 zlgPJUPwvC;?N*9EtX?vMi1H7kG1I92Fud^r`TrZkL^S5#h~Stv+4e!PF&BFhU1uDn zf{q-xoN4QwHbiQKURcVw9og;CHm!EKiVFUXT|`0y^9XD!y&(M7a&jF(Td*`ALGAa* zV$e&(szoe;l0e72p5?I!d$!K)$+dJk#klRrJ%X>2>1ZzkJs)8C@86}OBiQ4_9Vd68 z3N!OdD5g-&R%a=%5c6wPH3bx*(Y@rR*+*J)zBjACe3PC9A8}cN@hRa6g1Xa7-s0xi z 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 From 28facf2997009947f190ae14f45480e98d2ebb0f Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 12:00:37 -0500 Subject: [PATCH 168/186] Queries work (kind of). Conditions need to be implemented to finish it. Cross Product may need work. --- Attribute.cpp | 3 +- DBEngine.cpp | 88 ++++++++++++++++++++------ DBEngine.h | 1 + Parser.cpp | 166 +++++++++++++++++++++++++++++++++++++++++++++++++- Relation.cpp | 25 ++++++-- Relation.h | 1 + test | Bin 173181 -> 177454 bytes 7 files changed, 259 insertions(+), 25 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index 0ef939e..81efb67 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -32,6 +32,7 @@ void Attribute::addCell(string v){ } void Attribute::removeCell(int index){ + cout << values[index] << " " << index << endl; values.erase(values.begin() + index); size--; } @@ -69,7 +70,7 @@ void Attribute::display(){ cout << name << "\n" << type; if(type == "VARCHAR") { - cout << "(" << size << ")"; + cout << "(" << limit << ")"; } cout << "\n\n"; diff --git a/DBEngine.cpp b/DBEngine.cpp index ede10e5..2638942 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -101,7 +101,20 @@ vector DBEngine::getRelations(){ return tables; } -Relation& DBEngine::getTableFromName(string n){ +bool DBEngine::isRelation(string n) +{ + for(int i = 0; i < tables.size(); i++) + { + if (tables[i].getTableName() == n) + { + return true; + } + } + return false; +} + +Relation& DBEngine::getTableFromName(string n) +{ for(int i = 0; i < tables.size(); i++){ if (tables[i].getTableName() == n){ return tables[i]; @@ -198,31 +211,67 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ Relation new_r = r1; new_r.setTableName("TEMP"); vector temp; - bool duplicate = false; - - for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i){ - new_r.removeTuple(i); + //bool duplicate = false; + + /* + for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) + { + new_r.removeTuple(0); } + */ + int size = 0; + + cout << "test1" << endl; + + for(int x = 0; x < r2.getAttributes().size(); ++x) + { + + cout << "test2" << endl; + for (int i = 0; i < r2.getAttributes()[x].getSize(); ++i) + { + + cout << "test3" << endl; + temp = r2.getTuple(i); - for (int i = 0; i < r1.getAttributes()[0].getSize(); ++i) { - temp = r1.getTuple(i); - - for (int j = 0; j < r2.getAttributes()[0].getSize(); ++j){ - if (temp == r2.getTuple(j)){ - duplicate = true; - break; + for(int y = 0; y < new_r.getAttributes().size(); ++y) + { + size = new_r.getAttributes()[y].getSize(); + cout << "test4" << endl; + new_r.getAttributes()[y].getSize(); + for (int j = 0; j < size; ++j) + { + cout << "test5" << endl; + for(int a = 0; a < temp.size(); ++a) + { + cout << "test6" << endl; + for(int b = 0; b < new_r.getTuple(j).size(); ++b) + { + cout << "test7" << endl; + cout << temp[a] << " " << new_r.getTuple(j)[b] << " " << b << endl; + if (temp[a] == new_r.getTuple(j)[b]) + { + new_r.removeFromTuple(b, j); + cout << "test" << endl; + //duplicate = true; + //break; + } + } + } + size = new_r.getAttributes()[y].getSize(); + } + /* + if (!duplicate) + { + new_r.insertTuple(temp); + } + */ + //duplicate = false; } } - - if (!duplicate){ - new_r.insertTuple(temp); - } - - duplicate = false; } //make this one for loop later! - + /* for (int i = 0; i < r2.getAttributes()[0].getSize(); ++i) { temp = r2.getTuple(i); @@ -239,6 +288,7 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ duplicate = false; } + */ return new_r; } diff --git a/DBEngine.h b/DBEngine.h index de714f6..e02e5c7 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -17,6 +17,7 @@ public: void createTable(Relation r); void insertValues(string r, vector v); vector getRelations(); + bool isRelation(string n); //void showTable(Relation r); Relation& getTableFromName(string n); void saveToFile(vector cmds); diff --git a/Parser.cpp b/Parser.cpp index 15873ea..2812ea0 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -507,11 +507,175 @@ vector deleteCMD(vector input, DBEngine &engine) else cout<<"Syntax error!"< input, DBEngine &engine) +Relation expression(vector input, DBEngine &engine) +{ + Relation rfinal("TEMP"); + if(input[0] == "select") + { + + } + + else if(input[0] == "project") + { + + } + + else if(input[0] == "rename") + { + + } + + else if(engine.isRelation(input[0])) + { + Relation r1(engine.getTableFromName(input[0])); + input.erase(input.begin()); + + if(input[0] == "+") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setUnion(r1, r2); + return rfinal; + } + else if(input[0] == "(") + { + Relation r2 = expression(input, engine); + rfinal = engine.setUnion(r1, r2); + return rfinal; + } + } + + else if(input[0] == "-") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setDiff(r1, r2); + return rfinal; + } + else if(input[0] == "(") + { + Relation r2 = expression(input, engine); + rfinal = engine.setDiff(r1, r2); + return rfinal; + } + } + + else if(input[0] == "*") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.crossProduct(r1, r2); + return rfinal; + } + else if(input[0] == "(") + { + Relation r2 = expression(input, engine); + rfinal = engine.crossProduct(r1, r2); + return rfinal; + } + } + } + + else if(input[0] == "(") + { + input.erase(input.begin()); + + if(input[0] == "+") + { + + } + + else if(input[0] == "-") + { + + } + + else if(input[0] == "*") + { + + } + } + + return rfinal; +} + +vector query(vector input, DBEngine &engine) { PRelation pr(input[0]); input.erase(input.begin()); + input.erase(input.begin()); + + Relation r = expression(input, engine); + r.setTableName(pr.getName()); + //r.display(); + + //temporary fix + while(input[0] != ";") + { + input.erase(input.begin()); + } + + /* + if(input[0] == "select") + { + + } + + else if(input[0] == "project") + { + + } + + else if(input[0] == "rename") + { + + } + + else if(engine.isRelation()) + { + Relation r(engine.getTableFromName(input[0])); + input.erase(input.begin()); + + if(input[0] == "+") + { + + } + + else if(input[0] == "-") + { + + } + + else if(input[0] == "*") + { + + } + } + + else + { + cout << "Invalid query request." << endl; + } + */ + + //testing + /* + for(int x = 0; x < input.size(); ++x) + { + cout << input[x] << endl; + } + */ + + engine.createTable(r); + + return input; } void par_line(vector input, DBEngine &engine) //calls par_command() or par_query() depending on first item from token list diff --git a/Relation.cpp b/Relation.cpp index 4a7dd9c..6839ee7 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -116,13 +116,30 @@ void Relation::insertFromRelation(Relation r){ } void Relation::removeTuple(int index){ - if (index >= this->size) { - cout << "Failure to delete: the requested index is out of bounds."; + if (index >= this->size) + { + cout << "Failure to delete: the requested index is out of bounds." << endl; } - else { - for (int i = 0; i < att.size(); ++i) { + else + { + for (int i = 0; i < att.size(); ++i) + { att[i].removeCell(index); } } +} + +void Relation::removeFromTuple(int rindex, int aindex) +{ + if (rindex >= this->size) + { + cout << "Failure to delete: the requested index is out of bounds." << endl; + } + + else + { + cout << aindex << endl; + att[rindex].removeCell(aindex); + } } \ No newline at end of file diff --git a/Relation.h b/Relation.h index 172627f..431d634 100755 --- a/Relation.h +++ b/Relation.h @@ -25,4 +25,5 @@ public: void insertTuple(vector tuple); //assuming they are in order void insertFromRelation(Relation r); void removeTuple(int index); + void removeFromTuple(int rindex, int aindex); }; \ No newline at end of file diff --git a/test b/test index 58c892373052ac8cad3db603428ebbdd03c20d01..eca42fd10ef70da8e47885c44bbd7367aefc84e3 100755 GIT binary patch literal 177454 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 literal 173181 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 HW%vIN0xV{m From 1f6fa5575449195bf6b3a4d867e839aecee6f741 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 12:36:45 -0500 Subject: [PATCH 169/186] Deleted some useless code. Fixing more complicated parser bugs. --- Parser.cpp | 341 +++++++++++++++++++++++++++-------------------------- test | Bin 177454 -> 186820 bytes 2 files changed, 177 insertions(+), 164 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index 2812ea0..02d4475 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -5,6 +5,7 @@ #include #include #include "Parser.h" +#include using namespace std; @@ -41,6 +42,176 @@ void displayTokenList(vector input) } } +tuple, Relation> expression(vector input, DBEngine &engine) +{ + Relation rfinal("TEMP"); + tuple, Relation> t(input, rfinal); + if(input[0] == "select") + { + + } + + else if(input[0] == "project") + { + + } + + else if(input[0] == "rename") + { + + } + + else if(engine.isRelation(input[0])) + { + Relation r1(engine.getTableFromName(input[0])); + input.erase(input.begin()); + + if(input[0] == "+") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setUnion(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.setUnion(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + + else if(input[0] == "-") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setDiff(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.setDiff(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + + else if(input[0] == "*") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.crossProduct(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.crossProduct(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + } + + else if(input[0] == "(") + { + input.erase(input.begin()); + + Relation r1(engine.getTableFromName(input[0])); + input.erase(input.begin()); + + if(input[0] == "+") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setUnion(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.setUnion(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + + else if(input[0] == "-") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.setDiff(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.setDiff(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + + else if(input[0] == "*") + { + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + Relation r2(engine.getTableFromName(input[0])); + rfinal = engine.crossProduct(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + Relation r2 = get<1>(t); + rfinal = engine.crossProduct(r1, r2); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + } + + get<0>(t) = input; + get<1>(t) = rfinal; + return t; +} + vector showCMD(vector input, DBEngine &engine) { if (input.size() > 3) @@ -358,16 +529,11 @@ vector insertCMD(vector input, DBEngine &engine) { input.erase(input.begin()); - //PExpression e; + tuple, Relation> t = expression(input, engine); - // while(input[0] != ";") - // { - // e.setPExpression(e.getPExpression() + input[0]); - // } + engine.createTable(get<1>(t)); - //cout << "Inserting: " << e.getPExpression() << " into " << r.getName() << ".\n"; - - cout << "Not yet implemented." << endl; + input = get<0>(t); return input; } @@ -507,104 +673,6 @@ vector deleteCMD(vector input, DBEngine &engine) else cout<<"Syntax error!"< input, DBEngine &engine) -{ - Relation rfinal("TEMP"); - if(input[0] == "select") - { - - } - - else if(input[0] == "project") - { - - } - - else if(input[0] == "rename") - { - - } - - else if(engine.isRelation(input[0])) - { - Relation r1(engine.getTableFromName(input[0])); - input.erase(input.begin()); - - if(input[0] == "+") - { - input.erase(input.begin()); - if(engine.isRelation(input[0])) - { - Relation r2(engine.getTableFromName(input[0])); - rfinal = engine.setUnion(r1, r2); - return rfinal; - } - else if(input[0] == "(") - { - Relation r2 = expression(input, engine); - rfinal = engine.setUnion(r1, r2); - return rfinal; - } - } - - else if(input[0] == "-") - { - input.erase(input.begin()); - if(engine.isRelation(input[0])) - { - Relation r2(engine.getTableFromName(input[0])); - rfinal = engine.setDiff(r1, r2); - return rfinal; - } - else if(input[0] == "(") - { - Relation r2 = expression(input, engine); - rfinal = engine.setDiff(r1, r2); - return rfinal; - } - } - - else if(input[0] == "*") - { - input.erase(input.begin()); - if(engine.isRelation(input[0])) - { - Relation r2(engine.getTableFromName(input[0])); - rfinal = engine.crossProduct(r1, r2); - return rfinal; - } - else if(input[0] == "(") - { - Relation r2 = expression(input, engine); - rfinal = engine.crossProduct(r1, r2); - return rfinal; - } - } - } - - else if(input[0] == "(") - { - input.erase(input.begin()); - - if(input[0] == "+") - { - - } - - else if(input[0] == "-") - { - - } - - else if(input[0] == "*") - { - - } - } - - return rfinal; -} - vector query(vector input, DBEngine &engine) { PRelation pr(input[0]); @@ -612,66 +680,11 @@ vector query(vector input, DBEngine &engine) input.erase(input.begin()); input.erase(input.begin()); - Relation r = expression(input, engine); + tuple, Relation> t = expression(input, engine); + Relation r = get<1>(t); r.setTableName(pr.getName()); //r.display(); - - //temporary fix - while(input[0] != ";") - { - input.erase(input.begin()); - } - - /* - if(input[0] == "select") - { - - } - - else if(input[0] == "project") - { - - } - - else if(input[0] == "rename") - { - - } - - else if(engine.isRelation()) - { - Relation r(engine.getTableFromName(input[0])); - input.erase(input.begin()); - - if(input[0] == "+") - { - - } - - else if(input[0] == "-") - { - - } - - else if(input[0] == "*") - { - - } - } - - else - { - cout << "Invalid query request." << endl; - } - */ - - //testing - /* - for(int x = 0; x < input.size(); ++x) - { - cout << input[x] << endl; - } - */ + input = get<0>(t); engine.createTable(r); diff --git a/test b/test index eca42fd10ef70da8e47885c44bbd7367aefc84e3..786e618cca9f4d91e3720b049ff6cc21deb9caf9 100755 GIT binary patch literal 186820 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 Ns+MGGX6U7@{|DyI*$w~z literal 177454 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 From fa50473ad4be7bd3904efee507888209d6393b00 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 13:28:24 -0500 Subject: [PATCH 170/186] Projection linked. --- Attribute.cpp | 1 - DBEngine.cpp | 27 +++++++++++++++------------ Parser.cpp | 50 ++++++++++++++++++++++++++++++++++++++++++++++---- Relation.cpp | 1 - test | Bin 186820 -> 191598 bytes 5 files changed, 61 insertions(+), 18 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index 81efb67..a2ae7f6 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -32,7 +32,6 @@ void Attribute::addCell(string v){ } void Attribute::removeCell(int index){ - cout << values[index] << " " << index << endl; values.erase(values.begin() + index); size--; } diff --git a/DBEngine.cpp b/DBEngine.cpp index 2638942..1819cf0 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -135,11 +135,14 @@ Relation DBEngine::projection(vector input, Relation r){ vector v; string new_name = r.getTableName() + " Projection"; - for(int i = 0; i < input.size(); ++i) { - - for(int j = 0; j < r.getSize(); ++j) { + for(int i = 0; i < input.size(); ++i) + { + for(int j = 0; j < r.getSize(); ++j) + { if((r.getAttributes())[j].getName() == input[i]) + { v.push_back((r.getAttributes())[j]); + } } } @@ -221,37 +224,37 @@ Relation DBEngine::setDiff(Relation r1, Relation r2){ */ int size = 0; - cout << "test1" << endl; + //cout << "test1" << endl; for(int x = 0; x < r2.getAttributes().size(); ++x) { - cout << "test2" << endl; + //cout << "test2" << endl; for (int i = 0; i < r2.getAttributes()[x].getSize(); ++i) { - cout << "test3" << endl; + //cout << "test3" << endl; temp = r2.getTuple(i); for(int y = 0; y < new_r.getAttributes().size(); ++y) { size = new_r.getAttributes()[y].getSize(); - cout << "test4" << endl; + //cout << "test4" << endl; new_r.getAttributes()[y].getSize(); for (int j = 0; j < size; ++j) { - cout << "test5" << endl; + //cout << "test5" << endl; for(int a = 0; a < temp.size(); ++a) { - cout << "test6" << endl; + //cout << "test6" << endl; for(int b = 0; b < new_r.getTuple(j).size(); ++b) { - cout << "test7" << endl; - cout << temp[a] << " " << new_r.getTuple(j)[b] << " " << b << endl; + //cout << "test7" << endl; + //cout << temp[a] << " " << new_r.getTuple(j)[b] << " " << b << endl; if (temp[a] == new_r.getTuple(j)[b]) { new_r.removeFromTuple(b, j); - cout << "test" << endl; + //cout << "test" << endl; //duplicate = true; //break; } diff --git a/Parser.cpp b/Parser.cpp index 02d4475..75c988f 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -53,7 +53,40 @@ tuple, Relation> expression(vector input, DBEngine &engin else if(input[0] == "project") { - + input.erase(input.begin()); + if(input[0] == "(") + { + input.erase(input.begin()); + vector temp; + while(input[0] != ")") + { + temp.push_back(input[0]); + input.erase(input.begin()); + } + input.erase(input.begin()); + Relation rfinal("TEMP"); + if(engine.isRelation(input[0])) + { + rfinal = engine.projection(temp, engine.getTableFromName(input[0])); + input.erase(input.begin()); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + t = expression(input, engine); + rfinal = engine.projection(temp, get<1>(t)); + //get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + else + { + cout << "Projection syntax incorrect." << endl; + exit(1); + } } else if(input[0] == "rename") @@ -214,15 +247,24 @@ tuple, Relation> expression(vector input, DBEngine &engin vector showCMD(vector input, DBEngine &engine) { + /* if (input.size() > 3) { cout<<"Syntax error!"<, Relation> t = expression(input, engine); + get<1>(t).display(); + } return input; } diff --git a/Relation.cpp b/Relation.cpp index 6839ee7..b53ac36 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -139,7 +139,6 @@ void Relation::removeFromTuple(int rindex, int aindex) else { - cout << aindex << endl; att[rindex].removeCell(aindex); } } \ No newline at end of file diff --git a/test b/test index 786e618cca9f4d91e3720b049ff6cc21deb9caf9..76fc12b80d1bbf500c7ad299e97e553b1462419b 100755 GIT binary patch literal 191598 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 Ns+MGGX6U7@{|DyI*$w~z From d56a2ee90ebf4b15b46a626c6726eac83ccb4b67 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 13:55:47 -0500 Subject: [PATCH 171/186] rename expression works. --- DBEngine.cpp | 21 +++++++++++++++++---- DBEngine.h | 2 +- Parser.cpp | 41 ++++++++++++++++++++++++++++++++++++++++- test | Bin 191598 -> 195691 bytes 4 files changed, 58 insertions(+), 6 deletions(-) diff --git a/DBEngine.cpp b/DBEngine.cpp index 1819cf0..32a06ef 100755 --- a/DBEngine.cpp +++ b/DBEngine.cpp @@ -151,12 +151,23 @@ Relation DBEngine::projection(vector input, Relation r){ } //test error matching -void DBEngine::rename(Relation& r, vector oldnames, vector newnames){ - if (oldnames.size() != newnames.size()) { +Relation DBEngine::rename(vector newnames, Relation &r) +{ + vector temp; + if (r.getSize() != newnames.size()) { cout << "FAILURE TO RENAME: number of attributes do not match.\n"; - return; + exit(1); } - + else + { + temp = r.getAttributeNames(); + for(int i = 0; i < temp.size(); ++i) + { + r.renameAttribute(temp[i], newnames[i]); + } + return r; + } + /* else if (oldnames != r.getAttributeNames()) { cout << "FAILURE TO RENAME: the attributes to be renamed do not exist in the relation.\n"; return; @@ -167,6 +178,8 @@ void DBEngine::rename(Relation& r, vector oldnames, vector newna r.renameAttribute(oldnames[i], newnames[i]); } } + */ + } Relation DBEngine::setUnion(Relation r1, Relation r2){ diff --git a/DBEngine.h b/DBEngine.h index e02e5c7..81009d3 100755 --- a/DBEngine.h +++ b/DBEngine.h @@ -28,7 +28,7 @@ public: void save(); void save(string n); void storeCommands(string s); - void rename(Relation& r, vector oldnames, vector newnames); + Relation rename(vector newnames, Relation &r); Relation setUnion(Relation r1, Relation r2); Relation setDiff(Relation r1, Relation r2); Relation crossProduct(Relation r1, Relation r2); diff --git a/Parser.cpp b/Parser.cpp index 75c988f..ab5965a 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -91,7 +91,46 @@ tuple, Relation> expression(vector input, DBEngine &engin else if(input[0] == "rename") { - + input.erase(input.begin()); + if(input[0] == "(") + { + input.erase(input.begin()); + vector temp; + while(input[0] != ")") + { + if(input[0] == ",") + { + input.erase(input.begin()); + } + temp.push_back(input[0]); + input.erase(input.begin()); + } + input.erase(input.begin()); + Relation rfinal("TEMP"); + if(engine.isRelation(input[0])) + { + rfinal = engine.rename(temp, engine.getTableFromName(input[0])); + input.erase(input.begin()); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + else if(input[0] == "(") + { + input.erase(input.begin()); + t = expression(input, engine); + input.erase(input.begin()); + rfinal = engine.rename(temp, get<1>(t)); + get<0>(t) = input; + get<1>(t) = rfinal; + return t; + } + } + else + { + cout << "Rename syntax incorrect." << endl; + exit(1); + } } else if(engine.isRelation(input[0])) diff --git a/test b/test index 76fc12b80d1bbf500c7ad299e97e553b1462419b..fc260be540eefdef1988db261e2161e9550aecf4 100755 GIT binary patch literal 195691 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ⓈkCCpjjWxF3fL6-E!4?s3`!hp^ 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 literal 191598 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 Date: Tue, 29 Sep 2015 15:21:51 -0500 Subject: [PATCH 172/186] INSERT command works with VALUES FROM RELATION ... --- Parser.cpp | 14 ++++++++++++-- Relation.cpp | 2 ++ test | Bin 195691 -> 195691 bytes 3 files changed, 14 insertions(+), 2 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index ab5965a..e7c8da1 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -71,6 +71,7 @@ tuple, Relation> expression(vector input, DBEngine &engin input.erase(input.begin()); get<0>(t) = input; get<1>(t) = rfinal; + //cout << rfinal.getSize() << endl; return t; } else if(input[0] == "(") @@ -79,6 +80,7 @@ tuple, Relation> expression(vector input, DBEngine &engin rfinal = engine.projection(temp, get<1>(t)); //get<0>(t) = input; get<1>(t) = rfinal; + //cout << rfinal.getSize() << endl; return t; } } @@ -611,8 +613,16 @@ vector insertCMD(vector input, DBEngine &engine) input.erase(input.begin()); tuple, Relation> t = expression(input, engine); - - engine.createTable(get<1>(t)); + vector a = get<1>(t).getAttributes(); + for(int y = 0; y < a[0].getSize(); ++y) + { + for(int x = 0; x < a.size(); ++x) + { + s.push_back(a[x].getValues()[y]); + engine.insertValues(r.getTableName(), s); + s.clear(); + } + } input = get<0>(t); diff --git a/Relation.cpp b/Relation.cpp index b53ac36..3f9fb7b 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -82,6 +82,8 @@ void Relation::display(){ } void Relation::insertTuple(vector tuple){ + cout << name << " " << size << endl; + cout << tuple.size() << endl; if (tuple.size() != this->size) { cout << "Failure to insert: the sizes do not match."; } diff --git a/test b/test index fc260be540eefdef1988db261e2161e9550aecf4..b0e69f8a743256b56ef2ea4921fd7f8aa22939c2 100755 GIT binary patch delta 36211 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 delta 35963 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 Date: Tue, 29 Sep 2015 18:35:12 -0500 Subject: [PATCH 173/186] Conditions work withou && or || arguments. Select is implemented. --- Parser.cpp | 302 ++++++++++++++++++++++++++++++++++++++++++++++++++- Relation.cpp | 10 ++ Relation.h | 1 + test | Bin 195691 -> 208173 bytes 4 files changed, 312 insertions(+), 1 deletion(-) diff --git a/Parser.cpp b/Parser.cpp index e7c8da1..2716df4 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -42,13 +42,313 @@ void displayTokenList(vector input) } } +Relation condition(vector input, Relation &r) +{ + Relation rfinal = r; + Attribute a1 = r.getAttributeByName(input[0]); + input.erase(input.begin()); + string op = input[0]; + input.erase(input.begin()); + Attribute a2; + string c; + //cout << input[0] << endl; + if(input[0].at(0) == '\"') + { + c = input[0].substr(1, input[0].find_last_of("\"") - 1); + //cout << c << endl; + } + if(r.isAttribute(input[0])) + { + a2 = r.getAttributeByName(input[0]); + input.erase(input.begin()); + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + /* + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size; ++j) + { + if(r.getAttributeByName(a1.getName()).getValues()[j] == ) + { + rfinal.insertTuple(r.getTuple(j)); + } + }*/ + if(op == "==") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else if(op == "!=") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else if(op == ">=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == ">") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + } + } + } + else + { + input.erase(input.begin()); + if(op == "==") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(r.getAttributeByName(a1.getName()).getValues()[j] != c) + { + rfinal.removeTuple(j); + } + } + } + } + } + else if(op == "!=") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(r.getAttributeByName(a1.getName()).getValues()[j] == c) + { + rfinal.removeTuple(j); + } + } + } + } + } + else if(op == ">=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == ">") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + } + return rfinal; +} + tuple, Relation> expression(vector input, DBEngine &engine) { Relation rfinal("TEMP"); tuple, Relation> t(input, rfinal); if(input[0] == "select") { - + /* + cout << "Not yet implemented." << endl; + exit(1); + */ + input.erase(input.begin()); + vector s; + Relation r("TEMP"); + if(input[0] == "(") + { + input.erase(input.begin()); + while(input[0] != ")") + { + s.push_back(input[0]); + input.erase(input.begin()); + } + input.erase(input.begin()); + if(engine.isRelation(input[0])) + { + r = condition(s, engine.getTableFromName(input[0])); + input.erase(input.begin()); + } + else if(input[0] == "(") + { + tuple, Relation> t = expression(input, engine); + r = condition(s, get<1>(t)); + input.erase(input.begin()); + } + } + get<0>(t) = input; + get<1>(t) = r; + return t; } else if(input[0] == "project") diff --git a/Relation.cpp b/Relation.cpp index 3f9fb7b..bf32b20 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -63,6 +63,16 @@ Attribute& Relation::getAttributeByName(string s) { cout << "Failure to return: the requested attribute does not exist."; } +bool Relation::isAttribute(string s) { + for(int i = 0; i < size; ++i){ + if (att[i].getName() == s) { + return true; + } + } + return false; + //cout << "Failure to return: the requested attribute does not exist."; +} + void Relation::renameAttribute(string oldstr, string newstr){ this->getAttributeByName(oldstr).setName(newstr); } diff --git a/Relation.h b/Relation.h index 431d634..4c7e1e2 100755 --- a/Relation.h +++ b/Relation.h @@ -19,6 +19,7 @@ public: vector getAttributes(); vector getAttributeNames(); Attribute& getAttributeByName(string s); + bool isAttribute(string s); void renameAttribute(string oldstr, string newstr); int getSize(); void display(); diff --git a/test b/test index b0e69f8a743256b56ef2ea4921fd7f8aa22939c2..9b3ff7fc837493d5c1dded1a6d69312824afaf5c 100755 GIT binary patch literal 208173 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 z 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 delta 66766 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 Vx^Z^gw$Dq9fO^|Xg3C3k_ Date: Tue, 29 Sep 2015 21:34:21 -0500 Subject: [PATCH 174/186] updating with NO testing --- Parser.cpp | 454 ++++++++++++++++++++++++++++++----------------------- 1 file changed, 254 insertions(+), 200 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index 2716df4..43ed941 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -45,174 +45,193 @@ void displayTokenList(vector input) Relation condition(vector input, Relation &r) { Relation rfinal = r; - Attribute a1 = r.getAttributeByName(input[0]); - input.erase(input.begin()); - string op = input[0]; - input.erase(input.begin()); - Attribute a2; - string c; - //cout << input[0] << endl; - if(input[0].at(0) == '\"') - { - c = input[0].substr(1, input[0].find_last_of("\"") - 1); - //cout << c << endl; - } - if(r.isAttribute(input[0])) - { - a2 = r.getAttributeByName(input[0]); - input.erase(input.begin()); - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - /* - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size; ++j) - { - if(r.getAttributeByName(a1.getName()).getValues()[j] == ) - { - rfinal.insertTuple(r.getTuple(j)); - } - }*/ - if(op == "==") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else if(op == "!=") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else if(op == ">=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == ">") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") - { - for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) - { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) - { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); - } - } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - } + + //UNTESTED + //testing to see if there is an && or || present + if (input.size() > 3) { + //test print + for (int i = 0; i < input.size(); ++i) + cout << "input[i]: " << input[i] << "\n"; + + + //this is probably wrong, added a cout for testing + string bin_op = input[3]; + cout << "bin_op, should be && or ||: " << bin_op << "\n"; + + //making each half a new vector, probably a better way to do this + vector firsthalf; + vector secondhalf; + + //again, all untested. it's weird to not test this stuff + for (int i = 0; i < input.size(); ++i){ + if (i < 3) + firsthalf.push_back(input[i]); + else + secondhalf.push_back(input[i]); + } + + //calling condition again with each half + Relation r1 = condition(firsthalf, rfinal); + Relation r2 = condition(secondhalf, rfinal); + + //NO IDEA IF THIS ACTUALLY WORKS + //HOORAY + //HOW THE FUCK DO PEOPLE CODE LIKE THIS + if (bin_op == "&&"){ + //with engine as the DBEngine object that maybe exists + return engine.crossProduct(r1, r2); + } + + else if (bin_op == "||"){ + //with engine as the DBEngine object that maybe exists + return engine.setUnion(r1, r2); + } + + else { + cout << "Something strange happened. bin_op: " << bin_op << "\n"; + cout << "Returning the initial relation."; + return rfinal; + } + } - else - { + + else { + + Attribute a1 = r.getAttributeByName(input[0]); input.erase(input.begin()); - if(op == "==") + string op = input[0]; + input.erase(input.begin()); + Attribute a2; + string c; + //cout << input[0] << endl; + if(input[0].at(0) == '\"') { + c = input[0].substr(1, input[0].find_last_of("\"") - 1); + //cout << c << endl; + } + if(r.isAttribute(input[0])) + { + a2 = r.getAttributeByName(input[0]); + input.erase(input.begin()); for(int i = 0; i < r.getAttributes().size(); ++i) { if(r.getAttributes()[i].getName() == a1.getName()) { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + /* + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size; ++j) { - if(r.getAttributeByName(a1.getName()).getValues()[j] != c) + if(r.getAttributeByName(a1.getName()).getValues()[j] == ) { - rfinal.removeTuple(j); + rfinal.insertTuple(r.getTuple(j)); + } + }*/ + if(op == "==") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else if(op == "!=") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else if(op == ">=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == ">") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER" && r.getAttributeByName(a2.getName()).getType() == "INTEGER") + { + for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) + { + rfinal.removeTuple(x); + //rfinal.insertAttributes(a); + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); } } } } } - else if(op == "!=") + else { - for(int i = 0; i < r.getAttributes().size(); ++i) - { - if(r.getAttributes()[i].getName() == a1.getName()) - { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) - { - if(r.getAttributeByName(a1.getName()).getValues()[j] == c) - { - rfinal.removeTuple(j); - } - } - } - } - } - else if(op == ">=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + input.erase(input.begin()); + if(op == "==") { for(int i = 0; i < r.getAttributes().size(); ++i) { @@ -220,7 +239,7 @@ Relation condition(vector input, Relation &r) { for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) + if(r.getAttributeByName(a1.getName()).getValues()[j] != c) { rfinal.removeTuple(j); } @@ -228,15 +247,7 @@ Relation condition(vector input, Relation &r) } } } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<=") - { - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + else if(op == "!=") { for(int i = 0; i < r.getAttributes().size(); ++i) { @@ -244,7 +255,7 @@ Relation condition(vector input, Relation &r) { for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) + if(r.getAttributeByName(a1.getName()).getValues()[j] == c) { rfinal.removeTuple(j); } @@ -252,64 +263,107 @@ Relation condition(vector input, Relation &r) } } } - else + else if(op == ">=") { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == ">") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") { - if(r.getAttributes()[i].getName() == a1.getName()) + for(int i = 0; i < r.getAttributes().size(); ++i) { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + if(r.getAttributes()[i].getName() == a1.getName()) { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - rfinal.removeTuple(j); + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) + { + rfinal.removeTuple(j); + } } } } } - } - else - { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); - } - } - else if(op == "<") - { - - if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") - { - for(int i = 0; i < r.getAttributes().size(); ++i) + else { - if(r.getAttributes()[i].getName() == a1.getName()) + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<=") + { + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) { - for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + if(r.getAttributes()[i].getName() == a1.getName()) { - if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) { - rfinal.removeTuple(j); + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) + { + rfinal.removeTuple(j); + } } } } } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } } - else + else if(op == ">") { - cout << "Attribute type is not an INTEGER." << endl; - exit(1); + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } + } + else if(op == "<") + { + + if(r.getAttributeByName(a1.getName()).getType() == "INTEGER") + { + for(int i = 0; i < r.getAttributes().size(); ++i) + { + if(r.getAttributes()[i].getName() == a1.getName()) + { + for(int j = 0; j < r.getAttributeByName(a1.getName()).getValues().size(); ++j) + { + if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) + { + rfinal.removeTuple(j); + } + } + } + } + } + else + { + cout << "Attribute type is not an INTEGER." << endl; + exit(1); + } } } + return rfinal; } - return rfinal; } tuple, Relation> expression(vector input, DBEngine &engine) @@ -1214,4 +1268,4 @@ int main () { } -*/ \ No newline at end of file +*/ From 6b3730a7f60dd39df73080f23a3a15902f2349b0 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 29 Sep 2015 22:02:25 -0500 Subject: [PATCH 175/186] Update DBApp.cpp --- DBApp.cpp | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/DBApp.cpp b/DBApp.cpp index cb9dc19..4619c55 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -37,4 +37,50 @@ int main() } } -*/ \ No newline at end of file +*/ + + +void yourAccount() +{ + cout<<"name: yourName"<>choice; + if (choice == 1) + { + yourAccount(); + } +} + + +int main() +{ + cout<<"***************************************"<>choice; + + + if (choice == 1) + { + mainMenu(); + } + +} From 85b00fc497be145748d06765d6e82a178eeb042a Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 29 Sep 2015 22:04:27 -0500 Subject: [PATCH 176/186] Update DBApp.cpp --- DBApp.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/DBApp.cpp b/DBApp.cpp index 4619c55..f6d4bee 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -37,7 +37,7 @@ int main() } } -*/ + void yourAccount() @@ -84,3 +84,4 @@ int main() } } +*/ From 948224c1a04b83eaafd06a741b7905704c809970 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 29 Sep 2015 22:20:01 -0500 Subject: [PATCH 177/186] Update DBApp.cpp --- DBApp.cpp | 47 ----------------------------------------------- 1 file changed, 47 deletions(-) diff --git a/DBApp.cpp b/DBApp.cpp index f6d4bee..50c8918 100755 --- a/DBApp.cpp +++ b/DBApp.cpp @@ -37,51 +37,4 @@ int main() } } - - - -void yourAccount() -{ - cout<<"name: yourName"<>choice; - if (choice == 1) - { - yourAccount(); - } -} - - -int main() -{ - cout<<"***************************************"<>choice; - - - if (choice == 1) - { - mainMenu(); - } - -} */ From 9b8b16d82abb7d71c46039290fc2726f49725226 Mon Sep 17 00:00:00 2001 From: William Bracho Blok Date: Tue, 29 Sep 2015 22:49:18 -0500 Subject: [PATCH 178/186] Create DBAppV2.cpp --- DBAppV2.cpp | 144 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 DBAppV2.cpp diff --git a/DBAppV2.cpp b/DBAppV2.cpp new file mode 100644 index 0000000..f5c880f --- /dev/null +++ b/DBAppV2.cpp @@ -0,0 +1,144 @@ +#include + +using namespace std; + + +void displayMainMenu() +{ + cout<<"***************"<>choice; + cout<<"0. Return to main menu"<>choice; + cout<<"0. Return to main menu"<>choice; + cout<<"0. Return to main menu"<>choice; + cout<<"Boards will be displayed soon"<>choice; + cout<<"0. Return to main menu"<>choice; + cout<<"0. Return to main menu"<>choice; + + switch (choice) + { + case 1: yourAccount(); + case 2: BoardMenu(); + case 3: showMessages(); + case 4: showGroups(); + } +} + + +int main() +{ + cout<<"***************************************"<>choice; + + + if (choice == 1) + { + cout<<"ramera"< Date: Tue, 29 Sep 2015 23:06:39 -0500 Subject: [PATCH 179/186] Update DBAppV2.cpp Some menu options based on the example. Still needs to be loopable --- DBAppV2.cpp | 49 +++++++++++++++---------------------------------- 1 file changed, 15 insertions(+), 34 deletions(-) diff --git a/DBAppV2.cpp b/DBAppV2.cpp index f5c880f..a1c9b7f 100644 --- a/DBAppV2.cpp +++ b/DBAppV2.cpp @@ -3,53 +3,37 @@ using namespace std; -void displayMainMenu() -{ - cout<<"***************"<>choice; + // int choice; + // cin>>choice; cout<<"0. Return to main menu"<>choice; + // int choice; + // cin>>choice; cout<<"0. Return to main menu"<>choice; + // int choice; + // cin>>choice; cout<<"0. Return to main menu"<>choice; + // int choice; + // cin>>choice; cout<<"0. Return to main menu"<>choice; + // int choice; + // cin>>choice; cout<<"0. Return to main menu"< Date: Tue, 29 Sep 2015 23:08:58 -0500 Subject: [PATCH 180/186] Update DBAppV2.cpp Added some menu options based on the example. Still needs to be loopable --- DBAppV2.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DBAppV2.cpp b/DBAppV2.cpp index a1c9b7f..a66537a 100644 --- a/DBAppV2.cpp +++ b/DBAppV2.cpp @@ -1,5 +1,5 @@ #include - + using namespace std; From c77ce1b58154aac4b798fe7e0af159ecd9b208f5 Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 23:20:12 -0500 Subject: [PATCH 181/186] Conditions are fully functional, as well as select. --- Parser.cpp | 77 +++++++++++++++++++++++++++++++++------------------ Relation.cpp | 2 -- test | Bin 208173 -> 212279 bytes test.cpp | 10 +++---- 4 files changed, 55 insertions(+), 34 deletions(-) diff --git a/Parser.cpp b/Parser.cpp index 43ed941..61272d7 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -42,12 +42,13 @@ void displayTokenList(vector input) } } -Relation condition(vector input, Relation &r) +Relation condition(vector input, Relation &r, DBEngine &engine) { Relation rfinal = r; //UNTESTED //testing to see if there is an && or || present + /* if (input.size() > 3) { //test print for (int i = 0; i < input.size(); ++i) @@ -97,7 +98,7 @@ Relation condition(vector input, Relation &r) } else { - + */ Attribute a1 = r.getAttributeByName(input[0]); input.erase(input.begin()); string op = input[0]; @@ -105,10 +106,9 @@ Relation condition(vector input, Relation &r) Attribute a2; string c; //cout << input[0] << endl; - if(input[0].at(0) == '\"') + for(int x = 0; x < input.size(); ++x) { - c = input[0].substr(1, input[0].find_last_of("\"") - 1); - //cout << c << endl; + cout << input[x] << endl; } if(r.isAttribute(input[0])) { @@ -126,14 +126,15 @@ Relation condition(vector input, Relation &r) rfinal.insertTuple(r.getTuple(j)); } }*/ + int offset = 0; if(op == "==") { for(int x = 0; x < r.getAttributeByName(a1.getName()).getSize(); ++x) { if(r.getAttributeByName(a1.getName()).getValues()[x] != r.getAttributeByName(a2.getName()).getValues()[x]) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -143,8 +144,8 @@ Relation condition(vector input, Relation &r) { if(r.getAttributeByName(a1.getName()).getValues()[x] == r.getAttributeByName(a2.getName()).getValues()[x]) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -156,8 +157,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) < stoi(r.getAttributeByName(a2.getName()).getValues()[x])) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -175,8 +176,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) > stoi(r.getAttributeByName(a2.getName()).getValues()[x])) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -195,8 +196,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) <= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -214,8 +215,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[x]) >= stoi(r.getAttributeByName(a2.getName()).getValues()[x])) { - rfinal.removeTuple(x); - //rfinal.insertAttributes(a); + rfinal.removeTuple(x - offset); + offset += 1; } } } @@ -228,9 +229,12 @@ Relation condition(vector input, Relation &r) } } } - else + else if(input[0].at(0) == '\"') { + c = input[0].substr(1, input[0].find_last_of("\"") - 1); input.erase(input.begin()); + int offset = 0; + //input.erase(input.begin()); if(op == "==") { for(int i = 0; i < r.getAttributes().size(); ++i) @@ -241,7 +245,8 @@ Relation condition(vector input, Relation &r) { if(r.getAttributeByName(a1.getName()).getValues()[j] != c) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -257,7 +262,8 @@ Relation condition(vector input, Relation &r) { if(r.getAttributeByName(a1.getName()).getValues()[j] == c) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -275,7 +281,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) < stoi(c)) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -299,7 +306,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) > stoi(c)) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -324,7 +332,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) <= stoi(c)) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -349,7 +358,8 @@ Relation condition(vector input, Relation &r) { if(stoi(r.getAttributeByName(a1.getName()).getValues()[j]) >= stoi(c)) { - rfinal.removeTuple(j); + rfinal.removeTuple(j - offset); + offset += 1; } } } @@ -362,8 +372,21 @@ Relation condition(vector input, Relation &r) } } } + if(input[0] == "&&") + { + input.erase(input.begin()); + Relation rtemp = rfinal; + rfinal = condition(input, rtemp, engine); + } + else if(input[0] == "||") + { + input.erase(input.begin()); + Relation rtemp = rfinal; + Relation rtemp2 = condition(input, r, engine); + rfinal = engine.setUnion(rtemp, rtemp2); + } return rfinal; - } + //} } tuple, Relation> expression(vector input, DBEngine &engine) @@ -390,13 +413,13 @@ tuple, Relation> expression(vector input, DBEngine &engin input.erase(input.begin()); if(engine.isRelation(input[0])) { - r = condition(s, engine.getTableFromName(input[0])); + r = condition(s, engine.getTableFromName(input[0]), engine); input.erase(input.begin()); } else if(input[0] == "(") { tuple, Relation> t = expression(input, engine); - r = condition(s, get<1>(t)); + r = condition(s, get<1>(t), engine); input.erase(input.begin()); } } diff --git a/Relation.cpp b/Relation.cpp index bf32b20..18a1277 100755 --- a/Relation.cpp +++ b/Relation.cpp @@ -92,8 +92,6 @@ void Relation::display(){ } void Relation::insertTuple(vector tuple){ - cout << name << " " << size << endl; - cout << tuple.size() << endl; if (tuple.size() != this->size) { cout << "Failure to insert: the sizes do not match."; } diff --git a/test b/test index 9b3ff7fc837493d5c1dded1a6d69312824afaf5c..e09c20601db92f911208fdcc07af0793b2ac0b40 100755 GIT binary patch delta 74393 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
MaGG&5$b!qPXZ^i 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
a8ej9!oSR?8owBU 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 v2; v2.push_back(att4); From 0504ce7fea8a8fdae985340a162ef4ee8efa243f Mon Sep 17 00:00:00 2001 From: Alexander Huddleston Date: Tue, 29 Sep 2015 23:51:50 -0500 Subject: [PATCH 182/186] Almost finished implementing Update command fully. --- Attribute.cpp | 5 +++++ Attribute.h | 1 + DBAppV2.cpp | 3 ++- Parser.cpp | 33 +++++++++++++++++++++++++++++---- test | Bin 212279 -> 212489 bytes 5 files changed, 37 insertions(+), 5 deletions(-) diff --git a/Attribute.cpp b/Attribute.cpp index a2ae7f6..dad5d6a 100755 --- a/Attribute.cpp +++ b/Attribute.cpp @@ -52,6 +52,11 @@ void Attribute::setName(string s){ name = s; } +void Attribute::setValue(string s, int index) +{ + values[index] = s; +} + string Attribute::getType(){ return type; } diff --git a/Attribute.h b/Attribute.h index 72b97d6..46bd0b3 100755 --- a/Attribute.h +++ b/Attribute.h @@ -22,6 +22,7 @@ public: vector getValues(); string getName(); void setName(string s); + void setValue(string s, int index); string getType(); bool isKey(); int getSize(); diff --git a/DBAppV2.cpp b/DBAppV2.cpp index a66537a..3b96c2b 100644 --- a/DBAppV2.cpp +++ b/DBAppV2.cpp @@ -2,7 +2,7 @@ using namespace std; - +/* void yourAccount() { @@ -123,3 +123,4 @@ int main() else {cout<<"oops";} } +*/ \ No newline at end of file diff --git a/Parser.cpp b/Parser.cpp index 61272d7..d665816 100644 --- a/Parser.cpp +++ b/Parser.cpp @@ -1019,14 +1019,18 @@ vector insertCMD(vector input, DBEngine &engine) vector updateCMD(vector input, DBEngine &engine) { - PRelation r(input[0]); + Relation r = engine.getTableFromName(input[0]); + Relation rcond("TEMP"); + Relation rfinal("TEMP"); input.erase(input.begin()); if(input[0] == "SET") { input.erase(input.begin()); + vector a = r.getAttributes(); + //parse out ( and send everything until ) into an Expression vector if(input[0] == "(") { @@ -1043,8 +1047,6 @@ vector updateCMD(vector input, DBEngine &engine) while(input[0] != ")") { temp.setPAttributeName(input[0]); - a.push_back(temp); - temp.setPAttributeName("~"); input.erase(input.begin()); @@ -1053,6 +1055,15 @@ vector updateCMD(vector input, DBEngine &engine) input.erase(input.begin()); s.push_back(input[0]); + + if(input[0].at(0) == '\"') + { + s.push_back(input[0].substr(1, input[0].find_last_of("\""))); + } + else + { + s.push_back(input[0]); + } } else @@ -1064,15 +1075,20 @@ vector updateCMD(vector input, DBEngine &engine) { input.erase(input.begin()); } + + a.push_back(temp); + temp.setPAttributeName("~"); } + } if(input[0] == "WHERE") { + vector s; if(input[0] == "(") { //PCondition c; - + /* PComparison c; POperand oops1; POperand oops2; @@ -1091,7 +1107,16 @@ vector updateCMD(vector input, DBEngine &engine) c.setPComparison(oops1.getPOperand(), op.getPOp(), oops2.getPOperand()); } + */ + input.erase(input.begin()); + while(input[0] != ")") + { + s.push_back(input[0]); + input.erase(input.begin()); + } + rcond = condition(s, r, engine); } + } // send update command to DBEngine diff --git a/test b/test index e09c20601db92f911208fdcc07af0793b2ac0b40..8833e9b6fec9a24bf4de26d5bef7e7d913b6c5fd 100755 GIT binary patch literal 212489 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