From c7b793ef44dd2cf7da34f21e0df08df9ff00a1e5 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 5 Jun 2014 13:59:18 +0900 Subject: [PATCH 001/127] Finallygit checkout -b hot-kyubu-master! got perl to use crypto stuff --- ...fig-x86_64-linux-gnu-thread-multi-5.014002 | 14 +++++ .../lib/auto/coin_pl_2dd4/coin_pl_2dd4.inl | 22 ++++++++ .../lib/auto/coin_pl_2dd4/coin_pl_2dd4.so | Bin 0 -> 46777 bytes .../lib/auto/coin_pl_3b78/coin_pl_3b78.inl | 22 ++++++++ .../lib/auto/coin_pl_3b78/coin_pl_3b78.so | Bin 0 -> 46777 bytes .../lib/auto/coin_pl_4131/coin_pl_4131.inl | 22 ++++++++ .../lib/auto/coin_pl_4131/coin_pl_4131.so | Bin 0 -> 53472 bytes .../lib/auto/coin_pl_7c0e/coin_pl_7c0e.inl | 22 ++++++++ .../lib/auto/coin_pl_7c0e/coin_pl_7c0e.so | Bin 0 -> 53472 bytes .../lib/auto/coin_pl_7edb/coin_pl_7edb.inl | 22 ++++++++ .../lib/auto/coin_pl_7edb/coin_pl_7edb.so | Bin 0 -> 52939 bytes .../lib/auto/coin_pl_82b8/coin_pl_82b8.inl | 22 ++++++++ .../lib/auto/coin_pl_82b8/coin_pl_82b8.so | Bin 0 -> 52939 bytes .../lib/auto/coin_pl_9c2b/coin_pl_9c2b.inl | 22 ++++++++ .../lib/auto/coin_pl_9c2b/coin_pl_9c2b.so | Bin 0 -> 49867 bytes .../lib/auto/coin_pl_a280/coin_pl_a280.inl | 22 ++++++++ .../lib/auto/coin_pl_a280/coin_pl_a280.so | Bin 0 -> 53318 bytes .../lib/auto/coin_pl_b5ed/coin_pl_b5ed.inl | 22 ++++++++ .../lib/auto/coin_pl_b5ed/coin_pl_b5ed.so | Bin 0 -> 52939 bytes .../lib/auto/coin_pl_c66a/coin_pl_c66a.inl | 22 ++++++++ .../lib/auto/coin_pl_c66a/coin_pl_c66a.so | Bin 0 -> 53318 bytes .../lib/auto/coin_pl_d09a/coin_pl_d09a.inl | 22 ++++++++ .../lib/auto/coin_pl_d09a/coin_pl_d09a.so | Bin 0 -> 49867 bytes .../lib/auto/coin_pl_e739/coin_pl_e739.inl | 22 ++++++++ .../lib/auto/coin_pl_e739/coin_pl_e739.so | Bin 0 -> 49739 bytes .../lib/auto/coin_pl_f166/coin_pl_f166.inl | 22 ++++++++ .../lib/auto/coin_pl_f166/coin_pl_f166.so | Bin 0 -> 53318 bytes library/test/coin.pl | 50 ++++++++++++++++++ ...fig-x86_64-linux-gnu-thread-multi-5.014002 | 14 +++++ .../_Inline/lib/auto/coin_pl_5009/.packlist | 1 + .../lib/auto/coin_pl_5009/coin_pl_5009.inl | 22 ++++++++ .../lib/auto/coin_pl_5009/coin_pl_5009.so | Bin 0 -> 54148 bytes scripts/coin.pl | 34 ++++++++++++ 33 files changed, 421 insertions(+) create mode 100644 library/test/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 create mode 100644 library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_7c0e/coin_pl_7c0e.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_7c0e/coin_pl_7c0e.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_7edb/coin_pl_7edb.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_7edb/coin_pl_7edb.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.so create mode 100644 library/test/_Inline/lib/auto/coin_pl_f166/coin_pl_f166.inl create mode 100755 library/test/_Inline/lib/auto/coin_pl_f166/coin_pl_f166.so create mode 100644 library/test/coin.pl create mode 100644 scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 create mode 100644 scripts/_Inline/lib/auto/coin_pl_5009/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so create mode 100644 scripts/coin.pl diff --git a/library/test/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 b/library/test/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 new file mode 100644 index 00000000..e053a0cf --- /dev/null +++ b/library/test/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 @@ -0,0 +1,14 @@ +version : 0.5 +languages : % + C : C + Foo : Foo + foo : Foo +types : % + C : compiled + Foo : interpreted +modules : % + C : Inline::C + Foo : Inline::Foo +suffixes : % + C : so + Foo : foo diff --git a/library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.inl b/library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.inl new file mode 100644 index 00000000..b641212b --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.inl @@ -0,0 +1,22 @@ +md5 : 2dd4c93126bdc1bb0cf161f3514bbc2e +name : coin_pl_2dd4 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:21:09 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.so b/library/test/_Inline/lib/auto/coin_pl_2dd4/coin_pl_2dd4.so new file mode 100755 index 0000000000000000000000000000000000000000..4560771fb36b53a285b5815949608cd6f491b5cc GIT binary patch literal 46777 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 L-`Z4g$K&-M9}eXM literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.inl b/library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.inl new file mode 100644 index 00000000..67c3b7d1 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.inl @@ -0,0 +1,22 @@ +md5 : 3b78b6fd3f0bbb286fcce3d8c6fbd9a3 +name : coin_pl_3b78 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:22:04 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.so b/library/test/_Inline/lib/auto/coin_pl_3b78/coin_pl_3b78.so new file mode 100755 index 0000000000000000000000000000000000000000..6f83d2f5b9ad839418dfeaa40815f2395fec7e35 GIT binary patch literal 46777 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 S9_SnBgG$kSZ4>#XZS6mE!Sp=< literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.inl b/library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.inl new file mode 100644 index 00000000..b08e62c8 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.inl @@ -0,0 +1,22 @@ +md5 : 4131b8db5a8c3b5d54f03caf45113c7d +name : coin_pl_4131 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:30:25 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.so b/library/test/_Inline/lib/auto/coin_pl_4131/coin_pl_4131.so new file mode 100755 index 0000000000000000000000000000000000000000..39004dd9a2d7302e1cb07a1a536c70a0133cd99f GIT binary patch literal 53472 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
{L>VSqepqyaj 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 V4mh}d-Ls?IH8!}C$69`>>3?Erm%ac1 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.inl b/library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.inl new file mode 100644 index 00000000..d82c5736 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.inl @@ -0,0 +1,22 @@ +md5 : 82b82b818080f258827064c2dce8a274 +name : coin_pl_82b8 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:49:18 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.so b/library/test/_Inline/lib/auto/coin_pl_82b8/coin_pl_82b8.so new file mode 100755 index 0000000000000000000000000000000000000000..529099aa98c9bdba8f013e5b97eee1617c09b901 GIT binary patch literal 52939 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 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.inl b/library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.inl new file mode 100644 index 00000000..c37df678 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.inl @@ -0,0 +1,22 @@ +md5 : 9c2bacb898bf238242d44d2a35d9a0cb +name : coin_pl_9c2b +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:28:06 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.so b/library/test/_Inline/lib/auto/coin_pl_9c2b/coin_pl_9c2b.so new file mode 100755 index 0000000000000000000000000000000000000000..6d9a9d7e8b1ac6784df35c88cea762cefec7807e GIT binary patch literal 49867 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 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.inl b/library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.inl new file mode 100644 index 00000000..9c9cac86 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.inl @@ -0,0 +1,22 @@ +md5 : a280c3b52f126ee0896fa4b348e17768 +name : coin_pl_a280 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:51:21 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.so b/library/test/_Inline/lib/auto/coin_pl_a280/coin_pl_a280.so new file mode 100755 index 0000000000000000000000000000000000000000..68dbfeccaed0f7d98dd09a5505d024c916daaa31 GIT binary patch literal 53318 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%0ABLr-t6^nX-ia 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 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.inl b/library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.inl new file mode 100644 index 00000000..defc8156 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.inl @@ -0,0 +1,22 @@ +md5 : b5ed121fef10d3c55effe973751f7fc2 +name : coin_pl_b5ed +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:32:39 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.so b/library/test/_Inline/lib/auto/coin_pl_b5ed/coin_pl_b5ed.so new file mode 100755 index 0000000000000000000000000000000000000000..c3f4311e86b0e8068ab21978f66fc76453bf9c16 GIT binary patch literal 52939 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�J1H<>aT?WSu6ED=M?j2Rkv#gp)+j7r0tcmy_+ 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 KrRei(NB;vJ>yP08 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.inl b/library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.inl new file mode 100644 index 00000000..171835c8 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.inl @@ -0,0 +1,22 @@ +md5 : c66a53c4e39559d59be97496a37bb7f6 +name : coin_pl_c66a +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:33:37 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.so b/library/test/_Inline/lib/auto/coin_pl_c66a/coin_pl_c66a.so new file mode 100755 index 0000000000000000000000000000000000000000..b6900a395f4c797ee5884eb39850ef918089a23a GIT binary patch literal 53318 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�@=Hi>?M1i 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 bq&Ge(FvhuvsI!~)l*h>CT?&}X4@CVJtp2yE literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.inl b/library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.inl new file mode 100644 index 00000000..dbb01a73 --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.inl @@ -0,0 +1,22 @@ +md5 : d09a23b430c97be0223f38db495ff72b +name : coin_pl_d09a +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:29:03 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.so b/library/test/_Inline/lib/auto/coin_pl_d09a/coin_pl_d09a.so new file mode 100755 index 0000000000000000000000000000000000000000..85e78e164a6126e2300639f60863f3ad528db183 GIT binary patch literal 49867 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 literal 0 HcmV?d00001 diff --git a/library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.inl b/library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.inl new file mode 100644 index 00000000..c3a8602c --- /dev/null +++ b/library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.inl @@ -0,0 +1,22 @@ +md5 : e7397c6bbd98e7987ddf3c827ad53c95 +name : coin_pl_e739 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 00:23:23 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.so b/library/test/_Inline/lib/auto/coin_pl_e739/coin_pl_e739.so new file mode 100755 index 0000000000000000000000000000000000000000..788ac41838b59523d26047cac33c8b26c321da85 GIT binary patch literal 49739 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 Config => INC => '-I/home/joeldejesus/Workspace/cbitcoin/library/include', + LIBS => '-lCBHDKeys -lopenssl/ssl -lopenssl/ripemd -lopenssl/rand'; + use Inline C; + +print "My Life", generateWIF(2),"\n"; + +__END__ +__C__ +#include +#include +#include +#include +#include +#include "CBAddress.h" +#include "CBHDKeys.h" + + + +void getLine(char * ptr); +void getLine(char * ptr) { +int c; +int len = 30; + for(;;) { + c = fgetc(stdin); + if(c == EOF) + break; + if(--len == 0) + break; +*ptr = c; + if(c == '\n') + break; +ptr++; + } +*ptr = 0; +} + +int generateWIF(int num) { + num = 1; + //CBKeyPair *key = CBNewKeyPair(true); + EC_GROUP * group = EC_GROUP_new_by_curve_name(NID_secp256k1); + return num; +} + + +int change(SV* var1, SV* var2) { + sv_setpvn(var1, "Perl Rocks!", 11); + sv_setpvn(var2, "Inline Rules!", 13); + return 1; +} diff --git a/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 b/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 new file mode 100644 index 00000000..e053a0cf --- /dev/null +++ b/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 @@ -0,0 +1,14 @@ +version : 0.5 +languages : % + C : C + Foo : Foo + foo : Foo +types : % + C : compiled + Foo : interpreted +modules : % + C : Inline::C + Foo : Inline::Foo +suffixes : % + C : so + Foo : foo diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/.packlist b/scripts/_Inline/lib/auto/coin_pl_5009/.packlist new file mode 100644 index 00000000..8683514c --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_5009/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl b/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl new file mode 100644 index 00000000..0c94d58a --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl @@ -0,0 +1,22 @@ +md5 : 5009f221c2067a119d4dbeeef0f38349 +name : coin_pl_5009 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 5 13:58:42 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so b/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so new file mode 100755 index 0000000000000000000000000000000000000000..a0d81561b9d359d6274e2c54f0640f0257ecd155 GIT binary patch literal 54148 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 Xg72E;T=K_EqBpg@isve9+=TxDvNDD{ literal 0 HcmV?d00001 diff --git a/scripts/coin.pl b/scripts/coin.pl new file mode 100644 index 00000000..80b4d5a8 --- /dev/null +++ b/scripts/coin.pl @@ -0,0 +1,34 @@ + #use Inline C; + use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' + ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' +# ,LD => 'gcc -Wl,-rpath=../bin' + ,CLEAN_AFTER_BUILD => 0 + ,BUILD_NOISY => 1 ; + +print "9 + 16 = ", add(9, 16), "\n"; +print "9 - 16 = ", subtract(9, 16), "\n"; +print "WIF:".createWIF(2)."\n"; + + use Inline C => <<'END_OF_C_CODE'; + +#include +#include +#include +#include + + +int createWIF(int arg){ + CBHDKey * newKey = CBNewHDKey(false); + return arg; +} + +int add(int x, int y) { + return x + y; +} + +int subtract(int x, int y) { + return x - y; +} + + +END_OF_C_CODE From 71c43ce24db3d7d2764ddabc5d4a92f85fdbd1a2 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 5 Jun 2014 14:44:16 +0900 Subject: [PATCH 002/127] can now generate WIF --- .../{coin_pl_5009 => coin_pl_2a81}/.packlist | 2 +- .../coin_pl_2a81.inl} | 6 ++-- .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 0 -> 56177 bytes .../lib/auto/coin_pl_5009/coin_pl_5009.so | Bin 54148 -> 0 bytes scripts/coin.pl | 28 ++++++++++++++---- 5 files changed, 26 insertions(+), 10 deletions(-) rename scripts/_Inline/lib/auto/{coin_pl_5009 => coin_pl_2a81}/.packlist (70%) rename scripts/_Inline/lib/auto/{coin_pl_5009/coin_pl_5009.inl => coin_pl_2a81/coin_pl_2a81.inl} (82%) create mode 100755 scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so delete mode 100755 scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/.packlist b/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist similarity index 70% rename from scripts/_Inline/lib/auto/coin_pl_5009/.packlist rename to scripts/_Inline/lib/auto/coin_pl_2a81/.packlist index 8683514c..670221dd 100644 --- a/scripts/_Inline/lib/auto/coin_pl_5009/.packlist +++ b/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist @@ -1 +1 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl similarity index 82% rename from scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl rename to scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl index 0c94d58a..5619075f 100644 --- a/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.inl +++ b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl @@ -1,10 +1,10 @@ -md5 : 5009f221c2067a119d4dbeeef0f38349 -name : coin_pl_5009 +md5 : 2a81306732376d1bc2ce778db69819a9 +name : coin_pl_2a81 version : "" language : C language_id : C installed : 0 -date_compiled : Thu Jun 5 13:58:42 2014 +date_compiled : Thu Jun 5 14:43:02 2014 inline_version : 0.5 ILSM : % module : Inline::C diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..aa9cd81344777f02a242b094510dffb24b8a2f55 GIT binary patch literal 56177 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so b/scripts/_Inline/lib/auto/coin_pl_5009/coin_pl_5009.so deleted file mode 100755 index a0d81561b9d359d6274e2c54f0640f0257ecd155..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 54148 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 Xg72E;T=K_EqBpg@isve9+=TxDvNDD{ diff --git a/scripts/coin.pl b/scripts/coin.pl index 80b4d5a8..bcb21df7 100644 --- a/scripts/coin.pl +++ b/scripts/coin.pl @@ -10,16 +10,32 @@ print "WIF:".createWIF(2)."\n"; use Inline C => <<'END_OF_C_CODE'; - +#include +#include +#include +#include +#include #include #include #include #include - - -int createWIF(int arg){ - CBHDKey * newKey = CBNewHDKey(false); - return arg; +#include +#include + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + //CBReleaseObject(key); + //CBReleaseObject(address); + +// return (int) 1; } int add(int x, int y) { From 826cde98f9553a526bee3c94136f6fd7882475ca Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 16 Jun 2014 14:04:29 +0900 Subject: [PATCH 003/127] turning this into CPAN module --- .../{coin_pl_2a81 => coin_pl_00bf}/.packlist | 2 +- .../coin_pl_00bf.inl} | 6 +- .../lib/auto/coin_pl_00bf/coin_pl_00bf.so | Bin 0 -> 83220 bytes .../_Inline/lib/auto/coin_pl_0777/.packlist | 1 + .../lib/auto/coin_pl_0777/coin_pl_0777.inl | 22 +++ .../lib/auto/coin_pl_0777/coin_pl_0777.so | Bin 0 -> 74611 bytes .../_Inline/lib/auto/coin_pl_07ff/.packlist | 1 + .../lib/auto/coin_pl_07ff/coin_pl_07ff.inl | 22 +++ .../lib/auto/coin_pl_07ff/coin_pl_07ff.so | Bin 0 -> 66862 bytes .../_Inline/lib/auto/coin_pl_0bec/.packlist | 1 + .../lib/auto/coin_pl_0bec/coin_pl_0bec.inl | 22 +++ .../lib/auto/coin_pl_0bec/coin_pl_0bec.so | Bin 0 -> 63948 bytes .../_Inline/lib/auto/coin_pl_0ee3/.packlist | 1 + .../lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl | 22 +++ .../lib/auto/coin_pl_0ee3/coin_pl_0ee3.so | Bin 0 -> 63240 bytes .../_Inline/lib/auto/coin_pl_24d8/.packlist | 1 + .../lib/auto/coin_pl_24d8/coin_pl_24d8.inl | 22 +++ .../lib/auto/coin_pl_24d8/coin_pl_24d8.so | Bin 0 -> 63802 bytes .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 56177 -> 0 bytes .../_Inline/lib/auto/coin_pl_2bd8/.packlist | 1 + .../lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl | 22 +++ .../lib/auto/coin_pl_2bd8/coin_pl_2bd8.so | Bin 0 -> 66852 bytes .../_Inline/lib/auto/coin_pl_3698/.packlist | 1 + .../lib/auto/coin_pl_3698/coin_pl_3698.inl | 22 +++ .../lib/auto/coin_pl_3698/coin_pl_3698.so | Bin 0 -> 63826 bytes .../_Inline/lib/auto/coin_pl_3863/.packlist | 1 + .../lib/auto/coin_pl_3863/coin_pl_3863.inl | 22 +++ .../lib/auto/coin_pl_3863/coin_pl_3863.so | Bin 0 -> 66846 bytes .../_Inline/lib/auto/coin_pl_3cc2/.packlist | 1 + .../lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl | 22 +++ .../lib/auto/coin_pl_3cc2/coin_pl_3cc2.so | Bin 0 -> 63280 bytes .../_Inline/lib/auto/coin_pl_3d73/.packlist | 1 + .../lib/auto/coin_pl_3d73/coin_pl_3d73.inl | 22 +++ .../lib/auto/coin_pl_3d73/coin_pl_3d73.so | Bin 0 -> 63360 bytes .../_Inline/lib/auto/coin_pl_45c0/.packlist | 1 + .../lib/auto/coin_pl_45c0/coin_pl_45c0.inl | 22 +++ .../lib/auto/coin_pl_45c0/coin_pl_45c0.so | Bin 0 -> 63802 bytes .../_Inline/lib/auto/coin_pl_50e3/.packlist | 1 + .../lib/auto/coin_pl_50e3/coin_pl_50e3.inl | 22 +++ .../lib/auto/coin_pl_50e3/coin_pl_50e3.so | Bin 0 -> 64094 bytes .../_Inline/lib/auto/coin_pl_5230/.packlist | 1 + .../lib/auto/coin_pl_5230/coin_pl_5230.inl | 22 +++ .../lib/auto/coin_pl_5230/coin_pl_5230.so | Bin 0 -> 68921 bytes .../_Inline/lib/auto/coin_pl_55b0/.packlist | 1 + .../lib/auto/coin_pl_55b0/coin_pl_55b0.inl | 22 +++ .../lib/auto/coin_pl_55b0/coin_pl_55b0.so | Bin 0 -> 66852 bytes .../_Inline/lib/auto/coin_pl_585b/.packlist | 1 + .../lib/auto/coin_pl_585b/coin_pl_585b.inl | 22 +++ .../lib/auto/coin_pl_585b/coin_pl_585b.so | Bin 0 -> 66852 bytes .../_Inline/lib/auto/coin_pl_6939/.packlist | 1 + .../lib/auto/coin_pl_6939/coin_pl_6939.inl | 22 +++ .../lib/auto/coin_pl_6939/coin_pl_6939.so | Bin 0 -> 75971 bytes .../_Inline/lib/auto/coin_pl_6ca2/.packlist | 1 + .../lib/auto/coin_pl_6ca2/coin_pl_6ca2.inl | 22 +++ .../lib/auto/coin_pl_6ca2/coin_pl_6ca2.so | Bin 0 -> 73792 bytes .../_Inline/lib/auto/coin_pl_6f7b/.packlist | 1 + .../lib/auto/coin_pl_6f7b/coin_pl_6f7b.inl | 22 +++ .../lib/auto/coin_pl_6f7b/coin_pl_6f7b.so | Bin 0 -> 63408 bytes .../_Inline/lib/auto/coin_pl_7152/.packlist | 1 + .../lib/auto/coin_pl_7152/coin_pl_7152.inl | 22 +++ .../lib/auto/coin_pl_7152/coin_pl_7152.so | Bin 0 -> 74259 bytes .../_Inline/lib/auto/coin_pl_8011/.packlist | 1 + .../lib/auto/coin_pl_8011/coin_pl_8011.inl | 22 +++ .../lib/auto/coin_pl_8011/coin_pl_8011.so | Bin 0 -> 68914 bytes .../_Inline/lib/auto/coin_pl_802f/.packlist | 1 + .../lib/auto/coin_pl_802f/coin_pl_802f.inl | 22 +++ .../lib/auto/coin_pl_802f/coin_pl_802f.so | Bin 0 -> 63690 bytes .../_Inline/lib/auto/coin_pl_807c/.packlist | 1 + .../lib/auto/coin_pl_807c/coin_pl_807c.inl | 22 +++ .../lib/auto/coin_pl_807c/coin_pl_807c.so | Bin 0 -> 66734 bytes .../_Inline/lib/auto/coin_pl_8367/.packlist | 1 + .../lib/auto/coin_pl_8367/coin_pl_8367.inl | 22 +++ .../lib/auto/coin_pl_8367/coin_pl_8367.so | Bin 0 -> 62515 bytes .../_Inline/lib/auto/coin_pl_97c1/.packlist | 1 + .../lib/auto/coin_pl_97c1/coin_pl_97c1.inl | 22 +++ .../lib/auto/coin_pl_97c1/coin_pl_97c1.so | Bin 0 -> 63360 bytes .../_Inline/lib/auto/coin_pl_9baf/.packlist | 1 + .../lib/auto/coin_pl_9baf/coin_pl_9baf.inl | 22 +++ .../lib/auto/coin_pl_9baf/coin_pl_9baf.so | Bin 0 -> 63690 bytes .../_Inline/lib/auto/coin_pl_d4d2/.packlist | 1 + .../lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl | 22 +++ .../lib/auto/coin_pl_d4d2/coin_pl_d4d2.so | Bin 0 -> 69065 bytes .../_Inline/lib/auto/coin_pl_d648/.packlist | 1 + .../lib/auto/coin_pl_d648/coin_pl_d648.inl | 22 +++ .../lib/auto/coin_pl_d648/coin_pl_d648.so | Bin 0 -> 74107 bytes .../_Inline/lib/auto/coin_pl_d6d0/.packlist | 1 + .../lib/auto/coin_pl_d6d0/coin_pl_d6d0.inl | 22 +++ .../lib/auto/coin_pl_d6d0/coin_pl_d6d0.so | Bin 0 -> 66445 bytes .../_Inline/lib/auto/coin_pl_d7de/.packlist | 1 + .../lib/auto/coin_pl_d7de/coin_pl_d7de.inl | 22 +++ .../lib/auto/coin_pl_d7de/coin_pl_d7de.so | Bin 0 -> 67010 bytes .../_Inline/lib/auto/coin_pl_e36e/.packlist | 1 + .../lib/auto/coin_pl_e36e/coin_pl_e36e.inl | 22 +++ .../lib/auto/coin_pl_e36e/coin_pl_e36e.so | Bin 0 -> 75063 bytes .../_Inline/lib/auto/coin_pl_e3e3/.packlist | 1 + .../lib/auto/coin_pl_e3e3/coin_pl_e3e3.inl | 22 +++ .../lib/auto/coin_pl_e3e3/coin_pl_e3e3.so | Bin 0 -> 66884 bytes .../_Inline/lib/auto/coin_pl_f8b9/.packlist | 1 + .../lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl | 22 +++ .../lib/auto/coin_pl_f8b9/coin_pl_f8b9.so | Bin 0 -> 66852 bytes scripts/coin.pl | 152 ++++++++++++++++-- 101 files changed, 876 insertions(+), 20 deletions(-) rename scripts/_Inline/lib/auto/{coin_pl_2a81 => coin_pl_00bf}/.packlist (70%) rename scripts/_Inline/lib/auto/{coin_pl_2a81/coin_pl_2a81.inl => coin_pl_00bf/coin_pl_00bf.inl} (82%) create mode 100755 scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_0777/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_07ff/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_0bec/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_24d8/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so delete mode 100755 scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_3698/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_3863/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_3d73/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_45c0/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_50e3/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_5230/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_55b0/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_55b0/coin_pl_55b0.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_55b0/coin_pl_55b0.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_585b/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_6939/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_6ca2/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_6ca2/coin_pl_6ca2.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_6ca2/coin_pl_6ca2.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_6f7b/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_6f7b/coin_pl_6f7b.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_6f7b/coin_pl_6f7b.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_7152/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_8011/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_802f/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_807c/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_8367/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_97c1/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_9baf/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_d648/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_d648/coin_pl_d648.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_d648/coin_pl_d648.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_d6d0/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_d6d0/coin_pl_d6d0.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_d6d0/coin_pl_d6d0.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_d7de/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_e36e/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_e36e/coin_pl_e36e.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_e36e/coin_pl_e36e.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_e3e3/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_e3e3/coin_pl_e3e3.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_e3e3/coin_pl_e3e3.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist b/scripts/_Inline/lib/auto/coin_pl_00bf/.packlist similarity index 70% rename from scripts/_Inline/lib/auto/coin_pl_2a81/.packlist rename to scripts/_Inline/lib/auto/coin_pl_00bf/.packlist index 670221dd..02276254 100644 --- a/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist +++ b/scripts/_Inline/lib/auto/coin_pl_00bf/.packlist @@ -1 +1 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl b/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl similarity index 82% rename from scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl rename to scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl index 5619075f..321abda0 100644 --- a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl +++ b/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl @@ -1,10 +1,10 @@ -md5 : 2a81306732376d1bc2ce778db69819a9 -name : coin_pl_2a81 +md5 : 00bf4c3ae70ddc470649402dcb77ccbe +name : coin_pl_00bf version : "" language : C language_id : C installed : 0 -date_compiled : Thu Jun 5 14:43:02 2014 +date_compiled : Thu Jun 12 12:39:46 2014 inline_version : 0.5 ILSM : % module : Inline::C diff --git a/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so b/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so new file mode 100755 index 0000000000000000000000000000000000000000..63c885156934d1c20ef03ee27cba2997443f14e5 GIT binary patch literal 83220 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 SZ}5o>PPj5O>|JUM4z_|5yg|K9t&%cpbed+OAw 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist b/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist new file mode 100644 index 00000000..c4a7828d --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl b/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl new file mode 100644 index 00000000..11ae1331 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl @@ -0,0 +1,22 @@ +md5 : 07ffabd2186e6ee2fbd72354380a350f +name : coin_pl_07ff +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:01:00 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so b/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so new file mode 100755 index 0000000000000000000000000000000000000000..0fbfd214958da3dfd98596672eda7b987d4ce002 GIT binary patch literal 66862 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 aHBX<$+bfcB>c+8$1DG5rzb-7k+WmiK9|Lm$ literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist b/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist new file mode 100644 index 00000000..3d9ce433 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl b/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl new file mode 100644 index 00000000..0ff96c57 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl @@ -0,0 +1,22 @@ +md5 : 0bec5a00f07da95d558db4e4d542d4df +name : coin_pl_0bec +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 17:06:19 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so b/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so new file mode 100755 index 0000000000000000000000000000000000000000..759175b2840c7d5e37bd67c26603f711e6d53e5c GIT binary patch literal 63948 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 ReBzg`CKZZLZt_pr{tt8-I-&po literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist b/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist new file mode 100644 index 00000000..6af1f779 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl b/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl new file mode 100644 index 00000000..d0f733d3 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl @@ -0,0 +1,22 @@ +md5 : 0ee3692e7aed114eeba1f7c630d51062 +name : coin_pl_0ee3 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:54:11 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so b/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so new file mode 100755 index 0000000000000000000000000000000000000000..79a4decafd7fa4d0873c96de7c5ae762238ee4b1 GIT binary patch literal 63240 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 R-4nk)HI6Snbjd#;`#&JwUFQG* literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist b/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist new file mode 100644 index 00000000..e54f4cd5 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl b/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl new file mode 100644 index 00000000..ef07f6b7 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl @@ -0,0 +1,22 @@ +md5 : 24d8c80b92b8c3641f580c2e27975b18 +name : coin_pl_24d8 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 09:13:33 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so b/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so new file mode 100755 index 0000000000000000000000000000000000000000..adb0e6c5642e227e0ee1240c700c1790729b62ed GIT binary patch literal 63802 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so deleted file mode 100755 index aa9cd81344777f02a242b094510dffb24b8a2f55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56177 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist b/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist new file mode 100644 index 00000000..a54f6daf --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl b/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl new file mode 100644 index 00000000..baef6236 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl @@ -0,0 +1,22 @@ +md5 : 2bd84dbb0ec00120a5713d2e25b34009 +name : coin_pl_2bd8 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:24:36 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so b/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so new file mode 100755 index 0000000000000000000000000000000000000000..8d9f2c04215829ca43a6d433cc044f5d6ad925ec GIT binary patch literal 66852 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 S$8qeb0VWN~Zw!lXcmE$;Y7XWA literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/.packlist b/scripts/_Inline/lib/auto/coin_pl_3698/.packlist new file mode 100644 index 00000000..8bbfe59f --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3698/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl b/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl new file mode 100644 index 00000000..6ead7511 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl @@ -0,0 +1,22 @@ +md5 : 36981d9fa92e405b36a1ae7c0da6b559 +name : coin_pl_3698 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:51:23 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so b/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so new file mode 100755 index 0000000000000000000000000000000000000000..04e42facdcb3527024453e380edbd57e2b6ba2dc GIT binary patch literal 63826 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/.packlist b/scripts/_Inline/lib/auto/coin_pl_3863/.packlist new file mode 100644 index 00000000..2d3c2f69 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3863/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl b/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl new file mode 100644 index 00000000..02eb446b --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl @@ -0,0 +1,22 @@ +md5 : 3863ce08bc735615b42c2d5062f0f5d5 +name : coin_pl_3863 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 09:38:52 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so b/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so new file mode 100755 index 0000000000000000000000000000000000000000..08cde876d6c33a8796152714db3551365fca42bb GIT binary patch literal 66846 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 fSP!SZbZcmE~_%I^z{FM0nTj`r_( literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist b/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist new file mode 100644 index 00000000..5ddb5d4e --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl b/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl new file mode 100644 index 00000000..263eb82d --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl @@ -0,0 +1,22 @@ +md5 : 3cc207597329c46afe9e7aac9423fa0e +name : coin_pl_3cc2 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:54:39 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so b/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so new file mode 100755 index 0000000000000000000000000000000000000000..3e9862a6577f10a77c4d6fa11509757a10acb3b4 GIT binary patch literal 63280 zcmd4433yf2^*(&gxi?{FxI6RB1p-`h10(@LfDj^sKp0E}F)|1ac*$@ffsmxR34>!4 zK?0&Uj?3#_4vHlerb zzmBp)y2#yIR!|jCMj}1|Qy&QFa(7?oRb*DF*}Lr=)2`ICD>d!heHRI^xqG3ZMK=8G zFkL-91306zKn49CaaN^y{k59y0cVbJW$ zu=nF5@hQfq1fN`d#^b{+1)o9qjKOCJJ|poNhYz>G_!QzpJ-Jcm(fGLbW7&ze|H)V4 z>H8Vr+QqFKWezgT-nBPjIzE}EJPmsvK11=z!e=Z#?luqyN%*AVW8BECvRwZPpd<&M zJX6Dd(#EW(Zo9x@UqLWQc&+R97X-UlN8M0k`zk9pq3Qp)c`%YyZU+tJ zN7x@%q-yrV&*=-tZ||ajb~=9hJ34lva)wLrcw*q%?(8WA)ldN;?=cQHw0 zyAAqrOE>h>kE4Io(AO~0Vtd%of8UhvF^S3LllvWf*w@SxOLX;NV#Makm8N_LCk|};)VF1Exj_5uVG_l5lHOTwV6W_E%3VHIIJ|OAYfCuV zQQO`T4qM@-mZlCXyaGEbT)pVDa6_a$va%`K5oup^+RWzGmdK*oy5@+kJ8@08etj(& z)HXMr55iN|h8GwPGn;Fp(MZ&qSvfzlZf;~lO>I*VGKGLWEnW@Ds&b+mI$<%W((^pr@)!jAT)mX)Yr!Ho9y+6^e2RohW(EnOI1Q`^)M zZi%d0jixp8!X1t6VIH>OAX3{9UK#0#wngfjRy5UHHIeq_aCB{WT+`a{issst(O5|| z($Th7qctnTK(QKdUens%QQNFb>f2juSBKX}!=2IEm8J_Zt=N&6uIReyTdZhSB-+v5 zx*C^i;?U4wItu?jH&8_vIsm4$l+X3N-EjsI(o9c0l5=e@%T+-ChNXyJ@ zZQFn`$8guL4%auX4zH+fYL1z!O|^!Zs4->5EYs#%W@hEW#@cZc%E5m@Q(I(B!`SlD zSo_+BhW1D_ss=7jkp+?FNNqH7dflo>eTP<+Ll1SUYNL%>(;2-@7gX2GK5Z8Gs#oIH{$^dn(tsUX|Rt#@jb9j7x{Wz^Aj9=T3uF5zg*q4;{ z5zySaawS|lj?`6Wbbb4VwvN{L8eIS$W1(qZJ}a7G+1LgqwQnhcD2o8V4F!AHr0(;Ur`<|FB{$5)Y7?r^vae_>y&xb zl{3TRO3GqK<4PvzB!rZ8+~%%gd)Kqa5h#chd)#JQ-~CUM+E_6rs@!Z@r6|g7YQnPA zYn@@rItMgiDeAG#G0e&Dg19x2u6JVf?)j0sF77gUG#Cmhfo}P9Q(j@_6}Q~QdxmNH zM6@!ZRr|eh<*akJeR1XP+MIR!!eQ8{I{JBg;T)As&Hk%$- z&T|fTtBNb<`I)=b#Fg{>%iWg7mGivC-Im9d^L)qM8sp02?b#Mr?w&)j&HA|V`1My; zTshC9+-*x-InVvvZAVq9xRdpn;+&#}` z#nHHOo@>W86TkgX5R4UCmWV4K8dshkSDqhN9*8Rs#gzx+$_wJk3**X%#g&)Fl@E_A zuiE&&=m{gTsy03=p6RVPHsSkOLF?GCyYZbiWIB$B8%c2Z&@pVoZXxFC_V59PuO()P z9^R+$R$_+c;XMjpM(ictrSSR048_Ac6mBO@B<@mp6*0|sxJ}_YVutA9r*JYcL+|h&g&kss+~Hjcf0YT$P&>Rs;g5+KVu!mFevg=; zb+}F8zY#N}4lh^uO=5<|;TnZsCT2(+p04n3i5UuqOBMbVF+<>RP~j(t>H3G$6@G-6 zE`Qik_=m)F>BC39VgJ8R93(!Z@GZo2;ll?MzLuD-dw8G1TZ!qihxY)}&#Ja1e3Kru zsy6NGaE={N4!6VIsuw=#QX3 zNz;#uqyObmPgVD?s($(2v?}{RRrhmMfB3djwa>X*wSTz-?f=I1T~oiz2wGO>h^mcK zuSOk2cE8h+TD5KJn<(#j5GwaHqT9=!OE`c6`;%u@a4Sh0ayh!haGAQxhh`l^pxhXv zT-IXfzZJ#cb?m^h!%M*6@B)18*s<^z43(Y;P0{^KRrm8f=flcX+b<{|`D>N-Cy*aj@H{IS9d?x za|3GUb$@KQ=BobnbfIv@=d%jrbT+Em-rRGvBNL(;74f??=I<5dyzYqTS%A`QldHOa z-BZPSPh((S_ZsV*Wi!s5v24b9&lr35j6|hkhkjOVvu15;3m%?|p>pd}SP#xw;9TAP z?BPYI>-qdE6mHMC5@~2&_Xn*02de2$i`5V=gqv41z;we3m2GAf6pr23V}aG!&!G_; zc+jA#`$ITE&lV*D`v0Y8kUIQJ&nDFV;!K+CYl`ZAo^&;=+~zHyw^Vh%UDZ9aylUI5 z0)c~*d615SIXnp9V17?6T0YIdB;#iltFNX!!U3^aN@9)_I&dtRXEuZ4|^9!C-AUYQ0RB4a{X)Gwzl-cm2jZm{L%9O>){VSfe8B7ne?w4S-3r? z6w{#bugf7;`BzoOM$cxgOQjr?0;ZPEr2y#uu)?{2oXD z?Jqx5rT?qH>@Z~ilfN{_SSf#52H4kME>L!*zsyji$N9@B6dHdSs#*2%m(i-4{^G$= zufJ?keP^I@mgqb+ zQu)P)5YJRaN$U&wto*TV6rcwq_=#=jUx}KwjGT zY~b($)U4Ri*Izym%3tpL%=MSsarEE*a)m1WU;SmdAv=-3xbxSP7%Sy3qXFaRuW!%| zJ%42>!d`Dt^VheZ#=PYd9Acbe-op7S4XyS3^%`n>y=4h_!2$Q7@I={Vw<1>F;!_-y zw_J--?JZka|KHxyg-Eq}R-@AOmlMrjb6Jl8S_mCt^H(_wx97ZoS>O0e0R+48Y!(-1 z^izYA3|i>1t+2;ZqK;4g?|q^b*fx2#ySS(-`gPAMrntKPHMsxwg4d{R)i1yC%-dFW zpy#Ko-JY`?3OvrWJw2uS^PW4Dte%@xt?yLS&e#i|wq|v|r>EHmQ3Fe^Rm^j~NDN{D z=oWd{PX}P)(DpY0l9!Pih*+ z(0rp6e)nT^XXD-gPg^=hLBZEhz_hZPMLo|ew5_qC=P4Y`b32m`&Y-MC6P0iD`+V+*!x~3Jl2+YgbxCo0Y zu-4iMC1cBQIS-fgO0D>-oh9|S1l-gzX%ennl2C*Hx^%0HPk2RESM^>{Mepr_p2_E8 z&l9i%A00ck9{V5+xeI&7=RWK$WCC0!v-V+Miv4n=Xx`sCg8eS+cVLP?ggw`zyx7C@ zi0NDeU~{ik*yk^>?DgsPz|?+%&jJ*njwdxWkXb`onLbAbPEAW$C%UX@111-bFUUu! zqCuLq)??t*J&hSMeWTMRc|yr;3O)_^>_ok~w^1q6uW~A7V7q6w3|{G-AqzJr%#fuU z6Fud2vMih-gQx^ir4&^-%N&KacjI%^?JM|icA&~e&n#KvJeVv4D48L}41INo@?OPf z3*zs8kymlNyg5c*Hu~QKTV4r1R$qB*A#c|4@@9d)3TgfSjXc`;a)651MSzt2h=^YUi()bXaBqGzUD{E-p#$P>Rv~6 zYrtA?Kphzad_Wx_?6@E2ghMvbLQq=V|AaWN!7)% z=LpG-0TyxG#|g&4>$XAv!7%3XPW&AvtMiWo6Y`4v%lBuA2a*s%>H$=f7k3k zH~U265Pq{CZuaG7KgaCPH2W21zt-$GoBfSuf3MlQ_fbxnIdf95a8{(QskS9pRx+_< z+~^5K`atD!?I+sH+s?rSP3(xlR$YJv^9A2dkXNGWi^%9gq zp|kQ)nTfpNxkgpa8H&Rjc$gr(hoHOXZdLwc^w@L1I{bMMhmZ0wQS?Xu(Vvazk9QZ8 z^j2Pga_=Un?meT8hdkx6?eN;{7!>>(|w9 z5GNwhuNYtm4;`qTM6&Avl3&3=n&rK=0M)@YC`l>DaHJ=!=c84k6U7PVlRa9AwXkf$ z1ytAx33hs-8jJ)c4eyVUg03)VtA%xdKL*L!FBppckzC8h%F)bWkZ>8L=jw!sJ4DK;75w-PJ%Dr|Obaq0i zGJxnwxz9j}+FC1Rx6M&-Lg`i#$vE4pZsTUFma;tt7vIOYrOw!oTAF*^K%h!GnStPV_0}OlWxf%u7v*oMFZa#Zf$Bv_CRBXi#7Qc;=O>NYkYl%UK z?9?X1*UD;3o%Ak$D*}&3e>~v;- z2uiJIXEFzt;BXZcv69ICa~!Dw8)&6mn`T*EspBUj{zV8k3Q{L%1uW44%G7d=yyDNu zOQ{ta36Wg@w3>aO7kC{+U}`hj=Gf{cb;LfyEyzDn%)z&J34GBv7CpDT??GMP zIQo!xAR7D17^g{$(3?T2RPFL&&N3 zDU>cALuQdD-=!c5+3`C0f83@vcXbYr^W>N+(#t1l}Y%Aqg z;2g||tR|DkaH}h0rOV_!qDGg=FoZ>hao==t8^SbWm1dbOPD5B^tk#qP%U6SiWiZ3B ze+r)R5hU3RuWgvhH!;E)3AW)X|3*HECcUN0C9rEoKSK;oKZ4LeMwNYpoW6zP8K=fL z_0I>K8{>2*+$dw7%gG9yIRZ`X%-mT59lH$KJaf=BYAh}BF&JeIeo7%B#v|co2I-}Y z@Je`Y=1{t?6Ur20VWrG`vT#CK+I1HJsIfd|1%_f+AY=IMn2f?cGK%`hDDER;WFHx$ zTp9gmRWGozx_$zV1707-bN1>pt?Y*rnMDRJ#^EE0l{}n}!%h9(q-Mf<17a@k2KZfe zUD6V`z`)aM@Gwl$QPd7)&$Wzd}7!>k{U;udiG}fle zV_*t6S;4^IRLnet5bjONMPLmc29|D#?N=q5zoM~oSaL}`O*Ttz%Z+Q5#gY)h+~wm* zM~R$;Y=n~O@M0&FFW*M&#bC%9IFsF5mGlO952{E1YW$bj+3-2lKYv%B{>7l~A7Fg{ z0OR{d*tdUfNpJsRC9(d+N@D$smBjkzmh|=yCGq`>!H_J+IQTc(t5xp{{ei z3*|@@`>!ytRQ?D->c7%nu81q-WQ>x3yMa?=8{1xO51d0oPM1BH0sPn6LlvyD@~-v4 zWm=Phu$}J$7$U8k0DVTZ%D$vhIC7M4H+wm88TK9Gi0nJ zW=OZB*N`ZQH)ITk>9w3GiL=}beJ$rgW4Yh=wcLv_%QeI2a$Yj9LSB*% zc)-Bv@+1cM9}I+(%}R!;)+cR(b%t!l*N&9z%~?Z($jXo4D>rlzmM_Rg!D>Wu?g*Wm zgcygJAh$@@rHk<}f9^<)0wNU#&mE;vQ2dOj; zcM*-(Xo`3lNhWu~3yN~O5a>kiL|s=UuEpr*R%kR&_|f0oNm^cw$SVYztm~GFnaGm4 zQ#3kP9E4BhPSt3+c!v^B)~G=gAi#2GXgwRng+)L!HEI(T$i%s`G+H05UbxoEo%0B^ z_Jq1@@fIei+*4kLqMpzeJ6PRPYvnHbE8Nx-+F^@7z@)iLxuEidcG_Yn(tqw*8t!() z%}4;bXLrLWp3q*8Sc;WO?m3$CK93lU6-VxQT%CAA`#s{92!Y(X0{FNm)Z+1;H7jEPiUW44D|qB zHuDt1{a*1yy41!Os|XKx#ity{%Wob}co2fpPQ#u=@iiUc zdfkO1iDDJKC* z1iVwjUH!ytj_)pGNz~GFzW`D^DsMVh|+>#_(Xvz0Bs@fe%;-~3= z?=uddbCS4k6yU!#ye&!ih5>%S1)(RjD@k0)+7EU2cPEKuH2bF?C{}xt#P2BgvriS= zn`M}}=o?>gHt>Xgl_XAP?bo^s&m@UzriTCM+GmqQgl_hYuKjhAoYN1` zvY$DfjrS+XTE-Tytw@&)1n20xrE zUn3r9@FU6c8R9&Hf08U8CLUz)qscN#JlNo$Cd-E~`Q{EW__1X979A*P@XwOvIShi4 zY63!PN|rga?`Tv1c(U9{`;-{`M6!Ih5O|ECe==Dfq@R?U`kyDuU5xy320xW7)9Kyg z4SqUV{+j&DjD7bd%bVcnxf6`N_9x3Q6M2O_Px=3WWVwL$KFQP{OqP@ATT^W9wuh4C zM5e=&4gLrE$ML8%xF=Z-qrS6^f4rY8GZKL3*k{2kp3sqGnaTWFZN~p-viyktcB;W$ zDKfzR&oy{Uiu|1RoM-Tk6zQ=3G=q1h$hT?#`L@nxyHaE>^*_VZ?@o~~bNm+>yeCDD zVtg+#cyEe)hxS=&@V*qecqDL}!TVF>EcW+%#vTV!rR^}oR29jS5)bIgSX z?@X1S(Z4P-cvq_YH|=q;!MjuC4f(*A7Ksjr@bDvWfP(+W6n0R9T6sBllW+ zyUNBrsd600_d2y~f`6pStC>HpH~46(9H}M^gS&k4OXias4c_9D`#2NaZ0o6Shfkit zm!P*8!irhW>cJiN{xc@KPG=S}|(NLkEy-S3W{lo^cA-x&Faqhp@x|A>?Yw9jj%zn@AuivIMv!JkR_YsSYL27fN)3a$zc8vKQnzvTG6 zX^%uVpudz2^v|~p{*RQq>A!!ngQ~tOO}@Up^RB^H zrpX^uzrzOaNRx@=_nyJmr^%~A!2dGy+fLAPzWmVjpETJ{|Nh7>f?41{Y4X%`;7{xn zH9mXN2f^n`Gv91qv)josHguVJ42DyvCvDGU(w%E3_h4H z!;FtqgO8-k`{@tT(eve&4EZI;Ki$#!dPj!LWBUw)ug{RP5`nV}-kBk9r@gWbzAZz3 ztL9IGcV)NCVS4{nUbSBAWS z`5@oX3!A+evYh&a9A2(L|1#tsIUf`lygx(oG4|YHhTnk<`8EuZJKWLp^{W|j3-v8^ z%9TE^Wynonlv{4~$zZ&f)k^Gq@*1X0v{} z!ACOWVss>ThQUWO!Mn0#7xh_U@a`xTv($dUIk-XAddV2&)w0DjP!TSI*g<;X|L|Hr0(Jvs6k`pX`JkL1V- z%6r7*o1-~$2krN$$sb*Q8RhstX2$Dszx&m= z`>->}u-n?CD8a4@>^3I-mh2kIZo9`h5cV3M*Ii6juX>7f|IolC~W>9?~FLxT*% zo9|FPL3dBV75>dhk5j*uxWL~(C5&_>4k2gsPvsQP!B_{6?C&d{MkK_^$T$5Zm(#qB zQ;dP?pQc3x#J5ndf4W9_VkR<4{|q_~?lp)N*eUyhp4dfo=g6te8PCoC4KsDkm-Nd zt;TzDn_9u++K*#AuG<+u#@F@XVUXc*{X}EKyha;?(w+1znD{!-%NqYd8?G&EpY*|>VQF>xk{k8A31NpV69xbxC7%h zU6E#k0?=ciI0P(^g)Cv5NS80#HOF807&8hBqYb0TZ7D!_vS(JAi1_ zrv77Jqx`Y2QU2K1C@wTc!B6XGqsWWk(1Ew?pR4dMwDL~EIA!0MQ~)t4_rhZu2l+n3 zv9i%18Q+OP((MGtc93*C!J&0gKGxJsW=2>2c@;C-kmGf5T$FsUT)=m zfJH?1%}F*|_W`(nx5KvIEASK0xlqvGBoy1JbTKl@Vo$g^)QQT_YjxhC%}}9#VDb;$KWYnYu0@ zN{F&F3W_@tfwKRsC=10w4AKDqHwu-Cfrz33xtg*9>xTJfS=qNHJqqDNYg;y0BHQoF zM}p2jlmrcPeMc-D{{kGc13r#(ekxWW+5LUAaQ+mGMfLz67hU6J5Atnf+d9$=_WcOQmhWw(pFs9b-!e#(52GaeW}iG=bzJ_Qgtz$kEEqHU zP*^wnR;3FUJ9*C_jzV8bv;()x5D*V8x5R_lRPT6-Gh`{}V_P8VI&y-n(kthtj-j8R)@^iY)8~t?f zpeI-u2M+e5O(=5}UG9(l?gb_D@-&zv@TP$Qc?q5QEz>q=^{=k52JfkcBK;TR=wajs z9E~lv2LGgtht=c9S%V+tIZ*$_JpAco9OiYy!h`SjaFWikX=gtN4NvW?!*QMjlk5p8 zuS0N-O*Q=L%aHIUa-z5a#ff5Q5MA4ZynS#;n$5l3gT4$&R~Jn<<=hMB9Fn81!LVx& zq3saAf$8#d^mItBfdQF}R5T=DU{LZkcubBu;S|cpk(!1KFtAi^g0Y7TG_XRxkLhwq zo`KWlU=j~DuuA?O)69?|2G+=}DS$x(m&(5&%?-)7pMm~PXt{h5T^mwh^SL@F)F{7T z?QqkhHu(yBRBT{}d=*J?$SC^}SPu_V$=}1ZhLozO6?tb=rX~ZAHTP&Pv*lYDy&>c5 zm%!T-+GtC@%0Hys{)@s}Y!FULsIl@rl9LJV>*|+)Tn$|vBPDPjusj=Tt@}IS>&~@zIqbUw{fgw-O zBw`PFKB=u^iFeq8pKId?aTCIA$UeFkqbyNei3W*+Qq)s)>{s$DsAVbrLzRB!mS$Pr z8(@H7J%2oMz(Rzc?OlZLV1y^RiGqZA7ePeu5<5f^J|<~^U`^Lm3j9c&?YZKFSdm^2c5{v zxo);L3);`M0%yOY8LYNa^ZN57Oe_w9Y5;?f9G0g84Wu4?EOZFD=h06PH&&JiM7gNR z9Giu4i7LGZa)_c#s+m8B5d%@?kIZ)z0T+sy?;`J*W_w|=Ky)KHjDVOx^lBcyj1US$ zIW3~kY?3J0okVd9G))vdKS~sdIEMHxo+4=RUA^MFdc}A3itp+b-=(xx;=6jqclCx~$$HX-KbV=*!6=6|O0 zz?*x;+}tbX=3X&3_lmi>SIo`5Vs2JqQvQh4xh2%ZQ*pJl4Xuh_+J;ueFKt7s;+M8A z3W(p~6e_g3Z33evD2g!(q16{CR4C3yA_%S4JWE9`+f$6kf7RXZJfQ^d~@7opV} zO&9;cWZ_cI6626$LaQ%TJgYF2u7E3xwsD# zpNksAv}B?y6wgM{rnJ_mO|&6FhgNe`F};YOYDdjDyA*tiTpU_G86v#iJWuFyyWm|U z3{#Q^8obw#C^&4xMBoN{6HF`D`VjOts=FMVpqGJv;3fmTq`O(2dC0>^VS!s>biZV- zxYaz3<(1d4*=+_USi}E}MYIT9tCs8ewM<9X*)Jg<wQ z;C7`FRQv@p;qd+FmI&;!nMCtvlJ+k3>|6c}STgW^o8FbblcHRB&z?IGpW8@i6U+mUtGI7(>G~@`{D58^K7! z93kct6>5|&ZlT{4Y07|=vRGQy^3ce2Wced{%_ts1DJzMuP+WnJnx`ErhgUG6^f78o6R37R4Oi{Rk!#jl4ph3>;P?@ zuF!NbixGKcM4>A2CS&(1Euls{N(no*sk)^YuC>rH^-1WTD0p!(QPARW4)&-UdZ&lJ z$LE&B6EIUKsviiq#5EqE4pwkxP876`w-O!_>fDaPLYoQaulQ(pQb)`Qmbxs6=du(L zTNR)`nn)cn$o;)vr0{b%)!N*zS&(<4cwey~>9W2o6nQTTRa*xVE0xU?#m`mqF(@fi z_rYnIUJXFdf`S~IgV3kATNOXqr`WF`yJw|R*F>>PQT_EqR4B7j-^DkS$9L+`AP=9z zVWEm;4rZ@Jzv4muAo@ZPv1c6Pcp`}QEAz6Spv*(P?ia^Do)YzbLo`PbF)eTEOGF4J zJSj{Rs{!&(;yf@`-C!LiLQ|Z_P$+-EL_XE|5XTH3-wTNOrJ?bvK<4J6vP|6~U~(0l zRwkG;ev#H`g`RRAoWh1&E0f)@^w3OaWQEIjw#!$l`C^W`IRZCJt8cSHr#ROrp{dre zKxnSh7Hf4{-&XVcv^w2wCHdl4=nU0PE5H;rtSYp~DLu(m;LN_Pmh@q@G{&kLYva(_ zrZQcA%^*KVvB8DXv`Q;quN{;K}k1X2?2qg#?d^!+@kq6wIf?Dncur-^O~;6zj!xRCJYrLVk!e7+P&$ zx_k>`7ixC&3IQ*+F|VvK+60x&+f0`Wkgkf5AOTV7{Ir$DYGyxxc_lx0l(HyJoe@-@KFPNO9ZRv5a~S%YT*=1n1EG5so+@8xXu{I8U-xxP23+QP-FtC8#zt>4XC~AqjU5RP+ zW3ABr?g*vTkLyLLs>45wiBI9^Jzz+)bq{}JU_hJWL1T`*v>8_DA!E28t>}V6W#Av1 zDp+EA=n<77_|dC{-Q`q2Xi34(W0Xt|o_m7Bh<)h`nYY z5S>jeR_Jj93)0rquJ46~)cOfmHEQjG3Ts4FXrgn z+izAroNpo2Lw75;&A*s_zejmZ{{0->C)Idbc}&Qmr&Y2Za$XL8qcbh^ymJjym4#eI z>{rLk&f^);zj5wD6`q$JqAn=LFfM&3v45;pE2Gg!H46dq$TRd?hsVC%aI&4DcN{*$ zC9mYt<6U>eA{5F53i?3lz?^z3Ie%zig?x(Y9&z;QWxD(wSBW1v`tDSfd@C35V@KcO zs*$x+;}Zjy%B?}bPmSE=^3UY_nR+0D7sduN)qHMXn|vV~@C(zy_3~qO;i!QZ%EzhX zmkO#2WBF9;D`g#?rpSvpRer5R@f`v=l%oG*Fn*#XQRo#6-=e~$2`oMP*UXq@6=ZX5 z?tLCpL&2a*i|48O_C@A2_|u>?b=~Jl)DBAH#d1}BIR-29F@%Mw{tXhxptS2S8DjOo z27LcYtsWqW#3MvbwR*88|Mz|@k4{xY`J2HnXP$aBh7@PmZ-X>{2q_k5iVu*zau%t} zj8@9u(ZSMT<4&871?5fX#IQ21)8L1q8y-Gvf<}1A9j-8}yba1Aor@PS^1~)xpis7$ zgwP&Vp(z8R0An}oB#naNDz=-XQK6N>w>yKwM_o&CUX0uD5?zH`)KFyj7>$JZoTyX_ zNEcJUWcXO^D*>zcDVTYeofjFRmW33V62)&`M zOC8{G)`;;g_5zQ$MwGcYQIx`6MwE9aXnH*BPv#SstM*r2D#Yz@@(~rhH{cEJ0RA59 zPgvQv9%amBC{suW$IC^^~Z!FolP z7~+7e&I0T*#JGMA7bx23{K=t^LU|=Tv*>b1y^x7F?IP%L(G?E;5x*ZGPlb9#TMVm4 z8O5nmQMX~$CcmVhZO$3ckXN}cK=2k_>+rQ+70eHl^^GQ2aaB5l7_&Y4f+sC)`8Uk| zMYlLh&>T-1+VVY&ZPD#&)=^ibz0_1s-FVW_mOo}Uzi-;_w`B-^Sagr`3doSDZTavJ z;QNid9$WG^*ouB==#SWPE*!q-L1&qgcNEVA1cCP$d0mct3CXDFQHO8;BH1|d9?UC6 zdtLn<`5L>6SyAin$n)W=ML&1ywf>G=g-fqR&o~Tt=f^|} zIf~CaOfy=W+FT3(RGKc+p#g*@o=OQT;z3#MX`5w8R{r$5; zXNG)_tU?AWdfT+`^2*2HS4Dp@?YDSk3difOPN!JNG4(ZRr9JC`c@90w&P!dqgGpi`Nf5XyO3JO|Azfp6z!Q#C842zEc{4}J*}QHpHhAId}K^v6d4<@5JA z5Vj&6Ed3#)o-JBQTEJVKcrS-j8)bO;n@Ii<>X1JN<=>Sv2X{OQhT@J#qTuDuM3IaV z-)}Kpl=^F&s{rIgHaf%MtOc=Ycv8y0(BTy65(Y2 zC1!#S%8S9)zf^HWwt%ow7|Hh{rpcgxne(TZu=Dx|TkZ-=!!t$xI&(KWU7kA}-0BU) zYw}@4WU2pG4&PnVNL{6|fNmBwpg{x9R{zIOf{qx+B1+t7XEcG4P=?*G^s zSOp!G*w2-|`99=D|5r+#{Cy*E{H>B{`EG^B6#CzDB4{ByX|I2ofwN=*CM5s+s)~a? zhvWE>Qw<$B=7Ef7`~2Sy!|@Ey^*la@?p*1iPvn2d@|hlXCI1VK+$_&(977P_=l7ik-ZlP<)stNE zW_IZk4^P;kmVA?ncNu8QDM&K@OJfgi)g}O57JG0j9dY2_XrPdZn6CVn8<;A$vh607 zAlPY(Z8v)uuY7PT%(hn;7?eF&mif0B;zIcnVYh*$^5R6mtp--eiAc@z0f3ATAay7d= z&%i>tjB1}|;3$j+AJj_}R5kBT4$}fJj|Fnhdeg`Z3jvV)%E{}PFR1v zs%KLB^MBXt3zvMA&rgNH?$H?eH!*Tb@|){!e@AJe;G;izzk^w_xA=1A!h8?FV!`Zg zUkiYYU=5hP)#o};88~Ne^O;NN@*fD2>??iRkA>Wemf72VdKHIjJs6_1;{=N3 zkHIs@>mtQzSL*~S_{&Gd={3-pc{>S;6lZ9Qr;3DRpiG@y@tZT}fq$`|dIhe5wA+!#jn_Gq()`pC8AN<0u^E;`!-sm>Eh!cP>D8W zl}Ja{C?3Np$q7}9shEF?OLg6;Vg}JzjpmBORMWh$K2Pum;EKm};7vOT}o~ zYl05K<>E}t>BZ%GtQy5)1YPk&jaG^0;rPYoW%g$A8O&3Bl5W=~eu??Ec#`hXdJ&;6 z=GFEK#Wn2F6g`o4*`f|ZTs&37OKnkt_$fYF!^>>(3Kki~(=^;@i!+f2i>H$>&p*YF zXyF-27)_pjiXBL6#g){73s~_qYiFAEi7mFHym*#|du_3maJGi~Z1GpBF-ODwwpa(( zDn3QS1Ge}cGFNexh6io&CJk7v;UQbRp9Od-pWwv{?zR|*s4bpLGkHSq+u~LMIFBRY z34MSL(tl3V@Izai#SYHr4NknCXN$F1^cA1Zd#iXG3#_O{4KojxoQ_zJj9J|9cX$+6 zz~W-65&1;HJ&s637#6S4#(CBe-$!yOZsJ3;SROiJE#G5rLLnkX1-NsI#uQRir0D@jQ>J%+suq~aFcfRB{nHXLdP{2kh15i|hD zj@KK(sOLQi{jeZe^`GNr zbM{Ue3QE4Xu8ihbd7m(o4bLh=QKFcH?;M-&U}!BFd{*Az0+3A1TB1mn;alHjSr;Qy zw@uW&o4gyzZc-Mnf8_N`!SQUx+IJh&PtTs8^#mHFt!S~bPtW30cu*;=t)tz_uE{zA zQAm?k-UviX_8D1MgAz+sBoW*Sg*g)ipNCEqji;g)baB2UuX@2H`h8Pb$7^hf!a4)@ zgmgoSOCo2!x2A~GtTD?WIEgOBmv>ZQ5?XoGAn;*8{GP#Ve)E-LEauU=)H|}F3B)B! zvCOqfLYURu3vC;X$R?#VR=1z z>`_DiIr=bq94k1>{E=w9ZXFPJz~x7mX_N=uDbD+EbYS#^@#I)q658u>EGfXxBr6T_ zp=Zf3t$0wRVQfo=lT0tVN##8ab4|&JO+35~W*(FOG!FZfmrm@r5VI_QA-c4JhwRW< zK@8AIJC(Xa#TW!?=_Jj3f;Mk12-PqLE$M5uZO^{W3GKt7-aVF3- zj*t^7x4csjQl-=LQR)2#hhqz<$XI(GT+z-{7vtO?)I5v~>2CJeMfmf^{0VG3le6wT ze8y92JBu}&2=U|CmYp*Z@JT}aP_|{~(hP3{mOW{>UD9A#uS5C-d$B#%Dtpcp--O~1 zbg>f!`9V|uW0dEBCCHs<`2>5BJ$8b9hFvmZxxDr|oWgu$aR62)(z zL4`f50R6w#K4R#vM3UrY!;kIFXW~zA-UA1BuH}=QHhf?lPNbY`w~x21NkEexWaSO) zxNVP*w&9ph?c9v2@wg@6+`vTr51`4sOs^}KAQMjcGMSLIh-1t8W-%MUh|X=~wHqXp zTaaIz+Zq0E6FN}Lxr3=E+iO|nHSlz9sS$vVc(5@JlwD`QFp!-DA+VEkA->PB$64jK z$5EC)5)Yn=17&|OU>U5oUh!D$TnwpvCeu}+?63h<5cGq1L5lQ99BH{QCZ_6TSq9** zZd$L!+F9kZz>{IN6eSW|Zne~d_heEIeeUJti2pTXY0pl-M{TxgK^}>zg1|b zF2y*EM`p3}II_M3jC*TygJln5Jj@|f(K49Pay8(zOE3f4K}MiMrNVOZ^ccW&2HKzZI5sdaTkad&QIwMEM$1 z9#x%Q2Z6lt!L1Cnn_{(A**m7Z3gx$(a&e|rcEps|qWq_E^h1nQI#K?LTh1_6K|adV zUWM9^+*+lB7;2T5nOa73xoh4BK#Fi)iUDwT+ivOm$Yk7PBCL4!*={)RW;jb^Llw@u z8P2Bw>2Q7k0^M+afZ=>Es#G{Xz<}j5H9DMCWdp`thqJ1k+J?q|I13~kW#_U0;m{e~$xYpBeBdI_rZF+DnJC%6o|EV{zo=*{1i3 z>yS85#-B#ywhi$zPchOlJvE+at^thcb&AMHQ!&lo9O9;!uZja@odz(b?~k>!%I}FI zD*tsn_`Lx-ruTrW7h|Pk`fO14qsMlhqeulIF%gerFFj2Oh;))mC>s1|X~J2pz)+-2gc4tRQN~yYX9= zZkltpdlr4Yx%@qF?1KXpEooJZDD~2M|IO`B`%M8si(4;~zXTEhhD1xMk!bGli zCK|rQ%;7w3yMI1A52w-GY%JjH#$|3aJgp`-EL&AHJgp`-ARP_AjEja}s>uyiDjI&N zCO04*4XSbpvapT@RXg<%r2XYwkkClZej0K&NOUy(hVX4d6%D^tlbb{@4w;@R*YYBc zxG9ho2g-&Sz-SlW8%omXT^il<3L%x0Zb5QD@HmR*2EKCU;v|GQ@k`44VT4{ zmfsQw%I-0M(eSfaJFEP)IHK~;;=wlt=x7MSNSPQb9Stw38IDHU6W@eS>$^s>%K6)H zE-L>)Ja{}FBx4nQ_&DKP5E08+|GeU_Uq@th161T8lC1o zl<8=g&S*G9s3x~cPHuiM(@VjbociVgPCgy;uYC&HTt--qPT5tgy$7&ts*%OeIR=B6 zg<_Q{=0Y(SP1S-B8#-Sv=qa%G_8}w$OlK z00+bI5say9SsZ0~dpx)(4wUid47f3$ff+U0%eL>4?74|hnaHRL`8q>@+Rry(Pm67m$eV+5aS{P*;M|xi^ zjDWNweHiCRAJUP!P^BE{LpstAfV3m2N>2`;I?qwHivXvM0h#kTFIXgd#uyFmocc9;P!a%WE?1a*?`pu(55== z8W$srV0oV(RC)m{uqRsOe~fSTi2+xm*}bM2*VbpKbAts*p5j>JrFgHc{HyrJxuy$y z(fEDcILUKztN}#3=c5pv6f+f0YvTG|HaU*VxO$~|l4ou_7k3$a9GA*?F5x&X>s>B& z@m$>H!*N_z#Bs6|epO@F%=C_7$VQ8(*>CgUvWcgVgIsF;Z>YUTg%sW(Gxra^t(lNnn*k#5bhKgtD3dzx)C+r?G$ zDkC_&gH>bsTSDFXvYFmA2`~1e_BkY{^21U+9&a-bsakMtFGR&+$F`qx3;pUyaZUXd z3KPYCe5dlwkxKidVd&UY-EE$?>L>e+N&f~>W5#RK@w`>_S{rP({dPaJ+-}=Ean^K{j(mL0U1HQN?gjf|kh@CH zvTdHM>QS6+4@|~6b(wAR6jhI);#_H;pAR*b=?-uit}A)v(3)dkrCiINY5#EqtnzQ4 zT1?r0A{jHUek@->^%Q?9f8Tqy{RA3MoNn7(`D=Fk%^!7y+V_!JCN8jTu2lZJ_6YL+ zs7l-BxK!Snk!=ZadZXZ6Gy>jvVOm3V;*`~45H7Ca&kxB{v1SK~Yaz(E;0i{NQ z+nN68Hsz|O1G3PwDac6!O)0d&tqWrr1@KoU3^&z_!M(jmN%5tmrm!zVVj>hxuva_Q z4n?oDKB_jqmjfP4bq4{@oSJed*2{UA83)yJc+5NsjxZKcppZt;!%}3#EA{alB8Dc> z?fpnKWC#@8$xWe6RO8WJ*X|0I6v8TbNc&?ZD1(-I<4ixc#GaO_9ftzxW789Fs#F6o zE+J-H2YxrctPd>fzRZSqj#a)hVe4hKcQ!=Etgk2!mzRxhZffaVKYC?L=a{;tj;QrNlSDW4rO@Qf zO?6{d*4O_xNBmJTS6nY;Tco{t4F9m_n3<<9m~D+|Y+Vx>v#K@H+z?q6iFQWEENN|D z9c`!avj-y$rYaIUeTEfOthWY^t8EI>M%)mKCjrsG|XY z_{>yv)EdSVO@*LEOQfTL4Z++!1iyx+_K0eR;@C0DX)_RGWLv2P_V~jd`T%0u+t${$ zYZP6p_bbhQ%}R}H4Q@31dKcHWG;Gi$=tvW_H{#SW1T|4M#$6K;82a|e%E)@71nwG} z`gJ@2ivVB@1RXU>x7D^sBj$K!<;>QWXh&^J2PGmBXI7qG zw<=Ok77A5v=!nc{Z?B~ms$gbgq<(d@a}6tEZI)EeaqFvQ&5bDa74?jUhW1D_Mps!I zjZCP}q;Q9L1Hh(kr?o$TineKQ?Vy=pnwgceB5imEFVa%qWhCu5q}peTpwiuvDzbH(nP{_t-K3d z-P+!?64#aLt?JH>6&2wIVP#Q2(vx=E!>Vr*p*$OLadST~`}z4C7ZE@oRD`*IHqwV&uXw zpZln0$LnkB8zWYAee0UGCd^(dt?Gt4^goJ3x-QHFWz{vW?hNCOAnqm4tkfZ1(;iuY zr)t3yoNHz;m=~UT`us(+moBoxwb6RoHCzWBV1VkD&NY$trg|E=rJ=UH!K#MA>)V^! zI;`m0a3}g3X(_=`J3FFH4H0bs z&Rz)`Hom%wAd(8$sQlmfAIu24xMaW?mS%FU&^~ z8pF+zmX#fin1RA8n%bl2cSCD*9VX~Tyo3i&;J9liK$FJS*41I8%KC5zh6UPU{%)yn zw4&j*R{X)f^>u4d8(G`b+8MQ~F?by5m2DX774`5QR-w!7t05z@BHUcN0i9@~NaXI0 z+ICLHk(RYqw03O-wb72|)_RM6gb4{#h1(x@KeSi&gKsIJRY6a zrU{dCINAqwSokAaRaF*72SW>;qgF!%A%xDNiz{1do6!;7yY)@2;T6rbaKGwkBmA8` zS7Wh0+F7UizOI!%gqIyVqv6?BotklGg0!~2BLcOmVZi#;@SUX#(PxY%+?`VtL!_p& zuDPim^Ox0$Brtv)tcelF@~ES>eznzzKv@_;5u>6r%JD^9%&LqcC@{Dx8$byr2}lpO zu2_M!ixurejOYxa));X9))uR6O=}w#L}07O5GJWbRKV%LHp~p9qZ52ERH~;j3$(4J zZ&=7DT)l*&wap!UGtHXXl}+_@oVIqb>xihaTG86R23~=Fz`dd{LW32p>kK!joYvmi z(uyZdtJ`30#54vg+&4%W{YX?{I%}LwRG>gmveAyHm^rcjLOMjEfxlu@W>zk2tQ|L@+^Si$ zAiSs&VPmatqz|vRXr_+VSa3A*s4=pdnaN$sSmBk*a!hgIl@YizmXfi26s=uX3x98q zqAO?>ofLHv7hZ{c6`QWOU~FxsgEG@W^R;>wQQ2!%=bAQVfC#*caT#784X;I?;hUJ} zTA5|wDai1g8tLyyIt;zK){YL0FDHsl1X!eD927xdL}00z@hd}&N7KqiYr_V*YFlR= za~gu9E&?ZUX8<*YRo5Y#tY#QP0`e42JYd?EhH$j8X$5ji+d7V*nvGhc%Kdc6DtBTM zs)zJ7tqoD-<;ufVTtT5($X@NO8~&fl&IZP^v#jH1yQOTQ(4kZqCE~TTWf2^=Ep18^ z+}YXL-P_%r9d>57t+u_~oqK2YcJIu+y&p5P2v`%;sze$!iUKJihpHFDPvl1i_jWd=yX$_2!rKn12tv#x0E#_+=Cinaca%FO!iK#?Sg(CEht^w zN21t>>x*eq%T&^$6cZBC%~_Jr&Bld#cE`!(MSejsDHo#|>x&J0hWgP=r&+30wpxfD zc(;r|W)_SJP=RXRW|EhhtR&Jq^<5G0^6AAR<-53@I(%kfwR~y`uzYrYb+K}M@owm+ z%ZR((!c{-Xyly{nJxqL2CQ8z{vTR60v zC;`)wQXS=5BdG-rtTe(2n}+5q$HIwION*7|`P1_!X|^OA`{OFxy(%??)LuBm#2>Bq z3XP!JJN0(c99m4UwG5fXVbFBAyoHQIiSl=d{VH_{b5jDnitG&(Y|=|dM&0Lf7gm?D zWxTMPpeo6-L99Ke+|?*X;>YwHY@PtjzXU*$((_m-X%-|W8a>pW%o}7fzx&#*^e%|K zjsIJ1vmuZxPNG;55>00P(U`6e@EV$wA*MArsq4_8kxb)_5`1o`p*!S+y0i1RTCFthscWVijqYr)n?NqQJoM^Ssg>}ar%O$piyliYHAq=Iddqx(b;mf(K%Y* zs&~Y>RC;1@3FU&th@~WLdC^n~qNj!gar4C*EPL%-AB~Mv(h#1b&;54NPL&E)n+Ctq zt0Hq(K~Ztb|4xY2B#LvGX%hP27?FbWfqLJX-M6Of3Ae|X;&UA+(;0zQLP21_f#WofqI6B@5 zT1#S+oW>Jnv{WkG%zUd=BY|H)Ld3D`5IJv9sSOYug~f^SVVtcxcd8xcaxI$H%@&R= zE*xJzRbElhL2+JC^k2#Izmu;=#mG1x{Hj;bYH}~4;7Amz-M(-pEk7csk zZeR&eepzgSAVwmWCH@g`7!`0p61`?Dia6GG z(`>JtIdo$2uJY26Q|Mh<3Klydt9XFG^qwZVgHH|#A~4Ls)8LDiA$QFv}c-gHuX9D$F<0H~f<7qTV zT*WAx(Z9fGRAkQT9(-@wJ_Rqc^FnPEc#-@rX=kB%`n_YNeenTy~R%XA|N6Igx%^AfF48*W_qqB{U0mRTp~O zm8~x3gGM363?jhcjatEQ#$RaSHsYJ7V5p`>Mn_{E&rXvgeS^4?oHVnDAvdl{F)L%V zCX_{mm7Lg=mhKXdxz|?to#quV9O#P6yb1Tg%<~IihwB*X_{OQ$j7L8iXYWA?N z`2KWxdGX}on{GRBOf9Cg_NL4z3Bi6=lU34TrQfDX6GJWd;?M zA>)cXSY7yuDeNR?x7u!u`@2P}cC7D-UVEY|=w{u-=ALmo)7*wO6_d08sW zbR1Kkh*6G}^L9Jyqr-@RV#Z2>MvS1=lBZ*X&|;u+v=osd+8K;om{dML@77WWf9`u$mPBhqrj2!Jm7UYzaU^2_t zV8|x3T@}|dl|^EE$(=}<#P6v;I6_-$T(t)cDo#}{CM&C4 zkX1@<%4UpDoWfvSID~N_XDx-hnDimSm30Hx6MQ#c019SW5M!qo7nfE~W6~1+t90Qd zS&D=j%_@=`g>V{*>ojXJ3<~2S8HO4OSIBF-3Q;BHV?>%dWYKx5TRl5}LZd5DZnA;U zkW5|rVdJ&Y*o5NmLYK=g0*kezFr1HGuVviaGxctc)bx4Q!cnF-Zz(=lNcCtEn=N=oF{LKa|BFaXSz zSs%d^?q_My2Y-k~7{x!`Mc%@ogPS+{m@YNC7a~VGgN=i%Y+bZoLl`#QMA->HMx+`0Zj%!7h~=53<4dRRTuPC~ zB+iVuDNPDe4qNjgzJPmu#^klu{Vax<^^1DO0^jQ0_G(Sp+BR&Su@|0J$mtdtYD6*x zcv-x~qd{;JP;PWEJG2s&XwGOtj;!Ktn;p~=<1M>IT$!TE5;8GSiIZd-sV5$~vOv>d z(5l4}JcCXL7$Sn8iT36Bi`ip9Xti2s;a>>eS34}2UNeJ%aGIhrP<*nHE@rz`qNHa3 z(@HF*E$a!hWfqf(R#i|ui6GMIjYYb}vZ5{)Ys_o9c+n(W*-S)cR8B>!Q!gU)n?89% z?2u^KSZJl3ojiJ$5VsSI*|NUqcyj(|c_9~S1Zyd}r*Sb2E^Xx2f+e!$63%f~yX^|{bo*ac(kdgs`$T5E-O^PW2 zvtCjhGtqsuNh~%)Ua~}X_z>|ohziCUU~99-q>wfwU`>SDTnr126!TP@O=HT$>tY`f zI35~MT5l$yx|918Nqk#>Sydp!Dp^M?7&2|u`mTc&B#^rCU`o!mDWKyk$XeM*c4896 zltbJkDH3jOD7w-X)w+&x5pd$H7Hehx4j6(-@IZyhqE9xP%%jG-bs7>QhOf8=xH28I zX+*W#+9(DE#wRSvst8uR?4i?*c73ykA)cH3axmTKx0Yyvu>@neRW^|7$4bOTKYR%C zg^Lt%fg;52NB}y5X;fWXtGDF`ZfuJ$2SiX2be0^*jbv$H34j{e&5>p`b415e=7AM2GMq z&5cU2i6I)Yt|}O3Rs`I3*NPF@@WPEb{pOri@a{Ax5dbY;*lO)SU|L-*R&dcfG-arw zAXb=G?zKfYlcY1nfO^7wz{hdRUY;vUHpFoYmAklfSYo}2=ccFwO;1bf@)a@O(SizZ zI2GE4262YGaHK|Bu}h&vT9yo6gq-aHz>Xr=n3#B@Q*EE8C9-jowX!K|#nx(jgy|{H z3`}HVr$!Kqj>$`az%V&jqLiq@Ub%pDSi=T0{ga1HWQH?}~ic)`pFAGU?k%)D=%ykv4nL@n&vDbIX7S?o0FWcOWoP%ofmyCXtj^_Bg8|c zZ8VaYb~7jG)wW!k3#aBzkDN?D@In<$ShA`g(W+3tqPL_|^&RYRODRj=@mqCZB!{hMy1z)nk6ip?ZkZ5t!g1j_hA z4K#bURh0Tt1Vg(PjNXm%acda-_GYpf%rLxQt~!Hap&#jo+;L3eMqXPg%h!m+WII|u zOlu5?2rvp?s!x)4i%5kNSaFNC95GD31DlJ)w7x`agDMLQheWcUW-tTTt!dkjO}m+S z=5*M~qG@kN7B$$dt~1t}I2t19D0`Jovp|wBY)B_bIYDMNn(q2kWP-v(C_=M6VSPjv zL}Q7F_OyLb%Pp@RT7~L@q%Be@VMY_GW}*$cw%QhfEUq+6<6<|l>?k5&gOhX>#DP-F zHv!ZlAV~|?&a;XkQIOP~tX`Mx9$KH*k^~JvE}3&{abc91uK^(w`sZvslib}+d(JFm z$?v?C(edkbCJ&+4t85a{CzM-bhk>e0WTEXWH{AwRu?@r4{BqBvV?i)^zjTj5QXb#d zWCmWjOWcf=f)pTD0LvC;O14ujcjIN3U@92(B&Wec;_?HkXkgnKATCWiFA{;`uH!_~ zJIq!SKxLG&Hu#&8$i} zUuZK0%Qu}tQD@5-DGp0aK2b%@ruC)kyE!W*J}*08lst9n5(sD4+*rEza+zjVrg+D=oR_9v*nxzCL_v}kIC)h$}p ztVNBQ8%g568EZyHJ`Cm>B_U0 zs}|;jJQOKSP7pS59UAD?(-!A!=e(LrTQzW6*h?Wo)Ki*VNwakVkx-QU9d%AV5gO2< zyUCEZLBx?U(lFN3kkC~eWktM`5vM4YTl;j$c39b(k<%@TjDHNFNJXkq&KuSRs<{Xi z^IDc0BHo5rA~E%=B0B^Hcpk-oqL!$XS!DIGY-H2tk8SPGu-z9170bsmo3JcZFBQmI z8zhVr9)j&OACRd0v>r=)1*g&0G-wja_~Bi4#dw|30M?B@ zar-d&jwY;otqr!<$q|eiioFtMKW_RU=FwCHNIsdGF9ySWNMg^fM65J7bz!Tee3R_7 z5Ml(V(9iOUP(&DgX=A7@q?sisQqWd2duSk;ZFBFfS?&o~W^Ho9C^2=*wiTJ4N6IG_ zNt~u&?L1MuYJ-q}ntD@W2pks4E84A@wg`$)y>Sn&A;HHMC2o`05S2LG_e$w|S>vj{GFP}q)UNF(7QB?Rxv3v0WjY*|>&;X82 zPMdV_x^_Y2ZloHTNU_JRH>l25I}=R~n4RUN@+yS2Ef+17gFL3(<{y866>NpTEU#QsyZhyf1B3|H10slgQn+^D(0yh(|4nfeRegyo* z0v98a67lz-L;74=7n2rXWScx`2Q4{g%KCjzwi@7LIqKd3Kj}?SS*wr4Q`E30yVtYi zxBDFWmAtI`PI(z?e&3Uw4Y2E|z1jA@G4g795pBO;mOYRKyz98jv-VTj74h`eywZCD zjLNC>m%Or~^_(;@d|mX%H~anS>`mFe()IgFH{No6d-jU!9*GwZd4lH;CdjTE>%&() z-HmzQ@B5&GF_?R@7&A}H&t!O#AIWnq2N?7+A(u``)fJ?-C%Y#hioXp{5<_uWcGFms zzvOA`!(y_EA_M+se+OU95p5h zOc^T!1%t6Ou5Dr>J3qF#KaL_Un1^_dVvteljoqY=ED0)I?$UX)odlze^Yf z{CUSEVHi(3Qd1XVAi$^`3jVrRR!{k|)F zNMkT3h_y)lwmjEzfI%-4a{Y{_4$_+-4FA%T#86BUh6lZU^9A+o3;1Y(n+f=MftwBZ zPaS8%FdjZRkTBpsFK{yfKVIPW1^ns30@IKdf1|}mJQ2JQV3f)92N*>r_K2sbV1lGu z^I|vh;+F$_M~+$v@Lf6TOn}kZy*N#e#6wiP7boPAc!*Y5%A$h_dcsTojNc{l0{(1) zn+f;}1#ULrzb$a3fd8(*?GN~cZVpT21$=FR+aK_Y3S24R*#b8k@DCKYnSe_LZePI7 z0yie|qW@p<_A<=@Mz+Z!FEU=rGp+_W&qvR?kYoXdCy+#5JVgx?MBcx9u`kKXy6+zy z{AP|i8{o6NhZ9BK|9DaQ7F(A@UcmbtmqcDXU7Oc%Pk>Q5r2G=EtZ4n1$h*=D(3!Kk z#zbDcnDqqDB=UAW-N*cnq`J+U5ra8Fctz?z%5yCT81ynB*M~iIklqB5_Z?3XLorF@ zwY_~0`CXh9@P8M$Qo!FWaAU4zl=ZWo1}Y6OvQ4Jahdsk@SHq=>N6eUI-+>$TpckBBOqQOBZfzfDh!TdjtG=Z$c7d@f0;o5MwX(GLGkE z-FLN@!H*Jnjb{VA#ZeQ**sHvV1Adnn3;1@&B{3FHhx1DB2{0;0jFr8zqV;1G{TeUe zwSFHHWAWmcCwL|?rqi8uebw(spN2Oh26KWyiqv1rb1erL^fDpW7d&;4-UKoB3a>kc zVv-npkEeOB-zCNZeqVu`3Hbd5ZZ_cGD{!TNKTzQI2VCZeAYJ0DfbS@9`vX2v;7S26 z6}Z`emkZoXz^^ZG-hx!8{zhLP^EYr&fRSx77ez*$zO4%`3UDyv>R6EAN)39Ae^H0lnjcdTs^gr#q9)k1+pQ>Q+P$3~? zM)Ob0chJijO`py2sepF7%(1MR?tC<#Aii|2&v8)JoSo6}qb#Y~lkKgVt6j8@4D8MV zgT3+n{6h~F-gQ`YR6>W^Y-^db54`6roIkhD1Mgb4EHYO=pFUWwoabxH{3+$|bwtY% z@cnBfqx9+~U*^p5nW+7lvszM#=h)gb$0Ee0c4Ew>B{#m6*xFzdl0VwcrFeCYb(igU zW7{y#9whf84+A8KaGnf7S~)$X!{Y{)aq4 z+{3N*llwu548U&j=9qn_xsbMPCv6N>WTXqu-_fX{{{~D(-rqHXGhzgQgMJ8 zfXa^Y9`*cjzkSO1NB_4*@?Y}hq`1Gq$5VA^oJYq`L4Q>dqU9K;y6TF1tWG6tYHPr{ zclke<{|%l$?#t0J&onb~f6GYzN3Tr@;=Zaz4_uKyP;UhotpD;-dJ}ioLXkY5$3Xlt zfbxqEbUm+RxBUKKdd&YSt**HLn#0k}hf8{!WpN+%cr*`#*L!$SS&{##5)WK)zdl|h zbUuInn0*L9bL7*U&AzN;uV!Cnx3Tmw|LJX(eH4Hb-t+t=&tLi;^Zyxn)&8h|zvtio zJ?4L$yrR9xf57t}@ca*6#!D{okFIEc(7_Yn2J3(HhLVzHkKSOnu~pH?ANS9ZY%qUz zV<~04G2Mdy(o<1?Oa8$!7K7}R`SrLw7TN{9|N$x@IUu>{iEeZzDTT9Ru|Lhl2icdsEQ}Vw6{Kybl%HI%Savgt${Ce#yX6fV4mo6pfVHcoc$6NRx z^c?y}uP4>t7GZIHVuWBvnv)Vu`MVd&3Oi;n$zEC<_Q^1QZx(jPF#hr^?1^Fgv$C)g zhVfVA`hOVz>|C!8oESgS?JAS{8d@#!(sgMve0wG_~+;P zYZ!lZu9t@KGr7JQ#=jufC&Tz_vd|O5_!nj&|A+C{W+B&y@!yA>E)Aj#-kZIM)%!{K z7iS?~2Q%%>X0wo+!}#wXe9Ym!ng2FTj!D4Y%zxWv3_mJGBmEDKqzwE^r{I5R3cfUk zPkcE(@8b8%vu`{-nn5kxlZ}u6E5KitU6noIc2(qio#V3+`Sg0n9~{9;jPDs3=iuXQ z!;jO$ySgH&)I}HY33_a6Jh;X&k;`c*bpnuAWUt_GB*} zqaXd;jPRrMRx95Lv?CWj*?g8*K1L*>M(-iz~ zf-gm)f&1@H!T%xnN$vcM;m764=clB<1b$LGzcnTOb5Syr>U}BrN#(rC(nJ5wdheoK zU9SUQGHCeEPffx1z+X3<)Sey&KdC+Mo|69kQ_^dP#H4cc!^M;EPlBJ+-^);2ne@;l&XkTaul^(|AEG<-$FD0r=6vyX!$&KM`v(j^Zg2d- zl=AtWf};sGHq-Zqd?mW36Q|h2KDWkR=Q|coS5A~UKd{14uk7vS+ajHJv#Ag8`G%LB z+G8lbDQH#FXLglZPp1P^`@8JS=eq=s-mA^scHlMIay=mtTb8%@Iz?YX>l+!q;j}Xe z`A9}b6;wRnXHRVIZ*UgtK+?hQ5v=J)I5=>z!Y7urJ$1z4qbE)snmmGT);`|sH1NT)Q^3v80t5h+u@?y_Oz_3&2|R+r7S?SxOq zXN`7X?0^o-#V0y^EWvREablRhrA;SvRm!U;`3xb*fH4$ZtlF0+_HObU4#cXenRdwD zXd~F>&)_Xr`Fb)xKz8_?m#XuJ)lnfl78hzy3K>sp-%BKcJw__m2 zj!qjx3>LMLzK!I(ADv{v=MXwP!MhsY3Rz?H(Jx=84A1b;=cf~nRT}*;p%~Uz^YN5@ z_Bi-;`9RHnq#-<)PJiZeoXXAlmm<;EiNsu-$rs7ID(lC{CsdX6^`yNb86Reke@Qg; Pi&EqG;zO4Fld=B;PTW|3 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist b/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist new file mode 100644 index 00000000..450de1db --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl b/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl new file mode 100644 index 00000000..8f757838 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl @@ -0,0 +1,22 @@ +md5 : 3d7397d2309b1654806ebc25117da3a1 +name : coin_pl_3d73 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:52:34 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so b/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so new file mode 100755 index 0000000000000000000000000000000000000000..fddd136a5dec28c7ef9a7182186a82e1d3d17171 GIT binary patch literal 63360 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist b/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist new file mode 100644 index 00000000..60ab0b15 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl b/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl new file mode 100644 index 00000000..06d8a2b8 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl @@ -0,0 +1,22 @@ +md5 : 45c067d171b167f215cb5bf549286bb6 +name : coin_pl_45c0 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 09:12:27 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so b/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so new file mode 100755 index 0000000000000000000000000000000000000000..09057038a3eeabd3094e3c69f61e271b7ce630a0 GIT binary patch literal 63802 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%0DT}lx5FR0NySL6@WdjWdu z|KxOf6L(ifkvyNrK>Qkj@{132eRkSz`Tg1~#M5kMpp`7e6@i$7-m zzag*2BJw}$`JeqU^Zz}0MSGF|lIOqV`5(WGmt5i>UD5uagG=Cg>tDEeTFJ77o9#BV zKpOeu{?8=q&Htq5f70{cqnABbu%Dm!{gmMWDY%|1>W};F zW9t9WvnkV`b4qgW75M`9b7S&D!of3X^fM5sf_u@w0_S3qsV|o+pM_Yz{(vRPt z+aLY-%d@a2`tdKz!cOSNUy+6W@5f)6g+S;+N% z{Hu}E)4eEz_h;8GgkGBm!Ob;LNaxM;(^OU6@rYnidQT-a%-+!@kCbOp{n0l`7 z0*@Mp7YzTxi-UA^B^}uZT@BLDs~kT_Z_|c<;l)9Ez7@QizCEqsXA{BS*oR3E=Pdoz zS^NOnUwN8Gz)y}y|L!sP4}hN@k^T?H;I+eLR6DLHe0_XOIiI(3yt1C#Uyn)u%`y1@9D~0KyF=p;r&w3Kj!E!0 z_S6^P>nwdd755qN>hJSzm&cns3?EO$ecsBsI*VV=iE&;YQ@-L8YUe}Or!peFHc5<{ z_un-9@c4gVO!|*m`9=Ez`b)zP+aVXnl*4BkoRqM(kv?POW78F#hsEZ29ZyugckXog zc!}c-%bYyRrg1(|((yYR`i`GZf!P8+gyPeLW;uPWSFUz+$UvpL%a(sWZ{Q@r>df5- z->SXbBNDL}dXtY_^g*>gwc%4xJ0g*9ZFF)%*&~7W#8(4#j)v_?+IzNvHT?+Z7|xgZ zQj@l)jyQbu_^Cs)$II!cwDQs{2SzEy(uuh|b+z5p$pf4GKgCw_&G!>B}2G`K12{-JZjY?Q@lpCya8)Q$8bV|GnEBIF*Ka zj@|bVm6Gt?*BZ)>aw}EE%xcSufYxsofl%c_|k{3FgVp9&NI^|xg9$vu3TC= z!S@Y828^NTV#z*W(Z@{v6FI`8R1U2|oL^05J@|~7_VcGj3dr!@NC?kBC4y@)|pz`hcXDZSA okpy3yDj3PUD(lC<*IMQDp{Bhe8Q*}9{Z!RtK=I8?{w>=70ry)l>i_@% literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist b/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist new file mode 100644 index 00000000..32feaaa6 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl b/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl new file mode 100644 index 00000000..1bedf9b7 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl @@ -0,0 +1,22 @@ +md5 : 50e3dc20ed5c543eb4c56e9ce8260827 +name : coin_pl_50e3 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:51:42 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so b/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so new file mode 100755 index 0000000000000000000000000000000000000000..019cd8a628dfb5799741f1bafa0c880681ef7889 GIT binary patch literal 64094 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/.packlist b/scripts/_Inline/lib/auto/coin_pl_5230/.packlist new file mode 100644 index 00000000..eacd86aa --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_5230/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl b/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl new file mode 100644 index 00000000..ec5da74f --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl @@ -0,0 +1,22 @@ +md5 : 5230d7d9d7015431abec85dee89adb63 +name : coin_pl_5230 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:45:17 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so b/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so new file mode 100755 index 0000000000000000000000000000000000000000..0fb0517f80254d04f94f1e629128f116cc42d1e3 GIT binary patch literal 68921 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 qF5U@^!CT00vo2eCJvN6>qQZq8}Wc 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/.packlist b/scripts/_Inline/lib/auto/coin_pl_585b/.packlist new file mode 100644 index 00000000..bcfe3da4 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_585b/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl b/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl new file mode 100644 index 00000000..6bcfe5af --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl @@ -0,0 +1,22 @@ +md5 : 585bbd390e9d66ccadf068c2c10cbf7d +name : coin_pl_585b +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:29:18 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so b/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so new file mode 100755 index 0000000000000000000000000000000000000000..1f88b04727cd24eb1acefbe45a01d78267813144 GIT binary patch literal 66852 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 MLHV^|@fGj?1F>lgQvd(} literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/.packlist b/scripts/_Inline/lib/auto/coin_pl_6939/.packlist new file mode 100644 index 00000000..b4755a2f --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_6939/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl b/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl new file mode 100644 index 00000000..c7101295 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl @@ -0,0 +1,22 @@ +md5 : 6939184833f2e6588f474c7297009b71 +name : coin_pl_6939 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 12:32:51 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so b/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so new file mode 100755 index 0000000000000000000000000000000000000000..c5603651e7215039c65973e22dba38576fef2cdf GIT binary patch literal 75971 zcmdSCcYG8_@-{v*yNFh5rPXQyVJ%t#k^muskPHSSqKK9WHVzmB2qTkZBrwjh0UsjD zHs^zL!gmfh9?m#(j@;RI#u;bqb67db3Gg}aK2LYgYJ}nYeShzNzu~i*d8(_ctE;Q3 zyJu#XOGZx|cd@3s=dFIlW^FfTx1M9_?KAcEnR@QIkqkK8v(V6@7=D^fH;z2#89w(+ zULIASG|c05QXd6>cV4Z@mV0*VorHSq-~a95)iZ!fK77Vbo^CxgsdZ7mb>Xwb3w@VP zn?LK{DR<^wNSWR78OaMAIrt31rvRT``1HlcJ%-?dyhZpNkIyiC^6_zxY+UrfXD~h` z_>90O7atzU_(bsOk55m0dgD`$505;2`r*U=X5!NspHh5`nQ-+#A016GhwE5&^7>T; z_~P-A_zcA-0Uz%{cNmCI5T7)B((!Q*+A|5C6YvQcVi@NPd{Xc!#E0%a03Y`#!v)9S zIG5l#cf)leK3Vv1+*0uwj*okEF&ABNrY_Wt{bZlFTKT--FdL@97DG~+NF2qtz`#4svh$BtKZ0y%nN2#UAA!Z!yCVq^Cy4Z z>#cKUWIy_!D=+-<V8b zJKWpgng>#UfB0baIvUt}AfCLoc8k^?gT4=j$aR@K=ZnBkJ05uyf&XaqmoYd;qeF}p zK2iv9^)cv8pdU^DCyzltaEx|?X!vMy9)kWyqu&kwqv_9h4C8a;@%1s}7afC6KMEfy z1b7NQN3(y|W5^kC4E;ZXoTK%tFYI$P`TsnIoSTk89|bu_lYjp)?7s*4AI+ZC$B=); zG3b{Zqus}jA^-DZ$a(1)_UUj8`F}YE|BuI@mqAW0%8oovJcd34jxoO19;06?k0Iyn zWAJ}*jBz>f80}_5{?W#(S=lGa+HNK(>c?X_KIzEf&75d(OwuQn@6$0;oxsV-a|Df? z)`%v$a%|PFBx^U5GmaYY@t`j0N6Bwz8#&FKL~*>PPgVy^PN~+nhi8<84Mm^Q41M+y z^f^XO9Vc5Hu0FqE0zI0Xt%g6<*kO~dW-U(^}E}2!|P`#{S z)+}pQ?ULFCYu0?6tXboxO`0{YW?9Wywe<}(%ce~lxoGKmoFwmeY?UbHH&Jh>uXM&b9T+#1~A7&jIB{E z==!P+)?=d{5-wHI*qS9Z%c>h{CRMYi*5c|#i8g{+I`hs;O^Sw)DK%*n$fzux>kvK45Yc1mr-0{X(prFG{a2H^g47tWfyVBxI!)wPRaI@PJ#3u}}=YVD>j zsP11f2ntN8t*co)uiv0zt#ZY@dCO|*m2XZNS2cRlD3nxI*Dr|4s%~TODrFRgs_nSv z!W$ZtePHT_S#y`dcj^|+8g%@CMhX($mj=6+sm0>yQrp5&0H_H=~ka*)l24i=~QBn zHLGSG^TDiHbL#7L3Iu7%Jge{W`el8Q0jd}Eg>43FSUach%CbST1`X`9sCLQnm3_`y zvfLUwaomWJv-%eej9v9F;`U4(NX5T9khaait2X3P+n?QCYI~|>+5cDnSj)za<_9%* z>HSThwieq(zcpOVf0(a3*J8Wov&I2ye%q=w{KUH4iIuzie(tAu%r^7M9<#r9>0v{! zGV`lTckzq?VO5`dN_US$!fX%SsHFH7c<8Py7Sws@+;_UiN)Nr*CF0!Zp?lXgYdv)C zH{GMzLl3w_oVR-D?w*gu+dcGw9{wF3x_AG&(?fUnldQJa(76}&`q4fQ-RnL3J#??v zL_KuwTiv78L-+3M4|(YB-e1)j7*;3JynA}#p>wb89;qHW_w?=&^3ZwT!ac$sI`190 zN4|$%;SzB!_Rx86z&*-5bnfZhqufJJcZoPxdg$D4y7ykn z4iBC8H{4^VhhFXyao**j=XmJ5J@gSC`W_EG?4j@V(9P0UmG1M=4uZEp-b2HyfB!LCb7~za!=p&{C!F=fq4^E#(S-M9dV`QmpXX#7s>sVTE5I zW=d*FRrsI8Ohql0!cP%1)wHz!2155oh&hF{>{s|+Vy2vyy$at>%v95|Tj9SDb82bX zsqmkP1H{`EzLGeTxLM(K#7reEjS62z%oNg6r||j2OdTz=6<$Wnl+jY9@Y%#n6)oio z&mm@tXen0sG~#UHu)Fc)!B^i5aRbdlfDu zW{9@zRydcKq1m!i;m*Vi$(HR3rxP<2TbdP4AZ7@*G%D;6GxS>O6#j1)V1``FY=yrg zW~jAPDf~GxL#(A-;g5(JS}ny2zfH`LY6&a+3Nb^eB~{^n5;KHaEQOyUW{9-3{&M&* z>Mwb}oLl*>5 ztsw`>9S-SUWlV?uQ$U8S!+U48oB{zYQ}Cy`dHNF!^{FaNRKXto4pcThTiNt{Gy-R- zZ2G3M>FH=C?bP%^v=xoB=#a)>jP_9`d`46@MNgmkbV`mj{mC|Y<%@%toWj-MDqY%O&0>|kyTV{f%UH>aiu9!Zq z>Bov`)2CLh@A`FC*jhg%+7orw51F{WINFu9*H_g6&CRV`^|`;Ysj4p8QBli7>xWcq zT$E>z-{{{zuHdnx2DBS1HCSv3|&b5s`4p>ibyxVh~w#c51X< z3xac&hbFDhduCMA!DwF?YWXi~v)--6J@rp4CjGb_%hm|1Zq#`SL58eyC`AJvs?&%7dWSX#1<^U65*A=qZf&sBY-R)1%_Qjs~DJog^D) z?Nd)FMc^aKrv|F>52C+-+ON&0Hgcq!lux~)F2Vn7^ek2No67ZPCb4{J`t4`Q&HB`bc zQe#raulMhV6Z=zEUr6x>4^sc~5Xl&GB*v80ttbF36}it&x%@q#ipTK>;e`gA=rg9u z`XNS^ow6F6Rx5f(ds(B_uMDH1a`qtC&?3bi{b0Ax1%xszfJnSnjJs6fEarDda{% z#VqEv=zk7qn=sy$9hzX>mg|t1QgTK?`KMV9M;`*CG7iS87(xF{z4b#Tug}{by%x}$ z5R#xuMbq;wQ6;F{ie3=ocMZ9GLUjI-M5kd%^dv)^pK{7>Jr-uX=BE^u=clZj1CbRe ze|&ay%7b6EOn2pXF}2_l?(nW!8Mer%78J(MG3Luhf~O^0RYd=P)cs#S1XR_PmqGD% zL+O{XFxTcRs13 z>NBgqv`9JhJ(*Rcyr(3nNcjlV^+Omb`&fRg`QlL&GHP|4 z{C>W;hUJKp3`ma67nhT`F*6U#e&YrKbe!`=+xnzz9z=HMLa`E|m)~!9bUSLr)+;`G zk{;}}GzInlAo{p!?Stq8C{^=Hw3jMW>yav6uJ`BBkt&i7P2uA=_0{#9kzj^udaaYXNoVNBvurNQ(LjNdDuM+ zt1rKedDw@z#K^`xY$8@97s0;T!=6TIn}^jv7DV0+;?X?pYQ?NP>;ff0c~~Q;+QU|` z{P!NlJbOBdT>qN5zAm+81QKoA`Zqd+fNt z{C|7PZO~y=6X03 zT?J*#WVeTd)NZo-R28ayTB7z7G!@-Wt(!iJZdEFL5KTqBey`B8o{z3pHJ*>YOIho) z^SI1~=RVJsF4lCA< ziBkTu7|=T(zK3q;`EaUYZ1Wbie;Nj&@sMdjd(b~m?`14zfcVOZch`|@2Ge5BKpf9gkakhZj^Yo7X!$ zSG@;tZtZ+cw(!s!PrR)aB}M%P;sGljvKCw3=g&oR@qR?@lEH)VEV=Dn22DE3TLdv) zK0nvscaPOI`KV9Gby3^na9Ggp;v3S4GjGN=v>ZNsEzYZ9=x1<#4d*X$o`yjVU=V(Q z|4+mDeq^Zzob#}3c?RdzIDbiu^`@vWLJ3i-3m+=IYZNaAu z{a5b@jgYCEoDnj#(KlL#H~1@L{^cDiWbvvv-yl0d=2yrt3c)l&ic0LFsPk+1a1MAF zXKMy{J6!JH;M?dp*Ge%Fq#y7pgFV%|Sg5+0@;CWL$nZx0Xqmr(@-L68kY%enj*?Zr zx6n=*NN5@?vDQYRHPe6CYX+wAQ%Pvoe`l1pUyH!k48H%De)WdvJ5j$C%c0#zwo~QY zl^{cC8J4b4YN_{k-vxgo{NsOVuk1)Wj)4fa$9LxTW8*-3>VA#X<67lBbF}s*g1;I5 z_y5u!$87`ZbI-bo?ah$kRsPF;8yx2xxR2`3ohYA8zec~T|Brq_zxopOcOxFuJ85n8 zF{thQs>N>aR@5eTxbF$L?*+I8REb9iP6s$#96ACII08>T0`r{(Z~gO*z*~;McOQZO zeguB^2+VgVcrfSi2%47@k~ECHZ=Gzg`<`PbgWdNg_yC3nhDIHo&Dni_g5$};OO*f3%%iG?sH)5<^1H!5vhFTqsrhdR+ zPUbxL0E$N|pLF4H>1)l)6t3RtNg&GO6<1q(xGSXeFEjkuWhv~oi!`n9-6^^v+)iOv zPb2RCHz)V|E=MYSwRuV47IS{koS!r2H_Z7{b3S0sab^I5=G?=a2buF2b3WOe=bQ5i zbH3c1uQumf%=tlce$JfVFy~Lr`G7gcg>+AX=G?=a2buF2b3WOe=bQ5ibH3c1uQumf z%=tlce$JfVFy~Lr`G7gcnSctKa}RSKWX@yE`DAmRZ_X>s`Eql1-$NQZa^&D}{-~Nc zwbe_)1B*(F`u8a*&=)F~YroW9?Y`4|oALc4$Mn$JcqXYB9d!DFDmOqDy?{mnCyx{3sW)n z3G*l=POwVyofyL6#F_RRAjwxSw28CSH6+VjgtHA4^3^QBY6DZHzc1h%TQ?k%XT!{i za}CUv{a}m4c?O2%rN;r*n7a9Bd=4~B9s-G>#J|`j$iykLX05amZ&KH6{1*62;>`xe zp>(d5c#Ay{Iy;dh*$L5;c&mXDrPWsA4x6LkL{hDIvW7xZdQybir=J5GB;~c@((*5bPbGDq2#$^-Y4{B|iy;LdRqR12&AkP)Y0?NfnG^9_ z9aEFWyh5f9uwPQ8Hiji$fH9KBY2+8%&}`Cpwn|SxmC0P0Xt`DG8&+ z%_RR7Bb&59d#)wMBC?Zeja)0EE@|+mU`l@-ZkKd|x~!$mMxKxUrT-ZooHT)E3(Q*9 zU?okZangS!btXHVenuWH=dv^D``OIdRK$v>_yf371J=b#d^ZKl<)i^aIzXLCVepk` z1uW43&ZI#a`9)9gC6yWF#3^vPq=oDQy})0M2uxZ;v6=Q6kQ5|eP+hUla0|+h6Jzk# z|1~DVmD2C4LRwW?8h7k^EwBL{D)I*ytiF z@_xRO%N&}fF>d?sgV zv_KrffXcJk9VfCJNy*nJ zRX`Ujr9h()Or3!`iC1(-*r#?0b%dx=9gMF(<* zFUANsk${!>6eNe!Y8Fz+B#d3!S+0;vi59p*Zbew68TU;Us}QDXXKRrGaW29lZK382 zS;;f8kPW9f_5+Y9PlhUKe%lC@n=#sH9c&|2{)2MjOnOU|e}-MtIvQq3D#Gj%N~^S6 zDd|s8JZ*eT(isS~vB4-z|{(UbR6#+_^h?ula-=`tOc_r{IjG(D^ z6aL;=*x3FBeixV%e+pcn%ZXK1pf>&xO1mztv+^_Z>=!Tx$x#@?%*}u z3i%KO0E%*!rpntO6!34u2}8#X!psB65cbDsA+U}sg-DlT2T9omGsh^Iq+H?U36OFU zl3a`@gOvFQbC=>v1x0R>igG{3$%*93HxYYa&@f_k8OiRQ9sed|cb$v=RRu4x1MoT3 zzhGm#{>7l~AE38?fZqNA9??IS($>EiCDy+fCDy+fCDuQe($+svy#0&8h#ZM=2(Gd} zP`%HSS0eU?qm8)#2f}v8*Kq}3gVHYb{Wo55~7YFL&PlK_NPewRZWxima2Wx7}z1ZGz zE;N>VvAyM9Y;U<2e`h&E@mS8Kv{}xjv{}xjv{}wjJeGU0z2#hJEcdVWmiu?iaz6N6 z=1T^a$){2Q_ZnC(zh>Te*+4ki$q6vk%J?;~PR{-K)0`N%Jfm9}S@}n}V^-u_ByMD* z@Hj+rR!^OqgjkN5Age%^rHX+te^xJzLSk2MpxzpV#UhwLtEg}grR0k>$lqE02A@P! zEHIy4sOb>AQBFI-aU=f@(b_^8tMb_HkaZ9SLtZ5&@ZGDkuTXaFL%$mUkl`pc@ z7Tu8kvrg4;ha=V@0c4%_D@^2z?DC0Z%yn6(YstHPVnaIMnOvRtB71z|zuf`nY(>KN zMWVj&xMlTLR)c14^@*#g|8gzrkWYkZuoW6M`b9oPovYzmzqo*K<%duPO8Ui0j?sBq z)KymD+~pU)Az5WzN;mOEcKe0E zx;X2yhsF}_@r$qMQmaOcBi!p3e1|)0buuPiUu2(OBw)#qwPvESShW))5rKi)!_Y5SiE2k734}A#6Tp1tY)p%{x}h4kFL@% z8Yf265w_?qw8n`o$UIqpG?t7L6Iu6aW66$U7`!!W8`n!1?v5f31D*9}Gu$1;b{h72 zdJ2ZSqj(%EkgOXt+}=_A7ilSLyRl?PaSA=>FFl8md1prvB)n;vvc?`EqBQI+PoOzp zf9Ikw-9$CLbLAB@FgLJ($05HQKs7~L^`#4=GrPUH^z(A)aqRg*T#!h zn*H;Gso{kriso@u0`b@k? zqnrJzOP`IGW3j}{vg}f&^qzRRIT^Tv4Nrow7vtp5IG; zFDDQus^us=B3?dDO_OXrto!5TT{Ka$!O?ix1B<&XX>e=2jAx{#sCga!7B5>k9I3V* z%fu4 z-{0WJ6Xale_W*;Rfc}&}(Aal(g1i}yo>gM(wI@OHCT>=lJyH4p-UOLNdmnGg_a(@& z^sN(Y?Y8?9WHHm>FoQovdmP^p21gU*6HEc4jemTZAQPD4$JnRBEWSu8{2k-=g*CxvMXwQiTHz&$+mQONxYoh#+_MdF)Y_>g7zDxU@WXg9W z%7xTtn!!6EpYeT)!MhUWr?k%ugLfy&1g7jdgZCuLq3rKD#vXeUlPJe< zyy^|!pD0Ud-v*;kG*Mnce?HeXNib19Lw{Xq@S#NcABOUIrha3Ryod77H}%&h$y?~Z z7Z}`}BomkzE;M*+l6;r`b&#8!L+|GN%HAT z)@I{>`;%nHV&E%n-g?7qi#u@~->cNJ3I35Jo0&hh7DsN1Ysoj9zGkA4M%DCz!R@VE* z-`A$dmF(}Q25(4_^&GzzgPT+2ILiCn;4LZg1@BMegK$`Hky8DKeh^{jGf+ z(gyq|MQ-Gz|Gj;Q8lRmh@^$9VAC0`7sj{5*JZS85f2wq7@1N`&Ph|aFsq&xnp9H5H z(i9eYsq$~MU!uYLQsr#MN0Py3($#>9DR>0tE)8sNWe;T|!O%~FhLJl|DzQ|2!ayISL+1ae)B~5~J*UfAqPlV4Duh{M}8=pV{yuRMeIq{%yoyBm3X(_}Zc*Td2C z^=oPJIqF;N+^+O_JxyK(L0N-L`5S4noa0+&@SACJ1oa2e?Q)hL6T(`6Ckd$hq@ z)8$3%&lrQZr%S{sb~y&`NSAk0pGt#wrpq%JFXIf}l`eBRUynCNDBk{g6lhJkj82y6nvUR2kfwF0*LQlMFtTE(?jL7~Gg4 z>*iJ$6g1kVETkS{VGE_H5K{LKNmpW}U*qt`E61M&dJZ?)5^(!Q5AD6l$lDo^{Q7BDv#Gx;AX^##Tb-Rs{_cPr!F+g)vB#c(e3$xP>)IzE zpP{@PoHZ(c?F-0z$iLlrP}ScbkU!D>HyRub$QS4@HyM3e1M(&2>sy?qRqXGffDA%V z)(&@kGG!Y5^EP*UGUYn@*X;)H&6J-r-tRDYU#2`K4frnSNhNQ8ru;kQ|IPF-nkgTp zzw9))HB){?dH0%pb0||5aQ$(=$sdhDxrpQcpc${#L0Q51X_x8$+MvAI2mGk>w93ED zLHQ`-|1pEN2IYkupQjDp9+a6Zf7ba_@$U%AUd#u3oK8yLok968=Fb-#nicsxC{L#T z|1x-YP-c<;C3if6GKu!xXY|_}l;6{SZ#j=C`|k_N>lr_m?>p7r{-9jN^-h9M`*$=b zFYgGP?9=|!8kCbbp6RCiP*8@MZ-WLmX329?fI|ka&9b^o#U1ra<9mleu3uq=Lg&=s zQt(e`Su4Dd&sBm*YN2JE1NdBJ8C>2)N#buvz@hqP_&Xn(b*X^3%i=GfxN3@9`(#X9 z)39QXxTbdE3^L-@z1P=>tAw~!@&BZ_1r)bY!auckn{M`s+tf~+K}Ou>QHm4VjfA+> z@tx@7b181s%$T^ly;XIHlqXOI!MW`)r%dj$mlTY5j!-LbgCe|h}F)bA|Z;O~?;3+Ya*?u8#2P2v>K!59LM?38@{a3Uct zMZW1Ixt!)>oU!nZPAR&nkoW}ZbxPGJTfB=*(J76NgJ%umAo5_Rbh-_1A4ZWiI%Q}n z#lnV9bqa6`k2}QTGq#YaZ_Ag91h_({;Jr#prPXCD4El%ov!P|ySv2UycT-{IJ(tvZ z4SGqt{u^Za-Q zSrvTH*9B28??C7VAMxdnXTMO`7Y3~gmiTtEu-HN2Am9DU$MK8^(@L<^KwCZl8wAUI zT%|h^N1lu(g2(%~$imZh$)Z&ZdKvfFJ$_J@On{%#kmHuJ6Qb;$F9 ztKu8bOyWi)!~8CZ&*NIqT3wQK)LDYY>XK}1C7wjbyU0Px;;CXJdeJ3CqmUSi@$Qmp zZuVQ*n`pN!@vl-me>X9lT^&NqD)HHKyyCOxy5f`JTG{i=NQi%T0IJal1Mwr)0f9fp z=Rruaguvp^K6?Xzw$WSd2jZ>vHhQbQja+DK^mcn2z0+o+G4PGR)$v==OyWX#>4L7w zwMa^;6J4dZ6J4d-3Hno4>2`wdYbR*F1_NN2(-aaTT(PCGNic?x~3hWrc>N0h2#X||O; z3A18gTl{i#DER{zbZzJt`zo+#gZ|pypue^^=&$V!>Oy1C-(m(GfX!yea^hh-WNq1k zb12!#P)WR4j?V#1aoi_+qhWzis)6P55VBGz&A>`|1#(v?UG0mUNR`~rpw4i#g=WYi z>@q?DQ#xBdgG?F9G^GpVJ`7+eXiDp3F{X=9mML8+uZCBLLT1I>Xv=GmWkQ|IiuzL9 z%6^$C?$7Zzz&MGordn2cXPJ!*CaN$Hol_i@)GTorZFWx8NQfa&sB>DbDoYisnefte zSx7t&L7g)+3X2=!fC48e&U|qW%Yx@9R4i%`MV+%WXBpNilTWn**Tm;TTDR&Y=UE~U zOuiZ*_q%v#n3ddW;d%xn1VYIi=iG%H<4(!6aPF(nD9|~X3%%UMC=7H-K9l_Muw)=R znfW*OBJ?iMHTfXx{tUr^|9@?|G-R4qB5!v37hf)*F)78Zo~@fxvd9AH^I>0KCz_ zRC#&^;9rurDCUs7l`8zzs1TMzsrO9=BDux0^7Zj2p_$|lFoooY-ss33xI7*)7kaa! z4j!o92XJ3U+JtRxq07D1u`{~NxnMXn3cYP$NCxT5@0hw_tJAnL>$sicph&0bxVi_T zaMf>+b=-aMZxj#cZyk3(_g$T)^YVcqxXgYLnjUwPj}e+_)6PK-8r~H80@vBEA`u5l z65l|>nKso3sy~K>53b`xJjijPTNqs{2m8L96#FM+Vp#(Pa#Gce8jcEIbj`_B_kEN( zQ8y=OV5$rw^m4Kc49Q6_OHRnZuza3%I~kZSeelAZ&IT6Cmk7HUSSFXizB$P}>~JRkkY$+L$lxIhkOX%Ew*I@zCE z6&lzee?wBt>22Q&>){11nF`m+DP|tzKGv4UB>?v`&xJ0tdquM%_ z*vuY0ri~-S#R#{Y-E=QT8J<3(LY(Lg=TL9%v0v)-CsOGjidySZGc11=#w|Rz0hG>z zF^AaxA^01v;l?^nkTH86nh0NF|A{Ooh}2R}vUw(J0R zr^?Y*=+qEQnYEzC3S}ov#-(t2Lb+5v(}kmpPoPb9nqJ@w!QXJt&g?iwn+5eJSfSHS z)dCh;N!gva@e^CoLUw08P2&B}RG=<;V)Tofk?OLu=_iOAD?^0pxu{9M83`yPNMPyx+1a$BOCZ)|J6v90;Ww&ok#nr~EEtL7Wqns01tzR@(#Wf_`T!|kMQ zW=&f&YucJw)7H$Iwr19}HM6FznKfr69THlvx%+-vJ*Hn%mixviPaZOv?MYi4s>Gn?C*+1%F5X44Fp%4lW_ zw|lyoEp5$gX=`RnTQghQn%UCU%$BxhwzM^~#Wcg!CYsq+A8SUvaFDJ%a9dk5+uEAh z*4E6nwq~}qHM6a)nQf|>#B6kCZKRglf3>uYob6rOM$YywZ6jxUm$ohniOtxyMHYTs z!l((0#gG_T_>DsO;#?$x$U-f%SUd`Mk1W)&S0Iivgi*}lkXJMTtBuAyXu2j8WL z6CAegBJ@Z5Czw{=l#KYlT0L3e1brsthyG-spM2ZY&O`1+3Jd)?#utQ5Lf6>$qiOEl zuVl4r4eVg`=orSRg|1Y~_1yn32VG^qgnX3y2lOViMbl?xY04x3?T>OlWdF4FuYY;`GBoFQ=&LQg{(|VY{ zryVhGz4`I(K08pxs)=h6ce5ksGw=le|Afc|rwvl#MR^?1h1V%0#N~{vOWsu|RrnY$ zmmO3nBwk>>RkD=z!r~m-YV|;c^2K-T&E+);6$^e}AhLFyLS7j52%3!oSEYUt>a&V`jO=}i1{`X&U9R9cT!i(36{DQiElqBCf3>-V^UWP z@?hH^as)Y?YHc3WA}AZLlPM8oeYw2|#oi`DmA(NMD~Z+PL@}=8#9vi)^3pO|O=^Im zk8sMgISB2@zbbOycI2Rf?4FfGUE@Rm<(c;Mqj7WWe#Rr zi$NuW^1-xFF;QENv6l%=2bFo*PjEKJI63}aPC~=UI~A6P&^_Qi))5Y^81MS8Ib{sAYaTv;Xw6Rg30woPAes5$1hTr zTam||ZbMm-Yh{Y-o*EhH+z^vH+LbHSd@)8nkb#?}%&oH`W1SAF(Il&TC^EtMI96*? z`&yIR)jH9wB_C&?oTTb$1(>3`S4O5eHy!VG?Bw>MPH87C&ED!JN^EOPV; zAtX;{URi9k2`ih|nJ(wa?JPXUzX*PBijb9h!bt76)$jA^r>Cn}w% z914RfpU4F~-@qhgsS9Gm(>)xy*!f3HNMlUMHyp-GV_jN}%pSQ+JqhI9f(tMUMphY@ z3t8R$k;|QrASGo5{v(mdA6(a@#Wpxgv2@T5y(uPMnP{^sUMbb=D#dPIVL(XP=SpLc zupCBPUS&onPxAMiBU?;!`SM&Q{y!PmTV`{hw;C;Bu>8n1&WAB&u8S%2CFi^AW6CfJ zZZIvT>Jiy)U_kOGt|K?PJ(riz)_*a^4a%ywkvtHpgAY9N8%qR^)DDxG=5gf_!D*znLOfqC9f1 zN)d7|9qc~iV3un8e$%#JY571qEnS3H&A5Ji(AXhWejEaPC}tKl5WCDkAUbQ8SdoVf z%u88Zy|NAFQ|m`u)u^=#%B-H1ky7VTq_TqZ@V@}z3$kg*M!6Sr(8oEoync#qIz{ES z+y}XAo$Gu~`et4?I6IMYa`)r@Pvk-sxVeKFsjF4k8yoATk@o0xlV zQf`~Ohkn0Pc}?zv9Nb6Mcv{&^$dM;hvd;N26Tjb)5_#U~FbqRoz*WQ^b=53|EQYI{JxNrEI2meCO!LYE`nDYJ6|t4Ee8a zfIpaaXUmQpt{>G)AWmd~e3cpTfPr;#GVOBEba17-m8FLayim^M(EX&Kx-oVSx&N!I z!)=PJ=nVX`YKq@mkn`B|F9zf1c;bX!!SI_~ae|LaJ5^PTvho6T@Ed;`oFT942xy-n z^y7>4i$L$1qVD^2Kxx+$-Yi$ehcH;_3o$jD;+;qwT~j(@GQ?tp6-2pNJ)k8r_Y|4q z)R%d3&&B+nIbJd4=D_Tk6V=yo$Z?WA1=VsNgt;@PXpRryx|!3|ZAN@;8XYX|-v94l z5;vg}-3M}=#s%el*iUpX(MX7^;8NWO)j=7gbMX>JzI*8f3I)VPScrBn)0`pk7L@6J zyhdTsGaqQMM)_9ad8iof(L1gJ%@x5TdKBp*G!8|2^wmg+M~I4b1F7P5G~T11_LY!T z$lom5j{mfzXVHC>(+c0|S2KZ1wE-G!O?Au%FelKcPR;c&P*2-|9KQ#eU!c zR?mShjuZC=AZ$=m2hA_ULlj>6nySC)QX$@ellLq;6Fv7wnt}Ptc|DImMd7W$7h_xQ z;%hGz`pzQ7t7yGMV~XqbD(W0IgpXYY+e%EsP*>*XFNNEPpW!0;g|3N4BZcJma!qt6 zMk~KJHQ|VSn+()PqmZ}`QJr6;QCKX+@*=;lM)~4ySTDbyM#bV|mJQITOuSG8R6>X4 zQl|Glr(l`$Jg9$lHu0+ZzSgzjlXl80L_CJOi-N zFo$I=T%cf;^RB~2@?`|>Qn1=lUjoIq`~HR=7yQAYKjJqFz1{T(?KH>3-marJTJX-EwP&${|J@@9_W^Uix(A4lHL zLH@VHZ&Aa3KKUu@zv8y|lXGZ%z*%ukC;C)lS z(JvpgfIl$x*ZSo~B-?@yofcKU*)Jz_0FF8ogYVe*We&?*9sW85zZWIXqa*#`e53gH zqCWfkqmj4IF9X#7pef()m$}sUXXi)7AN9+(Q-ObR`|p?k#X`Q|H&cGdFaJb)#`$#n zjUD7>Oe_WQJ_a28ql0{cdna)5ty zK-y;BixYJ2I6*g!6Lg+9!6AYw2&dP(|e4; zY_SKSoSnfvX!^78?d$+mvl98UaQlMc#b6Piz=wj}c*&eT1@RNiY{espkD&V1 z3%ak!L*fbMnRjzJwXqF<6B-ZpRF}&jH@LkC)Xrz+;)zF`;O)*haWN>#KVZ5j4puqN zSfq|lhPjb&8uIa8V{zlZM!pEsr0bfB3%rqQs>!MFtfp`>c1`31b5 zBKVc_IT|XcUr}cTzgBO37Er%$ltQ_xtF5Z5*nkJWchV}cL8@MMo)!GTn8!+~U1 zG|&A7*$z6#lWp$uWmfQzDX>y_Pb~P8m+xn%I>z^l(cAF->UPrVnHv1g*$ln{)$9SK zZ*En0bmzZHo!nFDLBFXst>h|0jPy)1SKl1%W@*vn$4Ax8x-i@hv16>$(;WuTB%n684W4NQ_Pth+`f2zL4> zKj7s)#w%YI`wQ#-!N9P53(Kjdp_%`zptwQnG}pi-V*6d%-3D2Ac%O_}vHp zK1v&_ia2y%(IA!nH^9kW6z2nuGcY6ttv=q*TWz>ODu)tIFfdQfqq!y;m@glr+LH|I zjnUxCfpLPWX8(f$HpS2DeEl4I0to66KP?vI-T=H&RnAp6-yivXxd2ty=UXF3lgqQNnsf+LV>zIAo2& zzWVLQaUu`%Phqhx8!z&S`e`&ld_*%VKgAQYaK%L! zO>RF$kab5;2QFa6UY3qD>l0fXkBnJ3O2b{Y7(_T)!`-&Hnre*EaE~oc=nFVjLrngU zvagjI?t>^AaGZwwZ84ix8qc?e@ijkNEJyMvoIo@AB466#S^+qbBjJmDZHsg0o|82E z#ulsC!O48UiLV6OA{h&n!V~$-$rm|f3qE=+tYYTDlG70{)A#0`aw6ecN4$r8QCM@9 zf;$~?LjmA?ZJcKuaSf77VXgkM;2uXj%y!Qn1!b_Dal}BZz6uv$dtrcFy zjT1!(vpB(Ei)S3L5w%D2Tk&k++&1iIAQdjr75GY7oZ#zSolk+0un5|OYsc^Jj8V_- z421)Ysds@CC+@>vor?H{1eIIx3pa4oz@@1#DUR3iH`C_V584uym3_AZmdlio?03;z zV0G$mirtS4kgvW?$8RWjtE_?p2G*o@2RTmk!rx5wC2-wlpZ75I{=lkqey^h_Ckc*R zbSHH$+63uN(U`t4Se)^91d1D+!TTTC35mEKtwbl^2K7?|lQW7=f==_7Sb-BW_!b^iN~vpDW(BG;TG15d zEi3!39;kLwh7X)rsv_yf3Epjq6MP3dPP{uFy`YQpi}|V-T%vaw#xmYxixUkfNYWMA zTs$T7yK;&-#p?SS{3M<(#V-sgVmxZmbK(SF28#e-Kz#f^%%2vZ@yE<^uHPk_3op8K1+xQhO>7O+3;(6_$@_e zMjBk97mU=qZ+}obruNCdmO}W5wod^YafS3LG(s%@N9a+XUgwfO+^0B7{sM%4pMHxB ze;Bh&pZ+Z1EaM{@plgT38n}F)ff{8)cQ)t$8Xf3Uaw{%778gZ&Pc;&Y^1e0_YoKRQ zcdd9>?106KdXP;oy2<6AjJc+$=TE#`4Kw%6?T_+~{^I`iIOlEcjv*N^1ormZIp|Yf zBBHZc{luF;hn=+i55fCo;(LTL{GB@)yZpTs-2` zY2d#Gu24Kuo5~W;!A8ZS*ctv(U_w67XbwF0ce{|*ipOYK@uCD#QaqL-oJfIq3VZ9~ z%36i`Xgvv(o<1v{nym!x_bO~-`7ccd_qbm`^#2_i^~<9b``gPww$tp3rnmh9>3b-4 z4^=SW7x2<=t!=>zuRgjPfj)5WgzMV;d6@Vq%jkM+GV3`Ht zAbYy+dwcpIdz#(PD!I#)UWw9Py3|<#o@sWmRkF(z{tbmAV}(}9ZbN?>^wSN!-m*&f z82US)m%Zw#j5ZxGz$s~vIH9{fJ_CyC_dNF-=Be;69_ygF{r<_8bv%C#-|lh>Xg%QH zx^vm=9B(lUJct3Ya~MthnTdf-0l-{Z;swCL_^o`)&ZC`dA1u*o8u=dTr9n2dq6sY1 zX5uoqxh6wdW1j?5n2*9Srcg|=NPoPW>;o-p70}STS-6MRw(Y_7b-3m$UR)Rs#`7a*4`=m02#tY* z!(?RPcEDl3BoML`w-zkx`WdW%k#k<6tZ!K(f+XPVr4RQ+#vXVloYr}n^VCehQf}3F z+=gzKe(VL`dq9cLbmu9sy$#VACFer?J<0BGl_r})B_r1h`glM|g#k@)lTJ{S&UrCf zo#16U)qqdX&?v=Z8d9vYJ*=fGJ)nf&M&#j#yRV4Vvq~TEFqOXU1@9S-#2RUzP2MV7J-{kG&tss{RbH^o3;4SbJZPOV*DZ#iQQGh#+A!WX8jBTu zB=Oz9{`LWcj9s9gb6~RJ@vu4H#Ci9?Y49kOoeDUzt)LCa>cKip-+U@Jpcj0^E}$DM z2h;&v$N>I3;nQf*?n8JGa2QjuUBpzZL%TmiyAM>+p*@J9Jr_`ib{Ru^8(>MqD76Xc zZP>eaQ-f)J1nb%7oayF;cbFFjBA8WPc!zmmF_6v+?{g4M zUU;9O|09Z2UU;98UygZ4=LJ=GAE3?)s&sfADo1C6h3?{fLU-|F9XgEe;(SVX8Aw-g zK4UAxP@*$Nl#C68Dr2-TW84lnd?(m`J{|NP=!)|xe-`aupqJi;TU9(%7C0DI*9usr zJ-kJH;gW~qJJkb978;WZB1~6CU zVq|nOwMrlNFqOXN1)mteTvhs`x5OWA>rhF+0A}gNm|&BoyL&iG2YbPZUa-as9`}Nm zJfQ3Y10IG(T7TUP<{|h^mowoXDwBTAOxjBS*y2_DdJnKlKj>M+W~EDk zbXHP@KLF~iq)LYu+xTC&(2!oO{7PB;f{e~RzcKe*K&W!hVdftG+*)aCH>IY|9f4dA zhx(7j*WtTITx25kc0rTAc&j znWl6sV&O7f+P1A)U<&7<@XxVAtEAr0SAxFF(DmBkT!xn^Wq9q4m0Bfh44uLMnWl4B z(`?9Bfc>zC{YgW=8T77mmEKN0gI}eF7ftCCC>`RKD!0IQrb=HkrQB+iy4HOMtkwwo zFR;H8Z`&?;LwDs_)*UdGy|V@zNVV~ZSKm6kBY>HeI}cPCi2v6MaJ1TbB&nwswmpV> zk0hJnJTen2FK#}P)a%5X0LwXTm|{CChtDvI}dAVg0VQ8Ey*;1k^Nh&o>e;9!&F-11^h}4 z4;|V2VYSn0U?mmVomFIiNGpZCbqYPeDvkGQli>vgUU0srQkm-}M?`kDXZrlg2M;<; zja##+IuC0`9v!k!H0LZtHtzu0r*W(w0&U=I&a0<0vReUl?9Ng1YzUFf+fDX-H?jxv zzwfcnrWpQb6$2|F#9qX@y8uh>GHo)@C(mye=$IrQGNp{Z8ePg={8NU^NV!Op5&u@{ z_ihIeG$lUMi;n^BHcUF+h1!2G>N5z}l?&p;s%gv!pJ3da z9NVrlm6GzcP`eZC`&6x)5pq;Uu(3T+837drV#EM-M#%MMgj|&owxLjEgj|&oJ_gho zK^LEbU9Zjvx_o%5gLN9(E2onDkB7tJWBT(%~c@(;03;( zx-UA`3}8lRSa7tAkmF%59q0waJ)mT&0Zf5i$R$N3Ys*F&qGD0b>wB1|hb`P*ho4hu=$_sAu zg8zCdmAP(mL`GQX$q3&wLYJv=<5!Y+TyM^&bA~To=q{+2or1DkLDMOqo+)5Ip_=QL zbFSx4IqBO8D;V>G4&zp{=t4$f(9^#r(uh&P|U%=WD^wi616*nqSn5!5oaY4tJfLKx0bH(^q8%L}G!Z6se#4B1k}<~%7JER+rLK%x z-2YQDbO^8aGHo+}A$+5^Ar->gJ*=g>JfP%h0~o@u#_C}w?qMp;G{d75?P`Dy;oUG` zUksQI;V~+Ne+#3t|Mm*l=K)sf!)DZ#xTn3~EiWkav|8qR$Pppjwp<@!&quy>CfRnm zsmJH;JaRcThvDjaxj0EVmCQ9xg$i)0v4DDVsPZ~hm2#>^6e_2xQcm?(K~$PoX=WU{^WqRYq_>0@L%S=nW8&ztluWh;lOa5c3U5sie zOLa9a22N7Q=<4U>FE5*GFd4!byUMVMfq#JQ8dx{Q9wFr^ zkCak6D-Y#9A9}$T9#C?~fS1tm4u~hZkLw3kDSt~SCM3bAK#BV0`eIa2k1>z8hP{Ag zT>maZKuKa;4sF8Hdce*6l@Qw=Iu+qM;1&Z`I+!cNzrvwxyM264u%Epkt!5+rTQ(EyegQ~(!REsOn-3dR z1qiwy3yIQ$%ZQJI3d{@`quvbx;?i}Y=rBjg4 zo?R{8$L^?Tg|-dHAV@=4lWboGg6TxRR)CXIkiXl5fueeIO!yvbFV%3Ir7pucEsZ9jzFlX0b6tMzi$>-F7;_9VW`i&`YX5crtr|aPq10{W{~)g zHmA5BDMjb2EwQ9Koyu@%?vjXVihh`p_&r0wN3JFG!*31n2GMrYp1B86zxm1d-VE5D0sjqCu?u1=3txk={DH3v= zPG!LcdsMkdC*i0aG^{)R3x)kzE>Y0g{*C z+Y+8hJp>jyxO%m7BdNt)Vkt{@I}!47sV1hA2cJ)+++&7(cW^5l2(dNwx-Hu`4Q{!9 z%huGk)bK_a`5V1Wo9+Y(F+By*str55!7V?t>F}m3dVa+ zVa|-UzPzKHZAra&b>Zc0Ey4nVWR|wR>}9E&hgidoE2Q3+quzAVnh|Nn71o*S&~4T$ zSzoaoJ-Y)^a=l{F8tjcy%E%2qDyXGNFK`aNPz}#EZQ8tPXcPPLnz#x{lSx{~r#GNi zu08T}XHo**2(&>!Btr3MSW@!qbQ~n-O)+`o_GYDs+>DY4Zdh*7>ZSR31q?&8(RzaRb184&>i3R=PH)5mj}H*Hur!#_qA(pV z7WOkJtnK!&%k#eRA!fUyy-^)aI+C>EO+y^;I}-#}RX3&1ZzKmDRV+xy%8n(82GGFq zxcDn>9_lE5LVK+Fj%%Csb}}i|Rek~p<$YFjGI_?Fs%M0^d~s!LMVgGOcdfw9~6@18h&ZqnPm7*>Pbm&2e^3@!&zE82ZAY%E3fd?DCf zK$8k#xwacMH1NVoT$o3!U$6KFZ{K(O*lL9Sb)pKyG}r1uG`7gD8we+`S*`{^f<95R zSPT{bZvb2_MM2Xgt~VDOLB42tkR6XMSL^O+47(E0G%c-MD%Tc5P1G#ni`)93nb(3@ zH5-Ih)PiP_8Bw@_D6d#<1dPCpgd@)>c=th8!YNPArK zm{<%7OHr%J2XUT@*%S8s)bZ1SG+$C5D;66;6sH@{N5O$ZE-BcdodBSzb=vU*Qjs=| zut_q3G!x^;gF0Ts3TlP2RSmm4U>|EA98TSE@zSMTM;w_x@vVV8g)1fg88sI=FG*=4)}q9`psdO@ES? zNBCzK{~W=e)W(5ZnRsAhdM7V$;GZe}Nh1&ild<{(x%qbb1aAKG!|4yDo27fsA3c2O zQgHalkxOr5Yu+ZUxpX8Qp*4@Eo=#uew>7tJXNlMykIUe|{%!w}*Nsxm#9oKx52*yd$!`T8E+EdvPJ$54IE^*Hx7($o5S^*PvFm$1BbS4 zOn(Xe{L_aAc9Qy!Jd(Zv)K5tL>#3*zeklD6D1F1lxfk5{-~H>4Jc@Rlj?!Phl%4{S ze)g9E*Xp8}hHPA-m>Y@CVn%CN3R5^2pK2ft}m$dEtl8DPbN#bDl~K zjHdp6+VfSk=h2Jr#mJoIuso7J@(b^J)4R}yr&G=TE%-YXg2Aon54~-0^T6KJU^F(k z`RTzZJvX@d%^=nf2X5Tn`S05F_JKECJ8)?Gz*VrL*-AcYLN_(}?p7tNl``@N8rW-A zBfk()zk7|qXPUsD54puR8#c-%#Doi8w$)rXCmLaOrr9XhN?s*cMSofg3!Ze}k5=;0qQAK8;gos2 z+v?L&!c_TuHzUiA7xIP0z{?iGYP}5SqU2?Z^XPvBJGbJ~et5`09SrL5@qA^eiyBZ*Zt~oeKXGTFiup#- z%YyucM!DYfqGi8@-Up3k>3_4)Dxl}>jswP|j`mmQD*?WKf$H!<1O8q1=4SkA9xg@! zkDCD~B2?uuH5ia)8P!zR{KBe|H7jWwVc7Im3(J1kYDVQ^;Ce86*P@?n8|?z&p^D?zP;X@Fk0A}@#Z>d9a)GQ=Z=kqlAfvYsHmcwg^aczU zfhMPx8@lXqZ*`H}z3P!%%`g_5MM8_g5|xp;nx0=03R1`Ur2vc$ zS3g!kQGO*4NoYjq5_0*|ld~7ko;&T&PR`5<4`A%bZ(gt(K;xiJj$0!X`jHqMfGWl~ zTEw456H2Q{^6Wok|842BYzov z29Ltfh15Ub7^ryKM)Ez>5ruL-Y&J2@v=l9fUQpbNhCo09P->#xbH{j;ON-vx8d!9dzQPd{a}-9xhBcqUENn$< zRzU65uowxq3#W^Gp+U!?*BaqkGVZW0kZ{$*{>&^Vtl40p66T@dVNXHRpiYJ>*I?Ae zdO}U)@?~fRnIF+wgThU4B}5&ydJzVDrC3)JumHnHW88vD6^ip%GqKC41c7?zGtfAD zPIp(zOM&<1Gr7s>3uGm*q412FY05AR6Gz&OlJD0-s36F27OEPfAY1@5H!&{rq8S*^ zJXEg;T&e0*D@V_1|3_od%e_aBOzcKRtN~3>9Gr)RV#3 zCpWMSky||D=yQ&)x)zp6*rbLCL>2Zz3@WWm zwpex+1fQ7@PBJeC&1a5@sk76Qe(u=0V`tE8syu8L^p~4?)L`m-VjP@sGH52ogS9t; zdPO1-aLNiElo>u7g$`$HP=2tt_}d|men2fR)}iUwAeOMj&V-!+i6QJX#2^ryCGZus zSvywlUGlu;qXH5e2tjuMJU|D4C+P#gdvRo^rYJXI66sJvJ6FM(eshTeE*c=Li+|Dd zs<8b*g92;p3SWb2N?buSD^l7PU~fTPv$BUpn7Xy67NAcvmk1| z6u5rEW8nyx*8@>5g$r=Dq+>qZVW}OC3?0?nsbe#fbXR9)&p}q4buPicz{<=A4BNod z5$zfj!dj6M32%iibwnm6kK`*A(Mkcraanc@IuOStaxf^X43PpK}41L@CY5NRD$K8;;mM~75bRVWf)R$DlBa* zS)!jij1Ij!i5q#jGiP%&oGn;H&g!U`MW#>@sl#cGFc=+tI+gqa4Nd|)d*Z~*B!(Gs z*aW@ANH^3IEmgvK=$j&xD4rKFkHc`&DAvJS;+jp2pMdV-^uo~tjprQC7+SmrNTFZA z1O--%B!#c(I2@eh>Jh~Xwc4ow^X9ZT@`y7`OO82_NJJHF!c=Acav^NV=(QpmYLp6! z7T`^k;TS=yW4Q3uIEWL(3YHE{TWLTU2rbC1=y<~z)u~(L6oJaZ+_}PKCLy(w5*SV- zgc_$q!-*eQTnL0=hYJfYM$`i9T*)^u&IM~)rU#1)m0_=(Wq^ybS}((;K>1n97-qy`Dgi>5L#bzJ zL7+0>s6b^?z9TNbuM|d z-16~7L2yji05Lg0G(|-kA8>Sw5rp}$xaM<2WvtMCDrPvY!dOx{CJOM*P<}I93Tos| zj4tPa5K1Z`@JzL|4DBAz;$h#MdKBqgHOZ#J7I%|eQCM}uJac}0YH}_+ec~((HChTR zJPps+7=su}j&K7LdB_aZj7%O$buuydoI?$7+VjUl_?_%CX5L~mW}FTXUh&Tb`N{-% z&lT2$&(nkoG?VNateU|T;Tf?=&=7QJoMOlZ6m9hmRVGLaQVl~*cM9_0Xf2G1u#K=g zMrH|=^64z|YRW)d2N$~b+_cChUYst&ih>oKgu>-@#6evxgk8c2V?y>iYwc0?RVG9& z9BmK-EmGDhEMndzR>--WS+X$NsTyb1`HwP48W+Gi4_d&P9W65kj#Q@_PGp!}XfFG; z2)+nu;bIjQG0{fNz%9pYq=LyQVgfD{&S9emQ(nOQkpo8y1|3G_DLxhmFQVo`Vj_JN zaGl8~<_T_yAWkR~C0oqO8BF>H&h?>oX&Y-dU2Km;v2!%4>IX_|@cqL!V>~l^?A)x) zQ-!@nsE@fQ6g9-TY;N+*@!JmWImK?Ew0f0}8ilLn73sICexCEmCeT+-bj86EWhIQJ zF1*Z_>IcC0ZBs~ig0x{KfnX;VQxqRU+S~x^hjr&0Kvg;!0|OV!tKb371u%pvV`9c_ z$pdkg&dKy*GTm{$)IM5rB*WZM6p9n^PN$<>TUo@It=7N};9D|1f|PZ-*5bq`vt;3W zs8ToOgL^0r>{%)iH>ZbEq)^$kn%01InoEn0(-gjLmPQ6)dm;lp$=1S>Zp==fOKsX|e&1`Z5J$&gePZae2LV$~Rn zK>>?+8X=M=589jPY^jglfcrU8uy^BGP#RJq&Bn-9%9y>nFd3)d`Fgo`7M`?i>-pFyS$kINF!2~}ze&y^=bwb^1!3rW23x}Fo*&-Lk zkkc(8LI^^|Xv%;p>*JVvE(a5gq$Pw@rQ^bbuElW&M6fW;2QN5==3j&>5GG^+v$mk05?@N)b2} z2aFRxXt$17RHaB)BynDx4@yd?3s6{Pc+HtKVPV%HSyDiCvlos{p=GEY0ez|ygtO>X zqaQ-AQn?Cwn1lDg`5Uls%osvc>NP|0yy-E>a7%9xQm9CP7)8(;Geikx@KK={;j$v$Q!*c64&zyFuEfb9Wx8M_s}Ds{uZTM`S_Qdsp52g(B(EYgs^owuH9_&KF+C_`CU#t?ALxfu56T zl^YbXJmO`!fUgswd<8*k4@w%VjK{|jmjs7FM%$E!GkO@b61BSMZ5fMB_2ir$wpolg z9n%PY93t!;1V!t`k!5${sgbi8(qAmYAQnxHil8}oHY~Q(EnpCYHclf=u?BF_E?sNq zQjqg!o&HBT2r4=2g^N10>NJpR)v&2HnYzGbZ94634y#jd;6gV!alR!zw(^2>8Z3sz z4#sVO%c6rajBqVvp%}gjtQzDK%SUi0>7t!0*Mn*i(}#GX!g;h#Riq^xV0f&y6iv5` z^~0OR%;NYs*w?J~UZ}r{Ds)H|qfFou>I0|;w1BC>IohB0-PN8&QVMsA{kvannR-Qr|eSCf^x+5k+DE?t_Ly_B1T=u#kwM+bCL zk7a&@^AbPT%?w3bu&;3_NA(%PVwfq*RM7=xI+#oP%Mhke2VyukBiz@y^d&(LnSlD3 z!E&%HY@A)Hg)87Zu3RUp<1l+@N=HS;#gJx(7pRg|1&XPGb%Zm6DVt7BI6LP!wOjnj z>EkpM6--1KbwShJegrWKbdbdiD0|AD5Q+>V4Nxa;?b8Kh(K6?pL;J}_3V3x0(K_ia zHS+aEw1ob+^PQ^non#%niFFMWC!Q~qWuu7b9XiGt4LA=T4;Fi=!{9wFL2VS^5sJ$j z2b(!#;p_~fnH5zlyxYXOJ)@GQte~KTIOs}YNn&P6H2a4lM><7KF+*>~4T8B47rqPYWzzd6@!=nI|8jx#b3CHC^km zm}<;8=LE(cQz%_;rlio;(j3u0g1xG=sx>ezeNuW`oX2O~99P`fD1Zy&LOh8FC@Qs* ze`pOsE_8jNjP1XXH*;a)>=`VpO@f-$u(^nk6X>9u4N#$YPTp!sG$9m`Q&1A)>X2tz zeg?J}*AljE-F6VgG(tKpGJcR{+3@RzO&0gLJwmoXqZSv2;qt0*x$rxtRv>x3>RbqM zFqb5#0F8-tCki^vf|`I zdqC@f?<5i8Uv*tgRIhFYt%3=JR7hBt`VdXXi~H9;SC>vp{GJ^ayT)xR(C~g)3_RR4 ztp1XZ%4QpR2pRtQz@xXA^pVU2bLDyu>+f{m39$0$W*Zs)QiTEn1KJgOK6^djP7iYr$q zkFtVK;|LOG7m92%H(I&XmsKjg8ts#7SfLT-ml%a>Mf7DwJGl1KQnfh)Zphuf5%xC@ zBtXeZ$k~=9Bwkl3T8$hV>i3rTfx<>g2APRD)sJeW{C0ra6Pp0{6$t=aqUYjS7k?XMJ zFY!9D&qXyu)Z2WSXV52V-<;+AX~-!!g|TEe{et%$fE}X1y(QqSAe;zs_PNgzV`WYS z?4KKF>N-Yc!Cahav7elc!Nf}Z+f5;ao|r-jmv9@L=nYCEse~?L-p-W*=PfdLr}GVT zO*X~J;+(QFEGGVes^lKpU``+5#=r+ig6eoo7ZFxPs7}S{`sdT(fu&u9ErLftg-ZWR z>cje+jHuos&{OecUyMM>>OTE5xUj5O_ASyppeFiW>~`3NX|*EhGch( zc&t^WW*lpVa*0Qm0|=_fbQY0$wK-CnI@b_6gl-Uwp%utE6-1TQk=7z|@C`UYgWZCg z>9+aG(xv#G=I?2qeYl4qUg%lYGMoBo}3THwhbOmT7R@V*UJ=vQxD{q@_1C8{O;6i%DbRYe0i-xH^)hG z23ikN-b|ca0V{Ak$z`DR5p@}8?M92b3o-=H58#g@VK5I_;t#lCgYR)D;zkVqT!PCO z{DlNJV({-IxM72TFTwSUgtg6RhLJGPvh^Q{B`p-ki^vcCHt_Kn)kD)q^wBTINpc20 z6{D;Hits!u@Z)ikoPpNwKI3Nvemcozpiu_nXW;L~sm{msD)5Y6|Gi#0eg^+>f*UsY z8wqa2;Qy51G6sJ$!HpWcb-*D}#~y>XCAd+8uT5|ngLfpj5ran(+_1r!1eZ3rlHm4e zv*L^O|67Uyj~Hm#`tyio{7#&4*1%(`ic;Qv2AS{13feAD4Ci zpDV~?&iKOs8#t)N4|>b#9=-B^Tyl94nc#r;U<{kq+~C!}k3%}NWPa_Dzm#{cfmS&x zy-q7jTHnLeS7`y8^?Hr>vtBxLV>)xwz8mW!8+Sfx4@NY>mi7eR&YnIjYr4yW)1*E*Y4E#{suKNsZ zFYB(Jvi_-Ncs$OSGw|y%s)wyUt&ct*C&?N3qZrkrm#x5W#z}GpZis2nQaqgUagv;YJ7UxY1Nogb{xF;lNdE58M|<^3?lE|Of*UsYV1gSl_;7;D7<@;9 z8#VYyg4<*8u>^O>;8)cKN z|3WLh&%lSZu`Z$ASyTF$gjucZt#PIIKZo-Z_~Yj<`Ga;g@G7mbuSuBKA{O*YlVEU7 zan2;z-9vGu_Zn!Gqf+Z;()u2G3blYpuRSKg9z3iGUdkjqtLd!nK@ZQ{kG=%Vod9tfyTRi2JNGo+E~7iF}YEb+?EvFUH6On$oksP z-aMxK^kKbHV;KC=1UGE(lL>Cb;QyK6G6uhp;6@DoVS*br_^%UOkNvW?J)vnJdj?vz z{<8O*n&IgD$EY4H%r8Il_w_hQ&OmD|nAW99{#t?GOL7@#{e~xQ;E&@}J-XYw z(iJ*jSB!+g8xq{G!B-`?5reNza2bO)CAd+8k14I`Nf? zdVSR3En2scqOXqAG#}Qh=s1Nxn&5^Felo$07(92C8*1@l?B%cS@%DvW&FHe!Au6ePf>l9;Xl$M-lJD4LxVq{ zIHwHl?jv!f_Zn!GqtYj}vZVDr%J83P0Uy+Bk216eAJYUcr3}+r=c%~w_y21JjhKDZ znx&qKbL9*)e(96zu%!S?csY#3!{gk1%$#GdquT+KxZ%A;%2B#C;h{1oLI8lan z^KaV{8vKU|ZrI?jCAhS~f81VRA_WTRL!QpZA7sHm%hz8Pc4~&3;*2>1?}$+s44jWq zJ+9d4gT2#*W+SZ|9`0M1t%G3+4^&mW&ClRan``QhFqVZEDa2_2~Mlpoz>7s ztNyJPduv?Q{m(0Sg_Z@jFz{uH>Z?_UG~cjZsZ|XgQJmANc6XyL#t*NYPKLzD3h~K(CZ6gRjB?!TbT2F?dUYQ&-8Q;a@B3-C7p7)IiJDpGzOp3?Gd% z<_!FCjOtMeU(iRtA1BEf_%|`CXVAZ@kG>Ws$r*Ts_N@;o|58)GkmO4G?Vum(qs?(C zx$Y#x`e<7l5e>dJ!3`UHU4k1i_!S8*WAOC}Zq(qrbQP9r%;0kgZq(q}1eY=RLV_DH zcrL*W8~i|mOB?)&1lOa+tp7J^d%++ETDJZSVi`x{jI##5HAdZM;QO=*PL0`})zC+c zjcFP8#AV(88ZBd=UZGJ8oKRF>HFk#i-?*${A?<(kIto!vKQ)5qQn%~eX)tJGbPH@8peXm$N@Nj*K(FhSw_ZDNu72O&JsS10kmBoM`u>(w zH=5x&psZ~Q(M+x>1OIEaAnr;K3(uDjx(KnLM;w_ps1w~xu20K2eV zS?=U*sIlUj9AO|=Y{-)*`l4vZjgMyyY~y7@h3a?_WlRpW8i{~t2l`P zyM}>xxALx$J(|Zp#btXUZ&&COP$ouWzocTdq#n}#e;}?$9!ivHi}$GdvFnXpWvZ0N z*u8)#sh0njHdi; zTmD08G3=Vt{N3$Wv{wYcvaP(gYks>fu0wz8f2}M3_tjF_^)1?PUP$L|`mF-TDwND# zeFtvvv#V+shs0kkF20Wdwda3}=C|vx@`Gj2?s;~7xGVpAu5&5v`iX6p(_Jl}Vc!Oz zz5YAi;GWo3wZA3rY5zMkKjnZw`|zG!f8U|wzd9UJCy~F5|HRq&4ecTppLNnJ+t>c< zrr%?D*q;AAn$NCp=%SyEpOyJ*060dL?2CIc^5~0uH|p5^}&&HpEw|1C;b6JzWDF!J#C4F0#*KesPKv^Td; zF5Uy~692XQcKr`{(w_gbn*Xz!{{wv3_OpC;{WCmk&!0Pxk<_^ZE|aBmcfIug79KE- z^?y$D&#jZcn}5EGysTfz1<3s@zwMSbymiN}KfnWnEe)?tt-rh6?zH@xOE-@BKce}+ z*Wz9B>rTr}kKH(?{-q~fp1Zp`+?|$tLA!Cx`JGQ`eswq9U2oc(HGg+M$A8P^818yt zb=h^V=C|_gdhWkEXyvtraaYS{*dy!Y|H{=a<@ZgoXol|mTY)#;u`+r6obDz)-Iby1 zR%q8%g%p$4U8v8hJ!Lm262{MFf2d#k)&HHHuBLCA;7X~z^jCD>%OF~3eoT9UL1`0bwQ|4#h1 zp6T^Y{L7%HGwmpW2fZDh>EZT=gWk(M)32TQ5zq8yCtjV2b|m0I51&Er^BeT&P51r= zy>2b)(hPd9>P-yHp!e!^@UK}1pXtFGwgk~OFus+ z_+C0ZFZkzQ?B=U0(UBDRs+)hdE54iGGJ=2p#cqDS1^8{Kqx<)!b?^@Wzq30r?i-RG z<9>sC_^Y_*@2!S^ox8VpPu>swutRnH{qQ>Yf3Xh!YrtnZN^m!SwhsOW!1wF#CK!`# zUawx_yDk0F-vE5S_U~CI{qc417X^>li;Cpuv@e&}DW4zU-3Ix3Y}6$*I==(>jOJ~> zJR#}ZF%JIRI{2@yQ_gdee#qN%gUf$Oi~LLAclH+Vai@Ggx?LyuA$RI{4Lf@b4G=kY}HrLC`PEG%;>M_oD`8y5#F!XS@-nh6Cb-nmXW@0W6{H_7!=TE2Zf?~FeB zJ;C?-Z(mubd>sFP(;`b%cL)>C%PR1^alBtYR=|tbZ=N{kPi67d2_N4Q!t3TZ9fb!Q zS9u5`PB_C0;XNoEfe`xctRcVH5R~z0pSGm!r@BbfPvCPClRnOwLfc(O6h1k1cKq0s z?~bDPXOH1rZl;($GZCjQMj_8;#3|06fBe$)u`@W{uK$_YeNK2jdi3N}c6`F$JGOW1 zfIGZ`2a(Dd>wJmcPKv|`}g^=LclOmKZaDT8yj;HbQ?q?mQww>JlcAxBA`T>)n0qIc&AhF__j7914LW&x{H@oXmYP z%+JoA!6^&IQWy{N*sL77(dP_Yp2^bL3@M;*b|p2=?p)2Ym-1bR&dgfFO#FoxYasF_ zhi?n*Fo?N44!G)bSWf%_rOuOx`+O@$GVA%G9Q)2gwXO2?$hh8F#ztc_TF+pVdU{WC zNXTwg^?U@N2hm>Cj62+D>EP zojT{#sdG-%UAbi9)JcwQTkhtwDlMYTVO>&XDn!=~nkuWpO0ue~LaUde?P6$-w7YD8 zE_L^o6;TD`mc*kn1+kCl1G8`SYq-|z-F6O&*)D9_g$=#CZzTaXcP})w$cDeorW=Rv z3k{vSCoQ*{4_X%R*k7XHf9)^Q#g@Bw+ns=Rs(+^bf9rDZpU-Xftj>y;FZP@i!H}5%`5viDeyweFlCKzaso{@pD}e zhsy4G*e4Slw&eq-;Fp76SNziP8-*XYZhB|+Fnh|NZtNpzw^{y_&4rQVZT^%i*A_-v zSx39FKO8&S(j6a;1viczb?3&ub93dSM#C%*d0yS3k4v?Xoevt!|ABFyoquBG@qwx6|d!HPqVgj;=p!2=(sTtXCj-A;zZ@y-cov|SqCDz(4{}q@TubDhV6U9 z=S}Q0F+)WdP}ow@o*QE>^9cEBpy9K*K#^Jh&^zmSOkhFli$kqLBc?>}UNhxu4=e9$ z_%uc}ovY`QN8vNa&GLRx6bvrPGBGhsEGa;vuX%(Is*t!-|pYig;jwQ3udHndo^3$e3mt52F% zyP&?Q{>+BvminfXrj1{+Y-#;Tb@P_g>$)S?)XrZ~M+S9E8ZH3gYAJD zo2~KVrq`brn=qyRd>pF%arH~rx;^uSD9(R6AeeYhohpv2Z#l80sbT4vsF+c|q`t1X{`h%k)z5DMX3Mcn zO?BskXhK~}oi+Q!+Oz8#mewws6Dg3rMa!^qNKULrE$4NXP;RMl&As!vzIls)Gg5^^P85{Ev{YB zTzhVF-I=C$3EkMUL=RxJPQ5$4QdyFPow|boY*=1Deo@1c1vNN=krSE>ZgjO)BZB_c z)HO80Hs;736_h~s$<>p{+%TbW#*dqX0YSOfc7$H~g!&Wen_HTeouB9%s6Y$rcj8zL z|Ldd(3C^9jq+!062t^VcPHt#f#J-MS)_6V~89qFJaqav?i)$CwH7rT!)Tml7u0NmJ zYwb>4R5y57ITV=D&{%)=fYpI>T4Bpkaq_%v1-C#Wi81=eFj80Q?17eUw^Xb=#%A?f4gJz#- zya$m|i`ZzfmNd+pKd+&MLP`ghmX$Uy^A-(QTHkWsvZlpHs%mao)&$o(Qk8c3W>1xg z0m*>wvNO*_qgRi@O}7R#)h%7% zEvFLYR&D(PhHq`{yyj+|$56C%fi>{l=B9y2BXvs#!Zsr`Y?wE2MMZgS`OpDN8kU~B zV!)Y8&$W)5T0L%j?cma(iKD@#!%TienmueoVpkjY?y)KQuN}{lj_P}sjEyLpg;3^h`R|-dBiQm zKIkd$G@SSB3?v-_Wg&j^&UrzRle1}SK$%FOg-(p6&_5?l+(Ub;Syq|n)dAq7Z5XL zw{KRsJ26vBd#l2k#2o(iMuk&|nX=pGD(nz5<+Rr*{6iivQ%!r7!e0_I#k7|x{1Guz zOM67&e-SgKvv^Ofej+mj}K3CyOi5c?kH40xq z%usKyQn-njA>Ll5@L9xp#1Vz(5%(kxDtsz2L$KXacm^>;ul>N!?Ehrq2=RV}#}PBs z+V?6vf|w!JzFXnJ#0;(WoeGx_Go;$LD_lU#P-@?-aCc&cPG!eqT>{-BR&4d|7U$4j6#$#v zEw-`CUNnep9Q_1#Gh@XEV{ISARvnb*Idh&w!%w>DhF{J(w4d<-`fD`(RUZ1s5Bg$l zPsASoXiUuB8*6(e_V-`TRqb=`SM6VJLHmEPee38`(9SxyZ*0}*n@|UlZ6CCx#nz7= zf%5nqs2pE}VVLtwmogOCUp={yTWNa!W$2QH@EyG)gk~-IP;QJ-E^8+AzY4|Rb!hLL z_LIS&eFpw)-aPX!4BZn|_|tzLBaF2@8*6(q9{lOhp}))kj<3N{tnFQD-u84nu2Fm^ z_Jdx2j1;l9&*Nj!9L>-;zD6B_{^@u>5+kR8;6*O$d_z)@^{O(W3!g4n8${IRy0#`xu`v?{!QefWhufMv3}&Y+P$;X|D7JA){9sEa%6BN@ z4{6A=6^E&9^&);1O4pC1N!PO8wiPwRLHI`a$qxS=d$QLfRB-lO1kZ(8uKZpbyDWY=j{e&#&QYaD^$I6_^%i=?WJ7i& zukfd@=7q9&p9CxA6}f;9(JKbMjQ-Fs9#GbUUrgOtZ^yqoNPQ@I@_PS%`dWREVTD^<~zc9HZx6w>G6N;^z_hb#Ru72ebfT4-;&90VQS)J>Jgn^1Tp zZ#q>GD{soj06+%4X#z^MH;rJu@g@eU>rrEC;Zs(;2dZ6vn!3I**e>8O9pe@M@jE@p zCqfJQ)A7pJtoXlKu52=Wec}H2KLEXfRR~qawmsYaDKbU;Po&+LQ;b>KxLC%+rt-+jwF5py!Z)n6l#kR+TE{gw^5aaZCBz=X6O$ud>j)$U?)>+Qfs` z+t&B|B};i)U+BZJD2w-0y*NDobXBEC^)xsC?EhAq;7Fe4=ATCm4aFh<+zIG4)6eLN z&Ocie;bHmbViX#uY1WK7<)3`j59XhlsO|8W|EOm1D(sHrF-3}4dCaHU67-l%)rk2= zu>NTI=i_for;n0bjc~X3&s#NpaTpq6X7t)bp zZU2n5jW3U_pHPUYYJ4RRf;gDO17y4L)8oCs>#<%+{=4z_HJkV+ipNQXMGIm>vXyq{ zc109boHpmlILE)Uf8Cg&{Oj4TUH|$sj{ZB7{Z5tsPycE)WJmHZWHL3sot|K&{A(Iu z=S=o7l!S*MEe%qn9UgWM!zvGj#=|l+tAvL!CvAjHbWZx}E3b#GR?Xu7MB$M<>={L@ zJZ!zrvGyAC2prj~25Y{_rF;pnuKc{5Fe)8*|>oX@&8x zryy4O*Pw5Y>|FEFWDqz#9ZzPzwP*dJOaQ<5JhpLhuUK0a#t!asB5YEF(i4N&!&y!Y zr$1N~Svx)w52&{9#@ha+JSYB+((a?jBFc^a6aN(T4>Nz!k3Wxprm8{ybo@kh_<4LJ z6gATKf62pl<13UFNA|fTsPnD|JNw@;>B|3(10$W^Mw8`#t*`p3(*NmymLdB;`QO`L zPykse|9c6rv;QrI!rK4tQKX0Y-}NXo{&%Hj)ye;EP}R(E%{c1Fa9van<7c4oNd7lT z5i9>og`FXQ8Lmt*qw)K&{>c89imLyU|9yObgY;~CJTyr7-)k(~n8PP~jQ>r5*v{)K zm7b=$>#O({%F&bEKH9m{WcRJARC%w5_7jMT?}ijC!Q#7=3h%}vXgBC(de*b?t*XVd z@lVLhU4Wq?u?A}|K+VFAEi=!IRTMmA9L~m(DSX=S8Q0e;1k=Emnu%7c5I49=A+gZ3Vhd1SozhtB1 z^cRkgIaxX(RSnJsphebPUleatq7GlIoT^GWI1}BIrC9OP@$sg(dj6}h*v7(Fscr1> zpM6u;58WH@&DxDQOid5*+6z6U?c4Yn+E86pZQxeaj@<>HwkEWFq)!`qq6SmRho7?3 zIsZwC;Dk7^5_GYR!`iq*Pft-cj6b1iUeGjiG|dV_GfdOmsA+07&9R#1Y(tZwX)e$- z>orY|rkQ1EKGh1((lpC7%@^#@#$nZl<~dC>Skq)_nwK<9m7%#!(@4^++7;&Ish0le z=+B>MhuguT_~#0(UsMtQ07p|@qg0?3X#cKiW9t`%O0Qwa6v*{tH2`m$-1U9tw!8a#eGfO`RX5;&zr2)c?}D7frUGdxb0{y zA67bODDHCMPFI=by$M)4A9uPNmW~*K8+skLoORI=Zrdhkc@tBE|GKxSi;sAlQdf1{ zleFv}zL6_nL0)A0^ETlC^42T zKVi@HSAT@b2CNsCV7~-Q`|Gh!!wK5k*k6zRPuP#biTo&Bg>=i+~M_O0G zXEO^SlNZH;&}TpBEg767!;{lf&l9cInC>G>h7=Z{RMAbqeh(bInFV8IaE$}fRlW%_ z;+!GF6J&6#6r)hJ1iuLSrJkJ_Cxcfw<79ZFZ=#HB@Q;;6Yr2e;Wvh~W<#viJ8Y?5H z1kpGtVyRk}Kcamr?6DAgYqpH6@~`o2aGYrpPBRrnFXFcs_3Bv^G~Go0SNO)s$VUG} zS+s%t*CdUV6|1^VkX62OAg2OF5Dk)qv?RG&IFlcSESNtA382 zbcT&}aBze$@$5i_Y46UPTnuvK4JmGOGxXjqKWGf&>aFe!f`m8dxP|qOx0aOtI}AO} z(iKK(QyZo=g$qnQ(w)Mto`&rIGduTvk;4^!hIjt3y=L|wn*FzCpJW~i2$_8!voAOM zNoGIG>=&B-ap#4vKulvmE?~M=Yk?Qz+bCVk78KqEYdlZ%5A|Ls#RFxMO;PBTx>>~WXhVH&wRrwb5*!O#N z_;oKF-p|7%(G3X-{h5va_#;r#Kkh(tx{->!~*Ve8*xo{No`T^wg(1E7OB;$!e$}2cXxBP$Wjp_)`5mPTj z(hGK3v4^ehMRAu4$R4f4w@|Fhg;dyy3U>N(H5gr(wf)y2cZvqKK# zGFeP_*+4=a#y({Mxg-fT37m={EK8kZzlI{&1)WK)Rmb2gKgLL>&NWcTuW|wF3=GP9 z(K2cGf<+o&Pv^3a}=Ct&`KuRL@-s>b0BUC zKrrJ;JW?UjdMyLUJP(sjT9n#n=A$QRg$HnG`8UC*(t1w?MOTqF<|gdLml(ISv3pQU zbKinlGi@B5%!&G~uEDfPFO%q7h)#=XV_4#27$dD(Bfr=Uv1yYjm7ahm)4M>p=3CQ= zuX0}S)lFt3nncoOos?)YyHk@>j4I+@jC|UuTBZ<#*{9R!^)QHd3&Wmvx<+C4Z0=&R zyOBMc$Bv_CRBYj97N0N>#f!A(T4E+5JFUU+wXz!1MtlgO%pe>xZIn7}qs_)&fc|Bk zfQKm3rqFEJwM{Kn+KDty=KU<4!%k<;EyUq`b|&)*iaCplSjlAnEsoTH^{`TXFj;Hb zkda-W&S??Q4buu(q6L&`&V8q1b zQ% zfcj`8#K#zs^dgOd0=ih~#TtcSYQCzG`s>~Z`(TeS)^p-BOkcsCET-l73{CJD%0Q%u z-+~~RuPqQ1kCHNSF-E|NW?QLGfO90HeleM}Vj+=nrpx4hqD3x~HxU*Y#(jgL1!*qh zEX^`otVUR5EY_4^E3gd<)<}k9KLDOG097*lwqYtqW3)56*oLd*_2P^qliq@I6YQGN z)ewVI9cGtsM$A4yPScUDGbSfE&5Z(1NpKPf)QqVvCo6nAoG)x==1vgkSTU5(?0Kac zOG}Icqs(LetdJ17$T67_dMP9P0kFyJMfY{0nIZ>P$}AuYCz_>Q_ap!{mWQnHROB$o z=(8gsqo|XN;!ZM3I?3qQNk)HHMz;yoGpwxE`@pe#R$r`BdQ{J{vhPV^7U?k)hxaCp zI%(fp@u*S;U1~1NTPCgaJ3iuIDH90TX z=LcNNz1Z1uE;N>Vv9sk~>})x}!z^b?JeG4yIxOdwbXd+U>9CwB@mTJ~&X#kbvD{0Y zE%(=i<;vl6Ie#;-LbhX#k+avpDk&M@e>V_Lc4Z1owIX>ntdsv1{%lUoUX#@;f~@=z z+%Y%$D`Z?`qewL(Ik&IQO+uW7nIN}V*9ApB%%9s&qp(=kAE>`Z5z!sy&nfjLX5)IL4lo*c*Hh0*Iin2;Hp%b~obzMvxi_y=m&}gc7 z0kcr<2raKhEGY&Wsq1Eo0J3E6D2+}RL4;rKXpQEIS(H$z(E`D%JGo=Eo{Plm&?$Gk zMvWp5nK*ZXMk^xKCoZ>gC*2DQU$oU0f58Nmd)&)V)E8ZAN2-_BS-B^@2eOu**Gzs}o;z zk5By48*pABeB2j}`y$m%%~o!UCO+U3E2;mvn$j_u9 z2W6n7U-aP^ov&GK^NaV8!*VasaJygR(xMk?xWg|VW9`L13})M%esNbm;3XRF@{3~; za=9z%CcfxyzxW<8o_p!|;|TZo#lPrMtNt1z-0K(DaU3tZW(eUvzmQlm#N}*zwXtMZ@eQqU4cAK;?ylksEPZmX zHN)LiJWj*jNKe6VcNH&S1(JJ{hTFS}?i}Ck#*$sddGwrH?i)?won1va;jO8YD#Y!G(A+<0_%|U+v4GFL^PkFedxiL!T0K>yU~96t zjat2};o4*or6oUFrD``Pi+o&n%>9IM0G*RX5Jt=WRKx3&#bhMj+|Rfm^hLKPix223 zpX=`LNEUr*_OCxvtahR;mHg&w1$QNj7Z^p~>n`k078@{;<^I6gz!!ZYSzN)|A9WX= zOcsw)?oYb*sbsN-ZuYaTeL7hVW{)iU$>Z60PqKV40Nll{Ml$wAUrd(2XA0`7<_EY| zvcw2jxhZPB>5Kj&SxzBNRm)L$M6%?XFgMNC!@56N{*@*Q7#vTQ@37m_-~-9Bn30;U z=5_d6vdl{X4%&JwTT|rO1A#LPUYjEK(Wu!5Z%&cFLfXyEF?d^wjM4Q&_7BQb+f!r< zT{73!A-N+(9wh&6w(kGV6q!QXbvO8)6q!Zb!{B>Uq)nV>@O>%rbGGkk@ck)rH}NqB zKae8VFfj8CelSJeM+b@+{HGMTg+b6yO+ZLZ;7|JwF!c|m$X98fQiC5(k>w@80}cHn zDRL}Fv&_^#3VSf}2OIon^q<~6#NfwLJu@{hwm++En>h+Hg)Ek>Vss=Swxd!B8QV5)qd{<^~8gQ@b`e!%CO_N{61 z@8o}hX}>m2&Y}NaXz=DVIhr}8Txa^TEg;vB{(6J24@igOe}mCydqD2%3w)!^ zm6I>JBOtG%y>2q~I|K45j_0kWKf40*E!yuk)8E|zc_}BC+g*DEWIhx34r8yq0qJLd ze{bUP9|8Fy<=tWMs{wfd7bPFGylJ3@J~|ir~kffM^t@lx=iT>{Eoqw zrKeZdEwyt0Y5aX{x?IEg=0k%wq{}VTuifCy>9UgiJ~DV~x_q?|_+vA_ZA+KealZWA z^`CS(ivInDU91*nJJRL-LEx|KR5d<3(`AtT`Nr_u8I%{&p5Gb!+#i&mGQWIp4>+FV zwJRupW_+hOz2K%;=mq89xU@+%cwbOXQS+<82ZHi@`h#@ze7QD5mNOp(9i6W?XUH$; zuNek!&5&h`*DQm#Wyn_{C^y^S>oeqSYW_5Mdxk8fKZPBhX#1kKX2_YePj{z>>feqG zc@^_*PgDQL3^|+nUncHt z`0dS*AJu|~XQo`mc&RpcSEiiF{4&|#-I?-o z`qLDH_hd?k^Tkwy_h!m*wAVC)_hrf@)MvWE`!nSn&KJiU9M6=0=X_LS@PSM@oc27y z;DecRGVu(9TeIXD^v4qoUYjLfV}DLEcypG#i1afJ-j*c?(!XXIygf_qqCO`Zydz7# zO@Eqg@Xjnb(g8lj;9Xhr1KRIYgLh}ii`A)}!F#ggA<949(ev%zEZM+(HpeMHmj1FY zOI9$R&v5jK#r`b$DDz9L6H)#g&ywdczs+^@a{0?Fc@6z}q4B4$vg9m|$0Fxsi19_g z&XPkoUoLjaRQrQj@F5{*Lj#%^9Wm@6MLPnGdfs z_Slmxed)m0yY|VJcaz^uPKL@~`?BTjq~Gq0Q|%a3UPn+=X<%OvKrTa7*kvSkYW z?{?=$mA?*V%cmF*JKXWfkyBa!dv|(xpQFF*H26S{ypH_tHTmXXj@(as-EZHkgyb2_2YZ~`6y6z<{1RgB z3(iw8EAn|rUP=95GI)1LPA2`|-0=v>pP9e*8U6N# z?*~85*C{^j-|>(#4r~T(ZNLFw>Gfn-$kgQ_<4;kE=D{o8(4ja5S*XnU1uBfj} z?jJ#M^KvU3KBp0f;w=0LH_;1uU!@R9E!@O8fcI6lz~x<(ChkTD!p(W`ciuGXF&6AD zO}>!q>d0>GUlQ!vo*(F8*Vc)hL5AJB21N;WF|b>e{5;t$BD;+e{;9RQVo;ff-4&hK z8D!XP+Uv3#4|bO&ccYKbC%aX166`LU@73{dI5U0yYUBYSmn1DK@NBC&HaNEg)J^F3y#Lyta@R}P{Pte`taD{(O@c2sz|E<><@5yag1|C;^nc%Tyn|F-2bmC!<;jwkNv0>hF8-vo8 z{0o=_9zic_LJ#_SAnN5q2;I=bzWb}$FI0XAgVuzG`F66h7i<+O_f=^lOFjb_8g8I1 zAA$`+6+W)gov0&cK}6_S9~W7;+b+p1G{VPo5DbZ|rJRwbHYi6S1BON!m@V&s^MpqG zc)8JuhUGbM?a)NuTGcjUyXT#y>~4v@;Mu*W zZ;BEqzApkgMk^N-84%Dtp9?15%6kyr(mkTPl_kzXcIw_s>zysieLw};ufigLK6a0C zp$7l3dd#lD&~8kg2;n_f;B#$}@E`3>0CFe{8@^MWaiHUJ5?l^&g3?ULEzk^*^DFPB zU5hRxVA#sb38H&fBwq(cf!83aD7@4DI>Ggx&Rp;5%=MnmTwNHJ4(5RHy|$%PfDNBU z&duJE%n$UYj)ZF!^+-Jt$AX&oNYfEu2`b(rVDuJGLWv%-T=hOEen7ax$9=VhNa-(}we!<@IkSVcV41*l#l7$uJkf1SJ& zOac-N%fkEYFd|Z$`i;&;d84yY-so%;7aF7BlaSgdat0ha{FeQw3jZQ2ZzaYl`|9LE zh)L}Rk6F|+@C}ZYje1INCwfY^6CB%~((MF?)dxnCzLZvr>&%059)pa@%ZCrck5m-Ra`b z$Zb7?+OOwYc}p=vWnYtQqcpG=23;He$<9XuZP1@P8}#SS2K~9SL0xDJ`b)x~3vuEX zwwzz9)Kw&Z0~>||&P__8GC4aRFx_$QvMqrH!a)P8WD;vL42;Pb@<=#SoufF>8u=;% zEX&arnl0n^oQA4jhZ~Fc96-ub9jzw#0*w**&O{5KEy@_l&z# zT~LfH2FlcRVR11UchAx&BGx4VWxt~+i$oFYLO&~1CN{w7yXR`k3alHZpJHWSmwZ2H zdetpG-xArO0I%H@^iF|>xq$-~j?+<_9S(4u3pQ|!y9H?Bf+UPZcJ}}mT?K`x%_^)w1&f%!LKFGV}BdaQ$6yFBoSZ6Zj*Jtw0Z2Fne2I4hrQxD9OGiAdgoamp#es z+5n#gV`dM)y4lw$UAWlE`yJvq`-bEOvCA7Lwh^mab%k}z&T1&q zZ6=QH0V^C0Dz}cgZzvC|hYYrkxu54i-DdLefsr`O`wE&KbE}V&bdF6shd5|>YUey0 z=dDDbWDiSa($BG}Mo9fJB)o~7Bz}$JB+)B^u6+iX`|{K6)yVBK3m`wJE}C%4>4Txq z&r#Q4*tL8FSANLApe#jj<>wk0mM6e0`C$ViGS0T$3@nl*@WTA=2A0Wh340h=A#cWX znV)B1mE1%@#~2usInX&j-@qFAGDbB&V&H6<+Y7M3eiHgS(YbOE_W6bOa|$k!16kY0 z^r%suNUcf?Y>{bjpZxyzy|5l0rjprkt^6|ev?A|}$`ew62bp^`m)i0+j9&g=`)}aw zi>|U|PpVyRzpLfZop_4D zJ8k(ChXcj zL|exace4kNYU2pO=N9vK)4dpFNn!&UB#B*c4)qir`<3zvYFSGEP^I6vrCFALG7J!z z&yW6h?}s_W_Ve|-NIg$-lLQI#_$}thC3ch~$Klxa=OPMw4WEaI&Tud|qTn^&$IQGF zaaOR887K2AOjQMMa;nPwl80|8f^`ubzRhHvIT{{N@SY+Vk4#nYFE)e3PZ5Jjf=hWn zSr@bq1$DRBL@RvCtvJeERBwgz(%!_OcnHZTFUb3=%)5J`ORC-*%13F5}e65(bpYBKks z>)~dl_i7GNGm~oOIWS_lnfW7g1J7-mxlqg;+mDB;S%qr0iX5(lm~itZ9!^(>oEFh% zHc1lfPLjA5{Yw%&KS~lwIEMIEo+4=RtsUZ9JH)qkh;Qu>-`XL*wL^Sshxk?_p35?b zSBEoOCxnAII(R(FV5-63XmhnUqJVpeyES#88{tp+jccz&zJtm_c7u0zba4l(OG z#H{NOv#vwTx(+exj2NzyA!ZZLd$pKN9bz_hh}qO3W>bflO&wx3b%@#2A!d^i!=*CB zY~`t!7PGZO%+?MuTRX&T?GUrIL(J9=FoBx^01Fz{2b4`bs zYdXYS(;?=X4l&nsh`C0INsXX0YoiT36<15!=vm&SZS*Yf(l&aQcWLXQu(%tiP|?MW z!x%LYaSk{}7hkAQkywpH5M8W!mWd_=M|81{y$bOGmfX?BI`&41A&3hXRf!2{9h4Kq zrARW-#VZxhm^cmT+T~Is)~Pzp^CXcDABZkKfZ%eXvqc@k%cYzv-o+H}q6K0@3en|? z=OS^Z(psZNaXJ!obTLO2(~Fp`+EGu=E`^UF7e^O!M)&*ke9_D7!s8L8rX&wEc&{Nz zaM*f_@UQLFFs*zcfcU>!-R0l}T@C)>-x%m8-8JgWLq3ia7QQw?HySnxUuT}i^2=Yb z+4Tl?vHIjhFlyne)N;Kbl!MAG_TP|?3f7}H;jOxSDHk@|>^V@Q;9aDZ@C`~OsQ4E& z@6!*-PK3AHOrixBlJ;ix>|4RwD2{Kj>0Jenu-$LfO|62vczmm(2M;FYK5G%zBK$j> zXWs>vQ|BG}cmgWIzgK#Ime&#T!d!9hSNHRB)Lk*X%;8B4NO<)sNn8YwBpRV!UlC4m z9#^Wtk;19^cmReXoTjb;gN{#Br0xh{IHEaxh(&N^7Y$W`h;ziBI5@c)+2RuD5DlB_ z6qcXOqCK8PtJJ?IW5$aXo{j~a;2Ve0-r6%Q@gy!WM*FyP#BkR2Wu#$_5QB+|Gzy9} z^qXQ$8MacNk$AZ-+V4EFTu!g)&qF9>CG!=E%kfk5v}2`yi9!(_wv(h+lC<1NkMMKU zQS$^EzTHg1Xa$?5?m*nljb6aO6VLWV@r55MZ?;6gB%q6m%e9VoVnm{sEK(>a9xej9 zbd^G3aVgQNYZZ!!e2iE0vfT<5iFeqWHD4%HCb+7It_=+*&kAt{95uSGN}(!o5hHR# zy+Scjz}US)OQ;ck#^>hss%|!hYdLgGdj$F?30_=G60|s+gFQMIdIzKD@VO;nGa{Sy z1L2lv@By{3f-`fHpmqEgpnde*jVLU#nQ-32PrH*kVotEsWx*uztRiBoLi9%ysUrq? zsN)YQLL5%DHVm7`acluShd?&hmrJ64$shcBkv-J6mR`fXMN+mSS>K%?waT*h? zrgd&Ly;G~>-B$802FeMlomPM;s&_1Ul2dl9tH7+ztWNI4YIcIv$_QAUYAS>BKMeBI z6dPP9O&@1PPd8#B>1Wql(K!Yc$*dGmo}upX;pta-9+u(JTEnM8-oenC>*$;~NW;|2l z`O2X%sPeu7zzYmaQsyR*BXS8n?Y9ONvir9?T@Z>|;tp40`ussw^!M%vrOzMS zfznim??{Lr&(ZsXA1GiL{;=&l_KO` zI@o>2!7L^Fek0qjw0xkGmM%(@eK}h_XzUP_e&(P*CCs7*VwV{RL}$ZNEBcUuh3RM4 zt>}P7)cRppHEQjG3af7{I@~#KH2%lF^YK67;APbtkeUh_IOx^RH$1+NZaPEdwt}a) zY@P2cN5(3+fyXV*C7Mq6=K3e7N8=F4}KZ zZd>p<{eGwNnu0GlxR0pu#7Q`V`Z1NP^NT|GzYx-+&pKB^Rhi9I#2$6b?0hws5zjd{ zqYBT<=Bo>e3A``gN@o99t5!w>kZMi@$Rp3_^A3*#AK=VrTl52m&v417dZOY(cf=%b z!$tpNpkLmc0vLD4Onyc)v>X3Oli*`TKS~VRN~-p8V$dFEe*MJ2h`gC2{Hdc)5sD-y z-{@yb2jvE9B)=_kg2UFIDnxt`fg+^xdhL+=+Y6(Jvi+i>pS~QH`$*oGqW| z1^Bg*J6Gm#xV}*jWH`}9awRk3w+1%Kl{tXlnGUXyGg*7kz>8!yhwgg?)rGP5N&SPe z4o_2LU3cIgl_|qqb){FP5w7%P?4(>k$^F`er1Kp6OdK8DjOo27LcYtsWqW#C=6h zwR*9p;5WHg9!*w61+Nw3c&d6eh7>2*{{(44JItLkLsNVT*UdReU1qdWpG61DdJmpf zg$3oi=tS?KT&KYg#p5`i=sip$Atobl^)7FOGDzp*VT^q5;TI~DEmjr+RcOkv_#Vpi zK31cM_$S+q(5MJ6WTRoEPyeeZZWKJCPpPi5#8XhD&p?fYc$2713kZr0VA5xh_LZ+`2R^LI#193nB2U&dw6Z)gAD;?m$R^K5m_5%;G z`VMt*lK3DS%*xxkXnG-TA@kvLRr@PeLNPdb--Xd0UCwHK16jlF>ss7$0{1}qw)QH40a6lfS7mP?ub z`<&t?XUaq*kySQwYKsXuOU_5iDn3^|bH^3KcBoQ(p`zquZ^3%Sml)!(Jdg$0YKSB9 zB)CBFDu>@K!-E5I7Tl%yGDp3Ti8t+DLqCcycj%A!et>)gsu!;{tQN^95iG@RhE=2d zfP&ULCqP49<(>#9FTTp*YrQI%FC^=$O|ass^joaQY>&R+NnKk`#ih#PYn_wP98VhB zvTq;Y8`P|$u1X&udp&jINkdzH$8O$Y+V8RDSyABIoLA5xWNKTsM}U8C*L7#Immx? z_(n7A=aXGIa4);^eR3N6_lhguC;tX-DSpjarsex&4g33!LuZD3pNt@b75~$;Z}rOu z;aA1)n)Yk`ayRvV&pB7M-|Uy=U4Y|GE!g0F7r&gr`U4KX)WCO?P zAu<8`_>T33ohBFTfp-B*Dv_Ng@R$0SC*BvQUk41%SjA z2rG1g!&wVr)A6KK=tO7Z5G7XjqMVuP0X$}l?ud%eECa*xPZ7YA%>*5h4`LPy%~o8I zEg-B6Mhg5E(_|zx$9X#;?2Jyr=DNbt@k~)@p1GSHlz;3CZu1SqYx2K=?6S}k4&PnV zN1bo)i;-mv&_86fN8O6ASo>N@4(tH`NuLynW zEQg@t=H-o6=ri>MW-;~qTq#tbx_Ur$6(``Kubdk|oL<*-z7_h~n8!+QSYd^}G57ri z$-Z-*CfWRRo2<}5Q(>j^npo(2FWryMrwO{BjNXRsXSb79-(cuVr$-DrDzV=xeG5+N zjqd!Q)F}wkgMLvmt-voB$)eClPCZ)4$+XwUX5cKjBmnq{s^S!J4#)8ery4qN(5q>o zLrNu_nqyd}r(sy%M?w{$e(G5!SwT1H?=wDx89p>dJs?%k4WyweUtf%ULD#-G9_!o6 z<1$1@Xq=BeQP7{|<9+N(!9Y6L1m9vDLlEER59~mutqEPMp5&74MX0~T#}jrqtDJ%v zDAa18EpJEC2(3&!xHYj0;H8NNw_=Ec&?*CkJP*@V=rRNGY6=o?XthcZ?DYG7z%@R` zD<9nY4clIBU_|~0%d*f~LtG^PO4w##nLH~AaGik_@=xTv-gf|9!b~ksp^_VX`ieo! z>RS`~lkc@^^t}%UWtVz-t>89vI`ok5AGAXt6Q(W;P4u5W8AJCk*d#Q`@80+?A-CgH z6^AaHor?MAfs(!W4^3NbU|1H>>XZFk?ehx+a|ovxSSXLDxuzOeB;TRh(+up7(cpu6 zNrI~8z0Lre;pcIYx)aPNJM`5uS}eqK1JJghv`Ah5zw3zgTU9-i8lM_Dti8T)$yfP8 zR2b~;PmuGm5=~A?A#>gB-zZHIeDo)87|fErHjpy~<~sn3MY7uhO95mx#x;9gz;&Qa zuygkMfVqS&k3$m7-Vo4!EacBI}G%+~^C{rg_d~@cv;9nA=Ug571L9?Bb@axkNRy$znk~|)A zBKR%hucW7DFT`~)eaSJj83tHXp`RtaG|CqIoOg+uB;d2+_^v>Ox-L(AKv})tQ9L7& z#%8Oej|N3z55<*e9m~XBY}QYsq2dvu{@Ma~+87>FGC-p$QNnhm+LSTTA6cVhAg3fJ zS}k%g|CE&Jy2+v&(IAbch?l6Qd0~C3n1q!=$q;Sw8qv(o4%KM3XrjG_=^&gdQnAJ; zDc57QNSuVAD;ciQS)u}tUt(TnUn0JNc}kAe?Ha{;j>rhzqZMK_buq8DUnKZ>wvthL zB5k$Ba13$DXbo4|;$p;4Nu`FD+9EXqI7Y)&wzv_=t)z;4dHyNBpoPaKV>EgCDPHOW zIF34S0V{m$%6PLrvBd#6UdaRvciG}o!igI0w#9=~W0Hn@Z1GVk;Bgx6wZ*^K*O-R; zY;h_LSgqlHTWrC~r(`lO9pD9bTbz&NQ8I;Q@{md5I=$_Lw{M;5- zVii>~oi{k~dY&z+uuv&Ep7&PqHkmDMqZ&2LJXmr%;vju*!N1{ATmg$;kS|K=zfy3g zBW4u?F4V?($`NajTuK`Bi+g(CDu!IsQ8pb&MA=C_iSgyR#~&p;|!svGc;GTeqkZTA&05*9(-aqRg0BQWZDBcX71 zYw%bUC5bWkt5X?Y4$!CWc^l!V*(-ymDT+G$&9V6^Ku4mo@@{fKa;ajHw*}&|FAJ_y zueD zJEdP^41A?0AWHnDT@im>N~>VIBr7l%{f=elWrdM>(i`g*;PE$gj0|EW_k!c{#dT#g z$I9EoOx7oBD2kHA2>i{l`3{EGlEH@uRw@d$l ztmClitc|RC0KK(JFHE+q&#ls8>{{*8*O3T6xAFNrsM~KDIVAJH6WoCVB^TdVBHrcV ze8^)#*I@sCU!YLk#_Zpp&(tyf4~9bh2k1{(3DFnB*}s%z__7_oYv^2(0aq9ZBlREn z7)rYa2NV^}02AJ#9Z*amE|UQzhKc2W8$BA(&j-4$kpX2bq#usZA28^kp)bWOGhi?) zILl-Z4biQ`VmVxXz)+3ypgYC+-#`Zj3>!j@Wu?(wF2~YBeAZlPumO6O_ST9=L@g{{ z+J|I%(M>Ay8URWS3w0{%~KUHxT)4`E+;eQylOkdd&r-_A#$3V%Wzm8s9I z`SU5l^1lW@EF1O@wkj_hKKew=&HU_qSp^SihAVr4;Mi@dlf48#)mt_~t29gx$}|wF zL5f)ZK0#EEOhHN4S!JVtg}s;w4a+J?L~gHU0*&FgI?-~=A3-3NRpI}mh6&2XeL(u( z!xhTLYg1X`9@waC0z1RUvmVFXQZ|tT&vn8=#C6#u%_~`aLO(r@ESzYu_y+S{S?n8y z253DAl%75-nVR`e!vEOv3T$KfFG~S+^;#Cb2aN_5(u#xa#aVFQ40R>Z{Tiqb)$V35 zn`v1?_#J;cgG+|%@f&&~yxY!X&8viW^#jbIOY#3C8~P|F8asS0YR3W&!>9f&yE}*U zJizkp7z=LaF14&%pxtnLraj0i=NgLJMil==7dy?UJc*SLo60*-`MRkTGpur^D{fDs z{2Om0XE`M8HMMV}HUMoP2`sJhcTM>hC@(YR%PGncGlttI*kxAvM}{P88Iq@`DZfg} ztslzgc9d7R7PH5o0^yDjy3>}ZoI4?4J-az0At{KYEFhjor3D(0g7% ziZp0ym9|A5P(H+fd(kcneb)+FmGvH?%GF-5(SW^ZVU4cBpQUIwv?&1lyv(8C#~>>! zy-i{sU{w}-^sXG@1=U_~t*6l#*Dcy1lq&v;Hca+$a@SiLABG!jhtSB@j~nka?L$Z= z-1x<8`-$1`sQcg)c0NaTA<9O)ftkWqpFq4DaOmqffDr~{obWx2yWNZ7dJJZ=Q7X2h zjP3HhMnJd`|M4dHGJsT|FecwImBUckXev4ICoz8Frjl{8Hc@GnA28(%lkKJ)Az69Q zl+OUOG3vj!K!4cS#4N%{g2Z{kOmYk&RUtz0NRt7f6TE zn;1JcjNW9VRKlbxjNW7zwE^icQk6de>M&BZqoJDBekw?4T}M6OI}H>2P+Hgd7g?_& zR8jSB+WsLz6;^^p?5{1omKgOhp6&ZFL=iQhF;~T-kP60U`(1Bd?peE(G%%dHIV|AR~c@0 zms3pf-6-~& za{CNyn>xxX+`hUqA{Qe`;yE=V4$nixd}ePpP5Va_2WvNaWxsZY8_J)l84+g+DwID{ zGa`@<2Q?!CRvs|=swm6GvY49!Q4c5|VgQ}9ZBAzgtsL#4teoKmb3CB@90Qox_9z~D zM!e8V)Mfy~@++?(6_%Slq?J27p!_}q7?!9>60eVJ^Ah)%m zosO|XYDT1e9`m-};{jIX@4cqG&kOjbJvU{??h$pYz!=vp4vVpl8F8@v_jEYHaXQ9K z(*tJTomI2u!kNy1x7q3<$%`l(whaFPl^tUgbqNBh7^`NC@s)+DzZHRa3YXiyD|cR^ z19Cb8@-ozx*BIuU5bJAIZ27*jXR08w%IBC`=N!wrRM(p6l5u4!^HF(iqS7jFHswQ5 zzRQ%Wb+2KCX*&z@4UrhO2l=qx#asp#tt%qMU zwdbRDq+6@JLiDmK|6yu5Wmg_B;A)U!b^ja;>iBKjE#80&58PgYvFx4mkU`Yi*00|5 zdMU%Q#&dD&S5HJIWm?t*wYu%9t`yt$L@sZ;+KlFUR8HjjwyS!Cb0^@WSOmg!H9kjd z9j8{fx_)#GT(S@3P2ylXQh7uRh$gAoSbtdV4q_G3L7OqXAGornmr_`}UyB#4@__PR z8^HN^UY#2-0!m3_afQ5`Am{1N%iqiR|YY?tjdWVqRM(NINJan*mxGkI&~hbq?Wol>g>dq4ecV{HoUs) zcFw9y_G**m1;t))fv3?J*G&$K?9)86=Ra{uW6x6KxY;yafHQe+eW8&(Zvi5kXWjNJ zrt3FQHuO3qefwlac4iJDTTP~CFm_J^tl}xYJ++~P#yo+A& zCl&QshUU+pdD+mMrvoxV8qT`~hUP8Md~Im-+PsWziDWRqP;e$sLqFYxz%WzJnY_@H zlVg=B=dyd0r#xoL*{zd0_*A;%p>jczNXN;KCA=vkcg>FXZ zt};RtW1uoZca;%N2hE-tHQcHGX%A85 z2VU^00Xie#lBTtUR#X|GpUMcQ&`R6AZTP=zxFW5}Hm}XLcmcl$;L=t8;Au3*b(6y~ zLcJ#=yw3<-s>Us7oa#oi{}nW{%NDuoX`ZcH&!J4GfMrYpPIq^%KZkRD1);hy)x?-z z3aB%}a%O~E3F|PE*ypj9kJptCFtQl)r<|#xi9uFjin-c8M;EI(b+RevYI~bo{@<(Z znTCw9xYLj^7U!CB#^N4N`65sGep7xC=o?M>&&UP`U2!PC$dofnWWzvQsi^!=W>sEh z>L|OyHKkszkG0>1wVg8C-foCS_0>c75o}?vKFf{cG8M-k^)PWcL|Mw$q4B=N2?W{_^Imu0RDaQ0T94#a@z z5FV>SIC2aO^j9x~eI8&{@9pDxSW`6SDAM1 z|2oD0UBQlEn$pX~m~yJJeB)Fxc+{wwTT80?OwWu=;VZ{tV(Gb(h%kRc8JU6 zI+x3JUM}vHyTiB)_HsGi!{t4f%l%$1?nQ&cxXki$Y4&jGd$ux1vhQ&(mje;4?O|Ll z@N)T$hs)V6mwjF??jq+fF8mLXxGB3l;^A_i%jGLC7dOQo#^nhQm&#YX;5{$+*aONB z8n6yS*#+@L_i_EesyyT&txPd0P)Yqja~T?_TSv!QqaO9)5>}6qTsbl>NAASZddO}3 zGJ|c8jP(Mz-GBz9m!Xli64rE%&nb3~Aa1ZsQ+JST-q#87mYOxiej)?qwKkE>TRI_L zZPt}j?N&5OeI4hNAhmg8C!`*ToM!(?pw&6H&GoEq!8=aYbo)~DD>ZK0HgD+YuZ>Kx z{{xLnD{NlYwmHLvNF3rFH&=^)VF6OQ+~y2#bDj;6)|zHdL1O4X&Q>#_%WVP9F9y6| zlZQ=s#nN?^G{0LhWa;8ZB>1 zw{2#2Pc?5?gTsI{RKF#3vSTXOBz$fJwZCABD{q(TO-q|8SJi^+6ByU>nT~A>tUPoR zb)>ka1yG3pKM8-+_!9CIdpYv{fYI6ryppe95;fzLj>)-nptd2e%&T6z=39&$Qg*x^ zTrPr@fuUJ375FruCT9C8R;Vw$sGcjR-n~rgF^S?+Ii@G5YoRumP%iTq(D|}v?IB!3 zg}8QNe0uQgUZJzOIie`GM;xWxGjG%UgZF3cO zcC&eh(_nMEr--F^%mDgRA|ZFAn}aIX-bmI(2& zVEEHlNuap_G@KqZ4WF1$?+kkgr`pTlPvt98)MRZl0hw_pFZFN;xmq>$RxHfRzp!mx z&5N}mJ~;$KWZ1p&;eDU%Av5euI|#u}Aufbhq6nAc%ptV$hb*5QkvcN98a?lluCA3Q zaYx)W%T7&Yr41kg3Cao#P_k{~aVV7I^U&2<15=SUvTUF1pik?Aa@;IVly)JtG+eq= zXOT-fpnwDe`TwR_8M&SKWOm5KO~+i1M%kvZ(lsZ??wdvlp)N{pF64?1ZNf^8E^cSK zq1%+Jns(1Z&qg6idYDpZgF7F_G78}TLo?h|FOKQxMQUmwH7%8W!97CspCS}Zq(eK_ z_Cl|;KB~5$g9Bcmat8qy5llH0>)_nmjDu>~Ct)51`x=WVP(&l>VJSA^mHK#N2C5~w zz3-=n3_*cs4m%Vc;CJn=c$F5xDtXBK1BWStmiaxVA4CqA)=KR$Y1)4%m#$Wo^qX;N z9ENmBnAm~)4IP?rAHrdPW&jAw+b*@?vxAgJ4PSSuZ8<4dj)U1MP+?`*zaE!12=b2g z%IhR;1f&^1Cclv#(#E85Xh(Gv;68M!Ju`{EQmMI<^%z$JT;A%Sb)dr7gwQU1(>e(q zXN1DW6guAY*uV*f4WQOxA_|PNlYCM~J>hX35G(2qKozP}VVwV`x32+`?5fUtGqVyc zKw^+YJb-LBi!84UJG)w~HcP>Rc4lXHTRS_`%(V7LNc+^&{idgPy8E^Iy`Je&QIy1j zL+oIa#CFMLfh1cNKay=?Q-q(ggDFgir5GqXQ8_6nLIEj=tKzj}Tf}86-*@gg@Ac2? zh*VPU+MRdadH46+bI;$s@4jm%*yKCXC;U*usibkQ;0U};NWYjM(PBfMPLN3H(k&$@ zq;n`7Ou`ZU=~o^UvK5mQk_of(uhG;=uM3-IV&d;Gn;~*3i|~J9UpMOPtG6nRZZ+7~ zJABALbZ~E@-s<-D)>_?tYxOwt{?AFGoxv0?d859zuU4symWU7eT6Jm4cF<|;yKVNC zgZt)}R~Ec|8(}lpcQFha)!ZE?0tm6*Q?5)?52fLkIi&lfpb={dU7Y zR4E^r?M3L{AgV%4yweV%*$sBxK-h0_y%_)r`b2TH8mt4}1-M>|g4iW)#~YoXT(vyN zjz<@pZTB>RT?uHKmR7ITTkD}FimUious(>(S}?0-gV2gr5LcNIg&T-9 z;7KzihCm3}3S99qJO`kfPJ64|ad**{yVmsDthxKL-f!r&V)x}%b;l(^N9t_7Rwpnj zsK~EcjotFB1n*fTab@&KCrL)sELTr?);kH9}0(4Xx-7a^cK;ikh z`LGqmXImJDKb( zo1S>X+4JWgJaX3~!IATqa=S0R^~ha?BYSsEPCYS^%m4P|fgig$ci>-ple;FboV@W` zT&J#_M8F?wMpx$6=*yj>dM^P-Ccik zev40j^yX~m^2jim`|t9%Gx_FMp;_N}PwpuY=hCIz8_=qhFi%Z@aQ57D zjxKlo)}=?#j#E+Y+4H$Y5a{1byoQd(S=RPwmXkpMUF- zOSdmf?!N9_&prQLCCnu>=XWM1_e}ibwC5RNn16|pImKbQlsodXAAH9L(T2}X#Mv$Q z|H`scug-nseN$IY9+;SlW~Z+H+*Fi1H+A(LAlCDfH(odR@A}+zlW)F$^6+(&S3%7c z8s#X4=!p3yN+WF5^74ltZO4~*{Ypgf>vaO3X##&OWJtUacIq`mTPt3n8?PVstB~Sx zg56TAsG~G1M4yk>*V;{}4L|5~TA{ZYKooR5--jsN?=H8v%K>+})m;vH@mj+#L(G@` zR?v$*KY|E}{iuF_;BBBuxbZ5DFbYr-QfULu`HN>t5I9T0HbmR;PS{+HJM~u0YXm*? zr@OxHN%#F|yBux!I5!^WSL01RpNb5c#OF@)0y|zQS8(=Xp%OORb?E+@SE#O`{}I&C zwomcyAp=DusKdu=jm@r)Z3I}Zo}Y8#ve*gM@m3#dKt08Ul|_Gkd8xE;uH^aUs6s0H zYiJS3QD}9WL8o3J$y?QOr|K0z{z|9bj=gBh@1plXXG{7Yce)i2zKsSq*BU`tdQcBp zOMS~bx9T^`Q27-+jsuWD$jDPRFamKMAxnkhGmJjJ;lE%MZJ8RIdiEE7a%ic!dgIT&ts>K`7 z%l>-36QKvyFxrOMvVr3~Fv1*9H@L{M5r&&S6iCI7L2k4bR!yt2;YEHs#HYV|YfU^2 zw(4Ow@(LIfj$o~gFi<*fiuqqq@P zgg>CBp+K!aHZ+y65#qCt&6*#sUG$pWMhsrYOPG!{K1=qafxFnl=Xg(^^e})JB(yp5 zssW}3I*TsWTIB{h;(FJshyHq_47Msn8{lL1T*jgob=Rct+ab9D$EI{6e*xPJsE6l~ zv|Nb;G^+ptRyM%}HuB1qWc^}ytx>N)t9xBc?pqIlnw5=uqq@{>u94|TBM_vr>1|*# ztOlSEIlmimtik)o<|1%523lr38bm>WmiXcNI;=Y{>S7)^DIr!ESUPNZ?Pl19$%taz zc!E4-@H!X}#rl*oZU&+p44d>ip+vwnDtWR%nCrn70@>e{kw?hC>+nWZXWQfP;FhD5`^q znBP8Fuo^beU73Kape`f8iN(1B?n0Z9Dh4CQX+NE$iJNG|iKRR9^LbeNvj>Fxs+5kf zP$BXlKES&eq4~Mhjq-up4td4WieH+;6mo-BIOg>>$k#oOBNvvRg&l6VIxni6L!G`AQI?BqEnqD)4{Kn<1!{qv=#g4{tnp1 z@rrsB6dCAu0ZnXF*Stc#)o#Gg@!H#d4KgfIO*E~;1{oDYgb{$K6pbMg?P9mtrc?;P zWt^*iFY>q0XYeR=T1d$Qj)63%8YJIC5OF%Lg>j5=rc&r)(goE6Xb2`q07}jG+t3(~ zdTqno*&)leyK9tlm?Ucfn8oC~sH?&nB+MqKHfn(Ef{O;ywyJ)#QD29=X>W4`Me~G_ zuwl#RG#0iZgI7>{Gpt6!?ZW9YztEs#kZ7H7CmnYv63lIt!2W89u45rsZ-iyYcBoF! zG-#9I>MiJRQIrr6#d00;Ks*&HW>7c=S7NH8RxiR}Z&%wY{MVu5sCT;%rb2O^$0RBk zm4qloga!35){ZE(8}-e=yW@0m0pDkL3P*TGH8STgR1!zpjgs%TLWm&D;R1v-MnSj$ z3T}Q*Jd{=F$ufj)@S}OePKieQ{6dR7vTv;m0l2TIQ`KHdZ^Jat}Glc zoWo`L*q!sG!txTp!kMF`1^?8-c`#;#p;Y4sV_b%;EI0`-f*jK%ga#+E!$SvUa$AX< zYW~q<$5s|rSCwX@0jwM{`pyo;DrVt&N2F3Ufb7L=^Dr!;5KwXhZC!`V;b_%-C!IO5 zx?*iP2I6A+&~3tQEyNU>&^V%!siz9ny3;{8XJ0td3?nq3Ip!Camlpiu z(Uqfktx1d{?A`OX;xcM5wJ<*ijye&((LTGiT43C4<5FS+NAQbE@@F}HZKUVHt^0MWlKoe~W!QlWHj}8Ej z)0%)CIcGRtv?RSdnN}q%^KT zbA!rg7eWQ=;Bn!a`u!BDYT`jZF%+PZ)MR!hFB<>&g=OeUSTn2=LQ-T1$kB)(5H_*ufxbxfZy7!uH_^nEeFNPz%>#wn@i)Skh8E zOd{I2#gj)@7ij6OmR2xloVKq)VL@xH1q{f*W)f)~RKix3GaPmgt?`J=OkOEB8Y1Na z1lkJh7-TBWjpJZ&?%$7O_yo<-GhibXUMGT9(Bb4orHczoP+YK3VVO}Q?})mBSgS%h zsktN#rhT~9g;fBFM-r}~&)v4ue7+AWk;M1oGUU0cg4D_v&NG=szo5uIWCyiEe;FgEnra*53nP}{(zaZ z6*RnFBiyECx>bh~23JB$C$mUo`+<O(@YHuXuX7NTu6_Hl_1Np)T_W6_FD3hJ=~u z7SI&sXE$*C+4Aw@s|y%X%()n}5e45-`?b~x*C1o65S(~kg}aBLr9y3kkHoB-pF0kD zMW@8|9gU|eXv`}X2WFgKfm;I&Nb zHo?JJyI2XkGE&`$N*<+xq7_&obr@BUdLk#m57LbSl*128oV4N$~w8)!3xiEjK zxLjB&v0?b$nOb$~nwZHC+XHq!qz?y}#t)Xz)foO);mp~9#Wt4PLU*Y zSja^=-NeYk!|af+=g)<(S=nd! z>!Kf4-Fz2b@mGR!V;;Qc3X9>)#}Id>hFycz6f&WATC@)&1dSLc7zzQWwpx}tCrArY zjWfYfSy&Qr9bt5g$tGyz)5PZ0#DEwIF7)g+pv&|Hfj~dJbai2Tw25sTqv6ZMth~c4zH6#Mm+`TMX@Os z6-X|V%*D)P-Zj8)HZ$Q}xWU0hLYXMpf?7^3!UCWxg5iMJ(`6diy`Z0yG=1Z)aUZF| zxs>cKm8sf+(ms5QtxpNBmX5BJ%-JRb}-#9~z6Y%S~f3tVD1L)2S;UepmZ8%z-{v6qevIxO+Am!C)+=Dz<~Pxr1pC zww+A?vFYX;n7LYqYcDRd;dg<`laQ=qum00bl_n7QZF%=8V(I9-@I zkVH@eD#2hcf!Y$N-R`LtE^brW_5fe<#7I0<8fiH4CuAq5?qY3NL%Wrr~i1?oys zp5O<^uk`LzO0;oU0ZN0j-KtPRTLh#U(%ljwgdkLc<{U`cr!vPy6J7I?*2*kGYyboA zxR-ws<3MbQF%ZxV{~1_D4s;9#yqL$}$BO~R$h;AmbP$(_EX(YX@CicPBDok*aBPD@ zC{r-51=x8Icw$I1kSE#?)ktKUGRc!Lf(ithjP&|I1?5fpHZBvTgXhP1t&kB|Q4j|V%#0C&&|6tpSSqc+ zzD7Xa$G2(=v_=tU70Zj>9Yonc0IN}@4U$?d&iEuHRQFeUjLA8TCj9C;Bufscu5{+; zB3g#p5%8z%Kn#rLH2NX*s@0od{&O%J=%fJ)i;QtcrCuD0$xTy1hFf}r_(4PB$tZ%# zm~l-=CKqM}6VQ}G|7H51k5rK4QV;=RT5W=P26z!GbQT+o`wD_*U8;4cM5Gok!iBR^ zQyX?MLe$_LSl%s^WV6mqYQ(bYbrA>EZnFtLAocQ&A&MbR9@Q5@MF_VcQZq1M5N^7Z zA{M(uSg@ERqeQU@0~{Po_KJf0K%Ex5E`k^7VVpt=!d69)sAeX@IgEFW9%>YAgQ3KD z>$cG`Vi_NtpHmG-ZVVwMV77n&7&@_VY`Qof&{Q=X76=p}pYont-GUp3H7JILHL%r! zl?f40>%x*!)S|Pvq50|UC5t(z50i$1kCr{`eF#_00UwHZbeVHSnBK7(Oc{AV#zjA2 zVnM)$J3_8b}*l1#@e0MG@C%%i+Gs0nm?-a z4`Fx)xB@yT!w5q{R*_-8K!;&|VucBoBCW5LdOK)V;Ta@82;F7%LZl@eU>KveFine# z^}|qw({OAK?2B2%z!5ltb06XW9f2WMu2h0Hz1rFq=VhPlO5^Ml3W=RgB~Q&)MK-!$ z7(b^|B-A1-{`_j`d~pHOl#`EmG*&q4nR16dG> zDl8gf?Vd5le*b#5l87jXC7~61R@sz*7y}rcSiCf>K}Dy#F~XT7!+IGzS3*P~sF=mw zCE&O)4K#?1fVHc>iitU$HZsrMh6ctbL>STqf&6ghs#lnAA`Xk0B*HbBF%)}!hPi0$ zWXbPrJ>DR@&vPLa?T1V^4Ogo>sjZfj2t<$+K7ezNtMp0QwvSNC%1wz9Xy?HH z@E9z#>0}PQLsynAk#VMNGveqLRuEDEh7nmP5D|I{5Dkm4>lS1UW{_zad(tuC%+)n_ zAtlW)I6hPWXa?vGtJm$4lED^RPrMmfQ56*qdO{aQ<#kY)!-a-WMAF(tr?D!OtmaTL zQA2^bgqrGN`7}x~b)XH!8pVW%+ybjeBE+EDx{{~n*EU)O{RKvrFe@b*not%yt>1-~ zPD?zU9Tug;Ehv!DeqA&%>?y3kk{hr^j5-Wl0%ezMw5VEu6^%x0*C{Kf25Ake%-5BJ zqg-)8n;@XXua@XHl$@@GK{#~Rgv3rB_uL*n3Blq^-393W^#J3^(f6BJut31Nid`HO zLyl9pjp&v`U^HxbkyX&d)#*sIj*d6F2f8tjZYQIYgQ^kW!$OD)gEO`!>rQ#ud6+~H zXs^J85QcJ|g$Dj1Lt15MX4!th>FRd3IG%;y#xQ||&qboU0frkvjY4A!WkS%%Tz6pw z5B&-lE&*r3ce{UwErF0PD~2gfK? zWo~C%BZ$JlQ8KC+2aqD-;)W|%y*yb(r+Nd43+q+3nVY8EYDkZAszsIJ8dm9q8;@z^K@kYm zDL7sKeA*~bjvG)PP~sG*G?}D6te44%>a7HpWN(T<>B>4yDj1=x7ZuR3>*p00ox)7y zxPWWv(#2TJOeY`O>WD|t4VOK_W+biCT7c|LteRG+jl97fP}mG`qI8lQYSff;Zl;Lz zIILlJBYj4zA>B|Sre;%#n1p#DQ<6dDxPchrZXzhIszypvs~9s4p%ny6DEu|3L`gM} z*5YH(;&h;(u3!+lJ-V`jC{`j_f;;@=rVe2(`=@X75~o2j%jQm5p@rEZsu^2*Xq+A| zEG{668;HsVB8%lZmMI(qh{D6nzy$HReb(*MB)ibT<9Z0?r}J>IPXWTcAj>Y;mDYd> zf^927OClVRr^_H>mI%+xyGcy0!YsxTH%HRNAZaB)#kU)n3xzdk-c6Byq$(u z-r#16n=u$~&dU#VOdBlkkO9kj_3_9BZxG3E!n@Nz%eKqI(Rhyx=fF`h^1~4w@|*CA z2CgKiRfUqvtqT3qBuUZ0dlS?dg_4UEcs@x|G|>7z;f>UFucpR9K=MNi4K&J3cxMd6 zi_V&grw0uD9?-k@>Xmdf_P4sDK2O54R~>nKi2D@^zQ=-{*qq7BL-TwY#y~DD-qv)`efxuKk8yF~A1?o}#9_t=tGVKcz){Qm>QV zeV)OeQQR)C{g>XAcK4;E(z^|`%2DZm(8|)*k1+LTwSeE(>#MwXd%66Lx%^GH-q@bG za`z+l;47Non*Idd?vXy+q;;+*eZTO11&x>!-UTfzxmfCpNv@)S#xEJU&TDF8y$O%! zIt=_iu1Sm(lin>OP0s6(A5OV1XYl(|T;AZHO>rZV%*uL)rU924`0fOC#y~3xLSdlQ zxUquvCAmrlS}w<;!xL!Plp_ z{RZ=}drh~;;F%PcH~4iaZpPpnQrxt``4pEk_}3IC4RqC|e~qG_(4K*R477aNQqD5+ z+v)sGcqId0hPP@R>K+5%r)_X7WOr6WhLro17W?0l;xBwdi@lr_eSDfi=AS=#y$Dfd+^;7|2BBIWGCH#NaaNx8RcpFfrK z{lXz_h7mJEUfrjujXNeh-*WMzv2Kif2c&JD9AshczlNbTB zWaFdSuE+Gs8E)`LQ{1${Po}sTga2oW%NzV$ikmU``4l&8@DEemh^)1?J)vnZR}8dl z*>mOhG{fhTj70;#m!L+3-Jj~CXOkpF1Ff~-#&p~qWCi{p&1InV8&;!%FC?i(>_5H` z&)=k7F%kyvN^#Q$UzOr!41Rfv%NzWP6t~CVqiTKA4l{Tz#qBZpSc=OVd_2X?7<@9t zO&eTHaXEt@PH`jlpY{KGZ7)XKK+Bdr+Lm!9$yhS*z65oTf$!HQILT;tRzrql{0S}N zR8rOje#42sH|iB^Vc@Nb%C!I9tVQhCDAt5|h^D$W!-$z7tt|Bql3YatjbAcy{kf(#*2|D_H*4KS zicA@&X&%$7$T)>Rn&PGnelo?)7<^9MW+?Tqd3JMNktlG+;JZ@Xw88I6aXEwU?Jv-= zQ~LK&ZNb0OE9QcMmM?oQ{E=pOCdpVd&>9228E!*{SmQ^E`Fl1k$iTl#P$MGL9=(_( zDH>?>fiN7cexxAlaKe{$z^F8O$%n@W*-`l>W8;$J$;nfPt1Rn*l6iFUeRk@aqZc9s|Ft zO>n}{?yQCkVfY>`L}~Aq;>o3r?ukWuuyg{#+3kF)g?76U8Gu)J9EE@Q>1a-#1wFEU{n(fs`w#Nzp)~1=x0&1R1i}>iC_sAOnrikgB5vjkM@nTEMsU%CR^2J1K73 z;P0on8H0b2;_?Rnj}*7Z;5TYanbOVR8&ljKgKtW4d4u<)xEX_gCdEw~yg$X|41RZt z8>3ZH5suLq1ySXOdh+1C3uYa(!M?8|!6AReoHHKO;q!RDD3x zJfv67EQ7DY;f(wNmpAyD6sI!VrQu&I>ld{waH)ZoEt^Xp)eIj^G8PSdAwi7@h2Pgl zUrLe`4gC8AH8SW=>!YtGNs0zup?%9BF8JQrxt`_old< z!B3^Q5iw@{zfs!@1~JgGWiyCn+>>N18Tep=y2rp@)+RVHW_MOYh8UaGGTxPxb>Szq zj9c{ziDKZqqB6x84>aZPcD+)J8GKT4PK?=IDXH{s1FdpYdR{9_TR+0l1ufvTUPr{3 zJvgTcUP_F8TGRcFULk#Uv>8Us41r{+|5uW$XrS>+My~H`YGb{Ox%U>W+encm#&~c$ zf4{3&iZO#fmExui{&b3)G5Fu6xV*uiNpX7&e(Y7QF3v22e?7(RG5GNmmpAx{6gOk= z$5Pz1!5>d?BVyM2`iI&!%pwCVTlOrnjDM75EE(9Ju{5#{^|WSqA;~zxgnzD&zM)t0 zy}{pAoa1}DyPOnuw}Fe=>x?P-Jx%=sy^b)sJ@{))@KQ{E?KN%`&m?t@^y$C46rL@S z{-!S3+0vaY4%_mfCQmNo@_j+eNfIh>S!4XRSn-^O!7Uta>ogX~AIY!jhx1*dvD@MF z@6srhg#dp_gC7=}vf!tM$AYSRF{m+!O&HJ6kZ~QEF61po+FLMx%oC;=fw)3nU549KjF6B;M%$Tk2$otT8#TFxZqOYb6-1vCb z!G1(0RH%(j@UwE#)~syknO(;Xo`teSYBtz#2R!*3IGQH8b2)T}q2w_5Vg<=idbx?? z2xf7nj{KRGT3m^1crRiW+mM>v!9D9X;o-GzY<~pa-O76o_Gk?|ueR)oZ12`5piF|s z4lu=PNh75FzeaGw5BXc?u=gRIvEjA1(i9G{0RR)_comJa6~2$on@h zz8G45emb2$yFTS^Jxg!-7401cK)$y8IZbF+9=Xh)wbAm=IJ9>=uBk~Dol1h^cvjYXIE8M4vD{7Tyh@)>d*g4&2QIl zS;sWT^w9M^L-{|X9kc6GmSHHL-g@sF%Kx^T-4nZNq`;DowEyQcKj#5|3!2}qf8fx` zU*jLU{wq8oY~9@TGcKuJ-<{-C{LuZQxbM&ZfabUBE}c)7&Bo8}KLLPalqB1qcaPKy z8csia|7oNq%US-M=Fk0z`M-#~Y`^87*8I~yV*Y=RyyQL0Kco3)H2(uiSewSy{%Pdl z?`!zqU;je~@44rVcj+I?Z`c2XNB#L<(EKlG{s;K5?`Qe!`b|9R&)++km(;z3 zE|aBmcj^4I`|ki?8teZ9n*V_@`G@D<_mP+NE4cuC(se_Hbo z_w!4?>oWYoKFv6k-^w{KrvCSS+hzFGe0F}r9vPGW^;52fM@_J32CLWdzZ!t?j^TLy z{1q-GK2J388@iRT8>&Lm=cZlChhFZozY&*P@!$B_^bh50R{f8@&gFm9Caxdlp6Gip1*^jBgg!L-bERkce-QsN&-D5rKIfUf z9>ibenI0a*zdX^egZNi?rZ)%iuk=hG4&tx&OwSGCuSxXSApTXJ>7_yZv}gKe5D)HB zc|3@})-ydZh`-J=`9Fxi-ZQyAh<^>_biN-Y@RavYJd?xy52w5z^Gv=D;%7XQn}c|K z3@hU|<>51{8NVsdw$BefobraHsCz!;;WKd=zbWr0GO(N{KRE`UAHj3>OnRf^&iTH} zyZqvC2DWg*8>K(Z8J6=&o3NVk?TY`_5dNKt&kvEV2KesmbJ}c#bZ}$S|`+XO179B1N{_=~%eDyMPWCDCO%s>3>Iq}2%mKXfx z7l--zX5g>wYlngF7=ynT_}!MM@7j^{7T6yk`0{&GRe3Pxs|F@Ub!Y&jX*g zM19vk9)tfT@LB!(TfvXYpT8fI{%R;>y{nxbo{W^~4HS4p$?;b72drs1iKA`=7 zE#|L%B-YybTEUN|ziABqEx>2hJ2xhMaSXmP2LGVoU+LLrXkUT;@b@tAS>yiMG5Dv) zl>colfBL6fxxe5p-d`yGFY^vz^tl3dBk8tZ@n3L{J#PQa;x+VUk5&G+`lm<>2jeoFP|h zx>Hcg(N&iv=7!@8g3ccs``^O1Q8Nz@)JW&8A;mBe3I8uOz$oU%i zlsmltT*p^J`jQSE*y8)gapL@fkArH^cGnSwPb@Ca9bNR@$<%)7D30l6iqh%%By}|k zd14!mcJ=&Y=a-J2#xYpgN9bl8`+EEBCl(8H^ZtR^1GBfecjtLLp&Yr)mwD~{IGpgq zW6|^sNqOTpNz?Zs963`U^Gg&scsCg~cJhuboCWO0V;(OV^X$v9XJ`nm@p$lUbg4@i zLf#~H=PnQTXXLoWjDzr`ARL5%_s?;P+~|q5MgyL0y_C_IsJVw^T>B0tTo7+9=uA19}e^yd(eL`21o*g03k#M31Kh+#K<5x&`U@zBoLA`H(^k# z5k!dy;#jl})H={w6^B~X*3vprYg^Q+)DF@?8ywL(;8g$byZ1gfHxz%r@A;np^F7~z zd(V0IUVE*z*IsMweWsg>XV0JG*tX?v9_v(#XkWH2sWKHSj+g`Ns;o*Y0pEqzFhx6{ zuj;>!3PZZc-CI^r6;MV3K1HU!D5T3{d#@t1%FNzv=a_a?rd^e3=kB{nfX&?t4K1?a zXP4>fiTgrB=k7_%t?rG^Mjr1868-o7JY8(Ld$--0XvhBjKi%T>r0G5QoVH+z<*Dfy zw`uDA$$O4Z7<_Zexo1?o@RuRvIUJvfJis;(pON?s!lwYA5%{=U84i;1A$^G{44Qp8 z_I`XMKBMp{#U~e^3HWeJ!H2@e;**aLO+FqUZbR`Y#)o=xqt0XSaqY*llWqT#uf)?Q z8sOT+ts89)GR)q!H(@$HnWj7qdmlc-@X5kw96s^eV1OiiQcYoz*}MJ~0M5ZD&y=&D zv@z?c+a5GOP#8=SUi<28g@xU$qi(d-ss->kO!Pm=11{HR{ z<{0{2Oy1aTHuUL+zU~D2+YS8zlbBrk+;5;~Uo%gVH<iY|wT7de^&Oqz zuoZ4@ZSJ(ftFW`ewTn*=H%2-ltDB>pk&eZu&unRHjV!KT*%HxpC$9-NY^*1P`j+PN zK{$7Pc%k7iv!y;7jYO@P)e9mU=0!Hu)i-wln4{Aot&xuU&WNsFT03V>N87r(j^_0! z0||;}HbolNM!VKkZ|aOhPm6Re>g;H4U5yGB%;@N---N?ro$c#2 zTDLk36srN}b!{D;^)0%jp`)#SZFple+!d`~ZMqQCiXDmRimsc!#foM{qMaRWn_~3n z5lGONe!ZX55s9GKT36rF($)Z)S`3x39T1M#qHASKa|4c10!cBJOPf2JXqlO9?VB*> z819C(;fAKQ;Z^m`EirSotJW|RHKweXW!hcK%&cD2R6l-V1^6#)ZjY>M99K~mYhT~k z*b#|F)xgCmvM|yTsgFj^Sh*(B(5Y4B&_mst`e>8ZbVgs(g|&6FPoD+8s@5IK1`J!L zGQi5Vw$5-v8-};NC0wy;(n_r+j9=g0ygt$qZH7aWsDb_xtNex<4CJy!W)NZ7a0{H> zYH42Cu(G+6LQ2P%mX$`^;)}+#MmjgNb*w#ERkX9M10Ha)D(!jExGLj}U|(9+Pe4oC z>eX=VI8s-gF%2D?+B@6gYjgp4jDx2A`K)SgiHwOf#8aDYjp?XwZHzCc5*1cB(#ZG; zhgU|UIw_#2wb2^e73~-cx2ta%3)@WAuzBU!jg=MQit;fn&8=M<$E{TRk&8 zzO+1cG`@7APC`goCv5I2wr@Rq0)c`^u_tV{_09h@sf`t5g38U7RfeMM=4LEQz1Eqg ztZPs+mZ2W&T*I9FE{Izb>3Szt@17sI>*8*cN6SJ%CD1LeGUYX9{&34(d|CKOJ%0Sl;>!EHz_Kdi%163Pu&;_Mk3W~Gi7R()&1Q9R;S}|8lpcxN`TLg>~(5xp6^NwKuMuYY%tZ7guhU5UOf_T)A0tsPY4G<%}nHI~Z3!-Yvxb zP+YlLs;Sz;aph*|rOJ=QmGd0Y-FoB7-E%_L9g8bhC+4QX@wjrc6x1~)9utAw^K4d# zxN@FryIXo(dC)DyJ`h(vEUr8lS6&cTUKCdziYqURD=&;IuZ$}n9#>u!S3V-Hyk^Tg zqBo4ls@d|Cc(SkJ>xmC$1+A}#KaB6R{3;v~H<94zk*~20{}C})y+;ozd^<5i^ymSF zZz5)B9^I$#HN;-xJqlkz%uqbKOX1DL3B=tBpHED4A8l8-gP0+DbcMoeh#8tk>l9u| z%#b`+J26AzXqCdR5i=BymMQ!qF+<>JP~qo@>H0_075)`5UH+)0 z@MFYu>7&QKV*ei`4iXkzQQd4}qrss{CEyv{sXZe$8_)fZR_~G)ekI)}MU#sb> z+@USA(tesn1q99@X7UAq?jf}zqIp(%Qvtm%2S_k38nX2%5;<9^L=3zDO`I7rLyMnh}HSu>W@_Ix~J@sdR~+lM@n7PPic>0SNh*I#d+GJktn?{XZ~ zY_DqvYAC4L@|L%zr>?#CG*wy^*gj>(j+R1u?hfyf+Tv&C_Z+K%p|%{i)3%mCaBt9% z)ik_|_B%$uOMx}py}h4Q`9SjmQ16#tPykuY-(J|;`!3*P40fnFzvs=~pF{N-J0*goZx>QFH4(udgk2^6yBiuB%xG$S}eRp9jPg-^}u`Ly>8wBA0Yw&$7N>rp$u z=R?CaSM{&A8-+7InN=vO*r;YlOYiZ{Oo(by#Bb7=zg3j;dm^HDAxgJTsp)yTw}$ne zrojB3b=JAdXPh@<`HXKpY3$iM3YCf-`dPExnzg+>cyt`fe<#KUGmq2Hj&^{@Hc+tZI$!-4wpNAEqXhd(?75%jOK=wCOma7RuRra|Lh zmqP6S=3jfzY8;q7-AjF$UbfH1;KRo}IHH@t7PILk>Dbdr0%?!T4sM$n>>Z#Qyk67u zckMA-o*dTug3|1@CxXg_{?+?S(roYNI>~gMnx4b-p3SIUwX47X3{6q~^X#Xt|NIvHFHih*Vpqbzto6knDa7WJbSOpk=$wtTNFN|li*f=v$ z4bJEPR(fnN>OF>|{~nyzR4E5%w!7G5NmE?g@G{(gN8!uVw&s^#dFF2~Kh%3C zYj@LFgL^ zx|$sm$8v|Bo~^B2t!bXrG#*V8Ff-rpn%XaWvoUjHNqsqpGdh-W2HF$!hzJ zngQ)tY1H)0=45=nu11z`XRT)i)-{p7bqyBMYK_g)xcZLO)`sR)xG2oa+qfu;E3(%5 ziKXMpad{7y_{yyKtDmI}xFp=%I(ag#WRg&W|GJc`i%)umR#)|1U`6lk!JaASVb2q? z10Q_-^+xQ|VaPq$Gd>Sse+<5c%VyR-WP~#8>yV;(zv~$Gd$8YyDgOxeT%Ypd56>&A zxG2EpUc0c*UufAI)9t~jiGt4t6rzqNIaQEZM_QRaM+WAmrEC!0*7QMBN+uK*pj6Qy z&00+uICYO>hD_h$v`d~~a+``zBR<qL38KwpEj{{KcEZG0)(@5NZDdriw^aEtdc z&y|kzZ5omNxdZh9tY7{Y{wK8`+y4{oH^K+hy|_O6SD#@2@7w*&kCuI#d!5z2uIko+ zwc2udg#w$4OHRPEPrxfqz`W)g-+ucE_^uQ1ffMjcC*b!^z`O>{&AsMYWN@l3jy+f4 zUPH_d>I(OonS0&Yy(Z@Rw|ni(z5dMcP>fy7XSaEIxf5z-z zG5a^o{u8rL$kKfLWDqi{Rp$KF#9=Xf0o&=GW+#rf0^0eVD@*Jy?bBfw3#y}2a9G!RyNnS2Fpt)m5v`X zu~;9dT(12@dzpK0yxw*46D&Wq$-P%0>=g(Udm)^*6_@thhPa><+Z>osFwvju(I4*`DCw=f z0Oj8ALUr$%?L0gLYHzCmop%Jp44C>FOV5Fr0rTJB;r$Sj@UqhPO~j@5X=;|(oj8OO zkw`27$mgL0wUbD89YFF+I7qX+cNC&JxDF*LT$H2_*vLn%#N{X+a6Z|im8gPc2V6jf zoseLsYt>*3VAAkzLXHzx(sBvnUuc`kE_n~aTuH%CahSw*iH;GOXr=5%E;*PSIu%9Y z9E?_S@jD=+oSz{bCYLC~hN{Hv@bTnPRMrXASV?5T$5fQ&kT7K^jvL7(L9mJM0}NqV z%5wV^6v-=)=~BY#7@TE0;R*wVEQ7gI>J3bn)5id=w6)-X+>cRDX)rKPa`BYXXkbt_ z4*`srwnY%W5*qp*fgcA_Znr051k%FcjaJGX>X^d2VEB|f4NO37gOzfZT@Ia{P^$bp za(2qy21?Y{TPb^Oj)D_Pw~|Q4*;aKMH($j(fb--b z42PEYd2}*$_N~I^D$$|k8uKCvW>J86%&1 zj+QCJui2+_>Gd#(_z8wR^*oIN?AeO7WVeDnTgi^2XH;y}E*Ae4Bb(Z!J=YRr5!tED zhOd>?o;vwW5M^$GL#9quhtK5VaOU~wU*?DrIGjhbWrsUDt<*&{PUd=+E@!7RM?p|( z13QyBxDF}iLHvt}xN(p=Q7d4HPEe*+Xyg@-A}^&@ zY9z#nLZG$m1HHieJW@ky3)$w_=Yf--bbfWjKEo}@KS9jFw|5wP(Kik~x4d6MUEg^6 zkoOI!?<;4VCNV;91f^2ZXQiA13-6Mp8yU&DqYyo15s=YEW}}aC;$;d6QH~5Dr`@ek zx_AVcMV@-ILIKf;WFV{b2>G|3M>Ea?%1~0-0IH7DSuWgvh*D%5v18l=p{+N6cOnOU~&9G}mq9Fz+t`q_pHTE%bN++keF;1fj0O!Rx z-3B+xnD2730!<^))XvPECD5_?P(E|W)oLs);RU12p+8qhh}lTEnL&CfBfJ`(n>mc` z>x44J7Z~--0?i@+NCKG?e@wqKRNgJUH*EUAUqSV=ZZ?lWx3$IfEOM1;9Z<4H$}%s@6m zNfo@<2^Gk_7=;)NS%YV?dux(j1@9pZ=wF@xVmli?r~2pb?$^H<)cpgD?;l`%{|Ni{ z&n@ZeU#uk7zgS7Ef3cES|J;(k{-Gqke=!)6AD}D#E%sW~`$G8;@{s>BQf*Vw}ptg-UKKDbO~Bc7q|cDCl9(Z5B{4(BN@9j|OZp6n zl6XVLU`Vzhx#Y|+y(p5)>1WjjmdR@{OXSS5A7u!ID&=cPra3jna#eB~L#58XNqK*b z9EMbyv&{aPf^}Bj%kbjtXwo?_mhbyWX>~cju{Xh*+H%kLx10-&<(}_vx##;^4)6ra znUXlmxg~v;b4&Ux=a%$Y&XmMi?)m~{5;cHh)_GMYag2>8G;VU=v9V}mvje@m^i8+v+JAR1{4sjmQ1dXPO z`;cUECqAzztHg_#ZgVH;x*BmFMnAVwqxs?pW})24T3($fEdrXN>y`;0Qg7~5jm{Hq z!KZSkX|zK8k`hkUs8R4LQtk|`XOq~8IVg9gM(x63|7K~lF<853y_GxXL1^s>b=%@y zOi;O}y$D4;p>1}swzb~MUHmt=ttYh07PrErxy!hq@`QHVVi?kY?%5jdb;LbL0J-P% zz$l*3evep#l}hfpn)3mV_!JAf+;4Gp;t3t}h?fuoxho6dRg~m(Wc-p#xs=Hex(?^UTu-4|>JV z=u%sLS3`KnE1uvuUV7sM!ov_mr`md0S@MWi9Atkl)3v=`v4g|hqgfsEihq&#imzw0 z?QyTT6;7YKT`PGgLHuz9;LaZSE;uKMzf-GSTB{=o;zsu9S`B*>#H)0K>vR{6C5Q{@ zCD$8ECWz13_6B3gMDbJl*Nt2+VYm~;?-K!UGQ*uHQZU8l-bzowa3_j82Ls-w;hsdX zl;gX{SQ54LoZBCoM&f;mqLJ{9|0ru56ygvKd)Hj$X3q=pDm*IpM_iqILcbHD8*@eO zJsSRAh#{9?e{E0LAo1V}glH@$%6tx_MMvO8IRPVF-c#;t<_nmpU!UCHt> zq}|*cgLfy(wRC;I{kbyLo@7};m&~ylkiicm%U#5S4Sq0L zUPPQ{@I%S6g?Na;4=2lM#6u1KNwVC?z|1%Jkz{!%9Vlq? za>tnZN0a4`XrEGpA4`_U85Uy={o~2m9ZZ(ROyrgJeC7X#lI23$`xH}uI9Yzo{!O*D+a5`lHq+s$2LBWN z<9JjX+?y;XQQz6dKi)}}e})iY#IO=NY^$ zMIN9%=Nr5$MP{@9bc1)N$Q!BO0$XRZJt;Dm`k!g)_om2ya{Lz?ye~zb%J^Pt@ctBe zKkc*3-~%ag$td7~SbXenoqAxb{hrFH)bV!ADZ$B-*#r=+g^Kf8Jo5 zB$y(HF;#6e_;`w(UIM(ywC_%p1L@D_oA%pMWj^)4z~Eh}av^ifg$D0VmA{~WeaGNE zsd6vvago7$Q{~+Sz!w{N`%>i+^6xhBygyZ5KMZ(_8LywE%DEiR%glHlNR{;*ugeX7 zDphV`d~GxO9!!-#rTuygK9nk(IQ~}}`G-^G1lsE=<9|m|Wi_Ub+-vL|DjWBv$}efJ zYt^y|{*fxrX8yR&;Nz)snwm5W?)J$inNMyoc$-hY$eG|qTTgwve6oSb?|Y^{yM6L; z(%)?G%|7{O#>Xv2pFKW#(+J>OZLXX=p}ju2iuStA)bI1jN2uQ&ra$|AGQjb>)AaX% zPwwO7a+hllpUh|C-fQf2$S1F+KmO3f;~#u-C*}Rf;Fo=JG4;8}*17x@AFK`hW25h3 zpX_3P?l=7Y?2`|${XToZnbh})Po7JCe__VA*C)Tr$^BRMP_>#l=98nT|5NHb82QyF ze@B0O#@PR$lmltMXHEYON%;}|{h&L3Qa+ERe(tZ0{3BAn$^JZN@IR&8jWe&@7v1rc zvYYz6Wb{8KWd-f?vgz+fQhvsGf5qUBrM!yzylU_#QVyfM!v=pU<#vwWYxXE~1Nuu@ zO8@+m!Cy-G*f8Kf+d);|ohJXu`2LH*m!_rF*0)-@e>MKTElu9Y`Q}Z7uS}D_q<%*Y z-jyZ;g;o{I)wyZsL6TzUx0}aw`4%1G^Yzf&Zk*>~!FN+bL>%_NB=! zT;+Uh`0Y!Ve4{+~Q)8cp)8$LF_hsaWe%T(%@V({T~Sg?K8+3topY%L*~;ThM4*vXUH+sC*S!N+!%|m40$*6L4l(e zHv2PV4fP2*yj+9+Wyqg!JzZ$88XW8tu*-644J`rm~7-9&XAYWUr#mmI+7um(Z16S?#+-RSYKuEu?)Ec z9m$}^fSI^8@xMH&Zqt67`!J_B2ICZ zWANTg`6czKF?e65e4YMMYw-R|xrF&;uE7T~Wh(3E8GJBPK1KV_H~3Jd%%i?hic{!shqI)I{`@URpI98plCLwrgq@)B=iV&o z<@~h5(aYrzv*fw7=PKh*|IU&R(%wzZQi$<{KFX5c$pBvKl&SW|v*aB5TbskPW}L-l z%S4V>)ZlH|ayIk%B~FE+-<2&(X`juGUcc9tX2!D`uG7n_c^4%N-oQ+nfxT9rnqV z-K5{+RIBz!vgMy?|L+^zn=LmnpWR{fIhHNI!+d?0^M%S^$FpTU*H3%h@yU_DVEqr> z@yU^YrGNd%;6pj`+l=>n3_hGAj}zbP%&Vh5M{;Bv+uv{c*PA1MK!4e1@Ua|ONqG;N zd~-ZU-cEZxZ1P99UryurKVrt~Qol^+{IuWnf16)!^8i2YoT2pJ<(EHT{Qu10-G2ET zX#&q=CDWCTYY20Azg@V?4lGWt-e_&z!ih~~lHdDCq046xgrbOG7blijvo#Mt#bH#Ux4Pd|1B z8Fp7RD@w4d0lO_p&yigd+3k>sf34llabMji6aK*{AaZ{tkG zKn+aOq5|R|)Ek(tQJz?WOg1osj)Qv*;u++@fthq0UOwzZ))<(jxs-|L5`eOK3Xdzq z;s7P&=*#j|;zLUCpQ_r`Kw%j4@}xBks?{{;MfXu*{$ZgQzQy^SyMfsq-HOlUmsKG2WXozQ?5-1)=&KopTE0->A#kdX1 z=Yom1^8N{L85Gpr$`ThNI}IA9_0AT2fNoHM_N#z643UFE`i5oD8oaCyL%SnsHiQq^ zh#!s!27YW`1%M?w9Q|H(#=*O3W0)K6wPz{KgbYA4K+dnco7Rmk#9+Y6>rO-Wb|!rf zjC=>7Vo_k9{ZWkT1O2%^(4XrA{kgg@AaBDs1Rk{cGAvx%%BzIMv#(9!4_2kThsw2P>RD7_{=q+}l_k(4HvRbFUUSzmlP&@ zK8F&_tG~l#pSLoeeO`mh{$osAd5y*@;=2QYA{xOcmrF3bK4~AA_#_yX1rFN*M5{LS zANw2SkNu7E$Nolfp)m@6YDXJIUIm8^{K@{A3jZQ2F9G9}eM3?q#H8E>k7*j>`xwW{ zMnhzLCx%G36CB$i((MF?)@EmkhF+GW#TPG>1LNR zFbYG`wAWRM1L;IME7b@-eKaIZXQetZ0$x7EgfLhJ)R z=QgEKnH-Pt4x~BmUABXaigW|3_bmdN(|3SgIl zA0><7_Y}-kip}rsE*zz4i`Uzz3_AQ4r`2b3?Z}iDCRLAA(B)rMTXTg}+-$sA3 zzo&HJVkd70;yC-3q-M1AC4o&@_N~4b$Yu!5dYdoXusH$+viB(c$Yx(M;P(womk;0+ zB>Q$>P!R{@-BjTRMunh!irMB40};5tq&;p;`U_=dVkC+JuO#wpSPH~k;MGJOJm?7) z#(~3$v`+1 zXsCfTavP?Z{CorJ;bAKII-)qgOg*j0JEQUyxIq3mbB|`TE#JlH<&U?258j^8 z7F&*|+7|1g^8+Q1YL$tu$xRR>%sUMtf*0E%lAMBL+glIE7&d7oB0A&G7&=k#3h!fPwjl!) z9A?JJ{4LB_@EScQ^LZZrNf9)HxZuxB)|rnbem}Yi3)4v+uxBZd1exGv7qsG0irsW?RVN1H?@rdKC}vQ-_=u(PuVE5bREZ zxCxpj2%aA$hy)x%d^b-KwD|5m@!fsmyZgj<_lfUTS}XD0ed4?O#CIFZQe8*C*z>J~7wziMg&%%yoTYuIm$XU7wiij2NyqA?C)fV`9|J|4ik9H};9Su}{p6 zePV9x6LVvqm>c`V+^EE)yp7bkE!50YakaD!t%+aShStO{Z9{9~m$ohnh`-MjQ-=#k(b_^yFo(%q=eJmf=2VS$@sbhj{9e9t_M<(22M z+06zHutvO(nOp>}QOos$QA|hI+Pr>N5J7JO*Xi;aE^Kz&%b`ZWdMFyWMX3Z8e}POm z;vl*u0()#G(SjwU{l0qktzZ!>8Mxi1cNHvSyC0~VS_SiXe21b34<_XiIml8XaJS8~ z?}C3(=e_#)1=I$9sPq6WuOsCBgKUqe`*}I)u9#lt@FWH#JOjmpFaQan9qNq~fn?{G zWV;fM6iCs>?_ zmY2;!gP%pKl(VpC2!;yJD+h-{FN%k2U$n$4xWpJ5p^;Y%VckeZ8s-QQAS%)*T{O~f ziZx}xN-2<*wIVcX16e+S89X$ahfvB&;wu!FyoLh0hdkwBZb zC=?L0h_>9MP*D7swz~9yLPg?n_U5t=6e<%J(yH71lgP7D@O|CT6;%pViL)4yS4I@7 z5!W+zcWMcB;u%WVwO!RM!*H#Kj;W7B{{+E{iwS}jhjXw;i=cOU=-Yg5NjwiTg`)a_ za7&!)0qSH0XXXS!>v$K#Lqc6UP*`L$;rtCB?M~{5Il)qw1rx-xiioWW(H~8uju_aZXWpTS{~ie(OFpG3dn zLH;26R1vXf9OHN*i1sV!^d|6Vt!d@f+~>3xu`5xw+NVA2XR`NXwLXWT9+02 zxpVJSHso5F?1ra@W;&xPUB0tjzEaH>bJWcdxLI05yA?XkxmpQLwT1^m^PKirtJC|p zTF|f68Ez}Nhks@Sx_p{Jey(DJ z3#Dn*R_Ht!X`@@9tC3PkT|r zu4RT?sjiUVQE?cMbP0m_ba-WGwewu87tOI=+(|{(7%1d#kOo6*4NRAJV(daKj$R=I zx?!*W%G8^0}v)XT6g)*|q7$m^NH}hBhgO z!l23>!vN1WFjZOVg4pm34~8ysmc*EJ$C$jxVZ0>Pr9^gVv$`wCs|5$R0N7$&E?^D! zhAwkj!6j{deTx;k+;vS_>`Ld082g@hG~eomg>cY7{VXzSaJaf9-8dfE>REM)iZat0t2wZy%y#I%NSR_KTB2&FZQ??b7o z!#|3NAHvbQ$B<_09{$+CfHudy#vFNRGpx{k#&AJe(FH}y!1tRfSfVQQph^+)5FP9x z<6xGO{jibkRa*X}pO!94l^=4pdc@cvUCzMOEvN-wXtzv$@p@J!)WK+PeCU zeXxjHKjx}NtzA%QjjRbxa!#9uzY4J_61DKM>Mcl31*dV)Yn_jId?$xvp~`Iqw{qFq z;H*c+D%il|PG>5DwcsFDjiC!w;1(1xQZH3uQ}7-3eVg+Bf=s%=jmn1$EQEUK4&}B5 z^XT{cl-CqAa+-f!ji;5zgdBQ8CF}g69Q-zITIgBlYN#qdWSTmtj+vb&Frt6$d>>VK zUN&D{P>kWj`BoD9$6B>A8iQ1`2q2FwlDQQ0 zp3;Fi^GX4;+1Wsz$z>3;3a(UKta3Wje{;nG9_uFBNSm}M1ab8YUu4pT$nkZNe3CG_o! z%roInL(!z(pqKvZDthM%HQ zQ0!s5$r=?|Db;8g95MPDit}UKMwIF*OMD1LMvT=+2r&q#ObbXC3&3Q=IPEI|tK|1E z^B&8wMwU*W0Y1Nk?~E+tA=C~=SC&~L$DIMh0R}S+H?#|Q3hPf_)wWHeZ{9c9+1mQqF^i))WMWd++ zN2C+ZR5V7TfLMa4E-KY1C~VAfMPoH865qjS6^+xVOsr?!1dS@yRkfmtbXYEBMjv*H zJDhp5kwm&|X|#P7_y*B@db*KlRe+bF22|h2V@pZTHI}jas3=F zP`t(AV?lUuK%NEPExy!IFJ$6PyYc98@#PNv5x*ZGM?k&eZH85o+=^4B;vU1QT|S9n zD&Fp#2@QFbdp4ZB_!@_=^{QZglB{nq!HTQWe_}mmd-MfQTH5l*>A*KROVJ!p8rt$p zjBW8PYSvL#rGH2Edg{iLhPGV8Zr*O%AGGB}_+jy#&P(VJGPNzA%m@CVk=JWW{yCN6 z9~t^%wp`c+9LfH@f-&3EDoC_5F zA+OA4|2{VS4g*vFPfh(1uS}-CUpSX2`d+WB=XihV_TMWXOalIosXy+OuhUTzJX(JD z0J&i(aFT}s2mcr#6R1zJ$K16TAerNfeWw1v0NI3@r&yZ$gTP2>#TgzZ2l&STq;2NC z1VQIc5OmW7LFY*j9P$Lgfx|hTI;Ig51Yh4y5PWkwF9S0}ai)i9Axq?CK8Q|beixyf zm&J3?%;WIwylkpwrTiNPJnRpC1`<(*Y~mlrL+13~j07s+?{Oe(MFBFkKV;OiMH@*A zd8-re<#1}F4DUh+_m5PEOE8}PJvno5$D?8x?sy~!UhYf~$tdyt8Pi3Xzs}hSAZ<1} z)8VWIv1xcx%D>3r6)a|pC!nu?iFyE!+2SLtPyA;Y7?4+E(ELly1Ra#Sz}CM^aYeR( zure6QcLc@=`jGF}ELx%rpa|R=14b^rBh&pKI)iJVqZ0dx(zhTVdC~v5 zQm5d>kvRU3l4<$A2ahT8zvV>GLS9aLy=?~0lCNVT^uMF3IOxkbjvqL+(1C-V4bSy| ztyIFPIfj*QPy6nN-GqOXdX`DPOg90wt2k}$~rS)R2xh9JJr?>im5>--m~C%NQ3?9#;^p0LAN<=vP` z{oMxIG66}(e@X1Ytx*F2H^&~_DnK0gw-_ko-!XgnFEub#E@s=UDnYQ*&tYElU*=)F z^1-cdv+d;u2Ic2i^7ywI;v)Gs!X5+5WK9C#6$VyH8>!I0-E$0G!b~k6MP~C~>CsmV zYOIlU{-1hYsYTx#I4Jwo(`yC1F5!RF^9S0&_ZJ8+^UwC4Hy1;<8aDCI@wzwuuOPS6 zR27HrVs@&=yAqV_#SdxPS_1>c?K5Bi8R-I1B>KHs(reFqcIwM zP%lAH)w~B7U<d@b`DBN_TBfca^4tKlohU6**Z=Q3Y5jGoo=J^QjhxV4U%2F} ze10knb`QtM`B;f2rzF3*?)DFqCI~+IlXpGLlD*BBGY{tLg2jT_J-$`|ITquZeTC0; zpmK1|-tIG((B(f7B-vN`v>yw(87;GS`1C3+UA~I}%HC-peizX!vTOr2cun=?g(e(Dvt8j_beC4pBLAgnfHz)SLY z$cdm8@mDfLvlpTZrY{*vn_+;(9`v(hm`2%RE;?7DCJFeg7?TK8sO$2?8p;~}7sWFe zY>!$cBQz)yw^Lk+*0D@n$!4Q8Di=2rjn)>Z6w}zZF&b3~FWZ%BQ`U$AWQ~%soRXYS ztw_ZDQ&Ohu=86=eaT?7N4^d6?!uou%3w~BIL7TizoXXCYYqU&!N~I_2AY37WnA1xt z^jI~C)d;$hNgAyYKY-(xn3vgG#K$mC$tk*ByLbs}%aX~uM;pah>SA7Pzfk;uJ({W~ z(r#OHVu(woX?Te(st`XVr)s#_7H?pYQ8Hb_Ew;!&9xSOMU!H%8^;C975=N7!pW=3; zyOL_^zy++>#@d-?ePW9pC@-0%;eK0OK{#8(1Ge}#)tIBSGgTa2d~b<8|iayp_K8MCDEAMhxyfCc~1WJ%=T3hr}6 z0AX0NN*m`XN3ti%MqKg`YLJBhQ%B0U(&JGX{}!HBBmdM zQ4<7%Es1eJA?h5>Yb7ZOXT-3VfmG6}8}N}b+=fH#pnIVm7D0n>?0CH!FzR_*p?`LF z`Y9+%5YzFkQyE_l(5LQsQ6`H^($7^C_4v-Q`6@tPqO$U?c0jUOG09tkE@xkweuX06 zh3_KuW*grYh;OnA4w$_){Q*VxQ+(&B7qYd?F{5A#Z}yfU_mt)#O1!0i3*txPN?Xw&!Sa2DA+5>I%L*X#q_x*K;_)|ij0|EW4FhEnDwNS2 zD{lbWWRJ)yM^S>9jPD$q?_g*x8GKe=Ss_R!Wi3@C%ki!6vTTTvsoN&%-c8E4wc17(^jWT6w1+TC&f~ zx(bw7sv?QtRwz20Aox6Vf@qqHUeLwg1A*!Vm*{s-V;!%tB?#+G+!N9bDK3ee`QDl$ zPP4|YfZ!y$6kpy^g-K}TQG>vT0TaaKv-!oV`C#%2(guE8?bDt#9oY?uBE zS;t}3njNevQUk<44Ew%SdY{1WklCdVAQ8TATi!)bcT^iWB=OJ9>~-bhHcEn6ggNXCU;)j5}`V1!kEs<5|I3 z=56$7%mm#!Ae!LvW6CwkgYFdP{V6&yX5s{LEGrG|cR7|8;%AbT2Jb-6(&1Y1pcsa+ zEgeBJz33*DHy3kF>By}-yc1>~Tkr%96D!IlB`(4&%U_5ttK=a&v^IzVI%T&~cbNDL zAyqb6GoPrlgeolW0)$6d zRRJo!X;5TbAr%>Ce+#Z?XR3>F?hk76TAjPu;}+x39rGu!?M%+P^YNKLt?ew=rufe&eoq%WQIH=t z(DTch!|tVJAK)>li|07i6fCa=99nbM8?;@raU|0`iO z6mxE6>dE$6Rz)2=o!gn{QAKAw*b)cIuQgx|$WDO}*vYvN-)Gw6t%_UXC@UU}2S1Mk z#08?r2L?%oR7*gVwG0;OQw7U%Ga6lsOt0v2>g?&-Gth$v0AJA z4O6}Y<+qq}ah6qn%#`1S@}I=f=fk_XJ%;j^+;WDo3i8pW_9fJQ;MOV~#4xL(+|)9f zD_rv)11Z9}90TC&wcXNpkkq*GopAe{bKG#=%W#&+hAN!*GMrBX(&2m$1iImT55xH` zRH<;jhXMNmkPc^6*@$u1;jC(>wWIM1XM=>J>^#U({s~BQI6p-AHlYgVhZ)YpFppO3 zGhI^Q{D*k(k2p~Nu>qfvLMyoZ?nI*z;|+w@*>&5r}+6Aajnc$u#l>6o4t zPc+W}#`Fe7WTdH>UKmGOu_g|bcNxH#{$Z@0Rly%E;-=JjIv)Ji03Fl&K;y+&>6m_$ zF+Gb$>W*)6MI5jyn&Z12jR!sP;I+6$r@FpzLQD?}LcH3>*@uvM@k0z8HTO?g@5J25 ztqB_0;d9|poK7}Axq0W@ufW)^79G&CD@ zWCckRg`M3lnvgmOBREgk?%&=Xja3r2LaYMqdzZT*^#ntz5J^~t)DsM;5ei;{1 zzhp@L3{@(me#wwZ^kJ~o45=#52h<^@YNs8cGzgkPOFIWS8oyx+HADWI(3XHIq@H6) zO#-YqW_qf;EqgFkHm(7+B{DetBGihDd%c)i(CF*tIcv=pW?>V=JyO4BeL6+ zuSB#x6j#12uKYKq{6f(0GUe+*{|{Fj%5OI1J5m0%D#sMgRUB5jcbGc0(sfPgu5=e- z%~omu4mNlGVDpDNxScmt@85<&>^1dn1pk2%{5H;5R0RKl5nPzzM)0d~5&SA6cnhjj z1i#7%{vD8xU{yII(~V$NJFN~1{A~praE<#{^122jI)Yzk1Ro?+5qyLZ{2#!I;1I2+ za=KaZU{M?>Z!mys+#wLsHz{I1To*@Ku{j>>hy&%{H-P!+HEeEOUlgZJ_k zae`Fv9*85YI2;Gc|6u@w_t988t0KpYgX-VJcreWX9lZQYJJ}c}9lUQac!y=dKJUc| zsW=`7tcpLHp;oN_5f46#2Xo_up6a^A3Bfxgh%T$G(teMN?04)HrddW%SImYsb~{2u zpDevYM;e!H9O)f8(i$K=6}%tkNbl2;et;_FNbl2;o&nO1q$)?`06v@ysj7AZ;PkN| zb3Wl!k7Unuqrq)e@8@e>gejT15`V@@WjmqH6Pd*oOeU50dGF7vUS{2;+?;o|sOuDvriC^B9%>fM#!-W?Z13sZKB!CV3{u z8ZX1kaTUB_%#B)?^KLh{uh4j0gOZu#SrAlZTC{so3(-k2Q&|lAD1eOMoj zAG{qUsf>ZiMOd3mxRY=C+4kguAi!M)oaElgo2K)V&YEerBKuA}!>eA0w3$}@oV8Ig6PM*G{^?V%m)J~$ z`r;`wwtB4Hnq_;i-md6Kvu$R(xN2Ui1cyCXHCFsdsQYI&)0-yY9Rt)JMslh+D%CUg zHuI3G1=mZ9P_e|ZZ3oLV-9#NJuBnMAOb|YNr}FiaYJ1*rbZnaLHcx)_>jB23e}|~C z6SV2LgjT)Q2Agf~#W;-FVcR_W)i3wXwqMIdgT=PZb6!6!u8eKXwqM3bkFB$9p7d(s znf4J(swuD9+IBqa^{ZzdX4`imca@!O+dSjdqd41s11Axa%59tHxq1XS7U;m01yEzT z?f{qJx{{Y4tvU8io}X~ zP;={Z%31akutddoGi;k_uW$VQOzD0;v4H`9AptbEfQETV)9_-pdYvPVaHd@w1mVVH z^&*nZST;5wFLm9XT&>gW7wDHC*tV|bRO9DO9e93*Jsb~+dE{W3feW4K5bP9MDJiF- z2n$Yg2(7$+%OfYJOi8Il4+o@y1YXA-ablL8lEO+GK=@*mmB~0qvu)g|LV5Bqt2S#a znx$mf9@$5qIs)Z5qmPviAhk4H2GnMeOB$en1OwAYK=+K?eta_f*GA!jDu=9B4!>1 zM;ePLP(&l>VJSA^mHK#?5kr&U_I{KaG6V{42dB^`s__`FYj*|l!{Hv8$7C>38MMqB zXZmra_ViTkI21@9t4jE8wHko&17aO_;CB=VFQ>W+VHMU# z;6S6Q6eyZ$lW2yifi?5s>ecZo)n-jq{hk>s96+1s!ddZ!x@dN+C}kwnB>Op~7R@;_ zwOr|aT7L?}#N!w&$LhkQY};QThHPvMbNnCM73~yuB)X|Tg(h!lUO9GkL&JY_#9uaZ#r09PM><-@@~?xAoq5K>+1A*m zwsn!QYuX|$jgd8xXjgRX(zcGZ(f0a=$k+y`)X>)4Iu;T-@W4}yS^vK%x-p9W^)G5* zN#~~aNVK$xU3U+$0O@RA7eOKH6YXqljI6@37st)3qmfQc+}_#L5vgx<+n_nB)~svS zwXtK(0je2p&8wSRSG5_U&PM$8G*i)8Zx~ZF6@nJ6k2S$)RJHIW9gP^fxSXJkf4M?JMr1v8r>4Qr!a>sS$Mv$S@O zTVFG4UPP&{sAn`bc0{5vy6XC9WMZWzg*(I>05)|yt^EO1v`t4_C(Q)Y%&eXjX~%zfs{csBqiTtG8?s^Jt4LV%lXprtg3XSK6H?*Wmx^Xm~Qj zt(SUy&Uo7sE%o>w^F+lmk8iGcQ+(tUX1V{fMV2!<+o{ZQl8~%xTk4~o2!KvLVAj&s zx;m)7__rAG2e!fuQ6>?qBN8S}B)qbXm;Y+pI+|DG+ERm6+tsA!!vJw61 zTD8hj-491M)JL1b_&G@YEZyq$R+#A+`7q1}NNU;fhWZBlq)Kf=+q(8<%wVgn+QyaW ze-z1dLzqd*TG_I;D~wx zsaHDVM-CySdA+r4QJ88M4XP-8ESzT-_v}UdK>mrS+Usm1x zFfv(~cVwEvEs@sMolTfe!mFA)qUb?mTXX}a+a|o1hcV>{>fuC_rna`VVI;nWa3>55 zZ800SHZ)n$aC;m6hTq1O>rfk6-`v&}wQ4a89JAH!7`0Um@B>z%%N=VWBeE*oQojkE zXr@SH;?DXGPOXvF^;WcgeFU}9&X%?YiyndL1&QD7k2^FCZ7ps1`z`BMhuc=JvDS69 zbi#Y_G_^KOn4H7WeyG#J-_@$Au`qxbBbQWD)-CEy*j_BTPY;Fs$YN>}K z)kd4(x$L+UN~<|FJ6?o^7pE^T$k();DxUpjIsm*svB};Ep^TmlF=1 zy{>CzOLGHeBdZJHJYhVni4n(Qr?b9cta5}IJGneQ%10M{P>S@dZ z?d$0q7BU0ZBH?I#OK1O_v95k~a|0cxy#wqzBWkQxwRNn6SD+touPBVrXhm0cg&S3N z>gZ~1!^5Yw?XWhY6N44*A8w3eq?|CFHO?j~P#`GU48tMF!*ILCwsq*P3OWjCR#s;) zF+Si?&>2*naK6sIe(HSExeiL4wqQwcrukF5^teXmK&+;a*pM>duNak?)r*?y$4{)V z>J~2yFRn(|SR0$@!y7G{sk1E>98ElGimYXhaTg|5c(t+|lT~o?TH z-#en{3R;C1%wD|ojD_>Ui)Sxdti~Q=Mz69W8zV^Pkje4tXj68h5oq{z7~5zQzB)RQ ziyCQ`@=Dh%t2^4dF#0eK>_lU8vWU5UxUs&o9sv?v-x)@?H^EJ`kC;_2(*qq7Dz-GP zv}&7M+gq>}x7s&^S0i7=CLS*T+FIzK7#dg}X;IAwDtoQzTG!4D5P^3wF2ft6;q~Y< zd=oQP8?y{N1-Y7&9Q_?hhoQH!t+Ny3%aq@R0E;w^haw1!2rM--ew~N$XkOi9ZQ4Xv zZSPvioQB|78G)0yxm-;~wJVWL)-sGC0eK3i5io6QV>sH>yb8IceFH~O%`0tD<$nLC zv$Kz}>@Ms0*-l>;C@_>FgMbXBlmT?QZD}n5ad&5DcW=8d!_IWslG59|bMMUD?!9ww z=gys-K{O?4Onr$EjYfH~)fg2-1BO)mL#;+q5=d+`1c-nH0SonyRuPCs>gW6Xp68r% z-%{eq?wsd5=lA}5-haRIyPH+9tdWz1&?>dJJN2GXxly?B6%9Iq^xEp|74weLIN#WE zXQ23Xw6Nuv#CLZ!BVY>!ZB-FYL^k-h8kgUYR!5~_QiVF z1^pWOOj@;%M6nUqN7SZZsiZ?GCM2X~vm~Kg%?pj}wv$VX{HS75E=Duf7aR5r^`n_i zvsA5ab`U-AZUuqNEEpA_%+$Pgl9!sSB+|DUyCUGFGmA$n=eV6da>v3-<@71Q%GpCJ zi`Cl~?}UDOjJR7MOhpY*R!KtFWGmF%L8)p?I=8&ZcrQv6M^q0TIdW!kdD*+BrebP{ z9{2Vn^c*&I6Zf=@5-=?()lsQ8lUm>mOCy}HPH4VzESxxfYO%U>=**#$G+UC5EpyeK?HV8(U&kDm}4y3T=Xkh-oDCxMw;9SyM-3xV>TxmVtJ@kBUYNX$a5L=YBV-qiPj1 zO@m+Et|4SyJ{M-T(OU?rW}TieK4ra*o!M$h-Y{Bd;&aPbFqxDAY6$(!Rv`AYG_^Q+Q*$G49qKfRfHh|p0fx&?qm}KpIu~Uh?le)45G49D zXP~8%{KP6Mua7R1V_K7bvOEo=8X4d+`gBq)CkC88dUSb_xr3#)83a?WTW%?? zw>sw$9d+a(@9Vfy%%Rj-7lJWkYT@uv#1KA@cZmkd%?c_teGfxbS8*WFKN=_O!bG-^ zN2seVd_vPa2m>7{pb~f+iLY@|p?Y z;CEOC)_(u-TLxebjdl5yAyVoZXRoW?X2^j0d|41a5c1_n=oga~L^CUVRmV;e76 z4jUA6#8_W-UaV~~wX4yzUbb+2apCr*)0I;zY8by5;3k&)1Yv7q2w-4i3&`5mXv>>` zQk%(j?wjjugbf+npreVB%*R&Q?KZIuD8C{;LNvol6)6NHAZ7*v*enR2bokwx-LI}e z^*AN1-Lc>Ta6bYLuvv~J;DLx0E*bMQ3O zB4lV?^NTH$IUOx=x^(KI7R@LfrbSLZs~dPkrb3cYSP^Z~PM0jZ$-=XVaQ~dRJuQ&W z1%YdFG_sPR1#_wk+dI|G9_E8aA;kEo2SsGrbb3ba}CcD~{YBj6*P~lUbsVps?JaWS=2ac=7l-6y_jFJTGXLVVXE^^OR(I=8Qi4)EI zF@a;$MbyzOGDNGpY+G)rcAa zm^?1bH8UtrO9~`c8mT5;39nXaQ!bTgppPMf_(0_E4BDLtZyCboFspgaMYP-0LvI67 zKil7g`ZpW(Sy(tiIMy0@;TjFvTy`c?KVgtQij+8@#R|-B!{b4I!I?FT%*uLWv$xkS zdnB#edCd)uR|k^Z>LHJF!Q>*r4T&wa#X>x7EM~b4rgjwVpnwhD_K1wxi*nPFva8Z? zNL!PFLONVwP*D&|HM}<_vDL&+OkpQEyR~j})ZZ;yC2ugNRmK8Fu}FdFLFxSKok`WIb@uf#EOrZYNKom5=&ZT z=B2x+kWDCWjUjXzmY0$;Np7V6;9qU3akXt|S@Et)G3iBy4Ss*iLbDVh{i|>x5-de8nR(es^xt@oK1wHw#2Ewxc(T7R z*H;Nf^^qoWqj_z%e+my3#xtfZ;aw;MTY8f*4<1b-fY?y8X~Lu4Z@01R3kU58;Rf^1 zLnrmPsrcaZ{QUt-QY09v*}{ zlg8xr&b>H|W<{gsvD-JdZ+VlZY;^}V&-mh!R>+qZ8EQl_1&UeH#VtYs5SVUmVZJD0 znP|>vLjJMhckM0I8{;keM_ier(-JZT-fE^MI8w)L0vXjTo5-N9s zF`L+zAx|DUR$0h}8bM!*-qyI7B_MJ_yw|j(56X6481cBQ*|~^j6gL=6LxL&LZ)90( z!TpN+iq$PWy|xt<1Q+%f=D(3FQ=S}-SlE&wg2*wyB~6Mc0keWqJT%dLtwl^XLte7f zcH}T|JctU$DzUZMby7&{60jyhZ7v1{M~a=Q&8B&!MSIv;1fT~7l-8SRsqW-{NfO`I zUsfjw)k@Y8Q-(}C^}g$JMH-}TJVukVZHg25nzB|%lD(NkG35}BNs5G<8=S7RMYXPD zTm+mrtL0mn(Ita22_C30c?QY$lbO|Avra=|tOY1I0#AaWW<|hl z=a!Ag1{Z)VcwkOm6)#b95^>eah0V@I2u!QA#Y!-Gho%fv6vPVC%1yVxX_9oN7*J1` z5BN&%A;<$J+DCY}P`Qhzj!3Mx@BkIPpy_F`T|OsH09sIC5~o7j;vmkDH;>dvD}O0s zNz0PqjF7W^0oYN*FcTB6Z`HaRv_!UYvR2x%R&338n{YqHnSqH++^Q4$qGR$lATUf0 zmO3S>uvac19agcyO#kH3Sa}n2l9~9l2RKM41Y{KXe29QEEw^TqPyTa2qp@8k_Zb!&9=M!V>v{J7Cfk{7k69|lC zJZ6=JHepX#$E0b_B9e0@GufQ&e0}R3&Fu}*_kvapX+J_dRN8toiD@@;l3wk~HA+rx zU2Z`)){CW*wZ_h5Krl9Z@-btlSBfL}9*~~RxGXK&RwA7p2UE5(QY4OuDU;G&fnvhZhMvq1>ftEpBb@nQ3#; zAae)G}mRxr<5p3KO9S&Gv-#5m^w8B_e9n^|dm$ye`rz zR2L*|5l;y-nou(nt?b%rdj+z%+BA)e-Nf>xh=46m(p3-#N-f_^P>;YSEnMATDMX?m zsXJM{F55jIe@N>ZGyu6|&aK6lQD(lhgiPq4xA9DJcQ@@qv(P6$Ay+}iuQixFgx+?w z%{l-f;W|4NRAnLyZHu|#7O0Bt9JZ90dnQ{JOq2IZ_ZTGQ@$FIaNvN9m8|w=x(5yh1 zt?ta)-nrb3mtBIXVAPYG1`n;v52&GmZHs}pH0|I>1d6+k6G;`AttQCRY~mqEbI7Qo zOyrBPxNnJ}UkwE+AR}C@ckij?s0ryA1%07!hSD@Nw#tnxZ8=|PQwD25TV+vaiytYT zOKd+;Mcw60vZ0Aⅅ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 H@5ufSwbF=0 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/.packlist b/scripts/_Inline/lib/auto/coin_pl_7152/.packlist new file mode 100644 index 00000000..22f844e4 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_7152/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl b/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl new file mode 100644 index 00000000..c656acba --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl @@ -0,0 +1,22 @@ +md5 : 71526bb8c00244655b200a74174c0969 +name : coin_pl_7152 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 12:13:18 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so b/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so new file mode 100755 index 0000000000000000000000000000000000000000..63d83b79f54f3bab6a1dc0de1731848ca443dbcc GIT binary patch literal 74259 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/.packlist b/scripts/_Inline/lib/auto/coin_pl_8011/.packlist new file mode 100644 index 00000000..27e442be --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_8011/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl b/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl new file mode 100644 index 00000000..8535154e --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl @@ -0,0 +1,22 @@ +md5 : 80117e60590dab41f6bacb84f907ea9b +name : coin_pl_8011 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 12:03:48 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so b/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so new file mode 100755 index 0000000000000000000000000000000000000000..c1a96609b88035ee9efd8c65b0475c929ebfe7b9 GIT binary patch literal 68914 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 smS+%VuHcj>_}ajx-h0l|kq34Q5^;vgkw-nu{pF literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/.packlist b/scripts/_Inline/lib/auto/coin_pl_802f/.packlist new file mode 100644 index 00000000..a1ec9fb3 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_802f/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl b/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl new file mode 100644 index 00000000..d0853740 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl @@ -0,0 +1,22 @@ +md5 : 802f637ee5841996d571c64882d5484d +name : coin_pl_802f +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:56:12 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so b/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so new file mode 100755 index 0000000000000000000000000000000000000000..362c3b310d14afe9a15797039116c6e86c77fa9f GIT binary patch literal 63690 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äm_5N6d~MF*|z1?C24* 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 K_c8f*Xa5I9YSz&J literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/.packlist b/scripts/_Inline/lib/auto/coin_pl_807c/.packlist new file mode 100644 index 00000000..27a27c5b --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_807c/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl b/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl new file mode 100644 index 00000000..be4aea77 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl @@ -0,0 +1,22 @@ +md5 : 807cbf1c94f3f17b7eda403ceaa7810d +name : coin_pl_807c +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 09:37:31 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so b/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so new file mode 100755 index 0000000000000000000000000000000000000000..f7bb40e772a6fbc1b36a4fe939f5c69e53a32ea1 GIT binary patch literal 66734 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 TIQZh&@AFL#lphKfAK?B!B%Q-Y literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/.packlist b/scripts/_Inline/lib/auto/coin_pl_8367/.packlist new file mode 100644 index 00000000..03b81b7a --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_8367/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl b/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl new file mode 100644 index 00000000..66db667b --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl @@ -0,0 +1,22 @@ +md5 : 83678ef08b0e07f0e98a7c606e7590e4 +name : coin_pl_8367 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:46:52 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so b/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so new file mode 100755 index 0000000000000000000000000000000000000000..3e00c036f30d63c7de469e8f55d5870b884a23fa GIT binary patch literal 62515 zcmd443wTu3^*(&gnIY_4X6HT`Ai$6bkOT+;LI^hrR}(;pTm-E+gk&Irki<-afL5b` z5)nkD7Vp%0p|w`L7B5v=Z`j(FdZlVD_GfMIQt^(}*8ltNz0YJqp}+6>p8xYb-+`HP z-o4jeYwfkyT6>?{%PK>L5Yf zUTA2M4L>_=U2x()-_W^x(sHZ*TU#BETLvolANzB4vE}aFc4wj;_56Rj#p_Aad+<4Z z-eN2HhmF%ti?}5;@QGA=rYXhgYuK)ALhcu*pug-C^u10Y_a~>|GyN3wU8k_yJ*SX6@D%jp zm3>mI3MNl%%n{rql1rNP$#>R}pu+CgC_}&8(BBOGxP5~}LHgr^g9^J}+YS9rlTciG z$M8Rqp1z!Ml6Yrc&Ol~+*G=9=z-@+q2@^85`;9(7Fy(F{+o7wi1XI3;i4L2qk2K{+ zCrP%1u3cY41~rWh8$mdGU3h`vFuk!R z8jVD)>C@&#E|?S9P+il|3Sf>-k2FPEYuX~ZdP&u+S*^`$t6Lk^p$sG_o?aiRT@!6z zJ8eT-Bzk(JZDCt$L(?i$uwZIyYt04}&Zudtv6e0judQil3O7YASc9h3bHi=*tzjOv z;2=^{7hV-dTGf%(#&C39cyz07L5MkLzS+Pon~j~;;ped*ErS*?)> zimkOZjg8HdUYsFE9W|cM3 zdacyd?xqW>s%M@tV^mp*s&#qSVuadMUsp6Yw}oq)F_JBf;qozM6zoNL_VC)V6MDX={$J(FNc!3Yzxhv$CNv zG9pqNPi?w2qP3=}F20;flv&|O9YZA?UJ;Gz_(xGwoi(yO+By;*R?|2Vwwa(|!-|pX z%ge%Lr6U>}n%dWoSk=^Soj$i}+Vt?~;?mgB=;E;|-yk`iu(|8b?iJ_>1b|4fJvQ6= zZ~q+Y6P3gD8aJz<0n13QHA&@Z%WCi2fTg3ynq`=h(@H~6A-dj))gKuYWN~Z_d&rzm zbqxx#I99&Xlph=1v)sk&^L07TCF1+j5m(MSciS3Q&h@Ih?Tjnudez-_$CdLuz}@!5 zm2*w)ZhPa(zRK-23Cohq_F##~NB8>ONW>>8~TEoVv%4dRJU|_t;z3vAFWV zaeR))mG_D(w~U?1KmPne#Fb;9V_RBWInSfqEf81E^CWi*#+ApPXB5Ph^Zdl!O5)1n z?O7gI9>4Ujh%1j@msZA=^IXi`s^iLytEsA`aph(TSLMs&%FR+hmDk6Wo27#)Z;31C zxu(0Vk1H>63$gErE9ZHuyKRjtH%lv3wKJ~VU7N9DcU-x9uEz2`apgP*aJRj2E0-{L!UU)GPyk?*h#{*;)j#G{84exI13 zcJzS4e%#b>|Q{mqbGmMXRDEw<;hS$*+g&!kks2yFd@B_pQ zv7^-r|CE@ab+kg^+ld)cM@tmGk(i-$G^p^k#0;UMX$oIS%+z(%Qus1rrmUmK{*8jc z8;KcOM~^7nO3aWtdPw2b#0;gQ2NYgGoJqV-;d6)?I!E^?ynvV?b9AS|vxylhM>`ar zM$8a7+M@6TV!Ha#A*qaBMN^?OjkU52$=p;xvf`wTF|Q8a-hxm?vQe%o$gk- zz1LwhsN6pJH`pz%EIeM>`M1hV$K?givZv8-k!kqpvhR-2-$4H(O@Ct?{jZLDDm#B& z`K$M*RN99sJD;ok(<`|Zrw-hVE-?%y2YhJOHW13)ovM44xfuF8C53!h>rbZwz2I-joWe7jC$!wRe4ZVKHs$uHQxit(V;j< z9oT_}*3`46F0ShQV(OyB3oEzv9|D2fCU#x%?RVd8n>cq{N!RyrRJpCX1*kT!a?|_X z%FgPRu2rhEBCu`Z)a{M=_U!H6BUOdZ&Fwr^2}5lXfCAA!1ZW31+G%kS#)0Y1iHhMIFb-|PA%RG-@U9CZ5Z8>NZZHu1}8p6Z7bx4z$S)Xmpeu-0qrQYjY>{}#)C8*%;G@+2lKiv{pWYz zJ;}f$<5x7BuD2AAMfnAFm1DA$cI~|pf#u&@_H@@F)b;eQ=Tek^4FxCdU;T0PpZ?Wb zmHw~(b>wR{#>kz-zr4o3o-i~N2miVk@KO5LsFz?gde}Ws5*~tKzebT($2{zQn(HDI z8V@^Pvx<4xTzJ@a)f0NyLezG9*sH2p*J;?D%)^E#V&!2MYFp65(o`dQSOV++)5B&! zp%0FmPQ$ogoj)@_c(UuNQ^DDPCGEqD~cUv9u#HMEgM_&TP%AGy^@RQOsL7pIoi_ zL2rqmw%c3&u9|gKV|OxdDObeGTefRUFxvA}BYI1K_5bND9mqdc*EgS=PM=~vd6V@R zpqIfUHlIAl!tL2FViq?3vI~OgFB~5;*^lq72Iof5VqV);(6v*EI&re!s7g6FGu_F) zvhdliT2owA`zkE9J^xi|TluShdFE~_J=8UmwcE3oLxD%RmZqn4e%UoZ^|@=Ps`brA z?bQA7X=_I3`+C}&j2eV;f?}TimxLe|WWJ%GtK2?zBzNfPpEQ%den!J&-=k?fnkHaq z9@aEZYMQGx4X*`*PqLx8M$_D=X{KwM$2E;(Xx3_)b)?y}Kfu$3w&74Pf&x0qUKVvN zQD|FzdDj^@n(KCEk1FmOuXdH&>H}THthWDF*{cOJeP!oNF1GsWYWP7KYdy=cu84H6 zE3lANYh0cl)wHg%E@)VZi=({Ei;I)EGHIK5tHg@GG+11VOQQ`<6DHs? z9|<-1k4u`m_@tLFbyfG(NA%wA=b3me_B`QP{^@t$t;c>RjI;;)L)ag{z6C*s%S%=X zazzRDhmfLqf9DwXTe07XDVO*8f>@MvVSfP2v;t1b*xYk`d*cGjUY}<7OX)3muR9-g zJc&5+33!rLrp=Op*{R7Fhz@H?--$(I^7BxtXfSPAUGN}vt$(Ua+vK!Jp1^UNgijql z0=lYe{?laI4riJSZ1>ER!K=JeWx?gWrpl5{37#@LNfu0%K~#chniQ2ds~e8Cci>Zx zcshW+1^$;iP-T;6hOBn(O_BkWOqF7)zN$ibui$eW^#6;z@)PCF0t?zB3;kaTTdL~^ zGi2I4^oD$gqkK8a|KISXEgNZjjL8lhTT5kdllOAZRgQB$jYa-fp}qtwf&Yd7N$te; zOg|iJbx)_;&eKk?^N;MFW~Mf=&AsmEUT1VGz*=pNxtQkS>=SUw33$#4nAbqLx$W1T zfUh|L-*W+6ELsIa&xaiW_mSF(Yx4varc^w`ug_nKn0X~4|JZL6twuN5vZjI=lFXEjJ?$gG3; zLBiOzPS@UU9QRhWmgQb^+sP{(*xd4^rsJ;OZ!T?|M&a&px{ZBdoNuVe`)p!=Ax>n}v=gj^!vwzR*zcl-VOs$XK?1z|rnc2@W`?Jh`rP;4D`^(M#db7XF>>n}v z=gj^!vwzR*zcl+}gSDMbpFVv;uwX`HMMF(fu(Wtw@#qm_3-y7@(b_MJSD6dM@3>BN zf~7B8<@&F%n-CcGqQSTs&P?w%jJtyB*rEW=>^Qyef{#1i-ro$tPW1kgJ3FCB)%7|D zEj->{4NYyR>qXmnvkOsl`7|Dmf>(R4n8?Gq7+23$b?8HAcsdoqH&EPjr8@iwdU&=e zg8Ta6@G4dM6gg}^j~pgIS*uDD=%BR31Pc@m!-SyMj3U0S|i#?+)nh zxkHs-fgXE)q7Kg^$wNF$5PcAc=+7wh$2$*7dZ%58a_<-j_MX|o!{wm%HVM#qe+@Cc zCcVMZ_fgtw?%#NL9fTyjs`ULFap--Pn)UAJ-G4LMi2GoV-UE5)gz!)j$#wxGy^MoY z%R4I{)xotWN$!PYl-6rKmkgp1#l1F?Jz9x;Shm-NRM-g#cKQ=F7`>PzycZ*0(34%?0?_dZ^l9$=9p-5hxh#rO2F*wV1!sP}E z`64dFCf694CP$6{Tw!a$0l5ffPOddDSKbc0CD$1kl)WG~IbzxtK==x1=vx4ef#lom zu^55WaCp6ye1|%w@EkI@)4&AO)>_GT*`?6g38l!tBS$CSZJd{**1!?0|W#cLV9 zPZc3#N+KYmU;G^%lVdMeNQm)B3v%+^3Z;qjNO{`L3I)UxWB^&Ahb>n)SnbNG7pl6T z*o?iLuKSZOk_G|I)DjBBItZ1sA5fGf;);Brd7mm&E_jneR{u+(3Q>zL%kSN$qM=fJ z5(GL|qora#lB8UwQN6eaqbOIiJ5Ff5&N|-*FmaR9wl-=7Q$xQ-k$4pMJyHixRZJ~$ zF|u3g5RHVGfZ<9l&?rs7VXV|bjRLT5CfX#YL*GDJKOX{DEGyY9CUuwq(^t7nb`#aROkPGTq#K`26K%+C z>8mx%Eb$FeQTiH98L)h5NT0!U$NnjJ%5$Jfy4N;L(GgVQ;fQUd9f_TR{9KNL@&9pm))Aiy~>PFEv3)91RJV3(n2YG>q(7wA|Cl+WmY z4Z2F}{0xjT2K-VXA>P60WdwB=OcSHwt{H>qvrZ^OB*ID=d1T>)GPUbg0jRP3&I@tZi&e#=pm!9hm4{gGKTe#G2E5WXGYZmE3;!SIQG3^Fi*g%&a$%ZPhjfkw-|>H zBuwMsJREN6{Re6$yweeAxr^a6>>vlCcQGjBYA^uooWj~Pc`uj(mM9n)@EC#$kRj|%%yB}&0iT1tTVnfJ@-jR) zR+7z)FFus3)@%;llp?_{kcmHA~vHrzMV*QJi#QNu!boUP> z@%@Xzko*!|@o%!1tKR3!`EWA-<;Lv`0Jyfk}?J)P-GIZ8zjLuR|sI7&qi zL!vg`kbox`(kER0L!uei_q(2!`+dxEec^N2e=x9Ijz|MMWMGB-JM+dL4TO_rCc#we6F0&-183oDXL8o% znf@TM@*;fYgj%s?K{g6jA(C^3>f9v6E37Njb!ozZ`E!P86c7)=*>i?#6ck~YKd1Pf zvE))9_Kg4<^>{T=iI@Y~IiqLm;1D%LV>Fs1u0@i`8T%_mSs@<5bel6y*HwxNjDAkJ zMsvk8n1ymCXnED*HB2ly6LsBE@d<2^GfAU!#pUp+oXHw37k5&^X&TjuZ?Oc*nX2`y z7i9?Joaq|1h%{v4oEaLe4^}N)XXVVg8(Mop9k%Gi$~Wiq=b@-4wABt)HPu)-i(Z4< zdO|yGaScqGvy=-ePiVI-1|j|DoUP$rN1ToXkaNz(Fp4L%-y;$**X4Xqb3Wh^Z(=o< za~@YGp3p&$Xh#U-tmp$D_k_AU!K&7%mD8q)kD(R`BBx!mI_?qMXs~q}c6h}FWOadt zTfO2pgzMjdGEmYh)^LnAXjZ$uVhFmHvr)r6UU4ZcdZC7Uy~4xVi$5OCw)?yyA8XZ| zOElc?755`q&FUC>MB*zypUJkzz2Y(s^fs;Jp#*W|5WpQ5!*{_M zC!Ex3r`GC7f|$x4U8iAJf_R*cuuFI0Sb_-9OMYN1nIOJn+v|-bdy8-Z;0;_aVYqvX zS9$~9XokDD_?U*hm7ap(?k%QbVVHB9hI@L8&ybdK_83c|mY#F_-pM51*IV$7tDHMN zQ`R^rL?aD**A(SuFADJ%JSyj>T%CJDzZW76b4AWQ8va3uVtVhrFDug>65Rl74$)TRM`$T)z`iQ12j`dWA40A6yUCI89Uz!Um)qBu@Vextka zbfOp!pUL@F*FKXdd~~ya>Dp%#Wj1?c+56|S@xeqn$OqiZuCj<i3gkDLMbBL4GaugnsD7R756k8ALkwp0|P2@AUD^b=C29^dNOO%H>IH_u0 zhrcDtyApxZY(178N%DPapKkEhB$+^dSqAS+l4o(~vkl&zBK{##b7`MqgC9$hdpMXQ4gKRu z@*w@B#MD0l`HcM02LCciK8bUZoG}JJnIv~{{7Q{|4KiR)YwszYiNivn`@HB(pO_H4)k7)*XCCR@q1e8J;|~+^*__p?@g9hQJ+Ny?*l(Z{}O}uC(DOupQQ#LNS6O90&X$*V6x1m{^uKe z97>iq&|a;seUjxSj#t#+Bgt|c?b~Mb=}MN9=+76}CJ83XU(#RK8+<%j{+*$`!L;v4 zkq?vqM$>+4ihQ2_d!fNQQ)C%)%tZ$8PLaQ(e|_KJJt^{D+T&t__om2kdBB$#dHYi2 zC*C z_~ZxF_bD^JT|POU@$qXrQ>|u>`Q&iw|BN~hMt=3lm+6ns8T%iU@?ox&o;UqFB&EZA zbkH3?DgTJ2e$ER<{t+o(V}E{Q@Vio$Qva9S@su)+{`Rub|Cp37aq0D{>F?)Ke#m%# z&EPMj+(ms}H~32_hfv;OgTIopndA3{Jq+D|{!(VpKi@R?TPbI=|8LnrRo{^++cm|woO z^VIyiADHo-1&w zOr<~cH}yYDmv1v44s_0g8>9c}az67xo}(8w`_tvS)FIE^nZ{@(n(iF8yi1 zgAKn!>9T|JhB$h@ekENNQQs10n9}Ffba@>Z<&>HF*Psu_x7^^@)8&KIe}a*JI9-P5 zucsM%9Z8p;)4o#-?n;-x=KNe?@Ue8c7#+!(YVh%NnM;42W^hM_`~l~S=>~7jkms`f z41;%O$OkBIrop>2}5atz*^A$QXsD-GV4Azxy=R2jTKLyl*DnQica z4EY`XX^z1MGh{pcVXnc4GUU&g@6IszaEAOV^_gezkqr4N=ZpCUcV$RF`%`W3u?+bh z^*Phv;~Da6;spkGWXh@Z$At!O&6KaPKZ^|BnJI^HJQf?gJ5!d?zs@pvPo^xUeoGAA zn<>wxKP@$QU#6VM`QdDX_h-uagMiO5_&}yyqE77$KA0)Lqx^FnJ>MS6l*^dUmN~=5 z)87tf$~&2#&U5sM#gR<;H1kW?$yWZ{l_@``{N;{bE`ORSQ)thX#-BbzdyYrFvjk#1 zq0cjA4fD|&XRvC2JX3bj-{2wvnwb?KC(0}%u z{%`fm>pj4aJ2RC2JNo*nb zE=z17yBf0F`cRBr=Tjr&*md?`XOLlc<#~z{>?*--Q{q!(S5J1^Js3Z&-Hst8aqM>V zU}unFclEO_yXj!J87H}5S4(!A7R1axufIs+uehqL5ATC*QuVMyQkv{|K*84r+%w&fxl1kBBU#^wGh7=lfo&U zgE1H$*~d2!69)(5Q{65BO1qAQJ_es+zS0o^l^hu}V;9i5MXS)o# z4KE-1ku~~cYAz+>4+%h7JcY*w>LXJEOBK+e$Tx8)EyIh9x@=x&a90WrmUqy=WPc*e@@*!jZ|0Dym za-$bDKXL`P`+6JxMCN$2vD)D~kl)TT2U;OFYuNcC`Ae8sb4J*4_ zVj^atzWtBSRsuyWa$es7TDdf_1LM|rAQw!$mDd4p=^NDD$`rMjjrtDKdS{6;4^W== ztAN-Dk$pp4sKGz1eoLz{wA&LWKzRT4_%(!J;Ai$`0C_8dF>tRs zszw3vEBJiBG;`tI%Js4jyAt{MR5Bm<4d&MHmZf5!yCR-_ZmrAy8Vqx8ow16zxff7G zBN%0k1j8RBaw_*pFf0iiwta|JZR$VuG|HcP8s$$tjp9OMls8lN z?$@-@^@)8TCi!}JOnraf`#4se=r7|t(OS<6H8iW2j zX3*I<@e5eal`3@=$SmvwK4+Iws6_rAxh9b6xOdqeXH=vaSRpTBZMuP#@&Tw8$WZ4f zPN-T=83dT=XbUZsGqK_iWSQFK@*uKSAluZ|%LF)0z;9|>ElnH&dga;L{*|vtCk^1>z>w`9D>tM7#;7=$oS{%du{lcea&v zQ{qn`d{9l(21{i5eK`=DcV8kj%<&zwaC{j!WCeU2=e)-_#(jLWaNhgSD66lJi>|yK z;E>hNcOL2M5%5{LKIX!_E=FyC-+H#qCCvcek8o`Hu0@&%WbO7XfHZkOO0sV7dFC^H zS@H@J-ss~4V9e~t(4VZElrCKCJhb%P15=k|-RgUeY#v3%$hys!XxRJ% z3S{k3`jO4UNq|2xFirj-1MqfVwjvJ5yQ#vDjS4}zmwMk}AOiQfMBrN!U!u$}k&19AkN`AyR{X!WTo zw+8I1f+Bqu*mq#Affe#?3L0QwrQD7bI&h$Y)pB++V9>y&@=~O^fqC|R=2^jv}}h znJVwEYzB#cMGPhgF6F&sop-bl)O{*vT7k1~z)?`#DzNoHsOsHC9S)AD)DXuOK0}uU;uzLc-*^{ip|@1$`N* zE;pBcg1E6VMIg#WO~zl)^*~hV{Q`$5%A}gH8b%C6nLjeF%j6*!iWxhQcTBUDs@ZyS zcolIIh;HWLwd#=5BKpiG34+~85LZLf1i|y81n~`2fcOrcB53g)-QqjC#dmaz@8}la zp|n=wJG#Ypbc^pW;<+q?m@PcD(_*%Ci`mjGW=pr2E!|?abc@;2EoMu%m@P&O*J==R zCC_iQm@B)*T-hz=%5E`Nc8j^PTg;W+Vy^5KbEOf(buz?U>L@=IU-SS9goKx?9ZE z-D0lp7ISsCn5(asq+@QoHZ%69f8fxIFxLVqVR>v=G zL#yMLwxQMWOIsHO#0H!~h1NvIGHQb2ZEy^&X;G*^@Cnt>8qKprJcZy0tD5MIw6yYE>b+}MLvATMJ-|q5_D({M-|hH_&wHuS~Jcr`L`n%ht^Dl z2(LHS6WVO&zlLZvCArA>c$pzVaM%Wmzz^(=Fs&@}A^xvdcR4sg4+sCi4-NE^?gn+{ zA%BGw7Pv7+cPVqlP4-xwo+KZ}4cu&CFKfs)q*f8QRxQ`_Qkjmfv!6je%InP~+b&)H zF0>EqwiiH+yp>QiaEnq2Dn1m%kKeX{w+QU9nMCtGA?=UUvu}C-gG3a#-KKZt@m-q0 zkJU}Byw8T=_zp!69!$zZdLc`Rz}+^_zVm)do%ibFU!gYe6Qu`ec^x5l3kE1~MBUHJ zR(HkpGKVKIAmP=k1aUqzwHISmN0fUZD*(PVgz}`?c zA7T+)*@gVtXqG624xt>4Z1DyJgaYO|h2>?lP`@Y8D*1a@Gz3HWXO@D)XfKKfYtOVq zD@2EexO2oX)(vH(VU7?(hzc}H6Akp6LQNU4lCz~{Ee{QAB+GN?HN$xb2e1lF%!57}v-SAR32)-421WD$^@BSi%pTnuv=6=nByc5JbiUmm*^kkvPyIH8(B_Od< z*gQepubSthq(I#Vr)9b|06{GZvTY7RkK&6}@xC6#eg)Y*yyv30|3Fc_b}}lISt)Pg z8_MH5#UJG1<2Wo(vCP5jmgrYJ$R9)>DkAobV;oNe(SBuK_7jxpsMr1C_{USC-fxH| zDk7%kjXjA7!GtG;31T@w?$-#K&?t3-b+8Cca_&K)oWqG@vhyyE89u(75c5kzV^o2B z){n|kb&G(>^$|`hW6c@ANNu-5zjSV&#D-ielilF7&~ztQ?(&`K@|9}7n5Axxz|B%? zTddIO&gDvIiZwV8n&U)bt|4^W9eR=M0oHRXeQ!Q`F$f&?0B>cvpe5da_#5 zgVoX)s}GRwL+6;vH2E6_`S%nXTqsSQW`)i*VuGn_BUWgcK?U*_q_)s`>K-4Sew805 z0fr5qa`{t+)^bPZ#7S}%iE9izO`gXLxk6nb!K30ZAn6hW^XcI7&?@JtST7o4y%@{5 zTy3C`_i;qm7?>u1im?kdI(mf=kn@;V)*5Ys%H}Pm%lYy;R-SKQf&2}eCDdwYhqKF3 z)5#JJ&pO9D!L{l7m^Lq9y%yS_914Rf`ws%#Xkd!6)P;sgnl(5Wy4aZ=W6}|0a)iTp zX{<~Cq*X3ccjb7sU>_F%n~ci^tij&UpmdH%@lxqO1QzTFr%DBq>0{n)^KcKymREK{W6Mt_I9PcrtS-OWmGccgdaj!8)Zt7Gk^mAjl zAg$kWj1Fb~%kF{!LGy{|mT z+a3Cw!)LhU1TN0sb4N_RS^)TW1HCdt2kdgkOxE=WJZk(SMGj$)-;WL2b5!kv*r44( z#XmGKCD< z8CHH)1Uh=JKoZRFKMmSv3Vr(`;~n@@|5SC|=R(x>PvymORlNa&l~ISO*;M}siKBn& zR!oLiJ+J}azf!9QNFwo2kzJ);tjW6&^LzGeMU+*<> z8L5#FcMz3m0cqkp2p=*^`%1tnIv?`(;FmOp7MD&1pFhBNhL-RUY6qh$O01!yW&m+O z0Y_OwM-zHO9hW-5qphK1TBnSzK*U|Y#vcxYuo!7&tx z^N~#oid++A3ZP-GiNYAIg5lJJBeDw4R4_uLfH((HT~Mr1Q2dQtMru?b1|ks`jMAt? zoP!y#V2noP;!8}^1!L*3T*?eT>=d>-6*G}UHrdFjZ6@R_ISVH~h3)E@JFXZ4P^Iuf zMajwjbJ(Qt5+i?_E|M2M?J(e>zawuae#X_ukryI0 z6h7+LA z{V`{S>hD3Xe31Hl?zAZSLtc5DA!XR z@0Gv6LcZ|drvA8BK8@HfOz>#=9lc~G+b4P$aPW^_@_p7Pd9?la_mURJ&u8in^pZ;v zJ%!TLAM7Q)NMeQQ9wrC)M=zx9D=IimOjF-<(*!~1Ne~?J1i^vBIi5PE5fcPo-%b#G zb2|54Oo@dV9;Ss%k(+ThI+ZaVp`4q^bI^>p;M=)bRLx4ZVfVxS;6Fej4x`dPh=t#}gg;SU-0Y>|V+2TJ9*i<|z^ZpnjBCJ_`IpbNe9FnG(v-N zXC5kFP+Yard>L-2@PFj2fuO?Zx)#g-5A_6QA@%!MDU_$WdQ5c{C*c0ioNGaxTGP70 z@_%m3W2H8%xBOq2`~HGtUpbGFthT+?@*g)9Rw}QF`M-{*`^NcejP6^bx1sx&+evF^ zn*UQLtr9vav0o~E^L_<4^Z!$+lecjwj{mJ>TE6MgnWhA|k{;%|oBadw}KBJ?u)}opi7np5-`(AimG<`vRG^ z+JCWnl1naRmoAAtxOF3DQh!J6!L9d^H2jyw9^4w=3-GeogIf2z*dl;{LaLXP9c!hyMc|9$()eslR?-O9xF1(P{sqo)>5b-&zPS@z3<0 zIU7UQ2%Gq4dEFcTP2_gEs^ZYqvQw4bC7@(4&KUw&WgvP%3A4St)P|cIvW#$!f%$Se z%{AA+0-1~q?mxr8;TR1*sFxt9YVH{vrUhOe7pObIe6mAdEmPMId2RsO29y@4>;FGK zX?>@vUjkY_HF83Gec_U?^7*MS*!?6%&c{kLIVJhcb+^MPO%QzaCwBwPlC{;BGzaF} z2#W=?I(@YOax%s>>q;N5_#oTKw+aEb`OGDBc@=^r>nfl2V|qM~$m06#w@UID|R44qu@Lo*`? z{nRTk9+H$+UgOj(0pQappfmZ()UM1uk`n&OJIjwRw6HXEi)K4N-3I1kbQHidbE&33R(rAwO71cB^tj`r~@Ux;Z+T_*Z z2%M~_RHLQhTPi(P2jOzz#TuiiOpjH)@KD}3jaG{*;P^%6W%fq#18VB2ZbfeTo%owd_xI<8;UCC8!}8t%8nXpj}n)bM~UuBIBZ zG(2dFRdB7M(=|L~i&6BcN(~R&Vk-?;rQs1<+=!J=(QH1Yffw9u@d^ib4$b5VeQ1l- z0&p%z!V~(3E#4xlGc^3z7QNZQdAz}i*Yj+VkA+IneBN8d+gP^9qZ-xBJXmr%VhHkD zQQcv96j#7vIMs-BDY(xO2au_YR%+usbzEK^+zva`aXn6f?%*EG7cz2ouhfJL`pc`jlB${q9)ydkCfpy+~c>bVWjKdU3H7)1%96yG|P@#O%0>YjTklf|WJ)r#UQd}rHy6`(s& zS-JdMZ&{ZqCb|DYm$NpfU82ah;JZM**~Yg8;+wR=0kgKG-KEHWhVN|kLbjGU;&}|c zH)~S{-?1ouDH)Dj%-<`ti|+$>r}%ty-&6b~qQqN#KH{%eaT08oVEOKZ9V)YOGkwTB zsVy~ic>GNrBZF9peo*qob#sF*_eacRLoy3dlpsdpJKN?v7+OmPpOyO(+GUN)oU2F{ z;9K8iX^fGn+a~JXP3{b`n~=%tAGyyb;drKE?K>9%l9n|u^FB06UD;%1&CldhcwA<- zw6$7U)tSd23Te{HeKQ};&dl5lO5EQ;l;Bn<5_y8)^Uw)m*=+QJF3y+aRWGLwE8Gl!7(Vhrl=e;=QP6(@nD7?uh(Zc+nT#khOz=a5Sh$ZEcAWIV5hV?z zzZc8v5u-jb^mm{SBSy1=v&i68;t=#K9;_7)iWlI_#Y0G@7u}@t=JrP6Q2a=;<(&#MkIZ`zhrP>6#(j%@kU#fa zQqDtm=o|E)Wc+re?jX?{fm$*_GaswXo3hXhbI|gxPDS;^7s&0blF5@$Bg!GGPI@$nkhO?o%ldRN8^DOpZt~g- zl8Lz(4@W&P^fuu>DCXSA)RX14tg=0(e=nm)WzWQem*YU`{}}Kg$ch)!T8o^E@O`E| z+A8}fjXOzlpW8%6RK{NnaMdaMr2%u%!kS!xufb=*KJO##I=6Ae#?d}a@lDpp0juon z_-@z6gAMWEH*t+lbKN2Wp|s)mX~RU%M@*7xOX1^OqwFAp&eo699x?6rG%AfwcC&Av-?XoVPB&!V=} zGR${HFxkL$5DlKs?8Pb^tWuw;y&tv1b*;0G`XfS01E%u#sGJe2v`Ry!{I4iqValVb z(-%PCFjM;tYB$Det0o+DnJC%6o`u{$iy|UdEd> zG0+?bN;etMaTb2~UNO=!y*-}jCIcALjq%b{Oy3?yTJ~5RD1Fud#`LYRc2?OJaYSX= zed2WMZ-9>JeW>{w?Q~2(%$S}*BOQuw|3)0J${sZ?p-lF4Jor;QD2fw$n(G@U#Plbz zm>y*_^WujXIBFH9={aW4zZ_@3LyzLDYOA{*51~wl^9Y9XM}QS-E*!~#o%AoH7kdob zOsWJ&dn}1c=NX0!;g?X?BZSAf;@qk0bR^+&`!(q0JZ3L9O}~Y!aZAIjVvk+sdii7Y za{gqe^76;%9?NsIT#^b&6h z-TQlh6P4pnr{iBk_%8IbXR!7mz|#Ik78igo!g(=DTmTlBVlDvR)x~OVm|)7e08EBv z9Mu0@0G7@)WLyA-4B0wJt2X6(;an5r%9qBKFEr&BfquCue**MtTyZFGH07_L{0dc$ zSyin-t+F;#rxu^CDRl&w+i$_z&LP|VJM6>zD??ka!xZ+1%iY*L#MpfulbMR$LyX-t zoJ{E0eK{_6UuNt!qe{i@%Z%N}fOPDt$`R>q?5f(y)li@og7kv(4f47eBszBAWb8gf zsABgm#_s!oWyegPlv`)zq7gO)LUEvUi~(G5-WHCJT})1s<0#7(#DisVp!9qLn91H& zJapJz7*Et`0K+zMd7K~>w!CMYr&Gsf&(u7LazN58@o@13J>xs8Wvf0UhZ9Ani!1 zG9wF6ow=x5zG*$>^+G7|DK9}Jc~WtD%I&tPPZ?bfoBgvjmNiWo%&ShS?6T)fjk55e zIAE2{inBvmbv#%Z556A{Zi)k?{6QLSUm`S1R_GzV7p&qX#AjVoah-4YXH&i874$0#!O|E{X3pZ zKVt}T`P$_&ES`(IuswlGUYrF>`2!-{$Ylx~0jtDB&$M_h?!w^&F0Rl!{j`dMBXx0W zyfx_w4?Mk}4<#v#feHOMJKf3G?reL)1JHiVT?RBb$l}3^;pV7O=kX>QrrZDM4aYfC zUD~iY{rGv2#hR{uLAfMq6WN@8{G9(#e%~-$xGAzZ{n^aosUn@w%@%}+XOhP?psJa)cUy_;w=t@`Sgcx z)Vm%w)1bbR$&9U@F}G&gx8;DOHPyD6?c%C=-4Gn^#3HZkO`&dP*-USmgqQD8+lC}o zc2ued-fiX~RST}e3sAAxvF*)npiP+ijbtqWVqSS@t?~Y2+f?<_V~u7FWi$X4wZZ(j%*F zn`fY!c!vE9CeY;9ZEZWAg8J112(#=fvoXSF+cr->^(fA=-^X%&T&ZpIq*IR|#{wP5 z&4U`tbO(5vsVjLc&^q0|ShIQ>wwb!R$I#ET z?B^p87_`?CKywRdm=!b)uMVsCBjN~W*ndKhl&w!vZ}!-XM@_7FsSDvevMTMhH~}mB z#I|)crwc#tlE8b@?ZGlL*(3YObX+-1gJ37$N=`lvMYxJ#4xyFTZ+YZ|8;asVoDTOw;pS-I&rIu(b0s8{Roe`OerYFS9Kt=^FmLZ5b*oRv-iD!yimbAu5lT)k6}V zvv6IKk|scs@#QHg9M6f}1+1Uc4RO^n*u%n2orTTfdh>y0Ao%vH5poG*laP) zkioRM@cZfU`c-94Qbw2&E9^xB>B5=ug}P`~tSEUXbSC@Li!IuAXiBN-L}gD31jv0D zImc?pEQ=J3fU>bM=J9`Id$e_ALsM;IdtGGY`tq`HS?P$zhNkxQBUUxFk6h8v7PbC6 zNpwR`3QgYFuwvw@+S>o*h(8wQitDCqiL^G3(32 zD~h&;wGkA;KGC+iy2wf#dvV;bDjI3i#4T<0t&y5Kw+))3YW3O{T^l>r9H5%v*08Ff zX=Sq^YOBK^Br_FlHHI-oQz2;46ltqtLojy_!LP2NHKLlKIChM3+6=@P*=A~iJ^uEF zK7g3kmUT6)8b#OX{VKCxyGr94gX_({*2OhVbsIDZI?_PxjW~4-K@F6Rao0oyhQ2kj zDze@vfg8J~{sJC=#i~|T;h?s4LyK#O`kK1t3v_X71RXU>x74&oBj$MewCT-F(YBhV zHcCWTPMVF}i6r(a6|xO$v92Hvnwvc3S%bsA!wk<~EuMrkOr%Mx+Ig$wiuK8(h(t`Wy?B zJvUFfJ?Mo^B5%t;ujBdBdiUqf=$t|^`Z~+;ItdQ`pqk_LBsfE}u*Wk1D-{$!=WY|f zM(}GgzU%~N7>S((k;mO|e$C~V!2KxX<@KK`@Sd0jaQP+T)-lC-(4(jo$E=t)zdy3a<|*B{eL6&YlyvV z$u*lci8<{5CNcT)?NhcxgRAVelWXvQbp$-=;?~U`pEKI_M2kJX$2?K7)Z?2i-V>iY z`I+wjERpF9&vME$okS$)s>YgV8=St4k8CwIH?0b)FaAkG{K=|tZIp?_YK??R6A7bEVf?@%e&`L4w1%02 zkpshgB%_KQudS)YkCar^Hm_}Iz^t{(s;XOo{zs8OF9s0^STH9-3_!cO#U^kx71Ng4p5UyQs>{z8}TbrBPto60)!p-e%(T2K+rMklT$O>1ZqgC^* z`bZeg(r%30*4)<6))=uC%shSO((2gAXw8~x)<)`7zpU!HVdSzf?|9UQ8zW7t+UhZ* zgjY7SM$v=1=I8~OaO?5j8%CJpsRtKL>YJO_gpvAc!)-7(w8ebfR9kOF!!6DD!+7gg ztVL~PT|;ww)T+Xua0FMiU<_B*!Yf#XF1N0MjL6DxW6cJ1qJbhYTx~V2oLnPK>#S(a zx(I5cZH>*f7X1Sg3{t<_A9rYKn;V<)_fgia3OBDN%^=f3T2tE=fm&5CVC@=sfjjcXE9v^x?JF7^YB3*K?FjBMqhU>q zIF>tYHMMK3dIZ422#V|{C&o>D4ZRGtD+oAF!&)o+`Mun)*@E49lozKgIY7d zjhmaSmbLhkK8md#Lztun{tc%C+b}bWjymwcP^q5AEYPx!zF{Fxa5WN+)-<;D%phxP zRyEYpaavlzt}UX*YGrflT6hKe0r!f+2z6F;MSHkT<*L^9re-|cS=9n-BUUk3;hy2f zs73+`(^=zeq5=hiq75({LOu+)t7~41?y8`pfCgoC1{3209tE92)duHl>+Yw{E^TX} z#Od=E2dA6AUrUdxV@AY!3TX~;27kq#nzGownv!Ow{wJKC*_X z#a)qD;Z@3D%vj-75qL3Hgt3GYt+}8EZr&P256~(+Z|0&U^B2qsFPgbo?>+#jvh7?psYm}C|)>zfr+>SwqO<*3{m@`Jq+L3kC?RBZO)y05vBeu)u* z!I2Hsq@a@4>h`rQ4EzY3is2Yu9}TZVpW%|2wwjq-;2=oYoayN1$Tf_(70qpJ7*^)} zcEnYrZZs4@JVaor>G2CZj7P(&dTYZ5dT2}g3Z^o|#EJ-f!%g98MygtYB(jFl3kgV1 zIDdd?o9e>R`i7NADJ>Up1l8oy993S|6lSC?uCWh z;Dm^5NVTFE>V0`M6B6oRL{iU zD%5j|@)^|^Wp)d*4o6y#QaIeyjEsYjtwJ8gC@3$$97grl>NLs0(wV$9vYrlHyUluuboD&rD}~raRN! zv$GK?tb!2aQ4vLXNQJ_vJgQU*wV-^Zw2=6!iWF!7p`rptQ-z6DDwdY(?|;5??!Emo zcx!j=chCLa-}%n@pYwg+ZFTBeEy+yr|G;pMCC|2On(|JAEz8X%DO$$3ViUV`1KDrN zQ5vJ#XeDjHry-4T0-{iTrI=%ka zrEfL6ZL>>3R4W;xiq9_7;OZu#4c*D#q3Ks^N`{;4@7Fe&h3M6!jtr8XFst1zDNNb7D%I)_&12pNwq-a?QTd{W}P;FenT z1o{dTp(2r7HnHi1b`R0BCY9E{P?F7Qc4EJEFxLT;gUuE}$6K&Qb{F`QuB@*$Q|rJS z>i57c%-6NfDsagfRs+FW=|B--%f%xHmKKCCmzGa5Lz2c_LyMqF&NgMjgH=p~Hdi{E z4NW`nhEQ-%tSio_x7#Lqnz&}FY8Zl!4;yF*TJ<)vrIGQCWWIN9jI~&AZQb15Y;I|) zQs~iz<7g9*A&5v?@q+0PWK9E+;V{K2EL?VWfM!MvsSD52=0P{9qgoAgrp~YR>j+tw z&k2$WT^qlJplUT}3H?)6=fKN$Tk?k9LIIy%0=U?~cU1Rz1e9?~cd!Z612jt=Yu;{Z zBxIDsi#Gp(Y^L@>C)>?-w$tvM7YN*Lp$uU^v}HbB7LT1+l!6oMIo>2HD9b8%(zH9%r?!HXfVNSu0R9q_!VIY#lZeQ}VaZhwaN)>D^_IrP5;3OU zpibBeXYX9;3~T@fJtIv{a5s|+F9%2Z%)H;Y61+oNf*vwX$=j&UHlG}4iNAZYYFuo+b^46W{!jQ}IIl6gEZ^Vs+nF121p(Ik-$6xr#vQ2pdz z)igo!B7&=u_Xs#p1oG7Yf{!xO*{VILt-{op8tt9ct&N(jjFJH?@nZAQ`bd&?gW<$# z*?}PwJnn4|YHQsLHtB59gBlenj)qhPtU8dfezw!NV8dtwM5QH0L6yc$Ryd#?=tTbg z&bj8MSdt-?1;%8O@PJV^*0zzwxxtJ!N@C4s)lSSv30lK~Vuh8RG`35(9Xz^lx_bQZ z3Dhbzg$fMFYHrS(TGOy@VKc*UhzB#<)Yal#m|Nou)Xi!KJAgv98JpK+{ZcaXjX`QB zoAvfQ43{$NV-WWdU7-{d4q2O=wm3 znB}I-lZ!D+W=I%1GDgvB40oD(V9wM5lrq4J(dp6e;+qpu6X#3kE=tje(qL-j?6b0t zonsmzVZN$(lX|)+*+~G-2Ewgw{PEO4mJ|%G!BNjjL>7}%P3UjeHhZ80^+NIlgag7W zwFEB49B5+>rooYRK{!b&8tS3TZ4M<5lTE8OoJE1P+}o4%mQ-}Y z9g+~Gp>y|#rA=0r+9BQMAj}Hxy1ymq#HHl}CzrznG;TFed?5L6G|Nv`7Z;8ly5{uv}oN#qT(hCrjs*wZx>h-6NhiH2@W;21YKTsGUJ`zqMDWUc|j4q+0-go1OF zO~X{V)p-j}?sSuiM%<+-Q)Lpgb{KBqZbmDnOmEmST`!D@1Y)k03dNIwWo8l~&Cy|P z-`YIC&VcM}GS)DqI2wmuS4h?{b76xTQzHPAK?NE!ym&%VAQ{L=HO-YUTBRptF^LBT z;0(kEB7b`rRwBHGbIlA^^?VjlZ&MGwbwqt-unG5XHX9YDa5!eHHnOeN8`QaME2efb zK?Z0}^uBoj43=TgAitQIbueUgt-0B|fEFtZj&}X5#s<5p150l8kjJ@Ta*^Q3VM}!} z$IS+SSXP0l9r-ZGV4b%;{9X2j%QOr>wKUl5-tpC+niHF=hWFDa#=<=!*m}xYIJ~5;0CZF5gY=FkX zLkVb=1PvEJqa#DcI-x^Hz46_ekdYmo*n*Uj5)5V)#D#1!q$+QfsU-3?Kc}Qj zX2!Emae+4(Q8e9oPsT$^r1_rOgW0pG%GLYupuA7jVz9E>Ibl#zlQ(^Q^aSv5{vc37 zwpemvG3Y~#D=fpT$5n224IIp{AjVEEEF51x34q1ZT$(P8;3*XRwn=`agx=gG|Cm?teZUR@Y z;3FC!1!Udw+CX~p+7u`kNQ$!+4gvIT(&sU^($vLe(`wnIZwxjzfZ&DQbO&grlqP z(+u#MY`$LaJRD>YYS5)&qRI_6f6$eb*sp^u08-EajFq8}m=tbRX^95whb0qvHQgZI z1kf>?*9JftCml_Q7S$^wDPMaaQ>KDsn29EnMs8FQ1H6r{|v_63l?+jus~ z8=X5@r#JMAdIoQA_OHKAL$@l_(uE5q;i?7^8BrM(ovmi!ci-^A8=4M@hiwWiRkLF^pTdLf3}aZ< zmk5s?xVbu?3pISPWZhT4mQj+VuxfqA&hxk)@+|gqiHr6Ps4)A?QU#YZ!`Pl zj@4AR__W&AHxOLlCi$JkvJ81L6k?f400NO?_C^{MQv!xwlAAK|eZ7sVHA7yq@O9`Q z?lqW-iB+1`hR39k)+As}gxXjP3y$Q{RGm#@3gY#^NBD(@I+WTQBvf;9dm@Q%YcFdB zcu*zlaP`8boyNd*uv`LCH|{#gr)_fI_yZ7#9IY zPibjY@V5j6li-016QWO;P4K9-YK?})aM8<)0j){{Z5UDQwsr}i0DLkfS@ZzKg9YU% zVQ$K(bf9mgYfwRdu>>mIqcTB;;POKUVOeI5d@68(rZ}^n$^(b$D=W>eY`?W_&Bc<~ zDZF`_`#CU{*43nMkW8ivW0qvTc_EBV5+o(;oro`>HFD>7`xWLrZ zgcF_0x;5J?@M5x*Oc1C^xzEC-6aF78M>Cz0_hE={tf_Lh8FFBTonA7=8eWSrL*ERt z8Wx?#AzYl*bDN#>FqPIx83S($x`wI@6%-80M3qTxKFlQDOc|h(fDG6*j^<^pvI>Kz zwotPR#}7%Ax3SjbX`t$9xm)%jfE~>zmxgnmZ8^|vkmZe}NNaD&c}UF?$VIT(Iz8A4 zcVe2jYg_g1IyDilO$cQ}2*p-i`*_~T&Ojw{aI1lviiXKDfWd$nEH+9!flYE+J+DGr$ppR=$?Ov_3 zDWZePE+uLvqymZU3ai`%0eI6*gcv5DCpMYWTDgpQlXyb@2#Ew3v+Dc?K1rsINzi=teJJ?CuwJXCW znWQX;)U$4^;Yu-U-J9Wog{(tmA;$izr;B4!Ij;v1w|a*GBmq}Vu>eVZKBxvg4I0<2XG~9V2c>7O;*>Low$uq@lvbAD9CPtPFf%r=ae4yE}SA0oSb4Q9*x<{CX9&8UbHeq8yLm?y?!_{Ox8k+1i zbI(YD(M*1}>vvzk4MfvdTWn2D zwzFnZ5+Rjl{LoyN!j}_BJ|JW1!8O;D;Z{dj#YU2OZkrg>01ASk4BCC$)=7EEkD>h~ zHUn%fVBFC8-Hn7C3?7~{gPl$>2avQxZayXfB-<_JiY}gI#ndxE6ho-~nS(IU~ zzN*!gVm{1aerX)3m&B()EPcQlNxrrrr6uhJ*IDPfJya7eWtO2G4Ui%mkZJIcMZyKt z^>r*Wjojqp-Z z!##Xkn{;xs|eI4l!B6w2Hn_RNuH{V6WQ4hsGK~au&;( zWlJ&@+vAp-^uj1W2;-q-K)8EcHbEWDY`Xw7SJNho#HN_;7?d;$2x|g94IQNg zc_L+OqWfkQn$wii0%pSOy8D7^j{1=Pk>eIFrw2`QgJJfw9_6z``zBbp*(wV>Tfj&@ zS^V>f85%Ba5}wAZA@@x_m~=l~(bEz@%GV7vTP2oyWBOKC8>+Lm>ZCP;9SJEcBkE@r zTiNQ=&&eM(=m}`r98UF@t|_VWG}37+g4&zg-v~wXtcHu-JXh^Tl&GLUR)!pw0-^mCixB zfQphGRP3B8?1r>Kf!z^4!F%I1G@LKsQr^;&uq`tXW{{6GnLqOfPc|9xUNdb$&d#r^ za@0)Sqy@a>97H9hp_Bw$#RUof$kI_$WDTM9%&(guymc8Sj4^`EFLi*#roj!L&GKJ4 z&Ijn)jwxF$axO)A@sAD@V@Ms!Yy)GUjteI-uZ7(-%?d#PPDp%IkcI?4d$EO{t! zWaY77WP|08U2VLuZ50+OmWc(Pz?UkQ0)*MhY>*s7OfsQ#7*ZBmpC!CvUQyT7X_CBH z;61jxc$rZHl5en9xFX$>4ezmGW&7skBiak%C^1=$CXxG{HMYyi1dI}jJrRZ?H@p*b zKPuuPA54uGonh7^UT4=7mYV}!CeiVHGwU?xVYsHy$+C^mHbB3$(bJaD3=fJGw1>ASh~-)IJno=OA~LGAZzt_br}ZTmcf_u0uv@g-rdH-FwA#{7nbLb z&`zeeFF4tBmWk8}`7sgZabU!*OS1EOB799jn~Csi3YtzGPP{lMVb`wgwg^VDOEbP*bpL27 z4h`Dn=N>rJvKYZAcUQJFnu^1ec3tgvQh6x9?eowL)1%zvuMYZM9T4F|1#Kq6)q*w~ z;adt?CBnBBw7n7jY42Ie*cV}rrP&2-Z-n`Ax}a4ed{04}jqtq%Z6?C{dVwyrBf|P1 zh0~%(5`n)rc}VA+bunlWjAWAs?Iw%P=Ux52D_f4>r*qO9Blvl*g7R9vKc1q5UD+Ew zNq#%yp?BqZojKuotoVIbb}E8BC+*I*_l&Vu+q3BU{gUjiEW$fZyEN-QkzE!~Z_5k4 zBZ5&lg}&1ZD{9XtB8IOE{>a&OyPloBIongYa!=)|Yp?9iUUtR(@#0>O@B`%t*%f1L z__oKpDsTIlPk1mob5|C9=5hJO3Xk$5d8)+-2ER;5r4N?s3f9||-H`~z-Q3(8u?5k$5)3A1Y`w5&m#N z+Y{lBmNQJ*6n~?}7riFTg$PEv$#dapp6fIHjwp&?R0h5otplW@>=b&QXYisTqX^!Z zlg1=ry!!Dx%3=hge~_Q!#gAnat^Am0q#=v&0|jj+!k;K;vl0GeL90agQw42rg#UrV zaJndCUxdF|(Dp|7+Xbx>;l~QvY=r;0pv^@1iGsE#!asItQEmzqf1~}s<@JRDA{fag zGe9K#Y@TpAg3s|fAmbwVGOt1shVc|7Ob~{D;MqQ&XMg6?p6%!J>`z7T%TAgo4FAHj zc-Zd}h7o?mX-OEylfG`L3o#JEC>#!c+zTseKgQHw@eIE1_c37@FCOy?PHXGqP3tA<@ z=L*{12>&u?V0B3XMEHS%wl~7RTF@#H{&+!~jqoQ6+DwFhv!LyX@P8MyF*p?M?|Xge z+XzOo$$c9Mck+bG5#(Fnb}_Ld_${wOk^u1(B}|Y2Z}B`nmFIQlF3;oberGa9@cmAj zC;{H>S={G$Nq`7{z-dVW#M1+Lp?5?u3a8Ldd0|EE$0Wc9J%f+LiBUmeP$EJpCBa?;qK-|DYU zCBBcRyYkHLh~V42)f1-Zs>jw(s^}VH@^~@u2v5c2@AG)?&C48X(}z=0S-5kW zZh(iIAskuZ>hS3KZCbjwdOmqX5B!%K8euVg!4Z5Q`LGqknix$#E#2RHKBMt}*I`ZI zvv)XN2;30JG_cEP`f2Gt=J|}qf86Cy2-4s7i5(L>R7eP!(e%^OJ?#06#?R*1d#|k| zbF59KJBQ3uh?Bw1Ild1yXA2BJ%DSXI*~X>0#s%B8Z+HCd_Qp5J4?Wa)x5d((B6_IH z4v{%K5Itw!?YUJRc-OI2g1P2;I^bJdXH!A`lv4QeoTZ5Hohw8m_xc7$UFJAtX@BOd zl$7IH_6^P9li$#$hPkwo#o>d^HFo&;qiqX{S7%v<*p4^05T|-hV_p0I zCg_W^8Yk!REGAFfuN=wIc{8W(CnUa#^q=)f6!&$1j&we~QMT#gBeU7RU%c3f^c9~J zac_9Mh#%>loZUcx51-}bhut3chdg1_G1AX^1~+k6kx~AlM~Hiv*d85hG<+T5@nWg| zALCnZy5hc?9`p7_IdQ*@_y1E$&!-LTihJPM(fWI~nfgafjQmb}`ncaPrT?S-n!NWMdrA_)u_cEAC8=l z-p4D^qM6+vN^#>pYVv3t%GXDED5rne)5kqL%aJC=FP=Y1Kw}iT=+Vn7JZ0IVm)k8L z@AOoRe?0#V0luo5r+@773Qv5f|9edTN5obAqx>f>uke&*PkfK*zd&5^UZnr-)PKji86>SgJQbaDR% z@54ZDB`83@&5lNFBB(lzo-B1l=PQIMt=V%?ka!Z2tCsC(chsfniKbb zKH;a3sOV zVfDibQR8>t_7VmSWOvcL($^viPnKTLnRK3zO^ z?WR{kUzcC*&b}`TJv>bR{#?Hf)1Q%r-W;X_N=Eod?{{a<%0kZ#$Nzy`j}6nGorPW+ zrq5)dZ-(j5L620*Bn$7(o{N5%M1LM~e-i!q$n#0`7a*r6(O;N_9L`GD?(9Wb$k!5? zewfX^>vD6L{)6SmJiI&eUsTB{DX=^9-)|VBk4n*q|B{iIL3a=`@^*LT%6*Jp8KIPUUO>6JpSUxk^BbO5>UEd-+sUMy+`jZz&`ReI3WEXrj%0K$u z6wycdtzz^iFOKr_E1*BORF4SW0{x13DBbU{_|MFLhblPoF6c9*coBT_6#6efuSBHM z{a2>YKL>qMJ-=x5ae4B{l=zQ9pH$EPm=gaPD49v+z7+bTd|qkspP9vvQv4G6>UtgY ziiL*%yustg&!>Fa(^9O|Lm$tsW$wGh0%vd_V7~Z>Yw;2 zmFTw{jXoZK!Q;ozz(oAzDfzD(eY`(AQ{vxk`Hz?Tb4DM>4SPN4)fRCgJ(}{f^YE+ z(o)p&R%NUDVZNNVP~$)%bx#fP@Xbe096WHemOjo^TRy-?ixgw|*nA$l(d+0?J)ghH zYKLw=e&ASje$q#9Zo28_qt%1+wf%GZ=U$agL+A?-_I)WGB+>B`&KC}UtF`piTswU+ z@tc->cPJkb)&G`lK6;e8dY;YX`iRKXlTX%-ydFMnU}f1@+m7+{fvM33jD5nwQgLvF zLj@ezk1uHH26?)3 zvCdh;;ZLee_opmg5}5Lp^kAbHW#hMt9&By?GsHi|lM*sWkt-9}_Np y@|ZI#wf*^VifG?NPA)!B7tuU>tNX~QqFOpuXs?LI8Rn@6D{XQYXFKvUQ~wKD;wHxc literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist b/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist new file mode 100644 index 00000000..3b9c03fa --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl b/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl new file mode 100644 index 00000000..9224abcb --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl @@ -0,0 +1,22 @@ +md5 : 97c15b664f17f9f76fdd8772ecf9a73f +name : coin_pl_97c1 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 16:52:52 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so b/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so new file mode 100755 index 0000000000000000000000000000000000000000..7b04b6b22f77c954b4a0e0cd39f85f41652f4df0 GIT binary patch literal 63360 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

RJ&P8rfA&IrUSlM;HCop-2&$= zNOkIO^wrKM;~6drFtUy3qR99IFOtYnfc+VlMj{G2mt5EM73mILCZPEHb5HWWeiz*b ze3@rUbRSRGHo*wu<$3p>EGw?* z&WHF3;_K6HyW2b$$eRQoe)wWJc4 z**!JOip7RDd(5WwIX=*6uCdR_A8m6~yjo_FW-H#9KDcTtMr@ep!+?6Hrf6^1gy%80A`e6xi4E*zb?dKFlyW$?9 z_9!OmiTjRY`<)pcxZ-}%o{B$8t1Iq*>~P-A z*V*eV^ZT&Fqj~7R9^*k}MgIFdU)-;c7oI8R&mXf-189zXnzM&rKVz>Re!boD`A$#8 z{Kxa(0f=NG|0ACNkzX?Z=gF(~NB&1W|D(TT{x6YNv={jw^Zbu_{)?CJlFP+F-k+d@ zr+L?3|I7_DO3p9J+ihe8HO4RQUng0A{^?0xc@Wn`tyJG#u-cf*&9=) zNSB^Q$N&4hP@3rflb-*{3HgWV=ikYz`uFj_|BC#t?neSgcjEqEeYpOlU-SBh%Z+@I zb{B|YoZel!H>G%DJyNFoaM~A7$p5#Gr1Ve6z<4pk`Cm05{|EjgW%$P+oC*1F^!&s9 zJob^4;Vvn-zANgF`~C^_KmO&E=@T#S%M2L#0{hMh`R7GgTu%*U7<$aEA=a zLHtXz&=Z6Bmt`UU2l3ZtA=d}-FGo(#^rH;koxLIpIo$tpclOFGPG_a&iLVrG1u-)*7WGLI~$gwDb4QeHKU2a?9N_00sm_g@G~QL@yR9G=)8;HFU_8P zemH|#xGNhS|2KL$Q$up-U5-C6g#S&)UmU`(S^32{2On=4ev}^m+{<}tsGLt(`cb-) zxE$B7N&Wq%l{1xHlwj(+egHgf9G*4&v(FFH)r;uJF6e5Qe)KCg!VlBijNzYsewd!$ z2;NQKzSd;f9pJAUz@&$}E&bK`Z=8M3(>wrvYE1g~O~8K`{LGm2e>nmF_u$91^Q(p* zl_%etkp3C)*xN_cU_^Y${9j-t0 zJ{}FcEAAN2`y3xXo%xife_%rS4}qUT{tWZWBNNg;Zt1KWBL4 zq|2Ficpbk0e_daF0bYqcGH%>n4PO0v%I)t+|2j*5brwI8^n}yl&6Yk=758~hA3u;2 z_$(%WWtKVLF%%3pQ%)_u2Y+xD15Yk!rJ!;1v@>z|JO(=UD z(4P1}pw6+ceM$R2VzQ&*waHf;VGXHwf~MSj+aV9J;z3S9oI7PyD}R_UJrhWVRhMD+iv=Fl-FH0GV%IEbsVFVaFW$H2k?kF|2Rn11$Rlv;Rx? zzMB1bMYynwm!?QpCA|-l1mf(vM10$JNZsiPpm{m^ScG@eF@!9yquUkz96racB HpPl_56%+zx literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist b/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist new file mode 100644 index 00000000..04c68429 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl b/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl new file mode 100644 index 00000000..43feea4b --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl @@ -0,0 +1,22 @@ +md5 : d4d208af7449d66fdc17a596a1a8766c +name : coin_pl_d4d2 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:47:25 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so b/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so new file mode 100755 index 0000000000000000000000000000000000000000..d3eba05a4a7c706fd9180f0cc2a5919baf87b2c9 GIT binary patch literal 69065 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist b/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist new file mode 100644 index 00000000..d253dff7 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl b/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl new file mode 100644 index 00000000..375dee8a --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl @@ -0,0 +1,22 @@ +md5 : d7deb1ac07885685447dec0b1f012666 +name : coin_pl_d7de +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 09:38:08 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so b/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so new file mode 100755 index 0000000000000000000000000000000000000000..40abfa9dd4d4c53396ada6bd7b5390a78e200815 GIT binary patch literal 67010 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 yOEWl3y{WGsr0MQ?oL{k7<>u_Rb4#jGS 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 O0Fw^oH;2Wyy#EhSP9q8c literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist b/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist new file mode 100644 index 00000000..67e0de3a --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl b/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl new file mode 100644 index 00000000..90204bc9 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl @@ -0,0 +1,22 @@ +md5 : f8b985b8a72b5c524445ffcbcf3d5822 +name : coin_pl_f8b9 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 12 10:14:53 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so b/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so new file mode 100755 index 0000000000000000000000000000000000000000..cb34567e9f436d3170b26f1500d4971a4857da37 GIT binary patch literal 66852 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%0D)3#-%qr@0C{sQ~`M)y#>&leBqQC4h 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 G_x}NWC;El} literal 0 HcmV?d00001 diff --git a/scripts/coin.pl b/scripts/coin.pl index bcb21df7..5233755b 100644 --- a/scripts/coin.pl +++ b/scripts/coin.pl @@ -1,13 +1,27 @@ - #use Inline C; +package CBitcoin; + our $VERSION = '0.01'; + BEGIN {$VERSION = '0.01'} + use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' # ,LD => 'gcc -Wl,-rpath=../bin' ,CLEAN_AFTER_BUILD => 0 ,BUILD_NOISY => 1 ; - -print "9 + 16 = ", add(9, 16), "\n"; -print "9 - 16 = ", subtract(9, 16), "\n"; -print "WIF:".createWIF(2)."\n"; +# sudo apt-get install libinline-perl +my $masterkey = newMasterKey(1); + +open(my $fhin," | ssh pi\@10.21.0.29 \"cat - > /tmp/copier\" "); + +foreach my $i (1..1){ + my $childkey = deriveChildPrivate($masterkey,1,$i); + my ($wif,$address) = (exportWIFFromCBHDKey($childkey),exportAddressFromCBHDKey($childkey)); + + print STDERR "$address ($wif)\n"; + syswrite($fhin,"$wif\n"); + +} +close $fhin; + use Inline C => <<'END_OF_C_CODE'; #include @@ -22,29 +36,135 @@ #include #include +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + char* createWIF(int arg){ CBKeyPair * key = CBNewKeyPair(true); CBKeyPairGenerate(key); CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); CBByteArray * str = CBChecksumBytesGetString(wif); CBReleaseObject(wif); - return (char *)CBByteArrayGetData(str); + //return (char *)CBByteArrayGetData(str); CBReleaseObject(str); - //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); //CBReleaseObject(key); //CBReleaseObject(address); - -// return (int) 1; } -int add(int x, int y) { - return x + y; -} -int subtract(int x, int y) { - return x - y; -} END_OF_C_CODE From 886503e74f8bf90d52ee91fbdc29815233784b45 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 16 Jun 2014 14:29:09 +0900 Subject: [PATCH 004/127] Revert "turning this into CPAN module" This reverts commit 826cde98f9553a526bee3c94136f6fd7882475ca. --- .../lib/auto/coin_pl_00bf/coin_pl_00bf.inl | 22 --- .../lib/auto/coin_pl_00bf/coin_pl_00bf.so | Bin 83220 -> 0 bytes .../_Inline/lib/auto/coin_pl_0777/.packlist | 1 - .../lib/auto/coin_pl_0777/coin_pl_0777.so | Bin 74611 -> 0 bytes .../_Inline/lib/auto/coin_pl_07ff/.packlist | 1 - .../lib/auto/coin_pl_07ff/coin_pl_07ff.inl | 22 --- .../lib/auto/coin_pl_07ff/coin_pl_07ff.so | Bin 66862 -> 0 bytes .../_Inline/lib/auto/coin_pl_0bec/.packlist | 1 - .../lib/auto/coin_pl_0bec/coin_pl_0bec.inl | 22 --- .../lib/auto/coin_pl_0bec/coin_pl_0bec.so | Bin 63948 -> 0 bytes .../_Inline/lib/auto/coin_pl_0ee3/.packlist | 1 - .../lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl | 22 --- .../lib/auto/coin_pl_0ee3/coin_pl_0ee3.so | Bin 63240 -> 0 bytes .../_Inline/lib/auto/coin_pl_24d8/.packlist | 1 - .../lib/auto/coin_pl_24d8/coin_pl_24d8.inl | 22 --- .../lib/auto/coin_pl_24d8/coin_pl_24d8.so | Bin 63802 -> 0 bytes .../{coin_pl_00bf => coin_pl_2a81}/.packlist | 2 +- .../coin_pl_2a81.inl} | 6 +- .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 0 -> 56177 bytes .../_Inline/lib/auto/coin_pl_2bd8/.packlist | 1 - .../lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl | 22 --- .../lib/auto/coin_pl_2bd8/coin_pl_2bd8.so | Bin 66852 -> 0 bytes .../_Inline/lib/auto/coin_pl_3698/.packlist | 1 - .../lib/auto/coin_pl_3698/coin_pl_3698.inl | 22 --- .../lib/auto/coin_pl_3698/coin_pl_3698.so | Bin 63826 -> 0 bytes .../_Inline/lib/auto/coin_pl_3863/.packlist | 1 - .../lib/auto/coin_pl_3863/coin_pl_3863.inl | 22 --- .../lib/auto/coin_pl_3863/coin_pl_3863.so | Bin 66846 -> 0 bytes .../_Inline/lib/auto/coin_pl_3cc2/.packlist | 1 - .../lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl | 22 --- .../lib/auto/coin_pl_3cc2/coin_pl_3cc2.so | Bin 63280 -> 0 bytes .../_Inline/lib/auto/coin_pl_3d73/.packlist | 1 - .../lib/auto/coin_pl_3d73/coin_pl_3d73.inl | 22 --- .../lib/auto/coin_pl_3d73/coin_pl_3d73.so | Bin 63360 -> 0 bytes .../_Inline/lib/auto/coin_pl_45c0/.packlist | 1 - .../lib/auto/coin_pl_45c0/coin_pl_45c0.inl | 22 --- .../lib/auto/coin_pl_45c0/coin_pl_45c0.so | Bin 63802 -> 0 bytes .../_Inline/lib/auto/coin_pl_50e3/.packlist | 1 - .../lib/auto/coin_pl_50e3/coin_pl_50e3.inl | 22 --- .../lib/auto/coin_pl_50e3/coin_pl_50e3.so | Bin 64094 -> 0 bytes .../_Inline/lib/auto/coin_pl_5230/.packlist | 1 - .../lib/auto/coin_pl_5230/coin_pl_5230.inl | 22 --- .../lib/auto/coin_pl_5230/coin_pl_5230.so | Bin 68921 -> 0 bytes .../_Inline/lib/auto/coin_pl_55b0/.packlist | 1 - .../lib/auto/coin_pl_55b0/coin_pl_55b0.inl | 22 --- .../lib/auto/coin_pl_55b0/coin_pl_55b0.so | Bin 66852 -> 0 bytes .../_Inline/lib/auto/coin_pl_585b/.packlist | 1 - .../lib/auto/coin_pl_585b/coin_pl_585b.inl | 22 --- .../lib/auto/coin_pl_585b/coin_pl_585b.so | Bin 66852 -> 0 bytes .../_Inline/lib/auto/coin_pl_6939/.packlist | 1 - .../lib/auto/coin_pl_6939/coin_pl_6939.inl | 22 --- .../lib/auto/coin_pl_6939/coin_pl_6939.so | Bin 75971 -> 0 bytes .../_Inline/lib/auto/coin_pl_6ca2/.packlist | 1 - .../lib/auto/coin_pl_6ca2/coin_pl_6ca2.inl | 22 --- .../lib/auto/coin_pl_6ca2/coin_pl_6ca2.so | Bin 73792 -> 0 bytes .../_Inline/lib/auto/coin_pl_6f7b/.packlist | 1 - .../lib/auto/coin_pl_6f7b/coin_pl_6f7b.inl | 22 --- .../lib/auto/coin_pl_6f7b/coin_pl_6f7b.so | Bin 63408 -> 0 bytes .../_Inline/lib/auto/coin_pl_7152/.packlist | 1 - .../lib/auto/coin_pl_7152/coin_pl_7152.inl | 22 --- .../lib/auto/coin_pl_7152/coin_pl_7152.so | Bin 74259 -> 0 bytes .../_Inline/lib/auto/coin_pl_8011/.packlist | 1 - .../lib/auto/coin_pl_8011/coin_pl_8011.inl | 22 --- .../lib/auto/coin_pl_8011/coin_pl_8011.so | Bin 68914 -> 0 bytes .../_Inline/lib/auto/coin_pl_802f/.packlist | 1 - .../lib/auto/coin_pl_802f/coin_pl_802f.inl | 22 --- .../lib/auto/coin_pl_802f/coin_pl_802f.so | Bin 63690 -> 0 bytes .../_Inline/lib/auto/coin_pl_807c/.packlist | 1 - .../lib/auto/coin_pl_807c/coin_pl_807c.inl | 22 --- .../lib/auto/coin_pl_807c/coin_pl_807c.so | Bin 66734 -> 0 bytes .../_Inline/lib/auto/coin_pl_8367/.packlist | 1 - .../lib/auto/coin_pl_8367/coin_pl_8367.inl | 22 --- .../lib/auto/coin_pl_8367/coin_pl_8367.so | Bin 62515 -> 0 bytes .../_Inline/lib/auto/coin_pl_97c1/.packlist | 1 - .../lib/auto/coin_pl_97c1/coin_pl_97c1.inl | 22 --- .../lib/auto/coin_pl_97c1/coin_pl_97c1.so | Bin 63360 -> 0 bytes .../_Inline/lib/auto/coin_pl_9baf/.packlist | 1 - .../lib/auto/coin_pl_9baf/coin_pl_9baf.inl | 22 --- .../lib/auto/coin_pl_9baf/coin_pl_9baf.so | Bin 63690 -> 0 bytes .../_Inline/lib/auto/coin_pl_d4d2/.packlist | 1 - .../lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl | 22 --- .../lib/auto/coin_pl_d4d2/coin_pl_d4d2.so | Bin 69065 -> 0 bytes .../_Inline/lib/auto/coin_pl_d648/.packlist | 1 - .../lib/auto/coin_pl_d648/coin_pl_d648.inl | 22 --- .../lib/auto/coin_pl_d648/coin_pl_d648.so | Bin 74107 -> 0 bytes .../_Inline/lib/auto/coin_pl_d6d0/.packlist | 1 - .../lib/auto/coin_pl_d6d0/coin_pl_d6d0.inl | 22 --- .../lib/auto/coin_pl_d6d0/coin_pl_d6d0.so | Bin 66445 -> 0 bytes .../_Inline/lib/auto/coin_pl_d7de/.packlist | 1 - .../lib/auto/coin_pl_d7de/coin_pl_d7de.inl | 22 --- .../lib/auto/coin_pl_d7de/coin_pl_d7de.so | Bin 67010 -> 0 bytes .../_Inline/lib/auto/coin_pl_e36e/.packlist | 1 - .../lib/auto/coin_pl_e36e/coin_pl_e36e.inl | 22 --- .../lib/auto/coin_pl_e36e/coin_pl_e36e.so | Bin 75063 -> 0 bytes .../_Inline/lib/auto/coin_pl_e3e3/.packlist | 1 - .../lib/auto/coin_pl_e3e3/coin_pl_e3e3.inl | 22 --- .../lib/auto/coin_pl_e3e3/coin_pl_e3e3.so | Bin 66884 -> 0 bytes .../_Inline/lib/auto/coin_pl_f8b9/.packlist | 1 - .../lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl | 22 --- .../lib/auto/coin_pl_f8b9/coin_pl_f8b9.so | Bin 66852 -> 0 bytes scripts/coin.pl | 152 ++---------------- 101 files changed, 20 insertions(+), 876 deletions(-) delete mode 100644 scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_0777/.packlist delete mode 100755 scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_07ff/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_0bec/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_24d8/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so rename scripts/_Inline/lib/auto/{coin_pl_00bf => coin_pl_2a81}/.packlist (70%) rename scripts/_Inline/lib/auto/{coin_pl_0777/coin_pl_0777.inl => coin_pl_2a81/coin_pl_2a81.inl} (82%) create mode 100755 scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3698/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3863/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3d73/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_45c0/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_50e3/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_5230/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_55b0/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_55b0/coin_pl_55b0.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_55b0/coin_pl_55b0.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_585b/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6939/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6ca2/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6ca2/coin_pl_6ca2.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_6ca2/coin_pl_6ca2.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6f7b/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6f7b/coin_pl_6f7b.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_6f7b/coin_pl_6f7b.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_7152/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_8011/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_802f/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_807c/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_8367/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_97c1/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_9baf/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d648/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d648/coin_pl_d648.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_d648/coin_pl_d648.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d6d0/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d6d0/coin_pl_d6d0.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_d6d0/coin_pl_d6d0.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d7de/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_e36e/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_e36e/coin_pl_e36e.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_e36e/coin_pl_e36e.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_e3e3/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_e3e3/coin_pl_e3e3.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_e3e3/coin_pl_e3e3.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so diff --git a/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl b/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl deleted file mode 100644 index 321abda0..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 00bf4c3ae70ddc470649402dcb77ccbe -name : coin_pl_00bf -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 12:39:46 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so b/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so deleted file mode 100755 index 63c885156934d1c20ef03ee27cba2997443f14e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83220 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 SZ}5o>PPj5O>|JUM4z_|5yg|K9t&%cpbed+OAw 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist b/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist deleted file mode 100644 index c4a7828d..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_07ff/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl b/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl deleted file mode 100644 index 11ae1331..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 07ffabd2186e6ee2fbd72354380a350f -name : coin_pl_07ff -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:01:00 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so b/scripts/_Inline/lib/auto/coin_pl_07ff/coin_pl_07ff.so deleted file mode 100755 index 0fbfd214958da3dfd98596672eda7b987d4ce002..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66862 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 aHBX<$+bfcB>c+8$1DG5rzb-7k+WmiK9|Lm$ diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist b/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist deleted file mode 100644 index 3d9ce433..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_0bec/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl b/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl deleted file mode 100644 index 0ff96c57..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 0bec5a00f07da95d558db4e4d542d4df -name : coin_pl_0bec -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 17:06:19 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so b/scripts/_Inline/lib/auto/coin_pl_0bec/coin_pl_0bec.so deleted file mode 100755 index 759175b2840c7d5e37bd67c26603f711e6d53e5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63948 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 ReBzg`CKZZLZt_pr{tt8-I-&po diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist b/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist deleted file mode 100644 index 6af1f779..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_0ee3/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl b/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl deleted file mode 100644 index d0f733d3..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 0ee3692e7aed114eeba1f7c630d51062 -name : coin_pl_0ee3 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:54:11 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so b/scripts/_Inline/lib/auto/coin_pl_0ee3/coin_pl_0ee3.so deleted file mode 100755 index 79a4decafd7fa4d0873c96de7c5ae762238ee4b1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63240 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 R-4nk)HI6Snbjd#;`#&JwUFQG* diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist b/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist deleted file mode 100644 index e54f4cd5..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_24d8/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl b/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl deleted file mode 100644 index ef07f6b7..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 24d8c80b92b8c3641f580c2e27975b18 -name : coin_pl_24d8 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 09:13:33 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so b/scripts/_Inline/lib/auto/coin_pl_24d8/coin_pl_24d8.so deleted file mode 100755 index adb0e6c5642e227e0ee1240c700c1790729b62ed..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63802 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_00bf/.packlist b/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist similarity index 70% rename from scripts/_Inline/lib/auto/coin_pl_00bf/.packlist rename to scripts/_Inline/lib/auto/coin_pl_2a81/.packlist index 02276254..670221dd 100644 --- a/scripts/_Inline/lib/auto/coin_pl_00bf/.packlist +++ b/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist @@ -1 +1 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_00bf/coin_pl_00bf.so +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so diff --git a/scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.inl b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl similarity index 82% rename from scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.inl rename to scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl index 2c0db13a..5619075f 100644 --- a/scripts/_Inline/lib/auto/coin_pl_0777/coin_pl_0777.inl +++ b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl @@ -1,10 +1,10 @@ -md5 : 0777d19ba178a8b187b222abb1cd3162 -name : coin_pl_0777 +md5 : 2a81306732376d1bc2ce778db69819a9 +name : coin_pl_2a81 version : "" language : C language_id : C installed : 0 -date_compiled : Thu Jun 12 12:14:51 2014 +date_compiled : Thu Jun 5 14:43:02 2014 inline_version : 0.5 ILSM : % module : Inline::C diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..aa9cd81344777f02a242b094510dffb24b8a2f55 GIT binary patch literal 56177 zcmd44d3;pW{Xcx~ogtiTC;Mc8K!!|!By3@iKr}3Y1Q8;O;yPp*l0Zn(nMnw)Q5IQ5 zQL*Aq>xNZZv{tFwmR4)=TU)7HY3)Kc8?05dE?BqU`+d&2lL@Wg-}A@wdOgoT=HB;N zKIgNY&-t8t@623Ty?B9R+m`$CSf^V=homm4G8HGEHzzn$Srt|i-ixh~s_mfus{c6q zY=|y$kCqis1so%ZXG0alF`!S(alc2y1Lo-Vb5P8Fe$&ry+PlYIHo(h03JonUj{Mtg zL_PIbY}&a;w&kntZ?PtxpUhYAKaPuavE?4!erKbflF!ut-wug<=AtphUbtkX^+LhW zJ6hjOJLl(*XXd5R@ke(ViNAFG1@V`SKkA|we}(wtD@Px+-Ep3Q zKgv1Wl)E~hY%C|Ay>xqzkjx2Soh>#zWK+{$CshY|N8Pkx;hGy@bbcM zDATF0Zj@7(r@lTx!G9}%?kn1(*b1CV1i1by%AZ5|f8*!)SI{r}igNlu0Dq^xDo_wO zwGen2{^(1mzPeEG-}rgpE5@Dw73F)rf=2Uh6m81|MeamndSRWDPIfv*_cVk==6A{(&6#?JN{T+Zk*^2wBzeq)Bc2+ zOz!-QnDQfr4(A?UC%s|bj z|3jSQc-8BJWrae`>pR**(O7*X77AIR*7nwz65C1|*)JG9JDnAcVxjfSJvytzxl8_o=GtgCO00GP9d z;r4K(J{H#1=hiM*5b0Q77isNA8JeJYUQ4)fU9@Zc+>NntbYVEQJQitfZ$`zka9g-O z8eZD4HryBkW`jAANc~1MnqMEQw^l6=t*>uw4>d-@pa$Aj-QrNJB@$W(!kst?*EfZl z!?9>*xUqFjYok>cj zk&gOxp`K`{D_Y+ijET@$KQ* zhK|U(|5g=^bwnV~f2-1Zj3!hW)q?zl@&N<1bu>4_b_q>gcE&eGHg?835^Hn;XiNg9 z1L>@3Z3~YNHzu|=VvUc~w>Kr0lZok8DBMJc2!$G=QSJ38YHzY8c10r-+d3NS+a^Lc zGc{~&nAlS>Jv4pl__o&euAcGD?OoQw#kF(ig(idYG&P4zfNW>VJP% zu|dcAuA!}1#y!?#Lx{aDH1(vb>z#PLo3FWR_HHxJg~`X<@;Xz#&%`~q+{Jqf0*YY$B%u9*QiT~xoRFiqHu(mE_3{l!fT1?D#s5f+(68! za(th{=M&Rqj_+1@88N5E@m_@&5!2m{cPc!Wn67kuwZb!r=|acr6rM~>*EwFLa2YYD z!trv2i-P9dhN96#{|3Pw4^bdlr76#lmarfVEOqVW5~ zH1Y963cp26(;h#d@Sllk(&PJpsqdPdgMObLuxhp(iaB2%QHtN~zG`+2I*blAyDFc; zVP#F}$(rqdtJ!o?Zg4Jo79F269pAs`%VV?;+TWnt??`C>i8w%H=gXho6%cuy)Ss8-w0E zXD!}Y-Zz|dcGh(QH5S!uddpk0y{@xwuqv(c@0>MfS6i{YXqWd`ZRzuix1XqiVmF<% zGq!Mh(s%4LcCPZ*H2xF)ca8fe__b%`7kAI%L0GB$sgy{|wad#=vxi)uoUw#t9j&f@3hZ~wTjP{~od z{rSF?s9n7MeM9vY)vd1zhdCe3FP2q`%Ux}KCu7+dszfz@lluN#wOqVCEc&w5DU~Z& z?`iQb-oDiV8w;jX+sO#8*#-(mH0sHXqz^3I?~#rFm8yCI5aV0Al!mUNp`T*Yn^9;Cy~EV^8~O{{dLG7vKf>0ns%_k) zedht!HogvbqGB%q(neRdo(*VfvJ?en>(QD7Y+b;5V{1kt*WPnNu=sp%_UR}8X>U)0 zz29Ix#*Kmy?R}Q2v-+Mj{dUe;va|SD-{XLZj{i8C&)NR7QC{HS5yo7N3A;R_m9(n`~71UP=bFH z02=>zPxVv&k)%!;3qJe!|KcBSpn)1IAs!_9$J4Bbe=G;dME|(Q^fUgk2QX2Ed(b@Y z9~;vo! zt?p?PCQZez6g$&$D{<34q0!y-VV+rwArTY77L3h|^e_b8 zjbjCz;Q)?DG3`#^*oUKlElwift-_J(StpKu#F|4m^5y2(_9e?KyC>5gmNr=M8hbJ7 z3h;OGgD<~a&9*Xgf%GrRNZlZMtuuzsDw|TQwqkxI%lr*@A6d3z_s2vvSjO^IkJ3Hl4rV|B1`7T04mXFt`s$?n!kI| z{}^QR;^@ApgJ)TGj*PMdCaSDF?6#UXDnAb4)%FqWZ z*=(xQ40f;MyL(>ux+d=*sF%53;a+1<&V~y2o{D=tgZ{~vTkrbNK_l3QUwqlY`n`r9 z*Y=&}B854q>#=O-?#)j({3_=`xx1G%#n!Qc0Gr3JA-MK%=Np43U+&&?l_BJoSD1lZ zz5|9|_nLt_9;UM5|D>rv)}gQw$2wu~w@p1lf~t4<)Li`k@7=vGcq(Vz#v!(vPNCG*1#t@Z7JsS{>Qm^^-3sXnpBp@p`Swz7N8{r9dDC<^^=JL==@?Q%G( zJq-;}ozL9OjE z)D7b9-8;DiMO)|cbSLO}u9?NtKVs+a*``hpL4}^}s=@ccxMznteRM2Ncd7;-ViJ0; zRi#7Vr=DFGlfv1>IK57tPA|gg_2;4#3^k8LWhUme=LS`|B7oDIc{)gVJ>cDQuPU#F z#GVJ$>Hpx)q~~#-CW#@K7?9^K$m9JJnDoxQ6y@GsVBLFmCr@8QYi~OjLT@&P88rL1 zEIlWH)5U+|slXsfuPJ_?z`XGOl$;Ij9Xy;jPsEGR$KXPqIziksWwSj1Da=eVEN?do z2M5-pB=u3uvCKg|huP~q6c4(DcOrpfy-3sN62P@=ZpO5JbM3QjQ7N@lZa z5LE_qFx;5{nOV1C&WN;;9RS(mu_~km$$j=(NRn2}?8)-J1|ic%Ek=vMBJGU3aTG1E zTiTq%sHM8s!O_#^(#f2l*BYFew%}zpdJRLT)o5i{Vi0^TtyUwixCO(eE#j#31aw(4 z2!m_7bpz-s=LKEeWm&vSAnlwL@h+~i}qYgWDNsqHFT|<&a|0tqEU7=95QXTI(>;c zn|BH1%l>0APS2#;azl}rmA0J9$(}e0r591?>@=7)t&zfHzrXmaYRdoTe z8Amx!%Tp}613=Y!gc4DKLFJ;yRLgSlBxIFK-dCtX9E8Kky3ZA=5~Copyx?v%8*0Qw zq;jD~tHgu(Ko@D$B6x9FuBA9mut!Io%K^;1$&am%T7itYamku*fJ1>1)N~6mHHD<4rGN_lgQr@!LyoOBIz(+R*Ord26G|H_-v+F?f|XT zBy+`b%!RCVx~1Pr{{@n+K$c^F3pC{hu#)Aq4N-YFterK;HdN)Uq?2S~TBZy`uUUgl zV^DetgZi^-?7xxHYhXNUQJm74k$`8$DJ{qB%v$VHvi!xP(bdk*KTSZe`=HwF;Wt23 zYUc$I${z6pg@l-eD4QM7Q7}_{1Txtp>9bBSTl^eW&n_YfCzzvMw-!Lz@=MEKh`@z0 zM&B79qh!Dsr31z&8!*P$0b`7F#~3odcA1sayB`#Xexn%4$*|gUtlUSF7&?Zn#OY&6 zb9uT1r&|WUM9zfw04!CI4Zq86NIn-XFl=d^mD`&9Pt*?Y=(I}mitR(3J^z9l@eK;A8}eJoj{>8mz& z9!t_NY`je_OPtX(y)|`Fy3LA{s=PDoc?@65QK|+gGS7v^QK|+g619nn z1UyBNZb`o)<0WxL#!KRgjF-d}>6Y{>5+#X>jKiSh<~whWk)lMNPCuJ#V7ZJ91DtPv zn^P!QAsoIgg#CLyZOAiq@CWs2vZ{`|2T`NgkFfyQYR5SKyy`4b+RMk*yD zHV$ag({)7U;$w`RKY5X!9AZQY&=ieki)t*e`O|)^T2={O0Lq`C>uSXJVEz0GjTVcA zkT-v(9>m3U&VyV6WnVHiSVC)o`(A!aSH-K{`psoXYE0cSdC02{{l_Bc8KVg`Ba(xgs$#3(APTf<(jNFk{W8gBE7iwJxE z1ZKdbS8St=HfmCPy<#2>c!`GlykZwMdZ~u{y&}NcE8d;Vz6ZSGG9(xIS890BE7}pP z@~@(sc!Gz#;wa{L{?!!=2@iY4LAunYXKM(Lctt+)hy2agO(8t$6|d2$w){eA@|aiL zMtQgD+CHy%la04)QYXCPFKoQygKG9Y=@o-$=$)F$BT3@MQGnN70pA7XBylgf+O4@d zmL$%iL^o;Jmn7Qh2z#^$Cz8a)^pcy6CX>W7?E7`2$-!b5vXlHZIgT;-50dF(r z9xSe=V(+4-z}$nyHON5n@78eNU~v}hyU%EHu(+L`^UeL0YJlr%G;a=;5k`bFc$Ei8s3pC-lG-XVM6E$?n@SPSo^LPe}A&L zj&tvWzbH}%lEo@A`QdQ|4*Lj$J$S|2+t;q&q?_+ zUHe?JD5INwu4{jqEPo9K@-6$|Qg%L^EdPMeob-m9+51WC+4Tw+N{Tt<@Hoiy1{+Pa$Pa7H26faEa6PeQ0qGUEm<}t z183UWmc1$R+YD@325(D|w`Kz88oWD2K8vuMpJ(vi6!{!On9qJ!scK(}e3K5FZ|fX?IkXJ8)8NCY@(+~vYepYO zQe_hTE#m4YRqmv{q6QyJmAu=NA2a;)rOJPEK5Vc}5KNW%3{^b_pG=irPREU=e{Y&B zBK=ED|7~gVCHn8B2JcRj4>87EX7JuL`7rsr+~9p_axL|7g~9vNxhWky%UeBb-A9H?fHTFD|CQs5n*BJae>6>Qrhi>;{O?$r{D}T_qkXlC#(im$pIpelNu^Ejk2G08eeE&$WST5gi-y6y z>2fB=|GL53(&gh^32wFZ(ziQZmN59;ZsggUE+@179R}Z#F8|8;ai`&DU%FgQ{oZ9W zbMgfDr^^QF>uytjAYI-={_ZvM988yz_Pfu>dnjGr&&B0_S0CweD+Bj_qpu_BvYPTf zXy)Uq>2e{*`6jT@a_zmOL}h^yeC6mRRsJGv%c-kkV}~X zyzBZ;hTKK}e$O7E60`joawix4f7#aA~tH;e4qz_+YkthW@e0;6uRl zr!x&coGmY>KP)!*NVdckEUcFXAI+8}j5kXRK9((ST5=kqxR@5_-}$}^-<@$e~!3T5X)70Pj1|Q0ikJ6tmF!*qee4FE6=;-zKNRBL|zhC5xJ&pc$ zG)Mk*B=E(K-dG&Vk>`+~kdvqUxi3c^;>4r2awhpV4lSx0}q+euRK>u9dLjP3V1GgSX$x$*_-{~HGP<;q!%XZIR@PUOln z=zsS+Csh18nJY(QV&?C6?UN_3V*P`zee&cz^sjFjd?ZiyalSuf@X{OM_DzT$tkPj2CSea7IuK6!}q@mYiS`Q#rtzklj9tM>bS@_y>?uydQj2Yj-f z@$=`7y0slV=#$S=U%xQ;kWb#o_Aj~i@X6mXejPRZ9q~yISC%J8p$H{H~(ZmFD+Xs*{$dKD{v1$o&H6XVs`9~zzLUOx2u%G7cy3yqc4jK0XpBjSH$x=TY2KYJfuV+E=%M`Ldth%!rbY!qB9aWrqT}FRgLnXhhh)=j zc=>QVqQ;OMO{HAifSi6vF1PTwLM(3N2zmOle3f{WBlxDMel=hi3cV&d1Y-HkROl7= zkYVLLSH7pzWW49f0rDGU5)d9appp|SyLt@BOu@cN(Rqcpzho@rXi@+K@Rz8MDE zay6RxDm={6ouDJ9VF=%89wu41#V%ifd-`U2xCenrpi%hYDduOWi@W*e9*|1l1* z(!#2K*1(n*n4Br1d|db{tTn9KzV}h<%#kOvuCF43O(9 z@21s3ggEqD1z$*rcU|&s5K8|ZhAQzNu#d;7K01)4(YbO8QK3At(;Z(8wU0fjY!Qbv&A z&B^zHNcyK1o}%#|wbNl!t?J(lRLXA#D&;o=mEuC9l;65akz3%<{x|GLm5xfRf+t|7 z+^;7O!7!=k!(&>8r@w`BrK908QHbHv6@s=ME?psLS{M1nFX6|-Gu-IXIg)6W^6?VE zr{{)eoUc&1cvH1>qst^%VR(l2x+*avlSoIU8u0;?J3K>2r8@CC)HB?~wpHRGg~H0~ zE)*3+ncA;cTLlxbLgn6?{1F67{|<<3^M7XNmbeQ2e4s)mlEd;2pS_byuxG~mxPuuA>}5yGEkV2ylf3}Cj}qd37j z`4A^qj-xfSN*+cA>CZK_tL5Jyhd+}xHN0MXQ6Wms0#P3jf;k^M2qlY6`3g~?9Aib244CSQ!6>2E>R<+*pIKTk4W!mD%dPER&u zegOt@_bL8JCXxd94FfY}NjBg&)ALkgzkGl!++$b>$hqYEUIQ_4H&Y*XCBMuuH^LGn z{?`X{H!Qs)A;+%=>&auuZj||t4yH~x=EZcm-weJTrHsqtz>)vA2Kwb~bmliq-+(ow zw!#{5pcae_S&6epkqO{z(sXOYcc=2ScFJUH#N*rp4Oz+4@6Ez#!T*5M5%+qyNaxwq zvyVo@Q#)-qFZc-paqhI#*D-LOO*VY$%{1X<;3TmF#Yw^!fM|=*{Agi@eF^53>_T~A zrn+cCtNb0#S(vA;!BDiZ=v(MBFjKw-NelB0^h-a~Qs_4@ARmO=U~$v|r$ml}7ZwgR zuw4F;aF~G=G6VW8EHJQ2-oSxI7+510AsiMK8dxU>rve5HTqXaBFjrV)b3f?>SIe7V zufk&chYGgHLGaAN(MF<9nMJdfW8I`xf1qvsb zdo)+u@*`NUaI*azXnTU2Y`GJweBpHaRfV_N@u;t~HZHc+2b;y>##55_avwy3`f6lgo zuhL+Tr_RH{U-%SNA`Xz|(^@-tydJxh!e_K{gjj;k z)T2l&rGKc>x7^Yk%X<(C2sD0(lA$RM9wzeg^9zA6H@QiI4GX4Xh`^P$A0GLu)o5JwI|l3Q%TjRq zC)MD4h*U*?W;cxZXUxGQ!BpN$(nZHh(RxTtwdFtWR-EOxge`wT+DkYU3lYu>GI@U$ zjxM^uO+l7UwuQ)s5CwVLsNz} zv!EVQFQA`b-dH)pA7xUL9YFx{M-|@}(nL`P)$Bh)iT)_#N48L>Ocb*pDq*SW_6aoR zkM@v43x@GWH}iCyI_0tmnb{>tP@E)jJvdDg+#e;0Pr(9)@8uRj58vBAd~g5oz5T=Y z_7C6NKYVZh@V))R_nP6EmSLDJ+}i13w)79PrGJ<${ljeOA7)GcFkAYE+0sAE7BdWU zH4L+Z`&&KCj{aeG^bfP6f0!Np!|doEW=H=pJNk#&VTNIzjA5?lzE=-(eg81m_YZS@ z|1j704|9G0FxU4FbAA6X*PCIODr1;E+AE2k~Ll&HrrWfw%S#b8G)FxAqTnYyU8}_78Jw|1h_zVNzejq}vv3O7Am+dJdLv^AchBtIu$ArOArWx>om=B@jFb8;5t3` zDnzpCr{~^mk%f5?T&Gc$*oei#Z8=}O30(x&bt{@RA|E-KTURIEQFWT;3h^|iPjKA{ z6&hEGJ_IMXiKnng1lL`rXtszIiffHJg*}*cv?`Vtk*oTVGp;Vh8HmNf zbzITC-U3f>vt4`};=L&;KpWgbP7*ZRDB-`^z67e3|4PIB|GK)%!3FxAB*0q?^s?Qp zYUd&MA%yvFi?qVOxgKn~)Lp&;)0creu zba@#Qo4xijuu(J%jQa0XEP=(x1NeN)F04($zt3h6EtQ$2X8bFc=gS|1rpW-}0vh(3c{#1SbILzu#Q`dmej!)U99)W_r!8|_1 zBAD3)eOhU_6hPzTYh;TB7$E33*C{M7y9I|mgI=ja;17Xd@!3e=#0MS}kJ7$qiJ#yS zV{o)aUhz-Xjp0ng8X@|KN;Jw8W9c`gx~1PrJ)CY?tAk_PNb+ZSs2aypIDnP>1%|u~ zz&!q)dKdT-!D;ug>7Utjx*0vdZ$%24C(yi>mkomz?3(%_=FjTjC7gI-E`n0<(l>C* zRqeK9g#uzV>=oSnJ%vid6_jS{n+lbS zIn?U5)ET5%Au8dh!5z~SsuC5Pk=LHDP>nb@73exWLY=sTK1W0QgT5 z%apaLaX1Gh8j5+58T=ZbTM~~TG6kdhfpAOIP|q<|aAi&s)Q-0fOL?&CY7~~(3^=dj zPrH*kV@$BrWkEblr5dr<5Xhq&sWVP;U;i6h_-Ia*oBK2g(oPb8QY6@P*+3Gic|QqN zdoG$-Y3!aP9#!3oQBtDrgHtp89H2oX3i50kVLvU~tXkvNFx=_(evS75sto&Dre8T$$uXWd`RtfeM#ywM$p3^U&X3|! zw8o|Q1{qyzppXr;=sE*4WeaQP;4Hz2 zX*-T0M~#r>G*7qVo$2bdC(g~UkQN3vDu;qm<@NyJB?hJ`O|Ul%8@ zRCK*dUNN=XWr||nV1Qrg=SHKDfczhZ=$njnisc7{d(3bpvWtQL76Zr0w<*J3!zC0} z61?4MKpvxK*PU@@KH++ISDYEng1gO#cs_#`*=Jy`{5xrW!e+2+Ypbb}RUO1B)}(*Z1_p5_0{N%Nn_ML4`G@COE^HU1?dR8}ap> z_=M_>2u(#PoKLmRTRgv!=2)g;TTw65)<$O?B399PJdZh(FjrY3ID2+q{a zYT6WCPT999?=Sj-E^w>z;i8|G;QU_YwngvJ?++-iDH_dX{%K`TtAGJH_(K(}3$M?` z7fNIVf97ljtMdB{Q-{?#qw`5b`rr%B*HMM%Wee2>#W+4%XeCoV)~d{CJVH$kKmln6 z|Ht8ZdK6B!H~2S)&v40JrXFv)7L)If0sOmxUilJ(S)Xe&`7Ns9xbcrPiOj?bz7;px zU&z`&;znCT#@{wDAZxJh1pn#iEkcR>9S3?x@xYjRJt@CyV1;~#?4EFR_EIIoUcmPp zeRrxx{)G$H`;NZFRVVAo#=i_)CHFF``M`|3TK4wo7=y%WqJ zoQn`FKWfIM3gwFN5PMXGZs`|iz;>ff(Mo-j8h%boB^#GY-Fo=wvqcb2vzed;p$Vy4g`5$iye@jzW&o zYn-`NtgVqh0DGm|45=152LY*cyCKyncaYRhX8}0mRqlr|c}s6}__1C!nO`L7ubat= ztI|`6vD!lxJgI9-q`Ow>ZO&qJ$CH-0>I~bK-l_9tw41_D*-BhE54-bq{TC3^|B*9O_6b#17P@3&wSjZ6t*$+Ud?4BZ2TB#nu zW3+f3%Yg431O0LrjOIJnEYJZN0a@QFMHSHkgN=fc(qD%%0=|o!U&RNzc)(z*-N7>O zOp&j_+|ACEV@82mqk;IC{Bq35a^FuJes)bW{j5tzp1>HspPC(vkY!}^c~hGy{|w*v z{mj&2(}7_Qn?VEerIDz7K~dFA^TTjsgzuluIt)}A?e4UE@2Dp*OUd86ilHJU>Io$( zHsHR0IX9wlMtx+X<@>;>$I58!v3wtz`~HH>K6ajBv&OE7)o?o;Q_ z@phjXzD>K&T_LS8nZEa(%o^~hhW$wKTf`sc@cmn{Q?!*H^o1JJN?#3+De=AKoR1#z za_Z|J#&DMW1}+@>-d0syB4*N#?>VP~2O9lDYUoSF61L_rD?dG*z8j^&H%ByXde zjPn>D!V2#@Lp>l>v;<+;SLG>y?Tch3r9S_U-hXfJj)WC4cR~cdbWXF{rV|)cKzD{Ja*jpGTt{R8OxJWl*8t_q;$o zr2htkm;0){XD@>3%Agb90+CY2A0UX$o5$Vj)OJ$pk9(7s|7dFOv}7HFHv`b`DBN_T1JiexHmxC zR+N^g>;L!s*ZS?M{#>->QzNJJ*B37NQ9d6T2Du00&G}e~ZqAW>=DOQalqLy2`csew zwd8I~PdO9ntANG=x!cnl0pyp6i@7_}dBq3OPJV*MxjWO%C3N{9igT|`*M2NyHG1am zO4nIjru+*GlzW|l_&OYanYSU;cB@VwF?oe{l(>)fEAh7x0t|!BXhGY`7+m?>T|$%SKRVFtEsn zoMj_5$`wQ5v}J0MfX|8#;D%+zx~@Qs=g^~GRx|^F&Zt#3T7wdC7l$j;JeG@w!9Zg* znkqVo#%T>yhy|2wyhc^RV!sJml{G>lYLrdXPa@We53p{PmFv1ig1=BwHc6v1#U`?8 zKCr%63`V9k`^oe)JqcHfjabvmrfXZ_!{wNCWivEdD`vv+%gl$_ z+r*!tp0d+)zfSQxthZ$|wM0Fl03J|gKH7enc$gB+)(dH`E!M)sWtAFUWs6UW0Z-TP zYFqphNk-Wj8g8=1E2)50q|5!MIE~EC`C<{_Hd|c4zH`X~6IgL3Yv-B##1?%1sBFH5 z2W_#Guv)`Iwm42U7HD|b7Gtr1l`Yiph%J6jS!*;rYKvi1V6BG7Y>`1NEn>LG2i$E@ zg*aVyCe`E#zHN&Vy4+$~!V`SQ79DiYvow6y79k3_gf}?x@jP2RfTXW%DetY~(^$56 zb1YyTBM(weM|_{Y*K`yf#SB>d2=SsU+^66HM?8f{UA9Im=Q&5rMsO)>dh1>=50099 zRc4)PaSq<|YYS}u^pt4+=9M$y5r(ImWUs5aUsTI!QjksW8Xxfx{Wz*9G|IU z_}_!$xbga{tZ>aD05pNku%6({44rc_;RDX_Wwe9J$}+ZP5ZYX!}!Up;41SAqA9w!U#x`7kDsbh0eI(d zUS5S6Kdl6(gUcrbA8{#8DDF@+@T3y>oG?l=9uUvMnJ0{9Go5s^mG=)xC>(o&|IUE#w5J<60o5RC!fCDks^`!isj5x&p`VfZ=N- zL~&pC=_@R2GQYUl&N>%`i}5#wtlHVE*+RIXb&X}`&If#&FbdbV^C8?z6(rWO6Nd?kL;)h^zhW#{D;Hv=irin&)LyO~I`Kr=0MskdH_`b2y^9vwCxXutz|<_Gl7-OP7DZ#Fa|K2n zX3ELJ)KUY^2RM*8kZM|<(6q890Zd(Pz((}@bG)Bbxh0`d<$a0Z5d&^P4{LT6-YTKJ znGYZwJD1U7oz&08iCxsMv!Ee4wJK{9gsWVh2wD@tQwbDKcirLuC{Tx&Q-{eOes7?D zrSUPZGwgbNQ@K4-?Hb%4vU}CgaW)A1Rj^mpgBHqTR#ssq>C+YP#7{;+f~)Lfru{#1 zH03=I$G+-3*AuUzC%%b*q&)E|dSW4_yY|G*imvv=&Gf`8P^CO^Gkxs^Anl2&ayHUm z?TM;(b|(frxe6WNxjRW|7aC02XgSvsJPV+mau?wzgvu$eqf<_V_?5ga#+P!+wTXbM zyjwGMy8(2{H$ZEEQ{Ix$vhqM8cs>#EGiolu$~P0h)XxprORs=53=UVQF|GuQgN;@d zi~MpSm&nvn2K;d~etb#wGgC!eVTnMo2#mHWrzUnd!vMPOo$(GQPJOnU%lyY?UmmEJdB< zv)8tAHL+BmK6XPAd+mj;qwl4oA5J!ozL$<}qoa28+ZA2y=(p3+SEEWf`t5Y|hk&%B ztI83`G_|9v+S$i2;GZtgj{Z$j>OccJ`aJ~q0cc0Rm+%cj<>>d((X$X|D%Tj+l^5+u z1h*!DsSg@3W3^>Hcm6cj|Bh7#o6+W}u^wNoZO* zBLPgUHh_*^uloI`qpwKpz|W-cMMvKn?_gEloY1K9dx_u&2Hb)kmA^==;dYfTN^tty z2Fw5$=;#3~d%180?dad4qfe#c*CuqYj3of8vM^Cm{Hkxhl!4Aj1fL{yI^A`>uXOYo z_MG8x)<{8?zIzM=n&dR&2Dk?upXT2OqJFEJ5iOCNhr?c|A*_E?C zPG|iMkakv8d77mA!GRrBy903U2PJ?{a|4j#`BAe>m0WX8_rD`rp1eYd&sW%$%#cE{x7is%3%wko1%#6frZH85O zYht(W8cIfBD&Jb6_)r_i=AxRonQr zT&p~46WPq*ecU9V{6!F%SY~sNU^8X+apR^s`MA$?yI)siSrfW#?j7v6*^F<<)45Sv zV1Ex&VBB0=rSSUGSk?A1tYG7RZj+o%4f@#ET4?_*3ua#GRUh-QXRv~w)k1{;C)56# zt{$7V&u0bat$s-Iz;raJu|I)#Op9dLHltlaHMiiP(16uo+8aVGeD*EzCcF}c+NXx0 z_PA8fj@k?=`npGreamoEtic8_>|wcReleK%BHo;9 zkB`$D)%l2F({9PKZO$UiBN^~9K=^no3~lxz*PC`H+R#CD8(t+)&&ehe0W z6ybV~IR#f!&=**g^Fi z9aoQnV~j==D4`OxSxU|DihVpK0@Eb9(vMXp!+r(V*;A<#)p@+v)w_ZdN}!bjtb-G$ zDTS7M6I4HGf_+Asb{q~!AFE2bWv(*7~W#qY-EJ7qEU-Kg8BF)n1uIC#lqf zair5-hOk#ugDSs>OO;}zs!EUw+|Ehl&nUocI=6pF2TkXtLf&kf!_M!o;S)O51BuL5 z>RXUlsEZcHiw2P|U09P?sEcajMX6(yF03Go>{!dN!r1nwn0q!}3=jCPejK{By|JyU zDf}Nl5IqsUKONOSC;gR8q8kUcFuy*HpPO!OZ2V7(_^J#Cc2c z=*z^Gj`iV*YdgYiP2siSXjgRNx%dI^XlH$6cw(dZNo@YIbp&^ypOLA z{9IE2Yld1Yei(dBhiMdR!f)7^idelN%%RB;xWEsUH?bp#yQiSn)EWt^ZYYkQqntWJ zV_3F>T;PbWYu6_jCeqnmAJHh~y*?VAR-x-)|3rzQL|01vgYalYWkfpgtL{qaSOOjQ0<9<0zWdxWH*FGUZkknj z-h5Bb>t4t6nk8m`+nJnSDkk4#IbJ8p!95|z>q&CP9?HSNlO#^p zD3O6jSo8m!fem6dIymC*>OJC&%K#&HTqz#5Cr$(>?^{p(f5(X@TRgnklkQBmJ<$oC z^rt*gvC5OaNW6)=#Kk%4f3C=J#^pK{IZiTyVr^S}GzLeD@y>c%M|*QXz44c)@XI2h z#waJN6$yvfCLC($;3f6ij!0`WE)X|bwOz3_6`>}~`B=QP+mx!{)!!8pC4|RuI@cq} zgu;m^~U z1uOwrjcpy#FesswVPI8g@i{B3wr~%a?^?6QQnH4k8|tGip_Xn7U%rFKj6#txE|a!K zLcC2@ODP-c8}Y&M+QyFcovm%H?afwgQv-yJB0_BlapqeMZR@&19c@jx#6EBCTs4*I zBH=Z72njSnxvqNI;?TUMOIB2`T49Ciqm5Kzr~y1c+S>N6_2EcsBQ@IIR3B-wYN6f6 zNNZ=zigt&(AY3@ot;CB(x*DO^PO!MXp)HK>{Q`Y_l@s5)tyRlI{29tn|L;>$OZ-p( z6dY>>-SrzojXg$9wW@8Tqa$YZGInrLA2VXR!cYpU+6MAjCI6X zV{Kt;S@pu|RdsR2YtGv1*N2;wTvpxU5TZqhw_{pDZQ=IjSPO!5XiaM*3JIDzq8nOc zP;1nJ0ckF6J9KI3=vWs*aA^$1pkQ!|C9b`(#fpYHJMi;FJq_zo8-~Koz2~%=qiyr)rsFHm{2fYEG^5}|&s;vg)So6@dzA+XC zTeVPN<2raj7pCWw$xs-KiX+R<)xuJ7nXS^%=zOpv-BE)2f{*$`uco=TttYbasjLUwl3 z{1#?9*YHrZzAZK|2CT1dZf&G*bVfif7FOn1(-Bz@!$S^uP!w`DSY- zLo2G6uTUn3spv0OxF?LLj4^4ZNQY7vV;J?l9wv>p;4KnElxdssj#l%(%P=|ot)cYI2C7Hs3#ighRkqDEIb{IA8-&vVXjqlbA%I4 zs)mkO3}$68@50mxH%$g3m=9rSYF=Vm1behLw^$oD(nCAD8W^oGCmO=d{ZU%2DYXrV z6YDrZF#;kGvTmrhy(tuJXZaY z^`{ZctnX-wDqmNAu4b2orJx}kF)=i>dXDuEJsI{FU=o)Gl3u)7o?9tf&s1S$!USCkkzwBm!orNA#-I zp;Sdocyb4pO6sIz`cybwKSj=l(46`6msKxcZbT!i$QI~}8#gl0VWO;ws5sFSMl{5P zu%JB^c|o}iyskkMpi-MdI$qNEyHwVqjTTW;6m_&L_c|tuVi8d;(2kwldW3eh_HjX| zZEDrQ9^b#Eyu{5pz&?A-TfB5hb*OI6vN>mgZ3Z*k)(>^Z>M?>Fs5w?7+}Wn~ZODEa zEd(WelO@EfZATEpLWuVP6D<^Gv{q3*7HY?Q!y>8ImIY8KW-(Vtr~_#WoQ7e_%_txn zq99X`gl24D`q#TB3^i)C!j#r0$i4IlJdmq3@(itY#)Q@w7B40#2)p>%y3SB+9jCII z>m8jc6Tq0pC6Nm-45@4k+(nH-8?hcjrQim;u{H2J71_P0n7yV_fEYO*P4 z&-xnjN$9q|Ijp5aMnOZkSqY|VbH^GaLrSm^GEy}<5)EdKbv1LAS2KTHzG4|Bh+b@) zv4CI|X$W)Ai%djC&v0W$dlP3JvI%CjQF<<2rM|6Ag_$s}WzNRam--{FF|Q7s<`HBE>ZCJ9jtGwW*T!lH~Q zL=`qb=B`e?5`{v@y{P<9tRC^zgy#O-SvjB^r&^mJ3G|b=k|TL+Yh$>9wy^fDT8^AW z8NP$O;~QtSr*w9;!&8wGb0y}qZKox;sf919>5qg=dqP{dJKSdVv~_G?ir3wWbr9}{ zg)%;W>dsnP$F;2sixxLRjGtdZJp+F=;}L$o#RMP#4Jdv}?iz zG<6jQ5d;T@t9mz^FsTl?vQf-~@YshP90yT}tg;QLdn%3SBi~nQukLf*1@v z5kV+!GQ1h8%Zm5sIf{iX~QEOgJ^}I9dmewv=LB{Y6#wKMl**nvFcv-97xOS5n3xN}bKwROs}=05rxub( ztpJSDg$oNEQRtlxv()9p_?>Ypj6#b-U~pvorm+PZ7Zvw)B3DbN1fM2A^ysWi8N%$8 zah(_(aBHNJ(^jQf2EP8uM-gJ(q4p?}0BS++-rb7^hNtnmqcVkD5gs1dXlNEM1>6HFDA=X z+lkI;aMXky*1~XXK6Wwgl!0%MOp{uI6;~1XYDcGDS`o1Hq^O0PxAwrGOqVfP+({7~ zxS4F}Pxy86F@;MXt}kFSrRKbzg#%aV*7gl8PWH&*CatClgSW>h^CNmD?h= z={*p#D3$mvs~xjym50(-9UoG&7PJTM7ps4Vf9v9c$HjXSAuwj znOKiZu(mne9^HslsejkdR^LENVRO_07mP#^c;kV{gaEVtBd|b+ytuL+c`j3XwT$p0 z1PHXCHi~Ofsv?m!y?BMdI9!<~Vk_iE*sAGEJluZPceeiL4z!;S?$P4D3h6Nw)ZU&~ zr{XbQ>7VM+KE#VR6;O38*Ce$_!Q|Qrxy>=Nw$tjuB82OONHQ54-Q9Xq2lpLH+zzND zUQEZ1^JQXyzJ8_IigT%^2KKSArgl)iV?WM>Uv1O4^7B$AdO#o~w<>jn%dHK=8q73s zm%&^QW~z*9rz(7KkEwf#o2LhG0_qBm$m$BUODof}|u41uYQi_i()jcBy2 zx_ZfqWymhWQMfTC43jooyHlwOcQlAV11_huHDR_Uqyjoyqu6F$ZS3I%A-#qu-_zWy ztJD~7#W`~pQ3Fj0VtA`yNR3Ib#hm8iszhL+qO>5BuEI8P-P}spl1yPcCy7M1FjVtV{iA$u1T?g3(GY@f! zMQPzPnBYY^WZmu-$i*z7ja77vSca!SmL0G;>;ZHeGi0WN=sp}BE_uKq!4d>xjNzlM zz#0R?E^fdM3Di^}y-B|%1^ZDbsGS0dW-Ux12))Pww}E){hD1KO4~uqAHZTP21&I({ zfPn(R*STzc1v%IxBUp`CpQ5=i&e|v;g$GX^KYIM34<7fho=YktX_Q9YM~`XwGR*RD zyNr+LI*%f}Wu_}MFRbL1^#|U|iJIL6C!6KRaVQu%#aba;3dmlBYM0hvDKMDl^kwr; z|B>OX_8RmIMwzAtInd*^lpdNC=Ng(bY=1AU}}| zeCfkt$Yf7a5>`6QZMl5eL|4PCI?N;efX>={j(xXd%1Wf~R->`Y$wqPP&}l@GgG|i) zjD@yidk-}xlK?|J6h*IdTucd*h#bZ<*}5=z5SuLxC|Yke9=nrV02kHP zU&QMX$)sFE$Q5MTncE2EO5dD%Bw`qeSv`&ttEOBtU|<@!PIFkSvF6HJYVayF479w=(078GRgjPp#)lWQ{9a-+CfVTHZ&ka z1k)LG0Iq>yu*rsIw}nL56RGf(T0GJ~T2u{|Ow2j5CjD_WTp4Rgpwp9C}OTEM~w zMoeyrqpXu$Jqu2b)x;RlXaKyLhaWyU^YHWmFfiGYcr-TL)NVEm-32mn!7im>L&z|M zYv2-^Pvr505_MTu867iQ0(^Mpq>*2F)xfVzSa0e2>hc)Fn=O9WQ4;yrMDKgGO42xz*mJ=5`nWe#1) zSVd5yE$@?O=u$(T_$ryl`p`1BZ6W?_nH<&>qJPfbi)*db3up<=TDMu+v{`HkbRBVW z6lXRiq~+Qi;!EflT>uam3=b>|Qi#E7xd^#23ro!OQHo>I#HSyFiENmxH4cE+1)mA0dq4v z15H!#i7~h@T+>T8xk!T_qQp(eqA}T~h4I+D$=Sprlz=^!F&YUOE{(Rh>S#an(#!q@$EJ8EoCd(i-_4#v^9d))kgkxRAi;E_FNgtc7*W zO)_OpVncJ6*5Dsh*6ZN0pY*s9R60D6SdSz-P@_`m(1d~bUEXM~fHG#@u5ZqfCHCG5TH7AH?nK6DIgF$XZ3?aulI1W+&zvG$A#%@8Us zEt;f*pmDA(@heq3BQy-q7+G%I{{Tu@>(DB(sROUtMmwJ|nphC%%j>rF5EXa`f*UrB zijAJ(vS74V+ioM6`FGL0Ym9%9!{qX7^q=8Rf|7MdtlR3NiA&f9pp(7fc^r!07gKl;*uQeK$H96@5OH`|Dm zBd9uuwRu+Qvybfxws4lbi#3Z;(QiesFg8pYJABMsYjhFTLg3vaw2UvMwLVaSt#s6F z-&gXyX-h!W8=bfl5bA{!&IU)*nTZCzOPL1LuQQB^p)nz0VG-2M43u4q_#r4_{6w?Fj zXjhH!8=!bikXZbM?SjXRjvIHfJ@90fxrKoY3(d{(5(W699qU<;!>Fh@t|;g zwkgLL90WnpfnitZLOy=36A9dI4ZYS14Yuk|GaZOw#*F~19K^+BUJhGX5uZjz`| zEkO1*R^?`?NGe-cuyTB8<}kNfgjwg#po!`A&LVcA(X&$xd3S-CeeD>;6!(PuNR!F= z!eE$FhMVFv}>C8X{!B+EalD3#-1{_I& z+q3Lp2{PGssJ^dA2E1kF#vqs(rcbfmgBIh##?%39YcTpXZ3TgYwdE$aD*EO*(uFPK zMy$cz3anm3YBy|60h@)EVJ2WR141cue7Z%%_``G{(SZN3LduEq03G!=wDRgQNW5_# z%JQO#HVzttHVmJW?9mu6Eu4N>ukKn=*)DMNKyvojP^Y|gYzzaD*#e`JV2|C{INq26 z9c|K)^0Hu3l-JtQ2tf_KM^R* zwm@YYJlo3nsg!X>;6EkQS%Lo*&0<+IPwPoFj1*^ciyV3)5Pz7;I`?>#@oRC%1PlDl zK#dlgV|{e_R1|SF?%Rrw6oQ`(+-=3`4~yIN^o_ud6psj0<*4)zqO#n2en48fz8Fu> z#r<`~&&F{V@40t%{PugE){AdNg4gyYDDLU&!`)Hm>D2dge;c3%bELor)8$L4Ka_G! z3lzN!$km9{B0Y>kx!9ukLL|{pY%A{XYjQoP?w(A2V}kF^xSHUf%(!vE@65Qm;CE%* z4#DrvxSfLU&$!)!ui^_JUZcg<^+FHN1QKkyTkvmW+)ly2m2o=+|4zo$1wWf{0`H18IIrqSH4Na@ z{ZR%_#P)Wb;|Ghp9*;ZNM&PdmY9Ozkh$2qMoxCdeT;QBn_4H_}^bvuo9F_iVRF+%c z$E!RLn%8XH`*>9^RwBX6@#I|c90xSHUD88- z8J|sMom-2(Jso#2o4~IIY9NR6kJj_rj5|48@J9pZ9ImG;snSOTs&Z8Nov19gzK_En zj{jsfpc!r(`Qp*j|lu&^m+he|6-)R68ApV z(2LJSf|p|r{t0wmS5lpQefo~4C}g~UE{sVTm2z8T*hcbn8z$@bS>BGC)2a zs!b|RwwIK1HUF@DPenP^^v{HJkT`rM7)=Z(tsqfR%|9&PA4NIU^u+}B9CFcZ0>NRw z`iPFEIl;wZViD^CJbm5t7{YX zHP?g%B_WF-Z(tF^$uEczaACpenSne z#%;H9HrbwBRt^sDaZ{;POHSo3!?>eqcL<#eDr zepi9+&3`xuTX%&-R7_hb)o#8|t3)4SuVpuRebh$rx-^{;|kE_6qYqkGyQZ z^4B7N?G@(#Gvp=hDgSunACLSWi-DCUQu{?eFIMV*@=bMM@aGEOWVhn5-_o!0>;7H5 z>23dw$bTd9Ur#w5P(I!Nv6BDlo9mYF>YK~y{VDUGp8o{^%ToWJjr`9J$zP?PA0RK= zzZ3s^FXfMJq*qMKOZR{8f$c^7yb$$Q%T+$5<=IeG9N+zCm$ZpMTub zk5xKc&Hu(B`LFzf=YP8hCz?^s|MtjV?dR7%7E{tDId!>c94Tp5eKQ098Jf z`qM-5pMAkoOjj~g9t#|im}p03^8VbP_|wr!hRUPOon%*U{+oa4PqiTQx8d7_EhR!HBJ@t`j0lb#o&#r8saq6ZB+czq%HU&h~6NUoRhKL$Bn??o9rTHIYo4)?ws zEq=U^d@bY03(3tg{wI1L6Fgdka!D8mMvFIAFv3@*sPG}=D!E3Bw^T4n|JEV+dLN#A zvJEG(R_C4kep~UtyGr@XTu)`d2ro{PUI}_}#$Y zQ%-76Gr$jOf6MT96gu5r<^Wf22KDQghTy+2r2K19e(i2=)GtTBo)5f^`)fs;xm2?q ze62q#A@k-%;A`OPDjo9A+74>xzgju{1MxpY@OMHFv;1peUn=Kz!|N&E?;V2Q9pzNp z`Tim4j{rYtUSfVpyrXu6V0gx&Z=qRurTb0!iHOZ zr`_haXZVl>JC^!T*mc)w`i}DE+&VvpYi(S@ZZ_=P!@)0e6A$eCDQ;65kO=#JR|B*bujbqrQ5Q_U>M^rXR#1H3ypbngDJ0js$#Y>Y;sm zr<#5cMssE_juK#snPZbF^<1~ZujTMjdePkf@bSIJ@DuUpq&12;~g;u1^ zqU{S)ZP-!eN8@P29NLAi>GYbPeyq>)3%+J!<`}l$X(}-eoZA`OUuo|KzrkS)EjGvw zX(^9H>G-E|JBEF!tVZT<#D?sV>;H-=_k;tCZ^ZdwEH>!jcrzZU#E(U=J#xV3_5CNx ffb3$5N*fG)gv;MJHGO})z48xghJF%Y#9I6x**`6G literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist b/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist deleted file mode 100644 index a54f6daf..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_2bd8/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl b/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl deleted file mode 100644 index baef6236..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2bd84dbb0ec00120a5713d2e25b34009 -name : coin_pl_2bd8 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:24:36 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so b/scripts/_Inline/lib/auto/coin_pl_2bd8/coin_pl_2bd8.so deleted file mode 100755 index 8d9f2c04215829ca43a6d433cc044f5d6ad925ec..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66852 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 S$8qeb0VWN~Zw!lXcmE$;Y7XWA diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/.packlist b/scripts/_Inline/lib/auto/coin_pl_3698/.packlist deleted file mode 100644 index 8bbfe59f..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3698/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl b/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl deleted file mode 100644 index 6ead7511..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 36981d9fa92e405b36a1ae7c0da6b559 -name : coin_pl_3698 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:51:23 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so b/scripts/_Inline/lib/auto/coin_pl_3698/coin_pl_3698.so deleted file mode 100755 index 04e42facdcb3527024453e380edbd57e2b6ba2dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63826 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/.packlist b/scripts/_Inline/lib/auto/coin_pl_3863/.packlist deleted file mode 100644 index 2d3c2f69..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3863/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl b/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl deleted file mode 100644 index 02eb446b..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 3863ce08bc735615b42c2d5062f0f5d5 -name : coin_pl_3863 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 09:38:52 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so b/scripts/_Inline/lib/auto/coin_pl_3863/coin_pl_3863.so deleted file mode 100755 index 08cde876d6c33a8796152714db3551365fca42bb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66846 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 fSP!SZbZcmE~_%I^z{FM0nTj`r_( diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist b/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist deleted file mode 100644 index 5ddb5d4e..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3cc2/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl b/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl deleted file mode 100644 index 263eb82d..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 3cc207597329c46afe9e7aac9423fa0e -name : coin_pl_3cc2 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:54:39 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so b/scripts/_Inline/lib/auto/coin_pl_3cc2/coin_pl_3cc2.so deleted file mode 100755 index 3e9862a6577f10a77c4d6fa11509757a10acb3b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63280 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 Pi&EqG;zO4Fld=B;PTW|3 diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist b/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist deleted file mode 100644 index 450de1db..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3d73/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl b/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl deleted file mode 100644 index 8f757838..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 3d7397d2309b1654806ebc25117da3a1 -name : coin_pl_3d73 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:52:34 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so b/scripts/_Inline/lib/auto/coin_pl_3d73/coin_pl_3d73.so deleted file mode 100755 index fddd136a5dec28c7ef9a7182186a82e1d3d17171..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63360 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist b/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist deleted file mode 100644 index 60ab0b15..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_45c0/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl b/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl deleted file mode 100644 index 06d8a2b8..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 45c067d171b167f215cb5bf549286bb6 -name : coin_pl_45c0 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 09:12:27 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so b/scripts/_Inline/lib/auto/coin_pl_45c0/coin_pl_45c0.so deleted file mode 100755 index 09057038a3eeabd3094e3c69f61e271b7ce630a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63802 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%0DT}lx5FR0NySL6@WdjWdu z|KxOf6L(ifkvyNrK>Qkj@{132eRkSz`Tg1~#M5kMpp`7e6@i$7-m zzag*2BJw}$`JeqU^Zz}0MSGF|lIOqV`5(WGmt5i>UD5uagG=Cg>tDEeTFJ77o9#BV zKpOeu{?8=q&Htq5f70{cqnABbu%Dm!{gmMWDY%|1>W};F zW9t9WvnkV`b4qgW75M`9b7S&D!of3X^fM5sf_u@w0_S3qsV|o+pM_Yz{(vRPt z+aLY-%d@a2`tdKz!cOSNUy+6W@5f)6g+S;+N% z{Hu}E)4eEz_h;8GgkGBm!Ob;LNaxM;(^OU6@rYnidQT-a%-+!@kCbOp{n0l`7 z0*@Mp7YzTxi-UA^B^}uZT@BLDs~kT_Z_|c<;l)9Ez7@QizCEqsXA{BS*oR3E=Pdoz zS^NOnUwN8Gz)y}y|L!sP4}hN@k^T?H;I+eLR6DLHe0_XOIiI(3yt1C#Uyn)u%`y1@9D~0KyF=p;r&w3Kj!E!0 z_S6^P>nwdd755qN>hJSzm&cns3?EO$ecsBsI*VV=iE&;YQ@-L8YUe}Or!peFHc5<{ z_un-9@c4gVO!|*m`9=Ez`b)zP+aVXnl*4BkoRqM(kv?POW78F#hsEZ29ZyugckXog zc!}c-%bYyRrg1(|((yYR`i`GZf!P8+gyPeLW;uPWSFUz+$UvpL%a(sWZ{Q@r>df5- z->SXbBNDL}dXtY_^g*>gwc%4xJ0g*9ZFF)%*&~7W#8(4#j)v_?+IzNvHT?+Z7|xgZ zQj@l)jyQbu_^Cs)$II!cwDQs{2SzEy(uuh|b+z5p$pf4GKgCw_&G!>B}2G`K12{-JZjY?Q@lpCya8)Q$8bV|GnEBIF*Ka zj@|bVm6Gt?*BZ)>aw}EE%xcSufYxsofl%c_|k{3FgVp9&NI^|xg9$vu3TC= z!S@Y828^NTV#z*W(Z@{v6FI`8R1U2|oL^05J@|~7_VcGj3dr!@NC?kBC4y@)|pz`hcXDZSA okpy3yDj3PUD(lC<*IMQDp{Bhe8Q*}9{Z!RtK=I8?{w>=70ry)l>i_@% diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist b/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist deleted file mode 100644 index 32feaaa6..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_50e3/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl b/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl deleted file mode 100644 index 1bedf9b7..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 50e3dc20ed5c543eb4c56e9ce8260827 -name : coin_pl_50e3 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:51:42 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so b/scripts/_Inline/lib/auto/coin_pl_50e3/coin_pl_50e3.so deleted file mode 100755 index 019cd8a628dfb5799741f1bafa0c880681ef7889..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64094 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/.packlist b/scripts/_Inline/lib/auto/coin_pl_5230/.packlist deleted file mode 100644 index eacd86aa..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_5230/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl b/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl deleted file mode 100644 index ec5da74f..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 5230d7d9d7015431abec85dee89adb63 -name : coin_pl_5230 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:45:17 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so b/scripts/_Inline/lib/auto/coin_pl_5230/coin_pl_5230.so deleted file mode 100755 index 0fb0517f80254d04f94f1e629128f116cc42d1e3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68921 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 qF5U@^!CT00vo2eCJvN6>qQZq8}Wc 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/.packlist b/scripts/_Inline/lib/auto/coin_pl_585b/.packlist deleted file mode 100644 index bcfe3da4..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_585b/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl b/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl deleted file mode 100644 index 6bcfe5af..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 585bbd390e9d66ccadf068c2c10cbf7d -name : coin_pl_585b -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:29:18 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so b/scripts/_Inline/lib/auto/coin_pl_585b/coin_pl_585b.so deleted file mode 100755 index 1f88b04727cd24eb1acefbe45a01d78267813144..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66852 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 MLHV^|@fGj?1F>lgQvd(} diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/.packlist b/scripts/_Inline/lib/auto/coin_pl_6939/.packlist deleted file mode 100644 index b4755a2f..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_6939/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl b/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl deleted file mode 100644 index c7101295..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 6939184833f2e6588f474c7297009b71 -name : coin_pl_6939 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 12:32:51 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so b/scripts/_Inline/lib/auto/coin_pl_6939/coin_pl_6939.so deleted file mode 100755 index c5603651e7215039c65973e22dba38576fef2cdf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 75971 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ⅅ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 H@5ufSwbF=0 diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/.packlist b/scripts/_Inline/lib/auto/coin_pl_7152/.packlist deleted file mode 100644 index 22f844e4..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_7152/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl b/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl deleted file mode 100644 index c656acba..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 71526bb8c00244655b200a74174c0969 -name : coin_pl_7152 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 12:13:18 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so b/scripts/_Inline/lib/auto/coin_pl_7152/coin_pl_7152.so deleted file mode 100755 index 63d83b79f54f3bab6a1dc0de1731848ca443dbcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74259 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/.packlist b/scripts/_Inline/lib/auto/coin_pl_8011/.packlist deleted file mode 100644 index 27e442be..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_8011/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl b/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl deleted file mode 100644 index 8535154e..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 80117e60590dab41f6bacb84f907ea9b -name : coin_pl_8011 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 12:03:48 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so b/scripts/_Inline/lib/auto/coin_pl_8011/coin_pl_8011.so deleted file mode 100755 index c1a96609b88035ee9efd8c65b0475c929ebfe7b9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68914 zcmd4434B%66+U{-xi`s9a_`Q3bAdoExdD0 z?X}llYwdleo69Cmo9x)OF$26U$I$>%-*f%n0mWRy5spE z-Nj$bY#_Uns>XI(Vs z?r6_18-B6xLx}jVn-9Gxb&X;;+pwoij@||$9*#w?L`UcsM{g1Ed+qF&PlW-FMF+bT zahW{(y5rCfpu(~A=>Y$+=uO9I_r~M!=b~T7l5;BBJ(m8Atq49xZx4WQEIEv~$kEKe zGw?ZtXV-D`{N{M{^{B?$&YUq1ZDdt`yClb|!H_)EiYHJrRTd};h zrM0fPwYJu(ZCu{iYSk{l&Z@0GeR}QuhUSKajV-MW&8JVFuyn=phSTfjEp5?Kv}nflNwr2Yi({^ zz7Pd78kRQHwKSYEZ*fC?D==%0Yi_Q)08A6>TI;OYr`0a2Yg}Htyy1MU2KB3%R@=I$ zxpoN-n{d!jH@|jaLu*S@Lw)0d#(Jx!p?PU-%c|O;jjL)GEUjDE5~H*YG>8Eva4IQoFLHZlUQNTCS;UY=)NR$h8kBFx{-`$?S4XbK@%5 zjA~98KN+S0-P;R7#UJY`YsC!GB`8Lk*wE72yyAiwKdM6r4AiZuYPd)@4au-_-qOZ; ztqKIkB+P1TT}10nSkZKWRZBOkUs7AYXi4pYy2hn3Wt&v(B@Gu)L8=|IYm;l&3FA*& zR5x@)8C06l*wnCW{*ba#-Mew~=QlUBC?}XvT{CI=M3hw3wJeHBuj^v)s%g3a<-2j$ zV~|^wDd(+N(OO%-0xr?Cw6?r-$Pld-hN`ZqaaBWeOCth@O!aieSmAL>FzmBWGeZvd zu7yLlT1y+})z52eWg{g+OG-;xR(MIp%NttHU(vkeSVb+ZE1Kai$12i(+TtlPt_$%c zrQI4>x?rd!3$b<5{_=~SZ3 zs%@Chn5(Uw*V3Ys4@k@BTZ31&G!I7X*DW0k+lF2c;WJu z)=AT<$4{soS~5I#G_-_^R<$7s9J;BHkOy4wcJYCLrJJcsnz9y-ri+-0dw$gBp}XgithU3@*(a}e?DWvRezD6#_j<%`51r>q?zYE6ch4JH zw%0@Vo)_-((34yt*zfny-E%e;AMnrv9{vsw9S#@U4teN2mvpzo9=hv$s?7Kg?Zb0e zcM~4EcU)3Ebe>ncTi8SQp4vq`^emSd`vMQ0Ya@3n_0WxrtDO$|;oFHB+MSyfzKJ+Q+@|n##M#763U4502zSm^_zGf%ZfA|c7ZNjMJ1Z4# zCT6I1mMXlMm?760QFtCPL#i`X;j@StN}ZO%Gl&^Noriv4|ECZ~hz}?{o|qxixliGd z#0-_rJqiycW{7m|Qn-kiq0zZR;XGo7MCWFOdlEAgI@=UZCuRtAHYuD$OxN$6tFS{% zm+!0rrvFxLjGL4hv8vYYX?2e5Q;xjZ-KsXlb!4Gz)0nrhJEN-ba8>&URcj8*^PM@* zqGGj#^O}2l~8mQVhW(MdTmq6u?MKJ4}7vicwus?rx0k@Kr+$+%~ z3t>3sKq{)W=0dsimGC{S8D~KMmq3QBBm3rb&Vqo>8Ti_~`HZI+il?bCra%0au&VvV zs`h6)D!)H+oL055_oL|%YvZVnx4t`aWaFr58%sN0 z!BN%5nkJz7ys9-H`K#J%nmQg+)XMP2QR6l(&9|p)@*k)!d|_Jqp(+@9&0#xbZ4tWB zvDvUy)qjHen+AOXMXjoh{*JFIgW&lid$u$tYTCy9j*dBik24ve7t`85RQ4X%{sMHG zpcre!#!+95k493ie3-RMK%}B`Q#+zs5S*zpJbh#Sa}(RY?%0mLZyZ(K{z69_N~g7d zW~5%Fs&yRt_Q;WOUro%Hm8?{?X=%sd)^s$rA9OTMLtdgJOlxlt9nXNeaTHCuo8`Vm z;c4y5th48gJ7?USapyjplG_H2td5&esKlY4RU55|8=E4XV=&Zi`9&;;0v6AjZJz5Wql7xe&7;;3%AsBFmZ-~e=)juus@hMfA*A==2) zevq!D_>~vD3om#Pyhfj+#veY)@&6_^{x~|u_$%uF9)H93U&lWtN{>HaxABLjX8aZ7 z(c=%IJN{ZwxAA{U6|3>bk!SoBz2nf~D-6KPfZ#QcIGdpep>YsgpdNXokd^2}fts6+Vg zyB(WUYwvbUf;g3FI{u>Dr&F;1keN?Ms%rmRRr`dps*Mx#kt!xs@E{cjlX(!v!O0ze z{2J-0uWJ9@j#kyiiyaqpzwz|^g85a$GL?2K6OeAo&z|#aM-$4r``1jV{Of#3;;@x= zEW^=%`qwN){h$6-YS@nDUw)Hc0x?m_zkc}Y$dO+&zYO^kjK&PJ1WLj~;PvmJ47$WJ z%!3T8--Bp8>}geA8S}7d$S}QOLY-mmKxvnU^+U4|c@2oi$}p=Gv&t~Nlmz8rb3xS} zHk0N5>0uM0&?pqS{xxl5Q)=gUB#^H8r=u6k;SZ-l1NzrY=9hR9H)Y+4Wt#D?iD*{& z*O0G{?OYkCG6a&I@3>b@F=U=iP2Roi%lRAlQ zR-|`3gwo>JKKDH&c<1Bp{`Y3G^1rXY(1Tjq@d=Kg^HKBLTZ;NW{co3H`)~etbxf4< zze@nS``^Eyu=c+?#d?(gO#{*R-#9I*oBvH$#msO~9Ci8MU5efzu{)Okef2q+mH*ug zqnZqN095UNZ?gQ@{`Ulm{+s{Z%yRhOYiK&=f9puxlvRS$2;+axp;`K0Rr@*l9aZg1 z^AD-?G_8Gp{$V7$aK|vzHJ+y@7 zoWGz$Y(AVx;-;)a$PC6`wxD793&+PSRuhF9oFec-kBtQ#5!KYu!JMS19Gpq+VzsIe z`Q?z-tGfOTSZq`N8`QSy=^uR4HV)s{@disbWnBpce$8`PdP@6O9iOVUIv!J{!R06& zw;MifO>F;2FWX*03G)7pN_f`xga}SZf>Xg)wQ0m@+@Ys`*4A#;Jfk$v0L?Sr@cc^i zoUD0jHIGm8@DTyZ`HAK!(mWG1&%0E1(}+HXXPM@S*E|Q~Bh=>!&68z#sx{Bw52DL! zc8B9p+ByiG_#+5(rkx~pJgd;gMdcm8#?dsl!vRPJ?_H|2YU84C$4xA@Kd6dp!byKs z`y?(X*Xd$RCKt2RHy3N?hOV_UPWIG!AQq_4)-^A*&Tm|R`!l?qg&QWgTVkymQ8HvW zF2&<=e5vKVQ&CcnduWZzM~=i@hpwAhF%oaFXz(9*UNrfbw@h?V*ZmQ@mv7V}ScMlM z?)&t}5uWKWPVdA19qeDn{$d1XCJg!x_M@@C7-{`t>_=m+x{q|sw;yBwB$gXFSb&^^ zh3z@me~kUb*k6qkvnR37ge-3Mg)=OBb*kMfkRbSMR6c0D2oOR0yTE73)X6eDB_;WM z(PoY9IjU$_ejccbZzA@L$rcjE$<%cYSl9R_%7}BW3{RA)Q zGhT)_`6kK8)&6m^U|rleS-K|PS7s;4f^jl}LNJY&q6()e)QA0_i?~$xaJ#oN(c2E~ zvlV>*C+!SEUE1|9?79cX-TG7G+@B=FXc-+E$4f@~8LWxmUynThKiVrlx?htag6%Qt zJ1~CKTemks+porX?pWOy+>i*Bl6b&{3tB_-OCG(!lRDDGmpZ&XT{CEN3+@BfF{SD&*FteZtimn?lpGz zK9ze79Ydow_gcGqzl!6@%`G?0Si6m3zWnjX3YJ%y{<-(0X5-Y48?!IB-KLxuM!CIe z1ZgkV&$^Lr*sS#fBZRSgK8H+!n@>22am&^_tJ2&Qap{N5%@bGe8l$gKOFdi1s<^PE z^xt9ladx3FQxZ2!2MQOMa=5L+uAZ9f|Nr0a^Q%W|I@1_*f!VJz`*mi2quJkW_K%wV z3ugbO*?(yEUzvS8uP9>+nSFn=FEjheWlYFEIO6X1~ttZ#4V6&Hhodf5GhEH2V+D{*bw^anghd zBO?V98|F3EEsqQ@IiX}|@rXiw5POc(jVkw^xd5O4AexCA{Whs%(M;U54|sSl8i{{H z=^Kx9b)=y?e$&8_AOd5zV=u17xCO@TMJdf)2S*Q#r;|BRzmdp3_9N6)C(0xl)QUooq){B32^Be}yA8V7;v5ESRh@(bg^5ey1eEXx>aL6IBn&p2B z>IR3>hy2tzIGk~s$OzpAPNibdN-hEKW?8bDksKI==qYUg8(pL*A85ong@m{q8A6V^ zN1;^li-ABDwEbUIY*<}Vj1$KoTJeq@dE}_E@pR} z=xUvS)&rOj%5GiOVntG-uYe?EU&L#_aY`uC9ui$je~pCr0V9%9pi!!TE>=pRMq!wm zkLo5*g1+I@Uf~3Y+E|GE*_&iq?ptKG)IMwjks^KthSXebfmCrOIU|?Gu`JU{eg={w zX$?y#qOJV09YwKk0P9ChIZZ40n}I?LCQrALmT~f#@Z<8)<$8sHj28nF|b=3gWNWH zOst+^WwbpEi9Mg~k9A6~>X}yNgYnEFz0SblL-FHzcrp&xCcI6}guf0kmvayNE^}Vu zEVw|gQ);Zt#>B%Y?Y*MOD#*&WUrvMt&xaYZ`q^vHG`vKPLGNNv$R{BHaLZVhrplKg z6mXP+;XXdhJcMZ6pO}rn>N6Z7U5Xtd<@fO57$u98YrH&}r0}ta7*7T%JrU+E#g__- zd=cRcN+n#!iRQ`I5qmKhwR%lp_ZBC<1=+pp(Z8C|Wp*ZfPW3O;)~$arsQU-#?H{1G ze}vup=Tf@*7o)`b7o)`b7o)`b=Tf@*2a30UF&LFq7>Cdrdx`3OzPuQ*A6jSJzCebN z_(E41SSnW|NJCfKa}{&B9Ewp2Z8C7QoXWb_+Px;zkd^Y?2;g;gUj?hIoGjQmb46kV zwhNvIBhStnYoCnPwWCyaGh~(vjiXd{GbBpAh9vB6NSD%O$QUJN$QUJN$QUJNNSD%O zNKm|njKQe91j!|9oase@98W(RZ(ylBAG1W(MElnap=i1M6_ROIm9bo5@cLtqewL(IeUQ4O+pl6 zCde+-WvOBa%%43_qp+}H@a#bvMZ|qXC6A7vlmhV-q-76zp@yhbT#vT1hn}H>L)=R= zOrz1_3{0@uBYv+qE5()QMD_`~tV*1S(a$c|XqtE%vrzU(-Cm7IECd>*%VvudWXbH& z8l59vg->OV(P*yV6KB~K8qF6y5n$Qlw4RGZBXr81piz@3K_Edso_pX zv?2jypVf|p?~CsCiF~Y7vd`9%_xQw9SlDHs%hic5y4NQjKnP^d%ZHEqq8+|Sb#sfA z-Kv=n`NZ|qf29_6*eA}U!B%P5<`-vE)cG2&_lpMzSHA~kprl{y<``X|MQ!zq7UZz( z3pL!~7mpMGUZmkpzo=p9rQZ%^-CcgMEEn)H4R`y6F93Ks-NYB&;}^+T7iV8F;UvPn ze(^K9)S5q35$^Mgn>mhGZW~6p-!Fbkr&_yTS@M8i+`;~?)1@7Lv6{o&u0d)O~_!0EF$Y9;r@i$?|kUegY5gXDN|BDLDAwK@0cY^R?ptEl>!<`^rqhW8Or(n1f#0IQDvbSrv zBSEBbe0La2CWz(qoZBBBL*`uxqL}c`AC)!sVp&MT-aSRR+3$tO!E~DabFR*P(LV^$ zfC$b0g@&&RQAs=B|2Jj2eL|#AtLF+7Y)cf6QLA?}T%RbSwB$!?RO#kKF(eJ}W5xk= zP87Fb?6N=6@RmgJEl1%~E(m?m9f{&RmLAmI-1Y4$HZRibt!3NCoEzx+bM-HBoj zqv#vmg*}O4CML4%Z#f(IqR%9Xfh_$_cj4JYQN`5oy)Jz&QJh6L`$3mJpC~6{iJ5KL z&z{1{dlTi}AaI;rjb!YL{ytGY!4#CB<_EY|qQnST*-2`>>5IOeD5nx9tK}#>B2hk0 zO#`+b)&q(108JD$xFb<+>JKapK9nfq7^x|0UWdOW$`3glskR==wj}utwNEp6eUki$ zM$I&MbCPUD+Re@~cx#fZqU(q3Z< z$-ff!GWek+`7&{i!4D_NUlaE>_>m;Jfw+&sze^K_ty!H*@$84QAf zY63!PN|G70Z?P%=b&_05`;-{`c#?dLVKLb7KanI~p`VnR@+XtzPZ{|`4gO7%OrUoU zGx)bj@>$9sZtS}!N!|rV&mLjywKqu)WFjxOrz!v6mn2W6y-zgd`;+7}`qpS$yX}D_ zSNb|lLX^*_~=?@X3Yar{p=cvrHF zGQMXSygOOGPy5U^cu%sN!j#=)@ZMxOlKnl;*kfO^e2n&LcI}fa@29>k1|LY4C(ypF zMxTykc`^O@eA^_!Wce5R>uQ4!C(A($#|upTwt#$%@-H;?*9YXcOt=>ryg4ApFvnbM z@YaBQm;QB$!8-!-OWNa7gLekx)luNfOnbWmGKKB8nRwnEkQe3wuQB8GWI(2KJlC1= z+!K(3<8_t6&jsX6#@BkI@7{p?7wy+>@VGkmCjeUuSPp z*|;MhlQ_QDt7Q}XBOo_1e{3=Ma6sm%NyFf_pxl9Tt?U~OULTZ?aVFSi>#1*ZP*xNH z-)#D`H7K`|{}zL93CgD#AGaEPb_C^0+V?h_D<@xcXHZV1y|$b3T|xOA$Ma6ppWQ+E zC))2W)89Qoc>yPvyIp$(WnU)loyK1Kf^swc@m>>;uLor#+xxk}Zv^Fu)aMtr&gE|g z5e>li8GZK$WexlDOC#@{puC#(ciC~LQr`nXSxJ4LGUMA3l+BEfXY4*>RlEh|AnN~| zIuAyE4ayAq#|y^(d!_t4^Y4qMfBU42Fkbh%<0oa5^TF>-`v;`_fc<&N;D1PY3C_H- z|KyIRlnvD9HKYF_DUWb!e#7+l3n_nz9%jF3@Rw4)&iHuC;IE`y%~ipEgTI#YG>+ff zHXrnW{!)I${Qnn&zn5}5{r4R^qRQJ+M2Zl$7eak@MK!4-LLL zMQ-5ubsD@mMgGti_#=b2q{y}T!2dGy+tw6$e**A9*MCxE1^xTqb|KO-{3k`ekP7^{ zovg-ZSBiX_`SVL7Z&#|EM00Umut|!G`W!W$~Sm#n*0ZGKO=8nntX%f(cjVY_3LT!GU{9Elqr4Q zNR!t?P`#rshtg#R?Rl!fhtp+$;u!|FWk^2Rlzp1P>oeq= z?9b^2Z_bdj$$y5yTQlTf`qxZ@cVx)(sn0BfcV@^%^rzVd@5+#)I6s_e@a_zGC+&BZ z!Fw{~O8V2;2Jg*~N7(*3j-GG#Wyp(|&*nH~C(_^cXUGobr*j>BVsRitKFR!2>qL}4 zcVtK(=cl=jUM_!@A*K*rw+hiA<= zi_MgY9IqCG*JsKI^ZDgYnd0A^DZl1;U*YKW%hpUer2zO!=a7=WBU5&;{dUv8otd(T z_P)l*+m$I_<@#f@slPi@&LZCGj8^jZWXi81z&9Iv?9G%}oX>A@?UN~=ro8P=n#y1M zGi3wgZHF^n)jyCazo-3wW^hNQ+(&=8)97<3Q@+l8eYf+S%3p^wAyK7*E3$9G`FFtk-x-nx%m;g&yA<9PlKfSt?3bPAU{e zPE6dD^?Y12BW|r@#N|{YI5O8JHbO{pEfQNe{L=?w0=Lc@>d|j&H-QEjf!l6V zJwbO*!WI5?iNB_P3vq$JM>6l*iC19w9sy4A9E=(8$R5F>u|z_QK)&fAxt!*0oJU+ho>NG^vKXsO2v;@BlO7RDLk$a zi<{X(mcA@sDc)iWp$b*63JSxZS0yfHP%WfEFMWUtEAP4Nd*u_xdoJtNe}hc_+io`A zlij!iGOqh9Cgb|8-Z8$un+$`Dj4dY^8|JLCF(~bcKSD@w33^!*deqkoSzoS3Xonv6 zJyOknp>Q<}S`!-K+r`4Z4hqYBmD>r+rZiQ?BLjv;8<;7};5?x*K3;BgqG4GI*A7kctygs;R?cI{ zFPT>-J_((Y|KP{V@;!T(E=rU$uiaZRB<&V_DazxERtaRUa987yOr}|3dCTUj3qpbt0!zdD?Jy!zoBGe) zjq>O2M)`Ahqqxu*@onO&^twY zU8QKo?B6>@XQe8Ug_!J}qO($su;JysO>UblUO_hNozkR+{2Xx>QL6UqxmHdaW~j_< ziF}$QxDN(hAO7CXMRje^AG#a#hwcXbp}Rp{Xbk#e%%FU)J#0BQz;?)>GK#Pc2c7Lo zp;DQR@eZdr?p?M^VS#X}ftB)kWQcH@fmQN@Lcnx&j^adXaPpZ}=FN$`C(^fW`2~1xC=|?tUGffM z!IYUDJY?bcK1j$62RY7pw{eVn1Zm+sfw9Q!8RViX?`c%Z>=ith{J-gomSukeyTv#{rW~B=k zJ2}5b9B1B|*a)uRr!aMC=54`0Qj9~hZVzS}F`q(#%pFQUiuoZ4@Mi|5%4;$JZx2Qk zb6DO(749%9MC2;!eW!s4+;~>LE%C2xGZQ0G5Pma(XT$Ony3Jb&I(RI3Hx|a>{Ry-Q z+pMF@{W;-oa568Cg+}4G4GhbvbmqU9x)G~Kb-C4NS2YyraR!baL=MH#kTR>!!^3%4 zJ#47e=aE^8%EMoc!eLGve5TKxK2FkEHtihZpy8>V^KqOLM4)7jNM_Q{vZ+Q$eHj+s zM2;6XfE+LSM$okj(dPc#6nibYA@9OhZmPOy!YQX5L!X`WRRx-^DbO zn`>Z=yd@bhV&H7~CVG*ZXFm(oo##mm1!L@Qr)zgZ+Gb(!}0S__vXs)p3Js7>*p*Ei}@saDJ_TWiv96a)d zaLe68_hOXAi>px~UhIZ*sHf=IucX&dN-F(BQNMJl8J2$v3=pZepk~j3m_uy;Abdv} zc#<10$e6PbO++rUqhvV~$F{!^QP}r{d5Gw=rz21>?@ivvOrL@{%iGV4ll~CQnD;iP zs`LkW_!q@c4d%Ren5@$il5zN+VmN?ImG^g6LyMmv2IJKucz%k`>l_a59#xa9@R@hw zD0@+Z70wB~jYH9hbe@yS`>V{me}^_XX?n3O#4vOsC+qr2+AOF))e4{WfflgD3gqF2?S z;TGnP^s9Mp)53*f`fK-|Dji(5@`L?d++q#->>uSEOtNAviwQ9bttNFIB=G#p3T$Z7kwLG=c&8+QeW^Gq9 zYrC3R+ttk4u4dMDHM6#>nYE@FuGP@Y2A<#QW;S#+v!Sb*4PDJ_=xSy|S2G*Bn%U6R z%m&j8*U4z+TAugnX0GjO=Gv}iuI*~(+OB4|NSM7kihsE((jgaS9b((lmlm6A^u3 zp6HT`6enFlD*lS^0 z`PU%g|3-C}gA?@GkRSf3fqwFBQ)eFXHKefcO)c9|N66Vru?N)syexHBOfPeI5(5@qy^0qX1H_9as5d}_lbolOYH*}*vOazZ z!x|2#Yrx>+Q?|*E2QeJcEIz~{xU!3eDluN1BPKwHXtqYS7)<{No9h&opVgwhUPP_r zn-ekPMf1$v~3dBM7X5GIPDi!C^s_R21P-eL}7mga;P^nO*7{!RZxuz8~@n~mXG1swxVK>v8bi;MAs7Kd}NM^{1b)aZG9Zb>|d%oJ_W4}@FdA|FsI z3pg{!3tGp2BI-w1ZUV8uX2N+7AMH-+h&jPhmj&a+i;9W0^3fm7q>dQmp{_4-ggBgP zZ64AhC_7$!tVED?PInQCy-S2Dod*^x!0PehNmYF?C-<6`-#1Vu#{-?^s-*S%DAn4dwA2=o{hT3pgxLvCP5jYB8i_P(GNxR!r;} z$Jon+rbEiS>?b&LP_FyM@%M6~JY<+AE2cxJu(mrBA%yUxFkUPH$ayjagE~arVC^TO zqn$@Vl$)VQbc}Nl#|)p~Ul8-Nqr((IzMqZ4;p!Fv3g!EpRz{dJevz`$ivGsAe>5v{ ztxR$KQlk@`f#t5;Nv>R}=8MVd<_O#@rM}6Ep5**QH5#z`g`-oQrdX}%-D{oPt=1`S zE%^Wg&RSZV1?|992T9Y zu8`nSaTt(%@q+oZUwL$)^HQuAjj>*AprVTn6tbBky2QX#`4Pr0y42Atgs{Asd1aZ= zCZcTKWV)O$53uk&0}JF!aF%GZ;T^;-x0p_ra(GrbDI;B*u8wK*ITljU3zS1)P-Sx- z;DrVTl%+0;4Nt#F^it=Hn2@%Zkk2@bm&dyF8(QTGbytp83x0)JFuKOLT-fU8kFIl; zLrTi3x}{e1D%Uk>v8$c$V&bofiB~4N))lXm+UzRDZvMo8u(Ho}#vl*aWG4@ z{fKGXueAJCH!WQhkZ*CedeqnEvN+YAJvvvIi<{k4JlDa-0scfkT` z{kW?dwRS6oQ z>UETS(7DW7Aj63+k{L`jUm4gWH)jEUZ92GG{*zreY~aO`R}iD$D5x%seMs(am34TUB4_sm z{!TT;cL-#dO@D7Neo7`@=oJj#qQa#K#9oh@aTBflOs>uSQ;-Dndyj|q8A9K_NG}7u zcZ$01Q-RXnDZE&&im$|ArC))m*%UvF#L+wDdQ65`J+K1bzf!9Qv_$3sBCA@xSd+Ic z8_T09iYc!JX3v_YUX3BgsrKK%n)ff5J8OpK_#Ip~>vVOQ(MtX;I#}9o==4e~DDOol z`VHqg4Sp!va6Zv*ghoPq3s>k@)&ymc&c*LB^8HS@NTEzI1fkupTyus6e;1(Ni5f-3 zMOb$C8>vx&mAncSBmDkr00*D%B07ib4qKKScXV*eZG? zil1h;9BV+y*m02a34CWjDG#A`q-9>IHDJgoKparOA=ZGQg#KvTX3$X!CKA`+u^xPla47`x#C(crMEAW~?7ry0k zp|31byo%P#G^V(Luc6KnLuhgtY%BRxcxY8Y!FM2u;m9ThMXrg)BZU+UbWQXiMyp^D zHQ|U9!I=t*H42N{5!D4H8b!oTN*SzCftZKUDj1?sspyRvuwa-*Lex+8#%Srgq$T;B4rh>RL|UT#jqHv6ken_IoYSfdWDx6=CC}J0oZ1kBXR*; zpm2@z4iYhMd(DQs6kh457c%jtT?hJ6c$Gtc#P0{lSD<>~dLwF)oQq&7Y&W8s9gF&pHfv=E`B+K<%b;pQUl*nlJ`-cFPw`M|31Hb zf&Kl`$lLFinbiMlQ+~iN59R`Y=UlG%JNz<({NKC%_sg#nfqyjRhyC&;#C~DCPq*I| zC(mL1L>~hV{t+kt&GIClxoZ(8&*%#rH068ZpW_VufiwCI|RO9MU%P zUc8`l#|ye?yrA>Ms~64V1qTl2c#2LV#tXi_9WVIibk56|5)0FPObZzzC;cIGD*a-F za!v-%LDRp5Z|7uEH7hv-cHbY0d;=EI57{Ktmxs*hcO!m6dHg*Ngspf7@ezs|^=vVp ztogjviT83iwXqHVIy4>{pbl3;ZfHl=WZd!Sm4`bX@q(8-<3$oE!KX1@l!j`YYXIa3 zRyx(;tc7M%@T64eG-uN=)vSCNZXG&9J%Gn-@n=i}p_vAT<*EqaEHgnz?T^r?CRvyl27R0`#(t{zfd#R+)mbLUntr_?oHV1>Rg=CM*5S6iVk&3%7C zwy&M%$yUFz*$N#t1y%~LiG{xL@_pxg665>c=xz9Za64%YNDY1F^s0i6s@boUzIpzB z=+3uFoxJ-CaQvfc(+X~e#}tGFrP4q3nF&cUqK_46m*)^d{)stLu9lLayk0sk}HIaD##6@^_TH(RT=4!b~lfP|2%(`ieo7 zHJ~Q+nD5PM^u0F+Ww&~IE$;*x^w+-EX@}r5XuLEu$$!oi4BdUONoca)z41Sq(oRxE z9J>DORF!`oIN6IU2LM(Z7?!!T`V>Dewc+N5Je_c=f%&qI=9*?;fjmgHryDp3qwyKk zh!<2f=SB|G3_p(x)SX~H*`cqNsq2S4Hvn%ds0Hf!{{zP?-=fNy)cDlMQT6qOOTNk% zqQVgONQ|A2m1uUh6f)P{-Ul^aT?EcK31-P$AIzEx^F0oWMKari%K_xs7}v}VLDzx$ z!p@l+gXR*t{4;_i^Xj1XVUEMuK3NFWsqMKqF&*3XnD3%6n^Vugw;Y=x+sT- zoCr?C%u&=^ix=W7n7*hFZH56BGtkeXz8YnURp?xink3+}qAmd_Uzg>GU$U)!e^oLg zk){@_sJ{jU;wm;*q;`N`fkZxY%!Yl8li)5u1Llj zqo_=e)gn>K_D;}fv6uqKFETH)FBM2(@${; z(pu4Y>c9o8c!i}C%=*L@SHSU#CTh6b7MBrD(r}M0?xz})HQZ~9RV9EYX}Hf8U$C!L z8t%8nQW~&Y!vnUs9xI=sDSUz#FSy&H5P7<2D$V4Jer$_v0&p5f!WaG27C)zZPS^0D zE%?VZi%#YZPQ0FHi}6^f6rI9*t9TpB7DK2;4KojxoQ_CBf+(8*K0JymV3A5S8a`KW zmm@w$rY>5bjq{u%wj#L{HR>1l_B!G-w!3&Dl)-At5mT}HDq5-yi#OWeqeCv!TK&)?QyYf~RoY>(kPOTCb-+bsS9L+{UAlg@W6O7h`hR>`~6 zz2xsOs8iC0G4Pexh!TIv3y8nCk`rLNcq{lBJg6!&CnJo^lhRZ-ACJGOV`LC3v2O&* zpg9W;V4pTbVT(htL$#B$mU7 zmdsN#t_3HSsz@TZ6^ahyM+eZ=c(G^-dO;WGOY*80T%zAIhGo3Q7B8$*aZgBBWOIp> z%=gw5bBZ;1E*egxOY!9$MNC93pBe-{3>Yu2n#AvH^d5_O)GqZ8oZkrMl2al;C4Dig z+a%Q5zD88w&kybx&v2GLL&cc)K0fu{KgXT zZWrgGJrWX92Mzo;h-wBKG>FgCG5tRWhaOa{f67XTw-6eGO33C!1NdD-=O<}!g?BN? zg9iT=)P&UHf`S1wXQe0$&SpJ*QqvC-+@FhfwOIykR6_(e;^7+QKzBCh{}(z?JYpCnmX<_!yAn(C@pH~fgWI5INk6T4 zM0}62E$L4-z33*Fe=6phk^yUZxEy94oX5ZLli)8MdIbCYY5g!H!$!g0emfU^%I7cR zma3my^XIY&%l``euyn-htW{Qe!kE)AH}gldOUrpkGt?krN>ALXI@wqBqkxfGr4f2i zrh`#AN5t}%r=oaN5-15XOUGP-y;ukhODo7kY5zkD^XlZKRt;eoM@r=8uMOh z)t3qtYdr~+o<1v)n)y%1Uy^tYwz2#tCxN?qJ&F6F(U5#vaj1Ps2HZDIT}gC*4YVFv z(B146XIR!S{sy_7#wEio_zdq2@3zxf@&;igQjDENm*O999{waI8auoarQ-lc;D^gC zyC;YAe84h1F0Hl;7hBft(C!5L410)GmTJh?f&7#vJ1r8W~# zp_hU_w~JoxTFjn^0=PcS9xrI%6YZ5Su=AAd{ypmeY|m{EjA1_qla9Ot>A`u5SF!gX zf`;KV)Ol*tFw6P|Xw)xQ_zW#?+ap?j{*+_1B3-DpMq4tkRfc8ig zuI^t9Z!{j&6Dh;qKidu0k5p92kf1juJ;vI?d#hCUti%UyaIdSDMxv2=nxg8@}#*cgl3TsE{;W9SUD z2MwLEd$yssLhSFl=;dx--9TfGix@)i6K=T40I>b!}ngI;7182H^>;{^Lvtp#x? z$Y~5n{$0;9URUF`9?t&c*=ksPpWA1sAhOEFn9{pY`e$8=>5YYqD^vIk3jZA|w8~C1 z^fy6IIY*DQnogbb8C|B7(KR4eYLzt@I%B^=(>eV%8S+7pXL{JT8@g{9{y>ULXY8xY zaGxp7LFsjFDfMA zU;_DH4CIf1bRd7q;4^{zDFeA0*;@tjr<@bF0O>$hg$dFPWK}xm04g`5q2U~4=SxQJ zY_RA+{)+G#LKVngGmxJHtSH457;ee|Pxpd)4=7t{z<6}_fjQnlE@iUBw0W6_y<&?O zZ1;e&hYetE`(#d6H2=oS^s)hr<}kWM`>Xj`Mf0CLtQ8-5K-rfDFq)^t>RA>2`gl4y z$qS|%prbhgBi)61I-0*{H2;%Evbl;T!b6jlN z9BT6qKOk5*YE7mpf3lZbG6Vhox$r11;O*1N^Bd5HH^4vaGZ@WZ0qS@?hw(ZVYyV1~ zE!cD2Xdd1x8*o0wtVHSXDhRO`umZDfhjXoy3sYeG z1$f5J)jTG_aC$)k2pSH~-m?rx3u9cDX07vM&u_LU^jq6QZ`85RQ1*D>5TW zjuw>b0cFDsV2=Dz3DVR17%$UQ1DFsB(W~wWVTOmbVzCF5tu%lM;p|vFtKu#XQ^oUM z@QMLCA>ct9>oHnUt)tV`sm~Z%sm)twg9lg@joyB@ctN`tyzQwp)^(GkGD3CCyXGM*(+K43&66VX^Sy`C;Zr~u)~JT750;wtme@oL+1+neV6{9E9?=5jj{Nh zVPkYx8aiV!107=qAic^%A86iUv<)aZWGxa8``>g6SSmR%Zb7+tW&h4&fzUrV9*U2!HHt zNX_YO9@dJj9#D3N0Sw_jFoX_$tKtn0Qw4t-hnwo(4+iKEwj9g45cPBj7pM^S<0Q6% z&& zn5kxZ!7?w{=mBN78}I?*wf7=D*q36+aZw>;ROE8=1gqj+Z?$I)NL-Hdd{d2!fm78L zi5ZE$KC#NP@h)=3OWw-=G+-zy@6eSKeM4gv(6oCM3{5A-Ol4Jk>Xnjg3_&R$x>ES( z9=NFvxTp9>NlEuuuxzkL%AiKo|3u#muN3$E;wUL)UMalC%8j}-yHXmxQrzXqQBuzG zN;%&nWw$HkO0N_*IUXhDQje4h{_YAl z9-yCU9Dxez`tga@=s)<-?_QOl1Q=1Ho(W=Fyo;}A+xDmgMDMV>4QNC(4v(}Kv7~!s zO|^@$2riwjE+gB#xEtbib!)2qI+k&zwKkE>>$)LcPS%Cf?CVe|`7K+$Y;N=FZb&^9 zHQoN5K&|s^n=4UWgO{DHlhqGhM?HQoMe5pJA}M{h_w1QIl!kBPtdWt%c=jzNgEtZ8-`)_x;S@oQz7 z{6qYC0~D0QRAv7Nsy7X7CTo2kjq5}8h7;8O4d$1!<`mmzPWBY@t`#JFos8nY2%V;w zgf$Cq9;1{edS#tby>4YQS*lVrA!JL-Hw}qjlmLNSBvbr>Li` z;Z@V@7Ybn0Pl9TdU@s;cuRrLQ#1vHTlm&WCru*!Ii=9x3bCH<17CN13aJtRa{|Pf} zn@cI(SXU{m3wIh)tWHa9F2XcNmtm*cw_5i@St zzinF=^WsW~PXfR-((HaRBiSc=$uv9NPL0PTnQtX0SAc};VCE27`9qdZj!YhvT#cT` zrGN$g$sKV*hMk2VsFY)owQ06FPytaxgiN%)aEtnovBE zF6~&_7roN@sM5SH33wsG9R%D_HFPM}CAps&2UW9w%sdJXFcwjufJV^6QfQi2>f;G` z3_`ry`+;i65EOWZD48}H2a3} zfgxz`L~ncDS{sShj2~0psIJz=1~{~%y9l_ilx&|7PhY9f(kXhZtAS-zcJVq;VO*@y zxB-D~jgB{s!p3ZLg6Xk=6O9-^t-~Y`jI)z{a#uOwNnH@j+Acs9s*_=ybek$q=_<)V z&`pggm&_3utxP{HMuf&Lae9mhPR)06j08SSI;F(ohz z+utFYk)N51@UaK4Y-t|cxV(Pp%J~h0SC^O7mJKgn+PHk>>f(jVR}P-n*xF+Kcb1k5 zx^rmurH%6jFRZWsPl@=$oNjYnoJ|eQO9%50bPt|z%8W_Y;6*EzH4I+7qG9R$hQ$pn zD_aK7TG70urKzsIVQ@WE;-Bvxj24>lylzZb_dn{rx&{5~PO2xR^@65`mXby6x_gMF zSZm|51`uJNme%?68y4W$kK@LLEe)-jxv6zgb3@&Hw+^bKXz{WpT^c*q5}=xq*0`{7 z`GOUOsdYa7_@^motuunzG!=pt%Nttfvm%7MhmbeFvAIE2137jKI&B7KB!m^z0(<;% zD}8`wnwwVDHEYzeO79n%{j!A`*BQLX?CV`zw|xEungtzcr1qvcb&Q4@**3;qGZ7g6 z=7xn0tBn$Pa>|sS&jW~9*vujv)Hh$yfkTAyX93Ar#2|{ z75BLL^P3x5VtnK4S{g=_YgV{}*8s4o+iC3&;G%7sSG3YhFwKPV6C0ZF9D2j@`bM{D z%)5^Jq=+xo?mO$uGcO-=*7k-mXRZ->YetPZt9nea-|^jPi^v1c(Ck7n^m<%sb>f}; zbnJcc&VWqp@yy)<1;qp0t>ITOzsBIpj&}x<*@+i<+zsN_G=2%(Sj8N%`ZEPS6q5ly zzf{}?E!M0NeMdowm78LmUxef6wm&=)^|b4gfmBtSyMU5$;&wV^DjOyhFJr3w%SgC{r`I-Se!r!l~t#4tHvzi-f$~jH&pM2>D_Rvb>7n2IwaG&+T{)ZS7+xQB-wS>_q$rjUW05829rs} zBx6~~3$j>R>15v}I0x<^7gi<^p}4Yky`%1FuzUoLE+=b=$or7Ir(U z)HfOb0A;_QONnMwkRpOQy1m)j9p$W&vktR-HYugGeq)PwVR!=1SzEbsF<-vCy0LO? zBg?CUny8#_(j&-G>5STqezPW$ck0!CJ*zgl!%q9<$N&lZJ6=1mKQE$Oexbwp9fjJfv_-q2EE;>wirkn??JPhZ?&p0T4k^U zXNwj#I|qZ&rcqJfu7{u ztu4H&Y%oGHlHM@y2PW@!vR=E}!&Rf%G{cam3ird3G@DEBB$=cgrp-oOP@}ge&dJas z@~iSewKbg7FYW4fvnICc^=WR{uzB0+_S^6bGB>(r3dAa zWF{`36h_HB>M0j1kI@7UI?#g#O^ArZ=P+fx+h({Xl6pYXW4CfGGo^+w;;2Mmc?`RdBX!#r-dM)CMthb+UqtyyyC6~6_ z5~DIj%mB*MY>4T&>!Ws0TA=}#NmlcNLB7YB;ZdwySGov}LBGo|itkZP635N%aL7E% zOpFk^M*S{2f`Bxj)bhCR%6v4pce2Anv21U&Db0tFY&Kw)(D-J+Dw}ASU5PeNKz9)u zLE26|AM7-@&^Nt(&7j$$?!efvlS_<^tz^n-JiXnm4~*N5(@nnU&^a_(zk68DJEjHM zcAcEBZzyD|G`3pZD%u`n3QZe5F^6I(FYbG$W%k&AzX>5^VDp>WbfB| zZVtAvda}eLl&Mi%=bD&N<{@2LF=ZjkoFzTpYVJ0&_g-3C;dhRc2{N8>8!Z{eNNJ|i zEaiEpiwZ)9D=2AZ!MFgEw|v$jgLN!t6{Twex7|)kRkN4$e!p=*$$ag~%K6GQE|k5zrgUlD^I9!eb|JzIU#CiMn76Di3crzvt;Zqe5*bcLwAohPj-ff$+JlqR-s za?3r8%trvRraM)ZzkKpIn%~T;o{JJ)mXlGd37aUJ9Fg>+xpGT zVS7owH>~o6Q0L2M;e-bo!_sW%>HS8pWidD&SuG|ZL#gpw4h+1~K?!1U`8y$(c|+RX zti&+yAf8y`WW>%xYJ^^<7((GO!C%s9<5>HiidUna6p>j$1U><{feC;&c4|gT#rU|+|^ErlD8|&ZbOK^j2@js-l%pas%1E+Bfiwl+M7oqhQ zylGt1d_v05oi*%=LTA^2p=;;zV(?F1xr~j&3(+G{ZYKMXqcuP~ZOaU{4#(7Y5@4d& zF3Ad9)KRAi=pG!*l0A+`3sI}vjWkYt7R^BTJ&5#ncMAv12A1O!+tYDn80Uw2Heq)?xW|nRdyZ^e~>TaT|>L_6D*9ib&5gF7T z{Ah07^4as~J%uTWhIC%RVF-bF97t|nBhbMDY8voRlT^Tc={cs9QOT3avl7{I8|5#rkJ09K?D&+tR!9A@1sDB7UFOQ z-Vf$Zs+yW6gcVF>YTV)vd#Wfwz(PSxfSe&kjEIF12v))U#RD=`qG#?``^Nd1w+YKfVWkK3Yr@Eb=O-f%BUw!XH_LZ-RnY7?rVg$*SNU z9rT*GBeY+UToOu~nFYiSAf**qAJi;P4qD#)7oTuciH%^CZy`{GNv(seemhr$G#1WF zwV5t3a!KE}nOP#P1Nb(%^Mk!n&QAluG2K4I)C9?l)n&Ng=#f$no89_ht{JttqW@Cn zIK9SL_Hcp>JUiMSc6S>caVN8@coIRDh`}@M?L90)5&mNvlS(y-J_v0fC2y{(xT1ED zrg{CLvlmycRaVbm#>mrCuy`q1?#T%=vYO#O831Gk)np;3s4gak&o$L};#q#Si_fYt z6TzFESx-&=7Kll47VdB--v-x=e@` zqM9TjQQ26MOph@-bFvGKa=F;Lh8i%3Bc*(^6ih|9rtlh@3lk*S#8FOU;VC0BHQfQT zA;!8KJ#of$_Twp3(z!eDJ$*sLptW9G?w!PHl-1?!x@NwXW9Ou) zlF*tvW@^e<%pHG=vU=}<-1BlHetL!-r{c?RoLZPH1` z9>{yQ@L#=kxnme+aRxhBkEKxudFeFjOQ?cKPFd%aQxK^b!gxq*!-iefET}`YMi^y$ z7|Vc|i%I;3K18Ogc*d3OMrUw{fyAPEIMu3dY61x(yD)QqfPOC&ohuXff^c{srjl4~ z+rWt*NK1imz)NGBrUnDU z@i(^`j=bJrj^qj|Bg@_E@c~F5+swAb5#zQdIQRk{dcv0E6N;z3szAJy4+O!RgFJ8v;Tt17JqDV6( z@uVClxPzyn8dylMXblc#TF`Y@R#sLwuHcN5htK(8$BJA|lBwoiDHKG5O=PKBbvYWP zYmz)nQNj&;?LdjQWVVb+(|~NHfyZrJJ#$gil@TzNL841OGvhFNZ8zI+{55<7MRZ_s zyOdmX>J7W*SIZx;IkwS|Y-m~1m?mU#mAphDrCcgAFMo;go6ImqSwXQTL_j;c;a^r3 zmxN$)%kbc9WXMJ+2Zi#KwooDEtV(|x=a)P*41;^!p`{SDB*`SKnoZLI^-;TxvtNdU z=SX>2L?}H*K8Tze>6nQLLy7qcin-;Mj$sYSW=Yx-FB`TMdkq?oL!FL>Zu*w;c%W!I z98xkt+u;XXW4^Z)&JG6qFqC;{qaFhjR!P9+vu@bLja^g&z6k_i>dcJ^8S#Ko>sbVL ztS>3a>nW-Z{vyJ?J;En))WzgGW5X5y6$>>qieyNo$w$X?M{Rlyq9NfKmjuE%JMj}v ziQN!)G8mjCRA=|lMh&0X?6a&uZZ*>BxQ}gGDAKVHtvk}z zB+;AwUP|vJjx-igfUX>4yN~gL{PKrfIj8ti0-Vz7(nm3gN$BK&X_TI#vxM4sa<0qn z2quKVK|Zp-NlcX9Q1}$YVhHN4<-L&&U;44tgt|E(o7a0k{-6ugD&HF zbu4SiOqvH~5~>H3-^46wam!Nul5TMxYgrbl9Uhu8te79lY%8AW_8a9AMcXHKLR6BU zYvQ$D$u2!`l^nk_lR3=3)_Up81C`}M|KUf{^iXs$qc2v&5>&OX0+elkF~)MWw6~A( zlcX5G!=7n{!dSN2LNh2)Ej3`}8MQ41q2utwl#v%ZGyf?@iS;`99B3yCb<(7my)geL zC2*5WR9hsWGgK=pi096dXN1ELx-pSA|4z1RTe{e^t_Xi;VdM zLFv7@m>NzIv?NV$<7HWe+_Ll_NpN_!TOYZ(R$@Yy$umZUNT;loFPv*>CwZDlYts(N zp=5KoxU1>*U0mzt$koHet6HO$J3Zz~CZz-yrm!KodGe&1TQ+D|jKvG(QovOhpiLuQ zfGq;!d*HqzpDYLA=E-%s((E&kMM^n4skeExH1VPB+3 zSspk-vX44oAb3<CLGj2)ex|xg1kZWpZ6gp>VThtYyLKR8y?P{3Y99c@blop}IPbTdg; z@*xvEWJ6WP(M&Yb#`!iXFu7u7`38#sb3#bXNo08|yPfVn45p>#a)BG0L{}yr6wHdy zDzca6bxmhR1Ji}4LCoaAfWl+esz_Ux=6GfGoK${`NKgq6x}NqBC?Lhp$3jZmI~UqM z4oQYWeY8eevP}6?dX{`+l$>pTz~v&NnuK_}U+wMC6S>35v1!Y(v4!g)%MmnZz9>4e zUngg>58eAF;Nj7TSTUBV-ehL^+7|GAfD$8xMq==4b(?Ud~=f*s03%ZL1xrdv>9r5?FmO1G^N<2*3b~CAI zcY#a;LPMPQ6wcNaLG)swTlQHS1(*z!jFC^#Wo)-g`2^qSGO!t!7e?R4Sm(+^tLOkc zp{jCpQuBJKQ4m@)mC68Uk(CU;qSBtZx|EZeHYIE$XT?*h0B@5?xAmK5hwTW+BDpGz zy9}*m(JcZqYc4*dyUji!$J8<^alm@=L9porH7<0L6q!_69eFyKrPiq3fobJ1%5PHS zTuC9O`Iv(So=VEGl%AVu&Q|q_L$XW^eXGg7)j_s?b@}ooR>M}HX1hDwA?E`fe2)MR zGzTd=*fu4I4obSol1vlwECa91k`hbCwj+K}l-)XA`6f1h$g=HJP19y;^4is4dv|$C z%7bWQj&Zs1J8=&r@3oVsV6Nh>#q>Tn_#an45|2sAD6C6u`9hdPYhU@mw0weM0Hb^< z7Q?jM3cBDTj@*i^v`jLsaz#ET5>;OjH&V*)B4UxoryI~6Pd4ppvdK2*&cYB|H#M6L zJu!ZR>J}8%bkPy%M0v0bnzf%|%|@0;CJE*;YIt+^a_IoBU=(wDvT~v%`qE~eYG0|4V*X4&f+bxsH&-F|CTHiEP*L2_B_-h*GUga zvnErNjGTO3*XW+aKcmGDI)FB^=+_d_m@r@7LKBQOjh;!{9;6L+mJQ{{XDe9ttp<~) zsm|N19gsV&v!OydC$WWg^xSzbT*dAaTi7gOmA<9Y6dp4?h@?8c*UQ|x%7E+}YZ56V zt;Clt0WI0Kz#`6_!4&%vWGI#ukh?SznQri~_vL5b%T%v&bg)OVUqf&|$M zxl*)=Rx!c$9XyPyp-cvBMDX>*p?Z#SkabZW82*NoW|#3$?qb2sz#) zNhw|y0TNf#os*O2OsYdUonls*2S_o{IzwvL!!%nMm+^wcm94t^to=)AVd6kasU!Q5 zI#%mtsg>C9u+_RV>M)juNypDw9Zckl?1JttS#v%)E#ZJS-c7 zBZ1G8BA#+PSs5Xu$Z>ccDbu>7n996B_Kdjf4`%ypKE524@r_Q&mqj>X4`o1cjx?D5c4jHdCe&j#8AP!6_2L?panix$j0q!WUx=Z7DPV zR3a$SFl1t8<JCIn^e_-Q+HpaMjm?B40+QaTP zy9*Tt#uLhoA?7`{orp!+6-81^s^$%1SOiIu+Kq{|=8i7n#d0S3581P$a*dI?!cHqD z!XV-DrCqbOf@gl9SVBAO>`N03Z9AIZlNE7*Ro31vToN<8Y|fG6dA@RSg~DkHYCEL+ zs!f&*($t$VLnaW7TpL%@4oNYJqBX5eNL{9Ig`EcI@`^2iupg|2d%?z&M#s_>gUpvC z%;hj{Sxz!5enMzjT-F?>#GpI?%y+Ma6jU~`s=KD_L{H^}lg(5=+2ClBzCQ}8CM zyrnH4$V1wutS%>}9J1{X{<8(w#GPaAXJxgr0gLS^R7-8)-z8tVw@02}l5@_lY%E`3 z#0aV{Lz!SIxamfe4SCp_06R|Z;7A+Ml%%nw$oL-cT}u_MujQG446f`hb_N`;}S&24#+AR|D)9rS$6i#OF!>_7i>; z9Rq%<#4QB;p%S+k@P|v>QotW6aVG=*9cK)laXR2Hl(>@t^Govfq1;lyUn+5n0l!${ z76N{$#GMHEZM>?ckDi;L^6!%le%!C{NPtmoK95Ajr;Cak0lre89u4p&?}FOe_+)&G zCmhQj^(w{XR~-8NqOHe%#)tM#{K^Ce_*;%Tp6#8O;pTtpO+4q<8?wi~-<&i^W6VA7DJ3hyI>FtnB>^Q-9VQ_-((wIr|6MiKSalEZuhZt-Zz9-SWw}@uC-a z(|CdGmYFf!=Fi+J#{SsX91LO}%QzEj@)M=67q!*`41SqY>k%&?qtBf!`qemn2vM!3nlJkz+WtJO96kW#4QH= zVu@P__@xqeBH*{(SUxvF<=-d0pC9+Dbew}xZT@UW#ixsk8v(vjpdJnIChvmlIR6$; zn5W~sjo&ZYdhBO>Xgcp&AL%#;^+SvL%-3<=#B+W%9p~`#esvw^-@fQqq&vWPxOAL9 ztnB>^dw$j%_-((=>NvmgqF-NA$N4k2{EBM&nu9^wIoc{pUoUE{1sMD?r`980I#_R> zj`Jcxin%(@C;9Cq_nip%oh5D|;M+^wV!&T<-0^Jxr7XVu@mRrt|5J%u2>7cd?nJ`-8>w}I9u;E=u$}qmg6XqzxZ+f%07i~TEii0K!EXZ9(ub!tnB@aGW?s~z<2p|Mj6J9lV0Gpl;H=x+>3rihn@Fs1Tp8R zwJ7~>i&|>|2EWXy^*JvctT#s)eycw_NHI?tKIvtC+^>?XfS)RH3ju$y#4QGV(c@%O zhVkW+BWZ9k;MEeh5b)&^cOu}8@dgu@mVcwizvMkZ76OcV^JU>zy~3x8ifaLWzCc|K z@Xrd=jBEDK{MNrHimU~AyZ3xf^sC?G)aPwQk+lGW7O?F!3FheHc*Y%NLjeY%dHifc zGg|cn-oU0`HTMD6OWZ=h%@Vg5@bwb66!30|I~lOfMAk>zE#O}(aVG=*REb*(_}LP- z81QeDxP^e9D{&_R{=X$|Mytm7hu&W}DZr>UpOd2EK~Zrdz&|KZj|TV`-i4%9<6Aso zj#m9qZ{s(MwjO)j+xSVp!WIGkoTKJy)t~YvKI&I#)qtONT+*uXO+P`Q5Bem)csLK$ z+12`#y`RylpYR5L*{?HNHEulX1zt<5p73X0D8~NSmmCaY&e4xi`eIRQEx_QHIkkS! zO9$)C(W)QuB0-9IS~Yt^BGaN@C0PM~sKhM={L>}QTTk`vuityKU*XaKquP8fUGfU= zEGn)Acu=5bl)?}Bt#d_@wE%ylK+R0LeosW7%SDm30DrPT&1586err$^Sxe27e}{hS zA0A!gqkijSeig9;{&25vZZY6rC~->x|6++d8So!);+Q^CV*&q%5_dA-FPFHb zfd8n(Ee8CR61NcWpO&~20l&-B&U$X@LHRev|7+e~7$m@`HlIPF;0sgL|=BlyJdlN7CRcb8Y7af<>SbY0( z@zD1N7!OB{{joo+?EMT!|DHFX-@(*pMvcXduXusiQe*e}Gxv(IKlXnd3}VhvNKyKU zqSjh~!7p=aHNAAO-W)adSuYZ#n5V{0`;_aqV)T(@1$53#2N|>xrYUPs>bX2{Uyq)Rt z*(u&>(_YI{Z0|`|&ZzT*HG78b|-V*{lwrwxhk5y?$KR zj-Y>xzcW?;{)NKUSQJU{Ade0oG^v(ubjuTNaPI|<3(phF-A0OR%V_xf>- z#gr)T-OJ+oqf_-?{?1e~t|z8C5cQ(Hr>5$E{nm6RuFeioe5U^&_WF_oeU5$iI{xg5g`d^@~#vjjr*6ZunxAmFs@AUV7O&RfC)PK(F zKj-zIbi%qCDB24?c!|2>&p&pf7G9{>P?;G2*S-GNkElP*KVPG+o`0JEO)Skwv<~gs=yQ34I>9TJ;qW))pF;)9}Qv;r^|F@2) z|LxDD`gtfe@5OZecY6KlarQrzD!lg&uQ*jd+PUk9=YL*|#pg$2A6WW2L#rP;qW<^$ zuAkGPSdOUwZQz4pZ`XxpdSR#=Netmip2hUG@rk_7?bLz`+dKZ4o_^sn;+we~&@y84QV-kO37XHK}{-!Magh~AC zvatV?_}6D)*C+8Ovar{a_%~!>hbQshQrOo?{I_OdHz)BoXJHQ~@o&t+&Q0RqRM@de z{F}3|OOyD8tgt&{H;!lDR@jpr{yNFM(7 z5%|Az1b%4-FFCm(o1J&b`;FNvuTED`507QD^#2}jXMvx+8~^-W$KOANf1l%@oWgH| zKbDnr4msX4{478GvbXcXR6C!x^0R#PBKUdZI%>TC(b`$aK6(;h?DH4E^XTx3;a_=m zny;j$j=@*c{G;D^6@HrEmJI*OtJD1aJ>cIm){g*x_z3(5z~2&u#;$!Ue{&YUUG__S z*XPFr@2vIZgwB2*JkmS!`Nv1#KL>tkrgWD5n?Y zC-zVK&_Ch$_!Yev?`Isp;HvcnFaNtowEsuZzUvdko%;M2@C)d}Y5D!{N3^2=aNf9X z20xFU+I2P${{u(huO5M~f}b~!?IX%-W0uC1y?e>V8GoKSqWm*fK1!9>&sh1JiqEY8<#eM&7;qMGyE)_weM+O`B#ri~1a=P}6acyza$GV0r%D|Wj0>r;|$*Vse4a)YWrBxsYA^2{5&TKujHIXK;P3q9Dd;9<+Eol=INx+eB%tqCaT27rRAb@ zebCjpI~=u_<>ww*J#&eZPUatJIOiC?`|p3?V&&{|e%GnHPQ53+K&g|Y>$84m}kS@=+xW2lMk@c zbIWq-g$TwGN(WW-pO+_}n5sN;1b6g?y5%{CMir)Ft;$gb#c}qN=ex~0x!kJxnNG8Z z6~;W3CyR|8;vOWT8-7gA5pVvLREwU^oSiy@7;kDl9aJzeTn_Kkab&!zsAG+M-0?oI z^-RZc@aCvBH2+|TIR_|Czcg4*<2|XRIHt8c`(^CueyTEpu9LD>8~aBc1Z-!Q^ImoF smS+%VuHcj>_}ajx-h0l|kq34Q5^;vgkw-nu{pF diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/.packlist b/scripts/_Inline/lib/auto/coin_pl_802f/.packlist deleted file mode 100644 index a1ec9fb3..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_802f/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl b/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl deleted file mode 100644 index d0853740..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 802f637ee5841996d571c64882d5484d -name : coin_pl_802f -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:56:12 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so b/scripts/_Inline/lib/auto/coin_pl_802f/coin_pl_802f.so deleted file mode 100755 index 362c3b310d14afe9a15797039116c6e86c77fa9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63690 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äm_5N6d~MF*|z1?C24* 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 K_c8f*Xa5I9YSz&J diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/.packlist b/scripts/_Inline/lib/auto/coin_pl_807c/.packlist deleted file mode 100644 index 27a27c5b..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_807c/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl b/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl deleted file mode 100644 index be4aea77..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 807cbf1c94f3f17b7eda403ceaa7810d -name : coin_pl_807c -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 09:37:31 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so b/scripts/_Inline/lib/auto/coin_pl_807c/coin_pl_807c.so deleted file mode 100755 index f7bb40e772a6fbc1b36a4fe939f5c69e53a32ea1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66734 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 TIQZh&@AFL#lphKfAK?B!B%Q-Y diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/.packlist b/scripts/_Inline/lib/auto/coin_pl_8367/.packlist deleted file mode 100644 index 03b81b7a..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_8367/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl b/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl deleted file mode 100644 index 66db667b..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 83678ef08b0e07f0e98a7c606e7590e4 -name : coin_pl_8367 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:46:52 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so b/scripts/_Inline/lib/auto/coin_pl_8367/coin_pl_8367.so deleted file mode 100755 index 3e00c036f30d63c7de469e8f55d5870b884a23fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62515 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist b/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist deleted file mode 100644 index 3b9c03fa..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_97c1/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl b/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl deleted file mode 100644 index 9224abcb..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 97c15b664f17f9f76fdd8772ecf9a73f -name : coin_pl_97c1 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 16:52:52 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so b/scripts/_Inline/lib/auto/coin_pl_97c1/coin_pl_97c1.so deleted file mode 100755 index 7b04b6b22f77c954b4a0e0cd39f85f41652f4df0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63360 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist b/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist deleted file mode 100644 index 1e32e659..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl b/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl deleted file mode 100644 index ddcaa36c..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 9baf23db48918e69e7905a1c99e0a33d -name : coin_pl_9baf -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Wed Jun 11 17:47:30 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so b/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so deleted file mode 100755 index 64a1a0e7d21c501e012f8ff6565b66a687085ebb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 63690 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�ns>(W{dq) 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

RJ&P8rfA&IrUSlM;HCop-2&$= zNOkIO^wrKM;~6drFtUy3qR99IFOtYnfc+VlMj{G2mt5EM73mILCZPEHb5HWWeiz*b ze3@rUbRSRGHo*wu<$3p>EGw?* z&WHF3;_K6HyW2b$$eRQoe)wWJc4 z**!JOip7RDd(5WwIX=*6uCdR_A8m6~yjo_FW-H#9KDcTtMr@ep!+?6Hrf6^1gy%80A`e6xi4E*zb?dKFlyW$?9 z_9!OmiTjRY`<)pcxZ-}%o{B$8t1Iq*>~P-A z*V*eV^ZT&Fqj~7R9^*k}MgIFdU)-;c7oI8R&mXf-189zXnzM&rKVz>Re!boD`A$#8 z{Kxa(0f=NG|0ACNkzX?Z=gF(~NB&1W|D(TT{x6YNv={jw^Zbu_{)?CJlFP+F-k+d@ zr+L?3|I7_DO3p9J+ihe8HO4RQUng0A{^?0xc@Wn`tyJG#u-cf*&9=) zNSB^Q$N&4hP@3rflb-*{3HgWV=ikYz`uFj_|BC#t?neSgcjEqEeYpOlU-SBh%Z+@I zb{B|YoZel!H>G%DJyNFoaM~A7$p5#Gr1Ve6z<4pk`Cm05{|EjgW%$P+oC*1F^!&s9 zJob^4;Vvn-zANgF`~C^_KmO&E=@T#S%M2L#0{hMh`R7GgTu%*U7<$aEA=a zLHtXz&=Z6Bmt`UU2l3ZtA=d}-FGo(#^rH;koxLIpIo$tpclOFGPG_a&iLVrG1u-)*7WGLI~$gwDb4QeHKU2a?9N_00sm_g@G~QL@yR9G=)8;HFU_8P zemH|#xGNhS|2KL$Q$up-U5-C6g#S&)UmU`(S^32{2On=4ev}^m+{<}tsGLt(`cb-) zxE$B7N&Wq%l{1xHlwj(+egHgf9G*4&v(FFH)r;uJF6e5Qe)KCg!VlBijNzYsewd!$ z2;NQKzSd;f9pJAUz@&$}E&bK`Z=8M3(>wrvYE1g~O~8K`{LGm2e>nmF_u$91^Q(p* zl_%etkp3C)*xN_cU_^Y${9j-t0 zJ{}FcEAAN2`y3xXo%xife_%rS4}qUT{tWZWBNNg;Zt1KWBL4 zq|2Ficpbk0e_daF0bYqcGH%>n4PO0v%I)t+|2j*5brwI8^n}yl&6Yk=758~hA3u;2 z_$(%WWtKVLF%%3pQ%)_u2Y+xD15Yk!rJ!;1v@>z|JO(=UD z(4P1}pw6+ceM$R2VzQ&*waHf;VGXHwf~MSj+aV9J;z3S9oI7PyD}R_UJrhWVRhMD+iv=Fl-FH0GV%IEbsVFVaFW$H2k?kF|2Rn11$Rlv;Rx? zzMB1bMYynwm!?QpCA|-l1mf(vM10$JNZsiPpm{m^ScG@eF@!9yquUkz96racB HpPl_56%+zx diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist b/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist deleted file mode 100644 index 04c68429..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d4d2/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl b/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl deleted file mode 100644 index 43feea4b..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : d4d208af7449d66fdc17a596a1a8766c -name : coin_pl_d4d2 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:47:25 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so b/scripts/_Inline/lib/auto/coin_pl_d4d2/coin_pl_d4d2.so deleted file mode 100755 index d3eba05a4a7c706fd9180f0cc2a5919baf87b2c9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 69065 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist b/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist deleted file mode 100644 index d253dff7..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d7de/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl b/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl deleted file mode 100644 index 375dee8a..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : d7deb1ac07885685447dec0b1f012666 -name : coin_pl_d7de -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 09:38:08 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so b/scripts/_Inline/lib/auto/coin_pl_d7de/coin_pl_d7de.so deleted file mode 100755 index 40abfa9dd4d4c53396ada6bd7b5390a78e200815..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67010 zcmd4434B%66+U{-xtFjr?c7W^7YK664Uhx~0YX3^66ORVMg+wHLr5+p5R#aL$uSBj z5m8iXai&%+twV9B#i5qg39YSEt5T~KYqg1Wz!^v0_wBvU%?ZW!{r>O$-tQf__ndF< zwbxpE?X}k4XS%s)X5}o$wk>z_StnRT+cI@YnOpIpdtg~*)&wgK-?`RcMcb#R>OYR| z9;%Dny=8?}0cFJDv)k0~9;(aTeVJd8S>hhR)rSmRr?3?R7lf9Z~Q<_KmvOa`$e#lhKa-`@g$+^~^vcA3n3^EwmQ?-9O-z zzdb%+*dvd9R~F8B^5ci@UP+!q@R`5^Z2j@c!)E|KRC5?U?pA<<1bk?&k*094*^kFQ z3m=J3AwHw=3E@+M54S{oj>BgRK4E-ln{oJX8-&jYeDVpf(Oru0pE?33}y!G|_2#>d@g-?8`v@X5v}9-kz9yqoK5 z{ZJUhXP~E&?P+t;P|ux~)%p9|!|}pzUB5Xu+`&5PN!u-(_u=pzKfZkAEr+_^eQxW< z#7Ew~=KRl2ZFqJ1%$MIEk@>R;2hLfP{qWY0<$EuEB>!Ih<@v>#=PkZ7(*N@v6W>Vr z*|ce!z~aAdK8&z%J8dX`iM?wdZ{s)M|Fp-^+wCZzEsov}ql3pPXBdT#CI+tgf$}wI za4db+ga5J02g1O|lDqE*`26Yz%3p>)$Kt~=594$6HsS~PFxJ9H69do3=UDb!jq+pl zYZm%@EczFIK<;fnP=4kQ*zIp9KURM~f4xyJLd=Fatb^aecBKB;piXWQw%+i#pi02ry;}arsH9I zT<@&y*sF3T7;HCzFSln6ec51*UpD180g`^3p*QTT2}qm)>*FJb3&OgA`R+7)T1@hC z`42JlhmNBEwV~h11dq+7AMpe9>}%RF@(GUq{I4`s1Ke^>V%S`{ z5mR2pNeT0XHp{b$W zs$PbjRb8>*#Ok_eYjk--TYI#1!HLrwo13BwYL+%eb=|RRs%zKPkU>pj!?_@wv!;5! z;V`|irmZd7W=)?qFS>SabbVD#Lo0wenjLM5w$`*qtwpC)uc~Qis&0y|T^U_J#;U5U zZm(~x#0-Cvu3q6uc~ToSOcY?qqVFx%DU4q+MNI|9&lnU4N2FW5w6URcGy`Jh# zZ*Ex+M}QC1uB@)DUs=7ZrlB#WbBk)dGP<66vVSpyx3~tMKJAqHnla-_z<+*2OLSG; z=#nBWYieCxYqYJ6P3Kos%{*}iYRYTc>PZ=GjMlV8Pg=SnTH79zR@2kKtG4M9I-^>< zE>a6`XjevG+T7e;UE2(|X=$vk8($aIYGO=lS{l|wTiY7oBpa%Z2=oI4{ zuxxcBBEV{FSX#TZp`Ahs#}pP7wl#Z;Mm9y;*EYAVJXTd(dvhxs>sVFVq1!xF#>c_F zu&9@S#^&YA;b|UHSDlfyt?OIbo4qx<06a!R)82fRH8e&?Mr*y)rduOhYntl3;2Bn_fMpusC)!rcke#k;abNFtMnOd-vEB_1Yov9<|xlfB#2v8!OWRDrf6;c}7D6 zmco8(nJHV{zX3~LpVea6ljAn1;m%#U-ig(_=Vk6%e2JNV_L%c8w>)ghyUe`embDxxz2XCdQUmeYuv5HQ||VWb?ZFkJa=%n4o|sz zj>Edmo^tQ`#5Pa4d!9x59iDQYZ@JqZQ_enlePgeu-0KzlJmq;V6YTeU%Dv}S2R!A% zLx0dy&T}4j>++QIe9_$wdCC*rLhKKF%6pwRnQ>>oc<$wH!c(5&7GfXplzZ(T@|1hm zcVSPt_mn5kQ_gcecPsLg^BmRPCV0w?%c`m}PdU$x-L2eHZk86Rs>)N&^F()BNr`#-ARqbw1`EU>Y9#46Wr+lxcJmM+e=PA$il<)VH5Al>A@Rak~ zhr1p0ln-+Yu`l27zUaCLkyyUrN%2Ha#gTEB1jE*mAsg|XGN=qk#PuZTK6nJ%kaLN- zI`7`Ea4RuGx_hs}D~K7&-MbZDO3c*Py;I>ch#9)w+Z3Kp%oNz&q3|4HhEsQo!qbQa z@e+k65;K&$s}vqX%n5p`xX9#m?7J}SK;@F8LHj875)ct2JudXUn6E{c5hSoMPi0z zcZb5y5oZy%DExb3hG6#+g&!ei=yg{qd_OTmsJl$zUl22Nx{DOPjhG?R9ai`TVunh0 zK;dhM86w@5!j}^>G`bIc$NpbJ940=f@VUfv`R@G+w-VE(yZ0)*f|#z{y<6d>#B|~A zoeG~pOxNw+224LJ-_qw->0zsU)82OH$bRLJ+uW^uYo9VSDBoH-2D^pj`G?Cp-znd4 zSgv&zKY@nZO~X$XA2~>W1%14xcRcjJJM1g({C)ZF-kVZx?=SCsy8O@IuU73d&rJ$ zDT6kmOAM#dMFBKx9|Yz8m8N@@z7YCPLos+A*}u5^G%)C%kFRapPWdfEscRuk(fLGq z=QCX^Fbd^crePi5ou5x#u<(@fEdwtF!!47#mVbNX$d*Z!TZ+0C{Rb=ZpRVjYR1QOIIBchEDuC3kupuk2 z{Q&K^j`%=zV2i)&i?U?U{F#b<`wazglgc}v>MCcwuRc`S zxym|o@zk@XE}nWejM)K=tghjxRP4~t@-5bkEiK{hQVfM#pU8S}j(~GT=abzFP}lXv z*C^bYc@Sx)vhzb$`=L6=XQ3LuQ&c+Lrkbijyo09QdS1!sXCI;1$JHPoRP}FC#hL2x zBc*?N=SLX&uG`oI$+*1p%`+Ew=K>vL{NY0!f2c#VV*IJte~!N@{omtn$o}j2e?ty{K2_r{12lLJdAdE=ZxIE(R;frup0dZ zhMWA-X>2{xJCq3M|7O=fb@*o29jN{7sr1ipD5~=rdc+b|Zt>^Rk;*&&UfwyqqpH$jz%OADf}HTiq94HsQ?0Pju}^ zUGMxdR4V`K3r^aSgHK774Tu^m(ef62+S~l zfRe}%@cMHUX^)59M{}KpLgQg4YgRE2t3-y`s(Qi&n5Kr-!>fReHSlcvv~izq;NAvqzYw=&>Jl`4#UsnX9f>lpl4ChDyeROH|RDT^EvS z%dx$y6?MzD_4co)6P17c>~q(@ZpP7n`qyQu^nd!-5<~Xi{A+TImGZBVfW7@|CDhdZ zm8wXO@~>|{i}}~bIK;^I@~`hyHT~-)9QF9uLhypiK90g;`PZF_Sozlgm=X?5|JtUQ z(d3u1{y#Gq{c9zv{+oZzWj*|>78=C-tAvGHGYkDO|C#}@^sn;HvvRx2I~#Kksfnzz zvo7~Al3A$h3B^ZEW(Q~(HJOcmQO{&Smgu}j{oxf5)fGmQ%Fcgvg;diwyNW;~`^nCX=YM@E)_0FGAXtL20s=mitxZe2)%=LVC z2Woq~Wtb}O+J?eodCNLQti0s|MX9`HDN6Nxw}|!s=`9@yW~*xwDqVj$)_P|E>oGuM z!8tbH#j$W}<{{(*laDgcad$mp7NcMFRfF@|$4ZYad0qQ)^q+(Ch$`ja%ybu{<@rx_ z{nQj!)V>UhZOwg|+Lr(BJ749N;{9ElSc`-R1s>+PAU&n?i>?cy7uP?kHn|D4Q}@89 ztr?x~>1Ejkr~$z&#XR#WXjr~Ac`oS6w~jl7JM{E)ZS5RQvq94g(=?@qW}K$^{t$bV zd6K5_X_}#iCRNkCrfJ4%nm4KJ)^Ys|%?DcHhcwNbaY~;@HBG?KJgaH0Au6xvchp{oH$m2QV0Q^j2i)vkO?eW+^=tL=Bn`?O%SQr<_|VyRo-0 z0Q<4q3E!kKEo6`h*zZJ2T8I4-r1o7b#}c9o`@PtQu(())wc8@>4`II!d!C2x;i3au zhTd8Bx$`Z1UBDiY)K~D?nOv0fB>LcoM~<|RRt9Ft(43USwW7nC(tlFH*xVd8B@NQF zl?NTwb*iZ{u)#S)Vl31)8Q*pIuwLD(n&h9DV&rt(sYWl`Q_(C-HQ|ByG~=zh%t3(7km?E@Gyb+6dl zuPW!RW68T4^gBWSe>#`i8nEyGVvN_%HQc;W+1Tu-Km@jB^X>{|EnLjuYEg zqWyj>?A5*Oo^hUb)Hpw7_a0`n?AhG=4(@#hw}z^78^J4W*jzm2D163Ic=b`3_dvYu zcOHcwJqo{k6z)0-`~1E6@tzDf_ZoPq!AZI}_8gCU?cBY8?p|AV@58v)g55ZBuNk}d zV>q7N+)t!)G7Xq@x$QFb?mdC?4I}O4`gt+Z88T~UewZ+J zPs6pRn@2c#apMI&ZtIL8-10ng)5g`i%INFft8lNqZz&z|Nrei*Lbw1CA^}FZI;=eYWB;_evR2*YWCNe{hen2kl8H4{_n-D3HN3-`2Cq;ci@W_FbtC8=$A}s?$&kg)YiLl#KS(q|2>Aqce^UT3_bS!Tpj)+jKc?c7$>;WLw|mb{`h|hCH>RRL%IJhsO~?x zg@^wHwZBP#&OZ@i`b>U}rA-jir}7;h`e2~AmzBPsAzuAYQM0}seFt*+D+Uw*4C0{! zwc|;)9U$Q)9HdzOJ-Mh3uR=-UsYqIZKI`_e)r~0bb1vDVmDmK!_BoFVI}yQ7FII!m zhsnZ!8FHVvf|iRD|3cd&cFF(x5C{u@iNkod>+2YieXYa~;UD`FA}63oG-0$7@;Q@I zP8w%ZZiM0l1%M92evChD-ykH<;)U?fm@TJf& z`8nKz2_@cUkHZM0R9COF5^q<>6y6ELC*EOT9BON=#5?U`=c<@+Dc3^NfBzF_WB4M<{rYKxo;i-G>uN?MEq9YK+>!iN%RFoCzWesSYjl6E~!EzzlcI? z(i}>qC!oo^J`k??R`uemoELm`llieG;iOX+#F{MX)#P-eipWRUB%PsU3h@#9bSAwX z1`*F<*ptrED8!yEVfRHld$yDvN6)C(vTZE(7oxacd#)v>BeIhk3|}j~C28WjAWHiy z+%9RdI(#h)httnR|I#K7#o=6RK$uW z`!8^$25f+p_&^G7GbfFm)CcNR;Ko?eIIRG524zx-Mt<=<@>0?Sjf9w(3$&7bpcnX4 z5rIjKWSeQ91x`WI1=SJz47VWvI57*~{tMuX$)n-ZmOlWqB#)sF`9FpF$;FJ*ct+^; zpj0X*BTiu9ZL)A3BYF66L{Cu^WOR|!(MLJ%QiX)L92r8E{!F2Ocn+CGo^X>wA+ZO^ zK$htd%ogXu(sC+OnG*?%jo8cSx@)=O%E3T0wS+uz5roP)_bbXG@fEr)=Y68k1aT0) zC#$|ws7%zN_wvkJRbZ5h)#P%PMvKHV$d_`lM)l%b45(be?l_TkIst74Fd>xHzN*a% zr$qjUB2gMfybhVFm|EgZm^o#rMnc?(kxR+bC?F6lR!Y7`A(%QHZ4x&?-%wycs4rMO znTNm}$YNSAp@RO~k`WX*p!! zMAEhEE&xztdBh6M#;`!f&|NVZdA(%h_mWZ2OUCeCGDf&E`pu}AZ>4uU0FM2?9fEbr zfQnPCjQir4MFuRy;r(&bcsLJ-oBF;+&4m9^j8yiW@Vktq@u$HB2Aou7Wi-SeM(x1n z7Ar3^*Zu?MAo(H8kU7NO0MYOgIS9RrK_MRn1HkQ5SR0T-vJ{-8VCc9pn0Zjk5cbDs zA+U~{36^e&9b`$d=C5e%OqSg0rO9B)?+sh>vC~;nfiQRZ_yQ=AQDh^Ol);OgNRE66 zu@{38Yru4NZ$CNH5YSJ^ix?=P35kV-Qb*^en$ zWo386i!<8d&w#O#pTVS6mH7vIJ*=rM_k3^5xzJed`QDa$zPIH7kFuO8@mS6+>9L$! z(qlQdq{nim#ACVVdt1(h#&Un`ZMi?iEO!ljF7pKgC&()Ufcp(Blhq9HKN|=qt4n~X z*2Qmvbq4(mU)vHhE=?Z{PZS66l@+-F%NJy$a0MbcYnaYWLM*~ekd?3N0wNLS&l;{# zNQ7bVtPvW8#T!J04~-+2Jn`;GpwUlP5fzD>AUkW!LLD69exk7&O%|Ub$z+XtUQw2b zEOa7kysj%3yD|D%6Evz6#prL=L@lpMOv?kBr0W)m2BhAs$r_y{zK2g`m1?v^#9<20 zIzgj4@hz4>SyQ#1_2RaCpy?X5hyXHi)(nl-g)2^3V`a^{A6ok&9k#F$#96angrdI4 zW;p zqM5Z9em#b5cl*UnSX^XXq~RXFa1e4?7t>9Ak-dKL6=FQ=lIgPv_xZ(sy3~e0l@spw zi!`hsvNm2nmhb=s(Wy2aP?kLC7q7Fwm+IOszj%wpoto7lzxam4mmitQwuk-VYdXOe zt>peV@xf5QD?8!4;2b9=P^)cPtAlak9`@*34ZGq*Hf^o)=;yrqirnaCPpB{7H!Ig8=W+@C6|X>Am;- zU72pb5ToIKSx@FE*by&^snzQmZjKjM(30nlEbnR2|@;KVrvY$AKjrYaNOBh#u>JmON@Y(m7vy}zQ|wV<#LL&IX_Bpn^NePLLNf2!^W(2&pMSet-;?HPX~S zoFE^keF_bJBta%|Fh?2sM-$}t^phe}|5$>2nvp-o;NK+35_ueo_9e(oOym>nO6C9i6XZI2%kifEK!Ti0-_93Qf!jj6L=z%2fJWt81S``7ZToGx%Vl98deU8-2PGjwCsf{LeM*Hz&!l)c-t#wYcoBn<#<%#sCR}B7K%6AwauNwS?lxw*vIAHLXQts#c@tQpx-GKg5w$VTT zX7IOC{)ztkx*b;a9VzlKRXi)HGRHe>eWVIYr*X`Q}}NuSk(EQ@?J5x24Dt z*$Q|_WkL`R6GyEq-o*n@H)J|06vpYrpmHG2? z!*6#$&Y(TNH1>HgAm3ts`N|%t=HER5c{=?k!5NISj)h)8hN)ko!3P5JA~nAnd?+Aa zpg%}Q&zGB1hDgKQ>o7&=WMt!7GJ6IQRagjM=xylq{_3X zPsHKn8uTw!e$DwH*Wi7raxLvQ#PHjnD*co<)Y0?xUsC10)VIhfQTn``Dz62jtP)fI zN~*k!<2%9NS5xH>>OaxQKaeVKq`#hE>~%0zHqyRR4DL#m6Iowo@S#+>knuRx;KQkM z75#OZ!5wMR=6o^T;LU0BFU(gn4BnO|3mD%s4c?I^m#{yx4BnY05vMrIF?d&+3{d}a zgLkLNv5c1rgZHG#`{*BY4Bne2tLRU24c?a~577RV2JcUkMYPw61|LY1XHcJc1|Lk5 zL+PI<8Qhg7FM(mRsti7qCeNlmCmVb?O`bzM-{6jPc@6#X6oWUX%U9T+1qN?Rmp>)_ zLW6gtOWxegI@REvz|`k7gLkFNtLRUQ4BnkCCvko_-QYdx@+I2u41@Qk%NOWRXBxaO zT^^zQvm8C&?oXGCna>tGCCAg>4y4O0#`D>ZKCw8ME_10*wG&qU+?6g1nBSH-db#{b zx@@LBml=QhG+oAVJnEg(AjTK@EM5Md`Dmq6q}m@&muJx5njM}s<198q)^fbs4Bng} zPiH>A*eOx;+cM-d+UF8SuU~d#$PJwDH#&zD|D73fFmb2p->wW)@kLmyBpuElp{HSx1(tle}{+jXsn87=O^6$(KPZ+#2C{tPg zl+&u{cLn9~%m@3NI~3j>lnungK`MzUvS4GD8FO=I$-qM zACz??fdA^0EBhY^%9rRLmhVEv|6ovF!TCDDr~SJtC>L`+O7?00ITVzQ9M3dUe>f^A>4#;)_ZQ66@kz1SIK*j?VBD8a5A z>^8(dM|SmOw^btkwRTsIF7mLuvKKpp47;oLyX>Ze-NyKS%ptX8w_$ON-Nst4b{l)K zGsv*pbD#h`1>VR!(GK^$Qk{TIK^`?ZiYwpOD@2~!NI6QzUe2qoaSwuDtJe~6fG(wcvHS# zK%;EYfK1UZm5zgZ4dONA!G39U8(u!#jI7ZwU2`cC2jYM-cnXgz#NscMkf|@rmx(yI zLcib%s$Dr0hCwfjU%{YSPJ>=}FBMkabJ4fTCye)8)T{pnnf`a&XuKz@p&2}``6R~U z+8y38zP1++gA9-DWIPz482p;d_A`5rhA8m?0OVufb9uFE=`okgP_a1!wv;tF~b)`(4;KmKj3%>7uTb_fA$JxcT3y^p8W^<<|={W1?0T`$7$sP;z^8K|3O?Z@mAhpcuW7V z?pC^Z3E8RtV6AtCDDeU1Xuk@H_aU->gbOwJhc#eP6^3?e{7eWRxDG$v5)R#MUj-m@ z(A&^G>Wl+slvCkyfHRb4LY@W906D+%ZrYXTLJWqi?59%Dy({DSs7vxI5S16&ZGRTy zdS7p@_x0v_UvI8149N#D4x#&P{#Y7S&%P2lH{;rP{?J?EVdT@i0g0#JSWxo;Njd^7 zLB$6o8@;+qE(yvuf2`(*WO0?Yj2~t z&=}=4*C_I*aOlwA?8j92=ULfvFisiQ#pgmy;`8vB`hm%x<5<~fp!9ZPpmaOIu^lMg zPH<>l6cX>Eg9B6C?6MibH!x+E^6@;e9sL`a5>=>3e6J|o>{5$S7?`5Hu1xg7>_0F? zXQgtHiI^OiqO($!mPI)EBiaJ$+$k=22JvQ7<6;! zTYFHRYtZj{8}z&02K}zLL0xDJ`hCoxzsHGR$Z~$9QdgdwgMBF3xm77tBxhln5=wF0 zyKLF8Kqz2fnfweHB9v-ixjYVuD3qqoQJhGXd}1(Qx}z<$Nd5*Z$WVri1f6A3}7*Up34w?M}8VT_n6zZRPuc`}(RFL;i({&-S04DFBu2ER5i37@b zLs905?=eXIgWoAsBqk$@`e$j%30ODGJKf5-G5$et8(h=0-VzzX5Lv7!cVZfIl%XAirQwZc7d; z;*k6qRrskML1LkIfO zCX~62F89~IcY>06c?vWNy=GuY-a%*nn`s-i`c+J@j@w-UMfxqo(S67dI2v7I9rr*n z4=cuwv5tF?=Ro}y^6*!aaG1RVnjUw%kCSw!O*;oUXn1O8EsnE`!6ai`B9nfmO*Mk* z%aHIUa-8@PisQuKFuHaZ^7es2DfTApKY8Y_5#`t3K|%Y z*$BNsSq6q=5zI0uWMEjXg|RU?>V%UgUqfIH>Te)!j>9Pj4KQ$mOn`j{WgA!~r;zwK z1Iy*#G0hAbWMGxN5u-XNY~Ui<2fY}SV?P1?oyZdT4|Hu%uKlcn^>QF$bYa$ z1qQauuaOi7jj->x*mj-#6j3~=NIk8{JEL+$0`O>akLD6v+F0Wc8e_iz-oD5NTV9G; zeo%@1rox+T`90Z9v3~=0ymud`hEw3T2FnFgeuP2^k@Ge{KB%W*VZd+ak z#)I(85rz`yIJSJAeVb>lY3;RTCX&#gD*GKJ9~V#~x3PNAWrOo6!jDx`<3t#YFSGEP^F){rRkRc0T>`$%O8{N zKOA$2?H_^faFi#xae{=|3n3zWksTq)Y#iJEJK-3E$1g=hryjx#C30Tjeay5C$N)J9 zm~qnHf*EsOqvxa@YK5|sUc;fd4aq1w!27GryN^Me>{Pwj7Gf+qk)3(%Ol=mlpKFEA zctX(eU%<4Ks{saJM?y;8PBa{y=n_26TnGs!)heuB8M(nY9^i<-2ubc{=z(z}2| z)W)Qm_8N>BYGeLL^Ql8F6w|&&-Z9OdfyF{?8_1yqVnS_K@$gfGP^gX5BKpiGaf026 z6E{H9IKlIyI1z_qi0|Mjf)?M=Bfg_Yd`FM?jvnzHN^2#)qepy4kN6HFp35?b*~C*j zEoM`Xm`y!mHuZ?v)FWn7kC;t8Vm9@N*<{3Utp+id^ZZtexx7crrN{z}ya#9cF46z7F zCbIHk#j{*gVDaE`sS-<6o#wefe263xS$PP-V@d!qja*6mOrg#_CiRuKR%M{Og zah=jyqZUz)1RYt)QN{EkW~p}6jI&E_f8^rG%1IF6_hGm{6jxB&`-MS)tQI<9a326h8W#Hm@95HPh|F!k9jzBjashfT*Mr7t^ES>QO{qo8FakA=~{_-PFoChsU=odhlRU9y$qGN`!u9^Xxlk zL;&@>^zoOd4gFl{0a{*1$o`US532ilnd+{XUgq#51|+tF-1$2mHX=IDD=^r6;ox<|7 zS!BR7Xq9+(JZ8K|?pej)FvgGKA=(!$@g6QQMuuvHN0?YQjFE;pLJTF!(KT9I#GVsLB$QF_F-c{agi7c$cBj@LrXdUNcL?Rc}D-;mhh5=o& zL7|XXM6}@sg~H-R+G^uoh4RF+?9HVgD^w(Iqg6Kt$CKv-akc|=d6`0GVg)1eil{>6 z;@_C&BUfq(RpK>D*tSL0Ey8fEfsRR!LjO3yi;HoB7Kd}NM>Wtp5IKj>Es29LQ>0Bl z5N?SEA5c3hI5WoyTE|}x4~eYaio!gb3Fj?*v^%LI<^)S!7K{_mC?dAXMSnDrI%1Fq zd%j2!OsVAMvy$G$H);pT=RHie(OFkHnzj zLH;26QW3Fd9AhsLL@zqI zj8->Thlt2z=OGlzU!y)!>U@M_hEMYQi1|g4v8q6pW}&iJ-6CLeE#$N^&Yba!l+{+` zH_kni*^p~xvKtbJOm~J)aQV)3`ARik%u+W;;ASbcEmmZQ} zY4vfOzt){BN%FCM0%D-0Aepk{Uh1M(Y;U8K>`D+IjQ z#=Nr1XcJa8Z!ulYm8qC)BIg*GC!d3}L|P5)2zI&6bh3!Uv&Ko8=-PB$Oq&r*jq8;| zVNm5y1_PdJV3M-bd9mRc5{_KxEQ~Sfh%q_HVZ1ojr8AM)BbTVVa=cpbF4f#%TrOk{ z@kcIon!qJxO--W}xy*Gqvn;82mW9*fQu5#HcrM9_Bv71*L5K{KJ#uy|l7t@y4 zn$gLXml19^;_~ElCjK8AI6@|Kpm!K8VX(Z&jm|2pV{~-g98+d6*KD`MlwlOyY9t2q zi0m{Fw^zyYCvMN>AlmviW8APDM^F2yfw}DdolYNwqL#SJm6%dH+KT+#9if!kF+C_r zb@&%C@uN9wX+vL7_E{YuMU_0rNsNiq&AuE;~i4gt9kSCb>Zj+sRb#2zych|Y#4EAp^`xhbn^ z*7d+VYW;|-8nt%81Z!A%WV|!G6o0X0eYDNO%c?gcHRasQL9cK==kWt{)A=g5<=oF@ zYpt^e87pTCkK3Ke2-cj}as4N9z6#u&5=QDq6*f5+u!I41+49=Tn) zZO*Oq``yZGavtH}KB~sk%4R~2Jg$=UppBXMO_7wyGtSjeRa#s{>{G|g&a)Zr&pJOr z6`q$Jq%J7N@PR>AJp0F5wK5usRC5YIHhD&#b9kKmC!B!oh`i(Q87_H0mmcrBBPOSE zqWG7Ae%YP?*yWCye0?BbxABi831_t;@5Kgf3|0GgY|!puetqA-u)Lfj{DGrS5%T14 z3i?p#z?}L!a{kD`3G!{Kd&tqNmooWNt`a|X^xdg)Y12DCar7;&Dp^A{J~eQW+#Lq| z%*b6LeH^aO)dLw$q+ZTos`tu+vhYdVm{*g+4rJ%YnR!+6PR@UKZ ziu@_3%5Rh?zC$2qQ}nk6Z{ulkj2Tp_b=|bPW zNQ=Us2BxU%KCh#8UVXaT{*_uiKoW_EiOdT1 zVolDcK`f8vD59LZ!7sB?y&6M`lkLBQG-oC$=4*-!xNhbGb(zshjPH+&&O^qWScV1V zE_7l@G1qDEL-9+H4H>5qE*-%YhLp5G8KiS@Cq{nA`12IX5KAIJ6EtN=%*g^eUZb#h zknJXFlxHPYp<#IFh-)aW03I>4P*+(Z4vGvNrI8TXL`7OaKr985p`*30gsg(MVdkBd zV+|{uG8KGYfbR?|;vv)yw=FHQhK)W6hyw~Z+8Q>7&>!iz*a0464IArXKk!&pg z>{Ya0q%qkIe+g}ln1U9Uz_t=EL6DW_<$Z%9@glNGUV&?(I;4=i;jW2xW3=){P!o>G zJ~&g}NR2|`E<|-+p+;db3(JeVQ5xlmt1()6qctiLkFsv8MiaycxLMvfIxLqmBMvzE zttwH|Zaisd%f0O8ZKnM`TUNji^Y3uD%tWTP<*S2$e{SS;;i@>gnEwky zf5?{Sz~S@naTY6ihw)567_(1pK%(rK8}2l zgZw9lZ#2VxK6xG6zv#;M$w}ANXNG*A3?qZ(|J}6j z@XLqbSNU(6_M81OpX2qGvs$&^=9dM1fV-S(u)+H-e)%Z-cgR_)`n%6BGw4X4Ip-<* z{eF2m`}?`!cL4R&|4UPU&@YdpzTY?(EBY?Kyp!Yot=oUU6o``i?@j$-zZ^?>aXu}- zqmSHj9B{mk0SEu+BhO%cg3sKw=p#3B{E|)m-ahh5%q{uS)bHyf&&TAEpXy_BfPeHs z+GgI16Lju4K{t&Pbe=fDA&(OrIGp3DV;V6|@b&FD!8fO~hhS#NPxCP?q>Jpd`_ZYi zyAaCR={yHbTL9nA&Y)^mq7Azr2!_7`iI{Nrj{JeM+9HtIy!8f=wa~AG+%o&V39&v(~JL5zGN|Fy@x+n@(IadP6 z)7a=_hqD&Mrr=4b;3*ETU@=>~2z`SK)dP6U76MTbJk>zlNW`E8PcsvASl$k{!9|KI zvIT?{!AQxU!5HD-V(0aku(Nv!TjB~!!81j{rRHvSKwdHw+-eQPYx0{QyD0d3hwrXw zrJr#5NQu!4K4s2e@K_3#QNgE8Z9pz41boKS;-mv&_8FmJi9TDwXBAhiG+%}rCW0S0 zYal4UZB2_6{7^lCnNR&bQVQj$t{zfd#R+)uQ|D$7r_{8rw}PJ;^H?bj>#X4C=Dxom z*_X~!B&%KBY6TCQ3M+-z#DZUW>ArD3h|zs(^fq+gxt+9z1%jVA1InSJ68nYHH)ky7 zyx`YLot$@v;rM$c(@OpwJSH#ro)bk2c_YRo_-`|CxPprbDfqss;-EKj96xp{paTaz zj}|(jRKlq_hLvwmCqIz`j|~o2&oaqwy2%Ki@gdCc!71tishocx4F}77!!Y(ahlb#I zs&6}wFQz+B^U)`AGC9!Gee6okKswkA-%1=q5Z~udt^x0=;Dzc*F8Nz_=^`Ib*fDVO z8!Fympe^Sj$pkNsJ-BszAHYju4{ntp4uTsD6ml4*tKdchljQYmyGbPocKQJ3#o(nr z#w#D(+Qhb(85ow57TRox^W^7P0R=k^ERv_j0bXw41UU<-Ik?4l2wlQVEx$)*3tr*V zR}9LnVO7Cj`(CL)-`8?b_Nb@Va?YkfANKu)c1Zph!i$14{b$X=(ESEB3C{AnH~wEB zx7n(SL-!=6C-_W!b28QH%T78b6m)dZ1L*7d`*T7sko#v`EFi$p8?Gp_g zfzjZDdU1lPWapn9*mLmu@X&ANkMbn?QN9C2|oIh{Tj@Yu{k+&F3d+S3TJdCHvvfgyj{lS z$*u#HgLB4~WOE5!CSX>`xFT8mv5*JQGGlA9Ud08ZjVzOKrGfZmoKS)MC3uE;U8Ep| z&$7cO#SB=rAW#L3nYTkwq##vWJV^{m07}!z6~8%iA@~;rsaNRN!*LDJDG0qf4`Fp3 z2D~7fhh%sO;;&$!W-ml1OkZ#uZH56B?~wgqjWWa{bgn>667X3usV`8juFDpCDQn0Z zif1_7(qFV8>4^R)2Pc#I}b zKgB~xcLmd^0~fI3@2s6})+e_33Cas*Xt>7~w-C}Du2CFScT*v-4YQy4<_5gKWrM3FA zA2Iz1j2b5xZ1Ic(3Q^~1ek)!{I4Oqx45Wf4-GGmj;Wiv<`+oxMun6jpW5@5`f>FoQB1NM(B+Jc zfy)*7Hhkx)H{1BOfVW9I957>3;66q6YkX&_7qYd?kyBs_f5wJ1zGG1sfrnXzv(uq_ z;Q(-V3V(*~`wEK?CH}(C!}!s-!b{K~&Pq;2zsobS(?eBQVYJlL;qf9|D za^`z$ia5m@wFH9W=~8@oM-|4Sl}`-<9|nvQm(Aoif8!2|d9*I_53g$gap8qn=30f{ zz=Q3=Z;*8yR;}2os?b}j@KnV1M^>R9yAHeXDI~&=Y|CE*b%!^TLp=YS(k@pneq)Jv zkBbLE9t-*gMhyQLh3Youh!K3Ij_Ln%4D5)J`lqafh(l}@iWazgVE5laEMks zEXHAM3x|?SFS<$PAA-52aM&guJ`6LD%6S}zeM^eQ_dNx(EPv*@XaWz}p^L&8pyPKa zbq9;S2-Kp9n)x_w-YgKRVGdjVKct{~(qG8!)S}Yas1Z{ktLOw0ky~9F&=ii46DhI$ zOA#JLWjUzyN1({)Tq-i!Zcl~>q^gT?+hAR8cbh$r?LVTy82&uBoyu9a5}&bUNTGHb zYc>HE-)QKg^>6?bjD7S~xZc#@mgM>g=$08+EBB z@myC9MShx;0LRv~lPT@mg=~PXIk%D5T9Az04o#e&GAQpM%tKCfZf8Px8?ZD0$n8hy zQfaXlO!t7|Qw+ElWG^gW?-w}d4=8@gfJ11vGS<#2?PJD4^^Yg~+!PpTfNVg?3T|!f^=t ziTELU%O1#3UI|#d#BigB-+<0)4=?7Aws50|->-}5<;5MQ{8Z@unp<9i9@wMN0Y`L< zv*+7IR`C|MJ?K7h>CpaKQ+^G~6Q~l#ehtcRG3C2ap3_r)g4uD(f#R=@|2nmhSU_;+G6y zjJ*(RhZr;CpkvGn_?xNRbd2rBQNiixoQkpEGREGcefT;jH`Tt&0}x{&Pt{9a(Cr2M zJz#F+P~y79560MN`(n&Ac8;1N+&>T=z~sqI#?wE}gfpFv5<7>3%9FB*&5d=It)|Sc z2vvCHGQ6fGSk{y~hJkn}rzYRkyD!qQn9o>ThuY#6qu=ZB=9Dv(`};n%7pnNNiZ3v= zU!it{u0?RL5)rl8R0dbz4_X7?=a=l(drsg zE>5+IcboFFQ2q-K{hOw|1?BtPa>l*N3h$fRPSn2Z)+!yuV5{^qQ_B!8b|}e*r9Q0Wmk_soTBa zryfxJD+7Ls&N>j%6Ujx)lbAAp>me`wix<4<0mYvhz~nYnG1B4uotG%l7?0uH=#{3z znXd`QR4(v<;&BEroNtM>vr3~LqS8%Xu+;z^&S4noE40(${4&G&OB$)n+hmRhSf%+M zy-UY>L4_CG;AvFi`o>Y=JR~+{j<)}fm5e=Fh4XIHvEZ%Q~aPoW=-pa`np_*)D zzK&u4Mi(PYIQU{PXGsPoubguG8Z?8zo)h6(O%o=~8qka|G@+FkbwgwF0Z6bAEgo+u zEYTTH8jWPRHz{KopjM@G;r_eF`h9_p6lfO zV3l@yO?Isp{M-w^ z_B1MSedDN@9p#DHe?k*`ri$5s@uXYKeiAgY&splOaA(qKE<>4)*;$O)y@YBCF6R`? zU&z-h+zJNi2wYp!A$%f3cq!poNHF$1)@}kU9%*E$^>2+1VFcC$Q>@m%x>(J0b4)qc zzkhYhW9wgArFCS0g@%mr_pu>kL@zPrjK6qv%w7JfzYmPwv3#&8KOgihhJGH(k2mFQ zC_mqnGcznyvMq>9~78M|A6bnL3i?*a9Et7<3jg#x1?NUxl~Ca;sS z&_bP^e#6+^M5to-TgL9AfTdQLTAFap4Xa}vyJJ0|c)9^xIj^eqL=&gl6FrorOTA!~ z2NYjy05jR$iiZx{EncGQ4Pe;5>J_BIcBhB5bdLuVKVbmFHXc^c3j(Y3a}QBz=3q;0 zDmM)@K!+`^Wm!?QD^n|HTU}7#nQ7^tybKO_fK|!|V!0`H{6(o4_^THbc%+uNesNUX z_MDzhwHt=RlZ0)TnRf2qDsiwLw*% z{b`OqN-`xkM{&_rnQn+Oon891p-{&08!`f`^i+>QN|$)S8ZX%D1$TKs@$U^-h9DKo z^k83zA;)=siIK!r;CP(fc$>X#z~yK*(=_9(f3mtrFhAaRLagy3ymngpp0{yd)1L>> zc#Ccv@8eAxZc4O!VG5$-W2Ul7rN~dMsi;FqyI*Q8}FPD=%T(Xv{{>S@P zdAYdD{-d~@>gCer;j-A}veC=MU5FgTg+CU^jiXuoV-J^~x?FDca&c4QQCx2Ea4G$z z7yQNxp7DUjC-!wlLI9cnNwRZ%um4hZH*1@M=}q+i_-8 z)MgXeG*XZgsx`-c0IQ{OC;8PY#WquEkne?~;eDwMn5EULA=X?w z3w}}3nqu3`aGq*j?gxi25>fp(p@W_&O_T7h8*1Oja=N5js`pfErXE!bt~>HjvCy&Y zS#Dua9VxC!b5R&4PR4feRn=9iWFRQCw2YDAj_kXU<*N+mrY}@86 ztzU<)uzv@iC|qN6ePI8B<@^GBUQ({K^CdV}*=ja*Tl_5@m(u@WQ-;m+`XJjvi|QdL zFV&oQMz3G=F}D8)NJfp-D)Nk8HPVVz+7I(*6)xe$)cn<_UX{OC8lI z7;Ola*om*g;NWQUv^{tlN2}6yF!L6jZreO%*F%d(R}-*+FSc!-sB5cGZ791FemHWm zR+fu>UCEmU)`|9m%Hixe_7PaDNk%Xgt2mwt0r5 z*|niWt6gcQVeT0}-?q7eIl8vOu7gcSk5uPtHrGU&qG#|bZ9fE$m}c8t8M!0z3f!b< zwH^s3UES-sc7Ir+VPcDb*e#(-VDifK0X1>;MEixmIH0 z2`Iu5l;cs0SZN}W58b9*)wF*)dNvt}YJe$)Hn?kPETaJaz>MLh zdU0G&FA@`z6O$6zmq9TRiYDBn9cu@pS6Uxco72MqPo%qpfXB^EITY*RJj9HHYB@A! z9tDRPiztvsBj{ntH{zB0cmx?k6X*7RxEeA93LfG}q)k-gk$%_i3Kr(UD%qF}MvYSj zE%JLzKf2JKlB6An0_kIAaX+4>24GB|m~9>S-Pq!o-w+meUSh*Lacu-P9(VaAw&f&T z&8wOvZUti2%e@!x3E*wqmCTOs;XNgZBRCNSW?Wf6siz*dU9gsmqtsGJvZ#V(ouChY zG%bl}N)NdMjmiv!3CV0~OshV_l6q-1&1hu^@z9j()ND7ShmBTpCJKzxvwl`jJ*Cc0 zgn80zDq7xClZ^nYh$)arqfb`Wo)asCR&L>3Z=t5Ej1{4=E;_N$;vf!7Dpt0e*P8;7 zSO)DJYc&=Kw*3tv7tHt(#C%T~a)%WG@@lOz5LqARY4vL)KuIEsJec+~Wh=FhZ7)i&mv4n%d~7TByXofjkNlTJdmXj9Kr$jJ&Q5{p(#+%aZo>Ez!2Z zdUoAC#A2wuVO11`uuofiU0rk;j{P`pSl$+G*TgOD^{vsGI=2m)qiV&f7F`=V)*PUk z;nuLcp=nvOA!@I~Us^O3?KOrmMN=VY(G+d3V?!`^55cdlp*5xbj zfqkue05PpCYie3`aoZZbUvBoRmTO#NaJ|{ry11sPZoMW!M;fTT5vPtJsDZLE?wW|e z(6>gHN7or`@R*9JU&{lqSl-Gi9Mrb1Z*dJ#UsKn-Ru{KM(NUvxOHFHA)ErNrHodv2 zt-YqHof6^7)2E%ZbVan5EEJlyzCAj%wY7#?sDkPB(b|=5t5>li*5k;B~xepT{I;07bI|GG~Ucvs8C66)VTGut2rRF#|BY)>DDP*p~7u; z`>{3nf7K;?sp6K6zGP>N?Q1LaB|qY86N`MwbHuyiGbcCQ^FKqRJ0mij3F%HeW{ir) znznXCVLP9QZES8@9#&ucZQ$mcA%oUwP87Kd)HbOtJ{}N zsIEgoY>$<$F{LWA_cTQosm5dUEvt}$tD~*0P0iNID59#>s;)*>Dbl;qdN)Sz#_C6v_wd$b~fK}Vr+!h5VP#FalRac(60I@qSx)xbt zR%`RBQ`%b_nwDFQ(RJw0>SfC;)&1(WwKZ+^)%g8d{EjBx7^vo)fTUc_C*CU9@!FbN z{03A-ZS$&@227*Nt%|y(=zkkB`r2w{N(&8`ZD1W%FKt}8x*9i$aYbwTG@W^>TBFPG zb^#nl>?G5dXQEUFp*)tba#YRSJ)>N}9TBrJDRaI6axmNSRl=|w%Xw&lcdQ5TE%NknS z(1W_>wzXIR)Z?{cj4;Pj4=$S2H#e`WMlPE3~eJjOeoJ#+vo$L<2=)xY}!4Ion5@)>v&dYoe%a zYj13>RsMk)4|9>*A9rYKn;V<|ugcCnNV5B??{~ejw6*h->7H)&V;;6c8Oo$ENd=pbgsMC&s4@mZB}xh$xq=fx z99tEoDlSrhNGgO%VahiAVFh9vs)F+Qp5Hn5_Os-4?an>-^zZ#Uzwdec?)^1CKh@sO zI~&hr?O|(xEb}r*8k$@s=l!v}LB`JlUc8twflLx@?q~G|OM}kR#qGUXi;kq;9X31p zR;z|sRr@>0v3hQEao8VjSlkpCrgbZfHAjX}&tlRE%vA8HU%^^clL%tC@ip_;AY1L5NV~S(+?3#SdlWZl*j#OOdTpeFejr|b2BDtyH->rLu&OuQ>+tM+waaL; zR++4Pe7R{=13(poYBn`gDa{`IVLR$FE*{G+$p? zTerDq&LmY?W&u*RgTaAZXy*%x!;%KfM81RM)WF|4}~>le_~uT6!Cu!GQUd0vNKu z8uimOgoV*yq?SibPv)b!y^|dsNmRST4PhFKW21qP1eTj>s&0TLyIRK708ZiAFtmI1 zyuZ`j0$aKVnnBYtoxX|RUalo;;v^-tN$u@Uy>C)(5^n2?2Au=FdYz+k-ccGGjh>@z zzP2uptJ>IVb!y-^YVw=%zLJ*d-;-DOG_dz<44bX`J#x(QZY!_LA~n=V+*|~T|ESVZRT{AgsE*B+o2Q#8|m&W zA$_a4+sGcdyt=|~%O)jdvgcY{7=Rj+#H88I^Surb1_o3Cc4pJ038kp!wG-}Y(vxcF zH4e29R(#4QAgkBUtgqyct~`Mp_L(`iYnaj+kXTLNZ5Yj}=%Ac6 zCY=ZGw>2CkYGvhT&YioqvbN@3Q&TZuB-ckrLQfXmR?onv-T-1*Tp6QhSWn3<+PVd_ zXi&HF1j1TJLo=k3JoIe2^PPl7zNteqYRjZ+56`=eGBIr{6;!P^lX~GOUlYKvd1$_J zEMK~MWhGxdbM4G!nk|H6=PutL)TklQfB7sEf1xobHH&KRHM%YHyfM)>Gq8_i^67AO z53EEP^LK0+=M5<{Wlxz1Xc`fn@w@g8T4~f7Y zOavk*0|C<}4Z8rQIY3{^yadeo3G8k@*cC1qaCEw6d;mx;lb9dEG&2WjOy5Uz6BW#u z(i+_7Ed5UuUDvOG_q$gXc@}db|du;BSzyMh7jv@yR(J;WgW{giLG{Q8yTys z7tgG%$Yfnxzs3qlDtsGlgi6|IC`f_vV^G}K?CjOG>@Z+tR`(^kl8jobWf0aN_*7NL z089>|(G)amEikH{ai%@LPhotP;gFX+tNv-8M=AH&WAJhPA$NAD+H+c)7YS!rq<1=a>V6V1X!W%{l zjecVdOUNd^qqZ*tP$nte;U2alR=D)L*6p5VBCIl04=UrdqEhtV;3>x@G`j-xXTQ

Scas8pSz8Bg$D5pxWY~Fm+hoi^+`4c$tnmuA5_1uAV=? zw!+M@pau+qDe0cuo7=6<2Eb7V4f(!~d&Ue(DRvPTGs%|Eo(F{FM5Hd#K)G%qqh>X* zobpZF5VV*^3F|TmEy9uNF@yvk$C0cSMvI$PYPU2wu8s+Ln>OK)Y&^5s8QO#l`%=`D z%BXE(O*Ao#fM;gl!gY-VD+LWj(++y9Y8wj)ARX_8>?PbJr>&7HYAO|O{({x2k-)(q zA$TlwR&Y;4dZuG+%j`lB7_0^ z0lOS|kddz8l@o$sHk1E7H2>S=7^$^UM)4$w$HY18HZdtEzp7;e5(CLq;XiMGV53t%vT3vlqS1m?tW}dHs~oQYlZ^5Qo!!QsM3O0$i^t*;m>?+a z?R~Jh@W|0l3Fd5-9mWb3@S2S&QP@08bG!D~*-I-os#nfmMa|MuxR?c5?(qUsbDGv3 zPB{VxT$o>|p_b$#+?roZ=qx|m!Pr!vajFgb*OHrW0+L^A)LP33Tqq)PUcJ`%NYK-Gn#2)iF*#=RcNvXbRtiiw6jG=mA{^eRHSBHNj27M|E`18pYHDO- zG`DaFH968YfRj+stRRNm)=&yz*|KUOSyY%8;iRO;q_UG8B7_*3I*+ed-sHxqAJTPh zlv&06_{xZmTw6bLZ9RNUlU6g5&!hm6R{6E+>dNJF?|$&!i)t~Yb=$I<1bHCdh_Su2 znbl=eI^^ES(Jz9av@p&1G5j&%a%8%Sr1iRBs z8XWXXE2zqvXdW{AGRv8~SV8@9Pk5*FS(1%&pEN9y6C6MTh_qzKje+Lg!4C6txX08Z zqY`ieh+P@FW>S}~uE{ufnEW=3H8Ur#3KWt<4#;Wggl{ahDaTAAF~kf3P0#@Q<5nkF zE;HENZZ*#r740@{(cc02E5kh&!(O9aVMRwE$XX*`UZar$4qYsjvC>n2SvNxzD&~Pj z9?W{f?*Z0Wur*B0>ULwVe}r-?{gPH~Lvw^1*FjQyePFu4D@O`9FbFd;dI}h|v76;Q zm^M=EgaUT>wojbRz8LkIlMc-301~gsK~J5nGPvjsSzP476vOLGK`gn>wQh6TdoEig z-?9*4#)S1_aS6rW3dLaapg~Kr%fJ`8zfU9R{jkOVEq>jtSp6lYKnzDQ2gZ&63fhu`j$u=q z#fk_%(_oHd#;_aZp>bL0#EcDl0f&LzT~_gPai7YSUNX(ZnYkQ$2;wd%4LN(&=d zhZ+gj)0>A1cqN@=LYg{cF?_09zkcSDMpp=L7(t*(_AdRf@!D>-k@y>^csWaOF_{$9 z^U)i0%q9*yGW70&=3SlF-&G&W)J=jVyP13MMAKJ_Zah7TWRSMA!;^l(btFVHkNtmUY#RYVBVGDEd)*o zViC6(Tfd-|Z$_96ZGjB7V{BT4hnU33spP5Oc$VSVQ(p~HNsqY*ykR{OGT9ETeuD|# zmTTDWA0R7`U)mbNNn)!;(Ny=F_ptL= z&D%pP9A{lhhAtXezErX2L7^-KVVDeR%xrMdbKts&PrtMROq7!VVPe=95=T0N=>t}F zj;z-RhD|pydxDt}x5n&iQ$i8{eC*1jSFS#OCB-choSAS_niQqHxYiL4fxCjX$m^YF zP}OD>4}A;&!TU93oBJ&Dj29AUg*HKMp>k~xzJdAEw< zwR@;1##`o$R%MD&3uI!V(n^xaq@H*H%fd~gp{ov03^3?)fFUBJnq*($04??y5L&Gk zS}+-b_q`Jf&DYIvAgHF;3=*GAr=#q!M$FaR0$PaywP!tHw#<++XjKK}odhE71zFr& zOIFgw){nVPM@NQmRkIwKQTZC3UZafnw|(-)mP4{kZ3(Sav&$E*6EJsyF%#FfCNH14 zP+cxS4gZ^>2O1aCO)P6IR==XZTI!ab zUfaG3z=i#!FtK0<%N_-RR$(2H zWyG{oAG!`!q(JJ%BP_+TO;H}-XVyMRvKJE+Qx3tDq)529!RSg`QtLX#A>h(=ZRyGk z9x(_L@F0cB&`-9T%%kR(bs7<4M?k?1cvU)R(}-%fJyQ${j8K*&dn_3DvWKoUyNz}o z`@HZ3W7|YVY0)RT%ZBPkb8d4sXA-9g{OhDO z0p_#iIDMLvh>BKs_c{j%nD%PR{b2MCO&O~wgq1}ruiL_&3F%BRpq?-v@O9k6mqW`2 z5W(G2<*r;gCs=Rc&?y)})6FGpM1o41TBRH{JD_6&A2Qr+BPCO*B-k924L;f6h9Npt5O?5#+s>==dPVgBI0s2 zyJo+VPB3jCY&~ZiQBZ(I$)wvZM{|$;eAXgyB$T@ptwo*9tuk#cIi$JG9)85c-XzBT zS~5G(>3Ay1O0d|aRI0R&tQpi&YuMgHXk`@2Hj+DBO@5=?VKm#F!46Rx#=$q-snBeqiRgEBxNVpSBqgXCTiH_eiV7(x zWCA>V_k$GJ>&Qy6nPgSlbDU`cZOdB^3)qvb)R!U|dZNYT-6S8khQaT)lg(g;;jX#r z42ngBq#p{$F~N;=ph2fZku*9^UUe6{YBH>j4W!fU)y4=HE}dV=qP)YPP1!L>~=^e zNjV{AHk$7Gc;{87_G5I)1mP8t=b z0)1_$Vlf;w6c?Rd*@{#HadTRFvO|j$g|EQ~8J4!eq`>+~zEAm-R_QCGXBT*I!dH5K zx`k%j%Rm`@YAD&TEJcJt@zLb+VDUDX@qQycf1MrdsByGR!=$~u6c9uirKuElDeQ>+ z$h%Qj783+pXc_=IhFh$#cQV-&vvS)WgVvtTvgP1Xib~`k117B%Fst|B|}Bn_a9AKvHL7;iawh^6pzx*3n4~;3jHjv2t|a^mmV{<{WY@$B^-Ki&2E|?vpoX* zKvsAHmRXNXVU(D<<>3{Xp69EVR!E#CWpjrpUad*!KM8{=F#w01@?6h;rUwosI`Y@F z#~_$Y4hwtpV0hKGGI-3Yg;~L)8iZoxQuQ<6T5wZCa>Wv5msfL{f_~EXDC=&ERZ!hP zhwd7*X%rRyQS4qTgT|!NJZQlDC#Ow1cuS8)6mFy%nuK$}GjzzIZGt8#9WgtrSE}oX z+P+-0R2Ft!vZ1^C#0SRZ<^0O}@*JHTc*)W}9B5&mW7%qu(S~E$T98rJ@vQsE zR8bW#f|qCQqjm;;vg9oUeP_vA4EnB;R|)#=l6NZTnhz9p+#9rhzCj;&r-H7Ryh_kp zC2uk4oszc@bhqT42>Lfl-o2@|@^8h-`~Aus1R2?8&p~8-sK~e;ho1n7R zKOT2c!?Els&r)38mR%2W%~{8@{S#ADe94Pg_3In5XS1MhIPa#c z`_=5`xZ`*Z`y9)j3^FRG(xz8dw*I=OFD_3w72W!l?1R~f%E=RzJMKH#UA+1BkH;4~ zp73p>39{R#`tUhVcXQGAr$6Fk4Cb+n^Kr&Mk^0R=uGJtzUS{O_3oj%@k5L#eR&Sdp zP7K8xvUg84`9)9jn|{^G3i|UUZz1THOWtD8xA6j=KIE+g{q~Z#81#3RyoI2@r{ql` zPqgiGUMEr?WMrEy_5al~{I??GYLGhoRUeQi5#`^ndFsC`a|Ic#MXt*9iHZW>S`@q* zWb~W5f_z7j>aod!D*n~&e$`9_eX`^&1bt`8TMYWHl2-{@zx}R{uq)^qZ{9iY-k>*1 z-l?GLC9e|nR>@lodZ*+q1l=upCxX^F8&Pkf%D>V7`@OxwI42|9?AeZt4;2~LgZx;* zdMe0IcoQ7s{4Q#kg>hcSZc*0L_js;lzY61=T=VN}jPoM&BSZQa#yNe%ua0qkSNE$h z&dI1;80VFht)CLlCp_0vex1fR|3XI}>+`x8=jm=P`u_AsoQ$EJfmV_F%|))&AVXee zN zOWs1zA1HYzg8tBGfvN2B?~C4o|LIrOLXeSf_FDL&XZX`1<7$x6802QM4KrZv&%A)I zmjwm+4sZDk2#v4aStMBvGRB8o)74L5arE-XM@BB_50|`!pg&Ub7K8q&l2-}(@07e# zLH`HdJ=TX=yf^62mb_Czf3D6#_WfnHi`Wb$q%kD99Kx@Nv4JsTTdA7x2IQ zDwP)WACtK=;N zeQ(J-5%dR3-V{DY|Nq?Ei%bL=*=7qsWc)^vaXrZQavGREz+R9IZ$iSyxQiNQ;NxF; zv3D0`J^iYaZ}hSdiy*(lSu^qRR?oNKSK(vO`rSo+5DV*&A`XE zc-=7+v+(glp62KLs+AS=o8FX$9bP499bd1H(j}_=8)f~pe}j|;8QEq_>2sdplSRhW zAiq(tra<8{{?%uTB&$LG--0zY=`Z_N|D{N>8sr2tC2uk4?=E?jpx;sQP6hp5&Xv+fFc$Q+l6NZT^^#W! z`g+M*4EjdNTL}7nCGSMgzgqI9U@ZE7(%XxG1R2?83rJ)_t56SHW1&7oC@2Ebi8eN}mieDyPyX zyt1sHzltU^a~~LRM3BmL+4^;1^uHX z?^MtqDtVQlf4t-^2L0iZw-EGClst!(RHyz%U-e@a`mlDQZ zMNMD!4Bsd+P6^@f`&a+Nuaf(qzv#Rq_i^`XQP`6~p7LJLSfYRIslVdaDIt$9{*Nbk zJt4o1)AjT@UDP?%rw^nQSp@V~JW?8g=Ge-JV7DhPF7xue&&w$iI`ILI|3q+Y#e)%5 zzeZRw0#B3q=jD5!=budf-`(vC|MipZPlaCYH9$exv zm2~AulSFZTL}Q6_5|`}wi@(MrDt2ejsxH-!?4>QcvSDlA`1?^~H#y(+c#1;_o$B(K z;F2Aiv1Hq$OIzIVUB|YWml`|i7>Im_SK5oal*6CYupB`@vq>^aueEsra*22G?az|c zl1kj*QPCwfb=!K(Xem9^z`JLA+dS0ixAr7xe6_(o_I`Y0kG=Ufj7-617u~sD($vuY z|1z}CDsl5AmFb5m^oi@qbX)xOrBK|ThLRXZ{uexdTtDddkuO9r?m2Ki``T--bt3;m zz6Rsk@|q%jO{jYS(H|DqT0Fjr-X{9p0}as6Oa?CB>V=_35s zM%rKJR9JoD+D*5(Wa$(2#8vw}e>IZ-70(~nu#G3%@5No$~GVxUS9_|LFhT zME*m5MMj^ve$>ZPb!eO?$L|oHs&EH4JMnGY@QG{e_9t#?YtXv(`9GS!;`!s+jgEPy zg^BBrPUQcnKT8nTpY-wcY+2-w`wvg#U;O^`O{85kx+~{D?mq<~k%{~-c>Wi@$^5@XUbR2+zv%g2{3i2%p1hL1$p4b(f64QI z$ouawQ1mC{;0qJ=U%aydhx3K+v`cm)U5dXkesTRBz8P)*bDsY>&wo*0j(j3tT>pUY zM)QB^u8O7p(p@Q2q)T_xc5x&qo2qh&)>v%(Ve*d zZ@vgR(&&2Y-RW+!+{v`ZU`+Cq^M^hE*LG7m@pm%qTj%6I{f|Rx#`49hb z%70G6HS(Fv{{xkH`8Q=@PmJ^5n1!7%&cC_P|Kt2y zve4_}{1aK|>v8^@3Ozi|e{-Q<$N6u`LT`@qZ_PpzdW9OXBPN6 z&R@&|H^=$>*3pd5@oZvIdYa=|JheEU>3H!Vesyf{+^Yyko}U|3EbM}i~OB64zC*j)z>EF>J~b347r+= zAN`V=_>=NhG5)KsP0I6~@NY{^82kGO{M*Mk>E=mG&%C&T{&$|{S@;Vx(#sE<#s7!! zD>Kq7Rx^wLY523+`P;^y#*3ox}g~9R4jR z*IDCpat{AN__N0Ovhi=t;x{70uX#N94t>!t#o%sZ{l?EazvyH2V{^*?S@;X!(&RdN zZch4tW$C9U;4^d5zcPpaCv*6>V0T#i-B5|AXx|3^_UUS~@AmW$zbk$DJ1%cOX#D96 z@A32>b$JLoTlT8P;TvwpN6tr$A9v;TDK95}ge}Hjk9EzOM?D#(e#LLMNBX}%r~FSE ze|ld2#hmndmS$GHzis?!yXBQRTk>zXor7EYp z<{aqFJ2$-ZspHAoIv9ns6?lVYip9HLojkq%oYx0BwWT&Z%^>z9{{)b)NxN4anoTb7@D;>wxJ9IP?pM7D9kRm?^(vzu0X2Ry`N$dZ_Ws|@gPS=7ub2_F|B-!8;7dcj%*#tU zx@zuQw>FG?J^sF%)n#*SZz!eH4ktS>b#Rj9;+O|sYvY)hIL=XL9Hg`M^XmF#UKk58 zU<@S}>-I*V-VPnFz*5gl%Sk(jH8tGMNFC2*9c4IIYrN+kO^D+~?LY_}BtCw^*Nn5H ztr$P#XZnD;n2PdjsgYx}V-(6WRpz`TRt`+GbL!;FDaL3~Yw4|aPHfW|RJ_QhV{g3c z@s_7GM#nYqrlIAXeQ>~xgYhO`DJzHheqMXkajlY?;#`pFm-$B8;%C;zG_YRN?*s7C wWq!JNA23E?=0YeBTa9Gi29c0L&s&3~7;hFFG{`)=8@A7o+eNUY_b?VeP zr>gF~-CQ)fdW>V+mV5ZDp%zhPCrzm|1v?Vkcq*+5E6%F4@~vFO+rjW0?euoBrn+a# z3M&Go#qp{{L7c<-!koAGHQZ*-ZaoKN)(e?>A;a&Uo5_H~Jqryjis5IA>Bf=ge8cCS z$;+eWcZry~(Jj`e(}j*U77A2AF;LoG@{^b;;I!4-^e<82`!C za^ElYJ-(UtY13}X>W0qgG@H3*-4e0t+^JU%>n=#%=}1%D}P zAU>t|496!IA0A2gXMM7=&6&DTKlYWp+iLs?Tk^y475;?F*XM6ZPP{UeOek;j+EkY9WZI{hVlq!8dK_#Dm7 zU5_EB_!#C& zG338~3_1TihJC(12LH{+;6Hc_dj2u&Jm?tm`yXR`uRlh=<{d-Mo5$dP;~3*I=@{*1 zL;lgm>wIPZBx^S(797-%$8vnqF!NNJL^?rHb*@dr3~(AJIM3l2IVpLX=*qdw&}VT{ z#POq%Z>#=7zDe$hz&xm9+EMb`iAK)Oh+?x|(BrAmzHx5_M3e&F|PHs3()+cL;q3<+wmp{SC zugTSnyA6N5%Wo#Ib%x$x+TCKtrP0u>+S)T0FI`gG*fe`tQ*EtPTfd~f$*MgAC#!bs zvXy}=S>M=Hw`|&kk&Bitshc)?&Z0V9cJz|kxhrQ=!0bi!=YnzEirOhg!pKFl z8yo8yt@_0cOP4i`n%y*e+R~9Dsz!~kJI5M1Vq)FdBhG268@_DW>~qE}Te^5^)3W*{ zXX=8H^Xuj=Y+SyW42|syr_?Q~o84G9Y0iSWxlLe>i8!H7wV>;(Hdv31dPulbMJLoP zsarO?scyn-_S9NDd(on$bKSzJb<66}nZ`QnjAeCoy7uoBQktQxT>*43y_hkzcJb`` zCACZH&emsj;DMZv7ecbFG@XWs7PXSJd{aUr~F; zqSZY!Q>$ufc6!4H7i3nO(mO!pxOxJZ+hi#*U$(jSzNois{s#YA>u)zNfXDI)8S*(lRJ8rM{tV@w~oeC0ga-^X4t9 zYgB$XWo*sp38PR_HM?o^)EAH zfbpB%fYDjjSdUO8(_F@b9v~DRqXbr-G1d419J&@R++;1PpEGw(eG?lg?pIt=+_=b<0{>FlM;79Oprv1#ctIMLCHwDUH4ii|%)d~r#;1{N(n^Gt-bht*Z5_uOUYG&C*s zmS_TG^o6GF<(yH!sIGV2TraojR_|rAm(26hsYIDoTQ`rfUt2q;u~DZxke1A|`Ydl; z)(6o(dr=?QW}t@kbNZ~TD61_S(0ft+lI1IVpSfhYbwc&n5hH8+6%UAA^(!uQ)2Nw- zT!=Fgv^jXyhFog1y3)YoIX<+plbBgVOLdFOg;yL?uu z*_cu4bi>bvb-5EOclYz|zBa|o8=@pkcD0}5c`rAPIM$o_(&cyYwtit%&OM{M=OJOc zhwj}g?(opL-*S(g9=h8G%XWF_+>5!#ZVx@#CE~otL-(#*_j>5*9{znEy1R#C@qQ1T zdq4Mxdg%RJBF+aqba#Kq;*|bjp48sb>q8+A-RnDH58dlC1s*#0q3%)Qp>qt}qryY? z?#C-VbncPeqsl|)e%w83Japb~aE}=tI`{qVG0Q`*bcs06_t3eocaH`S-MbE5>7je? z7c_h5?p~X+)_dsbu5g^Uc<31(`ZfZS9(p$qy~0B`OLSFQ z>7n=V@K<^0W=o<40M*gD+pG5k%=sl*lWd@{7|Ka8W>y~Nl(Sgm^% zzLS`#s&%)*Hxn~OweD2-T4JWA*6j*kLCh52x<%m)#7sr4%?hs~rn|H@D10t4Q+(?z zg_jXCMYYx_ynvXgskKt!ImAp!ttASdLd;au8di7;F;h@$io)ZFnPOTkg+~x`ifBFX z8wlM75;N7b?pL@UF;h(IUWJQ@(};H~oJY)*(z;XO&csY5t=kn&BhDn=qHqE+Q%7sF z!VWQ0Mr(t@KXn0Ss%V|1@HfOv5v?@}e@4vI&|0bR2gFPXttAS-Nz7Ex8dmrf;;zIg z3cpCqP;Rvpeu|i(+Irwu_Wu#$F!6qc?u!Z_CT1wM?o{|%VuoPr zc7?AXX6UtUQFsF}L$0-1;Z?*8wbllO&n0Gvwa!v_88JhvwMO9u#0;s{N`>bTGn86O z6h4KRA=DaHcnUE?r!__4al{ObRtuPMQMIwd%uZpeYVGbO=kQ(?AY0s{YEy?2RH)iC zBoC+QRfUJDT0X8?eMp||%zPRZ2b+rD%sjlG@dN%JJ1hQgaB}(ocF0%N@>JE|J{wkL z@2zTiuIgXEEm!q3{i^;eO{o6?>o*U181<~>J*rj@`6`5~>1eMhscPepYeA1rfXdPN z7^a!eb=U%e{q56d@F-5sS%WTF2=5_>GEuE52g+@R0QM?==Tm0(OnXNOy)2{!+PaHmdY|Fvn)22_Y+Sv8Ntgy9lP_!I%HV&%Z zSQ72c+8b*cfac~^t^Ukk)l$O?e8Ria5lEceY1 zRktj*PMtaYwBa*{pN_F?hDKKO=O0a{(a)-l)~JmQ;npE=9k=`~mP7JL*l=viGp*B5 z7JZJyO_|Ri?N+yZ$>LFHnEs7n;Y?Hqs62)3??KfkI0G<7w9A!3CHlY+oVCk*sM>)G zD3_V8%HNB2#kp^r%iPU@Y*8-rt-1t1{EJnUlhS31P|y}H!%y;hj7kPws}LzLn~iE5 zjFRXNhalj0Uh}@99@A@_)KZjb0rSrM%`6z=!EIeP1ynJQ_-4 z-0608cJ#~``?!t%{mT2+{LI0cXbMPHgS9fu@z+$kS|wd=7g-}98dnRM@-|odts35T zx#FO={qTd=+gcPo`T>YX^R^civ+}kZwFT*I_k+4|5J%%qmK$&5sJI?Cyq5VRx)H_7 zec^A_8yiwu1stkvyrK(P4u^UbTF~DnDPOdrQ%${%gC=gw-yaP@hg{m4=(o*cul-`y=`OHchi)o{o#Ap(>CGi_nvmPq8`)J-27By*pB9DZhq<& z6Qw+@E1=g*7eG^;pL~k(i2U^B!I;y0h)ax9yZm$`>gfFREK1w*(@BaR-3j8+JZ76> zRvxn$ri540V^)ExJ!U1#kCmTJMWO32N6SxxSPp;r6Lg5>r|u+f%FM^I(m22^XjtW^ z*nC(q52?Ky7a~%h0HeDwJbnM}`r zhKJ2@{sU~E$mAx>$>fc^Gq204CHPHW#IB9(GVwi%!Jp zXdYIkn3abmDhbNN!m1K;Qjq1p_b}vx=+EDnPP_SNMEiX77R%vZBVj}O*NJNWBXLva zo7m>K^B%Rds8zg+T_ z>n|7J>i7O~rlS5&f2lNVNAnkVKFp4ZQvMPE^v;Kip`@M`(Y$57VpiTVQ%O+XvJ6!1E%RCadv9q*SX|<$<*|)-U(p4^nFy@H+r@z z4cvm#;k)3|)~J@x^tNIXN?^$omGI2xIA=DCnOt9ONXyR4}fI=UDHI@}JDqO}TboL>>0j;m_dC_5B6I$WKq zHqH-4%UEoGT-BjL&?cj~y~)$Xm~cWY_07WmudZ$XhZ`W=sd0t=^z3D4S`Bz8j0dxL zbk{39S3NmCyZ#JKu<+;<&rPirrNw;*;4vK@)sv@8QGO^9%z&gYzPsKgaoVoHJnj zOA+wXaLz{FIv?j=m=0ei9p~?ev3wbTF!>y3zI$^i7Rh5`u;zotn{_KcJA7C@B$O#*WN2J+;@P6v8rFGG zQUClr)+662d}6G#{?Q`R|PUF{ns!{^J;D48-`3dOew#Vf(r_&Yx5beC~3%C_RO z7kuiSk`XfHGG~MgZSswl;YvrwbICmw; z5L$-Chby(z`<)+wzZrh=KiaD}(w<`=g6-wQf4E1WU3GgSwLNQ`XO7n1H1KbMAO63z zN1xk@`UkL4xs2`2km1$-b-qg-=PbC9>d*Zsp9TN^AM%gtAGH5>sJ|O=q2AqU^Dhi) zJO666+q)OF`TvjqOAENq<=yA-ZZ)`~I=)8k;o)Mxzdg=50uMX_^Bn;mZvDC=aPtxP z+9U8?N8mk2;Qa=>&*&ZVGC-1UHukF@>eixm5MvQf+Uzkw6KhCpy zGKRA|A8@h5!+mDFJ5^(sKEpipcJ)?I;=qDC7wQO^Gj3}s{e|JjE>vNJpgNF#6<(FB zF~U+|S5L$C|Cy8feUT#-KG8gsKf|0?nDaVwzS^8`Gv^1*`8jib-JCx$=kLuq&J0k{ zoV%NInK_R!=M&BO40B##&g;ziYIDBLoF6pj=gj$abN)H z0nOpq;sWUEI34%kVXNcsxU&E!(eckb*>M-CvJSZ4YWe&f>X$U3tOK9o`d@?)-?|aJ zT!+s1E*Zqj@hJ1HSC@an!(v~HVii*%g+tGGzE{9krMahQ9e#A!%^DIHesVXc3G z+~Hh`M=cRa2Re@mI}yQ7-=+qm1GBjQG2~KlDJ>T#K1JOmcFCXC1C51$z-2t^b#zRV z9j(OgF&XShhztcuJcQ9oDEu63Y^O6y5{i^zBbDM>B-MnTRMv@9S@9Gx(G`OhHsc|8 z!aPce6RZ+gg&{0SoN4pB0rFi8ZDOsuhGh8+;Vc7%%!RoVXB(Iz-$c#CIks*%BzIxd z6XzP3EvLa2iSrB$%g2uctTS~B(D)o^7--4DWRZBYU5X5xTwA-+O1wo~v+)<;FNwDr z7>CliR^n~;0O;&Ql4LhTPvY$cN|esF5_i}f1t*eX#glC`gsK5^(A;={l+*(VGLe+K z6d-LKMm;G)?bA*`Pm=Nv;L`Fxj!q_Zs|H6$ku>Z^oJDFONW=G_l;+-xSu|+`oy>{& zt&S;4V_qTC_h>q)N*luxo#1mxV>R-NFVJk#IJQbpK$VFd(72Xc(@w5(UdYu|ro^g* zlTMr#t1_cqm6MGs;_n#wq*HX8LY%@rol38VK}38Q=roN&?Afe^6!&-m$aC0n^o)v~ z!LKZebNYZhUwf`4RwJ^L>Wy40y&-AfCtyl@A8wa4SY19un~gjd{Yz_r2PciE*)nRE zHCahhX`HlINu9|~r(Kkf%em}K+JkIn0Tr?0DgJw0sR8R^C6>Ts%}MhrR5}yI@7FoQKk$iJ6L{CW_*ytkH zJiKqkHFG$_<5={GggIzm(cxh$nC$+X-h$h#@Wu?<9ucm@n9Iobj#;w^+> zO87#IfD_5E5}$(PaBAH`3b_sol+-g_A^#+r?+Q7Hut+uTnal;sgv7+p*q7n5`mLM?TCOi~E~HMQE6WQCrE^M&lRtWg3T8wKUlx?Zlv(h{>FDDAk% z6%t}J5^h?UUdjl62V&B4p(Ie6D1(*K@+iW=G^AX28h{$h!&c~A^sn`yjD%zaChpbQyc1m2poTvq+cexV$%R1TQDza&5;q zshRMfi&r-}4@+OQ@aFc<9zrx;$$?&p8{hAdLf)@GGDUKfi<<|UT$wW z7aGgG+}?68x3?VN5tcI)kL6rSo8??eo8??eo8=6}W4V{xTh4{Xa({1cxqrkgHyJ*c z`A-8YWDvI*GWQx-DF-va|79SYY)%49wK9G!tdp}Ff3_rMtV_=gBP)lH?Xw~mAmbt% zg~uY2vwG;;B_0%XNF6#x#gJhO+uTS3^`H zu0`8f{if^S5Ic$bYcyCCV9AqJ`m*Az6gOhJ%_`SrRbm=OKdVBcYViqXp{#+rJv`zq z1RA8vW{3i0$*jQ|ohF7N{IZ5k} zR))t;U14R7xfdM1NV6@zzyy_b!YfeJ7g=wI$1a&|Wleh@ZtII|u|*H$%B&e&Q28R; zY>|ufpLMc^I~?&G5JpVc!6-``%nf-`o%>`czu;GYvsVA3ig2%AJjiieb4`E3eSXm!ONOkq`;;a3`$Zc2yH1xz z{o+avbBh*rz%K@odBfq+tb52W9){CrZPZHcjT2=BfS0wvcOf}WR8p%gTC4qW;(L}} zsbMruOr|4j)m=CcC-x%qWL;$}87F42?$ySU9YqE`;~K7)Fx(wQ8U{M+S~J`o#g{bf zAL%I=?vCO|tU$7E)Np%8QN{7yZYNZX2iE z>}4T(Vmi&bldE%IFFvEKe$-vq9WQ2LBFp-Tvw<)2RJ^#0r9bN~JRL7SqU2w6=`-=- zQ@Yu&y7bw2ITcIHEX#g+5-abCm)8Y=JJ@3_;+Ny)i%>ADqnaP!TJaJiU}Yt!^`EL(@XAdlKX*Ch`iK&jT^O3GxfdKi-t@ zOOR9PTZ3)ww)+!g5!2yNgFi};>p31H42~wqtxRg8jemTeAcIWtW9*Y*7GLB*g5=jk zvc{V6Ka?O(kig>%Zcda>Nh9J!<2unslPr+ zo=^Wh&)_Xdat3qE`37%Gl5f+$E--j|lKh4CxX|DoN%Ci=^NUP-JCo!X#!It_=Uqv% zmHxBZjMrmHvNy+bof*&FN%Ad@&m{&wlO)e#e62V7?n#nA(S9uk?@f}=(%zSv_V*>p ziR{m2}4CwQPcaB+2WUKeiftC`n$fCJlp|1M<;ylwWP| z`he`t@@s58^=%2r-Hey(Onon-`=ia3lP|I(ARnQ< zZZzdP1M(S;=Pjl`y8<$v<9Dm+@9u!y$;st5*B${mkcoSTvDe;!?8W}xVdC+%fc!7p zyVKx*2jmXM>z{3%%U=(`+Q5G?`tA$Jci5l58hLLAq@+LWv^z|uzWW36uhjQRGrrM) ze7_s;Q}%IcHFE&%Q~zhwJ{b8mAoJ)S&l&sgk#YcM(&tV8_Db1@@w&$yKPihiAG~1N z-!J9G?9Yn^e8D@j;EBbQJ+_h{s*KiqkaBu`um-ftLRU!8+=g84;deC82r7I z7jadv&)^@VT*C2t)9$JA(;+ES>7Q>I{EL*5?Y(V>Re5u=tjGm^$KW-|$zx|Pv9jJZ z{=Pn0-p~2w6N4{JmVcvutp;yNmWvnxf{9iM_ZA+GqalZV@^`B&U68-yY zyHG96b|lO9Q-Hs<6V>?a1ZMs`Xyolok=3;455_+Cr$|YA|7iD~#PQsfB180_1Sc16 ziiKW^{FVNeXz;!ixrp(RWbgs-(;uXx=gak}ays*4ilg)OmQFjh-{o9c$A7Q@jYRdnTD$k~W z=QyXsjj{Mjm45nfo}(8wyHe%x)FtbrX}rOE(qu0E zq1xcR;HSMN7`!h{UQ2x@8oWPE7Slf`85~WM2RI+q7f8;6a zWP^95%XG&3DF*LOmw%x@ooeu&ba|NVpXTWKc5k}e!1$W!lpRlh+m|j+VmzPj=#9nx zbomDJORW=D{v1u0H?sX%j$ST*lP-7BpU*J<^eyz^c+7WBLNmU|cjek3AVOO8u{Q?UNz* zQr?YDs>)ycGURLI-|mc1_4jAUA8G%a431{VH|Q_77<~?8$hVlUZ*zWD`Rh=I{G9Qy z!yTVY*_HlzhdVx*au&<)Gm!te)}`!-zopErhm~)`2+oB zr@;p@<wc3znuBsB$NxbyUTcDK9{p#R>HqqmywwN%s543Fza=Pt zVEjI2@V20Qk@5Jn!P|p!GRvQJmMQ)nL0Qgxu*bPo;hjO*h3m7IoM&KGvL3uLAGtHDA3d$v1?*$ER&XO-B1BVP=pJjEKiaY8T$M*_@+_=IDh0bcg zrPzi)p=IQIhy8IuL5ihQITnS(o7uw<`WTiknSw>z|B? zYk9GcM_fxgaRwQ28|oDpAu>i8EaZa&3rlJHNh-DQ1CJmM~EC(a-vZu4GO+(?L9 z6W@tGK9}NF&y0y%GuNx#ns(w0GUC=cMqKt-1V_f&_<9IQJQs;A6#B#6F@f7o>gUmK zTRVXU8G+aQQS}7fJpp(4*Tp|f{m#S<{!WRtm@dRA$jP0OIK^`?THukL0!71!gt!Iy zrjz7ynvZc-!#g@9>!w2DW2o0DMWbwSFET}^R5}ixHHglvmqxeY?ZYRKH9DnhDJ3ER zpX!vsEj;cJiv*Ts>f7>_VhmiNQ*fxNR|SP(&`aVMK+CK%Y0wM#j)Weci+)i)VZ7&} zcKtWV^uPH!<2_mROCjTmZ(=g8+~ytQE8EF1$jI1QZfuyn!p5Mq#Qz2%fj5!uYl08@ zx*+Q1rwHBPBfk5`vR^3d0JGKvOMU!ZJDKaCu*_GfjVv$2v=S^g(3bmPtzd$?s)Hzq{ogw&&L+3p0S0T|0ee4|JLJj_5b(v9v zq1_Ze8jW{diC;PYUJFEE93d2 zzKL_;S_NGar{Y>r^Dap`0`MjP6z>u+dW#RBL>F16dY>XXL1LF=jY8ra*uG1Ox$$mg ze~=9ETjOgfp1%ng&YsOERN}Mec*SSWb;XaxFlWy*RuOM@0IJgnMzJaIs`#A{5|9vB z653~n5Ovxp|7mZO|Fk#Cf7%|W*<}yhw`=kk<>Lk71xZw=P>C3- zINj`WHAbOpvi7=4u?e$(*JPcQszfGYvTL%=N;P720g+AtGsGl?8dUF26K^B8bxqNJ zJ3n%N1}zjcr44d0QgdCfvwCf|<#mYoP$#px zz1X(0157v9#`lDA5_`b-m7V1dT#H+9-8uQPag1V1{2Og{PSHq+7AVv?^=?&`B2HoQ zNz-K^aRVxMPS+?b{u~FC@s8pw5GSxK_^U!C;w(6Q=Pb=xfpx>gldX*F;_nAf?(8M! zSRx}B$b;y--{PTRR^Whz>td8b%;*w0o&3EJ z@EO?w=EA&xG4pf{tY+PRL2$-#fxqC|3JjzLGqwe0f++6+CF7caoTNG~2UFO!0VYaj z_F`B!<2t1a7dzQ|5XTue#Mh%{U?!rsB;$_(%9dv#V`SVI$S`8~i^dt-m3|cCPXxTl zK;+1Dz?%bM#T=5iQ-wbn6~gjz>V1oW2;9sB;6KK{!!~WcjRtZo<_HMqoWQU zOAhW0xUVB^!Z!C}phN%ZcpEsGmxn>4(3=K^NK{(I&SA!DAH*kWwAjgT^FuE25`@WoHdo41t90Ub&Qq)ZoPB~LC^f{U89*i<4 zf-5IzV2V5q!IhI`U`RH=EIA;RNUFKvP zSSg#>&~XM<$xkrNU} zkj?B-k%3KeAlxUXmwhj+hnJ~jf4EjoiF#X+Pex@?0&rjRjAoTBU&ZL<^t1m7*}lkX zTUJo*GW$J+*V}R^#SOC`hd4evl^b!9gSU$m-e$`yh{qbd-Imu7k283OEw>YoH+ZKl zKj(1Zog)k-_Bgg2$i7W9_q2A~avZ`Wr^fzRwT~O9kxF*&{={qGAfcQ`XcDoLG9T5} zvBW#;cvK(o7^}-#_V}$B7Bh@Aq#)s*!GWtW8{|4K}4sPU~oj<>wJ!x_A=ru zZyz&GS}x3(_a;3jEzHZe6vM7CF5hOdPLuF}y!REu9Av7z4_FN?et{T_6I{ysDLSup z0Ju9e&*e;p-pzGUTh1|ADzg~ymGWQ3+j)z zLZ^JJ1uV3ZvO94TCLTo#*`4(?X^9`;(Aiz62VV<4kJ7X0Cx{y>U4$CBs7d=4T@N)X zz3=4^H8QEDT?!+H8ks-RZs*>nkqgDNSv`5Fs@17#t100LG!tsv%**rCC8tI7nN{Kh zyAvm_g{EGn?C*+1%F5=C)=ww>7ibG{dDb zn%T;&mu_ZjTQghRn%Uac%+|JMwzf61wXK=0ZOv>o&2Y7eX0ACLYeqf%Pg5RvOGokpVu2|BWnql)Q8ti#ekYsT3n|8wNx$U@HOet)(vvc}Fo8&PT~*~s{7 zY(y}Jt(yp4Wv_*4<<0=&|7!J=gA?=u$PfL&KtK7eQ9BR07bz@sZ5tnK61vX3jpdhr zWVP!J>|k{t8OErEu29SMyuO(zywd(B@=@NM=uK#=reDv6%{F@`)X3`yMMF0zm7wC2 zsNQ`XlAQ=`x0yuq?jY|?>fN`z+atKX*`{~peTZ}v`jdL7mG?TYZ&Cb^!KB=MC*oR! zZnwGn&byyF@6gwaP!PI9=>cBeN60ScihI9$o|mbfis@wzH!)!0-K#ipK0uskfOh&AP7@DiIxN)%C%0%B&El!%-s}Dix{}cQPU` zty8E#5}EU=ky-p5C~le%I~u+(kAIPttDA_ z26?dU4>^JyPPH}h_>Nz+q)20C! zmVl6Ha}e5*TNL@xcI2Rf?4FfGUE{=d#r6KtxInX#KEYookH1N|VO~Cm%K{b49L%;B zgGvVFgXssw#GY}Cy-a92sLacLf-@WCx?dcBFDJ@_hG~pqI)Dmm+cObD2sedsVj)2G z8_5{dzUl#MHxU`^JP4xf%86r$^A)ZcK7r2=^D`p-6+w2!E&Rv;^@xDUwKJ!cQnTY1 z$;++CiNC$<-LQae#IVxs;UhNx3aVTu$C z&r_8c+$c>RVMR_e&4iN|*IAL71{KK9k=i1st7m+8`&II{6(Y4pPKA7!p*73VIdQPO zip;YO94fzKhMc4Bkl)&yLP+*yURi9k2`ig7m@enb6)ZfzH!wqHQRYo<&*gO5`etL?upB~9`;&qB?EY;|2ZW+-afjPt^4z{w>%>0tL62eVY$_nWr;O3Me@Y3U-oHpbcNL1Tv$*{>7eLou_cf!JjR0?}E&#ELv@ zV1DxA*(=*%0kwX_RgGG^pu*}=6)AU47=r(i?i~CNH~6yZ4M0d9Ts$cPg*Rdy0ems2Wczn+ZAcgi6*qBZK&jk>tqp&gD>5mNHH4QP<4QPhhX7*JO3yCl#e#lXta*NNOwk-&;JTU9)NMv9@gO=_(yiZw zN-QXMq7&T)aGeG}6kma@Td77u)WfB^l{G*aq;v5WM!sA5c?xBS?O1VltI(Vw(F0@G z?RbsC;#bxis8NBHxE2+|-FscZ<`y92x)r!Mf@2;y7$$- z60(XSXm7jaSUrk|4Tqdx;5$7^cnP(`jdMz@9(^YPaXAx7!(w_CYp>CQqa>i z(JqWuK`&~;5&1O$)LWyFxC2pLP^?i{JWVNmG%67Pg7pgeYE&XBFas9!*Qi3=glW2< zln%?KOs{=T;WB6ZXe5!rJE!&y+J@I1xI$vzj>E4;`shh$;~ zV6$Nk%jIx^!qv{(NW^$?K%NE9EL`KLFJ$7Ic8?+`3NLZ!kNEun8HMVF>y4=S@&g1* zVT%#fAmb=%qca&A@-Fu*U;Kdu-Vf0lw9F6>P}Vw#>=}zQeQ^ zwdGCdV&R>J|9~y;IS%+PXQpcJkS#wT|4!3hvm?j$1is(lw||jr9N7b&P`Jz0-;p2C zu9y|I{*D|6UoCvhnXC18WEO6c7e4JU;Gw@GZz6ui)yI(~$jF7yy81Zs9**MkPQBL0 zk^HHx!hbmYMlEhhO!|Ct)qkdUT{$Jew`(+%Wr0_RWe#kFB zrlZFBboe^VFh)d?pt-V9IxQkl!Ln7fMsUr-S5w5K)-w zV{(9hbU@l>-is4-?l?g=jT3a9IKd&06C60~@zgbq7$^Ak?Kr`2PG>uq84A;UObh8E zJMCU{D($}r)9Dp%}Pvx-S-8{x%u4$#8cIC+bqK)9QW(OnW_2^&lIa8VfU zFT?c^!7rQ@XsEDpMS~UmQoVs$Nd3N23gxM;9#CDy20Zw!a|4)@XD>U)3VvtIVmUiP_V_o61g!BaD#yr@*_&#=sSQeVWyVr zsN|(SeaE26>QNJX$oKkK^nDr!WtVz;E$;c(q(Q3ubHK@7#1#OJH83Pkq}9jyd8-W%H{?db@doD026nmHzyg_o z3?7_dU@wdYU(|~eR5iN;hiQtR*9GcHFyHLZcgxiML+%a0+XQNXy8nOoQOmcgawavt zHF89KedCf}yxkI%;NY3g}f_ihLIXlyRAX_+^|>k^C!U zhIwD4D0#C^pn|`ARFqN!jhVN%W6f5Ssx6)*A_+igI=SLEXU>QGq9FAOWux{CrzrHs zM1KWO0&-i?akLo*SS&_Ai*hx}5RK?uk(wmnv!bCRP`)n9 z7EiFPZtp0W;c!EvRn%RB0`WbYE7Cfah<~zLPmKnMw~2ab3si_=_N})@m0||#6>C#g ziBk|0MSVCWIgzn~|BZ7|i7p!_3W)k@G+um3HO&{+t3@OHtf;>>d5yS&ogJXj3^AVe zD%C+aOLWJaUR0*XYQ9*7periZXaTltK<3Nri^M^gr|5WHuR%PV1vF6iXr}u(vfC;VvA&C%%V{m?y^M^;b;wa+u|dtF-F5Zwn)PSR&;`f zdr_A@Ri)uRTUqi8(M44@cpfM;mqJmZMlkz9)E^%wW{I3hs5UBIOWR$Go(h1FNlB5hcFqrHYY zFVl;JTPN;}^Q?XU>yjBCg5 z=YJQL&Hs}uqdDbxkmAHJ{MD(9Uk=b)_w4K8s2LZhoT@lx<8P+TuL86sD*Pag1C~`v zNcO#GE@Mr~2F1Pwe+$$%+xTq(Zz>Kvi_b9f9@HbO^AzQcEyC+QH&sd$t?^qP~ zgojzhKT-GMd64cDXZL~0iW?9m{^C-^Ux(r)s1RobE`kSDWn`y^ka?0DX3xXxZ|WKu z#EQ>_=Ya%pZqd(8c*BdDROp(QhBZGTvju&49^x zCZsE}xp+$E_tq41vejo68jhz+@yk1k7>`;$H3)neFiu=Dnt!vW8axa= zi@RyX!{S0%ytq5r^rD+w{!=j56!%!m%iT!see(D}n|1V;^gE1m{-fP6B>e}$-hMj= zeacTnbe5=}Tl43z3B198P$(&VjkU^3%7;wF+{~X@FR9=q&G01pU2^<3)yZ6uM*#!1 zN~L;GCV){nN7(XDO+oRX1W-DjSTf`SoW%-gSTdAMl;)%Z4db{vkunSdTd%}_APp0g zjQE)RZ@^nhMru=8;uYAaWE4BY*R%FxZYdeff#*8mGUV2hFDbF9z98wd1E-v0nq- z1clv074&}vK4+&g&aOwnfNwD2+G!l6e-kDnYuf3_kih?gYd}7H-_E4K;ee$zMp|xz zWnBw(%IxXBZ|&)2_B6Y%RXWp@4n^rhy3|<#o@sW8RjU4XMznA$3jY}^v`QOHrKO;M zYUquYRld^DF9E$`wE?V*HXSg)DQS>6p}W2<9g6DLKDQWVA1uRT12nf6oM>6c^C$c5 z&Ri{ZhkxtNbz$dti($auF(CGFj3)l%!+*oOF#1kMx68MB!Jj;!^gaWYfb9&3#wa=GRRw94x| zOyz66V3Ps=Kn-hHCH~Ary#XVU7o68QV$HPAP;Zqg53tG$J$je-_kyuraIL3Oh3gid zqEV`N0c{xXtHbc>BZ=?+^|MDof?c4VbL=$r%P{HixP|lX;#1&JDmxW$WGj(}``d5| zy8t$`&H>aBTgZsLm+%^_hwNU2QNW?hy>@TrULDJQ8O!{EA05l3jAh=t)3IF6oX1Cz zrH>kIIwPMfJXu8;vl;@^6fnqF=>i7%TZSB5hC$b4ljq9Ob0(+K4-E^0_VE~tRr-aY zGX?zH(3t{$Hgu+dZw+1L4V40X#!Qr!2rIcMAkEO30*Vd&h!oJ(urLLT@l-7^bf$pQ z+vtPb5ph$%U<{h`mR)Js$72P-<5k$r?mE*=0dFw{bW1QP;4P+r(}8pfc$dRxQoy^6 z^2br6Qoy@R0StGY0#xC7fI0=J(qYig+IkvT=o!w(^o*BTgP!4hLeUOZpgJRb%F+r# zl@X%M2ulFVZ!_wv7<YgqQ^~Z7qldjb4R=V~y5$94 zFvJUZL)B#~tu?`1vP0H%$Ous|$7skCvShqe4_4=BCK0H%%O zWA&`^e|wn94|>6`1~6@u^QBW)-EuyEc0oli1DG&l%D^htu$|y}o`a+^%@@oxm(%Wl z@wW1y2Uz8`UQ5<{!9`whyjKC&`;N#o_3#XR^s^Ud!`CWRlBqFO?=WZXRBS$=)9Zjr z`p#rz#(`Wv+QV70fe`-%mLu*?Mo#ER78Zq)$fPS5!KL)W~+vtPb zzUuIe6I?gOi5I4DHs`eAd}Hr4RjYHg&4x*sWz{S`nnJPk}rhDs~5i)wKpAJ)m@|0d&p*XvFKFRII-%s8n2b@PJW2I$#54Eyw&g?UlMm`^Rh zmZ!o%?|ND(k9vSr{z8tW4ki0lFKG3Gfu2??T)#LX$l9j!e)ew|b$h%HGE4!Pr*5h8Tajy( ze`iX$6fbwJI}fbZ2>W~3-x0R$lK+B@F^}qWSn;%ZSnR8XxlrHAtHwTN6j$a#y}iB` zaI{*QC#t*pwmpVx^F*8B{1FPraB-ffUbpR&33pTRtc!03K0z(db@{Lw8#|e~VB%mq zY04wMWhE8T=?WJHfz^DRVKb;}fy*0=yC}!p>IHxDfKvWEIS)?A6794Fb%~jfpY*Vo zzvcz+c|hs62CSN8Sre2X9ofHnnG%f|8QCknt*OXPGo?!9A`d7nHGq+QXRIF9=^m!? zwO+8v03F$QZ^??osOiY=q#}D2tyJl)GtL9BQ1>Wa-rozxdcn1xN)@h~91+>)d8W@V zeDI)C)VT4>4?Nc7>ofmz7+ao!$mSgq`xHj@j4UMEMVJ=tQyJO3AEje=4rBLCz~Q_d zW1rzh_J9GP*$XHpC4{m4#+ThAheW^l6l+# zp6#*5IG@8KCo>sLFdUr9cg0$=N~aq-r}DkAnpWv7L+467>Y?+IEDyC8hrP_AzuX-U zl?&oTGBzzE?2mnjzvFCsi>cJByRLjQtZFZr?`DMKR7SYDlgS9jsf_Rzpw0-n-i(l| zGQz;lCL`pkjIb6^X9Qh*2v}zXT|R6#2K1vd$pj~H^lpz^N1YK0m1kW|;S>+#ln94htF;cn(4A2?Da`3niqoy-L zAC(dI(Mo)$(`}{vMGvsb`Tyy}ith6Q{?93~lFpu1D_l1@A|tHzWQ30xq07{`m6)ph zZ5bYXByPW5?=Gm9odgq0EWu=bICJ*O)|e z)7j-iO^Gs2l?PbmD?A1%Z}x(#z2Gh{c*z4w`5r5e4>|Lr zWzH(RD}&pZmztKi-YmDuTfNnMg}PeDCd+!%RO9`($?6{Hlz89PSmhb`v4`>m!_O|1 z_AsCXmF*>}&3NCASOqlg-gigS@i9|b<;7kp<2_PNaHTxzmEzvIJ3`77uau=8DVtm= zuX&}ocMXn^vcfCnN{^IRT`BK-rMMfGBcxpGmGY2BN+&oc#vlI((0Z8dx{Q9wFrekCgIny}&j)CTlp&*wmoD8Lb3mC2Gl#4E5j|2 zX4~!KbG&^Ol11+!Hs?^A&*JpAMZcbmHpbgSFuxY}v3W1t<}?>1TTm5N+Y4ZzUL$NZ z8|mMA8E;>d0ckJUyq9kCVVtS}K^u^|N+zjiiZ*YM2gw0?RSM`6G@XyZwCwTrSE-=a z+HA?@?e8G(+v~y!_Fbry_=c^1k;LXr@Su8iw%Xn&Q0pw)=4x8kP|ZxV`90vosBPQ4 z`R(fZGVE1cp*zR zUYNDZTBZ7)t<5B^N+I=q_+Hs`2VKWnMpsc+N@`Lfh;bqnf0OtX^zru9*jSa!)aK>l zSR0EEL(~;os-nOz0&42EXOTtyUXSXDg6f;JNnOTJTrb*vvbtSrbCKoR?|R%sEos!v zaFG?{Di8cu^v1*dBAbgmn|DpL94DDuhz~Z z|JxDXw+X|H%&aR^+b_Z1eWuwqZ?^>5qISJ%`)}BymYi(cyx*b~tG16%z?_Q}74NcW zrHr5M$F{NeOzjEWOSSomHObB?Mn7!)i2jrCo$^ZC=AKYknPa@o)KIcq#}?-vt@K3uKj=u=A5v|bGfSJh1o`eukS}?| zKQdsMvKzp|6sLLk{)_qsxQB6qeFOZXY-NI)&TXbBGwzh7UiG0=tHyo``@piVZCe-f zer}NOfx!@|b~l-x=#yP!s-0%1#9;={w-OVFf`mJC<`P=@gO*PYOdOOrHXW<=WU#EVL`yvb^HK($cUi)cUYASOi8wkyZ%Ju2#Ei*Gc>*iWN)G|ZR$ zk98a*=S?Yj9` zO}+N@(9U}f2toH=(ntE+Spp2-?8H609RILhvf8~n{^gvE!yT8V{4xpl+rNL{_Q1Oz zn*fvEE-ZBLJ&#QUldt)iIne2c@F3s=gb*za3@r-N@nT^=g2MW4?{ay5c5WB5y|uql z15G;Q+i=e=4*1<3ffW=)NOzEf?o}*E$I1@-M3ZRXTw464H}4uKeqMX5`HpCt^>)FR z>MB19gz`SCIp&|k=k_dsge+B=~Yi%3JX#_?%WT#8lqMoB zxl(hP~A5Ms6h*RlbqrqkXibsRd`aM!9{n^kvT()*fT%XVLCRkmFcbfnJKYjpyn zqB`rwxVuEW(e$0D8f|H7uy0nMZxTQe)eav4D0jBoMu=Le5^p+mCqhTH(d|+vi4>ln zn~z&bx76ygMo8WK+|ufWsLUedZf?699qx2WY=t1^Yf*VU={5Nv&GSIvs69V^f27=^WZPueeQ9#<8f)n+m7G;7PRAI6W`2T zo!O3Cu3}kujRlvf9l5*RU4N@S!6)B;t2T2p$S|4vGx^(@e9Pr%-G6&W?m5ut;>Fzc zAepDna}%Hahau1Jf;`thaQ547&>sB6#i!AZ`;*-7oy(m7eST#k_gr>EZuxr{C(?E@ z=f>$vY{+eAza36(&(5E_>(Iq}7bb7G>TTct&Yvh@E}}WVJb~4Kf0*|C4%+kd13!b2 zxu3&wF?Z-)@4e@}Xv1eFy4fxGd*$4zD{>!seCo2veG^m3?9^qSol0_Nr!Kn>#QM(U zjaLo+yE=E(n2oq82f+Hz3nb=U3;E70xT6uY5VF;YG&6k>>16x&T0lQ8OZT5+%*K|yqaFoc5K z>n^vu%RYCx!(H|V-PJ}|g7Pngt!S$ogb5T&H%#h}MnMft!c9eR^>#N%Ho_iy zA9XgQ|J_cn48ph3;O1&0DoGD;{yl1`Zvh;Hn+p_ zmeR2xX*+S;#Y*%>827qKy%M>u(AEcG5gjco1+^#yv-Fh6-MCxtHlpCv!m)+3#dKs` z%UY#oRFQrK#SHkKn$h=R~dIP?&OBXbED9pf$v01cvE zKuf}SZ4EA9kn|uHPHBj%1`dx~LA!~iWhvH;C&*I*>w_OrY)GZ!1QO+7*reAfHQF0w zn_v|T8us%`0Hs2=Fic8~?x4D9ma6qKxvbqm1>HzSaxLyO!87O?crgKqDnYW^3oD}7 zI=xnmmlz9ej0FT6Lm3XrCRG5mRY=b6qY`*(ixnkxkQE9b1XEVxCI}!B$_nZ-CX_r1 z6Zj2nMyf7Yv+H~AR8hByMjTr_Ju^RpNy6+t;l~QqCmdVoMCccAGsbLwZn;+4ci>=9 zTsal4%t6N7FcyvkTQzd}RzL!F<5Yxdglf?`6_fdjSdA76Qs0Hu2uu%OJyl0ZX|n{W z=p^V8a)pZvD-SH4x<6c5SY8pXD6fa)y&&3(AiJoOBiV_Cek2A5povjWYWUOXLV;CC zp8aZH6(PiCH3GAk z0T6puScT46r?8_2Xfw?0K-yL%OltKtXrT5cM^H>toCq7XLJGF96)jsCwKrqL7kML` zE)s_Z9f6MP#M^${VQC=ks-nZ?70x&d(OM%eLHWbBf~HZM3|DW#z>6h?$|#oV&=4}g zq2&gJyWmO)KWYsU4EAQFt=3@;Mv#WN2lXlx=b>C;qftqWQbc{wPzO$rH|pzAaNo(| z!r~dS64+39Mol(l7&eO|?M5jKTQQUpWVisejZqLTfCZeNlZnkT3~32!SOl)xbZVBP z=PW@d+Cs{(cxvHj;VdpoM^4YL6qXhN7S0@ASqSf6I0uGGFa+w=U~EdzdIhJeMJ0p1 zW0+DLASTrIY`f1N3=;Lf)<681R$rVc9h&e zTi2i~Nabqi^ehFUCvKD**pA38o^ilA$yV(PD031jh+{MQzrPm3x=GWcjFo z#2!M>9RP380pLmc18{5{*{Lb&U6@BYm(b4Gr_~O->lAR&0C8Ja3fb~rV3T8qaIFE7w_U0yi_S#kEd3IhWxvl=n(0R@9-;qS6x!i!d~B zIpJH;f^Lg>ff}kno2bJh4W@^;+JhB`h9U`9(dS;80)jkaC>CnW43)Bx=R#WyVru#2ydLGTeUt$p5p>>ZgE)Z zP5P}zVB%I{Ra%U^fgqyFLU@OcRT|Mo)Cjg3@h1JvjXDe|I2D#Ql`PTE14f6Qo&o2V4QCG)kuy9hW|1jWMCx$LBMe60pAII!pMrDjmX01>UcfLz4!fY280n6BrPW5f z3Vl<762vEX~{7^5{YP{O_;^3UMR;s8NFUYLyb~F(K5V=IvgWtbqp82 zKL&AvSi#bvX`3A=1EB@E6&>#wqdIkqoFY&Km^)Xv%qpZ-QUb$?gizyjXgCQ3iwl7; z>~Lz~#fVz?{zAKM-k0nN3sjHMp4A?l^gRRqFWSCY>VRL$*2N^4KfW-3e{rd>xWW$N z19BPk*1n@&J3xH-Lqi~ow<$*NR-Q>R~lYbE&h>DCB?4GkQaFw>&b+{%dzd%{V zEL%)2K-dIGZh@8vsuvCqG{5*V$~aIjLWy3u1|h>Fs{^T7^aolF?&SVl}R8hvW~UOb)iblw7UkYhB1YDQY;%Z4ILw=U!30jm;WRt4pq3tjIB|l}AY(0A zOO$by{ZI?X8Dv0?^5cxfQH z2$>78iQF~7Zzh?TX}H0GAfZf@Y!NVLa_L<-=ZX5MZGLxA^+Z z`SQx)Q!6&p6~-2EKI~#z)D5Q!#f6hcZa=v9IJ<$;+D*E86sulPq35d_{%i=_M~&x% zR$Meucfw*i36L3A`v5q;ZxRY$l2*`U5A4KZD&mDmn>%3oxb3_PC|f68VBJc63p~Kt z1cp$hOB?}P^+42Sa5`S|6DH@4-9cXf$uRpARpNwu&~2%=HftEOtrpk;d`qTB$g@r7 zT&4kjo-KS2CF&-Pa4^LMUZVPNQ30q!ijz&uY0o(;B%Ac$FhTFY{A>(*$}l8!-DU32 z=Bc2e-D0Ye8qCg2uLS{VMU@%IzQwAfH4G?_HfXc+W>s_aPmZP2V3wjx?;uz`n09zI z5(^Qh6EitzLr8Q9zH*@&wUTX^S=eQrST#zk96n4aW3X~3fp$;ToT?J_i{Ju*lnih+ z;rMg*BX$u)pa)sQ(*$8cdC=cPXN^Pj2Hek)f~A`)fYOi>X*Nc-QOEq(1>HD_FSYBV z^LXDX&T>Q3MNJE;-xdrC*}{;NF1DMDv+3h>InLtoJxW)%C4L^xlB|Tu4|b5wb;&57i`NYUBM4! z5U$hzMsAdi5je2~?{xsF4#xKIlw!p6>0G$0e`C;~2Tv_5EUuh_^N#R+ zh_4qH=++_(D=r+Tj?iuc(X2*=PKb9~oEJ+v9pg?siXAYl0 z%TPO(2dGXE5Tjp?eh9s)^(N%uEc^z}0D*-|#vr6puN#Z+PG3QWTY7__L_@;OD1z3Q zK~5+u7lj2A(3e90MWWD0T1YZ3hycy4+$Ma6z@c;5FiR*SlGcMB;glb#+l*Ye*p~O% z;b0?z4c>tZ-$F?yh)&KC*s9k>LsWXrCMFbq3V8&f5t%`Pz-`2h5PL(|W?;ae?{wis zTz?7MVChLliJBCiJUE!_l|+w#IxTixbTQJyJB4C|vxxwSCN5wT*$II%{#T5vO= z6{(aFjCgdJvLa0HSPj06JRswupYXAu zbK`9x2v|rM18Wrs&svNgUS|^}q!HcIi}x=sJ+SB^u}&?D7@#!TVoqWk+nD0$Oc+_= z^p8w9)wIyfsl*qsveWO>aFRj)9bN+_53TOO{T%u729!sDmv+!%PL9dkq+Y6K7_{0X^2`imCl0ZX%60qwJ z{>9ilg3&_HL0d$Zop>>f!l|865?x?(C9V#c(#0lOzo>{ZMVu0j3%z9L$885&C4`@4 zI)f&|n`=o_6vHfDok%t-@OR`Sx0WVL3DgSYSge)F>~DKplxRVGTd)G>NO33fOCU`h z^#KuczO#tsav?Z*>HW zxj_*-BR-W25Icb>H4x+uppvm*d1MZ8OmG+^vQJew6Nf>oQiqF{ma!OAM$W}yo5f_) z4Nc&+AtFCOP_$m$R(2={h}^ zj-2=Ev^~l}5X#vqT-1G47lB->W=wU*i8EXhr;Fa_o;qa)E_727=Sk8(tFK9?!D3h( zVVnoJ0y-$e2uDKJoZ*?khCx2D+yv*54%w-CJ8D)iSxBcPoG)SJS|@Z**O2g z_&J**F&kkSH-$i1SW1H)aq_CG&Pqvb0H!|Y&MmK;D=t7xDSX7Eu{u#tyz}a&d!iKB zr8F|5Y75aaOn+tm=VB}aJS1IZWK&E#qz#9^F~Q)9n8Yw-RvBVi$}zEMa$&s{Z-T+N zxa}9vVaw2zfr^Y-A+(GZQ1hy$6N>_q2M-1FFr9C3%8j)!gvY%ZUsyasd(gn_l0g(S z-ECPA?N6^)w7qhnY#X6uFnj>5;g&>QoE9x}9ygSn?6rWahRCfG;%cYVuAwD#vYkWJ zq(dZ2Pc91M1ba661bU^Q=@T2wGz(8CBpSE>;pa@okHXjC54fqJ*XA zSW%@afR~Cvmvy3g3mYIHi->>0xYN)|v|i?QV$I2iXl}iOsmjnYE#?o)&If@_$Gk{| zj*>!?N~=RR2xh6#Yqr3&bTsKyadKX86Iby~lL(%Qi`#g&PBdqu^yoGsSLpg$9ou@7 zVEN4a(n+kgEr6QMxLZRU33Sjs2&hmTq+qKmN)S58=_UzW4ahSMJfl?%RtekoZa;`( zIx&3{89&IfY~*#rCTsrOH6dG@QHzVMaMe|~T=*UHC6K(`be@9vk?RsE(9VJXF-5Ro zrc*MU4!W{*!HuG|$rz(sra@Q%7{*{>F+|HPKo^{VBex(cI)hBh_>+zaMO9bag_QKW zFw>#NM>9b8bVW@DTbw(YzR0?)*lf@f#xE(Yfx;XvG=w^l?kzfvHKufJh?a;Z3Ctzb z)Hzj1FBGB!^C#{n1RjbCtRjgJhidD(p!!>zXcY_=7+C_VRAFdBNgT8OIkR+HBIxX} zSRrmefl?0ZVtU~~VI7y;fE{EsTHq2`w{)9D#X_oRG@`lAIyt*X_g9s?t`!{SS`FF+ z1tk+{iFd=Q>B<_ELvK|`>=f{p+u|odSA49!0As%vVLUndVG~Oo2vJwChl6U!aSFE; z-F^^^h7B*Wrkc)eIufztOdH(;-Izyrn~A4aND$=15{e6aGrlG(Rx`3OF%22eL4nU8 z4CSU08tR7*X_a7#W%C8a)$MI@Jd24M;{p;e7me-)81n|25PDZA6N*M;-Ng|C^ebX~ zgs~LLE?W+JL4(6^Gguy^6jKeSWgpi1R8+WK1?yU!ew`=lGA@#gwFbv16=iPcOe1Q- z;88lN7zdCd;c|v6SEqHd7EgNy5*OAgY%@1ex%H1N>Zuk@ifdT86PMN*4eKTJGDV^g#n41H7Zsk$A&7oCtjPdk&;2?NKRX$S}DKZ2ca&{ z@V1?4#q0uxTNI7Ni`Y=i|IsTEQZ^9tod$QiP;O!QK@6HGP)wW|V`o|*xEb(>+Dn;1tGm-NXofaRhcqBDY~b z*hE+l;v8}_CC1A90GKQ{&eU~`j)J*32Vy@tPl8pHIJ9%_g`Sw)2$yg}o9GQnBdLTg zV@A!0y>svwMAMl7x+dG(WO+D9py2-T@LUH?M* zC@_vSm=73nDpa~mQXf{xWJL8=B1y8tMIgUUPnQZ_C+n5nh%^tVi7s6~)3~@4M3Msp z_T^-*i*-ydg=n;+B6T<>>k0NGY30@wWN%`@v`n)U3~q$N9)n{m$GJa8ok%yq6y4s9 ztJwC)*`n3p_o;}J*;Hz#F<&T`baXj@po&a15g}KbBc-W743R@n1z{3e0SzZnWeudY z$QaByr%te2@C@BvURgX8caglojec@dht`&T)(3)gx*(Z_&ayZQ|3z#xb_&r;Jz6-i zfGloA$~D9kOLeSSI8G4D2N8j!gxpu_HgJ+}IJM*A2o7tM12iW>{142<)g$Z64HAt#5fW#FC3JRL# z%GF2%oM|`HqX}Q*J`{+D+d|DIJ09&~4=Xkd_ z5L6iCpQ8&a^T*L+$gQq}iJUU-72A{?bFy-L361OXk5gm!346NfxOaX;J%3vYd zm~@F=Wl&5uJ%r-#+Jps;o7+H#=GhPLP04RE*vuJ>_u&keHyAJG8E)F(V;(nS@ckY) zZSVKKjWt zNzuShr6_BFB7(pQd^Sx|G|>8;F@9Fyr+qF1jWQTN1HX`_;zH+aV5at1d% zZm%{gy;%RhsTlBxftD?sM=az2NHeY&$aDVrn+V=+;Aw3F%UXHb?yLqRbUFOrzf|zL zw5;?0UBPdss51smY4KCRMs7r}{GFAm`6h!$15fw7-SJFf;|fI>_Hd@Q{I4 zIk@U|TA6SC2vfgW3%E?Lmj^!<<@( ziQxPXYcq_PK)F`?zn1#5X|AGy#xEJUp4HUGdZ2aqg)6<7YC^bIsJ zXDDJT@XvfM18pE6G6sG(O*Nv3`LZ#8lXeBW7<`Gx;A zy#`<5ad#U07~YiUZz|aQd|)^HFa>|$=Q|C4+~f8d{4S5%ZSWHwH)HU7JZ{?HpYpi8 z!B2Wz&fuMREt@}Spac849RgOyEtCjiI zkBG@VTEM(sM^w8#Skwfsq}o5J>26H>e*WJoXvEA=(to76j5{WR&~p8kw4l)S)&I3R zcBe^-1{&*S)OEF{HZIOE2vtpD1k5rBd1cls^h$$Z@UIM~xEX`X9ye`p z#pCh@*FA2;AXwXQSdaW5D+XG&Y*~4eW_WX&v1s6#6g8ruaWaeij-^S823l*ujV_J< zYXv^&a~Wv;hK4qfpN!%UU2%Z_+tx=Ny>cWB?s{C_;BAkaHuzDGn=$yGc-(G-e+B1I z@P|6~8vO4(Znwdo_P7~?pZBMSP#}t*R8Gl}jct)?( zj0S&PaZWSZ-KWz^A2QG?N2Q<9%6#ib*z;K};1hZs(Tw)s1x@fun(-Q~^Gw?J^Iuoc zh?$|SEcJtFuA+g)FB!QCn%Y<|L&yCqO=6_T)N#snS9tEr8GNnBuzV4&s8mW2bF;jL-LqJh>J@Xc@= zGSu3<7I4fLWZ-&=8d0J4C{B|U4K(^d8ID#zQjqoXD_Rhhp}}AExV*t%_qb_;|G?vB z4E~14?Kb$TS39Cp85(@G$L%)w8jqVXc-rHp4gNuo%Nso7aXEt<9yb~R&~|=PuV4TJ zEn7AN7~%NgEdC~f6$1~efn@|h!PD9Vrwr}RYRFKAf2qY@mzH&2jx9t@-%U|x47^l} z&s2tgr$q&tPa*&c=k%%(0KL0fuTTR9TIJy2>$Ec8`VnRLYAxV0y^bhDdoZmDUP&2l zX}TBm3LSP(n_MZ#VF3 z+61Rn?ape*(5fvh<3nj#=Sx~fPp@DL1OJ(#GPUZDX%X+#E48Y@Pbki5RlEB@TIoXu zTIHzpLt2?{{fJh5w-)eTy^d&Ad+?MdcqOg+JxzCK+V}I%D`>>b(2th-t!b{JfyOTx zxo*|e#(EiAm0vF8&q$G_RllWaa=TnwN|wRf9yep~J3LNxw#&!AR@TdDM@}1P*|NDb zuZ3Q#R|E?Utfitt8~p1y+m=77F@wM0ak~xv4Ud~K z_%}Un+TbsGT;AXpJuYYP>v00J)$1Vt*ZThfZ7UF5XEkJ~v5#mOUrx(9|1Y#_AJZ!|ih=)LQJHG&IW6K-dZijO_yxr|HD-6ekyiSU zfmS&x{cWwxw|<19KcfZwnqEiLm_7KSCU_+^c9Yh*miGPppDSp@%uq;{`a+tkXrS>+ zMy_+3+E_0`jXkSLj1*aFY(|It2G4ytgKzY>yumkl+_b?rd)$n{yFG5V!B^xRM^my4 zzS84%8+^6L%@}-*$4whN?Qwa7U*~ZnYS#LCyS5EdWT0ismLkh|AkDa9V1LHZ<)*td zLoLlX!h{8VbW*S6dxK9a&hfq7mD0im2FRt-3C0>%!mFdt0xx6>(cL^@`3x;r!$BeM-w2PJgSivdyypM(=I*XYmD_fez;% zm+wlQ-3+JyC3VNl|J+o+#QY-jyv;Wo&Oa{S`?Q?l^xshZYKGz$RB@RCGZSe_bU6RG zeEjNf=5H2n*z+BYS?p+aSDc~eARK%a&EjD4SveBsHtheEJ9#5$wz4hn=F1g3+~kSA z6FG1b;#mj#Vwq5(HeSYM8gB3`mK}PtQOzA!7S?d!QhMid=uTJ3Veo}A zlA-ic69-|;;-o0~Gb^>Y5?Ap;&MbDpHTfpNtlJEVBL=Vy7kGCo@7vg;Rc!p*uqX1G zfj$9cQZzOoDppI%B=7$}@;YQ;bjSppAJXK{t~a{d^zX1>?!yxbrR9G?^V{{`=)L7L z+hF&z$otnXzZ_fshgGB4^;252rMLWw4(D%sXX%a8A$$nReKWtEoy zUX?(*9#)MbiSb9fW4FO^Kri>T|1nk0c70q^TKlaYyD|XsfBN$0)QsA-sQHK6ujrrx zfMr{GXEncFYh&nd{cjEB|NIrMWV_b1;k=N}!}Qw%j#Zcf-F*#i@UyGhEQiEjEiS!J z0QKj;SM%Fd1}9C8Po64l*LMu(f1OKkuU`2%?EatSGu-0<`s;t_&F+a^hZXg3``@Ga zDF^&Tn%}Or1mq8*q{I7n%}PbRi3O28$Y}M zMF1S5G}+!6_h_%X45uHye;&!m@|HiR`E%cA{x2Xe+i&^vnm_-2=Kn3^CGT1OY0W>a z`QNF8H8HmK=aGlM7xBNp{-^fM5FI?F1NyMs`9GH5u3y8W{`}w5{NL03rbn#=%V*a= z9LoR1{uxR7#D15<(z!b?e|G;(08C^3e^T>5IVS%w|NJ@fvi(XfK<;PxZ3nX9nU+7h z{#73=5A@G-TK{mlme11iV3h!}7<3Q_!~NpY&&(!jp$H8Z!l}W&Xrq`bz`z69(}+ z0<-^v_*VsH*9Y;r!0h!P{?&om;X(XsQu{iH-x;KKv+u!Fuq!Zo*oQ`MFAL1h4dP#$ z+Oa|W<$>9yL3}mYtQFugg5S0|z$33w{NC%ZF#Qvto{(ce@stVLa#so)=tCI)6Ic*7X{ z8^_>hM(~uL$&7KQyk8Q$^zv{9ws0aCrT;Bj&cj2bxLfg04&i@P@h=YHt5UwFv+0oy z!H@F8hqavi5UHuw@jbE;zWO5YS^XN<-`|sR^1<(O0@C;U6Tn$?cuDXty*$iURI?M{ zt6~1RO7X+|HY50#ULNM>TY$f^uN?;7GY0=K@HbeZzH3L)?+WZ=vp_+JHnraz&=UmAn|L*TRe^*4ea)j$7xO!~`UWU|`%df>Cl-#Z3B zFL=;LMe<$R{xf6BuV{Mv)UDBT1NbaDyid}P66hDk;Q!;8a(-9R?+S`4^5?Y3-v|DN z(c**eNczzSm%^T12|ZvRLbmpECv+CwZXSdG5#Y1xqeo zqCfn782GGl|Lhq2?~Ez`kG1^0H@R|u+FgSGsrbBh&gioPek18tyxt}Jyr#ca@OsmC zd9$W}QuS4$&wfbp5ASvei^LXy&qEIn>y6W6%3qW8eHAL$8IztHk+bOk%ozOV#^Ap` z2LDaqv-sg#W71E;k7IwI()o$?M z=1+wu3i$Ryh_CD5Rc)Ls!ozu+Jjf5{cHw2}5fqLOh(mX@PFU&kl)+LDZ=vJhj0Qei zP?Tm$6?^yCi$KN&coo5hoOc`;W)BYdju2NTd1yW6xm)i0Sz%%2Bu*nR_5tn5Pb+dbMaG$}JiBDD8B#!Ib|ov$n%pX} zm+~cq!OU92a{5gZYasIa!=iv{gQi zjN{JUH5#MQdWxXbGkW5IC%aWOa$NlgqQ9tRcL>M;aYnx$g#(p&?kf&$;5m>=H#_Y_ z+KRXKd6L(xM yOEWl3y{WGsr0MQ?oL{k7<>u_Rb4#jGS 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 O0Fw^oH;2Wyy#EhSP9q8c diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist b/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist deleted file mode 100644 index 67e0de3a..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_f8b9/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl b/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl deleted file mode 100644 index 90204bc9..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : f8b985b8a72b5c524445ffcbcf3d5822 -name : coin_pl_f8b9 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 12 10:14:53 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so b/scripts/_Inline/lib/auto/coin_pl_f8b9/coin_pl_f8b9.so deleted file mode 100755 index cb34567e9f436d3170b26f1500d4971a4857da37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 66852 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%0D)3#-%qr@0C{sQ~`M)y#>&leBqQC4h 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 G_x}NWC;El} diff --git a/scripts/coin.pl b/scripts/coin.pl index 5233755b..bcb21df7 100644 --- a/scripts/coin.pl +++ b/scripts/coin.pl @@ -1,27 +1,13 @@ -package CBitcoin; - our $VERSION = '0.01'; - BEGIN {$VERSION = '0.01'} - + #use Inline C; use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' # ,LD => 'gcc -Wl,-rpath=../bin' ,CLEAN_AFTER_BUILD => 0 ,BUILD_NOISY => 1 ; -# sudo apt-get install libinline-perl -my $masterkey = newMasterKey(1); - -open(my $fhin," | ssh pi\@10.21.0.29 \"cat - > /tmp/copier\" "); - -foreach my $i (1..1){ - my $childkey = deriveChildPrivate($masterkey,1,$i); - my ($wif,$address) = (exportWIFFromCBHDKey($childkey),exportAddressFromCBHDKey($childkey)); - - print STDERR "$address ($wif)\n"; - syswrite($fhin,"$wif\n"); - -} -close $fhin; - + +print "9 + 16 = ", add(9, 16), "\n"; +print "9 - 16 = ", subtract(9, 16), "\n"; +print "WIF:".createWIF(2)."\n"; use Inline C => <<'END_OF_C_CODE'; #include @@ -36,135 +22,29 @@ package CBitcoin; #include #include -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* newMasterKey(int arg){ - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* deriveChildPrivate(char* privstring,bool hard,int child){ - CBHDKey* masterkey = importDataToCBHDKey(privstring); - - // generate child key - CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; - CBHDKeyDeriveChild(masterkey, childID, childkey); - free(masterkey); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(childkey, keyData); - free(childkey); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* exportWIFFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBWIF * wif = CBHDKeyGetWIF(cbkey); - free(cbkey); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* exportAddressFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); - free(cbkey); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - return (char *)CBByteArrayGetData(addressstring); -} - -char* newWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - free(key); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* publickeyFromWIF(char* wifstring){ - CBByteArray * old = CBNewByteArrayFromString(wifstring,true); - CBWIF * wif = CBNewWIFFromString(old, false); - CBDestroyByteArray(old); - uint8_t privKey[32]; - CBWIFGetPrivateKey(wif,privKey); - CBFreeWIF(wif); - CBKeyPair * key = CBNewKeyPair(true); - CBInitKeyPair(key); - memcpy(key->privkey, privKey, 32); - CBKeyGetPublicKey(key->privkey, key->pubkey.key); - return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - -} - -char* addressFromPublicKey(char* pubkey){ - CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); - //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); - //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); - - - //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); - - CBKeyPair * key = CBNewKeyPair(false); - memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); - CBDestroyByteArray(pubkeystring); - // this code came from CBKeyPairGetHash definition - uint8_t hash[32]; - CBSha256(key->pubkey.key, 33, hash); - CBRipemd160(hash, 32, key->pubkey.hash); - - CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); - free(key); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - - return (char *)CBByteArrayGetData(addressstring); -} - char* createWIF(int arg){ CBKeyPair * key = CBNewKeyPair(true); CBKeyPairGenerate(key); CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); CBByteArray * str = CBChecksumBytesGetString(wif); CBReleaseObject(wif); - //return (char *)CBByteArrayGetData(str); + return (char *)CBByteArrayGetData(str); CBReleaseObject(str); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - return (char *)CBByteArrayGetData(string); + //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); //CBReleaseObject(key); //CBReleaseObject(address); + +// return (int) 1; } +int add(int x, int y) { + return x + y; +} +int subtract(int x, int y) { + return x - y; +} END_OF_C_CODE From 5435ebd9ba94ecca71c380c5c122e1af2e5945d0 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 16 Jun 2014 14:44:36 +0900 Subject: [PATCH 005/127] creating an XS module --- scripts/module/CBitcoin/CBitcoin.bs | 0 scripts/module/CBitcoin/CBitcoin.c | 144 + scripts/module/CBitcoin/CBitcoin.o | Bin 0 -> 76880 bytes scripts/module/CBitcoin/CBitcoin.xs | 22 + scripts/module/CBitcoin/Changes | 6 + scripts/module/CBitcoin/MANIFEST | 8 + scripts/module/CBitcoin/MYMETA.json | 39 + scripts/module/CBitcoin/MYMETA.yml | 21 + scripts/module/CBitcoin/Makefile.PL | 17 + scripts/module/CBitcoin/README | 40 + scripts/module/CBitcoin/blib/arch/.exists | 0 .../CBitcoin/blib/arch/auto/CBitcoin/.exists | 0 .../blib/arch/auto/CBitcoin/CBitcoin.so | Bin 0 -> 47830 bytes scripts/module/CBitcoin/blib/lib/.exists | 0 scripts/module/CBitcoin/blib/lib/CBitcoin.pm | 86 + .../CBitcoin/blib/lib/auto/CBitcoin/.exists | 0 scripts/module/CBitcoin/blib/man1/.exists | 0 scripts/module/CBitcoin/blib/man3/.exists | 0 .../module/CBitcoin/blib/man3/CBitcoin.3pm | 169 + scripts/module/CBitcoin/blib/script/.exists | 0 scripts/module/CBitcoin/lib/CBitcoin.pm | 86 + scripts/module/CBitcoin/pm_to_blib | 0 scripts/module/CBitcoin/ppport.h | 7063 +++++++++++++++++ scripts/module/CBitcoin/t/CBitcoin.t | 25 + 24 files changed, 7726 insertions(+) create mode 100644 scripts/module/CBitcoin/CBitcoin.bs create mode 100644 scripts/module/CBitcoin/CBitcoin.c create mode 100644 scripts/module/CBitcoin/CBitcoin.o create mode 100644 scripts/module/CBitcoin/CBitcoin.xs create mode 100644 scripts/module/CBitcoin/Changes create mode 100644 scripts/module/CBitcoin/MANIFEST create mode 100644 scripts/module/CBitcoin/MYMETA.json create mode 100644 scripts/module/CBitcoin/MYMETA.yml create mode 100644 scripts/module/CBitcoin/Makefile.PL create mode 100644 scripts/module/CBitcoin/README create mode 100644 scripts/module/CBitcoin/blib/arch/.exists create mode 100644 scripts/module/CBitcoin/blib/arch/auto/CBitcoin/.exists create mode 100755 scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so create mode 100644 scripts/module/CBitcoin/blib/lib/.exists create mode 100644 scripts/module/CBitcoin/blib/lib/CBitcoin.pm create mode 100644 scripts/module/CBitcoin/blib/lib/auto/CBitcoin/.exists create mode 100644 scripts/module/CBitcoin/blib/man1/.exists create mode 100644 scripts/module/CBitcoin/blib/man3/.exists create mode 100644 scripts/module/CBitcoin/blib/man3/CBitcoin.3pm create mode 100644 scripts/module/CBitcoin/blib/script/.exists create mode 100644 scripts/module/CBitcoin/lib/CBitcoin.pm create mode 100644 scripts/module/CBitcoin/pm_to_blib create mode 100644 scripts/module/CBitcoin/ppport.h create mode 100644 scripts/module/CBitcoin/t/CBitcoin.t diff --git a/scripts/module/CBitcoin/CBitcoin.bs b/scripts/module/CBitcoin/CBitcoin.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/CBitcoin.c b/scripts/module/CBitcoin/CBitcoin.c new file mode 100644 index 00000000..4feafaee --- /dev/null +++ b/scripts/module/CBitcoin/CBitcoin.c @@ -0,0 +1,144 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of CBitcoin.xs. Do not edit this file, edit CBitcoin.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "CBitcoin.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include "ppport.h" + + +#line 18 "CBitcoin.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 70 "CBitcoin.c" + +XS(XS_CBitcoin_hello); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin_hello) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 0) + croak_xs_usage(cv, ""); + { +#line 13 "CBitcoin.xs" + printf("Hello, world!\n"); +#line 85 "CBitcoin.c" + } + XSRETURN_EMPTY; +} + + +XS(XS_CBitcoin_is_even); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin_is_even) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "input"); + { + int input = (int)SvIV(ST(0)); + int RETVAL; + dXSTARG; +#line 20 "CBitcoin.xs" + RETVAL = (input % 2 == 0); +#line 107 "CBitcoin.c" + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::hello", XS_CBitcoin_hello, file); + newXS("CBitcoin::is_even", XS_CBitcoin_is_even, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/module/CBitcoin/CBitcoin.o b/scripts/module/CBitcoin/CBitcoin.o new file mode 100644 index 0000000000000000000000000000000000000000..c34075a5e887842fb29a1c9f12836a5238583b76 GIT binary patch literal 76880 zcmb@v37C|{wLboJ_b~J@E88$^($Xx$A`A$K;=%v}GcW=IB8u7!GtJC6TiZPYgBV2t z1rfz)B8UqbqZmzGV~Cnuq9$TUB4$wxi6QqIFD_9MHxf+zy=SRj4sh@Dzt6uP=&twu z>Z>|+>eQ)IRbTg9TTwmJ@AG-?<@3(@8V`sz&^* zdef20pBxRWJL)UkFcLB(vsKpq758r${Z}fta&y+<&!^@i&+909@AUuEsDrH;>M3@Mn}-b3$_EPMsUZ;A#rS-I(_oT?5qlvHnO@s?gz zerfq-<(I#-qHxf92$a?!YG>tUZ^q_W=)H5k`s%B~L2FajH@(8eRBd|sy+ydjpmIxZ z%22)OBS^a;SP!-H^l8NF70cRc~q^a

Yho#4NT1ZOcPOGdP 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 kUH2h8T!0@reeu~5}?cM(Jf1o(T2><{9 literal 0 HcmV?d00001 diff --git a/scripts/module/CBitcoin/CBitcoin.xs b/scripts/module/CBitcoin/CBitcoin.xs new file mode 100644 index 00000000..43e62158 --- /dev/null +++ b/scripts/module/CBitcoin/CBitcoin.xs @@ -0,0 +1,22 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include "ppport.h" + + +MODULE = CBitcoin PACKAGE = CBitcoin + +void +hello() +CODE: + printf("Hello, world!\n"); + + +int +is_even(input) + int input +CODE: + RETVAL = (input % 2 == 0); +OUTPUT: + RETVAL diff --git a/scripts/module/CBitcoin/Changes b/scripts/module/CBitcoin/Changes new file mode 100644 index 00000000..da0cb272 --- /dev/null +++ b/scripts/module/CBitcoin/Changes @@ -0,0 +1,6 @@ +Revision history for Perl extension CBitcoin. + +0.01 Mon Jun 16 14:37:15 2014 + - original version; created by h2xs 1.23 with options + -A -n CBitcoin + diff --git a/scripts/module/CBitcoin/MANIFEST b/scripts/module/CBitcoin/MANIFEST new file mode 100644 index 00000000..5801121c --- /dev/null +++ b/scripts/module/CBitcoin/MANIFEST @@ -0,0 +1,8 @@ +CBitcoin.xs +Changes +Makefile.PL +MANIFEST +ppport.h +README +t/CBitcoin.t +lib/CBitcoin.pm diff --git a/scripts/module/CBitcoin/MYMETA.json b/scripts/module/CBitcoin/MYMETA.json new file mode 100644 index 00000000..e9d6297e --- /dev/null +++ b/scripts/module/CBitcoin/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "Perl extension for blah blah blah", + "author" : [ + "Joel DeJesus " + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/module/CBitcoin/MYMETA.yml b/scripts/module/CBitcoin/MYMETA.yml new file mode 100644 index 00000000..6463c031 --- /dev/null +++ b/scripts/module/CBitcoin/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: 'Perl extension for blah blah blah' +author: + - 'Joel DeJesus ' +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/module/CBitcoin/Makefile.PL b/scripts/module/CBitcoin/Makefile.PL new file mode 100644 index 00000000..25dc0489 --- /dev/null +++ b/scripts/module/CBitcoin/Makefile.PL @@ -0,0 +1,17 @@ +use 5.014002; +use ExtUtils::MakeMaker; +# See lib/ExtUtils/MakeMaker.pm for details of how to influence +# the contents of the Makefile that is written. +WriteMakefile( + NAME => 'CBitcoin', + VERSION_FROM => 'lib/CBitcoin.pm', # finds $VERSION + PREREQ_PM => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'lib/CBitcoin.pm', # retrieve abstract from module + AUTHOR => 'Joel DeJesus ') : ()), + LIBS => [''], # e.g., '-lm' + DEFINE => '', # e.g., '-DHAVE_SOMETHING' + INC => '-I.', # e.g., '-I. -I/usr/include/other' + # Un-comment this if you add C files to link with later: + # OBJECT => '$(O_FILES)', # link all the C files too +); diff --git a/scripts/module/CBitcoin/README b/scripts/module/CBitcoin/README new file mode 100644 index 00000000..219f887f --- /dev/null +++ b/scripts/module/CBitcoin/README @@ -0,0 +1,40 @@ +CBitcoin version 0.01 +===================== + +The README is used to introduce the module and provide instructions on +how to install the module, any machine dependencies it may have (for +example C compilers and installed libraries) and any other information +that should be provided before the module is installed. + +A README file is required for CPAN modules since CPAN extracts the +README file from a module distribution so that people browsing the +archive can use it get an idea of the modules uses. It is usually a +good idea to provide version information here so that people can +decide whether fixes for the module are worth downloading. + +INSTALLATION + +To install this module type the following: + + perl Makefile.PL + make + make test + make install + +DEPENDENCIES + +This module requires these other modules and libraries: + + blah blah blah + +COPYRIGHT AND LICENCE + +Put the correct copyright and licence information here. + +Copyright (C) 2014 by Joel DeJesus + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. + + diff --git a/scripts/module/CBitcoin/blib/arch/.exists b/scripts/module/CBitcoin/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/.exists b/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so b/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so new file mode 100755 index 0000000000000000000000000000000000000000..d68767991fd9f0daf1dd5b8619f23337e8ae4132 GIT binary patch literal 47830 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

iZhiM7=zRi1REu+Kq_ZvTy9OCXPARJ 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%0DoH%e-%C{=Gn9_= znNT9b)0Xp-7|$H%9WlPcaXt~_mlyMd7{8(z|6}~hVqA~$s~pGc7{9t0hhzMjVw{cf zYaPeU7{AVOJdE+3j^kX6?<&Tz7~kzUF2#7malDD~J;ituhq=JM%tXQM}wA-m!EVGU*K5`v_x4mr}p_26$Dy>gxNQrqghz8$sd-{-}7l9ez{1 z+<*R7e0z}g&kPkDaeGVsYPaIsgS3C%1w1JVQkG4qs_`Shn<^0>mVn#TBRcVhrn5ar z`}vzHUw#g}t@2S48tK>IA8I=2Z+5--)%OeF&2lpCd`&t(SvuVE>|5jhStFlee5h)- zT{ZZKF(SJsfC3L8A z=&ChT3dDFkx6d#d!!p()Y^24~%tWcrs>OZ`DlL!Zuwg*CeI*#4KiQML24I8k@&nHu zo}7iPQ=WHcrzm}J=E?n&Gr6~H&%2W_h0XnXTIGHNy3&S~v%n^Ax;qQK9JUOSmZs{e zk%8D+b~*=VruR?fHnNGh?ox^Pnt`=(@}n?|NJkPdbP0t literal 0 HcmV?d00001 diff --git a/scripts/module/CBitcoin/blib/lib/.exists b/scripts/module/CBitcoin/blib/lib/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/lib/CBitcoin.pm b/scripts/module/CBitcoin/blib/lib/CBitcoin.pm new file mode 100644 index 00000000..38e8c96a --- /dev/null +++ b/scripts/module/CBitcoin/blib/lib/CBitcoin.pm @@ -0,0 +1,86 @@ +package CBitcoin; + +use 5.014002; +use strict; +use warnings; + +require Exporter; + +our @ISA = qw(Exporter); + +# Items to export into callers namespace by default. Note: do not export +# names by default without a very good reason. Use EXPORT_OK instead. +# Do not simply export all your public functions/methods/constants. + +# This allows declaration use CBitcoin ':all'; +# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK +# will save memory. +our %EXPORT_TAGS = ( 'all' => [ qw( + +) ] ); + +our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); + +our @EXPORT = qw( + +); + +our $VERSION = '0.01'; + +require XSLoader; +XSLoader::load('CBitcoin', $VERSION); + +# Preloaded methods go here. + +1; +__END__ +# Below is stub documentation for your module. You'd better edit it! + +=head1 NAME + +CBitcoin - Perl extension for blah blah blah + +=head1 SYNOPSIS + + use CBitcoin; + blah blah blah + +=head1 DESCRIPTION + +Stub documentation for CBitcoin, created by h2xs. It looks like the +author of the extension was negligent enough to leave the stub +unedited. + +Blah blah blah. + +=head2 EXPORT + +None by default. + + + +=head1 SEE ALSO + +Mention other useful documentation such as the documentation of +related modules or operating system documentation (such as man pages +in UNIX), or any relevant external documentation such as RFCs or +standards. + +If you have a mailing list set up for your module, mention it here. + +If you have a web site set up for your module, mention it here. + +=head1 AUTHOR + +Joel DeJesus, Ejoeldejesus@E + +=head1 COPYRIGHT AND LICENSE + +Copyright (C) 2014 by Joel DeJesus + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. + + +=cut diff --git a/scripts/module/CBitcoin/blib/lib/auto/CBitcoin/.exists b/scripts/module/CBitcoin/blib/lib/auto/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/man1/.exists b/scripts/module/CBitcoin/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/man3/.exists b/scripts/module/CBitcoin/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/blib/man3/CBitcoin.3pm b/scripts/module/CBitcoin/blib/man3/CBitcoin.3pm new file mode 100644 index 00000000..4b9dbbdc --- /dev/null +++ b/scripts/module/CBitcoin/blib/man3/CBitcoin.3pm @@ -0,0 +1,169 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "CBitcoin 3" +.TH CBitcoin 3 "2014-06-16" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SH "NAME" +CBitcoin \- Perl extension for blah blah blah +.SH "SYNOPSIS" +.IX Header "SYNOPSIS" +.Vb 2 +\& use CBitcoin; +\& blah blah blah +.Ve +.SH "DESCRIPTION" +.IX Header "DESCRIPTION" +Stub documentation for CBitcoin, created by h2xs. It looks like the +author of the extension was negligent enough to leave the stub +unedited. +.PP +Blah blah blah. +.SS "\s-1EXPORT\s0" +.IX Subsection "EXPORT" +None by default. +.SH "SEE ALSO" +.IX Header "SEE ALSO" +Mention other useful documentation such as the documentation of +related modules or operating system documentation (such as man pages +in \s-1UNIX\s0), or any relevant external documentation such as RFCs or +standards. +.PP +If you have a mailing list set up for your module, mention it here. +.PP +If you have a web site set up for your module, mention it here. +.SH "AUTHOR" +.IX Header "AUTHOR" +Joel DeJesus, +.SH "COPYRIGHT AND LICENSE" +.IX Header "COPYRIGHT AND LICENSE" +Copyright (C) 2014 by Joel DeJesus +.PP +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. diff --git a/scripts/module/CBitcoin/blib/script/.exists b/scripts/module/CBitcoin/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/lib/CBitcoin.pm b/scripts/module/CBitcoin/lib/CBitcoin.pm new file mode 100644 index 00000000..38e8c96a --- /dev/null +++ b/scripts/module/CBitcoin/lib/CBitcoin.pm @@ -0,0 +1,86 @@ +package CBitcoin; + +use 5.014002; +use strict; +use warnings; + +require Exporter; + +our @ISA = qw(Exporter); + +# Items to export into callers namespace by default. Note: do not export +# names by default without a very good reason. Use EXPORT_OK instead. +# Do not simply export all your public functions/methods/constants. + +# This allows declaration use CBitcoin ':all'; +# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK +# will save memory. +our %EXPORT_TAGS = ( 'all' => [ qw( + +) ] ); + +our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); + +our @EXPORT = qw( + +); + +our $VERSION = '0.01'; + +require XSLoader; +XSLoader::load('CBitcoin', $VERSION); + +# Preloaded methods go here. + +1; +__END__ +# Below is stub documentation for your module. You'd better edit it! + +=head1 NAME + +CBitcoin - Perl extension for blah blah blah + +=head1 SYNOPSIS + + use CBitcoin; + blah blah blah + +=head1 DESCRIPTION + +Stub documentation for CBitcoin, created by h2xs. It looks like the +author of the extension was negligent enough to leave the stub +unedited. + +Blah blah blah. + +=head2 EXPORT + +None by default. + + + +=head1 SEE ALSO + +Mention other useful documentation such as the documentation of +related modules or operating system documentation (such as man pages +in UNIX), or any relevant external documentation such as RFCs or +standards. + +If you have a mailing list set up for your module, mention it here. + +If you have a web site set up for your module, mention it here. + +=head1 AUTHOR + +Joel DeJesus, Ejoeldejesus@E + +=head1 COPYRIGHT AND LICENSE + +Copyright (C) 2014 by Joel DeJesus + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. + + +=cut diff --git a/scripts/module/CBitcoin/pm_to_blib b/scripts/module/CBitcoin/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/ppport.h b/scripts/module/CBitcoin/ppport.h new file mode 100644 index 00000000..6d650f44 --- /dev/null +++ b/scripts/module/CBitcoin/ppport.h @@ -0,0 +1,7063 @@ +#if 0 +<<'SKIP'; +#endif +/* +---------------------------------------------------------------------- + + ppport.h -- Perl/Pollution/Portability Version 3.19 + + Automatically created by Devel::PPPort running under perl 5.014002. + + Do NOT edit this file directly! -- Edit PPPort_pm.PL and the + includes in parts/inc/ instead. + + Use 'perldoc ppport.h' to view the documentation below. + +---------------------------------------------------------------------- + +SKIP + +=pod + +=head1 NAME + +ppport.h - Perl/Pollution/Portability version 3.19 + +=head1 SYNOPSIS + + perl ppport.h [options] [source files] + + Searches current directory for files if no [source files] are given + + --help show short help + + --version show version + + --patch=file write one patch file with changes + --copy=suffix write changed copies with suffix + --diff=program use diff program and options + + --compat-version=version provide compatibility with Perl version + --cplusplus accept C++ comments + + --quiet don't output anything except fatal errors + --nodiag don't show diagnostics + --nohints don't show hints + --nochanges don't suggest changes + --nofilter don't filter input files + + --strip strip all script and doc functionality from + ppport.h + + --list-provided list provided API + --list-unsupported list unsupported API + --api-info=name show Perl API portability information + +=head1 COMPATIBILITY + +This version of F is designed to support operation with Perl +installations back to 5.003, and has been tested up to 5.10.0. + +=head1 OPTIONS + +=head2 --help + +Display a brief usage summary. + +=head2 --version + +Display the version of F. + +=head2 --patch=I + +If this option is given, a single patch file will be created if +any changes are suggested. This requires a working diff program +to be installed on your system. + +=head2 --copy=I + +If this option is given, a copy of each file will be saved with +the given suffix that contains the suggested changes. This does +not require any external programs. Note that this does not +automagially add a dot between the original filename and the +suffix. If you want the dot, you have to include it in the option +argument. + +If neither C<--patch> or C<--copy> are given, the default is to +simply print the diffs for each file. This requires either +C or a C program to be installed. + +=head2 --diff=I + +Manually set the diff program and options to use. The default +is to use C, when installed, and output unified +context diffs. + +=head2 --compat-version=I + +Tell F to check for compatibility with the given +Perl version. The default is to check for compatibility with Perl +version 5.003. You can use this option to reduce the output +of F if you intend to be backward compatible only +down to a certain Perl version. + +=head2 --cplusplus + +Usually, F will detect C++ style comments and +replace them with C style comments for portability reasons. +Using this option instructs F to leave C++ +comments untouched. + +=head2 --quiet + +Be quiet. Don't print anything except fatal errors. + +=head2 --nodiag + +Don't output any diagnostic messages. Only portability +alerts will be printed. + +=head2 --nohints + +Don't output any hints. Hints often contain useful portability +notes. Warnings will still be displayed. + +=head2 --nochanges + +Don't suggest any changes. Only give diagnostic output and hints +unless these are also deactivated. + +=head2 --nofilter + +Don't filter the list of input files. By default, files not looking +like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped. + +=head2 --strip + +Strip all script and documentation functionality from F. +This reduces the size of F dramatically and may be useful +if you want to include F in smaller modules without +increasing their distribution size too much. + +The stripped F will have a C<--unstrip> option that allows +you to undo the stripping, but only if an appropriate C +module is installed. + +=head2 --list-provided + +Lists the API elements for which compatibility is provided by +F. Also lists if it must be explicitly requested, +if it has dependencies, and if there are hints or warnings for it. + +=head2 --list-unsupported + +Lists the API elements that are known not to be supported by +F and below which version of Perl they probably +won't be available or work. + +=head2 --api-info=I + +Show portability information for API elements matching I. +If I is surrounded by slashes, it is interpreted as a regular +expression. + +=head1 DESCRIPTION + +In order for a Perl extension (XS) module to be as portable as possible +across differing versions of Perl itself, certain steps need to be taken. + +=over 4 + +=item * + +Including this header is the first major one. This alone will give you +access to a large part of the Perl API that hasn't been available in +earlier Perl releases. Use + + perl ppport.h --list-provided + +to see which API elements are provided by ppport.h. + +=item * + +You should avoid using deprecated parts of the API. For example, using +global Perl variables without the C prefix is deprecated. Also, +some API functions used to have a C prefix. Using this form is +also deprecated. You can safely use the supported API, as F +will provide wrappers for older Perl versions. + +=item * + +If you use one of a few functions or variables that were not present in +earlier versions of Perl, and that can't be provided using a macro, you +have to explicitly request support for these functions by adding one or +more C<#define>s in your source code before the inclusion of F. + +These functions or variables will be marked C in the list shown +by C<--list-provided>. + +Depending on whether you module has a single or multiple files that +use such functions or variables, you want either C or global +variants. + +For a C function or variable (used only in a single source +file), use: + + #define NEED_function + #define NEED_variable + +For a global function or variable (used in multiple source files), +use: + + #define NEED_function_GLOBAL + #define NEED_variable_GLOBAL + +Note that you mustn't have more than one global request for the +same function or variable in your project. + + Function / Variable Static Request Global Request + ----------------------------------------------------------------------------------------- + PL_parser NEED_PL_parser NEED_PL_parser_GLOBAL + PL_signals NEED_PL_signals NEED_PL_signals_GLOBAL + eval_pv() NEED_eval_pv NEED_eval_pv_GLOBAL + grok_bin() NEED_grok_bin NEED_grok_bin_GLOBAL + grok_hex() NEED_grok_hex NEED_grok_hex_GLOBAL + grok_number() NEED_grok_number NEED_grok_number_GLOBAL + grok_numeric_radix() NEED_grok_numeric_radix NEED_grok_numeric_radix_GLOBAL + grok_oct() NEED_grok_oct NEED_grok_oct_GLOBAL + load_module() NEED_load_module NEED_load_module_GLOBAL + my_snprintf() NEED_my_snprintf NEED_my_snprintf_GLOBAL + my_sprintf() NEED_my_sprintf NEED_my_sprintf_GLOBAL + my_strlcat() NEED_my_strlcat NEED_my_strlcat_GLOBAL + my_strlcpy() NEED_my_strlcpy NEED_my_strlcpy_GLOBAL + newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL + newRV_noinc() NEED_newRV_noinc NEED_newRV_noinc_GLOBAL + newSV_type() NEED_newSV_type NEED_newSV_type_GLOBAL + newSVpvn_flags() NEED_newSVpvn_flags NEED_newSVpvn_flags_GLOBAL + newSVpvn_share() NEED_newSVpvn_share NEED_newSVpvn_share_GLOBAL + pv_display() NEED_pv_display NEED_pv_display_GLOBAL + pv_escape() NEED_pv_escape NEED_pv_escape_GLOBAL + pv_pretty() NEED_pv_pretty NEED_pv_pretty_GLOBAL + sv_2pv_flags() NEED_sv_2pv_flags NEED_sv_2pv_flags_GLOBAL + sv_2pvbyte() NEED_sv_2pvbyte NEED_sv_2pvbyte_GLOBAL + sv_catpvf_mg() NEED_sv_catpvf_mg NEED_sv_catpvf_mg_GLOBAL + sv_catpvf_mg_nocontext() NEED_sv_catpvf_mg_nocontext NEED_sv_catpvf_mg_nocontext_GLOBAL + sv_pvn_force_flags() NEED_sv_pvn_force_flags NEED_sv_pvn_force_flags_GLOBAL + sv_setpvf_mg() NEED_sv_setpvf_mg NEED_sv_setpvf_mg_GLOBAL + sv_setpvf_mg_nocontext() NEED_sv_setpvf_mg_nocontext NEED_sv_setpvf_mg_nocontext_GLOBAL + vload_module() NEED_vload_module NEED_vload_module_GLOBAL + vnewSVpvf() NEED_vnewSVpvf NEED_vnewSVpvf_GLOBAL + warner() NEED_warner NEED_warner_GLOBAL + +To avoid namespace conflicts, you can change the namespace of the +explicitly exported functions / variables using the C +macro. Just C<#define> the macro before including C: + + #define DPPP_NAMESPACE MyOwnNamespace_ + #include "ppport.h" + +The default namespace is C. + +=back + +The good thing is that most of the above can be checked by running +F on your source code. See the next section for +details. + +=head1 EXAMPLES + +To verify whether F is needed for your module, whether you +should make any changes to your code, and whether any special defines +should be used, F can be run as a Perl script to check your +source code. Simply say: + + perl ppport.h + +The result will usually be a list of patches suggesting changes +that should at least be acceptable, if not necessarily the most +efficient solution, or a fix for all possible problems. + +If you know that your XS module uses features only available in +newer Perl releases, if you're aware that it uses C++ comments, +and if you want all suggestions as a single patch file, you could +use something like this: + + perl ppport.h --compat-version=5.6.0 --cplusplus --patch=test.diff + +If you only want your code to be scanned without any suggestions +for changes, use: + + perl ppport.h --nochanges + +You can specify a different C program or options, using +the C<--diff> option: + + perl ppport.h --diff='diff -C 10' + +This would output context diffs with 10 lines of context. + +If you want to create patched copies of your files instead, use: + + perl ppport.h --copy=.new + +To display portability information for the C function, +use: + + perl ppport.h --api-info=newSVpvn + +Since the argument to C<--api-info> can be a regular expression, +you can use + + perl ppport.h --api-info=/_nomg$/ + +to display portability information for all C<_nomg> functions or + + perl ppport.h --api-info=/./ + +to display information for all known API elements. + +=head1 BUGS + +If this version of F is causing failure during +the compilation of this module, please check if newer versions +of either this module or C are available on CPAN +before sending a bug report. + +If F was generated using the latest version of +C and is causing failure of this module, please +file a bug report using the CPAN Request Tracker at L. + +Please include the following information: + +=over 4 + +=item 1. + +The complete output from running "perl -V" + +=item 2. + +This file. + +=item 3. + +The name and version of the module you were trying to build. + +=item 4. + +A full log of the build that failed. + +=item 5. + +Any other information that you think could be relevant. + +=back + +For the latest version of this code, please get the C +module from CPAN. + +=head1 COPYRIGHT + +Version 3.x, Copyright (c) 2004-2009, Marcus Holland-Moritz. + +Version 2.x, Copyright (C) 2001, Paul Marquess. + +Version 1.x, Copyright (C) 1999, Kenneth Albanowski. + +This program is free software; you can redistribute it and/or +modify it under the same terms as Perl itself. + +=head1 SEE ALSO + +See L. + +=cut + +use strict; + +# Disable broken TRIE-optimization +BEGIN { eval '${^RE_TRIE_MAXBUF} = -1' if $] >= 5.009004 && $] <= 5.009005 } + +my $VERSION = 3.19; + +my %opt = ( + quiet => 0, + diag => 1, + hints => 1, + changes => 1, + cplusplus => 0, + filter => 1, + strip => 0, + version => 0, +); + +my($ppport) = $0 =~ /([\w.]+)$/; +my $LF = '(?:\r\n|[\r\n])'; # line feed +my $HS = "[ \t]"; # horizontal whitespace + +# Never use C comments in this file! +my $ccs = '/'.'*'; +my $cce = '*'.'/'; +my $rccs = quotemeta $ccs; +my $rcce = quotemeta $cce; + +eval { + require Getopt::Long; + Getopt::Long::GetOptions(\%opt, qw( + help quiet diag! filter! hints! changes! cplusplus strip version + patch=s copy=s diff=s compat-version=s + list-provided list-unsupported api-info=s + )) or usage(); +}; + +if ($@ and grep /^-/, @ARGV) { + usage() if "@ARGV" =~ /^--?h(?:elp)?$/; + die "Getopt::Long not found. Please don't use any options.\n"; +} + +if ($opt{version}) { + print "This is $0 $VERSION.\n"; + exit 0; +} + +usage() if $opt{help}; +strip() if $opt{strip}; + +if (exists $opt{'compat-version'}) { + my($r,$v,$s) = eval { parse_version($opt{'compat-version'}) }; + if ($@) { + die "Invalid version number format: '$opt{'compat-version'}'\n"; + } + die "Only Perl 5 is supported\n" if $r != 5; + die "Invalid version number: $opt{'compat-version'}\n" if $v >= 1000 || $s >= 1000; + $opt{'compat-version'} = sprintf "%d.%03d%03d", $r, $v, $s; +} +else { + $opt{'compat-version'} = 5; +} + +my %API = map { /^(\w+)\|([^|]*)\|([^|]*)\|(\w*)$/ + ? ( $1 => { + ($2 ? ( base => $2 ) : ()), + ($3 ? ( todo => $3 ) : ()), + (index($4, 'v') >= 0 ? ( varargs => 1 ) : ()), + (index($4, 'p') >= 0 ? ( provided => 1 ) : ()), + (index($4, 'n') >= 0 ? ( nothxarg => 1 ) : ()), + } ) + : die "invalid spec: $_" } qw( +AvFILLp|5.004050||p +AvFILL||| +CLASS|||n +CPERLscope|5.005000||p +CX_CURPAD_SAVE||| +CX_CURPAD_SV||| +CopFILEAV|5.006000||p +CopFILEGV_set|5.006000||p +CopFILEGV|5.006000||p +CopFILESV|5.006000||p +CopFILE_set|5.006000||p +CopFILE|5.006000||p +CopSTASHPV_set|5.006000||p +CopSTASHPV|5.006000||p +CopSTASH_eq|5.006000||p +CopSTASH_set|5.006000||p +CopSTASH|5.006000||p +CopyD|5.009002||p +Copy||| +CvPADLIST||| +CvSTASH||| +CvWEAKOUTSIDE||| +DEFSV_set|5.011000||p +DEFSV|5.004050||p +END_EXTERN_C|5.005000||p +ENTER||| +ERRSV|5.004050||p +EXTEND||| +EXTERN_C|5.005000||p +F0convert|||n +FREETMPS||| +GIMME_V||5.004000|n +GIMME|||n +GROK_NUMERIC_RADIX|5.007002||p +G_ARRAY||| +G_DISCARD||| +G_EVAL||| +G_METHOD|5.006001||p +G_NOARGS||| +G_SCALAR||| +G_VOID||5.004000| +GetVars||| +GvSVn|5.009003||p +GvSV||| +Gv_AMupdate||| +HEf_SVKEY||5.004000| +HeHASH||5.004000| +HeKEY||5.004000| +HeKLEN||5.004000| +HePV||5.004000| +HeSVKEY_force||5.004000| +HeSVKEY_set||5.004000| +HeSVKEY||5.004000| +HeUTF8||5.011000| +HeVAL||5.004000| +HvNAMELEN_get|5.009003||p +HvNAME_get|5.009003||p +HvNAME||| +INT2PTR|5.006000||p +IN_LOCALE_COMPILETIME|5.007002||p +IN_LOCALE_RUNTIME|5.007002||p +IN_LOCALE|5.007002||p +IN_PERL_COMPILETIME|5.008001||p +IS_NUMBER_GREATER_THAN_UV_MAX|5.007002||p +IS_NUMBER_INFINITY|5.007002||p +IS_NUMBER_IN_UV|5.007002||p +IS_NUMBER_NAN|5.007003||p +IS_NUMBER_NEG|5.007002||p +IS_NUMBER_NOT_INT|5.007002||p +IVSIZE|5.006000||p +IVTYPE|5.006000||p +IVdf|5.006000||p +LEAVE||| +LVRET||| +MARK||| +MULTICALL||5.011000| +MY_CXT_CLONE|5.009002||p +MY_CXT_INIT|5.007003||p +MY_CXT|5.007003||p +MoveD|5.009002||p +Move||| +NOOP|5.005000||p +NUM2PTR|5.006000||p +NVTYPE|5.006000||p +NVef|5.006001||p +NVff|5.006001||p +NVgf|5.006001||p +Newxc|5.009003||p +Newxz|5.009003||p +Newx|5.009003||p +Nullav||| +Nullch||| +Nullcv||| +Nullhv||| +Nullsv||| +ORIGMARK||| +PAD_BASE_SV||| +PAD_CLONE_VARS||| +PAD_COMPNAME_FLAGS||| +PAD_COMPNAME_GEN_set||| +PAD_COMPNAME_GEN||| +PAD_COMPNAME_OURSTASH||| +PAD_COMPNAME_PV||| +PAD_COMPNAME_TYPE||| +PAD_DUP||| +PAD_RESTORE_LOCAL||| +PAD_SAVE_LOCAL||| +PAD_SAVE_SETNULLPAD||| +PAD_SETSV||| +PAD_SET_CUR_NOSAVE||| +PAD_SET_CUR||| +PAD_SVl||| +PAD_SV||| +PERLIO_FUNCS_CAST|5.009003||p +PERLIO_FUNCS_DECL|5.009003||p +PERL_ABS|5.008001||p +PERL_BCDVERSION|5.011000||p +PERL_GCC_BRACE_GROUPS_FORBIDDEN|5.008001||p +PERL_HASH|5.004000||p +PERL_INT_MAX|5.004000||p +PERL_INT_MIN|5.004000||p +PERL_LONG_MAX|5.004000||p +PERL_LONG_MIN|5.004000||p +PERL_MAGIC_arylen|5.007002||p +PERL_MAGIC_backref|5.007002||p +PERL_MAGIC_bm|5.007002||p +PERL_MAGIC_collxfrm|5.007002||p +PERL_MAGIC_dbfile|5.007002||p +PERL_MAGIC_dbline|5.007002||p +PERL_MAGIC_defelem|5.007002||p +PERL_MAGIC_envelem|5.007002||p +PERL_MAGIC_env|5.007002||p +PERL_MAGIC_ext|5.007002||p +PERL_MAGIC_fm|5.007002||p +PERL_MAGIC_glob|5.011000||p +PERL_MAGIC_isaelem|5.007002||p +PERL_MAGIC_isa|5.007002||p +PERL_MAGIC_mutex|5.011000||p +PERL_MAGIC_nkeys|5.007002||p +PERL_MAGIC_overload_elem|5.007002||p +PERL_MAGIC_overload_table|5.007002||p +PERL_MAGIC_overload|5.007002||p +PERL_MAGIC_pos|5.007002||p +PERL_MAGIC_qr|5.007002||p +PERL_MAGIC_regdata|5.007002||p +PERL_MAGIC_regdatum|5.007002||p +PERL_MAGIC_regex_global|5.007002||p +PERL_MAGIC_shared_scalar|5.007003||p +PERL_MAGIC_shared|5.007003||p +PERL_MAGIC_sigelem|5.007002||p +PERL_MAGIC_sig|5.007002||p +PERL_MAGIC_substr|5.007002||p +PERL_MAGIC_sv|5.007002||p +PERL_MAGIC_taint|5.007002||p +PERL_MAGIC_tiedelem|5.007002||p +PERL_MAGIC_tiedscalar|5.007002||p +PERL_MAGIC_tied|5.007002||p +PERL_MAGIC_utf8|5.008001||p +PERL_MAGIC_uvar_elem|5.007003||p +PERL_MAGIC_uvar|5.007002||p +PERL_MAGIC_vec|5.007002||p +PERL_MAGIC_vstring|5.008001||p +PERL_PV_ESCAPE_ALL|5.009004||p +PERL_PV_ESCAPE_FIRSTCHAR|5.009004||p +PERL_PV_ESCAPE_NOBACKSLASH|5.009004||p +PERL_PV_ESCAPE_NOCLEAR|5.009004||p +PERL_PV_ESCAPE_QUOTE|5.009004||p +PERL_PV_ESCAPE_RE|5.009005||p +PERL_PV_ESCAPE_UNI_DETECT|5.009004||p +PERL_PV_ESCAPE_UNI|5.009004||p +PERL_PV_PRETTY_DUMP|5.009004||p +PERL_PV_PRETTY_ELLIPSES|5.010000||p +PERL_PV_PRETTY_LTGT|5.009004||p +PERL_PV_PRETTY_NOCLEAR|5.010000||p +PERL_PV_PRETTY_QUOTE|5.009004||p +PERL_PV_PRETTY_REGPROP|5.009004||p +PERL_QUAD_MAX|5.004000||p +PERL_QUAD_MIN|5.004000||p +PERL_REVISION|5.006000||p +PERL_SCAN_ALLOW_UNDERSCORES|5.007003||p +PERL_SCAN_DISALLOW_PREFIX|5.007003||p +PERL_SCAN_GREATER_THAN_UV_MAX|5.007003||p +PERL_SCAN_SILENT_ILLDIGIT|5.008001||p +PERL_SHORT_MAX|5.004000||p +PERL_SHORT_MIN|5.004000||p +PERL_SIGNALS_UNSAFE_FLAG|5.008001||p +PERL_SUBVERSION|5.006000||p +PERL_SYS_INIT3||5.006000| +PERL_SYS_INIT||| +PERL_SYS_TERM||5.011000| +PERL_UCHAR_MAX|5.004000||p +PERL_UCHAR_MIN|5.004000||p +PERL_UINT_MAX|5.004000||p +PERL_UINT_MIN|5.004000||p +PERL_ULONG_MAX|5.004000||p +PERL_ULONG_MIN|5.004000||p +PERL_UNUSED_ARG|5.009003||p +PERL_UNUSED_CONTEXT|5.009004||p +PERL_UNUSED_DECL|5.007002||p +PERL_UNUSED_VAR|5.007002||p +PERL_UQUAD_MAX|5.004000||p +PERL_UQUAD_MIN|5.004000||p +PERL_USE_GCC_BRACE_GROUPS|5.009004||p +PERL_USHORT_MAX|5.004000||p +PERL_USHORT_MIN|5.004000||p +PERL_VERSION|5.006000||p +PL_DBsignal|5.005000||p +PL_DBsingle|||pn +PL_DBsub|||pn +PL_DBtrace|||pn +PL_Sv|5.005000||p +PL_bufend|5.011000||p +PL_bufptr|5.011000||p +PL_compiling|5.004050||p +PL_copline|5.011000||p +PL_curcop|5.004050||p +PL_curstash|5.004050||p +PL_debstash|5.004050||p +PL_defgv|5.004050||p +PL_diehook|5.004050||p +PL_dirty|5.004050||p +PL_dowarn|||pn +PL_errgv|5.004050||p +PL_error_count|5.011000||p +PL_expect|5.011000||p +PL_hexdigit|5.005000||p +PL_hints|5.005000||p +PL_in_my_stash|5.011000||p +PL_in_my|5.011000||p +PL_last_in_gv|||n +PL_laststatval|5.005000||p +PL_lex_state|5.011000||p +PL_lex_stuff|5.011000||p +PL_linestr|5.011000||p +PL_modglobal||5.005000|n +PL_na|5.004050||pn +PL_no_modify|5.006000||p +PL_ofsgv|||n +PL_parser|5.009005||p +PL_perl_destruct_level|5.004050||p +PL_perldb|5.004050||p +PL_ppaddr|5.006000||p +PL_rsfp_filters|5.004050||p +PL_rsfp|5.004050||p +PL_rs|||n +PL_signals|5.008001||p +PL_stack_base|5.004050||p +PL_stack_sp|5.004050||p +PL_statcache|5.005000||p +PL_stdingv|5.004050||p +PL_sv_arenaroot|5.004050||p +PL_sv_no|5.004050||pn +PL_sv_undef|5.004050||pn +PL_sv_yes|5.004050||pn +PL_tainted|5.004050||p +PL_tainting|5.004050||p +PL_tokenbuf|5.011000||p +POP_MULTICALL||5.011000| +POPi|||n +POPl|||n +POPn|||n +POPpbytex||5.007001|n +POPpx||5.005030|n +POPp|||n +POPs|||n +PTR2IV|5.006000||p +PTR2NV|5.006000||p +PTR2UV|5.006000||p +PTR2nat|5.009003||p +PTR2ul|5.007001||p +PTRV|5.006000||p +PUSHMARK||| +PUSH_MULTICALL||5.011000| +PUSHi||| +PUSHmortal|5.009002||p +PUSHn||| +PUSHp||| +PUSHs||| +PUSHu|5.004000||p +PUTBACK||| +PerlIO_clearerr||5.007003| +PerlIO_close||5.007003| +PerlIO_context_layers||5.009004| +PerlIO_eof||5.007003| +PerlIO_error||5.007003| +PerlIO_fileno||5.007003| +PerlIO_fill||5.007003| +PerlIO_flush||5.007003| +PerlIO_get_base||5.007003| +PerlIO_get_bufsiz||5.007003| +PerlIO_get_cnt||5.007003| +PerlIO_get_ptr||5.007003| +PerlIO_read||5.007003| +PerlIO_seek||5.007003| +PerlIO_set_cnt||5.007003| +PerlIO_set_ptrcnt||5.007003| +PerlIO_setlinebuf||5.007003| +PerlIO_stderr||5.007003| +PerlIO_stdin||5.007003| +PerlIO_stdout||5.007003| +PerlIO_tell||5.007003| +PerlIO_unread||5.007003| +PerlIO_write||5.007003| +Perl_signbit||5.009005|n +PoisonFree|5.009004||p +PoisonNew|5.009004||p +PoisonWith|5.009004||p +Poison|5.008000||p +RETVAL|||n +Renewc||| +Renew||| +SAVECLEARSV||| +SAVECOMPPAD||| +SAVEPADSV||| +SAVETMPS||| +SAVE_DEFSV|5.004050||p +SPAGAIN||| +SP||| +START_EXTERN_C|5.005000||p +START_MY_CXT|5.007003||p +STMT_END|||p +STMT_START|||p +STR_WITH_LEN|5.009003||p +ST||| +SV_CONST_RETURN|5.009003||p +SV_COW_DROP_PV|5.008001||p +SV_COW_SHARED_HASH_KEYS|5.009005||p +SV_GMAGIC|5.007002||p +SV_HAS_TRAILING_NUL|5.009004||p +SV_IMMEDIATE_UNREF|5.007001||p +SV_MUTABLE_RETURN|5.009003||p +SV_NOSTEAL|5.009002||p +SV_SMAGIC|5.009003||p +SV_UTF8_NO_ENCODING|5.008001||p +SVfARG|5.009005||p +SVf_UTF8|5.006000||p +SVf|5.006000||p +SVt_IV||| +SVt_NV||| +SVt_PVAV||| +SVt_PVCV||| +SVt_PVHV||| +SVt_PVMG||| +SVt_PV||| +Safefree||| +Slab_Alloc||| +Slab_Free||| +Slab_to_rw||| +StructCopy||| +SvCUR_set||| +SvCUR||| +SvEND||| +SvGAMAGIC||5.006001| +SvGETMAGIC|5.004050||p +SvGROW||| +SvIOK_UV||5.006000| +SvIOK_notUV||5.006000| +SvIOK_off||| +SvIOK_only_UV||5.006000| +SvIOK_only||| +SvIOK_on||| +SvIOKp||| +SvIOK||| +SvIVX||| +SvIV_nomg|5.009001||p +SvIV_set||| +SvIVx||| +SvIV||| +SvIsCOW_shared_hash||5.008003| +SvIsCOW||5.008003| +SvLEN_set||| +SvLEN||| +SvLOCK||5.007003| +SvMAGIC_set|5.009003||p +SvNIOK_off||| +SvNIOKp||| +SvNIOK||| +SvNOK_off||| +SvNOK_only||| +SvNOK_on||| +SvNOKp||| +SvNOK||| +SvNVX||| +SvNV_set||| +SvNVx||| +SvNV||| +SvOK||| +SvOOK_offset||5.011000| +SvOOK||| +SvPOK_off||| +SvPOK_only_UTF8||5.006000| +SvPOK_only||| +SvPOK_on||| +SvPOKp||| +SvPOK||| +SvPVX_const|5.009003||p +SvPVX_mutable|5.009003||p +SvPVX||| +SvPV_const|5.009003||p +SvPV_flags_const_nolen|5.009003||p +SvPV_flags_const|5.009003||p +SvPV_flags_mutable|5.009003||p +SvPV_flags|5.007002||p +SvPV_force_flags_mutable|5.009003||p +SvPV_force_flags_nolen|5.009003||p +SvPV_force_flags|5.007002||p +SvPV_force_mutable|5.009003||p +SvPV_force_nolen|5.009003||p +SvPV_force_nomg_nolen|5.009003||p +SvPV_force_nomg|5.007002||p +SvPV_force|||p +SvPV_mutable|5.009003||p +SvPV_nolen_const|5.009003||p +SvPV_nolen|5.006000||p +SvPV_nomg_const_nolen|5.009003||p +SvPV_nomg_const|5.009003||p +SvPV_nomg|5.007002||p +SvPV_renew|5.009003||p +SvPV_set||| +SvPVbyte_force||5.009002| +SvPVbyte_nolen||5.006000| +SvPVbytex_force||5.006000| +SvPVbytex||5.006000| +SvPVbyte|5.006000||p +SvPVutf8_force||5.006000| +SvPVutf8_nolen||5.006000| +SvPVutf8x_force||5.006000| +SvPVutf8x||5.006000| +SvPVutf8||5.006000| +SvPVx||| +SvPV||| +SvREFCNT_dec||| +SvREFCNT_inc_NN|5.009004||p +SvREFCNT_inc_simple_NN|5.009004||p +SvREFCNT_inc_simple_void_NN|5.009004||p +SvREFCNT_inc_simple_void|5.009004||p +SvREFCNT_inc_simple|5.009004||p +SvREFCNT_inc_void_NN|5.009004||p +SvREFCNT_inc_void|5.009004||p +SvREFCNT_inc|||p +SvREFCNT||| +SvROK_off||| +SvROK_on||| +SvROK||| +SvRV_set|5.009003||p +SvRV||| +SvRXOK||5.009005| +SvRX||5.009005| +SvSETMAGIC||| +SvSHARED_HASH|5.009003||p +SvSHARE||5.007003| +SvSTASH_set|5.009003||p +SvSTASH||| +SvSetMagicSV_nosteal||5.004000| +SvSetMagicSV||5.004000| +SvSetSV_nosteal||5.004000| +SvSetSV||| +SvTAINTED_off||5.004000| +SvTAINTED_on||5.004000| +SvTAINTED||5.004000| +SvTAINT||| +SvTRUE||| +SvTYPE||| +SvUNLOCK||5.007003| +SvUOK|5.007001|5.006000|p +SvUPGRADE||| +SvUTF8_off||5.006000| +SvUTF8_on||5.006000| +SvUTF8||5.006000| +SvUVXx|5.004000||p +SvUVX|5.004000||p +SvUV_nomg|5.009001||p +SvUV_set|5.009003||p +SvUVx|5.004000||p +SvUV|5.004000||p +SvVOK||5.008001| +SvVSTRING_mg|5.009004||p +THIS|||n +UNDERBAR|5.009002||p +UTF8_MAXBYTES|5.009002||p +UVSIZE|5.006000||p +UVTYPE|5.006000||p +UVXf|5.007001||p +UVof|5.006000||p +UVuf|5.006000||p +UVxf|5.006000||p +WARN_ALL|5.006000||p +WARN_AMBIGUOUS|5.006000||p +WARN_ASSERTIONS|5.011000||p +WARN_BAREWORD|5.006000||p +WARN_CLOSED|5.006000||p +WARN_CLOSURE|5.006000||p +WARN_DEBUGGING|5.006000||p +WARN_DEPRECATED|5.006000||p +WARN_DIGIT|5.006000||p +WARN_EXEC|5.006000||p +WARN_EXITING|5.006000||p +WARN_GLOB|5.006000||p +WARN_INPLACE|5.006000||p +WARN_INTERNAL|5.006000||p +WARN_IO|5.006000||p +WARN_LAYER|5.008000||p +WARN_MALLOC|5.006000||p +WARN_MISC|5.006000||p +WARN_NEWLINE|5.006000||p +WARN_NUMERIC|5.006000||p +WARN_ONCE|5.006000||p +WARN_OVERFLOW|5.006000||p +WARN_PACK|5.006000||p +WARN_PARENTHESIS|5.006000||p +WARN_PIPE|5.006000||p +WARN_PORTABLE|5.006000||p +WARN_PRECEDENCE|5.006000||p +WARN_PRINTF|5.006000||p +WARN_PROTOTYPE|5.006000||p +WARN_QW|5.006000||p +WARN_RECURSION|5.006000||p +WARN_REDEFINE|5.006000||p +WARN_REGEXP|5.006000||p +WARN_RESERVED|5.006000||p +WARN_SEMICOLON|5.006000||p +WARN_SEVERE|5.006000||p +WARN_SIGNAL|5.006000||p +WARN_SUBSTR|5.006000||p +WARN_SYNTAX|5.006000||p +WARN_TAINT|5.006000||p +WARN_THREADS|5.008000||p +WARN_UNINITIALIZED|5.006000||p +WARN_UNOPENED|5.006000||p +WARN_UNPACK|5.006000||p +WARN_UNTIE|5.006000||p +WARN_UTF8|5.006000||p +WARN_VOID|5.006000||p +XCPT_CATCH|5.009002||p +XCPT_RETHROW|5.009002||p +XCPT_TRY_END|5.009002||p +XCPT_TRY_START|5.009002||p +XPUSHi||| +XPUSHmortal|5.009002||p +XPUSHn||| +XPUSHp||| +XPUSHs||| +XPUSHu|5.004000||p +XSPROTO|5.010000||p +XSRETURN_EMPTY||| +XSRETURN_IV||| +XSRETURN_NO||| +XSRETURN_NV||| +XSRETURN_PV||| +XSRETURN_UNDEF||| +XSRETURN_UV|5.008001||p +XSRETURN_YES||| +XSRETURN|||p +XST_mIV||| +XST_mNO||| +XST_mNV||| +XST_mPV||| +XST_mUNDEF||| +XST_mUV|5.008001||p +XST_mYES||| +XS_VERSION_BOOTCHECK||| +XS_VERSION||| +XSprePUSH|5.006000||p +XS||| +ZeroD|5.009002||p +Zero||| +_aMY_CXT|5.007003||p +_pMY_CXT|5.007003||p +aMY_CXT_|5.007003||p +aMY_CXT|5.007003||p +aTHXR_|5.011000||p +aTHXR|5.011000||p +aTHX_|5.006000||p +aTHX|5.006000||p +add_data|||n +addmad||| +allocmy||| +amagic_call||| +amagic_cmp_locale||| +amagic_cmp||| +amagic_i_ncmp||| +amagic_ncmp||| +any_dup||| +ao||| +append_elem||| +append_list||| +append_madprops||| +apply_attrs_my||| +apply_attrs_string||5.006001| +apply_attrs||| +apply||| +atfork_lock||5.007003|n +atfork_unlock||5.007003|n +av_arylen_p||5.009003| +av_clear||| +av_create_and_push||5.009005| +av_create_and_unshift_one||5.009005| +av_delete||5.006000| +av_exists||5.006000| +av_extend||| +av_fetch||| +av_fill||| +av_iter_p||5.011000| +av_len||| +av_make||| +av_pop||| +av_push||| +av_reify||| +av_shift||| +av_store||| +av_undef||| +av_unshift||| +ax|||n +bad_type||| +bind_match||| +block_end||| +block_gimme||5.004000| +block_start||| +boolSV|5.004000||p +boot_core_PerlIO||| +boot_core_UNIVERSAL||| +boot_core_mro||| +bytes_from_utf8||5.007001| +bytes_to_uni|||n +bytes_to_utf8||5.006001| +call_argv|5.006000||p +call_atexit||5.006000| +call_list||5.004000| +call_method|5.006000||p +call_pv|5.006000||p +call_sv|5.006000||p +calloc||5.007002|n +cando||| +cast_i32||5.006000| +cast_iv||5.006000| +cast_ulong||5.006000| +cast_uv||5.006000| +check_type_and_open||| +check_uni||| +checkcomma||| +checkposixcc||| +ckWARN|5.006000||p +ck_anoncode||| +ck_bitop||| +ck_concat||| +ck_defined||| +ck_delete||| +ck_die||| +ck_each||| +ck_eof||| +ck_eval||| +ck_exec||| +ck_exists||| +ck_exit||| +ck_ftst||| +ck_fun||| +ck_glob||| +ck_grep||| +ck_index||| +ck_join||| +ck_lfun||| +ck_listiob||| +ck_match||| +ck_method||| +ck_null||| +ck_open||| +ck_readline||| +ck_repeat||| +ck_require||| +ck_return||| +ck_rfun||| +ck_rvconst||| +ck_sassign||| +ck_select||| +ck_shift||| +ck_sort||| +ck_spair||| +ck_split||| +ck_subr||| +ck_substr||| +ck_svconst||| +ck_trunc||| +ck_unpack||| +ckwarn_d||5.009003| +ckwarn||5.009003| +cl_and|||n +cl_anything|||n +cl_init_zero|||n +cl_init|||n +cl_is_anything|||n +cl_or|||n +clear_placeholders||| +closest_cop||| +convert||| +cop_free||| +cr_textfilter||| +create_eval_scope||| +croak_nocontext|||vn +croak_xs_usage||5.011000| +croak|||v +csighandler||5.009003|n +curmad||| +custom_op_desc||5.007003| +custom_op_name||5.007003| +cv_ckproto_len||| +cv_clone||| +cv_const_sv||5.004000| +cv_dump||| +cv_undef||| +cx_dump||5.005000| +cx_dup||| +cxinc||| +dAXMARK|5.009003||p +dAX|5.007002||p +dITEMS|5.007002||p +dMARK||| +dMULTICALL||5.009003| +dMY_CXT_SV|5.007003||p +dMY_CXT|5.007003||p +dNOOP|5.006000||p +dORIGMARK||| +dSP||| +dTHR|5.004050||p +dTHXR|5.011000||p +dTHXa|5.006000||p +dTHXoa|5.006000||p +dTHX|5.006000||p +dUNDERBAR|5.009002||p +dVAR|5.009003||p +dXCPT|5.009002||p +dXSARGS||| +dXSI32||| +dXSTARG|5.006000||p +deb_curcv||| +deb_nocontext|||vn +deb_stack_all||| +deb_stack_n||| +debop||5.005000| +debprofdump||5.005000| +debprof||| +debstackptrs||5.007003| +debstack||5.007003| +debug_start_match||| +deb||5.007003|v +del_sv||| +delete_eval_scope||| +delimcpy||5.004000| +deprecate_old||| +deprecate||| +despatch_signals||5.007001| +destroy_matcher||| +die_nocontext|||vn +die_where||| +die|||v +dirp_dup||| +div128||| +djSP||| +do_aexec5||| +do_aexec||| +do_aspawn||| +do_binmode||5.004050| +do_chomp||| +do_chop||| +do_close||| +do_dump_pad||| +do_eof||| +do_exec3||| +do_execfree||| +do_exec||| +do_gv_dump||5.006000| +do_gvgv_dump||5.006000| +do_hv_dump||5.006000| +do_ipcctl||| +do_ipcget||| +do_join||| +do_kv||| +do_magic_dump||5.006000| +do_msgrcv||| +do_msgsnd||| +do_oddball||| +do_op_dump||5.006000| +do_op_xmldump||| +do_open9||5.006000| +do_openn||5.007001| +do_open||5.004000| +do_pmop_dump||5.006000| +do_pmop_xmldump||| +do_print||| +do_readline||| +do_seek||| +do_semop||| +do_shmio||| +do_smartmatch||| +do_spawn_nowait||| +do_spawn||| +do_sprintf||| +do_sv_dump||5.006000| +do_sysseek||| +do_tell||| +do_trans_complex_utf8||| +do_trans_complex||| +do_trans_count_utf8||| +do_trans_count||| +do_trans_simple_utf8||| +do_trans_simple||| +do_trans||| +do_vecget||| +do_vecset||| +do_vop||| +docatch||| +doeval||| +dofile||| +dofindlabel||| +doform||| +doing_taint||5.008001|n +dooneliner||| +doopen_pm||| +doparseform||| +dopoptoeval||| +dopoptogiven||| +dopoptolabel||| +dopoptoloop||| +dopoptosub_at||| +dopoptowhen||| +doref||5.009003| +dounwind||| +dowantarray||| +dump_all||5.006000| +dump_eval||5.006000| +dump_exec_pos||| +dump_fds||| +dump_form||5.006000| +dump_indent||5.006000|v +dump_mstats||| +dump_packsubs||5.006000| +dump_sub||5.006000| +dump_sv_child||| +dump_trie_interim_list||| +dump_trie_interim_table||| +dump_trie||| +dump_vindent||5.006000| +dumpuntil||| +dup_attrlist||| +emulate_cop_io||| +eval_pv|5.006000||p +eval_sv|5.006000||p +exec_failed||| +expect_number||| +fbm_compile||5.005000| +fbm_instr||5.005000| +feature_is_enabled||| +fetch_cop_label||5.011000| +filter_add||| +filter_del||| +filter_gets||| +filter_read||| +find_and_forget_pmops||| +find_array_subscript||| +find_beginning||| +find_byclass||| +find_hash_subscript||| +find_in_my_stash||| +find_runcv||5.008001| +find_rundefsvoffset||5.009002| +find_script||| +find_uninit_var||| +first_symbol|||n +fold_constants||| +forbid_setid||| +force_ident||| +force_list||| +force_next||| +force_version||| +force_word||| +forget_pmop||| +form_nocontext|||vn +form||5.004000|v +fp_dup||| +fprintf_nocontext|||vn +free_global_struct||| +free_tied_hv_pool||| +free_tmps||| +gen_constant_list||| +get_arena||| +get_aux_mg||| +get_av|5.006000||p +get_context||5.006000|n +get_cvn_flags||5.009005| +get_cv|5.006000||p +get_db_sub||| +get_debug_opts||| +get_hash_seed||| +get_hv|5.006000||p +get_isa_hash||| +get_mstats||| +get_no_modify||| +get_num||| +get_op_descs||5.005000| +get_op_names||5.005000| +get_opargs||| +get_ppaddr||5.006000| +get_re_arg||| +get_sv|5.006000||p +get_vtbl||5.005030| +getcwd_sv||5.007002| +getenv_len||| +glob_2number||| +glob_assign_glob||| +glob_assign_ref||| +gp_dup||| +gp_free||| +gp_ref||| +grok_bin|5.007003||p +grok_hex|5.007003||p +grok_number|5.007002||p +grok_numeric_radix|5.007002||p +grok_oct|5.007003||p +group_end||| +gv_AVadd||| +gv_HVadd||| +gv_IOadd||| +gv_SVadd||| +gv_autoload4||5.004000| +gv_check||| +gv_const_sv||5.009003| +gv_dump||5.006000| +gv_efullname3||5.004000| +gv_efullname4||5.006001| +gv_efullname||| +gv_ename||| +gv_fetchfile_flags||5.009005| +gv_fetchfile||| +gv_fetchmeth_autoload||5.007003| +gv_fetchmethod_autoload||5.004000| +gv_fetchmethod_flags||5.011000| +gv_fetchmethod||| +gv_fetchmeth||| +gv_fetchpvn_flags|5.009002||p +gv_fetchpvs|5.009004||p +gv_fetchpv||| +gv_fetchsv||5.009002| +gv_fullname3||5.004000| +gv_fullname4||5.006001| +gv_fullname||| +gv_get_super_pkg||| +gv_handler||5.007001| +gv_init_sv||| +gv_init||| +gv_name_set||5.009004| +gv_stashpvn|5.004000||p +gv_stashpvs|5.009003||p +gv_stashpv||| +gv_stashsv||| +he_dup||| +hek_dup||| +hfreeentries||| +hsplit||| +hv_assert||5.011000| +hv_auxinit|||n +hv_backreferences_p||| +hv_clear_placeholders||5.009001| +hv_clear||| +hv_common_key_len||5.010000| +hv_common||5.010000| +hv_copy_hints_hv||| +hv_delayfree_ent||5.004000| +hv_delete_common||| +hv_delete_ent||5.004000| +hv_delete||| +hv_eiter_p||5.009003| +hv_eiter_set||5.009003| +hv_exists_ent||5.004000| +hv_exists||| +hv_fetch_ent||5.004000| +hv_fetchs|5.009003||p +hv_fetch||| +hv_free_ent||5.004000| +hv_iterinit||| +hv_iterkeysv||5.004000| +hv_iterkey||| +hv_iternext_flags||5.008000| +hv_iternextsv||| +hv_iternext||| +hv_iterval||| +hv_kill_backrefs||| +hv_ksplit||5.004000| +hv_magic_check|||n +hv_magic||| +hv_name_set||5.009003| +hv_notallowed||| +hv_placeholders_get||5.009003| +hv_placeholders_p||5.009003| +hv_placeholders_set||5.009003| +hv_riter_p||5.009003| +hv_riter_set||5.009003| +hv_scalar||5.009001| +hv_store_ent||5.004000| +hv_store_flags||5.008000| +hv_stores|5.009004||p +hv_store||| +hv_undef||| +ibcmp_locale||5.004000| +ibcmp_utf8||5.007003| +ibcmp||| +incline||| +incpush_if_exists||| +incpush_use_sep||| +incpush||| +ingroup||| +init_argv_symbols||| +init_debugger||| +init_global_struct||| +init_i18nl10n||5.006000| +init_i18nl14n||5.006000| +init_ids||| +init_interp||| +init_main_stash||| +init_perllib||| +init_postdump_symbols||| +init_predump_symbols||| +init_stacks||5.005000| +init_tm||5.007002| +instr||| +intro_my||| +intuit_method||| +intuit_more||| +invert||| +io_close||| +isALNUMC|5.006000||p +isALNUM||| +isALPHA||| +isASCII|5.006000||p +isBLANK|5.006001||p +isCNTRL|5.006000||p +isDIGIT||| +isGRAPH|5.006000||p +isGV_with_GP|5.009004||p +isLOWER||| +isPRINT|5.004000||p +isPSXSPC|5.006001||p +isPUNCT|5.006000||p +isSPACE||| +isUPPER||| +isXDIGIT|5.006000||p +is_an_int||| +is_gv_magical_sv||| +is_handle_constructor|||n +is_list_assignment||| +is_lvalue_sub||5.007001| +is_uni_alnum_lc||5.006000| +is_uni_alnumc_lc||5.006000| +is_uni_alnumc||5.006000| +is_uni_alnum||5.006000| +is_uni_alpha_lc||5.006000| +is_uni_alpha||5.006000| +is_uni_ascii_lc||5.006000| +is_uni_ascii||5.006000| +is_uni_cntrl_lc||5.006000| +is_uni_cntrl||5.006000| +is_uni_digit_lc||5.006000| +is_uni_digit||5.006000| +is_uni_graph_lc||5.006000| +is_uni_graph||5.006000| +is_uni_idfirst_lc||5.006000| +is_uni_idfirst||5.006000| +is_uni_lower_lc||5.006000| +is_uni_lower||5.006000| +is_uni_print_lc||5.006000| +is_uni_print||5.006000| +is_uni_punct_lc||5.006000| +is_uni_punct||5.006000| +is_uni_space_lc||5.006000| +is_uni_space||5.006000| +is_uni_upper_lc||5.006000| +is_uni_upper||5.006000| +is_uni_xdigit_lc||5.006000| +is_uni_xdigit||5.006000| +is_utf8_alnumc||5.006000| +is_utf8_alnum||5.006000| +is_utf8_alpha||5.006000| +is_utf8_ascii||5.006000| +is_utf8_char_slow|||n +is_utf8_char||5.006000| +is_utf8_cntrl||5.006000| +is_utf8_common||| +is_utf8_digit||5.006000| +is_utf8_graph||5.006000| +is_utf8_idcont||5.008000| +is_utf8_idfirst||5.006000| +is_utf8_lower||5.006000| +is_utf8_mark||5.006000| +is_utf8_print||5.006000| +is_utf8_punct||5.006000| +is_utf8_space||5.006000| +is_utf8_string_loclen||5.009003| +is_utf8_string_loc||5.008001| +is_utf8_string||5.006001| +is_utf8_upper||5.006000| +is_utf8_xdigit||5.006000| +isa_lookup||| +items|||n +ix|||n +jmaybe||| +join_exact||| +keyword||| +leave_scope||| +lex_end||| +lex_start||| +linklist||| +listkids||| +list||| +load_module_nocontext|||vn +load_module|5.006000||pv +localize||| +looks_like_bool||| +looks_like_number||| +lop||| +mPUSHi|5.009002||p +mPUSHn|5.009002||p +mPUSHp|5.009002||p +mPUSHs|5.011000||p +mPUSHu|5.009002||p +mXPUSHi|5.009002||p +mXPUSHn|5.009002||p +mXPUSHp|5.009002||p +mXPUSHs|5.011000||p +mXPUSHu|5.009002||p +mad_free||| +madlex||| +madparse||| +magic_clear_all_env||| +magic_clearenv||| +magic_clearhint||| +magic_clearisa||| +magic_clearpack||| +magic_clearsig||| +magic_dump||5.006000| +magic_existspack||| +magic_freearylen_p||| +magic_freeovrld||| +magic_getarylen||| +magic_getdefelem||| +magic_getnkeys||| +magic_getpack||| +magic_getpos||| +magic_getsig||| +magic_getsubstr||| +magic_gettaint||| +magic_getuvar||| +magic_getvec||| +magic_get||| +magic_killbackrefs||| +magic_len||| +magic_methcall||| +magic_methpack||| +magic_nextpack||| +magic_regdata_cnt||| +magic_regdatum_get||| +magic_regdatum_set||| +magic_scalarpack||| +magic_set_all_env||| +magic_setamagic||| +magic_setarylen||| +magic_setcollxfrm||| +magic_setdbline||| +magic_setdefelem||| +magic_setenv||| +magic_sethint||| +magic_setisa||| +magic_setmglob||| +magic_setnkeys||| +magic_setpack||| +magic_setpos||| +magic_setregexp||| +magic_setsig||| +magic_setsubstr||| +magic_settaint||| +magic_setutf8||| +magic_setuvar||| +magic_setvec||| +magic_set||| +magic_sizepack||| +magic_wipepack||| +make_matcher||| +make_trie_failtable||| +make_trie||| +malloc_good_size|||n +malloced_size|||n +malloc||5.007002|n +markstack_grow||| +matcher_matches_sv||| +measure_struct||| +memEQ|5.004000||p +memNE|5.004000||p +mem_collxfrm||| +mem_log_common|||n +mess_alloc||| +mess_nocontext|||vn +mess||5.006000|v +method_common||| +mfree||5.007002|n +mg_clear||| +mg_copy||| +mg_dup||| +mg_find||| +mg_free||| +mg_get||| +mg_length||5.005000| +mg_localize||| +mg_magical||| +mg_set||| +mg_size||5.005000| +mini_mktime||5.007002| +missingterm||| +mode_from_discipline||| +modkids||| +mod||| +more_bodies||| +more_sv||| +moreswitches||| +mro_get_from_name||5.011000| +mro_get_linear_isa_dfs||| +mro_get_linear_isa||5.009005| +mro_get_private_data||5.011000| +mro_isa_changed_in||| +mro_meta_dup||| +mro_meta_init||| +mro_method_changed_in||5.009005| +mro_register||5.011000| +mro_set_mro||5.011000| +mro_set_private_data||5.011000| +mul128||| +mulexp10|||n +my_atof2||5.007002| +my_atof||5.006000| +my_attrs||| +my_bcopy|||n +my_betoh16|||n +my_betoh32|||n +my_betoh64|||n +my_betohi|||n +my_betohl|||n +my_betohs|||n +my_bzero|||n +my_chsize||| +my_clearenv||| +my_cxt_index||| +my_cxt_init||| +my_dirfd||5.009005| +my_exit_jump||| +my_exit||| +my_failure_exit||5.004000| +my_fflush_all||5.006000| +my_fork||5.007003|n +my_htobe16|||n +my_htobe32|||n +my_htobe64|||n +my_htobei|||n +my_htobel|||n +my_htobes|||n +my_htole16|||n +my_htole32|||n +my_htole64|||n +my_htolei|||n +my_htolel|||n +my_htoles|||n +my_htonl||| +my_kid||| +my_letoh16|||n +my_letoh32|||n +my_letoh64|||n +my_letohi|||n +my_letohl|||n +my_letohs|||n +my_lstat||| +my_memcmp||5.004000|n +my_memset|||n +my_ntohl||| +my_pclose||5.004000| +my_popen_list||5.007001| +my_popen||5.004000| +my_setenv||| +my_snprintf|5.009004||pvn +my_socketpair||5.007003|n +my_sprintf|5.009003||pvn +my_stat||| +my_strftime||5.007002| +my_strlcat|5.009004||pn +my_strlcpy|5.009004||pn +my_swabn|||n +my_swap||| +my_unexec||| +my_vsnprintf||5.009004|n +need_utf8|||n +newANONATTRSUB||5.006000| +newANONHASH||| +newANONLIST||| +newANONSUB||| +newASSIGNOP||| +newATTRSUB||5.006000| +newAVREF||| +newAV||| +newBINOP||| +newCONDOP||| +newCONSTSUB|5.004050||p +newCVREF||| +newDEFSVOP||| +newFORM||| +newFOROP||| +newGIVENOP||5.009003| +newGIVWHENOP||| +newGP||| +newGVOP||| +newGVREF||| +newGVgen||| +newHVREF||| +newHVhv||5.005000| +newHV||| +newIO||| +newLISTOP||| +newLOGOP||| +newLOOPEX||| +newLOOPOP||| +newMADPROP||| +newMADsv||| +newMYSUB||| +newNULLLIST||| +newOP||| +newPADOP||| +newPMOP||| +newPROG||| +newPVOP||| +newRANGE||| +newRV_inc|5.004000||p +newRV_noinc|5.004000||p +newRV||| +newSLICEOP||| +newSTATEOP||| +newSUB||| +newSVOP||| +newSVREF||| +newSV_type|5.009005||p +newSVhek||5.009003| +newSViv||| +newSVnv||| +newSVpvf_nocontext|||vn +newSVpvf||5.004000|v +newSVpvn_flags|5.011000||p +newSVpvn_share|5.007001||p +newSVpvn_utf8|5.011000||p +newSVpvn|5.004050||p +newSVpvs_flags|5.011000||p +newSVpvs_share||5.009003| +newSVpvs|5.009003||p +newSVpv||| +newSVrv||| +newSVsv||| +newSVuv|5.006000||p +newSV||| +newTOKEN||| +newUNOP||| +newWHENOP||5.009003| +newWHILEOP||5.009003| +newXS_flags||5.009004| +newXSproto||5.006000| +newXS||5.006000| +new_collate||5.006000| +new_constant||| +new_ctype||5.006000| +new_he||| +new_logop||| +new_numeric||5.006000| +new_stackinfo||5.005000| +new_version||5.009000| +new_warnings_bitfield||| +next_symbol||| +nextargv||| +nextchar||| +ninstr||| +no_bareword_allowed||| +no_fh_allowed||| +no_op||| +not_a_number||| +nothreadhook||5.008000| +nuke_stacks||| +num_overflow|||n +offer_nice_chunk||| +oopsAV||| +oopsHV||| +op_clear||| +op_const_sv||| +op_dump||5.006000| +op_free||| +op_getmad_weak||| +op_getmad||| +op_null||5.007002| +op_refcnt_dec||| +op_refcnt_inc||| +op_refcnt_lock||5.009002| +op_refcnt_unlock||5.009002| +op_xmldump||| +open_script||| +pMY_CXT_|5.007003||p +pMY_CXT|5.007003||p +pTHX_|5.006000||p +pTHX|5.006000||p +packWARN|5.007003||p +pack_cat||5.007003| +pack_rec||| +package||| +packlist||5.008001| +pad_add_anon||| +pad_add_name||| +pad_alloc||| +pad_block_start||| +pad_check_dup||| +pad_compname_type||| +pad_findlex||| +pad_findmy||| +pad_fixup_inner_anons||| +pad_free||| +pad_leavemy||| +pad_new||| +pad_peg|||n +pad_push||| +pad_reset||| +pad_setsv||| +pad_sv||5.011000| +pad_swipe||| +pad_tidy||| +pad_undef||| +parse_body||| +parse_unicode_opts||| +parser_dup||| +parser_free||| +path_is_absolute|||n +peep||| +pending_Slabs_to_ro||| +perl_alloc_using|||n +perl_alloc|||n +perl_clone_using|||n +perl_clone|||n +perl_construct|||n +perl_destruct||5.007003|n +perl_free|||n +perl_parse||5.006000|n +perl_run|||n +pidgone||| +pm_description||| +pmflag||| +pmop_dump||5.006000| +pmop_xmldump||| +pmruntime||| +pmtrans||| +pop_scope||| +pregcomp||5.009005| +pregexec||| +pregfree2||5.011000| +pregfree||| +prepend_elem||| +prepend_madprops||| +printbuf||| +printf_nocontext|||vn +process_special_blocks||| +ptr_table_clear||5.009005| +ptr_table_fetch||5.009005| +ptr_table_find|||n +ptr_table_free||5.009005| +ptr_table_new||5.009005| +ptr_table_split||5.009005| +ptr_table_store||5.009005| +push_scope||| +put_byte||| +pv_display|5.006000||p +pv_escape|5.009004||p +pv_pretty|5.009004||p +pv_uni_display||5.007003| +qerror||| +qsortsvu||| +re_compile||5.009005| +re_croak2||| +re_dup_guts||| +re_intuit_start||5.009005| +re_intuit_string||5.006000| +readpipe_override||| +realloc||5.007002|n +reentrant_free||| +reentrant_init||| +reentrant_retry|||vn +reentrant_size||| +ref_array_or_hash||| +refcounted_he_chain_2hv||| +refcounted_he_fetch||| +refcounted_he_free||| +refcounted_he_new_common||| +refcounted_he_new||| +refcounted_he_value||| +refkids||| +refto||| +ref||5.011000| +reg_check_named_buff_matched||| +reg_named_buff_all||5.009005| +reg_named_buff_exists||5.009005| +reg_named_buff_fetch||5.009005| +reg_named_buff_firstkey||5.009005| +reg_named_buff_iter||| +reg_named_buff_nextkey||5.009005| +reg_named_buff_scalar||5.009005| +reg_named_buff||| +reg_namedseq||| +reg_node||| +reg_numbered_buff_fetch||| +reg_numbered_buff_length||| +reg_numbered_buff_store||| +reg_qr_package||| +reg_recode||| +reg_scan_name||| +reg_skipcomment||| +reg_temp_copy||| +reganode||| +regatom||| +regbranch||| +regclass_swash||5.009004| +regclass||| +regcppop||| +regcppush||| +regcurly|||n +regdump_extflags||| +regdump||5.005000| +regdupe_internal||| +regexec_flags||5.005000| +regfree_internal||5.009005| +reghop3|||n +reghop4|||n +reghopmaybe3|||n +reginclass||| +reginitcolors||5.006000| +reginsert||| +regmatch||| +regnext||5.005000| +regpiece||| +regpposixcc||| +regprop||| +regrepeat||| +regtail_study||| +regtail||| +regtry||| +reguni||| +regwhite|||n +reg||| +repeatcpy||| +report_evil_fh||| +report_uninit||| +require_pv||5.006000| +require_tie_mod||| +restore_magic||| +rninstr||| +rsignal_restore||| +rsignal_save||| +rsignal_state||5.004000| +rsignal||5.004000| +run_body||| +run_user_filter||| +runops_debug||5.005000| +runops_standard||5.005000| +rvpv_dup||| +rxres_free||| +rxres_restore||| +rxres_save||| +safesyscalloc||5.006000|n +safesysfree||5.006000|n +safesysmalloc||5.006000|n +safesysrealloc||5.006000|n +same_dirent||| +save_I16||5.004000| +save_I32||| +save_I8||5.006000| +save_adelete||5.011000| +save_aelem||5.004050| +save_alloc||5.006000| +save_aptr||| +save_ary||| +save_bool||5.008001| +save_clearsv||| +save_delete||| +save_destructor_x||5.006000| +save_destructor||5.006000| +save_freeop||| +save_freepv||| +save_freesv||| +save_generic_pvref||5.006001| +save_generic_svref||5.005030| +save_gp||5.004000| +save_hash||| +save_hek_flags|||n +save_helem_flags||5.011000| +save_helem||5.004050| +save_hints||| +save_hptr||| +save_int||| +save_item||| +save_iv||5.005000| +save_lines||| +save_list||| +save_long||| +save_magic||| +save_mortalizesv||5.007001| +save_nogv||| +save_op||| +save_padsv_and_mortalize||5.011000| +save_pptr||| +save_pushi32ptr||| +save_pushptri32ptr||| +save_pushptrptr||| +save_pushptr||5.011000| +save_re_context||5.006000| +save_scalar_at||| +save_scalar||| +save_set_svflags||5.009000| +save_shared_pvref||5.007003| +save_sptr||| +save_svref||| +save_vptr||5.006000| +savepvn||| +savepvs||5.009003| +savepv||| +savesharedpvn||5.009005| +savesharedpv||5.007003| +savestack_grow_cnt||5.008001| +savestack_grow||| +savesvpv||5.009002| +sawparens||| +scalar_mod_type|||n +scalarboolean||| +scalarkids||| +scalarseq||| +scalarvoid||| +scalar||| +scan_bin||5.006000| +scan_commit||| +scan_const||| +scan_formline||| +scan_heredoc||| +scan_hex||| +scan_ident||| +scan_inputsymbol||| +scan_num||5.007001| +scan_oct||| +scan_pat||| +scan_str||| +scan_subst||| +scan_trans||| +scan_version||5.009001| +scan_vstring||5.009005| +scan_word||| +scope||| +screaminstr||5.005000| +search_const||| +seed||5.008001| +sequence_num||| +sequence_tail||| +sequence||| +set_context||5.006000|n +set_numeric_local||5.006000| +set_numeric_radix||5.006000| +set_numeric_standard||5.006000| +setdefout||| +share_hek_flags||| +share_hek||5.004000| +si_dup||| +sighandler|||n +simplify_sort||| +skipspace0||| +skipspace1||| +skipspace2||| +skipspace||| +softref2xv||| +sortcv_stacked||| +sortcv_xsub||| +sortcv||| +sortsv_flags||5.009003| +sortsv||5.007003| +space_join_names_mortal||| +ss_dup||| +stack_grow||| +start_force||| +start_glob||| +start_subparse||5.004000| +stashpv_hvname_match||5.011000| +stdize_locale||| +store_cop_label||| +strEQ||| +strGE||| +strGT||| +strLE||| +strLT||| +strNE||| +str_to_version||5.006000| +strip_return||| +strnEQ||| +strnNE||| +study_chunk||| +sub_crush_depth||| +sublex_done||| +sublex_push||| +sublex_start||| +sv_2bool||| +sv_2cv||| +sv_2io||| +sv_2iuv_common||| +sv_2iuv_non_preserve||| +sv_2iv_flags||5.009001| +sv_2iv||| +sv_2mortal||| +sv_2num||| +sv_2nv||| +sv_2pv_flags|5.007002||p +sv_2pv_nolen|5.006000||p +sv_2pvbyte_nolen|5.006000||p +sv_2pvbyte|5.006000||p +sv_2pvutf8_nolen||5.006000| +sv_2pvutf8||5.006000| +sv_2pv||| +sv_2uv_flags||5.009001| +sv_2uv|5.004000||p +sv_add_arena||| +sv_add_backref||| +sv_backoff||| +sv_bless||| +sv_cat_decode||5.008001| +sv_catpv_mg|5.004050||p +sv_catpvf_mg_nocontext|||pvn +sv_catpvf_mg|5.006000|5.004000|pv +sv_catpvf_nocontext|||vn +sv_catpvf||5.004000|v +sv_catpvn_flags||5.007002| +sv_catpvn_mg|5.004050||p +sv_catpvn_nomg|5.007002||p +sv_catpvn||| +sv_catpvs|5.009003||p +sv_catpv||| +sv_catsv_flags||5.007002| +sv_catsv_mg|5.004050||p +sv_catsv_nomg|5.007002||p +sv_catsv||| +sv_catxmlpvn||| +sv_catxmlsv||| +sv_chop||| +sv_clean_all||| +sv_clean_objs||| +sv_clear||| +sv_cmp_locale||5.004000| +sv_cmp||| +sv_collxfrm||| +sv_compile_2op||5.008001| +sv_copypv||5.007003| +sv_dec||| +sv_del_backref||| +sv_derived_from||5.004000| +sv_destroyable||5.010000| +sv_does||5.009004| +sv_dump||| +sv_dup_inc_multiple||| +sv_dup||| +sv_eq||| +sv_exp_grow||| +sv_force_normal_flags||5.007001| +sv_force_normal||5.006000| +sv_free2||| +sv_free_arenas||| +sv_free||| +sv_gets||5.004000| +sv_grow||| +sv_i_ncmp||| +sv_inc||| +sv_insert_flags||5.011000| +sv_insert||| +sv_isa||| +sv_isobject||| +sv_iv||5.005000| +sv_kill_backrefs||| +sv_len_utf8||5.006000| +sv_len||| +sv_magic_portable|5.011000|5.004000|p +sv_magicext||5.007003| +sv_magic||| +sv_mortalcopy||| +sv_ncmp||| +sv_newmortal||| +sv_newref||| +sv_nolocking||5.007003| +sv_nosharing||5.007003| +sv_nounlocking||| +sv_nv||5.005000| +sv_peek||5.005000| +sv_pos_b2u_midway||| +sv_pos_b2u||5.006000| +sv_pos_u2b_cached||| +sv_pos_u2b_forwards|||n +sv_pos_u2b_midway|||n +sv_pos_u2b||5.006000| +sv_pvbyten_force||5.006000| +sv_pvbyten||5.006000| +sv_pvbyte||5.006000| +sv_pvn_force_flags|5.007002||p +sv_pvn_force||| +sv_pvn_nomg|5.007003|5.005000|p +sv_pvn||5.005000| +sv_pvutf8n_force||5.006000| +sv_pvutf8n||5.006000| +sv_pvutf8||5.006000| +sv_pv||5.006000| +sv_recode_to_utf8||5.007003| +sv_reftype||| +sv_release_COW||| +sv_replace||| +sv_report_used||| +sv_reset||| +sv_rvweaken||5.006000| +sv_setiv_mg|5.004050||p +sv_setiv||| +sv_setnv_mg|5.006000||p +sv_setnv||| +sv_setpv_mg|5.004050||p +sv_setpvf_mg_nocontext|||pvn +sv_setpvf_mg|5.006000|5.004000|pv +sv_setpvf_nocontext|||vn +sv_setpvf||5.004000|v +sv_setpviv_mg||5.008001| +sv_setpviv||5.008001| +sv_setpvn_mg|5.004050||p +sv_setpvn||| +sv_setpvs|5.009004||p +sv_setpv||| +sv_setref_iv||| +sv_setref_nv||| +sv_setref_pvn||| +sv_setref_pv||| +sv_setref_uv||5.007001| +sv_setsv_cow||| +sv_setsv_flags||5.007002| +sv_setsv_mg|5.004050||p +sv_setsv_nomg|5.007002||p +sv_setsv||| +sv_setuv_mg|5.004050||p +sv_setuv|5.004000||p +sv_tainted||5.004000| +sv_taint||5.004000| +sv_true||5.005000| +sv_unglob||| +sv_uni_display||5.007003| +sv_unmagic||| +sv_unref_flags||5.007001| +sv_unref||| +sv_untaint||5.004000| +sv_upgrade||| +sv_usepvn_flags||5.009004| +sv_usepvn_mg|5.004050||p +sv_usepvn||| +sv_utf8_decode||5.006000| +sv_utf8_downgrade||5.006000| +sv_utf8_encode||5.006000| +sv_utf8_upgrade_flags_grow||5.011000| +sv_utf8_upgrade_flags||5.007002| +sv_utf8_upgrade_nomg||5.007002| +sv_utf8_upgrade||5.007001| +sv_uv|5.005000||p +sv_vcatpvf_mg|5.006000|5.004000|p +sv_vcatpvfn||5.004000| +sv_vcatpvf|5.006000|5.004000|p +sv_vsetpvf_mg|5.006000|5.004000|p +sv_vsetpvfn||5.004000| +sv_vsetpvf|5.006000|5.004000|p +sv_xmlpeek||| +svtype||| +swallow_bom||| +swap_match_buff||| +swash_fetch||5.007002| +swash_get||| +swash_init||5.006000| +sys_init3||5.010000|n +sys_init||5.010000|n +sys_intern_clear||| +sys_intern_dup||| +sys_intern_init||| +sys_term||5.010000|n +taint_env||| +taint_proper||| +tmps_grow||5.006000| +toLOWER||| +toUPPER||| +to_byte_substr||| +to_uni_fold||5.007003| +to_uni_lower_lc||5.006000| +to_uni_lower||5.007003| +to_uni_title_lc||5.006000| +to_uni_title||5.007003| +to_uni_upper_lc||5.006000| +to_uni_upper||5.007003| +to_utf8_case||5.007003| +to_utf8_fold||5.007003| +to_utf8_lower||5.007003| +to_utf8_substr||| +to_utf8_title||5.007003| +to_utf8_upper||5.007003| +token_free||| +token_getmad||| +tokenize_use||| +tokeq||| +tokereport||| +too_few_arguments||| +too_many_arguments||| +uiv_2buf|||n +unlnk||| +unpack_rec||| +unpack_str||5.007003| +unpackstring||5.008001| +unshare_hek_or_pvn||| +unshare_hek||| +unsharepvn||5.004000| +unwind_handler_stack||| +update_debugger_info||| +upg_version||5.009005| +usage||| +utf16_to_utf8_reversed||5.006001| +utf16_to_utf8||5.006001| +utf8_distance||5.006000| +utf8_hop||5.006000| +utf8_length||5.007001| +utf8_mg_pos_cache_update||| +utf8_to_bytes||5.006001| +utf8_to_uvchr||5.007001| +utf8_to_uvuni||5.007001| +utf8n_to_uvchr||| +utf8n_to_uvuni||5.007001| +utilize||| +uvchr_to_utf8_flags||5.007003| +uvchr_to_utf8||| +uvuni_to_utf8_flags||5.007003| +uvuni_to_utf8||5.007001| +validate_suid||| +varname||| +vcmp||5.009000| +vcroak||5.006000| +vdeb||5.007003| +vdie_common||| +vdie_croak_common||| +vdie||| +vform||5.006000| +visit||| +vivify_defelem||| +vivify_ref||| +vload_module|5.006000||p +vmess||5.006000| +vnewSVpvf|5.006000|5.004000|p +vnormal||5.009002| +vnumify||5.009000| +vstringify||5.009000| +vverify||5.009003| +vwarner||5.006000| +vwarn||5.006000| +wait4pid||| +warn_nocontext|||vn +warner_nocontext|||vn +warner|5.006000|5.004000|pv +warn|||v +watch||| +whichsig||| +write_no_mem||| +write_to_stderr||| +xmldump_all||| +xmldump_attr||| +xmldump_eval||| +xmldump_form||| +xmldump_indent|||v +xmldump_packsubs||| +xmldump_sub||| +xmldump_vindent||| +yyerror||| +yylex||| +yyparse||| +yywarn||| +); + +if (exists $opt{'list-unsupported'}) { + my $f; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $API{$f}{todo}; + print "$f ", '.'x(40-length($f)), " ", format_version($API{$f}{todo}), "\n"; + } + exit 0; +} + +# Scan for possible replacement candidates + +my(%replace, %need, %hints, %warnings, %depends); +my $replace = 0; +my($hint, $define, $function); + +sub find_api +{ + my $code = shift; + $code =~ s{ + / (?: \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / | /[^\r\n]*) + | "[^"\\]*(?:\\.[^"\\]*)*" + | '[^'\\]*(?:\\.[^'\\]*)*' }{}egsx; + grep { exists $API{$_} } $code =~ /(\w+)/mg; +} + +while () { + if ($hint) { + my $h = $hint->[0] eq 'Hint' ? \%hints : \%warnings; + if (m{^\s*\*\s(.*?)\s*$}) { + for (@{$hint->[1]}) { + $h->{$_} ||= ''; # suppress warning with older perls + $h->{$_} .= "$1\n"; + } + } + else { undef $hint } + } + + $hint = [$1, [split /,?\s+/, $2]] + if m{^\s*$rccs\s+(Hint|Warning):\s+(\w+(?:,?\s+\w+)*)\s*$}; + + if ($define) { + if ($define->[1] =~ /\\$/) { + $define->[1] .= $_; + } + else { + if (exists $API{$define->[0]} && $define->[1] !~ /^DPPP_\(/) { + my @n = find_api($define->[1]); + push @{$depends{$define->[0]}}, @n if @n + } + undef $define; + } + } + + $define = [$1, $2] if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(.*)}; + + if ($function) { + if (/^}/) { + if (exists $API{$function->[0]}) { + my @n = find_api($function->[1]); + push @{$depends{$function->[0]}}, @n if @n + } + undef $function; + } + else { + $function->[1] .= $_; + } + } + + $function = [$1, ''] if m{^DPPP_\(my_(\w+)\)}; + + $replace = $1 if m{^\s*$rccs\s+Replace:\s+(\d+)\s+$rcce\s*$}; + $replace{$2} = $1 if $replace and m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+)}; + $replace{$2} = $1 if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+).*$rccs\s+Replace\s+$rcce}; + $replace{$1} = $2 if m{^\s*$rccs\s+Replace (\w+) with (\w+)\s+$rcce\s*$}; + + if (m{^\s*$rccs\s+(\w+(\s*,\s*\w+)*)\s+depends\s+on\s+(\w+(\s*,\s*\w+)*)\s+$rcce\s*$}) { + my @deps = map { s/\s+//g; $_ } split /,/, $3; + my $d; + for $d (map { s/\s+//g; $_ } split /,/, $1) { + push @{$depends{$d}}, @deps; + } + } + + $need{$1} = 1 if m{^#if\s+defined\(NEED_(\w+)(?:_GLOBAL)?\)}; +} + +for (values %depends) { + my %s; + $_ = [sort grep !$s{$_}++, @$_]; +} + +if (exists $opt{'api-info'}) { + my $f; + my $count = 0; + my $match = $opt{'api-info'} =~ m!^/(.*)/$! ? $1 : "^\Q$opt{'api-info'}\E\$"; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $f =~ /$match/; + print "\n=== $f ===\n\n"; + my $info = 0; + if ($API{$f}{base} || $API{$f}{todo}) { + my $base = format_version($API{$f}{base} || $API{$f}{todo}); + print "Supported at least starting from perl-$base.\n"; + $info++; + } + if ($API{$f}{provided}) { + my $todo = $API{$f}{todo} ? format_version($API{$f}{todo}) : "5.003"; + print "Support by $ppport provided back to perl-$todo.\n"; + print "Support needs to be explicitly requested by NEED_$f.\n" if exists $need{$f}; + print "Depends on: ", join(', ', @{$depends{$f}}), ".\n" if exists $depends{$f}; + print "\n$hints{$f}" if exists $hints{$f}; + print "\nWARNING:\n$warnings{$f}" if exists $warnings{$f}; + $info++; + } + print "No portability information available.\n" unless $info; + $count++; + } + $count or print "Found no API matching '$opt{'api-info'}'."; + print "\n"; + exit 0; +} + +if (exists $opt{'list-provided'}) { + my $f; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $API{$f}{provided}; + my @flags; + push @flags, 'explicit' if exists $need{$f}; + push @flags, 'depend' if exists $depends{$f}; + push @flags, 'hint' if exists $hints{$f}; + push @flags, 'warning' if exists $warnings{$f}; + my $flags = @flags ? ' ['.join(', ', @flags).']' : ''; + print "$f$flags\n"; + } + exit 0; +} + +my @files; +my @srcext = qw( .xs .c .h .cc .cpp -c.inc -xs.inc ); +my $srcext = join '|', map { quotemeta $_ } @srcext; + +if (@ARGV) { + my %seen; + for (@ARGV) { + if (-e) { + if (-f) { + push @files, $_ unless $seen{$_}++; + } + else { warn "'$_' is not a file.\n" } + } + else { + my @new = grep { -f } glob $_ + or warn "'$_' does not exist.\n"; + push @files, grep { !$seen{$_}++ } @new; + } + } +} +else { + eval { + require File::Find; + File::Find::find(sub { + $File::Find::name =~ /($srcext)$/i + and push @files, $File::Find::name; + }, '.'); + }; + if ($@) { + @files = map { glob "*$_" } @srcext; + } +} + +if (!@ARGV || $opt{filter}) { + my(@in, @out); + my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files; + for (@files) { + my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/($srcext)$/i; + push @{ $out ? \@out : \@in }, $_; + } + if (@ARGV && @out) { + warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out); + } + @files = @in; +} + +die "No input files given!\n" unless @files; + +my(%files, %global, %revreplace); +%revreplace = reverse %replace; +my $filename; +my $patch_opened = 0; + +for $filename (@files) { + unless (open IN, "<$filename") { + warn "Unable to read from $filename: $!\n"; + next; + } + + info("Scanning $filename ..."); + + my $c = do { local $/; }; + close IN; + + my %file = (orig => $c, changes => 0); + + # Temporarily remove C/XS comments and strings from the code + my @ccom; + + $c =~ s{ + ( ^$HS*\#$HS*include\b[^\r\n]+\b(?:\Q$ppport\E|XSUB\.h)\b[^\r\n]* + | ^$HS*\#$HS*(?:define|elif|if(?:def)?)\b[^\r\n]* ) + | ( ^$HS*\#[^\r\n]* + | "[^"\\]*(?:\\.[^"\\]*)*" + | '[^'\\]*(?:\\.[^'\\]*)*' + | / (?: \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / | /[^\r\n]* ) ) + }{ defined $2 and push @ccom, $2; + defined $1 ? $1 : "$ccs$#ccom$cce" }mgsex; + + $file{ccom} = \@ccom; + $file{code} = $c; + $file{has_inc_ppport} = $c =~ /^$HS*#$HS*include[^\r\n]+\b\Q$ppport\E\b/m; + + my $func; + + for $func (keys %API) { + my $match = $func; + $match .= "|$revreplace{$func}" if exists $revreplace{$func}; + if ($c =~ /\b(?:Perl_)?($match)\b/) { + $file{uses_replace}{$1}++ if exists $revreplace{$func} && $1 eq $revreplace{$func}; + $file{uses_Perl}{$func}++ if $c =~ /\bPerl_$func\b/; + if (exists $API{$func}{provided}) { + $file{uses_provided}{$func}++; + if (!exists $API{$func}{base} || $API{$func}{base} > $opt{'compat-version'}) { + $file{uses}{$func}++; + my @deps = rec_depend($func); + if (@deps) { + $file{uses_deps}{$func} = \@deps; + for (@deps) { + $file{uses}{$_} = 0 unless exists $file{uses}{$_}; + } + } + for ($func, @deps) { + $file{needs}{$_} = 'static' if exists $need{$_}; + } + } + } + if (exists $API{$func}{todo} && $API{$func}{todo} > $opt{'compat-version'}) { + if ($c =~ /\b$func\b/) { + $file{uses_todo}{$func}++; + } + } + } + } + + while ($c =~ /^$HS*#$HS*define$HS+(NEED_(\w+?)(_GLOBAL)?)\b/mg) { + if (exists $need{$2}) { + $file{defined $3 ? 'needed_global' : 'needed_static'}{$2}++; + } + else { warning("Possibly wrong #define $1 in $filename") } + } + + for (qw(uses needs uses_todo needed_global needed_static)) { + for $func (keys %{$file{$_}}) { + push @{$global{$_}{$func}}, $filename; + } + } + + $files{$filename} = \%file; +} + +# Globally resolve NEED_'s +my $need; +for $need (keys %{$global{needs}}) { + if (@{$global{needs}{$need}} > 1) { + my @targets = @{$global{needs}{$need}}; + my @t = grep $files{$_}{needed_global}{$need}, @targets; + @targets = @t if @t; + @t = grep /\.xs$/i, @targets; + @targets = @t if @t; + my $target = shift @targets; + $files{$target}{needs}{$need} = 'global'; + for (@{$global{needs}{$need}}) { + $files{$_}{needs}{$need} = 'extern' if $_ ne $target; + } + } +} + +for $filename (@files) { + exists $files{$filename} or next; + + info("=== Analyzing $filename ==="); + + my %file = %{$files{$filename}}; + my $func; + my $c = $file{code}; + my $warnings = 0; + + for $func (sort keys %{$file{uses_Perl}}) { + if ($API{$func}{varargs}) { + unless ($API{$func}{nothxarg}) { + my $changes = ($c =~ s{\b(Perl_$func\s*\(\s*)(?!aTHX_?)(\)|[^\s)]*\))} + { $1 . ($2 eq ')' ? 'aTHX' : 'aTHX_ ') . $2 }ge); + if ($changes) { + warning("Doesn't pass interpreter argument aTHX to Perl_$func"); + $file{changes} += $changes; + } + } + } + else { + warning("Uses Perl_$func instead of $func"); + $file{changes} += ($c =~ s{\bPerl_$func(\s*)\((\s*aTHX_?)?\s*} + {$func$1(}g); + } + } + + for $func (sort keys %{$file{uses_replace}}) { + warning("Uses $func instead of $replace{$func}"); + $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); + } + + for $func (sort keys %{$file{uses_provided}}) { + if ($file{uses}{$func}) { + if (exists $file{uses_deps}{$func}) { + diag("Uses $func, which depends on ", join(', ', @{$file{uses_deps}{$func}})); + } + else { + diag("Uses $func"); + } + } + $warnings += hint($func); + } + + unless ($opt{quiet}) { + for $func (sort keys %{$file{uses_todo}}) { + print "*** WARNING: Uses $func, which may not be portable below perl ", + format_version($API{$func}{todo}), ", even with '$ppport'\n"; + $warnings++; + } + } + + for $func (sort keys %{$file{needed_static}}) { + my $message = ''; + if (not exists $file{uses}{$func}) { + $message = "No need to define NEED_$func if $func is never used"; + } + elsif (exists $file{needs}{$func} && $file{needs}{$func} ne 'static') { + $message = "No need to define NEED_$func when already needed globally"; + } + if ($message) { + diag($message); + $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_$func\b.*$LF//mg); + } + } + + for $func (sort keys %{$file{needed_global}}) { + my $message = ''; + if (not exists $global{uses}{$func}) { + $message = "No need to define NEED_${func}_GLOBAL if $func is never used"; + } + elsif (exists $file{needs}{$func}) { + if ($file{needs}{$func} eq 'extern') { + $message = "No need to define NEED_${func}_GLOBAL when already needed globally"; + } + elsif ($file{needs}{$func} eq 'static') { + $message = "No need to define NEED_${func}_GLOBAL when only used in this file"; + } + } + if ($message) { + diag($message); + $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_${func}_GLOBAL\b.*$LF//mg); + } + } + + $file{needs_inc_ppport} = keys %{$file{uses}}; + + if ($file{needs_inc_ppport}) { + my $pp = ''; + + for $func (sort keys %{$file{needs}}) { + my $type = $file{needs}{$func}; + next if $type eq 'extern'; + my $suffix = $type eq 'global' ? '_GLOBAL' : ''; + unless (exists $file{"needed_$type"}{$func}) { + if ($type eq 'global') { + diag("Files [@{$global{needs}{$func}}] need $func, adding global request"); + } + else { + diag("File needs $func, adding static request"); + } + $pp .= "#define NEED_$func$suffix\n"; + } + } + + if ($pp && ($c =~ s/^(?=$HS*#$HS*define$HS+NEED_\w+)/$pp/m)) { + $pp = ''; + $file{changes}++; + } + + unless ($file{has_inc_ppport}) { + diag("Needs to include '$ppport'"); + $pp .= qq(#include "$ppport"\n) + } + + if ($pp) { + $file{changes} += ($c =~ s/^($HS*#$HS*define$HS+NEED_\w+.*?)^/$1$pp/ms) + || ($c =~ s/^(?=$HS*#$HS*include.*\Q$ppport\E)/$pp/m) + || ($c =~ s/^($HS*#$HS*include.*XSUB.*\s*?)^/$1$pp/m) + || ($c =~ s/^/$pp/); + } + } + else { + if ($file{has_inc_ppport}) { + diag("No need to include '$ppport'"); + $file{changes} += ($c =~ s/^$HS*?#$HS*include.*\Q$ppport\E.*?$LF//m); + } + } + + # put back in our C comments + my $ix; + my $cppc = 0; + my @ccom = @{$file{ccom}}; + for $ix (0 .. $#ccom) { + if (!$opt{cplusplus} && $ccom[$ix] =~ s!^//!!) { + $cppc++; + $file{changes} += $c =~ s/$rccs$ix$rcce/$ccs$ccom[$ix] $cce/; + } + else { + $c =~ s/$rccs$ix$rcce/$ccom[$ix]/; + } + } + + if ($cppc) { + my $s = $cppc != 1 ? 's' : ''; + warning("Uses $cppc C++ style comment$s, which is not portable"); + } + + my $s = $warnings != 1 ? 's' : ''; + my $warn = $warnings ? " ($warnings warning$s)" : ''; + info("Analysis completed$warn"); + + if ($file{changes}) { + if (exists $opt{copy}) { + my $newfile = "$filename$opt{copy}"; + if (-e $newfile) { + error("'$newfile' already exists, refusing to write copy of '$filename'"); + } + else { + local *F; + if (open F, ">$newfile") { + info("Writing copy of '$filename' with changes to '$newfile'"); + print F $c; + close F; + } + else { + error("Cannot open '$newfile' for writing: $!"); + } + } + } + elsif (exists $opt{patch} || $opt{changes}) { + if (exists $opt{patch}) { + unless ($patch_opened) { + if (open PATCH, ">$opt{patch}") { + $patch_opened = 1; + } + else { + error("Cannot open '$opt{patch}' for writing: $!"); + delete $opt{patch}; + $opt{changes} = 1; + goto fallback; + } + } + mydiff(\*PATCH, $filename, $c); + } + else { +fallback: + info("Suggested changes:"); + mydiff(\*STDOUT, $filename, $c); + } + } + else { + my $s = $file{changes} == 1 ? '' : 's'; + info("$file{changes} potentially required change$s detected"); + } + } + else { + info("Looks good"); + } +} + +close PATCH if $patch_opened; + +exit 0; + + +sub try_use { eval "use @_;"; return $@ eq '' } + +sub mydiff +{ + local *F = shift; + my($file, $str) = @_; + my $diff; + + if (exists $opt{diff}) { + $diff = run_diff($opt{diff}, $file, $str); + } + + if (!defined $diff and try_use('Text::Diff')) { + $diff = Text::Diff::diff($file, \$str, { STYLE => 'Unified' }); + $diff = <

$tmp") { + print F $str; + close F; + + if (open F, "$prog $file $tmp |") { + while () { + s/\Q$tmp\E/$file.patched/; + $diff .= $_; + } + close F; + unlink $tmp; + return $diff; + } + + unlink $tmp; + } + else { + error("Cannot open '$tmp' for writing: $!"); + } + + return undef; +} + +sub rec_depend +{ + my($func, $seen) = @_; + return () unless exists $depends{$func}; + $seen = {%{$seen||{}}}; + return () if $seen->{$func}++; + my %s; + grep !$s{$_}++, map { ($_, rec_depend($_, $seen)) } @{$depends{$func}}; +} + +sub parse_version +{ + my $ver = shift; + + if ($ver =~ /^(\d+)\.(\d+)\.(\d+)$/) { + return ($1, $2, $3); + } + elsif ($ver !~ /^\d+\.[\d_]+$/) { + die "cannot parse version '$ver'\n"; + } + + $ver =~ s/_//g; + $ver =~ s/$/000000/; + + my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; + + $v = int $v; + $s = int $s; + + if ($r < 5 || ($r == 5 && $v < 6)) { + if ($s % 10) { + die "cannot parse version '$ver'\n"; + } + } + + return ($r, $v, $s); +} + +sub format_version +{ + my $ver = shift; + + $ver =~ s/$/000000/; + my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; + + $v = int $v; + $s = int $s; + + if ($r < 5 || ($r == 5 && $v < 6)) { + if ($s % 10) { + die "invalid version '$ver'\n"; + } + $s /= 10; + + $ver = sprintf "%d.%03d", $r, $v; + $s > 0 and $ver .= sprintf "_%02d", $s; + + return $ver; + } + + return sprintf "%d.%d.%d", $r, $v, $s; +} + +sub info +{ + $opt{quiet} and return; + print @_, "\n"; +} + +sub diag +{ + $opt{quiet} and return; + $opt{diag} and print @_, "\n"; +} + +sub warning +{ + $opt{quiet} and return; + print "*** ", @_, "\n"; +} + +sub error +{ + print "*** ERROR: ", @_, "\n"; +} + +my %given_hints; +my %given_warnings; +sub hint +{ + $opt{quiet} and return; + my $func = shift; + my $rv = 0; + if (exists $warnings{$func} && !$given_warnings{$func}++) { + my $warn = $warnings{$func}; + $warn =~ s!^!*** !mg; + print "*** WARNING: $func\n", $warn; + $rv++; + } + if ($opt{hints} && exists $hints{$func} && !$given_hints{$func}++) { + my $hint = $hints{$func}; + $hint =~ s/^/ /mg; + print " --- hint for $func ---\n", $hint; + } + $rv; +} + +sub usage +{ + my($usage) = do { local(@ARGV,$/)=($0); <> } =~ /^=head\d$HS+SYNOPSIS\s*^(.*?)\s*^=/ms; + my %M = ( 'I' => '*' ); + $usage =~ s/^\s*perl\s+\S+/$^X $0/; + $usage =~ s/([A-Z])<([^>]+)>/$M{$1}$2$M{$1}/g; + + print < }; + my($copy) = $self =~ /^=head\d\s+COPYRIGHT\s*^(.*?)^=\w+/ms; + $copy =~ s/^(?=\S+)/ /gms; + $self =~ s/^$HS+Do NOT edit.*?(?=^-)/$copy/ms; + $self =~ s/^SKIP.*(?=^__DATA__)/SKIP +if (\@ARGV && \$ARGV[0] eq '--unstrip') { + eval { require Devel::PPPort }; + \$@ and die "Cannot require Devel::PPPort, please install.\\n"; + if (eval \$Devel::PPPort::VERSION < $VERSION) { + die "$0 was originally generated with Devel::PPPort $VERSION.\\n" + . "Your Devel::PPPort is only version \$Devel::PPPort::VERSION.\\n" + . "Please install a newer version, or --unstrip will not work.\\n"; + } + Devel::PPPort::WriteFile(\$0); + exit 0; +} +print <$0" or die "cannot strip $0: $!\n"; + print OUT "$pl$c\n"; + + exit 0; +} + +__DATA__ +*/ + +#ifndef _P_P_PORTABILITY_H_ +#define _P_P_PORTABILITY_H_ + +#ifndef DPPP_NAMESPACE +# define DPPP_NAMESPACE DPPP_ +#endif + +#define DPPP_CAT2(x,y) CAT2(x,y) +#define DPPP_(name) DPPP_CAT2(DPPP_NAMESPACE, name) + +#ifndef PERL_REVISION +# if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION)) +# define PERL_PATCHLEVEL_H_IMPLICIT +# include +# endif +# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL))) +# include +# endif +# ifndef PERL_REVISION +# define PERL_REVISION (5) + /* Replace: 1 */ +# define PERL_VERSION PATCHLEVEL +# define PERL_SUBVERSION SUBVERSION + /* Replace PERL_PATCHLEVEL with PERL_VERSION */ + /* Replace: 0 */ +# endif +#endif + +#define _dpppDEC2BCD(dec) ((((dec)/100)<<8)|((((dec)%100)/10)<<4)|((dec)%10)) +#define PERL_BCDVERSION ((_dpppDEC2BCD(PERL_REVISION)<<24)|(_dpppDEC2BCD(PERL_VERSION)<<12)|_dpppDEC2BCD(PERL_SUBVERSION)) + +/* It is very unlikely that anyone will try to use this with Perl 6 + (or greater), but who knows. + */ +#if PERL_REVISION != 5 +# error ppport.h only works with Perl version 5 +#endif /* PERL_REVISION != 5 */ +#ifndef dTHR +# define dTHR dNOOP +#endif +#ifndef dTHX +# define dTHX dNOOP +#endif + +#ifndef dTHXa +# define dTHXa(x) dNOOP +#endif +#ifndef pTHX +# define pTHX void +#endif + +#ifndef pTHX_ +# define pTHX_ +#endif + +#ifndef aTHX +# define aTHX +#endif + +#ifndef aTHX_ +# define aTHX_ +#endif + +#if (PERL_BCDVERSION < 0x5006000) +# ifdef USE_THREADS +# define aTHXR thr +# define aTHXR_ thr, +# else +# define aTHXR +# define aTHXR_ +# endif +# define dTHXR dTHR +#else +# define aTHXR aTHX +# define aTHXR_ aTHX_ +# define dTHXR dTHX +#endif +#ifndef dTHXoa +# define dTHXoa(x) dTHXa(x) +#endif + +#ifdef I_LIMITS +# include +#endif + +#ifndef PERL_UCHAR_MIN +# define PERL_UCHAR_MIN ((unsigned char)0) +#endif + +#ifndef PERL_UCHAR_MAX +# ifdef UCHAR_MAX +# define PERL_UCHAR_MAX ((unsigned char)UCHAR_MAX) +# else +# ifdef MAXUCHAR +# define PERL_UCHAR_MAX ((unsigned char)MAXUCHAR) +# else +# define PERL_UCHAR_MAX ((unsigned char)~(unsigned)0) +# endif +# endif +#endif + +#ifndef PERL_USHORT_MIN +# define PERL_USHORT_MIN ((unsigned short)0) +#endif + +#ifndef PERL_USHORT_MAX +# ifdef USHORT_MAX +# define PERL_USHORT_MAX ((unsigned short)USHORT_MAX) +# else +# ifdef MAXUSHORT +# define PERL_USHORT_MAX ((unsigned short)MAXUSHORT) +# else +# ifdef USHRT_MAX +# define PERL_USHORT_MAX ((unsigned short)USHRT_MAX) +# else +# define PERL_USHORT_MAX ((unsigned short)~(unsigned)0) +# endif +# endif +# endif +#endif + +#ifndef PERL_SHORT_MAX +# ifdef SHORT_MAX +# define PERL_SHORT_MAX ((short)SHORT_MAX) +# else +# ifdef MAXSHORT /* Often used in */ +# define PERL_SHORT_MAX ((short)MAXSHORT) +# else +# ifdef SHRT_MAX +# define PERL_SHORT_MAX ((short)SHRT_MAX) +# else +# define PERL_SHORT_MAX ((short) (PERL_USHORT_MAX >> 1)) +# endif +# endif +# endif +#endif + +#ifndef PERL_SHORT_MIN +# ifdef SHORT_MIN +# define PERL_SHORT_MIN ((short)SHORT_MIN) +# else +# ifdef MINSHORT +# define PERL_SHORT_MIN ((short)MINSHORT) +# else +# ifdef SHRT_MIN +# define PERL_SHORT_MIN ((short)SHRT_MIN) +# else +# define PERL_SHORT_MIN (-PERL_SHORT_MAX - ((3 & -1) == 3)) +# endif +# endif +# endif +#endif + +#ifndef PERL_UINT_MAX +# ifdef UINT_MAX +# define PERL_UINT_MAX ((unsigned int)UINT_MAX) +# else +# ifdef MAXUINT +# define PERL_UINT_MAX ((unsigned int)MAXUINT) +# else +# define PERL_UINT_MAX (~(unsigned int)0) +# endif +# endif +#endif + +#ifndef PERL_UINT_MIN +# define PERL_UINT_MIN ((unsigned int)0) +#endif + +#ifndef PERL_INT_MAX +# ifdef INT_MAX +# define PERL_INT_MAX ((int)INT_MAX) +# else +# ifdef MAXINT /* Often used in */ +# define PERL_INT_MAX ((int)MAXINT) +# else +# define PERL_INT_MAX ((int)(PERL_UINT_MAX >> 1)) +# endif +# endif +#endif + +#ifndef PERL_INT_MIN +# ifdef INT_MIN +# define PERL_INT_MIN ((int)INT_MIN) +# else +# ifdef MININT +# define PERL_INT_MIN ((int)MININT) +# else +# define PERL_INT_MIN (-PERL_INT_MAX - ((3 & -1) == 3)) +# endif +# endif +#endif + +#ifndef PERL_ULONG_MAX +# ifdef ULONG_MAX +# define PERL_ULONG_MAX ((unsigned long)ULONG_MAX) +# else +# ifdef MAXULONG +# define PERL_ULONG_MAX ((unsigned long)MAXULONG) +# else +# define PERL_ULONG_MAX (~(unsigned long)0) +# endif +# endif +#endif + +#ifndef PERL_ULONG_MIN +# define PERL_ULONG_MIN ((unsigned long)0L) +#endif + +#ifndef PERL_LONG_MAX +# ifdef LONG_MAX +# define PERL_LONG_MAX ((long)LONG_MAX) +# else +# ifdef MAXLONG +# define PERL_LONG_MAX ((long)MAXLONG) +# else +# define PERL_LONG_MAX ((long) (PERL_ULONG_MAX >> 1)) +# endif +# endif +#endif + +#ifndef PERL_LONG_MIN +# ifdef LONG_MIN +# define PERL_LONG_MIN ((long)LONG_MIN) +# else +# ifdef MINLONG +# define PERL_LONG_MIN ((long)MINLONG) +# else +# define PERL_LONG_MIN (-PERL_LONG_MAX - ((3 & -1) == 3)) +# endif +# endif +#endif + +#if defined(HAS_QUAD) && (defined(convex) || defined(uts)) +# ifndef PERL_UQUAD_MAX +# ifdef ULONGLONG_MAX +# define PERL_UQUAD_MAX ((unsigned long long)ULONGLONG_MAX) +# else +# ifdef MAXULONGLONG +# define PERL_UQUAD_MAX ((unsigned long long)MAXULONGLONG) +# else +# define PERL_UQUAD_MAX (~(unsigned long long)0) +# endif +# endif +# endif + +# ifndef PERL_UQUAD_MIN +# define PERL_UQUAD_MIN ((unsigned long long)0L) +# endif + +# ifndef PERL_QUAD_MAX +# ifdef LONGLONG_MAX +# define PERL_QUAD_MAX ((long long)LONGLONG_MAX) +# else +# ifdef MAXLONGLONG +# define PERL_QUAD_MAX ((long long)MAXLONGLONG) +# else +# define PERL_QUAD_MAX ((long long) (PERL_UQUAD_MAX >> 1)) +# endif +# endif +# endif + +# ifndef PERL_QUAD_MIN +# ifdef LONGLONG_MIN +# define PERL_QUAD_MIN ((long long)LONGLONG_MIN) +# else +# ifdef MINLONGLONG +# define PERL_QUAD_MIN ((long long)MINLONGLONG) +# else +# define PERL_QUAD_MIN (-PERL_QUAD_MAX - ((3 & -1) == 3)) +# endif +# endif +# endif +#endif + +/* This is based on code from 5.003 perl.h */ +#ifdef HAS_QUAD +# ifdef cray +#ifndef IVTYPE +# define IVTYPE int +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_INT_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_INT_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_UINT_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_UINT_MAX +#endif + +# ifdef INTSIZE +#ifndef IVSIZE +# define IVSIZE INTSIZE +#endif + +# endif +# else +# if defined(convex) || defined(uts) +#ifndef IVTYPE +# define IVTYPE long long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_QUAD_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_QUAD_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_UQUAD_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_UQUAD_MAX +#endif + +# ifdef LONGLONGSIZE +#ifndef IVSIZE +# define IVSIZE LONGLONGSIZE +#endif + +# endif +# else +#ifndef IVTYPE +# define IVTYPE long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_LONG_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_LONG_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_ULONG_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_ULONG_MAX +#endif + +# ifdef LONGSIZE +#ifndef IVSIZE +# define IVSIZE LONGSIZE +#endif + +# endif +# endif +# endif +#ifndef IVSIZE +# define IVSIZE 8 +#endif + +#ifndef PERL_QUAD_MIN +# define PERL_QUAD_MIN IV_MIN +#endif + +#ifndef PERL_QUAD_MAX +# define PERL_QUAD_MAX IV_MAX +#endif + +#ifndef PERL_UQUAD_MIN +# define PERL_UQUAD_MIN UV_MIN +#endif + +#ifndef PERL_UQUAD_MAX +# define PERL_UQUAD_MAX UV_MAX +#endif + +#else +#ifndef IVTYPE +# define IVTYPE long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_LONG_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_LONG_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_ULONG_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_ULONG_MAX +#endif + +#endif + +#ifndef IVSIZE +# ifdef LONGSIZE +# define IVSIZE LONGSIZE +# else +# define IVSIZE 4 /* A bold guess, but the best we can make. */ +# endif +#endif +#ifndef UVTYPE +# define UVTYPE unsigned IVTYPE +#endif + +#ifndef UVSIZE +# define UVSIZE IVSIZE +#endif +#ifndef sv_setuv +# define sv_setuv(sv, uv) \ + STMT_START { \ + UV TeMpUv = uv; \ + if (TeMpUv <= IV_MAX) \ + sv_setiv(sv, TeMpUv); \ + else \ + sv_setnv(sv, (double)TeMpUv); \ + } STMT_END +#endif +#ifndef newSVuv +# define newSVuv(uv) ((uv) <= IV_MAX ? newSViv((IV)uv) : newSVnv((NV)uv)) +#endif +#ifndef sv_2uv +# define sv_2uv(sv) ((PL_Sv = (sv)), (UV) (SvNOK(PL_Sv) ? SvNV(PL_Sv) : sv_2nv(PL_Sv))) +#endif + +#ifndef SvUVX +# define SvUVX(sv) ((UV)SvIVX(sv)) +#endif + +#ifndef SvUVXx +# define SvUVXx(sv) SvUVX(sv) +#endif + +#ifndef SvUV +# define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv)) +#endif + +#ifndef SvUVx +# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv)) +#endif + +/* Hint: sv_uv + * Always use the SvUVx() macro instead of sv_uv(). + */ +#ifndef sv_uv +# define sv_uv(sv) SvUVx(sv) +#endif + +#if !defined(SvUOK) && defined(SvIOK_UV) +# define SvUOK(sv) SvIOK_UV(sv) +#endif +#ifndef XST_mUV +# define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) ) +#endif + +#ifndef XSRETURN_UV +# define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END +#endif +#ifndef PUSHu +# define PUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); PUSHTARG; } STMT_END +#endif + +#ifndef XPUSHu +# define XPUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); XPUSHTARG; } STMT_END +#endif + +#ifdef HAS_MEMCMP +#ifndef memNE +# define memNE(s1,s2,l) (memcmp(s1,s2,l)) +#endif + +#ifndef memEQ +# define memEQ(s1,s2,l) (!memcmp(s1,s2,l)) +#endif + +#else +#ifndef memNE +# define memNE(s1,s2,l) (bcmp(s1,s2,l)) +#endif + +#ifndef memEQ +# define memEQ(s1,s2,l) (!bcmp(s1,s2,l)) +#endif + +#endif +#ifndef MoveD +# define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t)) +#endif + +#ifndef CopyD +# define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) +#endif + +#ifdef HAS_MEMSET +#ifndef ZeroD +# define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t)) +#endif + +#else +#ifndef ZeroD +# define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)), d) +#endif + +#endif +#ifndef PoisonWith +# define PoisonWith(d,n,t,b) (void)memset((char*)(d), (U8)(b), (n) * sizeof(t)) +#endif + +#ifndef PoisonNew +# define PoisonNew(d,n,t) PoisonWith(d,n,t,0xAB) +#endif + +#ifndef PoisonFree +# define PoisonFree(d,n,t) PoisonWith(d,n,t,0xEF) +#endif + +#ifndef Poison +# define Poison(d,n,t) PoisonFree(d,n,t) +#endif +#ifndef Newx +# define Newx(v,n,t) New(0,v,n,t) +#endif + +#ifndef Newxc +# define Newxc(v,n,t,c) Newc(0,v,n,t,c) +#endif + +#ifndef Newxz +# define Newxz(v,n,t) Newz(0,v,n,t) +#endif + +#ifndef PERL_UNUSED_DECL +# ifdef HASATTRIBUTE +# if (defined(__GNUC__) && defined(__cplusplus)) || defined(__INTEL_COMPILER) +# define PERL_UNUSED_DECL +# else +# define PERL_UNUSED_DECL __attribute__((unused)) +# endif +# else +# define PERL_UNUSED_DECL +# endif +#endif + +#ifndef PERL_UNUSED_ARG +# if defined(lint) && defined(S_SPLINT_S) /* www.splint.org */ +# include +# define PERL_UNUSED_ARG(x) NOTE(ARGUNUSED(x)) +# else +# define PERL_UNUSED_ARG(x) ((void)x) +# endif +#endif + +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(x) ((void)x) +#endif + +#ifndef PERL_UNUSED_CONTEXT +# ifdef USE_ITHREADS +# define PERL_UNUSED_CONTEXT PERL_UNUSED_ARG(my_perl) +# else +# define PERL_UNUSED_CONTEXT +# endif +#endif +#ifndef NOOP +# define NOOP /*EMPTY*/(void)0 +#endif + +#ifndef dNOOP +# define dNOOP extern int /*@unused@*/ Perl___notused PERL_UNUSED_DECL +#endif + +#ifndef NVTYPE +# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) +# define NVTYPE long double +# else +# define NVTYPE double +# endif +typedef NVTYPE NV; +#endif + +#ifndef INT2PTR +# if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) +# define PTRV UV +# define INT2PTR(any,d) (any)(d) +# else +# if PTRSIZE == LONGSIZE +# define PTRV unsigned long +# else +# define PTRV unsigned +# endif +# define INT2PTR(any,d) (any)(PTRV)(d) +# endif +#endif + +#ifndef PTR2ul +# if PTRSIZE == LONGSIZE +# define PTR2ul(p) (unsigned long)(p) +# else +# define PTR2ul(p) INT2PTR(unsigned long,p) +# endif +#endif +#ifndef PTR2nat +# define PTR2nat(p) (PTRV)(p) +#endif + +#ifndef NUM2PTR +# define NUM2PTR(any,d) (any)PTR2nat(d) +#endif + +#ifndef PTR2IV +# define PTR2IV(p) INT2PTR(IV,p) +#endif + +#ifndef PTR2UV +# define PTR2UV(p) INT2PTR(UV,p) +#endif + +#ifndef PTR2NV +# define PTR2NV(p) NUM2PTR(NV,p) +#endif + +#undef START_EXTERN_C +#undef END_EXTERN_C +#undef EXTERN_C +#ifdef __cplusplus +# define START_EXTERN_C extern "C" { +# define END_EXTERN_C } +# define EXTERN_C extern "C" +#else +# define START_EXTERN_C +# define END_EXTERN_C +# define EXTERN_C extern +#endif + +#if defined(PERL_GCC_PEDANTIC) +# ifndef PERL_GCC_BRACE_GROUPS_FORBIDDEN +# define PERL_GCC_BRACE_GROUPS_FORBIDDEN +# endif +#endif + +#if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) && !defined(__cplusplus) +# ifndef PERL_USE_GCC_BRACE_GROUPS +# define PERL_USE_GCC_BRACE_GROUPS +# endif +#endif + +#undef STMT_START +#undef STMT_END +#ifdef PERL_USE_GCC_BRACE_GROUPS +# define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */ +# define STMT_END ) +#else +# if defined(VOIDFLAGS) && (VOIDFLAGS) && (defined(sun) || defined(__sun__)) && !defined(__GNUC__) +# define STMT_START if (1) +# define STMT_END else (void)0 +# else +# define STMT_START do +# define STMT_END while (0) +# endif +#endif +#ifndef boolSV +# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no) +#endif + +/* DEFSV appears first in 5.004_56 */ +#ifndef DEFSV +# define DEFSV GvSV(PL_defgv) +#endif + +#ifndef SAVE_DEFSV +# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv)) +#endif + +#ifndef DEFSV_set +# define DEFSV_set(sv) (DEFSV = (sv)) +#endif + +/* Older perls (<=5.003) lack AvFILLp */ +#ifndef AvFILLp +# define AvFILLp AvFILL +#endif +#ifndef ERRSV +# define ERRSV get_sv("@",FALSE) +#endif + +/* Hint: gv_stashpvn + * This function's backport doesn't support the length parameter, but + * rather ignores it. Portability can only be ensured if the length + * parameter is used for speed reasons, but the length can always be + * correctly computed from the string argument. + */ +#ifndef gv_stashpvn +# define gv_stashpvn(str,len,create) gv_stashpv(str,create) +#endif + +/* Replace: 1 */ +#ifndef get_cv +# define get_cv perl_get_cv +#endif + +#ifndef get_sv +# define get_sv perl_get_sv +#endif + +#ifndef get_av +# define get_av perl_get_av +#endif + +#ifndef get_hv +# define get_hv perl_get_hv +#endif + +/* Replace: 0 */ +#ifndef dUNDERBAR +# define dUNDERBAR dNOOP +#endif + +#ifndef UNDERBAR +# define UNDERBAR DEFSV +#endif +#ifndef dAX +# define dAX I32 ax = MARK - PL_stack_base + 1 +#endif + +#ifndef dITEMS +# define dITEMS I32 items = SP - MARK +#endif +#ifndef dXSTARG +# define dXSTARG SV * targ = sv_newmortal() +#endif +#ifndef dAXMARK +# define dAXMARK I32 ax = POPMARK; \ + register SV ** const mark = PL_stack_base + ax++ +#endif +#ifndef XSprePUSH +# define XSprePUSH (sp = PL_stack_base + ax - 1) +#endif + +#if (PERL_BCDVERSION < 0x5005000) +# undef XSRETURN +# define XSRETURN(off) \ + STMT_START { \ + PL_stack_sp = PL_stack_base + ax + ((off) - 1); \ + return; \ + } STMT_END +#endif +#ifndef XSPROTO +# define XSPROTO(name) void name(pTHX_ CV* cv) +#endif + +#ifndef SVfARG +# define SVfARG(p) ((void*)(p)) +#endif +#ifndef PERL_ABS +# define PERL_ABS(x) ((x) < 0 ? -(x) : (x)) +#endif +#ifndef dVAR +# define dVAR dNOOP +#endif +#ifndef SVf +# define SVf "_" +#endif +#ifndef UTF8_MAXBYTES +# define UTF8_MAXBYTES UTF8_MAXLEN +#endif +#ifndef CPERLscope +# define CPERLscope(x) x +#endif +#ifndef PERL_HASH +# define PERL_HASH(hash,str,len) \ + STMT_START { \ + const char *s_PeRlHaSh = str; \ + I32 i_PeRlHaSh = len; \ + U32 hash_PeRlHaSh = 0; \ + while (i_PeRlHaSh--) \ + hash_PeRlHaSh = hash_PeRlHaSh * 33 + *s_PeRlHaSh++; \ + (hash) = hash_PeRlHaSh; \ + } STMT_END +#endif + +#ifndef PERLIO_FUNCS_DECL +# ifdef PERLIO_FUNCS_CONST +# define PERLIO_FUNCS_DECL(funcs) const PerlIO_funcs funcs +# define PERLIO_FUNCS_CAST(funcs) (PerlIO_funcs*)(funcs) +# else +# define PERLIO_FUNCS_DECL(funcs) PerlIO_funcs funcs +# define PERLIO_FUNCS_CAST(funcs) (funcs) +# endif +#endif + +/* provide these typedefs for older perls */ +#if (PERL_BCDVERSION < 0x5009003) + +# ifdef ARGSproto +typedef OP* (CPERLscope(*Perl_ppaddr_t))(ARGSproto); +# else +typedef OP* (CPERLscope(*Perl_ppaddr_t))(pTHX); +# endif + +typedef OP* (CPERLscope(*Perl_check_t)) (pTHX_ OP*); + +#endif +#ifndef isPSXSPC +# define isPSXSPC(c) (isSPACE(c) || (c) == '\v') +#endif + +#ifndef isBLANK +# define isBLANK(c) ((c) == ' ' || (c) == '\t') +#endif + +#ifdef EBCDIC +#ifndef isALNUMC +# define isALNUMC(c) isalnum(c) +#endif + +#ifndef isASCII +# define isASCII(c) isascii(c) +#endif + +#ifndef isCNTRL +# define isCNTRL(c) iscntrl(c) +#endif + +#ifndef isGRAPH +# define isGRAPH(c) isgraph(c) +#endif + +#ifndef isPRINT +# define isPRINT(c) isprint(c) +#endif + +#ifndef isPUNCT +# define isPUNCT(c) ispunct(c) +#endif + +#ifndef isXDIGIT +# define isXDIGIT(c) isxdigit(c) +#endif + +#else +# if (PERL_BCDVERSION < 0x5010000) +/* Hint: isPRINT + * The implementation in older perl versions includes all of the + * isSPACE() characters, which is wrong. The version provided by + * Devel::PPPort always overrides a present buggy version. + */ +# undef isPRINT +# endif +#ifndef isALNUMC +# define isALNUMC(c) (isALPHA(c) || isDIGIT(c)) +#endif + +#ifndef isASCII +# define isASCII(c) ((c) <= 127) +#endif + +#ifndef isCNTRL +# define isCNTRL(c) ((c) < ' ' || (c) == 127) +#endif + +#ifndef isGRAPH +# define isGRAPH(c) (isALNUM(c) || isPUNCT(c)) +#endif + +#ifndef isPRINT +# define isPRINT(c) (((c) >= 32 && (c) < 127)) +#endif + +#ifndef isPUNCT +# define isPUNCT(c) (((c) >= 33 && (c) <= 47) || ((c) >= 58 && (c) <= 64) || ((c) >= 91 && (c) <= 96) || ((c) >= 123 && (c) <= 126)) +#endif + +#ifndef isXDIGIT +# define isXDIGIT(c) (isDIGIT(c) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F')) +#endif + +#endif + +#ifndef PERL_SIGNALS_UNSAFE_FLAG + +#define PERL_SIGNALS_UNSAFE_FLAG 0x0001 + +#if (PERL_BCDVERSION < 0x5008000) +# define D_PPP_PERL_SIGNALS_INIT PERL_SIGNALS_UNSAFE_FLAG +#else +# define D_PPP_PERL_SIGNALS_INIT 0 +#endif + +#if defined(NEED_PL_signals) +static U32 DPPP_(my_PL_signals) = D_PPP_PERL_SIGNALS_INIT; +#elif defined(NEED_PL_signals_GLOBAL) +U32 DPPP_(my_PL_signals) = D_PPP_PERL_SIGNALS_INIT; +#else +extern U32 DPPP_(my_PL_signals); +#endif +#define PL_signals DPPP_(my_PL_signals) + +#endif + +/* Hint: PL_ppaddr + * Calling an op via PL_ppaddr requires passing a context argument + * for threaded builds. Since the context argument is different for + * 5.005 perls, you can use aTHXR (supplied by ppport.h), which will + * automatically be defined as the correct argument. + */ + +#if (PERL_BCDVERSION <= 0x5005005) +/* Replace: 1 */ +# define PL_ppaddr ppaddr +# define PL_no_modify no_modify +/* Replace: 0 */ +#endif + +#if (PERL_BCDVERSION <= 0x5004005) +/* Replace: 1 */ +# define PL_DBsignal DBsignal +# define PL_DBsingle DBsingle +# define PL_DBsub DBsub +# define PL_DBtrace DBtrace +# define PL_Sv Sv +# define PL_bufend bufend +# define PL_bufptr bufptr +# define PL_compiling compiling +# define PL_copline copline +# define PL_curcop curcop +# define PL_curstash curstash +# define PL_debstash debstash +# define PL_defgv defgv +# define PL_diehook diehook +# define PL_dirty dirty +# define PL_dowarn dowarn +# define PL_errgv errgv +# define PL_error_count error_count +# define PL_expect expect +# define PL_hexdigit hexdigit +# define PL_hints hints +# define PL_in_my in_my +# define PL_laststatval laststatval +# define PL_lex_state lex_state +# define PL_lex_stuff lex_stuff +# define PL_linestr linestr +# define PL_na na +# define PL_perl_destruct_level perl_destruct_level +# define PL_perldb perldb +# define PL_rsfp_filters rsfp_filters +# define PL_rsfp rsfp +# define PL_stack_base stack_base +# define PL_stack_sp stack_sp +# define PL_statcache statcache +# define PL_stdingv stdingv +# define PL_sv_arenaroot sv_arenaroot +# define PL_sv_no sv_no +# define PL_sv_undef sv_undef +# define PL_sv_yes sv_yes +# define PL_tainted tainted +# define PL_tainting tainting +# define PL_tokenbuf tokenbuf +/* Replace: 0 */ +#endif + +/* Warning: PL_parser + * For perl versions earlier than 5.9.5, this is an always + * non-NULL dummy. Also, it cannot be dereferenced. Don't + * use it if you can avoid is and unless you absolutely know + * what you're doing. + * If you always check that PL_parser is non-NULL, you can + * define DPPP_PL_parser_NO_DUMMY to avoid the creation of + * a dummy parser structure. + */ + +#if (PERL_BCDVERSION >= 0x5009005) +# ifdef DPPP_PL_parser_NO_DUMMY +# define D_PPP_my_PL_parser_var(var) ((PL_parser ? PL_parser : \ + (croak("panic: PL_parser == NULL in %s:%d", \ + __FILE__, __LINE__), (yy_parser *) NULL))->var) +# else +# ifdef DPPP_PL_parser_NO_DUMMY_WARNING +# define D_PPP_parser_dummy_warning(var) +# else +# define D_PPP_parser_dummy_warning(var) \ + warn("warning: dummy PL_" #var " used in %s:%d", __FILE__, __LINE__), +# endif +# define D_PPP_my_PL_parser_var(var) ((PL_parser ? PL_parser : \ + (D_PPP_parser_dummy_warning(var) &DPPP_(dummy_PL_parser)))->var) +#if defined(NEED_PL_parser) +static yy_parser DPPP_(dummy_PL_parser); +#elif defined(NEED_PL_parser_GLOBAL) +yy_parser DPPP_(dummy_PL_parser); +#else +extern yy_parser DPPP_(dummy_PL_parser); +#endif + +# endif + +/* PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf depends on PL_parser */ +/* Warning: PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf + * Do not use this variable unless you know exactly what you're + * doint. It is internal to the perl parser and may change or even + * be removed in the future. As of perl 5.9.5, you have to check + * for (PL_parser != NULL) for this variable to have any effect. + * An always non-NULL PL_parser dummy is provided for earlier + * perl versions. + * If PL_parser is NULL when you try to access this variable, a + * dummy is being accessed instead and a warning is issued unless + * you define DPPP_PL_parser_NO_DUMMY_WARNING. + * If DPPP_PL_parser_NO_DUMMY is defined, the code trying to access + * this variable will croak with a panic message. + */ + +# define PL_expect D_PPP_my_PL_parser_var(expect) +# define PL_copline D_PPP_my_PL_parser_var(copline) +# define PL_rsfp D_PPP_my_PL_parser_var(rsfp) +# define PL_rsfp_filters D_PPP_my_PL_parser_var(rsfp_filters) +# define PL_linestr D_PPP_my_PL_parser_var(linestr) +# define PL_bufptr D_PPP_my_PL_parser_var(bufptr) +# define PL_bufend D_PPP_my_PL_parser_var(bufend) +# define PL_lex_state D_PPP_my_PL_parser_var(lex_state) +# define PL_lex_stuff D_PPP_my_PL_parser_var(lex_stuff) +# define PL_tokenbuf D_PPP_my_PL_parser_var(tokenbuf) +# define PL_in_my D_PPP_my_PL_parser_var(in_my) +# define PL_in_my_stash D_PPP_my_PL_parser_var(in_my_stash) +# define PL_error_count D_PPP_my_PL_parser_var(error_count) + + +#else + +/* ensure that PL_parser != NULL and cannot be dereferenced */ +# define PL_parser ((void *) 1) + +#endif +#ifndef mPUSHs +# define mPUSHs(s) PUSHs(sv_2mortal(s)) +#endif + +#ifndef PUSHmortal +# define PUSHmortal PUSHs(sv_newmortal()) +#endif + +#ifndef mPUSHp +# define mPUSHp(p,l) sv_setpvn(PUSHmortal, (p), (l)) +#endif + +#ifndef mPUSHn +# define mPUSHn(n) sv_setnv(PUSHmortal, (NV)(n)) +#endif + +#ifndef mPUSHi +# define mPUSHi(i) sv_setiv(PUSHmortal, (IV)(i)) +#endif + +#ifndef mPUSHu +# define mPUSHu(u) sv_setuv(PUSHmortal, (UV)(u)) +#endif +#ifndef mXPUSHs +# define mXPUSHs(s) XPUSHs(sv_2mortal(s)) +#endif + +#ifndef XPUSHmortal +# define XPUSHmortal XPUSHs(sv_newmortal()) +#endif + +#ifndef mXPUSHp +# define mXPUSHp(p,l) STMT_START { EXTEND(sp,1); sv_setpvn(PUSHmortal, (p), (l)); } STMT_END +#endif + +#ifndef mXPUSHn +# define mXPUSHn(n) STMT_START { EXTEND(sp,1); sv_setnv(PUSHmortal, (NV)(n)); } STMT_END +#endif + +#ifndef mXPUSHi +# define mXPUSHi(i) STMT_START { EXTEND(sp,1); sv_setiv(PUSHmortal, (IV)(i)); } STMT_END +#endif + +#ifndef mXPUSHu +# define mXPUSHu(u) STMT_START { EXTEND(sp,1); sv_setuv(PUSHmortal, (UV)(u)); } STMT_END +#endif + +/* Replace: 1 */ +#ifndef call_sv +# define call_sv perl_call_sv +#endif + +#ifndef call_pv +# define call_pv perl_call_pv +#endif + +#ifndef call_argv +# define call_argv perl_call_argv +#endif + +#ifndef call_method +# define call_method perl_call_method +#endif +#ifndef eval_sv +# define eval_sv perl_eval_sv +#endif + +/* Replace: 0 */ +#ifndef PERL_LOADMOD_DENY +# define PERL_LOADMOD_DENY 0x1 +#endif + +#ifndef PERL_LOADMOD_NOIMPORT +# define PERL_LOADMOD_NOIMPORT 0x2 +#endif + +#ifndef PERL_LOADMOD_IMPORT_OPS +# define PERL_LOADMOD_IMPORT_OPS 0x4 +#endif + +#ifndef G_METHOD +# define G_METHOD 64 +# ifdef call_sv +# undef call_sv +# endif +# if (PERL_BCDVERSION < 0x5006000) +# define call_sv(sv, flags) ((flags) & G_METHOD ? perl_call_method((char *) SvPV_nolen_const(sv), \ + (flags) & ~G_METHOD) : perl_call_sv(sv, flags)) +# else +# define call_sv(sv, flags) ((flags) & G_METHOD ? Perl_call_method(aTHX_ (char *) SvPV_nolen_const(sv), \ + (flags) & ~G_METHOD) : Perl_call_sv(aTHX_ sv, flags)) +# endif +#endif + +/* Replace perl_eval_pv with eval_pv */ + +#ifndef eval_pv +#if defined(NEED_eval_pv) +static SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); +static +#else +extern SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); +#endif + +#ifdef eval_pv +# undef eval_pv +#endif +#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b) +#define Perl_eval_pv DPPP_(my_eval_pv) + +#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL) + +SV* +DPPP_(my_eval_pv)(char *p, I32 croak_on_error) +{ + dSP; + SV* sv = newSVpv(p, 0); + + PUSHMARK(sp); + eval_sv(sv, G_SCALAR); + SvREFCNT_dec(sv); + + SPAGAIN; + sv = POPs; + PUTBACK; + + if (croak_on_error && SvTRUE(GvSV(errgv))) + croak(SvPVx(GvSV(errgv), na)); + + return sv; +} + +#endif +#endif + +#ifndef vload_module +#if defined(NEED_vload_module) +static void DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args); +static +#else +extern void DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args); +#endif + +#ifdef vload_module +# undef vload_module +#endif +#define vload_module(a,b,c,d) DPPP_(my_vload_module)(aTHX_ a,b,c,d) +#define Perl_vload_module DPPP_(my_vload_module) + +#if defined(NEED_vload_module) || defined(NEED_vload_module_GLOBAL) + +void +DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args) +{ + dTHR; + dVAR; + OP *veop, *imop; + + OP * const modname = newSVOP(OP_CONST, 0, name); + /* 5.005 has a somewhat hacky force_normal that doesn't croak on + SvREADONLY() if PL_compling is true. Current perls take care in + ck_require() to correctly turn off SvREADONLY before calling + force_normal_flags(). This seems a better fix than fudging PL_compling + */ + SvREADONLY_off(((SVOP*)modname)->op_sv); + modname->op_private |= OPpCONST_BARE; + if (ver) { + veop = newSVOP(OP_CONST, 0, ver); + } + else + veop = NULL; + if (flags & PERL_LOADMOD_NOIMPORT) { + imop = sawparens(newNULLLIST()); + } + else if (flags & PERL_LOADMOD_IMPORT_OPS) { + imop = va_arg(*args, OP*); + } + else { + SV *sv; + imop = NULL; + sv = va_arg(*args, SV*); + while (sv) { + imop = append_elem(OP_LIST, imop, newSVOP(OP_CONST, 0, sv)); + sv = va_arg(*args, SV*); + } + } + { + const line_t ocopline = PL_copline; + COP * const ocurcop = PL_curcop; + const int oexpect = PL_expect; + +#if (PERL_BCDVERSION >= 0x5004000) + utilize(!(flags & PERL_LOADMOD_DENY), start_subparse(FALSE, 0), + veop, modname, imop); +#else + utilize(!(flags & PERL_LOADMOD_DENY), start_subparse(), + modname, imop); +#endif + PL_expect = oexpect; + PL_copline = ocopline; + PL_curcop = ocurcop; + } +} + +#endif +#endif + +#ifndef load_module +#if defined(NEED_load_module) +static void DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...); +static +#else +extern void DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...); +#endif + +#ifdef load_module +# undef load_module +#endif +#define load_module DPPP_(my_load_module) +#define Perl_load_module DPPP_(my_load_module) + +#if defined(NEED_load_module) || defined(NEED_load_module_GLOBAL) + +void +DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...) +{ + va_list args; + va_start(args, ver); + vload_module(flags, name, ver, &args); + va_end(args); +} + +#endif +#endif +#ifndef newRV_inc +# define newRV_inc(sv) newRV(sv) /* Replace */ +#endif + +#ifndef newRV_noinc +#if defined(NEED_newRV_noinc) +static SV * DPPP_(my_newRV_noinc)(SV *sv); +static +#else +extern SV * DPPP_(my_newRV_noinc)(SV *sv); +#endif + +#ifdef newRV_noinc +# undef newRV_noinc +#endif +#define newRV_noinc(a) DPPP_(my_newRV_noinc)(aTHX_ a) +#define Perl_newRV_noinc DPPP_(my_newRV_noinc) + +#if defined(NEED_newRV_noinc) || defined(NEED_newRV_noinc_GLOBAL) +SV * +DPPP_(my_newRV_noinc)(SV *sv) +{ + SV *rv = (SV *)newRV(sv); + SvREFCNT_dec(sv); + return rv; +} +#endif +#endif + +/* Hint: newCONSTSUB + * Returns a CV* as of perl-5.7.1. This return value is not supported + * by Devel::PPPort. + */ + +/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */ +#if (PERL_BCDVERSION < 0x5004063) && (PERL_BCDVERSION != 0x5004005) +#if defined(NEED_newCONSTSUB) +static void DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv); +static +#else +extern void DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv); +#endif + +#ifdef newCONSTSUB +# undef newCONSTSUB +#endif +#define newCONSTSUB(a,b,c) DPPP_(my_newCONSTSUB)(aTHX_ a,b,c) +#define Perl_newCONSTSUB DPPP_(my_newCONSTSUB) + +#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL) + +/* This is just a trick to avoid a dependency of newCONSTSUB on PL_parser */ +/* (There's no PL_parser in perl < 5.005, so this is completely safe) */ +#define D_PPP_PL_copline PL_copline + +void +DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv) +{ + U32 oldhints = PL_hints; + HV *old_cop_stash = PL_curcop->cop_stash; + HV *old_curstash = PL_curstash; + line_t oldline = PL_curcop->cop_line; + PL_curcop->cop_line = D_PPP_PL_copline; + + PL_hints &= ~HINT_BLOCK_SCOPE; + if (stash) + PL_curstash = PL_curcop->cop_stash = stash; + + newSUB( + +#if (PERL_BCDVERSION < 0x5003022) + start_subparse(), +#elif (PERL_BCDVERSION == 0x5003022) + start_subparse(0), +#else /* 5.003_23 onwards */ + start_subparse(FALSE, 0), +#endif + + newSVOP(OP_CONST, 0, newSVpv((char *) name, 0)), + newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */ + newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv)) + ); + + PL_hints = oldhints; + PL_curcop->cop_stash = old_cop_stash; + PL_curstash = old_curstash; + PL_curcop->cop_line = oldline; +} +#endif +#endif + +/* + * Boilerplate macros for initializing and accessing interpreter-local + * data from C. All statics in extensions should be reworked to use + * this, if you want to make the extension thread-safe. See ext/re/re.xs + * for an example of the use of these macros. + * + * Code that uses these macros is responsible for the following: + * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts" + * 2. Declare a typedef named my_cxt_t that is a structure that contains + * all the data that needs to be interpreter-local. + * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t. + * 4. Use the MY_CXT_INIT macro such that it is called exactly once + * (typically put in the BOOT: section). + * 5. Use the members of the my_cxt_t structure everywhere as + * MY_CXT.member. + * 6. Use the dMY_CXT macro (a declaration) in all the functions that + * access MY_CXT. + */ + +#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \ + defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT) + +#ifndef START_MY_CXT + +/* This must appear in all extensions that define a my_cxt_t structure, + * right after the definition (i.e. at file scope). The non-threads + * case below uses it to declare the data as static. */ +#define START_MY_CXT + +#if (PERL_BCDVERSION < 0x5004068) +/* Fetches the SV that keeps the per-interpreter data. */ +#define dMY_CXT_SV \ + SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE) +#else /* >= perl5.004_68 */ +#define dMY_CXT_SV \ + SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \ + sizeof(MY_CXT_KEY)-1, TRUE) +#endif /* < perl5.004_68 */ + +/* This declaration should be used within all functions that use the + * interpreter-local data. */ +#define dMY_CXT \ + dMY_CXT_SV; \ + my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv)) + +/* Creates and zeroes the per-interpreter data. + * (We allocate my_cxtp in a Perl SV so that it will be released when + * the interpreter goes away.) */ +#define MY_CXT_INIT \ + dMY_CXT_SV; \ + /* newSV() allocates one more than needed */ \ + my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ + Zero(my_cxtp, 1, my_cxt_t); \ + sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) + +/* This macro must be used to access members of the my_cxt_t structure. + * e.g. MYCXT.some_data */ +#define MY_CXT (*my_cxtp) + +/* Judicious use of these macros can reduce the number of times dMY_CXT + * is used. Use is similar to pTHX, aTHX etc. */ +#define pMY_CXT my_cxt_t *my_cxtp +#define pMY_CXT_ pMY_CXT, +#define _pMY_CXT ,pMY_CXT +#define aMY_CXT my_cxtp +#define aMY_CXT_ aMY_CXT, +#define _aMY_CXT ,aMY_CXT + +#endif /* START_MY_CXT */ + +#ifndef MY_CXT_CLONE +/* Clones the per-interpreter data. */ +#define MY_CXT_CLONE \ + dMY_CXT_SV; \ + my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ + Copy(INT2PTR(my_cxt_t*, SvUV(my_cxt_sv)), my_cxtp, 1, my_cxt_t);\ + sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) +#endif + +#else /* single interpreter */ + +#ifndef START_MY_CXT + +#define START_MY_CXT static my_cxt_t my_cxt; +#define dMY_CXT_SV dNOOP +#define dMY_CXT dNOOP +#define MY_CXT_INIT NOOP +#define MY_CXT my_cxt + +#define pMY_CXT void +#define pMY_CXT_ +#define _pMY_CXT +#define aMY_CXT +#define aMY_CXT_ +#define _aMY_CXT + +#endif /* START_MY_CXT */ + +#ifndef MY_CXT_CLONE +#define MY_CXT_CLONE NOOP +#endif + +#endif + +#ifndef IVdf +# if IVSIZE == LONGSIZE +# define IVdf "ld" +# define UVuf "lu" +# define UVof "lo" +# define UVxf "lx" +# define UVXf "lX" +# else +# if IVSIZE == INTSIZE +# define IVdf "d" +# define UVuf "u" +# define UVof "o" +# define UVxf "x" +# define UVXf "X" +# endif +# endif +#endif + +#ifndef NVef +# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) && \ + defined(PERL_PRIfldbl) && (PERL_BCDVERSION != 0x5006000) + /* Not very likely, but let's try anyway. */ +# define NVef PERL_PRIeldbl +# define NVff PERL_PRIfldbl +# define NVgf PERL_PRIgldbl +# else +# define NVef "e" +# define NVff "f" +# define NVgf "g" +# endif +#endif + +#ifndef SvREFCNT_inc +# ifdef PERL_USE_GCC_BRACE_GROUPS +# define SvREFCNT_inc(sv) \ + ({ \ + SV * const _sv = (SV*)(sv); \ + if (_sv) \ + (SvREFCNT(_sv))++; \ + _sv; \ + }) +# else +# define SvREFCNT_inc(sv) \ + ((PL_Sv=(SV*)(sv)) ? (++(SvREFCNT(PL_Sv)),PL_Sv) : NULL) +# endif +#endif + +#ifndef SvREFCNT_inc_simple +# ifdef PERL_USE_GCC_BRACE_GROUPS +# define SvREFCNT_inc_simple(sv) \ + ({ \ + if (sv) \ + (SvREFCNT(sv))++; \ + (SV *)(sv); \ + }) +# else +# define SvREFCNT_inc_simple(sv) \ + ((sv) ? (SvREFCNT(sv)++,(SV*)(sv)) : NULL) +# endif +#endif + +#ifndef SvREFCNT_inc_NN +# ifdef PERL_USE_GCC_BRACE_GROUPS +# define SvREFCNT_inc_NN(sv) \ + ({ \ + SV * const _sv = (SV*)(sv); \ + SvREFCNT(_sv)++; \ + _sv; \ + }) +# else +# define SvREFCNT_inc_NN(sv) \ + (PL_Sv=(SV*)(sv),++(SvREFCNT(PL_Sv)),PL_Sv) +# endif +#endif + +#ifndef SvREFCNT_inc_void +# ifdef PERL_USE_GCC_BRACE_GROUPS +# define SvREFCNT_inc_void(sv) \ + ({ \ + SV * const _sv = (SV*)(sv); \ + if (_sv) \ + (void)(SvREFCNT(_sv)++); \ + }) +# else +# define SvREFCNT_inc_void(sv) \ + (void)((PL_Sv=(SV*)(sv)) ? ++(SvREFCNT(PL_Sv)) : 0) +# endif +#endif +#ifndef SvREFCNT_inc_simple_void +# define SvREFCNT_inc_simple_void(sv) STMT_START { if (sv) SvREFCNT(sv)++; } STMT_END +#endif + +#ifndef SvREFCNT_inc_simple_NN +# define SvREFCNT_inc_simple_NN(sv) (++SvREFCNT(sv), (SV*)(sv)) +#endif + +#ifndef SvREFCNT_inc_void_NN +# define SvREFCNT_inc_void_NN(sv) (void)(++SvREFCNT((SV*)(sv))) +#endif + +#ifndef SvREFCNT_inc_simple_void_NN +# define SvREFCNT_inc_simple_void_NN(sv) (void)(++SvREFCNT((SV*)(sv))) +#endif + +#ifndef newSV_type + +#if defined(NEED_newSV_type) +static SV* DPPP_(my_newSV_type)(pTHX_ svtype const t); +static +#else +extern SV* DPPP_(my_newSV_type)(pTHX_ svtype const t); +#endif + +#ifdef newSV_type +# undef newSV_type +#endif +#define newSV_type(a) DPPP_(my_newSV_type)(aTHX_ a) +#define Perl_newSV_type DPPP_(my_newSV_type) + +#if defined(NEED_newSV_type) || defined(NEED_newSV_type_GLOBAL) + +SV* +DPPP_(my_newSV_type)(pTHX_ svtype const t) +{ + SV* const sv = newSV(0); + sv_upgrade(sv, t); + return sv; +} + +#endif + +#endif + +#if (PERL_BCDVERSION < 0x5006000) +# define D_PPP_CONSTPV_ARG(x) ((char *) (x)) +#else +# define D_PPP_CONSTPV_ARG(x) (x) +#endif +#ifndef newSVpvn +# define newSVpvn(data,len) ((data) \ + ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \ + : newSV(0)) +#endif +#ifndef newSVpvn_utf8 +# define newSVpvn_utf8(s, len, u) newSVpvn_flags((s), (len), (u) ? SVf_UTF8 : 0) +#endif +#ifndef SVf_UTF8 +# define SVf_UTF8 0 +#endif + +#ifndef newSVpvn_flags + +#if defined(NEED_newSVpvn_flags) +static SV * DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags); +static +#else +extern SV * DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags); +#endif + +#ifdef newSVpvn_flags +# undef newSVpvn_flags +#endif +#define newSVpvn_flags(a,b,c) DPPP_(my_newSVpvn_flags)(aTHX_ a,b,c) +#define Perl_newSVpvn_flags DPPP_(my_newSVpvn_flags) + +#if defined(NEED_newSVpvn_flags) || defined(NEED_newSVpvn_flags_GLOBAL) + +SV * +DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags) +{ + SV *sv = newSVpvn(D_PPP_CONSTPV_ARG(s), len); + SvFLAGS(sv) |= (flags & SVf_UTF8); + return (flags & SVs_TEMP) ? sv_2mortal(sv) : sv; +} + +#endif + +#endif + +/* Backwards compatibility stuff... :-( */ +#if !defined(NEED_sv_2pv_flags) && defined(NEED_sv_2pv_nolen) +# define NEED_sv_2pv_flags +#endif +#if !defined(NEED_sv_2pv_flags_GLOBAL) && defined(NEED_sv_2pv_nolen_GLOBAL) +# define NEED_sv_2pv_flags_GLOBAL +#endif + +/* Hint: sv_2pv_nolen + * Use the SvPV_nolen() or SvPV_nolen_const() macros instead of sv_2pv_nolen(). + */ +#ifndef sv_2pv_nolen +# define sv_2pv_nolen(sv) SvPV_nolen(sv) +#endif + +#ifdef SvPVbyte + +/* Hint: SvPVbyte + * Does not work in perl-5.6.1, ppport.h implements a version + * borrowed from perl-5.7.3. + */ + +#if (PERL_BCDVERSION < 0x5007000) + +#if defined(NEED_sv_2pvbyte) +static char * DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp); +static +#else +extern char * DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp); +#endif + +#ifdef sv_2pvbyte +# undef sv_2pvbyte +#endif +#define sv_2pvbyte(a,b) DPPP_(my_sv_2pvbyte)(aTHX_ a,b) +#define Perl_sv_2pvbyte DPPP_(my_sv_2pvbyte) + +#if defined(NEED_sv_2pvbyte) || defined(NEED_sv_2pvbyte_GLOBAL) + +char * +DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp) +{ + sv_utf8_downgrade(sv,0); + return SvPV(sv,*lp); +} + +#endif + +/* Hint: sv_2pvbyte + * Use the SvPVbyte() macro instead of sv_2pvbyte(). + */ + +#undef SvPVbyte + +#define SvPVbyte(sv, lp) \ + ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \ + ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp)) + +#endif + +#else + +# define SvPVbyte SvPV +# define sv_2pvbyte sv_2pv + +#endif +#ifndef sv_2pvbyte_nolen +# define sv_2pvbyte_nolen(sv) sv_2pv_nolen(sv) +#endif + +/* Hint: sv_pvn + * Always use the SvPV() macro instead of sv_pvn(). + */ + +/* Hint: sv_pvn_force + * Always use the SvPV_force() macro instead of sv_pvn_force(). + */ + +/* If these are undefined, they're not handled by the core anyway */ +#ifndef SV_IMMEDIATE_UNREF +# define SV_IMMEDIATE_UNREF 0 +#endif + +#ifndef SV_GMAGIC +# define SV_GMAGIC 0 +#endif + +#ifndef SV_COW_DROP_PV +# define SV_COW_DROP_PV 0 +#endif + +#ifndef SV_UTF8_NO_ENCODING +# define SV_UTF8_NO_ENCODING 0 +#endif + +#ifndef SV_NOSTEAL +# define SV_NOSTEAL 0 +#endif + +#ifndef SV_CONST_RETURN +# define SV_CONST_RETURN 0 +#endif + +#ifndef SV_MUTABLE_RETURN +# define SV_MUTABLE_RETURN 0 +#endif + +#ifndef SV_SMAGIC +# define SV_SMAGIC 0 +#endif + +#ifndef SV_HAS_TRAILING_NUL +# define SV_HAS_TRAILING_NUL 0 +#endif + +#ifndef SV_COW_SHARED_HASH_KEYS +# define SV_COW_SHARED_HASH_KEYS 0 +#endif + +#if (PERL_BCDVERSION < 0x5007002) + +#if defined(NEED_sv_2pv_flags) +static char * DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); +static +#else +extern char * DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); +#endif + +#ifdef sv_2pv_flags +# undef sv_2pv_flags +#endif +#define sv_2pv_flags(a,b,c) DPPP_(my_sv_2pv_flags)(aTHX_ a,b,c) +#define Perl_sv_2pv_flags DPPP_(my_sv_2pv_flags) + +#if defined(NEED_sv_2pv_flags) || defined(NEED_sv_2pv_flags_GLOBAL) + +char * +DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags) +{ + STRLEN n_a = (STRLEN) flags; + return sv_2pv(sv, lp ? lp : &n_a); +} + +#endif + +#if defined(NEED_sv_pvn_force_flags) +static char * DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); +static +#else +extern char * DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); +#endif + +#ifdef sv_pvn_force_flags +# undef sv_pvn_force_flags +#endif +#define sv_pvn_force_flags(a,b,c) DPPP_(my_sv_pvn_force_flags)(aTHX_ a,b,c) +#define Perl_sv_pvn_force_flags DPPP_(my_sv_pvn_force_flags) + +#if defined(NEED_sv_pvn_force_flags) || defined(NEED_sv_pvn_force_flags_GLOBAL) + +char * +DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags) +{ + STRLEN n_a = (STRLEN) flags; + return sv_pvn_force(sv, lp ? lp : &n_a); +} + +#endif + +#endif + +#if (PERL_BCDVERSION < 0x5008008) || ( (PERL_BCDVERSION >= 0x5009000) && (PERL_BCDVERSION < 0x5009003) ) +# define DPPP_SVPV_NOLEN_LP_ARG &PL_na +#else +# define DPPP_SVPV_NOLEN_LP_ARG 0 +#endif +#ifndef SvPV_const +# define SvPV_const(sv, lp) SvPV_flags_const(sv, lp, SV_GMAGIC) +#endif + +#ifndef SvPV_mutable +# define SvPV_mutable(sv, lp) SvPV_flags_mutable(sv, lp, SV_GMAGIC) +#endif +#ifndef SvPV_flags +# define SvPV_flags(sv, lp, flags) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags)) +#endif +#ifndef SvPV_flags_const +# define SvPV_flags_const(sv, lp, flags) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? ((lp = SvCUR(sv)), SvPVX_const(sv)) : \ + (const char*) sv_2pv_flags(sv, &lp, flags|SV_CONST_RETURN)) +#endif +#ifndef SvPV_flags_const_nolen +# define SvPV_flags_const_nolen(sv, flags) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? SvPVX_const(sv) : \ + (const char*) sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, flags|SV_CONST_RETURN)) +#endif +#ifndef SvPV_flags_mutable +# define SvPV_flags_mutable(sv, lp, flags) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) : \ + sv_2pv_flags(sv, &lp, flags|SV_MUTABLE_RETURN)) +#endif +#ifndef SvPV_force +# define SvPV_force(sv, lp) SvPV_force_flags(sv, lp, SV_GMAGIC) +#endif + +#ifndef SvPV_force_nolen +# define SvPV_force_nolen(sv) SvPV_force_flags_nolen(sv, SV_GMAGIC) +#endif + +#ifndef SvPV_force_mutable +# define SvPV_force_mutable(sv, lp) SvPV_force_flags_mutable(sv, lp, SV_GMAGIC) +#endif + +#ifndef SvPV_force_nomg +# define SvPV_force_nomg(sv, lp) SvPV_force_flags(sv, lp, 0) +#endif + +#ifndef SvPV_force_nomg_nolen +# define SvPV_force_nomg_nolen(sv) SvPV_force_flags_nolen(sv, 0) +#endif +#ifndef SvPV_force_flags +# define SvPV_force_flags(sv, lp, flags) \ + ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ + ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvn_force_flags(sv, &lp, flags)) +#endif +#ifndef SvPV_force_flags_nolen +# define SvPV_force_flags_nolen(sv, flags) \ + ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ + ? SvPVX(sv) : sv_pvn_force_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, flags)) +#endif +#ifndef SvPV_force_flags_mutable +# define SvPV_force_flags_mutable(sv, lp, flags) \ + ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ + ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) \ + : sv_pvn_force_flags(sv, &lp, flags|SV_MUTABLE_RETURN)) +#endif +#ifndef SvPV_nolen +# define SvPV_nolen(sv) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? SvPVX(sv) : sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC)) +#endif +#ifndef SvPV_nolen_const +# define SvPV_nolen_const(sv) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? SvPVX_const(sv) : sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC|SV_CONST_RETURN)) +#endif +#ifndef SvPV_nomg +# define SvPV_nomg(sv, lp) SvPV_flags(sv, lp, 0) +#endif + +#ifndef SvPV_nomg_const +# define SvPV_nomg_const(sv, lp) SvPV_flags_const(sv, lp, 0) +#endif + +#ifndef SvPV_nomg_const_nolen +# define SvPV_nomg_const_nolen(sv) SvPV_flags_const_nolen(sv, 0) +#endif +#ifndef SvPV_renew +# define SvPV_renew(sv,n) STMT_START { SvLEN_set(sv, n); \ + SvPV_set((sv), (char *) saferealloc( \ + (Malloc_t)SvPVX(sv), (MEM_SIZE)((n)))); \ + } STMT_END +#endif +#ifndef SvMAGIC_set +# define SvMAGIC_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \ + (((XPVMG*) SvANY(sv))->xmg_magic = (val)); } STMT_END +#endif + +#if (PERL_BCDVERSION < 0x5009003) +#ifndef SvPVX_const +# define SvPVX_const(sv) ((const char*) (0 + SvPVX(sv))) +#endif + +#ifndef SvPVX_mutable +# define SvPVX_mutable(sv) (0 + SvPVX(sv)) +#endif +#ifndef SvRV_set +# define SvRV_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) >= SVt_RV); \ + (((XRV*) SvANY(sv))->xrv_rv = (val)); } STMT_END +#endif + +#else +#ifndef SvPVX_const +# define SvPVX_const(sv) ((const char*)((sv)->sv_u.svu_pv)) +#endif + +#ifndef SvPVX_mutable +# define SvPVX_mutable(sv) ((sv)->sv_u.svu_pv) +#endif +#ifndef SvRV_set +# define SvRV_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) >= SVt_RV); \ + ((sv)->sv_u.svu_rv = (val)); } STMT_END +#endif + +#endif +#ifndef SvSTASH_set +# define SvSTASH_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \ + (((XPVMG*) SvANY(sv))->xmg_stash = (val)); } STMT_END +#endif + +#if (PERL_BCDVERSION < 0x5004000) +#ifndef SvUV_set +# define SvUV_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \ + (((XPVIV*) SvANY(sv))->xiv_iv = (IV) (val)); } STMT_END +#endif + +#else +#ifndef SvUV_set +# define SvUV_set(sv, val) \ + STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \ + (((XPVUV*) SvANY(sv))->xuv_uv = (val)); } STMT_END +#endif + +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(vnewSVpvf) +#if defined(NEED_vnewSVpvf) +static SV * DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args); +static +#else +extern SV * DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args); +#endif + +#ifdef vnewSVpvf +# undef vnewSVpvf +#endif +#define vnewSVpvf(a,b) DPPP_(my_vnewSVpvf)(aTHX_ a,b) +#define Perl_vnewSVpvf DPPP_(my_vnewSVpvf) + +#if defined(NEED_vnewSVpvf) || defined(NEED_vnewSVpvf_GLOBAL) + +SV * +DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args) +{ + register SV *sv = newSV(0); + sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); + return sv; +} + +#endif +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vcatpvf) +# define sv_vcatpvf(sv, pat, args) sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vsetpvf) +# define sv_vsetpvf(sv, pat, args) sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_catpvf_mg) +#if defined(NEED_sv_catpvf_mg) +static void DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...); +static +#else +extern void DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...); +#endif + +#define Perl_sv_catpvf_mg DPPP_(my_sv_catpvf_mg) + +#if defined(NEED_sv_catpvf_mg) || defined(NEED_sv_catpvf_mg_GLOBAL) + +void +DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...) +{ + va_list args; + va_start(args, pat); + sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif + +#ifdef PERL_IMPLICIT_CONTEXT +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_catpvf_mg_nocontext) +#if defined(NEED_sv_catpvf_mg_nocontext) +static void DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...); +static +#else +extern void DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...); +#endif + +#define sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) +#define Perl_sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) + +#if defined(NEED_sv_catpvf_mg_nocontext) || defined(NEED_sv_catpvf_mg_nocontext_GLOBAL) + +void +DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...) +{ + dTHX; + va_list args; + va_start(args, pat); + sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif +#endif + +/* sv_catpvf_mg depends on sv_catpvf_mg_nocontext */ +#ifndef sv_catpvf_mg +# ifdef PERL_IMPLICIT_CONTEXT +# define sv_catpvf_mg Perl_sv_catpvf_mg_nocontext +# else +# define sv_catpvf_mg Perl_sv_catpvf_mg +# endif +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vcatpvf_mg) +# define sv_vcatpvf_mg(sv, pat, args) \ + STMT_START { \ + sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ + SvSETMAGIC(sv); \ + } STMT_END +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_setpvf_mg) +#if defined(NEED_sv_setpvf_mg) +static void DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...); +static +#else +extern void DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...); +#endif + +#define Perl_sv_setpvf_mg DPPP_(my_sv_setpvf_mg) + +#if defined(NEED_sv_setpvf_mg) || defined(NEED_sv_setpvf_mg_GLOBAL) + +void +DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...) +{ + va_list args; + va_start(args, pat); + sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif + +#ifdef PERL_IMPLICIT_CONTEXT +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_setpvf_mg_nocontext) +#if defined(NEED_sv_setpvf_mg_nocontext) +static void DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...); +static +#else +extern void DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...); +#endif + +#define sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) +#define Perl_sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) + +#if defined(NEED_sv_setpvf_mg_nocontext) || defined(NEED_sv_setpvf_mg_nocontext_GLOBAL) + +void +DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...) +{ + dTHX; + va_list args; + va_start(args, pat); + sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif +#endif + +/* sv_setpvf_mg depends on sv_setpvf_mg_nocontext */ +#ifndef sv_setpvf_mg +# ifdef PERL_IMPLICIT_CONTEXT +# define sv_setpvf_mg Perl_sv_setpvf_mg_nocontext +# else +# define sv_setpvf_mg Perl_sv_setpvf_mg +# endif +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vsetpvf_mg) +# define sv_vsetpvf_mg(sv, pat, args) \ + STMT_START { \ + sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ + SvSETMAGIC(sv); \ + } STMT_END +#endif + +#ifndef newSVpvn_share + +#if defined(NEED_newSVpvn_share) +static SV * DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash); +static +#else +extern SV * DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash); +#endif + +#ifdef newSVpvn_share +# undef newSVpvn_share +#endif +#define newSVpvn_share(a,b,c) DPPP_(my_newSVpvn_share)(aTHX_ a,b,c) +#define Perl_newSVpvn_share DPPP_(my_newSVpvn_share) + +#if defined(NEED_newSVpvn_share) || defined(NEED_newSVpvn_share_GLOBAL) + +SV * +DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash) +{ + SV *sv; + if (len < 0) + len = -len; + if (!hash) + PERL_HASH(hash, (char*) src, len); + sv = newSVpvn((char *) src, len); + sv_upgrade(sv, SVt_PVIV); + SvIVX(sv) = hash; + SvREADONLY_on(sv); + SvPOK_on(sv); + return sv; +} + +#endif + +#endif +#ifndef SvSHARED_HASH +# define SvSHARED_HASH(sv) (0 + SvUVX(sv)) +#endif +#ifndef HvNAME_get +# define HvNAME_get(hv) HvNAME(hv) +#endif +#ifndef HvNAMELEN_get +# define HvNAMELEN_get(hv) (HvNAME_get(hv) ? (I32)strlen(HvNAME_get(hv)) : 0) +#endif +#ifndef GvSVn +# define GvSVn(gv) GvSV(gv) +#endif + +#ifndef isGV_with_GP +# define isGV_with_GP(gv) isGV(gv) +#endif +#ifndef WARN_ALL +# define WARN_ALL 0 +#endif + +#ifndef WARN_CLOSURE +# define WARN_CLOSURE 1 +#endif + +#ifndef WARN_DEPRECATED +# define WARN_DEPRECATED 2 +#endif + +#ifndef WARN_EXITING +# define WARN_EXITING 3 +#endif + +#ifndef WARN_GLOB +# define WARN_GLOB 4 +#endif + +#ifndef WARN_IO +# define WARN_IO 5 +#endif + +#ifndef WARN_CLOSED +# define WARN_CLOSED 6 +#endif + +#ifndef WARN_EXEC +# define WARN_EXEC 7 +#endif + +#ifndef WARN_LAYER +# define WARN_LAYER 8 +#endif + +#ifndef WARN_NEWLINE +# define WARN_NEWLINE 9 +#endif + +#ifndef WARN_PIPE +# define WARN_PIPE 10 +#endif + +#ifndef WARN_UNOPENED +# define WARN_UNOPENED 11 +#endif + +#ifndef WARN_MISC +# define WARN_MISC 12 +#endif + +#ifndef WARN_NUMERIC +# define WARN_NUMERIC 13 +#endif + +#ifndef WARN_ONCE +# define WARN_ONCE 14 +#endif + +#ifndef WARN_OVERFLOW +# define WARN_OVERFLOW 15 +#endif + +#ifndef WARN_PACK +# define WARN_PACK 16 +#endif + +#ifndef WARN_PORTABLE +# define WARN_PORTABLE 17 +#endif + +#ifndef WARN_RECURSION +# define WARN_RECURSION 18 +#endif + +#ifndef WARN_REDEFINE +# define WARN_REDEFINE 19 +#endif + +#ifndef WARN_REGEXP +# define WARN_REGEXP 20 +#endif + +#ifndef WARN_SEVERE +# define WARN_SEVERE 21 +#endif + +#ifndef WARN_DEBUGGING +# define WARN_DEBUGGING 22 +#endif + +#ifndef WARN_INPLACE +# define WARN_INPLACE 23 +#endif + +#ifndef WARN_INTERNAL +# define WARN_INTERNAL 24 +#endif + +#ifndef WARN_MALLOC +# define WARN_MALLOC 25 +#endif + +#ifndef WARN_SIGNAL +# define WARN_SIGNAL 26 +#endif + +#ifndef WARN_SUBSTR +# define WARN_SUBSTR 27 +#endif + +#ifndef WARN_SYNTAX +# define WARN_SYNTAX 28 +#endif + +#ifndef WARN_AMBIGUOUS +# define WARN_AMBIGUOUS 29 +#endif + +#ifndef WARN_BAREWORD +# define WARN_BAREWORD 30 +#endif + +#ifndef WARN_DIGIT +# define WARN_DIGIT 31 +#endif + +#ifndef WARN_PARENTHESIS +# define WARN_PARENTHESIS 32 +#endif + +#ifndef WARN_PRECEDENCE +# define WARN_PRECEDENCE 33 +#endif + +#ifndef WARN_PRINTF +# define WARN_PRINTF 34 +#endif + +#ifndef WARN_PROTOTYPE +# define WARN_PROTOTYPE 35 +#endif + +#ifndef WARN_QW +# define WARN_QW 36 +#endif + +#ifndef WARN_RESERVED +# define WARN_RESERVED 37 +#endif + +#ifndef WARN_SEMICOLON +# define WARN_SEMICOLON 38 +#endif + +#ifndef WARN_TAINT +# define WARN_TAINT 39 +#endif + +#ifndef WARN_THREADS +# define WARN_THREADS 40 +#endif + +#ifndef WARN_UNINITIALIZED +# define WARN_UNINITIALIZED 41 +#endif + +#ifndef WARN_UNPACK +# define WARN_UNPACK 42 +#endif + +#ifndef WARN_UNTIE +# define WARN_UNTIE 43 +#endif + +#ifndef WARN_UTF8 +# define WARN_UTF8 44 +#endif + +#ifndef WARN_VOID +# define WARN_VOID 45 +#endif + +#ifndef WARN_ASSERTIONS +# define WARN_ASSERTIONS 46 +#endif +#ifndef packWARN +# define packWARN(a) (a) +#endif + +#ifndef ckWARN +# ifdef G_WARN_ON +# define ckWARN(a) (PL_dowarn & G_WARN_ON) +# else +# define ckWARN(a) PL_dowarn +# endif +#endif + +#if (PERL_BCDVERSION >= 0x5004000) && !defined(warner) +#if defined(NEED_warner) +static void DPPP_(my_warner)(U32 err, const char *pat, ...); +static +#else +extern void DPPP_(my_warner)(U32 err, const char *pat, ...); +#endif + +#define Perl_warner DPPP_(my_warner) + +#if defined(NEED_warner) || defined(NEED_warner_GLOBAL) + +void +DPPP_(my_warner)(U32 err, const char *pat, ...) +{ + SV *sv; + va_list args; + + PERL_UNUSED_ARG(err); + + va_start(args, pat); + sv = vnewSVpvf(pat, &args); + va_end(args); + sv_2mortal(sv); + warn("%s", SvPV_nolen(sv)); +} + +#define warner Perl_warner + +#define Perl_warner_nocontext Perl_warner + +#endif +#endif + +/* concatenating with "" ensures that only literal strings are accepted as argument + * note that STR_WITH_LEN() can't be used as argument to macros or functions that + * under some configurations might be macros + */ +#ifndef STR_WITH_LEN +# define STR_WITH_LEN(s) (s ""), (sizeof(s)-1) +#endif +#ifndef newSVpvs +# define newSVpvs(str) newSVpvn(str "", sizeof(str) - 1) +#endif + +#ifndef newSVpvs_flags +# define newSVpvs_flags(str, flags) newSVpvn_flags(str "", sizeof(str) - 1, flags) +#endif + +#ifndef sv_catpvs +# define sv_catpvs(sv, str) sv_catpvn(sv, str "", sizeof(str) - 1) +#endif + +#ifndef sv_setpvs +# define sv_setpvs(sv, str) sv_setpvn(sv, str "", sizeof(str) - 1) +#endif + +#ifndef hv_fetchs +# define hv_fetchs(hv, key, lval) hv_fetch(hv, key "", sizeof(key) - 1, lval) +#endif + +#ifndef hv_stores +# define hv_stores(hv, key, val) hv_store(hv, key "", sizeof(key) - 1, val, 0) +#endif +#ifndef gv_fetchpvn_flags +# define gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt) +#endif + +#ifndef gv_fetchpvs +# define gv_fetchpvs(name, flags, svt) gv_fetchpvn_flags(name "", sizeof(name) - 1, flags, svt) +#endif + +#ifndef gv_stashpvs +# define gv_stashpvs(name, flags) gv_stashpvn(name "", sizeof(name) - 1, flags) +#endif +#ifndef SvGETMAGIC +# define SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_END +#endif +#ifndef PERL_MAGIC_sv +# define PERL_MAGIC_sv '\0' +#endif + +#ifndef PERL_MAGIC_overload +# define PERL_MAGIC_overload 'A' +#endif + +#ifndef PERL_MAGIC_overload_elem +# define PERL_MAGIC_overload_elem 'a' +#endif + +#ifndef PERL_MAGIC_overload_table +# define PERL_MAGIC_overload_table 'c' +#endif + +#ifndef PERL_MAGIC_bm +# define PERL_MAGIC_bm 'B' +#endif + +#ifndef PERL_MAGIC_regdata +# define PERL_MAGIC_regdata 'D' +#endif + +#ifndef PERL_MAGIC_regdatum +# define PERL_MAGIC_regdatum 'd' +#endif + +#ifndef PERL_MAGIC_env +# define PERL_MAGIC_env 'E' +#endif + +#ifndef PERL_MAGIC_envelem +# define PERL_MAGIC_envelem 'e' +#endif + +#ifndef PERL_MAGIC_fm +# define PERL_MAGIC_fm 'f' +#endif + +#ifndef PERL_MAGIC_regex_global +# define PERL_MAGIC_regex_global 'g' +#endif + +#ifndef PERL_MAGIC_isa +# define PERL_MAGIC_isa 'I' +#endif + +#ifndef PERL_MAGIC_isaelem +# define PERL_MAGIC_isaelem 'i' +#endif + +#ifndef PERL_MAGIC_nkeys +# define PERL_MAGIC_nkeys 'k' +#endif + +#ifndef PERL_MAGIC_dbfile +# define PERL_MAGIC_dbfile 'L' +#endif + +#ifndef PERL_MAGIC_dbline +# define PERL_MAGIC_dbline 'l' +#endif + +#ifndef PERL_MAGIC_mutex +# define PERL_MAGIC_mutex 'm' +#endif + +#ifndef PERL_MAGIC_shared +# define PERL_MAGIC_shared 'N' +#endif + +#ifndef PERL_MAGIC_shared_scalar +# define PERL_MAGIC_shared_scalar 'n' +#endif + +#ifndef PERL_MAGIC_collxfrm +# define PERL_MAGIC_collxfrm 'o' +#endif + +#ifndef PERL_MAGIC_tied +# define PERL_MAGIC_tied 'P' +#endif + +#ifndef PERL_MAGIC_tiedelem +# define PERL_MAGIC_tiedelem 'p' +#endif + +#ifndef PERL_MAGIC_tiedscalar +# define PERL_MAGIC_tiedscalar 'q' +#endif + +#ifndef PERL_MAGIC_qr +# define PERL_MAGIC_qr 'r' +#endif + +#ifndef PERL_MAGIC_sig +# define PERL_MAGIC_sig 'S' +#endif + +#ifndef PERL_MAGIC_sigelem +# define PERL_MAGIC_sigelem 's' +#endif + +#ifndef PERL_MAGIC_taint +# define PERL_MAGIC_taint 't' +#endif + +#ifndef PERL_MAGIC_uvar +# define PERL_MAGIC_uvar 'U' +#endif + +#ifndef PERL_MAGIC_uvar_elem +# define PERL_MAGIC_uvar_elem 'u' +#endif + +#ifndef PERL_MAGIC_vstring +# define PERL_MAGIC_vstring 'V' +#endif + +#ifndef PERL_MAGIC_vec +# define PERL_MAGIC_vec 'v' +#endif + +#ifndef PERL_MAGIC_utf8 +# define PERL_MAGIC_utf8 'w' +#endif + +#ifndef PERL_MAGIC_substr +# define PERL_MAGIC_substr 'x' +#endif + +#ifndef PERL_MAGIC_defelem +# define PERL_MAGIC_defelem 'y' +#endif + +#ifndef PERL_MAGIC_glob +# define PERL_MAGIC_glob '*' +#endif + +#ifndef PERL_MAGIC_arylen +# define PERL_MAGIC_arylen '#' +#endif + +#ifndef PERL_MAGIC_pos +# define PERL_MAGIC_pos '.' +#endif + +#ifndef PERL_MAGIC_backref +# define PERL_MAGIC_backref '<' +#endif + +#ifndef PERL_MAGIC_ext +# define PERL_MAGIC_ext '~' +#endif + +/* That's the best we can do... */ +#ifndef sv_catpvn_nomg +# define sv_catpvn_nomg sv_catpvn +#endif + +#ifndef sv_catsv_nomg +# define sv_catsv_nomg sv_catsv +#endif + +#ifndef sv_setsv_nomg +# define sv_setsv_nomg sv_setsv +#endif + +#ifndef sv_pvn_nomg +# define sv_pvn_nomg sv_pvn +#endif + +#ifndef SvIV_nomg +# define SvIV_nomg SvIV +#endif + +#ifndef SvUV_nomg +# define SvUV_nomg SvUV +#endif + +#ifndef sv_catpv_mg +# define sv_catpv_mg(sv, ptr) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_catpv(TeMpSv,ptr); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_catpvn_mg +# define sv_catpvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_catpvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_catsv_mg +# define sv_catsv_mg(dsv, ssv) \ + STMT_START { \ + SV *TeMpSv = dsv; \ + sv_catsv(TeMpSv,ssv); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setiv_mg +# define sv_setiv_mg(sv, i) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setiv(TeMpSv,i); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setnv_mg +# define sv_setnv_mg(sv, num) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setnv(TeMpSv,num); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setpv_mg +# define sv_setpv_mg(sv, ptr) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setpv(TeMpSv,ptr); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setpvn_mg +# define sv_setpvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setpvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setsv_mg +# define sv_setsv_mg(dsv, ssv) \ + STMT_START { \ + SV *TeMpSv = dsv; \ + sv_setsv(TeMpSv,ssv); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setuv_mg +# define sv_setuv_mg(sv, i) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setuv(TeMpSv,i); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_usepvn_mg +# define sv_usepvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_usepvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif +#ifndef SvVSTRING_mg +# define SvVSTRING_mg(sv) (SvMAGICAL(sv) ? mg_find(sv, PERL_MAGIC_vstring) : NULL) +#endif + +/* Hint: sv_magic_portable + * This is a compatibility function that is only available with + * Devel::PPPort. It is NOT in the perl core. + * Its purpose is to mimic the 5.8.0 behaviour of sv_magic() when + * it is being passed a name pointer with namlen == 0. In that + * case, perl 5.8.0 and later store the pointer, not a copy of it. + * The compatibility can be provided back to perl 5.004. With + * earlier versions, the code will not compile. + */ + +#if (PERL_BCDVERSION < 0x5004000) + + /* code that uses sv_magic_portable will not compile */ + +#elif (PERL_BCDVERSION < 0x5008000) + +# define sv_magic_portable(sv, obj, how, name, namlen) \ + STMT_START { \ + SV *SvMp_sv = (sv); \ + char *SvMp_name = (char *) (name); \ + I32 SvMp_namlen = (namlen); \ + if (SvMp_name && SvMp_namlen == 0) \ + { \ + MAGIC *mg; \ + sv_magic(SvMp_sv, obj, how, 0, 0); \ + mg = SvMAGIC(SvMp_sv); \ + mg->mg_len = -42; /* XXX: this is the tricky part */ \ + mg->mg_ptr = SvMp_name; \ + } \ + else \ + { \ + sv_magic(SvMp_sv, obj, how, SvMp_name, SvMp_namlen); \ + } \ + } STMT_END + +#else + +# define sv_magic_portable(a, b, c, d, e) sv_magic(a, b, c, d, e) + +#endif + +#ifdef USE_ITHREADS +#ifndef CopFILE +# define CopFILE(c) ((c)->cop_file) +#endif + +#ifndef CopFILEGV +# define CopFILEGV(c) (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv) +#endif + +#ifndef CopFILE_set +# define CopFILE_set(c,pv) ((c)->cop_file = savepv(pv)) +#endif + +#ifndef CopFILESV +# define CopFILESV(c) (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv) +#endif + +#ifndef CopFILEAV +# define CopFILEAV(c) (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav) +#endif + +#ifndef CopSTASHPV +# define CopSTASHPV(c) ((c)->cop_stashpv) +#endif + +#ifndef CopSTASHPV_set +# define CopSTASHPV_set(c,pv) ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch)) +#endif + +#ifndef CopSTASH +# define CopSTASH(c) (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv) +#endif + +#ifndef CopSTASH_set +# define CopSTASH_set(c,hv) CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch) +#endif + +#ifndef CopSTASH_eq +# define CopSTASH_eq(c,hv) ((hv) && (CopSTASHPV(c) == HvNAME(hv) \ + || (CopSTASHPV(c) && HvNAME(hv) \ + && strEQ(CopSTASHPV(c), HvNAME(hv))))) +#endif + +#else +#ifndef CopFILEGV +# define CopFILEGV(c) ((c)->cop_filegv) +#endif + +#ifndef CopFILEGV_set +# define CopFILEGV_set(c,gv) ((c)->cop_filegv = (GV*)SvREFCNT_inc(gv)) +#endif + +#ifndef CopFILE_set +# define CopFILE_set(c,pv) CopFILEGV_set((c), gv_fetchfile(pv)) +#endif + +#ifndef CopFILESV +# define CopFILESV(c) (CopFILEGV(c) ? GvSV(CopFILEGV(c)) : Nullsv) +#endif + +#ifndef CopFILEAV +# define CopFILEAV(c) (CopFILEGV(c) ? GvAV(CopFILEGV(c)) : Nullav) +#endif + +#ifndef CopFILE +# define CopFILE(c) (CopFILESV(c) ? SvPVX(CopFILESV(c)) : Nullch) +#endif + +#ifndef CopSTASH +# define CopSTASH(c) ((c)->cop_stash) +#endif + +#ifndef CopSTASH_set +# define CopSTASH_set(c,hv) ((c)->cop_stash = (hv)) +#endif + +#ifndef CopSTASHPV +# define CopSTASHPV(c) (CopSTASH(c) ? HvNAME(CopSTASH(c)) : Nullch) +#endif + +#ifndef CopSTASHPV_set +# define CopSTASHPV_set(c,pv) CopSTASH_set((c), gv_stashpv(pv,GV_ADD)) +#endif + +#ifndef CopSTASH_eq +# define CopSTASH_eq(c,hv) (CopSTASH(c) == (hv)) +#endif + +#endif /* USE_ITHREADS */ +#ifndef IN_PERL_COMPILETIME +# define IN_PERL_COMPILETIME (PL_curcop == &PL_compiling) +#endif + +#ifndef IN_LOCALE_RUNTIME +# define IN_LOCALE_RUNTIME (PL_curcop->op_private & HINT_LOCALE) +#endif + +#ifndef IN_LOCALE_COMPILETIME +# define IN_LOCALE_COMPILETIME (PL_hints & HINT_LOCALE) +#endif + +#ifndef IN_LOCALE +# define IN_LOCALE (IN_PERL_COMPILETIME ? IN_LOCALE_COMPILETIME : IN_LOCALE_RUNTIME) +#endif +#ifndef IS_NUMBER_IN_UV +# define IS_NUMBER_IN_UV 0x01 +#endif + +#ifndef IS_NUMBER_GREATER_THAN_UV_MAX +# define IS_NUMBER_GREATER_THAN_UV_MAX 0x02 +#endif + +#ifndef IS_NUMBER_NOT_INT +# define IS_NUMBER_NOT_INT 0x04 +#endif + +#ifndef IS_NUMBER_NEG +# define IS_NUMBER_NEG 0x08 +#endif + +#ifndef IS_NUMBER_INFINITY +# define IS_NUMBER_INFINITY 0x10 +#endif + +#ifndef IS_NUMBER_NAN +# define IS_NUMBER_NAN 0x20 +#endif +#ifndef GROK_NUMERIC_RADIX +# define GROK_NUMERIC_RADIX(sp, send) grok_numeric_radix(sp, send) +#endif +#ifndef PERL_SCAN_GREATER_THAN_UV_MAX +# define PERL_SCAN_GREATER_THAN_UV_MAX 0x02 +#endif + +#ifndef PERL_SCAN_SILENT_ILLDIGIT +# define PERL_SCAN_SILENT_ILLDIGIT 0x04 +#endif + +#ifndef PERL_SCAN_ALLOW_UNDERSCORES +# define PERL_SCAN_ALLOW_UNDERSCORES 0x01 +#endif + +#ifndef PERL_SCAN_DISALLOW_PREFIX +# define PERL_SCAN_DISALLOW_PREFIX 0x02 +#endif + +#ifndef grok_numeric_radix +#if defined(NEED_grok_numeric_radix) +static bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); +static +#else +extern bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); +#endif + +#ifdef grok_numeric_radix +# undef grok_numeric_radix +#endif +#define grok_numeric_radix(a,b) DPPP_(my_grok_numeric_radix)(aTHX_ a,b) +#define Perl_grok_numeric_radix DPPP_(my_grok_numeric_radix) + +#if defined(NEED_grok_numeric_radix) || defined(NEED_grok_numeric_radix_GLOBAL) +bool +DPPP_(my_grok_numeric_radix)(pTHX_ const char **sp, const char *send) +{ +#ifdef USE_LOCALE_NUMERIC +#ifdef PL_numeric_radix_sv + if (PL_numeric_radix_sv && IN_LOCALE) { + STRLEN len; + char* radix = SvPV(PL_numeric_radix_sv, len); + if (*sp + len <= send && memEQ(*sp, radix, len)) { + *sp += len; + return TRUE; + } + } +#else + /* older perls don't have PL_numeric_radix_sv so the radix + * must manually be requested from locale.h + */ +#include + dTHR; /* needed for older threaded perls */ + struct lconv *lc = localeconv(); + char *radix = lc->decimal_point; + if (radix && IN_LOCALE) { + STRLEN len = strlen(radix); + if (*sp + len <= send && memEQ(*sp, radix, len)) { + *sp += len; + return TRUE; + } + } +#endif +#endif /* USE_LOCALE_NUMERIC */ + /* always try "." if numeric radix didn't match because + * we may have data from different locales mixed */ + if (*sp < send && **sp == '.') { + ++*sp; + return TRUE; + } + return FALSE; +} +#endif +#endif + +#ifndef grok_number +#if defined(NEED_grok_number) +static int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); +static +#else +extern int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); +#endif + +#ifdef grok_number +# undef grok_number +#endif +#define grok_number(a,b,c) DPPP_(my_grok_number)(aTHX_ a,b,c) +#define Perl_grok_number DPPP_(my_grok_number) + +#if defined(NEED_grok_number) || defined(NEED_grok_number_GLOBAL) +int +DPPP_(my_grok_number)(pTHX_ const char *pv, STRLEN len, UV *valuep) +{ + const char *s = pv; + const char *send = pv + len; + const UV max_div_10 = UV_MAX / 10; + const char max_mod_10 = UV_MAX % 10; + int numtype = 0; + int sawinf = 0; + int sawnan = 0; + + while (s < send && isSPACE(*s)) + s++; + if (s == send) { + return 0; + } else if (*s == '-') { + s++; + numtype = IS_NUMBER_NEG; + } + else if (*s == '+') + s++; + + if (s == send) + return 0; + + /* next must be digit or the radix separator or beginning of infinity */ + if (isDIGIT(*s)) { + /* UVs are at least 32 bits, so the first 9 decimal digits cannot + overflow. */ + UV value = *s - '0'; + /* This construction seems to be more optimiser friendly. + (without it gcc does the isDIGIT test and the *s - '0' separately) + With it gcc on arm is managing 6 instructions (6 cycles) per digit. + In theory the optimiser could deduce how far to unroll the loop + before checking for overflow. */ + if (++s < send) { + int digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + /* Now got 9 digits, so need to check + each time for overflow. */ + digit = *s - '0'; + while (digit >= 0 && digit <= 9 + && (value < max_div_10 + || (value == max_div_10 + && digit <= max_mod_10))) { + value = value * 10 + digit; + if (++s < send) + digit = *s - '0'; + else + break; + } + if (digit >= 0 && digit <= 9 + && (s < send)) { + /* value overflowed. + skip the remaining digits, don't + worry about setting *valuep. */ + do { + s++; + } while (s < send && isDIGIT(*s)); + numtype |= + IS_NUMBER_GREATER_THAN_UV_MAX; + goto skip_value; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + numtype |= IS_NUMBER_IN_UV; + if (valuep) + *valuep = value; + + skip_value: + if (GROK_NUMERIC_RADIX(&s, send)) { + numtype |= IS_NUMBER_NOT_INT; + while (s < send && isDIGIT(*s)) /* optional digits after the radix */ + s++; + } + } + else if (GROK_NUMERIC_RADIX(&s, send)) { + numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */ + /* no digits before the radix means we need digits after it */ + if (s < send && isDIGIT(*s)) { + do { + s++; + } while (s < send && isDIGIT(*s)); + if (valuep) { + /* integer approximation is valid - it's 0. */ + *valuep = 0; + } + } + else + return 0; + } else if (*s == 'I' || *s == 'i') { + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; if (s == send || (*s != 'F' && *s != 'f')) return 0; + s++; if (s < send && (*s == 'I' || *s == 'i')) { + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; if (s == send || (*s != 'I' && *s != 'i')) return 0; + s++; if (s == send || (*s != 'T' && *s != 't')) return 0; + s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0; + s++; + } + sawinf = 1; + } else if (*s == 'N' || *s == 'n') { + /* XXX TODO: There are signaling NaNs and quiet NaNs. */ + s++; if (s == send || (*s != 'A' && *s != 'a')) return 0; + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; + sawnan = 1; + } else + return 0; + + if (sawinf) { + numtype &= IS_NUMBER_NEG; /* Keep track of sign */ + numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT; + } else if (sawnan) { + numtype &= IS_NUMBER_NEG; /* Keep track of sign */ + numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT; + } else if (s < send) { + /* we can have an optional exponent part */ + if (*s == 'e' || *s == 'E') { + /* The only flag we keep is sign. Blow away any "it's UV" */ + numtype &= IS_NUMBER_NEG; + numtype |= IS_NUMBER_NOT_INT; + s++; + if (s < send && (*s == '-' || *s == '+')) + s++; + if (s < send && isDIGIT(*s)) { + do { + s++; + } while (s < send && isDIGIT(*s)); + } + else + return 0; + } + } + while (s < send && isSPACE(*s)) + s++; + if (s >= send) + return numtype; + if (len == 10 && memEQ(pv, "0 but true", 10)) { + if (valuep) + *valuep = 0; + return IS_NUMBER_IN_UV; + } + return 0; +} +#endif +#endif + +/* + * The grok_* routines have been modified to use warn() instead of + * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit, + * which is why the stack variable has been renamed to 'xdigit'. + */ + +#ifndef grok_bin +#if defined(NEED_grok_bin) +static UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +static +#else +extern UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +#endif + +#ifdef grok_bin +# undef grok_bin +#endif +#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d) +#define Perl_grok_bin DPPP_(my_grok_bin) + +#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL) +UV +DPPP_(my_grok_bin)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_2 = UV_MAX / 2; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + + if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { + /* strip off leading b or 0b. + for compatibility silently suffer "b" and "0b" as valid binary + numbers. */ + if (len >= 1) { + if (s[0] == 'b') { + s++; + len--; + } + else if (len >= 2 && s[0] == '0' && s[1] == 'b') { + s+=2; + len-=2; + } + } + } + + for (; len-- && *s; s++) { + char bit = *s; + if (bit == '0' || bit == '1') { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + With gcc seems to be much straighter code than old scan_bin. */ + redo: + if (!overflowed) { + if (value <= max_div_2) { + value = (value << 1) | (bit - '0'); + continue; + } + /* Bah. We're just overflowed. */ + warn("Integer overflow in binary number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 2.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount. */ + value_nv += (NV)(bit - '0'); + continue; + } + if (bit == '_' && len && allow_underscores && (bit = s[1]) + && (bit == '0' || bit == '1')) + { + --len; + ++s; + goto redo; + } + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal binary digit '%c' ignored", *s); + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Binary number > 0b11111111111111111111111111111111 non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#ifndef grok_hex +#if defined(NEED_grok_hex) +static UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +static +#else +extern UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +#endif + +#ifdef grok_hex +# undef grok_hex +#endif +#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d) +#define Perl_grok_hex DPPP_(my_grok_hex) + +#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL) +UV +DPPP_(my_grok_hex)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_16 = UV_MAX / 16; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + const char *xdigit; + + if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { + /* strip off leading x or 0x. + for compatibility silently suffer "x" and "0x" as valid hex numbers. + */ + if (len >= 1) { + if (s[0] == 'x') { + s++; + len--; + } + else if (len >= 2 && s[0] == '0' && s[1] == 'x') { + s+=2; + len-=2; + } + } + } + + for (; len-- && *s; s++) { + xdigit = strchr((char *) PL_hexdigit, *s); + if (xdigit) { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + With gcc seems to be much straighter code than old scan_hex. */ + redo: + if (!overflowed) { + if (value <= max_div_16) { + value = (value << 4) | ((xdigit - PL_hexdigit) & 15); + continue; + } + warn("Integer overflow in hexadecimal number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 16.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount of 16-tuples. */ + value_nv += (NV)((xdigit - PL_hexdigit) & 15); + continue; + } + if (*s == '_' && len && allow_underscores && s[1] + && (xdigit = strchr((char *) PL_hexdigit, s[1]))) + { + --len; + ++s; + goto redo; + } + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal hexadecimal digit '%c' ignored", *s); + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Hexadecimal number > 0xffffffff non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#ifndef grok_oct +#if defined(NEED_grok_oct) +static UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +static +#else +extern UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); +#endif + +#ifdef grok_oct +# undef grok_oct +#endif +#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d) +#define Perl_grok_oct DPPP_(my_grok_oct) + +#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL) +UV +DPPP_(my_grok_oct)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_8 = UV_MAX / 8; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + + for (; len-- && *s; s++) { + /* gcc 2.95 optimiser not smart enough to figure that this subtraction + out front allows slicker code. */ + int digit = *s - '0'; + if (digit >= 0 && digit <= 7) { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + */ + redo: + if (!overflowed) { + if (value <= max_div_8) { + value = (value << 3) | digit; + continue; + } + /* Bah. We're just overflowed. */ + warn("Integer overflow in octal number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 8.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount of 8-tuples. */ + value_nv += (NV)digit; + continue; + } + if (digit == ('_' - '0') && len && allow_underscores + && (digit = s[1] - '0') && (digit >= 0 && digit <= 7)) + { + --len; + ++s; + goto redo; + } + /* Allow \octal to work the DWIM way (that is, stop scanning + * as soon as non-octal characters are seen, complain only iff + * someone seems to want to use the digits eight and nine). */ + if (digit == 8 || digit == 9) { + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal octal digit '%c' ignored", *s); + } + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Octal number > 037777777777 non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#if !defined(my_snprintf) +#if defined(NEED_my_snprintf) +static int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...); +static +#else +extern int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...); +#endif + +#define my_snprintf DPPP_(my_my_snprintf) +#define Perl_my_snprintf DPPP_(my_my_snprintf) + +#if defined(NEED_my_snprintf) || defined(NEED_my_snprintf_GLOBAL) + +int +DPPP_(my_my_snprintf)(char *buffer, const Size_t len, const char *format, ...) +{ + dTHX; + int retval; + va_list ap; + va_start(ap, format); +#ifdef HAS_VSNPRINTF + retval = vsnprintf(buffer, len, format, ap); +#else + retval = vsprintf(buffer, format, ap); +#endif + va_end(ap); + if (retval < 0 || (len > 0 && (Size_t)retval >= len)) + Perl_croak(aTHX_ "panic: my_snprintf buffer overflow"); + return retval; +} + +#endif +#endif + +#if !defined(my_sprintf) +#if defined(NEED_my_sprintf) +static int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...); +static +#else +extern int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...); +#endif + +#define my_sprintf DPPP_(my_my_sprintf) +#define Perl_my_sprintf DPPP_(my_my_sprintf) + +#if defined(NEED_my_sprintf) || defined(NEED_my_sprintf_GLOBAL) + +int +DPPP_(my_my_sprintf)(char *buffer, const char* pat, ...) +{ + va_list args; + va_start(args, pat); + vsprintf(buffer, pat, args); + va_end(args); + return strlen(buffer); +} + +#endif +#endif + +#ifdef NO_XSLOCKS +# ifdef dJMPENV +# define dXCPT dJMPENV; int rEtV = 0 +# define XCPT_TRY_START JMPENV_PUSH(rEtV); if (rEtV == 0) +# define XCPT_TRY_END JMPENV_POP; +# define XCPT_CATCH if (rEtV != 0) +# define XCPT_RETHROW JMPENV_JUMP(rEtV) +# else +# define dXCPT Sigjmp_buf oldTOP; int rEtV = 0 +# define XCPT_TRY_START Copy(top_env, oldTOP, 1, Sigjmp_buf); rEtV = Sigsetjmp(top_env, 1); if (rEtV == 0) +# define XCPT_TRY_END Copy(oldTOP, top_env, 1, Sigjmp_buf); +# define XCPT_CATCH if (rEtV != 0) +# define XCPT_RETHROW Siglongjmp(top_env, rEtV) +# endif +#endif + +#if !defined(my_strlcat) +#if defined(NEED_my_strlcat) +static Size_t DPPP_(my_my_strlcat)(char * dst, const char * src, Size_t size); +static +#else +extern Size_t DPPP_(my_my_strlcat)(char * dst, const char * src, Size_t size); +#endif + +#define my_strlcat DPPP_(my_my_strlcat) +#define Perl_my_strlcat DPPP_(my_my_strlcat) + +#if defined(NEED_my_strlcat) || defined(NEED_my_strlcat_GLOBAL) + +Size_t +DPPP_(my_my_strlcat)(char *dst, const char *src, Size_t size) +{ + Size_t used, length, copy; + + used = strlen(dst); + length = strlen(src); + if (size > 0 && used < size - 1) { + copy = (length >= size - used) ? size - used - 1 : length; + memcpy(dst + used, src, copy); + dst[used + copy] = '\0'; + } + return used + length; +} +#endif +#endif + +#if !defined(my_strlcpy) +#if defined(NEED_my_strlcpy) +static Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size); +static +#else +extern Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size); +#endif + +#define my_strlcpy DPPP_(my_my_strlcpy) +#define Perl_my_strlcpy DPPP_(my_my_strlcpy) + +#if defined(NEED_my_strlcpy) || defined(NEED_my_strlcpy_GLOBAL) + +Size_t +DPPP_(my_my_strlcpy)(char *dst, const char *src, Size_t size) +{ + Size_t length, copy; + + length = strlen(src); + if (size > 0) { + copy = (length >= size) ? size - 1 : length; + memcpy(dst, src, copy); + dst[copy] = '\0'; + } + return length; +} + +#endif +#endif +#ifndef PERL_PV_ESCAPE_QUOTE +# define PERL_PV_ESCAPE_QUOTE 0x0001 +#endif + +#ifndef PERL_PV_PRETTY_QUOTE +# define PERL_PV_PRETTY_QUOTE PERL_PV_ESCAPE_QUOTE +#endif + +#ifndef PERL_PV_PRETTY_ELLIPSES +# define PERL_PV_PRETTY_ELLIPSES 0x0002 +#endif + +#ifndef PERL_PV_PRETTY_LTGT +# define PERL_PV_PRETTY_LTGT 0x0004 +#endif + +#ifndef PERL_PV_ESCAPE_FIRSTCHAR +# define PERL_PV_ESCAPE_FIRSTCHAR 0x0008 +#endif + +#ifndef PERL_PV_ESCAPE_UNI +# define PERL_PV_ESCAPE_UNI 0x0100 +#endif + +#ifndef PERL_PV_ESCAPE_UNI_DETECT +# define PERL_PV_ESCAPE_UNI_DETECT 0x0200 +#endif + +#ifndef PERL_PV_ESCAPE_ALL +# define PERL_PV_ESCAPE_ALL 0x1000 +#endif + +#ifndef PERL_PV_ESCAPE_NOBACKSLASH +# define PERL_PV_ESCAPE_NOBACKSLASH 0x2000 +#endif + +#ifndef PERL_PV_ESCAPE_NOCLEAR +# define PERL_PV_ESCAPE_NOCLEAR 0x4000 +#endif + +#ifndef PERL_PV_ESCAPE_RE +# define PERL_PV_ESCAPE_RE 0x8000 +#endif + +#ifndef PERL_PV_PRETTY_NOCLEAR +# define PERL_PV_PRETTY_NOCLEAR PERL_PV_ESCAPE_NOCLEAR +#endif +#ifndef PERL_PV_PRETTY_DUMP +# define PERL_PV_PRETTY_DUMP PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_QUOTE +#endif + +#ifndef PERL_PV_PRETTY_REGPROP +# define PERL_PV_PRETTY_REGPROP PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_LTGT|PERL_PV_ESCAPE_RE +#endif + +/* Hint: pv_escape + * Note that unicode functionality is only backported to + * those perl versions that support it. For older perl + * versions, the implementation will fall back to bytes. + */ + +#ifndef pv_escape +#if defined(NEED_pv_escape) +static char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags); +static +#else +extern char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags); +#endif + +#ifdef pv_escape +# undef pv_escape +#endif +#define pv_escape(a,b,c,d,e,f) DPPP_(my_pv_escape)(aTHX_ a,b,c,d,e,f) +#define Perl_pv_escape DPPP_(my_pv_escape) + +#if defined(NEED_pv_escape) || defined(NEED_pv_escape_GLOBAL) + +char * +DPPP_(my_pv_escape)(pTHX_ SV *dsv, char const * const str, + const STRLEN count, const STRLEN max, + STRLEN * const escaped, const U32 flags) +{ + const char esc = flags & PERL_PV_ESCAPE_RE ? '%' : '\\'; + const char dq = flags & PERL_PV_ESCAPE_QUOTE ? '"' : esc; + char octbuf[32] = "%123456789ABCDF"; + STRLEN wrote = 0; + STRLEN chsize = 0; + STRLEN readsize = 1; +#if defined(is_utf8_string) && defined(utf8_to_uvchr) + bool isuni = flags & PERL_PV_ESCAPE_UNI ? 1 : 0; +#endif + const char *pv = str; + const char * const end = pv + count; + octbuf[0] = esc; + + if (!(flags & PERL_PV_ESCAPE_NOCLEAR)) + sv_setpvs(dsv, ""); + +#if defined(is_utf8_string) && defined(utf8_to_uvchr) + if ((flags & PERL_PV_ESCAPE_UNI_DETECT) && is_utf8_string((U8*)pv, count)) + isuni = 1; +#endif + + for (; pv < end && (!max || wrote < max) ; pv += readsize) { + const UV u = +#if defined(is_utf8_string) && defined(utf8_to_uvchr) + isuni ? utf8_to_uvchr((U8*)pv, &readsize) : +#endif + (U8)*pv; + const U8 c = (U8)u & 0xFF; + + if (u > 255 || (flags & PERL_PV_ESCAPE_ALL)) { + if (flags & PERL_PV_ESCAPE_FIRSTCHAR) + chsize = my_snprintf(octbuf, sizeof octbuf, + "%"UVxf, u); + else + chsize = my_snprintf(octbuf, sizeof octbuf, + "%cx{%"UVxf"}", esc, u); + } else if (flags & PERL_PV_ESCAPE_NOBACKSLASH) { + chsize = 1; + } else { + if (c == dq || c == esc || !isPRINT(c)) { + chsize = 2; + switch (c) { + case '\\' : /* fallthrough */ + case '%' : if (c == esc) + octbuf[1] = esc; + else + chsize = 1; + break; + case '\v' : octbuf[1] = 'v'; break; + case '\t' : octbuf[1] = 't'; break; + case '\r' : octbuf[1] = 'r'; break; + case '\n' : octbuf[1] = 'n'; break; + case '\f' : octbuf[1] = 'f'; break; + case '"' : if (dq == '"') + octbuf[1] = '"'; + else + chsize = 1; + break; + default: chsize = my_snprintf(octbuf, sizeof octbuf, + pv < end && isDIGIT((U8)*(pv+readsize)) + ? "%c%03o" : "%c%o", esc, c); + } + } else { + chsize = 1; + } + } + if (max && wrote + chsize > max) { + break; + } else if (chsize > 1) { + sv_catpvn(dsv, octbuf, chsize); + wrote += chsize; + } else { + char tmp[2]; + my_snprintf(tmp, sizeof tmp, "%c", c); + sv_catpvn(dsv, tmp, 1); + wrote++; + } + if (flags & PERL_PV_ESCAPE_FIRSTCHAR) + break; + } + if (escaped != NULL) + *escaped= pv - str; + return SvPVX(dsv); +} + +#endif +#endif + +#ifndef pv_pretty +#if defined(NEED_pv_pretty) +static char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags); +static +#else +extern char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags); +#endif + +#ifdef pv_pretty +# undef pv_pretty +#endif +#define pv_pretty(a,b,c,d,e,f,g) DPPP_(my_pv_pretty)(aTHX_ a,b,c,d,e,f,g) +#define Perl_pv_pretty DPPP_(my_pv_pretty) + +#if defined(NEED_pv_pretty) || defined(NEED_pv_pretty_GLOBAL) + +char * +DPPP_(my_pv_pretty)(pTHX_ SV *dsv, char const * const str, const STRLEN count, + const STRLEN max, char const * const start_color, char const * const end_color, + const U32 flags) +{ + const U8 dq = (flags & PERL_PV_PRETTY_QUOTE) ? '"' : '%'; + STRLEN escaped; + + if (!(flags & PERL_PV_PRETTY_NOCLEAR)) + sv_setpvs(dsv, ""); + + if (dq == '"') + sv_catpvs(dsv, "\""); + else if (flags & PERL_PV_PRETTY_LTGT) + sv_catpvs(dsv, "<"); + + if (start_color != NULL) + sv_catpv(dsv, D_PPP_CONSTPV_ARG(start_color)); + + pv_escape(dsv, str, count, max, &escaped, flags | PERL_PV_ESCAPE_NOCLEAR); + + if (end_color != NULL) + sv_catpv(dsv, D_PPP_CONSTPV_ARG(end_color)); + + if (dq == '"') + sv_catpvs(dsv, "\""); + else if (flags & PERL_PV_PRETTY_LTGT) + sv_catpvs(dsv, ">"); + + if ((flags & PERL_PV_PRETTY_ELLIPSES) && escaped < count) + sv_catpvs(dsv, "..."); + + return SvPVX(dsv); +} + +#endif +#endif + +#ifndef pv_display +#if defined(NEED_pv_display) +static char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim); +static +#else +extern char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim); +#endif + +#ifdef pv_display +# undef pv_display +#endif +#define pv_display(a,b,c,d,e) DPPP_(my_pv_display)(aTHX_ a,b,c,d,e) +#define Perl_pv_display DPPP_(my_pv_display) + +#if defined(NEED_pv_display) || defined(NEED_pv_display_GLOBAL) + +char * +DPPP_(my_pv_display)(pTHX_ SV *dsv, const char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) +{ + pv_pretty(dsv, pv, cur, pvlim, NULL, NULL, PERL_PV_PRETTY_DUMP); + if (len > cur && pv[cur] == '\0') + sv_catpvs(dsv, "\\0"); + return SvPVX(dsv); +} + +#endif +#endif + +#endif /* _P_P_PORTABILITY_H_ */ + +/* End of File ppport.h */ diff --git a/scripts/module/CBitcoin/t/CBitcoin.t b/scripts/module/CBitcoin/t/CBitcoin.t new file mode 100644 index 00000000..1de8939b --- /dev/null +++ b/scripts/module/CBitcoin/t/CBitcoin.t @@ -0,0 +1,25 @@ +# Before `make install' is performed this script should be runnable with +# `make test'. After `make install' it should work as `perl CBitcoin.t' + +######################### + +# change 'tests => 1' to 'tests => last_test_to_print'; + +use strict; +use warnings; + +use Test::More tests => 4; +BEGIN { use_ok('CBitcoin') }; + +######################### + +# Insert your test code below, the Test::More module is use()ed here so read +# its man page ( perldoc Test::More ) for help writing this test script. + +# 3 is the number of tests. +#use Test::More tests => 3; +#use CBitcoin; + +is (CBitcoin::is_even(0), 1); +is (CBitcoin::is_even(1), 0); +is (CBitcoin::is_even(2), 1); From 2e2401ec0691612e79d5b87abc9e924df44f3bf5 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 19 Jun 2014 13:11:24 +0900 Subject: [PATCH 006/127] starting work on transactions --- scripts/CB.pm.bk | 167 + scripts/CBitcoin.pm | 159 + .../lib/auto/coin_pl_2a81/coin_pl_2a81.inl | 2 +- .../CBitcoin/CBitcoin.bs => c2xs/CBHD.bs} | 0 scripts/c2xs/CBHD.c | 427 ++ scripts/c2xs/CBHD.o | Bin 0 -> 130016 bytes scripts/c2xs/CBHD.pm | 17 + scripts/c2xs/CBHD.xs | 187 + scripts/c2xs/MYMETA.json | 39 + scripts/c2xs/MYMETA.yml | 21 + scripts/c2xs/Makefile.PL | 24 + scripts/c2xs/blib/arch/.exists | 0 .../c2xs/blib/arch/auto/CBitcoin/CBHD/.exists | 0 .../c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so | Bin 0 -> 83025 bytes scripts/c2xs/blib/lib/CBitcoin/.exists | 0 scripts/c2xs/blib/lib/CBitcoin/CBHD.pm | 17 + scripts/c2xs/blib/lib/CBitcoin/coinx2.pl | 15 + .../c2xs/blib/lib/auto/CBitcoin/CBHD/.exists | 0 scripts/c2xs/blib/man1/.exists | 0 scripts/c2xs/blib/man3/.exists | 0 scripts/c2xs/blib/script/.exists | 0 scripts/c2xs/coinx2.pl | 15 + scripts/c2xs/pm_to_blib | 0 scripts/c2xs/src/CBHD.c | 143 + scripts/coinxs.pl | 56 + scripts/crypt/Crypt-PBC-0.9000.tar.gz | Bin 0 -> 62417 bytes scripts/crypt/Crypt-PBC-0.9000/Changes | 167 + scripts/crypt/Crypt-PBC-0.9000/MANIFEST | 44 + scripts/crypt/Crypt-PBC-0.9000/META.yml | 33 + scripts/crypt/Crypt-PBC-0.9000/Makefile.PL | 160 + scripts/crypt/Crypt-PBC-0.9000/PBC.pm | 766 +++ scripts/crypt/Crypt-PBC-0.9000/PBC.xs | 94 + scripts/crypt/Crypt-PBC-0.9000/README | 39 + scripts/crypt/Crypt-PBC-0.9000/TODO | 96 + .../crypt/Crypt-PBC-0.9000/contrib/c_quicky.c | 33 + .../crypt/Crypt-PBC-0.9000/contrib/libtest.c | 13 + scripts/crypt/Crypt-PBC-0.9000/contrib/quicky | 22 + scripts/crypt/Crypt-PBC-0.9000/earith.xs | 168 + scripts/crypt/Crypt-PBC-0.9000/ecomp.xs | 40 + scripts/crypt/Crypt-PBC-0.9000/einit.xs | 134 + .../Crypt-PBC-0.9000/inc/Devel/CheckLib.pm | 380 ++ .../crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod | 248 + .../lib/Crypt/PBC/Element.pod | 235 + .../lib/Crypt/PBC/Pairing.pod | 39 + scripts/crypt/Crypt-PBC-0.9000/pairing.xs | 48 + scripts/crypt/Crypt-PBC-0.9000/params_a.txt | 8 + scripts/crypt/Crypt-PBC-0.9000/params_d.txt | 14 + .../crypt/Crypt-PBC-0.9000/params_d159.txt | 14 + scripts/crypt/Crypt-PBC-0.9000/params_e.txt | 10 + scripts/crypt/Crypt-PBC-0.9000/pbctest.c | 7 + scripts/crypt/Crypt-PBC-0.9000/ppport.h | 4954 +++++++++++++++++ scripts/crypt/Crypt-PBC-0.9000/t/01_load.t | 8 + scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t | 52 + .../Crypt-PBC-0.9000/t/05_boneh_franklin.t | 50 + scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t | 73 + .../Crypt-PBC-0.9000/t/09_pairings_tests.t | 44 + .../Crypt-PBC-0.9000/t/10_test_symmetric.t | 22 + .../crypt/Crypt-PBC-0.9000/t/13_1op_arith.t | 36 + .../crypt/Crypt-PBC-0.9000/t/13_2op_arith.t | 35 + .../crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t | 33 + .../crypt/Crypt-PBC-0.9000/t/13_pow_arith.t | 35 + .../crypt/Crypt-PBC-0.9000/t/14_from_bytes.t | 20 + .../Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t | 20 + scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t | 30 + scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t | 29 + .../crypt/Crypt-PBC-0.9000/t/35_scopefault.t | 31 + .../crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t | 185 + .../crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t | 185 + .../Crypt-PBC-0.9000/t/99_memory_tests.t | 40 + scripts/crypt/Crypt-PBC-0.9000/typemap | 41 + ...fig-x86_64-linux-gnu-thread-multi-5.014002 | 14 + .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl | 22 + .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.so | Bin 0 -> 55706 bytes .../lib/auto/CBitcoin_e4f1/.packlist | 1 + .../lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl | 22 + .../lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so | Bin 0 -> 83366 bytes .../lib/auto/CBitcoin_pm_e4f1/.packlist | 1 + .../CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.inl | 22 + .../auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.so | Bin 0 -> 83244 bytes .../inline.bk/lib/auto/coin_pl_2a81/.packlist | 1 + .../lib/auto/coin_pl_2a81/coin_pl_2a81.inl | 22 + .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 0 -> 56177 bytes scripts/module/CBitcoin/CBitcoin.c | 58 +- scripts/module/CBitcoin/CBitcoin.o | Bin 76880 -> 85128 bytes scripts/module/CBitcoin/CBitcoin.xs | 32 +- scripts/module/CBitcoin/Makefile.PL | 2 +- .../blib/arch/auto/CBitcoin/CBitcoin.so | Bin 47830 -> 53492 bytes scripts/module/hello.pm | 6 + 88 files changed, 10218 insertions(+), 9 deletions(-) create mode 100644 scripts/CB.pm.bk create mode 100644 scripts/CBitcoin.pm rename scripts/{module/CBitcoin/CBitcoin.bs => c2xs/CBHD.bs} (100%) create mode 100644 scripts/c2xs/CBHD.c create mode 100644 scripts/c2xs/CBHD.o create mode 100644 scripts/c2xs/CBHD.pm create mode 100644 scripts/c2xs/CBHD.xs create mode 100644 scripts/c2xs/MYMETA.json create mode 100644 scripts/c2xs/MYMETA.yml create mode 100644 scripts/c2xs/Makefile.PL create mode 100644 scripts/c2xs/blib/arch/.exists create mode 100644 scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/.exists create mode 100755 scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so create mode 100644 scripts/c2xs/blib/lib/CBitcoin/.exists create mode 100644 scripts/c2xs/blib/lib/CBitcoin/CBHD.pm create mode 100644 scripts/c2xs/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/c2xs/blib/lib/auto/CBitcoin/CBHD/.exists create mode 100644 scripts/c2xs/blib/man1/.exists create mode 100644 scripts/c2xs/blib/man3/.exists create mode 100644 scripts/c2xs/blib/script/.exists create mode 100644 scripts/c2xs/coinx2.pl create mode 100644 scripts/c2xs/pm_to_blib create mode 100644 scripts/c2xs/src/CBHD.c create mode 100644 scripts/coinxs.pl create mode 100644 scripts/crypt/Crypt-PBC-0.9000.tar.gz create mode 100644 scripts/crypt/Crypt-PBC-0.9000/Changes create mode 100644 scripts/crypt/Crypt-PBC-0.9000/MANIFEST create mode 100644 scripts/crypt/Crypt-PBC-0.9000/META.yml create mode 100644 scripts/crypt/Crypt-PBC-0.9000/Makefile.PL create mode 100644 scripts/crypt/Crypt-PBC-0.9000/PBC.pm create mode 100644 scripts/crypt/Crypt-PBC-0.9000/PBC.xs create mode 100644 scripts/crypt/Crypt-PBC-0.9000/README create mode 100644 scripts/crypt/Crypt-PBC-0.9000/TODO create mode 100644 scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c create mode 100644 scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c create mode 100755 scripts/crypt/Crypt-PBC-0.9000/contrib/quicky create mode 100644 scripts/crypt/Crypt-PBC-0.9000/earith.xs create mode 100644 scripts/crypt/Crypt-PBC-0.9000/ecomp.xs create mode 100644 scripts/crypt/Crypt-PBC-0.9000/einit.xs create mode 100644 scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm create mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod create mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod create mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod create mode 100644 scripts/crypt/Crypt-PBC-0.9000/pairing.xs create mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_a.txt create mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_d.txt create mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_d159.txt create mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_e.txt create mode 100644 scripts/crypt/Crypt-PBC-0.9000/pbctest.c create mode 100644 scripts/crypt/Crypt-PBC-0.9000/ppport.h create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/01_load.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t create mode 100644 scripts/crypt/Crypt-PBC-0.9000/typemap create mode 100644 scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 create mode 100644 scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl create mode 100755 scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so create mode 100644 scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist create mode 100644 scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl create mode 100755 scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so create mode 100644 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/.packlist create mode 100644 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.inl create mode 100755 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.so create mode 100644 scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist create mode 100644 scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl create mode 100755 scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so create mode 100644 scripts/module/hello.pm diff --git a/scripts/CB.pm.bk b/scripts/CB.pm.bk new file mode 100644 index 00000000..128dc832 --- /dev/null +++ b/scripts/CB.pm.bk @@ -0,0 +1,167 @@ +package CBitcoin; + +our $VERSION = 0.01; +BEGIN{ + $VERSION = 0.01; +} + + #use Inline C; + use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' + ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' +# ,LD => 'gcc -Wl,-rpath=../bin' + ,CLEAN_AFTER_BUILD => 0 + ,BUILD_NOISY => 1 ; + +sub new_key { + return newMasterKey(1); +} + + use Inline C => <<'END_OF_C_CODE'; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + + +END_OF_C_CODE + +1; diff --git a/scripts/CBitcoin.pm b/scripts/CBitcoin.pm new file mode 100644 index 00000000..61790b5a --- /dev/null +++ b/scripts/CBitcoin.pm @@ -0,0 +1,159 @@ + use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' + ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' +# ,LD => 'gcc -Wl,-rpath=../bin' + ,CLEAN_AFTER_BUILD => 0 + ,BUILD_NOISY => 1 ; + + +newMasterKey(1); + +__END__ +__C__ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + + + + + diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl index 5619075f..d07836a3 100644 --- a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl +++ b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl @@ -4,7 +4,7 @@ version : "" language : C language_id : C installed : 0 -date_compiled : Thu Jun 5 14:43:02 2014 +date_compiled : Thu Jun 19 13:07:03 2014 inline_version : 0.5 ILSM : % module : Inline::C diff --git a/scripts/module/CBitcoin/CBitcoin.bs b/scripts/c2xs/CBHD.bs similarity index 100% rename from scripts/module/CBitcoin/CBitcoin.bs rename to scripts/c2xs/CBHD.bs diff --git a/scripts/c2xs/CBHD.c b/scripts/c2xs/CBHD.c new file mode 100644 index 00000000..f61d76de --- /dev/null +++ b/scripts/c2xs/CBHD.c @@ -0,0 +1,427 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of CBHD.xs. Do not edit this file, edit CBHD.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "CBHD.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + + +#line 159 "CBHD.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 211 "CBHD.c" + +XS(XS_CBitcoin__CBHD_newMasterKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_newMasterKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = newMasterKey(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_deriveChildPrivate); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_deriveChildPrivate) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 3) + croak_xs_usage(cv, "privstring, hard, child"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + bool hard = (bool)SvTRUE(ST(1)); + int child = (int)SvIV(ST(2)); + char * RETVAL; + dXSTARG; + + RETVAL = deriveChildPrivate(privstring, hard, child); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportWIFFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportAddressFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_newWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_newWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = newWIF(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_publickeyFromWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_publickeyFromWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "wifstring"); + { + char * wifstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = publickeyFromWIF(wifstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_addressFromPublicKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_addressFromPublicKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "pubkey"); + { + char * pubkey = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = addressFromPublicKey(pubkey); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_createWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_createWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = createWIF(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__CBHD); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__CBHD) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::CBHD::newMasterKey", XS_CBitcoin__CBHD_newMasterKey, file); + newXS("CBitcoin::CBHD::deriveChildPrivate", XS_CBitcoin__CBHD_deriveChildPrivate, file); + newXS("CBitcoin::CBHD::exportWIFFromCBHDKey", XS_CBitcoin__CBHD_exportWIFFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportAddressFromCBHDKey", XS_CBitcoin__CBHD_exportAddressFromCBHDKey, file); + newXS("CBitcoin::CBHD::newWIF", XS_CBitcoin__CBHD_newWIF, file); + newXS("CBitcoin::CBHD::publickeyFromWIF", XS_CBitcoin__CBHD_publickeyFromWIF, file); + newXS("CBitcoin::CBHD::addressFromPublicKey", XS_CBitcoin__CBHD_addressFromPublicKey, file); + newXS("CBitcoin::CBHD::createWIF", XS_CBitcoin__CBHD_createWIF, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/c2xs/CBHD.o b/scripts/c2xs/CBHD.o new file mode 100644 index 0000000000000000000000000000000000000000..61a32aaea1a0879a73e84d189c4d08c4263ec5bc GIT binary patch literal 130016 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∈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 WL;Y)hJzrOkJc8r9@#K2^^?v|scHxZx literal 0 HcmV?d00001 diff --git a/scripts/c2xs/CBHD.pm b/scripts/c2xs/CBHD.pm new file mode 100644 index 00000000..5f4d804a --- /dev/null +++ b/scripts/c2xs/CBHD.pm @@ -0,0 +1,17 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +1; diff --git a/scripts/c2xs/CBHD.xs b/scripts/c2xs/CBHD.xs new file mode 100644 index 00000000..71e55c00 --- /dev/null +++ b/scripts/c2xs/CBHD.xs @@ -0,0 +1,187 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + + +MODULE = CBitcoin::CBHD PACKAGE = CBitcoin::CBHD + +PROTOTYPES: DISABLE + + +char * +newMasterKey (arg) + int arg + +char * +deriveChildPrivate (privstring, hard, child) + char * privstring + bool hard + int child + +char * +exportWIFFromCBHDKey (privstring) + char * privstring + +char * +exportAddressFromCBHDKey (privstring) + char * privstring + +char * +newWIF (arg) + int arg + +char * +publickeyFromWIF (wifstring) + char * wifstring + +char * +addressFromPublicKey (pubkey) + char * pubkey + +char * +createWIF (arg) + int arg + diff --git a/scripts/c2xs/MYMETA.json b/scripts/c2xs/MYMETA.json new file mode 100644 index 00000000..4038a4f0 --- /dev/null +++ b/scripts/c2xs/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-CBHD", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/c2xs/MYMETA.yml b/scripts/c2xs/MYMETA.yml new file mode 100644 index 00000000..220cf444 --- /dev/null +++ b/scripts/c2xs/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-CBHD +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/c2xs/Makefile.PL b/scripts/c2xs/Makefile.PL new file mode 100644 index 00000000..4d25de04 --- /dev/null +++ b/scripts/c2xs/Makefile.PL @@ -0,0 +1,24 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::CBHD', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include/', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'], + 'VERSION' => '0.01' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/c2xs/blib/arch/.exists b/scripts/c2xs/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/.exists b/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so b/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so new file mode 100755 index 0000000000000000000000000000000000000000..22bb013d32ee290cc6350f2accbde1a40c89d4a5 GIT binary patch literal 83025 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
$tmp") { + print F $str; + close F; + + if (open F, "$prog $file $tmp |") { + while () { + s/\Q$tmp\E/$file.patched/; + $diff .= $_; + } + close F; + unlink $tmp; + return $diff; + } + + unlink $tmp; + } + else { + error("Cannot open '$tmp' for writing: $!"); + } + + return undef; +} + +sub can_use +{ + eval "use @_;"; + return $@ eq ''; +} + +sub rec_depend +{ + my $func = shift; + my %seen; + return () unless exists $depends{$func}; + grep !$seen{$_}++, map { ($_, rec_depend($_)) } @{$depends{$func}}; +} + +sub parse_version +{ + my $ver = shift; + + if ($ver =~ /^(\d+)\.(\d+)\.(\d+)$/) { + return ($1, $2, $3); + } + elsif ($ver !~ /^\d+\.[\d_]+$/) { + die "cannot parse version '$ver'\n"; + } + + $ver =~ s/_//g; + $ver =~ s/$/000000/; + + my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; + + $v = int $v; + $s = int $s; + + if ($r < 5 || ($r == 5 && $v < 6)) { + if ($s % 10) { + die "cannot parse version '$ver'\n"; + } + } + + return ($r, $v, $s); +} + +sub format_version +{ + my $ver = shift; + + $ver =~ s/$/000000/; + my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; + + $v = int $v; + $s = int $s; + + if ($r < 5 || ($r == 5 && $v < 6)) { + if ($s % 10) { + die "invalid version '$ver'\n"; + } + $s /= 10; + + $ver = sprintf "%d.%03d", $r, $v; + $s > 0 and $ver .= sprintf "_%02d", $s; + + return $ver; + } + + return sprintf "%d.%d.%d", $r, $v, $s; +} + +sub info +{ + $opt{quiet} and return; + print @_, "\n"; +} + +sub diag +{ + $opt{quiet} and return; + $opt{diag} and print @_, "\n"; +} + +sub warning +{ + $opt{quiet} and return; + print "*** ", @_, "\n"; +} + +sub error +{ + print "*** ERROR: ", @_, "\n"; +} + +my %given_hints; +sub hint +{ + $opt{quiet} and return; + $opt{hints} or return; + my $func = shift; + exists $hints{$func} or return; + $given_hints{$func}++ and return; + my $hint = $hints{$func}; + $hint =~ s/^/ /mg; + print " --- hint for $func ---\n", $hint; +} + +sub usage +{ + my($usage) = do { local(@ARGV,$/)=($0); <> } =~ /^=head\d$HS+SYNOPSIS\s*^(.*?)\s*^=/ms; + my %M = ( 'I' => '*' ); + $usage =~ s/^\s*perl\s+\S+/$^X $0/; + $usage =~ s/([A-Z])<([^>]+)>/$M{$1}$2$M{$1}/g; + + print < +# endif +# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL))) +# include +# endif +# ifndef PERL_REVISION +# define PERL_REVISION (5) + /* Replace: 1 */ +# define PERL_VERSION PATCHLEVEL +# define PERL_SUBVERSION SUBVERSION + /* Replace PERL_PATCHLEVEL with PERL_VERSION */ + /* Replace: 0 */ +# endif +#endif + +#define PERL_BCDVERSION ((PERL_REVISION * 0x1000000L) + (PERL_VERSION * 0x1000L) + PERL_SUBVERSION) + +/* It is very unlikely that anyone will try to use this with Perl 6 + (or greater), but who knows. + */ +#if PERL_REVISION != 5 +# error ppport.h only works with Perl version 5 +#endif /* PERL_REVISION != 5 */ + +#ifdef I_LIMITS +# include +#endif + +#ifndef PERL_UCHAR_MIN +# define PERL_UCHAR_MIN ((unsigned char)0) +#endif + +#ifndef PERL_UCHAR_MAX +# ifdef UCHAR_MAX +# define PERL_UCHAR_MAX ((unsigned char)UCHAR_MAX) +# else +# ifdef MAXUCHAR +# define PERL_UCHAR_MAX ((unsigned char)MAXUCHAR) +# else +# define PERL_UCHAR_MAX ((unsigned char)~(unsigned)0) +# endif +# endif +#endif + +#ifndef PERL_USHORT_MIN +# define PERL_USHORT_MIN ((unsigned short)0) +#endif + +#ifndef PERL_USHORT_MAX +# ifdef USHORT_MAX +# define PERL_USHORT_MAX ((unsigned short)USHORT_MAX) +# else +# ifdef MAXUSHORT +# define PERL_USHORT_MAX ((unsigned short)MAXUSHORT) +# else +# ifdef USHRT_MAX +# define PERL_USHORT_MAX ((unsigned short)USHRT_MAX) +# else +# define PERL_USHORT_MAX ((unsigned short)~(unsigned)0) +# endif +# endif +# endif +#endif + +#ifndef PERL_SHORT_MAX +# ifdef SHORT_MAX +# define PERL_SHORT_MAX ((short)SHORT_MAX) +# else +# ifdef MAXSHORT /* Often used in */ +# define PERL_SHORT_MAX ((short)MAXSHORT) +# else +# ifdef SHRT_MAX +# define PERL_SHORT_MAX ((short)SHRT_MAX) +# else +# define PERL_SHORT_MAX ((short) (PERL_USHORT_MAX >> 1)) +# endif +# endif +# endif +#endif + +#ifndef PERL_SHORT_MIN +# ifdef SHORT_MIN +# define PERL_SHORT_MIN ((short)SHORT_MIN) +# else +# ifdef MINSHORT +# define PERL_SHORT_MIN ((short)MINSHORT) +# else +# ifdef SHRT_MIN +# define PERL_SHORT_MIN ((short)SHRT_MIN) +# else +# define PERL_SHORT_MIN (-PERL_SHORT_MAX - ((3 & -1) == 3)) +# endif +# endif +# endif +#endif + +#ifndef PERL_UINT_MAX +# ifdef UINT_MAX +# define PERL_UINT_MAX ((unsigned int)UINT_MAX) +# else +# ifdef MAXUINT +# define PERL_UINT_MAX ((unsigned int)MAXUINT) +# else +# define PERL_UINT_MAX (~(unsigned int)0) +# endif +# endif +#endif + +#ifndef PERL_UINT_MIN +# define PERL_UINT_MIN ((unsigned int)0) +#endif + +#ifndef PERL_INT_MAX +# ifdef INT_MAX +# define PERL_INT_MAX ((int)INT_MAX) +# else +# ifdef MAXINT /* Often used in */ +# define PERL_INT_MAX ((int)MAXINT) +# else +# define PERL_INT_MAX ((int)(PERL_UINT_MAX >> 1)) +# endif +# endif +#endif + +#ifndef PERL_INT_MIN +# ifdef INT_MIN +# define PERL_INT_MIN ((int)INT_MIN) +# else +# ifdef MININT +# define PERL_INT_MIN ((int)MININT) +# else +# define PERL_INT_MIN (-PERL_INT_MAX - ((3 & -1) == 3)) +# endif +# endif +#endif + +#ifndef PERL_ULONG_MAX +# ifdef ULONG_MAX +# define PERL_ULONG_MAX ((unsigned long)ULONG_MAX) +# else +# ifdef MAXULONG +# define PERL_ULONG_MAX ((unsigned long)MAXULONG) +# else +# define PERL_ULONG_MAX (~(unsigned long)0) +# endif +# endif +#endif + +#ifndef PERL_ULONG_MIN +# define PERL_ULONG_MIN ((unsigned long)0L) +#endif + +#ifndef PERL_LONG_MAX +# ifdef LONG_MAX +# define PERL_LONG_MAX ((long)LONG_MAX) +# else +# ifdef MAXLONG +# define PERL_LONG_MAX ((long)MAXLONG) +# else +# define PERL_LONG_MAX ((long) (PERL_ULONG_MAX >> 1)) +# endif +# endif +#endif + +#ifndef PERL_LONG_MIN +# ifdef LONG_MIN +# define PERL_LONG_MIN ((long)LONG_MIN) +# else +# ifdef MINLONG +# define PERL_LONG_MIN ((long)MINLONG) +# else +# define PERL_LONG_MIN (-PERL_LONG_MAX - ((3 & -1) == 3)) +# endif +# endif +#endif + +#if defined(HAS_QUAD) && (defined(convex) || defined(uts)) +# ifndef PERL_UQUAD_MAX +# ifdef ULONGLONG_MAX +# define PERL_UQUAD_MAX ((unsigned long long)ULONGLONG_MAX) +# else +# ifdef MAXULONGLONG +# define PERL_UQUAD_MAX ((unsigned long long)MAXULONGLONG) +# else +# define PERL_UQUAD_MAX (~(unsigned long long)0) +# endif +# endif +# endif + +# ifndef PERL_UQUAD_MIN +# define PERL_UQUAD_MIN ((unsigned long long)0L) +# endif + +# ifndef PERL_QUAD_MAX +# ifdef LONGLONG_MAX +# define PERL_QUAD_MAX ((long long)LONGLONG_MAX) +# else +# ifdef MAXLONGLONG +# define PERL_QUAD_MAX ((long long)MAXLONGLONG) +# else +# define PERL_QUAD_MAX ((long long) (PERL_UQUAD_MAX >> 1)) +# endif +# endif +# endif + +# ifndef PERL_QUAD_MIN +# ifdef LONGLONG_MIN +# define PERL_QUAD_MIN ((long long)LONGLONG_MIN) +# else +# ifdef MINLONGLONG +# define PERL_QUAD_MIN ((long long)MINLONGLONG) +# else +# define PERL_QUAD_MIN (-PERL_QUAD_MAX - ((3 & -1) == 3)) +# endif +# endif +# endif +#endif + +/* This is based on code from 5.003 perl.h */ +#ifdef HAS_QUAD +# ifdef cray +#ifndef IVTYPE +# define IVTYPE int +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_INT_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_INT_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_UINT_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_UINT_MAX +#endif + +# ifdef INTSIZE +#ifndef IVSIZE +# define IVSIZE INTSIZE +#endif + +# endif +# else +# if defined(convex) || defined(uts) +#ifndef IVTYPE +# define IVTYPE long long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_QUAD_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_QUAD_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_UQUAD_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_UQUAD_MAX +#endif + +# ifdef LONGLONGSIZE +#ifndef IVSIZE +# define IVSIZE LONGLONGSIZE +#endif + +# endif +# else +#ifndef IVTYPE +# define IVTYPE long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_LONG_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_LONG_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_ULONG_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_ULONG_MAX +#endif + +# ifdef LONGSIZE +#ifndef IVSIZE +# define IVSIZE LONGSIZE +#endif + +# endif +# endif +# endif +#ifndef IVSIZE +# define IVSIZE 8 +#endif + +#ifndef PERL_QUAD_MIN +# define PERL_QUAD_MIN IV_MIN +#endif + +#ifndef PERL_QUAD_MAX +# define PERL_QUAD_MAX IV_MAX +#endif + +#ifndef PERL_UQUAD_MIN +# define PERL_UQUAD_MIN UV_MIN +#endif + +#ifndef PERL_UQUAD_MAX +# define PERL_UQUAD_MAX UV_MAX +#endif + +#else +#ifndef IVTYPE +# define IVTYPE long +#endif + +#ifndef IV_MIN +# define IV_MIN PERL_LONG_MIN +#endif + +#ifndef IV_MAX +# define IV_MAX PERL_LONG_MAX +#endif + +#ifndef UV_MIN +# define UV_MIN PERL_ULONG_MIN +#endif + +#ifndef UV_MAX +# define UV_MAX PERL_ULONG_MAX +#endif + +#endif + +#ifndef IVSIZE +# ifdef LONGSIZE +# define IVSIZE LONGSIZE +# else +# define IVSIZE 4 /* A bold guess, but the best we can make. */ +# endif +#endif +#ifndef UVTYPE +# define UVTYPE unsigned IVTYPE +#endif + +#ifndef UVSIZE +# define UVSIZE IVSIZE +#endif + +#ifndef sv_setuv +# define sv_setuv(sv, uv) \ + STMT_START { \ + UV TeMpUv = uv; \ + if (TeMpUv <= IV_MAX) \ + sv_setiv(sv, TeMpUv); \ + else \ + sv_setnv(sv, (double)TeMpUv); \ + } STMT_END +#endif + +#ifndef newSVuv +# define newSVuv(uv) ((uv) <= IV_MAX ? newSViv((IV)uv) : newSVnv((NV)uv)) +#endif +#ifndef sv_2uv +# define sv_2uv(sv) ((PL_Sv = (sv)), (UV) (SvNOK(PL_Sv) ? SvNV(PL_Sv) : sv_2nv(PL_Sv))) +#endif + +#ifndef SvUVX +# define SvUVX(sv) ((UV)SvIVX(sv)) +#endif + +#ifndef SvUVXx +# define SvUVXx(sv) SvUVX(sv) +#endif + +#ifndef SvUV +# define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv)) +#endif + +#ifndef SvUVx +# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv)) +#endif + +/* Hint: sv_uv + * Always use the SvUVx() macro instead of sv_uv(). + */ +#ifndef sv_uv +# define sv_uv(sv) SvUVx(sv) +#endif +#ifndef XST_mUV +# define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) ) +#endif + +#ifndef XSRETURN_UV +# define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END +#endif +#ifndef PUSHu +# define PUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); PUSHTARG; } STMT_END +#endif + +#ifndef XPUSHu +# define XPUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); XPUSHTARG; } STMT_END +#endif + +#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5)) +/* Replace: 1 */ +# define PL_DBsingle DBsingle +# define PL_DBsub DBsub +# define PL_Sv Sv +# define PL_compiling compiling +# define PL_copline copline +# define PL_curcop curcop +# define PL_curstash curstash +# define PL_debstash debstash +# define PL_defgv defgv +# define PL_diehook diehook +# define PL_dirty dirty +# define PL_dowarn dowarn +# define PL_errgv errgv +# define PL_hexdigit hexdigit +# define PL_hints hints +# define PL_na na +# define PL_no_modify no_modify +# define PL_perl_destruct_level perl_destruct_level +# define PL_perldb perldb +# define PL_ppaddr ppaddr +# define PL_rsfp_filters rsfp_filters +# define PL_rsfp rsfp +# define PL_stack_base stack_base +# define PL_stack_sp stack_sp +# define PL_stdingv stdingv +# define PL_sv_arenaroot sv_arenaroot +# define PL_sv_no sv_no +# define PL_sv_undef sv_undef +# define PL_sv_yes sv_yes +# define PL_tainted tainted +# define PL_tainting tainting +/* Replace: 0 */ +#endif + +#ifndef PERL_UNUSED_DECL +# ifdef HASATTRIBUTE +# if (defined(__GNUC__) && defined(__cplusplus)) || defined(__INTEL_COMPILER) +# define PERL_UNUSED_DECL +# else +# define PERL_UNUSED_DECL __attribute__((unused)) +# endif +# else +# define PERL_UNUSED_DECL +# endif +#endif +#ifndef NOOP +# define NOOP (void)0 +#endif + +#ifndef dNOOP +# define dNOOP extern int Perl___notused PERL_UNUSED_DECL +#endif + +#ifndef NVTYPE +# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) +# define NVTYPE long double +# else +# define NVTYPE double +# endif +typedef NVTYPE NV; +#endif + +#ifndef INT2PTR + +# if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) +# define PTRV UV +# define INT2PTR(any,d) (any)(d) +# else +# if PTRSIZE == LONGSIZE +# define PTRV unsigned long +# else +# define PTRV unsigned +# endif +# define INT2PTR(any,d) (any)(PTRV)(d) +# endif + +# define NUM2PTR(any,d) (any)(PTRV)(d) +# define PTR2IV(p) INT2PTR(IV,p) +# define PTR2UV(p) INT2PTR(UV,p) +# define PTR2NV(p) NUM2PTR(NV,p) + +# if PTRSIZE == LONGSIZE +# define PTR2ul(p) (unsigned long)(p) +# else +# define PTR2ul(p) INT2PTR(unsigned long,p) +# endif + +#endif /* !INT2PTR */ + +#undef START_EXTERN_C +#undef END_EXTERN_C +#undef EXTERN_C +#ifdef __cplusplus +# define START_EXTERN_C extern "C" { +# define END_EXTERN_C } +# define EXTERN_C extern "C" +#else +# define START_EXTERN_C +# define END_EXTERN_C +# define EXTERN_C extern +#endif + +#ifndef PERL_GCC_BRACE_GROUPS_FORBIDDEN +# if defined(__STRICT_ANSI__) && defined(PERL_GCC_PEDANTIC) +# define PERL_GCC_BRACE_GROUPS_FORBIDDEN +# endif +#endif + +#undef STMT_START +#undef STMT_END +#if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) && !defined(__cplusplus) +# define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */ +# define STMT_END ) +#else +# if defined(VOIDFLAGS) && (VOIDFLAGS) && (defined(sun) || defined(__sun__)) && !defined(__GNUC__) +# define STMT_START if (1) +# define STMT_END else (void)0 +# else +# define STMT_START do +# define STMT_END while (0) +# endif +#endif +#ifndef boolSV +# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no) +#endif + +/* DEFSV appears first in 5.004_56 */ +#ifndef DEFSV +# define DEFSV GvSV(PL_defgv) +#endif + +#ifndef SAVE_DEFSV +# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv)) +#endif + +/* Older perls (<=5.003) lack AvFILLp */ +#ifndef AvFILLp +# define AvFILLp AvFILL +#endif +#ifndef ERRSV +# define ERRSV get_sv("@",FALSE) +#endif +#ifndef newSVpvn +# define newSVpvn(data,len) ((data) \ + ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \ + : newSV(0)) +#endif + +/* Hint: gv_stashpvn + * This function's backport doesn't support the length parameter, but + * rather ignores it. Portability can only be ensured if the length + * parameter is used for speed reasons, but the length can always be + * correctly computed from the string argument. + */ +#ifndef gv_stashpvn +# define gv_stashpvn(str,len,create) gv_stashpv(str,create) +#endif + +/* Replace: 1 */ +#ifndef get_cv +# define get_cv perl_get_cv +#endif + +#ifndef get_sv +# define get_sv perl_get_sv +#endif + +#ifndef get_av +# define get_av perl_get_av +#endif + +#ifndef get_hv +# define get_hv perl_get_hv +#endif + +/* Replace: 0 */ + +#ifdef HAS_MEMCMP +#ifndef memNE +# define memNE(s1,s2,l) (memcmp(s1,s2,l)) +#endif + +#ifndef memEQ +# define memEQ(s1,s2,l) (!memcmp(s1,s2,l)) +#endif + +#else +#ifndef memNE +# define memNE(s1,s2,l) (bcmp(s1,s2,l)) +#endif + +#ifndef memEQ +# define memEQ(s1,s2,l) (!bcmp(s1,s2,l)) +#endif + +#endif +#ifndef MoveD +# define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t)) +#endif + +#ifndef CopyD +# define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) +#endif + +#ifdef HAS_MEMSET +#ifndef ZeroD +# define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t)) +#endif + +#else +#ifndef ZeroD +# define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)),d) +#endif + +#endif +#ifndef Poison +# define Poison(d,n,t) (void)memset((char*)(d), 0xAB, (n) * sizeof(t)) +#endif +#ifndef dUNDERBAR +# define dUNDERBAR dNOOP +#endif + +#ifndef UNDERBAR +# define UNDERBAR DEFSV +#endif +#ifndef dAX +# define dAX I32 ax = MARK - PL_stack_base + 1 +#endif + +#ifndef dITEMS +# define dITEMS I32 items = SP - MARK +#endif +#ifndef dXSTARG +# define dXSTARG SV * targ = sv_newmortal() +#endif +#ifndef dTHR +# define dTHR dNOOP +#endif +#ifndef dTHX +# define dTHX dNOOP +#endif + +#ifndef dTHXa +# define dTHXa(x) dNOOP +#endif +#ifndef pTHX +# define pTHX void +#endif + +#ifndef pTHX_ +# define pTHX_ +#endif + +#ifndef aTHX +# define aTHX +#endif + +#ifndef aTHX_ +# define aTHX_ +#endif +#ifndef dTHXoa +# define dTHXoa(x) dTHXa(x) +#endif +#ifndef PUSHmortal +# define PUSHmortal PUSHs(sv_newmortal()) +#endif + +#ifndef mPUSHp +# define mPUSHp(p,l) sv_setpvn_mg(PUSHmortal, (p), (l)) +#endif + +#ifndef mPUSHn +# define mPUSHn(n) sv_setnv_mg(PUSHmortal, (NV)(n)) +#endif + +#ifndef mPUSHi +# define mPUSHi(i) sv_setiv_mg(PUSHmortal, (IV)(i)) +#endif + +#ifndef mPUSHu +# define mPUSHu(u) sv_setuv_mg(PUSHmortal, (UV)(u)) +#endif +#ifndef XPUSHmortal +# define XPUSHmortal XPUSHs(sv_newmortal()) +#endif + +#ifndef mXPUSHp +# define mXPUSHp(p,l) STMT_START { EXTEND(sp,1); sv_setpvn_mg(PUSHmortal, (p), (l)); } STMT_END +#endif + +#ifndef mXPUSHn +# define mXPUSHn(n) STMT_START { EXTEND(sp,1); sv_setnv_mg(PUSHmortal, (NV)(n)); } STMT_END +#endif + +#ifndef mXPUSHi +# define mXPUSHi(i) STMT_START { EXTEND(sp,1); sv_setiv_mg(PUSHmortal, (IV)(i)); } STMT_END +#endif + +#ifndef mXPUSHu +# define mXPUSHu(u) STMT_START { EXTEND(sp,1); sv_setuv_mg(PUSHmortal, (UV)(u)); } STMT_END +#endif + +/* Replace: 1 */ +#ifndef call_sv +# define call_sv perl_call_sv +#endif + +#ifndef call_pv +# define call_pv perl_call_pv +#endif + +#ifndef call_argv +# define call_argv perl_call_argv +#endif + +#ifndef call_method +# define call_method perl_call_method +#endif +#ifndef eval_sv +# define eval_sv perl_eval_sv +#endif + +/* Replace: 0 */ + +/* Replace perl_eval_pv with eval_pv */ +/* eval_pv depends on eval_sv */ + +#ifndef eval_pv +#if defined(NEED_eval_pv) +static SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); +static +#else +extern SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); +#endif + +#ifdef eval_pv +# undef eval_pv +#endif +#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b) +#define Perl_eval_pv DPPP_(my_eval_pv) + +#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL) + +SV* +DPPP_(my_eval_pv)(char *p, I32 croak_on_error) +{ + dSP; + SV* sv = newSVpv(p, 0); + + PUSHMARK(sp); + eval_sv(sv, G_SCALAR); + SvREFCNT_dec(sv); + + SPAGAIN; + sv = POPs; + PUTBACK; + + if (croak_on_error && SvTRUE(GvSV(errgv))) + croak(SvPVx(GvSV(errgv), na)); + + return sv; +} + +#endif +#endif +#ifndef newRV_inc +# define newRV_inc(sv) newRV(sv) /* Replace */ +#endif + +#ifndef newRV_noinc +#if defined(NEED_newRV_noinc) +static SV * DPPP_(my_newRV_noinc)(SV *sv); +static +#else +extern SV * DPPP_(my_newRV_noinc)(SV *sv); +#endif + +#ifdef newRV_noinc +# undef newRV_noinc +#endif +#define newRV_noinc(a) DPPP_(my_newRV_noinc)(aTHX_ a) +#define Perl_newRV_noinc DPPP_(my_newRV_noinc) + +#if defined(NEED_newRV_noinc) || defined(NEED_newRV_noinc_GLOBAL) +SV * +DPPP_(my_newRV_noinc)(SV *sv) +{ + SV *rv = (SV *)newRV(sv); + SvREFCNT_dec(sv); + return rv; +} +#endif +#endif + +/* Hint: newCONSTSUB + * Returns a CV* as of perl-5.7.1. This return value is not supported + * by Devel::PPPort. + */ + +/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */ +#if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION < 63))) && ((PERL_VERSION != 4) || (PERL_SUBVERSION != 5)) +#if defined(NEED_newCONSTSUB) +static void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv); +static +#else +extern void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv); +#endif + +#ifdef newCONSTSUB +# undef newCONSTSUB +#endif +#define newCONSTSUB(a,b,c) DPPP_(my_newCONSTSUB)(aTHX_ a,b,c) +#define Perl_newCONSTSUB DPPP_(my_newCONSTSUB) + +#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL) + +void +DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv) +{ + U32 oldhints = PL_hints; + HV *old_cop_stash = PL_curcop->cop_stash; + HV *old_curstash = PL_curstash; + line_t oldline = PL_curcop->cop_line; + PL_curcop->cop_line = PL_copline; + + PL_hints &= ~HINT_BLOCK_SCOPE; + if (stash) + PL_curstash = PL_curcop->cop_stash = stash; + + newSUB( + +#if ((PERL_VERSION < 3) || ((PERL_VERSION == 3) && (PERL_SUBVERSION < 22))) + start_subparse(), +#elif ((PERL_VERSION == 3) && (PERL_SUBVERSION == 22)) + start_subparse(0), +#else /* 5.003_23 onwards */ + start_subparse(FALSE, 0), +#endif + + newSVOP(OP_CONST, 0, newSVpv(name,0)), + newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */ + newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv)) + ); + + PL_hints = oldhints; + PL_curcop->cop_stash = old_cop_stash; + PL_curstash = old_curstash; + PL_curcop->cop_line = oldline; +} +#endif +#endif + +/* + * Boilerplate macros for initializing and accessing interpreter-local + * data from C. All statics in extensions should be reworked to use + * this, if you want to make the extension thread-safe. See ext/re/re.xs + * for an example of the use of these macros. + * + * Code that uses these macros is responsible for the following: + * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts" + * 2. Declare a typedef named my_cxt_t that is a structure that contains + * all the data that needs to be interpreter-local. + * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t. + * 4. Use the MY_CXT_INIT macro such that it is called exactly once + * (typically put in the BOOT: section). + * 5. Use the members of the my_cxt_t structure everywhere as + * MY_CXT.member. + * 6. Use the dMY_CXT macro (a declaration) in all the functions that + * access MY_CXT. + */ + +#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \ + defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT) + +#ifndef START_MY_CXT + +/* This must appear in all extensions that define a my_cxt_t structure, + * right after the definition (i.e. at file scope). The non-threads + * case below uses it to declare the data as static. */ +#define START_MY_CXT + +#if (PERL_VERSION < 4 || (PERL_VERSION == 4 && PERL_SUBVERSION < 68 )) +/* Fetches the SV that keeps the per-interpreter data. */ +#define dMY_CXT_SV \ + SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE) +#else /* >= perl5.004_68 */ +#define dMY_CXT_SV \ + SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \ + sizeof(MY_CXT_KEY)-1, TRUE) +#endif /* < perl5.004_68 */ + +/* This declaration should be used within all functions that use the + * interpreter-local data. */ +#define dMY_CXT \ + dMY_CXT_SV; \ + my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv)) + +/* Creates and zeroes the per-interpreter data. + * (We allocate my_cxtp in a Perl SV so that it will be released when + * the interpreter goes away.) */ +#define MY_CXT_INIT \ + dMY_CXT_SV; \ + /* newSV() allocates one more than needed */ \ + my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ + Zero(my_cxtp, 1, my_cxt_t); \ + sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) + +/* This macro must be used to access members of the my_cxt_t structure. + * e.g. MYCXT.some_data */ +#define MY_CXT (*my_cxtp) + +/* Judicious use of these macros can reduce the number of times dMY_CXT + * is used. Use is similar to pTHX, aTHX etc. */ +#define pMY_CXT my_cxt_t *my_cxtp +#define pMY_CXT_ pMY_CXT, +#define _pMY_CXT ,pMY_CXT +#define aMY_CXT my_cxtp +#define aMY_CXT_ aMY_CXT, +#define _aMY_CXT ,aMY_CXT + +#endif /* START_MY_CXT */ + +#ifndef MY_CXT_CLONE +/* Clones the per-interpreter data. */ +#define MY_CXT_CLONE \ + dMY_CXT_SV; \ + my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ + Copy(INT2PTR(my_cxt_t*, SvUV(my_cxt_sv)), my_cxtp, 1, my_cxt_t);\ + sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) +#endif + +#else /* single interpreter */ + +#ifndef START_MY_CXT + +#define START_MY_CXT static my_cxt_t my_cxt; +#define dMY_CXT_SV dNOOP +#define dMY_CXT dNOOP +#define MY_CXT_INIT NOOP +#define MY_CXT my_cxt + +#define pMY_CXT void +#define pMY_CXT_ +#define _pMY_CXT +#define aMY_CXT +#define aMY_CXT_ +#define _aMY_CXT + +#endif /* START_MY_CXT */ + +#ifndef MY_CXT_CLONE +#define MY_CXT_CLONE NOOP +#endif + +#endif + +#ifndef IVdf +# if IVSIZE == LONGSIZE +# define IVdf "ld" +# define UVuf "lu" +# define UVof "lo" +# define UVxf "lx" +# define UVXf "lX" +# else +# if IVSIZE == INTSIZE +# define IVdf "d" +# define UVuf "u" +# define UVof "o" +# define UVxf "x" +# define UVXf "X" +# endif +# endif +#endif + +#ifndef NVef +# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) && \ + defined(PERL_PRIfldbl) /* Not very likely, but let's try anyway. */ +# define NVef PERL_PRIeldbl +# define NVff PERL_PRIfldbl +# define NVgf PERL_PRIgldbl +# else +# define NVef "e" +# define NVff "f" +# define NVgf "g" +# endif +#endif + +#ifndef SvPV_nolen + +#if defined(NEED_sv_2pv_nolen) +static char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv); +static +#else +extern char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv); +#endif + +#ifdef sv_2pv_nolen +# undef sv_2pv_nolen +#endif +#define sv_2pv_nolen(a) DPPP_(my_sv_2pv_nolen)(aTHX_ a) +#define Perl_sv_2pv_nolen DPPP_(my_sv_2pv_nolen) + +#if defined(NEED_sv_2pv_nolen) || defined(NEED_sv_2pv_nolen_GLOBAL) + +char * +DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv) +{ + STRLEN n_a; + return sv_2pv(sv, &n_a); +} + +#endif + +/* Hint: sv_2pv_nolen + * Use the SvPV_nolen() macro instead of sv_2pv_nolen(). + */ + +/* SvPV_nolen depends on sv_2pv_nolen */ +#define SvPV_nolen(sv) \ + ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ + ? SvPVX(sv) : sv_2pv_nolen(sv)) + +#endif + +#ifdef SvPVbyte + +/* Hint: SvPVbyte + * Does not work in perl-5.6.1, ppport.h implements a version + * borrowed from perl-5.7.3. + */ + +#if ((PERL_VERSION < 7) || ((PERL_VERSION == 7) && (PERL_SUBVERSION < 0))) + +#if defined(NEED_sv_2pvbyte) +static char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp); +static +#else +extern char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp); +#endif + +#ifdef sv_2pvbyte +# undef sv_2pvbyte +#endif +#define sv_2pvbyte(a,b) DPPP_(my_sv_2pvbyte)(aTHX_ a,b) +#define Perl_sv_2pvbyte DPPP_(my_sv_2pvbyte) + +#if defined(NEED_sv_2pvbyte) || defined(NEED_sv_2pvbyte_GLOBAL) + +char * +DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp) +{ + sv_utf8_downgrade(sv,0); + return SvPV(sv,*lp); +} + +#endif + +/* Hint: sv_2pvbyte + * Use the SvPVbyte() macro instead of sv_2pvbyte(). + */ + +#undef SvPVbyte + +/* SvPVbyte depends on sv_2pvbyte */ +#define SvPVbyte(sv, lp) \ + ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \ + ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp)) + +#endif + +#else + +# define SvPVbyte SvPV +# define sv_2pvbyte sv_2pv + +#endif + +/* sv_2pvbyte_nolen depends on sv_2pv_nolen */ +#ifndef sv_2pvbyte_nolen +# define sv_2pvbyte_nolen sv_2pv_nolen +#endif + +/* Hint: sv_pvn + * Always use the SvPV() macro instead of sv_pvn(). + */ +#ifndef sv_pvn +# define sv_pvn(sv, len) SvPV(sv, len) +#endif + +/* Hint: sv_pvn_force + * Always use the SvPV_force() macro instead of sv_pvn_force(). + */ +#ifndef sv_pvn_force +# define sv_pvn_force(sv, len) SvPV_force(sv, len) +#endif + +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(vnewSVpvf) +#if defined(NEED_vnewSVpvf) +static SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args); +static +#else +extern SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args); +#endif + +#ifdef vnewSVpvf +# undef vnewSVpvf +#endif +#define vnewSVpvf(a,b) DPPP_(my_vnewSVpvf)(aTHX_ a,b) +#define Perl_vnewSVpvf DPPP_(my_vnewSVpvf) + +#if defined(NEED_vnewSVpvf) || defined(NEED_vnewSVpvf_GLOBAL) + +SV * +DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args) +{ + register SV *sv = newSV(0); + sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); + return sv; +} + +#endif +#endif + +/* sv_vcatpvf depends on sv_vcatpvfn */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf) +# define sv_vcatpvf(sv, pat, args) sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) +#endif + +/* sv_vsetpvf depends on sv_vsetpvfn */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf) +# define sv_vsetpvf(sv, pat, args) sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) +#endif + +/* sv_catpvf_mg depends on sv_vcatpvfn, sv_catpvf_mg_nocontext */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg) +#if defined(NEED_sv_catpvf_mg) +static void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...); +static +#else +extern void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...); +#endif + +#define Perl_sv_catpvf_mg DPPP_(my_sv_catpvf_mg) + +#if defined(NEED_sv_catpvf_mg) || defined(NEED_sv_catpvf_mg_GLOBAL) + +void +DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...) +{ + va_list args; + va_start(args, pat); + sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif + +/* sv_catpvf_mg_nocontext depends on sv_vcatpvfn */ +#ifdef PERL_IMPLICIT_CONTEXT +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg_nocontext) +#if defined(NEED_sv_catpvf_mg_nocontext) +static void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...); +static +#else +extern void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...); +#endif + +#define sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) +#define Perl_sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) + +#if defined(NEED_sv_catpvf_mg_nocontext) || defined(NEED_sv_catpvf_mg_nocontext_GLOBAL) + +void +DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...) +{ + dTHX; + va_list args; + va_start(args, pat); + sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif +#endif + +#ifndef sv_catpvf_mg +# ifdef PERL_IMPLICIT_CONTEXT +# define sv_catpvf_mg Perl_sv_catpvf_mg_nocontext +# else +# define sv_catpvf_mg Perl_sv_catpvf_mg +# endif +#endif + +/* sv_vcatpvf_mg depends on sv_vcatpvfn */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf_mg) +# define sv_vcatpvf_mg(sv, pat, args) \ + STMT_START { \ + sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ + SvSETMAGIC(sv); \ + } STMT_END +#endif + +/* sv_setpvf_mg depends on sv_vsetpvfn, sv_setpvf_mg_nocontext */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg) +#if defined(NEED_sv_setpvf_mg) +static void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...); +static +#else +extern void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...); +#endif + +#define Perl_sv_setpvf_mg DPPP_(my_sv_setpvf_mg) + +#if defined(NEED_sv_setpvf_mg) || defined(NEED_sv_setpvf_mg_GLOBAL) + +void +DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...) +{ + va_list args; + va_start(args, pat); + sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif + +/* sv_setpvf_mg_nocontext depends on sv_vsetpvfn */ +#ifdef PERL_IMPLICIT_CONTEXT +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg_nocontext) +#if defined(NEED_sv_setpvf_mg_nocontext) +static void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...); +static +#else +extern void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...); +#endif + +#define sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) +#define Perl_sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) + +#if defined(NEED_sv_setpvf_mg_nocontext) || defined(NEED_sv_setpvf_mg_nocontext_GLOBAL) + +void +DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...) +{ + dTHX; + va_list args; + va_start(args, pat); + sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); + SvSETMAGIC(sv); + va_end(args); +} + +#endif +#endif +#endif + +#ifndef sv_setpvf_mg +# ifdef PERL_IMPLICIT_CONTEXT +# define sv_setpvf_mg Perl_sv_setpvf_mg_nocontext +# else +# define sv_setpvf_mg Perl_sv_setpvf_mg +# endif +#endif + +/* sv_vsetpvf_mg depends on sv_vsetpvfn */ +#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf_mg) +# define sv_vsetpvf_mg(sv, pat, args) \ + STMT_START { \ + sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ + SvSETMAGIC(sv); \ + } STMT_END +#endif +#ifndef SvGETMAGIC +# define SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_END +#endif +#ifndef PERL_MAGIC_sv +# define PERL_MAGIC_sv '\0' +#endif + +#ifndef PERL_MAGIC_overload +# define PERL_MAGIC_overload 'A' +#endif + +#ifndef PERL_MAGIC_overload_elem +# define PERL_MAGIC_overload_elem 'a' +#endif + +#ifndef PERL_MAGIC_overload_table +# define PERL_MAGIC_overload_table 'c' +#endif + +#ifndef PERL_MAGIC_bm +# define PERL_MAGIC_bm 'B' +#endif + +#ifndef PERL_MAGIC_regdata +# define PERL_MAGIC_regdata 'D' +#endif + +#ifndef PERL_MAGIC_regdatum +# define PERL_MAGIC_regdatum 'd' +#endif + +#ifndef PERL_MAGIC_env +# define PERL_MAGIC_env 'E' +#endif + +#ifndef PERL_MAGIC_envelem +# define PERL_MAGIC_envelem 'e' +#endif + +#ifndef PERL_MAGIC_fm +# define PERL_MAGIC_fm 'f' +#endif + +#ifndef PERL_MAGIC_regex_global +# define PERL_MAGIC_regex_global 'g' +#endif + +#ifndef PERL_MAGIC_isa +# define PERL_MAGIC_isa 'I' +#endif + +#ifndef PERL_MAGIC_isaelem +# define PERL_MAGIC_isaelem 'i' +#endif + +#ifndef PERL_MAGIC_nkeys +# define PERL_MAGIC_nkeys 'k' +#endif + +#ifndef PERL_MAGIC_dbfile +# define PERL_MAGIC_dbfile 'L' +#endif + +#ifndef PERL_MAGIC_dbline +# define PERL_MAGIC_dbline 'l' +#endif + +#ifndef PERL_MAGIC_mutex +# define PERL_MAGIC_mutex 'm' +#endif + +#ifndef PERL_MAGIC_shared +# define PERL_MAGIC_shared 'N' +#endif + +#ifndef PERL_MAGIC_shared_scalar +# define PERL_MAGIC_shared_scalar 'n' +#endif + +#ifndef PERL_MAGIC_collxfrm +# define PERL_MAGIC_collxfrm 'o' +#endif + +#ifndef PERL_MAGIC_tied +# define PERL_MAGIC_tied 'P' +#endif + +#ifndef PERL_MAGIC_tiedelem +# define PERL_MAGIC_tiedelem 'p' +#endif + +#ifndef PERL_MAGIC_tiedscalar +# define PERL_MAGIC_tiedscalar 'q' +#endif + +#ifndef PERL_MAGIC_qr +# define PERL_MAGIC_qr 'r' +#endif + +#ifndef PERL_MAGIC_sig +# define PERL_MAGIC_sig 'S' +#endif + +#ifndef PERL_MAGIC_sigelem +# define PERL_MAGIC_sigelem 's' +#endif + +#ifndef PERL_MAGIC_taint +# define PERL_MAGIC_taint 't' +#endif + +#ifndef PERL_MAGIC_uvar +# define PERL_MAGIC_uvar 'U' +#endif + +#ifndef PERL_MAGIC_uvar_elem +# define PERL_MAGIC_uvar_elem 'u' +#endif + +#ifndef PERL_MAGIC_vstring +# define PERL_MAGIC_vstring 'V' +#endif + +#ifndef PERL_MAGIC_vec +# define PERL_MAGIC_vec 'v' +#endif + +#ifndef PERL_MAGIC_utf8 +# define PERL_MAGIC_utf8 'w' +#endif + +#ifndef PERL_MAGIC_substr +# define PERL_MAGIC_substr 'x' +#endif + +#ifndef PERL_MAGIC_defelem +# define PERL_MAGIC_defelem 'y' +#endif + +#ifndef PERL_MAGIC_glob +# define PERL_MAGIC_glob '*' +#endif + +#ifndef PERL_MAGIC_arylen +# define PERL_MAGIC_arylen '#' +#endif + +#ifndef PERL_MAGIC_pos +# define PERL_MAGIC_pos '.' +#endif + +#ifndef PERL_MAGIC_backref +# define PERL_MAGIC_backref '<' +#endif + +#ifndef PERL_MAGIC_ext +# define PERL_MAGIC_ext '~' +#endif + +/* That's the best we can do... */ +#ifndef SvPV_force_nomg +# define SvPV_force_nomg SvPV_force +#endif + +#ifndef SvPV_nomg +# define SvPV_nomg SvPV +#endif + +#ifndef sv_catpvn_nomg +# define sv_catpvn_nomg sv_catpvn +#endif + +#ifndef sv_catsv_nomg +# define sv_catsv_nomg sv_catsv +#endif + +#ifndef sv_setsv_nomg +# define sv_setsv_nomg sv_setsv +#endif + +#ifndef sv_pvn_nomg +# define sv_pvn_nomg sv_pvn +#endif + +#ifndef SvIV_nomg +# define SvIV_nomg SvIV +#endif + +#ifndef SvUV_nomg +# define SvUV_nomg SvUV +#endif + +#ifndef sv_catpv_mg +# define sv_catpv_mg(sv, ptr) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_catpv(TeMpSv,ptr); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_catpvn_mg +# define sv_catpvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_catpvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_catsv_mg +# define sv_catsv_mg(dsv, ssv) \ + STMT_START { \ + SV *TeMpSv = dsv; \ + sv_catsv(TeMpSv,ssv); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setiv_mg +# define sv_setiv_mg(sv, i) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setiv(TeMpSv,i); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setnv_mg +# define sv_setnv_mg(sv, num) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setnv(TeMpSv,num); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setpv_mg +# define sv_setpv_mg(sv, ptr) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setpv(TeMpSv,ptr); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setpvn_mg +# define sv_setpvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setpvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setsv_mg +# define sv_setsv_mg(dsv, ssv) \ + STMT_START { \ + SV *TeMpSv = dsv; \ + sv_setsv(TeMpSv,ssv); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_setuv_mg +# define sv_setuv_mg(sv, i) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_setuv(TeMpSv,i); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifndef sv_usepvn_mg +# define sv_usepvn_mg(sv, ptr, len) \ + STMT_START { \ + SV *TeMpSv = sv; \ + sv_usepvn(TeMpSv,ptr,len); \ + SvSETMAGIC(TeMpSv); \ + } STMT_END +#endif + +#ifdef USE_ITHREADS +#ifndef CopFILE +# define CopFILE(c) ((c)->cop_file) +#endif + +#ifndef CopFILEGV +# define CopFILEGV(c) (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv) +#endif + +#ifndef CopFILE_set +# define CopFILE_set(c,pv) ((c)->cop_file = savepv(pv)) +#endif + +#ifndef CopFILESV +# define CopFILESV(c) (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv) +#endif + +#ifndef CopFILEAV +# define CopFILEAV(c) (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav) +#endif + +#ifndef CopSTASHPV +# define CopSTASHPV(c) ((c)->cop_stashpv) +#endif + +#ifndef CopSTASHPV_set +# define CopSTASHPV_set(c,pv) ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch)) +#endif + +#ifndef CopSTASH +# define CopSTASH(c) (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv) +#endif + +#ifndef CopSTASH_set +# define CopSTASH_set(c,hv) CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch) +#endif + +#ifndef CopSTASH_eq +# define CopSTASH_eq(c,hv) ((hv) && (CopSTASHPV(c) == HvNAME(hv) \ + || (CopSTASHPV(c) && HvNAME(hv) \ + && strEQ(CopSTASHPV(c), HvNAME(hv))))) +#endif + +#else +#ifndef CopFILEGV +# define CopFILEGV(c) ((c)->cop_filegv) +#endif + +#ifndef CopFILEGV_set +# define CopFILEGV_set(c,gv) ((c)->cop_filegv = (GV*)SvREFCNT_inc(gv)) +#endif + +#ifndef CopFILE_set +# define CopFILE_set(c,pv) CopFILEGV_set((c), gv_fetchfile(pv)) +#endif + +#ifndef CopFILESV +# define CopFILESV(c) (CopFILEGV(c) ? GvSV(CopFILEGV(c)) : Nullsv) +#endif + +#ifndef CopFILEAV +# define CopFILEAV(c) (CopFILEGV(c) ? GvAV(CopFILEGV(c)) : Nullav) +#endif + +#ifndef CopFILE +# define CopFILE(c) (CopFILESV(c) ? SvPVX(CopFILESV(c)) : Nullch) +#endif + +#ifndef CopSTASH +# define CopSTASH(c) ((c)->cop_stash) +#endif + +#ifndef CopSTASH_set +# define CopSTASH_set(c,hv) ((c)->cop_stash = (hv)) +#endif + +#ifndef CopSTASHPV +# define CopSTASHPV(c) (CopSTASH(c) ? HvNAME(CopSTASH(c)) : Nullch) +#endif + +#ifndef CopSTASHPV_set +# define CopSTASHPV_set(c,pv) CopSTASH_set((c), gv_stashpv(pv,GV_ADD)) +#endif + +#ifndef CopSTASH_eq +# define CopSTASH_eq(c,hv) (CopSTASH(c) == (hv)) +#endif + +#endif /* USE_ITHREADS */ +#ifndef IN_PERL_COMPILETIME +# define IN_PERL_COMPILETIME (PL_curcop == &PL_compiling) +#endif + +#ifndef IN_LOCALE_RUNTIME +# define IN_LOCALE_RUNTIME (PL_curcop->op_private & HINT_LOCALE) +#endif + +#ifndef IN_LOCALE_COMPILETIME +# define IN_LOCALE_COMPILETIME (PL_hints & HINT_LOCALE) +#endif + +#ifndef IN_LOCALE +# define IN_LOCALE (IN_PERL_COMPILETIME ? IN_LOCALE_COMPILETIME : IN_LOCALE_RUNTIME) +#endif +#ifndef IS_NUMBER_IN_UV +# define IS_NUMBER_IN_UV 0x01 +#endif + +#ifndef IS_NUMBER_GREATER_THAN_UV_MAX +# define IS_NUMBER_GREATER_THAN_UV_MAX 0x02 +#endif + +#ifndef IS_NUMBER_NOT_INT +# define IS_NUMBER_NOT_INT 0x04 +#endif + +#ifndef IS_NUMBER_NEG +# define IS_NUMBER_NEG 0x08 +#endif + +#ifndef IS_NUMBER_INFINITY +# define IS_NUMBER_INFINITY 0x10 +#endif + +#ifndef IS_NUMBER_NAN +# define IS_NUMBER_NAN 0x20 +#endif + +/* GROK_NUMERIC_RADIX depends on grok_numeric_radix */ +#ifndef GROK_NUMERIC_RADIX +# define GROK_NUMERIC_RADIX(sp, send) grok_numeric_radix(sp, send) +#endif +#ifndef PERL_SCAN_GREATER_THAN_UV_MAX +# define PERL_SCAN_GREATER_THAN_UV_MAX 0x02 +#endif + +#ifndef PERL_SCAN_SILENT_ILLDIGIT +# define PERL_SCAN_SILENT_ILLDIGIT 0x04 +#endif + +#ifndef PERL_SCAN_ALLOW_UNDERSCORES +# define PERL_SCAN_ALLOW_UNDERSCORES 0x01 +#endif + +#ifndef PERL_SCAN_DISALLOW_PREFIX +# define PERL_SCAN_DISALLOW_PREFIX 0x02 +#endif + +#ifndef grok_numeric_radix +#if defined(NEED_grok_numeric_radix) +static bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); +static +#else +extern bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); +#endif + +#ifdef grok_numeric_radix +# undef grok_numeric_radix +#endif +#define grok_numeric_radix(a,b) DPPP_(my_grok_numeric_radix)(aTHX_ a,b) +#define Perl_grok_numeric_radix DPPP_(my_grok_numeric_radix) + +#if defined(NEED_grok_numeric_radix) || defined(NEED_grok_numeric_radix_GLOBAL) +bool +DPPP_(my_grok_numeric_radix)(pTHX_ const char **sp, const char *send) +{ +#ifdef USE_LOCALE_NUMERIC +#ifdef PL_numeric_radix_sv + if (PL_numeric_radix_sv && IN_LOCALE) { + STRLEN len; + char* radix = SvPV(PL_numeric_radix_sv, len); + if (*sp + len <= send && memEQ(*sp, radix, len)) { + *sp += len; + return TRUE; + } + } +#else + /* older perls don't have PL_numeric_radix_sv so the radix + * must manually be requested from locale.h + */ +#include + dTHR; /* needed for older threaded perls */ + struct lconv *lc = localeconv(); + char *radix = lc->decimal_point; + if (radix && IN_LOCALE) { + STRLEN len = strlen(radix); + if (*sp + len <= send && memEQ(*sp, radix, len)) { + *sp += len; + return TRUE; + } + } +#endif /* PERL_VERSION */ +#endif /* USE_LOCALE_NUMERIC */ + /* always try "." if numeric radix didn't match because + * we may have data from different locales mixed */ + if (*sp < send && **sp == '.') { + ++*sp; + return TRUE; + } + return FALSE; +} +#endif +#endif + +/* grok_number depends on grok_numeric_radix */ + +#ifndef grok_number +#if defined(NEED_grok_number) +static int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); +static +#else +extern int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); +#endif + +#ifdef grok_number +# undef grok_number +#endif +#define grok_number(a,b,c) DPPP_(my_grok_number)(aTHX_ a,b,c) +#define Perl_grok_number DPPP_(my_grok_number) + +#if defined(NEED_grok_number) || defined(NEED_grok_number_GLOBAL) +int +DPPP_(my_grok_number)(pTHX_ const char *pv, STRLEN len, UV *valuep) +{ + const char *s = pv; + const char *send = pv + len; + const UV max_div_10 = UV_MAX / 10; + const char max_mod_10 = UV_MAX % 10; + int numtype = 0; + int sawinf = 0; + int sawnan = 0; + + while (s < send && isSPACE(*s)) + s++; + if (s == send) { + return 0; + } else if (*s == '-') { + s++; + numtype = IS_NUMBER_NEG; + } + else if (*s == '+') + s++; + + if (s == send) + return 0; + + /* next must be digit or the radix separator or beginning of infinity */ + if (isDIGIT(*s)) { + /* UVs are at least 32 bits, so the first 9 decimal digits cannot + overflow. */ + UV value = *s - '0'; + /* This construction seems to be more optimiser friendly. + (without it gcc does the isDIGIT test and the *s - '0' separately) + With it gcc on arm is managing 6 instructions (6 cycles) per digit. + In theory the optimiser could deduce how far to unroll the loop + before checking for overflow. */ + if (++s < send) { + int digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + digit = *s - '0'; + if (digit >= 0 && digit <= 9) { + value = value * 10 + digit; + if (++s < send) { + /* Now got 9 digits, so need to check + each time for overflow. */ + digit = *s - '0'; + while (digit >= 0 && digit <= 9 + && (value < max_div_10 + || (value == max_div_10 + && digit <= max_mod_10))) { + value = value * 10 + digit; + if (++s < send) + digit = *s - '0'; + else + break; + } + if (digit >= 0 && digit <= 9 + && (s < send)) { + /* value overflowed. + skip the remaining digits, don't + worry about setting *valuep. */ + do { + s++; + } while (s < send && isDIGIT(*s)); + numtype |= + IS_NUMBER_GREATER_THAN_UV_MAX; + goto skip_value; + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + } + numtype |= IS_NUMBER_IN_UV; + if (valuep) + *valuep = value; + + skip_value: + if (GROK_NUMERIC_RADIX(&s, send)) { + numtype |= IS_NUMBER_NOT_INT; + while (s < send && isDIGIT(*s)) /* optional digits after the radix */ + s++; + } + } + else if (GROK_NUMERIC_RADIX(&s, send)) { + numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */ + /* no digits before the radix means we need digits after it */ + if (s < send && isDIGIT(*s)) { + do { + s++; + } while (s < send && isDIGIT(*s)); + if (valuep) { + /* integer approximation is valid - it's 0. */ + *valuep = 0; + } + } + else + return 0; + } else if (*s == 'I' || *s == 'i') { + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; if (s == send || (*s != 'F' && *s != 'f')) return 0; + s++; if (s < send && (*s == 'I' || *s == 'i')) { + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; if (s == send || (*s != 'I' && *s != 'i')) return 0; + s++; if (s == send || (*s != 'T' && *s != 't')) return 0; + s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0; + s++; + } + sawinf = 1; + } else if (*s == 'N' || *s == 'n') { + /* XXX TODO: There are signaling NaNs and quiet NaNs. */ + s++; if (s == send || (*s != 'A' && *s != 'a')) return 0; + s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; + s++; + sawnan = 1; + } else + return 0; + + if (sawinf) { + numtype &= IS_NUMBER_NEG; /* Keep track of sign */ + numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT; + } else if (sawnan) { + numtype &= IS_NUMBER_NEG; /* Keep track of sign */ + numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT; + } else if (s < send) { + /* we can have an optional exponent part */ + if (*s == 'e' || *s == 'E') { + /* The only flag we keep is sign. Blow away any "it's UV" */ + numtype &= IS_NUMBER_NEG; + numtype |= IS_NUMBER_NOT_INT; + s++; + if (s < send && (*s == '-' || *s == '+')) + s++; + if (s < send && isDIGIT(*s)) { + do { + s++; + } while (s < send && isDIGIT(*s)); + } + else + return 0; + } + } + while (s < send && isSPACE(*s)) + s++; + if (s >= send) + return numtype; + if (len == 10 && memEQ(pv, "0 but true", 10)) { + if (valuep) + *valuep = 0; + return IS_NUMBER_IN_UV; + } + return 0; +} +#endif +#endif + +/* + * The grok_* routines have been modified to use warn() instead of + * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit, + * which is why the stack variable has been renamed to 'xdigit'. + */ + +#ifndef grok_bin +#if defined(NEED_grok_bin) +static UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +static +#else +extern UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +#endif + +#ifdef grok_bin +# undef grok_bin +#endif +#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d) +#define Perl_grok_bin DPPP_(my_grok_bin) + +#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL) +UV +DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_2 = UV_MAX / 2; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + + if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { + /* strip off leading b or 0b. + for compatibility silently suffer "b" and "0b" as valid binary + numbers. */ + if (len >= 1) { + if (s[0] == 'b') { + s++; + len--; + } + else if (len >= 2 && s[0] == '0' && s[1] == 'b') { + s+=2; + len-=2; + } + } + } + + for (; len-- && *s; s++) { + char bit = *s; + if (bit == '0' || bit == '1') { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + With gcc seems to be much straighter code than old scan_bin. */ + redo: + if (!overflowed) { + if (value <= max_div_2) { + value = (value << 1) | (bit - '0'); + continue; + } + /* Bah. We're just overflowed. */ + warn("Integer overflow in binary number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 2.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount. */ + value_nv += (NV)(bit - '0'); + continue; + } + if (bit == '_' && len && allow_underscores && (bit = s[1]) + && (bit == '0' || bit == '1')) + { + --len; + ++s; + goto redo; + } + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal binary digit '%c' ignored", *s); + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Binary number > 0b11111111111111111111111111111111 non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#ifndef grok_hex +#if defined(NEED_grok_hex) +static UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +static +#else +extern UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +#endif + +#ifdef grok_hex +# undef grok_hex +#endif +#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d) +#define Perl_grok_hex DPPP_(my_grok_hex) + +#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL) +UV +DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_16 = UV_MAX / 16; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + const char *xdigit; + + if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { + /* strip off leading x or 0x. + for compatibility silently suffer "x" and "0x" as valid hex numbers. + */ + if (len >= 1) { + if (s[0] == 'x') { + s++; + len--; + } + else if (len >= 2 && s[0] == '0' && s[1] == 'x') { + s+=2; + len-=2; + } + } + } + + for (; len-- && *s; s++) { + xdigit = strchr((char *) PL_hexdigit, *s); + if (xdigit) { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + With gcc seems to be much straighter code than old scan_hex. */ + redo: + if (!overflowed) { + if (value <= max_div_16) { + value = (value << 4) | ((xdigit - PL_hexdigit) & 15); + continue; + } + warn("Integer overflow in hexadecimal number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 16.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount of 16-tuples. */ + value_nv += (NV)((xdigit - PL_hexdigit) & 15); + continue; + } + if (*s == '_' && len && allow_underscores && s[1] + && (xdigit = strchr((char *) PL_hexdigit, s[1]))) + { + --len; + ++s; + goto redo; + } + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal hexadecimal digit '%c' ignored", *s); + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Hexadecimal number > 0xffffffff non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#ifndef grok_oct +#if defined(NEED_grok_oct) +static UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +static +#else +extern UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); +#endif + +#ifdef grok_oct +# undef grok_oct +#endif +#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d) +#define Perl_grok_oct DPPP_(my_grok_oct) + +#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL) +UV +DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) +{ + const char *s = start; + STRLEN len = *len_p; + UV value = 0; + NV value_nv = 0; + + const UV max_div_8 = UV_MAX / 8; + bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; + bool overflowed = FALSE; + + for (; len-- && *s; s++) { + /* gcc 2.95 optimiser not smart enough to figure that this subtraction + out front allows slicker code. */ + int digit = *s - '0'; + if (digit >= 0 && digit <= 7) { + /* Write it in this wonky order with a goto to attempt to get the + compiler to make the common case integer-only loop pretty tight. + */ + redo: + if (!overflowed) { + if (value <= max_div_8) { + value = (value << 3) | digit; + continue; + } + /* Bah. We're just overflowed. */ + warn("Integer overflow in octal number"); + overflowed = TRUE; + value_nv = (NV) value; + } + value_nv *= 8.0; + /* If an NV has not enough bits in its mantissa to + * represent a UV this summing of small low-order numbers + * is a waste of time (because the NV cannot preserve + * the low-order bits anyway): we could just remember when + * did we overflow and in the end just multiply value_nv by the + * right amount of 8-tuples. */ + value_nv += (NV)digit; + continue; + } + if (digit == ('_' - '0') && len && allow_underscores + && (digit = s[1] - '0') && (digit >= 0 && digit <= 7)) + { + --len; + ++s; + goto redo; + } + /* Allow \octal to work the DWIM way (that is, stop scanning + * as soon as non-octal characters are seen, complain only iff + * someone seems to want to use the digits eight and nine). */ + if (digit == 8 || digit == 9) { + if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) + warn("Illegal octal digit '%c' ignored", *s); + } + break; + } + + if ( ( overflowed && value_nv > 4294967295.0) +#if UVSIZE > 4 + || (!overflowed && value > 0xffffffff ) +#endif + ) { + warn("Octal number > 037777777777 non-portable"); + } + *len_p = s - start; + if (!overflowed) { + *flags = 0; + return value; + } + *flags = PERL_SCAN_GREATER_THAN_UV_MAX; + if (result) + *result = value_nv; + return UV_MAX; +} +#endif +#endif + +#ifdef NO_XSLOCKS +# ifdef dJMPENV +# define dXCPT dJMPENV; int rEtV = 0 +# define XCPT_TRY_START JMPENV_PUSH(rEtV); if (rEtV == 0) +# define XCPT_TRY_END JMPENV_POP; +# define XCPT_CATCH if (rEtV != 0) +# define XCPT_RETHROW JMPENV_JUMP(rEtV) +# else +# define dXCPT Sigjmp_buf oldTOP; int rEtV = 0 +# define XCPT_TRY_START Copy(top_env, oldTOP, 1, Sigjmp_buf); rEtV = Sigsetjmp(top_env, 1); if (rEtV == 0) +# define XCPT_TRY_END Copy(oldTOP, top_env, 1, Sigjmp_buf); +# define XCPT_CATCH if (rEtV != 0) +# define XCPT_RETHROW Siglongjmp(top_env, rEtV) +# endif +#endif + +#endif /* _P_P_PORTABILITY_H_ */ + +/* End of File ppport.h */ diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t b/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t new file mode 100644 index 00000000..7e896530 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t @@ -0,0 +1,8 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +plan tests => 1; + +eval {use Crypt::PBC; }; ok( not $@ ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t b/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t new file mode 100644 index 00000000..b645ce63 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t @@ -0,0 +1,52 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +plan tests => 5; + +use Crypt::PBC; + +my $global_c; +my $global_e; + +FILE: { + my $c = Crypt::PBC->new("params_d.txt"); + my $e = $c->init_G1->set_to_hash( "lol!" ); + + $global_e = $e; + $global_c = $c; # this shouldn't be necessary -- trying to concoct a smaller example + + ok( 1 ); +} + +GLOB: { + open IN, "params_d.txt" or die "lol: $!"; + my $c = Crypt::PBC->new(\*IN); close IN; + my $e = $c->init_G1->set_to_hash( "lol!" ); + + ok( 1 ); + ok( $e->is_eq( $global_e ) ) +} + +STRING: { + my $settings = q(type d +q 90144054120102937439179516551801119443207521965651508326977 +n 90144054120102937439179516552101359437412329625948146453801 +h 3523 +r 25587298927080027658012919827448583433838299638361665187 +a 53241464724463691897001131065853762954208272388634868483573 +b 5446291776274815451607581859968802155069674270539409546723 +k 6 +nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 +hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 +coeff0 43907136006531280293838495445857758305366399383908394927288 +coeff1 21720089592072695009765372832780685887129370300993349347738 +coeff2 11773373318911376280677890769414834592007872486079550520860 +nqr 4468071665857441743453009416233415235254714637554162977327); + my $c = Crypt::PBC->new($settings); + my $e = $c->init_G1->set_to_hash( "lol!" ); + + ok( 1 ); + ok( $e->is_eq( $global_e ) ) +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t b/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t new file mode 100644 index 00000000..fbf9ceca --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t @@ -0,0 +1,50 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +plan tests => 1 + 3 + 2 + 1 + 2 + 1; + +use Crypt::PBC; + +# The data from params_d.txt was read in from param/d105171-196-185.param, which +# comes with the pbc package which can be generated by the package itself. The +# rest of this test is from testibe.c in the PBC distribution. + +my $pairing = Crypt::PBC->new("params_d.txt"); ok($pairing); + +my $g = $pairing->init_G1; ok( $g ); # P in BF +my $zg = $pairing->init_G1; ok( $zg ); # sP in BF +my $rg = $pairing->init_G1; ok( $rg ); # H2(g^r) ... in BF, though H1(g^r) here... +my $h = $pairing->init_G2; ok( $h ); # Q_id = H1(ID) in BF ... Q_id = H2(ID) here +my $zh = $pairing->init_G2; ok( $zh ); # d_id in BF +my $s = $pairing->init_GT; ok( $s ); # V and M and h2(g_id^r) and stuff +my $master = $pairing->init_Zr; ok( $master ); # s in BF +my $r = $pairing->init_Zr; ok( $r ); # r in BF + +$master->random; # generate master secret (s) +$g->random; # g is a publically known value (P) +$zg->pow_zn( $g, $master ); # sP is the master-public key P_pub + +$s->random; # just for the debug messages below +$h->random; # just for the debug messages below + +# pick random h, which represents what an ID might hash to +# for toy examples, should check that pairing(g, h) != 1 +$h->random; # this is the Qi = H1( IDi(params) ) +$zh->pow_zn( $h, $master ); # and this is the private key + +## encryption +## first pick random r +$r->random; +$s->pairing_apply( $zg, $h ); # s = e_hat(P_pub, Q_id) -- GT=e_hat(G1, G2) +$s->pow_zn( $s, $r ); # s = e_hat(P_pub, Q_id)^r, used to encrypt the message +$rg->pow_zn( $g, $r ); # we transmit g^r along with the encryption + +## decyrption +## should equal s +my $other_s = $pairing->init_GT->pairing_apply( $rg, $zh ); # s = e_hat(g^r, d_id) -- GT=e_hat(G1, G2) + +ok( $s->is_eq( $other_s ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t b/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t new file mode 100644 index 00000000..50b87398 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t @@ -0,0 +1,73 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +my $bf = 0; +my $sh = 0; +eval q{ + use Crypt::CBC; + use Crypt::Blowfish; + + $bf = 1; +}; + +eval q{ + use Digest::SHA1 qw(sha1); + + $sh = 1; +}; + +plan tests => 3 + $bf; + +use Crypt::PBC; + +# SETUP + +my $curve = Crypt::PBC->new("params_d.txt"); + +my $P = $curve->init_G2->random; # generator in G1 -- even though it's in G2 +my $s = $curve->init_Zr->random; # master secret +my $P_pub = $curve->init_G2->pow_zn( $P, $s ); # master public key + +# EXTRACT + +my $Q_id = $curve->init_G1; +if( $sh ) { + warn "using Digest::SHA1 to generate Q_id\n" if $ENV{EXTRA_INFO}; + $Q_id->set_to_hash( sha1("Paul Miller | expires 2007-11-15") ); + +} else { + $Q_id->random; # this is just a test anyway +} +my $d_id = $curve->init_G1->pow_zn( $Q_id, $s ); + +# ENCRYPT + +my $r = $curve->init_Zr->random; +my $g_id = $curve->init_GT->e_hat( $Q_id, $P_pub ); +my $U = $curve->init_G2->pow_zn( $P, $r ); # U is the part d_id can use to derive w +my $w = $curve->init_GT->pow_zn( $g_id, $r ); # w is the part you'd xor(w,M) to get V or xor(w,V) to get M + +# DECRYPT +my $w_from_U = $curve->init_GT->e_hat( $d_id, $U ); + +ok( $w_from_U->is_eq( $w ) ); +ok( $w_from_U->as_bytes, $w->as_bytes ); # binary good +ok( $w_from_U->as_str, $w->as_str ); # hexidecimal + +if( $bf ) { + # If the three comparisons above worked, this is kindof a no-brainer; but, + # personally, I was confused on how to M^H2(g^r) -- and here it is: + + my $cipher1 = new Crypt::CBC({header=>"randomiv", key=>$w->as_bytes, cipher=>'Blowfish'}); + my $cipher2 = new Crypt::CBC({header=>"randomiv", key=>$w_from_U->as_bytes, cipher=>'Blowfish'}); + my $message = "Holy smokes, this is secret!!"; + my $encrypt = $cipher1->encrypt($message); + my $decrypt = $cipher2->decrypt($encrypt); + + warn " using Crypt::CBC(Crypt::Blowfish) for 4th test\n" if $ENV{EXTRA_INFO}; + ok( $decrypt, $message ); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t b/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t new file mode 100644 index 00000000..f6e05f3a --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t @@ -0,0 +1,44 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $str = q(type d +q 90144054120102937439179516551801119443207521965651508326977 +n 90144054120102937439179516552101359437412329625948146453801 +h 3523 +r 25587298927080027658012919827448583433838299638361665187 +a 53241464724463691897001131065853762954208272388634868483573 +b 5446291776274815451607581859968802155069674270539409546723 +k 6 +nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 +hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 +coeff0 43907136006531280293838495445857758305366399383908394927288 +coeff1 21720089592072695009765372832780685887129370300993349347738 +coeff2 11773373318911376280677890769414834592007872486079550520860 +nqr 4468071665857441743453009416233415235254714637554162977327); + +my $epochs = 3; + +plan tests => 4 * $epochs; + +for ( 1 .. $epochs ) { + open IN, "params_d.txt" or die "couldn't open params: $!"; + my $curv1 = Crypt::PBC->new(\*IN); close IN; + my $g1_1 = $curv1->init_G1->set_to_hash("test !!"); + my $g2_1 = $curv1->init_G2->set_to_hash("test !!"); + + my $curv2 = Crypt::PBC->new($str); + my $g1_2 = $curv2->init_G1->set_to_hash("test !!"); + my $g2_2 = $curv2->init_G2->set_to_hash("test !!"); + + ok( $g1_2->as_base64, $g1_1->as_base64 ); + ok( $g2_2->as_base64, $g2_1->as_base64 ); + + ok( $g1_2->is_eq( $g1_1 ) ); + ok( $g2_2->is_eq( $g2_1 ) ); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t b/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t new file mode 100644 index 00000000..a2a2bc5e --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t @@ -0,0 +1,22 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +plan tests => 2; + +my $symmetric = new Crypt::PBC("params_a.txt"); +my $asymmetric = new Crypt::PBC("params_d.txt"); + +my $G1_s = $symmetric->init_G1->random; +my $G2_s = $symmetric->init_G2->random; + +my $G1_a = $asymmetric->init_G1->random; +my $G2_a = $asymmetric->init_G2->random; + +eval { $G1_s->add( $G2_s ) }; ok( not $@ ); +eval { $G1_a->add( $G2_a ) }; ok( $@ ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t new file mode 100644 index 00000000..207083c6 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t @@ -0,0 +1,36 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = Crypt::PBC->new("params_d.txt"); + +my @lhs = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr ); +my @rhs = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr ); + +my $epochs = 3; + +plan tests => ( ((int @lhs) * 5 * $epochs) ); + +for my $i ( 1 .. $epochs ) { + for my $i ( 0 .. $#lhs ) { + + $rhs[$i]->random; + + $lhs[$i]->set( $rhs[$i] )->square; my $sc = $lhs[$i]->clone; + $lhs[$i]->set( $rhs[$i] )->double; my $dc = $lhs[$i]->clone; + $lhs[$i]->set( $rhs[$i] )->halve; my $hc = $lhs[$i]->clone; + $lhs[$i]->set( $rhs[$i] ); $lhs[$i]->neg; my $nc = $lhs[$i]->clone; + $lhs[$i]->set( $rhs[$i] ); $lhs[$i]->invert; my $ic = $lhs[$i]->clone; + + $lhs[$i]->square( $rhs[$i] ); ok( $lhs[$i]->is_eq( $sc ) ); + $lhs[$i]->double( $rhs[$i] ); ok( $lhs[$i]->is_eq( $dc ) ); + $lhs[$i]->halve( $rhs[$i] ); ok( $lhs[$i]->is_eq( $hc ) ); + $lhs[$i]->neg( $rhs[$i] ); ok( $lhs[$i]->is_eq( $nc ) ); + $lhs[$i]->invert( $rhs[$i] ); ok( $lhs[$i]->is_eq( $ic ) ); + } +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t new file mode 100644 index 00000000..1aa7cc93 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t @@ -0,0 +1,35 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = Crypt::PBC->new("params_d.txt"); + +my @lhs = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); +my @rhs = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); +my @shl = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); + +my $epochs = 3; + +plan tests => ( ((int @lhs) * 4 * $epochs) ); + +for my $i ( 1 .. $epochs ) { + for my $i ( 0 .. $#lhs ) { + $rhs[$i]->random; + $shl[$i]->random; + + $lhs[$i]->set( $shl[$i] )->add( $lhs[$i], $rhs[$i] ); my $ac = $lhs[$i]->clone; + $lhs[$i]->set( $shl[$i] )->Sub( $lhs[$i], $rhs[$i] ); my $sc = $lhs[$i]->clone; + $lhs[$i]->set( $shl[$i] ); $lhs[$i]->div( $lhs[$i], $rhs[$i] ); my $dc = $lhs[$i]->clone; + $lhs[$i]->set( $shl[$i] ); $lhs[$i]->mul( $lhs[$i], $rhs[$i] ); my $mc = $lhs[$i]->clone; + + $lhs[$i]->set( $shl[$i] )->add( $rhs[$i] ); ok( $lhs[$i]->is_eq( $ac ) ); + $lhs[$i]->set( $shl[$i] )->Sub( $rhs[$i] ); ok( $lhs[$i]->is_eq( $sc ) ); + $lhs[$i]->set( $shl[$i] )->div( $rhs[$i] ); ok( $lhs[$i]->is_eq( $dc ) ); + $lhs[$i]->set( $shl[$i] )->mul( $rhs[$i] ); ok( $lhs[$i]->is_eq( $mc ) ); + } +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t new file mode 100644 index 00000000..440af5c2 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t @@ -0,0 +1,33 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = new Crypt::PBC("params_d.txt"); + +plan tests => 7; + +my $a = $curve->init_Zr->set_to_int( 11 ); +my $b = 11; +my $c = new Math::BigInt(11); + +my $l1 = $curve->init_Zr->set_to_int( 5 )->mul( $a ); +my $l2 = $curve->init_Zr->set_to_int( 5 )->mul_zn( $a ); +my $l3 = $curve->init_Zr->set_to_int( 5 )->mul_int( $b ); +my $l4 = $curve->init_Zr->set_to_int( 5 )->mul_bigint( $c ); +my $l5 = $curve->init_Zr->mul( $curve->init_Zr->set_to_int(5), $a ); +my $l6 = $curve->init_Zr->mul_zn( $curve->init_Zr->set_to_int(5), $a ); +my $l7 = $curve->init_Zr->mul_int( $curve->init_Zr->set_to_int(5), $b ); +my $l8 = $curve->init_Zr->mul_bigint( $curve->init_Zr->set_to_int(5), $c ); + +ok( $l1->is_eq( $l2 ) ); +ok( $l1->is_eq( $l3 ) ); +ok( $l1->is_eq( $l4 ) ); +ok( $l1->is_eq( $l5 ) ); +ok( $l1->is_eq( $l6 ) ); +ok( $l1->is_eq( $l7 ) ); +ok( $l1->is_eq( $l8 ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t new file mode 100644 index 00000000..b98e7188 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t @@ -0,0 +1,35 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = new Crypt::PBC('params_d.txt'); + +my $G1_a = $curve->init_G1; my $G1_b = $curve->init_G1; my $G1_c = $curve->init_G1; my $G1_d = $curve->init_G1; +my $Zr_a = $curve->init_Zr; my $Zr_b = $curve->init_Zr; my $Zr_c = $curve->init_Zr; + +my $epochs = 5; + +plan tests => $epochs * 3; + +for ( 1 .. $epochs ) { + # just looking for segfaults + + $G1_a->random; $G1_b->random; $G1_c->random; $G1_d->random; $Zr_a->random; $Zr_b->random; $Zr_c->random; + + my $mpz_a = $Zr_a->as_bigint; + my $mpz_b = $Zr_b->as_bigint; + my $mpz_c = $Zr_c->as_bigint; + + $G1_a->random->pow_zn( $G1_b, $Zr_a ); my $c_1 = $G1_a->clone; + $G1_a->random->pow2_zn( $G1_b, $Zr_a, $G1_c, $Zr_b, $G1_d, $Zr_c ); my $c_2 = $G1_a->clone; + $G1_a->random->pow3_zn( $G1_b, $Zr_a, $G1_c, $Zr_b, $G1_d, $Zr_c ); my $c_3 = $G1_a->clone; + + $G1_a->random->pow_bigint( $G1_b, $mpz_a ); ok( $G1_a->is_eq( $c_1 ) ); + $G1_a->random->pow2_bigint( $G1_b, $mpz_a, $G1_c, $mpz_b, $G1_d, $mpz_c ); ok( $G1_a->is_eq( $c_2 ) ); + $G1_a->random->pow3_bigint( $G1_b, $mpz_a, $G1_c, $mpz_b, $G1_d, $mpz_c ); ok( $G1_a->is_eq( $c_3 ) ); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t b/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t new file mode 100644 index 00000000..a0e5cb80 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t @@ -0,0 +1,20 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = new Crypt::PBC('params_d.txt'); + +plan tests => 50; + +for ( 1 .. 50 ) { + my $P_orig = $curve->init_G2->random; + my $P_bytes = $P_orig->as_bytes; + my $P_rebuilt = $curve->init_G2->set_to_bytes( $P_bytes ); + + ok( $P_orig->is_eq( $P_rebuilt ) ); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t b/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t new file mode 100644 index 00000000..ba1bbd15 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t @@ -0,0 +1,20 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $curve = new Crypt::PBC('params_a.txt'); + +plan tests => 3; + +my $x = $curve->init_Zr->random; +my $P1 = $curve->init_G1->random; +my $P2 = clone $P1; + +ok( $P1->is_eq( $P2 ) ); +ok( $P1->clone->pow_zn( $x )->is_eq( $P2->pow_zn($P2, $x) ) ); +ok( not $P1->is_eq( $P2 ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t b/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t new file mode 100644 index 00000000..40837627 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t @@ -0,0 +1,30 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +plan tests => 3; + +my $curve = new Crypt::PBC("params_d.txt"); + +TRIVIAL: { + my $Zr1 = $curve->init_Zr->set_to_int( 53 ); + my $Zr2 = $curve->init_Zr->set_to_int( 59 ); + + my $mpz1 = $Zr1->as_bigint; + my $mpz2 = $Zr2->as_bigint; + + ok( "$mpz1", 53 ); + ok( "$mpz2", 59 ); +} + +NONTRIVIAL: { + my $Zr1 = $curve->init_Zr->set_to_int( 53 ); + my $Zr2 = $curve->init_Zr->set_to_bigint( $Zr1->as_bigint ); + + ok( $Zr1->is_eq( $Zr2 ) ); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t b/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t new file mode 100644 index 00000000..aae130f1 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t @@ -0,0 +1,29 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +use Crypt::PBC; + +my $c = new Crypt::PBC("params_d.txt"); +my @all = ( $c->init_G1, $c->init_G2, $c->init_GT, $c->init_Zr ); +my @noT = @all[0,1,3]; + +plan tests => 4*1 + @noT + 2; + +for my $e ($all[3]) { # this used to test over 2 and 3, but when GT became Zr^k, 1=0 sorta... + $e->set0; ok( $e->is0 and not $e->is1 ); + $e->set1; ok( $e->is1 and not $e->is0 ); + + $e->set_to_int(0); ok( $e->is0 and not $e->is1 ); + $e->set_to_int(1); ok( $e->is1 and not $e->is0 ); +} + +for my $e (@noT) { # , $all[2]) { + ok( $e->is_eq( $e ) ); +} + +ok( not $all[3]->set_to_int(19)->is_sqr ); +ok( $all[3]->set_to_int(25)->is_sqr ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t b/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t new file mode 100644 index 00000000..11457088 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t @@ -0,0 +1,31 @@ +# vi:fdm=marker fdl=0 syntax=perl: + +use strict; +use Test; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +plan tests => 1; + +use Crypt::PBC; + +###### ---- This test shouldn't sagfault. If it does it's probably a bug in libpbc! + +BIGGER_SCOPE: { + my $e; + + HRM1: { + my $c = new Crypt::PBC("params_d.txt"); + $e = $c->init_G1->set_to_hash( "lol!" ); + } + + HRM2: { + my $d = new Crypt::PBC("params_d.txt"); + my $f = $d->init_G1->set_to_hash( "lol!" ); + } + + # warn " about to sagfault"; +} +# warn " (sagfaulted so you don't see this)"; + +ok(1); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t new file mode 100644 index 00000000..8451beb5 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t @@ -0,0 +1,185 @@ + +use strict; +use Test; +use Carp; +use Crypt::PBC; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +my $curve = new Crypt::PBC("params_a.txt"); +my @e = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr, 1, new Math::BigInt(19) ); +my @i = ( 0 .. $#e ); # the indicies for permute() + +if( -f "slamtest.log" ) { + unlink "slamtest.log" or die "couldn't remove old logfile: $!"; +} + +my %slam_these = ( + pairing_apply => 2, + + random => 1, # technically these should be 0, but this test is not set up for no-args + square => 1, + double => 1, + halve => 1, + neg => 1, + invert => 1, + + add => 2, + Sub => 2, + mul => 2, + div => 2, + + mul_zn => 2, + mul_int => 2, + mul_bigint => 2, + + pow_zn => 2, + pow2_zn => 4, + pow3_zn => 6, + + pow_bigint => 2, + pow2_bigint => 4, + pow3_bigint => 6, + + is0 => 1, + is1 => 1, + is_eq => 1, + is_sqr => 1, + + set0 => 1, + set1 => 1, + + set_to_hash => 1, + set_to_bytes => 1, + set_to_int => 1, + set_to_bigint => 1, + set => 1, +); + +#### This test may need some explaining... We wish to pass all +#### possible all the wrong things and make sure we catch all the +#### potential sagfaults with perl croak() errors. + +plan tests => int keys %slam_these; + +my %huge_cache = (); + +my $start_time = time; +my $total_per = 0; +my $last_time = 0; + +$ENV{MAX_PERM_TIME} = 0.05 unless defined $ENV{MAX_PERM_TIME} and $ENV{MAX_PERM_TIME} >= 0; +warn "\n\t$0 is set to truncate all tests longer than $ENV{MAX_PERM_TIME} second(s) (env MAX_PERM_TIME)\n" if $ENV{MAX_PERM_TIME} < 120; +eval 'use Time::HiRes qw(time)'; # does't matter if this fails... +warn "\t$0 gives more accurate calls/s estimates if Time::HiRes is installed...\n" if $@; + +my $shh = $ENV{MAX_PERM_TIME} < 15; + +for my $function (sort slam_sort keys %slam_these) { + my @a = &permute( $slam_these{$function} => @i ); + + # warn " WARN($function, " . (int @a) . ")"; + + if( $total_per > 0 and (my $delta_t = time - $start_time) > 0 ) { + my $v = ""; + $v = ($delta_t / $total_per); + my $t = ($v >= 1 ? sprintf('%0.2f s/call', $v) : sprintf('%0.2f calls/s', 1/$v)); + + my $m = int @a; + if( my $total = ($v * $m) > $ENV{MAX_PERM_TIME} ) { + my $mpti = int ($ENV{MAX_PERM_TIME}/$v); + $mpti = 1 if $mpti < 1; + + @a = sort { (rand 1) <=> (rand 1) } @a; + @a = @a[ 0 .. $mpti ]; + + my $nc = int @a; + + $m = "$nc (reduced randomly from $m)"; + } + + unless( $shh ) { + warn " testing $m argument permutations for $function() $t\n" if $last_time != time; + } + $last_time = time; + } + + for my $a (@a) { + my $key = "@$a"; + my $args = $huge_cache{$key}; + $args = [map { ( ref $e[$_] and $e[$_]->isa("Crypt::PBC::Element") ? $e[$_]->clone->random : $e[$_]) } @$a] + if not defined $args; + $huge_cache{$key} = $args; + + for my $e (@e) { + next unless ref $e and $e->isa("Crypt::PBC::Element"); + + ## DEBUG ## open OUTPUT, ">>slamtest.log" or die $!; + ## DEBUG ## print OUTPUT "e=$e; function=$function; args=[@$args];\n"; + ## DEBUG ## close OUTPUT; + + eval '$e->random->' . $function . '(@$args)'; + + # We are just looking for segmentation faults for now + # so we ignore most $@ entirely. + + if( $@ and not $@ =~ m/(?:SCALAR ref|HASH ref|provide something|same group|int.provided.*accept|RHS|LHS|is not a bigint|must be.*(?:G1|G2|GT|Zr))/ ) { + open OUTPUT, ">>slamtest.log" or die $!; + warn " [logged] \$@=$@"; + print OUTPUT " function=$function; \$@=$@"; + close OUTPUT; + } + } + } + + $total_per += (int @a); + + ok( 1 ); +} + +# _permute {{{ +sub _permute { + my $num = shift; + my $arr = shift; + my $src = shift; + + unshift @$_, $src->[0] for @$arr; + + my $e = $#{ $arr }; + for my $i (1 .. $#$src) { + for my $j (0 .. $e) { + my $t = [@{ $arr->[$j] }]; + + $t->[0] = $i; + + push @$arr, $t; + } + } + + &_permute( $num-1, $arr, $src ) if $num > 1; +} +# }}} +# permute {{{ +sub permute { + my $anum = shift; croak "dumb number" unless $anum > 0; + my @ret = (); + + for my $num ( 1 .. $anum ) { + my @a = map {[$_]} @_; + + &_permute( $num-1, \@a, \@_ ) if $num > 1; + + push @ret, @a; + } + + return @ret; +} +# }}} +# slam_sort {{{ +sub slam_sort { + my ($c, $d) = ($slam_these{$a}, $slam_these{$b}); + + return $c <=> $d if $c != $d; + return $a cmp $b; +} +# }}} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t new file mode 100644 index 00000000..cd3f066c --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t @@ -0,0 +1,185 @@ + +use strict; +use Test; +use Carp; +use Crypt::PBC; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +my $curve = new Crypt::PBC("params_d.txt"); +my @e = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr, 1, new Math::BigInt(19) ); +my @i = ( 0 .. $#e ); # the indicies for permute() + +if( -f "slamtest.log" ) { + unlink "slamtest.log" or die "couldn't remove old logfile: $!"; +} + +my %slam_these = ( + pairing_apply => 2, + + random => 1, # technically these should be 0, but this test is not set up for no-args + square => 1, + double => 1, + halve => 1, + neg => 1, + invert => 1, + + add => 2, + Sub => 2, + mul => 2, + div => 2, + + mul_zn => 2, + mul_int => 2, + mul_bigint => 2, + + pow_zn => 2, + pow2_zn => 4, + pow3_zn => 6, + + pow_bigint => 2, + pow2_bigint => 4, + pow3_bigint => 6, + + is0 => 1, + is1 => 1, + is_eq => 1, + is_sqr => 1, + + set0 => 1, + set1 => 1, + + set_to_hash => 1, + set_to_bytes => 1, + set_to_int => 1, + set_to_bigint => 1, + set => 1, +); + +#### This test may need some explaining... We wish to pass all +#### possible all the wrong things and make sure we catch all the +#### potential sagfaults with perl croak() errors. + +plan tests => int keys %slam_these; + +my %huge_cache = (); + +my $start_time = time; +my $total_per = 0; +my $last_time = 0; + +$ENV{MAX_PERM_TIME} = 0.05 unless defined $ENV{MAX_PERM_TIME} and $ENV{MAX_PERM_TIME} >= 0; +warn "\n\t$0 is set to truncate all tests longer than $ENV{MAX_PERM_TIME} second(s) (env MAX_PERM_TIME)\n" if $ENV{MAX_PERM_TIME} < 120; +eval 'use Time::HiRes qw(time)'; # does't matter if this fails... +warn "\t$0 gives more accurate calls/s estimates if Time::HiRes is installed...\n" if $@; + +my $shh = $ENV{MAX_PERM_TIME} < 15; + +for my $function (sort slam_sort keys %slam_these) { + my @a = &permute( $slam_these{$function} => @i ); + + # warn " WARN($function, " . (int @a) . ")"; + + if( $total_per > 0 and (my $delta_t = time - $start_time) > 0 ) { + my $v = ""; + $v = ($delta_t / $total_per); + my $t = ($v >= 1 ? sprintf('%0.2f s/call', $v) : sprintf('%0.2f calls/s', 1/$v)); + + my $m = int @a; + if( my $total = ($v * $m) > $ENV{MAX_PERM_TIME} ) { + my $mpti = int ($ENV{MAX_PERM_TIME}/$v); + $mpti = 1 if $mpti < 1; + + @a = sort { (rand 1) <=> (rand 1) } @a; + @a = @a[ 0 .. $mpti ]; + + my $nc = int @a; + + $m = "$nc (reduced randomly from $m)"; + } + + unless( $shh ) { + warn " testing $m argument permutations for $function() $t\n" if $last_time != time; + } + $last_time = time; + } + + for my $a (@a) { + my $key = "@$a"; + my $args = $huge_cache{$key}; + $args = [map { ( ref $e[$_] and $e[$_]->isa("Crypt::PBC::Element") ? $e[$_]->clone->random : $e[$_]) } @$a] + if not defined $args; + $huge_cache{$key} = $args; + + for my $e (@e) { + next unless ref $e and $e->isa("Crypt::PBC::Element"); + + ## DEBUG ## open OUTPUT, ">>slamtest.log" or die $!; + ## DEBUG ## print OUTPUT "e=$e; function=$function; args=[@$args];\n"; + ## DEBUG ## close OUTPUT; + + eval '$e->random->' . $function . '(@$args)'; + + # We are just looking for segmentation faults for now + # so we ignore most $@ entirely. + + if( $@ and not $@ =~ m/(?:SCALAR ref|HASH ref|provide something|same group|int.provided.*accept|RHS|LHS|is not a bigint|must be.*(?:G1|G2|GT|Zr))/ ) { + open OUTPUT, ">>slamtest.log" or die $!; + warn " [logged] \$@=$@"; + print OUTPUT " function=$function; \$@=$@"; + close OUTPUT; + } + } + } + + $total_per += (int @a); + + ok( 1 ); +} + +# _permute {{{ +sub _permute { + my $num = shift; + my $arr = shift; + my $src = shift; + + unshift @$_, $src->[0] for @$arr; + + my $e = $#{ $arr }; + for my $i (1 .. $#$src) { + for my $j (0 .. $e) { + my $t = [@{ $arr->[$j] }]; + + $t->[0] = $i; + + push @$arr, $t; + } + } + + &_permute( $num-1, $arr, $src ) if $num > 1; +} +# }}} +# permute {{{ +sub permute { + my $anum = shift; croak "dumb number" unless $anum > 0; + my @ret = (); + + for my $num ( 1 .. $anum ) { + my @a = map {[$_]} @_; + + &_permute( $num-1, \@a, \@_ ) if $num > 1; + + push @ret, @a; + } + + return @ret; +} +# }}} +# slam_sort {{{ +sub slam_sort { + my ($c, $d) = ($slam_these{$a}, $slam_these{$b}); + + return $c <=> $d if $c != $d; + return $a cmp $b; +} +# }}} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t b/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t new file mode 100644 index 00000000..15da8d02 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t @@ -0,0 +1,40 @@ + +use strict; +use Test; +use Crypt::PBC; + +if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } + +eval "use Unix::Process"; +if( $@ ) { + plan tests => 1; + skip( 1 ); + exit 0; +} + +my $epochs = 50; # I tested this to 500 on my machine... 50 is prolly fine + +plan tests => $epochs; + +my $size = undef; +my $last = undef; +for (1 .. $epochs+4) { # we skip the first 4 (takes perl a while to calm down... *shrug*) + SCOPE1: { + my $pair = new Crypt::PBC("params_d.txt"); + + SCOPE2: { + my $G1 = $pair->init_G1->random; + my $G2 = $pair->init_G2->random; + my $GT = $pair->init_GT->random; + my $Zr = $pair->init_Zr->random; + } + } + + # This isn't the most accurate test in the whole wide world... + # so don't be too shocked if it fails. + $size = Unix::Process->vsz; + + ok( $size, $last ) if $_ > 4; + + $last = $size; +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/typemap b/scripts/crypt/Crypt-PBC-0.9000/typemap new file mode 100644 index 00000000..a190c7cf --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/typemap @@ -0,0 +1,41 @@ +TYPEMAP +pairing_t * PAIRINGT +element_t * ELEMENTT +mpz_t * MPZ + +INPUT +PAIRINGT + if (sv_derived_from($arg, \"Crypt::PBC::Pairing\")) { + IV tmp = SvIV((SV*)SvRV($arg)); + $var = ($type) tmp; + } + else + croak(\"$var is not of type Crypt::PBC::Pairing\") + +ELEMENTT + if (sv_derived_from($arg, \"Crypt::PBC::Element\")) { + IV tmp = SvIV((SV*)SvRV($arg)); + $var = ($type) tmp; + } + else + croak(\"$var is not of type Crypt::PBC::Element\") + +MPZ + /* this was cut and pasted directly from Math::BigInt::GMP -- the rest are obvious copies */ + if (sv_derived_from($arg, \"Math::BigInt::GMP\")) { + IV tmp = SvIV((SV*)SvRV($arg)); + $var = ($type) tmp; + } + else + croak(\"$var is not of type Math::BigInt::GMP\") + +OUTPUT +PAIRINGT + sv_setref_pv($arg, \"Crypt::PBC::Pairing\", (void*)$var); + +ELEMENTT + sv_setref_pv($arg, \"Crypt::PBC::Element\", (void*)$var); + +MPZ + /* this was cut and pasted directly from Math::BigInt::GMP -- the rest are obvious copies */ + sv_setref_pv($arg, \"Math::BigInt::GMP\", (void*)$var); diff --git a/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 b/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 new file mode 100644 index 00000000..e053a0cf --- /dev/null +++ b/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 @@ -0,0 +1,14 @@ +version : 0.5 +languages : % + C : C + Foo : Foo + foo : Foo +types : % + C : compiled + Foo : interpreted +modules : % + C : Inline::C + Foo : Inline::Foo +suffixes : % + C : so + Foo : foo diff --git a/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl b/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl new file mode 100644 index 00000000..b9214fb1 --- /dev/null +++ b/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl @@ -0,0 +1,22 @@ +md5 : 2a81306732376d1bc2ce778db69819a9 +name : CBitcoin_2a81 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Mon Jun 16 16:06:28 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so b/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..ca954fe26f88d1bf7eef4b1c2bc842f64c453924 GIT binary patch literal 55706 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 IKIi)X58;>CT>t<8 literal 0 HcmV?d00001 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist new file mode 100644 index 00000000..58d4c7c6 --- /dev/null +++ b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl new file mode 100644 index 00000000..4ff6b1c4 --- /dev/null +++ b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl @@ -0,0 +1,22 @@ +md5 : e4f163e84d3d64a84019106bfd0ab56a +name : CBitcoin_e4f1 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Mon Jun 16 16:22:24 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so new file mode 100755 index 0000000000000000000000000000000000000000..3d907a28649f81bf06951774dfd3d437cdf16329 GIT binary patch literal 83366 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%0A?Od^PZa&zgMhg3E~`_YkR( zY5AAnEJG1K_rll9Yc*s3GmxX3@A7@x^e%@~Gw$<_kmXPLzW*LRVLsITB6Kze_|HUzN>3yzw`{EV^#g3yucwgsb1UWGtIyrQM8726A^#87qsEeKM*4KuxO&F? zxm7sxmjPQ6rvvi{%*@R>$3!&HT-rna(;)k`8)X~Dr@83{j7KtUz=p^GSl&&8F=%-j z{sW-u=DO=IEzk8#0Xkd-Q*YDHx>nII#sY(Xq|<>0ojV(8-a*+HK=0 z$9`N!x`$*??}+~}nhu5@^Zy+2oqK(s%VC$IP8OCj#{4vfX6I4ge_xlUhx~`ZHk+G{ z(p0UkN#p(_Xy%T$toD5>&X@z&e*m-nu^c-3m0X6#=I z17(A^eEAJP!4s(bgGT7UU+KJ*dkTN$O?1@bTR zeVnBS{`^b5^x93xwtTJMyDCn<;-$djwUP*X9#i8p-%{Us>9s870z~^zgGT$o#@_0S zTFO}y*Na`EixMruUcF?NwqAIlf8`3+u>L%$_afBW7q@0WnsJ_W1~&`DS#il>@2cy; z?-wf;t-)GVDI*blz*kF?Uc4mk#q#AVm#e>6(JR*;d3sq~0=%0x z2w49s9({^SzCy=Aa=tVok3_Fjib!OTL~z4$l~ym!$6+uG%~I?A)iPvYdAzW)oHUWl z8$xXnHwlwFYtn3yAm$Z_GUuHEuaa;CdnbSQ6<_ zha(g^Vd=(`NSE%&kjD|da>X_wP$o)&;z=<*|&3bK9 zp`0r=^WmoXT|0su+cp*p<>vgxnR0W}RH0G#{`VyHh1L`CHlVa@)HpYYttXbK#7Jr5P8`YJ671oW--{ z{DMn@juhB>txjN6RAAj0f0u|6OE^-$rF;gL$Y-pH04tPzuOWcbL`onekeNNjka5$>zivTTJQMrOm@>3Xxo z2T`7z(+BMN!TpCqX}+Z1m(SP2dX#QBTMxJIa!J7sNdkbT)@jENNJZMzDh-keq!}6B zA6D`5b6Cz5tZL}r9(z5ZceQ`%%_mQ8+;evKo|Dh+-gC=m8U5uww>%i`IeE74GN5ls z@7cJdr}vNjzSR4Awp?^o-TseK=MQ)iM7aiTrcl0YpA~ci-Fk8Z);Z+q?VZ$#D0cJtyyB zYwnTOoZQn_M{EAn|484uuC2LxElb23X$X3IwypUh!=+LUZZnZc-wiHFvcb>t$xq(k zxxN%K^z=O?e{1~Pvw1awm3Vs>!7BN?qGt!Yy|ia=%?X4T{2~6lpl8>brMO1L@BPf( zJ(u}kI!ns)-<~g^U!U;%hPqSvs-FUt+5MhAN9B)#$}=Z-@9A6X>epfZ8^7^?Q~&!= zKX~oz*}h9#8t}OPk?sxnX|vhyNdrzi>zMzR_nv(a?Ko8L`_jq2F^t65{JuZz-jJX6 zNIbxXY&`L7(7P}+f)P2pceLlSwYNU|-G5TToJDi~&hHuY|8Ls!Hniu#o8O3$ImGFI zwr|g?-|(_Gpbg(#j5mI&L({vu?``+=uI$<3_tuAcSAL|o-glyR9H zFoQEVIWOI8Oz#Tv(3Fh`JEvGt{c%>PmjL%nR7+6JL0GGmE8gi4;)C;c&y;(E~5ieJ))I*enRN8VQojzFW* zC^U+pcXaf|(G!_y*j&rX*;1I7etDU(04h1)NxIpf7?x)mvoMT;=|ZiJ9^@9SJiUFR^ zfo1pz<5xS4I>PCom|Z|83ak>t)yURpBZlQUub!O?@wDD3R&v5T7;acF)*l<1T%}m4 z)xFY8P?@^ZD>aJ^FgmVMaij@Ya!_xHHN24{nS%#C3?K#xZLWLy5c39|MHgqv*&;gP zdN*IF1k=SVcrIO^1(UPqG8Xgo=9KjPOoiNl%MY9NVAPuuLudp^v$;lyW~D*E+-Y!u z@vL$s=S8MDRV?ISR(Va#{H+MJrpR=p5eSk)jnz32WES&fA_Sc{Ihu8j zIHt$`;X3#m!!1Gq&7!P8dxFaJG>mMo-o$Khf<%mAFm|QvRZEpBEO!*{MioTLg5$x4 zC^n!Va+4J0VDO~x5lyOd5m0AgWg5H4P z>L5$rt4}q9yok11vs|fyT2;^=vlqh`v`#<@0m!R>?3^xp^x}*GkD<*-)c`v-;(j_|)F`15H;x}mjij*n8rmW}n5O{6LIF|{LIfO) zaT*z(n9Xk4zQfB*9t|dkF_GNRrT2UDv*hl1kK}4pqG>ZrXf`}e>0`FH7t9C+De;1t z5R8tsPb72d*)v(pgjyY4LatzZbn@mSM-K&)qZ5Gt*F~_sJ&Fl*M-}K(`A04LHi-sYL$g}+@Ve|!&MFk6O&xYr^D%DB?}1;?FyQP zRWe+m3>7cB6k;NiEkG*Bf|0r#6mEbkG1XD4SI1zV$yYrREofigt74dj{-eTfLeR=M z@Wxfq-Ke^PvPFbYfqPD(7YnCD@210<(edMCFfgZZlB#mfY^W=azZ<(CC|4kuFtgJT z;20a>4Jbd=%@fd}SqNmAhBGB6a5<(~My(x;SQe5m?WDE{XE1#QTA8G)?ARt#)k@^V3HI&Ze{^(WLi@_L!>l3O zE-bKfm{Zd=kumuYk`!~t1Cd3@qvRsmIt>Xz+Rp?|)^eIO#k_LEU6a|2XXFXGGE@RX zUkUS+;jk$|i-?+~?n&nhPOsn#Si)as38DGSF*0^!d^E`HJG$>MnoU87x0iysMiw=g zkRKTaf7}>0VwJ+$Yhkr0jv5$lIS(QZU$jJr(`AT6Xkq+qnWaHU*)KYy5tK1mp`o2( zI{*?x1W-MLK(Lv>ZIp3Iti)aNtmUIv63vL|?*Led4yZcI05**yJLN~A0Yyop6EeF5 z&I}r-IqgL*RH|ZiG`tclg0RMEZ0rgPgu+YAMKr6fw9P>agSu!J{4UerN#T~lD<~S( zT!WUOUxnfiR+~xQt~_Xb6Qqwo>0IWp6iT#U_e1ebR%}5*hZfjYL8zWT;M?(34#GQ83G#LPewwmqNl| zH2Z04^5b~8r1;2z0~4bdX3WC|=q0MVruOMfu`&gDlZOz+^E}pi7;dV{DtJo_wvpij zkX>AKIC`M*Tn8FMi!Fg!804^Qfo>y7VSzdh2Pe6DM6g1vwhF+knKF(%Vj@$&V`(Ha zqJ%bK0W)=HuF{mzYu2g0Q7R~!gN;#uxdf?>;lc-PF`Y22p#RXcGc^bUp#`}W9j_Uq zI&q7fGNIB?g065`Ur4Q_1cnm{A;xLuaQz1s7Xo3}Vc5d95wXBJ&tz*D=bSaI?u{HA z9XXUak{+LA!|)|!wbyj%VJ1DS3fS?GNE~32mx~r~altL-o3fY}rU#1)m7%YkW`N-{ zUoF7UK>2CTF|3;1GInGbvK&G^O$`E(3G)RKTPzbDaEJxzK{J@f|98no7 zw4Z_*=BzN5RF35XY&MkNsGJVVCs8goIp4qJq@a2^bEoM@vaV60<}QpA!Ko&vXHz+s~W zQ<%o8k^@H#1{p@-DK-`eFH_CA&1Ci!!F4u2v3hVrgz1DbQL_29oWi7S;7lJ%m&91R zMP$-j#m-TwsvRh;!KaxM%6MXO-_c21y$XBFq~7P8QIrrz)0xr3`>)-x`5?Q2(yApI zYMfk6FHgHw<@1SvYyx@Zrmh%RBCLeb)P$E+RCPP}KC!TbB}g4+GZ5^=V)9}`NSkY5 z{Yur@1`w5Qj)8&mg?aD**8&(qonxZLZD$DHm)0frY`h3^w$xT?awNlwQUr>d;;lwU zp?qc*V>Vv~JAiM=^l)TWX`Bcc8bG?MPdc4 zT&qLIN5W18idr==U_eSbs!A~1xpon)Mh^`Nn8njN{Cn~s*+i#H1M~*m&yj+@8%~4L zm?hHeNXpT}iV|QAVukBmXKqe) z*e;Apn%Yv-C%D6LFV}i1A*x;zIuZU^nAeoi=H19wxcCy1R6w=}%^9Jc+K-j!TsT5+ zTTE6JLC%HfS{!virdj*4dMF3RAhS4*=U;d^;9a5@1hmFKI+#%ix)0-DOl$D)ogv26 zRx&bCAyDCAmKi4w6!^hKw$Z2HSPg|xuz?rSum>R$#R#V>PqZYe5f3-z7~YS8BSD1- zO-rs6K`Z5Fu8UkIN)*>ytnJEdXSM;prfV)8kFFP-rg@FrC>w(^b_B-j$S|0K3r^?Z zqhxJiF4PLSf^7#`yg{>I93d!=j*gB`9))cV$9z!7{G`oawQbKKn+&sN3>VAt@_TrVnj+2ZMMJ)_EhOprp&Rhv6-v9=eEGG1jI%aox@Vm3DCL>L!ms=gzrI7W6m;%ZNQacw5fyoFli_( zxdOnt00LQaOp^8BUJmc#ToI;stOjF89*}X-PZ(hk%9RBn2v|rM1Dg`?$(kD;#%T#9 zL~h(;4{+$vrlF=D~My{ zB)3Z@`v;T?m@}?rT27?B!#5ts#({F0 zSn0Z>dwAcC>5)io!gxi|4bnvn5Aq?DNtS1KfRZCt!gVUn=FULNa)!xd0PnhO58>x* z5fX*oZ;B5|k6z0z6J#TdKf3wJ>llBxJhF{H+C7kJvdVIUB6>!QF6aMs6DC`PXWN5F z##ZG1VYn&5VVIE#QQ=e^25p8iT%@#&MXNA!HW1q^TAX%j9cCTe@GS&I>&32RccPV& z(-6{M?A5?EP5B9h2%fFvn`#%(Cqj*;j;Cn8JLi{f&vU=XnYT{bqa65{oUTHk_N`hC ze@4sdC7P=*nPgzP56Sb+}1 z{KOs;tV>#KM+?=kl*ei!TDNdntt%I42?rQflDY4AR^E?m~h!#F067zJTu3+nviF)zn+33viGU@sSWeU#zh;()ae;<(+C^6 zbqC7Ao*HC}o5Q;0tkgB>4@HB?kXTHqI<*#JL3Q%v#N^4$DCRb2EL)BqsuQ5@mEr!2 z?P9l*6mddgM6MqdcyOa(W$oo;(})K%oGYh=2Zbzjdyp$pNVmWqtoG3n`)pyXCbDH;hX6BZ5@db*(Dnx4a%Gy_J* z_fww~v3#Yk22FQ|8AN-~kQQyBTr8(eIJ4-VfYfpOsLqXxmN_FHLQ;-sz|@0d*9n1{ zTDCfime6i@233g$mF%fEup5Hn#2ki9t>xkKL&vxd0)xT~!p1R09ZagzkS;lxiDCyw zE^4lGxTeFHrbQwPi#KovfWAzVX^>+=9CRgjT0Cv^iPRdh6vPHq{cy7ZKPme?oyB>W z3LG2MCM5OjHn^yJD00>|06UV5Yi2QQ|cNaJWa zVQT$E2Y8`Aanz)~DM(YZg`1|DSh#FzUyjH!lCF8K3dCH9b{uamG-f%kM!1g)T0o(g zdYvgam7!*wNMno#79egtpXaivYCHL~6?h&30}FvCL&4>>9WQkb6+PNh7w(}YiGC)m z(WA%4A&&|((^dz4x;|aNdF{G4aeU;+VQlP; zf|{jDV-`*?&_NGDph7X$y!jasz7TCrCW@D>MK;jbplgkuHJJjcST7`C!j34BJ zoXmE^CWj7qY(vhhqZa1~;s&qG7@0d*yMg4@lCxUGradigjo2?B4lKxQY=o&-jan;m z0XQMX<*F;6CxM)&GJS@wQm*!CIZtCU)0GU3CQ@`1vStj1=BR8awK6gtXgW?51$qoX z$VzXg1m5k{G^(^Kw1PTNp*hdn`7*9yoMo_{|3q0+494wKA zg&dyZ`KD`kfcbC=N49jMwO37Cj`Reed!QThfJb=FO)SxL9bQW8;5h$19fY!BmXh<5 zkxPRH6l@w{D7Vzn9Sg{na<-1MIXv9XDeMm12p?0V(QhGsf6*9jfU&NjilX(0G9i3q z{yRU1hkk|h-_X~?`OKC>A5o#vUk;WBDIc!mbsYPF;slu-8w&pfdL@&T4a9n^$RjwMx3DZg4304#G!XtKeoWxaANlIj69(PT_A zjq{sfN^*d}zFcfJupJxELNwY@kun_4ggOpNY30@wWG`XgH%GPPwVuwx5r-Qm5At}B z8mVppEV8{(nZe0Ru4b)<_?V0su_dKuocmOWELXf%MoYvbYh+&BEuIEnw5dae`<*OcBhKfCqft8B+2Mm!90+p&)f@CoI1p< zgcEZ`*e5uQ6XGm4IKS@crjFPw!aO5xHj}+Dov}&Jk#ycs@&j~zwTMZPo`MQKEn<*V zrGtxGCY&f}mMd31Au!h6s*@^wn#W);J>21KHrerL0|z6)jm^ER)rpMEhV6-`| z9$i^55S?LPorBY(m46P5PL3Qzk1=m`BTwcj{c;s^8Gt-E;sK^?J=Nk4<@Yh$+#O?8H^XW4cBil-oiB8 zfWbG$xRk+%V%&hiV==DZ;KMPFuZ?&8U7%RsJ7%C|TjJqsG7q-rx=;}>jxuHpydgpz zZ_jnPBCd>*WDK+(_})Z&E-P?2&SjwW(f5uUXzljBOnX6w;5`rgaU=}B*`bK*H~7{V zH(>CGV_eGMM`GN7!G9Lx`VIbz7}qfp);6OVM#4bL)_o*SYoQel(QgCa9-%sDdR8C( zYLp~n;QJ$#H9!%bX9d11N|G_q`rT#xtiTV%xePSQVEhdHM3jm*eYE@@)7al?$ni7y z^D(a9;IG8E0fQfpaVdkJh;f4kukLY3)Uny%H8F0`;B_%BW$^kKH(>BUjO#Zz732C0 zF2=ac+N>zB{y(W0@Q8tytvioc#;2l;lLqcnQRI843_PYyU|Ew7TFh!d!l*$C{JVx1 zM`hjqH3grIP{$4I)#7`-xxNm$^50gr=Iin9l9$1WHmSM9t3HFvR5S&@Xw9GR-DaRw z4z7BkRu;FugQ=Hk0V_4U!21QSFSVgB_0p{yssl?ed(a*XXo6MA1m0yGeVEg94{PXq zw_m5tFk%AbS{?tj)E|j*WehZa>5}VRn%Y11(#3F73=XX&Eop`p`WClVwdV+94~z_g-$`+oE=z zGB8=z%R9=tUo*Tt%9t_mOA)Grtv;ZSJ{l#-82J4N)ghOyz$c<483UI@H0Y?y3jCiq zmw~IJTpe{;fqhYujDhPT)Num`BUFc6=2e{h@#C}nk$Vi@7UTL2=4WX&-GITnV_eGM z>to!Y!FyudW`p;|xLpRn2yeRc*Xx~m%(KYFibMl<8T{fHx7pyA#JE9&Q!y@O@MSS> zz~BuruHWFn7}sa;Z{o%NsDTcQ{~AU4SvUSLhYYlQ-RF>H9FH{t>hAUM&8K$a3ewRi z{@YM$87ui-VEIl(;}pc{9rQ8H^=L%vjDg0xT?Xx)n%Y>ti!#}uNv@3xZm;_}ePn&@ zrf<$EKfO;wN(_Uaj&Ui2zZ2s+^o^DECz=Lx#X!r}eXcyL86Jr;W(@pNgzDgpPwJyj zM@cdUJ{h4pWUUqWM3f|B;I|^waRa{{p*m!(_X0=n9t%M^gO|j(euJ0AxB-LDk8vr3 zm&dq4gGZFs)cgkX+tK_1H)!yI7?(2mV2m3u_@)@wZ*V5Y^%?v?jO(z0t^ez^y%=o+ zEnD}|wu}Q&#z_P3icqHve3drA2|SBg4PEBWOSFtbQCYXI)-tZpkg`X??HYC!c-LqV zn>D1sGkBNcoWQf#{;1O147AEo=^?EwZhZ$+U#A7^(Xd0{*@J_c;Q0jJLz?a>4Pm-Y zYcq_PU94G4{clmOjDf~4U2;94sg3ozh^?!&ZX-oknWSlcS3}AqgWn$G`VD?Zj2kfc z$rzV1_^B8-VDPtMT))Bp9^({pGmU@GDdyc8g6j>mY~8v3k2S*wql_5?pNLQ$?C@!Q z^jA@mjDgmJF6(?N@N01{1FetXMgyOYQgz6b1|;p;Jq=f&*0a`xDFX-{a>=o zm59{t-h}lJ2S?aGwxiSVCzjVpo@p^F>b)% z|B7)bgMSp`1`WP;g=;)zoWWaS+@QhRVqD7L9Wide;9W7U-{8G5uFv4t$GA=zr|n#_ z+_jA|PC?7oeYBs^jD1nYNdvPH>Xd;^ZGy@;jad!dWSo|b&+u|)VhrnU1gl6d839R;}m{NjO#b}{uno4 z@Il;D%b$3UERt3v3LG%_rWn_6@SzyjXK*H2pesB6d!M%8k2J(wFwpXKp9>$<3?GX! zW(>5(fN$E{&_%5Mg%-Mjr^n&gwe~vR)odP|o1V7}sy` z$rv|a@GUVeWiUUE!5>C!(BL=Y!fM5BHuyJU+@Qg~72{F{zct1U82sBYuHWEuF|N z4Z%zXzDiMDh2bw~5x=A%g`vT(QJfQo7W<8;(%THQ%2Db4T3Ous4q^CfTEH7L>=1_b z;H{eA`GnyQG~KSK@3%j!pb@i+ShLjEN4YWv8ozYOb+x88*6Sh+e_oRqDY^;6XEe>X zHKZ^!_`5N#-{2p_xB-Jdrbhxq7+T~JMN$|V{AV$)-{6nOxITkFnJm!F#`v$bc!egy zTrkk`b)O4sG{gERW5&R1BGhpMk4C5t)9ey`bZL|%W8nP}szZjoMjyRCN|G_qXaTlu zCqWlkY;`;s7i6Fj8d9~hppF(jrUm@1h8%l?KOf`z4gN}u8!-6s7?(2mi5NF%@Y>aG z1X0IkgV)8lL4()FxRk*IF>b)%7sa@KgHtiC&){N=>yWC}|0lJ*;3NYrTX#;fj88=w zCk@=!@A?U0Y2Yz!f|IHivl_Zc)qmGwFOJH({TmAMpP_CGA&@Gh8W@XaG6ovIbjkG|O>L~#MXLTtlNc$wN!6;h?=>27W*Pj$7?(2m$1$#B*=uF} zqNV|t8fe+NbLoAW;Vn_djDb%@s1BjTXzOA!VN?j zCk?zSLY*@3RoVn6#w=zvbP;1O(J~H2W!-*(mT|d;kSGRjRa93oc8wOXSwo63gLf&; zi7|`qk1D;*K&u>;@>?SO#jWq)=G;i0CV$9&*k8%A5zaz#C82ru{mooUF z7&mC}S1xozLIc6z$79@}!C#GWDTDt$#tj(!^%&Q0@Hb*yhnTg#{;{?Vv&cZp)_oRP z#t%jrCk;$y>^y?>QO)pFl(B;eKckQST0`=^!Cz3E<9myJBP#4R1MksZcbTGJ)YOk_ z*umuX;GZ1sW0X2<=$r*S)mmeMmyb`;JP82?=?U%%#yQ#$C4 zdbGmMlKe=IAJ{PjJ8xr$R@(C~(ez6-T&Lk~4F_~D{t^xE&~UNx7HbE-Bh~eHtL|Rf z*6@|ey0&F$o8q=@+Fr9D{)3ww6Ad`)pFX?dqcP> zi?1&a;l(Z&;(luf;riil2p?k_k{6^m;x#yl$&2?x`31RSOG3QpAy4$`l9ot-XEnSY z#)Jx0@t*RK+{HX3uT>09BZ6lYc~NC3oOPE52eWvgHHx_$`ofpwF!;_KlA-i$2^ZQ8 z;l5V+GbFXR5~uLq`w(6RDe;BcA@@!ct_s83Xu!Luyw+}yrttpDoIR1ZZS@H#6QS`Q zj$*Z>4$}UAA}&UHN(+;O_o-;La6?;pD#0S`7C@9jmj6SV-@;w`!19>{vG@@3e*d}W zDwh8l6}=Wdis$@Uddu&y_y8LKN(0OPeobiMmsPY{8!bOR+z|DH><|9YKb7QRVSTKlaY3yZZN@TCA4`z_P8plul&} z->MC^`rG?oZp;56ow62wT{AKuY1;G81IH?q%-&m-uokvUIBN&8$ghsS$^7rv{1#@E zA2hi+BBJo_w)~#GGNj>?>n*1XRgy-?d)o3pNruMHLe*>ziNEdbe=Trqzh?971K<|+ zEB&niqo1M4AB1iEylt9N!{4`z8n)Me4)|pLhcuss-)*Cx)o;bV8vw`1lAYU?l1Jxu zNf3>VPyFq()9#BK6tFH{$0CMz(B6-mcXmJAo^?hE&KwWB-{Ux=6^`@n;f(PET4sc-_ zrY(u2Jnt%(@=#lbwy3lxl3ms)gqf`_WmWa*<-l#lKO^UWrloxCR{x_nxco&^ESkQ( zenoc;deJ(wW0DDaA#K~|C7<`=KeIbp(=YMNo@m9N=b4?*ieKuP{%^&NpJco@t_yl*z`>T zjq+D}rcYY&Ydq5vt@yQ`$^TaTI?v>KEB->r=~NOWaId%CGdY}m*y~;7nS5=<4|paw zTk$VUMkBb_dr<@@fnJZ+bmy*FKNgmZjHwNgKvRd%d4o1fS}_bDs2go#W2= zzQp_XbL|<(9=_K}|Esi|R2%=?p!nz&Z7uNSiodTd{S5HF7t`71@toj0`Qdl8oX6VA zd6%T`qMZ_4f%Wr{8<4+6jot&*{TXI(!dLebB9)ua=`DKKQDge=bsdJHKrZ z{I{QL=jV;UuhBLngONq>dEhTgCRCU&imt)9KXau+Jb*ZVuQL4AF8+BJc)tyNzrxAj z4;I0HcoF>PfKMe0Q1~Af!G9n4Zv9;XWzr3QiQqfs)#Zz%-wJ%Uehn{@{`eyJg5Xzp zRh@bt)_(oMBIUnU(|em-LZkl!z^62CGWd|BPhuSW*+uYww@5kvDd|^u_vyHw)FOWj z{AHcRdoP00?MCOT1;4_3>=KvB+P`;^^oKS5Ikj{4p+5d{iuX3SxRvuui!E2w|a5K8E#IWDY?5xahq(8ALqdxQoKk%xM}2QFqXzA z+5&uz6IUwX20(rVq{IusasMwaJ?cQ=ny*UWuGkFn4c=CsZQ`~lTyR&!*Uj=nJ2qd( zn~u69!p%TsTo}h&lzD9(?r)XPzTw_FUY#DOKUZS7WUGL$Ve^9lvP~U(j*mG=ht*_`QgzBk~=IMXz&|5kcbCi_xTJVH>&2 z%6+@2y~iD&BIt5Symbp#q2UH#qX}>6b>HC)(vydAx0o>*Mu%KCDOb&D5BA4b&x2dS zu(cUdK-cU_c-(A1pJgxQvudrGwT6l41Buo^YjzkZJq3KlZx|?V}rHUFO8i%dMZWv3eJy{9@k=v0*_!^_p{OWapJ< z@km)!9iQFmKqQNraJK-q&=Vhk;b$mtM;ouDSHjxmhSD-z(#5;;q@aitEtlzb`RY#l zJ!$b!Z^Os(x_q))if_4%mgA!>mWTFDu=uv`M0@pfeDOSUmoxG+6x~a9H}xCow?y~j z8D+bQi1_Pqmdy1f!4k%2QgYihlYzU4Rvuvxa7%XEhgv~*?eU`JcKbS?Nay&jzv#xz F{|82~oq+%V literal 0 HcmV?d00001 diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist b/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist new file mode 100644 index 00000000..670221dd --- /dev/null +++ b/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl b/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl new file mode 100644 index 00000000..79364485 --- /dev/null +++ b/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl @@ -0,0 +1,22 @@ +md5 : 2a81306732376d1bc2ce778db69819a9 +name : coin_pl_2a81 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Mon Jun 16 16:13:13 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..aa9cd81344777f02a242b094510dffb24b8a2f55 GIT binary patch literal 56177 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 literal 0 HcmV?d00001 diff --git a/scripts/module/CBitcoin/CBitcoin.c b/scripts/module/CBitcoin/CBitcoin.c index 4feafaee..fc6ed517 100644 --- a/scripts/module/CBitcoin/CBitcoin.c +++ b/scripts/module/CBitcoin/CBitcoin.c @@ -10,11 +10,23 @@ #include "EXTERN.h" #include "perl.h" #include "XSUB.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + #include "ppport.h" -#line 18 "CBitcoin.c" +#line 30 "CBitcoin.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -66,7 +78,7 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 70 "CBitcoin.c" +#line 82 "CBitcoin.c" XS(XS_CBitcoin_hello); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin_hello) @@ -79,9 +91,9 @@ XS(XS_CBitcoin_hello) if (items != 0) croak_xs_usage(cv, ""); { -#line 13 "CBitcoin.xs" +#line 25 "CBitcoin.xs" printf("Hello, world!\n"); -#line 85 "CBitcoin.c" +#line 97 "CBitcoin.c" } XSRETURN_EMPTY; } @@ -101,9 +113,42 @@ XS(XS_CBitcoin_is_even) int input = (int)SvIV(ST(0)); int RETVAL; dXSTARG; -#line 20 "CBitcoin.xs" +#line 31 "CBitcoin.xs" RETVAL = (input % 2 == 0); -#line 107 "CBitcoin.c" +#line 119 "CBitcoin.c" + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin_newMasterKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin_newMasterKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + int RETVAL; + dXSTARG; +#line 39 "CBitcoin.xs" + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + RETVAL = 1; +#line 152 "CBitcoin.c" XSprePUSH; PUSHi((IV)RETVAL); } XSRETURN(1); @@ -135,6 +180,7 @@ XS(boot_CBitcoin) newXS("CBitcoin::hello", XS_CBitcoin_hello, file); newXS("CBitcoin::is_even", XS_CBitcoin_is_even, file); + newXS("CBitcoin::newMasterKey", XS_CBitcoin_newMasterKey, file); #if (PERL_REVISION == 5 && PERL_VERSION >= 9) if (PL_unitcheckav) call_list(PL_scopestack_ix, PL_unitcheckav); diff --git a/scripts/module/CBitcoin/CBitcoin.o b/scripts/module/CBitcoin/CBitcoin.o index c34075a5e887842fb29a1c9f12836a5238583b76..2085dc5eb81abbb731c891098b21bbd064b8dde5 100644 GIT binary patch literal 85128 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

Yho#4NT1ZOcPOGdP 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 kUH2h8T!0@reeu~5}?cM(Jf1o(T2><{9 diff --git a/scripts/module/CBitcoin/CBitcoin.xs b/scripts/module/CBitcoin/CBitcoin.xs index 43e62158..d80c7fea 100644 --- a/scripts/module/CBitcoin/CBitcoin.xs +++ b/scripts/module/CBitcoin/CBitcoin.xs @@ -1,6 +1,18 @@ #include "EXTERN.h" #include "perl.h" #include "XSUB.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + #include "ppport.h" @@ -12,7 +24,6 @@ hello() CODE: printf("Hello, world!\n"); - int is_even(input) int input @@ -20,3 +31,22 @@ CODE: RETVAL = (input % 2 == 0); OUTPUT: RETVAL + +int +newMasterKey(arg) + int arg +CODE: + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + #RETVAL = (char *)CBByteArrayGetData(str); + RETVAL = 1; +OUTPUT: + RETVAL diff --git a/scripts/module/CBitcoin/Makefile.PL b/scripts/module/CBitcoin/Makefile.PL index 25dc0489..72447001 100644 --- a/scripts/module/CBitcoin/Makefile.PL +++ b/scripts/module/CBitcoin/Makefile.PL @@ -9,7 +9,7 @@ WriteMakefile( ($] >= 5.005 ? ## Add these new keywords supported since 5.005 (ABSTRACT_FROM => 'lib/CBitcoin.pm', # retrieve abstract from module AUTHOR => 'Joel DeJesus ') : ()), - LIBS => [''], # e.g., '-lm' + LIBS => ['-lcbitcoin.2.0','-lcbitcoin-network.2.0','-lcbitcoin-storage.2.0','-lcbitcoin-threads.2.0','-lpthread','-lcbitcoin-logging.2.0','-lcbitcoin-crypto.2.0','-lcrypto','-lcbitcoin.2.0','-lcbitcoin-file-ec.2.0','-lcbitcoin-rand.2.0'], # e.g., '-lm' DEFINE => '', # e.g., '-DHAVE_SOMETHING' INC => '-I.', # e.g., '-I. -I/usr/include/other' # Un-comment this if you add C files to link with later: diff --git a/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so b/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so index d68767991fd9f0daf1dd5b8619f23337e8ae4132..a1649b9f587cc7bfe06ddbf52f803a9eb80392a0 100755 GIT binary patch literal 53492 zcmd3Pd3;pW8TP$*hH$c-?2`ck88QJ9mJs$BKtoteAVOqOT!$<}63Av|0zs`rL1hu8 zN)@bDY}KM&#MW9|T4`O1t!=4Ri+01d+F;eIKThbS0bMriqk%G=_>1~F)y{gzU86Z zTV7lAge9HV;S3vWE~_Zu(&drtAqhaNiPtz(z0E_is?+w%42 z|1H0{<4Dr4|M2+hX!fNqkCkGH&k5id1|;vFe|--HUsOH}?J3jGzfPgxi^?DWl5*-K zfPbHV9rzOZ`_S-<___W|%0cD}>35>yi|8Cj`!C}ElP@d(5<2gEN%>Tie-Zshzoh*? zzhvC{FKOR^_5u9+{Ogw}_@Z$uP#*YvW8ms9p}!n;u8$>lyYNfem%>Rht+zj0JuHye z+?r#`*L<%0d!UmI?>uUl-3827FaEK-n+}K9KTLV~m(Ztfv%kR3>5JJ`y0wM@BH?wF z8F!5_irWnRn@u@7sn;`ZpHQf!qpLF%i8k~^Lm?~F*4Y-dLTmA6g=$xx6>1Lmgj?Do z(Qwbov*x#Vb%s|qG`5Fz-51w{n)(_@prO6(QZ!t=A++33nBU$IiG(B8>J_2+)oszH zuC~rlXL#dT4J5xLyveGs3q@OdLhEtajf-$YbEqX8jdX{b+Sax;S@q$b_E2O)XlmPr z(AxHfmWVaKdTDrL%>wqFU#;HH40ncm8lquM)aqzxZ|`byD_4Yj+Q3#MY_07Hhjs7y zt>LEik=~B#P0?^7E~+`w}%@d;bo2M!cEZ_Q;~4AZG%P~ zEg_&-4W`)9)e~)K*CkCoT@C9)eUVUaq@g7|NEmIAPRRlY1jQlOf`U_Q~jPomp2~JwG%R{b#rqhIbfu?C;U0mmdoRPAKQP=f2h?loz>$cyCQ8ch_51cPEr{{dQk{3FTaC-B*7?IoD$MwJo8X zd4v1folri^EyVjlQ_eXVk*V543FYn@&Wghc0!5#C;7UlqW9jClkuuyoG&EC6pVLYf?tPoGO;!)r_rF;|HbM-^U2OcObASm8!un#PHP3ZG9* zlQ^+o;pN0Mg%i6KUQA3AIMJ_gH8It2qFdogVw%EMrixD-1g4y8b`E(zC1BNDeK_iTc2o&`xBIHuHRK37)a;u32;NrJl%A^D z{%XyZQ*xto(G%!+o9Xz@MV}p~KG6QFy8VuX_CGu2soDPXnxDOXMvZ;6X8Y4Mzx%XT z_0QX*`ac&%|G%++|J<|D&*~jlvt{mP)M3c&uSU~qcFvuO@_|X1@jxs7T=evi5)|0) zKCzasvW&v5m=eupZl*xDXd#%JY?#Yg1^)j#6w}!L>SsqUI&m%toLG)OyLZn!ciuVk zR@H8Qf8NSfE3`019!(BdJ7*8r5YNupbvw%kKKulN+F9QX)KpZn<#lh(_WJIDS5#@0 zf9LFZyV{HG#k;)6YfGQ5+kUbJ)7^5)&bYcAW;pPOX;#zpCi?H1^QK~Rr+46ks&upo zvdzsgQgu6v2L`SMe1s-jv;7x!+g}?P2MmU~bt|!R_6JqLK*rWnXfbess;k?%CUc

yV?g%4g3!H5e@{F+58eToA<$j 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 PlVQ}Fgjr#zer)G|faNO6 literal 47830 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

iZhiM7=zRi1REu+Kq_ZvTy9OCXPARJ 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%0DoH%e-%C{=Gn9_= znNT9b)0Xp-7|$H%9WlPcaXt~_mlyMd7{8(z|6}~hVqA~$s~pGc7{9t0hhzMjVw{cf zYaPeU7{AVOJdE+3j^kX6?<&Tz7~kzUF2#7malDD~J;ituhq=JM%tXQM}wA-m!EVGU*K5`v_x4mr}p_26$Dy>gxNQrqghz8$sd-{-}7l9ez{1 z+<*R7e0z}g&kPkDaeGVsYPaIsgS3C%1w1JVQkG4qs_`Shn<^0>mVn#TBRcVhrn5ar z`}vzHUw#g}t@2S48tK>IA8I=2Z+5--)%OeF&2lpCd`&t(SvuVE>|5jhStFlee5h)- zT{ZZKF(SJsfC3L8A z=&ChT3dDFkx6d#d!!p()Y^24~%tWcrs>OZ`DlL!Zuwg*CeI*#4KiQML24I8k@&nHu zo}7iPQ=WHcrzm}J=E?n&Gr6~H&%2W_h0XnXTIGHNy3&S~v%n^Ax;qQK9JUOSmZs{e zk%8D+b~*=VruR?fHnNGh?ox^Pnt`=(@}n?|NJkPdbP0t diff --git a/scripts/module/hello.pm b/scripts/module/hello.pm new file mode 100644 index 00000000..33c66b14 --- /dev/null +++ b/scripts/module/hello.pm @@ -0,0 +1,6 @@ +#!/usr/bin/perl +use ExtUtils::testlib; +use CBitcoin; +CBitcoin::hello(); + +CBitcoin::newMasterKey(1); From 043ac9d71b3389fa4fe3f5f9e96321c9aed8c97e Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 19 Jun 2014 14:44:01 +0900 Subject: [PATCH 007/127] doing full node test --- library/test/testCBAccounter.c | 2 +- .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl | 22 + .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.so | Bin 0 -> 55706 bytes scripts/_Inline/lib/auto/FOO_2a81/.packlist | 1 + .../_Inline/lib/auto/FOO_2a81/FOO_2a81.inl | 22 + scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so | Bin 0 -> 56145 bytes scripts/_Inline/lib/auto/FOO_8632/.packlist | 1 + .../_Inline/lib/auto/FOO_8632/FOO_8632.inl | 22 + scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so | Bin 0 -> 42766 bytes scripts/_Inline/lib/auto/FOO_94f3/.packlist | 1 + .../_Inline/lib/auto/FOO_94f3/FOO_94f3.inl | 22 + scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.so | Bin 0 -> 48965 bytes scripts/_Inline/lib/auto/FOO_a221/.packlist | 1 + .../_Inline/lib/auto/FOO_a221/FOO_a221.inl | 22 + scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so | Bin 0 -> 42766 bytes scripts/_Inline/lib/auto/FOO_b0b4/.packlist | 1 + .../_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl | 22 + scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so | Bin 0 -> 49560 bytes .../_Inline/lib/auto/coin_pl_94f3/.packlist | 1 + .../lib/auto/coin_pl_94f3/coin_pl_94f3.inl | 22 + .../lib/auto/coin_pl_94f3/coin_pl_94f3.so | Bin 0 -> 49005 bytes .../_Inline/lib/auto/coin_pl_b0b4/.packlist | 1 + .../lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl | 22 + .../lib/auto/coin_pl_b0b4/coin_pl_b0b4.so | Bin 0 -> 49592 bytes scripts/coin.pl | 1681 ++++++++++++++++- 25 files changed, 1844 insertions(+), 22 deletions(-) create mode 100644 scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl create mode 100755 scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so create mode 100644 scripts/_Inline/lib/auto/FOO_2a81/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.inl create mode 100755 scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so create mode 100644 scripts/_Inline/lib/auto/FOO_8632/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_8632/FOO_8632.inl create mode 100755 scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so create mode 100644 scripts/_Inline/lib/auto/FOO_94f3/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.inl create mode 100755 scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.so create mode 100644 scripts/_Inline/lib/auto/FOO_a221/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl create mode 100755 scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so create mode 100644 scripts/_Inline/lib/auto/FOO_b0b4/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl create mode 100755 scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_94f3/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_b0b4/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.so diff --git a/library/test/testCBAccounter.c b/library/test/testCBAccounter.c index ce3a314c..8a812b91 100644 --- a/library/test/testCBAccounter.c +++ b/library/test/testCBAccounter.c @@ -111,7 +111,7 @@ int main(){ remove("./cbitcoin/val_0.dat"); CBDepObject storage; CBDepObject database; - CBNewStorageDatabase(&database, "./", 10000000, 10000000); + CBNewStorageDatabase(&database, ".", 10000000, 10000000); if (! CBNewAccounterStorage(&storage, database)){ printf("NEW ACCOUNTER STORAGE FAIL\n"); return 1; diff --git a/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl b/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl new file mode 100644 index 00000000..dbf31940 --- /dev/null +++ b/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl @@ -0,0 +1,22 @@ +md5 : 2a81306732376d1bc2ce778db69819a9 +name : CBitcoin_2a81 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:12:11 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so b/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..ca954fe26f88d1bf7eef4b1c2bc842f64c453924 GIT binary patch literal 55706 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 IKIi)X58;>CT>t<8 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_2a81/.packlist b/scripts/_Inline/lib/auto/FOO_2a81/.packlist new file mode 100644 index 00000000..24af9787 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2a81/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so diff --git a/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.inl b/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.inl new file mode 100644 index 00000000..b9601333 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.inl @@ -0,0 +1,22 @@ +md5 : 2a81306732376d1bc2ce778db69819a9 +name : FOO_2a81 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:12:05 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so b/scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so new file mode 100755 index 0000000000000000000000000000000000000000..594c39c7836c85be84f9d55e66dfb688f428bd3b GIT binary patch literal 56145 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

i@qC?#q=OjA!>6 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 ACIA2c literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_8632/.packlist b/scripts/_Inline/lib/auto/FOO_8632/.packlist new file mode 100644 index 00000000..f011af65 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_8632/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so diff --git a/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.inl b/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.inl new file mode 100644 index 00000000..761c1b64 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.inl @@ -0,0 +1,22 @@ +md5 : 8632ca7cede42534ab237d19bcfed955 +name : FOO_8632 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:54:50 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so b/scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so new file mode 100755 index 0000000000000000000000000000000000000000..f727a1e68faa697e7cb926df52babceb93b63fc2 GIT binary patch literal 42766 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 Spcqhd`am|y=@Z%qZ~g_k*+k0# literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_a221/.packlist b/scripts/_Inline/lib/auto/FOO_a221/.packlist new file mode 100644 index 00000000..9167ce13 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_a221/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so diff --git a/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl b/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl new file mode 100644 index 00000000..ad688b6e --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl @@ -0,0 +1,22 @@ +md5 : a221847cec3495156c1bc17a87f79421 +name : FOO_a221 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:28:30 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so b/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so new file mode 100755 index 0000000000000000000000000000000000000000..d0942dc8e151e71aec87b00db0242b507aef87ee GIT binary patch literal 42766 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/.packlist b/scripts/_Inline/lib/auto/FOO_b0b4/.packlist new file mode 100644 index 00000000..6beb2472 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_b0b4/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl b/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl new file mode 100644 index 00000000..43468d4d --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl @@ -0,0 +1,22 @@ +md5 : b0b47b4481de0ac4995dd0971ac23d1d +name : FOO_b0b4 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:57:56 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so b/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so new file mode 100755 index 0000000000000000000000000000000000000000..2380954bd12de05843aceb093289051fbceb9894 GIT binary patch literal 49560 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_94f3/.packlist b/scripts/_Inline/lib/auto/coin_pl_94f3/.packlist new file mode 100644 index 00000000..121a69f7 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_94f3/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.so diff --git a/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.inl b/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.inl new file mode 100644 index 00000000..9b1e052a --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.inl @@ -0,0 +1,22 @@ +md5 : 94f3ee02581d5db408381d2fce40076c +name : coin_pl_94f3 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 13:55:31 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.so b/scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.so new file mode 100755 index 0000000000000000000000000000000000000000..8593220bd81d51a90939372c12b35d61f4fae390 GIT binary patch literal 49005 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%0ABW37)s>V0^KA~dO7 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 IbXrH;&oFn&KmY&$ literal 0 HcmV?d00001 diff --git a/scripts/coin.pl b/scripts/coin.pl index bcb21df7..6c5b119f 100644 --- a/scripts/coin.pl +++ b/scripts/coin.pl @@ -1,15 +1,21 @@ #use Inline C; use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' - ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' + ,INC => ['-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' + ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/dependencies/sockets"' + ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/dependencies/threads"' + ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/test"' + ] # ,LD => 'gcc -Wl,-rpath=../bin' ,CLEAN_AFTER_BUILD => 0 ,BUILD_NOISY => 1 ; -print "9 + 16 = ", add(9, 16), "\n"; -print "9 - 16 = ", subtract(9, 16), "\n"; -print "WIF:".createWIF(2)."\n"; + +my $tx = {}; +print "Answer:".domain(1)."\n"; + use Inline C => <<'END_OF_C_CODE'; +/* #include #include #include @@ -21,30 +27,1663 @@ #include #include #include +#include +*/ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +// looking at this: +// https://github.com/MatthewLM/cbitcoin/blob/27f7a94cd5fe292877c9e0145cb50d1709a412d7/library/test/testCBAccounter.c +/* +int createtx(int arg) { + CBTransaction * self = CBNewTransaction(0,1); + CBFreeTransaction(self); + return 1; +} +*/ + + +enum{ + CREATING_BLOCKS, + RECEIVE_INITIAL_BLOCKS_AND_TXS, + CHAIN_REORGANISATION, + LOSE_CHAIN_AND_RELAY, + ORPHAN_TO_CHAIN +} testPhase = CREATING_BLOCKS; + +enum{ + NODE1_GOT = 1, + NODE2_GOT = 2, + NODE1_FORK = 4, + COMPLETE_RECEIVE_INITAL = 7 +} receiveInitialBlocksAndTxs = 0; + +enum{ + NODE0_REORG = 1, + NODE1_REORG = 2, + NODE2_REORG = 4, + COMPLETE_CHAIN_REORGANISATION = 7 +} chainReorg = 0; + +int gotTxNum = 0; +int doubleSpendNum = 0; +int confirmedNum = 0; +int unconfirmedNum = 0; + +bool nodeOwns[3][14] = { + {0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1}, + {1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0}, + {0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1}, +}; + +CBNodeFull * nodes[3]; +CBKeyPair keys[3]; +CBTransaction * initialTxs[14]; +CBTransaction * doubleSpends[6]; // Inc. dependants of double spend +CBTransaction * chainDoubleSpend; +CBTransaction * orphanSpendOtherBranch; + +CBBlock * lastInitialBlock; +CBByteArray * lastNode1BlockHash; +CBByteArray * reorgTestBlockHash; +CBDepObject testMutex; + +uint64_t CBGetMilliseconds(void){ + struct timeval tv; + gettimeofday(&tv, NULL); + return tv.tv_sec * 1000 + tv.tv_usec / 1000; +} + +void onFatalNodeError(CBNode * node, CBErrorReason reason); +void onFatalNodeError(CBNode * node, CBErrorReason reason){ + CBLogError("ON FATAL NODE ERROR %u\n", reason); + exit(EXIT_FAILURE); +} + +void onBadTime(void * foo); +void onBadTime(void * foo){ + CBLogError("BAD TIME FAIL\n"); + exit(EXIT_FAILURE); +} + +void stop(void * comm); +void stop(void * comm){ + CBNetworkCommunicatorStop(comm); + CBReleaseObject(comm); +} + +void lockMessageProcessing(void); +void lockMessageProcessing() { + + for (uint8_t x = 0; x < 3; x++) + CBMutexLock(CBGetNode(nodes[x])->messageProcessMutex); + +} -char* createWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBReleaseObject(wif); - return (char *)CBByteArrayGetData(str); - CBReleaseObject(str); - //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - //CBReleaseObject(key); - //CBReleaseObject(address); +void unlockMessageProcessing(void); +void unlockMessageProcessing() { + + for (uint8_t x = 0; x < 3; x++) + CBMutexUnlock(CBGetNode(nodes[x])->messageProcessMutex); + +} + +pthread_mutex_t uptodateMutex[3] = {PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER}; +pthread_cond_t uptodateCond[3] = {PTHREAD_COND_INITIALIZER, PTHREAD_COND_INITIALIZER, PTHREAD_COND_INITIALIZER}; +bool uptodateBool[3] = {true, true, true}; + +void uptodate(CBNode * node, bool uptodate); +void uptodate(CBNode * node, bool uptodate){ + uint8_t x = 0; + for (; nodes[x] != CBGetNodeFull(node); x++); + pthread_mutex_lock(&uptodateMutex[x]); + uptodateBool[x] = uptodate; + if (uptodate) + pthread_cond_signal(&uptodateCond[x]); + pthread_mutex_unlock(&uptodateMutex[x]); +} + +void waitForDownloadEnd(void); +void waitForDownloadEnd(void){ + // Wait for downloads to end before continuing with tests + for (uint8_t x = 0; x < 3; x++){ + pthread_mutex_lock(&uptodateMutex[x]); + if (!uptodateBool[x]) + // Still downloading + pthread_cond_wait(&uptodateCond[x], &uptodateMutex[x]); + pthread_mutex_unlock(&uptodateMutex[x]); + } +} + +void * maybeFinishOrphanTest(void * foo); +void * maybeFinishOrphanTest(void * foo) { + + if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 5 && doubleSpendNum == 2 && confirmedNum == 4) { + + lockMessageProcessing(); + + // Ensure validation is complete for second node, so that all double spends are processed + CBMutexLock(CBGetNode(nodes[1])->blockAndTxMutex); + CBMutexUnlock(CBGetNode(nodes[1])->blockAndTxMutex); + for (uint8_t x = 0; x < 3; x++) { + CBNodeFull * node = nodes[x]; + if (CBGetNetworkCommunicator(node)->blockHeight != 1004) { + CBLogError("OPRHAN TO CHAIN FINISH BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + for (uint8_t y = 4; y < 14; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); + if ((y == 4 && x == 2) || y == 5 || y == 7 || y == 11 || y == 13){ + if (fndTx != NULL) { + CBLogError("OPRHAN TO CHAIN CONFIRMED TX %u FOUND AS UNCONFIRMED NODE %u", y, x); + exit(EXIT_FAILURE); + } + continue; + } + if (fndTx == NULL) { + if (nodeOwns[x][y]) { + CBLogError("OPRHAN TO CHAIN UNCONFIRMED TX NOT FOUND"); + exit(EXIT_FAILURE); + } + break; + } + if (fndTx->utx.numUnconfDeps != (y == 11 || y == 13)) { + CBLogError("OPRHAN TO CHAIN FINISH NUM UNCONF DEPS FAIL\n"); + exit(EXIT_FAILURE); + } + if ((fndTx->utx.type == CB_TX_OTHER) == nodeOwns[x][y]) { + CBLogError("OPRHAN TO CHAIN FINISH OWNERSHIP FAIL\n"); + exit(EXIT_FAILURE); + } + } + for (uint8_t y = 0; y < 6; y++) { + if (CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])) != NULL) { + CBLogError("OPRHAN TO CHAIN FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); + exit(EXIT_FAILURE); + } + } + // Make sure orphan no longer exists as unconfirmed + if (CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(orphanSpendOtherBranch)) != NULL) { + CBLogError("OPRHAN TO CHAIN STILL UNCONFIRMED FAIL"); + exit(EXIT_FAILURE); + } + } + // Check accounter information (has all initial transactions except for 11 and 13, double spends and the orphan we added) Only bother with node 0 + CBDepObject cursor; + if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { + printf("CREATE CURSOR FAIL\n"); + exit(EXIT_FAILURE); + } + uint8_t zeroHash[20]; + memset(zeroHash, 0, 20); + uint64_t times[5]; + for (uint8_t x = 0; x < 5; x++) + CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); + checkTransactions(cursor, (CBTestTxDetails [13]){ + /* 0 */ {CBKeyPairGetHash(keys), 1003, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,0}, + /* 1 */ {CBKeyPairGetHash(keys), 1001, 312500000, 1231471166, CBTransactionGetHash(doubleSpends[0]),1562500000,0}, + /* 2 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[1]),1562500000,0}, + /* 3 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[2]),1562500000,0}, + /* 4 */ {CBKeyPairGetHash(keys), 1002, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1875000000,0}, + /* 5 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1875000000,0}, + /* 6 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1875000000,0}, + /* 7 */ {zeroHash, 1004, 0, 1231471169, CBTransactionGetHash(orphanSpendOtherBranch),1875000000,0}, + // Timestamps should be after the fixed timestamps. + /* 8 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),2187500000,312500000}, + /* 9 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1875000000,0}, + /* 10 */ {CBKeyPairGetHash(keys), 1002, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),2187500000,0}, + /* 11 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),2187500000,0}, + /* 12 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),2031250000,-156250000}, + }, 13); + int64_t ubalance; + uint64_t cbalance; + if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ + printf("GET UNCONF BALANCE FAIL\n"); + exit(EXIT_FAILURE); + } + if (ubalance != -156250000) { + printf("UNCONF BALANCE FAIL %" PRIi64 " != -156250000\n", ubalance); + exit(EXIT_FAILURE); + } + if (cbalance != 2031250000) { + printf("ALL BALANCE FAIL %" PRIu64 " != 312500000\n", cbalance); + exit(EXIT_FAILURE); + } + CBLogVerbose("OPRHAN TO CHAIN complete."); + // Disconnect nodes + CBLogVerbose("STOPPING NODES"); + CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[0])->eventLoop, stop, nodes[0], false); + CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[1])->eventLoop, stop, nodes[1], false); + CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[2])->eventLoop, stop, nodes[2], false); + + unlockMessageProcessing(); + + } + return NULL; +} + +void * maybeFinishLoseTest(void * foo); +void * maybeFinishLoseTest(void * foo) { + + if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 2 && doubleSpendNum == 4 && unconfirmedNum == 4 && confirmedNum == 2) { + + lockMessageProcessing(); + + // Make sure node 0 has processed tx 0, as it needs to be confirmed to ensure the number of unconf dependencies is OK for tx 4, ie. 0. + CBMutexLock(CBGetNode(nodes[0])->blockAndTxMutex); + CBMutexUnlock(CBGetNode(nodes[0])->blockAndTxMutex); + for (uint8_t x = 0; x < 3; x++) { + CBNodeFull * node = nodes[x]; + if (CBGetNetworkCommunicator(node)->blockHeight != 1003) { + CBLogError("LOSE CHAIN AND RELAY FINISH BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + for (uint8_t y = 4; y < 14; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); + if ((y == 4 && x == 2) || y == 5 || y == 7 || y == 11 || y == 13){ + if (fndTx != NULL) { + CBLogError("LOSE CHAIN AND RELAY CONFIRMED TX %u FOUND AS UNCONFIRMED NODE %u", y, x); + exit(EXIT_FAILURE); + } + continue; + } + if (fndTx == NULL) { + if (nodeOwns[x][y]) { + CBLogError("LOSE CHAIN AND RELAY UNCONFIRMED TX NOT FOUND"); + exit(EXIT_FAILURE); + } + break; + } + if (fndTx->utx.numUnconfDeps != (y == 11 || y == 13)) { + CBLogError("LOSE CHAIN AND RELAY FINISH NUM UNCONF DEPS FAIL NUM = %u Y = %u NODE = %u \n", fndTx->utx.numUnconfDeps, y, x); + exit(EXIT_FAILURE); + } + if ((fndTx->utx.type == CB_TX_OTHER) == nodeOwns[x][y]) { + CBLogError("LOSE CHAIN AND RELAY FINISH OWNERSHIP FAIL\n"); + exit(EXIT_FAILURE); + } + } + for (uint8_t y = 0; y < 6; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])); + if ((fndTx == NULL) == (y > 2)) { + CBLogError("LOSE CHAIN AND RELAY FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); + exit(EXIT_FAILURE); + } + if (fndTx != NULL){ + // These are the unconfirmed ones + if (fndTx->utx.numUnconfDeps != (y > 3)) { + CBLogError("LOSE CHAIN AND RELAY FINISH DOUBLE SPEND NUM UNCONF DEPS FAIL %u != %u > 3 (node = %u)\n", fndTx->utx.numUnconfDeps, y, x); + exit(EXIT_FAILURE); + } + if ((fndTx->utx.type == CB_TX_OTHER) != (x == 2 || (x == 1 && y > 3))) { + CBLogError("LOSE CHAIN AND RELAY FINISH DOUBLE SPEND OWNERSHIP FAIL\n"); + exit(EXIT_FAILURE); + } + } + } + } + // Check accounter information. Only bother with node 0 + CBDepObject cursor; + if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { + printf("LOSE CHAIN AND RELAY CREATE CURSOR FAIL\n"); + exit(EXIT_FAILURE); + } + uint8_t zeroHash[20]; + memset(zeroHash, 0, 20); + uint64_t times[5]; + for (uint8_t x = 0; x < 5; x++) + CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); + checkTransactions(cursor, (CBTestTxDetails [9]){ + /* 0 */ {CBKeyPairGetHash(keys), 1001, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,0}, + /* 1 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1562500000,312500000}, + /* 2 */ {zeroHash, CB_UNCONFIRMED, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1562500000,312500000}, + /* 3 */ {zeroHash, CB_UNCONFIRMED, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1562500000,312500000}, + /* 4 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),1875000000,625000000}, + /* 5 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1562500000,312500000}, + /* 6 */ {CBKeyPairGetHash(keys), 1003, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),1875000000,312500000}, + /* 7 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),1875000000,312500000}, + /* 8 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),1718750000,156250000}, + }, 9); + int64_t ubalance; + uint64_t cbalance; + if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ + printf("LOSE CHAIN AND RELAY GET UNCONF BALANCE FAIL\n"); + exit(EXIT_FAILURE); + } + if (ubalance != 156250000) { + printf("INITIAL UNCONF BALANCE FAIL %" PRIi64 " != 625000000\n", ubalance); + exit(EXIT_FAILURE); + } + if (cbalance != 1718750000) { + printf("INITIAL ALL BALANCE FAIL %" PRIu64 " != 1875000000\n", cbalance); + exit(EXIT_FAILURE); + } + unlockMessageProcessing(); + CBLogVerbose("LOSE_CHAIN_AND_RELAY complete."); + gotTxNum = 0; + chainReorg = 0; + confirmedNum = 0; + doubleSpendNum = 0; + waitForDownloadEnd(); + lockMessageProcessing(); + // Test giving orphan transaction to node 0, and then giving a false dependency. + CBTransaction * falseTx = CBNewTransaction(19, 1); + CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; + CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[0]), 32); + CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + CBScript * script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + 1)); + CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); + CBTransactionSignPubKeyHashInput(falseTx, keys + 1, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(falseTx); + CBTransactionSerialise(falseTx, true); + CBTransaction * orphan = CBNewTransaction(20, 1); + CBGetMessage(orphan)->type = CB_MESSAGE_TYPE_TX; + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[4]), 32); + CBTransactionTakeInput(orphan, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); + CBReleaseObject(prev); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(falseTx), 32); + CBTransactionTakeInput(orphan, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + CBTransactionTakeOutput(orphan, CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(orphan, keys, initialTxs[4]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionSignPubKeyHashInput(orphan, keys + 1, falseTx->outputs[0]->scriptObject, 1, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(orphan); + CBTransactionSerialise(orphan, true); + // Get some peer for node 0 + CBPosition pos; + CBAssociativeArrayGetFirst(&CBGetNetworkCommunicator(nodes[0])->addresses->peers, &pos); + CBPeer * peer = pos.node->elements[pos.index]; + if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, orphan) != CB_TRUE) { + CBLogError("PROCESS ORPHAN ERROR"); + exit(EXIT_FAILURE); + } + if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ + CBLogError("PROCESS FALSE TX ERROR"); + exit(EXIT_FAILURE); + } + // Test both transactions not being stored as they are invalid. + if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { + CBLogError("HAVE FALSE TX ERROR"); + exit(EXIT_FAILURE); + } + if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(orphan)) != NULL) { + CBLogError("HAVE ORPHAN TX ERROR"); + exit(EXIT_FAILURE); + } + CBReleaseObject(orphan); + CBReleaseObject(falseTx); + // Test processing transaction spending transaction (3) on the chain which has been spent on the chain (by 7) + falseTx = CBNewTransaction(21, 1); + CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[3]), 32); + CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); + CBTransactionSignPubKeyHashInput(falseTx, keys + 1, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(falseTx); + CBTransactionSerialise(falseTx, true); + if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ + CBLogError("PROCESS FALSE TX 2 ERROR"); + exit(EXIT_FAILURE); + } + if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { + CBLogError("HAVE FALSE TX 2 ERROR"); + exit(EXIT_FAILURE); + } + // Test a transaction which spends an output on the other branch. + orphanSpendOtherBranch = CBNewTransaction(21, 1); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(doubleSpends[2]), 32); + CBTransactionTakeInput(orphanSpendOtherBranch, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(orphanSpendOtherBranch, CBNewTransactionOutput(312500000, script)); + CBTransactionSignPubKeyHashInput(orphanSpendOtherBranch, keys, doubleSpends[2]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(orphanSpendOtherBranch); + CBTransactionSerialise(orphanSpendOtherBranch, true); + CBGetMessage(orphanSpendOtherBranch)->type = CB_MESSAGE_TYPE_TX; + if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, orphanSpendOtherBranch) != CB_TRUE){ + CBLogError("PROCESS TX SPENDING OTHER BRANCH ERROR"); + exit(EXIT_FAILURE); + } + // Check it is orphan + if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(orphanSpendOtherBranch))->type != CB_TX_ORPHAN) { + CBLogError("TX SPENDING OTHER BRANCH NOT ORPHAN"); + exit(EXIT_FAILURE); + } + // Now create reorg with the orphan on the other branch + testPhase = ORPHAN_TO_CHAIN; + CBBlock * block = CBNewBlock(); + block->prevBlockHash = reorgTestBlockHash; + block->time = 1231471168; + block->target = CB_MAX_TARGET; + block->nonce = 2573394689; + block->transactionNum = 3; + block->transactions = malloc(sizeof(*block->transactions) * 3); + // Coinbase + block->transactions[0] = CBNewTransaction(0, 1); + CBByteArray * nullHash = CBNewByteArrayOfSize(32); + memset(CBByteArrayGetData(nullHash), 0, 32); + script = CBNewScriptWithDataCopy((uint8_t []){0xdf,5}, 2); + CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block->transactions[0]); + CBTransactionSerialise(block->transactions[0], false); + // Add transactions 0 and 2 + block->transactions[1] = initialTxs[0]; + CBRetainObject(initialTxs[0]); + block->transactions[2] = initialTxs[2]; + CBRetainObject(initialTxs[2]); + CBBlockCalculateAndSetMerkleRoot(block); + CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); + CBBlockSerialise(block, true, false); + // Add to node 0 + nodes[0]->downloadingPeer = NULL; + CBValidatorQueueBlock(CBGetNode(nodes[0])->validator, block, nodes[0]); + // The next block will contain the orphan + CBBlock * block2 = CBNewBlock(); + block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + CBReleaseObject(block); + block2->time = 1231471169; + block2->target = CB_MAX_TARGET; + block2->nonce = 2573394690; + block2->transactionNum = 2; + block2->transactions = malloc(sizeof(*block2->transactions) * 2); + // Coinbase + block2->transactions[0] = CBNewTransaction(0, 1); + memset(CBByteArrayGetData(nullHash), 0, 32); + script = CBNewScriptWithDataCopy((uint8_t []){0xe0,5}, 2); + CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + CBReleaseObject(nullHash); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block2->transactions[0]); + CBTransactionSerialise(block2->transactions[0], false); + // Add orphan + block2->transactions[1] = orphanSpendOtherBranch; + CBRetainObject(orphanSpendOtherBranch); + CBBlockCalculateAndSetMerkleRoot(block2); + CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); + CBBlockSerialise(block2, true, true); + // Add to node 0 + CBValidatorQueueBlock(CBGetNode(nodes[0])->validator, block2, nodes[0]); + CBReleaseObject(block2); + + unlockMessageProcessing(); + + } + return NULL; +} + +void * maybeFinishReorgTest(void * foo); +void * maybeFinishReorgTest(void * foo) { + if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 8 && doubleSpendNum == 4 && confirmedNum == 4 && unconfirmedNum == 2) { + + lockMessageProcessing(); + + for (uint8_t x = 0; x < 3; x++) { + CBNodeFull * node = nodes[x]; + if (CBGetNetworkCommunicator(node)->blockHeight != 1002) { + CBLogError("CHAIN REORGANISATION FINISH BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + for (uint8_t y = 0; y < 14; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); + if (y == 1 || y == 3 || y == 5 || y == 7 || y == 11 || y == 13) { + if (fndTx != NULL) { + CBLogError("CHAIN REORGANISATION CONFIRMED TX FOUND AS UNCONFIRMED"); + exit(EXIT_FAILURE); + } + continue; + } + if (fndTx == NULL) { + if (nodeOwns[x][y]) { + CBLogError("CHAIN REORGANISATION UNCONFIRMED TX NOT FOUND"); + exit(EXIT_FAILURE); + } + continue; + } + if (fndTx->utx.numUnconfDeps != (y % 2 == 0 && y > 3) + (y == 11 || y == 13)) { + CBLogError("CHAIN REORGANISATION FINISH NUM UNCONF DEPS FAIL\n"); + exit(EXIT_FAILURE); + } + if ((fndTx->utx.type == CB_TX_OURS) != nodeOwns[x][y]) { + CBLogError("CHAIN REORGANISATION FINISH OWNERSHIP FAIL\n"); + exit(EXIT_FAILURE); + } + } + for (uint8_t y = 0; y < 6; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])); + if (fndTx != NULL) { + CBLogError("CHAIN REORGANISATION FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); + exit(EXIT_FAILURE); + } + } + } + // Check accounter information (has all initial transactions except for 11 and 13 and double spends) Only bother with node 0 + CBDepObject cursor; + if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { + printf("CHAIN REORGANISATION CREATE CURSOR FAIL\n"); + exit(EXIT_FAILURE); + } + uint8_t zeroHash[20]; + memset(zeroHash, 0, 20); + uint64_t times[5]; + for (uint8_t x = 0; x < 5; x++) + CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); + checkTransactions(cursor, (CBTestTxDetails [12]){ + /* 0 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,1250000000}, + /* 1 */ {CBKeyPairGetHash(keys), 1001, 312500000, 1231471166, CBTransactionGetHash(doubleSpends[0]),1562500000,1250000000}, + /* 2 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[1]),1562500000,1250000000}, + /* 3 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[2]),1562500000,1250000000}, + /* 4 */ {CBKeyPairGetHash(keys), 1002, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1875000000,1250000000}, + /* 5 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1875000000,1250000000}, + /* 6 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1875000000,1250000000}, + // Timestamps should be after the fixed timestamps. + /* 7 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),2187500000,1562500000}, + /* 8 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1875000000,1250000000}, + /* 9 */ {CBKeyPairGetHash(keys), 1002, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),2187500000,1250000000}, + /* 10 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),2187500000,1250000000}, + /* 11 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),2031250000,1093750000}, + }, 12); + int64_t ubalance; + uint64_t cbalance; + if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)) { + printf("CHAIN REORGANISATION GET CONF BALANCE FAIL\n"); + exit(EXIT_FAILURE); + } + if (ubalance != 1093750000) { + printf("CHAIN REORGANISATION UNCONF BALANCE FAIL %" PRIi64 " != 1093750000\n", ubalance); + exit(EXIT_FAILURE); + } + if (cbalance != 2031250000) { + printf("CHAIN REORGANISATION ALL BALANCE FAIL %" PRIu64 " != 2031250000\n", cbalance); + exit(EXIT_FAILURE); + } + + unlockMessageProcessing(); + + CBLogVerbose("CHAIN_REORGANISATION complete."); + testPhase = LOSE_CHAIN_AND_RELAY; + chainReorg = 0; + gotTxNum = 0; + unconfirmedNum = 0; + confirmedNum = 0; + doubleSpendNum = 0; + + waitForDownloadEnd(); + lockMessageProcessing(); + + // Test double spending one of the transactions on the chain with two dependants on the chain. + // Test unconfirming a transaction with two dependants, and that are not dependencies of any unconfirmed transactions + // Test re-relaying unconfirmed transactions and losing some due to oldness. + // Relay transaction 8 again + CBFoundTransaction * tx8 = CBNodeFullGetFoundTransaction(nodes[2], CBTransactionGetHash(initialTxs[8])); + tx8->nextRelay = CBGetMilliseconds() - 1; + // Lose tx 4 to oldness + CBFoundTransaction * tx4 = CBNodeFullGetFoundTransaction(nodes[2], CBTransactionGetHash(initialTxs[4])); + tx4->timeFound = CBGetMilliseconds() - 7200001; + // First block + CBBlock * block = CBNewBlock(); + block->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(lastInitialBlock), 32); + block->time = 1231471166; + block->target = CB_MAX_TARGET; + block->nonce = 2573394689; + block->transactionNum = 2; + block->transactions = malloc(sizeof(*block->transactions) * 2); + // Coinbase + block->transactions[0] = CBNewTransaction(0, 1); + CBByteArray * nullHash = CBNewByteArrayOfSize(32); + memset(CBByteArrayGetData(nullHash), 0, 32); + CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0xdd,5}, 2); + CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block->transactions[0]); + CBTransactionSerialise(block->transactions[0], false); + // Double spend the first double spend on the other chain + block->transactions[1] = CBNewTransaction(14, 1); + CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[1]), 32); + CBTransactionTakeInput(block->transactions[1], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 2)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + 1)); // This transaction differs by giving to node 1 + CBTransactionTakeOutput(block->transactions[1], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(block->transactions[1], keys + 2, initialTxs[1]->outputs[3]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(block->transactions[1]); + CBTransactionSerialise(block->transactions[1], true); + chainDoubleSpend = block->transactions[1]; + CBRetainObject(chainDoubleSpend); + CBBlockCalculateAndSetMerkleRoot(block); + CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); + CBBlockSerialise(block, true, false); + // Add to node 2 + nodes[2]->downloadingPeer = NULL; + CBValidatorQueueBlock(CBGetNode(nodes[2])->validator, block, nodes[2]); + // The next block will contain all the other transactions except those of the second double spend in the last test + CBBlock * block2 = CBNewBlock(); + block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + CBReleaseObject(block); + block2->time = 1231471167; + block2->target = CB_MAX_TARGET; + block2->nonce = 2573394690; + block2->transactionNum = 3; + block2->transactions = malloc(sizeof(*block2->transactions) * 3); + // Coinbase + block2->transactions[0] = CBNewTransaction(0, 1); + memset(CBByteArrayGetData(nullHash), 0, 32); + script = CBNewScriptWithDataCopy((uint8_t []){0xde,5}, 2); + CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + CBReleaseObject(nullHash); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block2->transactions[0]); + CBTransactionSerialise(block2->transactions[0], false); + // Transaction 5 + block2->transactions[1] = initialTxs[5]; + CBRetainObject(initialTxs[5]); + // Transaction 7 + block2->transactions[2] = initialTxs[7]; + CBRetainObject(initialTxs[7]); + CBBlockCalculateAndSetMerkleRoot(block2); + CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); + CBBlockSerialise(block2, true, true); + // Add to node 2 + CBValidatorQueueBlock(CBGetNode(nodes[2])->validator, block2, nodes[2]); + CBReleaseObject(block2); + + unlockMessageProcessing(); + + } + return NULL; +} -// return (int) 1; +void * finishReceiveInitialTest(void * foo); +void * finishReceiveInitialTest(void * foo) { + + // Ensure nodes finished processing transactions + for (uint8_t x = 0; x < 3; x++) { + CBMutexLock(CBGetNode(nodes[x])->blockAndTxMutex); + CBMutexUnlock(CBGetNode(nodes[x])->blockAndTxMutex); + } + + lockMessageProcessing(); + + // Transactions look like this + // [ Block ] + // --------------------- + // [ ] [#0 -> 0] + // [ #1 -> 1 ] [#4 -> 1] + // [ ] [#8 -> 2] + // --------------------- + // [ ] [#1 -> 1] + // [ #2 -> 2 ] [#5 -> 2] -> #7,#9 + // [ ] [#9 -> 0] + // --------------------- + // [ ] [#2 -> 2] + // [ #3 -> 0 ] [#6 -> 0] + // [ ] + // --------------------- + // [ ] [#3 -> 0] -> #6,#8 + // [ #4 -> 1 ] [#7 -> 1] + // [ ] + for (uint8_t x = 0; x < 3; x++) { + CBNodeFull * node = nodes[x]; + if (CBGetNetworkCommunicator(node)->blockHeight != 1001) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + for (uint8_t y = 4; y < 14; y++) { + CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); + if (fndTx == NULL) { + if (nodeOwns[x][y]) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH NOT FOUND"); + exit(EXIT_FAILURE); + } + continue; + } + if ((y >= 10) != (fndTx->utx.numUnconfDeps != 0)) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH NUM UNCONF DEPS FAIL\n"); + exit(EXIT_FAILURE); + } + if ((fndTx->utx.type == CB_TX_OURS) != nodeOwns[x][y]) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH OWNERSHIP FAIL\n"); + exit(EXIT_FAILURE); + } + } + } + // Check accounter information. Only bother with node 0 + CBDepObject cursor; + if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { + printf("INITIAL CREATE CURSOR FAIL\n"); + exit(EXIT_FAILURE); + } + uint8_t zeroHash[20]; + memset(zeroHash, 0, 20); + uint64_t times[6]; + for (uint8_t x = 0; x < 6; x++) + CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12,13}[x]]), times + x); + checkTransactions(cursor, (CBTestTxDetails [7]){ + /* 0 */ {CBKeyPairGetHash(keys), 1001, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]), 1250000000,0}, + /* 1 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]), 1562500000,312500000}, + /* 2 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]), 1250000000,0}, + /* 3 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[2], CBTransactionGetHash(initialTxs[7]), 1562500000,312500000}, + /* 4 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]), 1562500000,312500000}, + /* 5 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]), 1406250000, 156250000}, + /* 6 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 468750000, times[5], CBTransactionGetHash(initialTxs[13]),1875000000,625000000}, + }, 7); + int64_t ubalance; + uint64_t cbalance; + if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ + printf("INITIAL GET UNCONF BALANCE FAIL\n"); + exit(EXIT_FAILURE); + } + if (ubalance != 625000000) { + printf("INITIAL UNCONF BALANCE FAIL %" PRIi64 " != 625000000\n", ubalance); + exit(EXIT_FAILURE); + } + if (cbalance != 1875000000) { + printf("INITIAL ALL BALANCE FAIL %" PRIu64 " != 1875000000\n", cbalance); + exit(EXIT_FAILURE); + } + + unlockMessageProcessing(); + + CBLogVerbose("RECEIVE INITIAL BLOCKS complete."); + + waitForDownloadEnd(); + lockMessageProcessing(); + + // Test processing transaction spending unconf transaction which has been spent + CBTransaction * falseTx = CBNewTransaction(22, 1); + CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; + CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[9]), 32); + CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + CBScript * script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); + CBTransactionSignPubKeyHashInput(falseTx, keys, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(falseTx); + CBTransactionSerialise(falseTx, true); + // Get some peer for node 0 + CBPosition pos; + CBAssociativeArrayGetFirst(&CBGetNetworkCommunicator(nodes[0])->addresses->peers, &pos); + CBPeer * peer = pos.node->elements[pos.index]; + if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ + CBLogError("PROCESS FALSE TX 3 ERROR"); + exit(EXIT_FAILURE); + } + if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { + CBLogError("HAVE FALSE TX 3 ERROR"); + exit(EXIT_FAILURE); + } + // Test adding blocks to the smaller chain on 45563 for fork. + // For first block + // Add transaction 1 and 5 + // Add double spend of 13 + // For the second + // Add transaction 3 and 7 + // Add double spend of 11 + testPhase = CHAIN_REORGANISATION; + gotTxNum = 0; + CBBlock * block = CBNewBlock(); + block->prevBlockHash = lastNode1BlockHash; + block->time = 1231471166; + block->target = CB_MAX_TARGET; + block->nonce = 2573394689; + block->transactionNum = 6; + block->transactions = malloc(sizeof(*block->transactions) * 6); + // Coinbase + block->transactions[0] = CBNewTransaction(0, 1); + CBByteArray * nullHash = CBNewByteArrayOfSize(32); + memset(CBByteArrayGetData(nullHash), 0, 32); + script = CBNewScriptWithDataCopy((uint8_t []){0xdc,5}, 2); + CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block->transactions[0]); + CBTransactionSerialise(block->transactions[0], false); + // Transaction 1 + block->transactions[1] = initialTxs[1]; + CBRetainObject(initialTxs[1]); + // Transaction 5 + block->transactions[2] = initialTxs[5]; + CBRetainObject(initialTxs[5]); + // Double spend of 13 + block->transactions[3] = CBNewTransaction(14, 1); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[1]), 32); + CBTransactionTakeInput(block->transactions[3], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 2)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(block->transactions[3], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(block->transactions[3], keys + 2, initialTxs[1]->outputs[3]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(block->transactions[3]); + CBTransactionSerialise(block->transactions[3], true); + doubleSpends[0] = block->transactions[3]; + CBRetainObject(doubleSpends[0]); + // Now give two dependants to the double spend of 13 + for (uint8_t x = 0; x < 2; x++) { + block->transactions[4 + x] = CBNewTransaction(15 + x, 1); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[3 + x]), 32); + CBTransactionTakeInput(block->transactions[4 + x], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(block->transactions[4 + x], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(block->transactions[4 + x], keys, block->transactions[3 + x]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(block->transactions[4 + x]); + CBTransactionSerialise(block->transactions[4 + x], true); + doubleSpends[1 + x] = block->transactions[4 + x]; + CBRetainObject(doubleSpends[1 + x]); + } + CBBlockCalculateAndSetMerkleRoot(block); + CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); + CBBlockSerialise(block, true, false); + // Second block + CBBlock * block2 = CBNewBlock(); + block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + block2->time = 1231471167; + block2->target = CB_MAX_TARGET; + block2->nonce = 2573394690; + block2->transactionNum = 6; + block2->transactions = malloc(sizeof(*block2->transactions) * 6); + // Coinbase + block2->transactions[0] = CBNewTransaction(0, 1); + memset(CBByteArrayGetData(nullHash), 0, 32); + script = CBNewScriptWithDataCopy((uint8_t []){0xdd,5}, 2); + CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + CBReleaseObject(nullHash); + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block2->transactions[0]); + CBTransactionSerialise(block2->transactions[0], false); + // Transaction 3 + block2->transactions[1] = initialTxs[3]; + CBRetainObject(initialTxs[1]); + // Transaction 7 + block2->transactions[2] = initialTxs[7]; + CBRetainObject(initialTxs[7]); + // Double spend of 11 + block2->transactions[3] = CBNewTransaction(17, 1); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[3]), 32); + CBTransactionTakeInput(block2->transactions[3], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(block2->transactions[3], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(block2->transactions[3], keys + 1, initialTxs[3]->outputs[1]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(block2->transactions[3]); + CBTransactionSerialise(block2->transactions[3], true); + doubleSpends[3] = block2->transactions[3]; + CBRetainObject(doubleSpends[3]); + // Now give two dependants to the double spend of 11 + for (uint8_t x = 0; x < 2; x++) { + block2->transactions[4 + x] = CBNewTransaction(18 + x, 1); + prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block2->transactions[3 + x]), 32); + CBTransactionTakeInput(block2->transactions[4 + x], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); + CBReleaseObject(prev); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); + CBTransactionTakeOutput(block2->transactions[4 + x], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionSignPubKeyHashInput(block2->transactions[4 + x], keys, block2->transactions[3 + x]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(block2->transactions[4 + x]); + CBTransactionSerialise(block2->transactions[4 + x], true); + doubleSpends[4 + x] = block2->transactions[4 + x]; + CBRetainObject(doubleSpends[4 + x]); + } + CBBlockCalculateAndSetMerkleRoot(block2); + CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); + CBBlockSerialise(block2, true, true); + reorgTestBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block2), 32); + // Add blocks to node 1 + nodes[1]->downloadingPeer = NULL; + CBValidatorQueueBlock(CBGetNode(nodes[1])->validator, block, nodes[1]); + CBValidatorQueueBlock(CBGetNode(nodes[1])->validator, block2, nodes[1]); + CBReleaseObject(block); + CBReleaseObject(block2); + + unlockMessageProcessing(); + + return NULL; } -int add(int x, int y) { - return x + y; +void newBlock(CBNode *, CBBlock * block, uint32_t forkPoint); +void newBlock(CBNode * node, CBBlock * block, uint32_t forkPoint){ + CBNodeFull * nodeFull = CBGetNodeFull(node); + uint32_t height = CBGetNetworkCommunicator(node)->blockHeight; + int nodeNum = (nodes[0] == nodeFull) ? 0 : ((nodes[1] == nodeFull)? 1 : 2); + CBMutexLock(testMutex); + if (testPhase == RECEIVE_INITIAL_BLOCKS_AND_TXS) { + if (nodeNum == 0) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK SENDING NODE\n"); + exit(EXIT_FAILURE); + } + if (forkPoint == 501) { + if (nodeNum == 0) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK FORK NOT IN NODE 1\n"); + exit(EXIT_FAILURE); + }else if (nodeNum == 1) + receiveInitialBlocksAndTxs |= NODE1_FORK; + // Node 2 might fork if got blocks from node 1 first + }else if (forkPoint != CB_NO_FORK) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK FORK FAIL NODE = %u POINT = %u\n",nodeNum,forkPoint); + exit(EXIT_FAILURE); + } + if (receiveInitialBlocksAndTxs & nodeNum) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK AFTER GOT INITAL BLOCKS\n"); + exit(EXIT_FAILURE); + } + if (height == 1001) { + if (nodeNum == 1) { + if (! (receiveInitialBlocksAndTxs | NODE1_FORK)) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK NODE 1 GOT BEFORE FORK\n"); + exit(EXIT_FAILURE); + } + receiveInitialBlocksAndTxs |= NODE1_GOT; + }else + receiveInitialBlocksAndTxs |= NODE2_GOT; + } + }else if (testPhase == CHAIN_REORGANISATION) { + if (height != 1002) { + CBLogError("CHAIN REORGANISATION BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + if (forkPoint != 501) { + CBLogError("CHAIN REORGANISATION FORK POINT FAIL\n"); + exit(EXIT_FAILURE); + } + if (chainReorg & (1 << nodeNum)) { + CBLogError("CHAIN REORGANISATION NEW BLOCK AFTER GOT BLOCKS\n"); + exit(EXIT_FAILURE); + } + chainReorg |= 1 << nodeNum; + }else if (testPhase == LOSE_CHAIN_AND_RELAY) { + if (height != 1003) { + CBLogError("CHAIN REORGANISATION BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + if (forkPoint != 501) { + CBLogError("CHAIN REORGANISATION FORK POINT FAIL\n"); + exit(EXIT_FAILURE); + } + if (chainReorg & (1 << nodeNum)) { + CBLogError("CHAIN REORGANISATION NEW BLOCK AFTER GOT BLOCKS\n"); + exit(EXIT_FAILURE); + } + chainReorg |= 1 << nodeNum; + }else if (testPhase == ORPHAN_TO_CHAIN) { + if (height != 1004) { + CBLogError("ORPHAN TO CHAIN BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + if (forkPoint != 501) { + CBLogError("ORPHAN TO CHAIN FORK POINT FAIL\n"); + exit(EXIT_FAILURE); + } + if (chainReorg & (1 << nodeNum)) { + CBLogError("ORPHAN TO CHAIN NEW BLOCK AFTER GOT BLOCKS\n"); + exit(EXIT_FAILURE); + } + chainReorg |= 1 << nodeNum; + } + CBMutexUnlock(testMutex); } -int subtract(int x, int y) { - return x - y; +void newTransaction(CBNode *, CBTransaction * tx, uint64_t timestamp, uint32_t blockHeight, CBTransactionAccountDetailList * details); +void newTransaction(CBNode * node, CBTransaction * tx, uint64_t timestamp, uint32_t blockHeight, CBTransactionAccountDetailList * details){ + pthread_t thread; + CBNodeFull * nodeFull = CBGetNodeFull(node); + int nodeNum = (nodes[0] == nodeFull) ? 0 : ((nodes[1] == nodeFull)? 1 : 2); + CBMutexLock(testMutex); + if (details->accountID != 1){ + CBLogError("NEW TX BAD ACCOUNT ID NUM\n"); + exit(EXIT_FAILURE); + } + if (testPhase == RECEIVE_INITIAL_BLOCKS_AND_TXS) { + if (gotTxNum == 15) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX TOO MANY TXS\n"); + exit(EXIT_FAILURE); + } + uint8_t txNum; + for (uint8_t x = 0;; x++) { + if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(initialTxs[x]), 32) == 0){ + txNum = x; + break; + } + if (x == 13) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX UNKNOWN TX\n"); + exit(EXIT_FAILURE); + } + } + if (txNum < 4) { + if (blockHeight != 1001) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BLOCKHEIGHT 1001 FAIL\n"); + exit(EXIT_FAILURE); + } + if (timestamp != 1231471165) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX TIMESTAMP 1231471165 FAIL\n"); + exit(EXIT_FAILURE); + } + // Should be got by node (txNum + 1) % 3 + uint8_t expectedNode = (txNum + 1) % 3; + if (nodeNum != expectedNode) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD NODE NUM\n", txNum); + exit(EXIT_FAILURE); + } + if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + nodeNum), 20)){ + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BAD ADDR HASH\n"); + exit(EXIT_FAILURE); + } + if (details->accountTxDetails.amount != 1250000000) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD AMOUNT\n", txNum); + exit(EXIT_FAILURE); + } + if (details->next != NULL) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u END FAIL\n", txNum); + exit(EXIT_FAILURE); + } + }else{ + if (blockHeight != CB_UNCONFIRMED) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BLOCKHEIGHT UNCONF FAIL\n"); + exit(EXIT_FAILURE); + } + if (!nodeOwns[nodeNum][txNum]) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u DOESN'T OWN\n",txNum); + exit(EXIT_FAILURE); + } + uint8_t adjInd = txNum - 4; + bool takeInput = (adjInd % 4 + 1) % 3 == nodeNum; + bool gotOutput = adjInd % 3 == nodeNum; + bool secondInput = (adjInd >= 6)*(adjInd % 2)*2 == nodeNum; + if (details->accountTxDetails.amount + != -takeInput*312500000 - secondInput*156250000 + gotOutput*(312500000 + (adjInd >= 6)*156250000)) { + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD AMOUNT\n", txNum); + exit(EXIT_FAILURE); + } + if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + adjInd % 3), 20)){ + CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD ADDR HASH\n",txNum); + exit(EXIT_FAILURE); + } + } + gotTxNum++; + if (gotTxNum == 15 && receiveInitialBlocksAndTxs == COMPLETE_RECEIVE_INITAL) + pthread_create(&thread, NULL, finishReceiveInitialTest, NULL); + }else if (testPhase == CHAIN_REORGANISATION) { + uint8_t txNum; + for (uint8_t x = 0;; x++) { + if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(doubleSpends[x]), 32) == 0) { + txNum = x; + break; + } + if (x == 5) { + CBLogError("CHAIN REORGANISATION NEW TX UNKNOWN TX\n"); + exit(EXIT_FAILURE); + } + } + if (blockHeight != 1001 + (txNum > 2)) { + CBLogError("CHAIN REORGANISATION NEW TX BLOCKHEIGHT 1001 FAIL\n"); + exit(EXIT_FAILURE); + } + if (timestamp != 1231471166 + (txNum > 2)) { + CBLogError("CHAIN REORGANISATION NEW TX TIMESTAMP FAIL\n"); + exit(EXIT_FAILURE); + } + // Node 1 has the second double spend, and node 2 the first only. The dependants are for node 0 + if ((txNum != 3 && nodeNum == 1) || (txNum != 0 && nodeNum == 2)) { + CBLogError("CHAIN REORGANISATION NEW TX %u BAD NODE NUM\n", txNum); + exit(EXIT_FAILURE); + } + // Addr is zero when transferring money to self. + if ((txNum % 3 == 0 && memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys), 20)) + || (txNum % 3 != 0 && memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20))){ + CBLogError("CHAIN REORGANISATION NEW TX %u BAD ADDR HASH\n", txNum); + exit(EXIT_FAILURE); + } + if (details->accountTxDetails.amount != (nodeNum == 1 || nodeNum == 2 ? -312500000 : (txNum % 3 == 0 ? 312500000 : 0))) { + CBLogError("CHAIN REORGANISATION NEW TX %u BAD AMOUNT\n", txNum); + exit(EXIT_FAILURE); + } + if (details->next != NULL) { + CBLogError("CHAIN REORGANISATION NEW TX %u END FAIL", txNum); + exit(EXIT_FAILURE); + } + gotTxNum++; + pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); + }else if (testPhase == LOSE_CHAIN_AND_RELAY) { + if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(chainDoubleSpend), 32)) { + CBLogError("LOSE CHAIN AND RELAY NEW TX HASH FAIL"); + exit(EXIT_FAILURE); + } + if (timestamp != 1231471166) { + CBLogError("LOSE CHAIN AND RELAY NEW TX TIMESTAMP FAIL\n"); + exit(EXIT_FAILURE); + } + if (nodeNum == 0) { + CBLogError("LOSE CHAIN AND RELAY NEW TX BAD NODE\n"); + exit(EXIT_FAILURE); + } + if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + 1), 20)) { + CBLogError("LOSE CHAIN AND RELAY NEW TX BAD ADDR HASH\n"); + exit(EXIT_FAILURE); + } + if (details->accountTxDetails.amount != (nodeNum == 2 ? -312500000 : 312500000)) { + CBLogError("LOSE CHAIN AND RELAY NEW TX BAD AMOUNT\n"); + exit(EXIT_FAILURE); + } + if (details->next != NULL) { + CBLogError("LOSE CHAIN AND RELAY NEW TX END FAIL"); + exit(EXIT_FAILURE); + } + gotTxNum++; + pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); + }else if (testPhase == ORPHAN_TO_CHAIN){ + for (uint8_t x = 0;; x++) { + if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(doubleSpends[x]), 32) == 0) { + if (blockHeight != 1001) { + CBLogError("ORPHAN TO CHAIN NEW TX BLOCKHEIGHT 1001 FAIL\n"); + exit(EXIT_FAILURE); + } + if (timestamp != 1231471166) { + CBLogError("ORPHAN TO CHAIN NEW TX TIMESTAMP FAIL\n"); + exit(EXIT_FAILURE); + } + // Node 1 has the second double spend, and node 2 the first only. The dependants are for node 0 + if (nodeNum == 1 || (x != 0 && nodeNum == 2)) { + CBLogError("ORPHAN TO CHAIN NEW TX %u BAD NODE NUM\n", x); + exit(EXIT_FAILURE); + } + // Addr is zero when transferring money to self. + if ((x == 0 && memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys), 20)) + || (x != 0 && memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20))){ + CBLogError("ORPHAN TO CHAIN NEW TX %u BAD ADDR HASH\n", x); + exit(EXIT_FAILURE); + } + if (details->accountTxDetails.amount != (nodeNum == 2 ? -312500000 : (x == 0 ? 312500000 : 0))) { + CBLogError("ORPHAN TO CHAIN NEW TX %u BAD AMOUNT\n", x); + exit(EXIT_FAILURE); + } + break; + } + if (x == 2) { + if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(orphanSpendOtherBranch), 32)) { + CBLogError("ORPHAN TO CHAIN NEW TX UNKNOWN TX\n"); + exit(EXIT_FAILURE); + } + if (blockHeight != 1004) { + CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BLOCKHEIGHT 1001 FAIL\n"); + exit(EXIT_FAILURE); + } + if (timestamp != 1231471169) { + CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN TIMESTAMP FAIL\n"); + exit(EXIT_FAILURE); + } + if (nodeNum != 0) { + CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BAD NODE NUM\n"); + exit(EXIT_FAILURE); + } + // Addr is zero when transferring money to self. + if (memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20)){ + CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BAD ADDR HASH\n"); + exit(EXIT_FAILURE); + } + if (details->accountTxDetails.amount != 0) { + CBLogError("ORPHAN TO CHAIN NEW TX OPRHAN BAD AMOUNT\n"); + exit(EXIT_FAILURE); + } + break; + } + } + if (details->next != NULL) { + CBLogError("ORPHAN TO CHAIN NEW TX END FAIL"); + exit(EXIT_FAILURE); + } + gotTxNum++; + pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); + } + CBMutexUnlock(testMutex); } +void transactionConfirmed(CBNode *, uint8_t * txHash, uint32_t blockHeight); +void transactionConfirmed(CBNode * node, uint8_t * txHash, uint32_t blockHeight){ + pthread_t thread; + CBMutexLock(testMutex); + if (testPhase == CHAIN_REORGANISATION) { + if (blockHeight == 1001) { + if (nodes[0] == CBGetNodeFull(node)) { + CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1001 NODE FAIL\n"); + exit(EXIT_FAILURE); + } + if (memcmp(txHash, CBTransactionGetHash(initialTxs[5]), 32) != 0) { + CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1001 HASH FAIL\n"); + exit(EXIT_FAILURE); + } + }else if (blockHeight == 1002){ + if (nodes[2] == CBGetNodeFull(node)) { + CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1002 NODE FAIL\n"); + exit(EXIT_FAILURE); + } + if (memcmp(txHash, CBTransactionGetHash(initialTxs[7]), 32) != 0) { + CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1002 HASH FAIL\n"); + exit(EXIT_FAILURE); + } + }else{ + CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK HEIGHT FAIL\n"); + exit(EXIT_FAILURE); + } + confirmedNum++; + pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); + }else if (testPhase == LOSE_CHAIN_AND_RELAY){ + for (uint8_t x = 0;; x += 2) { // tx 0 and 2 are reconfirmed + if (memcmp(txHash, CBTransactionGetHash(initialTxs[x]), 32) == 0) + break; + if (x == 2) { + CBLogError("LOSE CHAIN AND RELAY TX CONFIRMED BAD HASH\n"); + exit(EXIT_FAILURE); + } + } + confirmedNum++; + pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); + }else if (testPhase == ORPHAN_TO_CHAIN){ + for (uint8_t x = 3;; x++) { + if (memcmp(txHash, CBTransactionGetHash(doubleSpends[x]), 32) == 0) { + if (nodes[0] != CBGetNodeFull(node) && (x != 3 || nodes[1] != CBGetNodeFull(node))) { + CBLogError("ORPHAN TO CHAIN TX CONFIRMED NODE NUM FAIL\n"); + exit(EXIT_FAILURE); + } + if (CBNodeFullGetFoundTransaction(CBGetNodeFull(node), CBTransactionGetHash(doubleSpends[x])) != NULL) { + CBLogError("OPRHAN TO CHAIN TX CONFIRMED STILL UNCONFIRMED FAIL\n"); + exit(EXIT_FAILURE); + } + break; + } + if (x == 5) { + CBLogError("ORPHAN TO CHAIN TX CONFIRMED HASH FAIL\n"); + exit(EXIT_FAILURE); + } + } + confirmedNum++; + pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); + }else{ + CBLogError("TX CONFIRMED BAD TEST PHASE\n"); + exit(EXIT_FAILURE); + } + CBMutexUnlock(testMutex); +} + +void doubleSpend(CBNode *, uint8_t * txHash); +void doubleSpend(CBNode * node, uint8_t * txHash){ + pthread_t thread; + CBNodeFull * nodeFull = CBGetNodeFull(node); + int nodeNum = (nodes[0] == nodeFull)? 0 : ((nodes[1] == nodeFull)? 1 : 2); + CBMutexLock(testMutex); + if (testPhase == CHAIN_REORGANISATION) { + if ((memcmp(txHash, CBTransactionGetHash(initialTxs[11]), 32) != 0 || !nodeOwns[nodeNum][11]) + && (memcmp(txHash, CBTransactionGetHash(initialTxs[13]), 32) != 0 || !nodeOwns[nodeNum][13])) { + CBLogError("CHAIN REORGANISATION TX DOUBLE SPEND HASH FAIL\n"); + exit(EXIT_FAILURE); + } + doubleSpendNum++; + pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); + }else if (testPhase == LOSE_CHAIN_AND_RELAY){ + for (uint8_t x = 0;; x++) { + if (memcmp(txHash, CBTransactionGetHash(doubleSpends[x]), 32) == 0) { + if ((nodeNum == 2 && x != 0) || nodeNum == 1) { + CBLogError("LOSE CHAIN AND RELAY TX DOUBLE SPEND NODE NUM FAIL\n"); + exit(EXIT_FAILURE); + } + break; + } + if (x == 2) { + CBLogError("LOSE CHAIN AND RELAY TX DOUBLE SPEND HASH FAIL\n"); + exit(EXIT_FAILURE); + } + } + doubleSpendNum++; + pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); + }else if (testPhase == ORPHAN_TO_CHAIN){ + if (memcmp(txHash, CBTransactionGetHash(chainDoubleSpend), 32) != 0) { + CBLogError("OPRHAN TO CHAIN TX DOUBLE SPEND HASH FAIL\n"); + exit(EXIT_FAILURE); + } + if (nodeNum == 0) { + CBLogError("OPRHAN TO CHAIN TX DOUBLE SPEND BAD NODE\n"); + exit(EXIT_FAILURE); + } + doubleSpendNum++; + pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); + }else{ + CBLogError("DOUBLE SPEND BAD TEST PHASE\n"); + exit(EXIT_FAILURE); + } + CBMutexUnlock(testMutex); +} + +void transactionUnconfirmed(CBNode *, uint8_t * txHash); +void transactionUnconfirmed(CBNode * node, uint8_t * txHash){ + pthread_t thread; + CBNodeFull * nodeFull = CBGetNodeFull(node); + int nodeNum = (nodes[0] == nodeFull)? 0 : ((nodes[1] == nodeFull)? 1 : 2); + CBMutexLock(testMutex); + if (testPhase == CHAIN_REORGANISATION) { + for (uint8_t x = 0;; x++) { + if (memcmp(txHash, CBTransactionGetHash(initialTxs[x]), 32) == 0){ + if (x == 1) { + CBLogError("CHAIN REORGANISATION TX UNCONFIRMED TX BAD TX 1\n"); + exit(EXIT_FAILURE); + } + if (nodeNum != (x + 1) % 3) { + CBLogError("CHAIN REORGANISATION NEW TX %u BAD NODE NUM\n", x); + exit(EXIT_FAILURE); + } + unconfirmedNum++; + pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); + break; + } + if (x == 2) { + CBLogError("CHAIN REORGANISATION TX UNCONFIRMED UNKNOWN TX\n"); + exit(EXIT_FAILURE); + } + } + }else if (testPhase == LOSE_CHAIN_AND_RELAY){ + for (uint8_t x = 0;; x++) { + if (memcmp(txHash, CBTransactionGetHash(doubleSpends[3 + x]), 32) == 0) { + if ((nodeNum == 1 && x != 0) || nodeNum == 2) { + CBLogError("LOSE CHAIN AND RELAY TX UNCONFIRMED NODE NUM FAIL\n"); + exit(EXIT_FAILURE); + } + break; + } + if (x == 2) { + CBLogError("LOSE CHAIN AND RELAY TX UNCONFIRMED HASH FAIL\n"); + exit(EXIT_FAILURE); + } + } + unconfirmedNum++; + pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); + }else{ + CBLogError("TX UNCONFIRMED BAD TEST PHASE\n"); + exit(EXIT_FAILURE); + } + CBMutexUnlock(testMutex); +} + +void CBNetworkCommunicatorTryConnectionsVoid(void * comm); +void CBNetworkCommunicatorTryConnectionsVoid(void * comm){ + CBNetworkCommunicatorTryConnections(comm, false); +} + +void CBNetworkCommunicatorStartListeningVoid(void * comm); +void CBNetworkCommunicatorStartListeningVoid(void * comm){ + CBNetworkCommunicatorStartListening(comm); +} + +int domain() { + + puts("You may need to move your mouse around if this test stalls."); + + CBNewMutex(&testMutex); + + // Create three nodes to talk to each other + CBDepObject databases[3]; + + CBNodeCallbacks callbacks = { + onFatalNodeError, + newBlock, + newTransaction, + transactionConfirmed, + doubleSpend, + transactionUnconfirmed, + uptodate + }; + + for (uint8_t x = 0; x < 3; x++) { + + char directory[5], filename[26]; + + sprintf(directory, "./%u", x); + mkdir(directory, S_IRWXU | S_IRWXG); + chmod(directory, S_IRWXU | S_IRWXG); + + // Delete data + sprintf(filename, "%s/cbitcoin/log.dat", directory); + remove(filename); + sprintf(filename, "%s/cbitcoin/del.dat", directory); + remove(filename); + sprintf(filename, "%s/cbitcoin/val_0.dat", directory); + remove(filename); + for (uint8_t y = 0; y < 19; y++) { + sprintf(filename, "%s/cbitcoin/idx_%u_0.dat", directory, y); + remove(filename); + } + + CBNewStorageDatabase(&databases[x], directory, 10000000, 10000000); + + nodes[x] = CBNewNodeFull(databases[x], CB_NODE_CHECK_STANDARD, 100000, callbacks); + + CBByteArray * loopBack = CBNewByteArrayWithDataCopy((uint8_t [16]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 127, 0, 0, 1}, 16); + CBNetworkAddress * addr = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45562 + x}, 0, false); + CBReleaseObject(loopBack); + + CBNetworkCommunicator * comm = CBGetNetworkCommunicator(nodes[x]); + comm->maxConnections = 3; + comm->maxIncommingConnections = 3; + comm->responseTimeOut = 5000; + + CBByteArray * userAgent = CBNewByteArrayFromString(CB_USER_AGENT_SEGMENT, false); + CBNetworkCommunicatorSetUserAgent(comm, userAgent); + CBReleaseObject(userAgent); + + CBNetworkCommunicatorSetOurIPv4(comm, addr); + CBNetworkCommunicatorSetReachability(comm, CB_IP_IP4 | CB_IP_LOCAL, true); + + // Disable POW check + CBGetNode(nodes[x])->validator->flags |= CB_VALIDATOR_DISABLE_POW_CHECK; + + // If debug, disable timeouts + #ifdef CBDEBUG + comm->connectionTimeOut = 0; + comm->recvTimeOut = 0; + comm->responseTimeOut = 0; + comm->sendTimeOut = 0; + comm->timeOut = 0; + #endif + } + + // Give node 0 the addresses for node 1 and 2 + CBByteArray * loopBack = CBNewByteArrayWithDataCopy((uint8_t [16]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 127, 0, 0, 1}, 16); + CBNetworkAddress * addr = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45563}, 0, true); + CBNetworkAddress * addr2 = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45564}, 0, true); + CBReleaseObject(loopBack); + + CBNetworkAddressManagerAddAddress(CBGetNetworkCommunicator(nodes[0])->addresses, addr); + CBNetworkAddressManagerAddAddress(CBGetNetworkCommunicator(nodes[0])->addresses, addr2); + + CBReleaseObject(addr); + CBReleaseObject(addr2); + + // Give 1001 blocks to node 0 with last block containing four transactions. Also give 500 of them to node 1 and then give 500 other blocks to node 1. + + CBBlock * block = CBNewBlock(); + + block->prevBlockHash = CBNewByteArrayWithDataCopy((uint8_t []){0x6F, 0xE2, 0x8C, 0x0A, 0xB6, 0xF1, 0xB3, 0x72, 0xC1, 0xA6, 0xA2, 0x46, 0xAE, 0x63, 0xF7, 0x4F, 0x93, 0x1E, 0x83, 0x65, 0xE1, 0x5A, 0x08, 0x9C, 0x68, 0xD6, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00}, 32); + block->time = 1231469665; + block->target = CB_MAX_TARGET; + block->nonce = 2573394689; + block->transactionNum = 1; + block->transactions = malloc(sizeof(*block->transactions)); + block->transactions[0] = CBNewTransaction(0, 1); + + CBByteArray * nullHash = CBNewByteArrayOfSize(32); + memset(CBByteArrayGetData(nullHash), 0, 32); + CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0,0}, 2); + CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); + CBReleaseObject(script); + CBReleaseObject(nullHash); + + script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); + CBReleaseObject(script); + + CBTransactionPrepareBytes(block->transactions[0]); + CBTransactionSerialise(block->transactions[0], false); + + CBBlockCalculateAndSetMerkleRoot(block); + CBBlockPrepareBytes(block, true); + CBBlockSerialise(block, true, false); + + // Add blocks + CBNodeFullAddBlockDirectly(nodes[0], block); + CBNodeFullAddBlockDirectly(nodes[1], block); + + CBByteArray * firstCoinbase = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[0]), 32); + + // Add 999 more + CBByteArray * prevToFork, * lastNode0BlockHash; + + for (uint16_t x = 0; x < 1499; x++) { + + if (x == 999) + block->prevBlockHash = prevToFork; + else + block->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + + block->time++; + CBByteArraySetInt16(block->transactions[0]->inputs[0]->scriptObject, 0, x + 1); + + CBTransactionSerialise(block->transactions[0], true); + CBBlockCalculateAndSetMerkleRoot(block); + CBBlockSerialise(block, true, true); + + if (x < 999) + CBNodeFullAddBlockDirectly(nodes[0], block); + + if (x < 499 || x >= 999){ + CBNodeFullAddBlockDirectly(nodes[1], block); + if (x == 498) + prevToFork = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + } + + if (x == 998) + lastNode0BlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + else if (x == 1498) + lastNode1BlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); + } + + // Create three keys and add watched hash to the accounters + for (uint8_t x = 0; x < 3; x++) { + CBInitKeyPair(keys + x); + CBKeyPairGenerate(keys + x); + CBAccounterAddWatchedOutputToAccount(CBGetNode(nodes[x])->accounterStorage, CBKeyPairGetHash(keys + x), CBAccounterNewAccount(CBGetNode(nodes[x])->accounterStorage)); + } + + // Add block with fours additional transactions for node 0 + block->prevBlockHash = lastNode0BlockHash; + block->time++; + CBByteArraySetInt16(block->transactions[0]->inputs[0]->scriptObject, 0, 1500); + + CBTransactionSerialise(block->transactions[0], true); + + block->transactions = realloc(block->transactions, sizeof(*block->transactions)*5); + block->transactionNum = 5; + + for (uint8_t x = 1; x < 5; x++) { + block->transactions[x] = CBNewTransaction(x-1, 1); + CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0}, 1); + CBTransactionTakeInput(block->transactions[x], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, firstCoinbase, x-1)); + CBReleaseObject(script); + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + x % 3)); + for (uint8_t y = 0; y < 4; y++) + CBTransactionTakeOutput(block->transactions[x], CBNewTransactionOutput(312500000, script)); + CBReleaseObject(script); + CBTransactionPrepareBytes(block->transactions[x]); + CBTransactionSerialise(block->transactions[x], true); + initialTxs[x-1] = block->transactions[x]; + CBRetainObject(block->transactions[x]); + } + + CBBlockCalculateAndSetMerkleRoot(block); + + CBBlockPrepareBytes(block, true); + CBBlockSerialise(block, true, true); + + CBNodeFullAddBlockDirectly(nodes[0], block); + + lastInitialBlock = block; + + // Broadcast transactions + + CBTransaction * deps[2]; + + for (uint8_t x = 0; x < 10; x++) { + CBTransaction * tx = CBNewTransaction(x+4, 1); + CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[x % 4 + 1]), 32); + CBTransactionTakeInput(tx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, x/4)); + CBReleaseObject(prev); + // Record one that will be lost and one that wont be lost + if (x == 3 || x == 5) + deps[x/2-1] = tx; + if (x >= 6){ + // Odd ones will be lost + CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(deps[x % 2]), 32); + CBTransactionTakeInput(tx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, (x-6)/2)); + CBReleaseObject(prev); + } + script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + x % 3)); + CBTransactionTakeOutput(tx, CBNewTransactionOutput(156250000 + (x >= 6)*156250000, script)); + CBTransactionTakeOutput(tx, CBNewTransactionOutput(156250000, script)); + CBReleaseObject(script); + // Sign transaction + CBTransactionSignPubKeyHashInput(tx, keys + (x % 4 + 1) % 3, block->transactions[x % 4 + 1]->outputs[x/4]->scriptObject, 0, CB_SIGHASH_ALL); + if (x >= 6) + CBTransactionSignPubKeyHashInput(tx, keys + (x % 2)*2, deps[x % 2]->outputs[(x-6)/2]->scriptObject, 1, CB_SIGHASH_ALL); + CBTransactionPrepareBytes(tx); + CBTransactionSerialise(tx, true); + CBNodeFullNewUnconfirmedTransaction(nodes[0], NULL, tx); + initialTxs[x+4] = tx; + } + + testPhase = RECEIVE_INITIAL_BLOCKS_AND_TXS; + + // Start nodes and listen on node 1 and 2 + for (uint8_t x = 3; x--;) { + + if (x > 0) + // Block, thus ensuring nodes are listening before we try to connect. + CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[x])->eventLoop, CBNetworkCommunicatorStartListeningVoid, nodes[x], true); + else + CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[x])->eventLoop, CBNetworkCommunicatorTryConnectionsVoid, nodes[x], false); + + } + + CBThreadJoin(((CBEventLoop *)CBGetNetworkCommunicator(nodes[0])->eventLoop.ptr)->loopThread); + + return 1; +} END_OF_C_CODE From a00a50fc491bbec14dbdd0320305d5eb4e6803e8 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 19 Jun 2014 15:34:06 +0900 Subject: [PATCH 008/127] memory corruption in testCBTransaction --- .project | 17 + caller.pm | 10 + library/test/testCBCallbackQueue.c | 4 +- library/test/testCBNodeFull.c | 2 +- scripts/_Inline/lib/auto/FOO_2204/.packlist | 1 + .../_Inline/lib/auto/FOO_2204/FOO_2204.inl | 22 + scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so | Bin 0 -> 190904 bytes scripts/_Inline/lib/auto/FOO_2610/.packlist | 1 + .../_Inline/lib/auto/FOO_2610/FOO_2610.inl | 22 + scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so | Bin 0 -> 49560 bytes scripts/_Inline/lib/auto/FOO_3688/.packlist | 1 + .../_Inline/lib/auto/FOO_3688/FOO_3688.inl | 22 + scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so | Bin 0 -> 42766 bytes scripts/_Inline/lib/auto/FOO_4bc7/.packlist | 1 + .../_Inline/lib/auto/FOO_4bc7/FOO_4bc7.inl | 22 + scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.so | Bin 0 -> 190520 bytes scripts/_Inline/lib/auto/FOO_4be1/.packlist | 1 + .../_Inline/lib/auto/FOO_4be1/FOO_4be1.inl | 22 + scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so | Bin 0 -> 141717 bytes scripts/_Inline/lib/auto/FOO_55bb/.packlist | 1 + .../_Inline/lib/auto/FOO_55bb/FOO_55bb.inl | 22 + scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so | Bin 0 -> 42766 bytes scripts/_Inline/lib/auto/FOO_63be/.packlist | 1 + .../_Inline/lib/auto/FOO_63be/FOO_63be.inl | 22 + scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so | Bin 0 -> 190528 bytes scripts/_Inline/lib/auto/FOO_6538/.packlist | 1 + .../_Inline/lib/auto/FOO_6538/FOO_6538.inl | 22 + scripts/_Inline/lib/auto/FOO_6538/FOO_6538.so | Bin 0 -> 142923 bytes scripts/_Inline/lib/auto/FOO_675c/.packlist | 1 + .../_Inline/lib/auto/FOO_675c/FOO_675c.inl | 22 + scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so | Bin 0 -> 49278 bytes scripts/_Inline/lib/auto/FOO_6938/.packlist | 1 + .../_Inline/lib/auto/FOO_6938/FOO_6938.inl | 22 + scripts/_Inline/lib/auto/FOO_6938/FOO_6938.so | Bin 0 -> 49278 bytes scripts/_Inline/lib/auto/FOO_8c0e/.packlist | 1 + .../_Inline/lib/auto/FOO_8c0e/FOO_8c0e.inl | 22 + scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.so | Bin 0 -> 49544 bytes scripts/_Inline/lib/auto/FOO_a2fb/.packlist | 1 + .../_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl | 22 + scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so | Bin 0 -> 48965 bytes scripts/_Inline/lib/auto/FOO_a4ed/.packlist | 1 + .../_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl | 22 + scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so | Bin 0 -> 142459 bytes scripts/_Inline/lib/auto/FOO_c054/.packlist | 1 + .../_Inline/lib/auto/FOO_c054/FOO_c054.inl | 22 + scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so | Bin 0 -> 141717 bytes scripts/_Inline/lib/auto/FOO_c629/.packlist | 1 + .../_Inline/lib/auto/FOO_c629/FOO_c629.inl | 22 + scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so | Bin 0 -> 47077 bytes scripts/_Inline/lib/auto/FOO_d162/.packlist | 1 + .../_Inline/lib/auto/FOO_d162/FOO_d162.inl | 22 + scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so | Bin 0 -> 141717 bytes scripts/_Inline/lib/auto/FOO_dc61/.packlist | 1 + .../_Inline/lib/auto/FOO_dc61/FOO_dc61.inl | 22 + scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.so | Bin 0 -> 42766 bytes .../_Inline/lib/auto/coin_pl_2204/.packlist | 1 + .../lib/auto/coin_pl_2204/coin_pl_2204.inl | 22 + .../lib/auto/coin_pl_2204/coin_pl_2204.so | Bin 0 -> 190936 bytes .../_Inline/lib/auto/coin_pl_4bc7/.packlist | 1 + .../lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl | 22 + .../lib/auto/coin_pl_4bc7/coin_pl_4bc7.so | Bin 0 -> 190544 bytes .../_Inline/lib/auto/coin_pl_6538/.packlist | 1 + .../lib/auto/coin_pl_6538/coin_pl_6538.inl | 22 + .../lib/auto/coin_pl_6538/coin_pl_6538.so | Bin 0 -> 142955 bytes .../_Inline/lib/auto/coin_pl_a4ed/.packlist | 1 + .../lib/auto/coin_pl_a4ed/coin_pl_a4ed.inl | 22 + .../lib/auto/coin_pl_a4ed/coin_pl_a4ed.so | Bin 0 -> 142483 bytes .../_Inline/lib/auto/coin_pl_d162/.packlist | 1 + .../lib/auto/coin_pl_d162/coin_pl_d162.inl | 22 + .../lib/auto/coin_pl_d162/coin_pl_d162.so | Bin 0 -> 141749 bytes scripts/coin.pl | 1658 +---------------- 71 files changed, 540 insertions(+), 1657 deletions(-) create mode 100644 .project create mode 100644 caller.pm create mode 100644 scripts/_Inline/lib/auto/FOO_2204/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl create mode 100755 scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so create mode 100644 scripts/_Inline/lib/auto/FOO_2610/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl create mode 100755 scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so create mode 100644 scripts/_Inline/lib/auto/FOO_3688/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_3688/FOO_3688.inl create mode 100755 scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so create mode 100644 scripts/_Inline/lib/auto/FOO_4bc7/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.inl create mode 100755 scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.so create mode 100644 scripts/_Inline/lib/auto/FOO_4be1/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl create mode 100755 scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so create mode 100644 scripts/_Inline/lib/auto/FOO_55bb/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl create mode 100755 scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so create mode 100644 scripts/_Inline/lib/auto/FOO_63be/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl create mode 100755 scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so create mode 100644 scripts/_Inline/lib/auto/FOO_6538/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_6538/FOO_6538.inl create mode 100755 scripts/_Inline/lib/auto/FOO_6538/FOO_6538.so create mode 100644 scripts/_Inline/lib/auto/FOO_675c/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl create mode 100755 scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so create mode 100644 scripts/_Inline/lib/auto/FOO_6938/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_6938/FOO_6938.inl create mode 100755 scripts/_Inline/lib/auto/FOO_6938/FOO_6938.so create mode 100644 scripts/_Inline/lib/auto/FOO_8c0e/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.inl create mode 100755 scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.so create mode 100644 scripts/_Inline/lib/auto/FOO_a2fb/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl create mode 100755 scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so create mode 100644 scripts/_Inline/lib/auto/FOO_a4ed/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl create mode 100755 scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so create mode 100644 scripts/_Inline/lib/auto/FOO_c054/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl create mode 100755 scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so create mode 100644 scripts/_Inline/lib/auto/FOO_c629/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl create mode 100755 scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so create mode 100644 scripts/_Inline/lib/auto/FOO_d162/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl create mode 100755 scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so create mode 100644 scripts/_Inline/lib/auto/FOO_dc61/.packlist create mode 100644 scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.inl create mode 100755 scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_2204/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_2204/coin_pl_2204.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_2204/coin_pl_2204.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_6538/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_a4ed/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_a4ed/coin_pl_a4ed.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_a4ed/coin_pl_a4ed.so create mode 100644 scripts/_Inline/lib/auto/coin_pl_d162/.packlist create mode 100644 scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl create mode 100755 scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so diff --git a/.project b/.project new file mode 100644 index 00000000..36c11893 --- /dev/null +++ b/.project @@ -0,0 +1,17 @@ + + + cbitcoin + + + + + + org.epic.perleditor.perlbuilder + + + + + + org.epic.perleditor.perlnature + + diff --git a/caller.pm b/caller.pm new file mode 100644 index 00000000..74b67c26 --- /dev/null +++ b/caller.pm @@ -0,0 +1,10 @@ + + use CBitcoin::CBHD; + + + +my $masterkey = new CBitcoin::CBHD; +$masterkey->generate(); +my $masterkeywif = $masterkey->WIF(); +print "hi($masterkeywif)\n"; + diff --git a/library/test/testCBCallbackQueue.c b/library/test/testCBCallbackQueue.c index 34f4226c..5978fd66 100644 --- a/library/test/testCBCallbackQueue.c +++ b/library/test/testCBCallbackQueue.c @@ -38,8 +38,8 @@ int main(){ int arg = 0; for (int x = 0; x < 1000; x++) CBRunOnEventLoop(eventLoop, callback, &arg, x == 999 ? true : rand() % 2); - if (arg != 1500) { - printf("ARG FAIL %u != 1500\n", arg); + if (arg != 1499) { + printf("ARG FAIL %u != 1499\n", arg); return EXIT_FAILURE; } CBExitEventLoop(eventLoop); diff --git a/library/test/testCBNodeFull.c b/library/test/testCBNodeFull.c index 2f552504..b0786321 100644 --- a/library/test/testCBNodeFull.c +++ b/library/test/testCBNodeFull.c @@ -1416,7 +1416,7 @@ void CBNetworkCommunicatorStartListeningVoid(void * comm){ } int main() { - + return EXIT_SUCCESS; puts("You may need to move your mouse around if this test stalls."); CBNewMutex(&testMutex); diff --git a/scripts/_Inline/lib/auto/FOO_2204/.packlist b/scripts/_Inline/lib/auto/FOO_2204/.packlist new file mode 100644 index 00000000..4bfe3f7b --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2204/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so diff --git a/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl b/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl new file mode 100644 index 00000000..fc3a83f7 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl @@ -0,0 +1,22 @@ +md5 : 22047321461e07208bd822a5074d9a9b +name : FOO_2204 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:51:31 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so b/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so new file mode 100755 index 0000000000000000000000000000000000000000..0bec19f05031f00b966b623ef2719b15a29bcc88 GIT binary patch literal 190904 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_2610/.packlist b/scripts/_Inline/lib/auto/FOO_2610/.packlist new file mode 100644 index 00000000..b07a78df --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2610/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so diff --git a/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl b/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl new file mode 100644 index 00000000..b5cfad73 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl @@ -0,0 +1,22 @@ +md5 : 2610a874ddd74957d0ca961dc1b78190 +name : FOO_2610 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 15:06:00 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so b/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so new file mode 100755 index 0000000000000000000000000000000000000000..48827a32da174a75ebcd9cb20b2325900f680aac GIT binary patch literal 49560 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 kUn1`=&^PH?yh{2n2&+Sz&-VjTGBu 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 Ty`oYbYl@K(E2>P~THF5zU?3Z1 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_4be1/.packlist b/scripts/_Inline/lib/auto/FOO_4be1/.packlist new file mode 100644 index 00000000..812b0484 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_4be1/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so diff --git a/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl b/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl new file mode 100644 index 00000000..4a2ffa45 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl @@ -0,0 +1,22 @@ +md5 : 4be153c3762c318cb2e16551dcccbf20 +name : FOO_4be1 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:54:16 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so b/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so new file mode 100755 index 0000000000000000000000000000000000000000..eba40915a44de24f6f8ccdd17d6ce8eccb86e56d GIT binary patch literal 141717 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%0A$3{S(&Rls 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_55bb/.packlist b/scripts/_Inline/lib/auto/FOO_55bb/.packlist new file mode 100644 index 00000000..f920359f --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_55bb/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so diff --git a/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl b/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl new file mode 100644 index 00000000..7ea91b99 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl @@ -0,0 +1,22 @@ +md5 : 55bb3a0cde0a2b29c60454f28f776d29 +name : FOO_55bb +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:53:40 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so b/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so new file mode 100755 index 0000000000000000000000000000000000000000..e0923876a6f3b36c49ec71ed3001e1fad0348088 GIT binary patch literal 42766 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_63be/.packlist b/scripts/_Inline/lib/auto/FOO_63be/.packlist new file mode 100644 index 00000000..08d39772 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_63be/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so diff --git a/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl b/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl new file mode 100644 index 00000000..2806fa92 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl @@ -0,0 +1,22 @@ +md5 : 63be203edb990a69d57a0f275894a1ed +name : FOO_63be +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:51:26 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so b/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so new file mode 100755 index 0000000000000000000000000000000000000000..53d199d815a91ff1930ca4242f0fd32c1d416c77 GIT binary patch literal 190528 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 evs=8Va$VM zpg#QYSu4xeZmJZAXZIJ3Nh5pq+qr*PVyS^Da6b<&t*vkteQUC2;^K z;v|nq5I#dBzF5*gNr?==CkCHj0&R|~B)$T)w>(b=?Te3H;$EOB_@v=85}z!5 z2I3Qf4;_*C&^YQw07pDNhwWW?eOq11Q=ASXO*W-27@-v z^d+m2r0wy4^TK}$joYh#ix>XYFt)uIeCb7>^^ntE{pY>NA%9x&X?sx4Slcpzw<8ek z>0j+dpZ}nP_Ub#4sO|BWp^x_X-+Pgh??s;*z36kyiyuDnB8MjI_VoGFi#}0a>c8#9 z-q~LCq_Jnkr|psEMgFs1@@)wOw5R_PFZHkWBA@0_Yg=W2XL|9&?mwpqx$hp>w{)fHD@8(7Sr@ho4>cy@*y~r7iIQDHPuWs?8|4c9ZlaSG#|3`Sy zvzHe+OKMD%wEm&AqP+3)2QB_c2C@3u}tuhqM1u+z4 z=1(e^Q(RFzue7qNxFUa2+WduO#rcJ^=NF5z_Dc$i78jC$!uh2)qT+-_1-Vi}+Wf-G z%Hm2xWfi1W7#7VfuP806nrkSpt|}@itT4>TD_BriT2_#jnze9VMn%QK3PVm-K~+gb z!F9zq7|L-{TsWs-UU5}rd2vzc+|nXLPI1Njg33h&L(3Nx%$;92uTpS|Di#)ASFpIU zpt`bfUa_I7bV0G9vZAnTjv*~IucUD3h>i4SJoK9nT`CKUs!A7@WtPEulAT^y zRfy8IMd`(r#TBLSWu=F_@x@iV!GhuiMGMM>)Qkn?RX5}nRg{)jgoZ$)*S2Uob2iRbt3UE0~yZ1x7+y zaRs=1c$5xZSdfvHQ$2frY0*Rsmj#9M=PxWm)$}}DK_z9kY*ki#eZlM-3W};L78Mti z6=G=28CptBD@qqZ7`63?C+Vu0kXu?_ykJh^$OO+S$VOhnURYT&Zec}U>AbSSs%k`9 z>wR7s8o<*c+2m-OTT$FLr{%CgO?Prs&(1BLi&?0w$fI^{@uK32%3`WV$)xiZv>`=2 znZnyB%DWS0l;XjnFxKkW*M%fok$>y!5o5qjlmk3%*Bn>bl*~!YS?=nnQJJ z8<(`U5J*Hwz&XvVgrHe%Qf_a2ob<2vcU$C&Es&Kwx_QHi#1>>@_3r3C@mL$qC zeHWIOQjjrC7Epzvl48tie9lLqmlDXFktZq@VF(mp=BzTzFP&X9yR@okVQJZrp+gde zR4&xB2A36AUB9s6y7r1Hs}@#Z4Qa1PtVfl)BDq9C{E!5X4(2bMH?Op8p028<&fubo z8_KH|>PrLzG7_Pwr<}Q^^NR-;7wKzDvj)@hrstCqBMk+`b7);DD41PYDHeIKunt~Q zU0HDn=7+-hm%ulp1uUI?$>OAu1tW(Ko?lv4y?F4vvT8$iPR8WCysQGD%lNF!)U<-3 zLxvl)v!O#qXj=)QCVq$1%`r=iZJs>bXKs$0=RWhie@Jz)WovU_GcFI&j{c`wZYf&- zR83!EG+g+P>JYb)@97K%E3kDST`8Fjedxv_4kIjlUzR5ThnJS(R-CWl5|q=PuR6Na zpZXu=s&6z*l=Z2-C^xyv*KV*9o8Px28Z7r`>o-^ly77Ivn%+m4o*L5X2em|`;Xt|DW z*YOwY_&GZMTFHlN`8{N0YjO9M|!+`|nhy>iF9C0>p38@hShb^?l~*C%_1DRY zj<4OTri#HjzV>|s@gsG7?H(}ktvbH;-2n09b$tDO@dO>8?kQ_Wl8zsxF+o#weEN<= zJM23CER6}8qvPwp7nq^r_te#&rQ_2*aP273@wI#AR93Fz&(DS#oQ}U%$M2`(uh;SAl)+0k>-cht;ry*Se!Nc34jo@!V)D`^9bfz2feMc3 z_ycuvnst2o9!fio>G*>+Cg^b;U;BQ8id7w-zK_z579F4FW9>Mj<0ooNqMNK7QT`9* zXW~Ca$EWYUv?Ex@*S_1LvPd0YzW`cweEQx*JK}YG`mRem5_EjJN2?u4I{qk)37Vqg z(|2gvVb}4;XiU%?9e=EjKSRe)*70ZQ_}cf3R9vFtU#_cPuH&cZ_=|OXn~qPuKC+>i8Kt{(2pMoQ}U)#~-ibZ`JWLb^IMV{sbMrNyne4;~&xS>AN!R zXx8y3X-v>#I{suG|G18?eXmKys*bN;2U~RfDLOf4bo^W$-|)DVqb~TLzJJvYMaS2^ z>!q?_9e=7;88lMIpQhtmb^Pf%e!Px9L&vw*ey6C}zSwxw9#HnX3tC6qR%R&VRUS8HgcRx z*pF}x#}f#Xo1EnwrxK>6-8qZn(S&KM<;>xDC}CRSohck&OqjM-&IFG85~eMc)5>u) zVOsi~!5oJYrX}BL;5dLVE%nZp^I-Hd5vC>Hd7R_3w*k}A?ri4x6k%G@olP8{Buq=W zb1TPR5T+&Ext`;X2-DK-Y~=VI!n9;NYdC(5FfG;2a*p>ArX|`ri{o8{X=!%maQqx$ zT9Tb996w2zmRx57$Bz)EEuz!P@dJcu>2(HkyoxX_xlRMecMztf*4gqW*?${hE8*iD z-$c|ZsPb_!m)(6ay*-G9O3mGUrCsjPG=*>xrF-@uHkqB;fn~DbDT<; zmPqF;jz<%wrO}zg@le9FBsx<#zL+pAh0X+y`x2%l&}rp3nlLSW&R~v13Dc72G;kb1 zn3g(c%Q+r@!nDLWk8^x>DKIT<&Ss8J5vC>0*~IZl!nBk*w{rXiVOqkR>pA|2FfCoq zMvmVhJd$t?$FC8lrOH{(@jk+|L^)@1yo)d`P0k#SpCe35k~4+lCkfM1JYiKbMXnmfm$R ziI#`t#v9SBsyCFoNGcaL75d)@He|In&vZ_Q0B0`#YizVH{q7i=)iv22RdMllM}Ay_ z-H{cSl;uc|OUc5Sz3NiSfb_T=%Ydx7S(X9$apjf)>*8wA#xh`ITqCDj;?{HeLflqP zcgHn>+8gTPjuUm9w>RX+DTmYJ6j~QRyVCfyql;jBLwcN*&LW}j!%LuIeUkbC0<)Kv z2=)8l5u&9BNX7k@-pES3`W`=cYu~k4bMRHrgA^YUY4LS&kMvg0-y4 za%VI3|DQ9|G$nFU(O30jCe)jcpH2xfTb4aUWv|FGDj0NJeGYJ^2?dGo*d2%Mjvv$- z%ukt)gV1FSuUb-`<@nLwFqQY8*rXa@CJJw$!Z9V~RRaL#13*tlNx51mPYPv#1)rhwmMBIjM zb7$d6CC3lYQyqwm(&dkBdSa_>nr*5re`+3bV+9uWIre&UKbp|(j=H$TU_kX{XoZ}* z7;^S3%HEj`*1q2mG&)z4FfQ#4tK+ts(WW6eoGQ@@>$Enm2oQ7-i&s;XhzsW%bMNsnHquists!I=?@M@s^c@qLA8;bg;L6& zOveH8*7st4Q_a67WdqP zr(0Whkka=0)!dtN?8Cyjdo9c6A?K0pknt?iOynjth@nQN(U2pR zQZf=>wb!S|C1oTwCB8~YSQobgWvT-`l2VVN*9@del5N!YmbxcNg@)wavtaMZbjJ^r zkD6+H=QdZ2w}#{o3#jHg8O|+n%?J!?zw;{+r_r)~7^GZ!4YBOC`;F?$VB1H1TYUoT zew>~7vAPLN;kMn}rw1Xt4hmor*}wwH1}o3(eCu%l6@eP$^mJebA`BLKSQO zytw*H@Dn*-eVTZV&)|an)RE($X0NZ?UI%aY2iiFUF-Fn&H~3B62exp)JD5kHui7Gn zsVbVIo<_AS$4T`B)!-vzK5X(B88icPu$7kv<)T!e{mg6_o36;3{G+mq%KCwH};?-HGW3R77EPqtzfRFZd zE2(`$@{2qZ)n2^DP4S4wFldHYQXFGYq53LU{{4OmVru_jJdUNDpYXBzC2=A658-kx zj>+zJuejPd(FATnb@@Feb2PHi-KubW! z$@1}_kb}*Fkh5OuxdC($>OCUqqoCCPMoAw7B|SEQ-fnlSj@yj(+TsCz4fxdmQlfUp zdpNxfr({Yk=-r@oprrCL&MD;u=mJaMN3g4pNZH48khGIp zW;xF8p+%U)zX>5EK2hR-LcFIUbmc=eAC)zyN?b{b&}5?ednj^+D0dlabtw`r6&XN^ zP|GaGsXbRpap_Y0Y>C4!P-LzwiIz2&OMJ3LQ=|rM++M#!l)Ds3a4C``6ZQ1sA%r|aql@gWC-D?!wU3AR``U<4af!D}@ivIJ*JIiRaa za$K@zNLjy1cTi0p#625C8#RzhcrTkJ$N2+#@dHp7dh|jY1$~Ola`jRod$~*YQiGbJ zmu;er`WPhbc?kfnA+J=!5~5F|FKlsXS=fhDTYdG_wdYNiWy>HDU{>vUAIma&_7R|* zm#hHDsDF{V$QX6PvTTMgZC^4bOX3vd>Izi2D=e*di^qt9PJlZHeDyC9dO; z>I+Tzo(5x!T2rg~oE+Pz_bto*0g38x&2(+yslmXcQO~K^CcUcLDXl=U6l6uWDQe#L zqKB?hzX|o>*7{uRozTOl)NAcwV`gnD%$q=qc0E*2{Qldk)tBKJ9$Bqp;dZf4llwD$ z$FxO5$BXUtW|epR(RZTbndk&ll@VJClcjE{N41$i$-6GM&Ey{37Z5yE?;c_ zBGGCw>hGaZk&XpffvdC#@f{d#N%r&1IFRm82N^AO#b{;O-n57BKI(TLpe0GIfsk~^ zPg#yH(jAyU4`(8azT=67z1bl(1jSj7R`qx2V5|8Po~F@2ySZ<`p$^wWfjxXO9D%xa zY=RXu#Hy|yB$a53cSzmE#eAbaCmYpJBR)I~Z5lPY8!eNKZbl#O&G!#AE>EOw5$ zq^aCFo<=p=Z8SkPoceF!)U79}2H!c7K61A~yT&egVz+@^V?9+``X{X{)yGkE2Dc^< z#VTU+jpH3$E7!*H4PMT-+Bv-GAEK%A-&jNDHrngOdN1743wpKn@Er(@bj`C6Kpwsi z)P_`ZPR3RnW$J14nM`sm%SOXh_WG&F&q=trHsN9zBqi8B#ujW@Mn6%p*XJtu#M{TD zg42gMbd|d$ZWd0}u`WA?(pkfZ`ni}}`jVdlY7Vsu#Qu0ajU_A|DnU$vsGYN0M<13PwCVn(d{ zq!|Ke>=Ra>gqZYE$1Tf(b>h{H@RXx&T@x~lul==ubhFgifcCzI##u#Qs?Q+-YW~1| zoI0+MW!V&r`w0!ZzasUt-gb2-0gf%AtIyEHIa=)LW3g~zv-ulhyH+JNua2{di>I?W zA{lV;bPJV?`VYT&QaKwt)lx8ZQO>7Gkx+8P)bf4KCZGNQI;wdM*g7bSKq*t`9fw3WJ*)sB=%Inc1X5p@H~}_ zK?$EG5?fzJz;Hi>6vTRg%eYC}W!$7G>LRfBs(gm#!`F{z4IjRLpoqr&&yZL9t+D!m zwml&kIeTck#YN+KFlQS6o6-mW<(^W9A&ERDB{dO3abbL#7MguDNz`yZ@?O5iDM^15 zUBTtc(b?g;xF!fkJPkNK078A?^auz-PN#2xEX8Lp-QQQsp=#o3NJbLxS_BT|N;w3m z+l3Lko&b}Zt!|W@aN>|Obrm@2mhCU_)XqW{^Q^_Dkgm5eN)bZ!8q{&yznd3{Yu?q| zTyf83Ckcfi+&St=+0zQ@sXO%)FF9L?6G@y1>brjRx+Z`uTv2RAmyVBcy@f%V?sz-h z5gwpX);W!0O z?IEL@O?5RU)|IoIZ&JSj-;P}Z-F~Y#AEN=D<(QSC-US;lTyR5g3?@F+0Ga>o(oJIR z^_ZrxWw3rtF4-7IA;*2l59e9=yg(ZO+?&B>!|rg}$*te0zkVea`QK3n5tv;u?W80b z)g@51Gdiq;V495D>$C=CwJKKQ`>EH4Ti5+jxvSAhYu8j^h>%Cfx$6UED4YVvvrc|)l7uP&}HxV*n_kD%QgDm>;Y zR54+aJ8(Tk4k<}8YR=*QMSPGxqJm}nJDT5T!0&1rV%ZtT6+sDajvJ3MIIb!J8s9Vp z8uxc;JkmpB((*<`upvj9q0{m?I80cRqKH^GLhsI~y!8w3Dz8Qv#d=vdE$Pyw)UnH_ z0Hp5g@SCSoWq}F$s^8wU?)K_TtYK<17$Oyq^MzdGfmA1!>#29EEVz<_ zv#bUwZB#Goq`KEY18+%?s#Es_zHd_dxYVVU1wJmReVVHwvX`!1$`E1U+>*r8u3WII zo8T7pZYbUv-)=kZUD#IWUQx_1`3{--)d8GjOuaV z&M0i?K;f@Gb1SUk+dXwZ7((H9G3+%pO8D@n8JEwNlRK$V89MP6?_8ZmcalblE{$wb zBXK?4N!wa5g#Yfr zgoKq({Rea)`UFa_(ZF>A7U}vIxXQJMOxV#K#x<*zT#fq)pjeqOLG1dE%Zf|LijNS* z&RB7lj@%&~da*$J4ZYMY(hw03Fp`aMJ(gA333Y_z5h;HexYtBixR%aX+}X5YM3+-2!=+ z?>2N>h*6zYUeh##7_C>#g98waSe*eH_JU# zq-_2K&S`IT4u@JuCv3zJ1wOZ&0;f|thIFjssgJ~nrTYQzPe2~M4Ti||&#^LqJ0lI; zmtEY~iQBLXi%#B35V4^<<98rFf_?X8>`(`%p9ToLF7> zUQa4|Inu&2II>_7xl%+YSVSiuHgzgGl~AMubMjG48B}my=XCV#-aZBM*>NS@>Y3)a zH$sWFALgsiK<`dz`R1_>wR{G}q~!`vEvf&X;h;9Y6pCF;fm$Z^ORTf{4enS!hGK11 zdccnGfB%6N{y#B4(ENSDo@q2!oYL5HH&TI!s57B_ryRNj3UmP2n(;V_$&4~6{ADT>UJiyZV-4S+Bo`C6 z+{LXC+|O*_Ug_dqE4X(PH{Hd}7u;`&JH*AkjJR?k5SHGCSb44kg1?JGz?T8sv%qfP z0eGZS&e-`@ht7Ba#o8(mL1y0ohH!=hvx=sQYY`B4Qp}yzDz;;-%qZ??H$aoOUA+v6 z;+aK!P}tRKI9{CvPjgw&VfEGR2Iis~ zW#>c0)$azrN38!xX9xwlLUIQkfBzbHhGkg`?^!-2Qk!JpThhaq!#%rDMY!iRT4fuO z=i$dH>P8p$1>(9^Y4-w1vrmfp9X#l{{t12@f}~nHYuylN(SdaqVI8+6mTdXqRn3<3 z80oO(vCF_c=HjZvb=gAt590burt1!RiaG~=)mBM6Z0S^x=0SlD%&?5yfpKDmA+e>Mu=e@$@IeMJvmW)|V`9r1KXB8jV``dJRA zcuHhFR7kC_<3iw1JYIROo9$4#ufbUTD19SUk0)|azhQ~VPfbT%{zEJAl*m*-JUYV5 zwP!@|eGnE5bu^0VSMn12$qlK&BLHJ-Uop}H;KAx4sw2J$<3E3(vO{L!e%^v(ulhMTdvZiouY2t zNAl>QNB4aW*Hb3yDwNV9FqS`xgTQ`o2ZUk#y)t?2@Zx% zk)%8v?eDWBE>itqKRFw_T>3KefT{wf!rOx=8h9)TM%wWBjr8|xR9e517fz^OJ)ayd zD#6|A)$jpg%u6$C51KP;|5P#>s{D-APw&DrB(kQu3_|c7CwjQQ|n{FvqDz3XD09Y8qAEm@MRF)O0ACqL^A9L$E~4+9soDd_a_P z9mt-BDqlPf#2w6U z5*%dNo*y@e!nq2@rW;$0A3(!F#>2$A2Q1@ZH4^Zdl^03n9J(?w$o- z%22kx0&mw_D2nuaw1^@_jUq|;WvlOk0CvrSUquj~MV(!ExRo2waEmbm&u#96lyQjV zaQePE-Ep4Wi#dW~@(_w3{TCWNC=oHqL@s3*e^e9EL1yiFbM?Mmc(PEoRIfu5{UDl% zTAhi>b$dIC$t09gOk&|H=&ddQ_8cq-1w{m*2=Up?qmtN!v0)}-G3OhNA7Iw^tNu=1 zg(xDXG7w@c(r9`BeD9-a36**sO$^RxGn#_sXre%n+bEL|2s!o#LmbA>`Pwt)>r3!M z(8sXg+KbG$;b+OM$FTrU9f76RzDHY@XYegl@~y-j>f)vf?i0j~ad8I;?z_bGb8#cU zbq!?C;BVlb*T%67J_SCBl&n4PXQ^8T188b-+FP|B+Z5p^eUw5ZR5%&=s^!yUF47$5 z$|Z=yfImR_rGAdWZ?|z}?sa8iM#J@#iQ^lVjKK55Qlm3seh~StJ^}8oY3>Yk!Z>{f zzKZhBWT10*M;Z7!O8KmS%?4%Qx4_82W5_wA-cg=ER~uy-yD_snqNA@FOpEEw&2g>UiDs&?X)ssO=>lr(vGgcsS7R z!g%cG{&TOLkD^v*;<0~cNAY+Jr4*0Hk&YCPgTRSRdu_-MpWSAPhunYXRR5T8;rtwq zVR33#`vEu$zV`rpLZw~Z|V=Ag)H zM1DgdA`*@fLS4ualE{0x-qnk01w%h%4A8bSA+ql1C`2ZdQi!6(_D1asj1Z+?5Tg8c zL(~l+%0^V%8za-f_a35ARO&TEuk%vZ7@-Ymemf!h1={iubrUhuLi7pvUPAN=ioAv> zAKfBE-8@5dC+`IzlD()mgP{-6Of>6Eh;H8AQHTmqipTFzC!Qb`_N4-S;2^&VRZTB+dFZdjyft>Rk=+EaL2v=j`; zJ&1|h|L(2CA@J#!=_GT~g_jt1_a(+U)RdPP>o3?!Tmp~T>bqk|hU0e|bcqpRtmc;( zZI-TSkm6+&jzN*vQTP@LF$xuoLi}V;nI}<47`Hlj0@;M%;YFwGNx&41+ z5W@B{ibdF7rxmp!`C8&W=Hk8xE`sUy{c9+aDJZY!J+9>g5p?(NPmKZeK6Rdl=H92y zMrzyswLD#Y(B(X(*-i*?T>{8!d2H%UbOHEJ?i%eHz$tdz8O9&f;gHQ6(KWna(}e)F zDV1&HRlMA#`=CKuL)8d_b^}MX@p|qZNFUVbOc-t3ItpVfO0`FqFU9N3R1+8?aG_Xd zJwkL5iaH2U2_mQq(G7s!Lv$6DdR^VV=cOL2n|8Z}LWJM4@DN3ynzs<0o&{ zN%S6%*QwNNJZ8e+zcFN%Lx{I{T#GW@?JxI`F+#SNAv038@r*|^xFR0%j*ZHAJ$F2Q z0PajY*fSl)qvdHaWa#O;{CEtRe}f^0%xAP#HY7(7cc+W{D!3kj`xHeT1g>8Fzb{6xPQ7s&Y4_ltNx$kmXgFvqD80l6ud3%S#W8|z05*X>3hD#8 zAJhz*59$jV2Y z3Q7(P10@HBgOUTgfsz9wK*@pKLCJxUpya?PP;y{2C^@hPC^;|&lpNR-lpNR#lpNR_ zlpJUUrMC*v9TIY2Ur=&jEGRiJ4wM|&50o6(ACw$;5hyt@9+Vt70F)efF(^53ASgL- z5GXltFeo{22q-!55>TeThlzn4NM3L`uo(#k2iDmXY;R8=&X@&{aZlck+T__#tpE#z z;c!N|Rz6Rbhxm!*a^4e^sXwX(M3Lm>=w%PxAw>UlZUm*bkPxnrv{F)hufX}$pj2;> z#MgtK0$vR23wi_S#h^EWQoWl%NgnRkb9%F+w}7UBe=DdBvGS==o!#0pp@rNgLVgf29)f17L@eZ3fdQR8z|{XfAEp~`8;R{ z=nJ4^-;1DoLAQgF{V#!%KX-sug6;&}47v-H{Qoj2)!z+D`Tj4^RM0)3M?m+2&H!x! zrSbR*=oZj@pcIe&k{*!sAW^j^&t(1+#V3yc3pQd51a&mT)8eyLsu2J=d-;1hX2E4HN71W8)G~1Rm-yP9V)bfpNclNj z_F~f>a@r0f4(=B7lPTNXe)+-V_z8YVIekbvCZ*;C_ss2Rv?oF;;Lk-Cr_c)bCdAgB z@!__Yl9hvCit%fKZ+7CT@Uw8N`$A!{x%tAZKqs zvUCo-;If@AQ`HJ^c3~h|X+sm4fZ`wX>> z!+*qy<86hJD%#@<(JKC2QVhBp52b~X)1Tx<4hsM`(Z#h1u0L^mxVQs3*KPXU>(RFU z=9F~HOABMv{pgTh-BQkz;xOJzsvhU87X(Y@h44#%XheST!$_kG7}B@`zM+temSsmF zDA9eFB@e~iVs1V)u*n7#PZHK3)A0%DC0-8tBXs9yG;+THfc#9nGV4C>oZr;DKzX_) z;`gIe*9z~^ch<{!UA}C5%X>MT*u=M4+F0!U7h^H;RlLll_N`V3KFd4%hF;ZG08Pon z=|ZO38+7jj_`ZNYu5?%>ePJ0@{R&2qkh9v)qWNoHpFsmMeGRDg7?An|I#A=l`EM_X zGV9ah=*dL>uua;-6hHloRk9qP^S8OQsu!V*Jlw>;eQH(511Aav)NkqhRXELMu)o{j zGJg7_8o`C*Y6<@3@08@z9=%73IP~t#W1zwx7voI&<1;ux`r|0?MmPgr!Rx2V59c}8 zf`MCRC^R;KNTe=u2qL#~Q_M-10 ztzppj80naN%qm_wk2-JD6p-Z-l~o_7s>y(S!a#c9bzSOU1lZ;{1f61e#T=!6%<0rv ztEKLFYR$kTMP~)8K0=U!U#>(>s*l5q8h=xJ!)EA+T>AQcI-@ds!+iCO`W|p*(fj<3 zV29OjfNZDJ<5)^nD7xAKC`+D3bkTvMSWzDlBCxWorE;GVd>gjF^Q9$c?bg!LbiGsD3HgnMLnWFyh`LZSAl8>62AI zyjeX+r48MdLIM7wRPO%MYA^0U^>JPrbR9}e9$6LNgWh?afhr zNs`(PXIOxQ62~}OHF9FFFNsu7--lx3*LL4>+yS9KFaS|sfJc9c;GlYpN_}P_e#P$i z;SXf+zny{Sp7)b$yc}~ERxBv28e|y;U~*%vUWxgjreyxo>(FR*20iKZGOFLUzvtPD@yQ zoMV$+L&xzM`BoAt8iSE$w@n_O;mISFteKN@rsn5a^PqlaR%V_Q4l{UjPdW6*W7~+H zG&L(f6AHIs&nv8$O@Fm}(TE|5!}0e|@i$Nt4BDTD9a4lpY+PD4dbI9ugbRl5PthV~ z9)IAM|B+j3dIl8Dw2`9e)`itoIrw9+__OBp_j+MTT6S)3Mq2)8ir0VDKC^62@nXGz zex)MpBNB(FjG@yDxiC9L)Pz>tPk%$6XYfdqzh}>1W$A@-WGb|E%wJ^R z-0X zDAXObYZGdoQ61G6DSTl7-J1n>{Jh(DVS9Z7{N4WBCPGK;q<=2#Sf}{^)Ly6f-)`SV zajhNSoBi!9a{Ku&+O^4|j@sqhGjm<@#RU_TcRfAY{TKbUmwg@S_jj`Ie`&7^qHbJ! z^Q%arHbLyLo$ybG$@f3C|GRqY`}eN5$Cbc;k%#*EGCeyZZ}LU?*72FsGO%sJ3dk>9 zJm!_Z*^k#e^4`AVeDdDzzssxtUQYXQ`g?Nzr+8)O;tKQc=357Pc#-p8+oO|np*>pu zxUK~UTj?ql(~VV}Wl!YG^I)D!)>K2 z3T_GQ#q6*AO|f%J;Nkmw{`N8nw$oo$_H>@wxFSu(_L<+$Y0uwOkH*7a)wAPX&;6h1QD-f43!fX7Z_kw#mbiK#R`Mi=Ru3GgseNZkhHMHA5xSNtaesZSkW`jsjcRhYX z=z>b_a#zM(P=_S_MLn)7Y}Bsy|EfN1^Cw|06j|+R)#g4*Ug^BDoa)&Vi*KNtM&c4) zgw6AQ4b_`eJ-@27vUHwDt@hJq_hmY zV}75=mu~;^#C6F>uOIsB?3+UqwkUSMs& zXm7{)*4A^EB>0()2D7n?*=D|B&)i#n|K#N@Q`gVF_pRFlyOasfM{PIs;%(?QZt=XS^ zed+L`Yd^Xx{-*MlTR#dpv|&K+6UKMLp3WUz5&v`Xpnuf5+=TBX4D{*nAP;mgx3(I3 z8u5Q?tI=@Em%h<3q}j}CUQAN+rmU;DcF^4?dc6{1cqXiI>FC)@=KfLt&FY&@jLrS1 z+HvW<-HsmLWIhw#ed&q5t1Ck0?w#GMa`T|Qv8hL9{6LRr;8^uK{wyCpJ_lM`*MVk& z8hiMRNkSRj{WdRcZKa<(r{CV%x&-tW&~>2sj@H%#pj9VYTf?Ce{oRm!qTtbCyfN2c zTpVod(Y1@x2!0%Rcm%+(xu&(1KQF|B$Fax>mcZ+k8pGw$V=f*R*O%H+opgMfmbbP( zMU3(6xY6_|!~Ju9keoUA(i{4BG90ze+vZ zqc4y4R~S8;qow-@zDS%m_jmK?j6~A$4FwH{hR?Ra-RRGH>Bba#0mW&AUf7=uo5x!;Qt#8T3$p;yncg~ zpHUvsp_Q8j#3MZ73|3hn?tbDA&Pag>DL*15#S;qr zsM%=c6yGQD3tkN)zugU^V?;m2{D$%OzbS=_X0HOL|Ds_a!|c>1j#*XyU~YA!&a}M@l+Q(rJ>;m2{D$ z%OzbS=_X0HOL|Ds_a!|c>1j#*`pNz!?Jwy_NykY#P13oNE|PS)q-!MIB206CSs61;?kQjkd<87tby&EVB+Da_NwvgGUSyCx$_&VdAyK z=uWwa1H-7>XnpRbQ(wir0lNEa*#JN;#cop|-h9K|OOly73+R5ph?d8{e$2>2wo1@q3T!+us-XAZga6rc2K{v{Bwm z0_aVrCbagaYO4VP-o=TW z$msq&7{0WsnTKI6S5|V*T@4@k$A1R_{^#%?eRw|*&Y)RjfWc-$h&EYM%Mw;aZ0_84+grJ$1pZUN$LSKko;nbwHy3N#7<2NdI(0Eb)7>}{1j>u zWI?th1kE(seDEuhy>LTN0Y8Ui_87rg5-My8A{$gFVK93dErVtoMaPjW8pa0|Nf^Vv zMP>!fk6)HZ1AUQTOpKt&xG!_0|bX;V9ixnpN{}SKSmf? zENLIQ4^d=s6e&2!it~Oip+*;lT^?XYgH=coW;=pXa`(;sfKtmjG8?)CvvJ8(DFiNM zcHsQuL`P?~zSc(Ex)(l;;t4cC|o}WZA6uNnA2nHk%BGWu(|#`n8y{=`yfO#2_&! zG?B7WDc2BI&PLPY{Gr2;kZdeJ4Y1-g?Q7T<`Zh9{O(eI47gSUkSROeiG!5}!Gs)=C z4==%K5g8NuC3SNxDPr&^@$|4i4_FUFpwi7?sA0o4fu#()81+U71q{kM)MO(CGAn7= zzOf{!oDzbu&aNXHC=1MsFblEyB(|IJF#eCAdJ+7L2is2}`F_ea{BNF!T(l%&E;5)u zgu0fYltbozD6$OaQ^Lzo$&!=`u0IV{i=Wgs$PoB5Dl`TU`2j4Y9s@l%p%~RDTYM9M zMl9z@QMS;$l>9hH!OE+nfG#6@OtF#5X3Y7)DI%CLiUUp$w%x?btjZS9;51=noU#Q< z24{#K;*}UoTEP>Z<24f$Cp-{5`4mS))DR!}#i_Qbc(bThI3=k+1UJpZ?z?slDGPK8?Br5n)Bt=hRlcYP@z7g|*u}9`KL&P>enoxR7 z#p!c?G>Upm#_6&yIjCk*%nl5{7z6SyVz&Quq(G1C979B@e;G=9E-W|1caJmLkOM3M zG3?&YXolyICCnc&cR_`9g8;y8DO4KF24ckm+SD<`pa zh*D&OgkxDewY|%@ZX7u>h4sRG6S>Ox2#0n<%%hk#BNqCvf$xIo7k@LlUv4~rsER~M z@o;2!4a!7G@o*$c^^OE=<4BF;cBG5ra-@sna-@sna-_y_I}#kdBV90-?ZYJ1-6pMw zXFai;bWfEqfxXxtFx_|w4WZa1_Gu!ZU3xBsy+Ns*W9-2PgPlE%QQv)rF`2_0Lrjzv zo~!h4hO>g~Fg2(9>&73E>%wzyczRBQ(sOTkdhQKR&%JSh=OjnxIgR7?oW^l`PUE;e zCpkLLz2WIO4NA|w>FK$*T%Jos&UOE{gh{LdJGAc25~i^EG{E1M5J^^mbvt6Q{~z#9 z?-fY6#=wZ>VfVp*O3EOEAu9H~n2oHN7|Br=iMdHpaxgtc4G?9)iUaPC8YobtG8Vgp zs6hf*m22Sss3DhPRWrrLD=V-sib@epHe`S<2T~g`!4_{&JLb^b|Ell+92AG4)1`73gYZ2!>x&vOu$x ziPXbo0?kqAccW1@p=XIQ4$ERxnn2~s7ntFq(gng(uX&3MQRCtXpV+lVr4ZA9)D;45HYpP^0YqIH02lkj z?(k6>;P$Aigybe4r705d8rq%s#2)ccKEM!&n*A6ie4kj=$C_DDX^5&4m0Nt2uSx%E zA?l2eGK(CxNWdDil1!qm7jT7Hd6wW}dPW^enw4uQMmGpiYt2d(=CG(61zc}d&S9yJ zx=FyzW@QSM-f|NbKcCpGW@Y&Rz*_~}VOIKKc8pp|Y2p*xWL9=!0}*xGf$;>7n3W_- zsoLyJg3V?nzXxDlG!|Z;*kfiT5Urw?UBNwh+^oDo_AVEts#&R{Fgt{(7PAsXmG7t- zM{UoTl_!z(QT0N}W?U0NX4IVlSh^tDPgy`(H43ec`zd8)(LDmHeo7%F!fIhci=Xmv zf53aCC;gOV)OL;ZWEZ77b|+Ey(|!rz?xJkPDi`&D40jjhC^_~a$`pjVi*kQIz=s7~ z-$l8R;=5jYvWxOMwl-0Z49AdwC%Y(j5Zrhx_r?)Ld5avosR@I_C-x0RX~J9<^(5`i zePZ8Ilv}}%dP=~5E6T-Yz^4ni>zWm1H)(a?i5#k2tv(TOg}-7ZPo6aM%8mZY zt_Z;IXdFOif8~j>fZq$a&R>}@6z~Vy5c4 zYc+>E{FTv3fWHe9n*5c!u^^_x2zl}kVZwfY<)vi6bE5Qszj76&*`K2H zpg%K_MFwL!H|dB!E244bYeXhN*c<-L<`3M3uMbEqf0m1ar~tm-^oc#{&ngKA^6e-x z!k;nHw5w5s^|(L#oLm$nvFgthT;WmK?H#Ih!U?W2h; zMB)_ztgbt7xWtVC>^!F3sBRLk4PZt}{Rkud0dn{?fQ3;?b~lP4xjBG+&w!(h!v3uR ztd(%I#M|(76Zx`-#Loq=(^MWK@$&)fE5bb`ej$LpNVu28F9xvJG4`W+OT0aR(JNS@ ztP;Nzz#3@~4CD(CrltUP6HW1hW%KH)z?|{G!zA7lz=|k-!=-_ z^2b=CNZaE9>{gl%FO&GI0G3VhO_f*;V3TN>$dLK*T>yI-vuxBj;{iS;wgj-nG$&-r z_@4=25n;d+B(4c$Q)yUClz2rT%cY4fOX9{rb~%+#l6Y+(3nBd`8^vt4K9J2L{in$C z&4H{7>60(<)<8BEqaDm4ED zvN;s5N{NpLvg^seRZ<@{kl87puQ$p`Fp#CwRJB;*Gl6Ub4aXZ~`I#Yq^YPQ&;u@#pia34|HV~8ec1yJY?y@5(N@9C($H@!44I%KFiGxrc9?d}3R=vSw_`qgG3NrYoDp7Y&JPf|!N2 zC~G8M5yYPA2YkO#EPahZ>|+`)4@!I12C)yKfY(X9E{J_J0QjF$pY=g(9{KknBki1g zVmAk|&xQa$EX%hBv7acO8>Kxvg4h^}-(%9=rXY5n7MD$$KZ4jmnz%Phe>DfOSen0{ zkmK=a5W9-{ds5=}f>64+9@5D_BAthl*a23 zEq;tG2?2gp_J5qQXULw{B>sxA^R)GQM~f$87RtAGrT#69T}}RZPulwnW8*2G-k11S z#tzW<_(0;*jBTM^!7+({V{9J9?<3OT)*q+DjTRP1@=i*;+QMcf0Dmjjx3v~_6|I*) zYWZVfb1A=nGCqlB$R7*)iS~y-8&~r9Y_+g+G#-DI^0o%E$H||+N&mbM%$_HI|89IH zo7(RPW+uv?0MmU)Gi>yNSs(IWpv1?5Suu@|t`fHdv$d2D%p}&!6(MXS&5yw*F<&=^ zuql+UArh|+VGq!H6DIN65Jo?fjtZA}T?o5|ub&dH4`CmY{gEcR(DsSl7{bPof1*w6 zxP6;L*g~3bd&=@HA?z5zaZM=eN$W+L z#4AFXncAmI+!)H*NW3GA{Y3t|QsO4`-v{_AiI0S_0o4E1Cb8Z&hq3Wp zfM=Rsf?3#~hOuolKV4%I7Z%6E*g(>!z_fwqvl_|Zn<5fuOJ zGG28NES1*F9n$_45$ppq@XMxVKL0jGuw)vqyCq&5!G=?O_Dj4zg4t+%A2j{U>u-)= zZ;=0vnEG>lw??p6X#RZNG}@p1u_J=r6%72Q#7z-wE!F?G7LN!PN%?(D>en2>&XE5; zG`-6Ge=LF((D*Uiq8_aYZDq_Fb2_y03Vj(%3o= zaS};!%W9=|F_j2j#4`WSAS5snfsc&7j~;v!=B_=4q3H77S`UE|NrCtGPL$@3#~uFV z{+B>T_j$O%-y`rn688-DfIYg>5>Miu1*=EUQ`q29Fvg&14@TQ*`WnZGK=rVQt|FBy zF?M?d3lyXDMV%fYlsNdVL0JHo^a!Q2q1%TqLe(B&LP~}#syZ>>nFgf&=IE)uz|E)Lc9eS&W{Srz0Yht8ByO%D6j8!Er z8TUkS&&Z(M;~_&LDP#2x8RM8ojR=avzY0Qv#(|j=x!vb(0CoyPH*%NHhzVpD3a7%Y zIgulL`eTT(u_hFb^x4jH+`!Hufg>-K(8!iRjmRV)+NGOfO>7mqh#ciZn=E|s&RQ{f zMvnHOYY>Elt)PC!$kJd|5CS+>!f+Ocz(pqe(CtQizr->jBQnFspSQIdVj|EuVx|93 z=oFZRy^i~OmEsS(N}qS zur$Uh%nDN$;p#D_kI*|@8EOXVEAlE*xfQ;OiKX=$`C;fWBL|^v@P8Sd_gq}Q$Y71$ zV)RAuSv0JTewtr#z>Vw!Q~*54HB;D!uojTkSNb-M?#Q}eq#-66+r5Z8{X-xq$OkTu zkKSs$)+KeDr_^npQnz_Z)nFvsgvCAjIpb21+J>0@!RX{3|3#1+_$ls}#P?-?ZZRwl#xo@^wy9^dmqVo!@ekxF0qzGtw!@otED1yg9mYXA30{6Epa z+N&@cHMsa*v-RS86=~vs9)K5D&XHbGzV8B5ED)UXXBY(D>rYRi1<@m-3DL)lcLE4k zf9UCy4?Ugop{G+cD4p_=<`i}m2_5~hF`4@)-VpON;uNvQ{{eIpI1w3B(mUunq#ie- zH`5!@n`uT+Yr#|3tp2?%Vpg&%2}qFM7BMU3C_c#Y-g0i6q5K;&S8vNt+?=bGEJDE|uV)!z zW@CklxZnSJ7!>p;9J(ULLCS5BP6@LV>l|ilxM`UPx6X8G(qgSoj2EP%_bHOt3(Taw8Oq3Au!q1uNE( zK%t^6Qt3%kQJ6qhB@EicgkQsJ#w&;6o0y1OI7(2Kh68mMHIuM!n0$pH;z9q5(RrW3 zvKtIaL`2Y9fWGH~pkeo*7HmcOJ_896kwFyazBLr%s37uiUo&D65gkOEuD;j6nGrpL zuA%z*xOj|+38J~M@8>l0^bGo)+8%|@5xs)?4n(CO1`kF?tPOe>y|E9$iMT)Lu51dU zflVi24+PO;VKlS<2OUH_$aSI3PRy4W#}WVZ{|qgIeu1kKA|47Fj}92k2N4ek-7CfT zBatK4bNxt6yajNBgu!fE6yPI48+heN_HR<*QK^EJttGuTN{E3Q#(*F4&qFss-4TiS z|0C`_z@sSFu;H2AuuMp@!~|jtEd(%s%+t&Jyk+X9z15Uw z!~Rn-U#IPBsymP2FT+AIZGThdgf`zsUr76B)7A)?zL9?4c!lNR{jg=UJ|FdyzRk-?x~0iHr?AoR z)Xq0JZauLGh)~>HFx=9l8!76Ku<$0b&x!-uXI+(!XD#Y5Zny8&3y6eSINYDn-1NZ> z|9F_nNL1HP*g$Ehf{d2xatxz<0`p= zhl0#V6EM&J2f)u#Vxs_Sb$26eoR>c1BU z8AD9A0`H^xA0b>K@K)3RB;la~-)8#v5FRG*PSf8CZIgk=kIZv4RSsw~J&&DPjF^dDW7dO6 zQ`T;C)O#^sQ-2IcoKG*Mau$JeAqNMc$8 zhmxdX6jWLR*NjQ`74lGtO+?1h8e-sU(#sgH(i#$ZI87aLhD6L1@mUPVXYuE+d=^iY zeAb0<0p^$TY(bk}8Zo~#Vt#4F{L+Z|r4jQ>Bj%Sz%r6!59FbvW70>dtnN<-pt0HDr zMa-;%jhI;*F|#&eW^KgG+K8F85i@JW3|GxCvyo?E+RVm?nT-)M8zW{m zM$BxCnAsRHvoT_3qnP2s6J|CobI0dzBlQ;a=qiX1G_mHk4`&$Jtb1=Jz4?nsh4@{sw09F%GVB2O(L3 znObL_^$j{lV5aVSg;o|yJup-Ez24Sv^a~pbTm2IwoCB>17-Rx7J@|`f@vYt{CtJ%X zYq6qfonx)lsN}%RgKB6jv#u?Oa89z$#>8jKO|d5U30X?#bgNEzt)V)rbu-e~s+eA^ zWoQZQ8E2P{>Fo$|a*v5=?d`DA>==VtTrjOM;^V~%pT%bDWTjnU`mh@JFGxcFzf#@s z-~`RjKc`(KU<~;-sgn?YG1gRR*EoDnF~*~eelVW4QRA=T8s}>BJ+yGfP)tl|*DIIcA}>M(zQf#PrEN7ih-Pdf?+xlP zxD5W5UfPW&t1BakayO~_TNzDwyiM^#2M6WAyM3tRR+A^<8PCw?+w}1!5Ylc}et?&k z6k4xG1EsyMZtb;HH^}sghvze3;e{-p^>66$S)ZmGMy8e4%+nvVjNT}uv^ae{4b7Ss zuPz6Jj}P3&eQ*+*BhZr1vshf@1yXd<4C@{?&dC}wt=s5ts$8-#Vkj19H3U*|7bjq$ z7U=jcHQd+)=uWya4Qm7Z4g~Bu;#$%&+0!sbSo{r&K$eCQtwF4t&YCmTh+Cd)7?T2B zf2GQ2FoOrOd58iqV%HFdJ|a(o$CV*1Rv^?3DC=Kj?J3sNt81qi0eKiL#)u(fppc?* z#ZWXUa4tKZbq4eW&YPyH*|4s_ycjtD4h31(mn{J;`9eX7Ryo)M%VUs2J}lp!(270WzNbSOn(G(9@xAfKXYo3t&tk@X79)@Q3VtUB&fz0WRs%++K!biZ9Pfc( z4H9V755-wvXLe$?p%DUe{ou|rIp9pjkuE27#4*88R|tL95XD5Pn;j-~#7>?P`9qEr zHm6#qr)U+_jmNr_3bOL4d2L6jQ0x&Eiuw^)jChLstRfuyter}nyv$5Q9Hj3+YH6|& zqR`ENXleG2LZ>K@;TiGt)n~O=T$7K)1)LGj&I0H0H~y-09uCG~mg>uF%!tJlrGxsx zv_LV@Teh*A38qt2dKo7;uXi}v{%%f!!t|VC;;`&PA-I?b(kB(l*WhaXKnpZ#H+8SI zlNIRgDFBE6O#BHHdFrrZ_eq$D8wO>8?h4@_$^p5DXFN1$x$z+;{u z1_8ZRrn*jvfdQWFj^1KhuV2jr_X1}sHR#FB z`x}9?#7uhg+0{niY=N@;Ut(wrOjNh~co}ALbAT11r_lcuyVfL+9us@}N0Yfyz&`%J zVde@)Whrg?_pR+EmR#);y7Iyyr@%Ri1SI#a+z|7^5fV3tR( z5K{f8b6lA%-lVIX*Gb47{o6=9N5Cw9Q*^#Sz3^r;J9$2n!(DA~-imnJiIiRXO8q%(Gzqh6(Gt*u@;wa#{mVXhY-RpsY$Nl3cC zFb;+{Nb7X;FC(~7%w_rCZVB)z0ki!tF@~$fOC&5SaINQC$C>LLXCCByx7l%qy8NzB60zPGN1KBit@vs!qoaNk{AE{fxj}lDKqc(FU?qg8wEYWFj26M-37F z1Qyu6QecL%eV^ElQC{93<)sb9`=8`&^?>9d(LW^};Db(DR6{%@4T0WSQ)>hs7O-RU z*_8_-U>3c8#CDBd+d!d_IV4cv*@L01^TO%|Bhbgw7Nb$db~bv6XC9AFW^;^IV_QZc zm%CM-Ux<*|@t@d*VVCJN4sgux{6*4Sol!dEhxu5|$JGk2y^3QO6veZ$-BV z?Db@TghyxFscVZ4yuY0h%lJrDE2A6?HE#gXnmPl|dw86Xiz2%^@QH_ybNQd-(&JOR z#r!v83JH8BV2pnb7x|ytZRVfFlzbue5$_+sh`)3i?Q**ImD6bJ>G;+iP)ewJMR>uz>eYb0r|023^ zNWe0GQ(T`7{3v!O`ERD?pVYG%o(|Lf`#B>1EMT4g($)ZfkpLI??0R9 zf$GB8_vHRvWrwFJ{`)yq{-I3qbprn!%=dxA0^^%DK1;7)_(ByfO?1FjnNj@)8ksG) zHjmklsUfpXe|Vp4={p%oBT-N7nyc$RFM`^xIj@^5a+5I5mhWoskUzw%)2?|7OomvD zP@p9k)WQIk$ed}NT%z8w$@ru#t^o~IOc}po(Q)!{^_C1dO3ezeX7E>(P9Ci}?m+3D zJXT$1G~%Yf<-Dx?m%(JcfO^g9!F3wy&|2FGP)I|T^*l-{t7n~|RteS;w0u^82@YdjVkS-murZY_fUS*L0!%ZPi~!Z}3e?BsqhHvwI)b5N5Es}hcM&ef1* z%_o$n4J2Bvprms*T`Q?Z7hdz(imxbi3GSwzwWysgc|3&M=?#97tke@d=PFRrX&I$RC-!NdrB-7-sGS)_W^TbF2<>bm{|GJguV`0#>i=CpOD6+0y?G*h3t<^P~o?wEt9zrp7&CyV*^%8n@*Pw>dt&6E8S3_A= z5n8KjHx1=kiI@SqcGpm$)gPlr*ANSqOPTEbp6q(hi^Uj3cAEI5yhiDAc$vK!z`5%2 zJFXaRhb!6VDNauI&mw2pON2SqzatIcQejT_KaLW}Uf~(+rI9TE(zXCsdepm_cd_=d0Q%zLT& zO6jb)D*aE=G20^+JalRL|4adVjb}f^@z9~^&&&sWy_$8@Rp~I*>#18^mHvof-YD{W zO#iv)l-W0XN|e1(ITza0giy~FdKviB>la$_*b-YNE$ zdi)n+Fv`Bq!xw=u*m(TgF&Sk)Wc%;&{{%zXm=(4E9)BVRtL#TTA8Y?T{(DXa{IsV6 zxr6^6|MXPA&)EKW{KGIJXaC*y$KxNxR(#I$rS`|;|A3ABvWG7>BY$3huTucOZrk_z zJ2Ae0*!I2tcTp|bZ+Q-C`(FRKjQ3p+iy8L4{`b+u+3$(`(is1HsH^OMiTvsq{{i~{ zf#+u>zb?k#g7JOsc^+zTS0Tnfk@SNee!qdQEBRZokbd+WR{XEV_~$WR4E&0|KgK_n z{{JHM_hbAP{r$t^8ASQdWBhB_-iPh@WBf7bCE5QG`mZtmi_!P9eO_&UX%qik49(fG zUUoRtM-%@&q&M@*U5h6Ex7mIPLf_rQ-@7+pztHzI@n4n!_#`g}2h8M6Fl=+&^I0rz zpT#ouSu7r(#U}SzY&f6A^!qF((P!~ZZlA@Ms9X0)hq5FuhlOOTZBlmxl{6k*xotAf zL6d$)ZMSVf*NnI)k@x+n>F0vQ+J-4RwLK3xrr(bKlbXS=bnwzlZ;aHb9mGA;O2NRB z+EE^v<fhxI#`4b$0DM-ciT*^mk@}oaanb=Zd&FqE|2j-ise6@H?KIzu%d}Fz z@%#cqog3!W8L8i@hcP?TzweYo87kC+DpZ_+rylaO9fA|2%KC*y>W`8hqj}8&BlRbF z1i&KOFP=eUtD0MHr2Z-dqdBjMrT*sT`@>V~@EsPvh40^XkVa-=>JOglz}H!s{aN{& z(F}85>hH>(jGe5Y|0tVALVr|DR_d3YPa)xd5e1t1l{B2;UyBQesb4D+r-(Le$L~GQ zBYrmeQ_Rqx$|andqgnYPb;3|!t<DK<6iy$w0d zsKv4*wV$^o)MjjDIrsOnCNee5pZdEVoh0Rw1YO6L|3OHmT$-R)af$xVFp{NQ zCLq3-lbYkt8xGyPE|SwcQ4gRNzlW5QI0_zf+`hFXpp$gQt=_V(M(T6gaw0$jTZa&5PJ0ctu=XIh z95qSsYIyTzfI4bgYikQ_b(*Mjrl;367&!qAWLa;}To>(Qo>fb+t{UoLoku8JXQ0rU z$k=i;6t)s67u2a7V!en?kdvz)N-VM7#JrZ1r)fj2e-i4Zp<&h>^sO9ucYV0E=oCQR zb;?Is|G}`5(?dgLR$t~Tq&wjx>%~@pdg`{CZY9uOfre&SIq1zf@?QHas~zUnoL*Y4 z&iW_TmN}>Dh!$9*V*trp?&n*dF{0jjB3){#2UBv2G`P&PSY0`NG`QTfKEfg+r>_QA znAUX|+;YOy%kxj`PG-2@8nh-)KdoP}Le1$d8p?-xv5+#Yi%^z1 z!|Ls!a^lyB=4=_!GF`*N;gJv zkJFu3H@=y&+`c&r-M?F@bz z2CFTPbsOgIoLM@tc)1nXNzS&pb>SB7GuQH!paC7!;X|w zs|EOUna|>rUTHhv9Tq{?;@A@ta|c?zbuI?Dl%h|StsFdmU_vJFAhY;Hly`s6ky7# z#C*k8h`%k>yV=@iPAO6mld>X-uUiDm64B3twOC7=!7kA52`2YJ%7V}5f+=`*HojUH z+z0`mk&uJMl*8glu^kC)i`DutsBr=Qc9B(!RfO&=;KzXYCS$0 z?X$iZiYQp(d|zHg!6kYYlHs#>jm>8*10h}u(p)Sx^A$G5+}y~03w099lHz+j3K^f*E)deCT3nX zAFkuz&rdq$<>+r(Syo3hOvk)ZJcmgzFMqyb zG^|oTpzib%bA}Pq3JJ^Wv7G#g-P-QMUQJ=$+WiQZX!Hv7&Ti>+5L1{DbHzyj+ux)3 z^Rt?cfqvcq&hN}a+sXVc;w1A4$(UymL4MZ{DV3g|S57Hc>ui@=4%K_6(u! zT1Tq26%~-*Lqn~hF#%jLosrD^P$~}dV!CG?z&`jD_>ADc*tvtv&@`T4Njy8q-w{Df zuq2ipUvM{qZW_$M@Mi@>D8kra_X0FV@RfX=g$0A~I6l}4b&wFeAP?(=;85^4 z58^b&_!A#4_khy<)EO`t*9?vpcJDiAtOV3O%#1S)ygA>!AN}I=`$-|7{yIhJ*4HT2 z?gJ>q2T3l%GPe7`;R?#LE`Xcei*>8^K(H0ipvvPcFsO3z8Zk86eb6T$HSO7>;2KcU z@f~=hMkMgaci7s}jhMa|_j{Z+4Vb29^e8%jz16ZA zP<_ZmZJ%Rs?9rF?>gmwah-t)t(Ib36h1{FcnZemTz!5A^Nv{QFDUx+c zU&9D>{zNkebI9BgAsWHXNRSzvhm!UfF;^o$q5LFJp|YTYTt9Xr*Y(}Wm4OpkabbvUpmc9H>xHp_b^owhX*U7^aCUK1ZJHN zjo``XJ0HO;D&k`!_#npZPmJKl=-Hnd!8Zc#hWN#1@CNKIF@ryX^HMW-8FF@+8N3GWt~G<5(Qxa` z;4}ob-VByQ=jCQ_X)nXr0G-I^Ml;w3lj0R-@L9Nfr5W6h=D*4eeuZ|p8onU*O=d6? zUFjM#xD_ndn!$ZoFI{H_Ig?#)21}u3vl;AT8pakg*b5{7Rx|hwMv5EE;0VmaH=4me zA%2q?EJT*JnZXjMzS#^8MpNBl25&>v-D(C8L(6SuuqU#6yBYiv)p>^*yeZua(C5jqqEzF|#nZ6y!Hj z*XqK~Lner>!Y;NhdQ#X`4~2zlU@gqn18bS(K^_WadOpjFLANaoYO9m14^S?Jxm4)s zFx~2chAzz0v^uNXDS*0-RkQ`xUbJapK54ubj--qL!DlfppEW@p_rh_^HtOiUTcOeO zK%A+Fi|{vIBj)2UZ86FZi(QPfcmf3_-0K<7YQ?w_f4iBzFqxTc&2T2@*uIiIkIhzR zVvc(?-t+|G+&)!ALm&F+pKxpcK8i9&_=RL z7maXRHz~^v^l<~-T|xzR`;{mwXrOl-QdQI7o^3^S9(Id9~{BYUuWnK|rU-t`9;4&Xw`%w@m7608H*kxjJ_ zoY)j#eg?pv>>e)x?7@o~=8!Kjgh2M30fP~ZIfniGS_{k@F*KWFsfw?_58yat&fqx2 z`}+faK_Qy8>|M(M_85)6Wv-*Q-u16G40s3CW^Q7a90?l({>D(Qq3q)T2R1G+%*PLb zHx4sx@h^zmY;XRiWZ!Qr&H~cRFk_#mu66T@Kc=n@<|zt(bzyN2n(AnFR`Als;@4PT zoy=Ye-nyuG2Zl&NdH51=@nlAt>(&13o?rAair5^b?sXKvbnjW!wT4-v;8^tZqBp7U~U8+iRT&(xWi>Qv< zpxr{Vbw4JOeU;?Cqf3SsyJ+t~3L{snH+-?yYlQA_k^ivC&)SB=_X+tL_+$(!%hqDA z%l_9%I>HHz@GC~RKqyzpz8V~i@J!|BTEQME!kt31b#D>LNlNm$qf3USx@eC>N=JB! zp||ikLS_h|n_RqK+Pp70;qGwp8ht@GKCILsE@g=A(M<=1F*tMMN|oCXa4^JW%F*$H zJyM7Zgm#VWmy6^DIypy|4CT9MH$X~-_`VZjk*$~^&UW#>Wb-;97R+_=LJh`e#55{T zg<|lVLEMriBkF~Qc_mMI$0O?SIHBAF6Gq>4_>(wA$NegKh7hgCtq=6LwR`@cTMB{1 z)~1)`V=f;Pj(xJfns$-Pe=sAP!BOzKP>z((KmMZsbx5-%_N#m*iPa-W zh8}Wh{T)&&pRZo3-NdxeWQk$@nP!AObMc)5?-gI9cl;`3)jPtUcGvQ%(EbqMNhD^h zmW)~dew`1qjmJvI+p0Y@^GBeE&KBSY0GBD|vEKE&=Q|T8X3sKCq2*?t5t`+S>rvaM zt(X19cg(k*#ZbM%#r?6(J^ioTM#1$iJ{4u^UwK3$T0hamI$m1;E4F_43U@SbxuQ7> zY+OfS8ar|{DIx7RTj>(TjN$2Xm+g6M3D}NVzo*V;6rBE7Kl9c`B3Ha{FboHutk$LU zI~{xqr4-sNrpCTz7~gAC%@-|!_U;|m8yU^=e67(sW6eS%^oDSr1I|{^!+x@aaUi8^ z!1M7}r}tmNc{Mn@3nzM1=rh6J4g4@igAvLo(B9IA85$phd081QFhV_rOv4);u_GDo zC!93AJz}_^MDR4M-9|V2O}weX8j#x)Q!zcFqnIX>)2#y>juR3c^MVZ7nDw7KjmJ|D3SRcF}}YKbkR#( zmlmqDT?^!(B{Kfm1O1HYV0!f=Fm*9`#zv-s8-(c(v=v;7JKxa#ZEKU(s2=b7&p9%9 zo1F{;;r)`Wj<3Us?*u3Ua2Yg%8{=R2B++*!d3p*!p8GTpH5%dJLTDsctpHa6IH0)3 zd7I%Go6wn(h@Bw(rU|j$q%}G_7;0VQROCc8(7)}~Lct;zS&_c7NyyCuGEn^>`}ZNw zlIpKYYN$>AM#x1!!$)&~$<=A+PVo78A+U#R(6+tnFGa4#n%#`h0im*k+#}RxpW`?G zba(tj$m}1_YcjiIfo;v*Ka4^A5*)WtvOjZ%cC|#g8p;*)i%3#CkW_uCscbB#vQSv) z=fKz?P3L5V#&X6=v|9mRLg4lV)IbIOF$P^A$YH$|&9G+c${VdrS0E8XZI*t*QuJdh zWa?~Hg?wJ6h!0Ggl`3;DF>`#sfSczZhViWUQ-YPQpwoc#L2>P#4RWQ7l6g%XV}WVYv!g zQfArhq^pWN4M;|r_AR_fcvU~VLx86tSfvG34Y<}koHBW~U3O9fewnJHl^)1f^RD4* zZG>MH`5z%4`a}T6a;bQsn*qz8!$M?Ac196Z8!dwTNm414f7!)Ss#Zjug-QiKL{ZsF zYFaO_Yc2i_odak^u`WG}J6w5{eF(+MF5Swj7D4L;&CX>ExaBz94ibkE`?M!|hTWzt*}sOy{V!6jP=aE>Wgx`xB?&>@$;@@Rb~OKA~!nopub zxbY3Gi=ufvx?He=n50-#VPEUwQ5p({3)Srx%M8i=Tu5f6R&YRkoS}T&t{T9mbr7Ea z2+u6V6Q4;v1wvaV`w4S&tmi16rQiuw3W>Sv3$iOi$lYS0x_#tI61r~{(kHTi2*RwW zg-UnmDVN^sqx3FWA~`Jh*AcW!1{!c?!|e*$zayTnQQG+)u`$S|-7Y*vosRAj#gm#v zo@a%|Gaznd;Gvi6wU-|Ynb8-46dk=sg#J7FzLPwLG5j2DZ7=pXmm_GG zioAHLj`}{?*FpuyjejZa{GzHc$foTPp3B6848Pm15A=yud3P%2?(jLb>q*`Ea! zjJ!-~AKnF|K{joX@SHCmOpwU05&R+9?-v~viq6kxg`N=-qkk;QOGf{JP>&FOGt73} zhRD7rmgF2~rs?QA37UFafpnzk`wNd-yF@<_vkkYaWPh1xU!=897Bscv^Q|uJ^m?gK z-FkJK^*xB`A$z{gRc7I7m%hD!(PytWI015_*3Vo#%Hz;4E)8)o5Q#T3z$akp zur;{o;FYL96NXbU=yF>LMa=2dI_f5ZX4Ex*v0)T+5b6=4PWR$b>IFLLtx6YfD2ArG z^gZzxeRkAKTw33C@#v_pacMANz!jAqSk-7cy!cVgi4QoaZ%lq zdDx}lh*9TZsNuFk_I2=-QNOIC9wBJj7zdI|2P%A)P>&GxQbg@PS4aJp(zScP8Kp*IE3tiCCDp0w(de9E$?TIoi};P8u$oPWAG^$ECl{Z3qK8IAANg_;THSa_Ur zo(>q7Us@-WMjBy$36Yz+Uy+G&guvLTXXYT*cOfVuD`^-7M3bhUY~m0rm~^+<*BYh=H;nR9HqA5(M{r;{64G{%_(fG zsDBF^D{7$N|B2kT#EB*Q1lwYi;J*hxNAL~6zbANJQXH=FvEEnhJcbSmnITSbsr%K1 zKi{R!lcPhYTN^YU51xdZ30jp7zYfgJ|E6I)?dY_NUY%)o6c*O-0a1e*9xZ6r@Gnu4 zxC=5xh%DhWoUZD~skWC?aA=mW*vp_t_-+ z{t7$^^VKA7s^H!cfCcwAC3lR1;}5HFV~U@18UID_yk`1|;Au}^GF6Xk`5i)(Na;e+z!k-sW7p~6J z=Go3+e)*i6YV^ed(BB;*VeP`zPr-8>dBw3{7XzNb3GtyrZmfk*HHX<97n}vnTJSEl zBc&k5z>kH<(J~lCA@S(jOrR8J(%rMW-N;`^b zeC1MYt%$0MtwyLx_egNvqp3G2)#`rfXqMo~!b&g7qgii@c+pw{obg}Xv{=EBpT93HIa1b->;2`hCf zFfNCJA+3``c(%sJdJ`|zNF!V%*as}|DCQ7;MC4hbZo0|S9!fFucsomxn`n}*ehAtNT3ozzirDNxF zjOy0g8X~StE3(i|o5lwR)`g4LSY5)a@d7vdNiiZ0UnS#_JVEZ$;+a>X6k( zGjI_##zBV@1g#Q%x&Vy)Qq3b-W3!ItpUC4sH7@3-v>Rx;NZTAK(V=rih>?Gwg<`!2 zoye~gGJXHmaWceT%;QGio3B;{z#H(p1+9EH`f48fUZQ!9?t5z&^J2w({2~bzix8c= z!to+BQP6a5yMqo_30gUKlgr+x$8+up7jrALI+wf0P3)^8#KfMeg<`!~>vT?x&^JP+ z@1=^YiozGx4D@}vgAOMNTKPU&04DZE&2#j`*1DMYX*Z7V`w|hN?>}pySnnjq_Zx*w z-xE;g9R5(yj|iH+cXZI}wn)!9LT7x@#XM3mpMdZ0iV%IT)k3k} z-L~&xPk)^c)mrxGWe`6gQU=$E#^ZLsHX=mlAJ#(Xe(SX+Ba|y-dih$! z%TR&fIsJX%!cP@EgN?z|i#1XcJhZtn#t5C`Qq@|KbinfjuL6ER00w-9Vmii*`MQhw zV$pcqfIku;27HGWiuI0i0{%(J4EU*tm!W?Po&g_-;KOMHU9~nr0D9lzvg1_#JQs6` zVm^V&zfgqeJ)c2U*O(UA-iNPrd$Z4F;Kt*5^B))UzTI7iSbv|0gJ6am;fW>H+~Vm?zb zpFn7vMTnuDtA%hjb-8#Py3a-4WRv&fKy9Jdgv?gksmN-I{!-8k?KuY>J}hVzTG0@# zgQ1zQcg)bvaxwQ*%qI}qN)e)Sr)vw$`}KmRb5k62_(nl1=RR`T+k8CdJSCAx{&Awt zwGkmY_od@SsHdRmoVmfN_x^%b&aH6SJ5BQ(z20whG1n>P6Uf}XBE+IttA%2{L*S*_ zLT?F~zTe_F8TwYx^!+gh9X=#z<$I5zkzDwDO(b%HYO|y;t)b-FItPg!yyr#?cqV_6U872+{YZ zSEzt-erWq1?jvO7%@UV^ev0=PQ~hQa^E|Ei_})AtLQK`A+5-E}yMkt_wmInVhk{nl zbr>Fr{=MTl*WbmQeB}u?^B56gs`9l^tTzu8rM6Iwi(G1xf3-6ixD%c`u zhPK2(hj$8Eh4#Gwtb&I%&(W(O@$^U@zE#X8P{Hj*h@mB1B~`$_tG4hEAuDe#av2z` zc#ly9x4D?l*NTr{1rNKtxz_e(r{m2VZf{zSh=lv*@x1BnVs3Wzahe^^HmfDmI1y68 zU+K~?P-!?u@b|lz7oMQG(Ay%!I$5VJunQa#H0$J62Oa)Z(8{@9BO|%^;CRmQlVsdj zR4JQIEEl1A5u$TBN=Oy)8bQ;!fet!+ouHL-@4DD&hnI^18-%DEK+Fd40`VKR=3)Q&DU2XF4H8%MYAv3i8 zimZxao1ht5xq}YhE@%}Rzsbanp>5DSM=y%l(Gli7+Kr=+C3fD^M2Mk%riEg?zdE7i zxyZijB=U6*d60|T$tI^e&A9#qdwQk_F>md(P^`BQ^Qzjy!-cH8xzuH#T=5>G z_iT4DUv{G2ye>ja)y>)hd(T&bW~v@_(BXrER?c-B8;Sns<2g6V#oTrC38t!2gqW(K zS_rql?No*4yT~;*d4WUTC}f7VRFPE`><~0VyUIa_9~ZO=?N0$%1+QtIqgO%OagjXu zwwz#Sxgx~SI%y$XL$`eopCM%B%~dV~6^i#5Rq%j|dE<$C^PC9Ln|p0<@~+fz8Q~Az z-gG!467Dz0^Jb`vIb-W_a)Vn+YF$tzLMr%eE)8cX4aW%nX&3YQ6Eqk4RD>A(PAwGc zz3oavZ=u63@+&r(*P+!G>NsAG-oo<_TN$CMvfhGbmHpd6hx-Xyg|=J(R$0LfO7!Se zc7uy~mSR4}+$fn0-6KK_?P4v2$A_HI_PEG**kmrD)fW0#$m~E*YX3Mk92PV~+wY*m zR+$!4p_K^0(2{OEPH59z%!3v4352##gc#aXEre?wSJ}Q_CuI7*NIO8^`CTS%^nIg) z4nHht<@@gf(D#=$&(WLZlya?*%-)+$tiVHjEmLi9E=>ukni(c&I@irXhtCwWa_%~p zy_uTl=+5nOF>gIV=fdx~&9$2l3Gcx1%=K|GH{W)GxtJnCY^Z<|Qn}#Qnz%6+MGiW= zT+k{PPrK~R*E~nh#fL8D?I-HoArWGcy`Y6+y{T7g*Njl?nfi$2FKzM=rv?K;W@zTk zsuQpV`wE(&r8?;FC_$^x)(gP08m)Pb9@{e7a{PsMSwh8qj>c5K-Op^c2cDA9(VB| z_R&W89HFY%?-qcu|EgH+Fph9{`xO^+?j0u_`{yFY*avGd6?;~tp*9t}{Z=jGTHr86 z$8NtJOP=eZc=U^B))*u7lPD$6?r0t??2v)6M!3mjZCGWXSO8|=cO`I)3{<(8yWM%h z8E6nOW}rlisSMmDc$ESBty+41uEP|af$mk>bMkDC;*kuDH9}>=!)f6$&4b0TGcDA* z$nV(X&mHng7x@pHoV7`t#k0aLa@uy4fLQNzhdh5u#J@h8j6fL!AI3%Y&oIIl3XjVE za{@5?3zWbyvj2&T`EOeLiS#}D6E@6j^4-yNpt4A}3)lBexmN6x_Y(;^w@AI;-rV2ALi4Df?A+?av$mB2AF z5H~%-e6QAiA{l5UV$8q`j#EZ>gy2;M?DuII-C>6*Isac*u}CsnuXs>fR^wmVNqFJCjhhfl;S@|7VmN~|E86n zNERO#F=p|kop$g>_uyGPj4YPAnENVbd?QPLl}eWSM_da`6)_Ib z6SWvl>95g-F~qvai)`{vXNcYDB41~d4?5&$UF2OhxzJJmj*EQ2Ca-qL-wK%x{DUT| ziOMred#4)sBmvkm?eDRx0GV>uhS@HTK2aPf>>)yIgm_gH(X}?LaA{cPVp7Yu&|DYw zMmM#|`mfc~SsPq7o^~-{dAMIO{LQ7|0~dqRAAUlpswDmtfE}yVy~inuHnSu3Gg>j9 zP)P(uj3sf77K`Dt{rttNhvTr!(%~9j55~-6{g)X?wprH<8tMyShmJirqX- z78#3;47Cix%bvNyrcyXZ0H$z>k~u~SFLg0LpbeZz3O9=wQ~0J9!?5Gz=wTrubzxIEN~+g-nWLMO z%rSD5=VCsf4V*}hN<@rF_`&fD^)7go1pDQ7CZWTFM^3^45g^atD4s~6jBbb|s@Bcp zO2QZ;JXzRO5^fZLNw`hP93u(4UCjT|22LaiuZb87CNoE&X9Uk{RSPs8 zFYBDoyjT|)p;v^=SF_f+#172USs42kibC)}g}xI!zd8Gy!Xwh1_^2FaxpX7+r;zzZ z*S}n1$@8^3zU_3_!NUn&_Gz^sVynd?y7*};Pw=$WUEyKtRmT=SgP=C*9Oa0K&KehS z_Fst$g~(j35+ZZ8%!R++5yD%c=V?pK;iDRlpwCk|Ji`c$5HfT4hKTXHO1a>fjIUj0 zW(l4x8MjNSeVx;i%U$FyHhIAs?E)@S37O9K*JSnj^>r@%1i>??#c+iionNT&SV`*7 z0OIB2i-b()*So|v3ZBm2E_gP|&4Q=-CtdtIT=;*w_#YHJ`{+T9H}R#!y@F;>Ony|i zxjL&?3qB9Ol=!xbrDqfit}vq9@TJ6WTr6c#EL`{Ttmr4<;O7bI91i>z&SISv+TY;d zSv=0S3`e?H9*AObzGZlpu<)Aeo0`Sj?BZk=#`(zAG$GG=3-h07U=9}uo&^y9m=wUy z>$FFBEz(8qYLn|6GJYpQZ7ZR5s3v>Vn}g`r_-w^aAv5C1LZ&m%3ZA`bsm4=4^7NKa z*{oN)q}~@io9}NLZw|%>C*z3#B9zGt^h%#uike~e;b^RaE>g@c~PKW^865gPB3 z%ysZoK1eCQ&;a8;W%hNUGP6Ipq}~xcGu!M59lh1b2z@JfrZz|L?w*0AjU+C*c1H7bR6KX#j7xaf0DFXo z4Nxw4Ho#{ZkD1(QfH^L*Z?{zb^-cqo0D z>lCkC^2W%GUUERlY_lsAd7N%DPG@$f_*R(M6c1`9^lQ7yId%Ok98AM2!of5oEHl(b z$sYtCk>oY=P&*e(%9D2WN4G?#@KAkFc&NTW@T{ppE_^@1-vIuzHJ;afM!3+85i~y* z!0lmhU!u`SrxB`j;kOBXG4Qhm&l_jEHJ+ojdRgmSq4726{UXB!!79PCO%4iv5p+E( z_;V0J>QgFurOOlhCreDf!;b{NCVad{mZ$mD(E3lozXsoj2p+zNKd||M4}C8Hhv!Dk zk&AhvVwUg5M_(Rdu|;0!-6TS+mwAp5 zCUe2FMK9NQr$rwW8e8ZQ7wxYt^pxwgEz=!3@FIK=C;ao>E6@wn7*8mMCt0Dxkmg zf$}a>S5AeSjr^d)joYe%XCuGi;2BFdBRpD&s*yJcz()4}{Wy*MHy85&#e4#d{DcUx zkBQ47oi*(3t!p*j-a=499AHlP& zmO6N8s{uk(ZM9MWw$&qw^B5g+tBd(NQA>wx5xHI)-64015ZkKhb2<;qz@vg^TXoQQ zr>$NV8ry1^i}u&H;@2m*v8}2^H?#PG%jS84XIp(Cc(&CB!LzM?6#PGdzfOPRneP`NHuJZR z5We#uc&?HX_Nrvy72E4|Uh#b|7dhJ|r#s{yUF2al`D165)a(MShstNzD;N19 zn`~^hZFh5#Z?nn!9ovIl_L6)rbipUk0O}vv)8rXo(Lb`M>3w&4@f`=)E8;J| zc}`IZcY&#BKs&%`3jUsOkZ>y>e|@|Yi`+@$_hGoHbl&a;es>8K*md%kAN%`bjh1FP?1E@<&lSg&~tbV^y)3*XHPVNO~ zy7~BX-_5*<7i&+p3>q&!)ye*`moUkw)b&%TGs6>wqVmBnif|)fgaZC2i0QSSnoVN8agJ~qzAzVl z#4Wr}fHxt0rxuR&wsHjUgN^p@ZNfAjA{L4fe$TDt50{qjZ7tbuE%t!&7cCxF2E)m2 zpuHRD>HA>vY(UYRmi{M3G1H7L$`NK_cQDqO>Ni!)kDxR~ z{b8M@d;t&xZ4iom)?xTE(p;GZZw&sjrA5%;P+!S?4gSqh+P!nG2-PIuC#2 zSGK3_B>F#1{O8$f3SIARl$vc?VGZ(v`Yjmq9uoNLjK*m5y5^X?&libOb8-p>@_`aR z**K8vKjZ2CX!8`92z4+`{&*dJr1CK|LMYcX`77UM$JfBjsVhYtbs=~VQYl|x{!6JF zjYFSBL7$ZeT9!!^9|YB0bV;*vx=Z0y3(vpz!NOtnt2HK9jS8>WK)fmq?-vxB{6SFj zY7&)oWzNxNj4|gT`oc=nOzYJ<}0hq#{ z{Zxt}umlDRA2m(>NR!q?KBWHMlQ0BM^qO1>m~F9YNl}0JRCmfma3E%qMwnjAc)j|2 zb&mOSOew^J@IodC8-&20F;Rq+b2Rn7mT0Jbrmm+(QdNVLntf4deQ(q1E+L+OVC{13 z;`xKWBh0lyXnxP5edCHs7wJedvn>m_8~$o}US3xvgETx0q5QMeuZo&ng}d@T#@v9} zpzwavEd;j8)jIe z@8dchysD{EmBJtC(ntKo<&?|#M>Sii`9p8i=c~Ft8C;q}0Tql7HAV`3YnfRXJB`X6K^c6zhKTq|E_i%Zq@YZ<5R8hkSKEDK$S% z1b(T;^Lu_a{^2xOxyj@!nWq0u+Y&Pi4`*N~&X0kIISxhjO!g<(x-b>}>{Q*)`2AZw zB$b-)B5^&ZYg_!9Y>Mh(rDjog;Kc{t=&|uXV~JVV*JQUgd85bHGuZ-uiPpofEUG#+ z#+q}{U~sC`EG0uPEyxosU6PWa4J|;tO-u7jg}Tbs7*=XxI57$rXd+*M(5g$#S+R)t z8TDguCcljoNj&16hgm59blo-h-JuB4E}7kE^85j8f13=ktq?1`K#$zKglgO3FWvT> zZ&r*$G`yB0S)tTSZwc8uv>l%EAKgx=xhfwzzt%c=;%@u8p1$6t zb@1}Qv2?tZ0Ucjz9Xy@4r-McGqsBCO9-`%)2?*ovJEvmy{y4$RMOm0UX>d*TYL*{m zKHM5C6Pu$Pqsd(9L&GU(m!h{VJsk0zKx@cC+k@IV6VxyKCP9< zTvSFx)X<(X9^QcGY3z!w2M^bdn&+)9I8uMqibpYyFjql)(Sl|sPZCY8+BCCb`E?XP z9vS1zZ&4FP-J6n0J^zi;rV0 z?Hm(|Cq3dFsqGP!_D4}OA{ubT&Ta&}w35{Isxl|kVu81_f-qZ~Y#HEXGZQju%q=%69(E=n=0xcM~K zSk09g-$OOQxM&U(#5qYAkBmQXqJw2Uh6K#NJk{Y6Eq881eQr%{)vUQws&f|<_N?gH zBWG4k?c4=9(`x7DPOfQeFpkaAurQiKv(KuToI9c2Ji2o~7pBAj*A^|NyE$@d<) z14fQ6Hgc!WnO&VbV@~y~Db+Ko8|F6Tj-OLMv!SlCsyep{E>+E`sm+Cj`pWu+(aP*V z=G0Z!HZ;sayN?`M(KFP&Fu0%r0Y|_pLX8XSsvCmSnFsq2<9uVy>}nv9tcJ!ZQ>v%p z7^h1OHPafZ8#QxX)K@Dppq*pjnOZPo@R>s| zu&=TYV5YuqUS+*TH_X%fX|kWqaKK(E@O0T%*>Gj;l!YP+m+3vsAtw8fmenzo)DS?W zXnq1BT3Yf*wIk;?*3ETHxCkY+N5*UY z)m7MI@iw4;|H_8yP@%>$Z)h(&i@FLyVl&szX=D>1*A0#JHMML!psTBI=Y3*{ zr?WcTLHIQOS;0SZpP!pE45BX^)^@vPL@tnkKrGR?jFyq`2H^IkvK6EycNTd}OXVa1F4tX%JmAH1_a_9icf zR?p@9W0jn_KBrtAO;CTUy}!jy^=_KCd8JjftZ0jsJHDv=v|;5|(LP1a&`h|+4B_WR zV#fAe-n7jtR_$G}S2?m{#d@n~E9^GV?#dleD)x&8F?*NjsDq9coBOZuE?izd0DmSe zu|8jHec~CCtp9n}FZsdyozWY6>th@Y#larRdcQXw;r`AuSCo&RJK?%M6FjH3u+|^) zoSJM6`|-aINNrEz<+3}pW5tUvzUWP{rh4a;A$$3z72daO@AWIJ3%oO|MsKk;I`n&us|d7t--*v;O}^UC&Z+UL#N+_!4N-sg%|!VRyFE#~#%+j!VL%s)l^!xVc} zGcVq@(rUk~=+IL2cjcC4PI4tP8=`VM^9QT_!$svgyeC^p&|zBLebysBt0Qw%-rsv} zaH1z8?H8+k&Wag*>L(mrvEqQY#%kQM_p}u?R>=zQtxGmT%41=Gi)!pX3a<9f-EI|m zJ8rhxdmA@fmspkF4-IRbqV-jO>AYtd|EQxwJX$i5e?47WaA&pW-?jXsI1Zi_?sAr* zXDj*^9_Kh@rHV!F(M6}EwGL0mWa6#$uD}0H{)AMeMVa$tD50&yp20tJ`DaIrhdb{F zv1O{SdAwWashS^8v=Y?jrx8|d<*}3`o6W%DWq9`Go-S@; zc8j?V>y1O^c>-=?mliu5;?}!d$HUKW%KMrX{vV~OvcfqZVHikGzxm`e+^S5;h1it%kM%zk2HX+id=S z6HZpkeY?yFRQ%h&7v)RmQE;-C>&Vioj>&~YbE?BZzxh4eQGH2Dfg6O zE03D+qbB%U$Uhfo%{v;n|BDx#C1l7sjfdlA9g0{}f}RXDa=tmee9M&oA&wo_pXEKg z*jm2J+YRlNhX3vGzsu%NN>*CQr+KHBc@wN4GHsQYtlWFrho6-69XG)`^S_LDwv9Iw z6;=PgiPtgtzs37MXIIStqS=2!90|C;4P!&aQ2-C=tp?fU>h$>Xf6q6s9$Eh{ddPq|onsMjT9M~Q&&eytZz=cO>`Bd;`&-v} zbAQGP;i)E?x@(uW5>=4C8MqI<8h2pDsx3K1d#(0Z8~4E}h1GuVX+>LhdCvx8r_F~j zz^>GEPd`wH?cL?olZ}hQGlucGD>U_@0hZ3S5A>NcZDZ2S&@!NTyZq16-b7n z?R8XIpRe?8UxJkyeZ#uVJ9D%5Tf<7?fu7N4ZQcccZ!)dmUFzg5e*;GgAI|Qu_xe1U z941YlHC2HY=N5hP#m{u$0c7MGo-cfk(|_|zKYJ;~a<(wl%& z4{t-zoA8LY!NO=g)cVx=5wo19V++je*)4Ex<%z{5rjl8e4UISnZ=6>-%a}E%c3Qgn zgR2fWt#zFV52&0~HFs8JWA*Ur+G&l`jmFsx6;%zq;9=BPS5QH9#pF3St2IjI)YnYI zb(Silc)-9h{VH(Xq}C{z+c>qbVhS#yG&&6P1gkC?MYP~zLq*lx`nuV;;!;svUtc@N zm|2bM0`*2k1uj11>0LLy%h$W^de_5foIIzHvyp5#g`AYs&YfLdUsJ^2DMksJLtW^=uXI<;MGC6x=cyz#*3Yd%_Uqu? z?8&pLD^(CRb7-Yzp32SZz7+pNLxNMZuHrlP)%GuRZR8YpK z;T5=OQZci7p)tK;mM*ub#w!_dM!(@D14oV;Fmhlqu9#I!t*LK7WK-re%*S=d=}01) zpY5t!9@W$^r=Cuojwb3ixVU0$`KaQGGm1x#DH%D!fU)Uw=FF_X)tRb_Ml=b+##PJO zs_80@lEEyNihjd~M~5|_-&mueqHaz-k}`QVq^sxE%$eI@l%Qc*8`J7g2UDw1TqIS@ zuB@LKrEf&}$PvW@`i&UXuNHchZ7tJvtY7;FCmcS@daY|V%U#>_CKf2U-!}7j+6eRx#ym)s#|sH zysNtI)a3ZkSXc;$hEE3QRtfp9LkEN0Y8g|$DtXItZ7paP*UD(2*;=VDDAyukhqM`~ zY}}G+cxYlI{iMS5(Ly){+(dajA^I*mCfvJHUu_1}rKmoCL%QbisnMZubV|9u+Fofv zaBHQ&F-0UpikhiA3~@4l;zR&O1v7$(O=)jl3(aRuad zb2K^}ogBRmbzDksbfdh`Zk23o__!zV_EPZn~=gJr0ZLK!?O+M(SPp@DuFIogDBfQYEJM4v^UqO(zbaS>_hpxK75 zaLQKG$C|th8daQ5pwD;g4r&*nA|T0VHWE$lbQjujDvNX;edYAfSfG?5VWA5|>;{Q)E#6G6hNsKM7$MK*ja~G z6`eaiF+DImfOV98g8}p<(#Y};(8I975+1kNZmdU3u(qBkrIbXK>noxZz?4F*HRsu=8NQ)iZHR>_ zL!w2^MjOp&4V1)U2Hdc^7(vJvybE#bM907;igui@w_4zA)QZ~Bf#nj6a|6la@1iu5%3RubLAO6+&5Kj42PFZDeXP5ASAirCx;p z0gn!(FE<(xib@S`Wvc8{;Y1F*zmypvJ^5lKqe(_a^Wg~*WUOq7TM4?iR3H;h;uK83 zw2_`zomJ7w7=(9m(VHfibG_6sXJ-)}oH&(jm}#B6O;>rvGygT7r z$2(C}tHTIE>*nA}fH#z<;Tfh>%VZl`0(>iqMTu>WQ6V>Rd`zb**;)44J^QsMOe+8gc`*a zwfZS;P_sKeJr?F*dqJ$+vFk*a)EnSeFi-u^!7jEP=4#3&Q%HqS!pX2bcym*z42`w8 zs#c~{hP4*bfQ{74zyl;+T7<0-J(S?9iAm+EI2su&TsxEp2QEd<=8JNII)=H?M+B>? zY4M%Nk1Rr)CjhTb1+9ja_$pi-Of;B%P@YB`FF}d(rPN6lPb*idIM1k90~d%6w|E6) zklW!gIHnOiv7vD&FR`TyYt}S8q_tKN-JnMz9a=3n5WmRMH+UMOSR98hhCpJy*lx^hsRlD_uh7K?T zCZ-4;#O`Roht4$51WNY>_?VzPdV}@##SA}$lit72DJxfQ6l>QM+a{(#!Z)}$vbv65 ziBCdf8|5b9hr#ogXTp}Kz6BLlny>&%;;OA|CQP)`nh>)(b}zucZPzLQEsz6y1+PZT z3R+?X-3<@EzRV9}jjV#4n9LsvmgY0C5yejB zXNG2wyI43AN;+crs44v80BU&~Vr0!V|d((dC#cwI&flImfyy<+buku(48Kmr!!8 z0zVGY1V_&+2}oZan}>i;h1v}#8q6ika20HJ`e3$g6={cu|i--ahe*C2aSrHkfZ04jH2kN z#|kwOEg+`?Uq@yU0ilycaJXwdMV@dPp}bli*qyZ6FVeZT;3HM<=;Y+sA#xAYgok!bNQn#y3c@l9u_dtuDOL(Y2O)6*Z(Eg~ zJafIcDzRrmTw_ViEpQY_7DybOpUh2!GKLc~BwDvL#}yKVOJ)QzS#f#Gwpc4C!Vp-U zK)4Rhu)?R_XjI_SqG1p+-5K~7h()Bg<>~@BsZ~Eyu8A0e3nj${H7B|s0#IFA!)TLUh_h2_Q8!Firn*`< zfnKUH)p$UQqFx zi4*=8X@QxDOgg%vM{T6j>rKqR$k8NwZ31f2hNlR7 zf@s;S!K9{4j;+?KlAw`Hwu#fiGEzV4lDOb6r;exam7}l=x0Ed`D~#Qy=%A#e&PYsK z(fJgc8tXRodXGlosc3RK%uk0dKP=K1wAP|p6K<{0SwmPiHQ*d`%;<_05I)0STS0=Z z6=3~iUYsal3GruOqA{zfITDA~x$~HPRZDI)MK#q**3&vRG**zz0~+TFN4hy?7A?Bb zjGyx}Q<8zNC5@aVwSP$H9jhV7O883rE%q|gsDD8Md+!VXxa->BF&W4?bXq*u8BYE+*z1Dr*$CN zrOF0)SHgR+o@t%bsG;|5bn5WOdB^2AZ{mFaD}>j;ct~xjf_G{%?Jrkq>&xJ$)I>~7 zk2~^j)WFTqP!cA$keLX?@*fhp{y|!Qa7+o;Hn}b zK177t$`ZD#Z&s68jg{iOa2>K%bx7=L6DHnU6jRWS@t}UtC0(DWB8ruafjT}QfHFigdijPi&>EU^6+w1no`p(%VRRx;*T80Eak+ZQV$D^z>|Rv`FZoW#dT2njJ2)kWD1{G%nViYVAaSUyHKoy+X!&6J+f1x{DE;kA(zl1xw^!MOx9S@8N`$LCoa&@g z?kN;#qj~yB7TaJC+{z)iU80Fp$wA~r15B;z9!#dVRiHw7rCdcaMBG@|48}H+Wl@8g zZex7t6f^{UDpb^5sasNrgJOiDP1xhrGGb&2@Q|R$7a<=`IbusgrJ`!J)UH+$yT`dB zOtwoMiRMAR9ZMd_OQ+ZpM#8pNXe6zP=EU5K7w4Udgi@QD#DYHdswfAiD1yv2ma;W_ zj(B-Vv({(<3K){nEWaAPu8G}Ldnx-i&>#7I49pT@$g&tWb5>8mC0de{TC<54@3_IX z8=#P2b={{D)uFoKRfB%uc6Gp0-huc;&OJ!=Q4_|p&=c{uQ^6t<+HRSc3d)jJvL6S@ zC2WcTqtg$nAvl9ZUc#Fih#GTIGJH?TLHUg(=oPe&SSg9l5wpk66p|}~2TjzIf&!3O zKvAL#FnUA?u!HqY%gHC4Jr0V_8w5)^78?w(?q?$rpC0j+tmiosraA`git{DutreU; z%`}>7+fw}oq>cg!iQxevj#oiJ-dQ6R35qN>*?<7B*8O8J`@HRd_@@penMIZF4jwv5S%>_rluZ|5zfw zW86byVivezVEE`*eQ8u&a<4$$(u9V|O`T^K!8u;T4f_!d0C{ zF)`X&mym?H?z)0({DUDEO(S@8KM~^>$}I#IS71-6OZhe9*vw^dRGDJnS&87*s5nJ! zwgAfrb%>R0mUTJj6ela8WW7maS!kJ41vH&77N$d`lKRP#QPYhpnrhX=QkU{bRVXV* zNLUF2Fhi9)Q>(8-2xOZf;%eI=3GV|VO7)8pCgY6Pgv3wGX#!K%4xKSlmmOXUyl!Mf zEKHZ29()rlk;aZ3HW9f1z~zN8bhleI^$0Oq>4yT7Njw9SakqiVc-+8boNiz;jy5nE zUmKXKoDU)4sk#s*le(i>^o{x>MXVJH1>I^ONaw<6STo(@ix3IxgQ;CvK7po;K+hBeqHGu>q{Bdl#6T<{Q z{|prV0zxt!gI_ciRVw)vuzF4ntUj`Zy_~X&MY97_qy7a3yl_SrLL`%m{I#TIur;LV z*7PM|xd@N6Tt~iDTs%#g3E(6(PN}LwP7z^H_wOM1wCn{L(A16UN5FZekL@l+Sqr%s(EUaC0jZy|viK1^12`_Z88*>P#TlB6#h+%pNSq+Sdd z0mIj+lQ|eZYP;ByS=grXq(nUEdP3Nyrs2pzM=us-l}S8w=|`F;^Eu>!Wj-CnymQc zTu#k7CgPB~fUa4Fx9-yDafqX4a;13VCNhbj+hPT0S~P>g3^&nWjSAZXk=X|kZPzI} zt&u~pv7{Cc?WejhD1C4$HlSyNEqYacj-HdpK7rzIcB9atV~CPQ zb-zVN0AYqtbeHW|)G0!3ok>fA%ga{Zn#VFlsaja(?%ubj zWQZbl&YOg@<}A21{oIgjrjSS3u0ahV&}Enq%{sywK!4=84+lE8J+E`_Oyq|9>5#4# z!a>VnBlBWe0tgY0Dz+A2CANgEztRQA?~;u^a0o(#J=?lp%O^BebxlU{mLLe|Ep_0f z$xm7&m4QcN83$VykUmALvNEFEP6qUcQ9i#aZZ|w(<#(57u%&g0iHmR@We2V_VwJNNZS)veS(44*ainN&+(g$?ZXX;zHANyD$LgyE z2At_qjz3cyu;CYoV!ozdhv{`mbB%77^fNC;Ki%Z+_ZB|9oM;S#zJwQtpu4>`($+tb{ptkQQP{g6Ak0W zo(S8xRFQ;9%Hc*^&D=QS3Pr8YP5R+tdbeLZxvAnq?h373$;UJUyQOq`T(Q5v>A zo3dg}ai){MNN|hI%#tAwS5nh$)gafA02ROpmZtf32cha7^&hWE~k1=N|tsf5N}wPf4~386bFg@!BlD zmJp>PYuh#mi5g_CB{xFic=s3qhs!udl1su~(q(uG@ctx=DxSZ_1lVe$yd^)v$-`qs zgrj)mt5+i3(yUOt2U0==#D3DjCv_ND)9s9Tag>uBWBJ9hq*!{fPhevN65S+4KnEzQ zPa=K@spOklmFzEvRG9>lNXHu4I#^>#ekoCmwHc`A<{f6%*>C+G`3uY)_MQ3UJSl)D zRFk^f-PwfbHKFf;qom?RBfZgkNvLO!^gocz?2nXw{Bcx8E{K6zMj= z!z6gV6_&&FXc|pc8Jr|(`yjdsP9l9Vg^iWa0B)jFg}Fom&r*J<0N(|RckcI{y30uu zjKa?H+aH&0lq?8FSkgE;WrSu@{{JoiHoOvZf85X9L|Q}%$&LoG%P!r5 zO|UTVIo()+AD*nh#YV^A*g2uGpIBhCaZS@nO^p$-14A8ghFmW6jRn>1#leneh#QnD zwk-;CiGobIo-lQ8F-&}3^uDnI{gRspW1dmNC6nvc9kL;1(niak0?|mCagf~<_6szG z%bN7fJ~ce$7;RBDP{W;Zzx@^JIALz#2T~AY-FxSxJsuc-VO9Ya+iChS=Ta)yc zdmaKdjRaG*TtE$CYce^JGXf2K<}dyGo@1lo@ClrJroW=n7#phBw&kc|l@**iv!a+# z?CQnpfUT3LDFNAKTMamFwWjI!WN3Uw)5B;)egR!sYG6lVFt3X)5>&{djjRwSx{5u8 z@@qPcxy4q1f8j?d-!e&pfXe;62E*h>&uqiZwqSib;oq?@`-Anr?c>dd4Jid#IeWds z5PiWk!FPL9NRTa^6a27mdMn$;{f2nhuJSy>U%;`0@&Rr?;YVZKcEab%LAqAXLGfR< z{}n@_uLN1`i97aHUoj-OV14KdP7{2@P|{Yo#k+6E1qpsHRgib=3R;Z2?x4Rn#7^JV zT(-z#hWKZ@ZVO%=5dNv*&Iua-6r9Jq?Y^-Yf`95!v+RD{D>+p;_4%3IZL?ZCgEf1V z%N5US>^X1m7QfhG1)i2H5bW*X0}}Fcz8f8ssM%Nd_#!i@KH=uQ_SFM+-4^Wcc+xK8 zmWyMq*-rS97`Kb?o*1`>@Uvpv0O4oHxXTGYC&uk3d})k3O!(b6R#83>!B6hw&3g<9 z_CHMcy)kY-;X7m8<%HiK;|2)d73200{y>b|MfkoLx1I0{qC^KB82=?jpJ5||j1gqL z?lN|pRk*`f%oDuPI?)#tK4{>Jabl``fV$VfWgJauD1s{YTz&7AaAQm za1k%WkdId7&1(#aM-cpKvK()I5|<;m8^`qe_INXINVG@rtI2Xdv758LT%O=DoOUdq zzF>CeB@VpFuG-~KU+It!+7*N%_*0LX{q+e~>TPyKDT3#R?khZi;DsKQCph3yrwc=k>H4F2E6r=d$A9+-s;EUoO zbarZ%{i8%dM(!|fe!u7H{Ns2vhkkas3+CAn{=&|DIqm_$gT4p;aqiSvWj{*ka_UI*! z0u&xR(aXmnPpm!zpYBn!1b2JX^rsDc(4+DMuQ<%MW(mH;qw)lQaFs7b@NtjI6MU_{ zT19D3@QogoC%EHfzOB6k_0(#u*k|C=JStD{u9y3Y1n=>vJi+G<`BDU*?@@Vze|prH zBKTR4$`kyH5nqbn!yc6^g5q0gI~-tJ9khx7Jg z9AYh>Lw1ECAovN7DiHjXN976r*rN&*{HJ)qFYGmaeVNzWd4g2wP*BwBROvubtDlco z6Uhgto8}z&mv#lpA>zMOIWO`($P<*8rpX6n>NNbborZt5({^{*m#geC*Tjz_NT&j} z_p=SQPOnRmt~>GHW7ffO-_bllHU@LarVe=>d79wW9yNW+z*&#V6I}EPafTcedF?kt zaKWRd>FdxTK_}MC{h*_PnV{Od!}}651n>2zJi*_XaN|Zrg729mDo^kk-f@^AxW}XN z1Y?h5w$tO7>GU{eCyi|ib_L55B)iIhIy{aUvL|^HrLHvgyvnm_p5P6?!U4?^T=S?r z!P|_fz?KB>^r$?+*P7g-6v4N8RGuIO1f?h=C-`VwZrc`b{xL4M&Ft}0W4pY=z~|U?d+?fIJ-FkXy<5Z#_`>0j z3_NSsZNY)93A|`YKJ#|%3+4zedQ?bo$x!{lEw^m(=0;yGBKTU53JJb0S(P{M_2nXh z@As&1%fMfIsq1535PjLe?|IZ5!5?^3NbrY-((dwxEP&P~UgjEJw<}NtZ}zB=;4OyI z)_8NfFBcJfmq&%~Ht<1@iU|IdM}-8xU?_b6Z@%u!MFhX+QQ`Lu+;NR35y4#^6%xG2 zP+-_wws`XbUv7@zPVbpT1a})scxKVy8-1}kf;W3qNbnXzIkMT!JAAo_;CnnOB>3KB zRo?u*FBcJfz@x&C8Teb?ZHyi_@PZ?x(Hz02c~nSnr=hgFyxHr^MFd~yQ6a%!G?Z55 z%~4-2B6!TB!s7;B=Ka@b-M}|{)EvRL8cG!oZ|?HtLV|buau8GA{DChQ5&R>M3JHEZ zS(P_m^yMOgk9t)26$8KTQ4zr(8VVHY+v3exUoIs0Idjal+_Q!Q{k+JoP)P*$8%hbl zn_*urBsk*BfdIU@)|ZP2&UsWwFiKYC&AKla5&Tt;3U4y-9Uc`Ce5avwV7&Q&FBcNr zZ!w3KzD4lEGyv~;k3BEoqcgq%U-sQ{9 z5qzIVg?AeGdmc4M@Bxns34Y8_sx^7@d0%dh;1>*a9><$ZzxhYrbemu$FTaV9_7j z{ROWeW#$O(Hk6WqH_!LwLV}mY^Q2%c*wl7aUZ`Jy4gk7bGujl0$gc7+TRyxves z2HwaH!1sC79KjEGR7miHhEg){<_~?jIfDPwP$UEI zAM`~-f=uOb19sgWy!{QWJI=ZE!YyL{#J=ed8W(Qy z<|~Gjw?DFZN8k3d&uT;NiT%HEg)7Vv9kMGPd8<6~qAg;^ysO%{Xp1*h zL*kJiH81Tmc0~(!NDI5Sh>F+8 zHf@Kfx7b%`=l>jW1pT^Q`-AO6Ti>>u3%!M(zS%7M8@+|!KC<-|ySd-4XfH6!aj{*| zFM0N*&)g#B=jqQHkbH!Im06+R^0}i~f*IO2oKbMeU)qDe!C(hCiwARVe=8ePkL0I;HPGNDT1Hzs64^n zJIzvapD^%K9+f8;NAsr%GO9;c34U{qZJj3g6OWoB$Y2`A-4&1jGQoDCjrrUlfBW{^ zxAXQH9z7#y-tIB&O!2g{^bxya zo(Phl$WoCWYz?SvL!62K9+RISdkj6#-m*cUvJI_Usy1HKG1iU?a?zv_FP;$OG7b_- zae0F*bsMjO&Jtw0wM(tD+g)vDV!N%k|B?=`$K!&_w2eYxMGX&rIy;<7989n%x-N9uH4FY zLU8N_nM82eIjC8?AM&ZwS%Pf73-O+Bqd#g_As*q-;|^>QCTX?>gT7bHstS(q$R)0S z(q7wO5=?>(!tsa(J4W;ddp_5_x=k#XEV*8ZMBKMtP5$PJr6QT0W^P)MY?{MTB&p4@ zC^Fk&MP}#VH!S7+o_OV(AXmtt6|=Sap6M`=UHgM(&_Rq7&v1oK+7;S_AQ=+u%3d;U z+C`h(WewaDH$?E1b)ZWhqbuFxi+1fc7r%YTmEnS7e{fUhIG6!tl2RHX%#@@s2w~>j zgt-n|%Ib-jChMX}y{vO4;z-{tZvWsGlX`Lc2Rr70_5R9SH0eL#M?CJp7GXMk(htJ_ z)@OFhzB*FJf3tp~&@k&EN+0MT7R*5uS`be5tJFd3PFk?uv~R0(!xZzFAF%ddmY8{b zEJnrSa1fu)T0-RyTk-qtDx)F%dEeA42{JVbLE(d#q!jgu-RJtjPj&SpbZ}7oH|sfX z3l4do`ODX^-r+66U-P)Dwg@vLvn{xKt7OlL`RnSAXLe>yJ5_zw6BkO*2d}=I{W`Qo zxaDz&w+JWub>oxhSJrFqrU0@Yd$%%KZ(U8EIpKTlx-EFg7U36q+~F<4G5xOUpkHTZ ztCMe;Ct@;3`bn568Id2t@$)*36q7B?h)7$6nb(lE2tQF<%vdn3AZ-z5azNT5{635R zW&S^6@DsJqQ~=|3X`e8oZfT$J6ScKJa(p&uSJ`??_+X6NMfj>1w}ZkHOJm&S zgkOC%yAGI#Ht--wG6S|o932Wn5eOq&vSsMkr!VM(2V5t6JZTnV``OI1q z*V|Qg1`}R3oZA`9yOv?$KoI1^@z70sSls)W%oFkZMTe={bthbi?E}x-K5&`s4CWUb zR^VyL0$p|nf62;SV$X*8d5?i4W|u&TrJv<%#?oz~x-}Dtjg2{^EmTNcu`(3NBr|589Vxs?N zMSf~m;d{d8S~bV_yt~LZHcRktJgOr)JkP$mz^)xk&M%&61^zWAAGC7+VAn2V`uRRL z+z0H+UqA3S1n%4T?;Td|op#OcjgLz@=o{y`E5rSBY_riWyJpM3WrxG$FLYN1V2ty# zdyRY5zvkarpU>qktL%p7?DM#_?IRY^KfKeGV6>hs&$ya#Gh@l<5?3-C6KCt+X0b2n z!WfV3^eVsmBKOU6?fPWvGc3Eu_Ka{(%1#SucH5PEL$c5R;Y%HcAp{+Gy4-X(>25#S z`V1fF{6E?D=;AeO1&ynKTv^LLpKjdKZC#1WWn6;FmZz)sL0i+|x)RrFvgPS|&D!Dx z7ht%kkuCq9&2G_9Pham!(16fIp%Kg0?^Um1?PSXb`*7N?ocpp5zhie-ym!n&cwtg` zA5OQ}r@vwSCH(SS@9;CZQ=2QqZ6V&THAHud~{x z2deB_#0|cy>n{@bm6zS?hN5M>o5bI_8u-ntoJXfM2;Z=PVracs#ha$~;ms@hXP-XB zwK$LSg7)E8b#mAzit77KaO!bw2`Bs5tsV!&ujcUs#x;JUM}XKja@2u=@)Jx0t)&jq z{+kicMh(fRZnK)VnG)vpd6^c^$=na(Uh=oB|39oguY3Ak1=gck=KVf={rK6lb=H5_ zzTnkDjezA@-?bV9qC=jF|Exb?$z)znm{DLKS$~f;a0FNBBI_@k(&crO6|B4s&+dZY z1fa8t{{OBiU0y$JCE0&Ihu3L*|FcB>joq#SuMMj&{g-}bx)YRuleXF3x2!&|hpoeW zKI?P*wM_kip92CPUO#K;cBwCP&eq=mP99-4Ir!E9Zt&sN$mx*y%YG2i1dyyBJlDRl z>k*qzmN#1!@OpEm{*lXENnT&Jz?$yLdc?i~K=S!Fz1e-ktFaG@cl7_)tv>00m(}NW z*7$)93=pvEJ8+ffv;M!B7s;z7n|!S-{qD-tKP(7*c%7BT6CchWQNIH~=E%e}c=z1{ zxC?OAi=S_I7tcTM9{?c!3G3f=_Wn|%KMdj_O>u>T&tbo>g4^?Ci@D3+{$tJS~N>fg_a zbngCEyX&O?H}Hj&;rI_*{lh)#XZh#bs4M;7kN?RJ>pv%n z1T1Cc!|M+cuzq2GLVJF;UDjjSJ|MC<`R)x?f6rG~(p|G>SxD!|GQlM!!Pe%-+dbdgH}IX3i|U)uEeJfq`zT3Vz22@|HIoI z;|=^P;}_qZyu&u-`sX`b{gasoW^Q%vGAypm?Ah(G40|^iR_G{(yc*8h=heeU}<@vzX(O=29}AM6Nd50l^a2Nwpkb7}n30@|-MerG_tl*aG! z_9l(L$lH@N{$kjNfh0=d{^04*``z%*fIjbreC2*^ar~G>emDs{I@5d z-b~}o8A>7n_Xp3)VBBqgAl`K6r$5MQQCFrv_z#_hf$0x^z6bsndf*2-@FFMMy3D)C z`#Hg5XR{Tghkae>|3Yi$dh@GT@0SgKTL%A1!#|wCF9F||pflxoP4S)l@SE1ot``7E zd_DxYFX-f}&jR0VT)oEoh_)U#i zzZ>`gS0wfKk9(AVs0aQZdf@*>@jHTDZ*t97jBXde-`OjA&*=GKd-^kh??$&5^uWIy z_<>Z<-OY79%2#{fUkCi&F73R(NBKYQfq$?E{%?A;|IHrdf7}Cq@wwgUv%d#^xCcH0 zz8l}()C2#v9_@Un2mX^i@PFL{|9B7l1?NdWA3K}X+m`^}jZa?G1AmRS(>cMp9_6DR z_#1oR-`WHJp&t0p0^g0_zSyJu_j=%WKBYSy_V&QPqz69N1An>)e!T~N3wW8YBlixZ zh<#6w@}B@+Y=8Fih_;i(2EjLbw6hHXOE-QP0KOZaAM8;+?15j@b~^d6+N1rA9__rp z2mTLw;Qzb_{yRPJvVpc69WFwAc5%=dkL*@_C!K#0_-=H2S&#BKk{NH6S*qf-O72*_ z1$pZ+j_KUDfa4BdF+3HG_olkhn366H`K;g{RdgM;Ak4i0h zPgSwKf%8dm?rRyxJ?}fT|0+46u}dKw7g)o=#IhP7$0OtY5{r0^VHxKm%gePQTS3q} z9B5i;rHb-2PVM%wsiE=F2(NBHzuh1VK0Y>ibZ9JcZ`h8)A-r2xN`&LXzI3TsmlsUo zg{VO^a^1wxI9{leI<>g-JYqeWF+Q`jJwL@mF|##s>?u#<#k)dqq+$t2DdN>{|;b?H*;Jzzy46U3poW}8-V;tC8$sDHax)mSeoga(v1brzWU;R?TVem48 zIJQt5!lA;pyd$r@z>%Ri`5DxRnL)_+iZ#3o*v;}V4)m1wH+FgP;E^Mf`O%3&VJteZ zZ~s0Vgo#sX(_QDenszX5nlf@^Azw(1s(3B0EFS@qx9ViuNgth?nj8O4(!}wiI72q4 zFVi9!5^um!GQ{syaxbXPJ}>?91pnTI#Ce>lw>YFalspnMQNfMXO<9nbmPEIQ?d7mh zE*!`CvXnHis)$}_Z&6J54Mg>9m^xLJr^Ba*mVOUgf-G`&c)Dn6P>J{5YVUgV&3DDk z08VC23yPg$iWkUj6lKD3>hXwT< zdQ!NzuiES4vsL|(y<}WJZ4pi*#wqWa_r+u<5r$As{_PkyD5gie;zdn30YCjzvelqJ zK04LFaB*d!Eib?x!+Rg`!m8AlN`<7-avCyy27PI;A}?%nr~HEs*-p!Gzv(VT?iC^0 z7{;7^Ulc~850-hzya)gUObp&lQmV(XtYzLKm+e)m7CBg6U6kpnxE9GtM^Rza_*8EH Mj)7E*@e42iKV|-UiU0rr literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_675c/.packlist b/scripts/_Inline/lib/auto/FOO_675c/.packlist new file mode 100644 index 00000000..e2f0689b --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_675c/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so diff --git a/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl b/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl new file mode 100644 index 00000000..0cd15ba4 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl @@ -0,0 +1,22 @@ +md5 : 675c536e5e74b1157793e50b30c7dbc7 +name : FOO_675c +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 15:05:39 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so b/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so new file mode 100755 index 0000000000000000000000000000000000000000..67d60fc2daa1d049c4522bf7b8c58d419e4cb676 GIT binary patch literal 49278 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

q7RPEAK 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/.packlist b/scripts/_Inline/lib/auto/FOO_a4ed/.packlist new file mode 100644 index 00000000..3f66cabc --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_a4ed/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl b/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl new file mode 100644 index 00000000..9de27351 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl @@ -0,0 +1,22 @@ +md5 : a4edb7d603d828eb403a2b4f1696c4c2 +name : FOO_a4ed +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:56:24 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so b/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so new file mode 100755 index 0000000000000000000000000000000000000000..c8f381660fd624501387bc52051d83d4cdbda34c GIT binary patch literal 142459 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

H4U_sVyNm6J{%4B?1gIe=vd zFO<70z98lxeEO&~gkvU#^rW8W;}vkd!|QLW!BBBa5BJq8UZ~S2cB*dTCd9J_UT>C! z2GwzJ%8-7TYDiBu8Cu2-p4IeC!=ciu`&>}Cif@bfJD0;=R@NMZU%rH7D7{d{H=~B| zVP2n}D$`=P9y<(3g0;;53Cqvx?tYh)`6#V ze(0eZ^WS3+c(v8Gfa#gvl^O&hEgp;i%s*(6V_uJ%T3{QQf43EI5Lam;^RJrN<#n7H zEWLHl?t%H)?n7p{Otc)D*xaUfxwT~yM;LLll(Hy>HM3(NfoA*g9iq2gCDOpoDPYu?-n34@>#I`v4?feSRqAK{7roOx@K;O6OS=AB@gSam)AI8=FArls&L2@903dT@ zY#Ic&4!TFTx=T8J`u<}`CKd|w4_N+zN0|R_kyo0?{JSjwu1A>vbI2>S$Nal3|8C3w zY8zOR5!+8XxCeRT_1}EkATU92^KE+Rc;$!rdHoua#q&R4`5&z%a2GUfW) z$GH4gv7z=bb*poiB5_T5^a&1ozqvh61NLJ4Cp}aDhQcBz|W=dm@QHC7_*<#Ge{a|0nT}3aHnU_I*EU@*TYHt zW4wM%;-R6>k7FF%ADk9YAI6{d2d4+rb4mQ;0_v|M{)~WnDT&_|P~Rl+psrg7<0ysu zgEIr_iTK0*;NJz5|4IB=0p)rU{{+bC!8l6c{^0C@ayb65KR73#d`;qa2b7yhyct7r zB;fwwNhyrG?GMD7?)>!!X({T`^aoGwObkqa@RT0-r}n@PcHo6ic66C{;rE@vgAb)M zNDKSAjQ_K(oR^th#e9Ec_&2BUFE;!=Df|lXeL*zN;M4SWp5h;T zC{54L06wK^v|(dC@L>=9Ru8;{)w-4cVc>UZP02r>>XH7w9_hcY=}!ypxZag>3-0Cj zFFn#f9_nFGQzZWk_Q3B0zFYf`^}v^V;J13<|6K8%^6-`(>F?};|F1pp|Ih>fzZ8F3 z@C&2!SsS-M0N-t1PKUDWHV)_az`vjeex?WhWDoqGDE_n{D*^$(g_pYPn|h>w7x05F zN#gIPd!+wT5Bv{%;C~PN1tQ;U+&*ZvJPP*CnZRfNgF}>UJfEQWL{s!ePT}Y_o>u@r z*qJ=Ix<~qI5B$Fe{(>&$yt7C8Pxruop$Gnd_9$Q8i|*F1-}Jzrc}n;6dwSqUd*DOh zyV30{d*I*Hqn!8mz<;I({+m7UzwUv5%&F4O2Omny?X!XJHg3=BfxleK>73w9kMv;= z{IxysZ|s48e-HfKz;~m!ul7hUucmkF?-`Hkj=!J>{?Z=!Ob`5t9{7zO_-){2zTWqq zBv-z>NBX}3UUYx@cdwR{#sqZk$H?ONM;t;epZBcFr<(Ao5**#wfx_{rwa^_X9~N8k zd8tBs6K99w2-Xr#ULM-N=Q25hu}dNx1h|GXg5?u4a#Arq60wZ050-FLv3wINv^501 z!(pT4Rw60CI-t!yJTo#m9^(58Xt(Qx!AB;h4~Dc{H$|x#*9p%(WM1c<5z1CypfL!MOO~2M$Xt;*dmqv8}X( zbJUj(9y~IUIW!s$4-F4pf+J$(z~3Z}M-JmKRsCjc>}*BXtms7T>_mtf^jm)XeoGPO zvdawOKte4D=lj|Mk9@lVM}p!IW{gHe3^IIIuHzHFZk9)JV5fX`vCH=Y4<4M(j!)%s z6XD*WJwrI?5+}$eo6d7H?aZv3Z2W5fsCzU&j(zA4< zYDEqw$I8tF3VTf+=2TThjgRm zo5#r}h3;z|S{VAA{^%2WqZP|Mq|W5W0LD7+CMnV4h}TjdgG;w6k&6^8UlB?*RZNTc Vq$8;iYIN$hKkh$KV)UKL{|Ajp)HnbD literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_c054/.packlist b/scripts/_Inline/lib/auto/FOO_c054/.packlist new file mode 100644 index 00000000..bbe053fc --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_c054/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so diff --git a/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl b/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl new file mode 100644 index 00000000..627ba173 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl @@ -0,0 +1,22 @@ +md5 : c05467e52cd72ae79a69b5bc3faa27d1 +name : FOO_c054 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:54:45 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so b/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so new file mode 100755 index 0000000000000000000000000000000000000000..81f1a990d9a111b62b1acf6d867e34e79fad56fd GIT binary patch literal 141717 zcmd3Pd0bT0`~Pg>WjpK$h&l=ymKnH(3&jZNpa=+PS{Wju;7TkmWrc#qgp`$)l@+Cy zm6es5nkl*0x5aF;`t3zWwsc<_jAs%{hV{2^K56ickT=~ zWn_&p8I1<*FdHs25GwC0IH|H=ov%q=84Rh0WP=a>k2mz@b-TDq&cFEcA;HtA!C>VK z>cfYwn&>|qO;%1cx=sphatRmZqy@E$YQldwqGUUb)<`uqs)%X^3n-mysN;5MykNs7 zaZp`4a=)sYN!QCBb3xDT z0k7SC%d^SNQIl>US!p=&QHYb_?2fY!PVMNbT}VnP-2-Po9lsZ@qa=>d@#!*2;)_B3ar)sL zEP2yGO*s2Y94hHRNmC^43wn{fCQ_uk)-EG)5rZ=uX9CVFobfm_afacfBTf+4|LLwP z&kOPi<%tm|<>9*h(~ZG(&Haf-`AELn^~D{_(lXxr?(9V~9$r*&eV60cPKlj!(|yZ! zHvY)IdFLdHpZLJ9-ARII}I7Rb?zGN*Dp*{YuUieRk+kjcSE7&h z_}_bxQ{Y9P>%8dG?8Ofsd67dCXM6gb^P*3*m-=sev3G_SJ!zh_;%s}Qd6EB&mwa0W z0qyC(%uD?_UgXo9Xl<(u@H8)e_zh+4^_vHNpLXOt=fyuEUifpo=zq$K{Bd6NEc7Dh zS}*ncc;S!n62}|8Xo6>_vWr z7yX~|Qh$&ayKeO&=VHXMPdj;aqZj?BdEtKp8SVLhs24qZdXdxYr9SOL+mrvD7kfYP zlAqPkv%P)9y%|X|Uh030O<1tu$JVAzR#X&I)ZD-#?d$3UKya&`%E%(ug%TU_s*9qPv+3#I|eZbGH6@1#S z@T0JB_WXql3M;FMDyj+#4TWV3%Bl>7vp@`mnFSLHXO>iy%r2{}Dyb-#kT!4Of|7!w z8S_d+S^Fi0#Y>7vK+(Li>riprqQX2WA#Gk!Wo1dFp|T26D-4Tfl~N;+758lkD`Osv?xOElMw`EU74iFDpIdjV-C-4d$23 zFP>j6q-M-7uUeX4Tv1kDm0wjgoZ$)*S2UoSf<^uig=5p6+R{ zwWo5Tm0ml~Htk13-%BBlmEyUD#ier#XBCyr6W-F<@7bYk=1d-9Pi{fc+!CRRCtt6a zPGnlqyyEJ4MO7tPB@1R(l^QbA3dd(m#Yk9CQUNX>9%X|T7G|X7R?nDMRy-cVWq#4T zc?*kCH9g-}SV`F}TP-MATsUKCVR3cEqLRV|MHm`02bEFNin2uzMr}RfNxEt#R3pjUjnFxKkXuw% zfok$=qjlmk3%*Bn>bl*~!YS?=nnQJJ=+F#uiJeeAud1xFY_>O{TDd0D z)ll^2t(ho2ztNz4dwWfg$GIpH0d&pOG+nzU;RPj&=P#_NDw^lwRF+hgEfQ${>_Q;J zjD-uU3diK+6c#5A9U@9FO&67yQ7|zb7E*=c(h|&Gd~QdfmlE_gC0|r3MyeNLhO9Eo zE1OX~qpYfUVcCL#g9auJtX!yPUA&;AYVpE~x$PBIRxPZ+TG3vSSa&LQMRF;E_<@NY z9n4!edv@7^*}AHlIu{pLEG@5Es4o!=$Vh^wo^ocD%`3UMq*z~DnsqTPV|qR*G0ad{ zGLzPi!onGqm0~dm3+vq_)s+>OU>+!%cL{tmLcp>amn=yhRyb_P#q-J*R4=)B_JV3d zPHskaetuS=&}D2^=IFG-K?8>vw5ve_>5-i4F!3jkE{JEQ*vR1!|9f8X0$$dBDYjxB zM_X(#U~?@GcP~^+lc)7gmGpe0;rxF>5b>Ary_mTFwO%v_J1~pEmmWCcFyd+19$B6U z99~w2$DCaZ-B3<@vg(*JJO(rydb{cy4TEKUYA?!7u5#^pwXANi)>17z-)yo9%KtYQ zT2_dQHJd#78eaE^;6qsh6mT6)I=;V)YcOoq@#*=mc5K!0r)x~m9XdWef76a;9iN_I zXvYy9Uw@x=RLAeDRR%q-TtU(xZ+8WS{F$Jggkl#cJt zCd6LHC!cCZf{sspYe%Avuf>wel68D~?y4QBIzAG}b=Y-$dKRo5xjH^Q!`6-|I==qC zZn}=Izi%wn@%8tmvep(7txM2I==QipUT$h_}cSp z;y3B|^jU&-Y}WDVS+jO*)$!^1xpwT(@#&elb~Nkw^!b2x9MSRVnYwly)$xloCg^b; z->T!c==i;Ld{xJf)A3K~`0+aaSshEhijJ>+ z&Ov3mgxBUg|0@&AEs3Xt=IACGcoO0qvO-FRqa@( z!rkIiDBHCg=_wU;8YFiko$O`dmyqj_CN8YfR9iI)18- ze_Y46>G&-={%9Rv)$!AG{8Ku9x{iNV$IsC54RRf%{2!y^D?0vI9Y0vd&(!gwbo_BT zzE#H`uj41^`1JXfb|mWf6Er4hvW`!mi)lxyj;~+W>^gp~Rv9!`$DgR-hCL{uMgDz4kjryYS(k%UsIEFASY0hSjLkZJT=G@A$A7NU;oJ|~?2-DK# zT*LA2HNe9N*KmBAFfCQia*n?tOiPq=I>(f29pld4xHf((W=T|9OOo_J%C{=h(N0#;4u! znca~dpGa!AaJ)KRrP@2tZWmd+hlVYxsr}GiwL$GY{lIbT1J7|#ZG!)(Gy$cVjsteb zVfA}7&1_f}Z&%G+&)wX}T~;pVka{DSE1QE>z65M*sEW^B{#TdZ$4{&p1viW?=AL`$ zx7OAjq_n+ZE%)Y3``~cy-k_CG8=KNzF;GCLJS-cc6~?G&&=F)}h0UhI#SHw&C9g)jdSb8&i^?kmH+l z#}5czUrj4#iHK|gf@W`AFJrhR{wSh>dgsozwg&Y|$9qoO2Sdc(>BP0y?l-Dmpu|4> z+v*cwKgHQeAFFSIDctog_vOJgLEEc(Q0FV%Egz?rwSQQvzu?KO^!mhuUs}%Xp^Q5l598IZoOg842n#WU0NO zI)UPv3qHJ4w+7;&QV~psi7}*3!wm^Z->bbK7`@QG!4|ZA$N*G&qfl6U(5U|SD=OBW zyRiBT@L%D4^*_XOdT1;R7zqj)N5;#MaEjyA@n@;_ z(@;{31loX5pRvMMYC2bcKjr+ZXV6(gW%7jKKUDREsb$a>on|@Cz+2y;P-r~>TB~np z-M5#j_J-@dW~v3&Q>Jd`dVHqF17|r-WI29SeIb*ZZ+GlhV}(!bjR3erq z)jH9>ZZ)-UOc@Ftp0X^5CZz$-Upu<3?f?f)GbCzRc{5m0rv?e(=&|=Whpd>F1 zbT()@DCw60S_(QwmX8I6oZazFLQa#^^I_0MsP~AZ8$hZ5jgoExB|RPmg*|KIH;eW) zz|`+@Nmqc9{%^p}rD~D@X;lZuJ@iytI;0hCwnumq;@imafb15XHJHBzPKFQPv=6r+tCa&Cl(56t|N3g4pDA~skkhGIp+98e>RubKKv8xq%f<~JjCDAMtrJEyj_aF0phb9r}wOrk{&p%g)YoPQd1jAxh_dlq@=-+ zqz!o*+*{$&nYxtU*=bABDJ(;GIC z{EXq>1+ARe1>zerN;7B=a&>%gmg60JgXMTufLb-==Gun88?>?nLe(nGbZud&!Jwoe&Z*e@ysF#&)Kf78jcc$Zpxab+!zs~& zQK~quAv~cW4;v!%@GkW#rUn=|juzzxXrGbv{kK!p-{A-DbggIMcd`4DyDojtwDCgE zOVG2*d+slL&Oyg z=DCux1_KNHr7r$X@YP!=bd4$Rh{CH~g*0=4-yrzuE`A;H9VcxsBX$OLH~4#KD5PW8 zlmkt*(D1Dl?VkL2YNW>pr#sXE#-O@lvj{!s6n578Prw0_OED&C0kW^ zQgSipc){0d7ulqSn((oa@6qHvvPAU!nrw3H2Mi;c=+)!k@I583flcAfWTM;@jzl4C z3Y$?A?yI_r`@9Pp%T1vlw2>PL+7Rx>ZFj|pp`@5D0{=CCH9617!xLYLn=sWuzjR0IB4bXd|c!y_J+I!`^eGYbf@a@A+{;g zajD+!vg2mDY8+}U!?ewjG8}Hy^cYk6!>IzXKX!}{)@-JJ_R-H?-8$<&;?sdd0Sog_M2%zy!SUmwprVnok zS{b4fubzSr9ChoPDY3+8jtHuwIehPHXq;92h58qQTl0q*a=1d6urSugHSYeB)YE#~ z)r|x=wur8}qbuhKu}^>N3R3ka++=;M{`4*Ggtl)J+lt1N7xG0KAeJAZgl{q^2Oi;k z>?ijV*F7QG)qNCF_YFdoTfjO^z!%PM#Nh6SjxkeXWYPFX@eZhHaPFk|H>RwcBBl+L zO>>n!Aj-ZIDq~op^m3Fs?-3&J*KASy6L-1b4%Jr=rh-xw@ChQR^(Dj$``hoh-gIX+ zLAx`XFj0L6mG`QAQs#p;pJxjnw05+ho3dO~sr}YieL&k5k&N6uw7cS>af_Eb8UIb} zjsNmat2NY1kdfGso`brMBd9F#FnJLfv)KO>zmfr!*%h^5Kg|r zY}e* z^emKnNc{|)bV>@!>?|ZPPg*R%M+rNy2RWlYi8^lkck?1)+<&>b;<3q25(?qmIqIdd z?|SN~8~#(PW#3zf6Gfb2>bqg>`euNvMyyWg((w^)p)fep9dD;&2~)WL8g}y$QhV5_ zwmM-!!)iVjGO_9x??=lzK7Qya16SIa)Vj+`9fYET1~IxCbB(sfWj`O9x|%;QC*GsW0vE0 z&Nr!pP?-i$7N#WZ4rqjDIi{zoAHfI=H%rjU;h6H&@u>DMmg`b`1Lj8T6RuauCmZ7_ z==O#lSI@EXiGdb7CL7hmFrhO#{Q5QJh&j7SQx|3KK=7OWtH5&xr?$YOaf$3NG*O+aqY#i$o1}6~<8$xC1v(Z9k^@eFL1S-ilau#&LU2cz4_*D1+mwBB60VSgI}uLpbeP8hI{_ zNy~$XU}LUi>a;uuD}^P27(uXYy$mgj*~X942t=~h{=iGs7T1}SY+9niTm z9^Lt+cXb~?nU(~%T2 z0I9_%s!}|b=PRIG4?g}cs?qJtK{XZDsNW)Bozb>?2imrxFHPH*a-r>~UMS5sv|d6T?tor#>+3Xc-Qe>lxaF{qNQsI z7{be?7#ynazwTR3X33C8TZkpJg>XB{#`|z@A3{)#wh!;{orZ4vP>(46JL9DSFMj4> zecO)Lp_n>OmmRmiQ162q+FPi9huZ2_2wtaD4DVRQUp^HouJTZkmb#0$T9i3hSX}d5 zs#*-Sh=~l6E3>V$I+jC;4&pZv#WY&!DZom60IMc~A@az|XZ4hBW5A7Zas7zf!784M zxO;kB#`9)4ORa!`opSlZ|LM@26)4us=||=ifg#M92%p2q<5}R2cX3A&*KH03=T^A9 z-Szz-xl%+YSnQiNz@|=_bL^82&3PWhl;nkf>9j=O?yXZWpB+DjTiZBY6of)$^&I}| zl$HZJ)-q6PS?{SO`EoQ@OnR6nIv&+f!BPs;O0id()>-{lf83!L=c8C#kuvcTf|><} zNQzN%{yuNNbOuqtmO6h(bE8SJ6bUrD4;zLd8_i3J#s-`R!U1(+GMI zyK+*2FB94>iBGe%JH8(Q^^7*3wCw6J7^S|9bm^4mzB}Hbj&Gn?o3w7vgy*(^A;P^L z!NsJNM%=qy+*QPt#z;j!gdaV#Ko$g3)VS|c6~1>q2}Y-^>DjS0tsl6P*GzhU3Wl)e zO}N>miz^XGFYKVN=&W9=&`$@MFk7eBlXmDe#--OV551tv{~>GsrH{n)_WS!{_f$hm zzkc^b5A58#r*}||vXg!w1CDV&d>PkS1(rf`2OVE2JHAtP-2U#V4k7VeR-h#&@7?g6 z`WVunQ$BkCy$)4;5yj-2kLankT%kqx-@`ec3$)<(r3CO;pUs`saZtxPhDjai2TL>^ zvA~_TK9A%Ydpz0@c~XHmsMDZ#r#!j(-3~oDAI0R!>va22xePx72YI?u7JLZHwDtLA zDA_6fzI&%b{oX*aHvjdf-R2fB5iD84IBB9T`ygt7DoO@9`-!C7if#xwv};_ttc9ce=Qb3vMcLH@LWW z3hsTxZFF&OAg;EmaZBGutUT8N;Q?Pt5xxwFCn!$fPB|kAN^~&6{Pwnc6*x#r9|uFk z^oSUy{LzVP5r9^hck?@|)e7{|fmX#R?r1kagVL@xB2hfEhz|<8dH^=7&mhd5^4zCK zJJfM6inY;TCeJ+xhVb022riQAg*0&MUEC$al}R8K{Xh88GYe#aiK52SAT^lp2L201 zr>qI?*qR^Ta_2!c>3tLoVNEmK?9#=R2&5M>A+xi3EkQpWWWrRPUOh;!WS3qE9(qBS zmytF9(nnEzz5MP?u^XswyBomjtJ@76L^aCJ2gP31y&D+SSq0`ovWGJ~JI+EeQZ8ua zDc-YuE2K8rz#j`N8V&bEqlyR{pGolP1Ky5T%`WawG&j0dY4-vsR_2k2W_ufnN;qA; z1{u^T_cp%Kp>+#TtPQARHfTKo3}H(OpV3nah(^>9C2>p7E&)!+}+zReoe8zXj35@N^v-Hn2^BiX`vR$9PqBS#Z$)|q zDs{?9r(Ww&g||^mV}7OHNxJ(}nn3L8A8>?c98*QXAcR2e(ODg{I@a-G6l(+M!^@F* z0bq#C`x8lzeEbPtRZ-8ps&P*cS6h*UqQkib`jATt$|*!*MT+7pQVvY&l*ey`9vuX| z5XEH8Xy~0!)?DV&d!Vr91+pf=#f=i&D~KEF;+mw5c!m(={xAsFw0bqbs7~3i>xhR9 z_@Lgl!#!uK_oFx?=}VY__x|u&(>T0mMW6L&;(LSY(HKXCywii%SEkd8EJgGp%Z$_Ni@c(E8MV6l_mg0rAGDMMHFX+t;Sr(tIy=9Y)?>~UI7oV$O>EmzNd{2@^ zv(Hh4X0T2D`Yn~r}**bb$4 zF&L{i;2n{K2E31h`i;v>KI)yQODf1WL^cBAwGm#fy&rrOOvdEb4GK6JHlfKvfb;ujZ1N1 zl?pvcWt28nnYwVHYAgAb4>;J2S5H1e-G7&>Vhs#BMDp+oq;AZ)-Y`*rJSgTjdb=KK z;B8bJ_l&BbSWHeU! z7^|P!h0myEP4!*qh|ebRRRkz$Yg~kPb-u3#F8kYqJ25m2hA3#C90|uuXTa6z;!vV&_ z#JUqK<6*T3`JfA81t1M*l9$uCtcxy?_yo9H7I{=gbS$dc8iFX8^j@?GCIycI`VlYe ziZ}*jk#A)%QE3<6=inwZ-e}Cg%bNz&9D|q+p_ryS{vrosuAsnt1=}G0XBtH)5pl^x zPGuNRs!Px=v-U4b^}bzr??$#%pW|NSFDCH8bO&m6CMx^(brhA2D5a>x!CTN3-}qw2rldmmN%snqMJ zngnNH=G2d>U|k@{ZInw0gq#DaAP(c`uiCSg#ijPfh*4OM?ZuWAcH`037A((yUWz66 zp;xqR#cfD=aQh{L>u_S(_GvM;JOC1XYf_-d2Kw);8WmlA|-48 z@(HTD83xc4@mhcl9WRNT_f!WvrG^Yq?A?T-gMH81@G!!_%n~By)gQp!HQAkm19>fX4l>B?Ob%Yw+))l%QOaiqY&$3i zQ-P6#$B}hNzIS=@nYtnQXxpFEjEfdrfP4vZUMl(_6|)f@_mtqCY9@nEa|6lzo4Mg4 zRF!kX=JV!;J-m?ShVZs?1717SQj+F|FJX(9x#3k5d7T@sMh}=9{4h7*iwfG@a5tLh zXY56&)tR_Fx~HSK)T5N*(i<<6Q(QI!BQA1=mOB=T%TX;Z6fzl}cH^>rZ~Ifk9`L|U9UK{emyxT(YkbCjm>XV7*&(Yx+7()@l_U7mm@Vy717nOPqz_Yy6 zV~)<%1psPsZ9jsxwBh0Jg+qNz+9nzy`@r`Sk;hQvH6kO>Eg}+*5kg&vNmH%jy)1V1 zq85Xp4^bMLbtXiWFLe~6NhqZu6C*Y`YBexIlzv`_3fc`(1VVHNqTF7H?gQU@h?Y^Q z*AOu{K{rNdb6U_&h%SW?9-;^lGc82D!1od&3yQpk=pGazL=m1LdK*5mVNKd4dr_OY zOWmtY6Pk4m4#L9O2&Q=aa07-gPbg=_SzKWiH8@M@3WLtz zyard;FYHM~o2jlgnKTVFrl`bCb8!a?ZcGxm7rVGU1h;^=-CW$R;L?!J00(y{@p22s z?+BOgqQ%U0M|cMyCfD}v2p6Nsbw`NXKi%!1>JKNkb0?TiO~job`W*lrY7be|fjVwh zd_1_?odw+rHdCqVR**{Fw}L;z0R3=#7j-)mOUsUqVtL|4_XEuP$omJu5OI6~DNi2# z2^=U(D?T<8v{J#T5m=;Xt>T*r+EsX4v=j_TBTRDp-@TdeB~!7PAej@+ztNyC<7zh= zpTY{cnP@t1GjT2C*c!UgW`e#pNjDmixND>vjW&zdJrLt%94p^7q~?Pm0+)uN?h&FTDC!_Yk0ZFc5bXl= z9-{SB>NP|I;e$5on?6K%!JUWb3JCEQqLCBSk+^;?F3lt!fx84n9RzMV;;IYWwSe9Omrtc$1NRj#^%^+Mfeh8W4W!dh zw%x!vv_|I-q&>2YXW*uwf#*QFo7Zy(ZV_s9CUB2F(^25+QL4>#Gy5Y%v%wI7qnU&z z{kup2zKVO4zHi+)bj$#J^LrI$o1Zpn+&u)<|B&M1A@g(8#BrED4ylVjg=v2s=#QXQ z(9@vwOD#Wvo&)_Ev?u5Idor>JO@d27uBp>jZ+vfilp`K!ZS;Iu_xhNBrak{z(b^qUOO>G=1F!CVkrU z$kWJf`a!3|D{J6N?A8tH58Rz6At)Gv$bs~QcXD7TC^;|;lpGiiN)C(wB?m@=k^{Se zk^`ea$$`$8pya?fP;y{A zC^@h%C^@hnC^_%~P;y`bC^@h{C^_&#P;%f!pya>-pya@dLCJvwLCJxafHKvG`~U}% z7hDbu*~%SQXH&4jJ##o?Iy}ZbxkD7J4Aly-Ko|~ZlxyYdWO;~u4!2_qW$H@*P!b`*MdF(O8NC5DCzSM=qS)8Q2J@9 zhe1CAeFU@`bOWdZbR+1cpqoJN0(}%T0`xJ^cR@FUwtzkk`Y7lVpybadLC=D20i`^D z3bY&O)1YL}GoYl$R?t46&w`Sk&w-LZp9c*A-3Chby#TrwbUP^7{~{>)a|dW8=uXhh zpu0fH|1W`3{oSCH?=ORn2BjZ~Is&>EbP8xQD2>NgK(~PI1EqNEm-K+72Z^fJ@J!}k zRvi2UB{l!J&yLI5v#pMUd})3y4i#5EuFde(d}dGC5(4f*7q<{x`jXxQ;PCk$l!itk zy4f>As6f|7sFEaA7$oUnNr%Ytp%M?1^ioNaB^@s52uVjuI!e+MNiUQ1a!FGqwMjZ! z(lklaCC!j@jHF{FwM&{Q={QNpOPVF=1WB_c&5<-$(uqV<>$k*D!UfUEl3pR{6iKg= z^lC|qB%L8?v7|FW;nzG6qWO{*NIDg?EBIG}QYufA{A)ma02hK%T&BzN5?MY=(%F)h zN?Jx#jdSPA*~fV5(2xHFZbs@f<5h|M=R_i`=4JT3Jy7wJ8Ly#=$4_Rc$H8&`P6nmV zA>xFi8|_Jrx(ysE+07GciJ6z~FyTl&bJ$pAe&V?>T$rl5%zCo+8!#NLK5Sa%RWY(`W+J{rU}^;0X#mOiSD zg)+VXq|_6)*u~A~+->o>a-sfklTh6##{}m$mJ1Wq>%paEoo@X}jjJGMFaOPshv71p zqaH`G`V2VyBYo{zvHAcw)M^vy+qlHEhn%*H`l3KzFRaCZ@Ro{M`m=ekY*d;{7x+>n|c^y0!;)xwor8(+?o;xK-8 zRPD`K+XM@9CFO$ob1)#;?)efY$H zzr1uJpTZhnw*TlYUcc9dMFRKpg;YC%p=%xeOk`y~_=LhF_jkXLI4W zTY`W2&q?xWkA6~$I9ZNu@y9`hKX6N|`NIk)NPk4|ZiF-76}$LV+sirEKP`S$i%>=e z-+&=Tze~FuSTi_+jQ21&&K*pee`qt6OTs~qaEh(jA$2|sblZMV?Ex%PAe4*LQUJfw z$cMyt522%DGV-6H3Pt`!v~oFO7kr>*fYT{QRH2{t9dS~fg0hv()icPZWu#BD^Af}q z6YIbjq;-F=#B>`ixGH{HOAT{z&4T+Ve(6s=_n=nydpHRaZXoX0;5upWgV8`D-*;6z zB&tmyZnKNKRd9od`-F>opWwbt-LG|V>%d*JhW=iJy`f8r)oQS>Y_2l39_4>HVvW7A zOF|rYjVUo8lkEM^+8tlv#UHlVG;Kc`43G^@Pit+V--Sl~AN%n7-+*ZKUpb54nA>N6 z<(td#J`NJu{`OzhynV#ay{N-uRcQY?wXaEe7VQkx7uai4K0_HqIKHY1us5XK0lu07 zuc@W2t*z4zb*Tr#_|yJbbPNpYRfmbgfKL}v)L1mD>ILN%bK%WZVUwW$F|Z-4_2@L` z6%gRe!+)@Q`FAw;)HT~3Rrq}n73+SZce*Qb-^fRKz?T&fzEm@A4 z@oE;XPGvgq3z=2%XA#2${6yEakkT+x&0CL$ha-2{>IY69H;CE7KZh$G&QS%veJa&FB?YU7d%_eqz2-b#U7-x zAMYozBw$>_fEM+0z@3=;_=~i7%=LrXgmH~`WueOJiHm%FcZJ3imRxshAKF+ z_CSL0lbWx!fznwGrNPc>#9K`vZezq5=$YmC0Smi2@}bsNeg3rLU%hj~dswkWI0H>j z-zWT=psKh!-@nH=*VDfTGhg}MoU!uzpq1~F2cHpDl!lRKQsb;aD<2}}eZ+)fCJMdd zU{W)DuMUNl4I^!sA+JX<90b2-H_mH0tIh?^EPfyUrbagaoylOSRiV%@mrLUOq1@G( zj`@l@LI}W?D3Qt`Xk4SEmG4jgF6FR7$I^=VD9_N^}S zGnAI#57ip_4ji<^VC|h^Oz(2UQZU7um61KRz-~>mWu;li*fO&w;4nuCHIYr3t#X1y{aFXucaH8jloE>+p@=Ic=AXkYi4%tq=I~FKGe_5%FLI- zVFqvRDTn^pY8%lLCS?_5Lg6;-MMDQB4Z+_J#orK3G-!WXbzm|60C3rY5hHYeOItAb zpKSH~1GxN;z*^HYpjf7j6ic@*tggz%A5q1h{ieTX3(eDV^71m$3Pwin*b;}*g7dfX^3(D%a|^hODF^y{*VAE(isn^&_BOAY?Cd+Q`n>+yYv0B|5C6*g9Vv*kbH`6u zFgYVHU$bN&h8k%zh&vkwwNsyGr!{-h1a7<5Vz6k@PW_xo1xV-f8i+31sh^dTHr`s0 zIYFeoCciIt59#A!vPdbUircEc$x4@=|C5~avr|M(XvO{X59E0Uk2Lvb_WWIzo-aqH zLR-iDP4@j`Ip-PTVLZ)Te1bTCh{$9>mW`fTkdbfA&MB~FOq^uPvSLz(GdLHH(dJv4 zfNk07)(JW3nPV~$+A*1V`2|)fX0k17lAIm+==-Pbbn5?IyZnr_9P}?cJg=cwJw3D7 zyFFqwLA*6LCo{VsBTu&;KsT@Q&u^ERot`m8EG~cBE+0P6$WC+nu5CYKY*|=$z|F>A zmdg9PdRSPqGSl1(E#6|!Eljg#q>YCJ9>0Q|9P5~jE3BCX858m~C3W`6b@d;ITGRJ$ z+qH>UN9{Tabw};mgqmkmNA*PtpC3T?=D;04@AjSFUY`K}wEwn=&`~?-pYuD`DgLk8 z>lFXT?b|4>wc~rSf1E{bKmSd;Hd)kBy8?S=o@>51Z-Vl!r$@X0p}+RBuOt2bN%sAl z_PQYI#_i#17jD|8$sq|Em2z)mz`ccfCD!{{KTB>gUV!oQ(YJ3ks}bGbd+Y z+k_R6->7)ZEB~+`uX*IXeaHFaz1{zoSO2@5_T%)=cXx@}K5g2YPss^FQ08 zlXJd3TK>51{VulBT`8s;tGLP;&zI+mc`jK;+tLZTSK@Zs7hI7;?eigkE`{2sN9 zg!bCo^D?*wTmlDf8Kj&Pq1z3(_YFEb#^g-O(-h&?ZYiXfry}j>F@}bbG=yKf+jHnC zfRD2F_3$PqCq11^^c0pcIV0QcUe|s|XIH@$8QBF>HO(Y)>(-u^+to{JDZ(wn#U+!E z|Ajnv-f$J%655N|-}#$j=a#_3_s{(8WfE+szpR`qcxvO0bTqcl{P|6L{-$~~9{#SL z9nXHw6WC6_yk1*@xP=j3<2SwMJ;R~&rsbOwmp_84i35DPUbxEsW{S~h z>TSRSW^cz|t*w7vlIUYG8Z5@H7Mo@1o>@2k_Q^|ICN<5t>&=_}yPEF*^W%%(O!#o> z>E%~Np6#~IKH{Ur{WcsZnYQtdKUs*f`CPYc_D5G1M6Vxv^tL~O-`#P3Z-4E2`jZpS z*qcV~J$B9Nqr+@AsP}NXd9=Z@YQgi*%+9O|cxCjbU*{!Qmk&AqW!JTVf35oDh1@Hj z+?w;rSCZ8aKBce#*SrP(ZZzmTlvPh4LyXTa?zdcG2Acsgv&@)0wZ&HAI^>$TUP z7?t-?wd2yeBHnFz)N(ew+wv2A)>eef+B>6X<>mo<<3=Bu@&mmygroIHYwIsK=e^R} z>icSI>o!nhck{?(l+n}d1It@m>09_euWD^Q0Q&Bit*y&I>%MAjT@U)@iPqL|sFbd@ zwvGa&_jc$oUYBPuE(tbv59q3_0Y4tRSe&Jhmq;&OvEVT*YFv>2Vx`7#dCbTQ2gmmT zm)A)L%|$;?5@RfDF`70o`aq2ik~0%$3(6;vD++3TR&`lzX*6fC#9K{flhKbUWBd(S zC|Zp(0eYXf8W*Ek@NK4a7Imw6G_y8ZMze&~U2H6Im5+@j*LEGtnuE;MXqyb4jU}MY zXcmPwqnTp!M|0};6P!n2_f+b48cWoAzSU&<1HIa*-YA^NOuXdT+FC{wGHx|NRwMPh z+5*|DsNY&2^Hd{Cu<80iW%pr~snW8-&7&(4Nyl3h92^?{ybV6r21nuZWqtj@ZE#u} zd`%lnfB#zFzM&1KPqp>s{Li<65hU1#7Fix3ae`G`;I%7$44}8#aNsj*aWq*u?Jl7f ze|*x-4@H(!PSK&2TLi?rW8&hMzgid4)f8DksYl0g*|Bt!VY4h3Pc;pOi={w{DIHOQ z7|fEYk68H?J_q8*R%xG>{}LML4LCZMNC6r@RTgM^Crf>OMRiwynC!UzN9naT9GC?- z*7P_fv5zeOtxdUT_5bhxQ8JEgHJoe}oLQ1Cl5~}%cT4)Hq}wGuB8 z((RHSlJtE^Pe^)3QXiT~aYRbmPtswMj*)b-q_ZSlBx#Mk0=&hU4#%A`d(?9QlTmpKRZOO? zPh%c5S-O@C1yQZ0Ujz7g5$F6s;{WSl-R6#?a+YR$ShEIbD9= z4VU%&@+!PMYY=-NBj<01)#k_f<+THFxs5J;lpaQI&vDpe zISC~#qi>?#ezD@eiB)u2iQ1M00jOtbMmJqXeM;Qt(M^{uCtWt86QB3EzSb_l2T8N8 zHC=nq53DM`!5>|F(WMEkeW}_y06zo-E12alzRcg%dM!Bq{h7fK++_*Hb^`x*VP9dYO;=$-b3ymcP^SZK{d+v68!^t<{6a@GhOjKL;1K|oZi}EvM zfTgS+1-^k=knkU&mWC|K6C()yEV@#5>rk-4vX11>`U>)Wl*y13K;E<5hRFC^X94@p zK)Xe_;MR48N%#uHk$||Tz*4%x5drZ5Dau7k6~P@(hF;Gz(wR2Q=Hx4OCny@ z#Gr>uk!AriNs5m`O#;7w1&M*vj2UL^_L|^^z(Rfv$!rzD=@Kd|7m*Dtk}#MpN1g@F zFp7?&STu|eES4~qS>g7;nG#yrXBPmL$hHaSd=@ke+|U!Q41C165uFDW7A`RaZsgb0 z`5dHX;3f%uP+DvVeAEcbVORir0$YH<$0TGZEiwddHd4S%alr;(st6Xw(J>>Fn0=c3| zo~wzKP2TTnGR33GRH=%R*B!lFDf(2D$H}IvXn?^X%0~!0yIPWogodLhDn5#Nx6owayEj#N)j55gk+=mrLPs2X-@L0&k$UWC%1(c zR#X{SJ~=0J32~>9(V+}sWyNGn=!?|N98$#KOXBIPAUt5*4gSt>gQ12ErY}S(S6+yE zLxlncWj$)LVFFo{c+_LbQaNP|l8((K8z>7b6EWD?JQ5pW{6G93N%bQ6)z7#>T9AAn z-#q0|-Zac4;sPx3V5}bX8qhw`kJW#HYkBU^~4cHQV z)dr62$}W;}wLnvpOL_xM6R1?V6tNASL*|&`mWa8?gh^kHrfya9D-G6=xUpao987sthlx47H)XOZE>w9BQ4H@xB1~~% zB6Z&c;IV8qL|OXsKKk`R8i_s{@_oCdE>Y;TQW~EM<{1e6KMh5CQ;l%k-h!u6hh!cfjuC+1;gTqp>Hv?x9<}OoQ zAC`qExL};2dm5QH$9E!3>QM~)a-(iC-iq5;ZeLW5hkY(6>;u%>2dK9Xu#J5h$8DdB z>?RR)#?u zwc1$CD<`x4h*DIegrisvwY|+a5-DSfOJy0DZ=&un+BmcuV(Tz%MlSTd555beuc=Py zcDeBgqAC(4)x(k9G$<1#)x(h})jJZfjUzRV+mSAg%aJaQ%aJaQ%aIz#?MQI+j| zwi}aFH=DE~f#p%2jg~NxebNsw-8h(rP+T$#!{p!1E4hpOEXqbFX`PPJ_~OuX}p#bx+T|exBzfN9Q?> zyMo4_LhXnYyx&@-Hu9_%I5Y0d|N^! zSt{1;$R)n5@J_EXB-|SR$W>wY!+*-`0eBh~_W%JdOH0|c@v1K|GXf$w9wH^n6=S7Tokopd6XP@?h>`i>qnM+^?-1ww-b z8l^;IfsG#e9j}?HERO)XRFv734-x(7WP!4j*Rcvkj}ZOkDocj}jTB{5l+*A<^eBO@ zRwiNiMW+ZfT^T?iKZ=o#tAadVt%wq{mT8ltO2 zE_D7RCf8-$WaeUxv90N(mI>X_q>`zYC@)f%Byi;uDa*%*DNfU1u&ni65H zFyWMsatJd|^j*@ExSON4cS}!pRkE-{D&LaZzuCY` z*Z3-TVSZ9W_Em1cPA&R-0oVH~H&GORpbeopuE|&FNu?)+`I~)}7;^j1Y$BCz z^;Iq-C4UL$aEGsQO)}tb!h~jDr5qd2=-+8IFvsolRnCzo{}3kZ_f;C;hv+{==>hah zX?9MO9`t2S45(;>@rxX4e8iWf)41wloM0gQx-Uzh@~(V+Kx+B2JQPIx@%^Sb?pO?M@YQRkEt|;MH*wctD5|nol>%!Q4Gn=e(X(} z45N+0{;htjg>a0-&-yVZ;qDSY=f^%E94qnje(WIO9ujYZeuR5U`~u1`_M>}Ayxoue zKnY}(_(ebVA`OCz_yUBf$&Xdj6o0WS-|5GOl79wDyvvVmqF`Pk>%Zj3c2J%q%JSWQ zY!Z$9K@z|0$AT%l2TQ!ikBy`F4UztB_G8Crq8uvyb;OU2z#cj}*_g}o|EM2(jIw38 zEI;nYvMIMl8AaN*__3ul9bP8!mwxO*itlKNRX?_ZCbbNiAK&@07cfIdk1-zMQ{pK< zHkIatOd0>Pe(YDuw{a5J__JGRSd5pr-k)XBM3*J;8h=(rvV5~Y8%6pQNW9gb71Q{>LgF3%te*TcMdD_E_8Kj+E~H8ztTxz{Xz!e3R^NYXGYz`89Gp z?+9Q&U`2_pmGRmgz_!u&S|#Jz9Kd#j0pBd~fdF=f##g=6_ecO+L;iC}d^CWaBY&@! z{T~lt>6Bl$$^2^xVCKt#?=U_Ew_&vnV7+L(+{w31=D1S`XMu@0PeekR79y;9jFx`ql)pV4525m-eg+WP7OodWqKuG9$(R0jW<@AX`rh+Ji>g zIho@&2QnY>*F&;=YasiP;<-`Uvm=m=p!jW)_BIEybA5mx)%+32LTTdOEd6yfko`*e z__!R8?*_6p)ZY^lzZb}s(s+H+DCY9_1Ch`fZ4 zN3{4cHZ27BRoQd`yccW5dXQ?@0YmF?JRC=RIlf&x|EdKD{sT zFN|%X@$rGgXBcY?20kwFuZ(3={5~>X!sn;6jLoI|{8-{Y84Dx(KQYGh@|qyl9rt?C z|B<*ZC@8aNfg$=+neX*MY!=yjLgLjy>_XaQIwf8c#KzNj_(tNjLF}$X;BV#nwl0W` z_5(ht7WnF%!*@KSAvE2;iTL7xDOP4PyVH@%W3Bw>6m6lRtlz{@E7Ho+5w$ zW}J{i?RNw-Cyj4E)BQ*@Z1jSemHg)~@$q1m#n)GfPX)6#C?A+fte5p6Y%a}@!6q?Z zuL)tfl&>KYuMJ^qX}t-PcwGoPLE|A@;`JdcgZ40y5;uh~mINGSq8n{<+{O?#gZvX? z8p-Y39KzBlzkA5?Eg>wB^yy`qfi%X>C4`Nl^{bCbY;1OfusNhpoQWRSz`hWcN&bqL z_(%x5gf>lmrM#md>`q$W`kBOf{cZ?rCVdl49QskdUMBt362fjE|6VS!8p77otxT%Kr%(<xS3d@7W6 zBY#em_-rVQ9n*T^M_d){n^&H-)hmNuMhu z-WsW+6pN6p$G(TNq5;qntVJwvNDKw?>d{!Zk=C|o4v0XkL#-@=!XUTl}DU5wf`;}7D zRXo3c4r3@_LU#-ty13BaP|@w(&#m^{SL^d@xRV=HJ9HU z&Z=lWykGj`NH{x4`Ltg1PdHO4eh-mSnn*U2#_Mj0*G00y6rcSPH$}2i8s7&^ckud~BiU1QXLiJN zkmIe9Y%|TD|7W_)m*T%8l9khX_J+jGk!&f|e@lx;BnzedJ}&h;8p#fg1pd%e%Kd*l zlC7fgV=zC+<+q?c?RWglBEQv0hEJ7oe`OZ=b1ISzr+9|S^0Sfb8QSkfN?g;8HG~64 zNnGE}&^;ed)R+4{YQ@v5%0-5#m}|emrBa4zBc_6~kUm!l!6q!Gg4O`~TxB^@UPA#2 z{Rn$Z4qg-D>=0M$n+_S> zN=aN}y-VD!6R|YAw7bb0x$5GRoox3Z5E z7ds!pi(KjZ1%&vwVj_u(xhDbZi7e(O90N+bo|OMjJsdv7eB@UQY63>n>K z;{ktn{|`yrG3)`m2hb8v;+_Vpd*C>1@F*DNNkELY)ATV;0Wp!5K0_;)}TCsF1v?P+R)>}Z=h=TFd-#T*?{Ej9!|ILctWiFMm z$ZL2zyP^A7IP_-UFS)|x&>IslUWENO#p)e;lZX8hN&9PFlG)R(Y$0UaG0!FA&K>#~ z-{~PkA}M3-71D>X^nqlg!*>aU1YQqjZq#=3T>vZ^Lpy4h`Q1#i3x!MJ*4(I}W?ItN zFcS)gnI{P+vp<)AhHQY>_EPU|J`a%7u5oWpvK}gs$ zm?EM^%FZ5D{sN?v9Y&szZ;ZmunNWYh#Sv4RNlm#7u!=P7pz#&L2NJDFwsYO^{_P7D$EK~ zreQUT?Je{UR|Z&s`iQ)WQntZYv2nCfLw*>#Psv4S8-4ep^Bzme7a6QETa3O)FJ?nt z#5~3CIN(P17b*bGDL zj{uRJ28Cqy2$Uj~S}4|ojo^v}EBmmL_XrXwO38#6N6BJcH$gh7Gl;L!S*KaE2$Foi?Uc{=o*r$f(qI#h$wp?|p?y0|ACYB0UPXO#qY z2tJGnH0|XIB{FM&z#xliwWho52mB`RG-}uxb6|Sj@tTCot}ZO;Mx$F1`kF>t_!R{Z|p;GBJT|xn8OWc ztEu9Bf%L`}O}YorLFD~h7g|YU|ATQH`GD_@Xc^c)2?ICs!N3zF#)e@P`B2~xDaMRM zj%?!kkr>|~z=tIaX6vE>9|=t5m7~~Oq{0TNf|XU0-Ww&v!2Oy0@u2T%>hmwmv-V-tL`r9E`vbxIEq` z$hZm7WPM>)pJ4uIgBFHgkf(hj_>&T{vMCfWQo{d7+9NDj;rQ6Ko}5zJC)^o!(l&us;%yQ#+u zdH>RnYXwGnce#_Y%JhGMhD^^fzlUyL`+C!Vuod8*=3fe4Yx=*Ux_;&}P{%u*{)cdo zKGb9@@D`{4Ny0?}Z!`U5Odlrjou>aK!ovmLVfw#hbKuD!v?|U-O#k;7Dbh#Em8adN z{{YG_z1WP+BK>*OX#WWt?BRspP%A0vPckL;e(Kz*vx8?<8NpLJIkvqV16KNORvJ58 zoP93@;%t_Mde)6`sRxFLWql}Yb68W@BqOFN+O2(A8ZfD0^g=VHKmN8a=c#C%O~%&K zVWRyCb0AsH!m%0C0UfeK-s`b=EG!9)V|RRqcN?3=U@+*opMy`+e;|z=-{Y*+^i>|d zuNbz0)bRt3+f9>D0UbY93@tDucKn25us9R>h_kuij-l#~UycKJ%b|rv>ZIp!)M8e- zkMv|Rc&Gk)Feu^@+TKOG7OQlwGd~G@% zNldNgP|`FL1(jOOh?ydBHp9U~uZSF|$5mX1$op&^?J!sazoDJyFJiR>|{s!h;ub>Qj z9+DN9qjh$(n_wUe%+Y->-|mD`56sbhuaDgc{lbC5HpVrVbCA8hC!w2^&Y^Z0%E{4E zY(J!ETIV?XY2^z?Zma!7doKnjhjXgE8WW!bO}Bgd3EiP|&a!V)UTdh*_B9}lt%~Wz zz7s8>J>%@sp;=pkoZMq#TKn3sHaqOcTr8N@7|~ao=)r8Zj&|x*=50u=e-ftP)T`CK z2u{$4F=(V-BVY{qHmj2me?P3LQm=FQx+5p4*UK|gG5!v4EA<8eV~s#Fj2?FC6>8<4 z{ualeE6pOPPG1P)shc!@7rals)?5ZR(o^7Q>W#`JxX9~6fh5ekcIq~hgJ}9IHx1fslHa z@&mj)+i(4MG*IdRb=R%Ax_6~lJUpKP3$HQ7**5@)v%g9+j81lH1M6d|EkhxtCg|fE z(5$Hq)siRCy0(@IWRH;gk{I83%XZzdWR!umWkZ1EIZSeUq#`#d=!#{OLwOo)e2P zV#pZCr)a{hIGh?dpB>M>1c<-|ap((-c|GREz|tZG+4c))k-&?Z`9qFmHm6#qCum4BdE3m2x6j+JavHLXY*AUMR2XYm{U&H~qhq{mtqCd!K zB_t>Rc4Dm&c-s0020p!3rn-)e0|Tw$(53YjI(q$Tz8I`-VW7+s%PNh)5Q`7*<0U4e zV@hDSwZWA-Gg@k7l+-9k%HI$pdSJAY(++Tm>Nqqo&ML-as2w;fTGfOoRTEuR*Py)v zlZDvWzXju7V2V3a4N(s4xzly~31kCWChRzzO65dRPTrEL%WAiMu zvN1^MoGx~~`30kUV2LUyG^+n|&RFLQ*idEa0=IcOrUjN;wXTvnSIN0-#+8wfFtP_$ zse5Ov}XNSeQG0t{a%t<%9jj^HLSm*Ic3IlyZK%=Ev=7_JpBk+6)w_10ysGdH@< ze8l-~i|Y(~!B(-@ShvVF0h{@srOun2$o*e4*EdUY)BO3Yv|9x1!0>OkIwDs({5u_s ziDli5z+FxYC6?txpoS{oyIu3eY`uGgwV96aUI9~dI<`wXS||250{2Pc(wIdD$WRHs zUr5MAIPjnvBK(b5U=K-w8OrvbU7c*i%=lZj*i+M&iI)RsHFo zvII7(8czQ=6a;QnWt+Z@b-zPZP5Lf2?oQR7Mr#hpfn92_ZrchM9uFi2UbG&7tNvFw zOueLzIXYj2ZV}jHJp&S+YHh2oExIt?MviBEq^gxs7KWN?0IjJr@Uq2Yb$8<0z(I>o zTKNxg>G8SKV*dA#k-!%M#`uf5$Uo$?ng2?r$!_$#;3s_5F+Zlf)xLe|pCV-VpQoYkln)$J7gO{10_OYAr@MzOy?P1zd&L3#!P57ThWbxub^P1X zH=>ID7t@U+0#5V?arq(equ8D5f0dg5qaK^E+RyUe&Jpn^0W1AAtpWZl0WS70A@vsl zm-??_)BUPIbzy8jxqnmH;c1HhVNR95D^q;Z-+wh1RDTGJPt3&GdIiIGop5QQJ+8_W z_a9_*YW5W(hs}G21+rU+cVJe z8F?!d)XeUWuAPyuIk8}F3#gZd((DH@nP;4#p$sG8B^&1uoiiV#xs~X0or9WW*!;Fb z=WGqx_PvCk181UDth(`AZNR90t=!cpaT= zXxEHZ0}$FT7)`o%aZ=PBMb@>elcI;wT3s{g30q_{im7XshEnYN(5t%!HI!!0#qy$S zwuUn7DzsMD?i#{L3u(C;%D0m-dUOr3V7ZjZ+;3%8S#t_8i0m-&ONuqp#_b{WsxMIrBE_Ol5Dc>HiIVJM%8FcgXa=ZUMeq_z#=@H&O7J+pT5F-Y=#<4dYnm z4zX8f`R~DCl=-m5s4&=A{=JxtG9P#RxBTD3P$p(Y?Z4&!8MT`ElvS_&xBQp20Q{WA z4iEn=|G*T$&pZBD{yGc|nJ+m0SpGb=;)~YB+8@jRF&p_ci|-vHe?EV+mVn=I?ECy9 z7~h+YeV?DRSLQp`dTrn5uVK6&S}bPR_xayL6K8%T@^vx(k5E^c{}TDNG5%*T*k*og zU8UqV#Q6P;?~wHx)Znf{jK7fd!xlfSz&DBf77OV|>w3k%H^x7j@nYat^!+jZarFOZ zp&y9xXVc%`t(z48p%{NT+xrhE{uuv3EaWr)6#6eQ{wn4(&Zq6y#rkjP3^?A$4u|@P z^=~GN*XETX7iC1{O-`qMk4a%DOI4mUDZJNG;pqgHauG}VxXUt7ML~XZe zM%Ro4e(hm@N?J?wV|z75lazKm#NcRug#MF~&JSpy+uFS`Qm3d-M!-GO{*0_0c-Iqe z&v0s^jhGuS=%jQ~hgF!7Qnqn;NUgwpWa5(>m51eu`I{P#d@%0#6VqXmo= zBT0?kZHH+jB&AG1yv+UuYkIHjq2iZ@TkC2V z>Ri3B(n$GEJtx_j{(Y|;N>`yCR-xhqJmrY>G?)`htCkokKT3Lx#EQj6%75e$0Gn(- zTL;NjR$FDH{2~M+k=Mjhe)aPGZZ#U}@ckiv3*Ud8AdOCqQ~quB2481o_9x|UdOys0 zDZeRq(hstN{!})NMvZ%8a!>inS_29HD=5&EuchG(e`0Y275`b)$Q^f8q5noc+#BlFOxC+4nhDTOghhoR|~H3DUD zjPne@)@g_s>BmNxrm^u4CJOEhLjKYou3kjs5&oTk_=s;!`#$ zS^j@QXBw}IWF_8@65+VbPZeb~9tV#(Zm((%sEN*aL)*eyFRQ5@T=9{ZROru2re7&> zusqSqO8I#ty4CwomDQSuR9J?YBkOdn-nRc10Mv##Lj&8dA zf5L#D)j`u*+jX?n@xMxET3ThbkrmKDhW$Iub}iBDbq4b7a~NBe zhQf9p<$^kuL+vBz1XrDIVG=K#fTxr^A=s#I~HMq*O8=wxe`f0GHF^4JXQ48)2G9pCVC^lW4wUtYX+Ms_%NnG?$4&bYf`uB~ZQ9?U z(y|6?@FmlJ6^pm5AsWQw{}N*zs=@uHy_g9s(%=Ep&SjQ{@i|+(7-!l$f&hmzO}_Tu znD*`jfFsxvzV_dN%JMu@gWsF>hRy&-@&+ef`hqGfRI*0#-YVYtGVL0=QOuDCOHRwa z9wTPfbl)g~Yc1PHH_DR~xWlq5djg!Hlk>b~&%xl5RiR(6d&#l~v2JJct1Vd0SoR&5 zzq97*#Nxg4@$`9~_6iTy$Jy^8sc|+tTRi&#ji__97$cq*+DG6RcBHKNT7XZN#o2t) zD|HjR!y@Pm99uClccIl=H^2awT-SIKP`D6`zj`R+BmDZ*z4ad)ELJwYKyj?Z-{vMC z*pCcUM(h7_d|IWHwEhYqC$DaNw_@LczZvTNGd|Pr6}c7#n7pR(>xyk3{x(;yO>3K3 z#Yja=a(z?22@&jt3NwP^v6eQ2CD3jKzd#%Kf`4U$DYzPI+SuTg5QsAxjm8u_G`V$B zKI9TBOQ+*WICYE>#E8EhWzE;iRnjax=m(kPK+-s%;_S)z+uY=v65304KBILp781#M zNsAQAGW^wdS*~%})NK>~F~hA3F#e3e~A z!6o{ONCqCbQGe4wXs88gE}okCc9~*MG_q@9IG!cNS8NnA9QIJ-*K$sL6}=Aag5 zQ@UGBaQww!4%VZ=%;4831|#?=y73Al=5}}$oHQTQBs)9p0qmPGqU?4QY*t}pr*qsj zV%|lCXSd%3di*}fzlsB88(%{r{DA|v#TU@JbxjIu8D4p`5#A>Ca8s z_HcBJZb7o~9*$*NY3PG7AEFw%WmDH_Dc!mcrjqZFyKXtjiqWuh{D5-lCFTr#Ara?3 z-FmbG@wCR>+bqOhO<~>J{sNb1v=Y6udm0^N+r%tv0ydHqIUN zwSv0Y^WbJ~p>EY42=-6tQ|0kH7*x6Vj2N2D9lRQt(|Y#E>opFIhR?7YJ@R=->z^Q~ z9=)DYjoi*Y4*~T!L+cD_ZAD;I+S0J{z_{O|cN{RMoz5K7uIVxGzeSIz^PEALNob@|XEV1L~R_Je8c zI9j}61oMD=(+Cd6?kx(BFT+_=K_Q-$rmKO5q67+5jJEH-c-h`wyA|MgEf! zT!E$0&qi<^y2UR>upN-U8o{s8*uNRUvB>K0M(|&lK>jd-MR4N3Mz9mC|7iq&#qKYN zW3a3~XOfd=tBMW^e+;FENAHV|S?;JOa+k%;06n+2v;NpYUwG8JvsEZ!m*H5!gmE$TiLt zX7E;Yv@6ZvJLr9zP+gc5uQG#oz}>6O;9qF|Ys}!QXoqXf-~;e;vl$$Ta=Ok8t^~{V zW^h+4!??i=UIQm?G=m+{DqGB8U(+zQn!#L*{M*c6I_l*nGZ?}=e6tx0pp9-p49L>0 zX0QuX-)07bXsX-IU_Gkt4l}qHTJAK1rz5*}nZd76op+?shZy zB1+>vGx!8L(Eacl&hG$(-2=!Ob`P4t53zg54DvzFhs|J<#)k2T88ngkN6laoc8|ep z>>f9R|3+X>n8BM+*BG=;YaDuPEINrAtV54GgEfcN&=a4)3pKd+LH0sVvNM7IZ}sGF zfyhF;dB~AK@jv76$JtaF^E6@!J$o(>o1ig5&vVQ=ZD`L9Z%_fp`JNp)dQm|gO!W-t zxh3Bol>?{~*?8F+=ZMtt7{;!i8C!99TI0Nq_9W=waF!R)1126BMwatBIWtU5R~X34 z_>}w;^RmW~pEmP?j?EwnEH7L0Ynyr9#HO8&`poN2Bm7Kl%$1nR^Ky~^p0+l>^B0b; z{4S0zdXnE&4~6+^V9n3e1M5WFL>}^GdOq9!6N}vZptd^IehKB0pG}2U`&o7@8alt5 zrd8SvTLS8SM9~)8ccV@7b4cU0a3tkh5aMjc6=(md{_ba*R!~Q7i9(>?gV!AqvO0@y_L;FGb*$*HH7|?`e+n9WlrEG)I$cnS*@aMi@GU&ZHQ5uvfq+tzTmqCVNalzxL4l zXe=MgdLD2;3^~S4FjuewW4iftES>xUgz)zgLh?TW{OSRWaJ2^tulE95JV0oN0NK#+ z6-*$5)O#^@H>QgU|{!jfIZnACZKQi z;6)5`=*8#@kUekUeDry9EcSN?)dTMbi@BLy@Iz1s-bLT9qwENn98|N|Fn7%c?^S>b+n~D4c4noLJy25^ zkLlJ-H|rFqMrn}eQxIlJEd6?Nuc$H)6h-69;kS7?sz5hB@7N%Ecnw_`|#uJq96 zKnk5I-naK+Er7|*Ltf{QXE=t#uL}7#cCf*-P+QzSk^Mzeb%c`{;X+2ZRw%d0{zvh1 zit=--V2|PF;N3!VbO)iExtXdY_Z?p{w9rF46H+?Db?}p0c%_gTLg*n6?~*r;G{8ga11S}5Nt8kZjcxO4hZn$}CJiHui7ec|{0hvmXF;Vt+(X%Cn zc{NXW!$So7Gz+5NRQ%aoraj+F`p|8_=<(}gJ$~(8G}dWHW=4|)oyzuNPc+M% zXqIDe%stx6-A8l6y~ZXcvT_s`O6NDa#~Y@hdoZqZE7^;mAJT>rm#sjiayx7^(i?P( zYaNGl;7!EPGs3wPoVRLDYX#c`2}KYw8~0X%Rj2n=;k^aCPYEyjPv|YdKLz|-t_~xV zkQ?#hh{i)-wKAP&gxU$2rrRO}cE{tH&J!Z<7bI1o=m=qSgc^p6SW;C(w`q?wo!?7m#EmEI za*copPRNX>W@(Xt5_u9LL-~|d!F`Re(#cn8`v}OvWit3V1N#p!Rq#L)Fm*9`W=5vG zHNq74y7D?zTk}w(5$-00733Ntz|8d!+T#+3#FCPM>TTK2tk5MjK$X-mhrCzF1*uSG4m7zco!bFE^UWA;>>sI+g#q8j z%aE&aW_Kg>v{2a>dkM9{A)g+ijL=I$W@j9&$(+>l9BbbGVGK5UYE!wg|5#itQm%%Y z3VI)sberP|=dp2|$3nPXsV=8ek&yE994ubf}!AJCazQ^u5m{su3B_9dIOWdY-P+WGD4RL zx+BmFG+H?)e%cF-&{hx26;UkR8H#3WpxRIeg)g z!G`mV(D%Yr3Z}m_6A3z{itF$aBgBt7a9aVcj5#`OoPfrexx&MB zb~sn^gnD8VtW456*lB^B4xDn0xYkDa5fT3j;-QxXU?hns23Cp=8S9>pg~)v5L=jc{ z;1WUTCy#uwhh;P-4N8mJd4mub`Y7Cw`i4?=wBl{uqG*6!5nGK%sQXw(Pc@GG{ zBqJ%uP4LqHkzix+B(8z6-7EX8utn!bD_fyOf@aQFgXHGiTE4=_yGp3cnTG;({SITu z&YQ3Oo}_fGX9s-Cqwl?FeI{#-?ev33>z~m)maY~f)bwoSwL!mH!;E8HX~@eFs@E@8 z8FKqiAsv$a6!CGk^6`6>e}~rK9BpKU@XS>_qXN{^Mrcc9|Gw~?r+A(NPpC*p^l`Vx z$8jomGaTjrBX@&02MqMKy@y?FjFrTtA6y+eCMcoM60 z^dC#~ZwS6)nbtK^=$~s34?AQ;J_4lZ$o(R8jL7>4>3rG0AbP*kdM5~)8NEA7ZzS@X zV`!Ji6LFHqEnW6sLIvCGFQt7*XOIRvw4TBfU#%lIW7Ie~c&y-Wmwl;jlYTB##--}9=*3l>5W7lC!${M68VEddO`M|LIoplue9@% zy2fCK_O9^wYINisCGwvHUxf1`Zc~KbMSIvx(2ShF=oTG$j!?b6=@Dq~c|y8h_D_i3 z9$N3E9=%(l^hP4T>loT4@+_=_xt%5Z521pQPgL61tH>SNY~lH@craNazew<($bM3- z)={G9-$O^}K_M~vz92_O|4*SFBl=&3l!vt^x5psN6~Rm$eKSE*?+sCUBhhyk9q0c=UF7;5o1NZU8JMFR!9A#kQwz? zN7*p)nu^ddqCSkMZ-FjGy-n%j(~Y6=B0+s&kUc&*lTv8DN9(yB9v$_?9u2EJRBzN= zDsns8FE?sD=BBnMWdA!9v63FrQLh#>y*zM~4I}Snp&qRrD}*#3PC^#zsCOz|_b}>% z9(_GQK33F!dbE!7@aU*pVx7W`9xe7zy-{Zi&(VIlQMbk1&8Nh+Z@GZh)X~;X| z(crNFUR~j#>pSYGGvCCGaIJ)wqwfKS@pSb2J%saY+%ixK*d;F;C41kW>8eSWXcMaQTM z7HI(;2081zoS-T*J8+d{jM>8obrH@IczliK^kUB&m8u<`^NC;U>MxT?&BAvRtGOVfDY#!H>6U>QQ?m8pIXHF9N2 zt*If*D^oLErHQ&yd@z1<$saD)>KuzfbVh!1IwD zZoHWI4~>uaO?C1ZGCFHALp2!)-ooV+F7S`|-QG*(uCTQ01;wVYn|ELinOZfUIVlS!S&{AQ^hvkP{79(_#;EREO zMet0{t%7GQ{G{>mKI0Od5;lptI!2Gf4+*O(xNiht!F9vABUq1LaDNChQ#@2LkH=Lj zBXk<34sN_!Iz#Z0n+g097dIw)nWiGqp)^6yLL^stlw}H@&A(mnEQ?14&*pzscn*=n>ygNFX? z@!%uz0Jpl*v$X5<;E!n0&PIq2rgNhU9qV+!GAee_qap`ss2L)R%s^2zqkCDf)T68> zn&;?%&hx0dHky@>e5pQlf$%V;_iG;BHoQmB4Co)xqLYl!ZjTQ?MN=nJF)wqDp_;uO z4^me~MLx~(;46=^!f2iu;PFm({K^|Q=BFZ>^+HEoOi=SMpgPS%PkIQN0d0vEU59I5 zLS+lR7)`x|iq$n$s+lB=^x*4g#w#5U$~+!et5nb|-YY#Gq-nIe4vkw6*BBvw9FdzE z{-UYZQZc$&XuC)86j6+-`Ou?yNwnxTBlNRS8QQJU)SIAK?ux4NJ1sln!%NYucRD^a z5gw-ZU*ZGqarPH9)BE3O(H%x;icsl8MtxKnJfM6~H%pZdbA*)%9udv@7=2(TtQMX+ z3}@3_9wW3|@Ye#rRPY?mT6EWOalpP_%|Uz9$-* zn4{g|Ksr~nav-e`{5!CAvEcPoirKPOh#d285@Iz1FU-}-jzH)MSI7vj7d*{}HhX{r znn`@&hjh6y#|djxgm{oc^2SM#;p*nQT3DHkPMTHUWkW8Eo>~o8&m%Mqcazj2$+=O4 z7YT%kE=|`=Txf+u`C3@bwzUFqw%wwbPB7bU^Dw{ZYK%k;?amGBc@bH92t zG`f)SpTJ!6UfNOmHb61Utsz+t9Lrp&iwJR2F4aQuzM+?EO-5*ghg|27Yt}mC?H=-0 zhy0>Tep|>1Z{y)~Mdl6a(6@r->ggXYI{a@zt3>CV5eeqBi%t^xNDp%##e52pmxvG} zpQ450eRXc+7YLcYS7`_6`;~&G?-#r1@NI%tz8@5T4e^}jIsTH&>>Ua87wv|sYNw%( z-D)C4=Ms@_)CHXzC}=ttaM9tRf>zG0_1K%Ld5-Vgtsds96!R%0_7M?cVjtE*@xI61 z#J(Y9`u>XRWaw)_)AvtYboggME8p|_L~_;o;*%7`SP%1P#e53BPZuHjUa5uReTQA& zFA_3+zeqd4yl)jWec$4u!?y}r`Tm&zEQF~PdF$J^e|6Q%%_maaUw)-7HXk*-&)6;&>A6UAd{DA z2YA(EgP?~2eVdqCh6&^Fr82Pk>GaU~TrGs|=Q`g^ z$nJgTmah=eByUIl!O01SAqVsb_{ zPS1Gq#rxpqLmuYX%T6)i=S7GCchExdz5{N+?+BRz_Ys{8_#?rq6;K2p{$23O``+P5 ztzE8|PT>6n5A$=PQLV?Mg^xLu&k`Ye|A`ig_t_h?SzNdlvhwC}kAc=0lulUr|MD=8 zR?H`;e4GgK$=UEPUUR+r8){?IU2-yW6FtnkPtjaxxd?Gg+NUjWJiS`b9Fx9t(c$X_ zt#a{!$6f{+`-Hjp-NSs2Vm^5;Ld^&0@abHQwm|2y1Wo5Iana#^f>zGe3Bb&~pm~np z%eQ)%e^bn-;M@)oV%fArwP0w#%GfEJ(BD1ee22Ur)2iA+hlR}0Mk%tI3*rZAIzyY` zqQmM_lAx&2MhOo?+opMrAKH8m^V`~udB{l{CGuG= z`9UEwv@VLQLVHEf46VP54u2?U6D)&yI$SSk<=pcgdns3(q~1UEFrTTIPobp#6d^h{U0Yziwr3w=x}>ME9a&Q zz|1|Od5)hse)EnSnZHuZr{LTs5n@rqUn#A=-);5BgiPPl6j`HIzcnEUtM%~qo7r2ZwNqdbFV&075v~~o~4*i zAvCK<=YyeLq=j&E;tGv4!kvYzyqPTky?N$j-dyZq{^?Y`xz6KF^J`=*2)o`q;`N4~ zB;!VJMk(GCEZ|Nb7GYkk6(7HM<9TMaWa=qGD)>bn4ZBWe?rIP7kyA7mdP;;?Ck?K3 zy8yq1#*KB-&P9jc6|{0Lb-3nXE~aRn<9C5x9_9^-`2=+$xd@FFAv$-5>qTgepy}K$ z7ad+EXyx24kG)?`=G=!K=B&-C0#4dcq1X{Rd^$Hs38@~|M$mL_ii-}n7qoJ2x&X}F zRhsAcnXC6OzkI6BZ4n_l_p$3m=rKXlxnEp#_&Gr<=VH!`G;7XvC+Ys}JiI z4-sPbzfcRs`zB&eQd?-4hkTnu{${O1o+o66_LTOIgZ3IhGqg8dbabs#e8L6Wnxy~VTfuXigCl7h6L*8+PLoV=;cRA$6 zE_tkn{GmfW;Ra^_2wx*;mACx@FmHvL=lJ!??+S7w^ZAPT z6!K<|(n3tkW-S!&d&x;mI7`UNoB0CJz?&!Y<}wened8&1?T18&scNf)RH|MTG*i{n zMThyNHEznero|edbCsIs_^ImdVZQBDof{xROx5#R2=~3QT2RdEQtg=NeI-D+O6<# z9_D3=`4pO^*?1i=o!jJk5y})aox8_Hhx-UxIk!vzI(P77&fVZ)PQB&Sx@0%z;}^ zEf=A;M2JOJsDm5^x_yJ-mjcf( zsBz)D4Rw!*yxPg|igJqB9cq4MI} zxZW|~yg$m9b_;i|K|v-_dw`wJ4GZv+)p`uHx--&S z#yB_UHhRQ+c^LHb)i()MmG;L1u(Ycc>j_HxFAwwGTCZf(5jy5=u9PV{TWq;!U3ZM| zFu|*&JMZB#rAJ&Q7KMHgdKm(LN(9K$;;u;G&I7Xc7(B3icBE-S9v;L##t2Uos*3$u z0T}xN#p;A{jN6lsdYEt5dQT;G=XG1gzRPvT2q&JS-BhtV@6s}^?_H+o*qwJ`$&+-q zH+KEnkv$f-HAN|T@}hZglL#3YXN12K9+iRMx!Mb6;5;R8f((rCFyE=QpGpRt*KL`B z-L6wc_!?2CGT^*ROV59BnW8h$x+K!F&F?uz2FBs3LE+(?&_nZJC47w*G(rV46G~D(UIqgXdX8M*9nixzjEIM!Gs_);Q$T<%AC6~O%LmusrQ(W8c3z-dEp~cr^UtVN%Pt&@>OV<%5xi$D>)_ zs7JH-ttM`?afXKh%frtU!wnt{6Fm${fB0UZs*?Cd0G7lRiuD8~(V#*bCi5Px_f$%v zm58w<4r#G?-wwA~oY%$KEXG4lym(De#8k65?}M{hy1Pu#{myx>n>^#Acp~HXkl8u} z@+^twVXw06iAH#W@Tde`BLHK5NC})EL63NtztY-IB|&eA7!wr#uvC5ib=p&$!+XdX z4*9T~zt}mNk@*X2vMTEif>-%--b!cO=ebPL`MX*K$a7T`kA6Lkt8f3@NdBJk^29DP zmK*6Rg?PoYjj*W{o+|)T_>+=3K?;|8n6n;Hxj2;+UM6Bp;Rr2;VaHA3okC`grfagw z(TjptIda}%SMj?{(K+fhFB1O~Q9P2P(fCZ3hv$Ho$CD$RsyriXDo5sgt(Q4UeUxFJ zAV+OI%%c_aDNS(sBBsVaEvAw%LGUUG&MWOq!gVfFbQ1Q60C{#r@k9!x|AI)O4tjY! zNf>K{M+=)u!bSm@gtm{JBnkI>n9owor<8=m<0SBU_5%*R!kLlJo-g*e;$&BK%7ncM9&t#Mdo@S;9 zo-Mgbam84F_Ybce zFBUSL$2)2047^Wagz5!P=hFnwTx=3N&F6dgZ}8xYJ^cJ=12^{3nHtYeBR(!@_QZ9r z8r68JmhfrBmpv@oqgZf(5#@$YBYxmv`DYXh*L^%I`b;?ZQGzdA4kN_RIB=u=22VL* z)4u!p!oD7stSA=u^M%8Og_m4MXck|COOjX^%pt!C!EF&b(R9(k9L^Lx3!q-(ar^pu z&1{60dB`_AWWy!%s}S7QL+dlHR@g+p#ups73YihVE99jx%CAOnV{iId<0&9{dO@gc z*2Jfsd>EmB3ZBgu(0FqQK8q-5rmx6lk2D|J=7@)7P8189k8Sh2aM06wm%|7RzCe3Q z<+r3%xtS&PXBi^ zd%ck9Z?2G;*#`vA%#PN0PiCJHDl=Q*k$Oe&%4As4s}P~#!r;E+4J=zanC zxzjHcuUzuR$c~=zstmp1;;i zz6RIfW1qa5V}!mIGH;3bo^@Kl2$=|$Tf=v7*6ZRarG7w0T?vx6tPpv;aOZ=&$mKRd z$%5zdWQL1}7PLsXl@QhH@oWLOdfcWsPq2Di>|uUe)T(d&%57k|$i`xG-+&IS6(QEk zx2_N-bHTGkz5cr=3&z4;(c-^vS)R0xD8c==Df0M^bir^oIwr5>@q-EJ+kq((A+-$4&Ty9+b z7ChVPXBRJRl_NyeR@DNqt-Al6Svf<@kj`P|WhH0VnE^TSbU%wcHiL=UfEOwz^K^ z-L`sKXl$!zJ+!0S>LuZ0TfHZ`Ib`nj*!;KP*;e}n&$eptqV5R`f&WzSp8=mPc(&3J z!Ltp+g4bp^aX}#G>Lv3us3tfDq4Q0fa{?<;o{{Z)0QQWF`a%Si(ENtdy zToxnLQ}Ar&k6gSob8jK4W?m`)n>ppBlQi?S9_BL@Gk+i~QW?h_cW)ITHgmZvWP~0Q zJXcApH6HKRx~rsrc*wUngQxExBhrHTdCH?9lf9#OYbIA=>>4uN*EEhlo_8HU{o{F>+$hWW@jOlMSLeew zvtX}aKwEg!QYkzaOa zorU&3+%YR&bDBG#n)^jGqiXJeYHlOjY3|P6=I*STyBCP6xjU=oJ{zEJZcToQaHB*R z*Yrl+@Bmp}FTma6iY-*7@6L<0ms5Dv{TVi=1`yjBt@xtW1DS5UUh1y=+z^e7x@# zS9l`6cNw1T6~0J-ry=~P7LNBl;a1!sU^u8@JzJcEImgdRW81c>p8+bQAZ&AfU#fUdD)@ zV^CzRRs++J^>=39rg-h_wl6VUnC6*lx&pXefGX5(yE_E93`NsBZ3{*g)6`>-QAaGMS@PvI5`7kf@duNVRfCK+ z0|~gGbf;E#4e|T~Yd2!okUy?F(tI=s%^z9XH!fpzk&ZI`@TGx~g1=gxm%LTUAPol~ zlyi>yMNg9}W7Qry?_x@W;? zqeJ-VHhziOsjYrUb?lR7G5h`?;`s-SMMSZ=l$~)oMEDKDWG>v$4jUlSJ=a_~1|s|j zp(;l(&+sGeW?<$A1wDb25h=~U0GRWKY4T&l9;$L~v^h2#{iaa&8-A8palqJF1;8&d z$z}4By1Ji?HeYBAe4WPg`+5$3TPm#FVqQEN{4L*dEUB@j*xZ-}VhlXYcPXl8vOmGr zv=sESGju=WmuMXy_)}IrXK7pfu4}UDVWZ8eT;RnA-h6TJAGSp6_A}Y7P2PNQ^qg%2 zze4Nb7Z6pQ8sp4?XfQZ6+8j=XURsbRKe{9(Lp9Anyi-f_%YnMe)fhI~#BgHdFV;l9 zZlP5pt?`KXdG&*ACO=jbNj&16fLSQ#Ox-p3A)pA+DVfWAgJU4u-yuV6CB*VC)FU@9 zYdW^RKm+$&Wd1o0(eV1Nla9mafjujAvGcN~!aIZM3k~o*>S&Y8d6QQ$^`Jc3dnFF2QXq`Nn zc6_~rzTT&G@Ra>TI^Ir)j<2*1o?<)G!Nlg!QDK@qanSN=`cpN8slF3t?=Su4ix|L6 zo+qfO9({LPYY@&&G)zfM6a(auG2U#> zP<}8?P3C!7@)Hn&P!qGGKPkcIZ{;5!*97a^#+a|I4n{&kUm$UvSPs$GVv-G?|BQs* z2}Ma51rx!7p^rPlrzM#Q2_%{T>_#qUegmBInr2ZF@%ZWHqNHqyB_x?Xe}unb0CH<54paR=zfGZgy%&3(2v{ZVTA8 zBi^JaH)5S&S|V)PRidd$h^!B~bSuHa8=OB%W)yI`t4&4GCK5$LLZgI+35=z!YeMm) zMZ6=m9ir0yC~A5{1HMb`Gy*R1m@5VhYrL4cVrBfbh@@B6PC%jeuBUB$(slSVCd=VbDQb6mb1Oi$n!FKokSt z8kz=*CV*5tC_*Jz7_nm^(7_3azo|)ELn4fLA(I~94us%T+YQsaIBSmRXpQbRLO>YA ziB<&AVUKkEM*fPD`lz-U{S9Wc6Rd&VvvbnX>%d;2f_blnzBWrHO z{MyA?Gw0W4Pphb@Hcre^y(F4Lv(K%VmOZnq?0;(P5zKSUMK~+VtLA2hg57&$4;(e7 z(8!*(U|xCl>;>g>r5PIYBzS$TFDTq;{oF+Up?s!FStL@RRwSx{L% zzq)!Z+I`fhlCp02Jow^j1RMd&2-Pg9EUymEVji4BjPo@W^U8rlvZ`yQPcNT=W1I_B zSIn#~uhGnvHM6S9OQ$;z)lALVXIgE=+?uS4`F&{vLbK;pYB~2<>qZ2?^SEMW z#rzoygsEnF#e5o4Or>IyPSI8PH^01QIt5|YIRxwUimGxY2DEz&JW~s13_T0z1@>jm z0nAiYE-bCm=<0=fKU4Pe7!KG=1)e4QG6yc5KYfXa!ex37bBM_~q-AvsB^3lvDVm>v zh*p))EMF{+RhCW{`XU}c+srDGa8OpYq|(XBtkUTV7HM=!6&o8S`c~rPj(`J{KQLTc`Dy=F~8C1}KB{k*!tEx)rr$U@r zUR_-}la-;sp@W8(t9TSNwydf`IjEpc<{ulc^_Q1n zkCoZL0Ru{_%R~7Z%eHodwOhfswDgjHP6 zJ(eSCajh^&X z+Y^0_hS{InKUy7iSpr+1b9?TYU3A^ChjKKTj#A zil%JLVg%NH1(y4Mji2G$yl~5EyI^I(Ry%t_!KB{9C)ox26j_C2mscq0Ws#VD?@nLp zmije&>h~x=w%2d83%0>*HO;Qx9;HIeREX94L`NlbG}|(;-nV$wr2ZHB76qr)FSo); z)=>2?oJ2M&zZrKwRMbzJP%!z1zLTvpn%NtVSZ5^J!+-pr2cRn274mm`{jOcRe986< z--1<0QjTed_pRJ>W4(Q$Z?;|IOSAhZ(09K5q<9?l7TCuayaK5 zyWQIbleYU>*sLDY&W*F5jI%oo^etI6X@Kwi;JNngKiloH>Sy<@ntZsv{ykrXU9)vh z@A?Y6sNQ$SiY*Yb>~8AsdMCMdUj>)@YVWlRd>yvf?R+&`?B(`Y-zSExYQXNNIOw~z zl7H0E5gx5Lmw&CUD(7}P0_$Cl!)J%PoUQ1Yiq6uu*ax%%rHZ}FQl+J(^bTBxF$K(vZPo1aNoHI-#6 zNw%8B&TH-DAK#pbzLr~5>mRXlTkMphj!8Rx1Gk_anyUYE?WWmwlJER2J8$y6Wz_8S zHP|vDbG4O`q}lBwJGWU~n(c9flSgD;VRi8mGn>`AtTzu`Xa&5)F3q;P#BKL^jz^re z(4N`5U{ZuyzZyOMD2(k;!LIR~78KijWpyNZRRJv}LESH9~T|244rH zU>@+zwqP{Up@}vxSEpo9wF6ql6P-pdGdd=LB|=fQ&`Ff0`WC`u0!`|s5Sgc6OVTB zq`gz}iIYBEM;4uQH}2E7xant?vAU*k_ZQZ3G1kre^F+l?Oh$Hr-EMus5jA@p@g?-} z)%Ka}i?{pu7TLpm@e|27nSay}qdGW8OG`TVV>~{Sf698;1=R(U?5!w4d!{|y-eYf< zPGJR-`xQ)^Y~>_Xt3E!3{A$1`;*p+F_VDmg{u#+X<9ht(@)6sI+x0{G^|EIUf4gA& zh`Py>A_@l;_!iAL+g=SnCRG-7Ic9NTX^+xN$Ed(}=~ceGb3{

dE?W*3t+tbT`(|Mk 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_c629/.packlist b/scripts/_Inline/lib/auto/FOO_c629/.packlist new file mode 100644 index 00000000..573d2664 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_c629/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so diff --git a/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl b/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl new file mode 100644 index 00000000..4afed9c6 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl @@ -0,0 +1,22 @@ +md5 : c629bb13dbc94a7147daf1e24a500712 +name : FOO_c629 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 15:05:22 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so b/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so new file mode 100755 index 0000000000000000000000000000000000000000..4e45beff7ee49c4a004a0617999bc8838b4c829c GIT binary patch literal 47077 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 Il(FFb2mLQ%8UO$Q literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/FOO_d162/.packlist b/scripts/_Inline/lib/auto/FOO_d162/.packlist new file mode 100644 index 00000000..599118ba --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_d162/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so diff --git a/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl b/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl new file mode 100644 index 00000000..14f2b087 --- /dev/null +++ b/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl @@ -0,0 +1,22 @@ +md5 : d162648c2dd2b282a7f6b975095275b0 +name : FOO_d162 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:55:06 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so b/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so new file mode 100755 index 0000000000000000000000000000000000000000..f026c4344fbab67a0e50454b8d53c7596370c6fb GIT binary patch literal 141717 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist b/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist new file mode 100644 index 00000000..7dfa39b0 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl b/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl new file mode 100644 index 00000000..c8b69f97 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl @@ -0,0 +1,22 @@ +md5 : 4bc7f633dd2bd2e9fde659aae6c9e724 +name : coin_pl_4bc7 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:49:53 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so b/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so new file mode 100755 index 0000000000000000000000000000000000000000..8c72b81234f2add015e4e17f7fe93aff4a8826ef GIT binary patch literal 190544 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%0D}8MAZqU~DcfCpSAI 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/.packlist b/scripts/_Inline/lib/auto/coin_pl_6538/.packlist new file mode 100644 index 00000000..9af51397 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_6538/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl b/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl new file mode 100644 index 00000000..da54e297 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl @@ -0,0 +1,22 @@ +md5 : 6538d065f51350914cf2a520a8334f6c +name : coin_pl_6538 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:55:47 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so b/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so new file mode 100755 index 0000000000000000000000000000000000000000..a78fafbbb027d04d647e97af55fc962284e3c113 GIT binary patch literal 142955 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�JFbX2^=B&AA6YprnMhS-*aBEW%i$SoiZZDHQHH~ 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 faU~&G8c?$}r);2a6M`meQ63e04 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 literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/.packlist b/scripts/_Inline/lib/auto/coin_pl_d162/.packlist new file mode 100644 index 00000000..5294aba8 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d162/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl b/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl new file mode 100644 index 00000000..d703b7c1 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl @@ -0,0 +1,22 @@ +md5 : d162648c2dd2b282a7f6b975095275b0 +name : coin_pl_d162 +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Thu Jun 19 14:55:19 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so b/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so new file mode 100755 index 0000000000000000000000000000000000000000..cb75cf8632c9843d6010a6933da41e4c79dda190 GIT binary patch literal 141749 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

Q`3 zy}DaaL+N%^OF%gq%CwiFwYv4tP~ zq*yCm&hR&G46sf;8OIgFVz`oZvEt-pzZ*HrS|-dX{*9>s>xDVp|2Rq@tHB!PqmfMi zML6xtT4|}*ChQ+~!A7hxeiu_BapN|G)-C>=r?CmrCEipJ`-6Qr6nf});!1oIOVblLF6nxfp zYl*V=v+3`PaV%?x*sHhvJ24n#Jz_B`3^tbk158F)k30Tb{_kKY3$vp3-}3*4TFrXO zYS8{${`IW^KX0+a!+*rKbL&;K;4CF>n)t+wy;*D~G@EfzEE`~2^riL*Wu`T7|D zN2sf;k41iUjQ>RpwppK8*DCpSF@8VeJ7m2EHMpw~<1Z%tu*FX+@J%9r91H0O>qf=D zFUCKf@nYat^mk+YQoij`y*{p*~{$Hrd_v*e~>#V*MXx0B-K%;DDJt z7Q;5jy*Qi29cQyl<7^gBoXsYWv)OQQHq#$xGl@8fS9rePoYs&IWi5Oh7Lx3?E#5#- zEjFSnw@u<1bBj+<+ihFYH6wvvdw4e`{WSDrdmToTl=eKt;Anq^{*#iy4``s<+Lxn$ zq^M6uz&+DGOxBLP>xs8#IJMD6%uN_{QaY={YRpI}TRA+WHefz7@yQL$1GsDjOw%7b zVIoNxW!(?Je;AdOGTP#-1+$4|c>HFprSHhwev@{_tHxCoB4SqC8bP2yv%N9 z(&^_czG0@Fe%{gJ9}gQTFUlE=?cWvv_*bDe^B=~App-pA#YqRuyd*}`{U7FlxL0Y_ zPV<$u&UVVbtm|N?OU?W$BjsE5oMadJ_nmSmLxp-+g^CmKlq1&DU`{NpUSy>FAn7p@ zD;63l|B*)kY_k1i9VA;>UA2+&vk;6#UK30C#mo1b)wIar`(6ANzW+Kw8l9V^{M+gW zzAnn_kILVSVVLt$epT*de9sE{L)kQ%ruD<*p7NEo3KIS{?Lqlk8V;Y~Xb$ijMdB23 z0o(C=s{+2V(S4}gls}bAI5kJJ@*U@N;mbykw1%NlI4>cGCFrp8K53x%6J#U za7x&B7IK>L0G3B71AUM1_&b*KARlWY<1OL``xr{bRh@Bsrtfkb!w}!PZ(4(qbyUhy z^}Ln;S%$RC#}jt0zdyrFno=*I=|2mDOv-Zi@v74s0bJoeUR8+-PiYX)_K(JNm9kR6 zCjRFryGjiZ4EpLgfS35#U-@{|XOz8Ez;ypXEXz_>3v;IbV}h3n*xk=DAZ3k!`Tlz_ zw5MF|`vDtveWltF=BrkqejZ(>KU_)Dg>SKgzpFDq3I~h zUENa(V-^oZ(^WPFWk`(k48T*=c9tTs>E6SXoKh6C0-TIu5BpHDfGPgBnf0MDywrx9 z8~$t>9425#e`ls^xPY1dztior1J^^wlzEEScv9 z;N1Xhrn>(B+A-;mC_2YnK0tDmyuNVB7w(ejFx0)}vhxWO%}z_na^1}bY@E%ffYSCL zEy=5!hJb0h1Q|bNDVvmR|KFiAo!3RO6CXf{aNORCBxg4p2ah>!U(yOtbDi-f_76~) z-9itp_()6>g30tNr3EZcu(DHr8i8*0AE?Ss;~^DRqW@)|uGQQ2KLUW-GG}OD`whgI z-Cjd2?dK3&wwfeRv-Xb|@UuH=TAE!=Tb=%^bf%|Q)fm|U4P@G_P+!?ywU6EH@r?m> z(@-yaDxoZ$fqZ*AW6Rc1*d9$cgF2N(c2kTR**Tn&tPaKY-!ZRcch|I`_M3!yXlR&S zfxeY3uaytCXJX}&-BYK0ls$mK_R`PoJNFyVAi^W^^SsKLT|0-iG(%`$My_g9s*5Cot&SRE_ z@;O_)7-!lqvvG$pO}-A_nD*`jfWz4mz7F4-_9HCMvo-jgY2Vug;0WH}#7kdLg@sD? zNZwn;n$xuF>BcCIJXmsC_7;qo+0%R@39iQH%;-jWk^*;F_Tt_Er|aarVA-=VxMWx8 z*Xv%g>>}3fEPk~G%Nfi5iSf?SiN$;8mGpV8_6iTy$Jy^8sc|+tTRi&#ji__97$cq* zIz-?YcBJfiT7XZN#o2t)D|I8h!y>3Jj;)xOUr-TgehhHQ_01*%g$u#>tA{c^!mm%= z(|+e*vAo&Eieowcwlev^eq^9B(*DcwX@ydf_9H@0UfJwk#l8c7Gu8WNe5T(kvJnNC zysFvjifupswo0(wbIa5L7l zvB7^rAkJudKBnNJlPQ#OM>KG%45q~4fny;734Z5@`kVy_CjRPvqo`k=x zOui|hy=3Pz($2#|A~`Q{`lC05l|8_A=Ret^GST`c6aW=2E z#Myjm8Mji0A_|r`Uu9QOaEZPL$-o0Q>Tfy-O|&4*#ZxoiE>p~jMot|J$FrpPij6|X zLza~jXIHB_xvP-Jd5AvFrgZn1;P}hH9Be>?nZd773`X#7bmL`4%x-uUoH!5EBs(Yl zLF`*HqMY^=Y*}ICWN_RyV*Y^&&*`uM^!WXde-#JHHok^L_yY%ShcBRY@0K_QgFkO# zcF*F&bsYSsqMW;D>(5Q$xlDA7?m@Eg9*$*N9nlA4zRUqOhq@Z2bnh{QN^C^bJvUh~ z8g@rNpq}&+bA}P~8_s>Y_i7Jfqh>wY&c|L&VLjUY43}uM7QM4aIvr%&#LR3Cu>EMo zpPP9n_UZ<3ZWkUpPUdzMCy_l$#x&|?7`fe+Qz|{T`_Gi3SGheLuR@r~a&t-GOcqP1 zr`C~T^T)7rdub>Q8n=Nf2EG`%p`AGF9@8^((O5LWLGT&Dm)W_4A7WW*1=H}?7rY%2 z#00y?vx79pbQ2fciYjRojK}b22j|1J_+V`w8Y9>YMVk=JgvU*S=fS_G!9CqkX2GuD zPYg~&4dScXF@r(r**6|06NYs%jQpMh4&qn^)HBSCGYz~s-*X`S;`H0951>IhMd|jd zI0xxDm_mF{;$^gP&ojSPPhd>+#J?+B__pQltKx3@1uK)w2EoguBQ7>r6=x)IYB<9@GxalkY>r&qxu z?Csy-MXxi+L~VO8IQAOAdbK+AHe#N~fYB>F4#e&;p^kTAA56iVZU*n~1&&~2mGqgw z)FWBHAl6Wqm6|#DDwz|Y+z7@aL1u6iO4>4FUdjho?t_{u?+?~kPjdZEuHYfK z;R|*~?08zBC+ap-uwP3I2u=WRDMlV6xC-rW1V2DbuNuK4*!|52@_Wax8Nrcgz`q;8 z?|K-ykf!*6i@Dc3ZF@n!yx8Df9f!(`C z@DuF*VFahZkN1q=Yv>m5!(Hq?FoNG=_n{H|1G|rmpudG-d~5{UVt2p@-i2QJ36SZA z@u?BC+8V|`kw0YVGb4B##_fYfuoL?5=SHv<7S>-F!DguRLl93hj4zGgp(Mlj$_Nfk zG>or};96w)8zZya76|HiJ9R(XKIrpQ5-nn86D$DPC&^?}NM7!8-cw^=5D%+F_#^d=P$a zGJ|~P?FKWr3M@C8!ROi-#!Y6B&oSI=2791YHk-jSOvBh>276-U-)aVfsFz#JU?0rG zx0=Clz%XtzgO|d=+d+fsJIr7%n(9scDI|sS5O-F!(DWs2h8BJaDImwd=t9|ku&TbGJ`*1_plj^N3I_+gT7{l z@u(SW1L!d`n2p^|GdKXd$IW09c=m)Dyv0(3R-%HV!yji;WlU4_gwS&r@X*&3hc9r?x zyxb&!jaKJ(`NGka-__AYPx8Czp)g+!tod1bV4Yx(Mw{l#^n9NE2Nt>cL2Y%4{VK{O zKZgpf4m0g|G<1G?U;x!gJ%xSqWdPY2wt5QXDgfA`YRmm=`WYp8kf_cq7*j+oYO% zITxPvdxPY|v6IPf_OGcTz~@4r1hGGEIs@dnz=r?}cqdrM9OTdV69b~qnG_=r_6iuK z^-CzmpJ>{|?|64`76AJWzP8 z7uf6pLOTS=frhVO0vWXC`rDjyOVGI;YEYFFfw!4&(DuBjKS=<;ImZ}s9u472Dm^aaRXICwRN0dp+-btg=igBM|tFvn5V7SzgMjyvWojyvBF z%qR0a_NK%pP}Ku{$y`VGeCzks41NGC<|cMQE+YruL*H+p>~NSovv#3jJ~Iov*8(cc zM|GL)%_=2(ptkTgdX-_;D|p@f!kyIB!Ca?xFDgu;sgCAW1=rUWKE`_LWbRP#)+L4C zVn{Scm^vlvE-I`e|48#$Mc+|VI2Xe@O5=4cUtPe@keg4M3^W!aN5KV1jhXFZ9%=y> z-iAelnd8&`>|Rjt5sKCvrS5G!3wr-K3@(;?5NAk30j`tvN|)ySZ^N$G3c-Y|yL!5?nC zr^an#2~s-EFwfwWG?pA2h4PT>TY%#%yl%L8t313MZ0Cb@ z$e=7GVoZ?zJ@jmmVP416-SAn0eVPR^U<&?hD$}0tBfV%VFnav@M2}y)7Ytd0!H$~` zQx3NWr|LZJXC6Oo51Tg&$J4U!1`cN9O_hzEf<0CqKRHTwxk$dNB!51>WXQ2ett%m= z@;LJf?V=I-n@99EhaBk`9|>7iO8A`|EvAzGwE(X|@rPQHQvl`_%T71KO*r9V`xfL7 zpHt!XUjVI0KR=`m zB`#TpO!e%z-pFX&JuWQ{q2f)%(6hq17@W6jPHP$41PMhDG3)nLfmNsXRpGr2yiW-) z`cLRB!9NB3Tdocxl+ZKc#Sx8%z8YmZ&j_^_GEKKb2<(o>Go2;8G@U2BFrC*+@HDOE z(X|eVKO=Ir{UOsaH6lNz$pqChLB9$M6Lgi<7qkA5>zXZ+`#|0%=9WrUj8KwL{{`v` z5obbe1W#u^5IoB=TktgYn`7*-HrCq+_461z4X!edh_N9aV?Bh*$erMv$YIDB!nbF* z{UZB;GY~oEc-|74qy1wM)o=9XeSLh< z5Wi*0jcWhUQN;U@(_)}~nL8+ucKA^@%6 z5j$shBm5shPbW{RC?`)p%|newxVsRRk!y?qw*n|tT;qL>U$%@;SQ4=dgnCVg_dT>) zM}>jbL*C+$Z+6IeQ$1wW9+x{LmXr)sZ_9p0g)XTAln zh()h4Dg@a*U+Y*iM;G20W%*X*VW`6r5SD_E+aOWrt0LS3hJt@FaiuD8%{n1*HKMcW z8<+%UDPv}_5xP>)oq(>?Xyu&vY0o!8TRbdRN3rx^DE2)@=s^$5BT+25U@^}$LT?Ml zVA%PGaOeS?!xt_Yth>kveJ4z%VER)tk)TtmxDGEeLi{Kww`JhUoUPNw322T$SK!|OEbcciuj)p54|h^BS}Otuu^o$ zSoeG)MCKzmim2KLmk2^XdgMoWSVm*=FhYK*Au6biqOyg?kSEWnv(|5F>(GkcT#9bV zZK3RULYfmq8=qSJR12E@${4ajAYSX^_CA<70;j8U&><*NW5}F|q!`9t*`GC6^W-U> zS>OpT77~-3_n-hwGLmxK1TX#{2{wjI}4-i}RG%2K`Ed z8OOTPke4e|uV1V(5DnWK0{2B@d4&=$%5ec`!K z@jMTnP_dBc<8F_S<5cdZJIen@?uM)r(rdEsQ>oizku24LaJ2L|h2+hLjJGXy`m+Q5ce-kpJ zeNiy zD?Bt*=;2Yx2>tHSP~o9^QW;8}!szr!d#Q&(U(pT`;%6=~B)bUqEe*ii{*&KwzmoCE7`vywqH}aLwh`WcSPxpRODyJ&@L6ZaH@{z7TJF%o`0;g zzp0{kXpag{VzrL`6N&x}!FMXtx@HLdbM4__hm6RFgA^UPUxbbkd4C~YB>NXd@3&g- zxq@a!?~T$MiM;k0+9mQtoaAxKko}iX!8ZF-X+NtANJAW2Z{dlr(UF@mYMdN0R`7Sq zzEtROiXOU9(DZN!NYRn673wh}e@#eD%9V@8Uqo*+t@lfh-rJ+}Mk0?BQLlE1{2?K| zDEogx1tagEw9i(NJG6fYkFQoo-bo_=QSik$KjJo7=v}pkEd|ZU`HODRk>?84>zf{d zhFmD52W0<*=w@JBx7YWw<;AB4=PzdFi>k=H_mjuG`?M131{G3u>K7oTnnjTZ^(3xn+O$(fWw^E_HF@bKuU zFY{>AH_mAN1(!4f3&~{==hnoQFq8eHzv&-00Cl57irWj_@4qmm76E%-!6oW&b@C zG3wWJ)CGd3jdzZ+VdPB~>e1Q}^(aKWc9D+y9i=Ow8=~Iq(U%4Cv7+AT(K^(_qoaPq zqXFL{JeG#MLmmwt3*gli9=frUjymg2+z8i7cscrhLGxdUV!VMuJOgXZItJh9iRXPi_mJ}c?3KeE{_qqM)0o! z-&gR9F(BM5cy;aYA%_Xprfa6ixjC*_2$}7-N|WP#DQk3+jIhl!0c`3%#UKHAW&baV z7gz9(cV&OJFjMhYj^d4?nAa85O?DOEpTf!$Xq@m%ed4Mz7lzn)6)aujee17qu7YI> zl~<+)IMm3MDYd4CFt1Eaca=JZ$HX>?{dL%ABUB_>SW!!bjTJRc@Sh>K*9o3&F-7pd z1Ao8ZYk>b&@VuD#H;s??&2;h@GB9IvV~7Vm>i8s&ga5BbT?@g}t(HqvO7Lh&I91T9 zbojGH+)jH7H#;;B(&-evI@9hYEUe+lq6RfQRnV;Ag;A2Y|4}PMmhg>H#6D8Np~b?I z56cg`EJo;3!H)v|6~Qw(w+o)N@T11Z`|QiL`)m?*b&MW|9~M?saNh{Pg6ocRN3b5h z;C>fornpEkkH=LjBh&~}2RB|Voi6yu&4iXhWulj8DiR$^7xYX-a;-;Mmf+d^+Xc_E zcueqY{#P|V-d7|M8XvAXF^?o$RnocMyA*5n3sD z4jzSqj|_Wwv?g?waIgT*(;Q|`BlL`*SpbWo1TpZvD?|>Fw?z@1ftZtmoo<8*0DM#E&C#Q^Q|0bt4s{n}xP}6i*h#sG1KwiWfzTZZ$$b36-JU9!7W$>W#LES7>KFk(YCU|%> z>rVQ>PFN#6^%%~kxjaT_so*yPzgX}b&RX}-adE)DQRCx%cRRybI3VO55DWG4@a}PV z?JKkbBQ)GY{@fwI>!=D%6Ea7}KRg~>DEKE}qRmR30DUh2g>i`xIraC|L|ydyrj&EH zn>xp7vc4x8nvkpA;y^k_v~nP=5d1r^cA4PyREpWMPKX@yZxLb*0x#^Tl^uc56RwaE zUMqN-4{h=Q2Q-uT(mE8$al$GUAs*zAym3-wxVrhS6ILdpvu4$I*^mpPw^qZ|^KebW z-6XY0a&8piMFL@>OVczH7h2&^z7|%qZJhv|Z8s~X6U??-JZoJXdc=Kp zCH#cf+%FytO)p{mCosnsOt{gvL5f*!4as`oSmr`qMTnDfsTPX&jk-!}GD7P-@(~{9 z{)+h&A}5C{F9)S?|JtiMOHOaC}{dV$wi093tIVptpN0WgXTGY&G5Tu+{nCF zyK(Y@eolnw`ynk9@0;NG9{$4XP3JQr1~M>7o-mVxJZ^R-aCZ=K^! zXqAvNk;yBy1H9_7PS8VvzC%nc!31)x;8iN$7J%9LSj!$imEU`qTVmEbr82Mv==9L} zo>~aq&vm|~km=pHXvKVj%EyTypPUW<>^0YCprJN4-Q_1UH^IZq!TyA`D&|52-qUnDniS4&Nwfm5UEN_A=4fC(Olf9_I5E^T~4&YBflQPv>g21v-~4XgYVfiw+ME zv~sRq0A}t*&2#)-zQx1*t71L{=XQt?%jPsx3(}31u~Rmozk0~TD)PISR@D|dEM$f@ zQjyhM5I&t(PONaC zw$Qa6a?*MUt;!`oBxHuxRgqO_uLzo<4Rq1r4+X74YkQ_P!O$+&JjV~Mz{9*lyK(Z+ z%0-CI?Qy*bEfqAK`^ZIy8w9PKd%3g~&t5*NJ zpy_*_iw?gfXytpWArW^j)I7)cy_bjiPVL6YTfI<(==+OW2tz#DS#6yr2EC5rPz2PK9@ui1(s$xEcy#Fdf^nJM&!ug@&d$`?MItb;>6anbX zu9JDQ%)@;6RK2-FgqW&E*Q$6~qR$ALscP$@!_Ny^ITur;J*9IKG|%yy8SeqBjm%dn z=2J*jFA-v@wrQbw-%C!aLPI^|R~+&>mpntr4DC}zRux_BvrPSy-+P#6D&|uN%_`RUU}%?WA>5p}S|g2c7a=QeW(h!Vo;{g2mwA|fJXLRQ@Oabe zdKn9fTyGxrdc#kWaicdQ74HcaaHkKAFt5~#kKeoTJhNId^%fx&`~r`LXHI7BIuG-a zQ#2QPN`zP^jW@bofZsyn#yV;5qQn0Xv~n(WnC4+FCTpJKcY!`0=5>ns1a%_02#pmX zI(L`rMQFC5>D)6eI=n>C%DHDe_I^H@b02z`vp1;D-x0NcFI`f~Iqm zU39pEpp|pe1YqW_)jY?~T!V-CethqOw zr2BX9FwaoTr_ijuM2Ox05-k+(n}Rt>ZK0ta@*NKOo7E0^u8> z;WdI*p}isi^WOBvlZ5t_hk1}?}pZVgpPvbdWW3pk~@3ITO9J^ zS38jxc*xH<+T4Ld|ph zdgXToxsmxI#e52Rvqx$nCT5csiudhv5);lAvhrr005tIC$-KGJ!))Jtie39*5n`&^ zDIt}rR|U;f^>)!=erb)Ha<0WF4bZtN&2#)z_3$v?ajMP@5+SDQ1uca8-dOUeEi}PH z{-;B3=924#%+P+-{;~I5C1{4$e6w2xTLi5_J0Ji<8>V@VAKITD=6c0^3RTc-v<`xy zZP7xwhVJ+t&J(ioW}yJ|<{u~X=6Vmaf6FOW!QCQ6Z?d%z7GSP7&kI?36EjA8PH$!? z-V>|~x_OvyI+-`PqomdaXNr(Ax5}g8os*fn-NT%)^(4WIxzHXFV(?wH5WdcFt&S46 zb3No@hx~^-M#qlTjI6RLimW=&>4IjJEpXA{3_+{V$^>90AJja@ud)>$=Fb)L398Hq z?HUncXtB4beBikuH?(^^ld4E;&9KQzFdzj5TPBFAwMTnuLYa!gPb3=RFLmuFet6cJH9`XeaInyDB z|084-OYaGh8rrCMPf$bSJrNE{TQ`M6QBRq%YW!Msx?#(lD3uh95p zLqOAf>$e{DWW)Qy#79929j3@rpx+32G3?Iq>W_LqIrNjT@%`kLnhlRG7@Q%}$+$`%LR6cR|u1MLVa1kGQGD1P2^7ZV)5nJItf~T#}*&YLJ z?oxU2tzYXHaNZx~%erT4s(R95oO-l`PmSp3$#B(K-r4<7^!*8m&^H3GycdhOezt~L zVc%{vNykTyO;H>OubUA0Y|=APM7{uj;* zo^#zX!b1hGlJ2~R%ak5*nOGG1LFgq2{3#J2PwRUkfjbY#+GFs*@_CV_33+%B`xqlU zL8vPBjRG+CO2z7gag5uOk9nBy)Ot@PcIS0l#{P`!juB2gU%RPdciyFCT;I7&(Xl)4 z#F8iJUT^IBwIh2hZflBC^5jMH;4Tm{FwO{nD?BO#!3(q(%)o_8-~<^M?qR-LYd@6? zIIr6>1G`=sX^i4oX|`2U?qIL7BoWV zddOoPa=lBQ>mgS=Y&(3HbU4N5|aO0`ku*$$t0hodBmB0xyFw?`Fx&4$g;JjSR41~3q%D|JNPG!J- zdlsHw=rToTz-;8g~kw`l2kjms3BfyYFEJl93>s23FYAdK_UtV%!>i%Jqd$dOha z$lLL+=YSX36%XK2Tm#bt{B1X(=8!~B?5ek$Y9SP|m@{k9gv`TQnr z7;ngU$UivbB6oUj4>{K%?{mp}J>=02Io-AWzL43#6`HIX_&dR? z2L3|;w#-JC32En&L9Go>n;B`|N254U*dZYiYGFD zpEXN|K%Pa>JnU7LJ;4Z{D?BPe*9*XyA65bX{yEwh zd7kp}#4a(G8W}2uc*V1=u&ESYAOKVNqmns63Kx5rvmaHtIF%G$DPm0Fa4m*m$4%kg zLS~MpX|l@E9>J>|Iq$Hm_+6&x9QBzSiT{Zx9?8*Yd?w4obHK~v$q`Ofo)tEgBXgeC z%N(UX#;{M2qjnzV(Te$$Cb)bNQ{$f&Q%N{i@G1$;EA33e4K7o3684G!d7g>li4@Af z%1ELPdU-ra7;A(_3!6&9dI6Y(b~{g!ga@^Y&h~!w@ML;zeF>iP5i(!VYV?GY5hJv>T8CHiHi|;<^Kq@r}_bH4}gW&0Wy5O0M4T7ind=LLk9{eZ|KR?>QjeT^6#`DvN zj|-YTagD1+HJ+*^d>Zj(56ku_7F=LNx#81@A9z^)9>v0SAJ2+D6Apfq;0u?-2=Oxx z+-Se?Q%=~l?|#1U3=d0o6pQ=$!ePR~ORmE;i?8wJNh}QJkl%#hwg8=InrL7SX9%7J z(4g_SeSM>5HbP50Ay!+vYdnpr;Kk zhY=cbvG$b8?{x80K14PArFc(5SeV&ogoT+c6Ff8fp~lDis@&8q@{oUb$dlc!b&Zgj z**4EO{ol>(jY6isJ%!B7J}7u*cC^NOGW)Dhnb``D)GLB#W|s@z?u6UQf@k!%yZn*V zVyW|;hhO zdEsFL3=keRK#}0t02gRH9{#ye8^zr_4|$10E^r&5)q^N@cD+vlvm6jSYwBqazPsSJf&VRy z=XIX~5Blo}x=7G3fZO+M#Q9Mkd>g?ph1K%}&%0)M8n5q~!9<17_=@vLk+IY9Sr5Up zO=bulsL-Q=UyKOWdURRwf3n1QbAq4n4eb^_-Xgn8*6V;en3WD36i(05P7_C z=YzZ0*6f@h1yKd&<2w&+Io9 ze!*#ca_dt8{Ur%peVV`?lq1}1+RA2(hh}xRrLJts3vqJz+lZ{}lXZ zz-I`at#m~2Y{RhNbsJLKA3|jtP7o@sw_I+hjcs^|i;uLSjQG;u+6(vZ;Jzn{TlG%P z3|)kU&HSv(VuX4Np3VG`i7qzRe*&?vnrMAwTDkSGudDUp(Yb9P))Ox$z3!5VURV zRm~mm+jx^k;uBOJayy4y<&t}Q$Y(g@B8Qwe+(T9`NTxd^BmT}YhQS~BQa_N&-xmIJ zB4(Wdlkgb0gKep~__JP$3oyTRzSRQ{fTR3bFNfX(Fn`9Y+kPA*n?^i;&49n-r5Jor zI1Z2hd*JVJ%>RncUjkeNhI})j9lipW7-vpdr8DuwC3=5uH(VCC1xQ6s!oLY{^?3kd zB`PJ;$^(Qt2+$KUX)y2hOna$(-W@-1;T7m7z!(S&bOns?Di2e5od+-m>_%wo7}|x+ z5lXu_{@mYAhBCy%79QmRjPO<7z&3h;`@O(j9-%y^?ao7H7>61&;(e1=>n3G$*VBVQ zoVi=%x(MxkxMNnl<}`OeHTNDgqiXJeYHlOPY3?rG=I)}JyAOz}xx1+5<`2E;=GNq= z2&>;p)bys^@c`N2K5(Xc+$alG>AU+f?d6ssjl`#P*}wEE78xpaVU;>F>=%k^&J+(| zgx~QbBz(XN{OARmUaGAr4c$CIXpjI^Xy2ZHi%R5;;v#3=JR@A}6)O{91H`ICOfQ?& z2p{je%@v-2?_Gvxd4(?(;AsdyriJ5uJ6!?%IHL30mN1Q{dWC{2@oKrxqvdx;%S&D@ zPA5M~%R?S5VSZ+Yo65}VUf_KX5IQ8lLAX2ub>sFM%ntY+OAl-KR}WyspKjt_7zETf z)W;b9Qw)l%%}QXJu>Q^-)B>-a-SH)c3)4J%OE&;_3NWn+fV%{^5=GN5eKSTD)6`>- zQ}AQ)#Gz>G9s%!D__-|<&VF!E%MXT}IK zbQ;QfWQ_R(Ad|nTnfxC72Vo?Jqk?}mHThdQ=D8$rfK28nm8`(`abz^R_7u!8rUtNCivbIhMaN+uqJCa9x6*9c*{Lr89>sn@hZL+v+pJ@E&V zl2wC@HUkN`pmeuZcRlg^18X;9*MvW=JHp%-gyxSd?HiXdx=2TwE!whx)9_cz?8LRftc^_+j+5u^J)HHeZ!jsU^W(mB>JyT2ZLX9J^uo3Y8G)+Dv ztZGj;G#4w#>cgPsgiVvzp0pkQwzIB)v1S4KN6r}2Ty{)qLSJb9#x(hmtw*!BN`4N( z+x4p2O#U{@iOLN#tTEsjoeo}URH;f%MjrJMf897an}1ZZjW*xtkNVuF>$CNnz_a?$ zb*I8;(?j^_HhziOsjV?cb?lSoDE9p`iRT|Q77?S&dF+f!A;NDECJz7w?Qk1Jdh|5s zkAVn3La53S%oF^GyCse0H`<(=gML$}`wc%!tT){s=Rh=5+%#mm?I5pZFMut9GkS9O7Bqc)&TY`AEmgbiOb(O0zY_y5t z#K>Q$iG1Bcs~&BRjYq^Us2^lA`LUu%;t_8#W})1(b=TmBfFeYvWNzpOj=^kyhYYbA zh~;0RM{Zu$bZnWJ=z1?O{}_j8czxGN$6@rq-c`ETd0A88ox$|Q#&{lew8`bX$*Y)p zP#$gGf%ffHqlI{dFqs@MUWWOnSDiNgg9pDVfTI6e7d@}~Ir^VMN6z1-_3%7XXN}4{ z(Q%O zYc6ztqjmCR+VS;r`g*_C!Bh4V>F9*u)d)6ufWiL5Ryq%|bO0zUy>Q zuWxReTrox{YTQnqj0yzLz1S7p3?42FHBTL+lhq%!oKcJ;%)eroC|KCoDTVuxVF`rY0e>{^-(e1PgC){wSGI!0E0w6-C=f6bT7U z6PhG2mUgZQ#giWKj@0&uO8cXz84(TmF16DL_)wYP;aEg-Cus*I8F161z|N8p1!OV_ zx>>r2dF6gr=-BS3Jhi)aXrc?J zbCc#~3o{&d{UDY8+*r3vEL2@jOejXLUJ)Ep5xQ)Ji4yIh%BT056{cY|UOxzgJcob| z>>7wY%0M46fWT;=FF>gvg8jr4r~{g?P5T4kp%+BxWIrPUVu_Jpj*nvrh2e)m2XRrr z^#d&u73d&Q415|i4HiuRsrbwYm0)4Sj)g#nBq074CT*P+VZ;lW^Z<7t1gF|=sOH64 zb3{iPy4!F8VGt);5kQAM!u1>ZD^BXK+GeDSOt>`ckKjkScra_$(Jm?>!Z#*pNUMud zOc`E2Ejmtfb#Bs2HNg024wOSl3yemF4@-K}{0##FCRd)vaQ&52S5uu+F|TY+-L&$Y zh55ZpdiTnnQ!%e@VfKu9bvaWjYHN%Wv(zk#=FseODyHVlC@cG)8hZuv9CH!Qs`BbN zIiX;WUO9tDjwv*9W>(HE&zV(OK4)6_tn!+=nw)bht7q3#m6ny~l)OfmzPd+WFQXC(&`zSv;Wk(iaE8}74y!Z4G7Je zTczdPW33yJ0MFx!85Q%UR|-?@w2FB&q?k&@B%PwG@NZsu?KBF)taAv~X%*GwN(^ZC z7_&>&H>C+SIsZ2*65n~dOt(i+%cxdC=ag0#s|+e= z(4yM%fz{Qe^iv_uF0ZL6ox#dbV9}Yw%2hlH8e3Lfp&V4uxa!h*HKk>>6_xWw*40+k zxh6b>;(5o$YyIVA*kgq@c+jBIn(|P-#xiecFDHw-3PEBsS69}u36SfW+UkmVY&@XL z%cj+o;t;B^kg!HIaF1ol>891Og_YN`e!#i*{?E6>SiYANUa~*8a$9$?J6>v7F;<+t zEe6v?j4#gjmt|HLb-0~yKmKXppSqXpvWG$RHN)Np*!0b_GE94%uMKxkRi9yXYu#nX ztDr#HPzuETz`r^CqqI!qQ8xb+;Ex$+b!mY;xHGuR;-BICV{gG<(|3{8(X{{TYi7T+ z(%00=HGMTfU(+XjHTDEw)1mg~_77IaB&%afJITswY2_zb@fhzAbX6w_x|5lc{h6IJ z$AuPpNK&q8hxaevdvk+*iEox&>r1!$E6{h5{p1WADt%)&@ArKf zzuC8W{)GLT_WQbT9#A%E@1BCKaKabITJgo%!?=5!f7tjwRST-XmfpVAZeLz-q+b19 zxn;SVM9IK4Q8}Fbj@|z4f{ELGt!-A1Y4?n?pNz9R4)!ftF>#RZqTmJgoj=*_vm0ie zQ9bE!L&JN%3cGg8-hK@gc5#F6u4S7cWZB)--?dJ1?K2cy?yK8o7x+4Ew%hw^H``0? zvA$0YTh)L)KylD_YdQa@qa!?8b^-rd-Bix)_5{|t9EZ;fcRf$hvlN}BZLtq%1xgir zm!(QeOY6U=ZsP6rp1(@DkUJ^zK~f_QSs4n;%vOWbFskhbG#*T%D6a)edMGPjni=%;=Z|mIy`Jd?!(w>YERf z2{fsjLS&wbf}Z~0hN+TpLbuW5ccGg{nnv7V2Kb+DHOK$cH~+s0C$rW5UFfm9d`-QT zCQj7=@24ZjPdwVillIQZCrB-Je*?#aOrU&l459Fd5ke zcKfvjN7U?b#FxquDjOySVEiLKbJ9&II|CIHz3u+1` z+FMY9_6&QNz1Q9@ox%zv4=9*A$;wTtQGI+e`PG0?%p*Oc?B(HO{4;`o#`XHoRl~Or zvm4GD(8r!J?CpZ>!|Nwaj3_*_z_(!fdG<>9F|npVX^c}tNt|*|DVEVxjTre!SUaTZe4>|pKIDXENh_y?Iu`<-i`S#3-Tc-Ul;@E!kdA{G5+ADVXdZ4{h@xLAZ zcinujc%_}x&o>jR2s?;O+cSz+?(g^M!QuhqC)tz#hw(0s@tT5y^8YvSx+ed3@&2!~ zt7ZvRWcM-8tN7=Co8=?J8cxyfu)UFX{r}5yXN=OHEZuygFMjhxU*ZH^5-f`j_#fa> zPIV=FJ9^SYZ%^uwv}>y_Mz?YPzpsZ57}ajrbsPJzz5jpNg$q=bpTlCGILXaC!}!0b zPLD7D_k8o|k@f$ghYXn0ITiu^3aneL)+^85GSRxjO3AMKrQ7_vAF)DsE>=@_?edkP z3eq#U6AT|XYQ+yA&yEn*sW@noRD z%1gp}eR;tT_QZyloq4=t^2%M=1$JG7)j3I#j!A4do>T*pp=f(umG+^PzHQ5}QloEJ zxA|so_I+#EEqI`3^f{Y%;rbdbP0uN5#^J3YT-8ZMO7x(xFLt1b{lwBV9LNm*TW)m&UxDJie6o>ytiF2~t_wNX-nOAOuh zu7}>`>RnI0>t)nVol{bZD=DQV^U4?28YMNjYETOoE-FVjC1VGVDIPVhWaOxlqJd+J zaznk1nQ$2#M%kRonsTUzsCYG@WcWGbj5*~C5nSE$>4r*FNzH=Nnwcf|edmQ$^JmPD z);YXz?AUQd14kGoyt;&oI3-m~2Xj+aS~j!XC@!mDOuDV|q1 zx4gQdj7=~P7qO-p#b^$7Im4)#Us8t@lvmGJNvN%^D?|3H;N9G*bIMCq5EYdwXLIq$ z8q!@`0r|O$O3D^W(u(Jn;zC??Wo50guxx%wWnFDe#k6wmBd?zsC8OYd@knE4c?l}0 zE;=K*lFQo4+KSpa<;Ix8vkE7Sa$7|^G_Q1S`7{-dF=}`TE{c@QE?;EKESaMVEvngy zN1QWoc=4GdM-3i%W+ASKl}xXwu0c%GDr*+t`r=Ha4-L;2)oqSCs;R7|Q)i=b2A)+| zGH&9i!jf|e$BZo=Il_RknU$5ZOK|n2tfUr=fv|CPa$ea?6-V(|ER&Lf!-q$QHF)4S zqo$;)vKmR5Iv3LA^D8RrYK&quDXU^e6)IqQ8On;JlDVbTv!nElm^gAo;oyNIMh%<@ z*UP7u%qd-jELI?rsAz|b8F}`=;p4`R8#s8F0k@{%`d05=MsamH8oQd;CClf{H)=}f zmqSBM?VQRoRj;@phs$D4mZeUj6b~G6X0)ZT;|Gl$HwL&7DLKeuj9ExPQyX@)L}5{6V#69pl}k)w)=43sF!5J{||zQH5U z9yM@GVaeIJj9j90O)JN+fEHE5N9i1-Tenf+;F4j56CtB7*%dAu{^?t*T4ct$VqTdLYmUjT(ug1U^5_Bo-R|bR>y{$tcc8Mof&N zB;zBRF_UOWf{NqkD2_o-iu7`*Ij3wb@p@ZwbyI!vyaS;3PR+KXf&AD zu-q_`BF4(Kk#FjRi_65*D&Xrd(S` z508dNMu$c)V*<=32~tOm!b&qOuPcS6@`B9AS{+qmJW}koduU`tIdidEuV8*<$u*Vx z%~8ns%?7Am3>x#Ts3_e}mjM<9=eJg?HH>i$N(FKgoED{}p-5OLiAaP>Vt6nIH&7n9 z+p*0R<>vB8p;;KN);6Wtjq<#TINQzvRsR2w4rXpE0ggBt_}Dlzq@pf&TYc?797(hUBD zUVunZR-9Tci1O-^;Rra)Wy*(>QFstSHP~1dIkXYTXg8}~K9(hlJ>IH7e52^)QihL5 z$47F9l1&YwCFKB7Y|&B)A_prUR7F|ok#65e35uv(fJgup8-?`(q*uKGa_dY02g{TU zN|?_wZX3eA^{S4s=u2U(3OK#7j6d}z)LK!7YVSS{)l$9M!d$?BVeEu4bjiT25Gb#D zc@q^e@Q_N4wPu8o*u(^KvnS@aaB_MyuvH?_Mj&7gtz9Y3qu8`6!SpydHi4-f5QZ2yPfZ+zxmufZ4fbuG= z$5h(MsUx{VA#j-4m@4@~IU_bkM)TnjnYCD^66+CkZ|dwz*n*SL^HN57V0BbQ1fvt) zl0|D8;KcP}%`BTm7;0iWwxE-B>^5;#GZO7r%L6U*Gks!lN;{-NUJT5@SsN?m6B&^? z0TU&7{n7mB_>4>kOfuzrS^+Y2Qk0{v4txN!O?cGtNffPCp2g<)N_EIuq zqJ`-X9u^mjSBj9R z;!p=+lH(#yd%}t>)MA2eh)km=eH7uk7%c%K)3d99kgc1+| zli;E83FV;J!5EynVki%8TZ)`A7pVg|3q7J$1a%dmcqVg2R*y}^!(7uzwTh+m3Tzk* zG#GnOYNPTNKf@VGYW<1{l`EE=$x~Pb7l?2+7X)OG+u<=-oDoc{p`#E~q9hmAtZ0}% zYs~_hK~qB-R4>)wlE|7hOiA=&@hFTecnIr-nzQCsp%r1=;%`clMI|vj#9&G5H@7yM zCfVR5Xa?E43b}UzOs@$ za;Rb>Jp^^R3ENJ5MQHa5CT!F^Are$YY_+C70Ytt{Q+NfUP}GM*V;Uy{rTYSmM^GNE z!NT}rh9ANSZ@A}_mCM(P8f%Es5;Y(m8Eh9>7DubZ*q|1TauYDHVA4yS&>JdSL4}nD zr2UfEU@Mym-RmSIrdbu+4q&*pR?7g*Lj!vS*T4-0EwS|Nx(6d(#)nQsRv3;?0Ip}JZW$pdQ~ zlL)n9(g<@ER#sFWl(0tymcUvG+NZo4$f$^Ya4nJ@%g+qWARMu9B9sWj@Ie#qhfAxa zy0b46GDMA?DQ{h%Wn-h`FeTt~!T|xL>uThQVOWG1GTUBzCH~iZ3$`RwgHV1Rq-xci zEfPiWuw+;waS0;Rq_Kald`d-7E~2|2YtjIPce=77a#@LNa{xBtu_;*f$~o0Qv^dNV z2zcA=B7Gm835tW|XmmL5%xUzVVym?Z*RBRV-xQ=6?cfNJGpjP{DVel;cjjKDNGzgu z@5wyho4LO@b1xQWLgrnO3yq8o}U?xcfN))S3ev~Z(Bl1kAgoGi)se_~o@OACa5z-8KL@$9w#bl~shNuJNraf9N5hqSYHBKQoq6Gv_ zVCl%X!uNBt6Fl!qPmw2_hS#pT2%0FZ2nw{L&Cf{XJ2){hHZiHrtJr`D;pm*Nq`Nkf zgD!@x2#0*3+EUJIHN@saV=xK}uy4yS_MvXUPlspHnI}iX=}C-SP1+C33cXyfLli23 zWr~8Dbv}r<01VfMzx>ATO(JRbrr7)xtVid5oRSZg<>xH_w znTZJ;&)wVtdx5xsxXk&9+;}K`I5I<`b&6>05r9^nxXX6AU1x2q}2YkqD6=T1WHym7VDKr zLLuqGhl<7g;M5T_HR3p>ht|qITCtMD`o>T$T`@JwN|uL3&6D1I)+1r zT@-#%R6J6*B)B?XEpBSS4g^fj*8KF;k&&TrC?gbz&d3I$_o~HGUJ~sH_s~rc=_TR} z@Ij=trOE<$s98NxT9pY1{*yQwM4spYuzqD}4ZTfTBu;0kcHJpG$foOU=x9_A$*&xs6AmHwbefcXtg}G0DTX5wPgJfH zs%mb!-FJbDuP`Jeu}L%){O#l$oJdDkw5Ww>d9{J@$J9jl*Ze`7nl{f+i?An%mJJO| zXk6q_y;_kdj0CD}IxQ?CzN6-ebNX^>gbH6d3OhGT*}_7<*gA>^O5Ev$__AdkPtmWj zR8tH1U=$vUCZ@yubm)S>G8=>DTD01Li7Rwg*VPRTILC}Mnq^aPn_;`HAPOh?S2vIf zbBKXlUPSOq*hB0bC~AywYP`hIb!I*|L4}iBI8k}ElC{7N4UJ7n^Z^xdF(X|ZLy6|~ zXo%0*pQ%}b#}YTrlHLhuz;9|mB zL;!nI+@l1WhlLX*#{_K+bduNNdMYXszQizG7l}lmLA8o_DWW1jh(Nfrn3-m` zi-Lp}a&lFj230{i8_iqSAWQAyy11|2cZEx;TxpUFGe(LjsyVE^udj)n>&#pzKqrAP z%Zud=@Ugi4U_+BYsa`_|Snt#khy#twaqPtT1bc+?>R<$PHtNPP%EKo%N6sLC0LcS&?)qz2rR}K#r%_4lT42moB=2XSQ%?+uMzfwc(EGel%AS+0twV2QMU{- z0)jyV@G=B%e`{5`Rx0*G;&Q1&yCE@HAwD|m7banSIRc`P7HmHl-x@(y-wNRy=qYej z0iGZ{MJ;6s`_MNl$!Nz)VP3cnk*g|ZY`p<>@3o5wYsYvHMQD;PNL1k6N+dze9}q#j zqh&m8V0lX)BwOf=t_bZ%%ti)XQo$cW9L+7ENbs*vE4Ro0;&w=M33a%s0U}^(Yh+iJ zqrADG!yr^*h$=CW5$?q($Od@vNMtsphFjLdWU!MC%YZXg_F>R+Vr8k>1wM20MFKb` zIBP)*){_N=pd=Z=EmkE8q7YxN^I1iEJf+tTOl`k1%1OMT z^h)Vt@s-Jb1jnY(WOQ5p#A9nJ&8=-Yl6nfO_&`Jy4C$t;{B|9C;~a~eVBQ8+c2$fZ+d9_H>#9T~uIktu1&9U# zH|F3Eu|k+-B7PP&P(_NAgW@vi;<5<-K;x?>E5+H85KuY;<~v5rrkO-LT)84i9W~@_ z4e3UqiRmUwH@TQSgXn}fzsQZsz#3x{Fj`XVjyfScvCKa?Iy#QU#~h+fn7NP<;-g{7 zPu&R#;y}2k)&f?FVjsuGwsX#e78qr$Dh3N1vRdM-6`g0Uy}HPs?xU`)$CRRrRmMmsTE5HPR`N6biJ_^?*oL@Stx(E0Teym4_Q5emr{Fh86C#tw;cSw(lTRl#|<2}=Zn?ZQ?f-4NHu(h6eYDYk?n zvfUc$vult$G4^6Ldc!3lI438tO8{G6l!H?gLDU@U;~Ke#XTGEnbCdufkD1XZU4vGy zif&e&EZacP9(kz-st?|3Nff9V$H!oHElD`9(OAc1Q!}Sk1BC>u>r3UR3iSXh9`pmZ ztHGbLK*a8HCP=D{8mwMK_}r~FQzTi4Og8i&l!aY2U~O7gt8o7y*q2&}xSGK=<~(p% zv=Z_1J5$gO$Q#jp;`t*U5SwTS+z1|2Q2Pv1Uc3!O$?Qje;e$ZCRyS=0AYnqX8#D;L*vlpi_)0RZy;&bP_sS*+lfhf_5rji`A*9{VhZs%e3!U7g+RbxErPePQsg>TUmc?^LK5i=<|MhdAD-xMM0qrgAQX4t8GAy&}QU!!ua^wF#j9u zI&?TU>{5%sE3KpMrVN3ar^4(|{RMeH4JdUcmBCGgtgXXplS!>JPBgIE@XEq&8-mWb z!U_bVEZ>S0)U2S8Zb^}?V~Cg9+ybAu*ai1SiHQrztx*xj3ThIR2dffuMtS80i7u-R z?-mtJvaVqDRW6|lVwUtp)k6@PELW$-7(`NsPN?RiAkKzRvVz00 zjGF4n(TNdR--izcsv-i~GJ92m#z<-NURYZ!9$PkO>-W%@C<2<9!w1KzOQT}wdjaYe zLe%+g=r}vS(D9mBrn*3h7(?tBnt3Wy+YBZO;~Ck&7{LinICf5;t9L5FQRhmDyHZ|M za$@#i$AN^$fy;qV%78Ffb;lrVcGyBK-Asb0fXv&;a;;RsOSU8!`+NR4#ZDX_B8Ay-XY|v5_5nVCyG!Q3% zo2hZoRt0j32!pya2=1oEM96?9Zd5+f`^H>|=CO~tg_U-vMa2#hL&qsY#6Z;O@Dxq$ z2$V%G=Y$5i;YwyKV9i4qAy6XBs#4m^EXc2%`TgRCtGNU7Rd^iQUp9}y&Phy9HDP@~ z)@kCUveW+N1gPS}U}ZNp4eAad7c4AF6r{$jmyk+o#efmeeH}U(gW-d=87>*yZ75HQ zkAtQsCfnpR3^~Z?#e%G3iG?ohNb_Vqhv>45Cq^EOB>`C3=7wc|iR9JPB}PtB;Tqdf zQeoqnNNsp`U_ss8QC`IkT*yf*oWM{OTTxfdHEg8z6FNx}(ORDiueyRzB(gr7D zQ^HlOR#~=?RSTVbt=*TP%z9PqbmaudQ9bO!F@QKQQ2Q%QJrg8V#Uw%>lQW|u(hwKT zme7~ZV4cf|&0qj)6=xJsyb2{me5sMwJtG;Fs~YgMGUL33);N4r~zQv ziGayITB$WRr<4#=7F1Fj%;I_-lyAHi?)RU#?cuTy&W*SQVIpxIAz38ig^t(`N6Zgp z3#>zEEHyJw`RRkQf8K3oG7o4S+nHfdVfKnMsagd6DyXZJ3@gfpYpCw1tmYw{_Lgq% zOYxK%X|_@T2L`Ld!d-ZaMGP&lKTI^gskg}0MeyswGWL6jAa%x@xU*&~xcvgTA=#)Q zRoNazbt2GYs1S`aLK{GSi!<2bz4*ihn2xfyR|>H`*E;ib)me3|SkQnhfDAF z7()80WVGG*=vYa@%iwW@Xs+Ev(^H%WgHKhF%#B0U`V<|`bSgKeQv0}J7l>gY3$~co z7$7x7VbBj^W0HvtkU%!g)RX!}moVL;EA|bTR}3>;Rtr3PU;xqmjAZ5lm$4X#=&DIE zAq88;79@Hwu%MD|dlaJwqnukT3f1Jz3Ad?YL-fk37#Xft3-xN@gsj1|!rNKUUp^QgZ&Oy^snRw+_O2pYW=o!s)toZ6?{De`Cyo3GSfrLU5k%6IuQ)^xr8Xiq~;cx<~+JDDDl^GxFgxeYkj{*37XnTH*V zA_SzxDa#O=$gNI^NecU`wgP#On+G$VP`x5U?3M+x9$!+0%0>c_AQ}*mEfn^i8N6AI z$!2Q}k2!W*l-<;@Hr%_tLLE0Ln|KWh(@r-%!{H-1zf51BQWqGa()Qx0Ae04`Dub37P;BUh zV*(n`7KQ!auptwW&8)zyBQGJZ?xda3A5H z#<*RCe;(s5BK(UO*H1XWvC;BFc{@BD(P(w+7sjn z{x54sPcX%zPFe9l{n)^J@wEl{0Y&gWkDC5x1E2FUpNiml9+fBf)?a6;nU5IwFENVX zcRXtPB+hP^-_3SK>j{1eC-ch>?IL*QZing(Zu?@5H!n6M(p_laOpGGfdvPKwZ(eLj zWF;6}l1L{9@XK$fUC}y%WsjQOyWgdHpIxj`E*ag782 z%&tg9aNoLngj57C^Qb(*36DBnGVqNaHA}Fu$+C_UT=%Fv!Mi+a_L^&5hPT)ijhMX7 zp>D7%P!19QeWUT)NzZqAf-x)3kQIO1v*HX{aoF?S4EgRSF)FUeLAP2pzY|wSFs^Qv z)qT%bH_Pf?d>fJwvUqna`98feGhsr%)fY#Yw~Z{72}-k4IA@P zUtONyDUb5i<^2?zQQ-u@A0VF z^Q~k3aR&*$#-k#Ff9g@QOZ#1WIC;QUoF6-{bdO}#8MxP@W(n@|sOfJT_+5|66Ab?Y z%bF#4%%k!I&oi}$Mi6|VN975A#B2bhBKXH1l_z*{Ji$jxJ{7@#^{70-$CrF6g8$}Gd4ii|pNim{Jt|Ld;Dk>_aL}Xj z1iyr1x#b5E68x%1a^Wu7MX5j0*Yeuzk2gxhTsDpl_&V= zYy5~3e4tKLp5U-I9A*d}_NY9;*y5ONw>W0nEsoh6HeF3O*%j7YE<;_3&bP>TvJSrskon%(t^mxNLB6zw-g=ZLezDGp_`wazR_H6Oy^XWo@*Z6cG0B=tDbP>T@Jt`#l+sUlF`G8Ls5&W=6h5y;W zPkK~D@GlId1mMjVe7ca}adSE}9dG{3dm<6Rx0u_Z>3H)FL(1HI$lxE@6~rU>6ORfB zK5i%!cXEq2XI<^+4*^N=SsoPm4 zvF6R6_;ew`d*XB_w|MgzpKgxe=RGQX(7u`?b;KB1b;u1^raO?^8I$js1ZD5C?x}LLZ2=qI31@uxy2joUezDUBUtgM zaMi#!dDI-iw|Z1a@V5-5WZ=z~Pd7*K1BN0Qcz?G~8WMbkxwK6Bal8MVUD0fUe`_cu z18*Mo=|Y0vjMJUm;?3he-5kMx^QiC_2A*5>#3H!Eqe6n`8A{2(n^*dDa|HJqihbk# z0iQG^_^nJ*oYJSio4hYSNAMknQZn%7_kFsM;CthAC%1TWk54y8@M9hoe%!#%d(<4k zFL_i*@XLl$GVtaRpKgxe_Y6fc@cwb1G$hDaFOz0{EaJ2N67gB5iFilM`0p3YBL2Ev z`-0m}HSaj>g0r`XdBmRd2DP)dc*7+!tmF}Vx*4cv1-Jdp<{dqKPdvYcc~9&!yd^t5 zYZmO)c14vpN|ons5!13KsPfz`-n`2jzS9p~~yP||Uq=e^f5%ah`IWuSlxBVWT z?c5^j#oj)e-Y~o9ZFXf#p0`EJZT3XVd8d{`)F-@AHQi@+!a3ev=o{L4uH9T}SCHy1 z)9m+n4c|Ai^$ENAx?Pd(6{d+^XIHdK>b~GPTf`i)C)%!eYrBZTSw;Gjp~?Ih+5h+^ zljI4KkKnP=_5O+v9L*AZ$fNQEzxYO$HB0axJStC+?1hG_2W&ERE;olMb z?hPzHBKUoe$`kzINuP?~V;+?!_>CKxYVQ9S_(PA%6O7&Y;{@r}qp1X+eG|(%PVm<~ zYK|biX;=>~dHk2rwacu}rw94l`)=>!?XXAB2%5Kt4ShxcG&1m>y;l6(?R~sw4^Ef# zxA(F2Y@eZd%jU9_xU~+dTI~(HVw?z)pa?;b9xSaxRDvV%&o{b)Q4m4480wC#Wr09t zTl9sOI!wH((-xTIs>%I6tUF7Pi%Wg=^Z;65J^JkAvo1_qIefxtMtd7Od3c+uo|wjYmJbuX|ut)^X=L}!?1Sd5-NYiO87gwN^c1N*q8nWf(&V5qOhV#t5C$}H5S=;qg{m# zu37Qlti`)6xWwDK+svTd7VO(1e5S|k-y+ON%C_Lrt=p`wn7=MX;-&aQ>J6^Px05r!_gN7iw5x1hCHzN*bDLLrcdxH>hTzq{(%JUbx0xD$ zYz5q7*S5{8d~ly7_+^_{NypQCGx7wR9@XYRJZhz1?vu2+0z>wQof5vx&@Z^(()_ty zg$D_LI>v1${FxZHgYai#TtDFlV%$Z9U;I{AyYMvOoiXkr!Y_$&{e&-!aXScK6yvrN zep!s`>(G>?#~g_+Jg@ zIGA@mzOY$>f8|kae$-=D#!u~f4lK&P{+IOiUub)+`QUUb;~B{W9rjx9v~+*#>uh7Z z)l;s!XBdxit35ZYX9wnCOaCpqW;bGI(|_WX4)Z1xdEWIfpW!ujr5DmIf92nqpY{4p zL7959^>H`WH!?0X{nTuFdX)4S=|!C~FEHy3X7guVGI}>Gr(610?{!Z`?Mk}-vix*N z{?hh7a2v%XCOltjSMFxW)_;EFFf^WNy3*LBp+!UUsphBQOtbf?mPg}e%a(_@ZpF2r zZ2dG~4%*@f7kId6l1)z|<;%8a!IcoME@acw=(yFw?OZZo7(Sc+uWa5?g}%n-J{7`^ zcK?36X7hK;H`^tB{$^JKg&|*(pz)I}KN!GyvT_E<0N!bKSA5FKLHJZpX#gi34CtYx zuP7G-y~8_M%fUc#Q%|DRE8gL$XoI^M9Aga*}ccE^BzG-*H&*BDsD4W3o? z^|yi2vis0Yw2ZG}_&b-w-j~%Jgs)yeGL&AZ;JE7neDg#93}`K`#Ce<@Gk{mP~lQ=ioo{ z_gVhFJD*zqKSwfYBJ*#z{M(;m{?8(>@E-H;u>3nL|BW^@P@3#E!?vg*tKi@%KY5y+#PyU$y{3H^vq?I49KTN>-!2bNH)qfy~1k8Ly_W+T_ z$+I6>{@`m&>8{zdXLrkgy-T^3>2Nmx3%caL{U(=k;h9ff|4S`@mVS@j;qvczUFZDn zX%Gxr{&XtL$*;H+yD|kcAJf04Oa9lM<`}R4m-PQ!6hz)(nR1=$bNMgNRG7KdvCFWy z7IXJA9rgj!rxyS#OH$-#>K~D>o$BA{cllqF5y08{wX!aMdeJ)CG07yokk+(M()iwh zc1Ie2T0naujXyo0osh<#5m5i9@lOk=*VFhuudmbiGXv`3H2&#czozlO5*+AHVjSEX zoE1aR2&F$B{uY5ewp`X-GBciq{aL@C@GJTsu4NIvWho)u93 zr}57YDA&{Y=Ri*PCs7Lb2G0#Bhm#L`gXaa5uW9^_fO0d9KQDRf;oji+9!>(ifmqY+ zzuq7#MO~WS;Dzmpf$0ri)CK>mUGV*Fc$p{LFz&~0NM86KQM^^moDk2Jk%{ z#$_MyQhqH{{!zow^D2@H^38 zMw;%j@_*VT{aLVgI`Pj-fbZ1K*LF!i*#*A@{LT*jy}3*J_jkd6vc=c5Bz~H>1Vp&ujzt6)dhcN7yKuI@5F}>c1i!uF8DJL-|0k$ z^Sa;%y5J9V!G~S&t6lK#0$#@J&JU(%>woH!{$s$4O_Tk7zDxRVcfp?y$D|XVp9g#= z`t0w5zg){{=eNl&*kAaTt>FAj@$G&`5B#%E z^m#V$o#=UCm-IM`7oQVZs^EJ%?!dO>N6GMUwFUXIF3xWR7)7rio{YwFQ(+Y03{#v& zh!c?IiG^8oATVqheFOP*iAb;NVJ}|B3In7Y8ocwO>vI?2riO z(yiivTKP(e9FvRh3@qX!c_o~aE1y-0Z1q6zaMESDnMxW(hw!!e(Fo`Eqp_~#1|J@q zI5;#GxlcDo;SfIEDk;LF!#;JfQI)R?;d`4wG;-zm&{2F%C3R$N`(d< zem1GYw@#D{@fUR5$BxtWF_(UbPlq*ef}%ezKXJ}u>hS(l>yk$;CNj8=J01dAJl71{ z=S8DjcoYYeayEf8WqO77jlA?B{>l8QgF1NC35rboEO)r#m%)5`G!ke(Fo`X~ESL9RsG-H@bO9M84PSHiNbO64NI%7 '/usr/bin/c99' # ,LD => 'gcc -Wl,-rpath=../bin' ,CLEAN_AFTER_BUILD => 0 ,BUILD_NOISY => 1 ; my $tx = {}; -print "Answer:".domain(1)."\n"; use Inline C => <<'END_OF_C_CODE'; -/* + #include #include #include @@ -28,1662 +28,12 @@ #include #include #include -*/ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -// looking at this: -// https://github.com/MatthewLM/cbitcoin/blob/27f7a94cd5fe292877c9e0145cb50d1709a412d7/library/test/testCBAccounter.c -/* -int createtx(int arg) { + +int createTX(int arg){ CBTransaction * self = CBNewTransaction(0,1); CBFreeTransaction(self); return 1; } -*/ - - -enum{ - CREATING_BLOCKS, - RECEIVE_INITIAL_BLOCKS_AND_TXS, - CHAIN_REORGANISATION, - LOSE_CHAIN_AND_RELAY, - ORPHAN_TO_CHAIN -} testPhase = CREATING_BLOCKS; - -enum{ - NODE1_GOT = 1, - NODE2_GOT = 2, - NODE1_FORK = 4, - COMPLETE_RECEIVE_INITAL = 7 -} receiveInitialBlocksAndTxs = 0; - -enum{ - NODE0_REORG = 1, - NODE1_REORG = 2, - NODE2_REORG = 4, - COMPLETE_CHAIN_REORGANISATION = 7 -} chainReorg = 0; - -int gotTxNum = 0; -int doubleSpendNum = 0; -int confirmedNum = 0; -int unconfirmedNum = 0; - -bool nodeOwns[3][14] = { - {0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1}, - {1, 0, 0, 1, 1, 1, 0, 1, 1, 0, 0, 1, 1, 0}, - {0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1}, -}; - -CBNodeFull * nodes[3]; -CBKeyPair keys[3]; -CBTransaction * initialTxs[14]; -CBTransaction * doubleSpends[6]; // Inc. dependants of double spend -CBTransaction * chainDoubleSpend; -CBTransaction * orphanSpendOtherBranch; - -CBBlock * lastInitialBlock; -CBByteArray * lastNode1BlockHash; -CBByteArray * reorgTestBlockHash; -CBDepObject testMutex; - -uint64_t CBGetMilliseconds(void){ - struct timeval tv; - gettimeofday(&tv, NULL); - return tv.tv_sec * 1000 + tv.tv_usec / 1000; -} - -void onFatalNodeError(CBNode * node, CBErrorReason reason); -void onFatalNodeError(CBNode * node, CBErrorReason reason){ - CBLogError("ON FATAL NODE ERROR %u\n", reason); - exit(EXIT_FAILURE); -} - -void onBadTime(void * foo); -void onBadTime(void * foo){ - CBLogError("BAD TIME FAIL\n"); - exit(EXIT_FAILURE); -} - -void stop(void * comm); -void stop(void * comm){ - CBNetworkCommunicatorStop(comm); - CBReleaseObject(comm); -} - -void lockMessageProcessing(void); -void lockMessageProcessing() { - - for (uint8_t x = 0; x < 3; x++) - CBMutexLock(CBGetNode(nodes[x])->messageProcessMutex); - -} - -void unlockMessageProcessing(void); -void unlockMessageProcessing() { - - for (uint8_t x = 0; x < 3; x++) - CBMutexUnlock(CBGetNode(nodes[x])->messageProcessMutex); - -} - -pthread_mutex_t uptodateMutex[3] = {PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER}; -pthread_cond_t uptodateCond[3] = {PTHREAD_COND_INITIALIZER, PTHREAD_COND_INITIALIZER, PTHREAD_COND_INITIALIZER}; -bool uptodateBool[3] = {true, true, true}; - -void uptodate(CBNode * node, bool uptodate); -void uptodate(CBNode * node, bool uptodate){ - uint8_t x = 0; - for (; nodes[x] != CBGetNodeFull(node); x++); - pthread_mutex_lock(&uptodateMutex[x]); - uptodateBool[x] = uptodate; - if (uptodate) - pthread_cond_signal(&uptodateCond[x]); - pthread_mutex_unlock(&uptodateMutex[x]); -} -void waitForDownloadEnd(void); -void waitForDownloadEnd(void){ - // Wait for downloads to end before continuing with tests - for (uint8_t x = 0; x < 3; x++){ - pthread_mutex_lock(&uptodateMutex[x]); - if (!uptodateBool[x]) - // Still downloading - pthread_cond_wait(&uptodateCond[x], &uptodateMutex[x]); - pthread_mutex_unlock(&uptodateMutex[x]); - } -} - -void * maybeFinishOrphanTest(void * foo); -void * maybeFinishOrphanTest(void * foo) { - - if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 5 && doubleSpendNum == 2 && confirmedNum == 4) { - - lockMessageProcessing(); - - // Ensure validation is complete for second node, so that all double spends are processed - CBMutexLock(CBGetNode(nodes[1])->blockAndTxMutex); - CBMutexUnlock(CBGetNode(nodes[1])->blockAndTxMutex); - for (uint8_t x = 0; x < 3; x++) { - CBNodeFull * node = nodes[x]; - if (CBGetNetworkCommunicator(node)->blockHeight != 1004) { - CBLogError("OPRHAN TO CHAIN FINISH BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - for (uint8_t y = 4; y < 14; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); - if ((y == 4 && x == 2) || y == 5 || y == 7 || y == 11 || y == 13){ - if (fndTx != NULL) { - CBLogError("OPRHAN TO CHAIN CONFIRMED TX %u FOUND AS UNCONFIRMED NODE %u", y, x); - exit(EXIT_FAILURE); - } - continue; - } - if (fndTx == NULL) { - if (nodeOwns[x][y]) { - CBLogError("OPRHAN TO CHAIN UNCONFIRMED TX NOT FOUND"); - exit(EXIT_FAILURE); - } - break; - } - if (fndTx->utx.numUnconfDeps != (y == 11 || y == 13)) { - CBLogError("OPRHAN TO CHAIN FINISH NUM UNCONF DEPS FAIL\n"); - exit(EXIT_FAILURE); - } - if ((fndTx->utx.type == CB_TX_OTHER) == nodeOwns[x][y]) { - CBLogError("OPRHAN TO CHAIN FINISH OWNERSHIP FAIL\n"); - exit(EXIT_FAILURE); - } - } - for (uint8_t y = 0; y < 6; y++) { - if (CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])) != NULL) { - CBLogError("OPRHAN TO CHAIN FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); - exit(EXIT_FAILURE); - } - } - // Make sure orphan no longer exists as unconfirmed - if (CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(orphanSpendOtherBranch)) != NULL) { - CBLogError("OPRHAN TO CHAIN STILL UNCONFIRMED FAIL"); - exit(EXIT_FAILURE); - } - } - // Check accounter information (has all initial transactions except for 11 and 13, double spends and the orphan we added) Only bother with node 0 - CBDepObject cursor; - if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { - printf("CREATE CURSOR FAIL\n"); - exit(EXIT_FAILURE); - } - uint8_t zeroHash[20]; - memset(zeroHash, 0, 20); - uint64_t times[5]; - for (uint8_t x = 0; x < 5; x++) - CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); - checkTransactions(cursor, (CBTestTxDetails [13]){ - /* 0 */ {CBKeyPairGetHash(keys), 1003, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,0}, - /* 1 */ {CBKeyPairGetHash(keys), 1001, 312500000, 1231471166, CBTransactionGetHash(doubleSpends[0]),1562500000,0}, - /* 2 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[1]),1562500000,0}, - /* 3 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[2]),1562500000,0}, - /* 4 */ {CBKeyPairGetHash(keys), 1002, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1875000000,0}, - /* 5 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1875000000,0}, - /* 6 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1875000000,0}, - /* 7 */ {zeroHash, 1004, 0, 1231471169, CBTransactionGetHash(orphanSpendOtherBranch),1875000000,0}, - // Timestamps should be after the fixed timestamps. - /* 8 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),2187500000,312500000}, - /* 9 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1875000000,0}, - /* 10 */ {CBKeyPairGetHash(keys), 1002, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),2187500000,0}, - /* 11 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),2187500000,0}, - /* 12 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),2031250000,-156250000}, - }, 13); - int64_t ubalance; - uint64_t cbalance; - if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ - printf("GET UNCONF BALANCE FAIL\n"); - exit(EXIT_FAILURE); - } - if (ubalance != -156250000) { - printf("UNCONF BALANCE FAIL %" PRIi64 " != -156250000\n", ubalance); - exit(EXIT_FAILURE); - } - if (cbalance != 2031250000) { - printf("ALL BALANCE FAIL %" PRIu64 " != 312500000\n", cbalance); - exit(EXIT_FAILURE); - } - CBLogVerbose("OPRHAN TO CHAIN complete."); - // Disconnect nodes - CBLogVerbose("STOPPING NODES"); - CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[0])->eventLoop, stop, nodes[0], false); - CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[1])->eventLoop, stop, nodes[1], false); - CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[2])->eventLoop, stop, nodes[2], false); - - unlockMessageProcessing(); - - } - return NULL; -} - -void * maybeFinishLoseTest(void * foo); -void * maybeFinishLoseTest(void * foo) { - - if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 2 && doubleSpendNum == 4 && unconfirmedNum == 4 && confirmedNum == 2) { - - lockMessageProcessing(); - - // Make sure node 0 has processed tx 0, as it needs to be confirmed to ensure the number of unconf dependencies is OK for tx 4, ie. 0. - CBMutexLock(CBGetNode(nodes[0])->blockAndTxMutex); - CBMutexUnlock(CBGetNode(nodes[0])->blockAndTxMutex); - for (uint8_t x = 0; x < 3; x++) { - CBNodeFull * node = nodes[x]; - if (CBGetNetworkCommunicator(node)->blockHeight != 1003) { - CBLogError("LOSE CHAIN AND RELAY FINISH BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - for (uint8_t y = 4; y < 14; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); - if ((y == 4 && x == 2) || y == 5 || y == 7 || y == 11 || y == 13){ - if (fndTx != NULL) { - CBLogError("LOSE CHAIN AND RELAY CONFIRMED TX %u FOUND AS UNCONFIRMED NODE %u", y, x); - exit(EXIT_FAILURE); - } - continue; - } - if (fndTx == NULL) { - if (nodeOwns[x][y]) { - CBLogError("LOSE CHAIN AND RELAY UNCONFIRMED TX NOT FOUND"); - exit(EXIT_FAILURE); - } - break; - } - if (fndTx->utx.numUnconfDeps != (y == 11 || y == 13)) { - CBLogError("LOSE CHAIN AND RELAY FINISH NUM UNCONF DEPS FAIL NUM = %u Y = %u NODE = %u \n", fndTx->utx.numUnconfDeps, y, x); - exit(EXIT_FAILURE); - } - if ((fndTx->utx.type == CB_TX_OTHER) == nodeOwns[x][y]) { - CBLogError("LOSE CHAIN AND RELAY FINISH OWNERSHIP FAIL\n"); - exit(EXIT_FAILURE); - } - } - for (uint8_t y = 0; y < 6; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])); - if ((fndTx == NULL) == (y > 2)) { - CBLogError("LOSE CHAIN AND RELAY FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); - exit(EXIT_FAILURE); - } - if (fndTx != NULL){ - // These are the unconfirmed ones - if (fndTx->utx.numUnconfDeps != (y > 3)) { - CBLogError("LOSE CHAIN AND RELAY FINISH DOUBLE SPEND NUM UNCONF DEPS FAIL %u != %u > 3 (node = %u)\n", fndTx->utx.numUnconfDeps, y, x); - exit(EXIT_FAILURE); - } - if ((fndTx->utx.type == CB_TX_OTHER) != (x == 2 || (x == 1 && y > 3))) { - CBLogError("LOSE CHAIN AND RELAY FINISH DOUBLE SPEND OWNERSHIP FAIL\n"); - exit(EXIT_FAILURE); - } - } - } - } - // Check accounter information. Only bother with node 0 - CBDepObject cursor; - if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { - printf("LOSE CHAIN AND RELAY CREATE CURSOR FAIL\n"); - exit(EXIT_FAILURE); - } - uint8_t zeroHash[20]; - memset(zeroHash, 0, 20); - uint64_t times[5]; - for (uint8_t x = 0; x < 5; x++) - CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); - checkTransactions(cursor, (CBTestTxDetails [9]){ - /* 0 */ {CBKeyPairGetHash(keys), 1001, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,0}, - /* 1 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1562500000,312500000}, - /* 2 */ {zeroHash, CB_UNCONFIRMED, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1562500000,312500000}, - /* 3 */ {zeroHash, CB_UNCONFIRMED, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1562500000,312500000}, - /* 4 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),1875000000,625000000}, - /* 5 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1562500000,312500000}, - /* 6 */ {CBKeyPairGetHash(keys), 1003, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),1875000000,312500000}, - /* 7 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),1875000000,312500000}, - /* 8 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),1718750000,156250000}, - }, 9); - int64_t ubalance; - uint64_t cbalance; - if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ - printf("LOSE CHAIN AND RELAY GET UNCONF BALANCE FAIL\n"); - exit(EXIT_FAILURE); - } - if (ubalance != 156250000) { - printf("INITIAL UNCONF BALANCE FAIL %" PRIi64 " != 625000000\n", ubalance); - exit(EXIT_FAILURE); - } - if (cbalance != 1718750000) { - printf("INITIAL ALL BALANCE FAIL %" PRIu64 " != 1875000000\n", cbalance); - exit(EXIT_FAILURE); - } - unlockMessageProcessing(); - CBLogVerbose("LOSE_CHAIN_AND_RELAY complete."); - gotTxNum = 0; - chainReorg = 0; - confirmedNum = 0; - doubleSpendNum = 0; - waitForDownloadEnd(); - lockMessageProcessing(); - // Test giving orphan transaction to node 0, and then giving a false dependency. - CBTransaction * falseTx = CBNewTransaction(19, 1); - CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; - CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[0]), 32); - CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - CBScript * script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + 1)); - CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); - CBTransactionSignPubKeyHashInput(falseTx, keys + 1, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(falseTx); - CBTransactionSerialise(falseTx, true); - CBTransaction * orphan = CBNewTransaction(20, 1); - CBGetMessage(orphan)->type = CB_MESSAGE_TYPE_TX; - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[4]), 32); - CBTransactionTakeInput(orphan, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); - CBReleaseObject(prev); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(falseTx), 32); - CBTransactionTakeInput(orphan, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - CBTransactionTakeOutput(orphan, CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(orphan, keys, initialTxs[4]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionSignPubKeyHashInput(orphan, keys + 1, falseTx->outputs[0]->scriptObject, 1, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(orphan); - CBTransactionSerialise(orphan, true); - // Get some peer for node 0 - CBPosition pos; - CBAssociativeArrayGetFirst(&CBGetNetworkCommunicator(nodes[0])->addresses->peers, &pos); - CBPeer * peer = pos.node->elements[pos.index]; - if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, orphan) != CB_TRUE) { - CBLogError("PROCESS ORPHAN ERROR"); - exit(EXIT_FAILURE); - } - if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ - CBLogError("PROCESS FALSE TX ERROR"); - exit(EXIT_FAILURE); - } - // Test both transactions not being stored as they are invalid. - if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { - CBLogError("HAVE FALSE TX ERROR"); - exit(EXIT_FAILURE); - } - if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(orphan)) != NULL) { - CBLogError("HAVE ORPHAN TX ERROR"); - exit(EXIT_FAILURE); - } - CBReleaseObject(orphan); - CBReleaseObject(falseTx); - // Test processing transaction spending transaction (3) on the chain which has been spent on the chain (by 7) - falseTx = CBNewTransaction(21, 1); - CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[3]), 32); - CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); - CBTransactionSignPubKeyHashInput(falseTx, keys + 1, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(falseTx); - CBTransactionSerialise(falseTx, true); - if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ - CBLogError("PROCESS FALSE TX 2 ERROR"); - exit(EXIT_FAILURE); - } - if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { - CBLogError("HAVE FALSE TX 2 ERROR"); - exit(EXIT_FAILURE); - } - // Test a transaction which spends an output on the other branch. - orphanSpendOtherBranch = CBNewTransaction(21, 1); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(doubleSpends[2]), 32); - CBTransactionTakeInput(orphanSpendOtherBranch, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(orphanSpendOtherBranch, CBNewTransactionOutput(312500000, script)); - CBTransactionSignPubKeyHashInput(orphanSpendOtherBranch, keys, doubleSpends[2]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(orphanSpendOtherBranch); - CBTransactionSerialise(orphanSpendOtherBranch, true); - CBGetMessage(orphanSpendOtherBranch)->type = CB_MESSAGE_TYPE_TX; - if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, orphanSpendOtherBranch) != CB_TRUE){ - CBLogError("PROCESS TX SPENDING OTHER BRANCH ERROR"); - exit(EXIT_FAILURE); - } - // Check it is orphan - if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(orphanSpendOtherBranch))->type != CB_TX_ORPHAN) { - CBLogError("TX SPENDING OTHER BRANCH NOT ORPHAN"); - exit(EXIT_FAILURE); - } - // Now create reorg with the orphan on the other branch - testPhase = ORPHAN_TO_CHAIN; - CBBlock * block = CBNewBlock(); - block->prevBlockHash = reorgTestBlockHash; - block->time = 1231471168; - block->target = CB_MAX_TARGET; - block->nonce = 2573394689; - block->transactionNum = 3; - block->transactions = malloc(sizeof(*block->transactions) * 3); - // Coinbase - block->transactions[0] = CBNewTransaction(0, 1); - CBByteArray * nullHash = CBNewByteArrayOfSize(32); - memset(CBByteArrayGetData(nullHash), 0, 32); - script = CBNewScriptWithDataCopy((uint8_t []){0xdf,5}, 2); - CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block->transactions[0]); - CBTransactionSerialise(block->transactions[0], false); - // Add transactions 0 and 2 - block->transactions[1] = initialTxs[0]; - CBRetainObject(initialTxs[0]); - block->transactions[2] = initialTxs[2]; - CBRetainObject(initialTxs[2]); - CBBlockCalculateAndSetMerkleRoot(block); - CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); - CBBlockSerialise(block, true, false); - // Add to node 0 - nodes[0]->downloadingPeer = NULL; - CBValidatorQueueBlock(CBGetNode(nodes[0])->validator, block, nodes[0]); - // The next block will contain the orphan - CBBlock * block2 = CBNewBlock(); - block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - CBReleaseObject(block); - block2->time = 1231471169; - block2->target = CB_MAX_TARGET; - block2->nonce = 2573394690; - block2->transactionNum = 2; - block2->transactions = malloc(sizeof(*block2->transactions) * 2); - // Coinbase - block2->transactions[0] = CBNewTransaction(0, 1); - memset(CBByteArrayGetData(nullHash), 0, 32); - script = CBNewScriptWithDataCopy((uint8_t []){0xe0,5}, 2); - CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - CBReleaseObject(nullHash); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block2->transactions[0]); - CBTransactionSerialise(block2->transactions[0], false); - // Add orphan - block2->transactions[1] = orphanSpendOtherBranch; - CBRetainObject(orphanSpendOtherBranch); - CBBlockCalculateAndSetMerkleRoot(block2); - CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); - CBBlockSerialise(block2, true, true); - // Add to node 0 - CBValidatorQueueBlock(CBGetNode(nodes[0])->validator, block2, nodes[0]); - CBReleaseObject(block2); - - unlockMessageProcessing(); - - } - return NULL; -} - -void * maybeFinishReorgTest(void * foo); -void * maybeFinishReorgTest(void * foo) { - if (chainReorg == COMPLETE_CHAIN_REORGANISATION && gotTxNum == 8 && doubleSpendNum == 4 && confirmedNum == 4 && unconfirmedNum == 2) { - - lockMessageProcessing(); - - for (uint8_t x = 0; x < 3; x++) { - CBNodeFull * node = nodes[x]; - if (CBGetNetworkCommunicator(node)->blockHeight != 1002) { - CBLogError("CHAIN REORGANISATION FINISH BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - for (uint8_t y = 0; y < 14; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); - if (y == 1 || y == 3 || y == 5 || y == 7 || y == 11 || y == 13) { - if (fndTx != NULL) { - CBLogError("CHAIN REORGANISATION CONFIRMED TX FOUND AS UNCONFIRMED"); - exit(EXIT_FAILURE); - } - continue; - } - if (fndTx == NULL) { - if (nodeOwns[x][y]) { - CBLogError("CHAIN REORGANISATION UNCONFIRMED TX NOT FOUND"); - exit(EXIT_FAILURE); - } - continue; - } - if (fndTx->utx.numUnconfDeps != (y % 2 == 0 && y > 3) + (y == 11 || y == 13)) { - CBLogError("CHAIN REORGANISATION FINISH NUM UNCONF DEPS FAIL\n"); - exit(EXIT_FAILURE); - } - if ((fndTx->utx.type == CB_TX_OURS) != nodeOwns[x][y]) { - CBLogError("CHAIN REORGANISATION FINISH OWNERSHIP FAIL\n"); - exit(EXIT_FAILURE); - } - } - for (uint8_t y = 0; y < 6; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(doubleSpends[y])); - if (fndTx != NULL) { - CBLogError("CHAIN REORGANISATION FINISH TX DOUBLE SPEND IS UNCONFIRMED FAIL\n"); - exit(EXIT_FAILURE); - } - } - } - // Check accounter information (has all initial transactions except for 11 and 13 and double spends) Only bother with node 0 - CBDepObject cursor; - if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { - printf("CHAIN REORGANISATION CREATE CURSOR FAIL\n"); - exit(EXIT_FAILURE); - } - uint8_t zeroHash[20]; - memset(zeroHash, 0, 20); - uint64_t times[5]; - for (uint8_t x = 0; x < 5; x++) - CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12}[x]]), times + x); - checkTransactions(cursor, (CBTestTxDetails [12]){ - /* 0 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]),1250000000,1250000000}, - /* 1 */ {CBKeyPairGetHash(keys), 1001, 312500000, 1231471166, CBTransactionGetHash(doubleSpends[0]),1562500000,1250000000}, - /* 2 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[1]),1562500000,1250000000}, - /* 3 */ {zeroHash, 1001, 0, 1231471166, CBTransactionGetHash(doubleSpends[2]),1562500000,1250000000}, - /* 4 */ {CBKeyPairGetHash(keys), 1002, 312500000, 1231471167, CBTransactionGetHash(doubleSpends[3]),1875000000,1250000000}, - /* 5 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[4]),1875000000,1250000000}, - /* 6 */ {zeroHash, 1002, 0, 1231471167, CBTransactionGetHash(doubleSpends[5]),1875000000,1250000000}, - // Timestamps should be after the fixed timestamps. - /* 7 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]),2187500000,1562500000}, - /* 8 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]),1875000000,1250000000}, - /* 9 */ {CBKeyPairGetHash(keys), 1002, 312500000, times[2], CBTransactionGetHash(initialTxs[7]),2187500000,1250000000}, - /* 10 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]),2187500000,1250000000}, - /* 11 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]),2031250000,1093750000}, - }, 12); - int64_t ubalance; - uint64_t cbalance; - if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)) { - printf("CHAIN REORGANISATION GET CONF BALANCE FAIL\n"); - exit(EXIT_FAILURE); - } - if (ubalance != 1093750000) { - printf("CHAIN REORGANISATION UNCONF BALANCE FAIL %" PRIi64 " != 1093750000\n", ubalance); - exit(EXIT_FAILURE); - } - if (cbalance != 2031250000) { - printf("CHAIN REORGANISATION ALL BALANCE FAIL %" PRIu64 " != 2031250000\n", cbalance); - exit(EXIT_FAILURE); - } - - unlockMessageProcessing(); - - CBLogVerbose("CHAIN_REORGANISATION complete."); - testPhase = LOSE_CHAIN_AND_RELAY; - chainReorg = 0; - gotTxNum = 0; - unconfirmedNum = 0; - confirmedNum = 0; - doubleSpendNum = 0; - - waitForDownloadEnd(); - lockMessageProcessing(); - - // Test double spending one of the transactions on the chain with two dependants on the chain. - // Test unconfirming a transaction with two dependants, and that are not dependencies of any unconfirmed transactions - // Test re-relaying unconfirmed transactions and losing some due to oldness. - // Relay transaction 8 again - CBFoundTransaction * tx8 = CBNodeFullGetFoundTransaction(nodes[2], CBTransactionGetHash(initialTxs[8])); - tx8->nextRelay = CBGetMilliseconds() - 1; - // Lose tx 4 to oldness - CBFoundTransaction * tx4 = CBNodeFullGetFoundTransaction(nodes[2], CBTransactionGetHash(initialTxs[4])); - tx4->timeFound = CBGetMilliseconds() - 7200001; - // First block - CBBlock * block = CBNewBlock(); - block->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(lastInitialBlock), 32); - block->time = 1231471166; - block->target = CB_MAX_TARGET; - block->nonce = 2573394689; - block->transactionNum = 2; - block->transactions = malloc(sizeof(*block->transactions) * 2); - // Coinbase - block->transactions[0] = CBNewTransaction(0, 1); - CBByteArray * nullHash = CBNewByteArrayOfSize(32); - memset(CBByteArrayGetData(nullHash), 0, 32); - CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0xdd,5}, 2); - CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block->transactions[0]); - CBTransactionSerialise(block->transactions[0], false); - // Double spend the first double spend on the other chain - block->transactions[1] = CBNewTransaction(14, 1); - CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[1]), 32); - CBTransactionTakeInput(block->transactions[1], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 2)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + 1)); // This transaction differs by giving to node 1 - CBTransactionTakeOutput(block->transactions[1], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(block->transactions[1], keys + 2, initialTxs[1]->outputs[3]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(block->transactions[1]); - CBTransactionSerialise(block->transactions[1], true); - chainDoubleSpend = block->transactions[1]; - CBRetainObject(chainDoubleSpend); - CBBlockCalculateAndSetMerkleRoot(block); - CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); - CBBlockSerialise(block, true, false); - // Add to node 2 - nodes[2]->downloadingPeer = NULL; - CBValidatorQueueBlock(CBGetNode(nodes[2])->validator, block, nodes[2]); - // The next block will contain all the other transactions except those of the second double spend in the last test - CBBlock * block2 = CBNewBlock(); - block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - CBReleaseObject(block); - block2->time = 1231471167; - block2->target = CB_MAX_TARGET; - block2->nonce = 2573394690; - block2->transactionNum = 3; - block2->transactions = malloc(sizeof(*block2->transactions) * 3); - // Coinbase - block2->transactions[0] = CBNewTransaction(0, 1); - memset(CBByteArrayGetData(nullHash), 0, 32); - script = CBNewScriptWithDataCopy((uint8_t []){0xde,5}, 2); - CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - CBReleaseObject(nullHash); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block2->transactions[0]); - CBTransactionSerialise(block2->transactions[0], false); - // Transaction 5 - block2->transactions[1] = initialTxs[5]; - CBRetainObject(initialTxs[5]); - // Transaction 7 - block2->transactions[2] = initialTxs[7]; - CBRetainObject(initialTxs[7]); - CBBlockCalculateAndSetMerkleRoot(block2); - CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); - CBBlockSerialise(block2, true, true); - // Add to node 2 - CBValidatorQueueBlock(CBGetNode(nodes[2])->validator, block2, nodes[2]); - CBReleaseObject(block2); - - unlockMessageProcessing(); - - } - return NULL; -} - -void * finishReceiveInitialTest(void * foo); -void * finishReceiveInitialTest(void * foo) { - - // Ensure nodes finished processing transactions - for (uint8_t x = 0; x < 3; x++) { - CBMutexLock(CBGetNode(nodes[x])->blockAndTxMutex); - CBMutexUnlock(CBGetNode(nodes[x])->blockAndTxMutex); - } - - lockMessageProcessing(); - - // Transactions look like this - // [ Block ] - // --------------------- - // [ ] [#0 -> 0] - // [ #1 -> 1 ] [#4 -> 1] - // [ ] [#8 -> 2] - // --------------------- - // [ ] [#1 -> 1] - // [ #2 -> 2 ] [#5 -> 2] -> #7,#9 - // [ ] [#9 -> 0] - // --------------------- - // [ ] [#2 -> 2] - // [ #3 -> 0 ] [#6 -> 0] - // [ ] - // --------------------- - // [ ] [#3 -> 0] -> #6,#8 - // [ #4 -> 1 ] [#7 -> 1] - // [ ] - for (uint8_t x = 0; x < 3; x++) { - CBNodeFull * node = nodes[x]; - if (CBGetNetworkCommunicator(node)->blockHeight != 1001) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - for (uint8_t y = 4; y < 14; y++) { - CBFoundTransaction * fndTx = CBNodeFullGetFoundTransaction(node, CBTransactionGetHash(initialTxs[y])); - if (fndTx == NULL) { - if (nodeOwns[x][y]) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH NOT FOUND"); - exit(EXIT_FAILURE); - } - continue; - } - if ((y >= 10) != (fndTx->utx.numUnconfDeps != 0)) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH NUM UNCONF DEPS FAIL\n"); - exit(EXIT_FAILURE); - } - if ((fndTx->utx.type == CB_TX_OURS) != nodeOwns[x][y]) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS FINISH OWNERSHIP FAIL\n"); - exit(EXIT_FAILURE); - } - } - } - // Check accounter information. Only bother with node 0 - CBDepObject cursor; - if (! CBNewAccounterStorageTransactionCursor(&cursor, CBGetNode(nodes[0])->accounterStorage, 1, 0, UINT64_MAX)) { - printf("INITIAL CREATE CURSOR FAIL\n"); - exit(EXIT_FAILURE); - } - uint8_t zeroHash[20]; - memset(zeroHash, 0, 20); - uint64_t times[6]; - for (uint8_t x = 0; x < 6; x++) - CBAccounterGetTransactionTime(CBGetNode(nodes[0])->accounterStorage, CBTransactionGetHash(initialTxs[(int []){4,6,7,10,12,13}[x]]), times + x); - checkTransactions(cursor, (CBTestTxDetails [7]){ - /* 0 */ {CBKeyPairGetHash(keys), 1001, 1250000000, 1231471165, CBTransactionGetHash(initialTxs[2]), 1250000000,0}, - /* 1 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[0], CBTransactionGetHash(initialTxs[4]), 1562500000,312500000}, - /* 2 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -312500000, times[1], CBTransactionGetHash(initialTxs[6]), 1250000000,0}, - /* 3 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 312500000, times[2], CBTransactionGetHash(initialTxs[7]), 1562500000,312500000}, - /* 4 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 0, times[3], CBTransactionGetHash(initialTxs[10]), 1562500000,312500000}, - /* 5 */ {CBKeyPairGetHash(keys + 2), CB_UNCONFIRMED, -156250000, times[4], CBTransactionGetHash(initialTxs[12]), 1406250000, 156250000}, - /* 6 */ {CBKeyPairGetHash(keys), CB_UNCONFIRMED, 468750000, times[5], CBTransactionGetHash(initialTxs[13]),1875000000,625000000}, - }, 7); - int64_t ubalance; - uint64_t cbalance; - if (! CBAccounterGetAccountBalance(CBGetNode(nodes[0])->accounterStorage, 1, &cbalance, &ubalance)){ - printf("INITIAL GET UNCONF BALANCE FAIL\n"); - exit(EXIT_FAILURE); - } - if (ubalance != 625000000) { - printf("INITIAL UNCONF BALANCE FAIL %" PRIi64 " != 625000000\n", ubalance); - exit(EXIT_FAILURE); - } - if (cbalance != 1875000000) { - printf("INITIAL ALL BALANCE FAIL %" PRIu64 " != 1875000000\n", cbalance); - exit(EXIT_FAILURE); - } - - unlockMessageProcessing(); - - CBLogVerbose("RECEIVE INITIAL BLOCKS complete."); - - waitForDownloadEnd(); - lockMessageProcessing(); - - // Test processing transaction spending unconf transaction which has been spent - CBTransaction * falseTx = CBNewTransaction(22, 1); - CBGetMessage(falseTx)->type = CB_MESSAGE_TYPE_TX; - CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[9]), 32); - CBTransactionTakeInput(falseTx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - CBScript * script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(falseTx, CBNewTransactionOutput(312500000, script)); - CBTransactionSignPubKeyHashInput(falseTx, keys, initialTxs[0]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(falseTx); - CBTransactionSerialise(falseTx, true); - // Get some peer for node 0 - CBPosition pos; - CBAssociativeArrayGetFirst(&CBGetNetworkCommunicator(nodes[0])->addresses->peers, &pos); - CBPeer * peer = pos.node->elements[pos.index]; - if (CBNodeFullNewUnconfirmedTransaction(nodes[0], peer, falseTx) != CB_TRUE){ - CBLogError("PROCESS FALSE TX 3 ERROR"); - exit(EXIT_FAILURE); - } - if (CBNodeFullGetAnyTransaction(nodes[0], CBTransactionGetHash(falseTx)) != NULL) { - CBLogError("HAVE FALSE TX 3 ERROR"); - exit(EXIT_FAILURE); - } - // Test adding blocks to the smaller chain on 45563 for fork. - // For first block - // Add transaction 1 and 5 - // Add double spend of 13 - // For the second - // Add transaction 3 and 7 - // Add double spend of 11 - testPhase = CHAIN_REORGANISATION; - gotTxNum = 0; - CBBlock * block = CBNewBlock(); - block->prevBlockHash = lastNode1BlockHash; - block->time = 1231471166; - block->target = CB_MAX_TARGET; - block->nonce = 2573394689; - block->transactionNum = 6; - block->transactions = malloc(sizeof(*block->transactions) * 6); - // Coinbase - block->transactions[0] = CBNewTransaction(0, 1); - CBByteArray * nullHash = CBNewByteArrayOfSize(32); - memset(CBByteArrayGetData(nullHash), 0, 32); - script = CBNewScriptWithDataCopy((uint8_t []){0xdc,5}, 2); - CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block->transactions[0]); - CBTransactionSerialise(block->transactions[0], false); - // Transaction 1 - block->transactions[1] = initialTxs[1]; - CBRetainObject(initialTxs[1]); - // Transaction 5 - block->transactions[2] = initialTxs[5]; - CBRetainObject(initialTxs[5]); - // Double spend of 13 - block->transactions[3] = CBNewTransaction(14, 1); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[1]), 32); - CBTransactionTakeInput(block->transactions[3], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 2)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(block->transactions[3], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(block->transactions[3], keys + 2, initialTxs[1]->outputs[3]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(block->transactions[3]); - CBTransactionSerialise(block->transactions[3], true); - doubleSpends[0] = block->transactions[3]; - CBRetainObject(doubleSpends[0]); - // Now give two dependants to the double spend of 13 - for (uint8_t x = 0; x < 2; x++) { - block->transactions[4 + x] = CBNewTransaction(15 + x, 1); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[3 + x]), 32); - CBTransactionTakeInput(block->transactions[4 + x], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(block->transactions[4 + x], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(block->transactions[4 + x], keys, block->transactions[3 + x]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(block->transactions[4 + x]); - CBTransactionSerialise(block->transactions[4 + x], true); - doubleSpends[1 + x] = block->transactions[4 + x]; - CBRetainObject(doubleSpends[1 + x]); - } - CBBlockCalculateAndSetMerkleRoot(block); - CBGetMessage(block)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block, true)); - CBBlockSerialise(block, true, false); - // Second block - CBBlock * block2 = CBNewBlock(); - block2->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - block2->time = 1231471167; - block2->target = CB_MAX_TARGET; - block2->nonce = 2573394690; - block2->transactionNum = 6; - block2->transactions = malloc(sizeof(*block2->transactions) * 6); - // Coinbase - block2->transactions[0] = CBNewTransaction(0, 1); - memset(CBByteArrayGetData(nullHash), 0, 32); - script = CBNewScriptWithDataCopy((uint8_t []){0xdd,5}, 2); - CBTransactionTakeInput(block2->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - CBReleaseObject(nullHash); - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block2->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block2->transactions[0]); - CBTransactionSerialise(block2->transactions[0], false); - // Transaction 3 - block2->transactions[1] = initialTxs[3]; - CBRetainObject(initialTxs[1]); - // Transaction 7 - block2->transactions[2] = initialTxs[7]; - CBRetainObject(initialTxs[7]); - // Double spend of 11 - block2->transactions[3] = CBNewTransaction(17, 1); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(initialTxs[3]), 32); - CBTransactionTakeInput(block2->transactions[3], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 1)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(block2->transactions[3], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(block2->transactions[3], keys + 1, initialTxs[3]->outputs[1]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(block2->transactions[3]); - CBTransactionSerialise(block2->transactions[3], true); - doubleSpends[3] = block2->transactions[3]; - CBRetainObject(doubleSpends[3]); - // Now give two dependants to the double spend of 11 - for (uint8_t x = 0; x < 2; x++) { - block2->transactions[4 + x] = CBNewTransaction(18 + x, 1); - prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block2->transactions[3 + x]), 32); - CBTransactionTakeInput(block2->transactions[4 + x], CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, 0)); - CBReleaseObject(prev); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys)); - CBTransactionTakeOutput(block2->transactions[4 + x], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionSignPubKeyHashInput(block2->transactions[4 + x], keys, block2->transactions[3 + x]->outputs[0]->scriptObject, 0, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(block2->transactions[4 + x]); - CBTransactionSerialise(block2->transactions[4 + x], true); - doubleSpends[4 + x] = block2->transactions[4 + x]; - CBRetainObject(doubleSpends[4 + x]); - } - CBBlockCalculateAndSetMerkleRoot(block2); - CBGetMessage(block2)->bytes = CBNewByteArrayOfSize(CBBlockCalculateLength(block2, true)); - CBBlockSerialise(block2, true, true); - reorgTestBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block2), 32); - // Add blocks to node 1 - nodes[1]->downloadingPeer = NULL; - CBValidatorQueueBlock(CBGetNode(nodes[1])->validator, block, nodes[1]); - CBValidatorQueueBlock(CBGetNode(nodes[1])->validator, block2, nodes[1]); - CBReleaseObject(block); - CBReleaseObject(block2); - - unlockMessageProcessing(); - - return NULL; -} - -void newBlock(CBNode *, CBBlock * block, uint32_t forkPoint); -void newBlock(CBNode * node, CBBlock * block, uint32_t forkPoint){ - CBNodeFull * nodeFull = CBGetNodeFull(node); - uint32_t height = CBGetNetworkCommunicator(node)->blockHeight; - int nodeNum = (nodes[0] == nodeFull) ? 0 : ((nodes[1] == nodeFull)? 1 : 2); - CBMutexLock(testMutex); - if (testPhase == RECEIVE_INITIAL_BLOCKS_AND_TXS) { - if (nodeNum == 0) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK SENDING NODE\n"); - exit(EXIT_FAILURE); - } - if (forkPoint == 501) { - if (nodeNum == 0) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK FORK NOT IN NODE 1\n"); - exit(EXIT_FAILURE); - }else if (nodeNum == 1) - receiveInitialBlocksAndTxs |= NODE1_FORK; - // Node 2 might fork if got blocks from node 1 first - }else if (forkPoint != CB_NO_FORK) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK FORK FAIL NODE = %u POINT = %u\n",nodeNum,forkPoint); - exit(EXIT_FAILURE); - } - if (receiveInitialBlocksAndTxs & nodeNum) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK AFTER GOT INITAL BLOCKS\n"); - exit(EXIT_FAILURE); - } - if (height == 1001) { - if (nodeNum == 1) { - if (! (receiveInitialBlocksAndTxs | NODE1_FORK)) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW BLOCK NODE 1 GOT BEFORE FORK\n"); - exit(EXIT_FAILURE); - } - receiveInitialBlocksAndTxs |= NODE1_GOT; - }else - receiveInitialBlocksAndTxs |= NODE2_GOT; - } - }else if (testPhase == CHAIN_REORGANISATION) { - if (height != 1002) { - CBLogError("CHAIN REORGANISATION BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - if (forkPoint != 501) { - CBLogError("CHAIN REORGANISATION FORK POINT FAIL\n"); - exit(EXIT_FAILURE); - } - if (chainReorg & (1 << nodeNum)) { - CBLogError("CHAIN REORGANISATION NEW BLOCK AFTER GOT BLOCKS\n"); - exit(EXIT_FAILURE); - } - chainReorg |= 1 << nodeNum; - }else if (testPhase == LOSE_CHAIN_AND_RELAY) { - if (height != 1003) { - CBLogError("CHAIN REORGANISATION BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - if (forkPoint != 501) { - CBLogError("CHAIN REORGANISATION FORK POINT FAIL\n"); - exit(EXIT_FAILURE); - } - if (chainReorg & (1 << nodeNum)) { - CBLogError("CHAIN REORGANISATION NEW BLOCK AFTER GOT BLOCKS\n"); - exit(EXIT_FAILURE); - } - chainReorg |= 1 << nodeNum; - }else if (testPhase == ORPHAN_TO_CHAIN) { - if (height != 1004) { - CBLogError("ORPHAN TO CHAIN BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - if (forkPoint != 501) { - CBLogError("ORPHAN TO CHAIN FORK POINT FAIL\n"); - exit(EXIT_FAILURE); - } - if (chainReorg & (1 << nodeNum)) { - CBLogError("ORPHAN TO CHAIN NEW BLOCK AFTER GOT BLOCKS\n"); - exit(EXIT_FAILURE); - } - chainReorg |= 1 << nodeNum; - } - CBMutexUnlock(testMutex); -} - -void newTransaction(CBNode *, CBTransaction * tx, uint64_t timestamp, uint32_t blockHeight, CBTransactionAccountDetailList * details); -void newTransaction(CBNode * node, CBTransaction * tx, uint64_t timestamp, uint32_t blockHeight, CBTransactionAccountDetailList * details){ - pthread_t thread; - CBNodeFull * nodeFull = CBGetNodeFull(node); - int nodeNum = (nodes[0] == nodeFull) ? 0 : ((nodes[1] == nodeFull)? 1 : 2); - CBMutexLock(testMutex); - if (details->accountID != 1){ - CBLogError("NEW TX BAD ACCOUNT ID NUM\n"); - exit(EXIT_FAILURE); - } - if (testPhase == RECEIVE_INITIAL_BLOCKS_AND_TXS) { - if (gotTxNum == 15) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX TOO MANY TXS\n"); - exit(EXIT_FAILURE); - } - uint8_t txNum; - for (uint8_t x = 0;; x++) { - if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(initialTxs[x]), 32) == 0){ - txNum = x; - break; - } - if (x == 13) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX UNKNOWN TX\n"); - exit(EXIT_FAILURE); - } - } - if (txNum < 4) { - if (blockHeight != 1001) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BLOCKHEIGHT 1001 FAIL\n"); - exit(EXIT_FAILURE); - } - if (timestamp != 1231471165) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX TIMESTAMP 1231471165 FAIL\n"); - exit(EXIT_FAILURE); - } - // Should be got by node (txNum + 1) % 3 - uint8_t expectedNode = (txNum + 1) % 3; - if (nodeNum != expectedNode) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD NODE NUM\n", txNum); - exit(EXIT_FAILURE); - } - if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + nodeNum), 20)){ - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BAD ADDR HASH\n"); - exit(EXIT_FAILURE); - } - if (details->accountTxDetails.amount != 1250000000) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD AMOUNT\n", txNum); - exit(EXIT_FAILURE); - } - if (details->next != NULL) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u END FAIL\n", txNum); - exit(EXIT_FAILURE); - } - }else{ - if (blockHeight != CB_UNCONFIRMED) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX BLOCKHEIGHT UNCONF FAIL\n"); - exit(EXIT_FAILURE); - } - if (!nodeOwns[nodeNum][txNum]) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u DOESN'T OWN\n",txNum); - exit(EXIT_FAILURE); - } - uint8_t adjInd = txNum - 4; - bool takeInput = (adjInd % 4 + 1) % 3 == nodeNum; - bool gotOutput = adjInd % 3 == nodeNum; - bool secondInput = (adjInd >= 6)*(adjInd % 2)*2 == nodeNum; - if (details->accountTxDetails.amount - != -takeInput*312500000 - secondInput*156250000 + gotOutput*(312500000 + (adjInd >= 6)*156250000)) { - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD AMOUNT\n", txNum); - exit(EXIT_FAILURE); - } - if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + adjInd % 3), 20)){ - CBLogError("RECEIVE INITIAL BLOCKS AND TXS NEW TX %u BAD ADDR HASH\n",txNum); - exit(EXIT_FAILURE); - } - } - gotTxNum++; - if (gotTxNum == 15 && receiveInitialBlocksAndTxs == COMPLETE_RECEIVE_INITAL) - pthread_create(&thread, NULL, finishReceiveInitialTest, NULL); - }else if (testPhase == CHAIN_REORGANISATION) { - uint8_t txNum; - for (uint8_t x = 0;; x++) { - if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(doubleSpends[x]), 32) == 0) { - txNum = x; - break; - } - if (x == 5) { - CBLogError("CHAIN REORGANISATION NEW TX UNKNOWN TX\n"); - exit(EXIT_FAILURE); - } - } - if (blockHeight != 1001 + (txNum > 2)) { - CBLogError("CHAIN REORGANISATION NEW TX BLOCKHEIGHT 1001 FAIL\n"); - exit(EXIT_FAILURE); - } - if (timestamp != 1231471166 + (txNum > 2)) { - CBLogError("CHAIN REORGANISATION NEW TX TIMESTAMP FAIL\n"); - exit(EXIT_FAILURE); - } - // Node 1 has the second double spend, and node 2 the first only. The dependants are for node 0 - if ((txNum != 3 && nodeNum == 1) || (txNum != 0 && nodeNum == 2)) { - CBLogError("CHAIN REORGANISATION NEW TX %u BAD NODE NUM\n", txNum); - exit(EXIT_FAILURE); - } - // Addr is zero when transferring money to self. - if ((txNum % 3 == 0 && memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys), 20)) - || (txNum % 3 != 0 && memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20))){ - CBLogError("CHAIN REORGANISATION NEW TX %u BAD ADDR HASH\n", txNum); - exit(EXIT_FAILURE); - } - if (details->accountTxDetails.amount != (nodeNum == 1 || nodeNum == 2 ? -312500000 : (txNum % 3 == 0 ? 312500000 : 0))) { - CBLogError("CHAIN REORGANISATION NEW TX %u BAD AMOUNT\n", txNum); - exit(EXIT_FAILURE); - } - if (details->next != NULL) { - CBLogError("CHAIN REORGANISATION NEW TX %u END FAIL", txNum); - exit(EXIT_FAILURE); - } - gotTxNum++; - pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); - }else if (testPhase == LOSE_CHAIN_AND_RELAY) { - if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(chainDoubleSpend), 32)) { - CBLogError("LOSE CHAIN AND RELAY NEW TX HASH FAIL"); - exit(EXIT_FAILURE); - } - if (timestamp != 1231471166) { - CBLogError("LOSE CHAIN AND RELAY NEW TX TIMESTAMP FAIL\n"); - exit(EXIT_FAILURE); - } - if (nodeNum == 0) { - CBLogError("LOSE CHAIN AND RELAY NEW TX BAD NODE\n"); - exit(EXIT_FAILURE); - } - if (memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys + 1), 20)) { - CBLogError("LOSE CHAIN AND RELAY NEW TX BAD ADDR HASH\n"); - exit(EXIT_FAILURE); - } - if (details->accountTxDetails.amount != (nodeNum == 2 ? -312500000 : 312500000)) { - CBLogError("LOSE CHAIN AND RELAY NEW TX BAD AMOUNT\n"); - exit(EXIT_FAILURE); - } - if (details->next != NULL) { - CBLogError("LOSE CHAIN AND RELAY NEW TX END FAIL"); - exit(EXIT_FAILURE); - } - gotTxNum++; - pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); - }else if (testPhase == ORPHAN_TO_CHAIN){ - for (uint8_t x = 0;; x++) { - if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(doubleSpends[x]), 32) == 0) { - if (blockHeight != 1001) { - CBLogError("ORPHAN TO CHAIN NEW TX BLOCKHEIGHT 1001 FAIL\n"); - exit(EXIT_FAILURE); - } - if (timestamp != 1231471166) { - CBLogError("ORPHAN TO CHAIN NEW TX TIMESTAMP FAIL\n"); - exit(EXIT_FAILURE); - } - // Node 1 has the second double spend, and node 2 the first only. The dependants are for node 0 - if (nodeNum == 1 || (x != 0 && nodeNum == 2)) { - CBLogError("ORPHAN TO CHAIN NEW TX %u BAD NODE NUM\n", x); - exit(EXIT_FAILURE); - } - // Addr is zero when transferring money to self. - if ((x == 0 && memcmp(details->accountTxDetails.addrHash, CBKeyPairGetHash(keys), 20)) - || (x != 0 && memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20))){ - CBLogError("ORPHAN TO CHAIN NEW TX %u BAD ADDR HASH\n", x); - exit(EXIT_FAILURE); - } - if (details->accountTxDetails.amount != (nodeNum == 2 ? -312500000 : (x == 0 ? 312500000 : 0))) { - CBLogError("ORPHAN TO CHAIN NEW TX %u BAD AMOUNT\n", x); - exit(EXIT_FAILURE); - } - break; - } - if (x == 2) { - if (memcmp(CBTransactionGetHash(tx), CBTransactionGetHash(orphanSpendOtherBranch), 32)) { - CBLogError("ORPHAN TO CHAIN NEW TX UNKNOWN TX\n"); - exit(EXIT_FAILURE); - } - if (blockHeight != 1004) { - CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BLOCKHEIGHT 1001 FAIL\n"); - exit(EXIT_FAILURE); - } - if (timestamp != 1231471169) { - CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN TIMESTAMP FAIL\n"); - exit(EXIT_FAILURE); - } - if (nodeNum != 0) { - CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BAD NODE NUM\n"); - exit(EXIT_FAILURE); - } - // Addr is zero when transferring money to self. - if (memcmp(details->accountTxDetails.addrHash, (uint8_t [20]){0}, 20)){ - CBLogError("ORPHAN TO CHAIN NEW TX ORPHAN BAD ADDR HASH\n"); - exit(EXIT_FAILURE); - } - if (details->accountTxDetails.amount != 0) { - CBLogError("ORPHAN TO CHAIN NEW TX OPRHAN BAD AMOUNT\n"); - exit(EXIT_FAILURE); - } - break; - } - } - if (details->next != NULL) { - CBLogError("ORPHAN TO CHAIN NEW TX END FAIL"); - exit(EXIT_FAILURE); - } - gotTxNum++; - pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); - } - CBMutexUnlock(testMutex); -} - -void transactionConfirmed(CBNode *, uint8_t * txHash, uint32_t blockHeight); -void transactionConfirmed(CBNode * node, uint8_t * txHash, uint32_t blockHeight){ - pthread_t thread; - CBMutexLock(testMutex); - if (testPhase == CHAIN_REORGANISATION) { - if (blockHeight == 1001) { - if (nodes[0] == CBGetNodeFull(node)) { - CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1001 NODE FAIL\n"); - exit(EXIT_FAILURE); - } - if (memcmp(txHash, CBTransactionGetHash(initialTxs[5]), 32) != 0) { - CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1001 HASH FAIL\n"); - exit(EXIT_FAILURE); - } - }else if (blockHeight == 1002){ - if (nodes[2] == CBGetNodeFull(node)) { - CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1002 NODE FAIL\n"); - exit(EXIT_FAILURE); - } - if (memcmp(txHash, CBTransactionGetHash(initialTxs[7]), 32) != 0) { - CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK 1002 HASH FAIL\n"); - exit(EXIT_FAILURE); - } - }else{ - CBLogError("CHAIN REORGANISATION TX CONFIRMED BLOCK HEIGHT FAIL\n"); - exit(EXIT_FAILURE); - } - confirmedNum++; - pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); - }else if (testPhase == LOSE_CHAIN_AND_RELAY){ - for (uint8_t x = 0;; x += 2) { // tx 0 and 2 are reconfirmed - if (memcmp(txHash, CBTransactionGetHash(initialTxs[x]), 32) == 0) - break; - if (x == 2) { - CBLogError("LOSE CHAIN AND RELAY TX CONFIRMED BAD HASH\n"); - exit(EXIT_FAILURE); - } - } - confirmedNum++; - pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); - }else if (testPhase == ORPHAN_TO_CHAIN){ - for (uint8_t x = 3;; x++) { - if (memcmp(txHash, CBTransactionGetHash(doubleSpends[x]), 32) == 0) { - if (nodes[0] != CBGetNodeFull(node) && (x != 3 || nodes[1] != CBGetNodeFull(node))) { - CBLogError("ORPHAN TO CHAIN TX CONFIRMED NODE NUM FAIL\n"); - exit(EXIT_FAILURE); - } - if (CBNodeFullGetFoundTransaction(CBGetNodeFull(node), CBTransactionGetHash(doubleSpends[x])) != NULL) { - CBLogError("OPRHAN TO CHAIN TX CONFIRMED STILL UNCONFIRMED FAIL\n"); - exit(EXIT_FAILURE); - } - break; - } - if (x == 5) { - CBLogError("ORPHAN TO CHAIN TX CONFIRMED HASH FAIL\n"); - exit(EXIT_FAILURE); - } - } - confirmedNum++; - pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); - }else{ - CBLogError("TX CONFIRMED BAD TEST PHASE\n"); - exit(EXIT_FAILURE); - } - CBMutexUnlock(testMutex); -} - -void doubleSpend(CBNode *, uint8_t * txHash); -void doubleSpend(CBNode * node, uint8_t * txHash){ - pthread_t thread; - CBNodeFull * nodeFull = CBGetNodeFull(node); - int nodeNum = (nodes[0] == nodeFull)? 0 : ((nodes[1] == nodeFull)? 1 : 2); - CBMutexLock(testMutex); - if (testPhase == CHAIN_REORGANISATION) { - if ((memcmp(txHash, CBTransactionGetHash(initialTxs[11]), 32) != 0 || !nodeOwns[nodeNum][11]) - && (memcmp(txHash, CBTransactionGetHash(initialTxs[13]), 32) != 0 || !nodeOwns[nodeNum][13])) { - CBLogError("CHAIN REORGANISATION TX DOUBLE SPEND HASH FAIL\n"); - exit(EXIT_FAILURE); - } - doubleSpendNum++; - pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); - }else if (testPhase == LOSE_CHAIN_AND_RELAY){ - for (uint8_t x = 0;; x++) { - if (memcmp(txHash, CBTransactionGetHash(doubleSpends[x]), 32) == 0) { - if ((nodeNum == 2 && x != 0) || nodeNum == 1) { - CBLogError("LOSE CHAIN AND RELAY TX DOUBLE SPEND NODE NUM FAIL\n"); - exit(EXIT_FAILURE); - } - break; - } - if (x == 2) { - CBLogError("LOSE CHAIN AND RELAY TX DOUBLE SPEND HASH FAIL\n"); - exit(EXIT_FAILURE); - } - } - doubleSpendNum++; - pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); - }else if (testPhase == ORPHAN_TO_CHAIN){ - if (memcmp(txHash, CBTransactionGetHash(chainDoubleSpend), 32) != 0) { - CBLogError("OPRHAN TO CHAIN TX DOUBLE SPEND HASH FAIL\n"); - exit(EXIT_FAILURE); - } - if (nodeNum == 0) { - CBLogError("OPRHAN TO CHAIN TX DOUBLE SPEND BAD NODE\n"); - exit(EXIT_FAILURE); - } - doubleSpendNum++; - pthread_create(&thread, NULL, maybeFinishOrphanTest, NULL); - }else{ - CBLogError("DOUBLE SPEND BAD TEST PHASE\n"); - exit(EXIT_FAILURE); - } - CBMutexUnlock(testMutex); -} - -void transactionUnconfirmed(CBNode *, uint8_t * txHash); -void transactionUnconfirmed(CBNode * node, uint8_t * txHash){ - pthread_t thread; - CBNodeFull * nodeFull = CBGetNodeFull(node); - int nodeNum = (nodes[0] == nodeFull)? 0 : ((nodes[1] == nodeFull)? 1 : 2); - CBMutexLock(testMutex); - if (testPhase == CHAIN_REORGANISATION) { - for (uint8_t x = 0;; x++) { - if (memcmp(txHash, CBTransactionGetHash(initialTxs[x]), 32) == 0){ - if (x == 1) { - CBLogError("CHAIN REORGANISATION TX UNCONFIRMED TX BAD TX 1\n"); - exit(EXIT_FAILURE); - } - if (nodeNum != (x + 1) % 3) { - CBLogError("CHAIN REORGANISATION NEW TX %u BAD NODE NUM\n", x); - exit(EXIT_FAILURE); - } - unconfirmedNum++; - pthread_create(&thread, NULL, maybeFinishReorgTest, NULL); - break; - } - if (x == 2) { - CBLogError("CHAIN REORGANISATION TX UNCONFIRMED UNKNOWN TX\n"); - exit(EXIT_FAILURE); - } - } - }else if (testPhase == LOSE_CHAIN_AND_RELAY){ - for (uint8_t x = 0;; x++) { - if (memcmp(txHash, CBTransactionGetHash(doubleSpends[3 + x]), 32) == 0) { - if ((nodeNum == 1 && x != 0) || nodeNum == 2) { - CBLogError("LOSE CHAIN AND RELAY TX UNCONFIRMED NODE NUM FAIL\n"); - exit(EXIT_FAILURE); - } - break; - } - if (x == 2) { - CBLogError("LOSE CHAIN AND RELAY TX UNCONFIRMED HASH FAIL\n"); - exit(EXIT_FAILURE); - } - } - unconfirmedNum++; - pthread_create(&thread, NULL, maybeFinishLoseTest, NULL); - }else{ - CBLogError("TX UNCONFIRMED BAD TEST PHASE\n"); - exit(EXIT_FAILURE); - } - CBMutexUnlock(testMutex); -} - -void CBNetworkCommunicatorTryConnectionsVoid(void * comm); -void CBNetworkCommunicatorTryConnectionsVoid(void * comm){ - CBNetworkCommunicatorTryConnections(comm, false); -} - -void CBNetworkCommunicatorStartListeningVoid(void * comm); -void CBNetworkCommunicatorStartListeningVoid(void * comm){ - CBNetworkCommunicatorStartListening(comm); -} - -int domain() { - - puts("You may need to move your mouse around if this test stalls."); - - CBNewMutex(&testMutex); - - // Create three nodes to talk to each other - CBDepObject databases[3]; - - CBNodeCallbacks callbacks = { - onFatalNodeError, - newBlock, - newTransaction, - transactionConfirmed, - doubleSpend, - transactionUnconfirmed, - uptodate - }; - - for (uint8_t x = 0; x < 3; x++) { - - char directory[5], filename[26]; - - sprintf(directory, "./%u", x); - mkdir(directory, S_IRWXU | S_IRWXG); - chmod(directory, S_IRWXU | S_IRWXG); - - // Delete data - sprintf(filename, "%s/cbitcoin/log.dat", directory); - remove(filename); - sprintf(filename, "%s/cbitcoin/del.dat", directory); - remove(filename); - sprintf(filename, "%s/cbitcoin/val_0.dat", directory); - remove(filename); - for (uint8_t y = 0; y < 19; y++) { - sprintf(filename, "%s/cbitcoin/idx_%u_0.dat", directory, y); - remove(filename); - } - - CBNewStorageDatabase(&databases[x], directory, 10000000, 10000000); - - nodes[x] = CBNewNodeFull(databases[x], CB_NODE_CHECK_STANDARD, 100000, callbacks); - - CBByteArray * loopBack = CBNewByteArrayWithDataCopy((uint8_t [16]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 127, 0, 0, 1}, 16); - CBNetworkAddress * addr = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45562 + x}, 0, false); - CBReleaseObject(loopBack); - - CBNetworkCommunicator * comm = CBGetNetworkCommunicator(nodes[x]); - comm->maxConnections = 3; - comm->maxIncommingConnections = 3; - comm->responseTimeOut = 5000; - - CBByteArray * userAgent = CBNewByteArrayFromString(CB_USER_AGENT_SEGMENT, false); - CBNetworkCommunicatorSetUserAgent(comm, userAgent); - CBReleaseObject(userAgent); - - CBNetworkCommunicatorSetOurIPv4(comm, addr); - CBNetworkCommunicatorSetReachability(comm, CB_IP_IP4 | CB_IP_LOCAL, true); - - // Disable POW check - CBGetNode(nodes[x])->validator->flags |= CB_VALIDATOR_DISABLE_POW_CHECK; - - // If debug, disable timeouts - #ifdef CBDEBUG - comm->connectionTimeOut = 0; - comm->recvTimeOut = 0; - comm->responseTimeOut = 0; - comm->sendTimeOut = 0; - comm->timeOut = 0; - #endif - } - - // Give node 0 the addresses for node 1 and 2 - CBByteArray * loopBack = CBNewByteArrayWithDataCopy((uint8_t [16]){0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0xFF, 0xFF, 127, 0, 0, 1}, 16); - CBNetworkAddress * addr = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45563}, 0, true); - CBNetworkAddress * addr2 = CBNewNetworkAddress(0, (CBSocketAddress){loopBack, 45564}, 0, true); - CBReleaseObject(loopBack); - - CBNetworkAddressManagerAddAddress(CBGetNetworkCommunicator(nodes[0])->addresses, addr); - CBNetworkAddressManagerAddAddress(CBGetNetworkCommunicator(nodes[0])->addresses, addr2); - - CBReleaseObject(addr); - CBReleaseObject(addr2); - - // Give 1001 blocks to node 0 with last block containing four transactions. Also give 500 of them to node 1 and then give 500 other blocks to node 1. - - CBBlock * block = CBNewBlock(); - - block->prevBlockHash = CBNewByteArrayWithDataCopy((uint8_t []){0x6F, 0xE2, 0x8C, 0x0A, 0xB6, 0xF1, 0xB3, 0x72, 0xC1, 0xA6, 0xA2, 0x46, 0xAE, 0x63, 0xF7, 0x4F, 0x93, 0x1E, 0x83, 0x65, 0xE1, 0x5A, 0x08, 0x9C, 0x68, 0xD6, 0x19, 0x00, 0x00, 0x00, 0x00, 0x00}, 32); - block->time = 1231469665; - block->target = CB_MAX_TARGET; - block->nonce = 2573394689; - block->transactionNum = 1; - block->transactions = malloc(sizeof(*block->transactions)); - block->transactions[0] = CBNewTransaction(0, 1); - - CBByteArray * nullHash = CBNewByteArrayOfSize(32); - memset(CBByteArrayGetData(nullHash), 0, 32); - CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0,0}, 2); - CBTransactionTakeInput(block->transactions[0], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, nullHash, 0xFFFFFFFF)); - CBReleaseObject(script); - CBReleaseObject(nullHash); - - script = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBTransactionTakeOutput(block->transactions[0], CBNewTransactionOutput(1250000000, script)); - CBReleaseObject(script); - - CBTransactionPrepareBytes(block->transactions[0]); - CBTransactionSerialise(block->transactions[0], false); - - CBBlockCalculateAndSetMerkleRoot(block); - CBBlockPrepareBytes(block, true); - CBBlockSerialise(block, true, false); - - // Add blocks - CBNodeFullAddBlockDirectly(nodes[0], block); - CBNodeFullAddBlockDirectly(nodes[1], block); - - CBByteArray * firstCoinbase = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[0]), 32); - - // Add 999 more - CBByteArray * prevToFork, * lastNode0BlockHash; - - for (uint16_t x = 0; x < 1499; x++) { - - if (x == 999) - block->prevBlockHash = prevToFork; - else - block->prevBlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - - block->time++; - CBByteArraySetInt16(block->transactions[0]->inputs[0]->scriptObject, 0, x + 1); - - CBTransactionSerialise(block->transactions[0], true); - CBBlockCalculateAndSetMerkleRoot(block); - CBBlockSerialise(block, true, true); - - if (x < 999) - CBNodeFullAddBlockDirectly(nodes[0], block); - - if (x < 499 || x >= 999){ - CBNodeFullAddBlockDirectly(nodes[1], block); - if (x == 498) - prevToFork = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - } - - if (x == 998) - lastNode0BlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - else if (x == 1498) - lastNode1BlockHash = CBNewByteArrayWithDataCopy(CBBlockGetHash(block), 32); - } - - // Create three keys and add watched hash to the accounters - for (uint8_t x = 0; x < 3; x++) { - CBInitKeyPair(keys + x); - CBKeyPairGenerate(keys + x); - CBAccounterAddWatchedOutputToAccount(CBGetNode(nodes[x])->accounterStorage, CBKeyPairGetHash(keys + x), CBAccounterNewAccount(CBGetNode(nodes[x])->accounterStorage)); - } - - // Add block with fours additional transactions for node 0 - block->prevBlockHash = lastNode0BlockHash; - block->time++; - CBByteArraySetInt16(block->transactions[0]->inputs[0]->scriptObject, 0, 1500); - - CBTransactionSerialise(block->transactions[0], true); - - block->transactions = realloc(block->transactions, sizeof(*block->transactions)*5); - block->transactionNum = 5; - - for (uint8_t x = 1; x < 5; x++) { - block->transactions[x] = CBNewTransaction(x-1, 1); - CBScript * script = CBNewScriptWithDataCopy((uint8_t []){0}, 1); - CBTransactionTakeInput(block->transactions[x], CBNewTransactionInput(script, CB_TX_INPUT_FINAL, firstCoinbase, x-1)); - CBReleaseObject(script); - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + x % 3)); - for (uint8_t y = 0; y < 4; y++) - CBTransactionTakeOutput(block->transactions[x], CBNewTransactionOutput(312500000, script)); - CBReleaseObject(script); - CBTransactionPrepareBytes(block->transactions[x]); - CBTransactionSerialise(block->transactions[x], true); - initialTxs[x-1] = block->transactions[x]; - CBRetainObject(block->transactions[x]); - } - - CBBlockCalculateAndSetMerkleRoot(block); - - CBBlockPrepareBytes(block, true); - CBBlockSerialise(block, true, true); - - CBNodeFullAddBlockDirectly(nodes[0], block); - - lastInitialBlock = block; - - // Broadcast transactions - - CBTransaction * deps[2]; - - for (uint8_t x = 0; x < 10; x++) { - CBTransaction * tx = CBNewTransaction(x+4, 1); - CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(block->transactions[x % 4 + 1]), 32); - CBTransactionTakeInput(tx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, x/4)); - CBReleaseObject(prev); - // Record one that will be lost and one that wont be lost - if (x == 3 || x == 5) - deps[x/2-1] = tx; - if (x >= 6){ - // Odd ones will be lost - CBByteArray * prev = CBNewByteArrayWithDataCopy(CBTransactionGetHash(deps[x % 2]), 32); - CBTransactionTakeInput(tx, CBNewTransactionInput(NULL, CB_TX_INPUT_FINAL, prev, (x-6)/2)); - CBReleaseObject(prev); - } - script = CBNewScriptPubKeyHashOutput(CBKeyPairGetHash(keys + x % 3)); - CBTransactionTakeOutput(tx, CBNewTransactionOutput(156250000 + (x >= 6)*156250000, script)); - CBTransactionTakeOutput(tx, CBNewTransactionOutput(156250000, script)); - CBReleaseObject(script); - // Sign transaction - CBTransactionSignPubKeyHashInput(tx, keys + (x % 4 + 1) % 3, block->transactions[x % 4 + 1]->outputs[x/4]->scriptObject, 0, CB_SIGHASH_ALL); - if (x >= 6) - CBTransactionSignPubKeyHashInput(tx, keys + (x % 2)*2, deps[x % 2]->outputs[(x-6)/2]->scriptObject, 1, CB_SIGHASH_ALL); - CBTransactionPrepareBytes(tx); - CBTransactionSerialise(tx, true); - CBNodeFullNewUnconfirmedTransaction(nodes[0], NULL, tx); - initialTxs[x+4] = tx; - } - - testPhase = RECEIVE_INITIAL_BLOCKS_AND_TXS; - - // Start nodes and listen on node 1 and 2 - for (uint8_t x = 3; x--;) { - - if (x > 0) - // Block, thus ensuring nodes are listening before we try to connect. - CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[x])->eventLoop, CBNetworkCommunicatorStartListeningVoid, nodes[x], true); - else - CBRunOnEventLoop(CBGetNetworkCommunicator(nodes[x])->eventLoop, CBNetworkCommunicatorTryConnectionsVoid, nodes[x], false); - - } - - CBThreadJoin(((CBEventLoop *)CBGetNetworkCommunicator(nodes[0])->eventLoop.ptr)->loopThread); - - return 1; -} END_OF_C_CODE From f9001433d2ad0565b0e931156153550991f3dd79 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 20:17:12 +0900 Subject: [PATCH 009/127] adding perl scripts --- library/test/testCBNodeFull.c | 2 +- library/test/testCBTransaction.c | 1 + scripts/.project | 17 + scripts/CB.pm.bk | 167 - scripts/CBHD/.project | 17 + scripts/{c2xs => CBHD}/CBHD.bs | 0 scripts/{c2xs => CBHD}/CBHD.c | 50 +- scripts/CBHD/CBHD.o | Bin 0 -> 135592 bytes scripts/CBHD/CBHD.pm | 121 + scripts/CBHD/CBHD.pm.real | 115 + scripts/{c2xs => CBHD}/CBHD.xs | 25 +- scripts/{c2xs => CBHD}/MYMETA.json | 2 +- scripts/{c2xs => CBHD}/MYMETA.yml | 2 +- scripts/CBHD/Makefile.PL | 25 + scripts/CBHD/Makefile.old | 735 ++ scripts/{c2xs => CBHD}/blib/arch/.exists | 0 .../blib/arch/auto/CBitcoin/CBHD/.exists | 0 .../CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so | Bin 0 -> 87701 bytes .../{c2xs => CBHD}/blib/lib/CBitcoin/.exists | 0 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm | 121 + .../blib/lib/CBitcoin/coinx2.pl | 0 .../blib/lib/auto/CBitcoin/CBHD/.exists | 0 scripts/{c2xs => CBHD}/blib/man1/.exists | 0 scripts/{c2xs => CBHD}/blib/man3/.exists | 0 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm | 134 + scripts/{c2xs => CBHD}/blib/script/.exists | 0 scripts/{c2xs => CBHD}/coinx2.pl | 2 +- .../pm_to_blib => CBHD/old-config/CBHD.bs} | 0 scripts/CBHD/old-config/CBHD.pm | 121 + scripts/CBHD/old-config/MYMETA.json | 39 + scripts/CBHD/old-config/MYMETA.yml | 21 + scripts/CBHD/old-config/Makefile.PL | 25 + scripts/CBHD/old-config/Makefile.old | 735 ++ .../CBitcoin => CBHD/old-config}/pm_to_blib | 0 .../blib/arch/.exists => CBHD/pm_to_blib} | 0 scripts/{c2xs => CBHD}/src/CBHD.c | 11 +- scripts/CBitcoin.pm | 159 - scripts/{module => }/CBitcoin/Changes | 4 +- scripts/{module => }/CBitcoin/MANIFEST | 2 - scripts/{module => }/CBitcoin/MYMETA.json | 2 +- scripts/{module => }/CBitcoin/MYMETA.yml | 2 +- scripts/{module => }/CBitcoin/Makefile.PL | 5 - scripts/{module => }/CBitcoin/README | 0 .../CBitcoin => CBitcoin/blib/arch}/.exists | 0 .../blib/arch/auto/CBitcoin}/.exists | 0 .../CBitcoin => CBitcoin/blib/lib}/.exists | 0 scripts/CBitcoin/blib/lib/CBitcoin.pm | 164 + .../blib/lib/auto/CBitcoin}/.exists | 0 .../blib/man3 => CBitcoin/blib/man1}/.exists | 0 .../script => CBitcoin/blib/man3}/.exists | 0 .../CBitcoin/blib/man3/CBitcoin.3pm | 31 +- scripts/CBitcoin/blib/script/.exists | 0 scripts/{module => }/CBitcoin/lib/CBitcoin.pm | 35 +- scripts/CBitcoin/pm_to_blib | 0 scripts/{module => }/CBitcoin/t/CBitcoin.t | 14 +- scripts/Script/MYMETA.json | 39 + scripts/Script/MYMETA.yml | 21 + scripts/Script/Makefile.PL | 25 + scripts/Script/Makefile.old | 735 ++ scripts/Script/Script.bs | 0 .../CBitcoin/CBitcoin.c => Script/Script.c} | 102 +- scripts/Script/Script.o | Bin 0 -> 77088 bytes scripts/Script/Script.pm | 22 + scripts/Script/Script.xs | 49 + scripts/Script/blib/arch/.exists | 0 .../blib/arch/auto/CBitcoin/Script/.exists | 0 .../blib/arch/auto/CBitcoin/Script/Script.so | Bin 0 -> 49246 bytes scripts/Script/blib/lib/CBitcoin/.exists | 0 scripts/Script/blib/lib/CBitcoin/Script.pm | 22 + scripts/Script/blib/lib/CBitcoin/coinx2.pl | 15 + .../blib/lib/auto/CBitcoin/Script/.exists | 0 scripts/Script/blib/man1/.exists | 0 scripts/Script/blib/man3/.exists | 0 scripts/Script/blib/script/.exists | 0 scripts/Script/coinx2.pl | 15 + scripts/Script/old-config/MYMETA.json | 39 + scripts/Script/old-config/MYMETA.yml | 21 + scripts/Script/old-config/Makefile.PL | 25 + scripts/Script/old-config/Makefile.old | 735 ++ scripts/Script/old-config/Script.bs | 0 scripts/Script/old-config/Script.pm | 22 + scripts/Script/old-config/pm_to_blib | 0 scripts/Script/pm_to_blib | 0 scripts/Script/src/Script.c | 31 + scripts/TransactionInput/Makefile.PL | 13 + scripts/TransactionInput/TransactionInput.pm | 20 + scripts/TransactionInput/TransactionInput.xs | 117 + scripts/TransactionInput/coinx2.pl | 15 + .../old-config/Makefile.PL.cbhd | 25 + .../TransactionInput/src/TransactionInput.c | 34 + ...fig-x86_64-linux-gnu-thread-multi-5.014002 | 14 - .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl | 22 - .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.so | Bin 55706 -> 0 bytes scripts/_Inline/lib/auto/FOO_2204/.packlist | 1 - .../_Inline/lib/auto/FOO_2204/FOO_2204.inl | 22 - scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so | Bin 190904 -> 0 bytes scripts/_Inline/lib/auto/FOO_2610/.packlist | 1 - .../_Inline/lib/auto/FOO_2610/FOO_2610.inl | 22 - scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so | Bin 49560 -> 0 bytes scripts/_Inline/lib/auto/FOO_2a81/.packlist | 1 - .../_Inline/lib/auto/FOO_2a81/FOO_2a81.inl | 22 - scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so | Bin 56145 -> 0 bytes scripts/_Inline/lib/auto/FOO_3688/.packlist | 1 - .../_Inline/lib/auto/FOO_3688/FOO_3688.inl | 22 - scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so | Bin 42766 -> 0 bytes scripts/_Inline/lib/auto/FOO_4bc7/.packlist | 1 - .../_Inline/lib/auto/FOO_4bc7/FOO_4bc7.inl | 22 - scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.so | Bin 190520 -> 0 bytes scripts/_Inline/lib/auto/FOO_4be1/.packlist | 1 - .../_Inline/lib/auto/FOO_4be1/FOO_4be1.inl | 22 - scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so | Bin 141717 -> 0 bytes scripts/_Inline/lib/auto/FOO_55bb/.packlist | 1 - .../_Inline/lib/auto/FOO_55bb/FOO_55bb.inl | 22 - scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so | Bin 42766 -> 0 bytes scripts/_Inline/lib/auto/FOO_63be/.packlist | 1 - .../_Inline/lib/auto/FOO_63be/FOO_63be.inl | 22 - scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so | Bin 190528 -> 0 bytes scripts/_Inline/lib/auto/FOO_6538/.packlist | 1 - .../_Inline/lib/auto/FOO_6538/FOO_6538.inl | 22 - scripts/_Inline/lib/auto/FOO_6538/FOO_6538.so | Bin 142923 -> 0 bytes scripts/_Inline/lib/auto/FOO_675c/.packlist | 1 - .../_Inline/lib/auto/FOO_675c/FOO_675c.inl | 22 - scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so | Bin 49278 -> 0 bytes scripts/_Inline/lib/auto/FOO_6938/.packlist | 1 - .../_Inline/lib/auto/FOO_6938/FOO_6938.inl | 22 - scripts/_Inline/lib/auto/FOO_6938/FOO_6938.so | Bin 49278 -> 0 bytes scripts/_Inline/lib/auto/FOO_8632/.packlist | 1 - .../_Inline/lib/auto/FOO_8632/FOO_8632.inl | 22 - scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so | Bin 42766 -> 0 bytes scripts/_Inline/lib/auto/FOO_8c0e/.packlist | 1 - .../_Inline/lib/auto/FOO_8c0e/FOO_8c0e.inl | 22 - scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.so | Bin 49544 -> 0 bytes scripts/_Inline/lib/auto/FOO_94f3/.packlist | 1 - .../_Inline/lib/auto/FOO_94f3/FOO_94f3.inl | 22 - scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.so | Bin 48965 -> 0 bytes scripts/_Inline/lib/auto/FOO_a221/.packlist | 1 - .../_Inline/lib/auto/FOO_a221/FOO_a221.inl | 22 - scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so | Bin 42766 -> 0 bytes scripts/_Inline/lib/auto/FOO_a2fb/.packlist | 1 - .../_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl | 22 - scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so | Bin 48965 -> 0 bytes scripts/_Inline/lib/auto/FOO_a4ed/.packlist | 1 - .../_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl | 22 - scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so | Bin 142459 -> 0 bytes scripts/_Inline/lib/auto/FOO_b0b4/.packlist | 1 - .../_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl | 22 - scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so | Bin 49560 -> 0 bytes scripts/_Inline/lib/auto/FOO_c054/.packlist | 1 - .../_Inline/lib/auto/FOO_c054/FOO_c054.inl | 22 - scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so | Bin 141717 -> 0 bytes scripts/_Inline/lib/auto/FOO_c629/.packlist | 1 - .../_Inline/lib/auto/FOO_c629/FOO_c629.inl | 22 - scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so | Bin 47077 -> 0 bytes scripts/_Inline/lib/auto/FOO_d162/.packlist | 1 - .../_Inline/lib/auto/FOO_d162/FOO_d162.inl | 22 - scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so | Bin 141717 -> 0 bytes scripts/_Inline/lib/auto/FOO_dc61/.packlist | 1 - .../_Inline/lib/auto/FOO_dc61/FOO_dc61.inl | 22 - scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.so | Bin 42766 -> 0 bytes .../_Inline/lib/auto/coin_pl_2204/.packlist | 1 - .../lib/auto/coin_pl_2204/coin_pl_2204.inl | 22 - .../lib/auto/coin_pl_2204/coin_pl_2204.so | Bin 190936 -> 0 bytes .../_Inline/lib/auto/coin_pl_2a81/.packlist | 1 - .../lib/auto/coin_pl_2a81/coin_pl_2a81.inl | 22 - .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 56177 -> 0 bytes .../_Inline/lib/auto/coin_pl_4bc7/.packlist | 1 - .../lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl | 22 - .../lib/auto/coin_pl_4bc7/coin_pl_4bc7.so | Bin 190544 -> 0 bytes .../_Inline/lib/auto/coin_pl_6538/.packlist | 1 - .../lib/auto/coin_pl_6538/coin_pl_6538.inl | 22 - .../lib/auto/coin_pl_6538/coin_pl_6538.so | Bin 142955 -> 0 bytes .../_Inline/lib/auto/coin_pl_94f3/.packlist | 1 - .../lib/auto/coin_pl_94f3/coin_pl_94f3.inl | 22 - .../lib/auto/coin_pl_94f3/coin_pl_94f3.so | Bin 49005 -> 0 bytes .../_Inline/lib/auto/coin_pl_a4ed/.packlist | 1 - .../lib/auto/coin_pl_a4ed/coin_pl_a4ed.inl | 22 - .../lib/auto/coin_pl_a4ed/coin_pl_a4ed.so | Bin 142483 -> 0 bytes .../_Inline/lib/auto/coin_pl_b0b4/.packlist | 1 - .../lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl | 22 - .../lib/auto/coin_pl_b0b4/coin_pl_b0b4.so | Bin 49592 -> 0 bytes .../_Inline/lib/auto/coin_pl_d162/.packlist | 1 - .../lib/auto/coin_pl_d162/coin_pl_d162.inl | 22 - .../lib/auto/coin_pl_d162/coin_pl_d162.so | Bin 141749 -> 0 bytes scripts/c2xs/CBHD.o | Bin 130016 -> 0 bytes scripts/c2xs/CBHD.pm | 17 - scripts/c2xs/Makefile.PL | 24 - .../c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so | Bin 83025 -> 0 bytes scripts/c2xs/blib/lib/CBitcoin/CBHD.pm | 17 - scripts/caller.pm | 7 + scripts/coin.pl | 39 - scripts/coinxs.pl | 56 - scripts/crypt/Crypt-PBC-0.9000.tar.gz | Bin 62417 -> 0 bytes scripts/crypt/Crypt-PBC-0.9000/Changes | 167 - scripts/crypt/Crypt-PBC-0.9000/MANIFEST | 44 - scripts/crypt/Crypt-PBC-0.9000/META.yml | 33 - scripts/crypt/Crypt-PBC-0.9000/Makefile.PL | 160 - scripts/crypt/Crypt-PBC-0.9000/PBC.pm | 766 -- scripts/crypt/Crypt-PBC-0.9000/PBC.xs | 94 - scripts/crypt/Crypt-PBC-0.9000/README | 39 - scripts/crypt/Crypt-PBC-0.9000/TODO | 96 - .../crypt/Crypt-PBC-0.9000/contrib/c_quicky.c | 33 - .../crypt/Crypt-PBC-0.9000/contrib/libtest.c | 13 - scripts/crypt/Crypt-PBC-0.9000/contrib/quicky | 22 - scripts/crypt/Crypt-PBC-0.9000/earith.xs | 168 - scripts/crypt/Crypt-PBC-0.9000/ecomp.xs | 40 - scripts/crypt/Crypt-PBC-0.9000/einit.xs | 134 - .../Crypt-PBC-0.9000/inc/Devel/CheckLib.pm | 380 - .../crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod | 248 - .../lib/Crypt/PBC/Element.pod | 235 - .../lib/Crypt/PBC/Pairing.pod | 39 - scripts/crypt/Crypt-PBC-0.9000/pairing.xs | 48 - scripts/crypt/Crypt-PBC-0.9000/params_a.txt | 8 - scripts/crypt/Crypt-PBC-0.9000/params_d.txt | 14 - .../crypt/Crypt-PBC-0.9000/params_d159.txt | 14 - scripts/crypt/Crypt-PBC-0.9000/params_e.txt | 10 - scripts/crypt/Crypt-PBC-0.9000/pbctest.c | 7 - scripts/crypt/Crypt-PBC-0.9000/ppport.h | 4954 ------------ scripts/crypt/Crypt-PBC-0.9000/t/01_load.t | 8 - scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t | 52 - .../Crypt-PBC-0.9000/t/05_boneh_franklin.t | 50 - scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t | 73 - .../Crypt-PBC-0.9000/t/09_pairings_tests.t | 44 - .../Crypt-PBC-0.9000/t/10_test_symmetric.t | 22 - .../crypt/Crypt-PBC-0.9000/t/13_1op_arith.t | 36 - .../crypt/Crypt-PBC-0.9000/t/13_2op_arith.t | 35 - .../crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t | 33 - .../crypt/Crypt-PBC-0.9000/t/13_pow_arith.t | 35 - .../crypt/Crypt-PBC-0.9000/t/14_from_bytes.t | 20 - .../Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t | 20 - scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t | 30 - scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t | 29 - .../crypt/Crypt-PBC-0.9000/t/35_scopefault.t | 31 - .../crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t | 185 - .../crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t | 185 - .../Crypt-PBC-0.9000/t/99_memory_tests.t | 40 - scripts/crypt/Crypt-PBC-0.9000/typemap | 41 - ...fig-x86_64-linux-gnu-thread-multi-5.014002 | 14 - .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl | 22 - .../lib/auto/CBitcoin_2a81/CBitcoin_2a81.so | Bin 55706 -> 0 bytes .../lib/auto/CBitcoin_e4f1/.packlist | 1 - .../lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl | 22 - .../lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so | Bin 83366 -> 0 bytes .../lib/auto/CBitcoin_pm_e4f1/.packlist | 1 - .../CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.inl | 22 - .../auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.so | Bin 83244 -> 0 bytes .../inline.bk/lib/auto/coin_pl_2a81/.packlist | 1 - .../lib/auto/coin_pl_2a81/coin_pl_2a81.inl | 22 - .../lib/auto/coin_pl_2a81/coin_pl_2a81.so | Bin 56177 -> 0 bytes scripts/module/CBitcoin/CBitcoin.o | Bin 85128 -> 0 bytes scripts/module/CBitcoin/CBitcoin.xs | 52 - .../blib/arch/auto/CBitcoin/CBitcoin.so | Bin 53492 -> 0 bytes scripts/module/CBitcoin/blib/lib/CBitcoin.pm | 86 - scripts/module/CBitcoin/ppport.h | 7063 ----------------- scripts/module/hello.pm | 6 - scripts/test.pm | 19 + scripts/test2.pm | 5 + 256 files changed, 4605 insertions(+), 17400 deletions(-) create mode 100644 scripts/.project delete mode 100644 scripts/CB.pm.bk create mode 100644 scripts/CBHD/.project rename scripts/{c2xs => CBHD}/CBHD.bs (100%) rename scripts/{c2xs => CBHD}/CBHD.c (91%) create mode 100644 scripts/CBHD/CBHD.o create mode 100644 scripts/CBHD/CBHD.pm create mode 100644 scripts/CBHD/CBHD.pm.real rename scripts/{c2xs => CBHD}/CBHD.xs (92%) rename scripts/{c2xs => CBHD}/MYMETA.json (97%) rename scripts/{c2xs => CBHD}/MYMETA.yml (96%) create mode 100644 scripts/CBHD/Makefile.PL create mode 100644 scripts/CBHD/Makefile.old rename scripts/{c2xs => CBHD}/blib/arch/.exists (100%) rename scripts/{c2xs => CBHD}/blib/arch/auto/CBitcoin/CBHD/.exists (100%) create mode 100755 scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so rename scripts/{c2xs => CBHD}/blib/lib/CBitcoin/.exists (100%) create mode 100644 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm rename scripts/{c2xs => CBHD}/blib/lib/CBitcoin/coinx2.pl (100%) rename scripts/{c2xs => CBHD}/blib/lib/auto/CBitcoin/CBHD/.exists (100%) rename scripts/{c2xs => CBHD}/blib/man1/.exists (100%) rename scripts/{c2xs => CBHD}/blib/man3/.exists (100%) create mode 100644 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm rename scripts/{c2xs => CBHD}/blib/script/.exists (100%) rename scripts/{c2xs => CBHD}/coinx2.pl (87%) rename scripts/{c2xs/pm_to_blib => CBHD/old-config/CBHD.bs} (100%) create mode 100644 scripts/CBHD/old-config/CBHD.pm create mode 100644 scripts/CBHD/old-config/MYMETA.json create mode 100644 scripts/CBHD/old-config/MYMETA.yml create mode 100644 scripts/CBHD/old-config/Makefile.PL create mode 100644 scripts/CBHD/old-config/Makefile.old rename scripts/{module/CBitcoin => CBHD/old-config}/pm_to_blib (100%) rename scripts/{module/CBitcoin/blib/arch/.exists => CBHD/pm_to_blib} (100%) rename scripts/{c2xs => CBHD}/src/CBHD.c (94%) delete mode 100644 scripts/CBitcoin.pm rename scripts/{module => }/CBitcoin/Changes (67%) rename scripts/{module => }/CBitcoin/MANIFEST (75%) rename scripts/{module => }/CBitcoin/MYMETA.json (92%) rename scripts/{module => }/CBitcoin/MYMETA.yml (89%) rename scripts/{module => }/CBitcoin/Makefile.PL (50%) rename scripts/{module => }/CBitcoin/README (100%) rename scripts/{module/CBitcoin/blib/arch/auto/CBitcoin => CBitcoin/blib/arch}/.exists (100%) rename scripts/{module/CBitcoin/blib/lib => CBitcoin/blib/arch/auto/CBitcoin}/.exists (100%) rename scripts/{module/CBitcoin/blib/lib/auto/CBitcoin => CBitcoin/blib/lib}/.exists (100%) create mode 100644 scripts/CBitcoin/blib/lib/CBitcoin.pm rename scripts/{module/CBitcoin/blib/man1 => CBitcoin/blib/lib/auto/CBitcoin}/.exists (100%) rename scripts/{module/CBitcoin/blib/man3 => CBitcoin/blib/man1}/.exists (100%) rename scripts/{module/CBitcoin/blib/script => CBitcoin/blib/man3}/.exists (100%) rename scripts/{module => }/CBitcoin/blib/man3/CBitcoin.3pm (85%) create mode 100644 scripts/CBitcoin/blib/script/.exists rename scripts/{module => }/CBitcoin/lib/CBitcoin.pm (60%) create mode 100644 scripts/CBitcoin/pm_to_blib rename scripts/{module => }/CBitcoin/t/CBitcoin.t (71%) create mode 100644 scripts/Script/MYMETA.json create mode 100644 scripts/Script/MYMETA.yml create mode 100644 scripts/Script/Makefile.PL create mode 100644 scripts/Script/Makefile.old create mode 100644 scripts/Script/Script.bs rename scripts/{module/CBitcoin/CBitcoin.c => Script/Script.c} (60%) create mode 100644 scripts/Script/Script.o create mode 100644 scripts/Script/Script.pm create mode 100644 scripts/Script/Script.xs create mode 100644 scripts/Script/blib/arch/.exists create mode 100644 scripts/Script/blib/arch/auto/CBitcoin/Script/.exists create mode 100755 scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so create mode 100644 scripts/Script/blib/lib/CBitcoin/.exists create mode 100644 scripts/Script/blib/lib/CBitcoin/Script.pm create mode 100644 scripts/Script/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/Script/blib/lib/auto/CBitcoin/Script/.exists create mode 100644 scripts/Script/blib/man1/.exists create mode 100644 scripts/Script/blib/man3/.exists create mode 100644 scripts/Script/blib/script/.exists create mode 100644 scripts/Script/coinx2.pl create mode 100644 scripts/Script/old-config/MYMETA.json create mode 100644 scripts/Script/old-config/MYMETA.yml create mode 100644 scripts/Script/old-config/Makefile.PL create mode 100644 scripts/Script/old-config/Makefile.old create mode 100644 scripts/Script/old-config/Script.bs create mode 100644 scripts/Script/old-config/Script.pm create mode 100644 scripts/Script/old-config/pm_to_blib create mode 100644 scripts/Script/pm_to_blib create mode 100644 scripts/Script/src/Script.c create mode 100644 scripts/TransactionInput/Makefile.PL create mode 100644 scripts/TransactionInput/TransactionInput.pm create mode 100644 scripts/TransactionInput/TransactionInput.xs create mode 100644 scripts/TransactionInput/coinx2.pl create mode 100644 scripts/TransactionInput/old-config/Makefile.PL.cbhd create mode 100644 scripts/TransactionInput/src/TransactionInput.c delete mode 100644 scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 delete mode 100644 scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl delete mode 100755 scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so delete mode 100644 scripts/_Inline/lib/auto/FOO_2204/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so delete mode 100644 scripts/_Inline/lib/auto/FOO_2610/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so delete mode 100644 scripts/_Inline/lib/auto/FOO_2a81/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_2a81/FOO_2a81.so delete mode 100644 scripts/_Inline/lib/auto/FOO_3688/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_3688/FOO_3688.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so delete mode 100644 scripts/_Inline/lib/auto/FOO_4bc7/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_4bc7/FOO_4bc7.so delete mode 100644 scripts/_Inline/lib/auto/FOO_4be1/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so delete mode 100644 scripts/_Inline/lib/auto/FOO_55bb/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so delete mode 100644 scripts/_Inline/lib/auto/FOO_63be/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so delete mode 100644 scripts/_Inline/lib/auto/FOO_6538/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_6538/FOO_6538.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_6538/FOO_6538.so delete mode 100644 scripts/_Inline/lib/auto/FOO_675c/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so delete mode 100644 scripts/_Inline/lib/auto/FOO_6938/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_6938/FOO_6938.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_6938/FOO_6938.so delete mode 100644 scripts/_Inline/lib/auto/FOO_8632/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_8632/FOO_8632.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_8632/FOO_8632.so delete mode 100644 scripts/_Inline/lib/auto/FOO_8c0e/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_8c0e/FOO_8c0e.so delete mode 100644 scripts/_Inline/lib/auto/FOO_94f3/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_94f3/FOO_94f3.so delete mode 100644 scripts/_Inline/lib/auto/FOO_a221/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so delete mode 100644 scripts/_Inline/lib/auto/FOO_a2fb/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so delete mode 100644 scripts/_Inline/lib/auto/FOO_a4ed/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so delete mode 100644 scripts/_Inline/lib/auto/FOO_b0b4/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so delete mode 100644 scripts/_Inline/lib/auto/FOO_c054/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so delete mode 100644 scripts/_Inline/lib/auto/FOO_c629/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so delete mode 100644 scripts/_Inline/lib/auto/FOO_d162/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so delete mode 100644 scripts/_Inline/lib/auto/FOO_dc61/.packlist delete mode 100644 scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.inl delete mode 100755 scripts/_Inline/lib/auto/FOO_dc61/FOO_dc61.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2204/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2204/coin_pl_2204.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_2204/coin_pl_2204.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2a81/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6538/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_94f3/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_94f3/coin_pl_94f3.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_a4ed/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_a4ed/coin_pl_a4ed.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_a4ed/coin_pl_a4ed.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_b0b4/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.so delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d162/.packlist delete mode 100644 scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl delete mode 100755 scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so delete mode 100644 scripts/c2xs/CBHD.o delete mode 100644 scripts/c2xs/CBHD.pm delete mode 100644 scripts/c2xs/Makefile.PL delete mode 100755 scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so delete mode 100644 scripts/c2xs/blib/lib/CBitcoin/CBHD.pm create mode 100644 scripts/caller.pm delete mode 100644 scripts/coin.pl delete mode 100644 scripts/coinxs.pl delete mode 100644 scripts/crypt/Crypt-PBC-0.9000.tar.gz delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/Changes delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/MANIFEST delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/META.yml delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/Makefile.PL delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/PBC.pm delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/PBC.xs delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/README delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/TODO delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c delete mode 100755 scripts/crypt/Crypt-PBC-0.9000/contrib/quicky delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/earith.xs delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/ecomp.xs delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/einit.xs delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/pairing.xs delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_a.txt delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_d.txt delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_d159.txt delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/params_e.txt delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/pbctest.c delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/ppport.h delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/01_load.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t delete mode 100644 scripts/crypt/Crypt-PBC-0.9000/typemap delete mode 100644 scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 delete mode 100644 scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl delete mode 100755 scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so delete mode 100644 scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist delete mode 100644 scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl delete mode 100755 scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so delete mode 100644 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/.packlist delete mode 100644 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.inl delete mode 100755 scripts/inline.bk/lib/auto/CBitcoin_pm_e4f1/CBitcoin_pm_e4f1.so delete mode 100644 scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist delete mode 100644 scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl delete mode 100755 scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so delete mode 100644 scripts/module/CBitcoin/CBitcoin.o delete mode 100644 scripts/module/CBitcoin/CBitcoin.xs delete mode 100755 scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so delete mode 100644 scripts/module/CBitcoin/blib/lib/CBitcoin.pm delete mode 100644 scripts/module/CBitcoin/ppport.h delete mode 100644 scripts/module/hello.pm create mode 100644 scripts/test.pm create mode 100644 scripts/test2.pm diff --git a/library/test/testCBNodeFull.c b/library/test/testCBNodeFull.c index b0786321..f4cfb70a 100644 --- a/library/test/testCBNodeFull.c +++ b/library/test/testCBNodeFull.c @@ -1416,7 +1416,7 @@ void CBNetworkCommunicatorStartListeningVoid(void * comm){ } int main() { - return EXIT_SUCCESS; + puts("You may need to move your mouse around if this test stalls."); CBNewMutex(&testMutex); diff --git a/library/test/testCBTransaction.c b/library/test/testCBTransaction.c index 805c4bf6..18550510 100644 --- a/library/test/testCBTransaction.c +++ b/library/test/testCBTransaction.c @@ -74,6 +74,7 @@ int main(){ return 1; } CBReleaseObject(input); + // Test serialisation CBScript * scriptObj = CBNewScriptWithDataCopy((uint8_t []){CB_SCRIPT_OP_TRUE}, 1 ); CBByteArray * outPointerHash = CBNewByteArrayWithDataCopy(hash, 32); diff --git a/scripts/.project b/scripts/.project new file mode 100644 index 00000000..a2c6613c --- /dev/null +++ b/scripts/.project @@ -0,0 +1,17 @@ + + + cbitcoin-perl + + + + + + org.epic.perleditor.perlbuilder + + + + + + org.epic.perleditor.perlnature + + diff --git a/scripts/CB.pm.bk b/scripts/CB.pm.bk deleted file mode 100644 index 128dc832..00000000 --- a/scripts/CB.pm.bk +++ /dev/null @@ -1,167 +0,0 @@ -package CBitcoin; - -our $VERSION = 0.01; -BEGIN{ - $VERSION = 0.01; -} - - #use Inline C; - use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' - ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' -# ,LD => 'gcc -Wl,-rpath=../bin' - ,CLEAN_AFTER_BUILD => 0 - ,BUILD_NOISY => 1 ; - -sub new_key { - return newMasterKey(1); -} - - use Inline C => <<'END_OF_C_CODE'; -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* newMasterKey(int arg){ - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* deriveChildPrivate(char* privstring,bool hard,int child){ - CBHDKey* masterkey = importDataToCBHDKey(privstring); - - // generate child key - CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; - CBHDKeyDeriveChild(masterkey, childID, childkey); - free(masterkey); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(childkey, keyData); - free(childkey); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* exportWIFFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBWIF * wif = CBHDKeyGetWIF(cbkey); - free(cbkey); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* exportAddressFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); - free(cbkey); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - return (char *)CBByteArrayGetData(addressstring); -} - -char* newWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - free(key); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* publickeyFromWIF(char* wifstring){ - CBByteArray * old = CBNewByteArrayFromString(wifstring,true); - CBWIF * wif = CBNewWIFFromString(old, false); - CBDestroyByteArray(old); - uint8_t privKey[32]; - CBWIFGetPrivateKey(wif,privKey); - CBFreeWIF(wif); - CBKeyPair * key = CBNewKeyPair(true); - CBInitKeyPair(key); - memcpy(key->privkey, privKey, 32); - CBKeyGetPublicKey(key->privkey, key->pubkey.key); - return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - -} - -char* addressFromPublicKey(char* pubkey){ - CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); - //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); - //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); - - - //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); - - CBKeyPair * key = CBNewKeyPair(false); - memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); - CBDestroyByteArray(pubkeystring); - // this code came from CBKeyPairGetHash definition - uint8_t hash[32]; - CBSha256(key->pubkey.key, 33, hash); - CBRipemd160(hash, 32, key->pubkey.hash); - - CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); - free(key); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - - return (char *)CBByteArrayGetData(addressstring); -} - -char* createWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBReleaseObject(wif); - //return (char *)CBByteArrayGetData(str); - CBReleaseObject(str); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - return (char *)CBByteArrayGetData(string); - //CBReleaseObject(key); - //CBReleaseObject(address); -} - - - - - -END_OF_C_CODE - -1; diff --git a/scripts/CBHD/.project b/scripts/CBHD/.project new file mode 100644 index 00000000..ec38b396 --- /dev/null +++ b/scripts/CBHD/.project @@ -0,0 +1,17 @@ + + + CBitcoin + + + + + + org.epic.perleditor.perlbuilder + + + + + + org.epic.perleditor.perlnature + + diff --git a/scripts/c2xs/CBHD.bs b/scripts/CBHD/CBHD.bs similarity index 100% rename from scripts/c2xs/CBHD.bs rename to scripts/CBHD/CBHD.bs diff --git a/scripts/c2xs/CBHD.c b/scripts/CBHD/CBHD.c similarity index 91% rename from scripts/c2xs/CBHD.c rename to scripts/CBHD/CBHD.c index f61d76de..72467ff0 100644 --- a/scripts/c2xs/CBHD.c +++ b/scripts/CBHD/CBHD.c @@ -47,12 +47,12 @@ char* newMasterKey(int arg){ return (char *)CBByteArrayGetData(str); } -char* deriveChildPrivate(char* privstring,bool hard,int child){ +char* deriveChildPrivate(char* privstring,bool private,int child){ CBHDKey* masterkey = importDataToCBHDKey(privstring); // generate child key CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; + CBHDKeyChildID childID = { private, child}; CBHDKeyDeriveChild(masterkey, childID, childkey); free(masterkey); @@ -85,6 +85,13 @@ char* exportAddressFromCBHDKey(char* privstring){ CBReleaseObject(address); return (char *)CBByteArrayGetData(addressstring); } +char* exportPublicKeyFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); + free(cbkey); + return (char*) pubkey; +} + char* newWIF(int arg){ CBKeyPair * key = CBNewKeyPair(true); @@ -109,7 +116,7 @@ char* publickeyFromWIF(char* wifstring){ memcpy(key->privkey, privKey, 32); CBKeyGetPublicKey(key->privkey, key->pubkey.key); return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - + } char* addressFromPublicKey(char* pubkey){ @@ -127,12 +134,12 @@ char* addressFromPublicKey(char* pubkey){ uint8_t hash[32]; CBSha256(key->pubkey.key, 33, hash); CBRipemd160(hash, 32, key->pubkey.hash); - + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); free(key); CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); CBReleaseObject(address); - + return (char *)CBByteArrayGetData(addressstring); } @@ -155,7 +162,7 @@ char* createWIF(int arg){ -#line 159 "CBHD.c" +#line 166 "CBHD.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -207,7 +214,7 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 211 "CBHD.c" +#line 218 "CBHD.c" XS(XS_CBitcoin__CBHD_newMasterKey); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__CBHD_newMasterKey) @@ -240,15 +247,15 @@ XS(XS_CBitcoin__CBHD_deriveChildPrivate) dXSARGS; #endif if (items != 3) - croak_xs_usage(cv, "privstring, hard, child"); + croak_xs_usage(cv, "privstring, private, child"); { char * privstring = (char *)SvPV_nolen(ST(0)); - bool hard = (bool)SvTRUE(ST(1)); + bool private = (bool)SvTRUE(ST(1)); int child = (int)SvIV(ST(2)); char * RETVAL; dXSTARG; - RETVAL = deriveChildPrivate(privstring, hard, child); + RETVAL = deriveChildPrivate(privstring, private, child); sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; } XSRETURN(1); @@ -299,6 +306,28 @@ XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey) } +XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportPublicKeyFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + XS(XS_CBitcoin__CBHD_newWIF); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__CBHD_newWIF) { @@ -414,6 +443,7 @@ XS(boot_CBitcoin__CBHD) newXS("CBitcoin::CBHD::deriveChildPrivate", XS_CBitcoin__CBHD_deriveChildPrivate, file); newXS("CBitcoin::CBHD::exportWIFFromCBHDKey", XS_CBitcoin__CBHD_exportWIFFromCBHDKey, file); newXS("CBitcoin::CBHD::exportAddressFromCBHDKey", XS_CBitcoin__CBHD_exportAddressFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportPublicKeyFromCBHDKey", XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey, file); newXS("CBitcoin::CBHD::newWIF", XS_CBitcoin__CBHD_newWIF, file); newXS("CBitcoin::CBHD::publickeyFromWIF", XS_CBitcoin__CBHD_publickeyFromWIF, file); newXS("CBitcoin::CBHD::addressFromPublicKey", XS_CBitcoin__CBHD_addressFromPublicKey, file); diff --git a/scripts/CBHD/CBHD.o b/scripts/CBHD/CBHD.o new file mode 100644 index 0000000000000000000000000000000000000000..f444dcf1124ff6a92a7653fa12898e84474033cf GIT binary patch literal 135592 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

%9MJmXFIf_Qw!#? zg6jMl5KkKOe>nC4dCs=wi>C7ael)(BhT?!>j$>Nms9v>s(!joosl*J*IBED{)Y+V z<1e^qWu(o~b=Dhc<3=rCf)d8iH&=NjjNYJiXeErkIN*hi{$jw382y!i7dHB<0k7ET zM+08QO4!&;XIKd%ty%V!*s4NtKgvItw~-(ASs6OrsYUPftJE2J&}Z2Il;Jog@P5Ba zosl;0EbC_i9|&3*X_~?M8TlW6Ey|D6ehw@8p?+emLPq~M;1wJFM8FFh{j-1tNZ&+_+rG_HcxzxyYIs}qce~%&S0TulLDe-6h9P7)v>{m)Y@3Yn$nWN%!oZe7I zTzSo8Ydg=uGc2VoYUVm!$8iKvZi(N+B}Q83u&UA8Supwxqs~_Wh5A|KT;qfylS7fy z&Y0X4&YN_P6@<0I(9{afq>MTAYP|>b({(O8ONU{~1j{CBpH}-}zg3-)W-nP<-LJLH z^jzl>6KJ2WXcbe1=gi3%a+i*8kA9M889g~iB#|c=JuTp6L^6~0E|moinJTOPq!Tg$u5+Q0cl+bI)W}p>7iP%%fHwHB->}ZepZcr}vwA>_zT{V_ zGx8;$l@XUs;FErpIwNy^9c1)n0$&eW89B^vmC=_84Ea^+j4bt8>y0e)Ss8J;T#M%F zCs~it^8#M6(F+1z*yzOpFJkoB0k6#HB>}J8=*ob%(C9IAg2hjcv+b~BV5~ARz=cMS z3wY&5pBnJWjE)4nh|!Y*UfAf#0k7ETvVa#d`aMW!{Q(LY{5FlAuQP)W8ENgZ`;awU z)}Wxvf8v9IVSqO+0t z+GEx&p;1L_)=%0JjP6jLYzc<0@;kl6Nb4M(+BAdFXZTa63P|W@#+G0O*J_0~+Y*jy zJ?lHi!B>n1Dwmmo4G5J~ZJ8;#PR!a}>aSC5V5=`{t4DlY*BNQHn`O~HrnSxFvuq}l zwaT18@W8(Ru0=N2Z2Qf z@MT>#Ol3^bPl`QC&ezYZ0dJ;?DA!L4ct$T&o&-EY%lu9+G159mr}CGE@a97>4pBky z`z#f(L_aeEo)y$+g*OX$2ejTX{Y2`zS-Ur7X31u)_MiM#bw--KWNG!J);81261HY& z-=>PJF-hxuNIxki8U5jaS8Vi0176tZrvhHY=wksdZ1mFsuh{562Rx;M^|@C$AJ+Tv>9YM=bOM^1+9#x^q<{lc(vO*5mKZly z`!-c%i*ft3&fWS+o@MlZ2E2&T-wAl?J2DLVZL&VBbzr4NTC?m{`cZB0DZgQzkze;& z85z_ATJ(@#rOwE2`mFUv+6c1T0w31eKh#gsfzdw>c*RCP5%9uB|197|jD9lUl^H#v zK=eh?#psfNS7vl+z>63i4tQas#{|4$qay(?WOQ4=%ZM&E|EF}kST`fBS@w0ahR6Jd z^+r|>k$EC$7`aY|AkoE;^^hgH{8`10^<`c5Yb9UwS?i4)q~fzim)BI3{9R!R?zlx% z86o}DTSP_l$MER~er2R}j*vE1I}1ji5nb|CK%stSL>DWtXF6{dUHVkeL;lDvTcE=* zWoC&JR{P6-t2!giUb3|Mgw{6G%Mx8))hecnY|*7l$9JWEl4lvcE#MU!eRaSK8~wF_ z7cu(LfEPCUv4B@>^tS_EMzpfA^=chhy^+=|yVdX11~>T)>x_KRXJtgIk7&`y{3>-u z+Gt@{VspW76Zmk@%1E0x@-8C}`L!}KsKZ+HL;d6!r}U2lUa`?n1iY}(KMQyfqn`|T zWkwIf`w{d*G0y1W0k6zx`G;M&Uc~6qpkCN$`TM+Fuh{5FP%mV3TfobVaXQYY^pj$o zlGZHyYMbJY`3>uhti+Rj`k@%7|vG@YfxFx6&>R#y9Azg3-)W-nP<-LJLH^s>abSG0<$B5RD(@m;B(9OIPU7VwIV zzB=HAjV{w??0h$EV45-^Fl_YnfLCnvjDQz1x;#~&EOPL>OGj{@ww07Bj;XT^m zF27-&kv16E&A>5a32Prw0Urwl8TlQbl@UU%==*+^IwMU#2!@&6X9%)c&P~yr(enac zvC(G*ys*)W0$#-E#R0F(=tQw7o`Rv#$$(d8bZ@|m7~L1}!bV>e@QRJz5%5Are>dQj z2TL!M&3~DW7Y1OYHOp=Q*09EJSa0NqeAcB#eqM(l!O)QPkR=$dQW;nKvM#Gs8SC^D z#$;q%Sy_YOB`V@_{iKA?=oaNkFf^3(JH5n6>l~e4t(^s<&j^OCDxh6IGlHQN^l61R z3x-FuUf7@eW$#tel$j;0S?zItt2!giUb3_rqP5NRvIN76wTh`CTQEGVb$+0q6bz02 zalk7!`bfYF8-3R>u~H6(20o}v3Wi4C9q@{cz9-;?jJ_{b;6Pun5&ua?0$(uF+GY2J z=d{5~e#1H=3$#PnjgfPGRz_;}x(V>B)VWGt?XxmsSc?|5`BmzSG+m(kfhquNpaQIq z>jFVWnxYX^GX-Ug=%5PttbWqk8~s4QD>nLz0WWOy!vQa1^p^r&nbFS=muXN`HTs2s zS7!7}0WV_oiGUY2`mX`6*l1^j-v|Dcc%fGYyz+sHwD~`#@{u zqK*r}(#ZKb1c|DKtcNU7^?NGzRbTvNUsth@`{LId`CDaWjjBIa5l8itqN>rylqXTu z&nDXVqr=LRFlK17a^b*6TIc9= znsye9KEt9%tAO$PnGwdUpiC>gSs1%f>wQx{5q)ZP7^ciD0m*9rr{Aj1NVAtLt-h$W z&GfQ_v3%{@RFN%=?a(?m=qGuW(Ypd(vC%gMys**l40sWv_XNB$qkl0f@GPT$8Su)C zJ{s^MM*k+@g^hkH;1wJF+klr5W^Jyw>)7B$Mq0D%UStj5<2S4~GPPmm3yvSq28aBH z8Af=&7JW)T$?lE*yz<2E4Sn4gc8QUDbkS*%kMK| zPBXF2@{(iv8kn-g41(V?^yOE3`S?Y}_EKy_-{mI%rr*a0? zU#xqRZTy2YWY~seDUWT61KXdhT}0&!tWPfhc}^9)+I3&WS26KzSc)L{-#xu2(S3Sr zM^jr*bNuwag$rT}=FMtr?da*7wWXuy^v2d?!g=E=iS6k%q%3aBp?s!A9wLx7x}~*abEj5H zHn(<=IIh&7f~jj75Ju4vPc~CS2saW{n_Ii%+zf1=2A?#5%7|y3Gzxq+8G&xPyLubC zg`Mb?&n^1dzD00@;uigEGThM7yj`kbBCRxf?T%@5)JlD06{QjZt=}Er67SQ|;NKwA z@@+&w#FlO<0@2jHy~`BQ($L(wP1xOWOjHNm)zF=YD_ym;sL#Mc*NK{gR9Bi7(l-Gc*b8i)xq5%Jp)-;D#cf_U4Y77MlBR$IJEdyvf7y znUm*DEx{-LMc>T~L!YLPo%CxK{aS)wZk{)TDtmdMN%S$3eyyZmA^cl8`1Wq!a}0hL zS`P4yYeRR3l3OlbSFw20rugC|OE&GI(d^>UY+4dZU^HKJ9}bmd9nFjpBoY729zJrs zdBcA~pLyI(UPwUb9I28z;OD8@KR)2zPy`LU&@ukqO~1YJVfZM-KS_#@q5QkRTR_v! z^U8*A#Aneb@oTWRaClzm8<^*#*LsuOpY9~h)Bj5z$Gq^bE6&cYxJAG^u_o&GA4>Gn=^3lrbDGc+-6-p{%ZXCJ`Z zZQZx>05(1^K6lZlcHV<=tVo1@x+%00ns~tteKPw%-fjbUCk+h82ybSIw{V1)kCddgts#-b#*n0c zfw!%*V@rg8Vf%BE?TJ`Zf;LyDJ07Dt@mOOg{X=cFo!zZl@aLVIoZ6n`=7q6l?9oY| z+pF9}S3^@uQ*3N8{IlI%?MMn@@$T-9PG@Tzfxg>`#jw$p%f}q~m@6M=$j3Y<+1M6q zz$V@h>xlOyomc`JL^76Wy(%t)?&(0L(GhQs(7;aY5z~qknU= zmQ>Ny(9{xlHm;3TEp1IUb+&fIK-DaZVejtjPU?0@9S|2grBmC~+1}NPByWpT+uR7{ zC6J+Pi_y;SKsN23P%RZVwr%Z+;jbv;pHit>Dm!UicYHJcDRc}5L#nG@vocn-dR2Y( z#(F2#kZ7VMiZx>J&}D5$PkX$(wTafNqq(8G*{Q|aHFdXkC7ncXtOu%#clWaLlHEN` zShX(9t-Y}=-q4F>-qMb#wZsx_4UN=WYbXEiW&O9~A9KOdC0il0eS55_PZyxJy#dqj z?(9rDeNDZw&YonVwK*=+pk&X9)nSsgtDTm33|7{oYmw|swkF%+&YJ4;syEj8ODd!4 zXlRc&^PHTzl`$j=G5Tw>EwQ$E$ChLZ(zV#;*6svG-`ttlh6QMeCmfgtExT9+nzVFw zZjB+YXo@AFYK*qAyP>101#`G6&f`kNXsw*S#&%STW3oL7rxq(iE54-*YreS&RzyXy z_J;1Q=q$cD*4D5cvuUNiv1ZAJZc1U}9lcJXp*N1wM6#{3iR}rdfCS4XX6w_`+1A;e zaN4)TIvcNW+I!lP@CN+z^`fH~NscAbP|~SdT~|}%U=^`a7<0mDj>EZlpBV%1I~=V?`_+R&7YV_3D&WYbod zLJu72jJeQUQ%h@G^QxZqMlvo^1LoWWpc*YgWlIyVV=OHP z2lPxa16{^CH*ZFo?<9I)^%77x9ftvTb~s(_on1IPK)9?R^w0py#&SVyjQm<$6LPRV zJUxHfUA<%(4#Ep1`msa<{<5bZvncSiH*9HbBD3l0hPWi61{{8KXLmbn0<(c}B{1`5 zC(+mwYvvHw-P6(81%-4Wu)s^PLa}s5BY#HRijk?NXa-&NQAdf^Mt1fXjIOz}9n)oZ zqYheG)#OU#9WWz|8MTtIxMVO-2|>wr4C1_1>mpSV9O7orWixB0K#HRZq9cL@j1=os zwRCMu!`%4`oVxlovHGQO8dPmL{F496&OMELu8O#2i*cR3x#kts) zIBXfGFN-Z4XK1k-wl%=!yAzlh8pl>u*Kb(8W<{*NdTl+M0+x_0%Zc~Ju|=S3TE6a1 zRwG3?T8DNlb)p5ox|0Y>&7`Gy3r$N~x;uMd4A2$SM!KiP^vyrk+>mU5lO%eRF=$~s ztVT>mPnZ-dF#TE#v8}n$A)k~@;AG)i_X0muw{~>3(caayEw%;GF4dCaoo!^`SX!(c z0xEAx9Q&^5Y44)25r=h>GspT8v0f+%wvBDGlVTJs4Kbf~TJjf!Eb`aJ&SVnyLAy*3 zyfWTA7bAyb#i81&)I%87v2{y}vwb_6It4Mzv8$(%0;7c;_*!FpORy>M23gyPh_sbL z0Xjsi>&BQJC^eR7Y2A$Y)U}Nafp@mf1Y2`QjCLfpPV$o`45q!aIl)fD4#RGW@hw9H z?C#tim=AUz1PTq^v905D;n++OafjOV|z7MAl-9Z9u4I@3lRX zmQ;3&?sy++#_HBoFR$H*kJZc8Rn^z7UInstePw-hY(@1Zr?xeLh0tUPE7X91SxZ?= zLmP+fOk>qFfwGFa9z>TWsE&N86MH*pv~$5c4g}UQ`D3hd*|Ig&YuBnuXo^Ul$hfy} zCmq05H+ORcYmOsM!zCT)o_7gIZo`x|BR)a@6veSHTVfK=$p?Ell@nX&=7@nZG8nqB z(I}5?k1eaCvmG|H6?TV!5_fp_rk$*|xm9+lh7K$MMIBAGFc*SVD_5_oj@4DJsk{Jl zpqPt)elFIVY(Pi0pHwY{BF>8^1EtU)y5n7Kd@F@qvB?(BK~(LM-L(Tz7<)T@r#W~m zPTLJ_Qd@W~Ns6s@5+Hj!Y5k>G$EpH5uxAw%xzXa%WBB&^E061g{;HEfB?jFCUl z8d(m8a3PuZfKZ-lkXt(OSEOUCgBa3#9w_oI%BJgTD%Vz1PQA8%4O~?+jV;(Lv12yI z=~fVl8AtqhQ)fpr1q38lbVNvybC9_;w6$?)jN|SWJ7jMhfw;B9p>?BBaTTgKT+?0zp_8>7qv?QfB zLN`5Kvg^iT$Vh3qV#x;V1-h#Q#|k!Hi=?g1m=N@sn#~}$Zfm1}2(2Rj*tiyX8=Fce zO`!@Al*4ORPY2RlB!ZNU=uQM%q4h(Y=%D3mZKn)-8Mf>CPTO7SJ`je^kqCLL7*|`o zH{Ry-wRLWz%(%A|NdasdS%dGRyjP^{hZG0-cG9W4V09fO0X^8P>G(?91G^uf|IYepzXc{2{ISasU3yI_Ny zZB{K^j?f5$Q+;6YbeJ_4;0y?U8*9SZ3Og#P6zQ}01Pn_0;kb>cogP^mEDsa)a0*XJ z2F`EnL+$cGL&Jfq@rtI-9$v(r1f>!X4#hShL25cQIDn_`i8&QN+ zLbi+fcbnO=cT!9Czgq0QBAkyw+&T4%RYgT?7T9hjQKJJZte%wx6F`QJ?2Lm7b-b;i z8*AQV<4ZVIHPuxs>Q>jTs;AM_thWj4F^Liy7;dXvLiF$@1lu{RniY$UQg#_6Tzy@w z$Y>y@mb?pRdpU6j+XFTR_*^aRN{FvWpAhyr71FgvVBi7w#5Th(a6)VA+uYqAqr+Ls z%>%_W_H0%WMSh9I?O0kI`TAhEa?D8d_QbXzAa!?lc0-M{G_<=l(|!h%?xDMq#?I#L zd}iiV!fYs(BN=DQ;vwMhgUk`VBs;gpJIFk-u5^xt!YLTRXxg{*Vng6_UFyCm!IXWp z&-|MLJtxq-w0*M5Yu7DZS-r7#)$-NI1~6Q3k@aM`)j-yI0q-nOqZ8Bn72cmINAJeX z1RM*oh|k5ePGsqDh7R2UU=5?gBH6dg3#RktE-lHOrDlo!I6WVNVk zy5eG2!P;(xu48l*pihe@oYu%Q7Dou0 zPBI7Tg+hD~7-(+E-dINhnG-2Vu5s+nqpP+noS=9EYAtxymCe zT~k|EeZjIh3(9Lq2N2rTPB|&X@gC%Y$k%n_*cc<@L-3Tq!pS2?PBvdX;qV!=Yd(A} z<+zTdmo`_63@}m>)66*ztG^q5*4ZVw3xc<}J=~(X71tkpRKohJ+jD+lPyBFgm40#2 z5}XMoEj)u#3{=AbodX@~04xrZ>A6vB$F>%%dtV1k3Qj>Dh1=pTI$7{h2YUw^lFOp>nFp2$*?lgIRaaabf+}fJy z(81RxG+y;*bk2KWq6Pa}B<(I)Z<={DbQeRyFnY`Q*w)!?N`7|auzrF*}2 z98~Be#~Ux*hCx6JN)xy@<$^R-U>@DLH$tGT<@LjsytEeTUZKMdVg^N9tbSW7t^wp` zlCCxyy5KegZ#RN5(qZ2>dF~6l8((p44t7LdCsL}IB5&+^$mI*jg;<|j;`06vixI=7 zQ?f>$E~f{ZIWE3&bigj*-y>;CO?v5s?(BMrE{-f3E(;t#&@C*1ZqZ3~iTIUzJuAca zXTzR|%M;iNs>1{5H|~URhevlt&@%p~>w2`{pj6980hsU=WQBG}W5-3r#(lk5C>@ya zjDZ6sUAc&*K?p@jSV1ikSHxF7G|+`9ZY^=n})yT4|mckt9tSzw;){}E*O5FAtQ3;E6)X&zmt zqXWvef-Ft)Y|@b?I8A+YD=K>~+r3Pcp9WzB_3JBFV$2v29Qx65E>j z;e)O~PZzX6MRZ+TwNy7@GWJdcDP(8R7S^8=IrBz6M^m1M^DZ7OVu|JHqFtSIApb_3 z+0ugx8oN;Bt5)n_bn6y8Y=daHA4Ls1=-~K+psp=&ywqqyUdQeurir|a3&{2{FC>i! z?48?LQLrzz8ayY$?8UQ`*6uF3m=!~3qod0Wx+8Ay#$Jq|21&G3lqBkwBFB1)CGwDk zLZhxauGx^|wNq9~y3jjTzUoZ9UG2onTUa)z07}L~0C7Te=1_<-m10&jc76&XApriT z&;9rbQ!__tTnEz)Ae>F|(CtoN1Fru0*oT255$)j1XRJCWq#OmPn*fn{$pcM({6i6h zY!%Nh`Dna-J4feQPTOG_be8Pwjt7se+SLfsJW2-VJRCJhX%q zWw<_OO~(let;jOz@eFUIeXVlnvuCsv=n(<=2q{a$8yF{Zau2VOstr#R97J?HHD0z9 zSHCbi1cH=^5@dI@1#pn(wMdUyl2*}}Iai{DIDvE#k3Z5BiqUfdP1ErYda}XreDSCa zj|eEt;)w@^C{VItN-tYC zv;JVMc*aF{VszOAU9m+V+2QvGkbPk{?ct}5$bBiFT+`YWZ*Rs4$Um3iRv%O0_YPR0 ze87c;=qm}7HPUd9u;6gCY$-f}H&b}!Ts%W-(+vZUN)U+Pfw;zl)xkI@3PDvk1~xP` z#k=UnU`sDWfRu0i* z(K|VE8Q&2VOKQUrn=ZI8ba_w3 zfA5HQBFgD`BN7LYH;#DOX%}q39XX9uZox4`IaDCR;-wrK5Z#N5JxCnc(%sP2f`QRN zLh`qE%HR0Ki6ov?K`5u{2+Q5gbYpsw7km6iOyuL{Qb--iiJ==h(ZQIJq~Ub~im=G~ zwj!uCA>ZY^-hV_uF@uh%FpFB=2-qExcsYbFku8)WeDZWK6@6qvH%U0R(a9FiCleR+ zBymAa8r$4}x2ZaD6GZt0&T06>qXnv-Xc2o3u6H=1A?ep6omsJZCI=qA_MvSO(M?a( zh<1{$JO5v4cLL{A`Th<3JI20@v1X~v$i7b`m1OK>&623bU@T>{3YD!?q!5v0N&CWcU+4Z@2-umAsfp7W|1^Pc;Ao%`JTS-$ga-Y`{`S?<|z zciB^Wo($3E>?Bxhq~936zi(O}={61JcD>7#n}2jp?%mhVFjyQ0gSRV3cOoPm&_C$x zo9{p!CS}PXPr107bafq+qZEif)12X|&yb+eNMX1PnuYFt9b3CoH@EgnmaDunP05~v zqI8As+JRi3kp}?W9Ur-3FfcenaOq^435NWj(%s#78D`vK+|_`v+Ej=ww4YVTKBZlU7NAMpr;bV6An$RsL@ zJU7es8=Bf*_UVRwSu)B+j^_T{|JrpWcd8gH&xfSAC7Hjbc5MY44CVcj9~ zf}&hc4BGb4gxW65-~lp<_LP%yH)aHH74TIWJcA-n@dR&$aC`Aru;j+QYtVA_NcwoH zU-SA^P_SfvG`RADe(6fjUwQM(XB@KYI_}&_FJb#3PR^|T9&p!HdgXArb}UyTWR&UU zM6S-ei7gmo8@mChrCY}~4sOzAZ0j;KpxUIDXb-`n zHaM>f?&Jrn6j#b_${v#3%ayy-sLKfMg3G`x%Y5I{{e++C_$1S*p8u!c9F*x*e&HIg zJe@+%G5T7Km*yu<&;)Q1=LdG&%PSq|C^!DY~gU{h^|s zdd=M(mAmNgXI($3OMzj=!kwr@xtr$_N)L27bR%YPr32@GdJEQ#R71N573XJ>5&l8f z;NpDETU~v)&Ya>}iL|MtRQF_|yU)?nJ-8%eqHmS*7+peb*QnjYUcv49^yf1N2iIWb z8i+esSC;Y`JUSVyn41rAmu=lmHg{^|q6X)`dIlTJl);zuYdf+^a|@@Sx%v|~++uQL zTL0uB?olv#H;0TD{`sz;pU7}37jT06F2Pje8-$xYWImKR&Bb&BUohC<;6cn`^wB#` z!3EKNJ$1iQeKLy-4HmI(1t58ocBe%Y%)P-$p)M7I9op5H%tXH9S@r8+xw6|Yf=5%E z2V-AwHBb(~U8`|N8;k^!Wp~oqPoD2`mp|O4n_(^^(lA`f1*<#l3o?zmfzT}xakDNs z&6C0S+DV*0(@$&SUMTnNrBMcpX!mp$MycSee271l%#dk07n3!exdY&GASVj0!@D*n zH(>lJ>h()A*V^P7wL9NPam{H+ihpNQWVpMh;|7eRV49U1@csg}n}&U@Nx8~J^I$~v z7Xsu|)=m7u-3pmvhNK0B?#@4hRwmDh1_M+uWl8&$f|ThYSY}~}k*lb|YOb?f2o4?{ z4Q}_Mi@4d_{pSi^8lJ2N;ts3Jw<|8W2jIr8^qQ8+bcGXK7jQRG z?2RCtLC8Smn@;QWcLcNzxw5U7J>5dZouyXq;~r?M{>T8gOiFpgUBn+!{eHL951y>6 z-ove0Noa(9)o4JR$xYZ z+>dVbaF2UPtMC`5rER$!4D9E6S@Z60h<-E}jiqYjYNFiPk_B;aHW#c;{naIR4&u+e zWeL(tp0RRW&0i#tth?h09!~cSJ8T`6PJY|^+x!)C4^+@y$`vO!VGBOU{SyQprh>q^Z%N95W&u2BZ1?T%cY zKlOQ+D|^9}H2a>CM`a*Qa*8Z z5#i!T8pOm-&(a{K*tF=zF>zC~CdO2loGme?#>DK=wWD&!R7i}8bH8+n8pPym=H5Rq zd0B(k2Oo*p*`>`kIqTHuX<4!?aB1A{KF04;+}lJY{tSsfJ-R_m+_bEXV=7FQ_>;3I z#?+aZqft!T=&#&<>Ns+{c1hCr)+kRg_j3Ilw)-Sz>zKHS(UY@`b;m2mQA_ggw*TQc z>hN(iamOL$nugc6mLNfSC8As(*WwEH6U6_2+>ac?*VxZpvL75nKODm!|DVTD2k)|d zKw@XC^G13QQdZrN?tdt&OzXUYd;KE3ew+JuhW)h7@@npwVs6i_6}mqMF8liUf48qp z>qYjJSK5u+K9euOF*Wq{(l*Nu-d7!@{U44i(|t)>9)Z_Smwk11?JMi#=&4z<406>I z9Lo#;yZD)wTOAkjOT0cs%H&#Ka}7O1U+b79V^@nrs<{UYb_aQxcsIa1Ayt*LUtUd=s^pHj`e52k7`*&%F7A3VG+rTzc4#kp5Y z*Ku!V&#=|UPy9Dx_)l7tbm`omJGgH9vXbwR-DH4pTT%DFh-(hPCjD8qa_)a|RIgC5 zRnPzrH@fy;k;rtNY(>y8ne1-M{@&UHe`i#;^Yf`Tv(*ug9-(I+&O? z>CWQ*rxoL@UfZu~8}|<`6Zu^o|3UPTX4~W^U;grEYIOfvyxp8>Ufe&^x77LmpIs<8 zr|s{OvB@hxe96DQl@zeqIPK%^cWjcp@IL>d8va}QS57<9{f4p_q#c*v51#sZX@Bx( zYxwx5IpdfTpb_?8pMrDRMIo=B6b!nN$THob1a%v~{zYfBiy+-v@b6eE96f$bDAhzsf?s`v@;indO8LoO$J5tq`N?0z^PxIX01+g3N-~P`2The8XT)Jva z{~euPiz@zmbf!6x{AE_c;*>dri@t6)(fIg7Ss8ch;-HYO^UVJsRdmpkDY5%8TK}v+ z{VF=>IfOy_*y}Oy%>R&5wEkfx^D1AT*O!C;lU3QSD>)xITcnhUA^-G$y)9d$61l9c zBCeckk;lV>wXpe}%%_sRp)vVq<>2RRk!Iw6+{hM@dBkqF1wZhrAQJKW%O0s<6T5#W zB7Ix(rtop(!8w@AXFu}xNWYdmSeLtY^(DFg6whptiRAKQbOe9z*8DET{kx!P|2`j) zh|D9IwT2lXz9PhThPaG#nZ-X7;(t4rd}?_H=c3N!6TCBvQz*nMhIow-m(MfLEPj&^ z?;hf#oJ;=qxjf6J=YI1;(k~0~%^|)g#J>vhQz8C)i05&Gy5wI!UwgAZjL6N-Gb^72 zq}R_94$j%#YdVFb?-Syq5oZy)-hJ5btdR6Chxkgw(NFNy^53WNbNaxo5&wsfIDdq= ze8RPq&qc)1`0`QG;`%{nIzBz>AzgWw?F-$TpOZ{Ef-X@_$2!R|@gFL;POnaoCsr_E1Rr5h4DRb18rQ7z#bEHSm2n z2rN${+nr~&-`yd82yyfevTOW*;rh3;r{f@UxT!I-ax3Os@_9@aWp2|rwcz?UUW4;} z_xolcaZ*BjY=}P{;_fC&@Ki^&mJMq}+!uG|-?Cv%`BF>1+$LXY%a_~bi@Olevf&-_ zCBdf-k|*36NbstJ;AIKH>)b7WNqKvw?+Q(7+Okc9#Fk0^EtyFj65Tt~l3Z@wb@}v% zNX(7(;1^+!vht0fOx`e)$xUZ>E8yCD+^+pTC=qv;v?<=Li?^2HO@DaQpndw^0|;)^ zW}Z9$P;2NT9+}?Px|SpJXK*rmuT|UNjs5O1x%7K7D()7Qd)h4c$z8sd8&>)ocf@!S zG!VM;naRWOI9mJ8iR*Kn$?J57x2E3#P8ai3pMQeE-Hx%(R$-U!ZmPde(*$q1y?(!$ zzT9Ibk3n9G8$2Tt)R;+@@x5DNJ2NjpJiH4%)5kEb?K1t>|98)sx%x`KS>;+}TX{yx z+;7Ia$%8{dDVlp(*B=AI4di!L+5qkSUEoaq(nlt51mQOj1--_+$2g~%e*Pb9SrRtv{x<10S#F;%l6SVKJcS-3l zuYdnk@Ecbz?(xmwpV!_*63h5*E_~-KKB^6{r7-zoBnKw|7zU! zU%ezMzqWC5yYmj&*eiy3^AK-m-1gsO<95FTLwuZZJFd<$ZsWWX;%|lcr4X-}J@az7 zE5z?Lez$w6)^88vHlJfdd@@|Rw_Fv}II~Q8JC40(ytGNb#ki~uG|o=rcAWXdxE)Wv zG+y7tiNPgu9#4wEx&4$1@!LZD!4Mx8;xj^gv2i<|tTt}zWm|~v3Gr`@*E8kwgK-=G zcjLBSUomde7sYieF3))5wqI8h9=It#v2*mW!$#&{l;xO|Jryt6Xyz?+j%wtw{gAX5Am`g-ZI1ohWOYJ zpJm*(^B0ZVdRZIdZ-w|?;|<(#YdwBt+{Qm`+_v-c#%=oSxP`{$S-`k$=QkR+ams~w zVu&Y)cwghToewi^_d5p8?R<(!Z`=9H#%()aWxS~==MBbfd;SJ4#hT&#$fURVyb$8q zw%arsvX@wOqJ6yk%7+x9uixXtIx5PvbmUo+ms9f!8h&Bkr~4~^UQ`KfW6{`(NW zWZbsTe~jBW+4Ba)d|f%mhj?O$H#ctEXD8!!zYoE=efBZwZTlQ;yoD*xCyn20e4g=^ z#+Mqm?RJfEI}X2TyuOL^4g9)xZqnQ1y%6Hr^0}aHyRMywc-s(93h@EP?Rs^jahuQS zAwDm}Up3y`9f!8_H;vo)JB{0R{;_eJ{$z+>FmBuVU&d{mtT90`UsulYA)XlG&5dVh z=f>@RAA(Cek2U4f$E3IIe5&y>CjC6)ZHzB9-q!eQ#@iWx(|CR3+l|})^|5ier>gb) zxAFGIbLMwHxJ}w~2lv0Gk2PN2copLvjn{*7|7vW~+j4Fb;wd3MHN@A3_|_2LZ`{r! zM~vHiUJUWSLp;AU8n;P#ws!w(c@{Tr0uLq6WIK4uAe26a& z@s-AH|JrEW?)M$I^shpud_FSiZU6egxb0t;jobEr#kg&^)$xdo)Jt2l-+PRAHr~d# z+>_UOeAsv+<9&@+Gd{?84dbJY+w+A<#%=x=8MpoJT{!oNfw%^q@Uem?Xa=05V{jRX_W+uJucYTf9{*`9juHPmbZ)xJs zGH%=d0^_#*FAecE#ve5CHyOA6ahq|w-}7+pFTa}fHBJ1hAznlZ(QVu>>V|l?5FZfY zV~y8x`_X!Q%DBzvOCi28#NRRA)x`hMxQ+k0aob~l+y0Wfh?M5_44m85Y?I!`Ul8K2hxo1#KON%d;gWy(r?#If zCcQjUs-CT=`@wD8p7X*bj{H;8mon+Q882tt9&c5+luv?5UkfhrZ!mtB@nXgsn)u1a zTNtwU?zbXb_S?n8sbS*FKQ%wM8!u)29ysr}iE+E%R&d$xLnclK6JP$R z`|WBx&UgHE>mmL@i0=#Wt!`hk$?@9td|7kf z+4}kHLGtU;pEdUvZ2Fz%I+gXqg))zW@R8i^*9aLTM3}(klFTyP*TiW-y5A{_HMe0J zN%uN3sJl&{Q;Kr`mOh|cJpQ4s@3*W7m;7iRgk;Soo4DlX1OneK=r;9yD0jJcCY$;b zQkia(F;F)3_xz6$S)XH|mi8chQ#MWibQ%A1FaIsw^U2Ad+Xne>>7Gpn zSGSG!-_l*z@lTSE!}W#P<)TRp5GFDsqiZR`EF^z>VhpLfY;qa1dT zmzT!nwnP3~dYsFs$fj}Hp#AG}U+U-4k3OXIqvC>>M~;$zFN%llSj)A*%jaq6~-3pG7_e<-CHtI*v!5@6z~3QEodZ{X|Se zN62-*KalHwe<#;CF*t7Bug1BNT;s_5Tx8SqQ5di4kY`1EXhI%c+P_}j=OUZN*@J$U zMt&#euLoxK|m3%&Sk{^KYBmWok{t@!g$mj3mn__+ZXpG-_ zyt7db1<2EU@<=K28xW@|d0~uib;+j{@`3u2&qF^-BTqv4%ll|#(|i`g@ysXhjeeoe ziD~+rSg^c7>2E+keUH3!9>2eRr1{KW*8id? zxjxrbhI|*w`Bw7h<>bk2^~vX>+**_WR>r4)ki0h5A&-zB$9yq|{Iy$roF(LGX#eZT z7oq)ZCC6?fpOLr5@g5_8xS-#!uFthR&tSg(hte0pIGh{vzoyTQ`K~zmXFhzSEV-_e zYm%2odrl;;h;gY6`KuUjA0nTQd9xpRVa&fH$;{7YkmfjYknRl*ZfQ+*Zj;U*ZjOeUZ#?7h)2mMp+BA=e+I74v+41E zfOT47oUf>N!Z>vc`69%*mHa`R_a&0oi1YbuPre;Lr;zJ)%A+v*83ymTJNLDwce+b zYrQWb*Lr`QTYyD0p*ZQ49uJx-Qsat>44sTEFMWwSKRVYyHNeUuu4|eoK*S{Z=E_`n{W6>$fHOi|D^y$=4L{_4^3< zV)X0B$bXd#yKOT0LiFF~$Xj52vX=ZH{9W>PXg~T~oR-fo7?%!H`W09&ogu#w=TpCt z*Frzh=i)Se3wS{shk9PL&p2{@4yGFU6!eR_d>q!Ly~zJTKTRVq zg?vsRuZr<=CixxJ{C-~|Z;ExrTjXnSJ>e_zteCIQkk`cZtl!CpVqVCO*J(K)#`sW# z{2iQ!mLY!=<5B~1`MVXewIk1pcHWJ=1L6-L*XJZ2Cw~L&Z5ny6>VCfq$Qz-4SCcnH z`Yq&d;yhv(`Bsc0Uy|R2>oTXw8=!yvMt&CUGaK5Amj8dS-Y!hO2IYJU`Ik7qxRrb@ z;v|wsqdm7JuUpxdTM~Iu^xOXASy7&2$Zx~XQ^}{Jzr0AUyzts zNqtUF;}5{`>T`PP8*sd-6lWybgFcU^=}#lwGnD>Bf-mR!e-Z5=8rLl}{qwj!S&+O{bss;Td=Ac^6Uawkd`u)i zf_YG%_tX8}=EFylDgC|hLF92LhwV56t8Gyr24Hcmk!L0Z$|!18+y(1)fY^89s=7 zE7sxT$$!PTJ&SxS#;e8THPIf{kuODkZ6}|KcDtXv(5=2+j+58Hd~u1q7UrWUTo=^x zER6PCfcymJ{dn@l82=NZ_5Tc=Cs_E=nNJgLa!puJ60h=k7HAGUP9r($_`( z4kEv(?Vo%#`r|C}wKe^5EhcY>acmv=WvmmnlefV*wx9f6wD05O-(bCTi98zfbrj}# zEr*SWQ-J&qZU5xIRr1G`Kzs4DB5Q-c~h+429Zy~&*RB|Lcg9xeir#$ zOg;+Z@H%pTRBrwyk3+fbCohbCah$vo%Hb0ED6IdZ&|b9s`(m6gK>n&Ea9ce2cUV6p zkl%rEIFURD)d3ks; z`62Y{LF8vpZsW-xK%80RkE1^>Cf|%KZ{KKE5Cl zh5TyyKZo(K0Qu*b*W$^)#k`Y1o`QKZk^D`J8|}!8VIE8-uZQ*OAo5xjdXJA4dD!PCgL6pZsYZ|H*6McrTF;)A1kcP%ZyiI{%V?jPi*mFOP8} zfjqm;zvNY-eYv$GpNe@inS2x08-vL2!+G3za{apiv&cU{e_Txdm5%@9Q?YK@PQD8H z*-w56{pdJ(Mdb4mc|M${L}47&@}HpXpZr_&uXu9(+@}Qc4ROAl^|?QdpN#g_j?(8x z`egFysNX^4op9bVp1cmqXBPQmh_jfyHpY{6K-w{J)s*hLLN2 zCXs7?W|M1v7LjXyc9Q?6S|r#GlEZx{G`+(tkld8|(H{(wZ%JG5R#q2J{v-;Md}Ch`%{zFsPmZ$`bhCtrx4yOS42zZgWWe{X0Uxjs)n zlYBSkodx9jca2w)YkoG7Ykoc?*ZdqJ*ZiC!e-i7cU&*s!UW-Dz)AHB%ImD1_K5rt| zd{!aXeBMQ_`D{V1`Fw!4i3C`%rPap_ia%}*k^ z=BF*W)_W4U)_Z?)t@knHTJO`yt7Dv*N1g@a-ZFB{|9W!G|8{cC|6X#<|55T*7}tIz z*Yf(4{1ueHK4+)(rSm}%v^(`gj7ztWH^umzK;9bj)IH=+;XJezc}I9x@*|ae`+0*Z|cOf5%_STC$4eent`NNoxA1CjPa(Kd^?shb zALi?S$v0xW%8P!c`FslLOOii~@~lMuGv@0%$hV=tG$+@;*Zcr^9bDJyOFjhWK_khJ zpgf-WFGl!_)7A5@Xh3l;Je6YpdEfi{$fu5f*;7IVx0Ml{AQGA6#AK#e|yX? z`N(5%U9lv21C(1u@?|)Wc!Ycv%5x}rPmEWi$R9u)eSS^zIT!P(zHd+cDY*W<3iZ3t zUsh85`_bMukpGVI+D1MA>x4bzU!olzB0pT(*UNEo{rlJF$ort5WW|0o|C-M-IPN4LavEO;*<#AncDftkztJlc&d7v%iM-XQx z`3n5JkNiQ@?-BA2$p81`dEmt`4(ah~{%;}I{8uB_{NF*Y`ENw7`ENt6`R_um`A;F& z{OkEK=l^L+ulb)tuK8a?uK8b0uKCyTTlcH^-%jZ@{~wcU{=X;J^1no``TvJp^PdCr zu;xeeUyxk$e-pXpzXG}Dzb3inzZJRWzcab!zX!SIzdyO=ev{buay_r#L_Sao)@>h< zSHk(uXXHIG-|71{v|fJ3ID3)OFT-{FE94hr{eJUe-K}wc%&@-^6RbWQ(zE$3*gmkN^qg?fo6zkoOiy5yZu@6E{dJh~J48uZ7Wq}qd*pwh9quQelHc$5D0ywPlYhvcM)~KwEo1o~!S$lDI;bYslx~d|?ZD zAHDxVz5?U+A@T%_!&z!)Ea&AYhZyo#%lmXUlCQ>ixX0-U-+Drjcu$1>~hso~y}IG45?4 z{~PnyIdYBvH@TKu&AT#|!(xmZ4aoPv+mUy`c;1ct1GKA=RESVsOG>g5gc z7AT+h$y=fP50IZhyZw<|^HZj7#&Xzz{!)`%kGBE2mfJ+~rpV9R>=0Z?+=sf zes8}!V?K|gUK)~@#PPNvUmNFN-<4d~XT8bGq8x^hzf{P_8B0FKbL1KFO=!1s$@MzU z67qFO{~CEJ=AF06bv*xwJRio-L*&EJK2MP^z&hbqa=q_!V?BR>GOXp3{}I0e`CGVd zb{qLx%%_dWKfrpgJ-PlJrS9a1<9t2_kt6$&apd{Yk7kgUK{>oc-lc+%|0?-f&73*8`W!Z=xrT;G@2 zko+vl?LP8RSXXo>Z;s;~OkVCrpYI9en=!AgCI1Wam~)D*5u8eVkF`$%yk5 z`AulgbIEVUc)N^zDvozOd35DSu)RnAJl3(Fl2?d}1l!l-`hJqL7 z2$%l%R2QRT7bVY*>;FB-^>aankbi=HH-9z3Q`D{a8v!KsM68Udvp99ECB0pov$Do{NkY`0ddYQc5 zEq=eRk?+akeJlBZIPZJO3u8X|mV8z{C~*%W1SY;#K+U}8G&)N zB>AK0@8!wAK|8ET9*=cbB6;m9et&JqQ!&mwOx_J~(#X%DosT77hW7R}`OY$azYECE zV12TZd=BD&K>iB)`{(4@<9z&+d6d6!Z?{xjqYaNTkR`L=RC{Ws)#yu+LM-|O+_tKfg0NPaik$xQO8 zXb%g?e@A;>LtX;wjkm~Kp!|1}e~%x6rPZkY9wqPW~9me>-^; z=F_9(?_+#;{N9Y^`7iSSGVK7{^ug(Z&dVNhWxKw-m8;OKtAh|-;4I#g1kQV+nM}HlyfigoM@kE%jx5MNM05GIr+0_Z{M+F+_*%Z3;DT9em~~-e69Tc zrMjj6u0nq-N&W}Qp(6PsXwSEk$D;fjlOIC6YEPbwby_lc0>+;KIh^4;QW0Gc_FL^=8|7U z`+tSJE5^eOp|Wd<7Z#;Y^axk( z=~Kx+Mtc}XuFua*C)fQhB(H+=)3xMNalZd9c?qmTJ|_PT?c^}|_qY1|Um(wldd$*3 zV|nU+W62*Y=+oUy{xbSeP4Wd;=hPz~fO)wcxxSyUJ9#|DlQi<@(f;RL$+sf^-;w`W$fy6A{1oz&twYB0oPl;*i2Q4e^YP?EQJ&Sw>!2R*CU0HM z@9$pnE||YYlApmkY7+TDl-o@5hhu#F7va*~Fq8+sSVE3vNo2K&gDxGU-(XyZq$0@w zR^yU>L6ABU**q;-YFyHPj`RnOOZqg-Uq_8g`aBpnP8gT;dog~VGcM^9k^T}~ z%K^E>P|Tft8LyZS)?W28FyWALWrQ{XA&GvQ;%UxqItUj^Spz5%|ETB4Zc8?ft{!-rafx#YaYh=KI2Uo= zG|{-EFOT_jig8K5yRiG>w%Nudy*}4E7q0EF2KwDn@(%EI`CIVv66GW!-tcX#ketvyfJ(hc`NwK zaB1h#9_stUjI1y&^{Ag?^ty4W$8o6lH!1!V8Ao6AuzrgKK}!hxN=ICcVTNh;mCLuZZ!sxrrm?vlQji-nf*f z&ifA;m-H8rzPoWrKRMogaa%v*lD;C=X@iVQ`lShyIuaRWT+$Ck`fj?RPc8JG0>IXnBw=jC+2 zblV}gwufg?j~B?7z_WMpuhaBz!>g0;fHx)o6rM!>HGB;DN%$P{%kWL)SK#}|bD>#4>i zepXxum}OkjYrkGVuKo8F;}WMH;;c3JL7WqC?MKD2&bdI|8{^);`d_Vkl@~`1-$hF*3;9CAaA$=;Pk6`^alzai^_c11pluv6M z?~}%*XmsA6Z9GVy-yi2<@+aZ17?(IY@4stY;(U+vpO7cS`uGQoOB|i|j~bUaOOgJB zaY?W9{(0llfA#$IcjJ;?+gp}y?gzI?IZJ%~yv7{e+z)Qk^4IygV7GwN(^tlM`VGb< zzRuUBjZ6Gwq%RNG_SOycSc`lTJdylacx&=y@PXv7!N-vAfIm&X7e1F<|E~CJDtFpxypLUKXA=ITCDIZXIQTq} zX2zu+C!ro&!R6&L9@aqoF64K@`;Zq$`3xn$1wMiN4)_dm{Tze^wHqF0&&Qo6Fl72nX7cegIpNNuIM+w!8F6kR1{WQ3? zLw&#VeDXATk=vG&PlUfgJ_mk?{AKueu zTao8RyX`_=1U{I&F?=j}3VbTLUf-Axmt@jTj-j0_F)sC}^TmISOV<0K9@kU+IP7;D zc_sL#kVO-*Czw2OJ((C7vKVV$a>wM9}xTG&|gZtvPKE@@z-Zvj? zT+%m1`r&XbpC!ouO!EK2SCDUpziZ;les3u2zPRlJO1}^3KPB&n^RGiDj^uMD@_Ed- z#MgH6qwyepG1+S*@)!9o_*LT)N5|(IdIc{_U-woh?td;vJ_KIbxWv)%xwdi1&-X}w zmvKq2<8xEv((huWak;InaY?W3q^og>e|rf@?am{OOL`rjA2lxNQ;~k4aY?V^^C;tz zehJc#gKImfA(?gCH1ZDc`Q-X}*2~Fg4Z;0q7r^(kM{Z;a};5YR3`O^Go`Ba5#IlqqQf^MVq`w-`D@_x7u z)7Zqx<#v^Za%f{*>QTq@F2;lOH~IYaC4Uv(-?+rl@qDsziIewcA7>8v{qXt5C612g z%Zy8$-AKR6xTM$de4}w``s2_~cN>>DCDEYw8kaaaZXY%->DwXwx5g#Cj@xIAOL~2O z#09w4Zw+~o+x{W%0MGS^|GlQ~0WV5E1YVPT47@(MKJVI!d?C_zAzud{O#T*pEcq_@ zLh^m^Rpe*jZ<1ez?C}IbGu@d_OK1@A@Zm%XK~r3j@x;ROFgba zy~o0}UalaYH<9PWek+szfPPws{4%^Tc`n4ikGu=wCy{G^A7)&}ZQUlo^>|m{dc`!8 zJ{Y$Ve-3#KTwh&i;z;>?it<@*T(W*U`sq63l73vA`{K53I>mj$ydM|ldp&OAb$%!ihL)0Hu*mID)OuFkI3_) z{J$qJ48KgS^_3;nAFtN?B#i&L;aU!wz99L>xE@}@#F26yk8&l z#wESB^OucF{0e2<7q=}nF6niCdCj<_*UuSw!?>i^`DLqdN&g(;?|^GP&P03IPyPn{ z8}j$zKazhA&)47W%xxO~TX+fbU*P4*ufl7Q7ec#gNq!Uj0rJZ5;pDf%Cy}>+&m!*# zUrGK1d?WcX`1|Cq!uP{Nmr6k{B9RB-I?lAh_|V&=moBsq@duDE#r6E* zCXSSk{yo+4#-%*-gCH=Ir?u*-I8kh9VV*-xMH!kTvK>C&B`OEqA|1~ag^!*g? zkn4Sc4~s5V`4sq7a&0FugZ%Modz&wX=eDA7Er+#;b2E8M z+;=Ev;z)=uQ2sTHOMU6Qc9-!WeREbj9fpjYm{+` zqx0Hi;}WN8Mfb&R&ls2VI#ziV_e`N0DI^_9tgfY%|vvye~Um|Vw! z2aU_TR?8=k^nvR*v%8A_#SoKT=C!tkypJOP20jrkain|_P(E|X^>fQ!A>WAf8_3VW zcaWE^?DMnBxYU=jW z)9|~==fFFXFM_9%uYf;6z81ca{B8JV@*VIG$h961!KEIhe4Z@qkLMdoe++THCm)US zJa6JidA@}5{KL4!*Lf#;sNaw5H%O0mSdjb+_zlJ-j?O#PjZ2)`Rejugbmx;zD{V1fLVqDVe{PL`E zNxu&1Uw~^ntY6su(rwGgd%|BQ9|GS>J`w&k`841dYI3b=5sr|B>5hA z1@f=pO~{YI+mrtR??xV7#OGrK`EBqg$UDMklRpGs1ef+K?IAX+kH6Bm)T7QXZy1+) z{0#NDnc~MF{s-j6;GdD}`ln~Y2PJ8+$6CtT`9 z%DhatoQT=u&K@xLPf0)F1O?01~|U$(!EYabQQ`Ivn5=WBMq1&zyozd`&`5?-UrpW+ zzRkGo_e%-xwoihz8d}%`9}D1xXue#u)ckhd~l2}h#lnr!92B} zT@Ko9-;nG4`xANNiaver(fIDZ$vk)t_v_1(@4-6ZF7ox5FWQq&!20A-a=orQk^DoP z*DoU1>y4YqtIK5Wwgcq)_lr)GuS9v~8slH5JYkVf}U|c`d9r9wP5n!p9v= zzCN$_`Q&GDKXg5L-l{(R3G&Ouyk~vff7kr?zS;qSBdR*BtX;&ow#V3n2A+MX$|Dp?d4b;mJ z@;oSqC&_n62HduY{DE@b-ywew`TT%=@ay#V3$#VOmmp6-KI@Tp z%Hdz%n|v?EhZ*D@O8WFNw#z1mi4eihvBB4C*E#WHq%FoLUH_=Z;U6;WVCV@%=VEnT zCk&+Y`|$Hx@_`7Zzt=c=zwAcIh}+cleSdYx_25R3FG4$6M6T~gI7Y6|5C221&&Sq9 zel0X^fkGjKmH$D CX{^2g literal 0 HcmV?d00001 diff --git a/scripts/CBHD/CBHD.pm b/scripts/CBHD/CBHD.pm new file mode 100644 index 00000000..48036944 --- /dev/null +++ b/scripts/CBHD/CBHD.pm @@ -0,0 +1,121 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.02'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +# Preloaded methods go here. + + +sub new { + my $package = shift; + return bless({}, $package); +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->serializedkeypair($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} + +sub serializedkeypair { + my $this = shift; + my $x = shift; + if($x){ + $this->{serializedkey} = $x; + return $this->{serializedkey}; + } + else{ + return $this->{serializedkey}; + } +} +=head2 +---++ deriveChild($hardbool,$childid) +If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to +go from private parent keypair to private child keypair, then set $hardbool to true. + +=cut +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin::CBHD; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + die "no private key" unless $this->serializedkeypair; + $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $address; +} + +sub publickey { + my $this = shift; + my $x = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $x; +} + +1; diff --git a/scripts/CBHD/CBHD.pm.real b/scripts/CBHD/CBHD.pm.real new file mode 100644 index 00000000..266ca642 --- /dev/null +++ b/scripts/CBHD/CBHD.pm.real @@ -0,0 +1,115 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.02'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +# Preloaded methods go here. + + +sub new { + my $package = shift; + return bless({}, $package); +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->load($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} + +sub privatekey { + my $this = shift; + my $x = shift; + if($x){ + $this->{serializedkey} = $x; + return $this->{serializedkey}; + } + else{ + return $this->{serializedkey}; + } +} + +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + $childkey->privatekey(CBitcoin::CBHD::deriveChildPrivate($hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no private key" unless $this->privatekey(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->privatekey()); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + die "no private key" unless $this->privatekey(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->privatekey()); + }; + if($@){ + return undef; + } + return $address; +} + +sub publickey { + my $this = shift; + my $x = ''; + eval{ + die "no private key" unless $this->privatekey(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->privatekey()); + }; + if($@){ + return undef; + } + return $x; +} + +1; diff --git a/scripts/c2xs/CBHD.xs b/scripts/CBHD/CBHD.xs similarity index 92% rename from scripts/c2xs/CBHD.xs rename to scripts/CBHD/CBHD.xs index 71e55c00..3ed763ea 100644 --- a/scripts/c2xs/CBHD.xs +++ b/scripts/CBHD/CBHD.xs @@ -38,12 +38,12 @@ char* newMasterKey(int arg){ return (char *)CBByteArrayGetData(str); } -char* deriveChildPrivate(char* privstring,bool hard,int child){ +char* deriveChildPrivate(char* privstring,bool private,int child){ CBHDKey* masterkey = importDataToCBHDKey(privstring); // generate child key CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; + CBHDKeyChildID childID = { private, child}; CBHDKeyDeriveChild(masterkey, childID, childkey); free(masterkey); @@ -76,6 +76,13 @@ char* exportAddressFromCBHDKey(char* privstring){ CBReleaseObject(address); return (char *)CBByteArrayGetData(addressstring); } +char* exportPublicKeyFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); + free(cbkey); + return (char*) pubkey; +} + char* newWIF(int arg){ CBKeyPair * key = CBNewKeyPair(true); @@ -100,7 +107,7 @@ char* publickeyFromWIF(char* wifstring){ memcpy(key->privkey, privKey, 32); CBKeyGetPublicKey(key->privkey, key->pubkey.key); return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - + } char* addressFromPublicKey(char* pubkey){ @@ -118,12 +125,12 @@ char* addressFromPublicKey(char* pubkey){ uint8_t hash[32]; CBSha256(key->pubkey.key, 33, hash); CBRipemd160(hash, 32, key->pubkey.hash); - + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); free(key); CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); CBReleaseObject(address); - + return (char *)CBByteArrayGetData(addressstring); } @@ -156,9 +163,9 @@ newMasterKey (arg) int arg char * -deriveChildPrivate (privstring, hard, child) +deriveChildPrivate (privstring, private, child) char * privstring - bool hard + bool private int child char * @@ -169,6 +176,10 @@ char * exportAddressFromCBHDKey (privstring) char * privstring +char * +exportPublicKeyFromCBHDKey (privstring) + char * privstring + char * newWIF (arg) int arg diff --git a/scripts/c2xs/MYMETA.json b/scripts/CBHD/MYMETA.json similarity index 97% rename from scripts/c2xs/MYMETA.json rename to scripts/CBHD/MYMETA.json index 4038a4f0..b8b2a6f4 100644 --- a/scripts/c2xs/MYMETA.json +++ b/scripts/CBHD/MYMETA.json @@ -35,5 +35,5 @@ } }, "release_status" : "stable", - "version" : "0.01" + "version" : "0.02" } diff --git a/scripts/c2xs/MYMETA.yml b/scripts/CBHD/MYMETA.yml similarity index 96% rename from scripts/c2xs/MYMETA.yml rename to scripts/CBHD/MYMETA.yml index 220cf444..a8fd7c6e 100644 --- a/scripts/c2xs/MYMETA.yml +++ b/scripts/CBHD/MYMETA.yml @@ -18,4 +18,4 @@ no_index: - t - inc requires: {} -version: 0.01 +version: 0.02 diff --git a/scripts/CBHD/Makefile.PL b/scripts/CBHD/Makefile.PL new file mode 100644 index 00000000..e796988d --- /dev/null +++ b/scripts/CBHD/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::CBHD', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.02' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/CBHD/Makefile.old b/scripts/CBHD/Makefile.old new file mode 100644 index 00000000..e3a67291 --- /dev/null +++ b/scripts/CBHD/Makefile.old @@ -0,0 +1,735 @@ +# This Makefile is for the CBitcoin::CBHD extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::CBHD] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.02] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::CBHD +NAME_SYM = CBitcoin_CBHD +VERSION = 0.02 +VERSION_MACRO = VERSION +VERSION_SYM = 0_02 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.02 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/CBHD +BASEEXT = CBHD +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = /home/joeldejesus/Workspace/cbitcoin/library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = CBHD.pm + +PM_TO_BLIB = CBHD.pm \ + $(INST_LIB)/CBitcoin/CBHD.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::CBHD might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-CBHD' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-CBHD",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + CBHD.pm $(INST_LIB)/CBitcoin/CBHD.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/c2xs/blib/arch/.exists b/scripts/CBHD/blib/arch/.exists similarity index 100% rename from scripts/c2xs/blib/arch/.exists rename to scripts/CBHD/blib/arch/.exists diff --git a/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists similarity index 100% rename from scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/.exists rename to scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists diff --git a/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so new file mode 100755 index 0000000000000000000000000000000000000000..e1a8c70973e4f11e151356a7a4a074b8e7560c66 GIT binary patch literal 87701 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� z=e6-i9cM7ViL1B)gEvOFq`^EWQ1kU0{DuhEXYketmoWHU5w1hW+4vVNarI-i4YXq2 zXWI%U!h#b9WC#(G_J+!@-ok)oT9yH)etp;tyj^tmf z>w}sHTxy^d>&~Sg(gGg~3#JYH`w-RPLEWpjJ{e|78~B9~b;v;LL6<1-Lz??*dL<1E zemKJQ8T`!%*KhE*B3#no$0FQ-!7G+IdQrO=d}@RnFnDEzOB&oC;rb1Jd4%gTI2qv* z1{Wh-hjy{?Kd$}7ycuZ4y3d;xd@?LJVc@o*i4gOq&>ofR&Mz{`bWqq5~Jm7i*typ)i zKduGd85T?%cwdO>&{lt>w>}(ZNgHUr1z)-8jQ(1M_eZ4+v~k1lGVsALSBD4nkly;5 zUPZ?#%%j5j1Fp~DZ$`L&gTEEwk_JB(;RXyo8AnuWeM1JH65$36J~hH64PF`H`VH=n zaD4_RBV5AZVub6|aoW$v^-3M5pcU&r+eWx2!-5kAZo}cq{87g#cu>2bI!;s8LN^_! z)t(X7b;WlTd^SWKGLVOV^VeO+X;q$<6CI~84*!;)>NrjD>+}3k$0=xygBM@c(fbbe zT%x6x>$OwI>5YE9zL<`i)qMBq6{_ic?S_%Ii?*`d_lKp@1{%L~DRsBzHrDH+<9?=D zj1*mUoc8Z(y^4-gcrL>A8GLPo>o<5n_t+&iZHaRfi3BV5AZFGskcXzCqguz{Ylkwl8}pjs#gyTrny)_``xU>hpb@i+TC?1*2ur06G=Aw)YN_Tn z*6X4SFV!qYif+pAAd;{`daD>_NgHUiK=bV+0IHn;*2Y_-iVQSDL#uXH)X}4Rw1U6XE9c(edm~(*!Jmq7 z{RZD3;gSY_I>HSY{4BnP!ymP(!Oumw0fT=U;gSYFAL059{*MUPXRx;-Y$IXt?g%&J z?nZxY{GZeQf|CriV%<5(3O*PXoG|cA?H81#fy3Gbr&TRwEp*YUU(srR9#((F-)pts z2&+G2;1i1Ks#X6IyUuxYR%^)}2eMT3{|Lm^Sdi5Op9D2M67(w|+0ok~Z)k zLsZA4|AF4RGt81U@Eakj{vRS<>y@`JCSR_QF}dr?P zV&DozbyZ`_v|OKFsm2WMSDaI0mRhA)2(W?HI2t`i8;g41!O<_%3SOz#4mD;s1~kKq zsj=VGd|%Kjv`EK1LFldA8`BwE%0Diu!9Nj)>|LbEBW5wk1Njc zy`}y>tn4xae@jQ*MMUq@-1qCXgURj2=QYENG5Pm3-@C&$JH~XLKFn$l6aPfh_K<5* zpMbOnZQXQ7e-|p(r{$uY4!TVr+_ERtey$HU*+WkDG@m^Z*Is^+=3lJWQ}w!8ul@R@ z&nxwMrCt}RZ=rtRGkRTrm+G?-_Tb6c%DVPIggtU&4`sAhvQW9v4iRuAcj-Q*Z33Te zn>u>6?Qh#4ZEtU(a_ekIr>($wx-DVbLjPCOwq0QxVzy<{R@_^t+$k1aZ7Xn|h6pW0 z`x8xD=+J`G7QSpN?k!ZVPlH_T`F~r30u}|iSXYm>I=A?bMF`r#0IC3z`csRb~l)xac8IpGdKl0Ot}*J8myEs_^K?jq4rD(r+5zH z_-gqxD6O~}Cvlv|AYN@N@#uj;_d+PnJj6S?z`LZJ)?v3M@iyPA-H~$%^bRN!qVZOt zVzs6Y(*FM;&Ok9LDO13=sz$f#s?l}5(OKd&0huJ>wr&5qrh z*56JfUx@Yp&(v|Y>-#jj4a?fG>p|TARjm9@l}NkVih=!S+tz=r*2@84-B#bcmbdFY z+F@(o%G>zMZRH16x|;3Ur_em{p z*SnPd?ruasL%$n02;2M}KHufE>%CS`ukG}^3;1~XzBjmxcAaP|VDqQdc^?J9ISR?V zHR*0`b(i-1?dkiFjYiVSC$xOxzgYgWD9ip^`93Y*_g^gkMU*A)S^0h~->>B#Qo<@5 zhx}`N@DR$z+kbL235@4GIVu;A{2l+<`0e@)+>DpMax5v?uN-rw9^}o~&&t{LJGd7w zKQNw@+ympTkmYl!h<_~oH~{9c@egVFp#{pfv4i&%%Ch|-{Ez>vyuDUz_iQ+JeFirS zwmiJz1$z0l*V~?#-@|RkvEW;@{70^rYQjJ5dHHr=JC2!GeZdvEq;0_MdHK?0JB}r< z`v+J4PueD+J@46CzI~jp`MN9rowgfR-mdGkyvrT^^%uDud)7ucLRQYOTNWt4ci83J z`Xb|J9M^cq>g4s7^IiE}Z4I_1r9UcS@#5b1##~N&BI-4`yB`0IoTiqkU%R#czJ0Fz zFU_!M?d|O=y6dGEy)!>1o}m}o*8G!JJbKbbFW&D3()^0n{3m$kC$!=hduIPz@h|br zuD9Y7p4sbG{1VUXa4Y_$p?z(|FZIlBw&It0W)EBO%RRGmt@sl|JJyOn$uqmuitqEx z-n8PuU0aiJl)$~-DW2Jh_|0A{Z%qHU;!pKVueah)gPu;tQ3CgRD?QW0@teKg>7MD= zR(!u_db1V(vUoCtd%c&3a2)9M)Om>`0rz_CTGVCe^5&t(~6dYW~l>&gHlM zzgh85Yd;O&5PYZJy9W5P;vHA`xYl!PvbFvX3cj2B#{@V-G^YjAwf3-mV z3cOdW*mHz<2BCxa4|h&;y0-zOHR|BDOM^SI!D{KBU3q?ETm zPf0z?yy{wqG5T|zPx|!fyxgJ%`0jo;J;TU*H~jev;Q7{cH#+PSe5YJrD)lV$hLjGU z(*BecpH_a`toWM*uZh^@_66`CUjYAw1@PZm0RI! z=(=G6{3!6rC|d|!wm|;M0{C|U-%T#ww*dZLsi)J=ynliE9|gYK{Qm0#`EiaUJ~A;~ za>qI2{Ov41eTMV+aCUGIylHHIusekhUQHTYqNOcN*X;S|v#z8#qx+&FYTkAdrw3CE_DaVjUzo#)x0I1*bvs)@rv`IU)4 z!^4uofrSNpvpAMjk2?;69r)tqcz~0t(PuXRgLCx?KhS`WL3zRUBYU^)!6EoTFtKOM za$mH2-{`j8f%{%wFtH6^6${+)e_cN~o0iXj&Iaqkg8>&jGdRo|JO7-glWyI5(eBjf zSg>wz-Qe(o2U+W4WlZ35by9iPfdvLs=%?$>~$(oR3Fr^%h{!3?YfOD6R z&UQP&HgIPIcOF8C6OM5fsvaw-$NqL1L}v#j@*jRhxwB%NZW;SdTif}65zRJq{i0Xw zBj)jA4-dF=J#8j%lqC*wZ#%2FYfpI2W=n^xign?6t+As{^(&V=TNcNO%Xy13KRj-+ zvwBCtt_PLJ`yM;8v9pfoBV_pUTPVli{)k7yQ-P)HZ6~@)=W#}B*o&^;v(y7eU5C3c zr2BASG&kgD=|IO9MD$~p6dut%a$2Nx3~k`>`_2(|`4C$B!KYGw!4E_6Lphz*cAcY$ znh|fflUC(?brt5YUdPt@wZhhKb&0xJK-mb*w#Pnr u)tx26Va2{Rfv-DeXc6RdvaNh2+TU?kj1ybGZ6}k$FCm3rH|g??y8j2%Bq&P& literal 0 HcmV?d00001 diff --git a/scripts/c2xs/blib/lib/CBitcoin/.exists b/scripts/CBHD/blib/lib/CBitcoin/.exists similarity index 100% rename from scripts/c2xs/blib/lib/CBitcoin/.exists rename to scripts/CBHD/blib/lib/CBitcoin/.exists diff --git a/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm b/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm new file mode 100644 index 00000000..48036944 --- /dev/null +++ b/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm @@ -0,0 +1,121 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.02'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +# Preloaded methods go here. + + +sub new { + my $package = shift; + return bless({}, $package); +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->serializedkeypair($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} + +sub serializedkeypair { + my $this = shift; + my $x = shift; + if($x){ + $this->{serializedkey} = $x; + return $this->{serializedkey}; + } + else{ + return $this->{serializedkey}; + } +} +=head2 +---++ deriveChild($hardbool,$childid) +If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to +go from private parent keypair to private child keypair, then set $hardbool to true. + +=cut +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin::CBHD; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + die "no private key" unless $this->serializedkeypair; + $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $address; +} + +sub publickey { + my $this = shift; + my $x = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $x; +} + +1; diff --git a/scripts/c2xs/blib/lib/CBitcoin/coinx2.pl b/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl similarity index 100% rename from scripts/c2xs/blib/lib/CBitcoin/coinx2.pl rename to scripts/CBHD/blib/lib/CBitcoin/coinx2.pl diff --git a/scripts/c2xs/blib/lib/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists similarity index 100% rename from scripts/c2xs/blib/lib/auto/CBitcoin/CBHD/.exists rename to scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists diff --git a/scripts/c2xs/blib/man1/.exists b/scripts/CBHD/blib/man1/.exists similarity index 100% rename from scripts/c2xs/blib/man1/.exists rename to scripts/CBHD/blib/man1/.exists diff --git a/scripts/c2xs/blib/man3/.exists b/scripts/CBHD/blib/man3/.exists similarity index 100% rename from scripts/c2xs/blib/man3/.exists rename to scripts/CBHD/blib/man3/.exists diff --git a/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm b/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm new file mode 100644 index 00000000..ec0d3242 --- /dev/null +++ b/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm @@ -0,0 +1,134 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "CBHD 3" +.TH CBHD 3 "2014-06-25" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.ie n .SS " \-\-\-++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true." +.el .SS " \-\-\-++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set \f(CW$hardbool\fP to false. If you want to go from private parent keypair to private child keypair, then set \f(CW$hardbool\fP to true." +.IX Subsection " ---++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true." diff --git a/scripts/c2xs/blib/script/.exists b/scripts/CBHD/blib/script/.exists similarity index 100% rename from scripts/c2xs/blib/script/.exists rename to scripts/CBHD/blib/script/.exists diff --git a/scripts/c2xs/coinx2.pl b/scripts/CBHD/coinx2.pl similarity index 87% rename from scripts/c2xs/coinx2.pl rename to scripts/CBHD/coinx2.pl index 324425b4..0d4b2dbe 100644 --- a/scripts/c2xs/coinx2.pl +++ b/scripts/CBHD/coinx2.pl @@ -6,7 +6,7 @@ my $config_opts = {'WRITE_PM' => 1, 'WRITE_MAKEFILE_PL' => 1, - 'VERSION' => 0.01, + 'VERSION' => 0.02, }; diff --git a/scripts/c2xs/pm_to_blib b/scripts/CBHD/old-config/CBHD.bs similarity index 100% rename from scripts/c2xs/pm_to_blib rename to scripts/CBHD/old-config/CBHD.bs diff --git a/scripts/CBHD/old-config/CBHD.pm b/scripts/CBHD/old-config/CBHD.pm new file mode 100644 index 00000000..48036944 --- /dev/null +++ b/scripts/CBHD/old-config/CBHD.pm @@ -0,0 +1,121 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.02'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +# Preloaded methods go here. + + +sub new { + my $package = shift; + return bless({}, $package); +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->serializedkeypair($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} + +sub serializedkeypair { + my $this = shift; + my $x = shift; + if($x){ + $this->{serializedkey} = $x; + return $this->{serializedkey}; + } + else{ + return $this->{serializedkey}; + } +} +=head2 +---++ deriveChild($hardbool,$childid) +If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to +go from private parent keypair to private child keypair, then set $hardbool to true. + +=cut +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin::CBHD; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + die "no private key" unless $this->serializedkeypair; + $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $address; +} + +sub publickey { + my $this = shift; + my $x = ''; + eval{ + die "no private key" unless $this->serializedkeypair(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return $x; +} + +1; diff --git a/scripts/CBHD/old-config/MYMETA.json b/scripts/CBHD/old-config/MYMETA.json new file mode 100644 index 00000000..b8b2a6f4 --- /dev/null +++ b/scripts/CBHD/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-CBHD", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.02" +} diff --git a/scripts/CBHD/old-config/MYMETA.yml b/scripts/CBHD/old-config/MYMETA.yml new file mode 100644 index 00000000..a8fd7c6e --- /dev/null +++ b/scripts/CBHD/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-CBHD +no_index: + directory: + - t + - inc +requires: {} +version: 0.02 diff --git a/scripts/CBHD/old-config/Makefile.PL b/scripts/CBHD/old-config/Makefile.PL new file mode 100644 index 00000000..e796988d --- /dev/null +++ b/scripts/CBHD/old-config/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::CBHD', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.02' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/CBHD/old-config/Makefile.old b/scripts/CBHD/old-config/Makefile.old new file mode 100644 index 00000000..e3a67291 --- /dev/null +++ b/scripts/CBHD/old-config/Makefile.old @@ -0,0 +1,735 @@ +# This Makefile is for the CBitcoin::CBHD extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::CBHD] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.02] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::CBHD +NAME_SYM = CBitcoin_CBHD +VERSION = 0.02 +VERSION_MACRO = VERSION +VERSION_SYM = 0_02 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.02 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/CBHD +BASEEXT = CBHD +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = /home/joeldejesus/Workspace/cbitcoin/library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = CBHD.pm + +PM_TO_BLIB = CBHD.pm \ + $(INST_LIB)/CBitcoin/CBHD.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::CBHD might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-CBHD' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-CBHD",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + CBHD.pm $(INST_LIB)/CBitcoin/CBHD.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/module/CBitcoin/pm_to_blib b/scripts/CBHD/old-config/pm_to_blib similarity index 100% rename from scripts/module/CBitcoin/pm_to_blib rename to scripts/CBHD/old-config/pm_to_blib diff --git a/scripts/module/CBitcoin/blib/arch/.exists b/scripts/CBHD/pm_to_blib similarity index 100% rename from scripts/module/CBitcoin/blib/arch/.exists rename to scripts/CBHD/pm_to_blib diff --git a/scripts/c2xs/src/CBHD.c b/scripts/CBHD/src/CBHD.c similarity index 94% rename from scripts/c2xs/src/CBHD.c rename to scripts/CBHD/src/CBHD.c index f380a015..dd521648 100644 --- a/scripts/c2xs/src/CBHD.c +++ b/scripts/CBHD/src/CBHD.c @@ -34,12 +34,12 @@ char* newMasterKey(int arg){ return (char *)CBByteArrayGetData(str); } -char* deriveChildPrivate(char* privstring,bool hard,int child){ +char* deriveChildPrivate(char* privstring,bool private,int child){ CBHDKey* masterkey = importDataToCBHDKey(privstring); // generate child key CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; + CBHDKeyChildID childID = { private, child}; CBHDKeyDeriveChild(masterkey, childID, childkey); free(masterkey); @@ -72,6 +72,13 @@ char* exportAddressFromCBHDKey(char* privstring){ CBReleaseObject(address); return (char *)CBByteArrayGetData(addressstring); } +char* exportPublicKeyFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); + free(cbkey); + return (char*) pubkey; +} + char* newWIF(int arg){ CBKeyPair * key = CBNewKeyPair(true); diff --git a/scripts/CBitcoin.pm b/scripts/CBitcoin.pm deleted file mode 100644 index 61790b5a..00000000 --- a/scripts/CBitcoin.pm +++ /dev/null @@ -1,159 +0,0 @@ - use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' - ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' -# ,LD => 'gcc -Wl,-rpath=../bin' - ,CLEAN_AFTER_BUILD => 0 - ,BUILD_NOISY => 1 ; - - -newMasterKey(1); - -__END__ -__C__ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* newMasterKey(int arg){ - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* deriveChildPrivate(char* privstring,bool hard,int child){ - CBHDKey* masterkey = importDataToCBHDKey(privstring); - - // generate child key - CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { hard, child}; - CBHDKeyDeriveChild(masterkey, childID, childkey); - free(masterkey); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(childkey, keyData); - free(childkey); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* exportWIFFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBWIF * wif = CBHDKeyGetWIF(cbkey); - free(cbkey); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* exportAddressFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); - free(cbkey); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - return (char *)CBByteArrayGetData(addressstring); -} - -char* newWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - free(key); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* publickeyFromWIF(char* wifstring){ - CBByteArray * old = CBNewByteArrayFromString(wifstring,true); - CBWIF * wif = CBNewWIFFromString(old, false); - CBDestroyByteArray(old); - uint8_t privKey[32]; - CBWIFGetPrivateKey(wif,privKey); - CBFreeWIF(wif); - CBKeyPair * key = CBNewKeyPair(true); - CBInitKeyPair(key); - memcpy(key->privkey, privKey, 32); - CBKeyGetPublicKey(key->privkey, key->pubkey.key); - return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - -} - -char* addressFromPublicKey(char* pubkey){ - CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); - //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); - //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); - - - //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); - - CBKeyPair * key = CBNewKeyPair(false); - memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); - CBDestroyByteArray(pubkeystring); - // this code came from CBKeyPairGetHash definition - uint8_t hash[32]; - CBSha256(key->pubkey.key, 33, hash); - CBRipemd160(hash, 32, key->pubkey.hash); - - CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); - free(key); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - - return (char *)CBByteArrayGetData(addressstring); -} - -char* createWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBReleaseObject(wif); - //return (char *)CBByteArrayGetData(str); - CBReleaseObject(str); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - return (char *)CBByteArrayGetData(string); - //CBReleaseObject(key); - //CBReleaseObject(address); -} - - - - - - - - diff --git a/scripts/module/CBitcoin/Changes b/scripts/CBitcoin/Changes similarity index 67% rename from scripts/module/CBitcoin/Changes rename to scripts/CBitcoin/Changes index da0cb272..15cb192c 100644 --- a/scripts/module/CBitcoin/Changes +++ b/scripts/CBitcoin/Changes @@ -1,6 +1,6 @@ Revision history for Perl extension CBitcoin. -0.01 Mon Jun 16 14:37:15 2014 +0.01 Tue Jun 17 10:21:35 2014 - original version; created by h2xs 1.23 with options - -A -n CBitcoin + -AXc -n CBitcoin diff --git a/scripts/module/CBitcoin/MANIFEST b/scripts/CBitcoin/MANIFEST similarity index 75% rename from scripts/module/CBitcoin/MANIFEST rename to scripts/CBitcoin/MANIFEST index 5801121c..8e0c9f9e 100644 --- a/scripts/module/CBitcoin/MANIFEST +++ b/scripts/CBitcoin/MANIFEST @@ -1,8 +1,6 @@ -CBitcoin.xs Changes Makefile.PL MANIFEST -ppport.h README t/CBitcoin.t lib/CBitcoin.pm diff --git a/scripts/module/CBitcoin/MYMETA.json b/scripts/CBitcoin/MYMETA.json similarity index 92% rename from scripts/module/CBitcoin/MYMETA.json rename to scripts/CBitcoin/MYMETA.json index e9d6297e..ee26daad 100644 --- a/scripts/module/CBitcoin/MYMETA.json +++ b/scripts/CBitcoin/MYMETA.json @@ -1,5 +1,5 @@ { - "abstract" : "Perl extension for blah blah blah", + "abstract" : "Perl extension for the cbitcoin library", "author" : [ "Joel DeJesus " ], diff --git a/scripts/module/CBitcoin/MYMETA.yml b/scripts/CBitcoin/MYMETA.yml similarity index 89% rename from scripts/module/CBitcoin/MYMETA.yml rename to scripts/CBitcoin/MYMETA.yml index 6463c031..867032bf 100644 --- a/scripts/module/CBitcoin/MYMETA.yml +++ b/scripts/CBitcoin/MYMETA.yml @@ -1,5 +1,5 @@ --- -abstract: 'Perl extension for blah blah blah' +abstract: 'Perl extension for the cbitcoin library' author: - 'Joel DeJesus ' build_requires: diff --git a/scripts/module/CBitcoin/Makefile.PL b/scripts/CBitcoin/Makefile.PL similarity index 50% rename from scripts/module/CBitcoin/Makefile.PL rename to scripts/CBitcoin/Makefile.PL index 72447001..33000f9b 100644 --- a/scripts/module/CBitcoin/Makefile.PL +++ b/scripts/CBitcoin/Makefile.PL @@ -9,9 +9,4 @@ WriteMakefile( ($] >= 5.005 ? ## Add these new keywords supported since 5.005 (ABSTRACT_FROM => 'lib/CBitcoin.pm', # retrieve abstract from module AUTHOR => 'Joel DeJesus ') : ()), - LIBS => ['-lcbitcoin.2.0','-lcbitcoin-network.2.0','-lcbitcoin-storage.2.0','-lcbitcoin-threads.2.0','-lpthread','-lcbitcoin-logging.2.0','-lcbitcoin-crypto.2.0','-lcrypto','-lcbitcoin.2.0','-lcbitcoin-file-ec.2.0','-lcbitcoin-rand.2.0'], # e.g., '-lm' - DEFINE => '', # e.g., '-DHAVE_SOMETHING' - INC => '-I.', # e.g., '-I. -I/usr/include/other' - # Un-comment this if you add C files to link with later: - # OBJECT => '$(O_FILES)', # link all the C files too ); diff --git a/scripts/module/CBitcoin/README b/scripts/CBitcoin/README similarity index 100% rename from scripts/module/CBitcoin/README rename to scripts/CBitcoin/README diff --git a/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/.exists b/scripts/CBitcoin/blib/arch/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/arch/auto/CBitcoin/.exists rename to scripts/CBitcoin/blib/arch/.exists diff --git a/scripts/module/CBitcoin/blib/lib/.exists b/scripts/CBitcoin/blib/arch/auto/CBitcoin/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/lib/.exists rename to scripts/CBitcoin/blib/arch/auto/CBitcoin/.exists diff --git a/scripts/module/CBitcoin/blib/lib/auto/CBitcoin/.exists b/scripts/CBitcoin/blib/lib/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/lib/auto/CBitcoin/.exists rename to scripts/CBitcoin/blib/lib/.exists diff --git a/scripts/CBitcoin/blib/lib/CBitcoin.pm b/scripts/CBitcoin/blib/lib/CBitcoin.pm new file mode 100644 index 00000000..26b0a983 --- /dev/null +++ b/scripts/CBitcoin/blib/lib/CBitcoin.pm @@ -0,0 +1,164 @@ +package CBitcoin; + +use 5.014002; +use strict; +use warnings; + +use CBitcoin::CBHD; + +require Exporter; + +our @ISA = qw(Exporter); + +# Items to export into callers namespace by default. Note: do not export +# names by default without a very good reason. Use EXPORT_OK instead. +# Do not simply export all your public functions/methods/constants. + +# This allows declaration use CBitcoin ':all'; +# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK +# will save memory. +our %EXPORT_TAGS = ( 'all' => [ qw( + +) ] ); + +our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); + +our @EXPORT = qw( + +); + +our $VERSION = '0.01'; + + +# Preloaded methods go here. +sub new { + my $package = shift; + return bless({}, $package); +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->load($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} +# load +sub load { + my $this = shift; + my $serializedkey = shift; + + eval{ + # TODO:we need to do some eval here to see if this is a legit master key + # .. test(key) || die "key is bad"; + $this->{serializedkey} = $serializedkey; + }; + if($@){ + return 0; + } + return 1; +} + + +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + $childkey->load(CBitcoin::CBHD::deriveChildPrivate($hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no internal key" unless $this->{serializedkey} ; + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->{serializedkey}); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + $address = CBitcoin::CBHD::exportAddressFromCBHDKey + }; + if($@){ + return undef; + } +} + +1; +__END__ +# Below is stub documentation for your module. You'd better edit it! + +=head1 NAME + +CBitcoin - Perl extension for the cbitcoin library + +=head1 SYNOPSIS + + use CBitcoin; + + my $parentkey = new CBitcoin; + $parentkey->generate(); + my $childkey = $parentkey->deriveChild(0,333222); + my $wifstring = $childkey->WIF(); + my $address = $childkey->Address(); + + + +=head1 DESCRIPTION + +This module was built, in order to perform bitcoin cryptographic operations on low powered devices. + +=head2 EXPORT + + + + + +=head1 SEE ALSO + +Please see the C library cbitcoin for documentation on how the c functions work. + +=head1 AUTHOR + +Joel DeJesus, Edejesus.joel@e-flamingo.jp + +=head1 COPYRIGHT AND LICENSE + +Copyright (C) 2014 by Joel DeJesus + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.14.2 or, +at your option, any later version of Perl 5 you may have available. + + +=cut diff --git a/scripts/module/CBitcoin/blib/man1/.exists b/scripts/CBitcoin/blib/lib/auto/CBitcoin/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/man1/.exists rename to scripts/CBitcoin/blib/lib/auto/CBitcoin/.exists diff --git a/scripts/module/CBitcoin/blib/man3/.exists b/scripts/CBitcoin/blib/man1/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/man3/.exists rename to scripts/CBitcoin/blib/man1/.exists diff --git a/scripts/module/CBitcoin/blib/script/.exists b/scripts/CBitcoin/blib/man3/.exists similarity index 100% rename from scripts/module/CBitcoin/blib/script/.exists rename to scripts/CBitcoin/blib/man3/.exists diff --git a/scripts/module/CBitcoin/blib/man3/CBitcoin.3pm b/scripts/CBitcoin/blib/man3/CBitcoin.3pm similarity index 85% rename from scripts/module/CBitcoin/blib/man3/CBitcoin.3pm rename to scripts/CBitcoin/blib/man3/CBitcoin.3pm index 4b9dbbdc..47b0e54f 100644 --- a/scripts/module/CBitcoin/blib/man3/CBitcoin.3pm +++ b/scripts/CBitcoin/blib/man3/CBitcoin.3pm @@ -124,42 +124,35 @@ .\" ======================================================================== .\" .IX Title "CBitcoin 3" -.TH CBitcoin 3 "2014-06-16" "perl v5.14.2" "User Contributed Perl Documentation" +.TH CBitcoin 3 "2014-06-17" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" -CBitcoin \- Perl extension for blah blah blah +CBitcoin \- Perl extension for the cbitcoin library .SH "SYNOPSIS" .IX Header "SYNOPSIS" -.Vb 2 +.Vb 1 \& use CBitcoin; -\& blah blah blah +\& +\& my $parentkey = new CBitcoin; +\& $parentkey\->generate(); +\& my $childkey = $parentkey\->deriveChild(0,333222); +\& my $wifstring = $childkey\->WIF(); +\& my $address = $childkey\->Address(); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" -Stub documentation for CBitcoin, created by h2xs. It looks like the -author of the extension was negligent enough to leave the stub -unedited. -.PP -Blah blah blah. +This module was built, in order to perform bitcoin cryptographic operations on low powered devices. .SS "\s-1EXPORT\s0" .IX Subsection "EXPORT" -None by default. .SH "SEE ALSO" .IX Header "SEE ALSO" -Mention other useful documentation such as the documentation of -related modules or operating system documentation (such as man pages -in \s-1UNIX\s0), or any relevant external documentation such as RFCs or -standards. -.PP -If you have a mailing list set up for your module, mention it here. -.PP -If you have a web site set up for your module, mention it here. +Please see the C library cbitcoin for documentation on how the c functions work. .SH "AUTHOR" .IX Header "AUTHOR" -Joel DeJesus, +Joel DeJesus, .SH "COPYRIGHT AND LICENSE" .IX Header "COPYRIGHT AND LICENSE" Copyright (C) 2014 by Joel DeJesus diff --git a/scripts/CBitcoin/blib/script/.exists b/scripts/CBitcoin/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/lib/CBitcoin.pm b/scripts/CBitcoin/lib/CBitcoin.pm similarity index 60% rename from scripts/module/CBitcoin/lib/CBitcoin.pm rename to scripts/CBitcoin/lib/CBitcoin.pm index 38e8c96a..956397d0 100644 --- a/scripts/module/CBitcoin/lib/CBitcoin.pm +++ b/scripts/CBitcoin/lib/CBitcoin.pm @@ -4,6 +4,8 @@ use 5.014002; use strict; use warnings; +use CBitcoin::CBHD; + require Exporter; our @ISA = qw(Exporter); @@ -27,10 +29,7 @@ our @EXPORT = qw( our $VERSION = '0.01'; -require XSLoader; -XSLoader::load('CBitcoin', $VERSION); -# Preloaded methods go here. 1; __END__ @@ -38,41 +37,37 @@ __END__ =head1 NAME -CBitcoin - Perl extension for blah blah blah +CBitcoin - Perl extension for the cbitcoin library =head1 SYNOPSIS use CBitcoin; - blah blah blah -=head1 DESCRIPTION + my $parentkey = new CBitcoin; + $parentkey->generate(); + my $childkey = $parentkey->deriveChild(0,333222); + my $wifstring = $childkey->WIF(); + my $address = $childkey->Address(); + + -Stub documentation for CBitcoin, created by h2xs. It looks like the -author of the extension was negligent enough to leave the stub -unedited. +=head1 DESCRIPTION -Blah blah blah. +This module was built, in order to perform bitcoin cryptographic operations on low powered devices. =head2 EXPORT -None by default. -=head1 SEE ALSO - -Mention other useful documentation such as the documentation of -related modules or operating system documentation (such as man pages -in UNIX), or any relevant external documentation such as RFCs or -standards. -If you have a mailing list set up for your module, mention it here. +=head1 SEE ALSO -If you have a web site set up for your module, mention it here. +Please see the C library cbitcoin for documentation on how the c functions work. =head1 AUTHOR -Joel DeJesus, Ejoeldejesus@E +Joel DeJesus, Edejesus.joel@e-flamingo.jp =head1 COPYRIGHT AND LICENSE diff --git a/scripts/CBitcoin/pm_to_blib b/scripts/CBitcoin/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/t/CBitcoin.t b/scripts/CBitcoin/t/CBitcoin.t similarity index 71% rename from scripts/module/CBitcoin/t/CBitcoin.t rename to scripts/CBitcoin/t/CBitcoin.t index 1de8939b..9241a360 100644 --- a/scripts/module/CBitcoin/t/CBitcoin.t +++ b/scripts/CBitcoin/t/CBitcoin.t @@ -8,7 +8,7 @@ use strict; use warnings; -use Test::More tests => 4; +use Test::More tests => 2; BEGIN { use_ok('CBitcoin') }; ######################### @@ -16,10 +16,10 @@ BEGIN { use_ok('CBitcoin') }; # Insert your test code below, the Test::More module is use()ed here so read # its man page ( perldoc Test::More ) for help writing this test script. -# 3 is the number of tests. -#use Test::More tests => 3; -#use CBitcoin; +my $parentkey = new CBitcoin; +isa_ok( $parentkey, "CBitcoin" ); -is (CBitcoin::is_even(0), 1); -is (CBitcoin::is_even(1), 0); -is (CBitcoin::is_even(2), 1); +#my $bool = $parentkey->generate(); +#ok( 1 + 1 == 2, "Key was successfully generated." ); + +1; \ No newline at end of file diff --git a/scripts/Script/MYMETA.json b/scripts/Script/MYMETA.json new file mode 100644 index 00000000..430dfb2d --- /dev/null +++ b/scripts/Script/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Script", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Script/MYMETA.yml b/scripts/Script/MYMETA.yml new file mode 100644 index 00000000..6bc437d1 --- /dev/null +++ b/scripts/Script/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Script +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Script/Makefile.PL b/scripts/Script/Makefile.PL new file mode 100644 index 00000000..e8672560 --- /dev/null +++ b/scripts/Script/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::Script', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/Script/Makefile.old b/scripts/Script/Makefile.old new file mode 100644 index 00000000..9e507545 --- /dev/null +++ b/scripts/Script/Makefile.old @@ -0,0 +1,735 @@ +# This Makefile is for the CBitcoin::Script extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::Script] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::Script +NAME_SYM = CBitcoin_Script +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/Script +BASEEXT = Script +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = /home/joeldejesus/Workspace/cbitcoin/library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = Script.pm + +PM_TO_BLIB = Script.pm \ + $(INST_LIB)/CBitcoin/Script.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::Script might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-Script' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-Script",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + Script.pm $(INST_LIB)/CBitcoin/Script.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/Script/Script.bs b/scripts/Script/Script.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/module/CBitcoin/CBitcoin.c b/scripts/Script/Script.c similarity index 60% rename from scripts/module/CBitcoin/CBitcoin.c rename to scripts/Script/Script.c index fc6ed517..3cdc6f15 100644 --- a/scripts/module/CBitcoin/CBitcoin.c +++ b/scripts/Script/Script.c @@ -1,15 +1,16 @@ /* * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the - * contents of CBitcoin.xs. Do not edit this file, edit CBitcoin.xs instead. + * contents of Script.xs. Do not edit this file, edit Script.xs instead. * * ANY CHANGES MADE HERE WILL BE LOST! * */ -#line 1 "CBitcoin.xs" +#line 1 "Script.xs" #include "EXTERN.h" #include "perl.h" #include "XSUB.h" + #include #include #include @@ -21,12 +22,32 @@ #include #include #include +#include + + +//////////////////////// perl export functions ///////////// +int addressToScript(char* addressString){ + CBAddress * address = CBNewAddressFromString(CBNewByteArrayFromString(addressString, true), false); + // extract script from address, get uint8_t * 20 byte ripemd 160 bit hash (equal to address without checksum bytes) + uint8_t* addrraw = CBByteArrayGetData(CBGetByteArray(address)); + CBFreeAddress(address); + + + CBScript * self; + CBInitScriptPubKeyHashOutput(self,addrraw); + return 1; +/* + char* output; + CBScriptToString(self,output); + return output;*/ +} + + -#include "ppport.h" -#line 30 "CBitcoin.c" +#line 51 "Script.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -78,29 +99,10 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 82 "CBitcoin.c" +#line 103 "Script.c" -XS(XS_CBitcoin_hello); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin_hello) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 0) - croak_xs_usage(cv, ""); - { -#line 25 "CBitcoin.xs" - printf("Hello, world!\n"); -#line 97 "CBitcoin.c" - } - XSRETURN_EMPTY; -} - - -XS(XS_CBitcoin_is_even); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin_is_even) +XS(XS_CBitcoin__Script_addressToScript); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_addressToScript) { #ifdef dVAR dVAR; dXSARGS; @@ -108,47 +110,13 @@ XS(XS_CBitcoin_is_even) dXSARGS; #endif if (items != 1) - croak_xs_usage(cv, "input"); + croak_xs_usage(cv, "addressString"); { - int input = (int)SvIV(ST(0)); + char * addressString = (char *)SvPV_nolen(ST(0)); int RETVAL; dXSTARG; -#line 31 "CBitcoin.xs" - RETVAL = (input % 2 == 0); -#line 119 "CBitcoin.c" - XSprePUSH; PUSHi((IV)RETVAL); - } - XSRETURN(1); -} - -XS(XS_CBitcoin_newMasterKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin_newMasterKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "arg"); - { - int arg = (int)SvIV(ST(0)); - int RETVAL; - dXSTARG; -#line 39 "CBitcoin.xs" - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - RETVAL = 1; -#line 152 "CBitcoin.c" + RETVAL = addressToScript(addressString); XSprePUSH; PUSHi((IV)RETVAL); } XSRETURN(1); @@ -157,8 +125,8 @@ XS(XS_CBitcoin_newMasterKey) #ifdef __cplusplus extern "C" #endif -XS(boot_CBitcoin); /* prototype to pass -Wmissing-prototypes */ -XS(boot_CBitcoin) +XS(boot_CBitcoin__Script); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__Script) { #ifdef dVAR dVAR; dXSARGS; @@ -178,9 +146,7 @@ XS(boot_CBitcoin) #endif XS_VERSION_BOOTCHECK ; - newXS("CBitcoin::hello", XS_CBitcoin_hello, file); - newXS("CBitcoin::is_even", XS_CBitcoin_is_even, file); - newXS("CBitcoin::newMasterKey", XS_CBitcoin_newMasterKey, file); + newXS("CBitcoin::Script::addressToScript", XS_CBitcoin__Script_addressToScript, file); #if (PERL_REVISION == 5 && PERL_VERSION >= 9) if (PL_unitcheckav) call_list(PL_scopestack_ix, PL_unitcheckav); diff --git a/scripts/Script/Script.o b/scripts/Script/Script.o new file mode 100644 index 0000000000000000000000000000000000000000..b2aa8471cc653d02f650a0275f737aa3a7e56c5c GIT binary patch literal 77088 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 literal 0 HcmV?d00001 diff --git a/scripts/Script/Script.pm b/scripts/Script/Script.pm new file mode 100644 index 00000000..e5e9ac18 --- /dev/null +++ b/scripts/Script/Script.pm @@ -0,0 +1,22 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Script; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Script::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; + +@CBitcoin::Script::EXPORT = (); +@CBitcoin::Script::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +sub address_to_script { + my $address = shift; + return addressToScript($address); +} + +1; diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs new file mode 100644 index 00000000..c794f0c4 --- /dev/null +++ b/scripts/Script/Script.xs @@ -0,0 +1,49 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +//////////////////////// perl export functions ///////////// +int addressToScript(char* addressString){ + CBAddress * address = CBNewAddressFromString(CBNewByteArrayFromString(addressString, true), false); + // extract script from address, get uint8_t * 20 byte ripemd 160 bit hash (equal to address without checksum bytes) + uint8_t* addrraw = CBByteArrayGetData(CBGetByteArray(address)); + CBFreeAddress(address); + + + CBScript * self; + CBInitScriptPubKeyHashOutput(self,addrraw); + return 1; +/* + char* output; + CBScriptToString(self,output); + return output;*/ +} + + + + + + +MODULE = CBitcoin::Script PACKAGE = CBitcoin::Script + +PROTOTYPES: DISABLE + + +int +addressToScript (addressString) + char * addressString + diff --git a/scripts/Script/blib/arch/.exists b/scripts/Script/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/.exists b/scripts/Script/blib/arch/auto/CBitcoin/Script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so b/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so new file mode 100755 index 0000000000000000000000000000000000000000..399559515ee6ae6807015eed1a8083d14f4d5823 GIT binary patch literal 49246 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 z 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 literal 0 HcmV?d00001 diff --git a/scripts/Script/blib/lib/CBitcoin/.exists b/scripts/Script/blib/lib/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/lib/CBitcoin/Script.pm b/scripts/Script/blib/lib/CBitcoin/Script.pm new file mode 100644 index 00000000..e5e9ac18 --- /dev/null +++ b/scripts/Script/blib/lib/CBitcoin/Script.pm @@ -0,0 +1,22 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Script; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Script::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; + +@CBitcoin::Script::EXPORT = (); +@CBitcoin::Script::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +sub address_to_script { + my $address = shift; + return addressToScript($address); +} + +1; diff --git a/scripts/Script/blib/lib/CBitcoin/coinx2.pl b/scripts/Script/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..9fa8621e --- /dev/null +++ b/scripts/Script/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::Script'; +my $package_name = 'CBitcoin::Script'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/Script/blib/lib/auto/CBitcoin/Script/.exists b/scripts/Script/blib/lib/auto/CBitcoin/Script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/man1/.exists b/scripts/Script/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/man3/.exists b/scripts/Script/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/blib/script/.exists b/scripts/Script/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/coinx2.pl b/scripts/Script/coinx2.pl new file mode 100644 index 00000000..9fa8621e --- /dev/null +++ b/scripts/Script/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::Script'; +my $package_name = 'CBitcoin::Script'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/Script/old-config/MYMETA.json b/scripts/Script/old-config/MYMETA.json new file mode 100644 index 00000000..430dfb2d --- /dev/null +++ b/scripts/Script/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Script", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Script/old-config/MYMETA.yml b/scripts/Script/old-config/MYMETA.yml new file mode 100644 index 00000000..6bc437d1 --- /dev/null +++ b/scripts/Script/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Script +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Script/old-config/Makefile.PL b/scripts/Script/old-config/Makefile.PL new file mode 100644 index 00000000..e8672560 --- /dev/null +++ b/scripts/Script/old-config/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::Script', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/Script/old-config/Makefile.old b/scripts/Script/old-config/Makefile.old new file mode 100644 index 00000000..9e507545 --- /dev/null +++ b/scripts/Script/old-config/Makefile.old @@ -0,0 +1,735 @@ +# This Makefile is for the CBitcoin::Script extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::Script] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::Script +NAME_SYM = CBitcoin_Script +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/Script +BASEEXT = Script +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = /home/joeldejesus/Workspace/cbitcoin/library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = Script.pm + +PM_TO_BLIB = Script.pm \ + $(INST_LIB)/CBitcoin/Script.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::Script might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-Script' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-Script",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + Script.pm $(INST_LIB)/CBitcoin/Script.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/Script/old-config/Script.bs b/scripts/Script/old-config/Script.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/old-config/Script.pm b/scripts/Script/old-config/Script.pm new file mode 100644 index 00000000..e5e9ac18 --- /dev/null +++ b/scripts/Script/old-config/Script.pm @@ -0,0 +1,22 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Script; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Script::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; + +@CBitcoin::Script::EXPORT = (); +@CBitcoin::Script::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +sub address_to_script { + my $address = shift; + return addressToScript($address); +} + +1; diff --git a/scripts/Script/old-config/pm_to_blib b/scripts/Script/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/pm_to_blib b/scripts/Script/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c new file mode 100644 index 00000000..37669fc4 --- /dev/null +++ b/scripts/Script/src/Script.c @@ -0,0 +1,31 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +//////////////////////// perl export functions ///////////// +int addressToScript(char* addressString){ + CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); + CBAddress * addr = CBNewAddressFromString(addrStr, false); + + CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); + + char scriptStr[CBScriptStringMaxSize(script)]; + CBScriptToString(script, scriptStr); + + return scriptStr; +} + + + + + diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL new file mode 100644 index 00000000..78c8e4cc --- /dev/null +++ b/scripts/TransactionInput/Makefile.PL @@ -0,0 +1,13 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::TransactionInput', + 'INC' => '', + 'VERSION' => '0.01' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm new file mode 100644 index 00000000..d90e6bcd --- /dev/null +++ b/scripts/TransactionInput/TransactionInput.pm @@ -0,0 +1,20 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionInput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionInput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; + +@CBitcoin::TransactionInput::EXPORT = (); +@CBitcoin::TransactionInput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + + + +1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs new file mode 100644 index 00000000..49ed15c9 --- /dev/null +++ b/scripts/TransactionInput/TransactionInput.xs @@ -0,0 +1,117 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool private,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { private, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} +char* exportPublicKeyFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); + free(cbkey); + return (char*) pubkey; +} + + + + + + +MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput + +PROTOTYPES: DISABLE + + +char * +newMasterKey (arg) + int arg + +char * +deriveChildPrivate (privstring, private, child) + char * privstring + bool private + int child + +char * +exportWIFFromCBHDKey (privstring) + char * privstring + +char * +exportAddressFromCBHDKey (privstring) + char * privstring + +char * +exportPublicKeyFromCBHDKey (privstring) + char * privstring + diff --git a/scripts/TransactionInput/coinx2.pl b/scripts/TransactionInput/coinx2.pl new file mode 100644 index 00000000..8eb140c1 --- /dev/null +++ b/scripts/TransactionInput/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::TransactionInput'; +my $package_name = 'CBitcoin::TransactionInput'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/TransactionInput/old-config/Makefile.PL.cbhd b/scripts/TransactionInput/old-config/Makefile.PL.cbhd new file mode 100644 index 00000000..e796988d --- /dev/null +++ b/scripts/TransactionInput/old-config/Makefile.PL.cbhd @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::CBHD', + 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.02' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c new file mode 100644 index 00000000..e020772a --- /dev/null +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -0,0 +1,34 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* createTxInput(char* prevOutHashstring, int prevOutIndexstring){ + CBByteArray * prevOutHash = CBNewByteArrayFromString(prevOutHashstring, true); + CBTransactionInput * txinput; + //CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex); + +} + + + + + diff --git a/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 b/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 deleted file mode 100644 index e053a0cf..00000000 --- a/scripts/_Inline/config-x86_64-linux-gnu-thread-multi-5.014002 +++ /dev/null @@ -1,14 +0,0 @@ -version : 0.5 -languages : % - C : C - Foo : Foo - foo : Foo -types : % - C : compiled - Foo : interpreted -modules : % - C : Inline::C - Foo : Inline::Foo -suffixes : % - C : so - Foo : foo diff --git a/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl b/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl deleted file mode 100644 index dbf31940..00000000 --- a/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2a81306732376d1bc2ce778db69819a9 -name : CBitcoin_2a81 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 13:12:11 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so b/scripts/_Inline/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so deleted file mode 100755 index ca954fe26f88d1bf7eef4b1c2bc842f64c453924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55706 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 IKIi)X58;>CT>t<8 diff --git a/scripts/_Inline/lib/auto/FOO_2204/.packlist b/scripts/_Inline/lib/auto/FOO_2204/.packlist deleted file mode 100644 index 4bfe3f7b..00000000 --- a/scripts/_Inline/lib/auto/FOO_2204/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so diff --git a/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl b/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl deleted file mode 100644 index fc3a83f7..00000000 --- a/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 22047321461e07208bd822a5074d9a9b -name : FOO_2204 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:51:31 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so b/scripts/_Inline/lib/auto/FOO_2204/FOO_2204.so deleted file mode 100755 index 0bec19f05031f00b966b623ef2719b15a29bcc88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 190904 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 diff --git a/scripts/_Inline/lib/auto/FOO_2610/.packlist b/scripts/_Inline/lib/auto/FOO_2610/.packlist deleted file mode 100644 index b07a78df..00000000 --- a/scripts/_Inline/lib/auto/FOO_2610/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so diff --git a/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl b/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl deleted file mode 100644 index b5cfad73..00000000 --- a/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2610a874ddd74957d0ca961dc1b78190 -name : FOO_2610 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 15:06:00 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so b/scripts/_Inline/lib/auto/FOO_2610/FOO_2610.so deleted file mode 100755 index 48827a32da174a75ebcd9cb20b2325900f680aac..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49560 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

i@qC?#q=OjA!>6 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 ACIA2c diff --git a/scripts/_Inline/lib/auto/FOO_3688/.packlist b/scripts/_Inline/lib/auto/FOO_3688/.packlist deleted file mode 100644 index ea95f23d..00000000 --- a/scripts/_Inline/lib/auto/FOO_3688/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so diff --git a/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.inl b/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.inl deleted file mode 100644 index 60ff9284..00000000 --- a/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 3688178d1bf3a19f55d17a3b9d15f40f -name : FOO_3688 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:52:58 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so b/scripts/_Inline/lib/auto/FOO_3688/FOO_3688.so deleted file mode 100755 index ab461cd7db7eed988cd26857dbf9e62e5d0062dd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42766 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 kUn1`=&^PH?yh{2n2&+Sz&-VjTGBu zv)it7xAJ&vVY_!vPs}zyJI`zQ%K&_j%59 zp7WgNTt8=qo3p%ABO@XV>xnWhF_=n|h)X5ZzZhw;7%n5t7=Ztij9)QtjGc0LWcce6 zvqHmgGC*YvpjbPT2%R#b!mp2$Wa$YiUF9P!C|{z=m#FxyuwJQYg|RAoG(!5caODmU zlN6s75-&YDpZiNF-npI0!@>)dJS(*FU50#IKbh^Q|Lb}V1$Pua(`L;!YBoLk>biLw zzZ@Jy6}F;0b*2A__nuG9gauwc=utLRWsqkzSUZld=Dy&0z4L&3BxkX`pg9QNY!N-qJ20rKD z^J{#5gHIDa&G^j4haR^KjAVpM@tKLw@d~?Mh36t{!6yZuD-`BI=))%wpBwO5jnB>a z1n{{VpJIG2#YcZm22rYjyAWFbGX?Q@e5T?<-SSp^Zp5bwA9^O^lf$uN`!7mk8>q!8 zy0{OmlY@0a#fSC5R)IcAVM|n4g78-=ZUxj&sB0JCqq@44WQWV_m|>i#;zrm!D4?Scn@^iAaA0HZz zXndi5Zarjg8k1Jwa|=EV_)xo8wjrMk;6rt%en=0EDJ>k6eV@jIyMK43(GfrG`Vq4- zXRbW)h3Z}PC7U*{x_(p9dyD@1{rkhs)@AoC|LU#1aT~M0`*K$4Yo~vAY36HRp44#B z!IqSR4Z~{(*PENK8~C@~6PEtx&TnVjIzQ%&eN(=g@z&X+S}!z{gFio1alt(|Ke*=G z^Y1(5)hq8i_oAUoZyFvQ|CH~pZ@-B=>GI2dxW8b3+4BRgt@!Ql;+A~=^b`Ls{Ceh9 z58d&=!j}Ku_+8qM58d8AY)4g7<$tc7JN(I_GyTtfdgt=)}wJN_;q3 zRlVOJ${1*@>(fD!(D2kJ`ab^#&>y}c4F4%%@Z-^WIaXD=)c^T!P}pl zhU5E}a{zdM{16ZSJ^U#OgCD@4+MgXR3xk)2u|p09{r=?KhC#AF{H8E=cnRh9XSeIa z=o1&+zx=zy@J|h+|8Ptw{n_*7F!kyRgMS=G|I{%4@C5A8UwwZcPR}sycqRO>KRYiD zqvw#w{>!Ziqt6#%fDAKwdOpR>b^8+V4`zdVdSi^K3Qfj<4&=U-vkac>y=|1*sIzlM=h z9Y)S6Vd}d$jGWKIwEN$~$j=YczGsG!b4M8bP#AqCglTs(4F8|P$iFI#oKM1xhqP|! z&!5i=Q(po8{>HJN!r)0^#>sVI^n58yx$DFDTYMP5Ju%F9yE2SDCxo%*Kf~C~7p7ik zgwek=jGnGA_=92e+{^rf4Cfjc9M6N$kDeLmM?6%@_9oH+Oq#(B`2OH4m_1IFfImu zqH&6`_FX3Ft#a2YeLAQkD{pBz}dm^E$;Jzd+(UX|srDEz+snu0G{%PV-jl;Vv{ zwnL)f+~s7XMd9Bo{we*ynljLyFp9J`I|l?aI!r)DiG}KpSj4qm=x@KK^+?*}wf>$!GcJ z`RE_<#<$&HD?gE`hOuAiGr5nR7c2f!CEwz|UzO|a!+#yhCA;PH(dRp>9hF~YDnU=e z{#4(3<${QMJFIz$hrIDDxWy3lJCup8S~wCBACk!m=8_uR4EbMtNn0FTZGhxlg9` zpHfghgk`r3K^4mKH21FIre5k>cvgqQwPuH3hXbMGJlXE0$lqETgib!dL7stE{LwvSPh? zS+UBBsYU*x@>!K7zO3r%%4!titz0OhzB(A&UtLsDQ^e9|R}@!PEGVm9;wv#KkfFx# z`)d3%YyG}DWaH3VS-hChoYJBipHWg-i{{9y@>P_OUGsZnP4oH9qMA};iEl~qk}8AR zwXCQ-zplop?I~qe?GoEu#W0$mY{2Ert|+IHH2FqxDHJZ+5S>rbvo)$TxwMNihX5EeIBWII%!km zt|*}j6p*_XFD@u9U0krBsH~g{WCp2XuCKCsp>9?*pE4@E2}(|_EiXsuQ!8sBug79W zZI!>Wglu3%q~$GtT0-qmz-F-+(km;=ZEh4((ql~!1vO<0(G6@&3aFKq4dd9ARj^R5 zuiS^$&7QvqUT1q;jUS1{rM}|Dn$l!YcX2VQf-Z_m&GOaxwPd7Dt@inBj*Qys8u(yU zt)DW2e`Z;Ed0CAQeg_9y==1x_miQ_cloTzqi><6kFDl6gY$IfXnZ6q8GC9?i#fa%W zR@U$EbgJ-mwjz1x^2o2Ls#NP;9W9+z=$)#hr5BaMWyp2Wv*!4!=U1X2jM*%et! zeHDIhB`jx+C`*c#&G$`3f2b+VX4lI{AF~ID8lS&xsic-HEC6Mvz{!?WR--E$*A^jj4f~@=#Ox~ zitV&CA=i}V_8Jq}Z^;z;7-{Fw+?)qQ=I*Btc+punjZG&E!3pK4G&8nVUvIJs3R zaB*^G8RjK_ISI6D1CQ`j_){+eMlGSHH&FIOSK+IcQ>#7v!H6mjJ{v_Tmlydl#Fxkp znqO%#VQyCbozIJ#>6K*_c2k#B(o)Ho4~Hz6nw?#6;r!x@<*U0T%F2DCeZ@Mrs@7<% z1xj?Bl(@(!@S#^0Vbw9erbaH50b$G^TU%2-7Q;hP`B>Oyq9n`akF86)sNkXtN0*mX z)Ygq&SW#K5oo-JAR>DibwLT0JX8O*5?Q#`DOzFGR@+!LXB06 zVnf0FN9M9J*!uwh*rMQ}d@^s83K{1AdXNa?|HnTArA8WesIxKJ+g6`ih8=9Q;p6=q z-Xoqybd+%|XnKhMG?hm5(6TbT?v62T?8P5x^IP{-taFQYwNZ<0cT#ryPD6{r>(zeC z;4PU9@8#TO2!&@~RhOnQV8eVOqxSpfo z&12`h9{<4PRw*8%CFg(>q%GdCSRBvfG_D2)k=Iy%V;ccn!Di zB~V(ThSPgw>v3whIzr;4WDR#(%m`C7TpdwyYMO>ydv;22Y4}p+l>eC;o~+?H8cy%b zt!J)=TXz&Ftx&^PTg(VcHGH0iS84cfG`vp3>7BXt)NAuJ&OA`3*g zM#JyW@UBi&Xn3oJ&)4vs8oolq+co@V4d12V^%~xx;n!=p z&~UoPU_G50PWK$Fr%S_w7D(a0olKGc2RJ7Gi`DQ74UgCGg&Lly;Vl~O)bLUbPuB3; zG(1Ja8#Fve;W(D-HA~FZaGHs%r%=P?JR?&|HC&&Isx+KzVLf#kPGwt9y@vnV0uip# zaBGaFaWDW1s@KZFrOT!a2+<4o`6t&5z8Xl|Rr)hY+h7Z&5 zL=CsjR4Li1;dFP(dXhE#3=2e)EN{H(DUVb`4L}@Ld`{PQyDi`~nRZ8h)XMcWU@}4e!$M zi!|JL$H^4=|HT>}tKn+N$f@xfu8!szPt@>4R>jHj)uE6e6EJ4Yj~lCXJ~k-hG%Mcm4;_&c%6n%)$n=^pQhofG~Cqi z77h1k_!RwhPP|@A`RcA;WIV7 zL&IljxX|!y4e!+O91ZW%@XIvZc-P4k`G2m4$7*<$3j!-+(i-?XSx|QkqL`M<5p6M%zrlnVC zEz`L~(~>LH!t`{ap@2X9KPjn8`=Mg=SXcyCG5lu^| zPzuwh5lvghkdx^lMAKF=6wmZPqG<^gGMJ7enwCzX&O-o3{PZwrS~7(?nBGS;EtNv; zOn*f*Es;X4On*W&Esa9!nSPJxp+v7``c0w}h;Cu}6{1fjx}NE+M4v)*71NuDrX^3P zkm(^4iB&-86X(-J0RFntTr zXA<3ckm`Ru(N3Z}n64(8mMWokrWX-SOO#M6)ANZwo9OjSUr97ANkVIx&Lx_bBB2(h zrxQ&}kWf9-=|rDPbQRMRiB2ZEkm+$m(-I_9dHYB}6EN>C=d&r9;Tc z^bn$H$q3u}g)E{bR`YWPo$`7?N{Rz=D z)rZzI{T|U561|q`H;JaHJ=DVVD@0#JbUo8siN2WVDyBCPO;dQNkm`)Ea7GdOFcGrH1O6PA7UA(N#=O zB-$jpkm+$m)6^NtVfs9xrxWdB`YfVpN(`kieHzg;g@v3<4Roj-B={|+=wMWGI+_YqA~P^g{huZX6pC)CRHCq&bf6I##odqmTe5?agjn?%!; z5o%%j6{6=5UC;DZqAw@9is?;6(-aUYWcn{e)6gHvVfqQ8X~++`n0|z48tOwSOy5uR zJffXU-%0ebf5bRp3lOji?KM07jTi-?|2bSr3@SIl6{ z+xO$k8cnVK$nJKYU|OulY>sJ12D5nz)pNEvvdav7ZZ>qqT^D)vOUU?{%DC_9?hcxN zz<;0QC%rBHEnQJ&V5_<1t4qy@b~CWUeB)3p=TF$i`QP*-|0k5ceo7hg8MWt{4O2cs z8bky>_YX3IQ{Mco(-40~lZ#SR^XeTjE-*%X_tFA-#yHMwM3rcIoRW4gviZ-1a>ps< zPMQt<&jJit-R)P0E{A|nF8*t22`$DTqUR6HOWI`y%9A?0fs!QQMXb{k_`w_SCw0MA z$!75Mz;SNCmlxCT=s( zW(K|y5zyQd*bY@rVaC!bZ(y(4JX;oD1Lr`}F9)F8q|z$?NDzBLK*>O9mH13Ww~P0P zBj`$;-kjNi#?3O!;P50fSe_K?4VEOudl5_Y2K`A+I7aeI;!hSkbTxy9H(2TnErTh= zos`g=u(%pu91MH|9YsCHr_}wS{~%$3-9AUR@5nW5-*jY?_D$m=``Y&`MvrFSU-rw| z^=ID>l}3h#ecu47+xKDknzZjfn6bBgi(zw^^g&9p?0W|YW#2{>-7c=@%*Sls85VnA z`;Mc8=7bZjwe3seBOLos6}kP_v8k;h4oYo~Am8~O+}t1G!0_jJN$7U);u7-fa`J0` zQl~etoSoW4R~bdUV^W%<@qOgZO8v~7R2S=Z+_TNyuq^_~F_auk6EoT9F#|vbjfSpB ze?dc6l%r`0%Jc@u-wHVOeNS-thl%0>D7VSU-nzpK>=mD4uxV;_GzJN3cqzhc_&KWf z-%$THKfaCED)Jy%sy+d#_xMZj^rGK5q0ye{!O6R`;P&sqv30?>DZ%$cu%}^rgs0(P zRPCD({BjKo{t4ow;Eo@5RB;}9L8v2a$Zs*^%f`fmSpNJDb!oiyusy3E_505CC8bVP2Kee zBOHySqq|{8#HKm3XV169a$5;ue}B(OqB}UOo6UI1xgHE z5A{*KTV(Zy+0~0c^-v9r9%Cg(7rG)W`y+5^fRDcCob|vn1K%L&Lpy1kOd5?OvC~GM z0@{0gWfx+9@&vx8adKC`{*>^+-B5kfL`UNZaE;XW%}LkCI_`N1?d}bZ-iS0$@J2&) zQ=!2aqS>1qjeB4q@~B1{%^SL+9Zhc_KX@9I%|D<)(1}FMBHqB4Vl~_bZq;-r*qYvV zG;WgYKTz?(gsFX7a5SpMMgN2E?Q()1cGlG!}eFt>C> zn(qQPgXKTaO2qdDn$L#+#7%>7|0v$XJ%afewbXCVeS}!98D8Q+=^|a>{VC0=ee(TU*j%# zsRd451T7mTIvkDJU_p0sLs04-$C>qDMZa3U$3V9nG`!smeB{Ag{3xRABi_Iv znw#^{x-=Xw$AUt6Zd~nFwAT$)Z0Bt-o@}otI^nMN`U?HwVU(AZ+C3vU`A{ZikU?32 zgCa|oWCpg2iB?Hiqfkj-p+TsmanUqBw_$wl9>66PRdY#K+9kPA5-fP1GR(KsMM?YZ z;tNET_AK)^QfAY5oI{u^mM6tuvUP#S(R2Zh8G>k`rZ*jp4#Xks`8%9&>$*AOE|_`K zP*_L}9C=E_zhcoW%aal#&9>H#wFP@NISbYfF&$Z3JrgpM5*E)dfr<;p zbhJQbFyTHHjTCEoXovoxv*7lQGif$l2DZL-I$hR@>@>uxld{uRC`fkt4lbwc6a_m4 zW3Hug;A|g5V`Yzb5Y_FmQs!-gTt&;~bh&s`5IhK-|{Yh19 z5)7nfTV@hk9w;Jp6lrTrs;3Z-I7i9vfC0!DiID!hij!g1NW-+TrU~tR4fBt^FwF6^ z&~AbBL=qX=fW;x~6N7K1XC)@`n8cEqN z#B<-E?t_tnAs_1ih#ubUXv!qf#ju4J$_~;-cTYr{H)_f?5b3VJ6oYgG7~KuuM8Eha zjB@Ucun(s0&dk6**ZwaSY!R{TBCww&L$ zanYJd4()PmXmdO6Zgn?&5#e?`y(7!9p*5?FJwKwAJ^t?2)HeZ^wN|x1z26z+G@sJ z3I{QP$2*#CSGc3;I>fSQx|)W_CbC;*K-A{q`xk`^Oq*s#`<=7g<|rq{t}Inf^whm$-BJHUbd zOo8Paw4{6x6%BoZC2WuT@1`8&{&G;;1`=MAh-vpBM6(*~j|9-{xT+iI7G zzEbUi4SCURXxhnWGQDYk0ZoP61^f1At5)~s_skd?V?%FH>j$TtMq++|8FVp!XEC*t zSxYrCKTEl!#*VBle3}du$Ct2*Lv0m*3Sl$)IpnE2+zIc3Z+!>N<%IShFd*Ykasl$b zjc<{7dKvS-WaEDX&U!eSp28TW#76kNZ3vVK2l56Cu&wefGhumgXiGL~U)nemIC0=0FV5yxlPo@l(HMqvcGbQemlBU}DD2b1d_!t`> zD)G-{=2l6Jp=~+^HxW2VAD=V(>nl<-x-Ju&B45a^$YUv=KRfi{xu-hN9^9Rpato2G4{Eh z-U%RS!Up?z=!C(#de~H5`&{3X>`ISI28yn9YeHql;f~zZpY{X+bI7%$Id(m z%)QQk;&jF@-wu@&-qYqw)ejU|*jkmdYZ>sv;x(rR+BoDogf^pv%~JRd&N{G+k8SvQ03UOmFI%-7 zCCRqP{gl?jD}LrRZ{zony5eW)ibG{-_cb^T?}Vy&N8@wSwdVpbgLP@*U33Dy*jr_> zO@ESnyKW)A1UFSs-_fU_Y_9IRD4KfMQ4g+MkaPOSEN+r0>Qm~8sP=|7UrR4qguzEdccYNd2J|nvo`?QrlJhnSbj~frxmxzbJ#tY|0Z7(8|6{JhU|EMb zHa=P6*I&gm(oLQ*R5(N&?F z5b1s1NK?;I-pBlSGX{!DV#r5W-thaFSi}y0AG7a6LXY;o;5Eh7-}{2~wgi4(@GwaI zeZjSGMESnpR%Yz|zTj-6Ld$YWvfdXIfKcxX@>O)Zn9iAx`F+7Ki@oprf=EhePIw=i z0QEkm6W+n+VS#ttvps=>?tHXx!`F4%VOVBTX=-aDj!*t-ARD~di8Hg*Jw4|?X5b6F zWfG4;IKRYt8GL5&0=0JkQv3psqFz*szKm^>8JrP2;T1>Ibne=Gcs3*6BxE=v8HpzL zmM%xrw=Ac|$^G3M=oWuff_R4$%t$7_97ofynJ*)S$hozP_{{aCw9K?098Ebot7ul2KJ;~Yo}c-)7me$%bRVd4U=hWdeSD?Y2AoH z&jmecr`u_tA|_s^p3ywzT`-7S?4+HD+3SmjuM<=En>bnj1gIJG(lTsvlDX+$2l76B z?162x3QIHtJIyUWUTPlr$}Bq|qF~1@KOJX|d<7@XC-;3H+dQQfrK$H*6;NJ{e_W;u zGw@OS_o>Ude~)|L>fgzT9p1l(FnYB9{q=j4*Ok~`|87@l>V4oAkb3|AHH;_w_v6gi zyML2?(Z5$ylGVR&2BG@5Uq!czMV$GV`}ZV^y>I_MixQd>&cR`e>fiBDFb@-U;SEmo z$tW|pF&QffaUUBd1MMj3fTZKEQb4EJX_PB*n*&em( z{r5J{man6-nm(&77sZ@hT4lem9w!YrgK#q7sNkfT#rwr1(8`7>D!N^q!_F)1pr3Qg)k5fz<1R-@jhZIIbJ&kViAv4)9D;;#e{3YMyFM= z7?3d@;Ps1%nIjfQ)v=!7@OJ_@_FM5BZ87CW>N@b%~(p@+g^_RQre;Mpwfd5bM7h;v?zd18FcTg5y7&h%Z4omgA*hnff z9tWf86En}lOBy#yq4f~GQKlnjyj33Pubz&#E6%LIFM`HntXOE_I1rV^fn;>;YG^gg z@HdhCosc#hBkiAyXvcF1HmN~l$f55FvM$bkhkJ_urJej@-L>#KSR!I){p3gkr0aP->$cdL6TYl{ADJdY6!AXU!&_wW z&V*#M0p`W~N}Qd>nK;3T#ZtNH5Vg+$TEse2U-q=MVnXev7pgGwdfKImZ%~Owtmtn< zY2M}%yx?x0msIF&E>Frg@xGu6%})=->r|XxBd93ZlMYp>*$`$z2!$rpq0l=}hB<=} zdWxfyP~&JbxO}@IzJQHA!INp172HIcn1T0ji6B-?fkHDUd|kT^-S~}KCzN`UwSalV z!$`x1GM--XwUFq>q%{a=yG{zOMV!w3DZUPIdf6auL_uuY#w0$}K-xx)uN856L>9@0 z+?^n>9KL<2lf<`!qU{`s+=V#5NZP7gkZuv2u9iB3`ZNOT(F zNOmERqU+*`-Bc_T&q16;`&jfxBz-P0N-IQYiRJsnP)CgBfhOT5DjK|1-~nqL0@~VA zwtB=ZyR1T-kMM)nCyGd=eG5QnKS^o724w5Rt(BB_E#mZ$_UjM_v>pMA4%Rt|Wus!D zcq`&0UOdj8kRbe0tDV3py&a(?dY8&aqB{^rvOpk3U!P3uor;CxU5K-2FGQoCQDqHG zwv-l&&=MPuxTP`u_mBeuLv zo^+#=7;}gbBW59(=ORu$mogS2&ejG`DdOTm9@?LK5{0@qcHB4r7Rp_P6feR$gp{jZ zS8BjWUk2q`>`gtrnS zgja!iC*qd3v?FfmzYB5k!8;gjpOuQUi8_FK1FMq+LMo~gA&Y765mCM5MKud z`VzgRdo1Gg5Klbf;zo!!o27X+S>{PZiZ^g~k`o~nk*sowOJxy-ls$zKgRmXMfhP^5 zRf-F7dS^y#CgS20Dg|#eoo4gjcxc)*SSgW1QjmQv!kk4zmQlP=Wfx8ujK^nhQi|D} zpOp3@c_e06a(XfDO*uBd${5~knJW%asg9=6NH%fup9X}4I+~&gX`V8`%hUDTx2V!n zhDd5UC>m>nr|-HJ$G9(J#HHcU416e_MiHLioLGQ?4;3!%mtcG^unC}O{})vgHycm^ z?PkLvl7^cNKzr}K%&S-(&l}cEIkue@n>GX0dkezk{CTQGuP5{c8;z3alUK5g7+c0} zQlfcEiNyDSOG+Vmgv&C2c-_LElX#NE|7+vFm-v%cu>8ktIYEiPCgnHVc#Xup60f!K ztALBCFpqtHbZV88-XHs;Q(NhNN6ZSQV`@7QAIbl`>N`@jMCE6jj23hdUJF~ zpS!B(k%z5UY-aHuEM%KU(SaHqD_Y1qt8ai3t8G!mrmq-BZ z4eUb^bmin?Q11PiNpUX!5ERw*8YObdLudyS5b(u{Pk_=wdAry}=~1PL-oO&uBXMi5 zo~kFFLn4=hdh&hODraa4dbXAR0Hvc$@()j7TPPoCVkLpi3AdRvaPW;4KOBV{`DbHha}r;6yA(pw>nERY_|xdh z22Pm8*MRscRlDsXFNO%a=f>FVw-@V<=1{!YI3+lK$9heNQ7UG>QjPuVp@s z(5bDS<~fNo=~C%;v}ng!GVM5NP8H{J+eOg|&4Nk@nuH_g+INMCPK9OrvU03zgFd`M zd7c+rd=TDrjsx#=Qjvao8Pa!Os_g7;&W;Y|466U}cwBPWfeSwOY;mQ%?r546$IJH! zxpJR^3xjST>i*0?zY8n&pPk|ls3BPlo^uryj$3t4rPnW?5^ebD3ThjjhrEe4lS9MC zS9|t%SpUc3epH-y0$%((n!IRTwM5S8e~J7mDoRUafgv5fnN;O%ew4>}TAHq+7Qm36 zqb4aH>Q$UZdKJZaE7rqRYMty?>*PAMPF~LIWI59ef7t5_u=uQOIYL-^E)?%4fw!B!* zK>>8-9Mf6{Fsh8u_-IK>k4TiVoy16MTbd?Y5Q5);yI9j?EaKK&A5U)7iKg;2zwjhw zLDocIRE86wweU<>vE`ma&^;(PcU^yk&e zT4IF!byEI1ke2-Qh|@#%*oe4z4Yt*6)Jj=V#!iG*8SRLZPNGGYQAnA05hKc24`JZ% z0BMyW5Vw{qorsH4@)z08U6c*{20S(X$v5&S9*cO(*qq}>uD2J9qt;n#6Je`tLkW59SA+*+yF2r3gx<-f-(Ijd)R7lIA(q7A< zvtO3|a5{PmEq)5I_@Qi$Ch9+glma24j;357;;c5bK=YJO^Lc{LdO$x-~9sVG<|%AaI^HB9pZ5Yncs`zFtVn;?55_Hv&mk}M|GHsFp;~&B$P*QU`|3P z4FKW~D3DF_H(uLg5T?#-u4vnJDXOq>2gbJzcgy8I+NcT^^#m_5gMVv}r}hneB_4x% z4fG|Io9P-QB$lwmOQ;IZl6G|FFoV*t&s^X%+Q=b@*tU=edc+&xL+t@(gJW|FFgFcr zw4tPkzq{Kwog#G+pU%IJBFkx{L&ZEe^C=V$Lrqnq?WvF?M?CQp;LT2A#JQhXPOV1Y zhsjJz6d#eXaC(tqN)^mDS1cIeLaulfCQ`_M%WOwxQpyMTFEvI?gGf66Nqm-lG|(1! zo!Zp}lX|dztw$CeFsARU?FBOFBV@Z!d!Yothj-!AIwX(69YLoFS{XG%;y|WvP|i( zmvy$4=S&mj~?9F#jq0sxoZPII}N~?=8 z2raLryx*XHy{e47x3L0yUvQE(4?%z#%!u_g|DA?)>D08xAcw|c4jye+ELfK)u4Wrr zh5|531Eg~h+Xl^kIQ;4^al(!8iav0un1LksvshHX#bu>31OMWjnYiU0Yesyq6 ztQj3X25>FTDsg#omnee-+i2yeA@2KX7Q+deIGM}WY&Q8kaVIb@_MGuvbnnMrl7<`1 z4$vlkfKhr3MMwm z@eue>z5UQF^-T+1&=D-`NNbxaQ3%%cUjJ@CWU-VmdjPNK)y?Q?t z;iAS0-eb4OMDZdJyG`HNLdhsxv{4Ktk7Wx$>e$P~cffi^0}}TJjARCzZE+JsrCo=> zyW$oWCu@iSAcNbUNjW0C36r7YqmL*nr~zS-#M63k8V}M$F5|2{tF`$=Ha9$6{DX^P zUr&d;8xlnmnC-?{1x25Y0C!(EAKN36T@=0hNkFzmHn&o1?-l1#P2m;}guT7|pIqY} z8!Sr{i+YrKSKJ5*7#|Wn&9!r^!QnY4DK19{jDa~WtESZRC$mwN)j$vGp}E#H42XMs zY$=C@oALcLVD4v!uxK_?pJCxWIV`MZh2*ecm%BW%OXMNHZLvA1*5RXq!NvCY&*am@ zjeu-(wQQE=>LLrkTpb8|o9nl1n;vsbK2=QWQRrPU3lfx8y@!OvF7#(KZO@Q!5?fvw zYI36ZltnYG3F$9j~1dSLP-K4u>PTpJF4#&EC$!vReRS3w^s0L1O!Lq)!XTKwL? zN^s_XeV{Nonq6?&qd!M(sua@{362IBTNgm346H@T5XqsK-Xo){8 z@v%0ZAo15t=0C;84??04Fu%3m?|mNh`aC`l`tmt>%#tGhi`e1kL2Zm4^*m^;Vms1# z&~jT8p9d`gshs>frwHhf^R6=P;|Ta$+1za8p39N$CKF&XBM;V{9rEb3X3s#3 z4tSTToz^_hrz*7jqyu<*C|;`Kh+1zuX-{*EM>S?K9g5+2hF)r(h-&qFK2u80JK^Wr zKj4TIs=MDoOh@whxUp5V$e%&9=s7Q82*4p?ui~uN%+3IP3W+WGWl10!AWR5LzPF zAkH=@hclvVEGXscM)0jen)Nr%PHX_dN08Oc{lk&6zB;h*|S|=9mh+F#ZLLA8* z2rQWbaZBG$#98L|vMrLiEdY{C+GATX>CnZJNoOrcrZW~xrW0{XCY`acOd7A14Z*ws@aN?9XISq0K6r3G>8#BL4Z;ytvGs>NE$2AS&+T83GVIM?Elja&;p zvD-+DkiS;SZv|;tYA51WE!q(m*F*k`^y*I)vWxNt{+851Aqo=+xd68;fRF4tDG>#% zlLd5vv?^d&qX)br7IASZ3fOGDTco#+B$XCAvOS+qN<`eUqj>)xT#Z6yeZp8^s8{42C?p7KrxkNJByP+ekn<~wmlgc2bmX4q^Z=mD`( zC)_#_&3P2tDRzqZ0Ok<~pcWj~C0=ChZ^Fp2LsU~?ftSQ9WWWXyVFqw(6tBz0eHznD z#q=04jgI*55?ClBO`J?*fPUZRYm`gpF^?jXy=YyCTx}VAkOlU_&GFEyEko{JGx#*C zErY&TZHWJ({=5jr#X;IlHPjP&@!#M9PQ*NPg!L>atQhEf&S#K1|A#H?N)*FqSKa`Q zGjM!GU-@1^l?dKNC92b_ZXk5G_7rZF-uu-IVAg(>a-YpM)pKtF2j%|HUq~+3ge-GE zGcqYRsw1hC;B!|Ly>$>U>a5^H^#DkZEKzi0e#M)NP(?n3r+p&W5uOP|I49) z2WFZhUXZpEkFiDRo7;gMl-Wmk@63@({nJ?eEF3}ojYleLo2hn~*fh}&Q&q1nR=mfe zdgv#5Xt})!f@wS}Ycs)d-pYmJ1k%K-WFFi`x&Xzi?a)VJ0obACW~hQ+7ofWy8OfX| zmXn!+bKt@Bf}Lg&eHRq>47`0ADL~(g-zMT9$F}1e$jUe!o?Zyf&539NK60huzxR^8m;4enuukKYYnCW8 zEeAgxA@~tedHMnCT40uol9+mOgWl(}r$b}1_IR*b=UwEaKQOC25R+coz&c3849>{($m&cDzWCXJAi(m0FW_8*0}& z<7p}7E`;K#r=TusKOk@m-nDIGng z25oEakLM8BoN(p2_Wn2%{!IJJUiT49?k3v)m{vXTqyz9gY>Z327;=NS$t!OmJj@mu zoXaS-uM&Nq(U@OmI1P+Y!!W#NS~rieeNhwsGZT3tYv-}EfQbl>{| z@@5Fbk1A~Ib^rLs6(1i&f2{v8#=jUp&M+8%9IF1%3H}1w2j3K|8q|cFS>1RqAuk_$ zt;@$Farw9%u=RT`{oOx4B;H25@Vv1@+=j}_`^Wg^mH$=}{|Z#6+s98&v~C|$`^#?r z{u9Vaw~uEQxAne#9GZ?ZxQNzzzI}WiCT+66V?%z@Fl@@7L=|x@qv4Z?RryJ$_4LOX z!Q}@HF||jXpUJ*BQ@Cdfl!~Ow8hlUViNS`^__BXI{d5B=@3?o1W5bUV4mp~tkw7M( z-IU>S+`Z#0Z_;U~34V>hmDY)$IzYO*&M~0&*Y#*JzO`)KU9K--Kwe9F`ok^Y1_X6wG6xMr(FU)v{t5F0zHV*CV?J#U*`Y1`5#I{UU2Z= zJx~>|3xg+OejpQAcQi`SU~~rXJ6we6GSM)&MM4VE4zi1)IQ7^Joydeua$L31ZiD@cPf5TBN=hAyhnZtWrO@QgqHp;#V<0Y z{2aPJQzsE+Uloe%EA+*YID>Ek2qgn*}_#yIBTjCV}duS zP_6DG`ECiO4{qbv{vbz=MG$H2fGM}5$)yn50h4S;)5$=@tB+EJr{rJEGu58QsY)@w zMHy{m7s!Y?RVRjLX(?mv6!AT5AsoofT5UcFSw-h#+EtVrv6%;~~auzG052BIPhO&qb)ehr)ghh|2XGaR;+tq8j@R9VKa3Qr1as zQIC+-MY=eNG=s+)n}?F_7xvQKNqe>kUH53@<#&)hH)+g3bdq=ycEBbSW2Q(Y{e#g- z^nN`HR;E&3Kypw0(N=o>S-|2R0i6_80-~vzaH0{*6&E9rRTc9Jr(l8+9lz(Q0L-C11={`XhMoPjak#gE7aiDSBy{*aRn=z@KZXK2hNG&af{^^meMUYJR+Op zDTK1o6R6QIMQQfksT*-UW1AQRVRnN#Ag52GlVfaTlkx4%DPSiZWZ+aC`oIxpCq?<6QS*`J`@RaolJGq%ym18Wpl2;;TD-|Ch@Vk zcDso+O*{ZGY_9LXqSZZvOcEUNDA+Ks#e2w^9pnQ}Sca-F1Q~U2rJBD8gU~NFP*u{| z3frc%DFLSA7WxE5nH>(G$#yC)%nzA1m}+9y_Gi#oH>v3X6r*p25M1 ztn1Juwg9}PEuF8uiB-^mt=8Fa;Fk>_j#A3UlZX>A6* zDiME2GPdvlZ$Ke@P=NzA7u^Esdya-BJ~G2Z8HM8ZwW^JJ9j6JPJ;!N_*gkxm_Al}h zECgN0dL!f`c_ZXv2t4dKZ5%bMcBC{>tOr8Qxbt_i82$Rk_rR>P3TnxJlUBWQSECTh zeH-Pr&YRN24ANPW@}S~9GL@B1FK2Mvw3M;g*se6xlX>J3MZCC%&H9npVcCfsBZ@(IS*qEBcYs1HZ+@Gk}z$RmXPm0HoPIdkxzfcvhj<3PyPn znpH*LV>;|Q4~8q;R|OY4nHj)Ile*C(&VdcoLDMi2`M(@Ab;yIJ1_25x@^ z#!kFfW?C!p`)vGXiML2$D{OqB#KrlnRGE!u16M7v9BHy8rrXIWGTXD~akgh&A0$tF85%uLsbneyjeWKLKL`U-Z*nc@qo{xR3;&eXt*hI;r&d0vNP$9ot z)cbtwcCg`m?D6~fR0uzP{}5t_pO4+j=uywd3KiRt&c`O(qWFAlG)Vn?>>wImo{ycx zjD60>4y}=j;`>D3A&P0g*ZEi_^2qbCx0w;?>ib07LHC@GeF;iCA6v(Xd_Fc4jiS!S z?vx@hM6ROraOY!-k;vtQ`99GMO2<%;hvu};$1WnUIbkA}&g%O_NvOCyAA`3qg!52C z;agv+d+3Y#b?EdZ`cE8}0zfakoeQ6G@dPLCyK_9|F2r$Vb`%Bp7LtoLTOBl~1Y_m` zBT`7REKQPhR)Ew+itLi)4T{;I@g^8EPm!^bd`vON6WKhz5fw4M8!v#PXhM{cQbj)=;hw zT0v|gLVQeBqjfzHGpJJ5u8feYNZPzmDmMl$*us(Jx5nw}J7xs+)fy0ZgC)OMLn%%o zxDh}k6TwXYB1Jgame2DSYOo&N`(ivw-XXtWL*cJbAqwf2t0_ENg-I$Lp~7=ic&-YQ zRX9?G^yR^BuA}EW!vekW7cAA#M7R-rV#PPO-C6TWM|l;R2wm zfMTAbAhlbZ!0aEi)KdjbOseXS6l6s@Q_IhR+aPb&`1a z9x4bqx6$(Y)4Qq1e<^+j>J8w#x*v%u$dj`%mh$KcABhi9m?s#$mwz!kSichrH>_$Q zwdt4N9ZkPFNZ$E8pK`G^>DLQgsA7t$VyX(qsqg|7UZ}$HD!fRAG<%bY(o{G>g%c5y zNhhh0e$JLmIz^>lqQXlNMu>l)p%>t&V-1A;{0wYI5xTEx?PGT+gSP+|&noV9Abufk zibzgw1A0M-3=bx)CGH?Okz5+K!i1jSab!KYa}`g)m_T^d!h2cqAe;AqxEs8*bXkp1 zJgyv(dJr_>SAVKqV%;TD7* zgnvLtKSK2g!WjssBJ?7B3gJwI#Rz91Jb*A8VK%}Xgm)pl4B;6Fa}hQm%tPoyn2+#d zgtHM|iEs|WScI1&d=TMWgrx|tK==;AD-oWG@G6AVsPj~KwF<9MVF86A65h8t7BSlS zU~^RTd_S8b=B&HRUP)?~4BiCFyCRb=8RWCQ+h_&uc^qr;#TCv$p)+=4`mn1_M~B{Vf!4h4x}eI6E@w4k)6N6 z8+>*n1c__zfPhKmNv_)Unz1*1fckm^#f7Q+vktTRZjvp1#J2i0Zi(mW(RME;<3F(h z3gOC+oF>?PW;RzuFn?y?z^vw^J>W8?H;;0PNiC3v?odhHk~z>NDh=@xsfPDI%5#gv&eJrKQ*&x$rt>ogpU_LnP3GXvj*{t4IQ`wgli zy^VrH9-2+z+{qAVyWMWskJiPPA(7T$NRQRiUnTnn6FwO2L|SC%JZ5tdAKF&@8FFPa zBHwxty*tezAWDNgM6r(j8tUU6AOEQ~GmscM6K+KPmCc$fBe%ll z9>>%4>-U#H3vnuGgcW@R!p-!q0RE0uyx2k|$Zv%%fL#G`s`z6MK8x|aVnH)0laFu6 zDo>=pALQ8JO)79dN3E>p@nCd2y{|RtJ6n9h8QqTWySM^74}60^0bmAxLUALvn8n}X ztLu)ZzcZu8KQsyocA-H0G**n`)|E+(yf8uI9>1;ccuD%=A3tq7ee^!f%Dyu`kD%Bfl0&E1vCJLT5$+ zd*eru+*A0U5k=wd7pN7)=3sZX?HK*I#6h^k`RBvp1E?RtCBA`mxbs1NNWfKF(EHt+ zdYZK1V;F0%S-hqB!sF%1c<^pk7%v%IX7PSBjjhddyZxgY-}f(eY`}@^_$!dkWqE=_+i=uG z%RliqSU0eXd29boOS)h^;czdf*hRI$IqOG=~apB3St@!Ck zkw6|Y$&Cfj14zc#Mj&`rb9qOX2!i$$zoY)B%b!8*&r-ibQpJ+^=RgurRXTZC5-YBh z0znM-(R8G;fTNJq2^05OlA+3#*28FpN}~3+v(elP&S$J$6Fz`IUxg$%^Mqh zKMSR+{OZ_%eg^TGWIo(^1?*IzWYJ0)`F9HSAB%Z{QLjS)+IcOP)VSo>L^x1j%!!;t9b~pz|$~Cra`pNS@mi&vwakjpUhj zF6;a)S_t*3S3D0(o{5rYnB@7VFls+d)o+pT>VPoO|v=jYEr??LQT|!$&kO(prEKL(D5W~1F zfB$A1Gz9MwPBnw2iDEt_M|^I^RK-$VvglxOmP|%p$fVS$LVUl;XAd4P;g6Ei{XPEC zBa}{0apjUFM)oY{RCm7H>ztLHndQvN&CSkrj;I}IWM{jgn!Qjn%QMZ)XNWTVY6`2Qa?IrNNQiSpc?l<$mss-hJu{)FduC2AdB}NK z85y%@q5@v`tcUb%2gNs+%7R^lr^3|m@MUXXGaT2@k5Frro^*g_|c8@t%BPjnx5J|zy^7FS*)B)pw;If9;M}Z?EDyT9HD089vomJo zIjJr3=jJ(8OXp{2J7>CQQOo4XoX3_=Z)xdK$Ci(^Py=&nN=j-^%O6|*o{>3q+y$u@ zUYweG(fA%2q{*?#Io!jKEgxCgo^9A*$Cgi(=jLhWf6HghCaPhNtvub%YPyjV=CRu+ zGdnA9*17pkbZ9F2*vhr)X-&uj`|p3s`*bhrcYLvy2;{r{dQF&d$@1<#^Emm(k;*w- z`(xwpY1O0hTdmpu_^9-@`#$vTcU(C_{f@-1j}b@X>+R)7)`NS6GQyGM+LcGWtc8QM z;5k}ThvDxT5R`w1;XACuADORj?ZfJ8xs2@sVdUzrPHq^k{wllPe|wLUVdPuzVIFTK z^s%#5PTy(%XnGws{)Lk-*R#53aJ9q9w_W2H#u+w_GY?s;WibY*W6n1rUwg9=kmE)cmYm=d^6>Ua&OB%AD0xvuT*|K-NIppoAGGSy!o?a_{it zmz3F~O>Z?0vwJ@(aLxO+XFn?R%SZk9NGkL@?qboS?el1qce1zh`byULf68YMoMG(Q ze|h7iC;ZRljnnso$Es(qMu#Q)9WQ(9i9SaalM8^p?bD03pLJ&70F=jD66-d@IZ4n8d^W8027~yT#zbRh=-n|jH5?uzGKYa z(+tN}UfAY1#_|qp9{U_6+<}a>Z#sf~m2ug;w!Cn5PEEU*n?iDjwR6w8k8FL zKZ4VwrcAg%dV=h5{pJtnMB`Gd?y7pLvQI&u^B>KN`kh~n;6MHH_wpYM_x-t$oJ8dy z4Ab;0=Lr7PFaHtzi4KZ+#pb+120RDwYL0DlBzgV$*^&7F7e70aoL(b;e?yvmPVKw| zhquWUl_fr|+{iHJY05smR0Ndbq<~QCaK6fvK~?=PPmgE1gR!m-?K`Dr>6| ztF7@li>fPYD@vSY3!MJavKpr!$E?m8e^GgP%^1!v&v+N`No=mK*jKjH=cy?3mlc)s z;i@{4%}Af+^Iun4y*LA}H)<=&ii`Y})%n%SGAb)7e8v8<%8Hsfm1QN6DCPCbpXV>C z_It}}{Jsht6D$6RVNsLlvf&8iZC~8oO?TYlYr4DXC9M-7U1qHE<25$IdW7u=+iSbK zyAXCFjK?h@R~>GJAnd%pySo%&3f}E(MA(7%kMyN9Cti}#?;5orq~9W1kFXG-ftRNA zn-)&IG~b1=3SlS07KE{Q$<%>2`6&pUxFM2*Fdp|h>Ja82q!(~5+UC<2R#xgzH$P@EZHgv=x}`M7NM??X~e}( zjZ2*FIN`e3dgId5CY^Ud(pi*|@@L}Ha&31vRI?w-KM$W(z^N^a{DuK5V^&8uM|tB? zZjX%Y9vBzvK0)ShMDqIT?rx!si2gb^%XE z+ZoeW4rn;;s<@ohG0oApN8J$_b#(+(mftMsDRX*U{2h_$af!D_rN=p&qtoM(SI1<=rK}v_j!SDeZhBmMMC6|b#-+LA zQrvOLU;!(#q?0Tvn96O0ysC!o?nk-Y=E#Pa%OD_nbyTDuWqO#8>hmP&hxdn*$>*jw z9Jg|ScXiC|QJ2N#G)JRCNmQXMRUxiF`036-CD=*N)sZve5?4mK4k2O(WvhRh_7(?*=ocj@n9}Z}anoWJ0x_9K|u*-DtQGMot zZx#4H-iixfAJY3t$cx2y;QudrlRk70qx4VR-M<=q4EnSl7v&h#uRc6x zkbNg(z%w_(&k#2v(V1Xi(lZ};J@Eglo_8aE2W}*fIr0Co_vYbI6Li_1 z$kthaCQX_E$t4K{LfEn=tcF!oKz0E)6hv?%?1&(ssDK-8h&wupxQsG0=-`fyqqvPY zqlh~yD(>I=R#hh*XTIlqp6}n^FV90)y;Y~qId#sdQ+1ba!0i9aZY}Yi0V)4ePql!k z=ZE08@A?1M^B1(AK>Pn+JqKc6nE2xFzrTxL8_{|WZJ!5Kyw)-gHYV@(csBfR|286A zR9vkGzoT#e{yX0*w{Db z{D1%cPqDy3m5h;>O&OgxLyLbs&6Qph5B>u_{SWx#KVXN! zjlZZqIR-Oz@=u*LP$nsaeXCSgn9BIK`(9n*y(j&5Fr>;{1Ec$RP86Gd?qB?i_9I2A zKc18M_uX&$_)y3*ApVdt)L$r5m!{b|VGeI*TGkq)zbUMs8HcS${Z+gkQYDu#|C+ex z;g9)>f6=obzH+MmrWWcl+FlXXII1_#%ltEJTIJ#WP<8w{l&|~o;-JD&xyKCN)kXLJ zXmC_d-THq&|4*?%(5#C;&i4(o-j0~^dsF(#G-akKBc|+Y$_7(TFy(AhE;8k6Q(kMz zou=Gl%4bdahAEGj@_SSIdK>wsjF_^oDH}{V!IZO2xyY2OO?j;;cbamKDW5gv8>T#B z%I{6->tp1bGGfZUrfe|f1XIp7Vjef^AlQ$|eL*OU#WoM6h?rd(vo)uz1Glsiqi$CS^S z@(oiSG3EEB)YAX^v*pdue>cXo*miWMi)n0EwXqkHh@UL*p-a6<#&k8-)>eiJ>t;=# zJMElMAGe=dR$Sg)SJZs~o$Jj`(O(O>Z$Ud@t>D%K+cNa_pRt+PKXtII2YHVxI?!yi z9O2mFnjR>e_;(9Xc;oMDLLuUJv9NvDslK?YaRl*rpzRlJ#kmwun5vxx? zNc=yQ>V06Sxc$6-^1g+WMBFpf*Ed=nJ}mYb#Z1VG!J2wYE2#uRHc!Cg-=GiHOLu+qgtnGlrC=W2XxwMrA^RE zDohyB1EK;Yh^mBHo6)RiJ6pA?*`Coh+e(nC*>T9PHs zqol=AeVZo$Eg>1)A@0F7WWq%nNs)jBmvFI0K~aY2O}OM|HP4W^3Za&8spe8BHXyDN zF4L%pp?(|8l~j_j;43iJlUQ2Ms&ZM2YE_e1_B&d&%UDyB=*0yJ!&%;4W6`wy8FYBF zapX=|PYFJekK=JNz3g3F57&gsfc>;a4JwL7yp{MtCT<%gg_od7G{f*o-MgVmSMSLH z>Y>e1CH@u$>d7#6!cB;25M3T+0|_;-R?|1P z%L)c=wdX^4>glI1wgR`SI)$fKW5gW>`p`SW3hcD8yfCpO$zNOz+-YDkdZ$@|UAFPG z$vjBzooO3#jS<(qhF&?`` z@+6IdoY~Z!WcPRznx}K(m>CtD{Q{c>7E$sXMj$8Lt2fYGJr`jm%}=iE0@DRvL_j7F zRMj_Wv)V^!)zJ;84yW1DPd|U5l{}Wl31l^*buuR%*ja_@3{EC6iDKqa5z9~ZrC_TZ zmTM(moeKvh_g;i1F%Fw#a(UFWZ-6qnZ`8EQap{>{VU!a~5Om3Bat@d@f;|Ly7TIRl z*WojhbeXEAob40j?-R@L>0MlifGkCRvb?=vmXtEakoORHrSuuV>Qs0!r2-Q4`hFjS zl(qpYanl&w6Oisx0@@yE#zHEY1u`1%wJM$QYJk%~+rhdrbyOT_kCpi#dnR3WyN05uDh z464K}&{&?fPp1Yki(DpYG*Ofk0ZrCuj`#|`mGd|qC%jnaqL%^8YD%nz5kzYLA2{8o zPr}k2pjER(8tj)kP$RFEweai(R;WXGAhrhaP9;`g0e?k;cG=VgD58-Nv*GOyg&Ii# zV0GxOQ4sFwgfWT9m{>3^cMVzHJKVC;Iv??I+b>#Q}9Vjd|&{1TlL zPPY>4FeH>d>uoYg?1mUUBg$kM(VQrg{#Z)sCgi2K&I2@0vrHE}%ch^HDT7wZo9Sff z*j*D~vXe%k&ubf|@;7Y4>2bE$O|LhJ8o7XV2SI&D5KM#6%yhl_$MQz zlc*Fs#{qR=$UET<;wQK>BcCjsaGH+szX2$x|851#OO=dBR$^2}VLKV!+sWwBPDamm zGK!)yvg?M9u`*lo!7=B7dK`;$hfc7v9`rHu%6As?4p?kH4O#q*JsBfKvZ;`zvW z1ZdWD|8)2>_oQYkYp(wc^mfE|e+q+L?Mg0*Ct!wPf&C3KF``5k!so3}$Xmbw&;$NR z6>>>;1@EpV40ie!+M`!3dw-S_4s|*p+gj{QwoJ~CX~|&AnADh-bhbR*Bc>&dExW7Q zT09ah@=_eiA?pDwKqs6p`@##YFl^=4a(eUp4VY5L8JJ&l_ELKVVqDEHyQSUyTA`jF zVC?(=W9J9>hxtWY+UD2V(mKD^me%>TwzSSK+R`>Zw8YM@6^7+!IJ{)9u-{g*?SRu1I0v-@je_D&%|JyOg~U5Be~w##)0`776rYX1Ez{d8ZGI0@d*snBSIh{JqyDz&_3 zv1S<10NpoHq#*U?4Af|nSb`*(Gf1PU;$BJ^tkF#Iy$`5b>p4gGur21)YBXQi$iz8y z8Z8bD9lOZNY2YU03AflH3F$hgu^Nhc!fWl&&~v6)IpdmP5l?uNEq1}AITLyE@`ShA z;y$GRoKrO1<%rW@+?-QSfP*Kz*CTH433!_3yw4+ch5)DV%;E_j@QAfo0y)#KM#A@m zk9tBw&tG8WEY!ruJmPVP$hknXI^hxD=K?O$u*EB0!!3%O3pHHp71xmS;ymo`P!dOX z`e=z}wH5Frz>758;T5k81-w|pU0!i7doP=dOy&vi_KJVwaFMfA!@XW{0kUJxGKPsK zyw59sfQX#s4}k-w;1$m?q*e?XPI%BOexx5)ioS%0ydnulhMZN6%94k@;!@6cweCIY z6&K^Mk#o6bb<8VrNWAVG;-_1~PuU~vH67WYog?)bUcsk%u+zmY8zxqWV_WrD=@HfBs^Ekj?bnkw@ z*uyaURrfyQml@aub1b_|DSf~%E4Z%WY&a6kUi8auNx<=He?VyYC3XTUCqbPzJ>l2= z@)F`ibsR-R_~pYXz)7}t>tVlqlO_rneAF)saJb7!Hu#udK8J|TNm2Vc;>|C6bpV#O z_GL?gES~_JYVg_wxxW)|y1|umQ*A&22^+3343$*T>j*UxGZ{0WLT8Isp3=0$14l={@*2L4MC@>2LZE zCCIIet%0@<+rtTRB-7zwgFl2kCcqklk0!`X+$QQxe0-iD4+`K0dkgZFCwweHzQvp{ z)cF5Ig8YT?Hq79bL@Bu}h8w&#QLezioDl|ZN|Zk_d5tu9YodIU_8(>IY_=m&&Y=FI zP5-V$`7Kk@ID>a5%E?^cCmXysQEsPwCK|jiQ8qGV&o}r$qCA!JJMxUdJvMLq$Lfa(4MA?_AYO%p5z>mvui5cILB$tu@MP~fk zBsrJyd$GZrlH}`MfiE$5Ym$70@pY-eJCfv=w8v!z?@E%d;@)P?QX_A7l6;T+Tg-ai zn~%08CyWQa z%dE%O1G1j-?l$S9?RXT5kc#_bhVutLtFo*MOYE{Q9i1|AA!r1-9~>znl3TOqSnr zy&j1AFIi?}0Y7KtA5NB%{(Iiw50m9=I^>f|73ZP`Tre*e@T|FGk)K-`4hR= zl2hcVmB8;AyfP(q=(KaJoPU{kUz;K$obM5X*Qdzq=)X@4-jpK07zq5S!CO+~jB4P| z%>K4DMc&W-@~de4q{yoo-(TBXv5g^qQslKfP=9M*r2MlxMb_|?^PSJv2#%rpXM(e&S&D$i~J?(9rK7~}AjDsN*x$anO?W-sWePuSt@8q6x5T+a>GRK2Ig;zMujzjyRa*3Kg~4y8%9+%^ z(#SuA@r>8O#$Jb0<#F0~h`~ow<raq$$KG8vbN<7BkmNYpi1$eB%Yt!UJI5uaT!JE=#9{n-i;H_!0p8LlHgLkCK z&#BMJ2JcFf0p`nz2JcRjQ#`<@7`!)4zD4_;YVf`^c?$v|=QM*4q{#~?f0Cp3+kuF)%QKyu)%X)>@(#w^xel+Ik&n{lsr1(ZgV(0Z?jwPhId>@f zP3iJx+H<+1&o5ikXcVPy_Z!my39w+~GW^#ve|XkMjI= zi@`_JWd-xu?M9zt>GE0T>z&R#b^UN6UCu-z%h?t6PlgnX&%2`j$&ib=UhX#dV1^vh z5%?a14`s-e%2;$1>z6`$IX; zI3FnbU77M~34FjwSNiVGlxHx1zTosmnnga(l*!cpC4={6%6X)JCF+k%d5HPzkkRj8 zrrZTaId3_SD*GSGl;@TJTb?hJyu+FDpQXSF9v$CDGv&qHj{+VYKgTkqLw|NK{UwG1`ZE9ZSO!@O7FogE^WH~Q%tPA9J)cp?=PC!vh`0yv zxyq%XHk2e5U;?=du7H|+(3V>bcFX;rlHD}2TkB%MYj&6S2b)%Qm$zeQkYTs(5N4^^ zHG$mzn1J~kll(GTiLCAP02Kq zUD=MEL5AI`^NeDwJH+CGTA&PlTfRy> z2~*}}-lw=US-Fic=o))}Tw<&EFt1|CR(}(5$)Vg2z?UT6tU@ zuPkGna&G8E&!iW*}&?*86)x zr^FJR4GTNw?m}HW07G=ldrR5f5@WCnb?kUP_7cXxcI3Q{owRaNoHZV(GY?FBl;?pL zJBIYM(!^BQp<@@Vce=PN4k%y8RZ!dyjXH+)1Iv(=I}z{CWNq+24B;IY&tGJPa__Z& zqow|X6It$k>WTwql)d0Pz&|O?gj|n&56Jx$-jLtM$H1VK_aM?w)|LK*Zm|C?$Q*^a zyX_eOn(Kq@xjxvQ>x1pNMqyB9H$%un_PI(0*l;*3o^`eVT<}f&4vDm|Q{rDy7u38{ zl3oFLnE{G-3K+db1!mtVxmsCGid1myl%i2k6u|bKq`C2K<>hk@Tl_DR{g)UJ>O3v2 z(6H}3J(hjv8Bz8}ux)joX{;hHP5_#v5scCmdvew_{?1^MvJwnSau3;S0JKrwYHyUc z+8gDq_C|?9W0bd}Mv)&PpmX1`8Jk$}R$d+aly$A2moJHH5HWK?ftlUSBtprtlL#e8 zCqdtalB1KLYojPAnsCktr9`vK#kdL#r91+gGP}HkGi)g3b%jdAR7DxhE(_p=P>PPa zD$xtOe<(#~r6v)FH5p3LS*cmfZz9quV4|=oJ>`8hok^m!5lHH|o@(VKV28@u=AVxV zrCg6FTbuifeI+(RZO~ua8}!%q2K}|YL8H(Z^tV=nz6Q(X;+;&Dx(ekQEbH8WliZh6 zF2QvkV2Trc%I1Rwa;1S)atWw%Qw?mAyOEJ{JE&_EC)_Nb!x1+(&CwQ`C_l%d%S|`E zQ)T%{fElKDj$DPzottTT=gSY10JBW*V(Ep=bA#se+G5Kye8Ab}bi2&9^13tKZ1-=6 zaS{u06szi(oP|gc&2U7=lwYA3x18G{v!m2Vh##2}Qah^TBgH^uu8tjaUr_LoYsWN= zLgH&=fsW}T6lI~vW?$x63YCa|Bj`J3Y03(m8%CXCWnJ$NLwJ{I=Pa>AR%T!`Kz>CB zXqXk?Q6%32hpb?Le$F33A7=+>;d}vKWaR{S=*s_TIO@59DWv~s0P1-G=ED5dd8l^` ze8aI*Nz*BiTMVLrHk5X z&ciy+y3v0KBU2_}BQD9hDNqFgvLiA^*3E$xh7JE8iL4z;KeDMy2fW2VDIf0wcxzyz zA`VJFw9UHBs1TAN>V3O`Sh%Or9yj?%KupR)c%m@(jd)%S%K_Mha^H;Ci^r1x1iRcr z@w5qL-h`Es`&N7grp&zj0)*tgZD3IDfB|#gF=Ink_RtEe%Wmu{RyJN2>+&G&ls&$* zuhr#Gh!=GCF0;Bke6ng~^%22kY=D>TEVoiph)ytQ)#^}JKZLGSX!RGdjN zY^sr|J`4#TBKw3F%|5|b!wueT z%kRekkFfPUoV~Uj!?}$z_q6ueGARJuY>!j&_uE!@KBxC^;s7L-VE*GYiI_r{KB28+ z3I3;s`A=%&2=N`3TmC+V7gw22{EQgziEaoE^#(NOrCvp1E8|18&WyIE;cao8N5eDD zMN3XD_7K~fhtKdVUgY`&3G?_rwS<@2SCQl;)NOA=7ko*y-;LN-(#F6!qTr2h&>1)l z8KB@0GfrS8%vkU?x2nJlR^L$sx8ML*@Gg^eU=$*t-~&Z)5;9f6zc~yNCt(fx1dsAw zvM%`KHc)3b)myozq?KS*%$a2cJ0}fAReXeW-dXbbD)a93$S<8!^I$qyuG3(mItZNgq zu1(CkHZkkk#H?!*v#w3dIwOYXWQf_w>s~EpW1E zHp)72BhFBfGmj~rO`;qYiE?QcM^&HZIZh0!VjmN<6P_rZ8_`BNRdmC~7accKZ0|tC zuTeSSIigE#8=5a>2Z-oZY%d}MM+2=HcbBf`z%h|Ckwq*o@@9CY-BpfjZOOxqflCyh zpxX*W?ltytm{yL&7My#nddk5KIuHDFuQSj~x^3#pLoV{7V|y#z=gbw?+Yca3@;Z7A zhuvUcoE15YizbnKl{&8HUya0(d$m0n`6&Mz_#k(SZm;CQW~==o)W{EwMg2yl5>(`! zr^xhX^4MWBiRL$w_7?T-TmE4lmu|HgUHM;(LH#!MP%Hm1>$fX<@L*Do49+2sJ8fQl z=g(!T+okJ2k4OD3r3YwvA0e*+4$3{Op66w#r(*h;!;2V@@a~mQdjzQZeNT_+?t9@q)68n$bmoB6DiPjilJbxaqDb zgI3~QI1f#Y^yF6t#ka_Tks?+R0G59-D*Ote+NT{W@#`U=iIjInIEqdTu)aomXx2G1 zt%!L8&1-o{7^&dU#P6`~rbaH}!V^`EXug==UEsdRUzCYlvQ;4=Ho_y3rEe-E#R=?> zk>%eg6ckqy;RYhdg~U$yE3&eeLWSZz&Sv#gg-XO`T6OIzg(}1{574>?6si&}T#@Tv zSExyh%K*AkOK28%3v(gp2qPE#f{}$b6HYU_bvUUSbApvj-}ppdbQP)q=C=Vg zk*aZ#XSRKiZzhMRvw5awLEb)bnqooH7u&N?u&IrDfVQ zK-YU{$gt^zcFiYLbB}h-nF?}xRx)+>3zHOQ@8FMZS_0w&kZP&!g>uJ}dj z1yw&j8@~c0!&c_O_6cV&4^w-u?g*2o!pMq#8y^YVV=mTrc=t@Nr0y* zHn>rmT4O~f88M+${3jog$p#fl$*pdRddA0lFPEhQo^JS5$Xk7YQyrZX2g+f{gOOVSN=RI&q#ee5wMb<<^lNMX=%!2~j?^m|6S0>sRWv`Ul6jh4T+-yKl+2<-_ zkdXX18G^4i-svhkrT}g+;tJ))9)Q;wSR@mfL$?|&VX(r;_0GGk%G}th%m>`>ZfaGA ztKeoMQEHFuFfd*E$n%!y%w-yFeXB8UNG@Qc-DY4{PJgGf5IeA*{;sIR)ET8#EKwDC zNTmqL|A{y9Clg?nlKrre?NwSn(oV}LN|I?j_3kltkaA{Ez(-rnq8zc;I0CB^|G`b< zF$24%o;_`G8!V*Ok4IIb)=^Mlb!&?BbM_#Wbzd@T0ghcx60%W#6P-TPnaO$&hUplU z+wzl;Xd*M5kJ!#%S%@rj?m^1QzY%#ma*0~F`PE#hE7h{ee;=7RvQ|ZZ{t<@2HWkD9 z?=$z_uEI9|2;+XYikkd1Zu3tle_DA=$dRX1vhI8*&UuGZB7b+RD!BSRrl|v}&g^_P zE}$dNITBrXpR%*Mq1cKKb+-JRAA8lws2Hi{uV~04&&cx*>nT&}Eo*D!BZu#B$+vj) zI1=@k{Kp8uj}7$7_nG;QMtvrmXp&D%d?ZN>wIZLkI_;Haz|UHpwvLK_ZeU1e)B=9t z=nIBI`DY6HQt7~)noG`K8CW6RZh*%eeR`>qII>uguO0n#s!2*l$2X3C#MLaXq8i^C zI8j~&Cq<4Mxl`p@a{f-ekbw&oIcp5y_Xf_Fw-x~YU?#X&7P9w*ftSb$blr~%svBe7 zX~mzEb$FQ~`?HVI^oCM+vs`t53uguHFKX?+#K)?G$>A`<0sQ`zIz2!ViMxs5 zQ1!){{I1yFgToY2{+8jWk5FHYA;oBWB!=Zb1#<_-Xo}Yny1{YkHlvl84#p*gWlw@g z*ofD{K0K%Kh&-|ks9YlmqWl-D!WeWRi6cS5t z>@KX-sL)D$IuVoVUSuOw#0R+G>h9_;d<7JWbnm5+5Di2nT7VRfLU{L59V)7XVUMVZe!^bXvuD&qet4^A(G+l@ zM=nD!^(@vXDC*OIT#Z8Fb8_jWQK85~==3brs6!+ivwsIRD_UxZgYw;cz!pOsk`EvR zidHyTaTHQ0|5^yR(otW?#5e68L;fsU<1ili^|2DDSG3l!nj?9~y6AGlYQB68cQ=c! zaP~n%-sL`s#anch!>{$K#VinsMc10eio4Rgy8&OPM&nIOTgG()-tIh$;ds-~mT$rf zMK`Kl2XEfk@;$QGTQ}Y`v}Jc#yy#Xl{(vp-9SnSjQ={Y^L_d;4(OpK~QCoiM0lwSN zAG762<-qqjFDiK_Y`Jm(@NOfo#gS(r85KS3@Y}ygHjeCrbX&AHs=p&wP@l)5`aAMj z#A?x#&TCqKM>?H>|K@PPLw`rg5b*w}K92ktsiEkZs6LLojb8k_!xupDW~?I@)5$M8 z{6;hE=aId-0KXQM?~x72T}A(h%J)cXJn$RNzqEXhT)_Fh=P;Nd-y@6Q;-Y_<@hx5% zL}n>^-;7`Dm0uxU7JcA+sK#&d%H9xMbky07EgDZ1ymAQpk2(Bx2YyFM_GBO(cRp40 z2fgw>`tLi#?~qsSApajs|6#98rM^Eq#}xfhuk6(k_?PJXy|StU@NcI7gjaT_J$)W6 zza>t-imTcpzlRGB@ewB{vOmFNo?67o+4Nt)^zVz4zhZAGN;drm;-nXwM^UPW$pJfg z9MU%Po=-5ieS%@?6AT{wW(_=xFF&bvnjiOe6eYjD?GyawbY7$59cdSHfP9jdlwomYOr%x|r+wV_??oXUr9hkmutpl>MyfmGX`WfPXi=xafeG14d{_j;=!IbBe20 znqP+NCbGY9K7yd`3l`0{vcFVsV0Nc|Unzz1)l`qEsp0}W`&%bz7%q^eoxjA&K5ooo zrOsV!Wq)U$`wNo&;PfHcj0?`UvQL-}E0y=evVV-F``MY)O81M=+tB?Qout)GW`E(TI7cg0XpQ|oz z5j#o&zjpRwIGw(c7W!SOgiCX{mEWFD`40}SBD<%0mr0(>Fe&nw7_z#RWDijdMU+T#J+{P-TI*LWBc`F=XO*2Agfzs>-w^Sq5Z1o8X)DGN^Gi(8ke zH@V~moYKWT3_7add*(m`r_6PxZ28IVW5yNVW-VrX<(8Z zfrOmBN+k$RdbI#t?csXmi(8jq4P~z}FeG0t0bFZ{3*`aA%MC1%&tRoxuQRYh?hXN7 z;rSU;!cHwaP|5WkeaE25>eih7sHc7e=6)lcvRA#mmOmep&VI~OI~;>jB=)Y7?0WAD zppti`qNl+deek~=c{00EbFNpWv%MdH299S!)9;(US5g zEEdYTJn$ZXyf_{m>jJ#vgKQ^Hg`Kmm2$);wQeaoeS|8AHEaZNS%-Rspr#LBn#ei2D zh+oqQ7AJSYF(AbIBE>1c=>#hHYe~ft3jzX!=#>YQsx6)*=5_$;ppz?pr=}GAi!-TL z@R8BD2j~Z<$l#J!YNFhcPRh2}4?iX$2niYF1=#XYo+CE_m})>ETC;$@;DZGj4LFXvXQ zQI&WL3#!=Frfd>9r9i#7B{|`tq6_w);u76AOcW56YBXGo#o8)1UsxX@R(ApFtxeu6 zUZ?`_h=wa{k&Ekx z;wtjx^{3cN3s*0OH+lIfeyjtmp$~cp8WF;*3RNA$qy ztN1K!SbU?s7j-^cYxSxZYq~p@8Ga84pMI_b3Q^Z+UdvAj=eJ=m7gF&#dH`Q3!(%wK z#$0^ZVJ|4oSO;T`K*-N5kXB^d1-4f zE_MF2nRxw8)saCgKcAKGi|ghAUEUlB$%>@ih9;l53!fP_zk{K*~pNFlhXJW z9*>#x7oKlrHK*xKQCNBXv0Ac5r~RhHG3nz`sPZ1)hxUm#M_?8Vaehf&&4NetOqjtZ zc#q8|&P7ME9!PP1a_0Be6mg2x>lNteXGrnOJF3x-QH&fsx>J(AZ)ANnW{;PUFuKI+ zjz0uqHv<bzMn&GNRqFyszRS)1A)y z>7Y8V1k1;L1G~TFo(xg8+mE(z598D0CW1R2i2l?Ky%+jHnIw9JCZbHIrFwOtLg{m@ zUir-DmiHip^$HI_e~Gu(IV;Ke=QMIYQAp0$z>JRjG4i^{@@9+#?E-#Px**i+H|J4Q z<1^Fdcq#S1dskjt|pm<1=uUm^ft>k5p2DZjQojOej{Wk z`JJu2&Is;a0na}mD(|sI)KfgCqdSH5l3uBv?XCKBXw~N&1b(kHBO;`3&Gt%Hl=_@M z7GvUNNzZ?vR8Njeiuf8MrXs#YRFo8JU41AnQCF%JTy|g>4QK6+hj8KFiec=5a zS6HPzGe8oL|8#RbM^Q>?X;jJwaAav2J9r$pm8iGo5fs~C^U^*V<$+@rsJxFN=a!Za zN43OTRv17yxxazVa=&ASbianD9arMh6+8?prA z)r88bXhE8RZ#a}yQ!k!j0*JA)8f~JGm<5`$S`LB>#brZ*>Xs^0B9=nUvU=^MKA7xP zpjC0qU#(Sfgrz{SWeq{Jlz4k*e}dBe0eiaTo{nX0yL0jBxYuIwdfiD_PQvAX4k6vV zY@G7kv^dM!XStKHUR!K87n@OwA<5i+x0H_b8JK;LElInYVAx=wujweT&GAlPMhlRIJsg5`160uggJDA8KqsExx&5e%DhCn||Ran_-Cm zeqFU!E5s98f||Vm)PA@<+S=KQpIA}x1E9Do z3#0p!o~%C&0#)ijzz^WS2^9lK#^h2@Mp$5%|% z$y$oBh`x$xKg03dx(aP>+3P`>sXo{qeKS2Dt=RJM887>XUO=f*aQ`mR6wHL#KR-Hq ziE~B&utt9T&@_zEzw1_x?pxWmrnH zDU67m)d&jrw-hGqo6*vOlyg6F-+=DpH1Uv~r-QfymVxEohLmKvx8~ukAIp6V#Y>iZ z5XH-u`)@?yD@cU3_}|Ygw+qN$wcNEMRdEvR@|xvVpz$A;+lbaoBQ$ z$Vwkr?tHlP-toBk9lP04^mVnYPb{}b zj%9s{`K4RdXO{aOtnsTJvU6tcK-+x| zd1s^TUINQ+vfb{m=Vseo2A)^h?zh+vuD0C**mH~R-ao*yuCd)OpzgJ{%Xj&%v)u== z{Q~)wtE_i2W|Ik6c5?%QWSpz zPZSSBvkd;KyL%hZ9@~8c#iN)CioLdb7c_g!c6T7Ic`(U>{|D^ni6OpeVAl^%$719u zYhXb%n~#Gk10&Hr_j#<5f!#=klPxj|7ns)va}F$g5Y>1&s32!5crYOhibVH$rq)5- zqUSsBp>n{&??^v!Q1NWiQ|2HyD)Sn+eo!w>Um+-SP>GQ#HX?Ecl~M>dBJU+7fMo@M z@oNWn|1rvIaE~Z2YBIQ|P9_y9H4QG(`};(}-FvV(>`oF_VL=UcwbZF1KMd513>~~y z+<*)?xJ38O7v12O!KHE2*tb}W&IBrBA0OwzD8FM6-n>(vi6HWcPidy((U z(rq6))U<~b#;Q7`d#tKMdc>+aq^DM3l1M?24k?Nr5elk-%uYQ=9Xp1YY0MX&W8WTP zOu0}UG=`XIEEf1ilQpDN^SnfK=mu0qwahf0RjQ}r(|ZKTVo2{iR#SUhR#n=+QB7o3 zR%K*Q$4qAQM{}mu))KGO17&GstFuE@kYqgO;ffZ6pm6$yVj*PD{NcTh-B! z3Z5jYI%x%Q9r0BKVCT*l<=ucaRMlk;s)?*NRrUOq%<_@As*1+Wpd@_p6`7!_^;+g( zr__Y7wGU1)2eVgCB{kDnc^#qAuBW(|v_vauQIX5d}j{ z=2W*L1yyzD^n9WT!!m5nA(I@UyZb4qmw2nYu0rW9L8`Oec=#Phz$&by>TdIOf8{;w zuf?Wdxu;^+vE4JU>_GLt4XVML&>LS^J-y3JOyLu3GSxG*=`GO(wyU10kyqRS2Gz5o zXN7S%l2p&ueM#aY2j~prGVv?yT0KXjbn!i+sCq6BA3UyjSH%I&+e4`ns~5dOsSJkd z3*SeThFgpsr+V>E3gH!pe4r({v)G6KdZ7vEqP_|RMavkVi!};~Ut#|0OHNaLg|)jX@j;9Q^T!RjlDXJa^jcc6MbWpH>x70`yCp%o9Zyq>7Ol4QI^ zfUgRGs&uhay`||4jO2DueNFU2|7>iL)z|8Hlj3wA&~+r^Rq~1&psnoVyAYy*VY^Mk z$87Pe7jV0VkK?z#kg2P$pNOG+Q9?}21H6ID4Hpw0^>u^l8@YyXG2sy{8R)%fH}t|& ze*7LP!~AAVj9*KwM=q+~p&@=PwT{NPMZ*@aNJQqTzSVH{iu)j<`Zi8h{aR{1ww>zR zHN>x_z6s^4@1R}r1DRfNiUizA`{U+0?())pR9PLL@gwD2o^zrYm*4Bi{LbEBUgE7O z*nu9`ZGe^CJ8HSa-w(r3u8n2sb^n5;FWeQd5&o-}!8owg6fFRKysRlbh*I1J#cIk} zrNcI10o3&VSRtluZc`aHu?{1;63uU*!TTGGRnzAlR7(%qHU0a|Gfu3jjNaV%GZt*k z0DZ+96eWp318E>;!SkR|%^)qeP+Y;j!DN9K@&unQ*9_4v!~=jF_`9Y`!&hyw70Irq znz7860mM%QfHm5bcsy`F!l=4r_>Vyz8nBJS@&M; z5i_v}Yo;)G)Vf+<4|w`l9zq;S{a?Vuw5tkt-lv{)3ZtwmFPLY-W;Ih!fTFaysmee5h_6*=C_H&tDyCow*B0qH9a<_w~5?*h)HF6!Xm4eti-gvhP!Lj!xmdx57Qglfxa7H@bT@N`_z)%NA~;|(9cvC>af zreZ3}Fuz&eazsXLzbPKn#)5FqY zpwsk%7GgilRX0iZNwKyRXtKTq6ci_Q0Gh%8aKbs_M{Fu}r)!jJdDkGa>ZU#qIo@J~ zLf!O15EW!~mtA+xhI5RI>&}h3_!lZZpNoqw{wG##-Fcin{VTW8G@426Ek82XKv^K62foy#Uwh1-sS}d^x@Dat$wc#4Sjwb?bOD z)e~Oti1R{#SLm_GgkR7*>oqYl;UHwux(&J)neaPC!jjAiNse(vfn`xX) zx)%v*XCmNc-HQ|it6OzfX;vp3F=rUy)ml)CM|?wTY|(I;-n{FsX;PfmdKkhpUuGzc zp?79|hAKliz8q+FBB*#I8ITWjMo)#L=uD^2sZl71eeZpY$y6U7p@xi9b{0R!V*TMO z?`YEJIWlV_%VefT|JSOYi;V1J`nl(!KNYPRHihXvJ}*OaDH^=fupaB?av}J+3K>c& z1$aQfe1LEAAVU0Hh_sdJ!>v#@ZfwIP-unF80o^<6m?Ki)7aaVjAxi2CNaj7+i>muL zszFwpo%;Gm=bOb>-@wVzVqYUt>dmgW3qQt&Sg3E(KH2RNPxb~Js^MObxD2zXAEx0x zkN9>J;P6i8GjQ;0^c4uJ`VqSKpgw)okEDwDc|PsH`cW^OM|jwy&PerUSHzJi2hOi= z)?;yG>Ww5&KUzcl!2Ci4PW>1S@dNYEQjM`eC3mk^bj9veKTgAaUgh=r@q@Ki_|L5> z>Pzw=Rg{&0th7I>oc9c@pZc=#3JLK}3Q+Hh6_Vl>EaLh;*C`Yf9XYM?`xOd_Dq6L# zMunm~a$SADXH;Ja9NrtXO!Z+L{s5+r{~Qg?88(IK&elUc`i7`Jiq?I+;>hGeR+k2u z+o30@PE%A=NmKD;61{d*ToSasmdWv%W=V8K zYl*j^)9EN(Y%cixxrm{=vL6^(-Yr>{)sSC@-gwzidIQSP!o^lY84W@m_%NfPH%D`A zkM0g+o(Cpb-UrhF%ja=$Q$y|d9DD&s*O3oL^L>nldTzPgWbW$))IclqMEVxI*wCm^ zg?OSXP?JVgmN!%eIP^}i@d@(v39|G)frx21HMjs~W3{AV(qhz=#*?EO^MQQB6nc;v za}R1bovWA{@L5vBR4pYa?n0(&m_`rr^vp}ChUw&|pY8@w3&!=tUC^3_OE0;=tl@^s z7+jp&kP)C?s?R-mHwE(xErt$a0T_i5h_lU;?UBt zQuiK;6E(vDS7~@6POPCVR_pC-E8ZdY0j|;T2A{~L8Q0R~IQaR*-ekbbb?+{`t&$G7 zPH$)T;yvSfz$-Mo-zUDo>>Ac{Za6dJE+j3mfpT%ST7h#v)^5X<8Xp9nh4^XMsPQr2 zvoe7heqT!~?I4{1|(wKD@ zXcAcsHD-T_y6A<(+L)tndRXEPqFkOy8IcpQSv2NR3L}zH*VvJRcryoIi$*Oz*x0Sx zBCz3qO4wMaJMsU8RsnU_NT{1!jXgLSrUP$w20D8l=jf)Ufj4qAul}0`-G(Z|buK2` zG+3)7gaehDhCHqM@ZY9kku+6l1%u)e_El@nA$1e3sfOzCgf|;HG}XSKP!;~e4J<;u z6Gd?uHo3K3(q{6N5=`hWwB~d~RD$jq)V*g;0E@aZRO2f=p2iEIDKBb0-sm&5FfU@_ z=vJDGFP3A~anK-hRmRYLH!9!1`WCqcg_ zNDzmUIG&d%f@RRb>&^qWc&p4lErgzJ>W7f*sf+P=fA+cOqJf6)Q~m>{X}?S}mse$@ z`VT($E6+w6vHwZp@=cvlJ<6GvFGhl}KjCEhjzw3$#g=_5gR@ULAHLeR%|~P32KFqm z>|MHN2aIFiWg|*K$M(OlT>%V#!vJM34p+g=H{}@c74`;X8Cy77_jOC~;8N)>9Ho4v zQoh`w_LWNeO7$jCrBZ*OL;Wk2{-YdDpi)iXB!@E?uyApOWuN0vGt~Q7_Iava$@^UP zLWkRQWg0DVsl$VJ<#ePKd#S@G7nS_FqlJ<9OQ7KZOe^51$yX|~BsTSAI+oVwifVRnayUivO)UD6TH_7@en|qj^<2iQQ+|RSs+^6;h%_2oJVE(xaEPIvB zC*qYnG}vowZUNec`|UOxzNGmmTm471_uU1}m96YpTiME1>)A(JnLceRJJwdQJ;kQS z*s4kO!Bzw9M>{~NtK#hFe^bpx!awIiVgC*xg9bDz0)`X+21g0(cP-l*VvqNHYh%gc zKP>|z=cRaC8V3A1Nd6JpFI@sof5CbM1%DoH8yc(e?F>M^BK;a*%^k>5&cS#@68^vL z+6D6o_-jC?A}(w3RbxQD0eUH5T{XCx?qk4}P3a1=9}cpt3n8zLnmcdBQ}b$sX5GCm zI3M@%$2evJ*Mqlp8lH=#e9r)e=}C%mymKi8eHcU3@O3OGZ>P}U*si8nFeMg@ ziW$@tbq%6IX?7_!^LzH)t7l+Y$^4n7fp$w8?6M)wj?$lDm@qa%P*TUnhB#XI9vE(L zl)#>(IIGye)NNS0%3cg^&OPxq|JOeL?Hi!W4>8jI^0H`v+@k`d4oO!9$UQ1RE(O#9 za(`@q+^+&8&T9hXeia~vfI2{Q_w~R!Ky-ioRLI>5c{)HIRRQuj2dM!0Pz6Xz90Ft$ z2;)hp0^~ClAZ6%im}FE}0mAQ_@lOZHhcSk3uwuFzQer@3X9E}@!y%$wfOLH6s8(%Z@i!lFjAV(tcd!8`?2xB0tjI)}eT-WPx zvaxkn*}TTIC&k%^4U7E2T62p#Va{^Ikro|C+0)TDh{q3%;Q3=e@Nhn%v?s^$e{lC~ z-n+DJGC0{&;+R-TUw1N(8mGrG6Ai^iSicXI)h!4zY%`1En2fK&zlO;J(T=}cpj{(h zOyJ*R03BP@g!GDcM96B~V0t;-fx6f4kq>eJ{u-|{-JIvx7Bv`iZRA_M{Nt$eTa1wo z?N)6#n|*D%W2{rpBz5C5t?G28>N`|*PpqoX#;AHgvyD;pNQ|l@i3OjgD~|r#4p8`#p<|6fOp&m&PPR#0k#R zM3fbb8GCtjY*kdlrf59Gn5Ch&(Ym_>SCz)-`u6|Q_26}}x;9i9`oSFhi~&^KhhS5I zTNU+W(<`PsMtGIYdn9&IoLyoRf4@re?~3apyJA%|VvAJ7^6O|iVvAJ79tGABTl|NJ zbydWYUPo*%6|rag5wTS^&Os}57*wh-co)qLWka-J6|pr2Fk)ZPGjT4#d`7E?oo;$L z&o86%JP@5{<5{Mg^NfQan1QbOrn_*ye$R=hbsHC%Zd!Mn?xs&x z#*Eq<9ra#xuW!6EX4ETfqi%>9^<{Ka;X{`GYup(#Dh?5B{Qq#wsII!%@0l9au<5Co zQF;XOIqxpoXC78pslS2*wBL1AbakY8na?l8!K50ut}uXS@V5X5@mdp@*DMuD zz`T_N%nQ@4#FunZn0J~^0PDq+?$zo4&}BOPXLyK^c|9#;47A&Uym!o4M z8Fle;1ISLctPuyRwWj@Qbh&=DUUB(~9W(l>3}M$AjDOON z`Z!}X-eHIsl0}+`A-M}1EdMxmbaZUO>LtN z#fU5gY#G^GR)Y_=5ruC*fCY{w+IhHkz!LkJvyIGlj4I;em zDEwrP_VRwx-Nf;|fyXF(l=v8+8A|y*C1$ME_-4$g zLfuV?^I~i|GCFEsd*3%L{BO%P&cZ20G^4pv zR~i}`?s-kq-f(}|mg<@`Pe$G+Q8l7z!D<|5x+&6k#UEm^F2?At?re9ii`)DpvW?X^ zD#rTtnvTISH)iLG+V~UThUST z%_vwfs%oO4quGzO4euB;JcyW4(SPv2hj)t^-b>SQru}1vpBx>&Zp8r!g$} zf-?WeLTup7d0dZfS3P1jjUv^nQxzg|2d)QHM1B<$wax8mTB0=FO_K^zHBa&l@H4oO92) z%em*Cd(OFco@BZBH3R-o$iED@9(m9poyZ|tOxeDdJMhPPO!Kpm|}`$ zw#Bs|;98O4;$a$p*w(TvSB=Hh7jR9@a4omEuE=tI%i`J^aD9@I;cXVzV_B~IEw0}O zTrUJ%We-_gx)j3;)pe8TG zHC=NeFIh|D7*h-#2*0XmoFq7rp_bV`GpOQ|jM+ZWGTR-QDk6MW4}Yk#UkSKg$SC>; z7T4x1*N4{f_;JAXVMdKUvzEs%vs_PG3b8lfx--+(FD-=_hCszAMdbGu*YO68Jut)d zCyQ%AmWzMiCKy*V;Ht@R4XHH6TpoQ{u0s?}X?@Ns~`!7LdCf0vfWBmu$m9BthZoSsHP6tb3 ztf2r3xv<(aB(77f0yN5Ro1RDOt<_?V>qt{f!xuW!YG9-S ztD*kIh9c@ztLh=J&>t7@~*{oeZVy};41sb;!+b(Iljj9X1#tk zTxTSbCla~201_$GB9X`$3Q!`SnI^Il3D?-9D=gAuP%WCwl1BQplp`!LrTLzd>1)s* zODV#`RG_lM{zw7o)lLQ2tHCcc^`Vw>Lwm%O{%^^+@TW>IoA(xbNcUPp`s54kJZTN- zuz%`iRy4vFUEX#F^#Wfa-R93{H+f0X@$X1JMswt)fwp(1)0oPNR zwjQ^*+Ok|BwFp$8F9%$22d1qoFc_8smAkx#=;F_5DeF4@{590vo%OBYsA>auyRRJv z(9knc^DBT=NH%Vi1Ng(SL@Si}IxO9Pnf9UHP9(1Q2Y^2gbwUQClg_kBNoOM75i$Pd z@gj|h&f*J{(ESxCopSe4_M*e(H@f(9m42>6WA3%=98a;`j=!Vq8Ft`nO7K3|*O`Xs zNzM-#UC+xomj4mz4}Fm5Zc)Au>!cm$gt4f$^#+(sIhOw*kH_+t0x74iALQ{^{xN{& z)OAnZGO+2f{GL1>%U2u$o55rGJ$XEK?*V8|T}|=t0Gm@+Q(n3SmUk4|GpDY9&*O-u zj{_{Hu6M|(>k`1FFMx2(f1^N7UAM`pYd;FYmuuJM)b&~maKd9OC_L2$&ai+;wE{eK zeH2Y_SIZpBH`UU$%kwZQwPFsVtb9|K-#* zc`%MFN4Wu|ztl|T4G@oe!%ff@-uLlF@oLNaUjo>83PF~f`dMM zy#x979dFYMYfEvN3UAC8jrR^B(a%8?;hTr}a~SmMW6U27I-~vi&?=PHYbkB;=o?Mx zDwIkbeWO)4O$)Pm?W52xf99a#MpK&aO;@wQ0KX4c>5jlnI;G>9?lp9@A9F1B>jU;j z9x`=W?4=g_Jz4f;7W=M%{lPD`-ej@ApJh*4>;;=;-1**ZUu0inv7c<{*!izp>`Man zE5FG8O^dxN%l=)9{px_d_lxX5u-LzwW&fGQ{$jvh|3&uyvDn|uvj4$iKLq+B_I~~s z*vtNGv4aNVb|SA>+EikAEp2*NOP4?;&d!uN;XPWDgpL1F;5-n0HE8|?ZQdyh)`YbM z5k=k!E-46JzZZB|`qm9sW zdG31UeSuaOKaa7I3AY5s`#CY*M<1oe`#CY*X9LtbRkrbdL5%mCC^UDf#CRVtJ}};< zcr{?XQzhl4Q(+pOxfwhhROr`Yyq_VH81HMvc)t(0bOi`c2ca?EH;VB-cmj-fmv&tY zVxI*#;g585Qgo126h6uVB83Xjc&|khG(j2TeVR?VSOL!GtwL#xcfCavZnA;fEx-x$ zr7HZ94n1fC&)dMm7E@U;HTxLv_ksz=R{s-P=^i(r^czeoGa(*#9VWAG5W=Io(M#id z5vBG=Z9<&izgfWIfZJseuf_ZjwTBMI{X4Dp@A~;1tN-(@fvy}Z*Q-vRsJe2nT(4>a zXmn+aeZ6XoT(5cpg`z8CAT1C%ndj!dEK5RS>?$F1g(TobY@L3YXcyxi;{Q1(XG% z+h;DPS#x>NF_3B>HZC)Vv-NW?hTvA*hPiZxnz`)fT%IurojgowB)~Y%0u~3{k^$jd z`lvlL{Q!4?Qk}TmG; z0-W$R3kpB10JSvygkAD03vj|c78LHcfh%obtV)Z`mIb2ww{uy~yWvxnWp#@Y^nK{Q zJ8rAvEO`#4rM(#8NI*+}4G6wc|I#<*VavLuAIQVtz_QQyFxhdI4ef{V$3y8Ba4o(Q zm_vcN8JM~cfmwDGpeIm~)othy=P}1(+{L-XU9u zWRJTQ&n@L-{Vj-_OAxa*f0oWH+nHaQ)Nbnq-RE)=CvGxrzg>djqbrv=&=?Ai{w>$9b4iia<8u z2W`1LX36C;Q=Q1=I;(Tv37UC1)6C6Q=hQC=ziHR|fmQDxta|5I-49`6WzcV^%jrZ) zt?rLC#T+zW&k~4gcEEM`!v^V;onvunZ=A~BvrX|+`uR2RHPll8-%$(|qwFyS?h*Io z%utdPjjGFH8G99w4P?Cnl4zZ-yf1_IH>O+EY`X5#aDqN$(}VqaXSfZa{Lh`p>q^Um zh>r{{1sxuJj_Iao=^O<}H1@8HmWI<7QTPQLIPqMIy-oqLH(2afT14S@Y@j5XWe;Cx z0g<05z`Aa;>iWngnz+KSljvzf-`t4o)8#;IzzhBF}5-@FA{qsVU`bo#}0Q8#7mnL;rp! z;;Vk22BN!6L;2nTcbl#_kpipusi1g5rg)kbSA+W<(*))kl@EnR(2j&Hf??m~U`=W` zLvWTwaN>Rl!Yh=3_CB&r0lM?cgc|wO4}z^W@Z) z%Qalr8bi*<0{nSC;P_b;oJuy0l1gx}Fwm%8`bK)%hi++r#V zG-MxN$BsdEc~G7!++JlH)@EktZ1l#Rbr0MS{t02mAYZ57`Vi2O`;?X`&%a<4&~Z$U z6M0P4&3NIq(S>~)1YRC(e!e+t^_SVX1>1`T;O^+ZFZ1^jI-oxT~j=M zt&10}O603uQ$2pQt6)0l<-l~I9GI39maoZGNPSlkmalnTAmy(Eu3V%tOX}wZ_hPwW z7M_$ZwM|AAFWjg_vXgfyz@6MF-GZs&)ogOSE*zEMsCxtG68SE~8}bFaULZ@y`*V!-f2rV?xKp{H z@;^5hAH(M=MFl9rD;40eKqRREU66+iFS2h=_yWbZf+KQ;0v7^!(+~|EF+RHG5GQ=I z7JZX7->rbu{E7niqhve=%nmV2j4yk@iR9qkQ;OHvhO4sK1E9o^lV+Tv56pvFS9(b! zrFkjy`QP6+g1kipc^UGf&YX$VCcJkoOrH5#$QRQ;;tTeqTW*l|lr$ zUI7{IR~4WjhoW0t5ESH~;zf|RC_q7;Y={Cu{y>XFkUv#GYW}kV6lA9`?JLNCDuoF0 zkdzSs1$l)bryx&IvOG(x5FYD^@FS+w%A0^T0}Dpk++7P_K;4~gj98s0&K6*s;bo{y4)gKYY{ze6MbkA z-DbBp`8=z=8U@(iPOGY~+C)E5fbRH5LIijG-U}$LQ=Q0fwUqAo*avhSi#z@@1PXWj zh1E`Y)JoH+c)MRxfWCRDaKK`I5?HbD1TCg}7d}=2nYNhCw8B>}otays?pdV&6 z;Bv*wQuw9oP^0{PsP_rQb0P5VCEH`Vcc0}Dc~0rL90oIVIB8Hk zSH`vs-bgI+i54CWL-V8*%7tmX{h`ZDRu~1ZNx_*i`jZq-5r3Si%?Y2X_zuvAqY8W( zK;$L`z5!tJgQovJzWMfm;yIBe1~2v-%Qo`3mTd*k*#XaZC-Ogve;oKegCDZ#tE=;z zNPf5J?{83YwJE_pTPR;WzG)m8uce%G-s;TCkekJsQU~;u%RPLG(sJG-a}?lY@6Iqf zk!q_s??+Ohw`sF9hwewUl(Rg^lnx!S{=$nEan>-W;e--!t|P0hHp&gP5M8Qxv2Qmh zz*+1TA|Ahlf1qgExA5~85ZSE&#e1u%)tzrpMwzCY8Ssa1b@b`4& zM|O*(01W=y5!$?EElpwhZ&R>gC$V%x^pc3S@8FD9bf#Nws z=Lx=EX6Sasb7gH%dakS=E1pxo+2AuP>*rd=74)Df(-m~U`7(5eE9fOt0t=s6L0U>} z_=l7lM=N*jOjjy#6!^+2{>TKCTLAB5VFhZt=V%GrtuiIvrkjGL6xUMfM5ie=O9?M4 z(jw7@E3Nv&e5VzEWUBebEB`F_13&3t2l5?f2kxQw|5kv++H{ITq6Hev@DTQb+5QY zh9I0UcGZd0DxOPZLI$rgY}7(oB5?({L~3#=#S=riUMaXLn4${WxLEO&{(8Y1>2Fnh zE9kFR{DoMyKe6!lDxUl6&lFD~J*D-N{^u6{4aL)T|5EYd#>`2ZiDc4l1iTk?4p*E5 zHzrc5#SGz&HpSfD&a}7|23%9`HdQ&1vn;O0ELW$ZnY3dQ($-UWke^7>;`(})>mrNm z?ttt14A*5A*ArQ;Zz`Ih>6-ypYo>>{T3mn6a@}Wf9r1|vup+~?!{VA|im6dSmP2xc z@_L_Y6w2#;h9dn}fy7AYngiT7l>5R}GG6DL8AwIk_R}E!ca5a~&Y7v{ziTA@cP&7Z z{=42z|6MQXzrUhT(tp=W`ftH3ME~+W6;u2@z$X1?%1Z}*yci1Yne^XHlI|OFDwrhw zw?*L72}}C#W=a3`0uC>L+VDqGSgkgYw1CJ)1(^O@`Y5GmrT?z5D8skdz%~nrJgNXw zSl37$CjG}3U}d`Sss%*eQGn^c=j>J`{r8DY>Z#A!EB3IUC>c@DP#C;X|-y43Aiy$O%Cf%7b;vOq)rZThdiuitUjE6dFn z8`1pmROnOl^Em4K8cIu@d?c&^Exi_yw`p)-=`Herqt3hK;e~-^+wqWp8jdTU#6trg zeu0Op`0yGYp5nv1c=#6|KE}h0)A0}*z`Z^`jKagYbMSBk9jzRr6+(n5t!cs zQ@0+NWwQXeb5Z^XpycCdD*{ZNGYn<5cv^(AFi*w!BU@8c0Vb+$d`wm%4lkU@8pU&6 zKVpF|;+<@!BfU7K+E#WeEsqjWn2;yzfHZ)Nz>nWBlJl#RD+-ZyDdzM(f zZz>nDyl)Ng#h}sgP;vPw`@|Zc860HQez7U#@D9M7i8&tsh(S7K=WDUu(aK`)mMpvJ*8ms;!4vvbyT*@!0DCb#rKtv{=^-IkkM-R zZL7V=L90!-Nc4@|uPg~BB)*_3`z6w6)mG1xWJT2RaYsV5lVyN zA@j)7if5eAXYi0U1St{z>sm^mdy8`M)`vzZ@S!1biSPfSloGFgssNq8Co*hEOs_Yx zVPk&?8v6i8%hL7#(o*{0Lw3q&v++G@3>PYa#P_Evz&4II)VPp>7t1PMyzONQ(A!=t zM2u1*-HN6FI}L9pieIf|qSRkefD?12;TLIcRy^hMfL35d@f49n@%Jg6NaaTgu*a_& zCiXb;nBuu|J~DXk!j~|VXS6_~lUEg>bS6Hn(qZ15v%!JCuLL5Uj}>5B5koC)9ea@@ zKMYsS6MQ`vd|=$@IL=ZM5nzP^6yTMHo-{EL-t5xyT_+J^kx9LOC zcqGsUw3KS}xpMI`#21&>9&fGYH{ z){0FhQlfaO(CFvPNHx`iS7Kuj+8VZ1{dN7cTO3sI8IS z`{a4hhEJ7=F(Tr~FXthSTnCXV#|@Vl&L+^he|jN^BiBhB$(QfTUD9szehao{h3Sq99{ zfT`O8%(7-c@3H(1K=1tm(MS@Qx~U^jwiZt_A`t72ub7dEqw%By^cw&6KeFbD3n@v@0mI z7brAFNrMpxZP8av`y#X@3Q%Y#fdMs$&_-C}U2gEWH}Y@#5Gk;Rf4-rn&?Z@x3GD$+wzz`vM((ym_F2HQBAA}C2lpeR$^~CjIp}8vl(6A0 zNGW__P=a|WyFr1Rkay=LhF3zI*AZ10_^Uk7E#J3+F}viYq$5ZO?BWErd|fLuL>1! z-AX`vniH9!r3`4Dmti(y8f@ZlG=Oyu~60(6UCUTJCDf7<_-b>;$e7F`!D0G4X^jHgbi6&%DG^IEA0=$xl z&uU1d;ReMs{z+xj@(eM;N5#{ z5r19FM8r2JKoP$ygyy8>`--QC4}4ihmm}g@TBn~V5e0jkA(9~Q8O2kukrx$UbCpU& zkM|A5v*lL7o0k8oc(#1S{#p*E)%m)aKDK_l)%pmCf4E zB2%q;4)}Fe1ULfI63*W#rbKp>%pGy+olalcqCMND)w$*(lYtR30w3iIywC>8Q*SMVc*qYqo{R`HH9Nt~YqMR8{w4Efdwv(#k0@Ot7i0++GC2RWjI{%++m(kycmX; z6`;y3FhqKS8~KA4QPmohpVH3TWM+d3_2mp6gWjJ(;G3xULq)kULyT)Zil?G%&)`*2 zrfVVR`xPmy&*%etP^{&Y?4ArW{C365e0M9rsTubh5ld!jF0v|!T&V!3W`Pizskue* zoSL|)V1HAiD?EI+l5=_@4=BJnx!UlGCO@or&dFBAb55RAyv)gq3UE$-X^4VT_1CpX zjCANKBU?_y0l(!4_p_$M!<9GFX2eX( z{Keqm6$Gi*DO$=28~0kU5GWP7TxF$R7bvC7Rha^us|6W0Cvvvc*trJpZMsJqgUGtH zl#{g1lxA~4v@2_sK&I*vtBu>TZG^8;yiCp=3UG3s6(YRyQoMrjb}f=T&@U_?@`?h? z1N}>DPC`_FR6O%Q<6bwykVF~gJN&*DN*>6)+6a|-psHL-c&@<)c8pRn7t|(HR5skY zQoN|aOa+)uyew0d6IrNuF0osc*&pvjsuWMr@383kW-b0uoql2P?gH#Cil#d4G3Xq1 zx<<>XHpAX9W2V|Xr+BK(WP`_zqCjnauccI*TIJe*O7SD56t($>0_^*$44V@fa*ZQD z#D87!?8M=UXD7B9ytnD@K%FLQDb?wDQ<_yL%K3C95OrE;wXs**AkmqM7j zWytrkw^XjQxMrGSa@}BY)dyVJTPk;0Tr0C&_bZyY&PxNX!63SbJY;d*oaK62(Hz$! z0oTtnrWQf$Un%iIWE2=j6ZDaB!kZP?#OTrxy}?*hQ(Q~ zLljM}=78(#8Llr`TmxCILW}GAfXjcvw1A^Ki|d{&SH$9aKHz#IBf~Q-uH9L#sKqtp zO`YYpGd=9IxW<`cO5<@wbG}XwxH^Ki%7P3UrJ*^8@C0QsnP2AHf){*^zut`O*T}ZG zn^0RL^KHkJVLgu3B4%}w`OQa4EYx{`8*n`IO~ZLEXx+Eo3NpW)lKDNiTrfR4oEV;x7on=EFkij0?hngzgtWX9CF$M+|zx|q747u2L5aT5m$vn zQSXvEOy+mE;-w4YEFf~c0?hm#h|zK9msTb7JKH8LR)Cq`85vS1oVJL<*Vw>~3Yg4q z4Fos{K9l)fEt%h|DWEEwr@;c8@M+fQ!o@bwXanD|n92eT`L~(hv)!W$p*+_PT?SQp zL|JdR)9BTM=#l%($GG0PyZ}!(4&^hhXRNJQe<$vNJl6j<;qBuAA0qJhYQTK`jlvfKu9z?k@Y#8;KwpYJWt3|B5;LQ=p8mpd&();7_ zXH{-9?XsSzRnMJ@XMa{%_548b?9bP&dY-cAzn!Ho`;|q{KB7&h@-FSnr~0|*&qn&w z^Z1?D$0+^#v}jyD&cC$2KHz_(_(I?h1REz5`0!4}M}UvKtN`;6GYyf~_Z^s_JzB5= zRGdnvhf{hl=Kt>ZO%E1I5B`WA)V%?;vGgT*wDf!>YNeyYnXI2rqIQ0@xlH&X2P&Fz z&V#05E5$juCeH~^R1!uyP9%M+5kF(TKNtpdN)!X%jMYNMR4zIwhVv(DwDfi@Wng!* zDTO2`WBsz#^=oh(Q!C!VgG$TLF8qW7Tt(r%3Q$zxzbhbln(5k6l3ifxAF@e?uuw}R z4qK)GSHev~#@t7^PtlCQxTD-|#`)p5&F8ki7kb+PR0?Y_n)hTA{@?^~ z=6mrgWFxJu#Z)Z-%^e>E1sziG-zbQT(0ZB3nGOPoYSdb1+7V(6hdJ(-@ZGhsN<-CM zBs3-yHe2x& z0TJ&y1*j@7Yj4(IB$q0l`tf15-pF+p{lOo~2#1asEUd}rjFa&ei}83vARFg*6weM7 zDW3HH9cC)-M?)f7A7Au6E^Ro=++{XKB76 z7oj|_cnW2y;vtmqYMniquMG-tzRKQGfZ{Sn2i+b^9h-(fWrhE9|C$x$sK*J=+g|8x z{vM<9YeePWq}HBvrHD3 zpmX@MNKY6dC-SerYo=igia&W}yeW^obEA2noMWaKZUcQecLCmwu-TMyufN2UT6;ZI zq|_q#_WlTJlz@W%i6M}Es#)>(pTO7Ywe zzNUCd+-<%oJID${ggAkN6rFlXi zQO#ET(@@U~GI*{ED1Af=>CJ7 zNB0X3y)T2;p&z1!9QyUSh3d%umr`)#_iA$(dALmNm^%zJ5QOmNyJ&oUG-F};E?UUR zf3gXeqyiYA7bF)e^YoYGEd_Qk$L*y0C$VF@#$SgC5q}0*M9a%ka_w* zGEX-HX|^wSg%LFcTA=qX4sK;ZmDyi3LPj6kuv-Dw?Na z&}N+JuXW7cpNzew{10_PoO*Q-hT$u zo#*qdVD~N6>CW@{j`?>1n(5B>k**2eF`w`A9rH&6Bh#Jl^BwbHfM&W)@g0QA#-MRi z{x`rCOR51M&lG3@^V5bo-@81+fIs-Y9p}BT}zO5-=~%hb}ctqwe$qF9CokiAnXOa z&o2i+&K%ug*TPpB@`oe(eo#yA69y@@1YaWFr!P<2wfxbl<+GrcLA#dTtfy=1%lmdM z!*$`XFAK2rVft|M&93F3(}IrWjOY++#YGCOS}qA{nQqG^*jn}((JZT$aKr|d*g(_* zB3%kxhAzKs8Z*|KVO%(Ak%re=fRoSUi1#nu_l7$&e_D&be|6j_U`EmE&HNG8*C~^a z%)qae0X}|80LwmF9Ppp!%zQWxe-UI{70XY-ujq+~<2$am&n~1@j6MzFFST;k`*H+;$uqfD*VQmT7NxW#Jl3Np@3%&7;I&LEgS*t+;16dS%5vP1lakoo~)rH z!1515xo0SLL4Z9HM%!JW*tr4rOT-o_cD7>kU&ID*!sjZWkhlvYofV@F2W{~f;L+M6 zyG(!c`NzX*GPKT$qZgyRe1V~IURA2{vvH_sQN24GREydSRq*E>#bLQ2phAn^VDBm} zH&p9i(Yol?{4}5%>Z}+#8dR0{8>;cz;);7hz%C{&db=XPUUnSdD#d=NHLm#R1Ym1; zOaa=4fcD{20iVgk2w*z`+PP2$w^p$=0qrrnu;pE4QN6|aTf4zf1%HA@=Hx+(>Xm~*weC(swMAzmcSmk=KgMQU(&M@= z?Qj9lDV%1vZUPcX2$f+&9e9x_I2b)Z!GtsM;_Ej@x|4^afPO;(H~s>?7qs96uKp&s zw*n+fLatkxDVC==ygz5unLy_G%kX>Dnxjd66K(%yQ-NZroJ2{uQr(;#R{Cgz@oIc$P)t7_BmJGB2q7_7AisP*jpi>(03ALAs*>lA0%laDJdVZVWRVYVZyT~E z_sVi~`E_)ex3~*9*XVJ4EReqkl9>*JY;_-olul2Z9@mm_W=wb z{EF))0rM@L1zbx79498@^I_=wyCKv0ds)g~sDw(@?EX(ait)z)W%NI1F@K?$+SKf> zIt;~sRc`*xA;aC|o`M0EtVZ(;^NdEcxj%%)O-4yM*-b8PUP4_zb$w(tUFIfX1)YH5l%P;bQVCil7;P&-3hmuV+e;a2zd zGk|@__F>DL{{yHtNuF#%0Xe`w?-Zo> z-*d_3GB0A3yw#0j#m=4L4hN~rbcmS~k~wYe-Dq_FL$1qAp{b2@sEzMWn7`GCm{|!^ zC<`sqn}WWxrINQ`nCEYCT?X@k;rQqX;O=xeHk>vG{9>5e+`&_^7Rp?g*N@FwXm!6) zgctwbVj5gP{N-n1YOC?3PioUz&TgO|8Wwasn>vrts-8VT~0y5PtJB*;bsdo!7~q*HAP&x>V6sX=LV z@4{p)y2q>s9$g!|(d>Q;OQE`0*?49x1qC-?G*}PsLSEHJYAMfmb4u@7h@}bvh$-PA zuCWl@jErup_BW%h@V8xBXO|gVv!ri}2V}e-0olC-i!>wb@-~Favst6e(;GnM@s}uA ztJ_tAxteF@kjJxToKo22PCEhSxdY~zN3dd^%~UqIKO2RTT9okk)s(O$*rBT`)tCX%EwGd7;jqSM8t7~9W{2zW+lv{JO8%}pMMeXP-Sc}QsX zuvT|<0dPsfz(YcVZ+1^V7Q(#SlfTmB@?6kZ{bu(K>~e)?sZnKe-H4CdoJa`M#4TYF zwl^xRdjmtT6@&NJp6fEbEwcl=aQ_Ts7tV2ACe{jCI13_(HuoO~L;G%VU1sRA zx{3NvKMLz%}0pAQsb8GXe5IHUl7DDL#(bB33X zcATLHf&?atAA}DW?G7K#LKlEPGDA5Vt2WIJ-9q3JsDa)n)M$H&_~+}9s+G~Mjw{b!Wboyz8-q0d)x@tQ!rF& zKMb||+1?y3jSUS3GZw>U?ZSG*XtX>Rb2Cn{XcO-#QppJLUzysZuSaJ4I(+!Z;Uk8# z$46zF5SsDX-m!E7`fmCor4zF?ApI3gg5yk5JUW)G`52uC;XF1Y1ObmzF$*x6LNL>E zyf!c0KS8>d7mWTynKEppC!u1>M3_$=5=d9TDU%_UFO7t%&lG`99b(PrG-VXcm_Efl zV}#Knwmx2vrwp|uJYzUa0W}#5A;j#-$tZ-JW5a7Gj1Le4&aw zt)eK~2Uf8#+lw(1cy4bX$1FX`nDOR}-CX%-kz3Hb^Xf#XZCMbYdy%@nP$5v;Q*Tjz0@M9xFAjVd2)kS&M9@U&)1FfBnzY>Gpb zJ8r}bQGzy`#_+ahQD0dA!ho~GaB?{sq~mmEN!cB=`Bm(jA!jRADfXdJBN+i=5g{yh z+`^7{cdYQdc&w{6c3v!*P8KeUCsrnVn_6OpEzO;&mUw4RVOM8!qA4*@n2IG+PGLHk zDD3QM=}Nc83j1fziq4vGa#v?hy8q<%o^&BtlK+7uIgm?X$k9e&drQj~Yn(CV)S$U6 zWp6CeRXB6Xv>AoP)wQM0|I;Y6@BeR1t+C!%Piw5Fr8AZ+OvYPQ#xPDNTwNWV(cE(C zlzspf*g~kKBi6FAKGD>ZY-&k$#(R=eIwGL}+eLjktlR7WD#)M`}(qVu|Y4PEBh)CIX}y`AlyJ#BF%O0{@%P3`q|xX z;3kDT^s^;^n|fLY3<-wR$#H0N@{EQ$**28R5D`%NM65m5uf6GQYSr>pd_WcL2^Qg@ zB{9$&h@_*bHNMKA6EO@_JKfuqNXGQJcwsT-G}Y9TVvF!-ix-wyN)q6zo6n22uv(#5 zIFO1JB@#{SnIIO&lF6oaPQ8FtvD7N8zi_%IqcS$WsI@f#hJbo$ERlp_1z>qkAG#V( z43wv0-CsZkh@vFax3ekL*_Ydsg`Mr?GNaO9SxH4qL@7{ROQKU`Bao%j)#+4kIx{+} zpuA`Q_@EaHyRe1=pkDO3CLZrPGaXB3gt4@#tFyHU0}AMBVj}$gNMvzS52TnOR52FE zySvjpoh^19Rq@tL1AGpryQr{IXK_`I;7*)yN!1AcKR zxJTq|f+I8}XAhrc%RSL4&^ zlPkdbq3dr2?0P-^c7H8CAH2YCW1XA-eVzCGhdN)|x6ZrHN1e%vwD+(4mqN!J%J%a1 zuoro|`FpoF<|Th(=-9FCySyfUaK1M(G}*;-_hxS_$=tjRdEW5N>A%c7XScT;Ww-br z1MtRf-sPRY`KDc7e6v6Ln>)O)pUSO$2W#K!PxcNP+!Q*l;1brb$y*UR(VZGPhOMo9 z>910MXwo5h{!Q}e@5%FD0pZ&M4Wi*eKsWF5^3mD={^c1emFF_ zz<>K;wBgU2?;R1E?Y0B`%G*B)om%iH(cbsgZubiI-1N#j{@#1Z;f>qwSIjAtcH8py zdL90o_lAxys9e_WH?E&I$G^C&a(z|e>xJ{LxW~WfzR=Xsd%Z*6^sD><;nO zXWh+SZG%6-tAk`Vt=qgyNOn1!xA_xpczoA4cX>-T@4aI$K3{S`arS0^!tMTqZ)&ZD zB=c5p-i67#a^2>=lrKo{bwS!Mk1X5eUCOc;ke8waa07qyKkwePFZnm)z0K(3CjLtD zS37@|XPz3pBVWQFGWSLedIt_x_(|`fb%Q_mCtb4Xx<5YqtT)~t^xC#R`)t><&-#tK zyi$LBa^A`9-a#+jw(Dm6=XIdjDbi}qX1@^nw)dC)ySyzSzaezon8f@|-q@F*BL2nR za4a-bP_^C5-@d~y2u(hMlQ*ehlXoskLS={U@>({39GX0Omv_`=b}nywoP_6^Pv7XB zMMaq4jl-N`LihRK8^5`J2NY+5KfdxNzp&ij=HD{l4LLsMNWeE$zon5jb7 zJ9&Gk@Ca{VgEt4ta%iaT;Ion&e-t`#bmQs%TT3ragpMAw@%+#!herHWOD^dRomdd| z`x{U7-}yo4#KSK8s<%27I`MFC^&)?Dqc@NWoif%NSma;O==IMHRUEP0>znHh^WXIP z2EAdSliWrxoq{e+biMQ-K8Z-p^+tdoHRz21?4=sKk!@abt~U~cN)E!vk|>e#Mv*Hq zh);Am(cm2tI@JvwTi{RfC%wGOzsaxgE6?^8hK_f4dB<(u0sFT@76onL8KR&+z`FO2 z#=j)~J?3oou3xuxjQ5taom%dFYu%#Iq=US-ok2{|izECgcgs#SorW`%2g{33FAs}} z)Oq-mZv_3j`5`;i$$Xk8g`pEkjO}eAKThJWO8)X?#e4nSEJFTUei+T(pYS(_PCnG1 zx9SJop<@s9?j7R4>8D5#nn>dp;?@)LPa5zJ-ChA<9OL@;dP%>b-LGiexWh}sER5UA z=_}gc&D|h;$8zTig;pGVmVdI&;+3JoF^%W@f4m}8cxdBn|Lw~|g$10#%R+^RHDU(+ zcfHkvp~Ay4gLD1&ya7C88XGV}fsBt?{&M44yVGU!{Ruysw|C=SKke_`_>8}EV`x%= zH{9R4bLYl^`c0cQUH+BjOXr_-apSUz#yO3R%luvbyg$tI(;NMH7x81SKXLC>d#}QD zH3GeH<6dAl7S%Pv{QIN*M!%6=zeoCi!f1Z@G}WPy0e144yH_Z5tdt5ObdsSozoiDh zf<#^l26Z!qC-Ts)}SM9zEkA5Sn z+_^V&%;=pT*ZbS{`V}$>rd!9GW=zWlu)1}O)vXidc`tin`r~sm%=YSM6^;Hqr_HZO zZfo=lH(q>}ci&oU`82HKpt~#aZ=C4uMEQLWwf9wbGb(ubfT#X%l=HomzZuqKnt%Rp zHu}%|W3Pkmb@@+0_qJgR>4okcGw2sS32*2S@Ay5`!bKarQ#OQ-J~Xt%HX>JsP8`!1 z2~`~07!Fma;+;svTNJ9G&f#P1a&OgKFCT_r)u5M;CEn=uZGh$2V=M>Z^js*~o5pa! z1f(0h5e>$AY&F&cNLml@B+;Rfv=hk&?_f)ZckSfQ(~al)>8JhlTO0jt$?7Fk3FvH} z=&b6+&*u5-HVqe_^_Jc<;kLeREyIF7E-(yV+q| z{0*bMAG*d~?OeMkH1%NbL6`RGk^I#EjYj+v=F03ZSh8dMbZFY){&i7kMd(=WFVJM{ zFXN!bUTnKJZZ7Q8A&}E~m420%3QcmMDOy^JMf?MYf+BTmirr_ zQunUKKIr4mZ$ft%5Fi-v-lb=|l(q!w^*n(dF)Z+1y}v=*wo}^(^y1$?)}jm*ti#w_oUQo|^FTQ{Jj68~mxue*#A!?ZQGdczshE z{R#fj{?489KaK21{DnE-$CKxTCXNZ6KW2Sp=n8kVSHHnKsZD-w*fnR~^6JZPy6GzH z4jV7t<{#}XLv^z@hpux+`#+nvlm9@1$|r8TWcm8}p-V%DnLVU&*}Ri6A(db>8;KZ< zi)EK<$EJt>;A*G5^puVMn2kICxb30P2}e{Xy}z$rT&Lljj*p9yfG=SYp#@RSm#gS7`z+ZH~C3d!~6=Jb|8e2tXNuk%BlWTf4)CD z>FrvZ^0v8)ycgGQz~_cd%PMvwUQ5qg=Do1C!Mo30MDEb3bYVjN=N&iEhQR?FWH{^P zBRKbtM%Y>mCt&$bf8yQV82Bcqj$Q_G@oYTVz&xLEjCV1Ah0YzlW#i7BUc0}@dvNV$ zZ>PIxZ)o=D&~c+L#!A}a@BS6G_xY{ML(@htyDqe1>@#3;^BVH{D*gApVJUx_HvnJM z|1AdiR%px`sr0yWnzR7-ch7dVj{i5#mc+^4YFHirpRlb@ zT?`3N$BrSzM_*Hy(-rS&A1}X< z9CT9M$!JTGnNXx%qV)~Y>e`yJqADj5i;^K0ZH^;x;*`e|o$XDD_7)VR5(CJ>^&rE> z1ZzE56X30itqM{*PI)@jHapsiyPV{y=$nzoNvkMcfW!Evn;*O@y zo_b`~IiZpkwexv(sd%qb-jl|RceYSJdRm(jtxh>~MUs_HFS=?JBH0&BL%y*D(|90F zq+6g1y%=bBb62dX&uMBsue_&~o$ZXv?>?EGZoH|wg`Fsgr$Jc96M$@IG#AUMPj#Z< z?ty4azfK^!lSq}tI@>!^4lQyE2qGP*K0;B-X0Vm<9CYP(fodDYUQ%JP!xn&Rq`Qe^a_(0m*LL2}7B zRIW9iT!kZ|j#$!J)zp~^#}g&-RXtttrq)tO3VKZ~H7bpDm5g(3Mi)cViXx@a`o@~l z=+e^Ky7KBO2i@q1$5%#?BW;PMpjnV4&YaBhi`JD#sQS^O%1S4dJy5aMBBuq5G`IJ~ zMfFZH+8a+m;LY8rJBIm9C!KO=FBd?2FO%yP5_tL!FQS^v+lZ3>~X2p6sLn%56SeTfMlbvc9gK3SN%9J(U8-G_jsOC)v~& zLv_g%(%|GOuZh-%i)T%pIbBvQjw@i&f{D{Lkux(`LAkBfEm>GsUkeC7LmC)|5wTON;7DYsD56FVy1+Nr=lC73y=k(_JapJ4~@r*eFF3 zP3Ax;r?|SNtjxh;#4^JqB%w7eF&sLS_dr%nUDAPMQBSK`;V=)2Yl>=1qluQ3P zDo=L6KvKJ8+4U#W%}zrdW*dvKyJ?^~7VhlnOm@`9;)(Wp9&l3ma0tUCjbqJZv{Wak ze0q(;g*q!dN_T7V0p?18m1NB>=JIgKlA2spaan0`1r~$T0YhGg(TaUeCus>_UrH7xVe_!=Wy`}j zxm#ik(YTRKG7W2Owo*B>lTFj(hu9=mJsl?$>H>RsQ-WP*;L+w#+&t?-rb!P7f zCam<#CFpvxBc0;nH%B=DA@g9uU{`5fz95-MX?1-{14&F%tJ9q3xh(~kY)(g8 zDV`kaX;?(WRF&2*tFEn}PA*zb*HQ(Htsl){!J6~6Wu2*x66_Ym@!kQBIN8}O`)w2^uQlEs>|E@7 zrzjt{9&Q}!uJA|=`&g`>)&|l9TM9Bvu@8D?jHyi}jFRqmkR_#9`-{t~N@0;^74!!8u@;QdYOu6wx&)VRaT|Dv8ST;j@UjbR9aP19!4{nqgy_6IM|fgiW6-Y z)uq1_ZI8jCQ_J4Ya%XMNzrwiLuM7`GHlgwno%{B z)>w8fuWs0YWQS~0X`H3cDyHkp_C89- z2fISDFBQcdfB~nNJ4<<0B)YJ&8fMIC>XsI`b2l0WEZ#-?iRFd`3V%@? zb8*$qOLzCuQ;5Opal4E5C!>Al+#T^qoZb(n4z4ic8AuOzWMuPcj;B&sv*5~!QN$yy zqbC4+6is7)iM7IQ!=?ofvA+Wzqr(dT+*$?(Xf%7%&GgUcy>?>tPzwKX<<4?o{F`G~ zGl5$z5-yij$ej>fghPZoJuwG!7)^F`wqdHH>rM8K&VN}tA z-gd`ZlVW|*2;L%O>;mQeRHS_iW!n`d@YE2*unfsft>9}(U!XC0oGtR`7XF?#5n z`&e%;`a=`J0cZJZ>&nW*^=j|}w=2n|AeH12mz37jm(dpD`Um4N%s7LF+zR3B)f1JY zTB29zz^bN|u`~>E?0gQbxCxPf@o&MgznCPJs!k`$Yx-tz+l7EY2J;k)iEo<3B3spp zphdRlHpEMe-_l&XRJj3siXn$^#8bw;kg++{ZS;1mAkTr+;T?B%uH0uwtcFYNELvPs zTD6p>0H#QmwA0kZz;0lvxl;k0F_2NR&|-iFrD4TE#zV| zu6qI-feHJp4Wqm>2?b}IYgH2%ZJ7j^-zK|=>4GHMpl4J##uD7TgQr&97=h*8n0+(}0wN`?o;3+XdtLf&E%FqXG=8sELCXFx1cke`5T*?MQP62V8T zhud6nCE~RxqKKl!b;jvx>2soe2*0~xfe*|vp!qI|8IW>e5~9EF}lu-N;-RIB(s+VTb$NxLP0FLH5s+l2wGFo9&AM` zv4AB42}4D(g))MK9&|$2d&QBlvBsC=iPSlq#F0Ect&twonYZ~4lx5gAl&w$;Ct+S`E*77V8vOjb0ipniQNP$VFzzd9)S0l1P#LwQq zF_A45bJ&%H`_Rtd2Y-VX_X+LmXO=H%HgDWLjpNcL(r>)d#$<=2-LNj5^O3ECX5a=K zd|0UD!dO$vhy?LI^)JXiVE2Q?lRIwv=v`HH%`B%q-Ui`fV@aADtMC#{suNa;;=_KJ zlz|}fXG#y**}78BB{C07Fq;w~w!^oEgWVkC%}=BT#G{HaI*_=r4l)p@lb00PF?c=* z@oBrbHrYFdalBp&N4PHrH>R^kcRQGiKq*#(zM*Dm(Neh2xMd6PE|X|OViMAUODb7J zRbELWA}*+D>O?jT2Aq2bx?NdX<;41tEfXsOS4~1qI186X%K#b_~y|lay*>*XsU@(i}CTYIZ|23ffvx(3c+B0>@CK-hL5-`*ksbUOPcYnP27=2k`C?~19K=JRL@#> zlDCERq7b=cvuk16w0+>|`@pB{1Is34@z30+e3qH1Rfr;U8d_FfUshfPGYEahw!(y> zaWbOF37M7E1#hLx>FwxL0UaVKii}c_Ms<^)p0_=BPd3`-}k{Q5Qt9Xvao?)!mkXFYM zaUsqa6_Z?sqt}9DHXL;-53)_h${>ZuNOOsqa4g77>M1)f^-GYTEMB-w;tu1vz;DTQ z2%3U0*T_FtDhsQtE3xTNkc^p-Z5NZ)ol8|x4v!R$E)tNE)`r%nv6#A{=bYCTh_Dl( zIXpJ#cZ6P`rF*rd^-F4TI?>VgQ=8b9=(slA%&@~V1{zHBLYaYZ=Q7KmMQz}R=_!0#v6IfdCm zW|U!YI?Yj9nre#1)#r~Vf(-^C9*q`El;{rJU*pyx%I)v%L{La`1P_hZ(AgbKTp(Q9 z4NVGLt~OHOl65JkcLZDAgU#{Q0a4z4Oi|5}y0Vg@`l5YIUx41n0tVo0uSU%I1g z=KzjHa4v+ffzr#k@I|ey%NVJ}TFog$eO!y2sGeYo3onMV--Mr)$c1Ti&jyjFfK972C&0V`K z?IV=M=F#fFI`QbGC(cv0AlNXnhf^!xk-%QWVVNzcJjM+MvNoywB~{3B6_*u3azNtT zmigJ7^&g~H)R1!4sU|s732$s)L_G{LOgoN?XhV$_i}}G}crI;D)G9*bqJ>IDnGxe> zu={ZVVBa$*iWn5X+~SzLHglvriR(;aWp`l_$<7-efY%{Mv9zyxDwU)sNz?gB0gIvBi$|mrL{}Ti%X;7C6$#ya?~g| z3^k@ij;&Qd&78~W4ieos=4$Oi7@qa*unZW{cDAX_qh}2#(5Pp2yJv)HLV2jM>=fqC zg=`*OSbsUHXp+k4dNgxkA(tRHl+yf2U{V(0=)(jACZx(SMWE%ODB}NA4SE@anwc3x zstJq1Y}(f9Gbh*a9^H9r%}FA*2kEo9*Fdo|;LubEv>iKTdyiQEUS@$TZ^Am{M2b=l zu&jUvC$_cqFfj-cb5?FWvVq2u0iT-+Gya_(0EwYy_M;M~Dbd=};?nY^I8do7ug5_d z0yJpcLUYXl{q5~$I)ZLf+G&N)2q&NC5s1TZYk``Q#-0j$Yk#*a6X4RJg70BANM-ixJMxD2o7**M_W7lu_T%BlocoYrrAiMNuE4p zkG(pwDQGl;fV0$mV=sCNJsB(%oJYtGZ}v$le>SY_>{-~QA{7eUEAASw(sGi;k;w+cXo$xKoR+k?XV6N= z74zei!@Yo~oI6q;^@z`d$OGpx(9oRYSEvP(b8`4b!Rqz_iHpxIc^9YL2(rvwP0h3` zIMtwUl1RdT#j1++rsP|JSyx8)a}%qH^KLF7bR(I^#I1w{m>Fh8Iv|=P?%YU$m2gSo zs~j$>W-=XvS5OIY8fy!NT0(T8*5T@(zu0s#EaBdvV;{UY%etiHG9s z1+$^O&TZ{*1SaAPZ@v1uJx5|pjtD?AY15;j!t3a6}QIo}$ zS&l<1a(YlzUgHEur$~x7u{212!Yr0#^+q>#bE(FNH6vxQ%)xm8Pgaq%!f72=nK60% zjWHTc#||MUVTtKH%7j+IfrZaPC%6sn7AnP@A$=$rH5jV%n50hWr3h$R5_jpSV?0z@ zg&ULR0wIt3%tA#4+-|uDVmN3;*1c7>g*N2mk{y_7hHL3&c;k{@<9#TG+Wiu^S;lNS z69JODcw@xZL!fyQ-NRB;b1}MO>lajYy2PsTcQ|P^CWFl*mB4Rf*HssO2*gYJH=oW=|uuhrzDPss)M$usVgW}KBvd}=N@I~P1neXCSl@`XW4E0@T)4LSXW z5JYdIyoe;8M$WhKH4KzX%}a3KDRY9xBu8pB?;?p!%BgcYjvgV!zaNvRz2R$!Z-%PjRnCx_enUH@M_h`(L4?F=i=Dp4smf&1DZzsf;w>6 z*A+E46cFZUnh|j__EK07WF48|3bq$?!E{t^j^e@xZg-j`iMt4$opK!Cn(po%K=rGb z{ebUqzI~hky)vf>wCp%Q#@!2?E$28T@JQrLM=Dd3l_R;@YTOjXJ#kq(IVC)-g>z3Y z3Q5Oy3F_d}o4A8LfiK4pOB_CKXaE0R6JidZlZDZ89^AzWxiz&GW{$m)OGRc49up$h z7+o~YiZviGY3JchGPw%p8G0)bPA`%Xj=BAg<2Z>gHFcrH6jv`0YsgNUT~OE5fuf!D)(P|t$*)R=bQqs z-%Njy{hxLAUi-E7+H0@9_bHi7ZOaXQlM?3Au^B`#(h7A;Vr3~i8ve*ON(SvO){yu} z!5P+g!F?Tf=?m_R2*W2#Yv!@@8lA#={X5Zg==wS`5vODmcZtqbP_471v- zZSKd63bw$2`Z`6?xDkv)vN%8m$rpbB9H86-EAD7nf{E`1-X}Q-C6j_3pF)nZHuA1w z+t)!^vnH{Y?PIqlAFW*}>tZR*nvFEo1|)`U%pIE^oArH&6+Ak!A%5Es9kImX5XPEJnL%}b|> z$BjdH=-kntsk+Z(Y&7h%e9M^e@aGD+%zO0iRH?3hPJ z1Qy*Pb_E7I({QtSGb>cb(ouvc1N+R>d6 zly$Qn9_NCh-_Eni(O0#MT3Emy$AEPE`p~J^CH1a^Ai?TlnT>XoaRkjd`_L-zpH#&g z?{>+s@+r9c4dIxh@oDZ5cb7jVE=zScz>D`d~2^34XygE^*~U=%(<8;xKs`-I?qdCP&cf_f#J@RM=LKK z#`!+CLPKBr?RFg&q9AR#qDsTL6z!VN%Kl3S2cR}oTbQfQRvMyE&@I77u>@yEBG|=c z`6`cdLWuATs*W+OVPn@OPW#pjo;Z^_V|Hv}+jgvnL^V5&2;J-krBe^i)u$ze?`6Df zOGrqkvkV}SGKbWmE1bFH8v6FgT%%$+4vkR<2$m{$Xqiq64v|I0IEI=jElpT(M*)INn1217bGG z!3vz0g`dl-brqJ0F*{)pPvfrB^sf-(Mhmj8q(>)8r7iBDwDXlVoFJlfa=Q+v?}xx* zNOnc4wt6b*;8SOtVw4L@8nLJTuUqAtOkjF-0oAk>9&_^P%&mOqsk7S`ne@;YnAmp zs`jgBgRm{&yfRXKxZG+o6rr=_@Q&Qvz#M`j4bUPOq+$c03o+HVh-UAq)kR&+s80*y zdu*FifU$!);@y*37bo*^LClpx&2Lqb^4+dhuIsQGLd$G(2jI-h3kwoWiFk!DKZ-M9 z8pr>|bZ{s5V&~%g^)Ztwr?=2`#U0w^Rv}2)6;~8Q_+i4!L?(2!f!ls@OIj#Q=Wc^p zipXvPM@yj5k9E>QDbT!)d^?5ZyHs3L&yA1~h;-a~%ggO; z9;ZepISV5i9GFTRPK7H2`WwD*o)&ZG&@cquEMKeIR9ma7CG6(_x40Y3JMS$zSx2I5 zeaNv$y~jEfi&li|`FMF2&!C_K0o&4z0yP4fE-ivYbZ}dt1sb{T}wv^MmMfkxfW3#*S>;%7r6% zVBtjddmgq4f(lPNPbhfF=yo=r>mpq7k;xX0Hmp0{vF?c~W^Z_)y>S9=IKPK9SQ5H} zp>EGbQi%gl?3-Fu>W$(j|ue$$}^fA-8~8d3LnnfxXwc6^t)o8Hi5 zvS^42v)P%&*7h(fU;G|eqD;q5yBI&!Oc0f~IGO~Z6mH~G$nowHmV%jn0OfMK8 zEmc}1b<&BrWeS$%v~2#%-oI0pGh%!~1&iy!jRF}z@?BsRe(?;!WS(rgPcOG*F$5R= z(D2eFQbxBs?=A#6jq7wTHX0z3(^I-yha4k6H#ET|=s5XC12m1hr*AC`B@MIL`60M& z;E67^DV)Ag4K8~^nmJ}3xgsDF#&%h-!R&=)f~{Ln;14Of6I>7*x6V^95SFBJeooGI zi1oA-6R22=OR>nB_5M=bfWm4acD>vk{b|)&5UZ(z`|zq8fObL8iAWQ^Js38)%Ooxy zc<`mGWTObKSDeelO*Z(x`iEej;4A?0mW#D!Ss^0zyc-&MY`f~dsPjcRAG$k_=+>SX zOIYeO%3EXy1U9NnDd7$}?!i`E!JVk1RWj!?p_-l7Z};AoxOp3w2*j2X|0DVs%2XRh zyTKnzmqmiC7N9|7wS*Q?F|&<}En;H3&pBYE;&i(>`=H^m%)t>mx8Oq?*o8Vd?SM1K zaCb#pusKyhLT>ix!pmE%P$;XQ#bOq#W{Q&^awP%VX>_}7N85rQw5c6j3WDf-1~JFy zGIzh<*+1sj5WCb`NALcZo#QILC5Z(tT;j4^lZAb0!ma0E`^?CWuXKA*@@`=S$(L(i z@ao{mricf=XM(|2saM@6l+E7?n@+qlZUf9;yA=UiD4#fqMz^Tkr!}qhk(+REq;M4H z>?YySQSIc+Kbf_42g*@!-F8{Ex|ClkSL&rIcGb=`99k6C zliQ?pM@_L_vU?BGWEme=slW`4xk6f&EY`6)YGg#h1e@9H#?ruIboNT@hT>*7CNJn) zHCK1&H+bBcy>k{pn`1t!h}%Z=*A&iD;~?iK?iPm&aL(+3dtHw7E<7LFuFh{X1n&cG zz`F}Tep{jLjugq3DS8+JD$R$+mrt!Y6L+wIgGxBQjq@nTP|o&9^)a4;i5R|0*v7E7wcof`9TMreB=e7*1K<)`kwsu`y7w%4lE`#R5HBjkV|G8?I z;<)nVP7+}>_zuE=mjg=Xf<&Xkc`uf8d7} zoK}H|T6JJwid?V8(%H}W1+fQZuN#iAe9Kn?#E@gpxE^x~CvL7e4ec(Hh|UqED~GDZ zw^SLu44(v&v;J`SROGfYw2dBkHg7PFCP*9k5epec7eV5XD~1*JwZqxH!G0djbZ0?| zZWSNX7CcU73Ih_O(`t)K;f$PEtdhKl$86n|MOk)1>Vua>T}hZY@kyfCr{=Lp8MUUjVUw#v=*8EIkkx_->uq)Ckc?L}F_#1`RhMB9CB5eC1{i!tsd z1Jtf%`oke}+1BT=UMJ-+GFdViS~C02IM);sXC7a2pW1NCB{U|!y(5aswoKtJltm5< z{p4ZLe*2t>HW%8>pTN`uJnqCt|Ej@)?n$?tVbLklZT*NfI^b<-y~{7lT-OqDSBZ== zbxy~r>SU8cTFxidzIx715PhOEr45Oq92XZaj!Y^KY^^}Y z$a#A=uS?fp%LaS>NGfwSd~ePp5GFHz;EU&7Tg1|xrkvUe&4$ESjq8_vaPR~ov>p3D z*nSPug)E!ALK=waES-;G(80~58%7vMB4hN~LmuTKsC>-A?Pom4a}P}2_0^?A zOP8!x{~_+gn<-PBnaW&3G}0a8{QKf)iJj8KsFsg@#r%uX>}ns0&l8J09Nsq3fub74 z+=^4(a*9$nhQv({Q>P*K3f-rfP;R#kEeCPL7_eQd?O2q+PT=Alk~A7Y_;sfijVl8| z?r7-=JQxy1S=`}&RTlaQkYzO-5Ed^BbgcX6gZNsu;2Xq;A)*0m!U_?Qg_mt0XOCN8yaL8dmD8AaN}HisoCo_uF; zprvqDMXvl}gL*r58{OAQq=#*eUnhsn+_!Mt+-DO*i>N_6h%XucL1;xy$--84<={AR zeu9$9@mp%=4PyQ(BE7+k~^HHkI4n8V_0a_%WyoI!=) z1=mM8$beHQ_|_AC=b<(>T&d#|gK{bq%^$KN{o1HV>j?c2{(<}VN|p1 zTwPgJlbD#Th9XYk>K%R;1D`j<$clZl1NUJs#YZz@JCUMp@eKl~I!uZ>$-{(3i#BUx z_}CO|UVoe=TvB&_!zt^3f1nbr=0#tm6->}H(wQZkFR)8@qE|=cjG>Nv#~)4a2DIDW z(FSnMgc&WI!Ha#4r6n;>3#r#h6c7ym)!aTt-#Sf6Z>3H7&`|n4KbW!bG3kV0<_x~? zQE)<(xUxM6hm45vjMGW-AtCoL0c#gVZF%&($h+m;yy&!^nLC$5-8f|-cjln{-2xdO zRY30)ot{z8<+8yQOTkP9a%3DIg@EnYDqlFKU;<++Vl1X~0JX;JUtGX<#9Aj4Hwx5Q zNcHBFp=i!2TO0m)xOP^+J#6KGi}^d{PN2$KCux&nEZi^rK{cC*Mg~%v~w>N}z1E$^MoW zPIg(Gp$?1QS^X{gM?J>q5#3x376RJP?*_Iig=I^N1DB!A#WxWq9!y><%R9t$7kdn= z16xGOd;lGZ?#9%F6rwxbR3!T%u-`zzi~`xfjq6b{Hp9o!(7AFIB;LC2h$DtWz3L8Q zwA}a+O9cBLHJB%EZ6|)QY1}4_HoH%Y;J~?@epn&O3fmU=T#h+pSL?Pr%$@1PF(=%i zln<;rpR!EMu#~Zca#opK%PzRy;T8tmXZnR5v?TxVgFfzWPPCQ~zvJcp4vKy{XYC$) z@Bw~c-2LI#(%s+OXnP0o8|7Ep@CRBiac`h?5N`@JCe?)am;B{7)a4HaBV@9dE*O3f z*!|6kiiDr_qz!~DitsA#;nNZ;*qmqs;h>Q;BA-|kL^R$$7%+q%TXlbPqK$@pu*ML6 z1lRq|jjoD_$?u?O`q}6ZK8;(V;n?3XG9mIb)S92CoCB8Y(I*9iLT1r&O|HGkRgiQ9*1-sQJED|oT z{2*9_EQ(4XpKcEk3GXqIM&uKVk|C;pX8Awl%Rw>m{q#wD_16}Ps1kqLXez3F`jTfh zOn99y>v|SHlqw~vpD_lXwJ;^BeDM{F@N%NchP=TSBPFV5+pDsVk`mR+?N!6VEKy~x z9`JFtcMyLo(5T~lD>K~}Ee@0(A(LfG5)*#SCoB@i6Bbj0>VPFU7{B8tf1<{TH``1w zFWSC8;={NRB_iO}agk+e>HdLcw4WCq!lXAX;e!XhDgLgf&W zC*}ph799>Ju z%ppvKEC*tR3M#tFGXJSBL?O+)Kt|v9H@za5pBmP04brb(E(0YlV541kw+wp6b@+X2f zhYxoc5e4iczBABziSG`yZsL0bEl2#ZK70TH!K;a{?Ut!KZ6 zkVT#s?cTSO4=nVYXbmB`yLf@KBJyXM=R`w2Yf!T&2eU!MOu@~1#x028u7 zqah{*&|0*>SlzrFPVmg3OUY5nw`-?$@b)hSUqOs zNWr=3NUbK;9p@aS@LCH&dc8F;8yut`8EL@FRLUY*W>RvqmzE9xli5}0Yq|g0LKKoP zHn8sB$*QuRh{vjaCRF*G2A>ZkR+VCfgd9;EP8g*3@8p=e-^9xigA^&s*~If^3uU$@ z{zRbl5`QYtI*32_D&>W=z3upqSUPAe!uMD*os#(UL8BrfA^B&|U97>B&!I?2o;p$S z>5qI4MZ$Ov>19tkhc(RM&wZvF2>;4RlIfZ~d}8M4EJ9|ES&oq9K&)g#4jS7#eU9tN zJETe(krNjC8lS4bR4)Y5-N$NfPgsa4e1SF6g}$*0R~lsb5sQ!|$Xed+w`9*-C=y0| z!mBl7w;WPiTTu|T-fNGe@?dNxEPWX>9qPp|g{E)edDwa1!0eA*u( z5{`Ch^D0L^ea@(m2EylBBJwFTK_S_J7h3T*glaI;Uxade%h-}(hM~!7UTUdC9*J4A zxzVE3gx6`}b&Q1~dc-FMS|{mYtM&{ESX`Tt8O7$K9rbip3<35$e7mLDb`LKa1Pn@^8~h=kuTl1Ahc zi;^*&eckeZ(U&9TMgESxddfoaA`}16XzE4g(+i&2FySYCS=Y1pp;W2q@)=|B6AM#b zWWM;7MR++cG8^)5d@)iJ`v!Zp+eaBrO4EDn)t_0IH8@zSpZGZ2JBXhPv`*q*1X>sI zZvrhx{9>SW6GtZm2_`-$(E2<+QR88Hzi-Z5K3E9x@0(}%pg`*-J|xh(i8}%O~u6+y_nA=pV)8M01Buk(zGge-uLn|38&Y*>nf ztSRgjLY72$t=YpT=8$379BbtvPZ6un8toxp)|51MTB99np-h&<=LK4hcqq_PYIu{q z+Zu~Qd`+O)A}_QL(~Vgi^bH}CNi(E(qIX$>y@7cL@t%`415wPxdjqY5cz>X!6f^nX z6ADJiWG`K?kNbp0!bO%JM2nC`QMuvMUxkQ-e`h3($R`#hLs0fB1C0dx)R+w1s+IFLEfnb`{sW__^z!Kzqe4aqpZBDV=~AVn z_X8IDgBGTwmoGkI5nfJuKWXuvvM@t>ziF>n(k$uiwH9Awp-3n6T1(0Ymc1FesE=NXav6Q9?ie7M$#C}1D)u0ZQ0erKR{6Td6aa>O?TS{Lz+ zf!0ZUQ=oMaU;Tzy0TqUSAMIAm$Z#qj*zs%Qa<)$i;*326b|3~uik?ohd)l*mRbcmY z7Q3fY>~>ju|1aO}>62j}wRcNS(;{G*&&u3p^#JK_4YFz=v39H&NXhCvY`l+NK;HRf z2FC+wyTNM$=|RixQD1_5lJ_oajZax9vP}HXf!0a+(KOKM`m-;%^38H}TPDX|Y9(6CV?3-NeTRT8{X*K4Q(l`W)61GIQwd*H~tu^ux(44>JZwSa?)) zP3t*RzUZK=!* z9PzILt&8|Kf!0aYN4`XE|_QcU;X=*)j#+w zLHxQske`d0EXVU{c8_~@jlk~ltKXN-g^1O4fs%SH1Znw&N-9|hQo5Y$ zHBR{V{Z_tPLOD-3S6`oEAs7+9&69=+H+oW@@KH}1W-ZqE+T;nVo-|BY_oTINx4OPR z)cMdpE0={R*9L>tKq^~{)I-bMY%OwIXqnIeie9klA8&ngbhP{FogbQm(;lZSIOp`; z2X-D}c1}phZk+JlnJ45hg&Ivtc7|sCiZR$97!k%s&W%|DeB;%jJc=gXq~Vl>Xe2@^ z6i92jRKrO|Z?@6Sp`Nug*ph`%3b-NdK9MH^I1OX3BA)=hkRpyh~P7ie9?-GSCg+#6^e#McB`%Cuzt zpR@8}svu;t?5TnYU+@WwgljIQ;A|kQSP|5;W`EyBy0mN!_u zFIWhRaL|gu#>_Ah8T-pVRi2RYl9B4~EH*_iV;CQ1d9x|9Ov_ys=baYH$Rd7Mpmh@8 z5NKV*HwIdc_@+SXCVp?A^%Cz6v_9g!%T+RA*6ll#54Ran%sS$a23jxi?Sa-!d}pBL zi0=-xF5-Iwt&{k^KCp^iM3dy|q>U19^Pk78=+r0k3 zV($*A2-!_gI&7wXYo-i6^n@|^x4?+7>r!T4B0SNP@`M{bsr0D9Cp;-n*z{E?5$^D$ zJmEihQi1RvJtWUqYsGNt^Jg^&P34h^V{boT3$ zjP9{f`ei>_(+0`I_OA01O^u3CW-0w3QPw$xG9>UBW3=e^$S7YjxFe9r`vDtfsM}2@ zARqLCk}^pC(il7$7(HqX{xdL2R{uU@_?(5JB#B=Pv`*q^g>sO1?RdT53%Qn%$+D+% zzMUImPJB?HbrK&IXkEnf11(4Via_fo?qBIE&`Z2H(7K721X_-GS)g?hUlwSc#Q8w$ zApS_8rEDP9|5z(8Y#>4=d+CPj@(GKCS9#I~!gpH{)CS@cbI8y=CmWBqdR`lUZtyhY z1#^V(93y4gKxbLHUJJzrBJMMq+CY3-VpI%cLS~Lk2Q9Nu`jicHfibw)!juif7nfOt zm$QNHw0PgM5T?t76@!hLVa+i1fB95-Ldr`fq0f!0lYZ=m%Oe=^Yeh<{)@7&g$ZL;3JSBZ>_~{7j(r5fqsf!0O*^FZq)em>ATh`+i~RfH>GQpsIZR0<=@PSEVe4NAPzLPxyc9wt0H z#7wfoZ^FC37`vxEyAK3*PtRtsdpgDLtH$nO3o&&NUVFLb1W6*i-jni#&2>H&E49r^ zfrKo>iB=_$))-_hGX(WVR+yiLLJ_`qEwd|q#Nc0gQvQI!=K|@^tjKqTq7&Zgi(VqU z&6DzkXS~hl$l5&OD_A-;RhyDV5C6W_3Ufv%6yXC_D0KggvwV0gl=KT$oQFfPSe&zc zvGRmto>U^->PdORZ~wlp58-z_DNlHsi8*W%!qFt3_d6mV*mN0Y z4}19op~(o@pD^)~S%Q?zFvAf1y6OFISct=dgt0MoqaRb0W>d4-1W zwh&{A@EYIJDYN!l7W+U*MMxcm88_W{CX1mEy_UzhKCe6>l_KWDG^5mf_%qYRN3Bxk zS>CAA?A@VeUZOMEitHYc*j!YU8C^bPj6Pr?8tn@PzZXb9Gx*Cuy3R)6Zm(iemhRfs zT7eH(2;MB@p?)amk282mAcaO%wBPbL)&{xEj>M+~S|@QX&{D=Pd39MF*l>hQmTklF z?SdF{;?o1IllY84>mq(bpyi0q476_I@+Pe~D%wlDIncU^M*}TKyd}`Oh{pr1lXyDN zI*9KNw3PA7`k!m%MZ*y?*-JNEpHEmM-0evl2=A~WsPW4u=8$3hzQuTK^}IG7XFLWh z#JD3Y7%9{EU12Qp7K-spyv}H9{PJnkXS$w{nIqE)%k2J8jwtbWg)!J*VaoXBi*bwa za>nl$EZ!kL&y6=3WMgKSv5Y<6r^*vjUNTbs!t$c%W!Myh#*j^sW&G~5IG?pphBxs8 zf!0am`07(E5nSYLWYcZF%23K8zbtj9+5>E~@*Jp-Q|p z(7K7I0xd^e3$!lcs{*Z)ct@ah5P!sIu7FyE@bCPJ;^QoY<|X`)Clv?-tKA3Q5tu0I zv-nGVx;)|UjcJq&$#|>9UL8^q?%%>xshN)jy46R?6VA2jW=vr}vDiNksR-ZgOPI=w zg&*)y@`NGPM#7syEW-KYz8>2r74EbU%}rRCVyq4Ctt$LO3lWQu0s-|_w~De;GBn<` zmh-!O3G#$Y1q11pR9F7o;-4_#%k&Y z-TF@%gHL-#d3_iD{qTt5yDUU25kBHc1;SW;_owRnfW?2vr^^#ksxw5FtT~1r!-Svnq_vS{70R*u=6A3hu^zlR)q`)e z@~~W4&B1qJqz#YRpu5r!zC0mSG-l`YNJ}XR^5y`C;O{Y>9}T<--{1%KhGg6E)th{j zJmCsY+CZ51BwL6DcE7e))Q5AUbM_D)>UCtEkh2toI9=UBU~4^W3_fk4OvJ>Wn$|cn z&k^qnv<~851X^!9{{P|&x|Wd1vQ5anmf%63ut<1`<%f|>_;*H96OvENA!EpY-Ppe9 z*>A`jkGFgF8wfvPBn*=D@x<>Ki>E9U6O#CcMpF}#PcQgPhY9cXnXXTlKBZTlF$O=e zFm<|}FMeeaUhZ@|+i{66MxOAmJjs@1p^F#VtM~aRso`{;y<(-Zj6t-Q`>lGUAJwn5yIyFpwL5W}I;gfw;d_r1oSpTy!9nfM8;B){Y*t^y}T(}!!w@{$kB#}6BkPcr?5R&RdeiG28x zrM{yy#kCeD+adWGsU-i+^Of=zt9LuT{BqMbEgyciY2av0&vyBxJ+oeHXMU?GnLodf zvg4?A9cJ^_yqxe3xQv1NXEa;;$LrJ@(TpX_`FKaYva6q{=*ZK zG4=UJCuw;7$r|zsFfS-4Q1p}r0OK4|p)7XGV+k6HLl3!k?zO8ga1Rl=q-G~^8?-c3qGk9Z-f z^R(9Zyz#{QN4)NoyzA7C-$DOP{2sUZ+_yk;N|tBC83b~vUHLKHzZxI5 zFWW2G9%r7Z6yC7;nLYF72k#cGJu8{=rPFn`iO*XcU$*zj8z9MCu02~R=k#dEbGR$^6@;%USwl z{M(KG&gJ@srwEhhu6QIWnf}X`{yV?dn*IgjmpoF{F8$Yj$Mnxy{(BSY4_N+Jy;XB; zSAM2nV(FJ#_{YB^KbC{_VL8|y$@(+?KFjar;{W~%<-j95uU)CnJW9gDN<7Yz%&%R# zON>u4{^yMTRa;zgn=ZLq$&JKhdTv#IZMD8(dhSJXBl1%llPUF?=|BHFreC*8`Q$A9 zSr)$0!e!==NtS1CoAQv~-NyGX{+s!?D`&F)EO)Zi+NHlI(SGgHzrCa!2R3QA)WSgv zr!Bn0!YJ`KVDx0VO-4^dk8U*2Gu@guZ`Bx2TbPW${z|2cS~zJT)BU#b=@w1K@0(Q0 z;FN~+9X?x4#?S@g4m%%n8)E|!TX^az9Yt2f}Saqgn^9+95`)vHCrF+6J8;wUjqq9|{ z)DXX&~=bto%{r;azL44&1qJevPYGMRg*T5G4^tfD<<7WK+QIGtdtNff^kN%Wg z89zZZRsmffC#qX&#O2NSsj6*!a=(^svCuM}j9=6;s&Pto#qaoh0@BH1dakACZ@Mr% zJ;B!&{+=qA+z!V7O#dnKNHCnX1WZR?6rX#L_UA9YSY!HbuJkS3Z~Pda=~;k2fLFxw zf5AKh47-oim@FgH+X6AV1h2)p!TfW!l4STEVIKRl;&{qsKrhD1f45oe40{sgXFd$Y z(f*rQ`o|Y2YlfTj(YG>2H|^bC7n_|jr>Wpc>cFMoD*_%%fl{+_9oh& z^=J66h!#)Z_ejnq?0ZDh_p)I6=<{d#e*-<9ewVpAc0HyE%wVw8QIzvY!IKDtm(S+$ zoO|&DOF!;kIC3iee}XLe_v&l^FViO-RT5YJ82%)N-3$At<8cK^zD&os@_S}Un!M|? z^mop0ecSpJMMtzr|8L*bnE%X1b`)xk(jdMmvn;(XmoKg`d=t@QbR zer=_{BI3N+NJPiuU7g|5$B~=dS}G>rj-uqGJV`iKPKWl z(Mo@1ME&1NKQ^LXZ>7HqdO8;;IXo{qE}|ZeznmAnI--7Ur9&D`Z?@7ClefK`7n%D% z9vOHZKl+=ZC$*?Xm=~G5KNbJv1cmWWX+zJY=rT^`M(KW+@qSSB;}??&q=a*#bo-xS zd~yl-d5h8W3HlnN-<+V2IsT!YIgYnEdRiWCH9q?jeC~1a({lAC(6j3Gb>q|fHURuB z7lnhrXYs$Z&#vw6F*?=s%;6}Q(D&Y;^d4z2{IzR0)&HGQ*H<+j|2+?Uvf8uX(SQ76 zQa&$t^jAmEK9(a37mgS`DYw(cCpj)=K|coNKX8e%xyaTpH#&L?YxnS{pdTG|MVr2n zbI)_}EPs33#Q!HpKRnvMO5}v_Z$BMGs^2DsE_=8-00D}^_lc9 zgT6pXE&u)q^ep~|q5Y)%`~O&@=PlJqpyygR=)+lU=$AM?=>$V<=#4h?_qUYD3=ydRD*G+Qh%U4gF6+ zKN|DPJ{!Mpu(rA#^sM^+eH*%*sE~HsXYM&C57ENC&@W%T_cN~fOrywUes|B}zcj_!-$!GBo%+%2tq=AlEK{=7ixsJ{C< z)9ASs`pn-&J{REE$lGNJc{mIcfzWd{?ryen9tXPQyZ3G-Tw(nsKh&5d4;NVc{g-R}KI5|* z^ejCyY4HzOy%x{a1lNO})y^Mk!$*FVQ_9(C{YZIuv<;uq!$8mCe-h}dqZP#k7q_7gwV`hZJ!{;(3-qk<^}aTI z{=~(PmqhU$E(~jq%m>>G5*4SZQFR6_xAhjlUeK)aqm5 z-NN|06}3hsypjSh8|q)Vw6t{9610UjjNwaHtX|x|qO^M1vcl40so1}G#Zrk;Tsh!l zk2Y#0lw)+V5|x%*v8sRN;6PNZY%gL-GB$x>rmsZnW8Y(tkBw^cJ!j^Xx|GuQ}^W~!65 zk*zB$jYfH_lCRfBfF`PA*?AW0vnW-y;wssQCd-ZHs@iB};bP%&nQYPLSCml25-J<5 zE0m_n6ICY%jq#z%NM&MMWe`0*QJ$2}@DXA?>^l+p_m7O!W~z|T{?XCP%gvGT%INBu z=JZUnShH7=tKyDE$<6?jHrHwrZ)9s$=c5scVzO6K5gJ1wvXb0pt6TKlV*xzW>MkdN=etmgqrMYaPj+zfF z9xhK#;G96MzGkK}Q*rGVRd!4?18ZdXw71IGxUI~bfN>S&Cq;ntA6yw<1{e{v}OZ~UAWebMKD`Y z8(UhhqgABQ8j(cI;{=T46Jt;;Z>{Kv0NuAIq`~mw@+2y#g>&tKfmFxvURkc9k!4sJ zL90gX-%>Fz{!m-ZN^4JZfM*I@Mg!KWi_4=$2w&F754zpIZHTp8@&(?)V50VX|f^RO(O;6K;@T%=z(PIwh9M zYaAaZ#E(X6GZ@fLNq{q6#1i_!MxhXejyY;H7AMX?r&G_oJmn|Du^VNr925SWJj85=XX{ zM#i_6wv;Dg6Wh63R5LrMCR(&li}-|bBI>6)8*h-7R0YhSq3VNGOt{F(mkjbeSZyvm z--}4l8D0~~M7+HmpDM#NEMgpQuxh1_ff7wsrbecwTeX*%r(mWl*Np><(N-%bCPik&x@h=8ySP@fsTStjqKR## zEtBOjHMh)uQqAQ|omf*hBAh`i?hrw6gKnf=D{n2qKAI8Z&KsXoV)&J$sajhEDn5HU zPpi{PbEr~=y4gH2InkU&ix-_;ySxVVQmSCeE`v5yX+qtY9pMTD6|k;=5n^hnb#$pP zv@r%_wTut+7@4CZ#vnGQPyBt@>*z$iHG=6G=HnJEs&bdK=!{k+ Ty`oYbYl@K(E2>P~THF5zU?3Z1 diff --git a/scripts/_Inline/lib/auto/FOO_4be1/.packlist b/scripts/_Inline/lib/auto/FOO_4be1/.packlist deleted file mode 100644 index 812b0484..00000000 --- a/scripts/_Inline/lib/auto/FOO_4be1/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so diff --git a/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl b/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl deleted file mode 100644 index 4a2ffa45..00000000 --- a/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 4be153c3762c318cb2e16551dcccbf20 -name : FOO_4be1 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:54:16 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so b/scripts/_Inline/lib/auto/FOO_4be1/FOO_4be1.so deleted file mode 100755 index eba40915a44de24f6f8ccdd17d6ce8eccb86e56d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141717 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%0A$3{S(&Rls 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 diff --git a/scripts/_Inline/lib/auto/FOO_55bb/.packlist b/scripts/_Inline/lib/auto/FOO_55bb/.packlist deleted file mode 100644 index f920359f..00000000 --- a/scripts/_Inline/lib/auto/FOO_55bb/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so diff --git a/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl b/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl deleted file mode 100644 index 7ea91b99..00000000 --- a/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 55bb3a0cde0a2b29c60454f28f776d29 -name : FOO_55bb -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:53:40 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so b/scripts/_Inline/lib/auto/FOO_55bb/FOO_55bb.so deleted file mode 100755 index e0923876a6f3b36c49ec71ed3001e1fad0348088..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42766 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 diff --git a/scripts/_Inline/lib/auto/FOO_63be/.packlist b/scripts/_Inline/lib/auto/FOO_63be/.packlist deleted file mode 100644 index 08d39772..00000000 --- a/scripts/_Inline/lib/auto/FOO_63be/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so diff --git a/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl b/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl deleted file mode 100644 index 2806fa92..00000000 --- a/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 63be203edb990a69d57a0f275894a1ed -name : FOO_63be -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:51:26 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so b/scripts/_Inline/lib/auto/FOO_63be/FOO_63be.so deleted file mode 100755 index 53d199d815a91ff1930ca4242f0fd32c1d416c77..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 190528 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 evs=8Va$VM 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 Mj)7E*@e42iKV|-UiU0rr diff --git a/scripts/_Inline/lib/auto/FOO_675c/.packlist b/scripts/_Inline/lib/auto/FOO_675c/.packlist deleted file mode 100644 index e2f0689b..00000000 --- a/scripts/_Inline/lib/auto/FOO_675c/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so diff --git a/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl b/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl deleted file mode 100644 index 0cd15ba4..00000000 --- a/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 675c536e5e74b1157793e50b30c7dbc7 -name : FOO_675c -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 15:05:39 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so b/scripts/_Inline/lib/auto/FOO_675c/FOO_675c.so deleted file mode 100755 index 67d60fc2daa1d049c4522bf7b8c58d419e4cb676..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49278 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

q7RPEAK z9ZM0jIHOxNIG7^tr6TOsQ#g?#-W>(-Ylf34!iEzmyv=ZOxR_r8a4+*EhP`*r8!qmqeD@hn4i~Q@wJH40Lua$`f#KpFf_ME_apSNM z+sW9wmnb!RPKcMGQHA$1JNE>CBZMEZqVNYA{H+jPYVZAjRjfNA#GgpjQzZ%LtlY=3=|s@;_;%CiB!K|27=slqb_;F}t}JyraSQh19Ap(nU6RUD_Pysf9d zKUKU>p}hB&8tOo*c$`GO|DFO5rV2?_`A|>cP^t)03Lh~Vc!EDq6@MWoKh{%tGFAM7 zct6p#PXQ78eyVGqPL*eHMwb2La&|tPDo4_;hS{|i;pbB24iH#4T*U{dR;q*qtim*v zZ+e2yr^@pQr>k@n8j&jZlF|%Yi}hHl{1;i2Y2d+BSvLW&H1LU3`6R78OT~5QTdMp` zD&TBe%W@!1?tsP@<`{Tun*1l3ns4A;X|jx>FEH?)G2u!-Pi}_`x*!9l}Kheke`uB0So_52win!eb2l<21R5 zhB?;2kEF?MRG@%?|0hlUgPJ>81t7R4%!e+1s;Pf8P1cY<U+zrzwZu zh95`LWhcUXVUNq7blFXLMGbr`U5+PzV}_o=bh(21yumh35bde2{RTdnE}x`1ZZ!P| zGUPUnf2HZaHADWK`g@gucV)<2I)*PBcu$7>F6sM1IC^YX2?s%0p4Wf^>~IHO?h5#zhfElCED{X_D^AVp4EeAM z8U`N7l=ow;Rd}0$w`R&(*6+1-=-ZVk-=@8M)68d2ro4&mZ#VGmnesNu|67KheVK9r z`Fn@W%*hknpDD}8uRBfsflSG*(89aSd=6&HR?6>tX1<3q<@*dScf0(^ly6c#`whR2 zWXfXB_a0-9&u7Zn#CNZOU&xe_^!&iqzWl{Za2xP_hTfx@(x!g=(2Vz&Ou2^r57@&l zB)!Kn{{CsJNL4)9;>fT|zJ zl3!;0e%ZjAv$AR%x~#hziIB?FxAYX-hCOG?I{;|AW9CI3Qy`nrL4XUWleSW1Y(_wm*;~r_dgY9i7-5%#mLwJwb=tHJD$HY$U(N z8~AXJ{5#6w_mrIp%48M+ne)9KR0}ldbeWig<SNZ|qlpUjb?sILnRJdi7|V7#a@ z@YY;8m;DzRcvr5xkM>b*;61rAoBF!g!25C~>=dgU1Mkn3wWPnszz1^W&uA~T20oZ8 zgVeVr20oN4Pg0-GH}K(H*-d>|YTzTe@>%+q3k-ZTS6YOZ8TeSPe2?*Bxq%0BD}P6NE;R7TT=@^eD-1l4C%J)FxYEE|^W=-1&ng4&%9B3Y+iC;v$&(YPUl$p8 zU!Gh_dM-Bb{yg~+^{L*#2lC{Hltw!smG-dTl}~|ug7x>f@+pvwtiRX5M+#(s{`?09 zK8p5)?|06xBma&S$WHeEp_$)cfm}mBKEXw~8 zBd^Uq`8@UKpqc+xpX~4e{)w|((Z98M{ek#^doG@lMBknv0~*K-xc3e<6HNC!?C@Wo`Y7pZ#RmU~^bp*Y z=zvcik--p8Vf+RjZ$xGp0tbch9{kM+$#j|rwNF4hMr3JJesLej8wL342Uz(x^zzN| zRB9&6H;|_I<{HqJLGZvg&%-R;2|98%8=v7}l7-WD`BlivcczDH5Qsz`fQ#^*WoonK z{qO+3`3B6FzX4l)XM4Eah$CG2Aq>q|?b)jO2CSl5bk4sq^>NUYzSoO~%|?#m<09e{ z@O@;_I>mQO%*q5b+H<}_C_?agBgbgsvc)tY7&(>+6OZzy!+(to=xODNa}kY3j?;AK ziwqB-Vy#zx(FT+wgZjWSV2!G;gJ^fARs;Fy{_Z|2;J?ql8G!sfjM0C;T5*7l@&TwE zz(tBOA-$jsAmb}f(=Njl;-KFuIx`E?yD9aX7%1~@kXYhBV80h1^+!WT{n5}-e>8Md z7xc>@={;jDN6h6It3XqISUx|A`%132r3$O$UAC+n77IQKCQF4yr z8qS?D;;1YQ`Ni$v{itlS@op8p3m2NdJ2k}NE72iP)Nq$Od{JZa@I_7T@IQo@i<%8r z#Fk-z!WsfozQh5)mU;k#WPWVnfg1l&+mE=fS^d&bro1$iDK8CWiVGU1{K;jC{3{gN z|7ZJgW&R~r(L3bPZK>mdCVeh6rfqcQ`?yy;8ZDD2F3;D%5y58joq%b;5Yh9(dA)Ao)N;TpSVD9KF?Um}p zFG1dDkNu$lQlPw)#J@$CkJZ{d6cpKOM@@ zPlqzp1r0<08)xVk1XjQ0d`-Eo68RJG(4XntsR*i&hv94dS&n!u~NVoUrH zI7en{NQn6$Xk^X-^#s2x4TOh617^1yKIWs%43|jdi|H6;vUfg;ITpJG_AVMPPKRTQ|AW%8B?jJa%YB5;H}C;l{)XbfGe;05);PAD&$%r#ds>HV zSphQ{TW7zj@IPf+!3s|A;q+UfApWtBktN~)$NY)rjwM<-gU2;NJw)}Qm8A%( zPKr1PEb1vb&MWN?sAVbjLzTYomgZUBv5;G!$%5LBJPsml@9X#*2y>B}BG|BKGEfAr zv4dfW>kvdbx zqjpf}qEV!SkA?mLuCAzvdIGz#@`OLiq$c-OOx+(7%{m1Dg~8@H<7*u*XuDW#5Z9a!S&kq z=7~lu)Pw7_?addJunQNe6#t80;kH~PehDWNTz{<^vqszp=i=7YiQlO@J?1L02~H%q z{sfH63D%1rmLyuP70VI$+kcZu5pTDIzT%taX)LeoWVhQ5ILw-O4;D?re~U`ji~mI*bgTVa_@m;F zAOrtyUH(%hHhb(fAfxyd1SbEt6iFcQr|^Umm%;-H|2~^ewD>u;{kD4ct+)`J^nb^u zb`?L(e&1DxTEz!>f0t^HG3b;h-i<%P|9zXQ@8a7?^L~BbhzkEbiVn2pK0?ur9QK$x z&nr-;Vmi&?A_h&kdzB)-3?M~xgS<(?pXU6G!@k00bh^I33S#wVs6Ak`<5RZj8DOwC zSipx^1T(v!uM!hujQBZ)Q>Y<42Sxqxn|%t)%WlC@zd*0_D^d~hg5xhk0w?%2#^404 znU+{b9iHgMhz~u0CehLmBgA`zN;H%$`lvUhx}_fvVoQ8kEjW1thb*VoOyMnvvQqgK ziW~4x#c9V%ZvkB*IQsyb*0SjwgFV3CV+fij(7gB#3nws-UDJcGyS2e9X?UUn-XeI_ zYf76fVW$B4a_JmRRZ#jk0RH-;5dBW_Ozbd$zVC)N?)t{tkb9^&c)jTt`y z{V9T*iz$K}hjMU67lZEX;1zssNn8dt1*7_ba7&y^KF3(W$ebd`9j_l6671cH!V;Sf z=kNHZ)k)paCs=A*Fh%@AHDa&vn2&Cx?r7w`#2>csQJg9__vs-xc8YjI4Z)^sh7O^c zCx%e9jc8(JuzQMlTy>v@k`i?ePR=AKK!Yw66xbBPkm7Bs_$Nb(eG26CtPIkcBKE0P zfB(EzD6=wN!(R}OzZv5KynP0@CCZj5%mhZC8iV7b(SKAU&WtinZUodm#a_-6EsIdE z=SBG^w?w_qG+L}0(JgNo+K36>R{qxz8xiW{FkR7aYCeL%nt#-$i zDqbvBha*t4tfp=&c%JiBg*3yO;18bfbjN#LFtpdQA-$Hnz2s&Z%7v<*CV(z#LQQa$ zQ*nk%z(qrcx_HP?_3@!nksAlUWGb`eTQu@Z)iBs7&01&$FEeNYS)E}kxW+&w@@crX z;N|L!4^O{JN&5_$apuVZn$}uJ`^5S3GB$27;5qVQddNn#LxM-e!9cc45%i}M<^@}w zXXCSIkI&+461vWSLf%1%t~X$|d=9b;b~rji@XIp#l}0{IGhLqc$EkS)`C4$JQYZ*jUN{cml?KdEoVqG5o(X~A)z0ep zAOnd(D8_5!Q#wwrT&GUuxLZ)f7_-T!oZp(@4PNhbVU(=Ch7K!ugR7e4*p1G|@!@ZZ z53g8svpc*ZYL`nCr}I}OHcEs=c&%$I-VnBR71F7F|)zhjsikREE< zcMUk6)4$sp22<1+_q!Ognx{dp!v?okQTgK`RJu@xyp7T7 z5yOXUxvLQ1|HRp%1aZ&^0@m5yWd$EK;P|Z0hW-RtLaHBgNh8%RFwdG)6P)XuceZ7f zZp1Hl;mfMuf@>;XPNCO2@AG~e#j!&9w&Gb#cbl9(c&y^Lkk|!d&U_ea@pZ@=gI`vL zTYQA~o0ZuVe}!}3sG+@C0UT19lo!T(jx zdh7@J`1*8K@E6WkL8=_ZEaI@br+5AzIF8^ioo}NG&&!Tg8;WuG=vXV2^JA^bjHbfX ztOQWRF@w)Kyw9wMlI;n;>hKvZS-_dS=1NRHS_1H&2K35>X#fXZnaRsX13Yf@BSRwh zv4XG1h4vki_OH0m4%5HBVZeY)=L+FXM=uykH>f#9G$&X z${U$a{@c-~Q#Eo4wc{N}A92;m29oiv0qf=30KoSQ-nDWIM}A*Dkl_T|$wPd=J=NutK-E7OGpYN^LV*=?h0-(|N*-3o4ONUV=$Xn8iE|dMJvJvQC(-At9cC zN==y44PxNV#UqgXgt=EKC||sfX-}A^Tl&S_AZEfD8VZP|P@xHDYN*6YKNB4T6Q|rl zbUUG#6U%iK@>dWtahisNSWT!xBfz&*1SOv|?{duC8{7rBko9L=tl&L>XJ#be+piURXOY7zYrRIp9B%R-(C3sX z=yn^}R{Aj*SxrgF$0!nO;Y~`)To(BRpvf+a8X&EbDWrrFSqo(fX3 ztkPcf%pEg^xge$VD%Fy~{$=o_^cvF`U(ClYU+I8p9FS#DfznORUmPMSkrL`sy4g`* z$iz48@5~o( z9`rl%tAw9&>2YKTuA%g4mmWtBP>R2B+BH3n#I}r8`WuJeXa@g0ay$k1dl$b)zAy&x zA6)z%`6jfb^hGD4@q47?d|!5`%)sxF9}xbl=|A9=k3g?V|7QAc^~&#({=YlDs{byp z%o_%H&mhXx1z7$%=#eVWId zS`3r3D8Ecoe`uI|VKQK8>JJZ-_rsZ&=6L8FpdZ8Fw(0j$1eH5QP)$<=l_y0|pUQI`O?6hBo5xehJ8Zlho}Q zh)BMD1&eXw@lgOL9w~y`ohc#>C7CM`E-HL=&P@R1yP(^5p~I*Jv{`sk%D2+lIa8sP z3yEj7dH|2!Vm++FcaZ`8vJ^(-yVwNifXukkI>wF81vl@CfTE6!Td#tSXe#`g1IrkTA_8;eIHf!qbv3w^@g_XrUG2e&D z?LKzijJNy5&~4g%>Q2&{l^e4!nQ;H-k%^_BPdpfforNTE^ zJR}KwJI_PQ!O?{K2i_VF0g- zKe+W8?7+9lfI|Kl;mWt!fEjWU9I$VTauA&K&kz@V*L!HMd~j>_IDj`8Fd(lYhqju= zC9;>`HUn13$`pXx4LDCe&yja{PGCxi)N+7C-ssUg1~t~CI^X|zUaZC3AEZzYs;AeA ze}nMid(`th`H=Z-Ag}OMdoNo8(On0g_!fKJgZ~RT+IgyqqFcd9)p#4xlCxMn5n!zW z{qhBJeTkP_ZTtm-G$K6TfaB#9vTLaUOXNEw`vL<_fi(D_UWy>8MI{u|3NPInPv-Jw!uj9Z_Lzs zEabP)Gk<5M&f>D=e0Z7sn+%9w#_^ZQA7ab^_eILGZq^P|>;sd_vg<%G{q_KIwz3?} z@eJ_^1}w|f&K18oQ$^56y8H#eTn=^8p; z+)Fae7uJ`GCS(d_Gd0WW#6O{AWwSI?FLKiW&DKV^Rvbf2FPo!f)h6D;vZHLShSrHb zD1MpwGJA*kKd`6l4Bf9=RFUd4^^E#O9wK9z`D*)@MP4DG`8tpe*y2foXKV0UTl^KS zsq7pLUT2Ftkz|yetHDjS@WT(5RdQUeKgCzc;RUIXCYPV0l6@DF1}3oLyR5A;`H3xZ zP+qo3g9mYvL$F$dhitJBnpU=0gNJP)pju_;Y4C_GhEu0%Gg>H-bEZHoz<;4&U?;_G>!3W-YDa-OZ? z+gP?ZfE=={j-Cf8ry~mBAj+CwfkrU{7I`Ei{H_8IIO5((09!P3o^nJJoJ(1|{^H(Y zN4!nE>lT3+WLu8-1?StL8H;bUAEH8bYN~$cg-t&OrltrQTPp2J_AK5;#~aIu8dy}&`bBC<#ZO; zW?!mWG~jQ6&94F^9F8(fsBgCM+XBg5mOugXw`BiF zHTxg@El^*`);OnL308RXH|6p>7Uj>ULy^nhAnoOQF}hQpi|KpHpN3Gq<==z-4J&^L z9a5~!Ya!B_{GvQRJWp14Lo*(KQ}^&7R_Zvk=y};IBSq*${80j!o3rP0@c~HTh@easQ*}wKUvUtD!Sj!$7k0 zm*qW%PFXEoR{rulK843Lvpd#f<=5q%04lgitLV?;(e1*#o6!=fDx3(8LgC0$1fPda z5p7E_3#vH3B(G+{6#e_yKuZzaV@na%g*X$^9f>ZLBlCM}s&SSzZ7mR|Ql6-OuoKIROk7H4OyEVC(9@X-mk03uexD55F{L$;{ z-BHJ)Hw%VmPnrBv6skkXDO31_9G&?}sOOZa`iH56cm#?*rJT+1J9YS#Lgzp>hW;+3 zJ7wC9C>`#fGW`P%@_p=^O_}kGYG{e^X@F*uHpBqSdkO4v%B+y8^vgkRpBi!NnHt5UW49N`E9vW=oENFr<@1gp7Jv| z@A6y0(_!U&?MzDf5lm`$`G*KUqWm5ZoLYV!^dYUhZ~|6MnwFv|88xzZ6d*zF^DX2m`0W!<0wbW)=ULq)8oR49=Q!u4zPmu$|YbwV7uZyx` z0QoM7=177nosG`!aDm<~XBVV_hr8jOGtJ1Z|IF}8hXv>W$)#HkY2aVE}BoXZ*2b^w~mGYwt&Uw~&Fh2`to z`NUU&5zgeqoG`~)4tdP{Z6TVp5Zpp=GdzLQN0-kbM4vmh*8^pm5%#sy$&3r{qIX$or+SY-a?tusVH@763j*GR38OzbgGX!#ow1! zI@L#=+5|}Jl&XA%pwcN-I}48OoQL2Cov%#30o1Z(+fcIsC;fcgQ(AlYy@%0kiHhz>IoLi-`;=!|;XCX@6d|5f$^cRjaE0|vI@1!u@5o#xKs}! z*|aWIYb~-I@AsSJ7W&j3vqURn3JO!i4E)XDGkS~cs|(Ql>p8YfRY_p*(F%Or zI7OR}U>tM5g*Ma(-G(`(da5d^VU_(M*gUsCO+622Q=+=D8cU_myu*940!YH={@b>7 zHLcUfwH4->V^5HI=^i;s=GeJ*HV`}Gt@QMBP=v5(Zb6mTXL;nA>1U{q zJdTnDPymAgvk_6PoWddF`58K;2Wm!76PwGP~%r*409(l z0@Eg5)pcYZW;P%0dz2{!HCToi&L{xC7;8pTvlx?@MS6N>dPX|uGB%DvwFxAsW9>N1 zO4FliixVT@h}jha&W}ww2uqAS!N@`NoET@10w)=cD4>K)&|)by=oR@mQ-o+z+}Tf7 zB7;R@S0&zs|Otw6F59ggL0NSOJwz9(~Bz^DwqiR}OYYV(fD> zD8VyPVC2gBvl8_P)#>)?6l%!XE(!4Ii3Sd6I5!=n<=SjinW!m(axX|GsWxxEn(4yi zLS0l9FB(S1=)y(Gg}SIZUX(sbQEp8}ICd;Pd}iAp!%S>^Xvz3ry>G0&tEr>6IsBP- zj!nZW&7%4ZWnb7Nx^ZX=^FlMc!K}5Z>9Zr^9RkzLSc#V1c#GXMzWiib)$$e9*0i=r zXL#DWNVuapye=H=jZV85?}UqXH#CK(HJP`p@nvZ}I9iAgmUv-Gf0S-2>HR5yVjH`| z(egG<*}X-CiM4lzQ3$?7W6jOs7TkkV(e_rnE>AZ$?~!x+pgXG8b$098_`MzhB$?6L z@s7Ech-nmS#`_6OMXbRLOw=R@RN$R=&FqN5-CK;;+};yb-B29AM>%p0!M8LGi z3lYQph6rr#nEDO8!4R!Itip|Y!JfX2wly?IHt2i20uhAc9w@pSdZJ--U$t;ixEse$ z;jX53#Vc4{)xzbC>%vWBqJkD~jD;8U^fZtVRd7K#%GVgW;L4_+_U?G=q&F=t?~Qf$ zeqKdw*XNhJBQ9)+hG);y5VR(lPhh>v8~sK?v?2?8B6zK!njT`CVnhle@6kYiN&5AamQv)rZdC#M9V#yk9ne^-jlgRye8gr#^;MXXG*>^ zFV9JZbEw7pDr0yvW{gJ%c=u&%K>gucHt^Hwp{6L6*XjxLHHNV;UI-b*7F2Ddr@a-6 zy(X)+H`X#Q)C?Pl#Y_84sWRe3S13*h=Z)Q+FuG884otq()!J$O$d6sbaArt8ZL zeVM5*v#eNSN2mct(h%wj_v7WAcqwLAEEMJ2H`_oG0IR7Z5)ES{v@!(Lhn8Nn%IXOB zgZSQ-7E8@F6y4AeZ42R7J@D%SI7bcj;60l#x)Ar)YB|fM2E6jps%?sNcDLh|jICB} zb0a1jg~e_N(Gsl2j`h8vNJlf4%NPVh)m5)p8md~pY*lsrDl60w#VbEM!7L!f^lH0$ zJHtKgO=MwLb3;$FRSR}1Wwr1+&tA+X+|#G#6YJ@10wcRYQzu?QieECp`0Ww(w@)#F z4>f{+v388oxe@OnHC(7wuM+LS`#P=uroK?5Hx_Mg#v49KDLtAMssrV<%dNI>2%_#a zEQ&>9?J>OTbVc=f)%A68zG^zU8al(xY8J__CT$CKgu7Z}ZSYBW1!@o8^I6**iEhAq zKHKp0B;-SBXwg(H3|&yYa^-^asza+TsjCiMRJ~$l?eb+7ET%0ISs#M6G=*Z|D`o)? z-__J+MMK?qU#ZpK*ooRO=H45%YQcSqs9 zgu&$=y6tdRpA~KB3!^p~!%H`nBEWUQqqy^Q1=JMjh~U?E@$S?}<2tLew<87(#aXy! znR=ONNWX2hcDaUP7Je1IrpAI8Au7-uwVK0FcrXD|Z^esYF%dnx{`QD@U282oVNaMd zS2F64_BN`y<1MI^Cf@!T4OLr>%IQ?0Dc&55_pm|}`36?#LNBax<_s|GbiURtUv?e_ z06#GKru9}EG<;jG%QPAbH9)(egcugD(ghYW7 zp)V9|=!gw<6`c*Oc;_v2th)!8Vqqn|mPk)06a`bnOLC*&OS2Vi>^X?=nVKZGHf;apbOcE*#Db}r85n8nn@BFp;+o;X`78w_d z#LcIj;b~cKCu|lS+QRF>$#@X7LamB(bX$B)FkW^G5g3jB%-e@+qYWDxU=ux2%uVS9 z02g#ktTVj=KgBh*RjlKYlp2oqeW1$iCKji0A33zsghI)9~A3yyRkGqk!l zgj(SN;Wyjy3g#%(AReKZpF}#S?GPqp1rMtNhjNYUdON%6M#4~48aH2s{Mk1e!_PAs z(sp(hFcT4j&y_fU`=Gstj}?%3l=R}VWvegk#11ysut=L^R)M7Z`??y343bkQI4fK49^O? zvA|~K+JUYE^tHfkko$N;xAMI-3m7-NiWX>(GG)|J>ReM8j|`hu>d}RjQYT_Z)o0!$ zuEH>5P;GO&jxYEr6Qxsbc7s`RjH;!}msN-A7OYrs0j!Ds5QhPwz8K$k?uG$k?+JHz zs1*}mJ`R#wF6fPcuW)eqbucibwhImsK^T9BSY9a1prC?DEYt-9M1a))RE#b!xm3Zrd4t=JzDWf}n6$n@cBgNko=gmo>KF#XJ+#LVCz&k5W8=*~-J#fe znzGWZNViHl;Ao7#BJH5xQu!W;iLSR4BbyL7mGp`xQ$u9o`@-q@ zkg&O4H-zj!WgHw8E=pN5=GhTNTF}Z^*Re6lS8FT9iYJ0aBeKliu6Ep-oDFJVU4f(& z+~S+s)dbAD-Q64qM%)@{LCU3Q4B?0rR#&akQMwi31u>>E z%!MQ}8Ra0uO_8o!zGb(jhJe0w+>375E3}D zH56-rLp4q}k#{Ria@|vVGbRA3CWm)qrX3yhGGGz{a{Wr=I7*}ul3WGfp>&|Tw+q=I za%_fYnr0UTz@;9vOj$m%IxXXla9_B?>hFkbV4m35j*tk&Ld=XCLfr*;Q4T^|FCr5c zQFNP1%`q4!$c2VVE194(`Qz^m;d>v;7cX8}4FSP4VwkcDsXZ+n4Ons1wsu4s;R~AS z)Ib)NO%N0#Qa7|hC0BYPAd3qrR{>RIhdG3ru!ulBAuo^}YK?^C_2|m~!TSw$NqBF) z&MZv+Luwg3u~1PO+zCpsz-V086zNrL?~O7xVpQ;|2~oZsX$+h%_>5oagZje^5Qae7 zh8|d@;sCV^)9rB;OFKaHR0dFs5TplJdA`ER`D0;#hH$J*I=K9TN-DO%e2{t~yHJ)& zoEsW?Ai*Y=w5U~8Q(bj_-SXOHt4J7r-qB3bBupxWg#qeCZ?9VPDy4)9DrO>jXqSxS zp})HwF&x9xUc`Wj&<{_jg1eC#tWpuw8)|`)Vs+8c-_p|=;=&?nB}*@%%u3CkK9LE& zibwrWF`WQM`+7t8Nk#}h(gW_0?$Hrls)}wJp@Of)^OxIwG|2t-)>T1N*7tK z6#VfxslIILoLm;4cCTgp;Zf$c8J_G%&0s$ zLmpDmHP4mCVbeqDG2I2!$n??PV{Q2w4l>Ckba%4DPfsqI`(3zmhFnW zbchL~BGZ26>F1?|o?5zXZ2gITH=8g_h2)UTcgQVZ>G?}u!eP(wtntwe_|M%xl= z1D%1)WR!%2umn>sLL2SSINsj1p$**c?}C7#fmB~?)^#%lU~-7-a*}!P?ev zS9Bu+SYqMO(a=aqVI38LHugl}u;c#8cmtCv^pF;{nbV2fmYKeaI9T^Fmuf?8)N0ce z$)ss@4S{f|FGa*w$eysO(_2bhgEn-xe|8y~po7af;L!Ss*<*uDZ3%EUEFKaR|H&S$ zLyRT!!0K9tFBQ)qa;=113K;|Lwt5k~uuF+FlupxK<2OgR3{lgKfFvwPn|61Vn&;t`f`m2&lWbf<3kOq^ID7HbUZOYsQOsJp9GTw`p#ud>8++X=s;if+!deop8Hx)N zVMd4DL6ygFAp<`%WZR{q8TOf!H0V^06E%Uish?X&I)ErO)by(DZ=hRs(SoI99^J7r zdFn6Df0Id9$e6tZu-^ZtPoNYX^G;LnHy$V>a|vnyWSnaDJhLL8peSwN>pL zEbj%$RF-J?3SjQyOqF{?Kcsx{RmcFbbJ6Ms;Ch6VRxZ(^(G5@!MQd+2ro~dVJ=GqH zz^su9VA7C}${PNk4m=@h9A!nPg=)Eo4o_?BZSQEF<{op#ZN;pkcp8KC4o*k7uW4dc z7ZN@gd227y7*n*=a>Fi{Me$<^5C#jO6JyqlTsjf(R#6eLGa9}^MLTFMa~M@b1qK6< z*}zRkHY!dH$*F1?JE>htXRy1DEk<{z8A%^DKDc$L{hBfdjK)aGrC7&Cwp? zvMz#U6!T)lW~ARtlqv3}KG;3-1#=dt5=rvH;+8EA>ChZL8(YNfJxDgV6R5RR=@XZz z+(GN?L3~2cWwt`g)%(O;!n?xNw#Uo}1k<6^uY@n<0t>6USa?-E$W*uT^^!Ua4R zDejy>E9p|(xG)U5Zp0I{U*5b(xmCSk0?W|(&_=7j0ehDn5D#fXR@9~FhjdgLq&zGU zBp@n)*$?FO$$aV|&S%tmXyZoZ=xS9u2sv_*5$OphcG^3Qe1;g1PB)d&t*o^!IPW6t zSsRs7d8;}7yI{e2wN=_((C)(H{y|z~fsKwQ()1RL1zEz6}Uyv>TIPnwNX(BS}zOSGbm;Za7}8Rp@pJifl6NV_M>qy z9oS2?;8$@fwrC-C#Htq7VFgQvaC#!T4EtwRtfw7zmgFCFl!8oKX<*6|D^U&gM0%@| zQ&Mr2h8;!rgiYWf{Kn)|!pPaimliq-D0VX}U zseP5oY`IgU^E{?h?JbHi&{Ay9bE^YowP1qM1SARSBowI$(pT6rPD*(66HouSPBjYv zg`IklSg@$PkT{V|Mkrjae_&MDc!46(H(+xE#3P|~bK%(9NBd6R3}b3aztD^Z zT+={;I;4QQK4pH$IGMhK$18cnXAIgLg&IB?R9F>Va>+^_hr*6&oh%1gYEj1HK5Dbd zCiN0Zc?}SMx+c0OXo*b@m{>F;F7nI%l)K?U%hORPLA}J2BxEr)Vat+>JO*K7-95LJ*GfAVyJ-&qEm$XRQryg zOefFqnCiG6=^Az-wLP@*q6s}Drtp-?PJywNI}SmG-ef_&C2JzOyv>rp1IPvW^Vpj;_e z6mTy(W3_6lIc<3j=$XvNagkFl?Q`Xw|l}1 zLr}p69EVmY9&xhnb3l4`z&yVZRbpi}2Lh7xW5w!aFn{Dj4cu&F?n0zW0AMKO#brH@ z53%dbHEFlXjM0vsTlr-*JsjxK3m{j8WYu9sdl!!5VVu}pLK48xthSidI!rkXDjUdc z?};FgfzR+X+JLC_jI|6$r(5xYrQC(UWU))v+t~%BWUk3viA&~My{c4cYBU_*EJ>tp z%13rIT)7b|XUw{#9gopPt(6y5Ex!PVJk?-iXC&5!eHyU9oQs19l{Q)Zt;+SmA8CUf zVya98xFN*-Af=JL_!V|Mml9zPqof8iRnN|8VKE_thwq4~rwD;SZ*MR~QVOh88OtFs zy1P?n6e=@ZuRJt3qc(x)`gQ7Sj*;U_VC_t}&eH>%gCCmE2A%-w;{`YXlyK*hJ3#bs z)v)=cNb{=INdzs=9OWv`F(<=PhRz&slc#2RL zZD;|PDKZd2zsF=2v&YF~{5*p(h`|WDrPyj#QX%H246F@$a{@*UX9N{ejj$)wZBD67 zg0=yqB2+<-nX)Q31ri!mCYQVr=2H;xvY~brRguQ`a-GjS3rC6613bIL&;|WKjEkTB zH@lmaAhoFtrx>($9sQUa8~1HC*%$CgA{y>!Avy3rYGDlT0xPL?4}#PRU9nvI*M9xP znA+3C5Bb+3s<(vs>4?QO=>1;neh1&>~+lf3wUgYxW}iS zxLyH9Y_Z|I09h~w<6f6KlnJQE+u|#KCLqWUl=|pph1pK$N}&P4nEPNH#61(?R*c$q zR{mLw5^Dzr1ZGXTy*|~2Yf)xzo?pRy!ra{8MhH!oq$3P4j&K(j8csffR-W1PB>OaV zcA>Xrv3-wT+~q;G!F`;#%wQUzGs;5&%`vkuQ%AduLon3ZmSz&gCwKHILO*>HRzx5` z+SxCGCgdD-@dK6oOv*b5d&^8NnCCUFA&F{toHIN*|L`_D4Fg_UYi$6f{W$ zZt}#{Q3e#G2FPOcf++DkRbm05A2Gn=55}&epQTV`^lJ5$*j9yL_*@_C4MOMUxLyZs zXd^M8glyp{o!%6L7hOf`!9OiYx~&#$Izm5~9C8X=4k47OeO;Y^D^_6*qx3-O5hsob zwWzef*ev(4OqP!1RXrr7j*pBMLPYo^9eC) zKsalI*GI&q`(qNL@ZkjM|Lg4PV(Tcb@LXRLxfF;K{@eoPDnM&MY+VPc@Bnf!adN>4 zp}DDA39`g7u~TCE7L05DL>_oBJVBo-6_luIs)9h`M*>;QSYMI_u}iW)RpSVyGEJ~7a6nGicD&-i%dZ*iXf{5MHXhFI0wpA7Y=`CI(H- z7N$jz+g6xmG2)<7@Gi~XQrGhk;ZrX|KYBU<-5=7ONwyC3K#I`G~9t z$J*nYU>u=e!hR=2_1LLyNvL6;Gyqi@+xCP1lz^rjLv34?5-?2KkF@}Xe(b5}zL_&6 zfvyj@YV*rf*eIaWp}RphEAOW?U~JpD)$a((%#HcDyC1E+J%JhV4jsXy{$!^|cIc%C z=t^D}Mmp}w=dga<#{-e<%*Z6WSBx4kF?d5;c{<-N=V8Q#Ca79a-#~MV$@aE(2d!*D zzQla;SjPF~Z+8Lv1Vt09u}z)PEvOvyQBx6VpOo*BIesEzu7TPgEwX5=;LWIHlSVg1 z3c4)a2S6g|Ss3rT(B`@cSi*b5G}+cty?m<6Qhq#OrRD9eP)ItQc2L*j{?JDnht`Po zlg1%#VshN9(%~eFx`x|Hl48B?%f`-wv6P)wbms=a?J-NsfOY0eIZ0ofVg00WI8+_@ z21s9)VJ*^^XV@U=-8g6=4zfd}<-$0_21!q5Sc~-D3>zRlonif?yBXF;`jreD^0{Td zEhDcqA9YKTV%2p^!3{yML-Mfz-AeMX6+zPK9At<&G~BHw61;1Tx+A2u>l{mC)cl6~ zHOUFnK?4uXPITC$5HK~!_iZ9 ze5}>(emlUu{^IVys&xk$F>Q=z^o`BrCJwb_Mo``_v${og~{! zh19=InoSS25GUNW1X&e5?iZyZFB{Jh^QC8z{zr!OlYTwJ21p;xuomezGHj6aw>ab^ zPI?w;xi7%5LDF(q#;{hPGi;#8=-v$LCw)qWl}0E&>swYf^dgcJtL{Y}V}7ZTGvX9W za-HGbSuD~abhIF$snY>4J{_11e*BDc_7Xm5b?!@w67>(*;3n@|a=|rd3WG@1U zo6{9ea{IJ5`Aw%`+ZaM#!j||dLHc)lz=qU!&%j0|fi0%~B$|s)aRPgV36=&kvJ;Z{ zRWVE#W~VUSTTr(G88v|g(gI_2XT)MqGXaMF$WTkERJH#fa2~{PDUKX#RELYL3qB`m zkK&9t3G;{H;}~F&f7#^ezhZopV_#=DLHyS%D|5_$(Fpq2*T@^}WRjHC3+0!Mpnu51 zEF<$Dumncn%Sc4|+k_F0{%efzu!|e^7T_zn^0zDl`cgh|d|oC;A9usJ|K{X>WAgMz zL>MkEzejP>6ojPB^!{Y>^iLQg^S5aH_fhX=;pOF*a36y>`rGY+g-7Z+mR|%WEI7-l z?l?|Pi=%IsaCi{EEC&HO`kR+OVe-Kzqxt=jj~ieL@*hYc;pm4|vWFezE$AKskeM_1{3HGZMUZ4_Kwe}@p8m)~OY z^xrE;XYY^jQy}CW*=+0v*R(WhaE*H5efv;Z{zXJcl~I1kp^LBBcD3 z-(d0^zNh?A$V%Iz{D{eqnEU~&SnJlIJpGUn_a^@G`7fW@64)){*uOaTUmwcK&*wUZ zh`jtaCjX7eFHz8Z%F%y6l0R@(OF0kV9uslo^PzJ1W8>lTFPZ#OjeOjGK83uLe~1~F zPkDY&GFo`W(f=YxYlQv$)$)(ir5t(XUV|8uxOYtcC@wt7yO{U%8u>qWz0?b=7)vCU zKd(l9+q@U}c~oJs{Lf52e$EGEV1)bV3h(om^7MyIp7He4zj;dj>sQ`Uj@UId@-IH^ zIjkDUUaD*9CQ%hB?@yocA~!}EMnO%FV^_!o#Ntanv_TdZa2MfkJ^t99IseG`T9yB^ zuOb5Oc$9dYzvrs{ZK8Bs&*V9p7;U*eDdJ7Xbw?5Jb<0sXB)*ARnd^ii|0>twgXSWd zSZQ%y&%sEi&vCvk;y(!Ua1lQ>%&$fKhmP}R5kD==heiB!$9b-ZpAqJDGk#q=>I|oF|I-nU3Rs5kJduTrc8hW1Mc~A*Gw{9LI4uAKApt701^i zKHxZR7V#hDgMn_k9|t;5G@Y!b%dY9-QPlG^-34W4AWip^8vMcrSr30#d?;E7$*}mJX6CxN8j`itw8a??(6(@CH_$tY`M)1;xwl;R#FU*(jYSmA~As z-T+?pTy@X;wx-kXTEdWXAA+u`htCv0xe~XlCLW}LcE#snQmYM*+uQkypInLC^CiI7 zQaI<20k7zCu2X}jHTXTiTe);eF4f?V17C|P>EiL>FTktH^PKYIW#N)2aUw5Hwy0W4 z6@T7W{vsx!&lNw-@zO%>NPJt9&bb(u*OilT>w#C5Q~oha6+WT($(8s$&erhXYy6Me zdW%JPu!jG!8vL-O6X*MM4gX8PtJ=vw6)(>V|56;|fc2v=;;1?J)C>%ay~bpZoXdk! zFxdkI)D5G*O2^wfI%$d z>Rg;Ko=ko@bhW6qDwv=NnuYdWtV+dn0A_7^1{<~mVkn;4_Kb$0E!~H!D{`zfr`BSR z;YjqR6xL-Zw|@wuH;>qgVzWH`AhXe^hGF**9OCqfji$ zffB6{)8z-F{gSP6+U{(HZk4YB&m!-pqe}DA)e*43n@?F+&>ljxQV=HYi@PO%JsMo` zuyyBLsJqQq1-W(!~dtT54@eU0UkX1#PQnYm1Lvg0&UvhP5s4_j}H{GZSjx&->pSC3Amg z`|Zm)_fGD0wab<`wr#mT9_u`dP(_ArsWKfqzF{u#QDs$HsrWt7nxMv}B)b0NswGD^ zxu2F5R1L(DihpgUzb!|%yPpjnHOyLXKHYhanKxwS4ViiIPY%G(kogoEw7mG_zrBXl zGe0MqaqcI_@~7dCu@+ummaV}5_?)JjE%(!%cM;~1zyGg4$#nWKiELl6Vy#si`dH!F1`3_P3zy5eYO&tkJ`uQBL ziQ~+lZ=>PUWN_nuX)gxhpEjQS1o7|8pGGtU&uj#I0VaIfIz|6weC2;>UxoH!{5$g} z<-e@|A_jgM-sk^I`&a)<``w_!U7y&nU(P8AIqKX;pT*8P|9$tv3AIXCyml%HssDHxY)~=rJ za5UD~7Ym22aC>)q%nEPBhZU}0vpn1q>5H_sM`Mw`HOm)u_H;+qG&Xfcbl<1B9xTI*MbyBgcO!_9q>##kgaXf-Sg$J+YB9g!_oFD@dD zE#cNkEZQ4sZr|A6Y&AssI>XU{@T~TM@W#%@)@ZyX8i}d}akd_TzQ*46fk0zsxv_HwWV1kn?M*WVE9Zsh z&6(cW-rYYqy|ugFx?ov-&7$xutUOoQC(QqhpOMkmM#Meyzgp!pIzIJ}X-8Q1SbNPv z9Q#y~FYA6M-tXpVH*cxL0t$L_f{G5e{jjMc4jMmp+g;c)?esr4cX9!d)b9Ew+jElI z-F(FMKvFyNllv1)YEMoHB}wguL^Y)%sh#=J{b?}m#F;GX^-1l_UGC3@r1oS@v?aB> zxs`KzliFPwv3)S9J(9)-hrg{#x$qk>l5_QNsf^ijp|UiYVNPf8mm)a^O< zQhcnfD?L@W^N)2~Psz>B<p^1%3+dVE>Z_#d9~)a`tx?uT!kUuPe! z+xerq7ysR_<`;CT`7gyV|Nl6D=-hYFV)aj{+j{QByjlx)PbKjqouw}B<9>)c*1rp3mCxYMbctNgX3AI(_n^wG;tT#N-ytirFo zdk;}l&nD(qud7~Lzw?9YHEUPb?H>0C7TA5xa3QenK4;nPis39=)$MNR1=L(zxAiS= z-Oh&I;g9~s)~dknbE@}rPP8xF<2_zq`lDq#Pu79)t*7kl?PWkSeAEo9YyKj zMeuI#@P}1d7{gL#_#5%1mhGN6JbVwpr)WHNJAb@v=bwhh0e|(*AAzQ=YG8xdea?q9 zpZ)^w*;YFsozWLWw#>8Kf z+PWY9%d>3voTI~&*t@6TO|*T7zNW4N)ca(lAA#s&7weMGM_yhV?BhGVuK3Z$YrHVvyjiUun0AvO(vMM1mUDu?&uYMG1R zr>c2)yZWfx-4+r#3V1nPFy(qK30Zs_JR_IfrzH<5&H;M~gZ8QL2ATCIV( z`?C-im*L-fw5wXVM&{h&)X2adPpu5z?5&n1H>Om}imj=hd3L%isg^->Vo;3~ zb%=VLe>eUef<394Ju$!LjQMlzk<&3N>Bl4~w;phN7*6=J&Rn=~`x)@IGvNEqfLW{X z$9z~XoB{vw4EXdJaGpu(?)>Rzz^s+{33_MyAABt5N@sF)+UuEubW|3 z&G_6EBa5FiHKebcJZDx@N=gBV*|T% znq~ig|8UQn&Lm{O2>eF#`33X&fcbpVeE!IMzHC1KWIjJMpQ%Pse)Bomd>%A?%MTmjQ)|QB<9^@@`3$0aKjYT4!oC=GWdCKHWnDED zhk(YqC%IOSiH#j!Z!3LinHObE@-OL0o>Gmnp(~K4|ycuiAUTvFBlR zIh8}6;AN^94F>=}uYn(L9*FeTT#a_`cR{-MqF!E3$7pZ2z&P)DK$EiYHMV{mttrd? z$jik*lKN{!?>Aw;-sef#sG(8g7|cXTDS+|3bV8Pu#$k5=NdF}+vMujRXdD&nLQBR; zI8jc@;1SOH7MfG8;_{d!j)Sn2t4XjE5@dQvDIP5NR(k2%7)Ct%V14OjO0c0SF&_tr=~GFp6RNY) zxWo!~8DQvw^`y6Ol~lngS@WR6ij2$cm(e6|1~VC9b&Zu}AHfX<6tW-U&S*4Xj(h+! zGn#CTI3Qnw)-#$7SR~JdEHYXQ7?j}jX&FY05}D`Uhfnb~^p;tDL}9kX z!^jGmH8e6OZMl}11JBNEH|tvYy_pOCgh6@hV33&$)n!H@E*D(|{_-xL zgv+HAn=jlKvocpxIC)R9^>Q+u*9Em^Hj|mW&lAli5@Mxs`44fW6gJk%_!suULz%PB zNdY<6kodWp087L$GIO4WyrL1~GAlJCL^HU^>>v-c0&ff+nAyo?3+&6VlAq)J>Pjg) zRdD@Ou>`-pkH8kQW`ZQk`wh^XHHXgWZG!5uDr<0=Mi1SOk&47DD`P3FX0I$Cq$gLE z!Fwtq7)Fo02|UWVH!4Vo>Bt)L+y@nuBYuy_BF|&h=7a)b5`uxO(i$uh9gwuFzFPGK z#WsA(MVhsV;*}tvT8*JZ^aH89@G&*ALgY^bwBqjysub_S_GH7q6jUWv2Vnnd4t`0J!cQfA|dE5x7A&wo=}^+$Tqk|t})*nG0Oq8 zNiXRW4B9I*J0<{J8ei!TTzHwgk`=gbGN#&jg^L9k`zu77H|}#_ zmC~7uh4Rk&o`QsEN5IVs>VTLd9)`c?O`!QYp*-<-Xg#l(OE{r?ZMtg!C|#bm0=0-? zz%luuIF6DLI7&z0C>w!e>IfXuTpXhp*RQhjhaSg@W5!QHoiet5o#lHpl~H8uT3kMs zTEoi~xZFPKHBu(LZ$nc>A=sU-DeYpIz}S@ymajeS6ne+?^jaka6Yc*+4w5sV!-7fn zR-lF)q<{^?K_M%#0KhxWXK#*NhcpH790dl>3L*0l1afa$p%V(8^%jLB zF|}Z^{T;ecs8WiF0PBq8s^srz$_@5i%KGc%XoS*&_4d;WY_N*PAmsa^X_rD+Sua5L z4F&&eZ-F$mp$%RvNY!c#2>?_rMIpPCEs=}!n3W&K7c;Pe+1;uefrvN%f_pKLShW`~V)X-((9oSUixf&P)}%w9jxzev{s{oO|g`2*ndRPYzsf5S3c|!_o1*Wyn@w< zCv?OkY`8#S(?r;~Cp7E{*7rrN!k8X>(jyj;#(urjDUT?nzy>rp5(M#>~iU$$H3a`@O0k6oVM6cH1Lte3sz1RL@7Uv%HilZnl3a``P zA+OkhU{!cM&BPNr>=nO&j~Cvs=mLUAyka!XX6w)E2p;u{)zss*{j&)k^NM*W849-_ zQ<6OH6(6F0D!ftm4tqs0)x1+Lb=zz z-zQajHC4w`#S!-2uEF6{aUBie4$Z>JRB=76?mDDgZhkiz>kcwm&cn)*FpBsog_0HsagmmfcugAa}p*Al${ z-%1)sga~0jQ24-w%FKQ$#7nTK!mqJ9_k?~f#G~x}x(0tCgqPO)&EF}}9Tnm=QuSPk z0*BJXouulw8r+d4enzpswN>@*O%t9RfN#?eKy#XSdn&-cYVhtfaVf3tZ!8Esp#y2+ zCHB6f*?%Zayg;SA|2MVN!8GwGiTvPw1s+NhkCy=aShH|AO`J*x_zz|SPw1I6aXouK z(JVZhCJs&m_)p#YT$;FrX7(@L`+S-_n;cp8vnx6INSb^Hp}jE0uD1yPG)?XXfrX<~ zet>DENoc?-Ojq@$C-kc{xs-5*Do0@vY4R3QnrUmb9#4~pDWWU`52wi!WLp~eWSU$< zPt8_&9rl(czmf(x$JV+WN|!MPwp;`6NS9Ajs6GSlO_!$;b_)v(yf0nmQwM(gA4*gQ z(q$J-ve4Ep`B1v-rmRNWn*W38a)|I413#KBcM=|J;K$PCX2L}Vemq@92#+)H6X|ju z;j;|_QTK%=Nfq(NtaL3 zzbox!%Kne0%b#-nvrYf8bon>(x6syRdpupfPJYfa@E_9Ua_YCnz{BaXk#1aT?Bnfp z`4YqD68jQ}#S=Q2F2BH-P;c~qDqUX3IDVmlhcaY@{4X`|jtqG}<+;qjdo$!p_AfW^ zz6^OA>04pzXm%h&UQ7BfGW`!_$Rg6S#=r+NkWJu^UDDD8u&mOFe@CWVNBh0nz0dV*eICw~Y1G$E27WG6P9XjrhTbEY@;K$U z)4)eF?q$%E=RYC`&#|dEICF4`MyicfaB1P?lUs{e9K&dpJwJz~u6PD~~Ms3bs0{o19ma1k>W=RIR!spaJ81Xer9;H40$jJYQlv63c z9~=ITO8FQ1>k(IfQr^dW@DqdoxRe{n&kF|rgOvAR=T-QUt4}FkCq2J3^q-XSQp)Go zhTr$4JV<|k*}xx2`8m?_ih)0r@?We9jv4qPDQ8oEuh~<<2I!aa2<`JX2L7j%g~az; zoA)nQ#7N;G47Mo22iAf%j(1e)_{(2EHR( z{$DZRznJ{CFI(H zN3LAL_?YA9c)d4QuA;r>8u*S}nM!}nH}Jk(d7S>>Gw|KH@^bpO-@pfQ=b8SObLDR8 zx6;6`E(7$U9yf05aOn#Oa_&}b7pJJC|;D_?$S){+tzz6f> z7w9kb20oN0PtiUuH1Od(`7_$nQUf2!lV0YFWd=T)Cz~m+e(M-2u(nJ1e_&qW44l_&cNuQKpZzT^R3;c5f#$d@mZpEU;Fn=c>a__YS! zmoNW8e_m(c1Nrhb(sQwaAIg_+(w^2E_+Y;LnEJiMz=!f>(FDMk8u)O&{5|dIGX_4A zFW)Bq%N(6=kLF7r&KF+p%sZR*b}V1k(x0zz^v2?NzPy+8gq@(W=iz*LEgZRUgQLsk zzvs&@(w;XOdwMTlMyZcB=VGAogx=4WlX3xfI2CICseHMW_SWNY*Nk}NlV790q6XgK zlLL(B*E{pn_`N>4gz~w;(e=wdpL~G&+vc29>mTsR#e{bn{vPtlVaA_Z%z6iXaw_TD zYvv#F$$RPl`<#Vp{lh+aDdXW6jXaL{q@VfxZdX1&`FZN^J|`D!Lq0zFI>#SyYSjGW zK6#k+*Ov@D?2~I5&+a$$ob<^C+TR1tCn|oO^2uHFhlgDK6v*4y|FEl{0y&EPUo-I0 z0{H>`{p$ukhVhK=-*lF$e0;n>)^Ps+82*L}fVX z`qcP`{PK5{-x24l3O?wUUt|3IU*|bAqrUgcS|CMcRkuxmK-z+%NYrU#EMteGmI(Bkdu}qwVLUU!KMF^GyFKzkG)E zp5MSjh4NAAKVaY;h1S^BI8nboZCVh`(E%$ExUv_QVmHD@ppRC_I|m*FwLl+p0Pm}8 z&rLv?;yN%8h!(-#dDCocHI};}?P@O9$mMqYAimtr7iJ_aw{ygD1~SX-YF8t%TpgC% zn)U*hYvXczB=o1LyJcoY(sH+qSk6FZxm%CA%Pqok+tNnU2Aa9t*309|ZEH@ZZrh0E z3}lwu?wI9@czfKpJ*^#!WRyYifxw-Q#24Im@vJ2J_KjH3KxV=H_bN`n?gcpEzcKAQ zq^}hR{G&6%2v;H(F?n<*Q#_UN62Dum)a#Jn+QY2tE300_p6XTiiTE$F(G}!GH8um-vHI_Nvj3&af7`BRxt1l`&Iz51I`%urrL2p zjPiUK1i;0LG9h0Dw*Z-6c{lAcun-3WR#A2~*t;d|i&!Y@0gzY{IB35gU-i+Et3En% z)kjCJ>Vg4z1pX0t%(fH>kf9GW_-;?LVDK4*(|}}b#%f#(Qa(0Qdw?ZK_}DB%w>Sz* z87t>0spW{nSaEE&h617tvLBmc4&JSzBM70sJJP~jz6uk9MUD5n%NI2zFJIK`E?);V z7qu9vi0vtWA{v5FW^lpJryay1S)W*VpeAt44nU_`)US>d%Bv%V^6E&TxS$crYpzh_ z<1pyJZ|tX)`#}wsBb>;9ALOoJ?k7oOGF>ZpTTN398nG0>Xp3 zVO+KwU0$3(Xo<4%67dnNbzF8tK^0=G8tF!tMrdJNwzj$|aaj%_9hK_DFCpA<**YpU zh|59VI1}5}i&+ZlRVu$s`~adGm!s`^gH^Nv8Opam&Bop%>i`zn5%{M)9^S46`md1! z{nto={%fQ_UC;>h-*JJyhmBvraz3v@SBbnIG7Mxn_bGxZ;B zN_yFwYrs0mCy4`jYLDWC8e}Gf7sz+Cgw{(h5&2B-23b#IFEG7r@KOs@v;rtLXa-H+Q8?1qB(ugKt)ikq_Zod=`orlYPsD z^kO_h1Ds=WG$ceW2pW_7i0aD`b0Fj~dActkHbX6A@--9`ovDC)ud9(IqKtk1e<`R! z+y|o{Q>aH)qHb7miRJrZ+7m!Np|N|5C4By@VxTSlMj9wA%sL6bD9*(SzCafBTzoBc zJUWXKF8(4Y@{P%2(N$cC6?|i}uHg8&aCl!)7Gq)Y4o04FSz9^xUeN42E9)D$wzAHm z1bzFmE(bRGC|Z2`v*b#}xXj^VcV+QeFh+JCr0e^lqJ_my(be!{-#uyVn3=T%;j_Yb zZ`O-krkG;AFUx0^`34B^9Z>XfnTOK>e#wA2@)B%8d|%EAs=)#IAW8U&At5N2knZ~p z2*-Vv^0+tcb>jRM!g)#H?&CCd7F?l2YK+Q4gS%ad{dj z3cO~(fP9%Y_8T)dXpOF~w9YzM4?;$-#nq#*ZCuTqXPx!<9A4JXo@Jf&1ouFr*YfgP z=isvF6;OKC{T?Ri0-JL7Q)zf=XEUyg`VokIb2DBB;sTpw_|-2ngg22>#pltSDkcQM z+HX(?9~+--Z^tzGD%!{As6!K`oB&imzCfM9khO)FJKk?Vumsc$d90}@e}QzD6mZ~VDDtZQLn5eRb>W@$-f{dj-O^f2I=8pDp>^6 z8egHFR^**gc`Oa^OmmOs23yWTjX!>t{R^z^32n9IkMjY~vwyGP9kzUj%bjn356ki1 zsoaf=@p!sO!TW4^8{v8bAF$tEFR!h2-FAEgT`}ZsQNryy#`A z;$}=p6^CF1>M1(%mHtcgvX%CsT0d}G^DXcD5J0fmg4vEa0U~YhTlgJ}aFd%VIIw6c zPz0~DLmV;=*S42mQ=c%u2_BuB1?7n1mw6vEZ$Cms@i9i6yq6%x;@6m}@?PZSZ`6RV zBeNI(mccsj@pN3ip$05Oq$>VDP6Nij!Ut0YOL;GsEJ zHC&445sZp*cz=~~_p6|$C|4KTLc9yiMFqFlYO!GcQY&!jAN2wqR%X#?ZoL72Uh3q9}uE-dGraAjQpH`MG*xhalqynj4fI3YB53qO z3G_n=^g{{sLkaXlifV;^D1m+`fquxKXITa`+qt#VXtpQNY)_!soFT5@_y7pt&P~=8goKI}&K_NT9hR zf#wc_hSes}>^~hxqi+7^DGS`6K(jxAW`6?B{sfx+2{ii?X!a{K86^mvJ3{T;imTE# zv?;l?4Q)y;Z9|)qOIsHTh|}0`hdO%a(rbcZ3swwuT&(!cdVgZT=x357As6M^s8c~EG66!b! z=W;^p#hQ}D$PMCkqY}2}mH*wxq z)J?78%Xxjj8jm#?lqcVcUn20J&E0o#2WfstUoS;R;9*4v#!|*blUQ*dSNHP@)Lk)M z=5P~(Aw0cG71sbr6}=#DiU_1TKjgAEz>oqN`Z@@;1~SzdFvjsI+l)6dp^i`iA7T-# z>_Yx3{AP~$I+atXAzM5M1fhUF3UDkhr-jD;7_&0gry=8oCSHaDPVj4sp-I{nE%6DC z2tt!J zh4?C^y2C%8YgURP7;0!&m4d3oXXuePM-)^iuB7kYqA@gxe-p#r-KuXr)HMJaGrtS^ zQw0wfQw1ds;~+;DgYKNrm3(eVd_Yf*>IcGc7(qG5*ul)4DkvTAqe$hU{yk_cu^DjQ zz&~wH>WVSJQpbX+;>T(bXH5h@dXT!Jllv3DIKoeLs@mMIm*Co|;%&7Ahh9E%2{k;i zgz9a=5G#|@Q^nJ2`V6#`sQciQOo9Ro=te_|uJEGaIK(c3LlGaplK#h9i z(?+4q%KQ_4gLwSToDk&Yk8oL{e3{BjVDzgsxIPAbqy~{Q>Nt52Q2Uj5$tOk@pv&ga838g zdJI0lJ~Uf3$ZkJ6=cro*46f%ft;{t$ev#d8g}&!}b0H_PR_1b(azcxosg>@!weGr7 z<%=ci<_OFzySdj2UEq99A9qeOKzj1T%_h{0vMtu)rHnL z6=%BytQ)!1#UqwlA7ARr2=}2&O=ph$8=NKd8MO=!O0#RM&}9ZqFuN;ag)TQxiM$J; zEp&yt$A_n1<(ugM!)BdIIYigm;OLmRP%h%&MgyKFry+)gn$!si9u+I>UtWpmR(E+t)Lxe;viUg!1eAPkGXe?9Y|8R>qn(NJY=U5)la#kk!lyHw5HUB<~tXh zYgwgR@E5Z1Wz~BSnu=Fa>GjSByxvK5tWvS9_!$&)p=M_Q5v%wbUdNn;aMt3n^v-LP z;}*B`dYf{a;?I)z9m@KPC(;D=D;qAJfY=kAa_IXi zSdaf-pJg4-4*l5q97vU8Sw$RC*No1W(cORIdjRJ##?FRkG-lgnvPJj z8bA@(487p+I_q8R^Y(@Q= zu|jXfm39G1`%7GDM;KqFQ#3H9zQ~o|F<_-ED*$-X(bY?p zyqWdnyNc!SXA8T{(S_Hv~<7z;CzRpL+C;%jRLZ>fQ!r z<-HBYP4{MGopIT>BN?K4-~@jEN>vZQ#KBWULB0B7P4PtJ_ks)6pyFqy;Ch+*Y79qQ zWd9CBi?4;a3s&h7c`)6AHR_lVcehZwS4^61++*OD3GRKtm-~#sW+XPM&rf(T#;g zOfJ`5IIRaElV@m1h%!PI8bOY@1&d6cscj`-mE{880n4$bl%HRXb@)ePrd03}WCx>7 z71orQD*;iV0B2fLW)bv;hOT!2&$6b>c405z+18XfE}SZE&BtQ%cBbg@LR`ni=WkH+ zZ@FHG*J0#SDz5I5EU;g4;k&OF`ec#ID{s9{!(49aFEQt|Y3Owa z*jC1NI9Xju$tP$Ma}iBS%3Klo1)!;}h~`0CCDTX=H8K~*R5D#d0kHyJT~e;0pm><8 z%+OGY_yMF>GE+kpA_W<+WVVJX#U)77C39)8EM=x0b4vT1rL_nmt8K*8m~lCP2wA25 z>X|!M44ELM^lCMd$^Lc7r1Uy77+=iCDPQT3861>lFoDvo&TkzeDUol&GE28P>I<3p zrrinfQF@a@d&KvJ<XXiGc4>Sx22pKhNcL>c*3Xwp>Cs zzij3o!KwEIz+ZKK35F14AzVG6d|0I7W9sZ>Ten&~(LPL7rxmt}s>Xna>-w(`s$Gp-e{U4eB<6e0Y>HWmH zUX362%0I%^OaJNe@0CxWkT3nW=|AO_G2%=0X#7Jd@&`yPrD+~I9PA@Sev$p@9&^_s zMgENX%QF3kQ{?xj0+y!#NQ%4x$)hya!{7k>NI}?U+)EWS?o>fDO%*hrR6&)e3MvkJ zJatVWrV4(2J5}(T(?xTU8A|g!3=8?9DDN>amG^2fI`X*(&D#UpF7lByE8`Ui@R&dN zF@}gs(CMGROU8816hOuNdmM0E(F*_YhYWeP*vFw0d8-rO%VBCG4)3Kv?w_JA&qhY_ zA1GLYJ07MYXNOGo|N*hc6frtXz^#5 zwSTR80FTk)W7H@9bp{N`XP`9y#U?=qY(L_h1UBhLa3|MO-CBjj?D`6JVd zmB5<+$EFvX4xl+=kOpN1^y2@CT2&LxFT+g{{=Yf{KvWtX=(YTRQ%_))lD>BoLB)#I zlZsVr!2Rzz_h4{#W8W6b|Gp8AmEAsQ`9CoC{RM}8whbpR@QT{m=gb6 zP6RXL*I}UkzZk_?@-ZYr|J$mIO5a31zU$P31}c3WC3ISmgsnN$%5P6+y*mLG>z}Hg zWs?7Hknev~UyIlncGW|p3MgNT+`YRvY`Z?#`WWb=zq=a^u!6h=4 z;7$Wp$f{I;y9`(>Y{gZG=Lltb$2wc;oR z`W?@&D2J>C5OsyW)_d87P#yoetAB~tz41Spt6iYFsJba+s?OVlk>uh8MO$ycfczSz zexa8~ZMeB1e@}3!0Vm376xT8XmdGEI?BxcW25s;`J$#W9q!v9%2V3Rkb&0wY%qKha zX_-1ddV`wc==l_pEZQL9`d~k_#S$+{?!4<%PHkqAxp(GJ}G} zLhxBOK|?+<8O)WbBmtWhOGW{jsQZdUCvi=BU9A}m_C~F;$r>mTr-`mi(^w(y<+Q09 znj^kWXquKlrMQ8-P1jJBXym+dEy_AE2To8ngDJ@g)r-G4fGTv~h2kATGc~kSe2rw9 zFRU*Um8cZTW^0i*h#@jNM?>qypGovw?Svb|w~*7z=4oBEiR-ZKD4VaLO=2kwzs!7@ zy;J-j#8Y;*p4Te^q7^4ijgQ)5kzn+6oEWd@OkJ|(RLxY zpo#NK@`?+V=nvumEmiQ0Emc?-;hvD5NOWmjncrJegR`v}8-O^CCdDuBsKzwR@+c)R z3#5vhYWcem+@qMs?0hjb*nz=5(mHhln|$ro)M7?d%exdwerjk1`qSEA+c&zaj>l{^ zjLMld^#^EFHzlV{;}dcW=BMyEZMy!$R6?wTp-(I4F#Mf5{FOpydk&Uf2<=XraWh&+ z1*XmXkc-TPV@{j(BQ?+xAEyDDP1=wH@COZH6Vv9r$niPTOD32jEd9Bvk9Lq}tz-rpgo&YX3cYweg- z`b&4MS!M28q-56A0VTjn@oR81Ynm3sdf`D7m}N}+GI2L}oK>!|ZV>O~0h+-Dolu*I zLff+{bYHJ{Hy6;%->besF(wnxEcWqS2=??UI&h0l{r;o+{T%4?{+w&fUW$g9_EcDg zou>-X3QXtEJoD*n7Iw{A4CSADw)5z__S)I@%UB<$s_e1-M5cZb(O3T zR{1SN?*7oVGTMu4KESjOU6r^y z;#|g@^(LURdB;L`u7hJN_+~mm_MSs*5-U`aZl{@RJ%}M^-(QF!Ed*aDcnSR6i7*PY ztXX)#&>OlGz;nsKFOz_C-!#BN3|qX;vd**DIM?9!MfNOf;a`(RE_4jzYQd}|;M@rY z_z?2is@7QRTnnsIlLjq3CkZ&0XXyM11M3fyv5IRg5u7N3ldXm8lP5GA;95-hQ+$H8 z@bgK77Je%k_?`jo#tiG6D*UR3sLnnFmYhx0+dN9CJ9)}r5@0R7B$@f`nU7xLNO7-3huxdS`oO3nvWV)xu zPwgMXA{f(@lr6178wgE&MP^77NvDq(Gw@$8VqVM*-850aoj7 z&$&$o_ygqkdmyF^uhlY~YcQQ>ud?S`3;DOE;?uSoKzzosiXc8t8{jmhfK_RpbK{fO z<7w)J-0#OHKWKoNnB1f%r+JpgCqR9!>jQOKTvFD;N0L@q_=9BNXUV`TNx->(Fu)~1 z_QV;KS_}V@G<4yINq~9&852|%J=2G>7=?GWN=Xr z>R5~Ii+vb!MYe6zC6l^oBv|1Zl&kZ9gTFlu$fghKA>0F@_w}(PS*oXoY&whT#j1}W z*v?;zm)HHuZS<=vmULF;t7uFWzsGOJg}FVJ9X$;ZgZ^Mg}`= z03s_svN9c&k8NXjhxYUdR(<{qOv}i(Ju)#qb28dd3B_AeI9i%jQtI=$N;W_N3^ z)a2=2SMCZdFM(8w5JqRrRRXQ>CW(G#xqW`7HXI_Pja8-JS)&v%D<#f29{`>`awz3I zC%H+@O*M1pVy-bq2R1t|X({^7oOti~nOvw64MvR|es-dt;DQ8*yqjUKO{IM-+NERwt zEKY9JO||i+j46r+vG|ObZGQp>vGGG6#{cRKUG3e?o&7D5|9DH+47>y^s^97L zUx!4uj2vNJ0fu*ewKg~Z=Zg4K|1->5iIKf{@7oN%lVrxCm8)v48ErjXkr|tMBAqRf zO_6ASbjHPai(0g|u{koM*}RvGuNUjX9f0^^iT9WcMj4=zUTXps?j=%1 zti3COM#v=^YiWsW#5E)pZEwX3=Ja6m<~4T?rlV_9SFi4kU+Wb>l3A@CZ)MxqV+O@q z@EQTr5obZ=u{G-9q7)hv$m;x197ySZJ-3Ldwp zW@Xc+NHc|~pqeeQNOfOdBMDIr%Og>~_|FAbH}|#o#z(Kg%j}|!%`v?AZ)Jb1xBt^R z>bpO^-CeP!F&dd$sUcWRvYa4#S2p?`ei%g&_VwUJd`eZwYL2^A^W@qEUdQvi_4h}d zS%sxy*6o(#byA&)dHD3CI#Yc3#M#|O1&T-bv6a83^VhlfWv4n*IoL@R#r&AYU(5JQ zVDp4vJNS16{7EeF5V$arW)%V9X zR)$;P0kL@NfN51OoR|u;3FD?uH9O>)p?y))|Pu7P$1MFZTYt>4 zVojalMz~00xH~e4H(BB(lHIXzl&_*}14#g^=FXmI1S?^bAz*!Y*}64WXJin>_ix;2 zDPF_T&5hBvF#hxg{saJSc82@#UP`!Jm} zubad41FNaCqd(l!*@9g!7Qs>twX2qe7p+{ergr@rE8G}`(RD#sKnnKiyZgH$eeKN@ zVRuVoUyD@_aVk@_@cPSsa1-epQ2fOD`kNuhUeMHq_i;8VBJmd_fCVqaq!9SzA>0~IqU|ksBPJ7^nT7ykp=#31t_w+}tdPtwDYVC!xHa0`o?1CuzI)FQ}G2Gd>1eq=#9qkl1gO=2waFKE}yP~ntM8X@F#NduF;;RO;%TbXABmK8`fH6>gAtd z{dUs&l^Tj!_|xTebr#eJRe|QH)e?chLkM8K6>mueBbvLx_8#+k(|W|gz6d#2IvR}j zH!0rn)=+8_Z_A8^Ypo^~au#7IVi(?93QOc0OJNKB@XFbP`2_}Ag3z>Yq)3QM&vdt+7IK_ey(zmikwz&S5Gez zCYIGYjmE-_ux=P3mc@HzfrSFbRTwH#9L72C9iXlJ2e}v2uBof7UJPTf5D=L7!qLXg z*vL@P)!2%6#KOjU`+zAHQR>^+)7J$<0gHI4Y!q^7v7$}=;T9E?`ue+jaLcd07Ycx% zLVw|ren^i-qzTimlf3}5TDbNbHD#D+}sGC=!=3kWf#yV zEzODyMi9n~7QuAU4=;_h%mTIWvItby-r8nu*+M&qOEpDW6Y*cAr}`$uo(?)amO@lR z84ICzw}hi@?Hdt^dN)(KD*5z8m1TB^k&yb7r7?Fk15H;?OH?_4GJfTa7P3kc-r}qS zba?d|*3$Knjh#J>2>r;55ND*92B+Tr44XyO#zYHI#bAhM#ttp^EC1r%mmOGoj}_Kt{k;qr!ByxT%2CS^k=71NoKx~Off zgmAdKCq}7){%!_(WeG@oXVO^D^}tA%jD{BFQg4M22E{Ijjk%8W5!0f&Bi_zKUyLPpl}Zh(o_)~2s%O0 zMnne+885C@A(qw;A4c%ddh1gji#{rs8wV43;kwESy0IPVLW)qim5HUkrClct{1Fjl zC~nCDE;wV+vXv`p!wuD|s+Yq>802tJA0CMDjoxl-C$7FoZ>QP>@eSM{aO3j+803bi zg}=)MhU>c#<&atNdxSfMBaHMaL&U<}@G4|oovfBXz;I}$T*w7ag28SW$C6tWtcN$c z^B8bcwu7JQ3zTg70yf8NkNU-k3qIc-L-J$sgD{MD?(~LZ9rRD-z&*XHl0ft@Mu=L1 z!AKQxASP-A*^GP&QGyz5X*R;rl!dfk#ZYI;FQf~;G@IcJRhSz}!$|q6jNqz>JIY1D zXJ-_-zLg2Ab4yYH)~<(5Ob_;fC>{H|+i__MF(}=-5|t*T#n+W92Fwf2-NFT)+1j%a zb(Eq#j9OJ;M=inRMd+!_jI?=l~8c7 z-i^{IX$5$jxe6k95j*sR)P#_QFSk(2jHOp$82(OH^*U?@nmg98_y?|KwJVS)P${Cu zV(QzX(gT7?3%uWyCyGwiV@>@?zlbxGToYLB@70+m97a_}v4&%fh>|9fCW>igNp8$( zZvg|)YI4p-x!Kvt&;cPK%dTII!bPdHha@jTY*04P+uw~64<$2mE*-I(3gGSyR;D}~ zrJB}pXJjDKX$^MvY-aH{(B2p8hhZTR#vP$yIbKnNeASP1!<`Xhp)zwUMh3ZiP_-hf zZdP>sOF#I=#mXg1R@Xv7aE%yPR(Y~dzvaHZwX>%Qp5MZt1+uUgf})sadSMl+V$zI& zEbfk6161i6?htOq&Hzb*vOvkFEfSj7tE>2i=r%F{;pOeRTrfoqsbxmQ?n7B{7bwB5 zp=ncdPrnj-KVDhi1wn@)t7fF`cGM;au8=eSJ|4^;Zh+hZ(l+N}QV;`=G&Qm$az0sIGR= z(uS4wE7p)O{9#4Iq^W{bT?z-(JK271H;gHnb()PUMPh#qBlPd72ddO9NAG%~1*dnvdF zqX3Mct91ZzGrq?K89F{GKN)m=j6qQqYyXjOQK>JkUQtHh8Oo4`u4S$)4ksDPjv4MC zu`mlue!9M`aR~EDlw~Yb#S0XmoJ*e)DSzvP z^#O4>eqy7O6jJV))f`R(suwLq%?Ekuz>%b1z4uB!vB4&R2JV(viXQwC$E3WtdQJ7J zHSVTQ89K)IcCqeZtn0U0So^`lV17t`reHwYV9e3}s;U(gaFlJCdROfodgsEVjfcTZ zIHyG=X+=rj0JE=7zKCtwSL$K??Ss%Qt7NFi^_A$z9cEji;MWz%Y-UMl2>U7(BDB+v z%;W9do7*7$!EPuR7D)5O30yC$PgU+F_L9ni5e9icqs|djvA2?8L2q;s=;#>k=98&V zZD*kHe)uEe3F7;}$eIw5nzgCg&XPRiGN3ztauSAF!#v=Vll}PkzU$4q9Y(@~?;FOIh2kToS-O(*bV2O=EXJZpJh0Re9 ztg$bOfE|xdCK{Mhp^vnv6Phm6wyf(_#=&NewNx8=qgI>lNG462YZ!#Xe5oRiLiL2L znm#Au#pv_8&_yk8z_Hc zr;W1^ZptAc{M(4AhZ$f9<*zC(QN3@9KpQMdqBsjxexNq-ICoW%gnL|V0GP=z0=3nn zm_h*Rj`XQSr*jb2R!5qQ8J61X8b4-T#tjcxH&(`qUr(Y_Yksg-=_YZFF<2WZHkwKgpahB5A z0{=`Z8gwZ~Mor>v9^|=@P9Vw*HNEOg8|c=ot6oOoF&rzG$8iixQjn>{(c0bx(_N3; z%uOs>QL*yu%Lpgdqsmsd=+hgIW)zU>FcV8K_wj5E0Y#qzLb0r5z_BuZ@W^~b%Y#26 zhUyB5dju6tK@Cz5x>b3tPeu}zD#}V6kHP>@xT1hlaTjOg?d{5ETl%}YP%TWnQlPVM0yxHU=vFb(~vs=>8$vj^hs z5$siPyMhOeCeL)ESc8MM_M-$bP0K7dWpYaszfXWgVciTstawoeCz90~8WD~vBUh?S z1&d?-p_*uXARbi-LR`-l#pQ^4sGfO`mZ9{G<8GY!xktY!*llqq91W;t%7 zI=7%!H+wPVu`NBDdawmzO^dvW(wRjrRn6HCjhk3yFD94_Y(^%c z!7BrXz3F3b?YNzAZyt5hm(_T1t!_Q=W*9cZ#y+7}UC+CBgqZ3PQ`81QD@6ryRdwjY zKoc1{ak6P4AmSd?;u;)fEvjk2){~xmW(Bzd2VYjKuN_X775+gT<*ik1Nnt4|yn~K%!T-C{bRZ1npP1FnCWU zUcz&)X^MD72u&oh=}@&DaiSvZp`N*ifq&uf1U3cLGgpBR6h)2A&5>Si{#pl=XD1zK zvAkqNXu$yPOQ1}h7C_yA@n(FzogG1Mi`o6mM3eh&grr1S7YgALA9IBf-+qIBY3L&@F=-(ny6i)wXd%N%vHHHMRPET;-j#M-_VoL7M{ z?h~-rMXiDxiVT4$bUF}qno+!|R2DxDiCG;{=S&nBjGMaR3EF8?~RRk!l4Iycjjibm*j;u(Zn`gMHAGdX8Yi($#{?Qc72PS zyL%N?xhp`V(N(8azo-jGlGskDC>?hk#?Pek8AKujxcRWPUB`G+2Ip??8FS z&gyk&+b&$i*524}VDsz7~zKzwvgnKo;u(^3d7uw9bbov$n z0svZgddX89Mz~t|{4x}Hwd!sHJ`rE;oBUPSM#<4C_(5^`&tARI7q#FA4hGl zm9%we9n?>8sUu1J1^jwEldv%Y4I-|^!d*C@$6;*??)Vd>HWWM#p>D**H!gkZxQiQN zum>S=C{iAuMB|<9^h_Sd2$i>YhqaJ#rS`xU=>^X`n1e?<~w|IJXCl$iqCw z;v()X4W6W^Q)3mHwHC2qU@lUv0_~$D~jUAHIX{!3ucTt+z*;+ei#3p;&m=O&{_hqOPGk;h)wdL)bH_531UKkr&4pO51j&%6`3bXvKx%7)NhA9*6tbXE_;5!^Dan91_2>+%M;p{t z;?6D$9@K=y3k0mQlGU$Igy2=I!eNixn#J02xT~xeRsJl{s)fd&i=BBC51SaAE(Mt0 zg&Td%%pqqy>Vlim7p$q{^BAVG)4NF(jAK2mc*2c)KNmyd0R>h0br~VX&qom`;!35y zAPlu_#JRCa5^6P5q>gNKkD-up5rQBT=+Zotscw3yVvRcIvs(&iM`TrxyUzXp_T0Np zy3rZodOmm&nbFkW-q|uEes&Ts_!R+sya=_4%DZ@ggcatJ`en6vU_x!O^_hygw;fie z9qI`_8qxpL*|mjORfXYooJpthavUY6i*+!iiEv|@VPP>k-o|Ehw4*3!$IGZwIx{CP z;|M(%^dLQ15cHrJkq;%IgxU~2SQG{JAasGCf}nyPj2TOj9-6*?t^eD5ueJ9kX~8+` zU*B5)y6ts4>;M0KtQc8uHr!7WNYAl;cUVCMG?4b;YymY1+|Jm$G^2t8d*0wF&>efB zw}6R@DGPb6Jmbuwvt~n=yCsy90QUF#KFpYo9avlU+Eq}Vf!rX;t-Z`5`^&%{wCrLo zzqIYWLAaPzH@WA#TNE9z+c=F{X`LI}2cfNoVQeL%Zjh%AryXlLsu-z*^2^R;k7J=b zPS*!<1>x&jtyo@dUxm)WJXf)io!9dFW`MuGv4KGq0HfMhU~u|Ua{puRTRi!ey<$Kn zn4Q=&>X7i79Z-088fbDsW@Ys?d(7pJ5uDtdf)y$WTVd;9`exlYbGV5#OxlQ*N#C7d zEu`;BunK8dv{{GzT1l^ioq{-E^GL5xuvXI51gntVm|!iWHzin^^tJ?RA}xPA#Bv># ze6#(t6)KqxB+1rj{w!@cm9RL9jIA-Fyj9w|mt$xv$v3nLl2`Qd>0NU~j_1~b@{sp(?PqD}pA=0!t#m12#iK4Qi*1jA+PN@fd57LGzU zYhg+4VS((s4h?pxKgGPHhRh3Q*IUNVI>iVWwOThhoxse>wBe$ryP-b1c&D$v+E;!xJa@rnWj~ivFgl z%mV@*QJCO{zZ|{RXN(8+}`xV(z zT#h?%rx#(%?UNge$emcBCeXhJ+o%TZl^vsY;NUUH7<+@EG3c2XhR8=z&51qwzkS(8 zC*Y%_!yMOVMxXl@3xJ)X=jI~>6TO(9iwFJlnwor^Z7fy)&!jWq=s)IyV&7>U zv!jnUqL_bD{5O@Kew$;9`5`DY_#p9nRm4u^zQyy;0 zk&nPso;Yj-et{2U3qs{Aq!#PKyG^dE6>{H@(-%M|c+d<5h3+oI*u$IB)> z7xv#QDY5A1P*ra;$(eEJN5_tZxNZU z|03mIr2H~J(vE!ee?nxM|D5ulQ+}pn9%1+wLSCgANPJe@OYmcCJ6{_%F}Zf`jsz&-{Y&XP$NpXE|^Ke&+gA0smJrvEk~@i@#Ye zfvF&ZF0xUJ&$txN1PnpYK0B^m%v1bh7hI@G_p=8PT!0V9FZUl=U-Qa8{;}h~5M&;f z?^5M|H=uSr$D~s#K#*9&mBJAXn3CR@!R5af{%}n_kSOsV7RaQc$49N?c=w{ z`>>DS5$~@)ey8ES>EjdQ{m{oJ8SZmFJ~`gUe0+-GzU1R&!~Mp`ryA}jKHhA&Px$yW z!}Z_CryH*8K8{xt>3ZkmcNwn3K0d>6ef9Ac!*$cgc^Q>PWxVo2D#Upy72@G4>f##= zUYnTX8qEDUsFeFa0ba@AGEc^t>~oj--e^Y0LI$Z}37cNn{|{?E-FmJf-_wd84e)h} zUkdO&z)Sc~clI;q@u0=CD|XYtXoa6Hce-c06{zrx~pj@l1AXRiewRNZoIEx>yV zaJ(AGR8r-Ue60XK4ZPW8*Nrp4^Xl_aK|bFV;3L3iu@WhNBKCo142CxChZ9IAZYJ=& za-S@~J1sss#&PI!k(Ytz=hFjR%H?YWmutEEHJ?kt`g6D-ANg~wyn3G0e8T#?Q;_~F z@Me><{#zyLJ$+E^buxvWV$BB8TeK5mp4IK^Yn>g>R%?llN8mi z_BeIVfdNr+h8dBmE!(_iNf)$GbBu}F+E#XUEN!pNkLE`Up>m{xbqWX}6ouYQH(rg< zyFb<#$+y*qy;j`&Qs32sFdcK<+73CM*kjn9QPFv<^Iq$yc0qEfJb Spcqhd`am|y=@Z%qZ~g_k*+k0# diff --git a/scripts/_Inline/lib/auto/FOO_a221/.packlist b/scripts/_Inline/lib/auto/FOO_a221/.packlist deleted file mode 100644 index 9167ce13..00000000 --- a/scripts/_Inline/lib/auto/FOO_a221/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so diff --git a/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl b/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl deleted file mode 100644 index ad688b6e..00000000 --- a/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : a221847cec3495156c1bc17a87f79421 -name : FOO_a221 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 13:28:30 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so b/scripts/_Inline/lib/auto/FOO_a221/FOO_a221.so deleted file mode 100755 index d0942dc8e151e71aec87b00db0242b507aef87ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42766 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 diff --git a/scripts/_Inline/lib/auto/FOO_a2fb/.packlist b/scripts/_Inline/lib/auto/FOO_a2fb/.packlist deleted file mode 100644 index bcaca8da..00000000 --- a/scripts/_Inline/lib/auto/FOO_a2fb/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so diff --git a/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl b/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl deleted file mode 100644 index cb8aa845..00000000 --- a/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : a2fbb9a009bfba50de651aa119844842 -name : FOO_a2fb -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 15:05:24 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so b/scripts/_Inline/lib/auto/FOO_a2fb/FOO_a2fb.so deleted file mode 100755 index c18fa86a5c0ccb33e359cd0d28aa7f845232dfcd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 48965 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 diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/.packlist b/scripts/_Inline/lib/auto/FOO_a4ed/.packlist deleted file mode 100644 index 3f66cabc..00000000 --- a/scripts/_Inline/lib/auto/FOO_a4ed/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl b/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl deleted file mode 100644 index 9de27351..00000000 --- a/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : a4edb7d603d828eb403a2b4f1696c4c2 -name : FOO_a4ed -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:56:24 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so b/scripts/_Inline/lib/auto/FOO_a4ed/FOO_a4ed.so deleted file mode 100755 index c8f381660fd624501387bc52051d83d4cdbda34c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142459 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

H4U_sVyNm6J{%4B?1gIe=vd zFO<70z98lxeEO&~gkvU#^rW8W;}vkd!|QLW!BBBa5BJq8UZ~S2cB*dTCd9J_UT>C! z2GwzJ%8-7TYDiBu8Cu2-p4IeC!=ciu`&>}Cif@bfJD0;=R@NMZU%rH7D7{d{H=~B| zVP2n}D$`=P9y<(3g0;;53Cqvx?tYh)`6#V ze(0eZ^WS3+c(v8Gfa#gvl^O&hEgp;i%s*(6V_uJ%T3{QQf43EI5Lam;^RJrN<#n7H zEWLHl?t%H)?n7p{Otc)D*xaUfxwT~yM;LLll(Hy>HM3(NfoA*g9iq2gCDOpoDPYu?-n34@>#I`v4?feSRqAK{7roOx@K;O6OS=AB@gSam)AI8=FArls&L2@903dT@ zY#Ic&4!TFTx=T8J`u<}`CKd|w4_N+zN0|R_kyo0?{JSjwu1A>vbI2>S$Nal3|8C3w zY8zOR5!+8XxCeRT_1}EkATU92^KE+Rc;$!rdHoua#q&R4`5&z%a2GUfW) z$GH4gv7z=bb*poiB5_T5^a&1ozqvh61NLJ4Cp}aDhQcBz|W=dm@QHC7_*<#Ge{a|0nT}3aHnU_I*EU@*TYHt zW4wM%;-R6>k7FF%ADk9YAI6{d2d4+rb4mQ;0_v|M{)~WnDT&_|P~Rl+psrg7<0ysu zgEIr_iTK0*;NJz5|4IB=0p)rU{{+bC!8l6c{^0C@ayb65KR73#d`;qa2b7yhyct7r zB;fwwNhyrG?GMD7?)>!!X({T`^aoGwObkqa@RT0-r}n@PcHo6ic66C{;rE@vgAb)M zNDKSAjQ_K(oR^th#e9Ec_&2BUFE;!=Df|lXeL*zN;M4SWp5h;T zC{54L06wK^v|(dC@L>=9Ru8;{)w-4cVc>UZP02r>>XH7w9_hcY=}!ypxZag>3-0Cj zFFn#f9_nFGQzZWk_Q3B0zFYf`^}v^V;J13<|6K8%^6-`(>F?};|F1pp|Ih>fzZ8F3 z@C&2!SsS-M0N-t1PKUDWHV)_az`vjeex?WhWDoqGDE_n{D*^$(g_pYPn|h>w7x05F zN#gIPd!+wT5Bv{%;C~PN1tQ;U+&*ZvJPP*CnZRfNgF}>UJfEQWL{s!ePT}Y_o>u@r z*qJ=Ix<~qI5B$Fe{(>&$yt7C8Pxruop$Gnd_9$Q8i|*F1-}Jzrc}n;6dwSqUd*DOh zyV30{d*I*Hqn!8mz<;I({+m7UzwUv5%&F4O2Omny?X!XJHg3=BfxleK>73w9kMv;= z{IxysZ|s48e-HfKz;~m!ul7hUucmkF?-`Hkj=!J>{?Z=!Ob`5t9{7zO_-){2zTWqq zBv-z>NBX}3UUYx@cdwR{#sqZk$H?ONM;t;epZBcFr<(Ao5**#wfx_{rwa^_X9~N8k zd8tBs6K99w2-Xr#ULM-N=Q25hu}dNx1h|GXg5?u4a#Arq60wZ050-FLv3wINv^501 z!(pT4Rw60CI-t!yJTo#m9^(58Xt(Qx!AB;h4~Dc{H$|x#*9p%(WM1c<5z1CypfL!MOO~2M$Xt;*dmqv8}X( zbJUj(9y~IUIW!s$4-F4pf+J$(z~3Z}M-JmKRsCjc>}*BXtms7T>_mtf^jm)XeoGPO zvdawOKte4D=lj|Mk9@lVM}p!IW{gHe3^IIIuHzHFZk9)JV5fX`vCH=Y4<4M(j!)%s z6XD*WJwrI?5+}$eo6d7H?aZv3Z2W5fsCzU&j(zA4< zYDEqw$I8tF3VTf+=2TThjgRm zo5#r}h3;z|S{VAA{^%2WqZP|Mq|W5W0LD7+CMnV4h}TjdgG;w6k&6^8UlB?*RZNTc Vq$8;iYIN$hKkh$KV)UKL{|Ajp)HnbD diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/.packlist b/scripts/_Inline/lib/auto/FOO_b0b4/.packlist deleted file mode 100644 index 6beb2472..00000000 --- a/scripts/_Inline/lib/auto/FOO_b0b4/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl b/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl deleted file mode 100644 index 43468d4d..00000000 --- a/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : b0b47b4481de0ac4995dd0971ac23d1d -name : FOO_b0b4 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 13:57:56 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so b/scripts/_Inline/lib/auto/FOO_b0b4/FOO_b0b4.so deleted file mode 100755 index 2380954bd12de05843aceb093289051fbceb9894..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49560 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 diff --git a/scripts/_Inline/lib/auto/FOO_c054/.packlist b/scripts/_Inline/lib/auto/FOO_c054/.packlist deleted file mode 100644 index bbe053fc..00000000 --- a/scripts/_Inline/lib/auto/FOO_c054/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so diff --git a/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl b/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl deleted file mode 100644 index 627ba173..00000000 --- a/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : c05467e52cd72ae79a69b5bc3faa27d1 -name : FOO_c054 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:54:45 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so b/scripts/_Inline/lib/auto/FOO_c054/FOO_c054.so deleted file mode 100755 index 81f1a990d9a111b62b1acf6d867e34e79fad56fd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141717 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

dE?W*3t+tbT`(|Mk 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 diff --git a/scripts/_Inline/lib/auto/FOO_c629/.packlist b/scripts/_Inline/lib/auto/FOO_c629/.packlist deleted file mode 100644 index 573d2664..00000000 --- a/scripts/_Inline/lib/auto/FOO_c629/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so diff --git a/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl b/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl deleted file mode 100644 index 4afed9c6..00000000 --- a/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : c629bb13dbc94a7147daf1e24a500712 -name : FOO_c629 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 15:05:22 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so b/scripts/_Inline/lib/auto/FOO_c629/FOO_c629.so deleted file mode 100755 index 4e45beff7ee49c4a004a0617999bc8838b4c829c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 47077 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 Il(FFb2mLQ%8UO$Q diff --git a/scripts/_Inline/lib/auto/FOO_d162/.packlist b/scripts/_Inline/lib/auto/FOO_d162/.packlist deleted file mode 100644 index 599118ba..00000000 --- a/scripts/_Inline/lib/auto/FOO_d162/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so diff --git a/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl b/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl deleted file mode 100644 index 14f2b087..00000000 --- a/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : d162648c2dd2b282a7f6b975095275b0 -name : FOO_d162 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:55:06 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so b/scripts/_Inline/lib/auto/FOO_d162/FOO_d162.so deleted file mode 100755 index f026c4344fbab67a0e50454b8d53c7596370c6fb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141717 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist b/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist deleted file mode 100644 index 670221dd..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_2a81/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl deleted file mode 100644 index d07836a3..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2a81306732376d1bc2ce778db69819a9 -name : coin_pl_2a81 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 13:07:03 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so deleted file mode 100755 index aa9cd81344777f02a242b094510dffb24b8a2f55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56177 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist b/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist deleted file mode 100644 index 7dfa39b0..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_4bc7/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl b/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl deleted file mode 100644 index c8b69f97..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 4bc7f633dd2bd2e9fde659aae6c9e724 -name : coin_pl_4bc7 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:49:53 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so b/scripts/_Inline/lib/auto/coin_pl_4bc7/coin_pl_4bc7.so deleted file mode 100755 index 8c72b81234f2add015e4e17f7fe93aff4a8826ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 190544 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%0D}8MAZqU~DcfCpSAI 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/.packlist b/scripts/_Inline/lib/auto/coin_pl_6538/.packlist deleted file mode 100644 index 9af51397..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_6538/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl b/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl deleted file mode 100644 index da54e297..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 6538d065f51350914cf2a520a8334f6c -name : coin_pl_6538 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:55:47 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so b/scripts/_Inline/lib/auto/coin_pl_6538/coin_pl_6538.so deleted file mode 100755 index a78fafbbb027d04d647e97af55fc962284e3c113..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 142955 zcmd3Pd0bRg|Nos~#0$z{6+ux)K|@mmw@9TJ799))0hdZcL=;MqSj@^21I-C3GBYbH zEGsK3+f2n!jm-{1W%`mV&x3# z!xx`*vV7eJD-dBT5v4&2-Q*H3_@o83+alX-*&z5jt&(c$R7G7nEb>!N9ph+CV+0#E ziG%9Xk@aoG96JB=Q4TMlV+C8$sorif+L50B^f2lfhDJX4jGr_`S+tb>&^@^Ei5p+; zx>`$HJtpIT-<2dYAD;p`F&vZRIhBnx@Q29r5J@K(%6i~DP~u^r*Wi;U@#T_|K6FgP zCmo+&_+;awACqxn!)Gu)SKu=fA5wA}J{RE=jSn4D1mXY3$@Af$OrBo?nk&!8NUHla zT;i#cj*#>+P~GRmvf>j-C-N8#nu8CeMH)Vr;**7s@kj(nz$acZW$JS@8~=~PXF5Ka zoTDhopcJp35_g1Li^g5O2=Md5C-y8uS$D&Es66j%;88B=M_+m38dehfOWGeaMxGN1 zz-Oq$gCy-DDUpHrMBx)epw%%$;;TXX$n#Xte)!lW?hTrRPYOPx@X5gEVtj(}p(6qx z8b{smxe6aTV(}Tz&o2CrY^8c8e5l>JJ^6bgEy;ewBYnuyPrOD09D&Pd=!60vwBu}&a5c4L6Ww` z|IG{kSu}2|{%v0PGhl36G5FexJ`Ir5R{ht!$RU4P@o9bJgJEsW1m223w55Ng7k&PV z4%({kM54CEUyeT7;-B;)C)bNUH+#|NGcSHP>O~Gs*lp?amlu5^z0`lti@meG=t*PG zicjk!#f$tGyyV*w2xv?HC0^=Z=S4ovqt@2S0MGQ|hu=}wR=?Tc_iIDWOJ4jF?1g`w z7yX;P$e-Xv&pa=3ZtzmSpBMf(FL8X(OTI1g!jA&KEx*0(MgEsw;$`#VH|9luUoZW} zd69FS7yS=;k>AaW{?B=-Kg^3=cX^RB1aa)wMqb_KMgN&z_$MHvE&q@7qGxX}avHtV zU+1O%4_@s3%u9Y&LQj1yHJUxaOI#lCBL8kLdcFstZLK4nyy)}27r(vdMW4&O$cgh3 z-`lZ$~-L_-|K@Gl*|VdEC0{M3^4l$B%s zzi%Wzp%wpoFMNtgNE`c;OJ%>MD}?0rvR~R?hhVq2#G&^nXdUNwRhlmnc#5olg_M&; z8$cZ0Y15D6K79INN1G(;(>{hDd3o~|EG)?@ugEW}$jejmic5+sl)SkhN?v;I#Jo9$ zWrg#K%PR`Yawn$DUszI@n?HMgp(ty+B(Gp`J_*R5UwktvPFR$eEhVJP&o3`8ELX}a zAhk?cG`F;@xTIpPQd(J2P?TS$OwY+%kY8Mqmy(>Za9&zj*}^gs4VaL!kd&* zoD}BI$(vVLQC?bDP&~J|K*=gBo1a&{C~sKlqP)5D^XHWdPC?ni{Oj`;m*-WM=g%ut zDvB2rD&=MQC3BRN-qifE z^pc8kWeXQf0Ub4>RW(uEib-u-vCww-F!0cCE_5l+FQ_P9Sdv}>>q&NMenmb?TNkAk zmKT;4!)!Ud)IWrY-P@~f){ z_*!?Yr*kqZE4+F~lzF=6U`NaiSVz?~GpFe+L0jj3v*z(FLyJf4A!W;8u-;`HSS+=M!uOuHsW6rQ* zYFbvj2*RkXM?6Va-GuDo(!vFE;zz}KRzWuM8utA1qHzn$a*F4bi@=Mp5of zr6k8tKeG}^=5B<};e)LF;xbf|XXB-(jU2rbms#*Vs#Di(h89k7*U%kmP$R3XkVc1Y zkW1{u%J~(=<;C;73DwJWk*4lAk<=ES5f;`SbkqDq`rk=B~qKFoU@(TA< zTazc;kYFWfl4JmDvjyR^$~d#N=N(KX25?;R&J+rttjI zVhS{-$~>x6P*jMSjnDfi^il%3({n_n0t|yZ%$^m>{NmXKvx_UJlcB?g#tkiBXk-m3 zDXh40VcGR<6_r;kEWTvEAs$h?wDB{M5+Qcg}rp3r4{MtX8e-msw~6#Z=2 z(2@Fff~c9_C3SNw5@V|;5BHgyyFCuIN-42V%&=Bqzp$n?d>Xi6#G%%iLUx4B~#X? z_M+VEDqpw3N^E}Ll4y|JpEYc-5_IvK25_jvJ!R!5QoIYtZ4`Vct3UzQkznA{JvRMF zGVr_TOi;UlZ@mARW#G>;)SqtP(>)LUm}TG_uj`5o{Qi1n&{6~6Zs0FA@Usm3b&?O) z@_Wd7QGPMr2PkrmhVFO=}4V5(+`1-wE;vX^a z>0YjW95e9s`|nhy8Tk750>p1N@G1ZF^ul~*C%jn~Plfv?}IriwuZzW#j! z@god;x(BQuRs&!EZh*>S4SeH$@i+sY?kVd>f`K2YGeMIKeEN<=KkNp6zRm>AGVqPx z3rsigdl~A_GVtjhxPBBF`1(C_Dl0YcXX}+g7aRCi1Ha0^?`z<%H1MMh{CWdF#=u`^ z;P*H18w`9oW$@BX2ELqPIDd274O$I)F52YVR z4E!NF6ZDvYuYbQm#hQUn-$&_3vw=_Zv3{I2@Z)tR(I>4OQT`9(XW~EAz^CuN^drc? z*T37MvIqm;xcFHOeEQx*KVl7h`mReq;tYJcN2?zR2L5F_6Ew-dr|;18!*1Z~-_cQ7 zmVrN3uM9ffz^Cuo^kbHRf4R;CEi&-wyF~pcHSm*kCg@@V-)7)f8TiQt{z?Ns#lWvO z@KX)^bq0Q#f!|=@k2CN$8TjK3{4EB4x`DsVz@K2?HyZd?8u*6|eEP0TKbj2ui8>SX zh=D)Jz&~c->)&fqv1Z^K*TH53f3iW&Spz@Yz*nBKa?~0B)Az6Xp&I!5cfC{=WZ+NH zD}zQD_)`shtARhwz>hWXryKb8>K{}svlBKR)%(?b?t+$)w^v)0mi{&PKd?^{&IlJ# z1?RCA9Q|)5On1GUO&pgIHWO~-_&UP01#oWRcs5}R;RcScCX9|1XFbQ+gnbEDaXf)A zxyf0|aWY|A+MTmF9!;3GTFxwvhY_YF-kHSlAi}h@a>jAok1%bioK}u|5T>Qy8N_i2 zVOsK?3djD0X{mQMp9iDAnJ_K!&SM;(yB(O8c4rgErwP-N?rh}v1Yugrom)8miZCtV z&IXQ;5~iiwSE8$}t-%Oa6P-hdz zWrX_?Zshnn!qJ4ca6FrE4B-ZjuO>`Or?Z~pY{CNwS8+Un@I{16IZh@_OQdra$D;|; z(&)_Mco<449TSXA{S#3Dc71Y~=U^VOq+ZTR8rTFfC!u29A#srlreS&++?&M-i^# z_)WsJR5?pI-bwxRK-Q2&WLf+rM9d_Fqx^s>FP> zQz|dAS0~5j3a%1A`j*OUu3`c5A zQU=cK6_*AMOpVD39GDR^D{x?LOljc2^)Xdw6F6{VOg*QYV;VSpC1wk!J7XF_?R7OV z$A~)4+v{>;)I+H;Dy<8kU1@yU(M6EGE;YtVXA#i%(Irr^HbMIYf!R$9 zAR)C`rL|-11%vF>CoFbHR;gy@+@y%wF{yQhCVQPlOCNYJ!_jOwt&mfLAZOR2%0ly<^@H=M(NWmn?A^2u5drHKi(v=tDC)J?G0B6Ts+cExaMUr=Hp zpY=Rk6{At@O=!1+W`td|tl1r3XyItD*`W5W0pMVyI=*lm(CW!qD5d;KckCx`okY|0 z+9fe|?PqSmPHyB5E0=RnD?u@GXZb;38v>HG?0lzlS5B_5!3{@eanC(;rln;YDQ&M^ z!@W7jK0J)OH*onpnH8I;zra90fDfKvdO+%_A*e*L6Sn~|2P?xxW7VJHd>iCiJQCE%c+~$h$ zR+so?9@Shg!?`)834uZF_kTs=)CX=I4k?#jODuc!K9lx3*!Ii5uRIQRf6k8okM<;( z!fiXbPY*zN4HUp6vbCZY>GA7KmxP;0LiHck%CEVfoF8DDli~PI`-%8Su2T2L9i&^&Dm+&W?~DkVz2516z)RI&Q6L6u*FAJ6&P zbHsCe0T=9}jvNPcdpo)9b?|n7pq;Y|#wZ%Mz;D`Ku!RHO$2!qa zCGA$O#~0c!)T!fmhT}KQ36;3{G+q2Dd}4Q`#A>rp$6i~GSf0}6fRFYytEhcl;=gz% zYQ1@lTVfH9;m{1Rq&P;QLgh8C{QLbh#8m&mcpQs4Kkh%;*TjY3KZMKmI3~K=?Qykp zrclJ{61!6z&w(vG;!l&N8qS)u3xY?*+}FMYakjz-vG@g5C$31G*OUjtmDnLnZ)IUz0)OL8*Kg=rqvbptpdI z042F2LGJ|}1$q_erJ#`WO3XSThjb)4HqZjlWKfcq0y+;g6_oT$11$m_C(Fl!LJl?y zLQaF!a|7ri)O$?Q$3dz8jgmeAN_spAdWYSyCT0`b>x&2YRp3+q%ZSA~TvG3u}=?SkE?^o46N!j~h8<2|xO!RgzFyLtG#I&%>iEjFQvLZ8`oQ|2XsbQ?pbIQxA3?4@B4i&gLDF_=nc+CMixy!L z{|;NRo=2*i|dVy$&Jd z5gJ`&cP)vhFl&81#NXdae3DDNU5d9syuB71-(BmZtjtq-@IHc6x2g@TWM#QzO_#EM zmF}RLJczqCh&EamD&f6sk{suc=*1U6TjHbCuqv| zG#Fddnp)LnW!WzKIB@w5kf@E&P1hHmDhx~-^_+@r(i?`I(n=IdK~{8|q~)9xJ#>}& zO{fjC)@EbxgdRSpUaJq8(yLow-UM2-YoU7l$?s=qufsDuvUPF-WY6duYR}Vx{>O!!9Xs>#taWN2C2V zI9YK%NJ|yg=V^Q&)6d1f9egc?B3PF=VmdGEByoVcw%91c2EmOafYKs`yD#is{VqfX*AGo?mKX(!v-j@i%*6lQP+-5u!@FQ z)wKhp5^eDgYCE`?@3fa>qbh2|hlkRtQN6p-a@pusG~%L48E`~vpg6v~#L4nKZCo1;ZY!#na`hD20`{rZIKp#;AIXj=-90Q6q5cS=+L2TF_Ptq%LFwJ9bxMMy&a)2?A*B z6V{%AnAFRT1uhRVh}Sm4Q;wSTjmR**_E-PWEwIK0wEImo&M5d=dkG0p^#|_b)Nq9Y zmrusHpHR2+8&Xg2ZAW(!;Mgp>`T|Xyqs5;7Vl154Z2pGWuG2`(88KFI@pLXrBm*v< zZljXR{>v|(G|t9OwHQpp)MVEdLs!G4#141+%c(uTbaFP*>Qk3kgD)vCXJde&<31=B zQ^Qg|(6vTRg%eaa9W!%Kc+9I%bYkY?0!`GK*4IjRLpoqr&&yZLBy{U4)zC9rs zS-WVv#YN+KFl#FQo7@-wWuMlDBZ)jFB`qF8abbLh7Mi^@NmOw^@?O5hDM^0^UBTrm z(AlAym_`UkJQbYo2cf=jdKd&Dr_;AVmf^EI68~wXP&NJxBqND;ECPper4$0Rt-^>M zPlL(L);3B`7;#9Nwi=w&z^$+F)XqQ_^Q^_Dkgm5eN)bZsTGVmdzmpe<8q6G5DC>brK$`bK~ZTv2R6myV;j-ohYFb-b7A2#e8@ z;lA3Pe1u@>(;h#LxYVxVV}W)61^dvjhL0b*Il*;y#<%RSlKg}4XRR1rby+4`-4b6P z2YQ2RQftFv9DCDN=5~YsP%Ch&;KPO7mD(-TbQQ0Qi%jl3N{29LT>FX;;W!OW^+A)C zNp*E5)|GRdZ`Qs8-;P}Z-F~aJ9H9Z8;h2@A-3=QsTyR5g3?@EJfz1Ew(oJIRwV0-` zWw3rrF4-7EA;*2lPv=?ryg(ZO+?&B>!|rg}$*tdMzkVYY`QK3n5tv;u?Ib0bv?Wlr zBRZ^yV495D>a+@F)f!gg2dLM(Q$+BIN`IpKO*XzCJo;@-QK2Cnl~S}E!h*Aim{ zG3EqgXEwqa|Islsb0#6oAxy z3x4x-sw^-=U+pCR>xha0?Wp+Emu{~XVhz)pz!0f;j4$LO52QNLTu-B0Wx>@HoaI$W zX_Iz&2i3h68hA^BWP`dt;`=78uS;E8S>WTM>gTu`B75oDr34Wc&Mk^Rt#XH-e(OS|d-ldUEY9y`) zpoJ{MShGyv*$zQKknxg0!s$L-_ArOh{Py zv>TuU(Wg;@jRvk0ut?Xw!d0$5XvU825UyFRH7*f^c^Xk1=8j_M6Sy9@k4(d3y z9UVs-bUaVXSENhFfzVOg0Vn-${*e>fr=P(>Y$F!aHp1;F8~1~I3-J=F(Jhb<_-@0n zg}AJv3QULOb~?UHcAP3ZZhNsVM+iLE6_HNQ!du!}1hGRtdi6i;s<;-#9DpEFo z2IsW3I)_0mq!Tt`hytHmPJ`1S9fRA~@$^wKV(EUs=M#`e?|~t5{Y$J2;7(5g_jMQd zE#kJblAE|`#_f?zs00K|i|(j7$xx)7tcW(4vy{v+yA%%*=EM{Chfj4Q{}ihW-|I<5 zuRvOO21gbwB3Fv&1c~V6!ln*IryPp3V@@uLDTDIP8=Q{5-P@-iK0B_0TRqbp_eLnu z_Q8DZdFb6CE#EoPu9nZEn6zB!sU`LQGaS^)mqM{Y6sYB5zr;GK-;nn8V<^^FrN`_D z|H)7E@c)JRf#&ZE_DrL>;*`doyOAh*tV`hxsjz$B zR1fd9wQo91PJ#M-mx6uMCTQLvr4N1FuF{)OtSh~FJe0lz3^9}3k2yhCrPbakq@!BJ zx35(QiYYhgTLTeH@`v0h@oAQJ$QcNz=MI?-8H3yURz&4Q&aW z_CNYaOm7cCHtn9OXz4fZp6Di_3Mq z#=RzQ4akB!;eCC5E`gFA@?u?6yIw3ou|EIZPP@&CV95Co(;DVKErI4g7k4~yF{fRy zYS+M%p7S_mhF#kU4`@%pqz;*J@Zas4@f3>5j1nmPeKHhY0fsPRE#IIdE+B5Hi(4hQ z-`T*u+Qq$2a33IUs*9T|xIYtjsEd0!apgiFEWI7E@>~Z5e+PwtF9Wz|f!)A^@JNT8 zvHjh4o$(-w^;MuZnSB!&!Wjsxk`4Q!s;NKb_4X(iN}hE)z`2an2TzZosSUL zxEnZ$SpSdC5DIjKxM#$cB~5&)^S@dCR=`dL$~ETMmlVH z?s9OCxVRc|UAB<^gSq~a>AHiSq|Jd}^;OaiTRIe^c~GDoGwdkVN76=8_#&6WmkNb1 zTn{VYTF;qGtOlFm677B{-ywy!9&T6R`%z5k{267v$0GG#xXN>S5^8m$KpGaQUx7QM zVOaYb{(4Ag*jsGh_@%OIA`&Z7Sw~g42Ys{?)iS99J*wt%lHvN4#;;x5j8J*TF-a7B z4Fk1zkq8}f)5(MF>i8~-^%ZGYA~NqeFvMi=FDxGzKpA7fz2C*9ose#fRP+S==oxZZ z(3e6aR-_2NA}JlUrce9UDAJl_=)IZr{^Edc%_$6Xa2avmaB)8s+%03kec8p`M_gTR zSJEWG2CNukVN{1Aat-=1WDUNow{3GT7TQ=8r^SDRpad>|+gDL0;CUoPvVgcdYEMve_jJm$KU~$ zS@bANK0V4Z`?OZX-70?MAfEP^i`>PpJsf-KX%>2vEQy)K zzomktNs~2(E_dUrRxEw|Ih#jFvS@ZMiqH(UX)9&ROuc31^V)~t=}(4ihdumPP6v5g zdKkJt`cJOixsgnzr$d&b`lQ-b{Mjgc|24r;^9?>Ss8d;wg~^ zsE}M+!-c?~c)aq@ZnlG|ofK2$@1bLmQ2v+Eu)SesV)<@CZnRg$HA-m_7|S2UL10hXxM#GdQ4qKlzb8OJ;MS&3I|zor2u!`p)?8h9)TM%wWBjr8}MR9d@=7fz^MGoKtTD#6{_ z4EO*s=B4S?2Q2B;f2nD86~3m*=XT&35?NDQ4k7rCax?#q(pI+!&+B}b>Nue-0N++O z4v!%Um!~?MC~+KgSYk921;!FXHBB0COcwGoYB~%}QA{n5AXuVhb)!i%-Y-hI4rEVV zMJGHC#2w6UyBGO*OTcK7odVO^1keFIc8SS_I56gl`}q4P}y-S+}HcBk23) zRL6O8FXjk}$s;I&^j~Q7phUzZ9l4ZdI;F*>AmrE|0&y5W=c~_JZY;tNL7%{a zYcH_ej-MsB9K!-Ub0n5p`!0Q1p3b*WiFXipn2Vb%xGxen%EcWlxc?!puZtTFu4^EB z27d$hygrU)@G0;Kq-6DZ-@uyXFo32Or@cl0u}uMf(nl#oLWPr&uX;XB;vy|Eu3UmR z4EX(&U)q-_{QgC*%zds*Osl(*GI4y}l970RSZZ`u%nu^pwWq<|G1Z-cP8es*z&B9d zkqmV1Y%c@fLMfjWu-Tvt{2mw?cmz3z)ccU9p1C_xk2d@9jW{`m6OeB}E=WXwB%&Ym zcTWfIX(kwanioiB`}4wg|8mU>n=Y6aZiW~!FNC$47pAz=k>-UBkm6-tSb-w1^Fky# zz`Wp(d4YaCB+^04K@($ChND(TqLTA^dr=vQQi@7nJVQ=VnF5Tc$hleWQYb1-dQ>Q2 zGB|BUr5tf>YkIf^eDBl4Oe*y{J)GjDuEkcxTpeqe9$LjC7`45`;|$F68V?8BT^Nsj z+<)%1^KsPbNIdp!Z!aECpp@eA6w;C6aR4~JakmZm;j`01@sRuPtjbey7tYUN7#62@ zv>kwR;Cm0iXH@Dn03~ojtNA(05CEvfwY?ugXp^%;KDdnu+e{;5DfnI@G6zLoBk~&x z5s@&A5b8pXka*t9jjmoaD;UNhqd?n^gvh$By%3pEN+IeYwl`WoV1y|3f)M4l8KQ0o zQ6{3=))<)vzV{GaMx|au^cF95jSgE}uyLc}Mk?cjg6%1pDW};a~LUila_Cl10Qapa=`qlJ}c&&~$8ccD^VFE3Llu*t^ zXK{u#RB_V#Dt2JdDbCqA!ww>PD6RjlHsQ3S)+J6PZu6_UBt>wS68ET!djeB7>TW0Q zei!#caA`=N1_xIq5pw&*uL3WBjg~UkZv`>|F}b#N6*vM#uB$*?@)<4xwZl|);nknX z%|^e2p+ogSi}pQCla+D#7Xhw*MM0N;w^AF|zC&Qb`_d00+v_dXKFHtyFMoH!M=LR`IO_?J2x1S}F$QF2uy` zfA?16Ao%plbdovo!b=Rh`x0Y4YRXHDh6}b5m%wAT+U^*VVfft!U1EfrD)}WwtEFoy zq<9&HV^HLE6uyf>j6xNo5I@<|CrTAuW1uwPjs!}5xxGN0c!>w95?7|JZvQt8M%Z3Q zu?X8+w4&A}mJ#;}7xz_g5lpx5-$ap2L3uszaV_5kL3i)|v?xIDQ|EbT?tSX4r?zch z%hS~dUCvXQZHExoC4jt^$EMy)7l03Q*XY*(PO;-oGySNIfNb7~uHglnE(EAev1}u+ z;^i*g2Mto{Dn=^$4IItJ>$!IzeNm$$VYI#2UKpcMsz17X1zu;SnZXc&3&A?;5u%Gw z)J}+s5J5wTZUXckqHCzs>*{urmwK#j`t2495q`_ULlll`-a>Sao83l;?$H}v7@~u+ zjc15vp@9gIo*IwvdhQV2h8i6S(IYRk7osYZ(hh`PgyRv9`%%zNJdSMfhzGqV(R)1J zqEfH%mQI~9m)*1zuZH{1leAO%qZE$GagOgig?I7HX7sg-0}DkxFhjk z&$kzk=I6wap{MU=#A3+&8w@dIzM!?TF0nUpx4XD+fa?*s&r#G);QAo0hJh3Z=sj>D zRO&Tw8+obMfuuX|9T@B_a4&Lav@wwEknJUKx5_r2f$NS2o&#wLujdZjNYv;^;HGSD zFL0NlRG;hK8h{XmgCPPp0Ba>p`l%!UKhbZZA6eIpd=>8}*}ej^&CeTk?kF z{T*}{=s8e&8Odd1=JVxH_*k2q-x) z6qFno21*X>21*VL2PFq~2PFqafRY0vLCJwVK*@nULCJwppya?_pya^bpya?lpyWU+ zD7{sP?vRiJ`+<@Jqe01mF`(qY{-ET*0ifi-i$KYNv7qF@fuQ8TL7?Qoi$TeOgF(rG zLqN%aLqW-bmw+zrk>LBh$6{L(aSEnLx}$A+yqK*At78QX}P5MUV-x~L8;y%iEjiw z4ZIk%6X;E#gFtTvrFyr3l04k6=k!)dZv#yMe<`R9vwhjfYyML z|CWQ&Ta#9RQeNBvx*l{TXc?#j^g7TxK?j4@g5CqV3iLQ=9Vq3`U7&kF?*E#X2gRTY*1-%!v9&`=pGSK@#M}w{foeg?F=n_!+!*O##9{~LW^g+;C(1$?316>cg z2J~T2%CAR2NuNhS$AUJ1(%YvtfF1>X473vTaZm^7M$k(^p8&lN^hwZepihB*2)YUM z80gcWPl7%JO8$Hn^epIRP|EY?K)ZuJ4@&mD07`mn0qqC+A}HxefAEp~`7&rQ=qsRP z->aazLAQdE{jY(NKevIFgKh`i1iAy1{Qo*A)!zw9`Tj4^WYArphe3CPP6urSrSZ52 zbTjB)P>RPsN%u>7fT-4sXEOhZ;#W^nQu8nPe#2??*%rqE{^U-4UsN0cmYCsF`P`KF z2Lrdai#rrt`dMBEIDGyGrJ)grZg$bzZlMC5n?U2G3d1BFF6jtaK2qXQl3prlf~1#8 zI$F{(l8%)$QPRsLy+YC?No|rQOPV5Ss-$U>j+1n}q;^TuC7mGYm6B#iI#JR|l4eSp zCFx|MNh>$UOu-4!sgh2Ubh@P1NIFB(d`V|ZS|I5hQ1~?)glLYWxsqN5+8O+-K`E7I zO8&K=y@2yTDK4{Qd7&(yE9pE*izF>3su}X-sf|2!uySiVaf)xf0+;XmOC-V=UUo_w z4k})g;dp}9EyHUvwEMwvzZ-+nXE|}`Zm52rMk@!0N^aqawb+N3ZZqRZI&;WW;q%N( zp*S&Dbej8Y^$D}%y**CznZ4$ppRF*@eYWZ=Q-$f79VI|AWksv z;rQ;_P*_(3AT}e~8|aaCJG4zr>y5J5$Mvz0z;`)`r+R@K;^Ow>+*e|<9}N63YhLC)^}Wa%7u z!DTyLrfOy2?7&ncUZ6rY&jN>N5tp51-cF_Qjk}^j?2b?P)$PyEP>oU4_IYX>ga3#V z!`liYHMGYUq80qPq$qSX9!d)%r#-`s9PSTpyo+lSTtDLWba5}{T({}>G@xzmtx2hY zuPuzy_Mt<1bxSEvibHrWsdkLBUJ)#r7s4+Cpb`1S7bA@>U`XRK_=Z9nT}6GFY$8FQ_!8C(a8M@0P@rE%B=gjbAHqA2Ic7%kKd0{ zT`Rmt-&wEVb@{UKJ@4gEd?Vjx>0`0a-;BlhH}Eo->UUcp_#E%-J9<@D9yBErrwN%_ zAJE+o;`;*rxY8kw^o3l5-o*0U0$k&gS7Jy*dZ_Vdc?bzOeiBS)$lKXTC~2vx|a^nxrdj&cE{Szql)+6 zJ}lCs2$ki_eDM_9LG6gJhtlF5E(b4`^hk^Q(U1&Y3iDhBuSN%2Kt~N8Oggoh7Qbmh zC?kV!#pMLOxHb-0H~2$3_b~XhJDAhB?WeSs^}^sAsT10o9n=QHR=4d3w9jBLOe5Rh z<0ADGI3ZKuA;^e-Uq=2BQCnLCDK1Ai(6MF#r$dpCCSBWf#3`*a%9b})&ZZ6G#iUQ8 z^E?gpy2Sgi&}l~=(x+RRiNVbz?p_!7eZi$meQmRgOFIqJeVe#z!F9gNm%zl+)Ofk8 z+I^zhE5u#s;w}~3MZ~?z#Vr=x1mdQ+xH;gu-VaOfM#uZ+`RmbZdp+OFO0SxK?Lpjz z;;)*24rk(3^BD#GT(6qHpL6L|^R~MAF{TN1mSgUB%~zkrZfOuwL@Slm>;)$wt#0s1 zjC4#s77Z_*N1gX*3dnGY%BYRev_wEYVIV#5x-M-90&H^}gig`CVwPGv=1g+5HL&Jo zYR$kTMP~(RK0=U+U#>(AC_I-@ds-F)q=_7QM;!N>fKV28Bt zfNW<{V^~r}2)fz^C`+D0bkTvMP}Lq2BCxWoqjH}jd>gjF^k}0uT5buiq4uCN@=hg`YYR9DM!LbiKpnWab=>;EAFk(I;ZS8yh^2w+j(WD)q z(zmDeG{#5 zixvOAiT)tD)2$h4lg8)TttqyQ6ze!!dd8IOG-Z6+q_k{XZkiQ;(w8%ptSQMH2}+oY?&OR-JLvdONY zIBZX6~3o9$K@CRY>=gsNw_QIl+%XfdjC^6o{gH}ow%4t<<)&v&(tD!( zyg)zkcYr+|wkUsorDt#RE6L9O^D8gtudVj24D|4?tlyr3NJn@4gauR6vU7AxhGGbk zHp95HVNe_OdDdDdO_|7T*IUq~P}}u0r{p5dFK8gTXhVKRX3CY;-1LcJIOy{GbN7%w z9wv*FM5?&0`kSnD>G^+>b76Lhs0ppOpZnxK2MvJ;`UwZe#Y4{upWUs30vCizpIA@HzPg8 zy#V7u;jFwAds@nskig@Yo0(}Hmp09so|`r?M_1BdpImSMaj12D|F&JLh_%H; zu2racMzvR8r0|6SbZ;8m@$+uqh3$ihzL7qErxC(9w zZN=>G{7tcQOW@)AXa4pw3AWK+M&>l0+PET3#`c-t*J;b&RFB5P-_^6@p3nsX+vu0q zYb_9$Fv4s6qW6M(J9NFr%lW*LBd%JFH-AtrFE#YrK)9QdIet>Q>t=&UP1^-lB~+vR~FtxH;u$4ya=1; z{Tiw_v2uPzae47Pk6LZZyT0(IR<-`79(SGWSdM$0#NBQRHJeNp>m7NGX-Ul&-#Nc; z#A|naef;{w4{sdy>+D-Y;x?=Ky%&GHt6|v_amyY<)wsdFod>P3znf?>nfofZ8}02l z-_r8uC2_tMlVUM-w%9B;?V5Yr@1MQCc}m0V``*2yOK0;#fBt94yRn~Mb$Zz~;b*(A zvyVP{XWQkR+PN_!o2i~u6vR{|1LY$x@^ReZ#u6DIKSevSF^5uc1z}G-(EVR z;JTxC$KF!fy!2@B!3_iZ95;Os`ds$tve=&s2j5VwyGOzI68z(0v~@xr=xk|eQF@v1 ze@lx=Io*lA(NI!smbI@YXgQPDmt8mbp5wjuge%X7)-M}9d&%5CYQI}^%ki<7b^b zK4TJ4Mt8q0%UW9K=gz5jw6rV%{RMPAXs)BBWj|=e@s^e_s6>A^B$p_7beL|=R!ob7 zOg+1HR_no!0S}J=D4VKUTKMxqENC2ym=M_IMzu=0qQ{s)!(;kUJF1h4PveS~mS>4E zo*grpA7{9K&JU6^2cInHF@;=_TkX4|(<)1yPX>#-%j{z|`7?D~7bOEltMFO5vZbZ_ zOq?XMpu5efEaEPoWM-|iB(vC6oop;_g|CezRCgZF8UuYQ(KZ1*8;eDqWEO!o$y^#9 zfrE(8@S(qnv7Y)x*Rg?SwZrueSJnjOsvfyz>Y^bsC^XLZG*pxJ=>!% zkM>uYJe#AX`v|&7oHq?{^XQC3((ye74Tp};x5AP1XT1#NBU<6iRyeN}zPS}%(+WS; z3h!-&k4hXU)KLDExU0mPRh$G!yu=|+=nnzWv2KHvh|-h)uPAz6^pLn=gO#6A9?_wf zTLi=-JmTcn^DPVMtVtH&fe?Na;qf~-FlLQ*`Tz>lhpR!;GK z53mHV=z1qeef?y8y+2HXT>r(gK4u4wbv>FTeu4!o_x~*$tZgb6-dC^(NIFW=agt7zbgra}BwZotT1lUjbgQHXCH+{^nLBCEY6NK}kQB^thyFB=wCJc85zkK+;i?j+1n% zq;n-*B?fTW`&9Vh8jN#{zsNYWLOu9fsj zNw-RRP|}YjJuc}PNqzgv{v{nC=_pCZNjg>1xsooDbcLjAC4ExTt&$#;^kYenOL|69 zUpe1~OFBT(QIf_zW#tNvPe~bVjZH0_U7TNH9WnIMp~HrZ94Jnd!Kh*8wZ!O7x`+ei zve|;R{y*$fSAElTOc18HOBLm5D5N*MNluQ`&}>q_>H}i#{3+%>v!yd$yrG!Y&NmV< z`F_L8I;n&3!&6HqeBp?)P9bP#Ny1X^vm%*JeUa=wcZ{La5KJ^aEBWcocy80j!7C`3 zmVNHzr)h~et>qPFzz067IQN=k9 zPS>Hfr9?$N%fslV)7YcLJ%VmJWqeDg+t7*cM_k_loq!LJW}T}#_o_h~wa;Y$edyGT z)_zoN4S@d#I0;lNpU0!vx&WLmcB~aaofgx}Dbzh+ceY{dr6Y^l zG@4Me=t}*?fPxgu3nYK;mk{f#W4Dwg4d_u3gI1>>pruF+3Z zuS1X+T?bCXDfK!&2xt(GVRVu@p(oJA4;8!HO;f8=beh$g(34*gER9OKc8;~zy5ZjKH0kch_;|Mkw#s?Hg7{xAy+XLoE zXl0gIz(UzJ7M;(Ah5_&PhARUeGtm#B1M~70D*+q%Id#4asTuHuguW;(Py(Jbjo|L= z%JyN|4|qyKhSGc`V3UagZjKI8{HWR%2<6^0qr0sDLBVNQb5+*&C_u=65JnbF+K0T0 zD6$xelw#>;#d-hNP@}WTuJE^@!RJU3W;={ha`&?SK*^;XS(MH}Y+NE$3WiIWT{uHg z>!X3v1+u8g=$1{OUMcC&WD-3SE97Q*$mQe294(t^ZTE6HtPd1Vy}%OU54+)dn>WOPXXIGh%c zF(Id@o9jps#gD|(!~Q&AJ(VtMH$|yp!=D68U5crZjT8zf>Uz{F%6S)`|kGV*(^oLslhfxk$ z`lBdt1fLRKhf0A7$>93YU=8$@+6E|Hen*A+prJp4rQU;q9u!xIYLqRLVQ$dK6&$JR zW}250pW-M;4W*iwlRf6>2z3+Y{Gg;#j-u3$;PfEdEgV_Z&7eUk!pa!+ER+mN6FtPL zQJA!XCcMOJ#;GGQuLMmx%~66{7Xy^_7e`6z2e2jRnn%UdpngG8W(YK0P3{XcQ=lSs zDqW`Poq}~heeq)a%BMg5-B>dB0ZgyK0|ZjlW&|fV zR-hmila>-ZP@o8SJrr%aJdKD&g!H_NL|uO=B@nSmRDaC&A-$;&3>vin<2|I0@Ia6{ zh-zA$u*V!7rgUk6WNT>Qmn7toUikIZJYC3sLPffe=P*J-WhMuyk6^@xUMEC`sZV2s zgkCRdMkoOr0!gIVbg_yQdIhS7T1-+XdjQc6?PQWt+2zRlP+vLI1+nko*U-+gG9)dH zf`y@W(_E7DH53n>;F7d+DBzVYN$W9YLo;+qO2j?L!w6GY_Z?`ep6r1!)$1M}OGW(z zg2Hzf^VfaNU$h+{_e$$WwJu|bE@M6Cbl=fO!s>F7WG1-s5N^m34yvz-~!Y8pIN@Vgc^Ff?!1N?H6%~@F^C*?&fG~@87$+Ii_&pOoW@! zgx4{3BhJ+U22L1pELH<2lsK1QnCq>4g1}*Up`5c7bC)@~AInA*P(i?GrDqD6cb(rv znAEEP_GLvZHQk9zS8iWKm4|&UDC`3?+6QQ~53rSeI>&9Fi{rA-#c|o^;<)V7Id1#F zG1}*X(QHW&vZ~tjCAU6?O`{}RA=5sVU4@|?afgI)Yz+o!#46LrymA855T%GZ3CFU* z)b?%@{aG4wbP~G`^G(ER(_&@cX`cfZ24A5j&FlH}pY?mCo- zlH}n?lo}lg*vgSQ$L&ZL$K^;D$K^;D$K^~l)xEK^TD80_phjQZ}=O^F<4DNz?Ai^I$Pn&7N} zNia35`&*_{$aUelw>>?lL+QDCJB?+Z8UGZCn1t759@aLV!uD&ojxm(aP?in zSA^aV|Ea46D@tVac`+MV(=n1GFA{T;s;W74e3p7?uzycdNaw4ypq&|raO5~-Y z%&uB`0woBPq5g(dC~~yuFH5aQPmyCp*>trRrryZ00?klwMovX03N%Z-l6tsYpgAi2 zZZy&+^ej^Au`EWW2vn+mg&8g~RUka=nzKlW92bkh>JwdMQcJMCj2xc>MSY@Inyl$1 z`ATH&G^DLhbUiMQ;nK+Iw4w5eUT0GCG5tqgCEzBrnu!S@@@jv$*e80MkNPOw9(j$B z+~}jek3C-GwX{3&i9YP3Mq>y>&VB+DzE8B~V@)qBS0XD!ytH?T^_pav7zGPjsV2-Hr`J?#W{oHG=G2Axbrix|YK15TcqbY9Up=vkG&iPxM)fx)Vts zSu2!m@>R{)UPRvIkE?!2_Ei^aKQ){@dBVag*ZZkE!U2CEfza7c zeRVA0NdedUscR_;KhlQKC%VB;ol2#rg!!BN)HHJYFAKS-Eq>}uQu5bI4!8NKH3@*f z3lkds)Vs0qj66rHflu^aKQ)?4{}3kZ^HcXF0{$sV_xq_&P@4TEN)PxkGg+jVQn^Wo z{a68wt4=0l5`?|&$7~pIk)8SafYkD1*(iwg=le~c=nwr^IpHpRJBp0(V~jNIY7${R z=Er^}7X?VH`LSH&cO;Xz*^kk!$;d#yt|Q-2AM<5okV(X{%AdVU6I-yvEB#qbci=FI z>-|{}g}$4_>-a`e$}77g|Q#mN8+vij9$SKX_fdjfA$#-f{XbA zgsI7&-9l6R5Lv$6pJkALhDy8x@@QCGBJ02I&zdPu;$-}@{F`O_m0g*g^7j^r>$|cz znq!toysj&YBK>ZaxS=bvl0R;fcvDwadI|7S+259~Y$eIBlH++>R~9-HxLU?*XIJ(q zjjt6lo{e4EClsGMB;MbZ^`-H(QtErSD|?#!=a9ImD+{B1T_yWJ(v>Zw{JLA_-?6T2 z43^o*)h5PgW34OePvhlYzHRb}ZtlvOuqlsRBk|d;Y%^apB(4fzeX&7}Tr2U)0QMWL z1P_?R(pMkAM$zQ=khEuA0CPqHua|gz02@H@e^~0%5WrrBB9V`nXy@b;y(xfQO#XUQ zmTw7QKT$k4N_(~iu!$7EC#1cN0W65-uP1eX1h7P!xHn0EH3hIsX#RRyj>iuJ*i+Qs zGZKFkz#gIT`m9OJtM{Us893NLFxa)j2)t#(jjSI6JsCJcs;DgkFh1ez;DR@ zk1@7`?0Hk-Zy1{p3;ezwPsXkxeLj%-H#1g3i|7bWxTf@yZaEMeS21 zt`A`mG``a$UKhgNB>#<*xB=}+{& ze7aKN!y)V>`9DMArVuul{54VHBO$Dw^qC~_u@Gjb{LGYC3t`XGdXyz`a|ru|^qDO2 z*$~#5{F^OtRVdp)`IsZ|%1}muj?9&~K9pTX^`}U@E|i_4`FpCw4WaBa(r22)n?l(c z%BSfPZwY0EX5gzN-WJLdX}n)8abqZZxi9cF5+4p_1F8QRX0hHjg|hM3U`Nh0zXr3g zKMiGn(fo9+SzK5ggFMnF&%A->vlhyZ(EK*bEVj$1LsaJ_85EsXgQUT6Lnm){u19-#64 zko3plF!l}Uzh3uG80$v+^+(OC`TTVxj9p6Ot--vHw?7ufR`>vKkXQ?2rzu}HN`0Ec z*pOi0C(TRv^~2dP#%TYvNsmuAwvfu7*5lKSWzu+gM&hP!>_Hmu&q{ox8@rn3_vg%S zb9u+Qu|CxP1!;cM$M95;umkbyWY~dOX5e1m*V;sb5n#J5T=m)cgkb|B-N3 zK;uX8Y2p1H3ujYlzvJ&C@>>gM@stk%J|cgb!&x?s#}HY5Hk|FH{a(1lRo&S$VZad* zuk5b$%)uS?WqyxYardfxkrL74hT}L@@4~dvqpTTONZ+f_a}hntXbqt6Rkk7Jb<|b; z3KS8ke}cUNVZi%R`(*QrzA2jT+Z31>$P_?j~^sB(C}cm$;g5c%RbP8V_+2NpZ`o zrFK!}2wwPdzb_!9%OC_kqR0L8;G-~i-4QIsF7K`L5Gaup_&}d{so!|q;a}l*31oDi zha3DoyL?3A&SK8!*_D=f61NAeo&nEdgGa%*15JA}+D_BgIGvCkJp)Bo5$e?#yFG&h zic(8Zr)MxF4!&zpx5FhpLnv+N_Mr*fo}ofYoVpXq+cS(V;char491JFf9b78hc5N7Um|ILRg`pS_u_?+vAW15MqDbPi5-R-5eYuDOE*WG*=lqVahVTovhc+_yAqy?80|yX zAP5Qj5K~0N7+D&`@`3@!N*KoC5V(j$AG+O$@0ZwpkP(sQW1uKohQM@4r0PR~MU>-=6v=e-t}E>f&LHk&BD z*jy|XJ)YxN9B?E14=Mm2;F_uIQ&nnYmMt5XgFhYsy(GBL^zFb z>s(S_^pyIdr_>icrRp$(HDht_@sep7SHY@8?F&LD_xde@+%6}^qLW@--oUv^n)m7| zMu4J{;=KZ--s*#}z84$Ctq)Q)NbD6TP=s0n-}efVH{O+~J(xnn*Z6%z;vYr>Yw!FX zsKLeeo^2H0yFeFz1;X5Wj`WIpvNKSjKyb=mp%8eVA3cQ@K#z#V^*Ca>3qZK~Q%|RS z>gkkEJ)NRM>6D|oQy9(aJ^o`#x|IG?&=*?IV|M}V2W zP{%hgENviQpjrQx%?c0n2$C>~eFa^51WRaV|HU;@j}U&1Vvf#YLol862sH~2O=nB7 zgX|F|OJ}i3l3s;(J8O-R&}y z5|s`Yg+J)G0Sa}g##SsTiuH!-Y9ay=6&T1T7)8AoeMSWdq^hf+P*m_GyevqaKME*B zltrk;G!=ykWK~0ub|UKQ&cF}*eSww%N%0uC;g1B2M+a;!hE@2Z0ryEUen{l- z2Cg58i46qYAYl;O7YX=Szy@A9g8iFRcwDMrW$Q@qjS^zuhBDws{vUDg0UkxUh7Hfm zhGjyMO-LZb5Fi9t0wkLdSQ3=LQi22!LX)BrLI@CQOhU8JQA7n18y3J`@nA1l&|?AH zQI878cI>@?*vs*|@ArLXcGg2X*Y*A1KNn=?>E(UiGIis}z)VsXv_x*^8%=pO95{z% zv$v`4JVszL7Lu9!nldM}*_kExuclcDnd9;@q$KlA0W$(?Sj=yUY&K3fON{It<#6P< zaX7jQ<0g)}_cF41xeVkUMMn0$;}w>N_raEtbr$L;`vxB;>6Rw*oX$qWQ#)VdIBQlZ z5aEP3V7R48H`3J~Vc|_=zs-vge*5xlJZrHK<97S*y@5!o$Kk%5WYZ5f0;j=LPKvsI z!UoDj738#3mtz>^D8a~>(@wyOz+-6OoNNIn1ga24PL4SU{#zZU z1p48WB?likQ{c?N5>kT_QC;9fM$}cn#y|opDJRdo8;QhoRe@j8p>qn=GmN}R8Yo0H zt{X+b-axlxCaM0Lrk^;@1q7D zCR{G?HZ$-9;h_TGf`t&_VFK?k1MSf^Ie7dCt%}nfGtiQ;jZog>@{Sq!1?87hVRGj6 zb$H4&Iy7Z?_a?M!g-)0AFjHdhqt2Z=JBFRi2p-YNvF+6uuyS^>(%9krb`k{qHp@ai zP{+8`Q%S_KJ`{GLgH1EyN|AsL)hmF>9E@IQ#+``29cp;K>$l06H47#>EHiH)%c(dv z<4!?gbS!?c37$PGfhD`s8@#2N+8TpFr+plJQoqBj)#**nTB!$k_?BXL8l+BdbKFiX zLIresUonI*>~;EpVz9{DF@Bq?`Z%iY^!a@-d)$yRBXeRW$hDeTV`Q{VJOzh#A?CKW zDZJH+LbsD_K+W~K+qOp_h_)?T4AyCZ{4gVP(sZq0wvpKOIG&H$J`8_tGua=hVK};H z+tzxHjI$rWsMj`&b%K6lq}iDbT;HTl%tRI%l;6Y9M41g7UsE?AiJ1)?N>az;G$*rx zYsS?7l<-iA)gfb<4RP=_^(Bl~nGGpCoS_amLn3C1_-%&cw_C%M-{z^3-{u8Hm|xDb z1#NzL)co?O`Q=gb%cJI(N6jyfnqM9@zg*07g$6Tgc$TNltcjXg6E(9YYGzH;%$lf~ zHBmEbqGr~J87|vkW*tv;wV8EMGwY&e)Sb4k?9B~de%M9o|hHFHVS z%q3AXmxviIJYi<@a@UM{4j@%k;O3~A%~3O(qh>Zo&1{aE*&H>qS(!=jL;KobEzio; zDmOUGyUGpD@~(1&v%ITZ2g`4Jaw$eG%enfe#p*lOO8EI@)OfU9}XbJ5ZXP1se z7>k3mIl0HhW%)X+Han(Z78gtwMs&Pb;kVgro$Sm@O+QAgz+z0nnU|>>9-N@#p+EC- z0prNGS)GIg%CM%&ywc@6nPbIO=KX50iVKud>}mm<7{T7a+nE=um3z*g9D_EQWt>|s zgz?NvH2y<)pLvD(E?PLJ0uxi_HOeKp$cs?H-k6*0%xxwI(VYF{y;eO2m-7dPqs;3} zR##32<*rxvw{jAAe1qbL4i3t}&#}z6GjBF|BA)XUeZEB>-v~nHt;!GZ@{&T4ubwqbO(Gn-ihK+B1skTMhW@snuQ%tUoL7<_!- zHsSr|XpUe@KF?xvkrzzYNi*!n*f^~;WZK`;-we5AVZ>1^*m?-063$P;LM_&%{pIl{h-P_Bkj?7?WDU>D7qVI-_fGmI(0Za-7y8(2&R z^LU5?Fyhw{hdv@tf+yU7wAjILccAP8WbGx^vuox}GlKFkTAUF_#$X9W6UIZ)l;9cc zc=mPB7d&%@s%FE!6!T*6tlJc1+h4Q;U`jdTpV?-cJh` zC1P4ck3@6*1URt|{`hTPXY||5xZh^v317nRl;G)ngvov!qj<1EKO1h?OR)wCHtL7s zY_Kysar@B-!36VkA=BZvJqm?&46fW z_K88KE0EzCiS*TPw^v+K55)zXkvIc?;XM8(UY^av6LF|h!N!bQOjkOnA54oC6TM{{ zdzoN5U8R?Cg7X@elkM;2Bq&VJDkcugeiVX-i6DJap?n3dtovJ_QM;>qt)1*(AFCJ~ zfgABBSZdW_$L^Cf88-|j1bZk%;8YICJ+1N3#KE;crc3d;Hr8ANeWI9VoKlvjC;XTlp6HpqcR+U(OQH4vb@q&K58wFc)nXoMY(~LPlT=$CbI_ zO}5H;orK&ma2tuI3z!>diq03T7v4OE+#o>~vUwI-7rEXncD+eP!h=gxLGf%jfiu7v z0w$_Vo#{4Dr|jTT>kU`Qa#zVTHsgwDNEq3JE7c7;UO3o?IWf3ON-o3b6c;?l`W9M} z@i9#!c&<~L%-99iS%^tzY`v>qrD%hrUO9D<;}pZ(C_skF&&86E>_ABZ3~!Rw=@?i+ z@DeeX8+fZFz{>^93%tk}t`IMgu-xEP);F#**SOB`>UMC8>kNCrRa(c*Q)Bz*~JprtZFzXgNybXRN3Y{&br^BswU?h zHttTZF4SokJIryxViseM$BMwu$)iFos?dTT4Jys4#cyzX%y0+-T z``Q`tjE_{cGRntL^BNFY)ERuv;&BqsCaws6Z1HifKoS?{pExZRFc59VHa|^D`*k8wB!aW$UF}`+2bgu*CAYwMfyD>~T7p3>3}A`Oo$XfT>K&V$ zpW5OY&``ycGX`mIHC(+VLyl2qC0KKQL0qjyYmPfnx~;~l%Zx_CLbzO*Tl5l`?B`Lh zxjnf~Lmk?iIspo6$hOnrM{ch=L#-0*WoY@_;xiT0!k&PIXl{w-#I<}ZHgbDwDBIpc zx#KmIYb3m6;~b((URr;cy9tHaC8SA)-2g|r6lln{&m&Z*4W!sJprlK8T`L(z*F6P> zvCXiIuAyDjvjMf!wUCE!JG)_Oq0zPb%YfLR0J|GqiwMSbSiZsnTx4|Z;lOc#dl+4N zI*l2BpJ=Ua zdGrJmtor*;P6|Ur+sW>^=KZBg*EfeO9z~h+! zmkV=t;4zdy-YV-vAC2S&E^Z5OwWZ$8#7lP_1(@eNuc<9m${Fx5;N^2j) z@z9|eXea`Fjhc1TRp|)T>#18^mHv=nUMKRq&A>D0lzBH=<;vd6W}qDghrCj{jER z2N=r3tf>9B0y!Ak@*c51(*9e4yITSNyH$zY!G9|-GXwBbjz3o5CJYUEPdoltfeNHB$G$J{IjSY^4Qs!)?+cv4c;B&D z%&_kZyoV;vdspO_#|7R+UFH2-Hc z00)G=yGdYM4&dfK4i1>fn_$@HxaYT7+bF@uew$71x7l!ho9Xx4OrqcBo7{ez zFHvU=&W5s7ABTlByKQO@1eJO{x^mkzo`a^^sP(oj=$eu61oFNwBl`@n*tcQI&S=j= zj_E(3|77IwD;>NvGXf)ZMh9`vw6ieqWOS5AW;wOdM%*3@IvJhS;bP248QU%cHgi2z znI^vLfqB4hpASru8N@`AQDG&Yh~XlhLZd9sS}>c;ho;6@`i{IEXib;Ksb}#xTCDC2 z@MHlq0&kt#GGXE1i)0mPT_j8IboS#TrcS)t;j z17>!M(d@uyn4mKDD6QIQz8BZo&iLB;35L2fEUYs!zEKZjcAB*e{)X8oR{&dawmr;r5XQGHjShqsF>W0FRV`>5qK8` zn(?JHoDta29N<@q#3`aZ+wp+)9O7rA2T-{ge=3)7YK~^*i_}S%A#Zj@H}zOkU@*%h z&nGoxbS}*3r=FF{X@V&>BjURSIn8+(E8UF#zLrp%b2rO*fR8ni^Kaq@`WQ;i=FT`C zocS!eQnZZz$D#_(@>BKTiZ9XhhW`9?`jycamM2*G852gLTNzN5pT$E?1ZSZC<+su5 zZTlmPZTW4Pb2PAh5OLP&N7eG`PyNuTB9Npq{nw#2dHQJ&LS^O;pbuQY z+K-Ytkg4PP)qWR+mp@2@51RH{1j{tI%e4PQrR5LS;BM27>kIHi4ZdvJpEA}V8r)~v z*E50T8hp>RCo@Y!`7kdQQl|Yn8+RDfR2X@8vna5!7S*WnvbS)M0p@LSWq538vB z5xgXUH_M<3i}3uBytj%M%S`(YtReF&IPzf0Y1zA40h~4s6~z^>eLUT$X;k12%RaXk z!09?UPg(Zq7+mse^*emKExVR=JBy!&!D`F0AIAKhKSw7PFSnmTpXX|?UWr4WJ^|g# zZ?m(-vmeliI!B8$;%Q-Z6pmv@%AcnN_;i`y=96BT{K;i3g08}`6&LpiT0N@(<8u1) zl!t-Bg<$;ELlNH-(5LQM778_eMatWX;{*I{X&!W_YIriTe5ma7l}bsLS&ZY=DGBKN ze!DsT=Bk(6_~JlxY%{X9pa9d?q!cN(68vqc-p$rF^Q)1Hxb#)2eBB~6AqD+Bv>a<` zGqey1wLXHRWF4Q3<1(c>sVUYKDd{89P8bEBrq46dN2c+CJh+rx*H~|)SETKSDGZZF z*5f#zOCOb%0#3ipK_9n5RqOH5XutjWP(;BJ=lk+13NF!ekqp1hYixdd1qg{+kmlm4 znXj-Z=47Mb4b(|ION#IDC}cdOSUI?Lr!3ind3*&1HNQ>i!nn}5FTfl+4-IC94q$LK zLa(D6FEip+!K={3e}I~17i6c7#>bQxQ9*kOwx~4ub`yMXQ z=%whL-LvT++a~VP<^bE@t@w*_n~s5g-T*G@!b8W&qORg3^9jkgRJ3$aw+|?lT~s)c zQuL~*yW>>^Gg(m)37pAN2=&l9GVE=rfTErn%7VruaK&{&GK<0)I4q3ok^3h0p)bK_ zgbuKChnk^jtWbF(JIK?BATCrM&koWGz1Sam0YNtn=g2{wHC&MV|(Qoir38+Ve8D|=J zbG}D^`o-zDpf{iaIz`#`&nVR%11ZFpFH-#{dc2h2@h$#DMo{yz1t{X+S`i|P|xGF&al>Yo1-n; zi0g-Ozvl@vfN6Si&(b%sw_7#?sxO(S?NpJ9Z%e5{#6`DE^h5RFh62{J>xWn>v~AC!QrC>2zw zEUqM1q=;Of_aIj;PSCATYqYE{^aXkwo))MCDqLEkCHifcK)o1wjL;q6GD3f}G>jLF zPzyBui$z^~P$2(_-i+OAMrbB> zuN$F7*u7zd&cSZ45xNw+eMaa8?EYnhE`T3z!cTOIw~Wv)*u8Cp;!_Rd9V2uccJCUY zF4+Cs2=&J9JtMRmz4Uz}^a^I34?siT`OpXrLPdOJgdWAX{jm`$L?8ad2xVho{izX3 zN2PyegvzoE<8veAYhf5)z$J{VU&0q;`70xID~5uvjnL%?>>CVAVENVv-48AMjnI|o z?+1*~Vswb_jL-;_!a;NuwD0#uXbW~fAWM+@(FolJUw$$|51?E8Y=lZs`M(&U|Ddsd zH9|{~)!&TJBbY#bM_$ql;}0X059|LiLVsfSClZ3ea=95whWH9IbT&HLN;8xJfmLSc z8?dZ4LvJHzYs}DojA!SVp*?`kHA5p%HEYe#KYJO*d1mMf?ADo~(;$An8M+p`3(Sxo zPF!e)wjpQh&CnLdJY|JlNkyipO=`ST6BX;&CoM& z_cAlo5&iaZGxR0e;Ro{^^Im|BAV(ZGjt28?q)M&qX*mq zIb`=%#E0s<%?#a_Z5X$kA%1xB4m0#3vb)_3eTCAv(+urH2l|^CdI8SwFhlQRcNcPo z-Q8x$LXz(>LoKko*9;Y=7{+~OC_B+$+}r zvS~_jr&{XZa8?}D1Eyi8psk8KJ2OmN1$uRH?jZ6{D9*o+{G3~gLypZd6j*VA=GQih z3&o}#Mtv4{rxAV&H?9tYOL0*nb*(MwGGvnID(ULzq9-NY^iWu$2G){1J+Mx&TObc5 zGCiMa$D!MngtXNu_Cb_ONdXmF9cJ2H(a{4j7IEb?q@ofA})QCkm%v^^e#$p%aES^9?3HN@=TB{f@ z!QbxY8l=i>Yeq2EaQjmBJT_aOf;sj(^is1ems=+R*P~~zHh|ml)5gAyw=50+O9XcP z133eKFLSK#pgFFWIf`VX_(P$83wkeeoOwLFHqVAp>+2>apUUIL*JrqG#((phQ{m)K z7)8LrcLsg|@_1aQ1IUx*B6xDbpCs>ZGM@ZqpN2XDd@l515c}Y!GeDjTyaTY5cY=k? zUz6^ehoMvG=$RM`V6T)>TE8@5nAd`-bTsP1yuS$_%i_0e`eDd1EHZAv2yZ^xgid}6 zLge45K5hvw1Nhtn7?ElZ6j|m4)_Z{PHUT<9!!W2t2CaqoJIXBVWsWwBjL2DhkMX|Gmj$^o9;A})`9HErdkM2ZVGTv4!~aQ9xnpy$%`81kS{QVK=$;3n-GmT zhW-318_btrXg0@E6<>iL$Z^P=#c_!D_XiFn^E~#h6##pVM&B|oqPM<{FEY=?2DU4k4z9Hvp zy+-&p5BWET{ETBba<7oDgiprc33*!VRoVYMMMpS^5q`-C7YpT5+1G%B5uT#_+#uLP zMYuy~j_$1@IYmi6dw9w4bPw$@Na+YKF!UBVUC0a}e7%SF3y1ebH{9(WUZWrA#s^h8 z#N`aJJ-X@O2nJ_vr^$W@I2hszc$n8)eE*2W!=Hj+eB+t>wIlN@J$V0mpQYysH z+z?A0#SC$-hxbK?*A20Ffrl4rFg_!uibCa(F-7*NQxWwN!@P{AyyFpdWSmg$h6$tJ zMfj64O~?H*d4>?J$F2AExV3B1;G0Uc);7KMzH_zCwSg;PxTt;nM{84#0ZF zJl3~y*CKb~#OyhNQ|Lsq&U%^RL*P6Zo$;xu;XXwt*lakkP0iW$Sxevj>iYzf$o z+qk>VZxo;OS3gTOL?c(ca4-S~pQzEL^eY{F5~UR0C8ox{Vi*UsspPYlL3@vm8;zW1 zh5jtG&RDa=2)`zrr-QRK^st{SV;o2+8}Kar)#?4Wa9#n<9>R$p75-H4cL6`l)nJ5k zinX`&VV1_nVO~~-i;ZwEA=B_BuGpar_ZLnYz9VY5xLoiwtldU8`$fE|#u|{@d+Cs1~(f!Q#JNm2)FpsQth+r z)D@0VqaPo$3fF3ppb}Zs5##%NK$pJAb!mx8+f_ggUMAz8GtkeP38t5ugQ=^@Gd406 zUn@+%p{?Lr!dZsyZ`+z=p?Z89KjX;YYt{+|BKss;9bbhL-wIF)U_CU08{=Q3x#&BE zJp5=PH}c%8d8pBd3>QKpx#kIQIe<46*EnA@JYy3+MG~%>s&A!i^b zs)7D+Rtv>vd&r9Pr9(n)?w5h;JK4Vnd6v`wRZ>G8^4CHxjo`o>XmWMhr4xMSPt;!V>y+DBSJqN#s+ITCo43TJ659Iiun=(x6h#lD(H_f zm|q6xHmr}{+jDj0jaH^Bk%*xVOMhW0^=Bbdr>QDj4TjRD&|y}o%)Q9W@%;jB);|s7 z8S$qaD_ucn0{yv0tASknv=ydJXV&7_nU-GboVpxj6Vh%FG-w8(v z?2Hi(&*XtqjWdjJBF_`CoeZWkG!qGIKRX+W)LH?d@Jsc*?M6_BWoQ&?- z7|s)w>uZhhP!G!&F)TwA%N^(_!g4vZq|b5MNmmtl8jy?$+PBEr!mIir-vQzFcL-K% zK~)2uH4mpuo^4NP-eB0-9qsI3k(zf6v}fdHk^dg@;g1DiEEkFwx*4$i`CW)i$&MJJ zYNN9u-&`t%@-KNY$W=mOmWy8&fLTTt zI(&xD`mYS*)C^~L+@6sB{g7d8gORA z?NZslEuODa+HX+NIka1a$EefMU7&a}av?tW8KLnEh}#74(94b5%a4T2=u1J0jouQW z|Bk-j6w5G%pRVm~R=WDY-jHoT_rb~Ml?qi4RQPdGLK8Q|m~ayj-sds&l!r$pBbpu9_ITA#bXQ}DfnAt|CQ)?M$zYVLBf^@iQ&HT7iW#)%Y^#hZ8G?A zA^joyq4nDKOGj`P!AFL`$B4ml_IykjXLrat@n42-VPu|^+wzLI1%+~m&l(M(mvTwg$hRA zL21ubkvp`nglDCA&`BbX$9j$1sj`1l=v}pkodwOvACK{nk(UY8>zj`NBt z$a`wNTRnQ)fOM$HA320}i9CYooLjBzPlXCbK0#?8-W8<54()8=IZHg4B#~b!_=B?F zCpsz>ouAJNKP4na|7eVtjQ)M09wPc?nC-X?k$o>L$vMu<(9w4iH1)Oy=}^%R5FW2~ ziGC1f8*Z1&e!XZvTWg;xXllpjTRqz8^>U$l_3Ae3w;$6(-XfjJHA>gZ%);M2`u6-q zpR?ZJ1jvnAKlSh^kHbHCG$g=4G~Va{pM>uF%WX9jF{fAPsGA6y zQP=*(hEd!>sE3F;+lNP~7wf3EDP6pw7@qFY_xNA*IZ-e3Xnn`Sqocmkqrrp$PgL%- zw!@>rLytzi2m>v*=VX5d6fx?1bkvs$no;9-Ph)Ht#rFvH5K&hk>Wn2i>YYm0Oh)~q zN8f#a(dR^++@M{e)_;0P`#6R#G~PmQ5RyU;kHWlb?}r?zoercA!ynd z2a-nzDtwMm4-xfpL>)LoNBxGw;%iUl%-2TJ=djW!Y2hY$I%N z_{B!fKfRp#1l+fA2d=e@HhUW3X2LlZ9;ctF1I8to5<$-ax~E2~^JARBcf`rIP}%qs zVyT_jSoSC*GE#VWPbEA>fb*g5yjX!C1u$HNX9~});JMc2F~SXke**Z21b-Gz9?urM zx`KGI!vt#|YbKo!bweV2pOD#paS%qc#{1Tuuajg%_$5Sc>V8FMlp{CZujs3Ik8p** zLYS$z)=_L%uc?P{gv#P7h{2UxNUJKi*@xF~0IM>25gv#qvk2zE} zw7xvmO~|}F^|7neF+93SVv}EojY4w@8!PG$VPi!N68yiA+m<-7WS?MLR0#e6@cDvo z0G&~!IMZcL95cq6d>?A zF2J}touXG~+8u?3HT$7)jg(nI=S*a3)Syb>vjrTPip_M_BSfN%Z{{coMl@SXIHjEdUGdZ%Xb61^1OOGsVw( zjQ=EfUNikz@U*8dnX1RbCDFfYDiR&$bNSp(LnJMh=_D|cEWxw+^90YbxJmGA{$Uy) z?|V=pG{U=uOy8h^i?XGYaUY6`V^wsT~z2M8|}fQ7MLB$cMfa z{*T9nTFryE48o!AhT7=Dxv`>MjPO9A(uW6)mWbC;E8D?e^E4|A7gpXarE))`P>*$(n^&fx}qLt2AUCd z(`aYfTW5sFi4fapY%KMBD&|THQufUhs`4ZY&}7#AH$60}P6NdhqP3pI~qjm_&c>km>u+u9M+A1x??R*Qx^G4ftJxR=ykk zqODf0c@FP;mWO$%Vm^A2gv&&T&Ryzy5uPk)I(LVQj#LX;Id{Fs-X}+M?r{%uYqUC- zyGKpz%Ob?Y9H8=}Rz=~DM2ljki;koUTKPU&02ak{n&(xgeNRG}bNE9+KP+hGy`zhcJT7SE`=0{P_sN>)@V>Y1 zZ>WvTn-udg==-!KP)Av2Dli?|Xrtj~$=t!NQmG3(QpgWm3ZHxA- zLv+R$Jj^2%^D+4TjtJ5Bd0Hsmx7+bOVhzywP~Hp>fZp74G;bz*nBO^8Z{~{-z4_ho z#@MKRFv8n}+yF;w7e!AcpY#gRutdW}Fq0LL;jPU6mRauIp z170Y274ZE6FyNCF(-CIOS3S(Z@J@rxCkVjcn`2@;Vz*!9VIHiQj}W|=3tuBb9FtDd7C4^XCuojIjV?O! zu%K04{pPWE=h2+Y931UPA0Df7Jw=Gl{pxxV9xiA)*Zd;g`;ocHf>zFL_1GJxc@E#p zAM-FTSIozdxqpZd%Vw(mhG;$nW7mZQ)mh%vRf> z$ZCrILeLEDSr;AoUC=7D(ji(0Lo;FTh@qY8VeX}vk0G?xB1Gp-(iWKaYXnW_rn%_I zb%IvTedw{b$lN_5#G=@sh2nh`@KSBzH-t>zZ*rXseX+#+b@JHM5|jTL*3<~h9Y z_OK}PXWEU!FNmEH`Zy7y?@cdN0ptA8@jcR4$jX~#9s~Uq?-8c@Egt5DTJh1nc}j$s zstdIR_MdkI%~ajsq9Y#&S~=HYcr^NVkLKI}4|CdO$JoqcM2M*>(n9gR5>%Ah!nGdq zD2HsgAL^RyjkLFDu z4|B6Cj?(OSwplHi#)*&${xXk-K}y3Bg1^thyyO_oh2Ih(*2zWM0=vLLL9_m0QjQq6Pt zBL3aOe9y5u*ReuJMCYD!y$F{In$ErNq9X$Yt(;pW0F%-BN+#n7&3c`Oxk51?p@&Ho zg&!3mIyXaGV6(mr`gWsWr;(a?VGxQez-9!F|L*{j8wS_y5m!miE{KGazsH&`wpjl;q zxadfKL95VK3cxBWzE+7IzRIrkFwarUN0=KWli|BXh@qXYh4A>08`^FU`8J1K=aN4X zGCR-{+CPpBzYCh7?Q_u)dxB1c3awlKhL(EWQ9_&PVLnkYA46zMM2MkH*Fw0~ak(@` z_-Y~3_p`MF^qt>j;zr*uanX^71g(7kRRH?_lIA&lvm7^3D@CtfhtI_a9_Bla)wzQr#3FlM3&s1guh6a; z;rLVZ5y@XTA{7+^=&(+v_1e?U3JdL;Ko8{>UL;;gBOOPSuG~v5XUdv9!JEC}TmRhk1-* zK89GfiV$x|%od@Ac(mbh!Sm6Eb2Z+5wBa+M@zI9un&#WM?XQnE{3=|07UV_E74s}e z!f86t(_#60uZ5VmmBZ=6#y>l3T{b|d zeDrXNNZA#bc(7#VTCo800V2$+3*z6-A+dpL4pI1t}ZA@Z@W6Jv;cD;i(8 z;1e!Y9t|}fCiO6Mc%g^7Du%iY{$1iRaD#_B+POcs!z2Erhe1DSy-TR7x{XR5E35l= z#d?JGNm~zdk6Tq@B&CkfAs@IX7BQB|FfGQWj?@ZXCEa-=mq|a%Wnxw6N21S0;BScl zdA7yy=;wj#(Mar+XyZNR;X&-9jmYUjRk7bC0Av4Iu{vQK;_mi8Jj?~R9dqoTi5O!) zQH!bAbE^!sso0&jY8lsJmnk-O=j~YXTph!sUp%wN7~vm8DS39q@?c?y42(4*O{QwY zDg$K#Fay6Tfg@y~+QZ!a_G8XKgNQK$-k}l@@2hjki>5{W z>#NBKlrivOTx9=bBXX|rsO�JFbX2^=B&AA6YprnMhS-*aBEW%i$SoiZZDHQHH~ zediroX7*>7DK`7gyRhWR+OC3kqEoL%+2f3G()4HsBC$L=1CxwM8{ttII86X%;0z^j zgbbYNVZKXiKb8zQuh}vKdt9fC$cv&*Wx#olmeKv{GR0=Vc_)@UZSOpE2CkVA&A@N44kC|j*x+bnNj9@wDx1kKx+|W2A+4FG9n`cuQK4gPs`|jcbQ@{ zutx;Q)9!EH45;y!&%!vb&yr<842$Zd{5nTLt&V~$HL)zr5w%1-ENf#~_`L*ZiBt%S z%Hl-=FpEzr{v%}ZP7m`hTKTbL@i7r&7Mt&If;S=u1h2B_yql}ScbQ_dIA@k8{umxN zi_WXKRI@gQMQ5?h2*2vla(gU`lf@4`EHA~fs4SKlk%Pjbve;vGw7l%Q7~v7JILgD^ zPch>gS^BF~veZB1T41_}ae$tz#c)c0r8bNq)9v7-A zi9ZEk$7+4gQA(oC+-UubR?Np#5+M;|Nt~|5;(fVSIVIt|IL>A{Pm@)%tQ0ZTEY6$Z zY?g;zrr3Vxyx~orcVl>D{eT&4!aQx3Jl4IQ=5^-q2}We5@TdgcA^;QAM+qFE&phK{ zZqV9~rO$jUVocD*S`3RCH$lI7$agv9nJzhfz7C1`+oQ=Ue__F^{5kKZGwxqqrr7-5 zECS?dd!IKq(badmx@i8&ygW_LHkKMWY8ix=Jqv_QrEtCgOyM#mbA%LL=wZHJ8#tB} zZV@r2@O3SQVaLtULqcYbzINTlC)fn9a^$?tuHwJn8-Mf+W$5YA_y@%BNRCF~ljth^RoGOHQtP!|=IDAQbA%ifdYIqT29701cZk3`SRLXYnaZ54p{QDtz2EbjenuW@HM(nymU-d%>#|I&aD|J=0yL*uJ(&1jw^4 zhDTC}v%Q1`(G=e0ZKfGPY^$s8etOFYau52;{}C57umj4AA|#qh+I zo1?3R%p6VBWacRRl;C--YO%)SWu3E_7yBF|{0|}X)vSv=Vs9?gSs42UibC)}g})U% zzd8G?!Xwfh_^2Faxoji+r;zzZ*S|etX^XTvzU}n8i-!}u?9+O2)K-g!b@9_yq2Ot& zhr+|w%dRba20?AqS>cL_&RP#~?q7*Zgvea25h8Q7!h^rY6~bGgXKG8#;UgN4pwCn} zJlP135HfT4nuzhb%0$648DDwK%n>|WGGV7w`xS0WuJn+*I^@Ocv8ATZWKJtKjGou?!o`d z!~cNb*+=(lyooO*?h!P5V%j6R&DB}GTJTx?QsP@4mR>O|xWb5X! z5Hcg4Dr7qIjNsXumTNo(Bu{S$mCbsEN9sMnv-$p}@#cy60HvUrzE@p#)%TpXiCY%U z@b@t+Y(BP4qHxgD#K)W(Fv8r9u$2zT{}Uf|+cuyzNP zT&VBk;n@+((^2uc7icunX@sjh_!|Vj6!^J<=Z&*n8qd*M zy{vVH(D<73K9S*qV2$9}Ci?|{Hgr8B_|p+V#*->~rOS%{lO?9#;YWgB5kB4{E7W{y zX#JPqUxDvK1P|XM?>qd!hYtwA;ki*W`I=pc&wldSF&3oi?d!A zPbu|7GwPgG-k3#lGle@J+^@RaM!2)!xjgyS#p`rM@`R{Xk8=g!>aok;nF|!*;XY=6 zo`-p|VwUg5$6g*{u|;3#-7G?^mxZnnCUe2FMK9KPw?!Wi8e8aL5ACll^rY~ygOzVm^jOeq4mu$fvkMM)-Nbvym5RyxYk9Vgole@>UP+uZ{ef z@Uf8}5Z%oAevi$62%e4nv*0g9zCIN^hZcLaw#Sxj@{DSHX;}_1X+mYowh=0=bP@b^ zXdC9@qbv$ z5xHI)+aY&|5ZkKhvpNsVz$1cZTXoQQx2;|h8ry1^hxXUD;@2m*v8}2_H?#P@$L5)W zXIp(Pc(&Ch!LzNt7yQ3~zg_V3F>a04&ozxG8HcZ~FBUUq_ z^iCP^rN0#k_W^Jh#c-?M$*K2vVPP{5byWV=H9JS^q4HS{`4yMk+Cx6iA=_IV+uc3nTO9IxuI&>&hh)Sz9fKd!goyfCR{jR@lu7up)@}UroM2mMuH!r~KYPxf`%+S%p8!XDd*FP) z{CTf#Sa=xerV-D_=q5P~J}4ZAG7SkrsJ) zOzW)|oFCas_Vb&V{6R_eBYVmIKu^4S2vGmXUaEgQ#NQ57K?_1$^h~SV#${36Q)Gk3T)n+T+P87G3=9yfz-rNRbyP^#I{f0vtRQKYyTf zjKjBMjL0b-rpRm$5MClc5v;}`I@hYb)X-n*HzI4j0-FRF1%WQEfDw7x!xZ`03w$lW zd`KAm_9KmJn8q#5k)~`ve}Zr*)3n7abBhNsBIkLN#_z*$Q|Y|b3;gO4Dt7ARFF*G8 z+d3`H(psJY4?6qJ6e+1C=V{tJxMNQKhf`XeRcTEsl+x;~N^289U0PkerPWoH)(ar2 z((0;8>sx@jv^05ScfjiR8#R3!;Ih+t!ftQ3$PYVm-~{g4mHrn`+VXe2jpTS zve_$kj{tW-tVYE2T2IX;@xBCCcmlpK7kSt#yjOtNA$+?Qj`y{51@ME7&hKr)biA7? zBl50S%Wobn2OKShUM_kqyMx>vIH8Ru# z81cuM_zVaH)R@=X82(2bimde#U=mq>C!Lmx+pahAr*KX4B>r4q`)uEy86R9OaB}o2HFr5`|aQ1%SiL(TzF%=iN9Kc zrIXIF(->jSO+Z2E*=gh?3cO21Ar`Maa$a1uBer*i~MS74uF@FiY7 z7#D=iemE{2XPIW5%czc4j3UnhApQ24_?x)8J#|l}|1-pYo~@?S^&ZA3v!FHBAkVAc zf-&zVfxpgZj5e=M#^imLNQ^S4reh!2uP{Wb;tb|GlFCQ*D4RCCcK&C2O6ol`A5 zKj4Rj-_@_ym|Qg~ykZ0K)=a!#P-5~2LCq^jRMwR_SDP`$JQvZIRGB81FzKAW(2hfj59>WdRSw zUoFqe>#Agsh9(85nA6m+ike)7d-6WUE{u@Xhd?cem?p1tX*>MAX9R|QuMoN@)O7&s&a0W zxfqRGT&DZY6AlNAtuFJ{p5OCx@Xu$$%Jn8+$utA6JC>MP zcz8dC;-WZsnD0_l&t!jst<4$eXUFS)#_!+iA!(G^1+CR9wHp)D&2k_zp zZ}d2L8$OiuGuf?8-so}kOtpburuFbEi>gkIvF4d*FgP{J97TrST97ANx+En-n_7T) zi3U!sMF>I8H;lwCetciRDLaQES&WT6FPpKb+Gx=?#XyOs?Ld-%%C+V)i?+!(Y zPRTrjCNCPu_IJn-+Xk_cbM(l~OQ?>m#5|;9ky$wo(ePTbla4mv?^UOZotID*UU#KY z=DW@C4en7UPaRBNG1Y_eDDzdcZ_frT#H*3%jppAd-!Cw?a(SNCno>v$h z{ZFDJm)xQC@SIj>jmkXHa&$+9&gcZ*ZKlaJLYWbTw4?ZO#g# z%F zqbrWoAGP99j3dlfpuKc)Gm|HYCRc5mS+V?F0gy)qe&(It9578y=4oPjCPX0A-0T!c zOYj9+2b!CyW(p>BtD}*S&=)AYS|*3+jB)9PFK~Rq2?^zC7$%d!g0Yc1!cEi6gai^z z0CtkgS<(#W-lkceMtrmOMtNER#1hg>Um(h#7z7@JtBY+y?to}%Ql3UF$pCFw5HJNb zZZvNdqbD_L7q@&{c|2+%!phf{EzQn}w2RAK`kA43?+$QLQu5MJAjZ z2}JP~E*{L9b(D)zk!$4WkRk0ZN-?W=`83y9&DA-vr)q+6u^cFfC8-#X3?EkgSk_}m z!2HWo9WK!d7Btis)XuA(vtU|H!Qzr$mA!iA faU~&G8c?$}r);2a6M`meQ63e04 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 diff --git a/scripts/_Inline/lib/auto/coin_pl_b0b4/.packlist b/scripts/_Inline/lib/auto/coin_pl_b0b4/.packlist deleted file mode 100644 index 66dca6b6..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_b0b4/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.so diff --git a/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl b/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl deleted file mode 100644 index bfbd7041..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : b0b47b4481de0ac4995dd0971ac23d1d -name : coin_pl_b0b4 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 13:58:20 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.so b/scripts/_Inline/lib/auto/coin_pl_b0b4/coin_pl_b0b4.so deleted file mode 100755 index 701e7224c559ebed867580cea3a3e0cfa6d018ee..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49592 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%0ABW37)s>V0^KA~dO7 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 IbXrH;&oFn&KmY&$ diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/.packlist b/scripts/_Inline/lib/auto/coin_pl_d162/.packlist deleted file mode 100644 index 5294aba8..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d162/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl b/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl deleted file mode 100644 index d703b7c1..00000000 --- a/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : d162648c2dd2b282a7f6b975095275b0 -name : coin_pl_d162 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Thu Jun 19 14:55:19 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so b/scripts/_Inline/lib/auto/coin_pl_d162/coin_pl_d162.so deleted file mode 100755 index cb75cf8632c9843d6010a6933da41e4c79dda190..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 141749 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

Q`3 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∈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 WL;Y)hJzrOkJc8r9@#K2^^?v|scHxZx diff --git a/scripts/c2xs/CBHD.pm b/scripts/c2xs/CBHD.pm deleted file mode 100644 index 5f4d804a..00000000 --- a/scripts/c2xs/CBHD.pm +++ /dev/null @@ -1,17 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::CBHD; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::CBHD::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; - -@CBitcoin::CBHD::EXPORT = (); -@CBitcoin::CBHD::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - -1; diff --git a/scripts/c2xs/Makefile.PL b/scripts/c2xs/Makefile.PL deleted file mode 100644 index 4d25de04..00000000 --- a/scripts/c2xs/Makefile.PL +++ /dev/null @@ -1,24 +0,0 @@ -use ExtUtils::MakeMaker; -my %options = %{ -{ - 'TYPEMAPS' => [], - 'NAME' => 'CBitcoin::CBHD', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include/', - 'LIBS' => ['-lcbitcoin.2.0', -'-lcbitcoin-network.2.0', -'-lcbitcoin-storage.2.0', -'-lcbitcoin-threads.2.0', -'-lpthread', -'-lcbitcoin-logging.2.0', -'-lcbitcoin-crypto.2.0', -'-lcrypto', -'-lcbitcoin.2.0', -'-lcbitcoin-file-ec.2.0', -'-lcbitcoin-rand.2.0'], - 'VERSION' => '0.01' -} -}; -WriteMakefile(%options); - -# Remove the Makefile dependency. Causes problems on a few systems. -sub MY::makefile { '' } diff --git a/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so b/scripts/c2xs/blib/arch/auto/CBitcoin/CBHD/CBHD.so deleted file mode 100755 index 22bb013d32ee290cc6350f2accbde1a40c89d4a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83025 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

FgYiIjNUdZF~GIr^{bMVjgy z&*T>C1u|K!7hilw1)Oe`$^QUsnaLd>1Qj2Cd|I(KuNV(7XMPW&$(cK}sQ8L80V@Xm z)i8)F#%i=SuNYfZx7bpgTFaHw6|>5f_p~pVD;25}y*q&I$FCU7gAQnN^JGFpbz0+a zBtrB4B=*y{oU0dNb72|t6ynSBd zKIMg&RN2 zcYhEzY_07N-1+|b8!Cv;_m_Yz=eq}l==pwCu^uzukArCD`vEPg<$R;Jp6~0?+C1NP zt8TH&acXV8=PPD4-=8Z9YKKs%I?sPkDJL=uNLdBl(OlP0e$|8#hlAdte=wm0j(=ne1~Fb`pm6nHm5>O{Rf!( zwknwF(9Jq#{xkLbqobLBia37$74?75zhP@_{@wlI&rMX&JpX{+8afzQ?+;&BjLoyJ z_J>b`XlDN*)!uS{xJ-?M*}fI6&9i^6>K3cRskPZ(pqSO{f2ky>*`KUB(Z5l)A3yub zpRpcjbmzad{b4fOIscfi`2O(wLm+O-UWUg6Cg0b9P0fG&ex!UJw$@#FW67nqpwFII z9gK_LpX{XwbAO^PVgCoQiJStQvvF3D6dSJ^)%}Nxrv`sM11Vbn&uIOK0nrAm;Hi>>uLQpkdz|NnDftESqW!Xzbt~E;(8_W56H9}tmhtuX zG!?w4URgE^|KXg%g`0lWA9zh(SQ zk}CeL0+Wuv%P9T0_&Zlo|7ZMF7`Fcwf4Ol{D*gh1E#r^l)A9H9=gOA&9k7bO_dzuA z_o`}d8GpUdTgTr+Xl;(a=Tx`YZ8)_Sf9n*pioaycE)+2Ss#PaW`Fyq?U*Q;kQS4`9+|M?t@-zWA!Fp$V*JqTY7Q1rQ+q>9} zR!Y=!nI4Mo5LCquf;yr8)7Syk`a!H3&T)4}-{G2O{oIIiLvB8AYZ19G@Xi+ZaM%lf z1CC?&L!DAoyqp0YI$kDH+i~$yrl|ijUeXL(Yw_Z)hhHfB;_Kl*0KMyBFJQeM?p2J< z)k>|0e*n=$%U!CyIa>I<PrtBaL zc$Clf87cMO$F5dmj*U^R0e-+bY&T-s8d?9DeynrZr!*$kO$pC_J28w0paDJ{h;AxX zCxl?37UF20_cYI=nkN8}4AVB6=bsQ4ZOFbt^K8{T>4xV+2!O7~G|za=bH3)uHat&g zo*OjJ8JcIJ=2^rObls?VmTR64nulM9fX%-co)wyBlIH2HdD>_m+vqw~^Au^GZ$+46 z|B%kxRGMw%^wK;Dl?!kFGf+B`<6V7P}6xN|~oYPPeR^q%L=WRGw zVBL@5yd7tOpsV2C6KC#Yt8p&DP0lW2oDUG=Rz2i{Tt0Wec{84NtjC$p`F7)+hR2*o zaOQL35Yo5;k8GzgopHFIx!V^{w(ON@c88R?qc~gBz}se>f1_`c_eZysVlYf*f*hu;7 z5{Ak0)on-0O5Z!sQw|bTgC(wQB(!OLBjK+~YyH(^gWi2{{>hZ+A~?z&Csc?oI*x$n~%v*O?3GHR^d#*o9m9$iNM zCis8{Us&L=UWbeNE+X+R)6spmD#b7wHuc>u@)fhQg6aNkM7Q*~v3f#JtfP=#GTBdrwPVqVU|rwR(Yb{cX2&z{`x zcOE-{?~P*oAU+cyw03&Fz0*B`4Mw|-kjeu=TFS}dvi`O z0UI>uZst6|oJX7U>E=A&oG&ovb>@77Ip1T>kC^lG=KPj9e`3zxn{xu+7{L)V=Wgaa zz??^$^XcY1-<&Tn=XK_MgE`-0&X1V$^XB}PIe%i#-5rL|~l!yNTj z_W)_#a9%zGC;P4%#LJ0j^Q~8xAL1n=U%g^jg>?08P?u-)#$|(I*w+!48x?gX+~nJI z4kgrf$K}=PvO8Xz@m+HUs4(bt2aT)YHs7_Xv1bIATY1?=`2PvpeLEEWHjLQ!TXlJ7 z9xfl|WrApjN`Ub^gYo!Jfsy{A3{)Df*^xNd6sg zS7P`FTqd$#TgRwuYbEzbw|z;GAs~qvn60G3FTh4U)3CfG6)DF?D#Sh%)| zM2eW?ih+iv&S;)TDG7pI0>dzcCCM}Fw?L9X3?_M|x`t%=GiEw@mVrXffV-1t8<-|< zM9<_owpJXH-(l91=NgzRU&C}K&oeMAJ3()9mFZgm<#S+R;JF-Z#**)}`30ranKM^f z$vf0Fm5-r-yA4c0>s%}O9=ktmb|NWq0J10fUIQgsXIsfTZO(!dNwX5kHVQ)3ggH<* z9w06KWh@vXrOPsaj8#~?QX;fIBLO2x$#24?<^K_bOzAoS9BoC)(A#kqf5yC}4BLlR zy1NeoJ!Lq9%!&A|wrMG&Un5g0{Ff5d&alKv#9Yc)jr`(oP@6K2S{VuGGN}!eYq^yz zT-{}Iyh}Lc^eOQ!(^_;n)0iTD!px_frF9C?j$@k6sE0$uqA<|e8ihErS&J!d zE=M+p1INf{*!;~TmzRLNKu4}6KIVWI8o5?xb;`g`z?9J$0hw~Ly8MINzvSa`E(epbf@&7g5G#@5`Sk)dVI8dGKpM7xDg6eu zfjOVi_)=|vC2GN$GC(80I6oDr+!!a0AZAh)a}10E{{tuuDN86e+ddnTg5(RTD~=gq zLHP+{G=BS6<{%*Z^a9y`6y^r{GKT!TB@Fauo+dIwZv>|@F<>RH#(Q_0W${X8@@({z zB~@T!h~#tyDqW|L5YHp2q`otFgkVk(WUdzjQ&qb{(dKTH*>6y3}qO z32_)Rl3Jiqnm`^{sf8Ma;Ob2DN$v}KLunmC*cXb2ijbHcNv7vU!#io6r~{cI-ULHh zXYGMBaV0s!mtzK;NS2lS3?zrss}@tpU-1fR`nj%%V<%ggbq_&e`vcwiY-jB0R@MUvtRfwz;_|_S;k=xL%e8Ia zrDekZ2xcnx3#?yRa}v)$2y{55(#l$xcm%B-msMK@+4=U1ScBvqxFNf%{R31ZO5^~H zE)IpX5x9V&f~{$?AF2`HABPf#I=zmh0%QvN6LXwMxYH#N=~C<5JBtMKubs~B4WmX;+Myw7aIJ`xPZ$oy+xfow%@CrK% zF{j2CtZOm8IMm|<^o|eEJ3hc;#^+L+#}}u>#}}u>#}}u>$LCU-#|Mgcd~q0&n=p~V z)%FK!^!YLaK^9zR!oEPxLuv=FGO$EGg_I3$wBJz7<q*5;=weJ<@)ZDHJJ} zccPePM~&wyQpX(nJy5pVLF5keCRE=k(MlENt}8DJ~j7DFvc^2~eMb zrxKNj1JIq*_pdrR#8*W9G&)(##{!#ETA?^A#HAQSPML0tidC5XoN|pOh%AgZXQ0+s zDf&QK&LG`3P0T~-%{f`4v&HR*shq(Y%@P+;!w`+;i2xETXPCBgfw%>0P|gUAszrBH z;+&BhtqhMn?E))jbT@GLBB)mrkiDN;4oigw@>^AVVg5uOWxxX?`Hs>!`+E5vd<@OMhfK2 z*@lAei^P24vCC_$oLbG?n0qPF?PQ>bA%7i+lPFWxT%yhOvDesK$1FJIb^eRuiAV1!D}6&mjLizreq=Sqf& zFS5rkI`{xr{do-GKEK$^kXk)_Ea85?_?Yv!CeWYofM49tpjtaYdGa8bIo@@;HRcyj zW3!P{uSGTa#b3z0p=LDu9`TD$83Ya5$o&c8{Q|(Nf5EsQIYC@bt2S$^4kn0OIHKz{ zj3tO`7zkVR5SkK1A4bVm!*akGpeUBF`j>)7bix9>U&4aTm6BIX~;x zXA{Le46|Q!>vM^69=4b{mR+Wd-j^ufL8;1VV4()Cxic#ByY#! zo736gN0Q{544|;Ve};S}K@YV6p)@7Q6#BQ9X@4|HuA_g74Sp<1{)Ac0>23J`f=}Z( znww7it_7B zKJQME3t8@0oB4V?MfT==t~2wwCq=g7d|hSmvnld+=GS^-@4gh7O#jszygx-Q=KOCo z`VXYY4UDgAO#B^8k+(3Pue15+4XbU6jBtLhSKB7UM~b|k^<#^{M^fZBtn^zAt_#R# z@w6c427}iJlk3sILKe7VFjX#{c`I+`*mF3ub)#rEJH1-RI7q zl>EAI&R>oGgHl#-{{Ck0$5KvYy?M=@PbnwUp4W~2O;RqWf8I3X{Z7g~%=fnpJ}hMi z+Vi%--%I%fcLfIw{z1xW&fmLs4^^LzNEu*!zGv{yQeMsYecukN_PSJge;43?7`!Gm zb?oe=R?a_7ysuA{N4Va6V(`XP`3vo9G^wKR4^!wp95tL3= zw>wRaX8a^MT@V)7=%vY%XkW6y2h!wa0yxFsrZo8^<3T!lyP{*c2PZC_+Zy7bZC?VW3MzNE{G z7~dUD`|s0bN7~cbIR{~k%~!g-kM$tW(HooH>2d|_i8u^Pj4xfzq`&eF-j^=lC+=$G z?N67_az45_dcA%lUCyPwB@V^A%qiZ_kj(Q{3ekyfZ^ir~OfbcV)&r}Mi;Cx1raY$vc$TBL%ijRgpYu&TeVZvS;(RP{&VU+U zYiT+vT=>5yK zEV-QP{Tio9$={wO(}?TM_;zN=arF1qM&7P0`7!q&n@#`SS#lcjHfNWTzb8w6zp+&A!hGBAJfiv^%#tZS;5!VCWyx&TvmM5srYzZx z@pq52tdiqBk|lq~eAwyEPqv)S_TRemlPx>5{XT>DXUh)hz`ry2K(>6E_tRzr>Vk3(=l>BiUu%N$W5&;JGye5K z$(Q$X{^IOa^>=enPGf#NZt%9C$Bzi zM(H~klwt07l6*S8V?lWr*Q0<>$4^sGF5-M9__}eAVL^=w-_0cYc zOFSpzIjmUi0=Hq|;AG^X-n5h4PV-}&j}a~HQnjj(I0Ez9rD>EarWF9CGjQ-(gV=_3 zv0VnkhK~;`Q8n6SYAGe66Jn}e7H{G4gjlSnhHU*_$!12reTzo!AE=@ko7W()DAx8D;URdq49TcXl1a}w~LJf9W)N`J*;Bf zl7GXp5-c;&mZ!r9!EzsW=}yFvS3*VbBp)|f__ST#0Rh2*KHh_1O5|545y3&GHBF93 z1q+^RV3xcVb_NIg__z_DFUc&-b#RpL=O|&=%DoDmvo!svwdf7nAAsks9){FdRUp_AylXKU9{a< zVww*qPsdeA+y`H^kLV99!&ZlBm6+O1iKC#r<4XL!&T#1W_B8FZ&mScG=&>r9RM7>H{sMKG0IC z3q$fC@+0)1U8_Ue$}L2J%G#XBKYA4i!GMy`lQ#eCjy7H2EX7TKs-=>rS}Jj&QL@KX zA|FS9gr2rbl+FSx_YKtftm_kNp(Z&GGf>bW`2}1HdaFZ<&N@rbSsen#S7H_zI>-TP zrqaX#jG{xTMj`Po@~lIedDw5|9!Q1wEs3vF{LSbP&YjJjh7zAU$16T}t}FgNRL$IZ zW+ue5ZGfsY!bA+Ez^#e-5E76OSQ0v5Zv@ajdZ*eGpIC5(z<1ZBrmT?s2iAu_9@si)J# zVN}qLsUNE;KU=IKO4GSC%gVi#L3d-~3JfUl6CAoe^s{|EShPcbY3a~kS~~QXmJW5H zapl~UDBxtOB3>dtMSTmUI_@WX*I=g_N;9xRZe?q_fl(Pi z@e5_B`ywY&DOaQ3gfboNp=t6y>{>%vrgfG)lL?k>S{KL)j4>26t<`cOmWxo1X}3Rjmnw3lqK$_#M|MVWIvo=(O%}l&tf~S+ow9Js99nQbhb~^ zNQghfp!Vr`sx3`eD7@`6bX!P_VEN0`C@i)n0A-!3I19v=P|`klzCtD9j|htPIhwN^ zdzDFNT3I(I7NCEZ*-J07@QGL827tT)Nw6>{&}8BI4M@le1vt-nf8iXr3(&)PGcXrf z?E~ECJ-i@;)RSi1^E6MSCgUeZr07p7H+U|A4DE!-J19h^bEWQSC?en78r#t@-ah=P*WtLT%{1y~v+cYDnei;^iaGf9$K~4}|!Wi0{*u);_oNE7w z(3Agx0iDy-gBs4tR7`#6Z1vnnxf99NIcQ*-d;%lwoMT`}Ho+~OLk5Or4xEhzSr?oF zIWZNmy@4f?e;=NeccAEcsA21aE*Z0_9Iz)JZcX0>zJz-jWaE`WJ< z8BBK~vt%lVkZ%uGaDjZAt=-Iss^uzdd$p;Wxol95;c^_-b zIZ42M%;!R@Y?+Gtiq3uQ5s>YRthVKRnmxciP2u&nyq)5P+E1wdn{C;Ei_UnXN#Sj_ zypDLR!P{+lBk?$cciM70@pyxG+46Uoo6dO82~&ytDqC`nI!`js(e~JKI?|+brG2K- z|Ez6AhI4oiCvQbj33YyqE)lyZ^Do*vmT1QjJg%K1#I;Db&U+YM%(4W*|3N1~^h9u| zH}^O$_4*U3)UBusU23M~za9<<&#eWe{Ya#q?H`5T;VRx(CkQg;UI-Q8E9~EpWg)I@ z|7Zk8mona>rr(Xp5qWR@fX0mFh~2yctT-8~;Ksan895nO^71{!&;{crA_o%$Zy)>=o!7V%-0h;Htk9VuxH4x!l@-cOnS@KRs5^{H<7c`E zbnzan$xYWAd?6-a5V_fHM{BpB|9C5O)|pzsVk;%L9dG=^AgIZ0uXpE`cmn~Q+ktlQ zRn!2b=Q2)^H&&(y)o@dj(IpG>Qlsqt1E;8lMK$9wI5AYi`jPRbV&LX9BLV(4-Oh!_ zLN)v-HREQe3Dx+J;u+J_C6`5vnOzbDhm#wv zuWMFcr>s`$>zdWqHLI^P>bWh0nzg*0)N0l?t6AHuW^J>YwaseQHmh0NtY&Sqnzcp^ z_i9kHf%nu}&4y+*8=BQ@XjZeKS ztmc|#HP1I~hMFzB-P3BeG^^RttY%BInk~(0wlu5R(yV4nvzjeN z4R@PRb7M_hje6lALq*_?&1!CJR&!&snj4$d+}Nz<#%47)DmBSZU@+?=3wismwziQ) z-mPt9k#}nwS>*1|xwUmsNVLOkTV(OarOcYJkeKYq;zJ4*h%6L>$YL$CL{uUp%X3mjf4DvIw_^^^06`v`YT1urjMYU-(Mf@Hc>&W6J zRT`(M^m6sh5=*i0xoDo)nnd)IlDR;PQ&wwKEv`m^jx6S^VtEmtVh^Y-|`fg%TFJDb6{3E;FVqhDq+m0}1Ep(mQuIJ6nM&tGNE2u|#1sF|e zi>Chq>qFb@S7Aop^C&T)Ta`&L@hNogmWWCtLfdT?(Yz#Xg6>f7+vRnKCqsAIjIO*p z+3zm(L0aBcUhh!+kinwdZ5a|ygzmL@$DemCZQiM`d!QloTV)4$`RpS1PZWDleTJB= zK8e%Y9JP3(2CC}U1UU(!8s>Eup(Lji3wvG?COwp_ufKsmLMiIGGx+#sZ}OkvV1Fc= zFU|<=>>@$!G)vsZ$;r{k7M&O$A@gj+^0Ql{!yxoZ{wNVEUL=1%C5-ih+*L=WB}#D% z7U|}$5yRQmotcI;LJTG<&?rspX518N&XASdDDj8OBRxK+$d|E$jP&Fs0>DbV3>QD) z$Gmc$%%>G1Qksu&6hD!5fYBc2f3FZRZ@u{~KN%zC?3$c`yqgudn29Gg7Jz)oSp$@K zF(3ix(pwe6{Rn0xa>e@!rHL!B@v$U6n#5 z;(2;?{RV}~#f1pe$cBd%su0P{kd5ys6cv4#yH{%smEy0|u=%KJn}+H74Cbcv#;*jy z2bu|j9#0S)d2$`>PK%t+ccsK_s7#R>zH`Ktz5#oXNG%(#HqADE4L% zs`V|fSSjqDAWCqZAnsD#$xF{@Gid>uKEf&6<|MQr|DwpfTabeaa(Gq>ZA}naXwSB% zw#Ee-z9xg;Fdn~Cx`cT-5SIlimpPfu8iPs(<%4OlVxqO2V=og_2bFs{PH=9Hb8`N@ zoP>tyF~!t`4nMYJB7_j$6efrd0CHbW#iaI8AL@1$k&~UGa@5bgFeEbAnTu&(rVh6vXB#!))bpyW$P9xDWPTDj&rzQ% z;*DFmE*Ws9ky9>TVrtEDbWJ>2zKl8;nQh<@*%vh|GDkfj!RzU8Ao&sm>uJ~W$hppt zf$k_4#z(P~hAuKt$km+D#RjIyBq~_q=p6#?KUr7KGuDKa&#TRl^JOWPm&o}B7RbLL zSR%^}Z%+=n#tgEA({q8dI&RI%xHW>M@gfyam{d6%@e{e&z!c@FOXAbhH5|Fz`D;+0XGU86Y6YYhk~|6FGr5|-0hqOUizlP}j2ZZYZ#IzhjC+WjT^I#>)mZ}W0(cE8;xmtMz$N6C5tHY4tM18r|y7v8s~=PC5*JY z49w^7?{O|V*&Y5)S7YkjK33$n?hK{Q?c0n})PV1ctN)rM|96HpOONpP28Ogd?l1(*#dcL>^QnLhfgPJ!AsRQo0{Dy8X(^Kee#ZMJe)Gu2zp2 zKcvZ}c;X)UbKEUzB6gdJKz1%%YDFG3FhBLY*(;l20j++_HH}ugpxo*njg&cmK`AS| z2>;6)z95^9YLs^~Cw;85kk>D<+DulpE$=jLcjr2vk=~QnwazY-oV?4zxV}^+ZrSUt{@91_`4;170KxZqF<72DZ8TCS`c>#o6 z%8dNY;dS5!1lhL8za73eCQswm;}dtrWC<(yrw01veXM*jch2NxbVH+wj}+diSdq`- zlg9sTAo6*9(!S*;>I(zIatOF1Upo30p+NHCT;wZd18eFWN17yAv=sK82IhK}KGJrjmO-HQm!ZpFIE z5~sqDZoM@U;#{H9)LrQS_qDqBbFm+|pVhs;ixWgK!lnCw`Zk(hi2EtL>MMn~ z5JBF({2YwjAK45%i|r?!q3|}~eaLwi-*TnUPZlX&W$P6hQ(TYN(dVckeC#sV_+C4v zI$BV$3}GWip_&vFxh|T65>n8^bZx+aZ!t}!RM$`hi9?4QzZ$wqgCMs%ho`Z#a%6&DGx9~cLUnN$_{BMfB z!6Yl5O7|tkYLBtt?Ojc@f?5cB3s1U~UU!llSH`+1*b6a?) z>A%mGiHO6(yPelDAXI8wZtMd5Tca$V@yWFWl=e;bFfc z?;?KIwa1Zfp)?de=i1}QXE=*5IRDW0IPwEd^4}ePiyHp($pM+buetht^8GOI>#lyE zd<4-__?Gi8t=}gXa=ia=7|hV`lfzNL3jb;P*ZJimh^xX6O#k(MnaKJ2&}mftH~ZzV zHo!55f7}t@vGL2BIld-`FX8ihQF1@+`OZ0{`1kweKRADfjl2VXnMM15FzpBZ@+sQ; zlXF<{$NVyx{6D+n_sb#3lEPn2`w_p)q`m~7)?e2~_GJG=9}^Do(MAqrdy>z5YSBiH z3>K51oQYeK#;a#Br0`K{nZPGuXq%NCzx;E&E?WY9sYZuJlI`bu7%v- z_Igm;Cq?jyM}pwvPJC|+l)$xEE=q!xjxz@3Vk$eG>TuP9+El!q6+F$+AHxfI6k#2l zs$TkIwfJo(z|##3$+Nluo?#Z~up9-k!D&h=ss)toz{(d0z_a1t45u=#?3@X>$$4SM$3eBTItMIQ+hxHhQlsM|Ovf;B)23QU>Lzp*E?Z z;s!kUt&<+b4btr87g@pYjC-uqg)6P#Ve`4aAlnblNo1S5V!0JOVj8SeJ`)T6=;iy# znH}f*+1PFPesKqBbx#X^<6Hy2LZ$Y5WpCcs2(#dSlsS2CGJ<|pI<3IJF~0@D&zyJA zLq3cE4SsGW4o`3cfM2L4E)o21tAk%VPhk9<^iSxaqsk=Qnqyk|jqSjdpo(A*_5PF$ zG8}vQOblU#4-Qo?W#tusHCW-h89vQ>sXMNR`2@t~-NbMn?qf{keNFlZABU3nBm-=u z?*m*z5&wojU>!oRGI+Uqdrba;L%JgVve;6rK*75B%VMvfXaui}zbsbS25?pUWwGy3 z0)ndz6!Io4SHU#~rpS{}fP-sQf#9GI`2pAYn6G?UY!q@Rc$I+&8dRg;dc#~GE3iuo z)*DzNS0n&#FtA*HLdgxjCJYHHwOmCbH~RDwgQ(TLGWciTxN#W!W=_g(^~PM@YUbUe zzUWwV3OoSiCBaet{os<{!Y9Gee)og_{**RGHF4_7IH;)qEpT!azb^nBYhXxTN3W0b z^HCcfkjfVb#~YY0&!W2~7+4@vP{D%}4eW{8;LCvtf~Mxq=QK_B^SVHPjy)a(^$|Zk z7UaDFcw?%ayKcTea(uf0RrlvxBgeGs2bUkBN(N~##1+KZ`C5r)r>3BJ?sf*K34*Ww zfvepOcK?&GNC_q{DfsX(r|A0-_h5(=VpxVjv;ODG{fO&*2i?J$XZ4Br*7E+>T z)~0~o#ihyis4`hs8;HNg6DpFC36Ra_B1Ne_^kv=VUt20lt5mZs#ARtf>DuEdVmbsC zW$5CHzjO02=CUYAyF%|FgQht}q4B36txm^;7v=Jj0xOWxMIE(xA&TJoqE1|=Fu`IR z##z)wqb#uugDX;t1Y%ZP*%l~Yx8;iOsjKU$N@h4*U1Jq>)1W|HKy^jh#u9Om-Fj%$ zUwlc_Q+uFXEaKRDX;dK&ARvm0wJW3IZ%Bfo-umswv7*ceRHEC)i9tktG#W1s&`k3s z`3YhL;;g8jc6p^p<6!%1G)=6gze;ry&Jt6wrWXy+bG1M`kK2x-GL06A=?MHH^9A}P z;xOD(bdv5@Ee>P7EgGmtv{KBZE#~X=mx}!y(aCxtt+T})$ibq)8eVCO5s0OtAsVi- z#Z6(rp&G8X#r-LO6_m^SPvOwmVV7YxdHX3YM_DTxP8+y^6qZ%HtMLiujR>Om~cpqE%qH%m{7+>?V zMJOL|Jl*7re1VOF0Gz;?@I}6|#hnb#i5eb)UJh^)Kj6ey0wEcjzM@n3*{Uyc#10+c=f?%>GG7qRk-J|)fL~6LO8T*+?MN4%D zzEYMT_Q;3iui>DRa>mwZ7dd7roEy# z-o)>0n_oX@E>u?TZtTypRw*I5(_l*0nzUaPyB`&xKz*Bz-%#*&xd8!~wKlCQ$O)nc zerKyMfoq+;&V?)dS*tVny^i9ADG21^0?epgoCN7k@q4}Dvf{5Wss7?WA^+MG--iwf zR$vIm9nH$k+=zau)wAc}^*42m3SuR8!MyUz^2%wBmD?A6vbtsN1PM<<@H^Y)_dc|h zOg{Xyo%rYQ?&Wx*%J!PR;az6I)dj{RF|MEeV3}VB@bJ zjKe4x;{0O18U?rL9fq)t&)5<~EgDjEN2*JtWPVppF{fI+-+=oP8B+YhkRm3c7b7P@ z@MXXR@zW^&ZoufVnMdyue~)?p0CRD_E5y&tH^ST=%P1j{|MhGx_?2G#T_@t6F76C{B(zQI*`o?X^)Y78o_wc{ z<-Z*QzGpA}=dXUNM!B$^ z>ii#L0KH1@#bw));z-ZajKt#nuZ+Y$!Or5Y+VHT*$KZ;)kxg&9$>rzWRB`todFh9n zd*}5ypwadkrWldjRJ! z|IB+yIWOskp~#q$lTwsPT|_4e7^qDu)sylx7}X?&Eq_TGng?A@X{VPA{u*a-6)Y?n zLMBS{X95l7ygHEqmVX1aSG+|2l9J(PP62;899J?zyUG%e!$&0}IT*g4wGL}b$tX@d z@9!oeuS-U2S&8BSWJ$>wif|%@VhGA`Npzt?y|kSK%1)n^NXu3N_jw(@vHb5LPD{rA z45EK2mdHN&^kQH8sQ|(^-M(xpTH#zCmzguKRYSj(&}*kN&u#&&e;A7G49?PHU$m?EafJc$F7ywW`Q`sp6dJ7o;tvuV)wC1Cz{rm(b_||Iv0Rv zid|xrPBV?4p>agK(JGx~=)ZzK-Oy_+t4#gR!cY~w2!C6-#?u)(9WWp$>5v4WhrR%z zXY2Po>kRX^=DY!x+y6Y>vQFavAz*jlZmApMTMsUmgX1HH{u_IOuQRi0D`A^#z&v{5 zMZkghUj-~XpMJ7Y+eozEPwWN{kNfWE?#M- z4{|+bb26-x?bG2@=S`dUiac(?wv@*>IKb|Hre*cpi^bh}llKJUkY^|1t{d$AEo(K< z;1}6=fZn$4fi=~*<||$wp=lsKKXTM7n7xo1{of9gk&W8{hm1zd=~g^iu&mpru>)q# z`GB&%W{>;Zf#o1$xH~eT|9}wShg_#-0G7=%_I`|Em#y)F>ph_KE(3l6+q)2rS#mDL z?^Er*R@wa?&a!8`;AIae{m_7Vgh@LX%HX^lT0i$P{b)e=V*CdripeNatd{YrvNq%a zr4a*$qTdDaepcC34^tVx63s((zs!Ic=wS`5z^_-)um6>(3(hB;F}|--R_yIk?g3U= zJCEIE5idB&3pRK;=LWaQ#K%KxvOyH*pr(s#QdlCKsIE1Cx zE@mm#soj^U-3zAZ)E>apo(rf`yPTHU0g>wv@bs@!ghjrmnLs!K_ z)rBn6N@-i-tyXEo&{-G$9M{5$iPwcg z1gPtRY8_e)g|Qi6VYoPl87_Y8Lx(V2obMSf{TV9G57aUQExKYHA!99}su(}AV%!Hf zbQjounhyHjE)>8&i}o_;Wn;r=z@d`sH)fawRvGtFJXF(XUhty_lqQE2m-WKM$o;c* zg6JYsGQgh9O4G@3C_yD&aH$t;^@87d!5%Mo(F009HK6C2mi3%cKGlEi?kf`FS?XMY zk$mm#a?}9UswS_!NNcMs0q)_UZ0+O$rG*BtR^?%4bTPHc_{Lnk$7Noy)&SP3vaQ~h z9Uf5numP;nb#cL_N94G$O^lEJUM)jBz$&}K69r}UUU0h?JmfXNO{8NgX@0zt_O<_xs%Q^ZMRdREnul#M zk1X!~rq6VX=wJr>EYSM@0K@Ddtcy1S4#a_zI!g*bHO!Ya>yl{$-@H`h9^R z$E)90rXlANBpW(&sk;Cjel&E}p4V&1=pvIK2E(EX z`*Dod@!58XD=l9Sb`os0|1ulFwNgqOx`U?Uk_{9I1ebDY5>zb5#Dgqe65G6>~1f(-vGTO zsfHJ;=tZ?9$x^$>HT2RfZ=XdTfFkS}UD;_~z(23WL%H@bPp5L;Eb}-flTP+z(h!(p zkI|WAxcTA)58iLvPtS2PNj;Stnc-$ql$mrHVRa7p#**=<@u-Cc`(aXdHS?5CNs-!GIVAcpRw}b zQvP5weULjuH_KMTxC*-`EXPYmcG&cK9P22LzL^+Nmnt{Q+Nmt-n`N>L9r|0=VnCf` zx$0vAlV!Oo%l?K&m1Vgq%d)dE^(xDB^Lk*NWx9Rnb{O)Td0@2z2J}sl=_T^Sb{QO zFsmW6EMVv=%Q_gqEE}wtyjjLSF2O^YJkSG5M;X8@TNdwUm96kFm2LHcTMf`zb`V~C zkzQ0;R;03we>$zK(%a`O53tHk@{F!*gcqFY1^0P6mAhf`U$QK(CnBg)&D$Q+wOw~T z?v1d>E}8G%msfJHR)CBe$mcossce}|sMf2~xL*B+P_0)}nPq(ZRl46uy$nfnQAM|%z`T&$MyH7j{kZwoZ?ntYzT{dX5jO|Rf#QA#KF91E+ z(7C8}X{HZy$LgjVpW{^6X>f|u8|h|xJzk(a5)8p34GY|K>#fo)*v_OIIw0Ln0o3W% z*PCvARl5BFjVj&xs&xAiP^X)2Ueex8H{Cuo&4EJb8>#NEPf`M(0FzF)foj^mC06M+ zNTpk02d0~`T&J5CJmdkTdkx^`ZSc9?bi>B?We;cBM_%xy2b9{zIV?k$Dj7P{k_}yD zS~~-nY4<87Z>EJktYzgMP|6Q~crer6iT6XMd6>$!dIA5WArGBtm2hC`0yontRHpGy zE0<03_L=4Z$TZLB%0_s>nO<<8r&GBbA;)A|^F4N7dl1yx({-kqu620k&7+!4$&0X_ zeTgSO_H^zH^KdnA*^+sdeKvDxI-$z68O*dDfMd3xyFHW7D}C4Qx8t>%KAde@$D_5$ZB^SG(Zwp8 zXIlAutjzW90fnHSC|+jhyhxHaX$rzm#S5;v(wsifwk9ko+M2PE~`fI6w8-lUGI zr2Y#URZ>S)QYUmqxV;^QGTnR;uwFxT`_MYX+3#L0F}Q4#Ssc2aAouEiGm>!dza zCG`N{vV&%HDyjWNupNg2nI2Hu)c~%cIndL5tK{xfdwbZ+MtT9i`{+t7oofIq-swt^ z&g}ENOqUqI%)ZjAO)a;pJgj9mc|hsi1~9W9iube1-t;h)9rl7>4A7aq2VP9Ytm!rM zbd}j>hT)}M-ae0cfK_&**MWC=!J}S~)T7x64ZSPc~#`N?%Rp9=B|@p)>VMuQ%X) zWYAp0r1M>u8fPi+CHNgJYhJveSSKw z$tr!$(7B$!6Yq&#g`so%{I!REz|c9YM7W*Xz8Vb6oextBreMaL>9)+M^>=Nn`Cwmawg6 zc4l^Wta*7JtCd3>VnG62oA5}0%gYXz5J&r>ah!?$hza-^LQ#zpV)>${DH1>4NXXGd-yZ z>VkXYt%)w^QzlDG&x$3sU#SV|f=`C!5J-<@+S!gL_|gY|P8W>yBm9F=bGo1`y5JAU zrIC1<7sL{Xq{j%~d3ij+*HictI$s?tw9CY#OBdV}(*^HZ2MM}c#_fJB$_JYGq6x#|5l`?O5UYLr8f6ak+m)czmc$zsPZG9YtqD%ytYnHi>LanN zI}gSZ+ov?aDSUTW&fEElSf-u79Z$SZ6K)FM4+ef6<=hm$Tc+>=8FVUMhDRD%e-LJW+}#J`yXm>$95Zn!=HzzSsXSgs1OSzW<R?u&m5MBRlnUnN5It1vhs zR44$U`XrK0sP2gi)jc9qKgLZFs(VDJHbT!hp>nr>k!cBOy8E9+`rthN^u0m8;BbC_ zQ7O4E^S$dFBT|al(8d<8L=)aCtn+vNNOOo_d76z0Z|5U1hU|Pip5W{H{7IopXDtF;8b`?)(ON`d+^md+%7i((bF%uIMj^1<-f zRdHG@iqTceaJ-g@SS>SF%icIGwruLEyG@kf$EV2DTO}qeuuorWiqHHqh?fg&}0OCER;yr%^zj z0D8Xn!mmStZP~a0%qr@LJ)d69~U=xMAu|`0u*}8`ztD?u+|0xf_^mgWR0-uZE(ycGMTk=#GIyf%T~E zuYK;T`+QDE3ZSA9ShtZQ^0<*dEO^(zl>@*Za(F%=R6zY9{^1QYZymOP}7AAR*pipGSnOeAM@SZh;%E_*jZJyvuct zwtfRMZ{TBFM#V3~e;QtJyrF{HKt_0n{Hb-YTSt~T0%#yNe9@O1_k#I59$qb{&-gTG z?%7K2{K%;nAZ6s4$kMpb_i49cxA`O^s=j^|Zhtl9R5=Zm%fbhWara&<{C7NdfqeeL zr$LdssP)${wmXjXq3ed+Adu9$>McMnPu-8dt9Uxig#WpV!Km9Dd+De3MEo4zzR=toG(#a8xla|X@=*zu+{zE8s$N#F)PX}jTDU@}DRO7wfj+mVOX#O2}BwsPJ~ zEaM^n(#w!>@qF=Cd}=+HS?ZDpiwSvI|7V;T-}ilYo6me~;8W-5<{JOX3)ZddzhL79 zYy7qTz;ZY!S9mK|z7Qw`AQS{u%QkrZ_#)5ll^IOX^Daad$UQGiKVzN0awTv2NTgPW zId_5mD|{c1(gT0~bG^*E%_z2Vo!@^!lz-LpfX7=UA@)4xzCdd^FSCxdT!>@}EogE8 zV(hKCxTBu6QM-6c@ZuOn*sGVqLhD5r`B$xC3meXpb}vS|sfe0EA>%yj%rnt#wkt)S zwGKU_7TKs+P=jrF<%}fo{a&q2dhzV27b{n;Ub$)|`|_Ny3CWX=sN>z|qF0U{xqDeu z0~Y-@2zYu|@gOX!`AQuJDfzsRJ(9diIU$^)?ddOU`vPn7p-#g!*(fZdzZgyRK{WJd7-@Y zLHxFD>qu^Y)!jaX^g0ot9k0II_xjF%-6;696E{5Gz!R&M2di;ZrsKuRUVzGC$=$BZ zZ;q~FvFqbRb&#|tqTxlWIN&dg5ZJz0=^tB83ECT0aNbp`Ix5(weF9TS#;8)I$uX@B zNmu=TB~$N@NB3F!K$OJ7UK1F1z8-Thy2oT@C3v;gCvi7McP_!Cn+R!L$q~3-SU(v@ zI@F;Mg+5un!*Qg`cVyV(h+eg7n=mLF=0Nr27~c4VD)GkPNcsMgn9WeA)J6E`Z*Dgm zn@iPvxm_r3Ufi`K*s*O>xm0a0ZknsMH_wz>P47R>(mdOl!(}g*W;V~|^Sw208{TQn zMLFxmMtSr0;p?_-9y@Y$T=BJht{i6d#zqhBA6{&NY6s>Cwa(Uy&Ea`=#6Y-!tx}~3 zBzoIy6$-^!z{>!a=9opIc>$yg=sPNe6SgqP@<*F^Vh$%HTdSvGIVxCnTY zxUbR3kqSYK%@^~ho9zm3gk^5d9I*Qb_fHgse9679P-qmJVZPB^v$%bi%L;LbGXOlb zPCI!(F7l>PYmrT0&DiMvVjXWV7pwV_H4Q7;XYUyF5BSf$`Q*t>d(Q3NbMgnf_q_P8 znf#SKFTSt1=j6H6WkA0;vuD$?zWxvRsr38%wp@I5YRenEzGZ#O`>t4vYya}TtJdR+ zm$zmmnR-7j=lEw6|LnmZe|g_E%-pv;br~<$^3Npyr0{Gw48Yn`k+re%x?;Bcs0@n+F zAAg?Fw`=Y4)L)>V|NE}K%lt2$Bj@>V&lk|IKl4+=$y~nr=fGulzc1yu{4sEO?&R)0 zsdcV>9p=CBTmLof{{h;EtercTdTs{+U-3VZOu)}u%-$sgocMtg{ujUR+A z$2A= zqZlwxF_@`w7bR0`l;-dxP2S72TeG`@0xV@K#4aedSE%(b?&moUADT*Hm@~P4stN1xu9BHYCGqcq@Rx_(VQ5+<)KWPc{NWNKsq4->S7rt#Z*jI)20WiEKDzj*e=sQY=U>yzFEEa~$wlxcQ)5 ztj@LO;S>e4rA8C<7HZ8iVEH^w)x*$ppxvmW$b7AKI)L@g2Q4rc)Xp?=)%-mAaA#5I zY6ct~Z*iuAY(;do-SjdT3y$$z9iu#(hurX1P{}n;qp{*_P|lr2Z%S+%qtwbZ=qMJe z3tls~P{iG4t6a;A1Yz*u##qN}MDn$AtkH`f zJm$qz5v<@OXg4{!MK7~|v23t$aI8CI}Hl?1_pQm5hM^nixq^qi@+S`Y`Ckv1k_ zv9Ja7VjdO2(6RW+2E$gGoA=J1rDWIJGgN?>OEbl}NX?6Z%gjLIoaR(V3(#c^5b1$; zL36$|3;k0+!+{oCRcng0Rs-4?kv^KbJX){R3Qd_5G9hFdf}s7-aE;p8NIYOqpa@ho z2UF8ro@a`)uE8K&xI8GI6F* zSF11!Q%6hPhH@2-^So3s+GwPPT12PNa(hmlmrJLM-i?Q{!SZra~WNl zh34U4%mq$Ib9%MK{c_{q5G{av6cUCyRCB|Wi8NJf70AtLPfRh*Ql?OHCI_Fn5`i;M z3FNcH*yNGJ<3V=c(S3(NHWet|Q3@7XIkaHLVQdtAzoFQQ_`ud1#d=u+IdJUq9#kVf zTZs;5s!*jc(D>UiZG$3hhS(aa66%R6<}ggSvwR0I9#9~(-(VAbDF`7oWE?ALmpy0Y zsMN%CLMu1`zN7;nz;qqp{W#`B3NQs=N$HwG<5wWYLF+WNfvAgGUHp@lSAok=Y;bm) zY{OTf>Jz6DWHpt;d6;SN7<3^zGYbJ0(JI|Z#j0)`Y!ss}RG#qWOm8O&tVvIhIRbkL z*M&_&1B!wGJIYO{usNF4^4XXvaI+i%kQ(A$a9-Qh5IB)uXWnO$L7&@oXZ?ZzE+Ls8v~p0^s^=q5 zUL?;HUa5edfIo3}0?uu@OuYqe!2vii1;PmueUiQ$DEGJnT=9B9~YH^uUXo%e5f=L973k3S2{0<(@BR+EAz|=T~8S}6Oeu?34 zr~^A!uFXK}6rgc&zkn4XhMN|&4%rfSZ*24cG#IS8@&m+kwP*q@o(N`PkjHWcCXXzI z|LPAg;RpF z1rvbb!nbQNoiMFn7D3vX29$yDg3^kPH%w5S(nU#`P#M@pSGg=eq*ZbP!-=#1Y z!7SzgmP6&m*+wPcN+`CBr#6!5D_o(9u3!MMvRZ_AI&Z$Y&<^nVVhBd90iJOjXm<*< zG!Wc2Lk=^w!dY3G%8-D5>R%(UVi37p#N4B$j!Ot(c(VRLqIyrtKbNIj!SY=QOEWD2d&lHa0Au$Btofl}# zLX0NIxq;O_W)75%tUNg=6lF*|2ONI77mU{6s*)vGt&8QDa+*LSCOBHmmB%1~uCf-~ zq!tvRnP=A@)eoi)9XZew^nsju$P_uj)uGgxK~|BekOX>Qm=$g)L_84&5~0VyodzQV z`q#XgN)R`~?FM*m!DUN2uC-xHAt`R2!b^6%LtAZxacWHr8Kv)t(W64FGKy9x3}6N* zQpwBDV?`&n$a$$5N;v3Ly|d_CP8mauE?^@J6mZQ*`;2iV*Qt!7nanP<7J_OMehGQu zA|4i2QKF{c$zz>U#voJBWS3D}y+Q|%3bySP=2?*9sah7G@Q8SXW);+zf{gtIZn3zR`ra2o<9$AN7Oa@_?0$ zeO2J-bIl`mkP#tNFps-U#17>~oJ41R1M~({gd+tDIhp~dp@W6&P$RbJWMG`jB`lR) zbdKx&Tpcr`d&wWs$OUmI++Y``pTt}kSPadT3=#S1gicq25`Wu;QOVHoiY110IO*k5 zQng9lYs0)E(hG;2`rM)^g&G%a!jc-;7NR*Lv{U<|X&tdu)s>4%I*P*%$TUMt0g~aw zn|~1-LFkIH6EGJ47?(x~^c8CZ@w_3hw-+&pw$PDT2~CT@v`jAvyC9e@N{^8UCs(M1 z8V>`Xfx8G@DLy*mgkoLMj0DE1**pn9sK%h@$>k&%qr%H&lPg5^;kt&UUzK#`S`cE! z{W8%|dckRW-zbf`F#?lE;M7#Jn z5zh~rn2dC45w8^ojtfWVx{ml*xj-K$@`{`fOHQb7kzZuU&ly7zXxAax+(2{F$M;Qw zGPI8U0xB1T*yxp`AHuJ>QU$Z)1l$s?|A2+Z$FQbyuT>MzoxX+)xAX?_i?YO}Q3dTd z!=_MOE{Y2wpsNP1%ltwgXGW)ln*mz9_US6)Y#B1>}B&M`Zm72G9uiFPY8LMRcdG2VXlCSx^9wZzUl_rqIrT1j4JTrDh~z*8(&Wi1 z2naSe5csuNKfKopY6xS+#|}>%K63M6Z}U8&N1Jc270ZR;#rZwlXw|o|hB3(P98LUHkmZ)l+ z=u{PIx1(BFL%`9%0;by9v5n%9Ux0@3@In~6!}T*~09orXR*wfmFppqgus2X@)Ll5z ziMz-jV+D+fRvIv=7&y9cY8Tw{7_-AjM1;kL-_2|tPh3~T?OM2 z)OK@_kruB0jLql*$(3+ECZ29x$tFobG%n(v41i&(Isfpix0pjXTb5KH8D3&lqO6bs z@fKzJvw`xzvV%d@L7BxCoGdiYo)t}-5!V@V!gX4$QH*w8Dk>5k^U%5GGIysk z-k}?gW9vf2P<(vdJ3h4UhRj%~T(MX})h+TxToDQ>EKZJ32>~S!bBRc*&RaMGyURHy zGX-+wHeN*7b7iO<2G*%#BtLpB`&>|`u7Oa%M#Oi`^o`!l`5tw1>>r3T^ci7+0a$)8JL83|s(B9|Yizm2-HVNkBb_ zQ#pf%i+a53M^I|j)~RBdJkC9Ldi61n)~Pc{pWE6yXYh-T_T!0mZoF z!T*I7j}B;r01p-*LKr#1 zZkZ|Cf_)96L#odZX~VMH%gc5XpYU*Dpbim}UNbf-Ji=r=F(oqCxlboy7Fp8dymsh7JnKO^82fc|e6EqJ z&w~;=>dvXE(5aGr`4+ZKP@TBMP??Pa!h+}+7e0_bxI);OrY3`1bsEYe4_8rq;V_EL zg$);R7}Ja>T#?`wo+Dtm(^MAJln{lk>bnOXa z1v2Fv6c~K0teguWVPM)@nj|_!uvz7Hr3#Uyt4eo_i~WpS2#a^yEW(X(!J^0^6t!B; z-FX&KGjx5n1mCRbO&uRQatM2Ne3C;RI!7xmR>Lh`k#RQ#E6y!+ZiINC zrzP?bE!`!?1SN{yEsc)RjD)Lnr*^o=boJ{d9w*xwMn2uv4?-8fFmMbLBYJNf+F=r& z-?;1&bqX>aejO)HUfuE+_R>+q`ibTMWMC}9T{;l}@djm4Bs;!haa~t$0bN;4G1yS?VWAeF&LC1UG>CuIb^lSF zwlkm<77hY0Az&&xkd+hfF1|V!M#xqGnILA156?h#2PLuJ@WQZbOsT=cYqWBZCYZzU z5s`w0ebEubot-&zhLS$CngZS1*vCB~&;&ImOLhs|!wl*U9+XIXM%eDu^rCwZQ3AtT z5mAQ6Fk8eJLr1oP3bs@bOfTU16RImGQG5*Qx*ZTmJgg&ox8drkA(29^>Crv#jb-%F zH*ps;O#~OQRpUbRjO)qHSXv&R41*K&a^QG~kh%4U?pZ+BRC7%{!oz3XIj!AuIU?Is zb65+bcW{D5@4G?A;)8~UE*k2DLK2;zFGc+?R3n>cUZW{%Q5V;>>J; zH1lyUw~@0*eO9I6afIa?wcKgO-P%pMs?fFdild(ka5nYbhn zi>5Lk!Qotne*k81jKMK+c}$#Xso;#jZ*q&O=yAMg5#ko7tpg~?om%u`4TW65rH)f?u3|Ht44yzV08q*-)tZ+K_0VSsra@R3gpqPY>U zc}@VR7#XgG)NzGH25=Pyvnqjcw{#FjW9cN~!>9B_p>Ud#ec%Pw>)b+c{vqRdy3RnK z<(WO%08|-=1;+niH^qu}m&-;tF0lJiv>mtU6vC3oa8S#-jt6vcU|r{7f8YgB`_ki* z_OJ&iL#;^!bjpD|Xd_Vcpa4BGIIV0~9;>7+K}+-qS{w$xW_Bt%c}8 z8Sznd#(`iBJ45S)qssvVS7aHBki8lxsZHH!$O&RJ5Ez<=>=Myb3(mnG;KB?>4vwXJ z;#l@S#oMH8@aaWKl%US#G4btQxZ04y!e`ljh65x99Slc(@h$2 za71{<+%%_nVV+}~o+If3pp*wV2K6!~MP>%J`LyUqa+TpJZh>&3fGk(9#xdZFyEP+i z`z#-X!SryCb(3T#qb)pG32~G?Z6~ZTXE$>=GYvso;NsBL1#eOe33`W+MW_567@rc*VRQ|`>yY{3uq;2{qPW#@A(?ioJDizGhNvHK_y3sizx2Gdc;noSfgLvHfa zMIa8dt#=S>caQslJp17#I{Ec^XHo{^b#2297>su=4L4};4G}JF@I-_gGw)i0b(gXV zN25{(S|5GyxPeBu?`69yG6YX`;Ey9=@XZcI+K7l z8N8;?A<@Q&!D}PjkiqLCT-x9b5pK}n!3Z~Ca5}=J3@%5w5hW|USpOeZ3}nPWE0!!H zR`AiV;Ix7JR2BK&Z3Z4w5?I&teU`EokTE1kf$!>dV_4TIeiWO(AB3pm2KH<9{oX>V zN3ZXkFg;4AuFJ)8*!Umf9kG?~@)daVmm zYM>QMmeSsW(^hb!wukN+7_V!3$qrcszIT&>?+EF-&A@nFH}%x@RxR+(uwd4}FNLTc zvHGCi`e>LXYv7MURF7V^3cng=$r`vU!Iwn15rdx{;f4%ON4T`XmqoZigRh8i0|pO8xRk-ai30#a0v#Cr zHIDKdZv0^m8EEB_=a3aV92T55@Uaken}JsV6GTw#ggaBhqS=Q!-81@zZ9Z+WaH2E)@Q;jSpy#qQ9ZiWD&!|Y`Gc2k;A0`` zxPjjfQ9ZiWdxoo^&#vH{!OJ4tfWa#w+@QhdN4T`XD! zoWiq|wU97(o~?CEgms--qjg-VSLz-Gx9c@g;a#g$jOdjL&){8(a|+K=`@=?WHP9MI zqZ8U#M17A?KVK`@qt_mVXEzRNhNn|_@6mjZ>J_f*tde2OOz>tc_dkcFvId&GB$WE9 z<~GqwP+Qk%+s2ASouqkwORv;P2EQ}H4H*3H2sdc(!x1iR@S_oK&|n^lsk3On;O|B_ zgipUrarha3)Nuy$YnX}~ zGI&RXOB>8n_cY(2!7qq#0|xJna4CcDiEuqS&icP>g{vQu5hjpFuwT_GQiUBt8N<}5=xJ$H(v|g#>3?5RP({YyC7B+fo z2u6+WRxqNzN2ssX3O4DrN5|QXU7F$PbljUY-#Sqowk$qZk{biUXYoJjJVUEaikX86l zRLVf>H#DPxkA}H=b)4RMLa(CZ6#ij^8!-4M5pK}ne~WNwgP)9WLk3^B$`MZ;XYiH? zH)Qa(2$wc^M}!+RcvplQFnDi-OBsAmgzMFDO6RhbjyCEz1+7@}Xg{t6Q(?hr19Ktj zHUryAg6cR;Sqn)zPV3km)^+MB1=ne5h=qZdD=JyXX}PpsMaL;Tq*v8(n%bsU%x(j% zaWwk;9_o9<^J=YNlU{puoZi@_*Qe8QZ`6EW)GJieNhQNro1m>M_d{W+tbryk38nr@ zbDQWT=(uNU+s2AS9jAF-r&rN&3co4B4H*2^2sdc(L7YmW==tRw?)cy<#pHXyuaU!XImakA(%Z1{yJtn{FBs)Y_-Dg1?L^GVq^5 zRF4X^Ti*+_WDPX_KpFNn-&2wG@@R~622V%00fSFQxIu$o9O2Ri-xA@541NQSr{<5! z(BR*Qa6<;aF~X${eshEyH25tMZouICBV5Yhe~xfH%Fy~>PZQt*08QqIjy6uR|u1VuTWH?GJL64@iM(q85;ab#W`hY zsow}2z12W#9F4wJ8;hv#QHHP53hvcwk216yZ`KS?rwo6r`F4eUKlLF6jhP8*&2nEK zmdYAv@{&;M8qIB@m!J%PQL`8;l9b`&n&bQYNLsXAz zcB$TaZkQ!&;9Emfj}CjK-nu8uk~PqH0kQ37L4q!}HtvfmGSC)j1g-jAt#)Hr z*QswQ$WPVt2eB~lJgq)atNv80^0XYas=+D6Ijw4`^h4g1pR2aKNgnC8ffy8Q0n(Iw~1bYR((>l7%P&r zYF+7jrCvF+4E{-kOB?*N2-mahwYq*;^FT@sv|`Cp`dTgUrm$evz(+$=k5YJ_-uhse zC2Qb!LR8P7e^hUMGR%@S@Lxhy&yxpV(_7yTvt*rkM}HsITmQav7H_S~-e*@Z+u&sp zZouFb5pK}n^CMi^;FS?>$l!hJv@NJHgGVFWkiq*ST-x9R5pK}ngAs1P;B16T8T_^g zHxe;NA*FM@ULha`TCrpSF~$vs1*Z+XBShV1;472_r^YO0EhMP1XKNi3VO^&#)H*KL zD>RCMTNRb4#;(;WM)XQGX7Db>IW=af{b8fG8fcB9QGPjuzli!CiGIFTut%>wYRqmN z)C^Cj#@?;@9?>hbPf5uzW+o^k%l&`DQdt8{UJ^=uMRS|zC8)8hwQXZXk{Y{T^So29 zRAUCeE5Z#J{O$-hXz=euxU|9ViEu*(f8`=KByfmp1t85pK}nZ$`KQ zgTEEwdep4-^$(Rc%pwD=Sn@2gf`1$qoHj6Cu=f$9k7|KO!-73R_*Z)CZ}dvJH~0&R zb8>H~Z-tfJYT(PY*9lYfi<1sB7u7~c~ND! zIPVS*4(4(2X_#^)^i41+VesvFWJB$_3J$Xy#)+-+XINTsHO}C*_F=pXQsLXT!|t6Z z9Q}pY)PQ$Md28Kn&EWl)1-m1!=IR}ACPd>s9K~u)J*@rzM{Gn9DhyMGuT|}8*DJcJ zR3#Q-w*aCdvhp9+@^;;&H>{i~5lauF?2n#$s%GUMSM6)p2XLQ1%Wvf!7GGQgK!srC zKcE@y`eoIwMx&J<)C%_E$|kM+D^;Jr#pI@SUxBNVYvZQ|m|KdL@e@Pq(SlJm~pNQe&SzoU0ch_s>EiXUC*p1`84{G^i zzhpVxwL350rRl~o=ZcTG{4eh6aCct5V$_Xe$-KTkW?r+atvBygTE4rVulZlD#BX=q zu(s^FMax_LcHR1~4*K4;hH+ObXV^VUl)vl>m-9gr3@y-Ip5~$}i{yNQ9m8*;t3X#$ zcxSpx3h1A`>==G^wWpT@rfM^J9^_5@s9%%X{{TCN-*1^=kyJ1L6`gqL2X*Gh#543m z+jh@O-tWhM=67`FU*?%V(TP9LGe4mdzuYtX--&;QXLh|4pYqIJcj8xgW`{fR=ZE&S z6Ti|kyV;3f723m2{OZuob>c4w?N}%NLeK0{Cw?HbH=X!3p4pR5{94cKL??coXZpVr zzuq&w-if~mdO96P3Eb~(@JtWKZ}xi^d!}DI@q?b}%})F?2_nsBPaiHH*=Oc~; z-0yX3QJ10LyR<8(;h((({y9tF(>-|3o<6U4+&SNudEbAky8tQlyvbQ14-=8dz|5KX(fgzXg0eA5}4}4nT_~m;`)brCN@E5|EtcBb@ zxY^aRPmRmvxDJ4C-TeFo%|Ai|gP+lVlj2`S0gmBYg74LPcLJZ5oSlEpX+1Vot$x0+ znZ*B30G~9DpIZX|_e<3C_!9YlwnYBbFrwsJ`YK1i(fK^Zzf4sS*IWE;1wM(+amnxU z#Q)xG^?S%ReBNh@%QQ_ z>VL};_56w8zyDPI`m~g{KYU@2{qod*H2!~E@%L|XIbWj%z9V=m9bFmyPLgxRMUwE0 zN+m2hGpKLS$Wncg_S7iT2( zpl}3OEpUfu289;SB+s>RU=$9&E8|0Fh2b3|&*x!B37K#>P!)&C@fc(tX@?V9Cm(%qcw>(w#%)zFE|BPK7>=bY;4d$4%W1s-X`Z) z;q<+1u7nTT^?o5S>EOk{op0HDcABG3Ps1|Gdb9NsDAD@xlb^jMa41{sb3$FGTtz(F zmiRH6*cW%>r*%!aA3FlJ^HC<;53O)SZL)diEm(=v=yCr4JeX=TIH$_wk z=sBZaKcmKj<3ydvF=s*;+Q9M3y**6$EKm0ld{TbN&y?`94ZYPSvOVHvG~DjYKbb&N z;Wsm*FS1G7I1tPobBN6!${>_uBH5^mypB$T6DEb{0#gQ5_+oP6PIBzb*>Qq!aN`2L zd*#&Y7>=alms=7iT-Yfmdivq3&QHOJN?1Z62ov_lzNeBr#$gv?$CKkjVL57T`7&Xr bpooTc;u2F|ou5t;F7rbh;eq%GpFsM5Tbf0x diff --git a/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm b/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm deleted file mode 100644 index 5f4d804a..00000000 --- a/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm +++ /dev/null @@ -1,17 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::CBHD; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::CBHD::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; - -@CBitcoin::CBHD::EXPORT = (); -@CBitcoin::CBHD::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - -1; diff --git a/scripts/caller.pm b/scripts/caller.pm new file mode 100644 index 00000000..b9d75d8c --- /dev/null +++ b/scripts/caller.pm @@ -0,0 +1,7 @@ + use CBitcoin::CBHD; + +my $masterkey = new CBitcoin::CBHD; +$masterkey->generate(); +my $wif = $masterkey->WIF(); + +print "Wif:$wif\n"; diff --git a/scripts/coin.pl b/scripts/coin.pl deleted file mode 100644 index e046edea..00000000 --- a/scripts/coin.pl +++ /dev/null @@ -1,39 +0,0 @@ - #use Inline C; - use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' - ,INC => ['-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' - ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/dependencies/sockets"' - ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/dependencies/threads"' - ,'-I"/home/joeldejesus/Workspace/cbitcoin/library/test"' - ] - ,CC => '/usr/bin/c99' -# ,LD => 'gcc -Wl,-rpath=../bin' - ,CLEAN_AFTER_BUILD => 0 - ,BUILD_NOISY => 1 ; - - -my $tx = {}; - - - use Inline C => <<'END_OF_C_CODE'; - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -int createTX(int arg){ - CBTransaction * self = CBNewTransaction(0,1); - CBFreeTransaction(self); - return 1; -} - - -END_OF_C_CODE diff --git a/scripts/coinxs.pl b/scripts/coinxs.pl deleted file mode 100644 index 13fc56cb..00000000 --- a/scripts/coinxs.pl +++ /dev/null @@ -1,56 +0,0 @@ -package CBitcoin; -our $VERSION = '0.01'; -BEGIN {$VERSION = '0.01'} -=pod - use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' - ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' -# ,LD => 'gcc -Wl,-rpath=../bin' - ,CLEAN_AFTER_BUILD => 0 - ,BUILD_NOISY => 1 ; -=cut -#print "9 + 16 = ", add(9, 16), "\n"; -#print "9 - 16 = ", subtract(9, 16), "\n"; -print "WIF:".createWIF(2)."\n"; - - use InlineX::XS <<'END_OF_C_CODE'; -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -char* createWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBReleaseObject(wif); - return (char *)CBByteArrayGetData(str); - CBReleaseObject(str); - //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - //CBReleaseObject(key); - //CBReleaseObject(address); - -// return (int) 1; -} - -int add(int x, int y) { - return x + y; -} - -int subtract(int x, int y) { - return x - y; -} - - -END_OF_C_CODE - - - use InlineX::XS 'END'; diff --git a/scripts/crypt/Crypt-PBC-0.9000.tar.gz b/scripts/crypt/Crypt-PBC-0.9000.tar.gz deleted file mode 100644 index 5a0bebea1435b7190971ab4494f721f9cd978376..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 62417 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 diff --git a/scripts/crypt/Crypt-PBC-0.9000/Changes b/scripts/crypt/Crypt-PBC-0.9000/Changes deleted file mode 100644 index bf55dff5..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/Changes +++ /dev/null @@ -1,167 +0,0 @@ -0.9000: Wed Jul 29 2009 - - updates were needed for the 0.5.1 release, which means that - version, or newer, is now required to build this. - -0.855: Fri Mar 27 18:42:50 EDT 2009 - - added chrony's meta.yml stuff for the github repo - -0.854: Thu Aug 21 06:21:28 EDT 2008 - - Used EU::MM's prompt() instead of rolling my own. BingOS++. - Woops. - -0.853: Thu Aug 14 12:05:26 EDT 2008 - - Fixed a build problem for bsd - - Fixed an eval { use Something } problem in a test. - It now reads eval q{ use something }; ... grrz. - -0.852: Wed Aug 13 16:29:37 EDT 2008 - - A cpan tester informed me that his libgmp was in /usr/local - ... that's kindof a no brainer. I added some rudimentary - libpaths to the Makefile.PL; I should probably make it use - some system paths. Later. - -0.851: Tue Aug 12 07:09:26 EDT 2008 - - Wow, newbie error. I can't use <> in the Makefile.PL - because it tries to slurp each INSTALLDIR=site type argument - as an input file... Doh - -0.85: Mon Aug 11 12:05:47 EDT 2008 - - introduced a bug in the Makefile.PL while fixing something - else. - -0.81: Mon Aug 11 07:17:47 EDT 2008 - - minor doc fixes were necessary - -0.8: Sun Aug 10 07:03:58 EDT 2008 - - there were bugs in the manifest, so some of the tests - weren't shipping. - - I taught the distribution to pull libpbc, build, and link - against it. I expect it won't work reliably on other - systems, but it works fine on mine. - -0.8: Sat Aug 9 07:55:29 EDT 2008 - - I have given up on version.pm and Module::Build. They both - cause more problems than they solve. - - I added the expected libpbc version to the README - -0.7.21.3.4.18: Thu Jul 31 14:33:42 EDT 2008 - - removed the Makefile.PL, causes problems - -0.7.21.2.4.18: Mon Jul 28 16:39:23 EDT 2008 - - I added libchecks to the other .PL - -0.7.21.1.4.18: Thu Jul 24 06:54:02 EDT 2008 - - brought M::B into the mix. EU::MM will cause version.pm - problems eventually. - -0.7.21.0.4.18: Sat Jul 5 08:03:51 EDT 2008 - - I brought us up to 0.4.18!! At some point Lynn fixed the - bug I was waiting on!! Hurray! - - I'm now using version.pm - - I'm now using Devel::CheckLib (so the cpan testers FAIL - reports will stop when they don't have libpbc) - -0.7.20.0-0.4.7: Mon Feb 01 15:00 EST 2007 - - jettero changed the version number in the pm file and ran - the usual battery of tests - -0.7.20.0-0.4.6: Mon Feb 01 15:00 EST 2007 - - jettero changed the version number in the pm file and ran - the usual battery of tests - - interestingly, 0.7.20-0.4.5 was never released due to bugs - in some esoteric math problem in Ben's cache. - -0.7.20.0-0.4.5: Mon Feb 01 15:00 EST 2007 - - jettero changed the version number in the pm file and ran - the usual battery of tests - - several tests failed... investigating... - -0.7.20.0-0.4.4: Mon Jan 30??? EST 2007 - - jettero changed the version number in the pm file and made - sure all the tests complete - -0.7.20.0-0.4.3: Mon Jan 15 11:00:57 EST 2007 - - jettero told PBC.pm and pairing.xs about the new - pairing_is_symmetric() function - -0.7.18.3-0.4.2: Sun Dec 10 10:27:32 EST 2006 - - jettero added element_from_bytes and set_to_bytes - -0.7.18.3-0.4.2: Sat Dec 9 12:14:56 EST 2006 - - jettero made pow_zn capable of taking a single argument, - which should be pretty clear - - jettero added a tests for that - -0.7.18.1-0.4.2: Sat Dec 2 09:54 EST 2006 - - I created a slow but reasonably accurate way of detecting - whether the pairing is symmetric, for purposes of deciding - whether G1 and G2 are algebraically similar. This is for my - own testing purposes until Ben adds pairing_is_symmetric() - to libpbc. - -0.4.2-0.7.17.1: Sat Dec 2 09:36:55 EST 2006 - - this is a bugfix for the version released 15 minutes ago. - -0.4.2-0.7.17: Sat Dec 2 09:21:55 EST 2006 - - This is a documentation fix only. - - There will be a new version very soon though. I need to - make serious changes to the argument type restrictions as - they should apparently not be the same on different types of - curves (symmetric vs asymmetric curves). - -0.4.2-0.7.16: Fri Dec 1 09:20:30 EST 2006 - - jettero made more synonyms for pairing_apply because of - frequent typos - - jettero fixed several documenation typos - -0.4.2-0.7.15: Tue Nov 28 10:16:07 EST 2006 - - jettero reversioned the package in preparation for launch. - -0.4.1-0.5.04: Tue Nov 28 10:13:55 EST 2006 - - jettero added the slamtest, which slams functions with all - the wrong arguments, literally, in the permutation sense. - It ran all night. The test in the shipped-package is _much_ - shorter, but can be extended with 'MAX_PERM_TIME=1000 make - test' - -0.4.1-0.5.03: Sun Nov 26 22:26:33 EST 2006 - - jettero added a memory (leak) test - -0.4.1-0.5.02: Sun Nov 26 21:52:00 EST 2006 - - jettero added a couple more tests and boatloads of docs - -0.3.17-0.5.01: Mon Nov 20 08:38:04 EST 2006 - - jettero completed a few more t/ tests (this time for the - earith.xs). - -0.3.17-0.5.00: Thu Nov 16 20:03:34 EST 2006 - - jettero reversioned the package to represent the version of - libpbc it is intended to work with in addition to the - version of the perl API. 0.3.17-0.5.00 means PBC.pm version - 0.5.00 intended to work with libpbc 0.3.17. - -0.10: Tue Nov 14 07:12:55 EST 2006 - - jettero added a bit of type-saftey to PBC.pm. It seems - libpbc segfaults when the LHS and BASE of pow_zn() aren't in - the same group, or when pairing_apply() is applied on - arguments that aren't GT=e_hat(G1, G2); and that took some - figurin'. - -0.09: Sun Nov 12 15:13:33 EST 2006 - - jettero started using element2bytes instead of element2mpz - to print elements. Many of the elements are atually - quadratics, and poly coeffs and the PBC crew do not make it - simple to get to the mpzs. - -0.08: Sun Nov 12 11:23:48 EST 2006 - - jettero noticed possible bugs in either the init or as_str - of elements... - -0.07: Sun Nov 12 09:03:27 EST 2006 - - jettero fixed my changelog app - -0.01 Fri Nov 10 23:07:15 2006 - - I got this package all skeled up ... I need a small part - of it for a school project so I'm going to focus on that - part first. - diff --git a/scripts/crypt/Crypt-PBC-0.9000/MANIFEST b/scripts/crypt/Crypt-PBC-0.9000/MANIFEST deleted file mode 100644 index 651f21ee..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/MANIFEST +++ /dev/null @@ -1,44 +0,0 @@ -Changes -MANIFEST -Makefile.PL -PBC.pm -PBC.xs -README -TODO -contrib/c_quicky.c -contrib/libtest.c -contrib/quicky -earith.xs -ecomp.xs -einit.xs -inc/Devel/CheckLib.pm -lib/Crypt/PBC.pod -lib/Crypt/PBC/Element.pod -lib/Crypt/PBC/Pairing.pod -pairing.xs -params_a.txt -params_d.txt -params_d159.txt -params_e.txt -pbctest.c -ppport.h -t/01_load.t -t/03_testnew.t -t/05_boneh_franklin.t -t/07_BF2.t -t/09_pairings_tests.t -t/10_test_symmetric.t -t/13_1op_arith.t -t/13_2op_arith.t -t/13_mul_znmpz.t -t/13_pow_arith.t -t/14_from_bytes.t -t/14_pow_zn_one_arg.t -t/15_mpz.t -t/20_cmp.t -t/35_scopefault.t -t/80_slamtest_a.t -t/80_slamtest_d.t -t/99_memory_tests.t -typemap -META.yml Module meta-data (added by MakeMaker) diff --git a/scripts/crypt/Crypt-PBC-0.9000/META.yml b/scripts/crypt/Crypt-PBC-0.9000/META.yml deleted file mode 100644 index 647e75e1..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/META.yml +++ /dev/null @@ -1,33 +0,0 @@ ---- #YAML:1.0 -name: Crypt-PBC -version: 0.9000 -abstract: OO interface for the Stanford PBC library -author: - - Paul Miller -license: LGPL -distribution_type: module -configure_requires: - ExtUtils::MakeMaker: 0 -build_requires: - ExtUtils::MakeMaker: 0 -requires: - Math::BigInt: 0 - Math::BigInt::GMP: 0 - MIME::Base64: 0 - perl: 5.006001 -resources: - repository: http://github.com/jettero/crypt--pbc/ -no_index: - directory: - - t - - inc -generated_by: ExtUtils::MakeMaker version 6.54 -meta-spec: - url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 -keywords: - - pbc - - ecc - - crypt - - boneh - - ibe diff --git a/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL b/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL deleted file mode 100644 index d1cf8d07..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL +++ /dev/null @@ -1,160 +0,0 @@ -use strict; -use lib qw(inc); -use Devel::CheckLib; -use ExtUtils::MakeMaker; - -my @libpath = qw(/lib /usr/lib /usr/local/lib); -my @incpath = qw(/usr/include/pbc /usr/local/include/pbc /usr/include /usr/local/include); - -my $ver = "0.5.1"; -my @extra = ( - LIBS => ['-lpbc'], - INC => join(" ", map {"-I$_"} (@incpath)), -); - -eval { assert_lib( lib => 'pbc', libpath=>\@libpath, incpath=>\@incpath, header => "pbc.h" ); }; -if( $@ ) { - warn "Error locating libpbc version 0.5.1: $@"; - - warn "\nYou can get the latest debian binaries from https://voltar.org/pbcfiles\n\n"; - sleep 1; - - my $res = ($ENV{BUILD_HERE} || prompt("Would you like to download and build libpbc from tarball automatically? [y/N]", "n")); - if( $res =~ m/y/i ) { - exit 0 unless grab_libpbc($ver); - exit 0 unless unpack_libpbc($ver); - exit 0 unless build_libpbc($ver); - - } else { - exit 0; - } -} - -WriteMakefile( - NAME => 'Crypt::PBC', - VERSION_FROM => 'PBC.pm', - PREREQ_PM => { - 'MIME::Base64' => 0, - 'Math::BigInt::GMP' => 0, - 'Math::BigInt' => 0, - }, - - ($] >= 5.005 ? - (ABSTRACT_FROM => 'lib/Crypt/PBC.pod', - AUTHOR => 'Paul Miller ') : ()), - - ($ExtUtils::MakeMaker::VERSION ge '6.48'? - (MIN_PERL_VERSION => 5.006001, - META_MERGE => { - keywords => [qw(pbc ecc crypt boneh ibe)], - resources=> { - repository => 'http://github.com/jettero/crypt--pbc/', - }, - }, - - LICENSE => 'LGPL', - ) : ()), - - @extra, - - clean => { FILES => "libpbc.a .pbctest pbc-$ver.tar.gz pbc-$ver slamtest.log " . join(" ", grep {s/\.c$//} <*.c>) }, - depend => { - "PBC.c" => " earith.xs ecomp.xs einit.xs pairing.xs ", - }, - -); - -sub build_libpbc { - my $ver = shift; - - @extra = ( - MYEXTLIB => "libpbc.a", - INC => "-Ipbc-$ver/include", - LIBS => "-lgmp", - ); - - warn "(You do need libgmp installed in order for this PBC.so to function...)\n"; - check_lib_or_exit( lib => 'gmp', libpath=>\@libpath, incpath=>\@incpath, header=>"gmp.h" ); - warn "(... it seems you have libgmp. Nevermind.)\n"; - - # we don't literally build it, we add things to the makefile - *MY::postamble = \&postamble; -} - -sub postamble { - my @CFLAGS = map {"-I$_"} @incpath; - my @LFLAGS = map {"-L$_"} @libpath; - -" -PBC\$(OBJ_EXT) : \$(MYEXTLIB) - -\$(MYEXTLIB): pbc-$ver/.libs/libpbc.so - \$(AR) \$(AR_STATIC_ARGS) \$@ pbc-$ver/.libs/*.o - -pbc-$ver/.libs/libpbc.so: - cd pbc-$ver && CFLAGS='@CFLAGS' CPPFLAGS='@CFLAGS' LDFLAGS='@LFLAGS' ./configure && \$(MAKE) \$(PASTHRU) -"; - -} - -sub unpack_libpbc { - my $ver = shift; - return 1 if -d "pbc-$ver" or $ENV{SKIP_DOWNLOAD}; - - warn "unpacking libpbc from pbc-$ver.tar.gz...\n"; - - my $worked = 0; - eval { - eval "require Archive::Tar;"; die $@ if $@; - my $tar = Archive::Tar->new; - - $tar->read("pbc-$ver.tar.gz", 1); - $tar->extract; - - $worked = 1 if -x "pbc-$ver/configure"; - }; - warn "Archive::Tar unpack problem: $@\n" if $@; - - unless( $worked ) { - if( system("gzip -dc pbc-$ver.tar.gz | tar -xvf -") == 0 ) { - $worked = 1 if -x "pbc-$ver/configure"; - } - } - - warn "failed to unpack pbc\n" unless $worked; - $worked; -} - -sub grab_libpbc { - my $ver = shift; - return 1 if -f "pbc-$ver.tar.gz" or $ENV{SKIP_DOWNLOAD}; - - warn "downloading libpbc from http://voltar.org/pbcfiles/pbc-$ver.tar.gz...\n"; - - my $worked = 0; - eval { - eval "require LWP::UserAgent"; die $@ if $@; - my $ua = LWP::UserAgent->new; - $ua->agent("crypt-pbc-fetcher/1.0"); - - my $req = HTTP::Request->new(GET => "http://voltar.org/pbcfiles/pbc-$ver.tar.gz"); - my $res = $ua->request($req, "pbc-$ver.tar.gz"); - - $worked = 1 if $res->is_success; - }; - warn "LWP fetch problem: $@\n" if $@; - - unless( $worked ) { - if( 0 != system(wget => '-O', "pbc-$ver.tar.gz", "http://voltar.org/pbcfiles/pbc-$ver.tar.gz") ) { - warn "couldn't fetch with wget...\n"; - if( 0 != system(curl => '-o', "pbc-$ver.tar.gz", "http://voltar.org/pbcfiles/pbc-$ver.tar.gz") ) { - warn "couldn't fetch with curl ...\n"; - } - } - - $worked = 1 if -f "pbc-$ver.tar.gz"; - } - - warn "failed to download pbc\n" unless $worked; - $worked; -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/PBC.pm b/scripts/crypt/Crypt-PBC-0.9000/PBC.pm deleted file mode 100644 index 090cc7ae..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/PBC.pm +++ /dev/null @@ -1,766 +0,0 @@ -package Crypt::PBC::Element; - -use strict; -use Carp; -use MIME::Base64; -use Math::BigInt lib => 'GMP'; - -our %tt; # This maps our element types and our pairings. Arguably this should be - # done in the element references themselves, but those are scalar refs, not - # hash refs. - -use overload - '""' => sub { my $this = shift; "Crypt::PBC::Element-$tt{$$this}{t}#$$this" }, - 'nomethod' => sub { my $this = shift; my $that = pop; croak "arithmetic operation '$that' not defined for $this" }; - -1; - -# DESTROY {{{ -sub DESTROY { - my $this = shift; - - my $i = $$this; - - Crypt::PBC::element_clear( $this ); - - delete $tt{$i}; -} -# }}} -# clone {{{ -sub clone { - my $this = shift; - my ($type, $pair) = @{ $tt{$$this} }{qw(t p)}; - - my $that = eval "\$pair->init_$type"; - if( $@ ) { - # Can't call method "init_G1" on an undefined value at (eval 2) line 1. - # at t/13_pow_arith.t line 28 - chomp $@; $@ =~ s/at \(eval \d+\) line \d+/during Crypt::PBC::Element::clone()/; - croak $@; - } - - return $that->set( $this ); -} -*copy = *clone; -# }}} - -#### exporters -# as_bytes {{{ -sub as_bytes { - my $this = shift; - - return Crypt::PBC::export_element( $this ); -} -# }}} -# as_hex {{{ -sub as_hex { - my $this = shift; - - return unpack("H*", $this->as_bytes); -} -*as_str = *as_hex; -# }}} -# as_base64 {{{ -sub as_base64 { - my $this = shift; - my $arg = shift || ""; - - my $that = encode_base64($this->as_bytes, $arg); - $that =~ s/\n$//sg; - - return $that; -} -# }}} -# as_bigint {{{ -sub as_bigint { - my $this = shift; - my $that = Crypt::PBC::element_to_mpz($this); - - my $int = new Math::BigInt; - $int->{value} = $that; - $int->{sign} = '+'; - - # I wanted to do something like thits, but I think - # the mpz_t's returned from element_to_mpz are always going to be positive... - # $int->{sign} = $this->is_neg ? "-" : "+"; - - return $int; -} -# }}} -# stddump {{{ -sub stddump { - my $this = shift; - - Crypt::PBC::element_fprintf(*STDOUT, '%B', $this ); -} -# }}} -# errdump {{{ -sub errdump { - my $this = shift; - - return Crypt::PBC::element_fprintf(*STDERR, '%B', $this ); -} -# }}} - -#### initializers and set routines -# random {{{ -sub random { - my $this = shift; - - Crypt::PBC::element_random( $this ); - - return $this; -} -# }}} -# set_to_bytes {{{ -sub set_to_bytes { - my $this = shift; - my $data = shift; - - croak "provide something to set the element to" unless defined $data and length $data > 0; - Crypt::PBC::element_from_bytes($this, $data); - - $this; -} -# }}} -# set_to_hash {{{ -sub set_to_hash { - my $this = shift; - my $hash = shift; - - croak "provide something to set the element to" unless defined $hash and length $hash > 0; - #my $type = $tt{$$this}{t}; - #warn " >type=$type; hash=$hash...@_...<\n"; - Crypt::PBC::element_from_hash($this, $hash); - #warn " \n"; - - $this; -} -# }}} -# set_to_int {{{ -sub set_to_int { - my $this = shift; - my $int = shift; - - croak "int provided ($int) is not acceptable" unless $int =~ m/^\-?[0-9]+\z/s; - - Crypt::PBC::element_set_si($this, $int); - - $this; -} -# }}} -# set_to_bigint {{{ -sub set_to_bigint { - my $this = shift; - my $int = shift; - - croak "int provided is not a bigint" unless ref $int and $int->isa("Math::BigInt"); - - Crypt::PBC::element_set_mpz($this, $int->{value}); - - $this; -} -# }}} -# set {{{ -sub set { - my $this = shift; - my $that = shift; - - croak "LHS and RHS must be algebraically similar ($tt{$$this}{c} vs $tt{$$that}{c})" - unless $tt{$$this}{c} eq $tt{$$that}{c}; - - Crypt::PBC::element_set($this, $that); - - $this; -} -# }}} -# set0 {{{ -sub set0 { - my $this = shift; - my $that = shift; - - Crypt::PBC::element_set0($this); - - $this; -} -# }}} -# set1 {{{ -sub set1 { - my $this = shift; - my $that = shift; - - Crypt::PBC::element_set1($this); - - $this; -} -# }}} - -#### comparisons -# is0 {{{ -sub is0 { - my $this = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - return Crypt::PBC::element_is0( $this ); -} -# }}} -# is1 {{{ -sub is1 { - my $this = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - return Crypt::PBC::element_is1( $this ); -} -# }}} -# is_eq {{{ -sub is_eq { - my $this = shift; - my $that = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and RHS must be algebraically similar ($tt{$$this}{c} vs $tt{$$that}{c}) " - unless $tt{$$this}{c} eq $tt{$$that}{c}; - - return not Crypt::PBC::element_cmp( $this, $that ); # returns 0 if they're algebraically similar -} -# }}} -# is_sqr {{{ -sub is_sqr { - my $this = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - my $type = $tt{$$this}{t}; - - return 1 if $type eq "G1"; - return 1 if $type eq "G2"; - return 1 if $type eq "GT"; - - return Crypt::PBC::element_is_sqr( $this ); -} -# }}} - -#### exponentiation -# pow_zn {{{ -sub pow_zn { - my $this = shift; - my $base = shift; - my $expo = shift; - - if( defined $base and not defined $expo ) { - $expo = $base; - $base = $this; - } - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and BASE must be algebraically similar ($tt{$$this}{c} vs $tt{$$base}{c})" - unless $tt{$$this}{c} eq $tt{$$base}{c}; - - croak "EXPO must be of type Zr (not $tt{$$expo}{t})" unless $tt{$$expo}{t} eq "Zr"; - - Crypt::PBC::element_pow_zn( $this, $base, $expo ); - - $this; -} -# }}} -# pow2_zn {{{ -sub pow2_zn { - my $this = shift; - my $a1 = shift; - my $n1 = shift; - my $a2 = shift; - my $n2 = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; - croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; - croak "n1 must be of type Zr (not $tt{$$n1}{t})" unless $tt{$$n1}{t} eq "Zr"; - croak "n2 must be of type Zr (not $tt{$$n2}{t})" unless $tt{$$n2}{t} eq "Zr"; - - Crypt::PBC::element_pow2_zn( $this, $a1, $n1, $a2, $n2 ); - - $this; -} -# }}} -# pow3_zn {{{ -sub pow3_zn { - my $this = shift; - my $a1 = shift; - my $n1 = shift; - my $a2 = shift; - my $n2 = shift; - my $a3 = shift; - my $n3 = shift; - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; - croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; - croak "LHS and a3 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a3}{c})" unless $tt{$$this}{c} eq $tt{$$a3}{c}; - croak "n1 must be of type Zr (not $tt{$$n1}{t})" unless $tt{$$n1}{t} eq "Zr"; - croak "n2 must be of type Zr (not $tt{$$n2}{t})" unless $tt{$$n2}{t} eq "Zr"; - croak "n3 must be of type Zr (not $tt{$$n3}{t})" unless $tt{$$n3}{t} eq "Zr"; - - Crypt::PBC::element_pow3_zn( $this, $a1, $n1, $a2, $n2, $a3, $n3 ); - - $this; -} -# }}} - -# pow_bigint {{{ -sub pow_bigint { - my $this = shift; - my $base = shift; - my $expo = shift; - - if( defined $base and not defined $expo ) { - $expo = $base; - $base = $this; - } - - croak "EXPO provided is not a bigint" unless ref $expo and $expo->isa("Math::BigInt"); - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and BASE must be algebraically similar ($tt{$$this}{c} vs $tt{$$base}{c})" - unless exists $tt{$$this} and $tt{$$this}{c} eq $tt{$$base}{c}; - - Crypt::PBC::element_pow_mpz( $this, $base, $expo->{value} ); - - $this; -} -# }}} -# pow2_bigint {{{ -sub pow2_bigint { - my $this = shift; - my $a1 = shift; - my $n1 = shift; - my $a2 = shift; - my $n2 = shift; - - croak "n1 provided is not a bigint" unless ref $n1 and $n1->isa("Math::BigInt"); - croak "n2 provided is not a bigint" unless ref $n2 and $n2->isa("Math::BigInt"); - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; - croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; - - Crypt::PBC::element_pow2_mpz( $this, $a1, $n1->{value}, $a2, $n2->{value} ); - - $this; -} -# }}} -# pow3_bigint {{{ -sub pow3_bigint { - my $this = shift; - my $a1 = shift; - my $n1 = shift; - my $a2 = shift; - my $n2 = shift; - my $a3 = shift; - my $n3 = shift; - - croak "n1 provided is not a bigint" unless ref $n1 and $n1->isa("Math::BigInt"); - croak "n2 provided is not a bigint" unless ref $n2 and $n2->isa("Math::BigInt"); - croak "n3 provided is not a bigint" unless ref $n3 and $n2->isa("Math::BigInt"); - - croak "LHS should have a type" unless exists $tt{$$this}; - croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; - croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; - croak "LHS and a3 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a3}{c})" unless $tt{$$this}{c} eq $tt{$$a3}{c}; - - Crypt::PBC::element_pow3_mpz( $this, $a1, $n1->{value}, $a2, $n2->{value}, $a3, $n3->{value} ); - - $this; -} -# }}} - -#### arith -## 1op -# square {{{ -sub square { - my $lhs = shift; - my $rhs = shift; - - if( $rhs ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; - - } else { - $rhs = $lhs; - } - - Crypt::PBC::element_square( $lhs, $rhs ); - - $lhs; -} -# }}} -# double {{{ -sub double { - my $lhs = shift; - my $rhs = shift; - - if( $rhs ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; - - } else { - $rhs = $lhs; - } - - Crypt::PBC::element_double( $lhs, $rhs ); - - $lhs; -} -# }}} -# halve {{{ -sub halve { - my $lhs = shift; - my $rhs = shift; - - if( $rhs ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; - - } else { - $rhs = $lhs; - } - - Crypt::PBC::element_halve( $lhs, $rhs ); - - $lhs; -} -# }}} -# neg {{{ -sub neg { - my $lhs = shift; - my $rhs = shift; - - if( $rhs ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; - - } else { - $rhs = $lhs; - } - - Crypt::PBC::element_neg( $lhs, $rhs ); - - $lhs; -} -# }}} -# invert {{{ -sub invert { - my $lhs = shift; - my $rhs = shift; - - if( $rhs ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; - - } else { - $rhs = $lhs; - } - - Crypt::PBC::element_invert( $lhs, $rhs ); - - $lhs; -} -# }}} - -## 2op -# add {{{ -sub add { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; - - Crypt::PBC::element_add( $lhs, $rhs1, $rhs2 ); - - } else { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - Crypt::PBC::element_add( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} -# Sub {{{ -sub Sub { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; - - Crypt::PBC::element_sub( $lhs, $rhs1, $rhs2 ); - - } else { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - Crypt::PBC::element_sub( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} -# mul {{{ -sub mul { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; - - Crypt::PBC::element_mul( $lhs, $rhs1, $rhs2 ); - - } else { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - Crypt::PBC::element_mul( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} -# div {{{ -sub div { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; - - Crypt::PBC::element_div( $lhs, $rhs1, $rhs2 ); - - } else { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - Crypt::PBC::element_div( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} - -# mul_zn {{{ -sub mul_zn { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - croak "RHS2 should be in Zr (not $tt{$$rhs2}{t})" unless $tt{$$rhs2}{t} eq "Zr"; - - Crypt::PBC::element_mul_zn( $lhs, $rhs1, $rhs2 ); - - } else { - croak "RHS should be in Zr (not $tt{$$rhs1}{t})" - unless $tt{$$rhs1}{t} eq "Zr"; - - Crypt::PBC::element_mul_zn( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} -# mul_int {{{ -sub mul_int { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - croak "int provided ($rhs2) is not acceptable" unless $rhs2 =~ m/^\-?[0-9]+\z/s; - - Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); - - } else { - croak "int provided ($rhs1) is not acceptable" unless $rhs1 =~ m/^\-?[0-9]+\z/s; - - Crypt::PBC::element_mul_si( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} -# mul_bigint {{{ -sub mul_bigint { - my $lhs = shift; - my $rhs1 = shift; - my $rhs2 = shift; - - if( $rhs2 ) { - croak "LHS should have a type" unless exists $tt{$$lhs}; - croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" - unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; - - croak "int provided is not a bigint" unless ref $rhs2 and $rhs2->isa("Math::BigInt"); - - Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); - - } else { - croak "int provided is not a bigint" unless ref $rhs1 and $rhs1->isa("Math::BigInt"); - - Crypt::PBC::element_mul_si( $lhs, $lhs, $rhs1 ); - } - - $lhs; -} -# }}} - -# pairing_apply {{{ -sub pairing_apply { - my $this = shift; - my $rhs1 = shift; - my $rhs2 = shift; - my $pair = $tt{$$this}{p}; - - my $c1 = $tt{$$rhs1}{c}; - my $c2 = $tt{$$rhs2}{c}; - - croak "group type for LHS must be GT (not $tt{$$this}{t})" unless $tt{$$this}{t} eq "GT"; - croak "group type for RHS1 must be G1 (not $c1)" unless $c1 eq "G1" or $c1 eq "G[12]"; - croak "group type for RHS2 must be G2 (not $c2)" unless $c2 eq "G2" or $c2 eq "G[12]"; - - Crypt::PBC::pairing_apply( $this => ($rhs1, $rhs2) => $pair ); - - $this; -} -*ehat = *pairing_apply; -*e_hat = *pairing_apply; -*apply_pairing = *pairing_apply; -# }}} - -#### package Crypt::PBC::Pairing {{{ - -package Crypt::PBC::Pairing; - -use strict; -use Carp; - -1; - -sub _stype { - my $this = shift; - my $that = shift; - my $type = shift; - - $Crypt::PBC::Element::tt{$$that} = { - t => $type, - p => $this, - c => $type, - }; - - if( $type =~ m/G[12]/ and Crypt::PBC::pairing_is_symmetric($this) ) { - $Crypt::PBC::Element::tt{$$that}{c} = "G[12]"; - } - - return; -} - -sub init_G1 { my $this = shift; my $that = Crypt::PBC::element_init_G1( $this ); $this->_stype($that => "G1"); $that } -sub init_G2 { my $this = shift; my $that = Crypt::PBC::element_init_G2( $this ); $this->_stype($that => "G2"); $that } -sub init_GT { my $this = shift; my $that = Crypt::PBC::element_init_GT( $this ); $this->_stype($that => "GT"); $that } -sub init_Zr { my $this = shift; my $that = Crypt::PBC::element_init_Zr( $this ); $this->_stype($that => "Zr"); $that } -sub DESTROY { my $this = shift; my $that = Crypt::PBC::pairing_clear( $this ); } - -# }}} -#### package Crypt::PBC {{{ - -package Crypt::PBC; - -use strict; -use warnings; -use Carp; - -our $VERSION = '0.9000'; - -# use base 'Exporter'; -# our %EXPORT_TAGS = ( 'all' => [ qw( ) ] ); -# our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); -# our @EXPORT = qw( ); -# -# sub AUTOLOAD { -# my $constname; -# our $AUTOLOAD; ($constname = $AUTOLOAD) =~ s/.*:://; -# croak "Crypt::PBC::constant wtf($AUTOLOAD, $constname) not defined" if $constname eq 'constant'; -# my ($error, $val) = constant($constname); -# if( $error ) { croak $error } -# goto &$AUTOLOAD; -# } - -require XSLoader; -XSLoader::load('Crypt::PBC', $VERSION); - -1; - -sub new { - my $class = shift; - my $that; - my $arg = shift; - - TOP: { - if( ref($arg) eq "GLOB" ) { - my $contents = do { local $/; <$arg> }; - - $arg = $contents; - redo TOP; - - } elsif( $arg !~ m/\n/ and -f $arg ) { - open my $in, $arg or croak "couldn't open param file ($arg): $!"; - my $contents = do { local $/; <$in> }; close $in; - - $arg = $contents; - redo TOP; - - } elsif( $arg ) { - $arg =~ s/^\s*//s; - $arg =~ s/\s*$//s; - - if( $arg =~ m/^(?s:type\s+[a-z]+\s*|[a-z0-9]+\s+[0-9]+\s*)+\z/s ) { - $that = Crypt::PBC::pairing_init_str($arg); - - } else { - croak "either the filename doesn't exist or that param string is unparsable: $arg"; - } - - } else { - croak "you must pass a file, glob (stream), or init params to new()"; - } - } - - croak "something went wrong ... you must pass a file, glob (stream), or init params to new()" unless $$that>0; - return $that; -} - -# }}} - -1; diff --git a/scripts/crypt/Crypt-PBC-0.9000/PBC.xs b/scripts/crypt/Crypt-PBC-0.9000/PBC.xs deleted file mode 100644 index 86ba12dd..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/PBC.xs +++ /dev/null @@ -1,94 +0,0 @@ -#include - -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include "ppport.h" - -MODULE = Crypt::PBC PACKAGE = Crypt::PBC - -PROTOTYPES: ENABLE - -INCLUDE: pairing.xs -INCLUDE: einit.xs -INCLUDE: earith.xs -INCLUDE: ecomp.xs - -void -element_fprintf(stream,format,element) - FILE * stream - char * format - element_t * element - - CODE: - element_fprintf(stream, format, *element); - -SV * -export_element(element) - element_t * element - - PREINIT: - char *buf; - int len; - - CODE: - len = element_length_in_bytes(*element); - buf = malloc( len + 2 ); - - // My bug posted to the pbc-dev newsgroup, where I was getting different - // results for different elements that test equal? Yeah, the following - // line was not present when I got that result. I'm awesome. 11/15/06 - element_to_bytes(buf, *element); - - RETVAL = newSVpvn(buf, len); - - free(buf); - - OUTPUT: - RETVAL - -mpz_t * -element_to_mpz(element) - element_t * element - - PREINIT: - mpz_t * ret = malloc (sizeof(mpz_t)); - - CODE: - mpz_init(*ret); - element_to_mpz(*ret, *element); - RETVAL = ret; - - OUTPUT: - RETVAL - -int -element_length_in_bytes(element) - element_t * element - - CODE: - RETVAL = element_length_in_bytes(*element); - - OUTPUT: - RETVAL - -SV * -element_order(element) - element_t * element - - PREINIT: - int i; - char *c; - - CODE: - i = mpz_sizeinbase(element[0]->field->order, 10); - c = malloc(i + 2); - - mpz_get_str(c, 10, element[0]->field->order); - - RETVAL = newSVpv(c, strlen(c)); - free(c); - - OUTPUT: - RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/README b/scripts/crypt/Crypt-PBC-0.9000/README deleted file mode 100644 index a2ef1086..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/README +++ /dev/null @@ -1,39 +0,0 @@ -LIBPBC - -This is tested against libpbc version 0.4.18 . - -(The v0.8+ builds will pull the right version of libpbc and try to build it on some platforms.) - -COPYRIGHT - -Copyright (C) 2008 by Paul Miller - -SYNOPSIS - - use Crypt::PBC; - - my $pairing = new Crypt::PBC("params_d.txt"); - my $G1 = $pairing->init_G1->random; - my $G2 = $pairing->init_G2->random->double->square; - my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); - ------------------------------ - -"Chapter 1. Overview" - -The following text is the Overview chapter from the PBC library -documentation: - - The PBC library is a free portable C library designed to make it - easy to implement pairing-based cryptosystems. It provides an - abstract interface to a cyclic group with a bilinear pairing, and - the programmer does not need to worry about, or even know about - elliptic curves. - - It is built on top of GMP, another C library which performs - arbitrary precision arithmetic on integers, rationals and floats - with strong emphasis on portability and speed. - - The PBC library homepage: http://crypto.stanford.edu/pbc/ - - The GMP library homepage: http://www.swox.com/gmp/ diff --git a/scripts/crypt/Crypt-PBC-0.9000/TODO b/scripts/crypt/Crypt-PBC-0.9000/TODO deleted file mode 100644 index 587dfa75..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/TODO +++ /dev/null @@ -1,96 +0,0 @@ - - ** Updated: 12/02/2006 ** - - It would seem G1 and G2 are interchangable in some curves! - - "It turns out type A, A1 and E pairings are symmetric, and types D, F have - G1 being a group whose elements have a shorter representation than G2's - and G1 and G2 are not interchangeable." --Lynn - - I may need to rethink the argument type restrictions at some point. - - - you cannot tell if elements are compatible by their - element_size_in_bytes(), nor by their element->field->order - - A GT is compatible with a G2 and a G1 is compatible with a G2 under a - symmetric curve, which -- I think -- can be detected if a G1 and a G2 are - the same size and order? - - - "The next release will have int pairing_is_symmetric(pairing_ptr p) - function, which tells you when G1 and G2 are the same. " -- Lynn - - ** Updated: 11/28/2006 ** - - - There is no params support at all yet, and there probably should be. - - There are no mathematical tests at all yet, and there probably should - be. - - There should be more type-safety checks. For instance, element_is_sqr() - sagfaults on G1 and G2 elements. We'd like a croak() instead of an - unexplained exit. - -Please send feature requests to Paul Miller and I will try to accommodate. - -The following table lists the libpbc functions, whether they're ported in the -.xs files, whether they've been exported by the PM object oriented interface, -whether they've been documented, called in a test and finally; whether they've -been tested for mathematical accuracy (usually not) or whether they've been -"slammed" with all ther permutations of wrong group types inside an eval {}s. - -[Note: these are the XS names, not the PBC names (mostly).] - -+---------------------+----------------+---------------+-----------+------------+-------------+ -| libpbc function | XS port / Docs | PM OOi / Docs | t/ called | t/ slammed | t/ accuracy | -+---------------------+----------------+---------------+-----------+------------+-------------+ -| element_fprintf | x x | x e | \0 | \0 | \0 | -| element_export | x x | x e | x | \0 | x | -| element_to_mpz | x x | x e | x | \0 | x | -| element_add | x x | x e | 2 | 2 | | -| element_sub | x x | x e | 2 | 2 | | -| element_mul | x x | x e | 2 | 2 | | -| element_mul_zn | x x | x | 2 | 2 | | -| element_mul_mpz | x x | x | 2 | 2 | | -| element_mul_si | x x | x | 2 | 2 | | -| element_div | x x | x e | 2 | 2 | | -| element_double | x x | x e | 2 | 1 | | -| element_halve | x x | x e | 2 | 1 | | -| element_square | x x | x e | 2 | 1 | | -| element_neg | x x | x e | 2 | 1 | | -| element_invert | x x | x e | 2 | 1 | | -| element_pow_zn | x x | x e | x | 2 | x | -| element_pow_mpz | x x | x e | x | 2 | | -| element_pow2_zn | x x | x e | x | 4 | | -| element_pow3_zn | x x | x e | x | 6 | | -| element_pow2_mpz | x x | x e | x | 4 | | -| element_pow3_mpz | x x | x e | x | 6 | | -| element_is0 | x x | x e | x | 1 | | -| element_is1 | x x | x e | x | 1 | | -| element_is_sqr | x x | x e | x | 1 | x | -| element_cmp | x x | x e | x | 1 | | -| element_clear | x x | x e | | \0 | \0 | -| element_random | x x | x e | x | 1 | x | -| element_set0 | x x | x e | x | 1 | x | -| element_set1 | x x | x e | x | 1 | x | -| element_set | x x | x e | x | 1 | x | -| element_set_si | x x | x e | x | 1 | x | -| element_set_mpz | x x | x e | x | 1 | x | -| element_from_hash | x x | x e | x | 1 | x | -| pairing_init_stream | x x | x c | x | \0 | x | -| pairing_init_str | x x | x c | x | \0 | x | -| pairing_clear | x x | x p | | \0 | \0 | -| pairing_apply | x x | x e | x | 2 | x | -| element_init_G1 | x x | x p | x | \0 | \0 | -| element_init_G2 | x x | x p | x | \0 | \0 | -| element_init_GT | x x | x p | x | \0 | \0 | -| element_init_Zr | x x | x p | x | \0 | \0 | -| element_pp_init | | | | | | -| element_pp_clear | | | | | | -| element_pp_pow | | | | | | -| a_param_init | | | | | | -| a_param_clear | | | | | | -| a_param_gen | | | | | | -| a_param_out_str | | | | | | -| ... | | | | | | -| f_param_init | | | | | | -| f_param_clear | | | | | | -| f_param_gen | | | | | | -| f_param_out_str | | | | | | -+---------------------+----------------+---------------+-----------+------------+-------------+ diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c b/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c deleted file mode 100644 index 85df44c9..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c +++ /dev/null @@ -1,33 +0,0 @@ -// C: -I/usr/include/pbc -lpbc -// cat params_d.txt | c c_quicky.c - -#include -#include -#include - -char huge1[4096] = "TEST"; -char huge2[4096] = "another test"; - -int main() { - pairing_t pairing; - element_t gt, g1, g2; - char ptr[4096]; - - size_t count = fread(ptr, 1, 1024, stdin); - if (!count) pbc_die("input error"); - if (pairing_init_set_buf(pairing, ptr, count)) pbc_die("pairing init failed"); - - element_init_GT(gt, pairing); - element_init_G1(g1, pairing); - element_init_G2(g2, pairing); - - element_random(g1); - element_random(g2); - - element_from_hash(g1, huge1, strlen(huge1)); - element_from_hash(g2, huge2, strlen(huge2)); - - pairing_apply(gt, g1, g2, pairing); - - element_printf("gt: %B\n", gt); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c b/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c deleted file mode 100644 index 05e99ceb..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c +++ /dev/null @@ -1,13 +0,0 @@ - -#include -#include - -char *test = "type a\nq 8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791\nh 12016012264891146079388821366740534204802954401251311822919615131047207289359704531102844802183906537786776\nr 730750818665451621361119245571504901405976559617\nexp2 159\nexp1 107\nsign1 1\nsign0 1\n"; - -int main() { - pairing_t pairing; - pairing_init_set_buf(pairing, test, strlen(test)); - - return 0; -} - diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky b/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky deleted file mode 100755 index 76017bdf..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky +++ /dev/null @@ -1,22 +0,0 @@ -#!/usr/bin/perl - -# load this test version, not the installed version: -BEGIN { system('perl Makefile.PL') unless -f 'Makefile'; system("make"); unshift @INC, 'blib/arch', 'blib/lib' } - -use strict; -use Crypt::PBC; -use Math::BigInt (try => 'GMP'); - -my $curve = new Crypt::PBC("params_d159.txt"); -my $x = $curve->init_Zr->random; -my $y = $curve->init_Zr->random; -my $xy = $curve->init_Zr->set( $x )->mul( $y ); -my $GT1 = $curve->init_GT->random; -my $GT2 = $curve->init_GT->set( $GT1 ); - -$GT1->pow_zn( $xy ); -$GT2->pow_zn( $x )->pow_zn( $y ); - -$| = 1; -print "gt_to_xy = ", $GT1->as_base64, "\n"; -print "gt_to_x_to_y = ", $GT2->as_base64, "\n"; diff --git a/scripts/crypt/Crypt-PBC-0.9000/earith.xs b/scripts/crypt/Crypt-PBC-0.9000/earith.xs deleted file mode 100644 index 96729a4b..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/earith.xs +++ /dev/null @@ -1,168 +0,0 @@ -void -element_add(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - element_t * rhs2 - - CODE: - element_add(*lhs, *rhs1, *rhs2); - -void -element_sub(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - element_t * rhs2 - - CODE: - element_sub(*lhs, *rhs1, *rhs2); - -void -element_mul(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - element_t * rhs2 - - CODE: - element_mul(*lhs, *rhs1, *rhs2); - -void -element_mul_zn(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - element_t * rhs2 - - CODE: - element_mul_zn(*lhs, *rhs1, *rhs2); - -void -element_mul_mpz(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - mpz_t * rhs2 - - CODE: - element_mul_mpz(*lhs, *rhs1, *rhs2); - -void -element_mul_si(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - long rhs2 - - CODE: - element_mul_si(*lhs, *rhs1, rhs2); - -void -element_div(lhs,rhs1,rhs2) - element_t * lhs - element_t * rhs1 - element_t * rhs2 - - CODE: - element_div(*lhs, *rhs1, *rhs2); - -void -element_double(lhs,rhs) - element_t * lhs - element_t * rhs - - CODE: - element_double(*lhs,*rhs); - -void -element_halve(lhs,rhs) - element_t * lhs - element_t * rhs - - CODE: - element_halve(*lhs,*rhs); - -void -element_square(lhs,rhs) - element_t * lhs - element_t * rhs - - CODE: - element_square(*lhs,*rhs); - -void -element_neg(lhs,rhs) - element_t * lhs - element_t * rhs - - CODE: - element_neg(*lhs,*rhs); - -void -element_invert(lhs,rhs) - element_t * lhs - element_t * rhs - - CODE: - element_invert(*lhs,*rhs); - -void -element_pow_zn(LHS,RHS_base,RHS_expo) - element_t * LHS - element_t * RHS_base - element_t * RHS_expo - - CODE: - element_pow_zn(*LHS, *RHS_base, *RHS_expo); - -void -element_pow2_zn(x,a1,n1,a2,n2) - element_t * x - element_t * a1 - element_t * n1 - element_t * a2 - element_t * n2 - - CODE: - element_pow2_zn(*x,*a1,*n2,*a2,*n2); // sets x = a1^n1 times a2^n2, but n1, n2 must be elements of a ring Z_n for some integer n. - -void -element_pow3_zn(x,a1,n1,a2,n2,a3,n3) - element_t * x - element_t * a1 - element_t * n1 - element_t * a2 - element_t * n2 - element_t * a3 - element_t * n3 - - CODE: - element_pow3_zn(*x,*a1,*n2,*a2,*n2,*a3,*n3); - -void -element_pow_mpz(LHS,RHS_base,RHS_expo) - element_t * LHS - element_t * RHS_base - mpz_t * RHS_expo - - CODE: - element_pow_mpz(*LHS, *RHS_base, *RHS_expo); - -void -element_pow2_mpz(x,a1,n1,a2,n2) - element_t * x - element_t * a1 - mpz_t * n1 - element_t * a2 - mpz_t * n2 - - CODE: - element_pow2_mpz(*x,*a1,*n2,*a2,*n2); - -void -element_pow3_mpz(x,a1,n1,a2,n2,a3,n3) - element_t * x - element_t * a1 - mpz_t * n1 - element_t * a2 - mpz_t * n2 - element_t * a3 - mpz_t * n3 - - CODE: - element_pow3_mpz(*x,*a1,*n2,*a2,*n2,*a3,*n3); diff --git a/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs b/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs deleted file mode 100644 index 31f970e6..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs +++ /dev/null @@ -1,40 +0,0 @@ -int -element_is0(element) - element_t * element - - CODE: - RETVAL = element_is0(*element); - - OUTPUT: - RETVAL - -int -element_is1(element) - element_t * element - - CODE: - RETVAL = element_is1(*element); - - OUTPUT: - RETVAL - -int -element_is_sqr(element) - element_t * element - - CODE: - RETVAL = element_is_sqr(*element); - - OUTPUT: - RETVAL - -int -element_cmp(a,b) - element_t * a - element_t * b - - CODE: - RETVAL = element_cmp(*a, *b); - - OUTPUT: - RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/einit.xs b/scripts/crypt/Crypt-PBC-0.9000/einit.xs deleted file mode 100644 index a869fe35..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/einit.xs +++ /dev/null @@ -1,134 +0,0 @@ -element_t * -element_init_G1(pairing) - pairing_t * pairing - - PREINIT: - element_t * element = malloc( sizeof(element_t) ); - - CODE: - element_init_G1(*element, *pairing); - RETVAL = element; - - OUTPUT: - RETVAL - -element_t * -element_init_G2(pairing) - pairing_t * pairing - - PREINIT: - element_t * element = malloc( sizeof(element_t) ); - - CODE: - element_init_G2(*element, *pairing); - RETVAL = element; - - OUTPUT: - RETVAL - -element_t * -element_init_GT(pairing) - pairing_t * pairing - - PREINIT: - element_t * element = malloc( sizeof(element_t) ); - - CODE: - element_init_GT(*element, *pairing); - RETVAL = element; - - OUTPUT: - RETVAL - -element_t * -element_init_Zr(pairing) - pairing_t * pairing - - PREINIT: - element_t * element = malloc( sizeof(element_t) ); - - CODE: - element_init_Zr(*element, *pairing); - RETVAL = element; - - OUTPUT: - RETVAL - -void -element_clear(element) - element_t * element - - CODE: - element_clear(*element); - free(element); - -void -element_random(element) - element_t * element - - CODE: - element_random(*element); - -void -element_set0(element) - element_t * element - - CODE: - element_set0(*element); - -void -element_set1(element) - element_t * element - - CODE: - element_set1(*element); - -void -element_set(a,b) - element_t * a - element_t * b - - CODE: - element_set(*a, *b); - -void -element_set_si(a,b) - element_t * a - long b - - CODE: - element_set_si(*a, b); - -void -element_set_mpz(a,m) - element_t * a - mpz_t * m - - CODE: - element_set_mpz(*a, *m); - -void -element_from_hash(element,hash) - element_t * element - SV * hash - - PREINIT: - STRLEN len; - char * ptr; - - CODE: - ptr = SvPV(hash, len); - element_from_hash(*element, ptr, len); - -void -element_from_bytes(element,data) - element_t * element - SV * data - - PREINIT: - STRLEN len; - char * ptr; - - CODE: - ptr = SvPV(data, len); - element_from_bytes(*element, ptr); // , len); diff --git a/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm b/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm deleted file mode 100644 index 80e0dc7f..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm +++ /dev/null @@ -1,380 +0,0 @@ -# $Id: CheckLib.pm,v 1.25 2008/10/27 12:16:23 drhyde Exp $ - -package # -Devel::CheckLib; - -use strict; -use vars qw($VERSION @ISA @EXPORT); -$VERSION = '0.6'; -use Config; - -use File::Spec; -use File::Temp; - -require Exporter; -@ISA = qw(Exporter); -@EXPORT = qw(assert_lib check_lib_or_exit); - -# localising prevents the warningness leaking out of this module -local $^W = 1; # use warnings is a 5.6-ism - -_findcc(); # bomb out early if there's no compiler - -=head1 NAME - -Devel::CheckLib - check that a library is available - -=head1 DESCRIPTION - -Devel::CheckLib is a perl module that checks whether a particular C -library and its headers are available. - -=head1 SYNOPSIS - - use Devel::CheckLib; - - check_lib_or_exit( lib => 'jpeg', header => 'jpeglib.h' ); - check_lib_or_exit( lib => [ 'iconv', 'jpeg' ] ); - - # or prompt for path to library and then do this: - check_lib_or_exit( lib => 'jpeg', libpath => $additional_path ); - -=head1 USING IT IN Makefile.PL or Build.PL - -If you want to use this from Makefile.PL or Build.PL, do -not simply copy the module into your distribution as this may cause -problems when PAUSE and search.cpan.org index the distro. Instead, use -the use-devel-checklib script. - -=head1 HOW IT WORKS - -You pass named parameters to a function, describing to it how to build -and link to the libraries. - -It works by trying to compile this: - - int main(void) { return 0; } - -and linking it to the specified libraries. If something pops out the end -which looks executable, then we know that it worked. That tiny program is -built once for each library that you specify, and (without linking) once -for each header file. - -=head1 FUNCTIONS - -All of these take the same named parameters and are exported by default. -To avoid exporting them, C. - -=head2 assert_lib - -This takes several named parameters, all of which are optional, and dies -with an error message if any of the libraries listed can -not be found. B: dying in a Makefile.PL or Build.PL may provoke -a 'FAIL' report from CPAN Testers' automated smoke testers. Use -C instead. - -The named parameters are: - -=over - -=item lib - -Must be either a string with the name of a single -library or a reference to an array of strings of library names. Depending -on the compiler found, library names will be fed to the compiler either as -C<-l> arguments or as C<.lib> file names. (E.g. C<-ljpeg> or C) - -=item libpath - -a string or an array of strings -representing additional paths to search for libraries. - -=item LIBS - -a C-style space-seperated list of -libraries (each preceded by '-l') and directories (preceded by '-L'). - -This can also be supplied on the command-line. - -=back - -And libraries are no use without header files, so ... - -=over - -=item header - -Must be either a string with the name of a single -header file or a reference to an array of strings of header file names. - -=item incpath - -a string or an array of strings -representing additional paths to search for headers. - -=item INC - -a C-style space-seperated list of -incpaths, each preceded by '-I'. - -This can also be supplied on the command-line. - -=back - -=head2 check_lib_or_exit - -This behaves exactly the same as C except that instead of -dieing, it warns (with exactly the same error message) and exits. -This is intended for use in Makefile.PL / Build.PL -when you might want to prompt the user for various paths and -things before checking that what they've told you is sane. - -If any library or header is missing, it exits with an exit value of 0 to avoid -causing a CPAN Testers 'FAIL' report. CPAN Testers should ignore this -result -- which is what you want if an external library dependency is not -available. - -=cut - -sub check_lib_or_exit { - eval 'assert_lib(@_)'; - if($@) { - warn $@; - exit; - } -} - -sub assert_lib { - my %args = @_; - my (@libs, @libpaths, @headers, @incpaths); - - # FIXME: these four just SCREAM "refactor" at me - @libs = (ref($args{lib}) ? @{$args{lib}} : $args{lib}) - if $args{lib}; - @libpaths = (ref($args{libpath}) ? @{$args{libpath}} : $args{libpath}) - if $args{libpath}; - @headers = (ref($args{header}) ? @{$args{header}} : $args{header}) - if $args{header}; - @incpaths = (ref($args{incpath}) ? @{$args{incpath}} : $args{incpath}) - if $args{incpath}; - - # work-a-like for Makefile.PL's LIBS and INC arguments - # if given as command-line argument, append to %args - for my $arg (@ARGV) { - for my $mm_attr_key qw(LIBS INC) { - if (my ($mm_attr_value) = $arg =~ /\A $mm_attr_key = (.*)/x) { - # it is tempting to put some \s* into the expression, but the - # MM command-line parser only accepts LIBS etc. followed by =, - # so we should not be any more lenient with whitespace than that - $args{$mm_attr_key} .= " $mm_attr_value"; - } - } - } - - # using special form of split to trim whitespace - if(defined($args{LIBS})) { - foreach my $arg (split(' ', $args{LIBS})) { - die("LIBS argument badly-formed: $arg\n") unless($arg =~ /^-l/i); - push @{$arg =~ /^-l/ ? \@libs : \@libpaths}, substr($arg, 2); - } - } - if(defined($args{INC})) { - foreach my $arg (split(' ', $args{INC})) { - die("INC argument badly-formed: $arg\n") unless($arg =~ /^-I/); - push @incpaths, substr($arg, 2); - } - } - - my @cc = _findcc(); - my @missing; - - # first figure out which headers we can't find ... - for my $header (@headers) { - my($ch, $cfile) = File::Temp::tempfile( - 'assertlibXXXXXXXX', SUFFIX => '.c' - ); - print $ch qq{#include <$header>\nint main(void) { return 0; }\n}; - close($ch); - my $exefile = File::Temp::mktemp( 'assertlibXXXXXXXX' ) . $Config{_exe}; - my @sys_cmd; - # FIXME: re-factor - almost identical code later when linking - if ( $Config{cc} eq 'cl' ) { # Microsoft compiler - require Win32; - @sys_cmd = (@cc, $cfile, "/Fe$exefile", (map { '/I'.Win32::GetShortPathName($_) } @incpaths)); - } elsif($Config{cc} =~ /bcc32(\.exe)?/) { # Borland - @sys_cmd = (@cc, (map { "-I$_" } @incpaths), "-o$exefile", $cfile); - } else { # Unix-ish - # gcc, Sun, AIX (gcc, cc) - @sys_cmd = (@cc, $cfile, (map { "-I$_" } @incpaths), "-o", "$exefile"); - } - warn "# @sys_cmd\n" if $args{debug}; - my $rv = $args{debug} ? system(@sys_cmd) : _quiet_system(@sys_cmd); - push @missing, $header if $rv != 0 || ! -x $exefile; - _cleanup_exe($exefile); - unlink $cfile; - } - - # now do each library in turn with no headers - #j my($ch, $cfile) = File::Temp::tempfile( - #j 'assertlibXXXXXXXX', SUFFIX => '.c' - #j ); - #j print $ch "int main(void) { return 0; }\n"; - #j close($ch); - - my $cfile = "contrib/libtest.c"; - - for my $lib ( @libs ) { - my $exefile = File::Temp::mktemp( 'assertlibXXXXXXXX' ) . $Config{_exe}; - my @sys_cmd; - if ( $Config{cc} eq 'cl' ) { # Microsoft compiler - require Win32; - my @libpath = map { - q{/libpath:} . Win32::GetShortPathName($_) - } @libpaths; - @sys_cmd = (@cc, $cfile, "${lib}.lib", "/Fe$exefile", - "/link", @libpath - ); - } elsif($Config{cc} eq 'CC/DECC') { # VMS - } elsif($Config{cc} =~ /bcc32(\.exe)?/) { # Borland - my @libpath = map { "-L$_" } @libpaths; - @sys_cmd = (@cc, "-o$exefile", "-l$lib", @libpath, $cfile); - } else { # Unix-ish - # gcc, Sun, AIX (gcc, cc) - my @libpath = map { "-L$_" } @libpaths; - @sys_cmd = (@cc, $cfile, "-o", "$exefile", "-l$lib", @libpath); - } - warn "# @sys_cmd\n" if $args{debug}; - my $rv = $args{debug} ? system(@sys_cmd) : _quiet_system(@sys_cmd); - push @missing, $lib if $rv != 0 || ! -x $exefile; - _cleanup_exe($exefile); - } - #j unlink $cfile; - - my $miss_string = join( q{, }, map { qq{'$_'} } @missing ); - die("Can't link/include $miss_string\n") if @missing; -} - -sub _cleanup_exe { - my ($exefile) = @_; - my $ofile = $exefile; - $ofile =~ s/$Config{_exe}$/$Config{_o}/; - unlink $exefile if -f $exefile; - unlink $ofile if -f $ofile; - unlink "$exefile\.manifest" if -f "$exefile\.manifest"; - return -} - -sub _findcc { - my @paths = split(/$Config{path_sep}/, $ENV{PATH}); - my @cc = split(/\s+/, $Config{cc}); - return @cc if -x $cc[0]; - foreach my $path (@paths) { - my $compiler = File::Spec->catfile($path, $cc[0]) . $Config{_exe}; - return ($compiler, @cc[1 .. $#cc]) if -x $compiler; - } - die("Couldn't find your C compiler\n"); -} - -# code substantially borrowed from IPC::Run3 -sub _quiet_system { - my (@cmd) = @_; - - # save handles - local *STDOUT_SAVE; - local *STDERR_SAVE; - open STDOUT_SAVE, ">&STDOUT" or die "CheckLib: $! saving STDOUT"; - open STDERR_SAVE, ">&STDERR" or die "CheckLib: $! saving STDERR"; - - # redirect to nowhere - local *DEV_NULL; - open DEV_NULL, ">" . File::Spec->devnull - or die "CheckLib: $! opening handle to null device"; - open STDOUT, ">&" . fileno DEV_NULL - or die "CheckLib: $! redirecting STDOUT to null handle"; - open STDERR, ">&" . fileno DEV_NULL - or die "CheckLib: $! redirecting STDERR to null handle"; - - # run system command - my $rv = system(@cmd); - - # restore handles - open STDOUT, ">&" . fileno STDOUT_SAVE - or die "CheckLib: $! restoring STDOUT handle"; - open STDERR, ">&" . fileno STDERR_SAVE - or die "CheckLib: $! restoring STDERR handle"; - - return $rv; -} - -=head1 PLATFORMS SUPPORTED - -You must have a C compiler installed. We check for C<$Config{cc}>, -both literally as it is in Config.pm and also in the $PATH. - -It has been tested with varying degrees on rigourousness on: - -=over - -=item gcc (on Linux, *BSD, Mac OS X, Solaris, Cygwin) - -=item Sun's compiler tools on Solaris - -=item IBM's tools on AIX - -=item SGI's tools on Irix 6.5 - -=item Microsoft's tools on Windows - -=item MinGW on Windows (with Strawberry Perl) - -=item Borland's tools on Windows - -=item QNX - -=back - -=head1 WARNINGS, BUGS and FEEDBACK - -This is a very early release intended primarily for feedback from -people who have discussed it. The interface may change and it has -not been adequately tested. - -Feedback is most welcome, including constructive criticism. -Bug reports should be made using L or by email. - -When submitting a bug report, please include the output from running: - - perl -V - perl -MDevel::CheckLib -e0 - -=head1 SEE ALSO - -L - -L - -=head1 AUTHORS - -David Cantrell Edavid@cantrell.org.ukE - -David Golden Edagolden@cpan.orgE - -Thanks to the cpan-testers-discuss mailing list for prompting us to write it -in the first place; - -to Chris Williams for help with Borland support. - -=head1 COPYRIGHT and LICENCE - -Copyright 2007 David Cantrell. Portions copyright 2007 David Golden. - -This module is free-as-in-speech software, and may be used, distributed, -and modified under the same conditions as perl itself. - -=head1 CONSPIRACY - -This module is also free-as-in-mason software. - -=cut - -1; diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod deleted file mode 100644 index b55d55c2..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod +++ /dev/null @@ -1,248 +0,0 @@ -=head1 NAME - -Crypt::PBC - OO interface for the Stanford PBC library - -=head1 SYNOPSIS - - use Crypt::PBC; - - my $pairing = new Crypt::PBC("params_d.txt"); - my $G1 = $pairing->init_G1->random; - my $G2 = $pairing->init_G2->random->double->square; - my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); - - -=head1 "Chapter 1. Overview" - -The following text is the Overview chapter from the PBC library -documentation: - - The PBC library is a free portable C library designed to make it - easy to implement pairing-based cryptosystems. It provides an - abstract interface to a cyclic group with a bilinear pairing, and - the programmer does not need to worry about, or even know about - elliptic curves. - - It is built on top of GMP, another C library which performs - arbitrary precision arithmetic on integers, rationals and floats - with strong emphasis on portability and speed. - - The PBC library homepage: http://crypto.stanford.edu/pbc/ - - The GMP library homepage: http://www.swox.com/gmp/ - -=head1 Nomenclature - -The documentation (and error messages) for these modules frequently refer to -the LHS, the RHS, EXPO, and BASE. They are the left hand side, right hand -side, exponent and base. In an algebraic equation: LHS=RHS and LHS=BASE^EXPO. -In other words, the LHS is the element to which a value is being assigned. -There may sometimes be more than one RHS, or it might be called the a1 or n1; -but, there will only be one LHS. - -=head1 Perl Module Methods - -The Perl Module methods implement an OO interface that the author (Paul) highly -recommends using. The only Perl Module OO function in the L -package is C. Please see L and -L for the guts of the intended OO interface. - -=head2 Crypt::PBC::new() - -Returns a new PBC pairing object. C takes, as arguments, either the -name of a file, a file stream (e.g., new C), or the params -for a curve as a string. Ben Lynn provides a zip file of d-type curves: - - MNT curve parameters for embedding degree 6 (which I - call type D curves), for all D less than a million, and - for subgroup sizes at least 80 bits and less than 300 - bits long. Generated using test programs bundled with - PBC library. - - http://crypto.stanford.edu/pbc/download.html - -=head1 XS Loaded Functions - -This section is basically a listing of the PBC functions as they are -imported. You can use them directly if you're already comfortable with the -layout of PBC. If you're starting from scratch and aren't much of a C -coder, you'll have an easier time using the Perl Module methods because -they implement a little type-safety to protect perl coders from segfaults. - -Mixing and matching direct calls with the Perl Module methods is a sure way -to run into trouble, since the Perl Module methods tag the PBC elements -with a type. - -=head2 Pairing Functions - -(You can use these functions successfully, but the intended interface was -described above. L describes that interface in detail.) - - # Initialize a pairing from a a $string - my $pairing = Crypt::PBC::pairing_init_str($string); - - # Clear the memory malloced for the pairing - Crypt::PBC::pairing_clear($pairing); - - # Apply the pairing. Be careful here. If you pass the wrong type of - # elements, GT = apply(G1, G2), this will segmentation fault! Please - # see the PBC documentation for further information: - # http://crypto.stanford.edu/pbc/manual/ - Crypt::PBC::pairing_apply($LHS, $RHS1, $RHS2, $pairing); - -=head2 Element Initializer and Assignment Functions - -(You can use these functions successfully, but the intended interface was -described above. L describes that interface in detail.) - - my $element_in_G1 = Crypt::PBC::element_init_G1($pairing); - my $element_in_G2 = Crypt::PBC::element_init_G2($pairing); - my $element_in_GT = Crypt::PBC::element_init_GT($pairing); - my $element_in_Zr = Crypt::PBC::element_init_Zr($pairing); - - # Do not forget to clear your memory! - Crypt::PBC::element_clear( $element ); # in any group - - # assign some random to $element - # (uses /dev/urandom if possible, or rand() if necessary) - Crypt::PBC::element_random( $element ); - Crypt::PBC::element_set0( $element ); # set to 0 - Crypt::PBC::element_set1( $element ); # set to 1 - Crypt::PBC::element_set( $a, $b ); # a=b - Crypt::PBC::element_set_si( $a, 5 ); # a=5 - - Crypt::PBC::element_set_mpz( $a, $bigint ); - # For this one, construct a Math::BigInt::GMP and pass that for - # $bigint. Alternatively, you can construct a $i=Math::BigInt and - # pass the $i->{value}. (That interface is probably not well - # supported but is the only one of which the author is aware.) - - Crypt::PBC::element_from_hash( $element, $hash ); - # Set $element based on the bytes in $hash. You must use some kind - # of hashing algorithm (e.g., Digest::SHA1) to map data to an - # element: - # - # "In general you cannot feed it plaintext. You should only give it - # short strings of bytes (e.g. 160 bits if G1 has order around 2^160, - # which is the case for most of the bundled pairing parameters)." - # -- Lynn - - Crypt::PBC::element_from_bytes( $element, $bytes ); - # Set $element based on the bytes in $bytes. this probably isn't useful - # unless $bytes is like $spewed_result from element_export() below. - -=head2 Arithmetic Functions - -(You can use these functions successfully, but the intended interface was -described above. L describes that interface in detail.) - - # lhs=rhs1+rhs2 -- make sure these are all the same type ... - Crypt::PBC::element_add($lhs, $rhs1, $rhs2); - Crypt::PBC::element_sub($lhs, $rhs1, $rhs2); # lhs=rhs1-rhs2 - Crypt::PBC::element_mul($lhs, $rhs1, $rhs2); - Crypt::PBC::element_div($lhs, $rhs1, $rhs2); - - # (whatever these mean is in the context of the $pairing) - Crypt::PBC::element_double($lhs, $rhs); # lhs = 2*rhs - Crypt::PBC::element_halve( $lhs, $rhs); # lhs = rhs/2 - Crypt::PBC::element_square($lhs, $rhs); # lhs = rhs^2 - Crypt::PBC::element_neg( $lhs, $rhs); # (please see the PBC docs) - Crypt::PBC::element_invert($lhs, $rhs); # lhs = 1/rhs - - # Here's a few other choices for mul - Crypt::PBC::element_mul_zn( $lhs, $rhs1, $rhs2 ); - # $rhs1 and $lhs should be of the same type, but here $rhs2 should be - # in Zr instead of being in the same group like in element_mul() - # above - - Crypt::PBC::element_mul_mpz( $lhs, $rhs1, $rhs2 ); - # For this one, construct a Math::BigInt::GMP and pass that for - # $rhs2 or pass $i->{value} from a Math::BigInt. - - Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); - # Here, $rhs2 is a regular old integer... - - Crypt::PBC::element_pow_zn( $lhs, $a, $n); # lhs = a^n - Crypt::PBC::element_pow2_zn($lhs, $a1, $n1, $a2, $n2); # a1^n1 * a2^n2 - Crypt::PBC::element_pow3_zn($lhs, $a1, $n1, $a2, $n2, $a3, $n3); - # in the above, the lhs and a\d+ should be in the same group, n\d+ in Zr - - Crypt::PBC::element_pow_mpz( $lhs, $a, $n); - Crypt::PBC::element_pow2_mpz($lhs, $a1, $n1, $a2, $n2); - Crypt::PBC::element_pow3_mpz($lhs, $a1, $n1, $a2, $n2, $a3, $n3); - # like the _zn functions, but n\d+ should be Math::BigInt::GMP - # or pass $i->{value} from a Math::BigInt. - -=head2 Comparison Functions - -(You can use these functions successfully, but the intended interface was -described above. L describes that interface in detail.) - - Crypt::PBC::element_is0( $a ); # 1 when $a is 0 - Crypt::PBC::element_is1( $a ); # 1 when $a is 1 - Crypt::PBC::element_cmp( $a,$b ); # paradoxically, false when $a == $b - Crypt::PBC::element_is_sqr( $a ); # 1 when $a is a perfect square ... - # see the PBC docs for words like "residue" - -=head2 Export and Output - -(You can use these functions successfully, but the intended interface was -described above. L describes that interface in detail.) - - # Please check the PBC docs ... - Crypt::PBC::element_fprintf(\*OUTFILE, $format, $element); - Crypt::PBC::element_fprintf(\*STDOUT, "example element=\%B\n", $element); - # (You may be surprised how many bigints are in these group elements.) - - my $spewed_result = Crypt::PBC::export_element($element); - # These are bytes, dumped from the $element, that can be used to - # reconstruct the element or used for interacting with real life data. - - # Example: - my $cipher = new Crypt::CBC({ - header => "randomiv", - key => Crypt::PBC::export_element($element), - cipher => 'Blowfish', # hehe - }); - - my $big = Crypt::PBC::element_to_mpz( $element ); - # Returns a Math::BigInt::GMP, not a Math::BigInt! WARNING: the - # DESTROY() method from Math::BigInt::GMP will be missing unless you - # require that package into your program. You'll want to do that or you'll - # have a memory leak... Lastly, this is really only useful for elements in - # Zr -- element_fprintf() to see what I mean. - -=head1 XS AUTHOR - -Paul Miller - -Paul is using this software in his own projects... If you find bugs, please -please please let him know. :) Actually, let him know if you find it handy at -all. Half the fun of releasing this stuff is knowing that people use it. - -Additionally, he is aware that the documentation sucks. Should you email him -for help, he will most likely try to give it. - -=head1 COPYRIGHT - -Copyright (c) 2008 Paul Miller -- LGPL [attached] - -This interface is intended to be LGPL to whatever extent allowed by the license -for the pbc library itself. That license is GPL and probably therefore makes -this package GPL. I'm not expert on these matters, so I'm choosing LGPL if -possible. - -=head1 SPECIAL THANKS - -Without the direction of Dr. Leszek T. Lilien -(http://www.cs.wmich.edu/~llilien/), I never would have heard of IBE/PBC -- -much less develop any interest in it. Crypto is not his specialty, but -like any good professor, he's interested in everything. - -=head1 SEE ALSO - - http://crypto.stanford.edu/pbc/ - - http://groups.google.com/group/pbc-devel - -perl(1), L, L diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod deleted file mode 100644 index be4f3a66..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod +++ /dev/null @@ -1,235 +0,0 @@ -=head1 NAME - -Crypt::PBC::Element - OO interface for the Stanford PBC library - -=head1 SYNOPSIS - - use Crypt::PBC; - - my $pairing = new Crypt::PBC("params_d.txt"); - my $G1 = $pairing->init_G1->random; - my $G2 = $pairing->init_G2->random->double->square; - my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); - -=head1 Overview - -Throughout the entire OO interface I have attempted to be consistant that the -Element return itself where it isn't immediately obvious that some other thing -should be returned instead. - - my $x = $pairing->init_G1; # $x is an element - $x->random; # randomize the element. - $x->set0; # set element to 0 - $x->set_to_hash("lol!"); # set element to lol ... - - # All the above can instead be written as: - my $x = $pairing->init_G1->random->set0->set_to_hash("lol!"); - -However, functions that return something else ... dont' return elements. -C<$string> (below) is a MIME encoded string, not an element. - - my $string = $x->as_base64; - -For more help seting up a new Pairing, see the L manpage (under new). - -Best of all, you do not need to keep track of which elements need to be cleared -when using the OO interface. L and L -keep track of which elements and pairings need to be cleared in the C -method. If you overload C, be sure to call C! - -=head1 Assignment Functions - - my $x = $pairing->init_G1; - - $x->set0; # sets the element to 0 - $x->set1; # sets the element to 1 - - my $y = $pairing->init_Zr->set_to_int( 19 ); # set a new element to 19 - - my $i = new Math::Bigint( 25 ); - my $z = $pairing->init_Zr->set_to_bigint( $i ): - # $z is now the bigint 25 ah, magic. - - $z->random; # ruin the bigint and replace with boring random bytes - - $y->set_to_hash("Poru Mira"); - # Set $element based on the bytes "Poru Mira". - -You must use some kind of hashing algorithm (e.g., L) to map data to -an element. "In general you cannot feed it plaintext. You should only give it -short strings of bytes (e.g. 160 bits if G1 has order around 2^160, which is -the case for most of the bundled pairing parameters)." -- Lynn - - my $a = $pairing->init_G1->random; - my $b = $pairing->init_G1->set( $a ); - -The above makes a new G1 element ($a), sets it to random, then makes another G1 -($b) and sets it to the random value of element $a. The following is probably -more clear and is identical to the functions above. There's more on clone -later in this document. - - my $c = $a->clone; - print "You see this I bet!\n" if $c->is_eq( $a ) and $c->is_eq( $b ); - -This will come in handing when transfering keys between nodes. - - my $d_i_a = $pairing->init_G1->random; - my $bytes = $d_i->as_bytes; - my $d_i_b = $pairing->init_G1->set_to_bytes( $bytes ); - -=head1 Comparison Functions - - my $z = $pairing->init_G1->random; - my $y = $pairing->init_G1->random; - - print "I say yes here!\n" if $z->set0->is0; - print "I say yes here!\n" if $z->set1->is1; - print "I say nothing...\n" if $z->set1->is0; - - print "This is pretty much always true... unless we're in GT\n" - $z->is_eq( $z ); - - print "This is usually not going to print anything...\n" - $z->random->is_eq( $y->random ); - - my $m = $pairing->init_Zr; - print "I say yes here.\n" if $m->set_to_int(25)->is_sqr; - print "I say nothing...\n" if $m->set_to_int(19)->is_sqr; - -=head1 Arithmetic Functions - -These no-argument functions are rather self explainatory. The only thing -that's not immediately clear is that $Zr is B to the value of the -operation. These all return $Zr, of course. Also, these operations work on -elements in G1, G2, and GT -- although that's not pictured. - - my $Zr = $pairing->init_Zr; - - $Zr->square; # $Zr = $Zr * $Zr; - $Zr->double; # $Zr = $Zr + $Zr - $Zr->invert; # $Zr = 1/$Zr - $Zr->halve; # $Zr = $Zr/2 - $Zr->neg; # $Zr = -$Zr - -All the the functions above will work with arguments instead. The following -examples are logically equivelent, but the shorter form is probably also a great -deal faster. - - $Zr->set( $a )->halve; - $Zr->halve( $a ); - - $Zr->square( $a ); - $Zr->set( $a )->square; - -The following one-argument functions are probably just as clear as the ones -above. The Bing of Zr is implicit as it is above and, as above, the -operations work in G1, G2, and GT. Watch out though, for these, the element -types on the LHS must match the RHS. L will C an -error if the types don't match. - - my $Zr2 = $pairing->init_Zr->random; - - $Zr->add( $Zr2 ); # Zr = Zr + Zr2 - $Zr->Sub( $Zr2 ); # Zr = Zr - Zr2 -- note the capital S - $Zr->div( $Zr2 ); # Zr = Zr / Zr2 - $Zr->mul( $Zr2 ); # Zr = Zr * Zr2 - -All the the functions above will work with another argument instead. The -following example is logically equivelent, but the shorter form is probably -also a great deal faster. - - $Zr->div( $a, $Zr2 ); # Zr = $a/$Zr2 - $Zr->set( $a )->div( $Zr2 ); # Zr = $Zr/$Zr2 - -There are two more multiplication functions to choose from. They take perl -integers and L objects. - - my $a = $Zr->set_to_int(7)->mul_int( 5 )->clone; - my $b = $Zr->set_to_int(7)->mul_bigint( new Math::BigInt( 5 ) )->clone; - - # here, $a and $b will test equal with $a->is_eq( $b ) - -Assume all the following variables are elements in the indicated groups. Beware -that the RHS-a elements must all be the same type as the LHS element. The RHS-n -arguments must all be of elements in Zr. L will C -an error if the arguments are of the wrong types. - - $G1_l->pow_zn( $Zr_n ); # G1_l = G1_l^Zr_n - $G1_l->pow_zn( $G1_a, $Zr_n ); # G1_l = G1_a^Zr_n - - $G1_l->pow2_zn( $G1_a1, $Zr_n1, $G1_a2, $Zr_n2 ); # l = a1^n1 * a2^n2 - $G1_l->pow3_zn( $G1_a1, $Zr_n1, $G1_a2, $Zr_n2, $G1_a3, $Zr_n3 ); - # l = a1^n1 * a2^n2 * a3^n3 - -These functions are all pretty much the same, but they take bigints for the -RHS-n arguments. They will all C if the LHS doesn't match the RHS-a or -if the RHS-n arguments aren't L objects. - - $G1_l->pow_bigint( $G1_a, $BI_n ); - $G1_l->pow2_bigint( $G1_a1, $BI_n1, $G1_a2, $BI_n2 ); - $G1_l->pow3_bigint( $G1_a1, $BI_n1, $G1_a2, $BI_n2, $G1_a3, $BI_n3 ); - -Arguably the most important arithmetic function of all is saved for last. The -C function is special, in that it has more restrictions on the -LHS, RHS1 and RHS2 than most other functions. The LHS must be in GT, RHS1 must -be in G1 and RHS2 must be in G2. - - my $GT = $pairing->init_GT; - my $G1 = $pairing->init_G1; - my $G2 = $pairing->init_G2; - - $GT->pairing_apply( $G1, $G2 ); - $GT->apply_pairing( $G1, $G2 ); # synonym for pairing_apply - $GT->ehat( $G1, $G2 ); # synonym for pairing_apply - $GT->e_hat( $G1, $G2 ); # synonym for pairing_apply - -=head1 I/O, Export, and Conversion Functions - -libpbc offers a va_args (printf) style output that's probably of limited use -except for debugging. L ports the C version directly -and you can use it as incdicated in L. The L -module only uses C in the stddump and C and C -and even then only in a limited capacity. - - my $element = $pairing->init_G1; - print "Hey, these don't look like I thought they would:\n"; - - $element->stddump; # dumps the element on STDOUT - - # You may be surprised to see that a G1 Element is in fact two MPZs. - - $element->errdump; # dumps the element on STDERR instead of STDOUT - -The following will be of major importance to anyone looking to use Crypt::PBC -for real-life applications. C almost certainly has to be used in -conjunction with some other algorithm, but that is indeed what it is for. - - my $secret_key_bin = $element->as_bytes; - - my $example_cipher = new Crypt::CBC({ - header => "randomiv", - cipher => 'Blowfish' - key => $secret_key_bin, - }); - - my $secret = $example_cipher->encrypt("you can't read this!!"); - -There are, of course, other ways to export the bytes. The bigint exporter -probably only works on Zr elements, but it probalby has uses. - - my $key_hex = $element->as_hex; # as_str is a synonym for as_hex - my $key_b64 = $element->as_base64; # MIME base64 as per RFC 2045 - my $bigint = $element->as_bigint; # Math::BigInt - -=head1 Miscellaneous Functions - - my $z = $pairing->init_Zr->random; - my $c = $z->clone;# creates a copy of $z in $c. - my $d = $z->copy; # copy is an alias for clone - # ($c is a new Element in new memory with the same value as $z) - -=head1 AUTHOR AND LICENSING - -GPL-ish licensing with the author: Paul Miller . - -Please see L for further information. diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod deleted file mode 100644 index 207a0233..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod +++ /dev/null @@ -1,39 +0,0 @@ -=head1 NAME - -Crypt::PBC::Pairing - OO interface for the Stanford PBC library - -=head1 SYNOPSIS - - use Crypt::PBC; - - my $pairing = new Crypt::PBC("params_d.txt"); - my $G1 = $pairing->init_G1->random; - my $G2 = $pairing->init_G2->random->double->square; - my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); - -=head1 Initializer Functions - -The only thing of use this package does is initialize elements in the pairing. -It does many other things behind the scenes though. - - my $G1_element = $pairing->init_G1; # returns Crypt::PBC::Element - my $G2_element = $pairing->init_G2; # objects - my $GT_element = $pairing->init_GT; - my $Zr_element = $pairing->init_Zr; - -The most important thing the Pairing package does is handle memory for you. -The package is a scalar ref of the C-pointer. C<$$pairing> is the "address" as -an integer! - -It's important when clearing the PBC memory that pairings get cleared after -elements and the Element and Pairing objects handle that on their own. You may -safely ignore clearing elements and pairings if you use the OO interface. - -Although, be sure that if you overload C that you call -C! - -=head1 AUTHOR AND LICENSING - -GPL-ish licensing with the author: Paul Miller . - -Please see L for further information. diff --git a/scripts/crypt/Crypt-PBC-0.9000/pairing.xs b/scripts/crypt/Crypt-PBC-0.9000/pairing.xs deleted file mode 100644 index c720265d..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/pairing.xs +++ /dev/null @@ -1,48 +0,0 @@ -pairing_t * -pairing_init_str(str) - SV * str - - PREINIT: - STRLEN len; - char * ptr; - pairing_t * pairing = malloc( sizeof(pairing_t) ); - - CODE: - ptr = SvPV(str, len); - - if( pairing_init_set_buf(*pairing, ptr, len) ) - pbc_die("pairing init failed"); - - RETVAL = pairing; - - OUTPUT: - RETVAL - -void -pairing_clear(pairing) - pairing_t * pairing - - CODE: - // fprintf(stderr, " ... freeing a pairing ... \n"); - pairing_clear(*pairing); - free(pairing); - -void -pairing_apply(LHS,RHS1,RHS2,pairing) - element_t * LHS - element_t * RHS1 - element_t * RHS2 - pairing_t * pairing - - CODE: - pairing_apply(*LHS, *RHS1, *RHS2, *pairing); - -int -pairing_is_symmetric(me) - pairing_t * me - - CODE: - RETVAL = pairing_is_symmetric(*me); - - OUTPUT: - RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_a.txt b/scripts/crypt/Crypt-PBC-0.9000/params_a.txt deleted file mode 100644 index cee0e9bb..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/params_a.txt +++ /dev/null @@ -1,8 +0,0 @@ -type a -q 8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791 -h 12016012264891146079388821366740534204802954401251311822919615131047207289359704531102844802183906537786776 -r 730750818665451621361119245571504901405976559617 -exp2 159 -exp1 107 -sign1 1 -sign0 1 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_d.txt b/scripts/crypt/Crypt-PBC-0.9000/params_d.txt deleted file mode 100644 index 6242cef1..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/params_d.txt +++ /dev/null @@ -1,14 +0,0 @@ -type d -q 90144054120102937439179516551801119443207521965651508326977 -n 90144054120102937439179516552101359437412329625948146453801 -h 3523 -r 25587298927080027658012919827448583433838299638361665187 -a 53241464724463691897001131065853762954208272388634868483573 -b 5446291776274815451607581859968802155069674270539409546723 -k 6 -nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 -hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 -coeff0 43907136006531280293838495445857758305366399383908394927288 -coeff1 21720089592072695009765372832780685887129370300993349347738 -coeff2 11773373318911376280677890769414834592007872486079550520860 -nqr 4468071665857441743453009416233415235254714637554162977327 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt b/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt deleted file mode 100644 index 6303b336..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt +++ /dev/null @@ -1,14 +0,0 @@ -type d -q 625852803282871856053922297323874661378036491717 -n 625852803282871856053923088432465995634661283063 -h 3 -r 208617601094290618684641029477488665211553761021 -a 581595782028432961150765424293919699975513269268 -b 517921465817243828776542439081147840953753552322 -k 6 -nk 60094290356408407130984161127310078516360031868417968262992864809623507269833854678414046779817844853757026858774966331434198257512457993293271849043664655146443229029069463392046837830267994222789160047337432075266619082657640364986415435746294498140589844832666082434658532589211525696 -hk 1380801711862212484403205699005242141541629761433899149236405232528956996854655261075303661691995273080620762287276051361446528504633283152278831183711301329765591450680250000592437612973269056 -coeff0 472731500571015189154958232321864199355792223347 -coeff1 352243926696145937581894994871017455453604730246 -coeff2 289113341693870057212775990719504267185772707305 -nqr 431211441436589568382088865288592347194866189652 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_e.txt b/scripts/crypt/Crypt-PBC-0.9000/params_e.txt deleted file mode 100644 index 83aa36cd..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/params_e.txt +++ /dev/null @@ -1,10 +0,0 @@ -type e -q 7245986106510086080714203333362098431608853335867425877960916928496629182991629664903654100214900946450053872786629995869445693724001299041657434948257845644905153122838458864000479326695430719258600053239930483226650953770354174712511646273516974069245462534034085895319225452125649979474047163305307830001 -r 730750862221594424981965739670091261094297337857 -h 13569343110918781839835249021482970252603216587988030044836106948825516930173270978617489032334001006615524543925753725725046733884363846960470444404747241287743773746682188521738728797153760275116924829183670000 -a 7130970454025799000067946137594446075551569949583815943390108723282396973737794273397246892274981883807989525599540630855644968426794929215599380425269625872763801485968007136000471718335185787206876242871042697778608875139078711621836858237429403052273312335081163896980825048123655535355411494046493419999 -b 7169309004853894693616698536183663527570664411678352588247044791687141043489072737232715961588288238022010974661903752526911876859197052490952065266265699130144252031591491045333807587788600764557450846327338626261289568016170532652061787582791926724597362401398804563093625182790987016728290050466098223333 -exp2 159 -exp1 135 -sign1 1 -sign0 1 diff --git a/scripts/crypt/Crypt-PBC-0.9000/pbctest.c b/scripts/crypt/Crypt-PBC-0.9000/pbctest.c deleted file mode 100644 index 62c58662..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/pbctest.c +++ /dev/null @@ -1,7 +0,0 @@ - - -#include - -int main() { - return 0; -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/ppport.h b/scripts/crypt/Crypt-PBC-0.9000/ppport.h deleted file mode 100644 index f6e2dc4d..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/ppport.h +++ /dev/null @@ -1,4954 +0,0 @@ -#if 0 -<<'SKIP'; -#endif -/* ----------------------------------------------------------------------- - - ppport.h -- Perl/Pollution/Portability Version 3.06_01 - - Automatically created by Devel::PPPort running under - perl 5.008008 on Fri Nov 10 23:07:15 2006. - - Do NOT edit this file directly! -- Edit PPPort_pm.PL and the - includes in parts/inc/ instead. - - Use 'perldoc ppport.h' to view the documentation below. - ----------------------------------------------------------------------- - -SKIP - -=pod - -=head1 NAME - -ppport.h - Perl/Pollution/Portability version 3.06_01 - -=head1 SYNOPSIS - - perl ppport.h [options] [source files] - - Searches current directory for files if no [source files] are given - - --help show short help - - --patch=file write one patch file with changes - --copy=suffix write changed copies with suffix - --diff=program use diff program and options - - --compat-version=version provide compatibility with Perl version - --cplusplus accept C++ comments - - --quiet don't output anything except fatal errors - --nodiag don't show diagnostics - --nohints don't show hints - --nochanges don't suggest changes - --nofilter don't filter input files - - --list-provided list provided API - --list-unsupported list unsupported API - --api-info=name show Perl API portability information - -=head1 COMPATIBILITY - -This version of F is designed to support operation with Perl -installations back to 5.003, and has been tested up to 5.9.3. - -=head1 OPTIONS - -=head2 --help - -Display a brief usage summary. - -=head2 --patch=I - -If this option is given, a single patch file will be created if -any changes are suggested. This requires a working diff program -to be installed on your system. - -=head2 --copy=I - -If this option is given, a copy of each file will be saved with -the given suffix that contains the suggested changes. This does -not require any external programs. - -If neither C<--patch> or C<--copy> are given, the default is to -simply print the diffs for each file. This requires either -C or a C program to be installed. - -=head2 --diff=I - -Manually set the diff program and options to use. The default -is to use C, when installed, and output unified -context diffs. - -=head2 --compat-version=I - -Tell F to check for compatibility with the given -Perl version. The default is to check for compatibility with Perl -version 5.003. You can use this option to reduce the output -of F if you intend to be backward compatible only -up to a certain Perl version. - -=head2 --cplusplus - -Usually, F will detect C++ style comments and -replace them with C style comments for portability reasons. -Using this option instructs F to leave C++ -comments untouched. - -=head2 --quiet - -Be quiet. Don't print anything except fatal errors. - -=head2 --nodiag - -Don't output any diagnostic messages. Only portability -alerts will be printed. - -=head2 --nohints - -Don't output any hints. Hints often contain useful portability -notes. - -=head2 --nochanges - -Don't suggest any changes. Only give diagnostic output and hints -unless these are also deactivated. - -=head2 --nofilter - -Don't filter the list of input files. By default, files not looking -like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped. - -=head2 --list-provided - -Lists the API elements for which compatibility is provided by -F. Also lists if it must be explicitly requested, -if it has dependencies, and if there are hints for it. - -=head2 --list-unsupported - -Lists the API elements that are known not to be supported by -F and below which version of Perl they probably -won't be available or work. - -=head2 --api-info=I - -Show portability information for API elements matching I. -If I is surrounded by slashes, it is interpreted as a regular -expression. - -=head1 DESCRIPTION - -In order for a Perl extension (XS) module to be as portable as possible -across differing versions of Perl itself, certain steps need to be taken. - -=over 4 - -=item * - -Including this header is the first major one. This alone will give you -access to a large part of the Perl API that hasn't been available in -earlier Perl releases. Use - - perl ppport.h --list-provided - -to see which API elements are provided by ppport.h. - -=item * - -You should avoid using deprecated parts of the API. For example, using -global Perl variables without the C prefix is deprecated. Also, -some API functions used to have a C prefix. Using this form is -also deprecated. You can safely use the supported API, as F -will provide wrappers for older Perl versions. - -=item * - -If you use one of a few functions that were not present in earlier -versions of Perl, and that can't be provided using a macro, you have -to explicitly request support for these functions by adding one or -more C<#define>s in your source code before the inclusion of F. - -These functions will be marked C in the list shown by -C<--list-provided>. - -Depending on whether you module has a single or multiple files that -use such functions, you want either C or global variants. - -For a C function, use: - - #define NEED_function - -For a global function, use: - - #define NEED_function_GLOBAL - -Note that you mustn't have more than one global request for one -function in your project. - - Function Static Request Global Request - ----------------------------------------------------------------------------------------- - eval_pv() NEED_eval_pv NEED_eval_pv_GLOBAL - grok_bin() NEED_grok_bin NEED_grok_bin_GLOBAL - grok_hex() NEED_grok_hex NEED_grok_hex_GLOBAL - grok_number() NEED_grok_number NEED_grok_number_GLOBAL - grok_numeric_radix() NEED_grok_numeric_radix NEED_grok_numeric_radix_GLOBAL - grok_oct() NEED_grok_oct NEED_grok_oct_GLOBAL - newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL - newRV_noinc() NEED_newRV_noinc NEED_newRV_noinc_GLOBAL - sv_2pv_nolen() NEED_sv_2pv_nolen NEED_sv_2pv_nolen_GLOBAL - sv_2pvbyte() NEED_sv_2pvbyte NEED_sv_2pvbyte_GLOBAL - sv_catpvf_mg() NEED_sv_catpvf_mg NEED_sv_catpvf_mg_GLOBAL - sv_catpvf_mg_nocontext() NEED_sv_catpvf_mg_nocontext NEED_sv_catpvf_mg_nocontext_GLOBAL - sv_setpvf_mg() NEED_sv_setpvf_mg NEED_sv_setpvf_mg_GLOBAL - sv_setpvf_mg_nocontext() NEED_sv_setpvf_mg_nocontext NEED_sv_setpvf_mg_nocontext_GLOBAL - vnewSVpvf() NEED_vnewSVpvf NEED_vnewSVpvf_GLOBAL - -To avoid namespace conflicts, you can change the namespace of the -explicitly exported functions using the C macro. -Just C<#define> the macro before including C: - - #define DPPP_NAMESPACE MyOwnNamespace_ - #include "ppport.h" - -The default namespace is C. - -=back - -The good thing is that most of the above can be checked by running -F on your source code. See the next section for -details. - -=head1 EXAMPLES - -To verify whether F is needed for your module, whether you -should make any changes to your code, and whether any special defines -should be used, F can be run as a Perl script to check your -source code. Simply say: - - perl ppport.h - -The result will usually be a list of patches suggesting changes -that should at least be acceptable, if not necessarily the most -efficient solution, or a fix for all possible problems. - -If you know that your XS module uses features only available in -newer Perl releases, if you're aware that it uses C++ comments, -and if you want all suggestions as a single patch file, you could -use something like this: - - perl ppport.h --compat-version=5.6.0 --cplusplus --patch=test.diff - -If you only want your code to be scanned without any suggestions -for changes, use: - - perl ppport.h --nochanges - -You can specify a different C program or options, using -the C<--diff> option: - - perl ppport.h --diff='diff -C 10' - -This would output context diffs with 10 lines of context. - -To display portability information for the C function, -use: - - perl ppport.h --api-info=newSVpvn - -Since the argument to C<--api-info> can be a regular expression, -you can use - - perl ppport.h --api-info=/_nomg$/ - -to display portability information for all C<_nomg> functions or - - perl ppport.h --api-info=/./ - -to display information for all known API elements. - -=head1 BUGS - -If this version of F is causing failure during -the compilation of this module, please check if newer versions -of either this module or C are available on CPAN -before sending a bug report. - -If F was generated using the latest version of -C and is causing failure of this module, please -file a bug report using the CPAN Request Tracker at L. - -Please include the following information: - -=over 4 - -=item 1. - -The complete output from running "perl -V" - -=item 2. - -This file. - -=item 3. - -The name and version of the module you were trying to build. - -=item 4. - -A full log of the build that failed. - -=item 5. - -Any other information that you think could be relevant. - -=back - -For the latest version of this code, please get the C -module from CPAN. - -=head1 COPYRIGHT - -Version 3.x, Copyright (c) 2004-2005, Marcus Holland-Moritz. - -Version 2.x, Copyright (C) 2001, Paul Marquess. - -Version 1.x, Copyright (C) 1999, Kenneth Albanowski. - -This program is free software; you can redistribute it and/or -modify it under the same terms as Perl itself. - -=head1 SEE ALSO - -See L. - -=cut - -use strict; - -my %opt = ( - quiet => 0, - diag => 1, - hints => 1, - changes => 1, - cplusplus => 0, - filter => 1, -); - -my($ppport) = $0 =~ /([\w.]+)$/; -my $LF = '(?:\r\n|[\r\n])'; # line feed -my $HS = "[ \t]"; # horizontal whitespace - -eval { - require Getopt::Long; - Getopt::Long::GetOptions(\%opt, qw( - help quiet diag! filter! hints! changes! cplusplus - patch=s copy=s diff=s compat-version=s - list-provided list-unsupported api-info=s - )) or usage(); -}; - -if ($@ and grep /^-/, @ARGV) { - usage() if "@ARGV" =~ /^--?h(?:elp)?$/; - die "Getopt::Long not found. Please don't use any options.\n"; -} - -usage() if $opt{help}; - -if (exists $opt{'compat-version'}) { - my($r,$v,$s) = eval { parse_version($opt{'compat-version'}) }; - if ($@) { - die "Invalid version number format: '$opt{'compat-version'}'\n"; - } - die "Only Perl 5 is supported\n" if $r != 5; - die "Invalid version number: $opt{'compat-version'}\n" if $v >= 1000 || $s >= 1000; - $opt{'compat-version'} = sprintf "%d.%03d%03d", $r, $v, $s; -} -else { - $opt{'compat-version'} = 5; -} - -# Never use C comments in this file!!!!! -my $ccs = '/'.'*'; -my $cce = '*'.'/'; -my $rccs = quotemeta $ccs; -my $rcce = quotemeta $cce; - -my %API = map { /^(\w+)\|([^|]*)\|([^|]*)\|(\w*)$/ - ? ( $1 => { - ($2 ? ( base => $2 ) : ()), - ($3 ? ( todo => $3 ) : ()), - (index($4, 'v') >= 0 ? ( varargs => 1 ) : ()), - (index($4, 'p') >= 0 ? ( provided => 1 ) : ()), - (index($4, 'n') >= 0 ? ( nothxarg => 1 ) : ()), - } ) - : die "invalid spec: $_" } qw( -AvFILLp|5.004050||p -AvFILL||| -CLASS|||n -CX_CURPAD_SAVE||| -CX_CURPAD_SV||| -CopFILEAV|5.006000||p -CopFILEGV_set|5.006000||p -CopFILEGV|5.006000||p -CopFILESV|5.006000||p -CopFILE_set|5.006000||p -CopFILE|5.006000||p -CopSTASHPV_set|5.006000||p -CopSTASHPV|5.006000||p -CopSTASH_eq|5.006000||p -CopSTASH_set|5.006000||p -CopSTASH|5.006000||p -CopyD|5.009002||p -Copy||| -CvPADLIST||| -CvSTASH||| -CvWEAKOUTSIDE||| -DEFSV|5.004050||p -END_EXTERN_C|5.005000||p -ENTER||| -ERRSV|5.004050||p -EXTEND||| -EXTERN_C|5.005000||p -FREETMPS||| -GIMME_V||5.004000|n -GIMME|||n -GROK_NUMERIC_RADIX|5.007002||p -G_ARRAY||| -G_DISCARD||| -G_EVAL||| -G_NOARGS||| -G_SCALAR||| -G_VOID||5.004000| -GetVars||| -GvSV||| -Gv_AMupdate||| -HEf_SVKEY||5.004000| -HeHASH||5.004000| -HeKEY||5.004000| -HeKLEN||5.004000| -HePV||5.004000| -HeSVKEY_force||5.004000| -HeSVKEY_set||5.004000| -HeSVKEY||5.004000| -HeVAL||5.004000| -HvNAME||| -INT2PTR|5.006000||p -IN_LOCALE_COMPILETIME|5.007002||p -IN_LOCALE_RUNTIME|5.007002||p -IN_LOCALE|5.007002||p -IN_PERL_COMPILETIME|5.008001||p -IS_NUMBER_GREATER_THAN_UV_MAX|5.007002||p -IS_NUMBER_INFINITY|5.007002||p -IS_NUMBER_IN_UV|5.007002||p -IS_NUMBER_NAN|5.007003||p -IS_NUMBER_NEG|5.007002||p -IS_NUMBER_NOT_INT|5.007002||p -IVSIZE|5.006000||p -IVTYPE|5.006000||p -IVdf|5.006000||p -LEAVE||| -LVRET||| -MARK||| -MY_CXT_CLONE|5.009002||p -MY_CXT_INIT|5.007003||p -MY_CXT|5.007003||p -MoveD|5.009002||p -Move||| -NEWSV||| -NOOP|5.005000||p -NUM2PTR|5.006000||p -NVTYPE|5.006000||p -NVef|5.006001||p -NVff|5.006001||p -NVgf|5.006001||p -Newc||| -Newz||| -New||| -Nullav||| -Nullch||| -Nullcv||| -Nullhv||| -Nullsv||| -ORIGMARK||| -PAD_BASE_SV||| -PAD_CLONE_VARS||| -PAD_COMPNAME_FLAGS||| -PAD_COMPNAME_GEN_set||| -PAD_COMPNAME_GEN||| -PAD_COMPNAME_OURSTASH||| -PAD_COMPNAME_PV||| -PAD_COMPNAME_TYPE||| -PAD_RESTORE_LOCAL||| -PAD_SAVE_LOCAL||| -PAD_SAVE_SETNULLPAD||| -PAD_SETSV||| -PAD_SET_CUR_NOSAVE||| -PAD_SET_CUR||| -PAD_SVl||| -PAD_SV||| -PERL_BCDVERSION|5.009003||p -PERL_GCC_BRACE_GROUPS_FORBIDDEN|5.008001||p -PERL_INT_MAX|5.004000||p -PERL_INT_MIN|5.004000||p -PERL_LONG_MAX|5.004000||p -PERL_LONG_MIN|5.004000||p -PERL_MAGIC_arylen|5.007002||p -PERL_MAGIC_backref|5.007002||p -PERL_MAGIC_bm|5.007002||p -PERL_MAGIC_collxfrm|5.007002||p -PERL_MAGIC_dbfile|5.007002||p -PERL_MAGIC_dbline|5.007002||p -PERL_MAGIC_defelem|5.007002||p -PERL_MAGIC_envelem|5.007002||p -PERL_MAGIC_env|5.007002||p -PERL_MAGIC_ext|5.007002||p -PERL_MAGIC_fm|5.007002||p -PERL_MAGIC_glob|5.007002||p -PERL_MAGIC_isaelem|5.007002||p -PERL_MAGIC_isa|5.007002||p -PERL_MAGIC_mutex|5.007002||p -PERL_MAGIC_nkeys|5.007002||p -PERL_MAGIC_overload_elem|5.007002||p -PERL_MAGIC_overload_table|5.007002||p -PERL_MAGIC_overload|5.007002||p -PERL_MAGIC_pos|5.007002||p -PERL_MAGIC_qr|5.007002||p -PERL_MAGIC_regdata|5.007002||p -PERL_MAGIC_regdatum|5.007002||p -PERL_MAGIC_regex_global|5.007002||p -PERL_MAGIC_shared_scalar|5.007003||p -PERL_MAGIC_shared|5.007003||p -PERL_MAGIC_sigelem|5.007002||p -PERL_MAGIC_sig|5.007002||p -PERL_MAGIC_substr|5.007002||p -PERL_MAGIC_sv|5.007002||p -PERL_MAGIC_taint|5.007002||p -PERL_MAGIC_tiedelem|5.007002||p -PERL_MAGIC_tiedscalar|5.007002||p -PERL_MAGIC_tied|5.007002||p -PERL_MAGIC_utf8|5.008001||p -PERL_MAGIC_uvar_elem|5.007003||p -PERL_MAGIC_uvar|5.007002||p -PERL_MAGIC_vec|5.007002||p -PERL_MAGIC_vstring|5.008001||p -PERL_QUAD_MAX|5.004000||p -PERL_QUAD_MIN|5.004000||p -PERL_REVISION|5.006000||p -PERL_SCAN_ALLOW_UNDERSCORES|5.007003||p -PERL_SCAN_DISALLOW_PREFIX|5.007003||p -PERL_SCAN_GREATER_THAN_UV_MAX|5.007003||p -PERL_SCAN_SILENT_ILLDIGIT|5.008001||p -PERL_SHORT_MAX|5.004000||p -PERL_SHORT_MIN|5.004000||p -PERL_SUBVERSION|5.006000||p -PERL_UCHAR_MAX|5.004000||p -PERL_UCHAR_MIN|5.004000||p -PERL_UINT_MAX|5.004000||p -PERL_UINT_MIN|5.004000||p -PERL_ULONG_MAX|5.004000||p -PERL_ULONG_MIN|5.004000||p -PERL_UNUSED_DECL|5.007002||p -PERL_UQUAD_MAX|5.004000||p -PERL_UQUAD_MIN|5.004000||p -PERL_USHORT_MAX|5.004000||p -PERL_USHORT_MIN|5.004000||p -PERL_VERSION|5.006000||p -PL_DBsingle|||pn -PL_DBsub|||pn -PL_DBtrace|||n -PL_Sv|5.005000||p -PL_compiling|5.004050||p -PL_copline|5.005000||p -PL_curcop|5.004050||p -PL_curstash|5.004050||p -PL_debstash|5.004050||p -PL_defgv|5.004050||p -PL_diehook|5.004050||p -PL_dirty|5.004050||p -PL_dowarn|||pn -PL_errgv|5.004050||p -PL_hexdigit|5.005000||p -PL_hints|5.005000||p -PL_last_in_gv|||n -PL_modglobal||5.005000|n -PL_na|5.004050||pn -PL_no_modify|5.006000||p -PL_ofs_sv|||n -PL_perl_destruct_level|5.004050||p -PL_perldb|5.004050||p -PL_ppaddr|5.006000||p -PL_rsfp_filters|5.004050||p -PL_rsfp|5.004050||p -PL_rs|||n -PL_stack_base|5.004050||p -PL_stack_sp|5.004050||p -PL_stdingv|5.004050||p -PL_sv_arenaroot|5.004050||p -PL_sv_no|5.004050||pn -PL_sv_undef|5.004050||pn -PL_sv_yes|5.004050||pn -PL_tainted|5.004050||p -PL_tainting|5.004050||p -POPi|||n -POPl|||n -POPn|||n -POPpbytex||5.007001|n -POPpx||5.005030|n -POPp|||n -POPs|||n -PTR2IV|5.006000||p -PTR2NV|5.006000||p -PTR2UV|5.006000||p -PTR2ul|5.007001||p -PTRV|5.006000||p -PUSHMARK||| -PUSHi||| -PUSHmortal|5.009002||p -PUSHn||| -PUSHp||| -PUSHs||| -PUSHu|5.004000||p -PUTBACK||| -PerlIO_clearerr||5.007003| -PerlIO_close||5.007003| -PerlIO_eof||5.007003| -PerlIO_error||5.007003| -PerlIO_fileno||5.007003| -PerlIO_fill||5.007003| -PerlIO_flush||5.007003| -PerlIO_get_base||5.007003| -PerlIO_get_bufsiz||5.007003| -PerlIO_get_cnt||5.007003| -PerlIO_get_ptr||5.007003| -PerlIO_read||5.007003| -PerlIO_seek||5.007003| -PerlIO_set_cnt||5.007003| -PerlIO_set_ptrcnt||5.007003| -PerlIO_setlinebuf||5.007003| -PerlIO_stderr||5.007003| -PerlIO_stdin||5.007003| -PerlIO_stdout||5.007003| -PerlIO_tell||5.007003| -PerlIO_unread||5.007003| -PerlIO_write||5.007003| -Poison|5.008000||p -RETVAL|||n -Renewc||| -Renew||| -SAVECLEARSV||| -SAVECOMPPAD||| -SAVEPADSV||| -SAVETMPS||| -SAVE_DEFSV|5.004050||p -SPAGAIN||| -SP||| -START_EXTERN_C|5.005000||p -START_MY_CXT|5.007003||p -STMT_END|||p -STMT_START|||p -ST||| -SVt_IV||| -SVt_NV||| -SVt_PVAV||| -SVt_PVCV||| -SVt_PVHV||| -SVt_PVMG||| -SVt_PV||| -Safefree||| -Slab_Alloc||| -Slab_Free||| -StructCopy||| -SvCUR_set||| -SvCUR||| -SvEND||| -SvGETMAGIC|5.004050||p -SvGROW||| -SvIOK_UV||5.006000| -SvIOK_notUV||5.006000| -SvIOK_off||| -SvIOK_only_UV||5.006000| -SvIOK_only||| -SvIOK_on||| -SvIOKp||| -SvIOK||| -SvIVX||| -SvIV_nomg|5.009001||p -SvIV_set||| -SvIVx||| -SvIV||| -SvIsCOW_shared_hash||5.008003| -SvIsCOW||5.008003| -SvLEN_set||| -SvLEN||| -SvLOCK||5.007003| -SvMAGIC_set||5.009003| -SvNIOK_off||| -SvNIOKp||| -SvNIOK||| -SvNOK_off||| -SvNOK_only||| -SvNOK_on||| -SvNOKp||| -SvNOK||| -SvNVX||| -SvNV_set||| -SvNVx||| -SvNV||| -SvOK||| -SvOOK||| -SvPOK_off||| -SvPOK_only_UTF8||5.006000| -SvPOK_only||| -SvPOK_on||| -SvPOKp||| -SvPOK||| -SvPVX||| -SvPV_force_nomg|5.007002||p -SvPV_force||| -SvPV_nolen|5.006000||p -SvPV_nomg|5.007002||p -SvPV_set||| -SvPVbyte_force||5.009002| -SvPVbyte_nolen||5.006000| -SvPVbytex_force||5.006000| -SvPVbytex||5.006000| -SvPVbyte|5.006000||p -SvPVutf8_force||5.006000| -SvPVutf8_nolen||5.006000| -SvPVutf8x_force||5.006000| -SvPVutf8x||5.006000| -SvPVutf8||5.006000| -SvPVx||| -SvPV||| -SvREFCNT_dec||| -SvREFCNT_inc||| -SvREFCNT||| -SvROK_off||| -SvROK_on||| -SvROK||| -SvRV_set||5.009003| -SvRV||| -SvSETMAGIC||| -SvSHARE||5.007003| -SvSTASH_set||5.009003| -SvSTASH||| -SvSetMagicSV_nosteal||5.004000| -SvSetMagicSV||5.004000| -SvSetSV_nosteal||5.004000| -SvSetSV||| -SvTAINTED_off||5.004000| -SvTAINTED_on||5.004000| -SvTAINTED||5.004000| -SvTAINT||| -SvTRUE||| -SvTYPE||| -SvUNLOCK||5.007003| -SvUOK||5.007001| -SvUPGRADE||| -SvUTF8_off||5.006000| -SvUTF8_on||5.006000| -SvUTF8||5.006000| -SvUVXx|5.004000||p -SvUVX|5.004000||p -SvUV_nomg|5.009001||p -SvUV_set||5.009003| -SvUVx|5.004000||p -SvUV|5.004000||p -SvVOK||5.008001| -THIS|||n -UNDERBAR|5.009002||p -UVSIZE|5.006000||p -UVTYPE|5.006000||p -UVXf|5.007001||p -UVof|5.006000||p -UVuf|5.006000||p -UVxf|5.006000||p -XCPT_CATCH|5.009002||p -XCPT_RETHROW|5.009002||p -XCPT_TRY_END|5.009002||p -XCPT_TRY_START|5.009002||p -XPUSHi||| -XPUSHmortal|5.009002||p -XPUSHn||| -XPUSHp||| -XPUSHs||| -XPUSHu|5.004000||p -XSRETURN_EMPTY||| -XSRETURN_IV||| -XSRETURN_NO||| -XSRETURN_NV||| -XSRETURN_PV||| -XSRETURN_UNDEF||| -XSRETURN_UV|5.008001||p -XSRETURN_YES||| -XSRETURN||| -XST_mIV||| -XST_mNO||| -XST_mNV||| -XST_mPV||| -XST_mUNDEF||| -XST_mUV|5.008001||p -XST_mYES||| -XS_VERSION_BOOTCHECK||| -XS_VERSION||| -XS||| -ZeroD|5.009002||p -Zero||| -_aMY_CXT|5.007003||p -_pMY_CXT|5.007003||p -aMY_CXT_|5.007003||p -aMY_CXT|5.007003||p -aTHX_|5.006000||p -aTHX|5.006000||p -add_data||| -allocmy||| -amagic_call||| -any_dup||| -ao||| -append_elem||| -append_list||| -apply_attrs_my||| -apply_attrs_string||5.006001| -apply_attrs||| -apply||| -asIV||| -asUV||| -atfork_lock||5.007003|n -atfork_unlock||5.007003|n -av_arylen_p||5.009003| -av_clear||| -av_delete||5.006000| -av_exists||5.006000| -av_extend||| -av_fake||| -av_fetch||| -av_fill||| -av_len||| -av_make||| -av_pop||| -av_push||| -av_reify||| -av_shift||| -av_store||| -av_undef||| -av_unshift||| -ax|||n -bad_type||| -bind_match||| -block_end||| -block_gimme||5.004000| -block_start||| -boolSV|5.004000||p -boot_core_PerlIO||| -boot_core_UNIVERSAL||| -boot_core_xsutils||| -bytes_from_utf8||5.007001| -bytes_to_utf8||5.006001| -cache_re||| -call_argv|5.006000||p -call_atexit||5.006000| -call_body||| -call_list_body||| -call_list||5.004000| -call_method|5.006000||p -call_pv|5.006000||p -call_sv|5.006000||p -calloc||5.007002|n -cando||| -cast_i32||5.006000| -cast_iv||5.006000| -cast_ulong||5.006000| -cast_uv||5.006000| -check_uni||| -checkcomma||| -checkposixcc||| -ck_anoncode||| -ck_bitop||| -ck_concat||| -ck_defined||| -ck_delete||| -ck_die||| -ck_eof||| -ck_eval||| -ck_exec||| -ck_exists||| -ck_exit||| -ck_ftst||| -ck_fun||| -ck_glob||| -ck_grep||| -ck_index||| -ck_join||| -ck_lengthconst||| -ck_lfun||| -ck_listiob||| -ck_match||| -ck_method||| -ck_null||| -ck_open||| -ck_repeat||| -ck_require||| -ck_retarget||| -ck_return||| -ck_rfun||| -ck_rvconst||| -ck_sassign||| -ck_select||| -ck_shift||| -ck_sort||| -ck_spair||| -ck_split||| -ck_subr||| -ck_substr||| -ck_svconst||| -ck_trunc||| -ck_unpack||| -cl_and||| -cl_anything||| -cl_init_zero||| -cl_init||| -cl_is_anything||| -cl_or||| -closest_cop||| -convert||| -cop_free||| -cr_textfilter||| -croak_nocontext|||vn -croak|||v -csighandler||5.007001|n -custom_op_desc||5.007003| -custom_op_name||5.007003| -cv_ckproto||| -cv_clone||| -cv_const_sv||5.004000| -cv_dump||| -cv_undef||| -cx_dump||5.005000| -cx_dup||| -cxinc||| -dAXMARK||5.009003| -dAX|5.007002||p -dITEMS|5.007002||p -dMARK||| -dMY_CXT_SV|5.007003||p -dMY_CXT|5.007003||p -dNOOP|5.006000||p -dORIGMARK||| -dSP||| -dTHR|5.004050||p -dTHXa|5.006000||p -dTHXoa|5.006000||p -dTHX|5.006000||p -dUNDERBAR|5.009002||p -dXCPT|5.009002||p -dXSARGS||| -dXSI32||| -dXSTARG|5.006000||p -deb_curcv||| -deb_nocontext|||vn -deb_stack_all||| -deb_stack_n||| -debop||5.005000| -debprofdump||5.005000| -debprof||| -debstackptrs||5.007003| -debstack||5.007003| -deb||5.007003|v -del_he||| -del_sv||| -delimcpy||5.004000| -depcom||| -deprecate_old||| -deprecate||| -despatch_signals||5.007001| -die_nocontext|||vn -die_where||| -die|||v -dirp_dup||| -div128||| -djSP||| -do_aexec5||| -do_aexec||| -do_aspawn||| -do_binmode||5.004050| -do_chomp||| -do_chop||| -do_close||| -do_dump_pad||| -do_eof||| -do_exec3||| -do_execfree||| -do_exec||| -do_gv_dump||5.006000| -do_gvgv_dump||5.006000| -do_hv_dump||5.006000| -do_ipcctl||| -do_ipcget||| -do_join||| -do_kv||| -do_magic_dump||5.006000| -do_msgrcv||| -do_msgsnd||| -do_oddball||| -do_op_dump||5.006000| -do_open9||5.006000| -do_openn||5.007001| -do_open||5.004000| -do_pipe||| -do_pmop_dump||5.006000| -do_print||| -do_readline||| -do_seek||| -do_semop||| -do_shmio||| -do_spawn_nowait||| -do_spawn||| -do_sprintf||| -do_sv_dump||5.006000| -do_sysseek||| -do_tell||| -do_trans_complex_utf8||| -do_trans_complex||| -do_trans_count_utf8||| -do_trans_count||| -do_trans_simple_utf8||| -do_trans_simple||| -do_trans||| -do_vecget||| -do_vecset||| -do_vop||| -docatch_body||| -docatch||| -doeval||| -dofile||| -dofindlabel||| -doform||| -doing_taint||5.008001|n -dooneliner||| -doopen_pm||| -doparseform||| -dopoptoeval||| -dopoptolabel||| -dopoptoloop||| -dopoptosub_at||| -dopoptosub||| -dounwind||| -dowantarray||| -dump_all||5.006000| -dump_eval||5.006000| -dump_fds||| -dump_form||5.006000| -dump_indent||5.006000|v -dump_mstats||| -dump_packsubs||5.006000| -dump_sub||5.006000| -dump_vindent||5.006000| -dumpuntil||| -dup_attrlist||| -emulate_eaccess||| -eval_pv|5.006000||p -eval_sv|5.006000||p -expect_number||| -fbm_compile||5.005000| -fbm_instr||5.005000| -fd_on_nosuid_fs||| -filter_add||| -filter_del||| -filter_gets||| -filter_read||| -find_beginning||| -find_byclass||| -find_in_my_stash||| -find_runcv||| -find_rundefsvoffset||5.009002| -find_script||| -find_uninit_var||| -fold_constants||| -forbid_setid||| -force_ident||| -force_list||| -force_next||| -force_version||| -force_word||| -form_nocontext|||vn -form||5.004000|v -fp_dup||| -fprintf_nocontext|||vn -free_global_struct||| -free_tied_hv_pool||| -free_tmps||| -gen_constant_list||| -get_av|5.006000||p -get_context||5.006000|n -get_cv|5.006000||p -get_db_sub||| -get_debug_opts||| -get_hash_seed||| -get_hv|5.006000||p -get_mstats||| -get_no_modify||| -get_num||| -get_op_descs||5.005000| -get_op_names||5.005000| -get_opargs||| -get_ppaddr||5.006000| -get_sv|5.006000||p -get_vtbl||5.005030| -getcwd_sv||5.007002| -getenv_len||| -gp_dup||| -gp_free||| -gp_ref||| -grok_bin|5.007003||p -grok_hex|5.007003||p -grok_number|5.007002||p -grok_numeric_radix|5.007002||p -grok_oct|5.007003||p -group_end||| -gv_AVadd||| -gv_HVadd||| -gv_IOadd||| -gv_autoload4||5.004000| -gv_check||| -gv_dump||5.006000| -gv_efullname3||5.004000| -gv_efullname4||5.006001| -gv_efullname||| -gv_ename||| -gv_fetchfile||| -gv_fetchmeth_autoload||5.007003| -gv_fetchmethod_autoload||5.004000| -gv_fetchmethod||| -gv_fetchmeth||| -gv_fetchpvn_flags||5.009002| -gv_fetchpv||| -gv_fetchsv||5.009002| -gv_fullname3||5.004000| -gv_fullname4||5.006001| -gv_fullname||| -gv_handler||5.007001| -gv_init_sv||| -gv_init||| -gv_share||| -gv_stashpvn|5.006000||p -gv_stashpv||| -gv_stashsv||| -he_dup||| -hek_dup||| -hfreeentries||| -hsplit||| -hv_assert||5.009001| -hv_auxinit||| -hv_clear_placeholders||5.009001| -hv_clear||| -hv_delayfree_ent||5.004000| -hv_delete_common||| -hv_delete_ent||5.004000| -hv_delete||| -hv_eiter_p||5.009003| -hv_eiter_set||5.009003| -hv_exists_ent||5.004000| -hv_exists||| -hv_fetch_common||| -hv_fetch_ent||5.004000| -hv_fetch||| -hv_free_ent||5.004000| -hv_iterinit||| -hv_iterkeysv||5.004000| -hv_iterkey||| -hv_iternext_flags||5.008000| -hv_iternextsv||| -hv_iternext||| -hv_iterval||| -hv_ksplit||5.004000| -hv_magic_check||| -hv_magic||| -hv_name_set||5.009003| -hv_notallowed||| -hv_placeholders_get||5.009003| -hv_placeholders_p||5.009003| -hv_placeholders_set||5.009003| -hv_riter_p||5.009003| -hv_riter_set||5.009003| -hv_scalar||5.009001| -hv_store_ent||5.004000| -hv_store_flags||5.008000| -hv_store||| -hv_undef||| -ibcmp_locale||5.004000| -ibcmp_utf8||5.007003| -ibcmp||| -incl_perldb||| -incline||| -incpush||| -ingroup||| -init_argv_symbols||| -init_debugger||| -init_global_struct||| -init_i18nl10n||5.006000| -init_i18nl14n||5.006000| -init_ids||| -init_interp||| -init_lexer||| -init_main_stash||| -init_perllib||| -init_postdump_symbols||| -init_predump_symbols||| -init_stacks||5.005000| -init_tm||5.007002| -instr||| -intro_my||| -intuit_method||| -intuit_more||| -invert||| -io_close||| -isALNUM||| -isALPHA||| -isDIGIT||| -isLOWER||| -isSPACE||| -isUPPER||| -is_an_int||| -is_gv_magical_sv||| -is_gv_magical||| -is_handle_constructor||| -is_list_assignment||| -is_lvalue_sub||5.007001| -is_uni_alnum_lc||5.006000| -is_uni_alnumc_lc||5.006000| -is_uni_alnumc||5.006000| -is_uni_alnum||5.006000| -is_uni_alpha_lc||5.006000| -is_uni_alpha||5.006000| -is_uni_ascii_lc||5.006000| -is_uni_ascii||5.006000| -is_uni_cntrl_lc||5.006000| -is_uni_cntrl||5.006000| -is_uni_digit_lc||5.006000| -is_uni_digit||5.006000| -is_uni_graph_lc||5.006000| -is_uni_graph||5.006000| -is_uni_idfirst_lc||5.006000| -is_uni_idfirst||5.006000| -is_uni_lower_lc||5.006000| -is_uni_lower||5.006000| -is_uni_print_lc||5.006000| -is_uni_print||5.006000| -is_uni_punct_lc||5.006000| -is_uni_punct||5.006000| -is_uni_space_lc||5.006000| -is_uni_space||5.006000| -is_uni_upper_lc||5.006000| -is_uni_upper||5.006000| -is_uni_xdigit_lc||5.006000| -is_uni_xdigit||5.006000| -is_utf8_alnumc||5.006000| -is_utf8_alnum||5.006000| -is_utf8_alpha||5.006000| -is_utf8_ascii||5.006000| -is_utf8_char_slow||| -is_utf8_char||5.006000| -is_utf8_cntrl||5.006000| -is_utf8_digit||5.006000| -is_utf8_graph||5.006000| -is_utf8_idcont||5.008000| -is_utf8_idfirst||5.006000| -is_utf8_lower||5.006000| -is_utf8_mark||5.006000| -is_utf8_print||5.006000| -is_utf8_punct||5.006000| -is_utf8_space||5.006000| -is_utf8_string_loclen||5.009003| -is_utf8_string_loc||5.008001| -is_utf8_string||5.006001| -is_utf8_upper||5.006000| -is_utf8_xdigit||5.006000| -isa_lookup||| -items|||n -ix|||n -jmaybe||| -keyword||| -leave_scope||| -lex_end||| -lex_start||| -linklist||| -listkids||| -list||| -load_module_nocontext|||vn -load_module||5.006000|v -localize||| -looks_like_number||| -lop||| -mPUSHi|5.009002||p -mPUSHn|5.009002||p -mPUSHp|5.009002||p -mPUSHu|5.009002||p -mXPUSHi|5.009002||p -mXPUSHn|5.009002||p -mXPUSHp|5.009002||p -mXPUSHu|5.009002||p -magic_clear_all_env||| -magic_clearenv||| -magic_clearpack||| -magic_clearsig||| -magic_dump||5.006000| -magic_existspack||| -magic_freearylen_p||| -magic_freeovrld||| -magic_freeregexp||| -magic_getarylen||| -magic_getdefelem||| -magic_getglob||| -magic_getnkeys||| -magic_getpack||| -magic_getpos||| -magic_getsig||| -magic_getsubstr||| -magic_gettaint||| -magic_getuvar||| -magic_getvec||| -magic_get||| -magic_killbackrefs||| -magic_len||| -magic_methcall||| -magic_methpack||| -magic_nextpack||| -magic_regdata_cnt||| -magic_regdatum_get||| -magic_regdatum_set||| -magic_scalarpack||| -magic_set_all_env||| -magic_setamagic||| -magic_setarylen||| -magic_setbm||| -magic_setcollxfrm||| -magic_setdbline||| -magic_setdefelem||| -magic_setenv||| -magic_setfm||| -magic_setglob||| -magic_setisa||| -magic_setmglob||| -magic_setnkeys||| -magic_setpack||| -magic_setpos||| -magic_setregexp||| -magic_setsig||| -magic_setsubstr||| -magic_settaint||| -magic_setutf8||| -magic_setuvar||| -magic_setvec||| -magic_set||| -magic_sizepack||| -magic_wipepack||| -magicname||| -make_trie||| -malloced_size|||n -malloc||5.007002|n -markstack_grow||| -measure_struct||| -memEQ|5.004000||p -memNE|5.004000||p -mem_collxfrm||| -mess_alloc||| -mess_nocontext|||vn -mess||5.006000|v -method_common||| -mfree||5.007002|n -mg_clear||| -mg_copy||| -mg_dup||| -mg_find||| -mg_free||| -mg_get||| -mg_length||5.005000| -mg_localize||| -mg_magical||| -mg_set||| -mg_size||5.005000| -mini_mktime||5.007002| -missingterm||| -mode_from_discipline||| -modkids||| -mod||| -moreswitches||| -mul128||| -mulexp10|||n -my_atof2||5.007002| -my_atof||5.006000| -my_attrs||| -my_bcopy|||n -my_betoh16|||n -my_betoh32|||n -my_betoh64|||n -my_betohi|||n -my_betohl|||n -my_betohs|||n -my_bzero|||n -my_chsize||| -my_exit_jump||| -my_exit||| -my_failure_exit||5.004000| -my_fflush_all||5.006000| -my_fork||5.007003|n -my_htobe16|||n -my_htobe32|||n -my_htobe64|||n -my_htobei|||n -my_htobel|||n -my_htobes|||n -my_htole16|||n -my_htole32|||n -my_htole64|||n -my_htolei|||n -my_htolel|||n -my_htoles|||n -my_htonl||| -my_kid||| -my_letoh16|||n -my_letoh32|||n -my_letoh64|||n -my_letohi|||n -my_letohl|||n -my_letohs|||n -my_lstat||| -my_memcmp||5.004000|n -my_memset|||n -my_ntohl||| -my_pclose||5.004000| -my_popen_list||5.007001| -my_popen||5.004000| -my_setenv||| -my_socketpair||5.007003|n -my_stat||| -my_strftime||5.007002| -my_swabn|||n -my_swap||| -my_unexec||| -my||| -newANONATTRSUB||5.006000| -newANONHASH||| -newANONLIST||| -newANONSUB||| -newASSIGNOP||| -newATTRSUB||5.006000| -newAVREF||| -newAV||| -newBINOP||| -newCONDOP||| -newCONSTSUB|5.006000||p -newCVREF||| -newDEFSVOP||| -newFORM||| -newFOROP||| -newGVOP||| -newGVREF||| -newGVgen||| -newHVREF||| -newHVhv||5.005000| -newHV||| -newIO||| -newLISTOP||| -newLOGOP||| -newLOOPEX||| -newLOOPOP||| -newMYSUB||5.006000| -newNULLLIST||| -newOP||| -newPADOP||5.006000| -newPMOP||| -newPROG||| -newPVOP||| -newRANGE||| -newRV_inc|5.004000||p -newRV_noinc|5.006000||p -newRV||| -newSLICEOP||| -newSTATEOP||| -newSUB||| -newSVOP||| -newSVREF||| -newSVhek||5.009003| -newSViv||| -newSVnv||| -newSVpvf_nocontext|||vn -newSVpvf||5.004000|v -newSVpvn_share||5.007001| -newSVpvn|5.006000||p -newSVpv||| -newSVrv||| -newSVsv||| -newSVuv|5.006000||p -newSV||| -newUNOP||| -newWHILEOP||5.009003| -newXSproto||5.006000| -newXS||5.006000| -new_collate||5.006000| -new_constant||| -new_ctype||5.006000| -new_he||| -new_logop||| -new_numeric||5.006000| -new_stackinfo||5.005000| -new_version||5.009000| -next_symbol||| -nextargv||| -nextchar||| -ninstr||| -no_bareword_allowed||| -no_fh_allowed||| -no_op||| -not_a_number||| -nothreadhook||5.008000| -nuke_stacks||| -num_overflow|||n -oopsAV||| -oopsCV||| -oopsHV||| -op_clear||| -op_const_sv||| -op_dump||5.006000| -op_free||| -op_null||5.007002| -op_refcnt_lock||5.009002| -op_refcnt_unlock||5.009002| -open_script||| -pMY_CXT_|5.007003||p -pMY_CXT|5.007003||p -pTHX_|5.006000||p -pTHX|5.006000||p -pack_cat||5.007003| -pack_rec||| -package||| -packlist||5.008001| -pad_add_anon||| -pad_add_name||| -pad_alloc||| -pad_block_start||| -pad_check_dup||| -pad_compname_type||| -pad_findlex||| -pad_findmy||| -pad_fixup_inner_anons||| -pad_free||| -pad_leavemy||| -pad_new||| -pad_push||| -pad_reset||| -pad_setsv||| -pad_sv||| -pad_swipe||| -pad_tidy||| -pad_undef||| -parse_body||| -parse_unicode_opts||| -path_is_absolute||| -peep||| -pending_ident||| -perl_alloc_using|||n -perl_alloc|||n -perl_clone_using|||n -perl_clone|||n -perl_construct|||n -perl_destruct||5.007003|n -perl_free|||n -perl_parse||5.006000|n -perl_run|||n -pidgone||| -pmflag||| -pmop_dump||5.006000| -pmruntime||| -pmtrans||| -pop_scope||| -pregcomp||| -pregexec||| -pregfree||| -prepend_elem||| -printf_nocontext|||vn -ptr_table_clear||| -ptr_table_fetch||| -ptr_table_free||| -ptr_table_new||| -ptr_table_split||| -ptr_table_store||| -push_scope||| -put_byte||| -pv_display||5.006000| -pv_uni_display||5.007003| -qerror||| -re_croak2||| -re_dup||| -re_intuit_start||5.006000| -re_intuit_string||5.006000| -realloc||5.007002|n -reentrant_free||| -reentrant_init||| -reentrant_retry|||vn -reentrant_size||| -refkids||| -refto||| -ref||| -reg_node||| -reganode||| -regatom||| -regbranch||| -regclass_swash||5.007003| -regclass||| -regcp_set_to||| -regcppop||| -regcppush||| -regcurly||| -regdump||5.005000| -regexec_flags||5.005000| -reghop3||| -reghopmaybe3||| -reghopmaybe||| -reghop||| -reginclass||| -reginitcolors||5.006000| -reginsert||| -regmatch||| -regnext||5.005000| -regoptail||| -regpiece||| -regpposixcc||| -regprop||| -regrepeat_hard||| -regrepeat||| -regtail||| -regtry||| -reguni||| -regwhite||| -reg||| -repeatcpy||| -report_evil_fh||| -report_uninit||| -require_errno||| -require_pv||5.006000| -rninstr||| -rsignal_restore||| -rsignal_save||| -rsignal_state||5.004000| -rsignal||5.004000| -run_body||| -runops_debug||5.005000| -runops_standard||5.005000| -rvpv_dup||| -rxres_free||| -rxres_restore||| -rxres_save||| -safesyscalloc||5.006000|n -safesysfree||5.006000|n -safesysmalloc||5.006000|n -safesysrealloc||5.006000|n -same_dirent||| -save_I16||5.004000| -save_I32||| -save_I8||5.006000| -save_aelem||5.004050| -save_alloc||5.006000| -save_aptr||| -save_ary||| -save_bool||5.008001| -save_clearsv||| -save_delete||| -save_destructor_x||5.006000| -save_destructor||5.006000| -save_freeop||| -save_freepv||| -save_freesv||| -save_generic_pvref||5.006001| -save_generic_svref||5.005030| -save_gp||5.004000| -save_hash||| -save_hek_flags||| -save_helem||5.004050| -save_hints||5.005000| -save_hptr||| -save_int||| -save_item||| -save_iv||5.005000| -save_lines||| -save_list||| -save_long||| -save_magic||| -save_mortalizesv||5.007001| -save_nogv||| -save_op||| -save_padsv||5.007001| -save_pptr||| -save_re_context||5.006000| -save_scalar_at||| -save_scalar||| -save_set_svflags||5.009000| -save_shared_pvref||5.007003| -save_sptr||| -save_svref||| -save_threadsv||5.005000| -save_vptr||5.006000| -savepvn||| -savepv||| -savesharedpv||5.007003| -savestack_grow_cnt||5.008001| -savestack_grow||| -savesvpv||5.009002| -sawparens||| -scalar_mod_type||| -scalarboolean||| -scalarkids||| -scalarseq||| -scalarvoid||| -scalar||| -scan_bin||5.006000| -scan_commit||| -scan_const||| -scan_formline||| -scan_heredoc||| -scan_hex||| -scan_ident||| -scan_inputsymbol||| -scan_num||5.007001| -scan_oct||| -scan_pat||| -scan_str||| -scan_subst||| -scan_trans||| -scan_version||5.009001| -scan_vstring||5.008001| -scan_word||| -scope||| -screaminstr||5.005000| -seed||| -set_context||5.006000|n -set_csh||| -set_numeric_local||5.006000| -set_numeric_radix||5.006000| -set_numeric_standard||5.006000| -setdefout||| -setenv_getix||| -share_hek_flags||| -share_hek||| -si_dup||| -sighandler|||n -simplify_sort||| -skipspace||| -sortsv||5.007003| -ss_dup||| -stack_grow||| -start_glob||| -start_subparse||5.004000| -stashpv_hvname_match||5.009003| -stdize_locale||| -strEQ||| -strGE||| -strGT||| -strLE||| -strLT||| -strNE||| -str_to_version||5.006000| -strnEQ||| -strnNE||| -study_chunk||| -sub_crush_depth||| -sublex_done||| -sublex_push||| -sublex_start||| -sv_2bool||| -sv_2cv||| -sv_2io||| -sv_2iuv_non_preserve||| -sv_2iv_flags||5.009001| -sv_2iv||| -sv_2mortal||| -sv_2nv||| -sv_2pv_flags||5.007002| -sv_2pv_nolen|5.006000||p -sv_2pvbyte_nolen||| -sv_2pvbyte|5.006000||p -sv_2pvutf8_nolen||5.006000| -sv_2pvutf8||5.006000| -sv_2pv||| -sv_2uv_flags||5.009001| -sv_2uv|5.004000||p -sv_add_arena||| -sv_add_backref||| -sv_backoff||| -sv_bless||| -sv_cat_decode||5.008001| -sv_catpv_mg|5.006000||p -sv_catpvf_mg_nocontext|||pvn -sv_catpvf_mg|5.006000|5.004000|pv -sv_catpvf_nocontext|||vn -sv_catpvf||5.004000|v -sv_catpvn_flags||5.007002| -sv_catpvn_mg|5.006000||p -sv_catpvn_nomg|5.007002||p -sv_catpvn||| -sv_catpv||| -sv_catsv_flags||5.007002| -sv_catsv_mg|5.006000||p -sv_catsv_nomg|5.007002||p -sv_catsv||| -sv_chop||| -sv_clean_all||| -sv_clean_objs||| -sv_clear||| -sv_cmp_locale||5.004000| -sv_cmp||| -sv_collxfrm||| -sv_compile_2op||5.008001| -sv_copypv||5.007003| -sv_dec||| -sv_del_backref||| -sv_derived_from||5.004000| -sv_dump||| -sv_dup||| -sv_eq||| -sv_force_normal_flags||5.007001| -sv_force_normal||5.006000| -sv_free2||| -sv_free_arenas||| -sv_free||| -sv_gets||5.004000| -sv_grow||| -sv_inc||| -sv_insert||| -sv_isa||| -sv_isobject||| -sv_iv||5.005000| -sv_len_utf8||5.006000| -sv_len||| -sv_magicext||5.007003| -sv_magic||| -sv_mortalcopy||| -sv_newmortal||| -sv_newref||| -sv_nolocking||5.007003| -sv_nosharing||5.007003| -sv_nounlocking||5.007003| -sv_nv||5.005000| -sv_peek||5.005000| -sv_pos_b2u||5.006000| -sv_pos_u2b||5.006000| -sv_pvbyten_force||5.006000| -sv_pvbyten||5.006000| -sv_pvbyte||5.006000| -sv_pvn_force_flags||5.007002| -sv_pvn_force|||p -sv_pvn_nomg|5.007003||p -sv_pvn|5.006000||p -sv_pvutf8n_force||5.006000| -sv_pvutf8n||5.006000| -sv_pvutf8||5.006000| -sv_pv||5.006000| -sv_recode_to_utf8||5.007003| -sv_reftype||| -sv_release_COW||| -sv_release_IVX||| -sv_replace||| -sv_report_used||| -sv_reset||| -sv_rvweaken||5.006000| -sv_setiv_mg|5.006000||p -sv_setiv||| -sv_setnv_mg|5.006000||p -sv_setnv||| -sv_setpv_mg|5.006000||p -sv_setpvf_mg_nocontext|||pvn -sv_setpvf_mg|5.006000|5.004000|pv -sv_setpvf_nocontext|||vn -sv_setpvf||5.004000|v -sv_setpviv_mg||5.008001| -sv_setpviv||5.008001| -sv_setpvn_mg|5.006000||p -sv_setpvn||| -sv_setpv||| -sv_setref_iv||| -sv_setref_nv||| -sv_setref_pvn||| -sv_setref_pv||| -sv_setref_uv||5.007001| -sv_setsv_cow||| -sv_setsv_flags||5.007002| -sv_setsv_mg|5.006000||p -sv_setsv_nomg|5.007002||p -sv_setsv||| -sv_setuv_mg|5.006000||p -sv_setuv|5.006000||p -sv_tainted||5.004000| -sv_taint||5.004000| -sv_true||5.005000| -sv_unglob||| -sv_uni_display||5.007003| -sv_unmagic||| -sv_unref_flags||5.007001| -sv_unref||| -sv_untaint||5.004000| -sv_upgrade||| -sv_usepvn_mg|5.006000||p -sv_usepvn||| -sv_utf8_decode||5.006000| -sv_utf8_downgrade||5.006000| -sv_utf8_encode||5.006000| -sv_utf8_upgrade_flags||5.007002| -sv_utf8_upgrade||5.007001| -sv_uv|5.006000||p -sv_vcatpvf_mg|5.006000|5.004000|p -sv_vcatpvfn||5.004000| -sv_vcatpvf|5.006000|5.004000|p -sv_vsetpvf_mg|5.006000|5.004000|p -sv_vsetpvfn||5.004000| -sv_vsetpvf|5.006000|5.004000|p -svtype||| -swallow_bom||| -swash_fetch||5.007002| -swash_init||5.006000| -sys_intern_clear||| -sys_intern_dup||| -sys_intern_init||| -taint_env||| -taint_proper||| -tmps_grow||5.006000| -toLOWER||| -toUPPER||| -to_byte_substr||| -to_uni_fold||5.007003| -to_uni_lower_lc||5.006000| -to_uni_lower||5.007003| -to_uni_title_lc||5.006000| -to_uni_title||5.007003| -to_uni_upper_lc||5.006000| -to_uni_upper||5.007003| -to_utf8_case||5.007003| -to_utf8_fold||5.007003| -to_utf8_lower||5.007003| -to_utf8_substr||| -to_utf8_title||5.007003| -to_utf8_upper||5.007003| -tokeq||| -tokereport||| -too_few_arguments||| -too_many_arguments||| -unlnk||| -unpack_rec||| -unpack_str||5.007003| -unpackstring||5.008001| -unshare_hek_or_pvn||| -unshare_hek||| -unsharepvn||5.004000| -upg_version||5.009000| -usage||| -utf16_textfilter||| -utf16_to_utf8_reversed||5.006001| -utf16_to_utf8||5.006001| -utf16rev_textfilter||| -utf8_distance||5.006000| -utf8_hop||5.006000| -utf8_length||5.007001| -utf8_mg_pos_init||| -utf8_mg_pos||| -utf8_to_bytes||5.006001| -utf8_to_uvchr||5.007001| -utf8_to_uvuni||5.007001| -utf8n_to_uvchr||5.007001| -utf8n_to_uvuni||5.007001| -utilize||| -uvchr_to_utf8_flags||5.007003| -uvchr_to_utf8||5.007001| -uvuni_to_utf8_flags||5.007003| -uvuni_to_utf8||5.007001| -validate_suid||| -varname||| -vcmp||5.009000| -vcroak||5.006000| -vdeb||5.007003| -vdie||| -vform||5.006000| -visit||| -vivify_defelem||| -vivify_ref||| -vload_module||5.006000| -vmess||5.006000| -vnewSVpvf|5.006000|5.004000|p -vnormal||5.009002| -vnumify||5.009000| -vstringify||5.009000| -vwarner||5.006000| -vwarn||5.006000| -wait4pid||| -warn_nocontext|||vn -warner_nocontext|||vn -warner||5.006000|v -warn|||v -watch||| -whichsig||| -write_to_stderr||| -yyerror||| -yylex||| -yyparse||| -yywarn||| -); - -if (exists $opt{'list-unsupported'}) { - my $f; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $API{$f}{todo}; - print "$f ", '.'x(40-length($f)), " ", format_version($API{$f}{todo}), "\n"; - } - exit 0; -} - -# Scan for possible replacement candidates - -my(%replace, %need, %hints, %depends); -my $replace = 0; -my $hint = ''; - -while () { - if ($hint) { - if (m{^\s*\*\s(.*?)\s*$}) { - $hints{$hint} ||= ''; # suppress warning with older perls - $hints{$hint} .= "$1\n"; - } - else { - $hint = ''; - } - } - $hint = $1 if m{^\s*$rccs\sHint:\s+(\w+)\s*$}; - - $replace = $1 if m{^\s*$rccs\s+Replace:\s+(\d+)\s+$rcce\s*$}; - $replace{$2} = $1 if $replace and m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+)}; - $replace{$2} = $1 if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+).*$rccs\s+Replace\s+$rcce}; - $replace{$1} = $2 if m{^\s*$rccs\s+Replace (\w+) with (\w+)\s+$rcce\s*$}; - - if (m{^\s*$rccs\s+(\w+)\s+depends\s+on\s+(\w+(\s*,\s*\w+)*)\s+$rcce\s*$}) { - push @{$depends{$1}}, map { s/\s+//g; $_ } split /,/, $2; - } - - $need{$1} = 1 if m{^#if\s+defined\(NEED_(\w+)(?:_GLOBAL)?\)}; -} - -if (exists $opt{'api-info'}) { - my $f; - my $count = 0; - my $match = $opt{'api-info'} =~ m!^/(.*)/$! ? $1 : "^\Q$opt{'api-info'}\E\$"; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $f =~ /$match/; - print "\n=== $f ===\n\n"; - my $info = 0; - if ($API{$f}{base} || $API{$f}{todo}) { - my $base = format_version($API{$f}{base} || $API{$f}{todo}); - print "Supported at least starting from perl-$base.\n"; - $info++; - } - if ($API{$f}{provided}) { - my $todo = $API{$f}{todo} ? format_version($API{$f}{todo}) : "5.003"; - print "Support by $ppport provided back to perl-$todo.\n"; - print "Support needs to be explicitly requested by NEED_$f.\n" if exists $need{$f}; - print "Depends on: ", join(', ', @{$depends{$f}}), ".\n" if exists $depends{$f}; - print "$hints{$f}" if exists $hints{$f}; - $info++; - } - unless ($info) { - print "No portability information available.\n"; - } - $count++; - } - if ($count > 0) { - print "\n"; - } - else { - print "Found no API matching '$opt{'api-info'}'.\n"; - } - exit 0; -} - -if (exists $opt{'list-provided'}) { - my $f; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $API{$f}{provided}; - my @flags; - push @flags, 'explicit' if exists $need{$f}; - push @flags, 'depend' if exists $depends{$f}; - push @flags, 'hint' if exists $hints{$f}; - my $flags = @flags ? ' ['.join(', ', @flags).']' : ''; - print "$f$flags\n"; - } - exit 0; -} - -my @files; -my @srcext = qw( xs c h cc cpp ); -my $srcext = join '|', @srcext; - -if (@ARGV) { - my %seen; - @files = grep { -f && !exists $seen{$_} } map { glob $_ } @ARGV; -} -else { - eval { - require File::Find; - File::Find::find(sub { - $File::Find::name =~ /\.($srcext)$/i - and push @files, $File::Find::name; - }, '.'); - }; - if ($@) { - @files = map { glob "*.$_" } @srcext; - } -} - -if (!@ARGV || $opt{filter}) { - my(@in, @out); - my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files; - for (@files) { - my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/\.($srcext)$/i; - push @{ $out ? \@out : \@in }, $_; - } - if (@ARGV && @out) { - warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out); - } - @files = @in; -} - -unless (@files) { - die "No input files given!\n"; -} - -my(%files, %global, %revreplace); -%revreplace = reverse %replace; -my $filename; -my $patch_opened = 0; - -for $filename (@files) { - unless (open IN, "<$filename") { - warn "Unable to read from $filename: $!\n"; - next; - } - - info("Scanning $filename ..."); - - my $c = do { local $/; }; - close IN; - - my %file = (orig => $c, changes => 0); - - # temporarily remove C comments from the code - my @ccom; - $c =~ s{ - ( - [^"'/]+ - | - (?:"[^"\\]*(?:\\.[^"\\]*)*" [^"'/]*)+ - | - (?:'[^'\\]*(?:\\.[^'\\]*)*' [^"'/]*)+ - ) - | - (/ (?: - \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / - | - /[^\r\n]* - )) - }{ - defined $2 and push @ccom, $2; - defined $1 ? $1 : "$ccs$#ccom$cce"; - }egsx; - - $file{ccom} = \@ccom; - $file{code} = $c; - $file{has_inc_ppport} = ($c =~ /#.*include.*\Q$ppport\E/); - - my $func; - - for $func (keys %API) { - my $match = $func; - $match .= "|$revreplace{$func}" if exists $revreplace{$func}; - if ($c =~ /\b(?:Perl_)?($match)\b/) { - $file{uses_replace}{$1}++ if exists $revreplace{$func} && $1 eq $revreplace{$func}; - $file{uses_Perl}{$func}++ if $c =~ /\bPerl_$func\b/; - if (exists $API{$func}{provided}) { - if (!exists $API{$func}{base} || $API{$func}{base} > $opt{'compat-version'}) { - $file{uses}{$func}++; - my @deps = rec_depend($func); - if (@deps) { - $file{uses_deps}{$func} = \@deps; - for (@deps) { - $file{uses}{$_} = 0 unless exists $file{uses}{$_}; - } - } - for ($func, @deps) { - if (exists $need{$_}) { - $file{needs}{$_} = 'static'; - } - } - } - } - if (exists $API{$func}{todo} && $API{$func}{todo} > $opt{'compat-version'}) { - if ($c =~ /\b$func\b/) { - $file{uses_todo}{$func}++; - } - } - } - } - - while ($c =~ /^$HS*#$HS*define$HS+(NEED_(\w+?)(_GLOBAL)?)\b/mg) { - if (exists $need{$2}) { - $file{defined $3 ? 'needed_global' : 'needed_static'}{$2}++; - } - else { - warning("Possibly wrong #define $1 in $filename"); - } - } - - for (qw(uses needs uses_todo needed_global needed_static)) { - for $func (keys %{$file{$_}}) { - push @{$global{$_}{$func}}, $filename; - } - } - - $files{$filename} = \%file; -} - -# Globally resolve NEED_'s -my $need; -for $need (keys %{$global{needs}}) { - if (@{$global{needs}{$need}} > 1) { - my @targets = @{$global{needs}{$need}}; - my @t = grep $files{$_}{needed_global}{$need}, @targets; - @targets = @t if @t; - @t = grep /\.xs$/i, @targets; - @targets = @t if @t; - my $target = shift @targets; - $files{$target}{needs}{$need} = 'global'; - for (@{$global{needs}{$need}}) { - $files{$_}{needs}{$need} = 'extern' if $_ ne $target; - } - } -} - -for $filename (@files) { - exists $files{$filename} or next; - - info("=== Analyzing $filename ==="); - - my %file = %{$files{$filename}}; - my $func; - my $c = $file{code}; - - for $func (sort keys %{$file{uses_Perl}}) { - if ($API{$func}{varargs}) { - my $changes = ($c =~ s{\b(Perl_$func\s*\(\s*)(?!aTHX_?)(\)|[^\s)]*\))} - { $1 . ($2 eq ')' ? 'aTHX' : 'aTHX_ ') . $2 }ge); - if ($changes) { - warning("Doesn't pass interpreter argument aTHX to Perl_$func"); - $file{changes} += $changes; - } - } - else { - warning("Uses Perl_$func instead of $func"); - $file{changes} += ($c =~ s{\bPerl_$func(\s*)\((\s*aTHX_?)?\s*} - {$func$1(}g); - } - } - - for $func (sort keys %{$file{uses_replace}}) { - warning("Uses $func instead of $replace{$func}"); - $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); - } - - for $func (sort keys %{$file{uses}}) { - next unless $file{uses}{$func}; # if it's only a dependency - if (exists $file{uses_deps}{$func}) { - diag("Uses $func, which depends on ", join(', ', @{$file{uses_deps}{$func}})); - } - elsif (exists $replace{$func}) { - warning("Uses $func instead of $replace{$func}"); - $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); - } - else { - diag("Uses $func"); - } - hint($func); - } - - for $func (sort keys %{$file{uses_todo}}) { - warning("Uses $func, which may not be portable below perl ", - format_version($API{$func}{todo})); - } - - for $func (sort keys %{$file{needed_static}}) { - my $message = ''; - if (not exists $file{uses}{$func}) { - $message = "No need to define NEED_$func if $func is never used"; - } - elsif (exists $file{needs}{$func} && $file{needs}{$func} ne 'static') { - $message = "No need to define NEED_$func when already needed globally"; - } - if ($message) { - diag($message); - $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_$func\b.*$LF//mg); - } - } - - for $func (sort keys %{$file{needed_global}}) { - my $message = ''; - if (not exists $global{uses}{$func}) { - $message = "No need to define NEED_${func}_GLOBAL if $func is never used"; - } - elsif (exists $file{needs}{$func}) { - if ($file{needs}{$func} eq 'extern') { - $message = "No need to define NEED_${func}_GLOBAL when already needed globally"; - } - elsif ($file{needs}{$func} eq 'static') { - $message = "No need to define NEED_${func}_GLOBAL when only used in this file"; - } - } - if ($message) { - diag($message); - $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_${func}_GLOBAL\b.*$LF//mg); - } - } - - $file{needs_inc_ppport} = keys %{$file{uses}}; - - if ($file{needs_inc_ppport}) { - my $pp = ''; - - for $func (sort keys %{$file{needs}}) { - my $type = $file{needs}{$func}; - next if $type eq 'extern'; - my $suffix = $type eq 'global' ? '_GLOBAL' : ''; - unless (exists $file{"needed_$type"}{$func}) { - if ($type eq 'global') { - diag("Files [@{$global{needs}{$func}}] need $func, adding global request"); - } - else { - diag("File needs $func, adding static request"); - } - $pp .= "#define NEED_$func$suffix\n"; - } - } - - if ($pp && ($c =~ s/^(?=$HS*#$HS*define$HS+NEED_\w+)/$pp/m)) { - $pp = ''; - $file{changes}++; - } - - unless ($file{has_inc_ppport}) { - diag("Needs to include '$ppport'"); - $pp .= qq(#include "$ppport"\n) - } - - if ($pp) { - $file{changes} += ($c =~ s/^($HS*#$HS*define$HS+NEED_\w+.*?)^/$1$pp/ms) - || ($c =~ s/^(?=$HS*#$HS*include.*\Q$ppport\E)/$pp/m) - || ($c =~ s/^($HS*#$HS*include.*XSUB.*\s*?)^/$1$pp/m) - || ($c =~ s/^/$pp/); - } - } - else { - if ($file{has_inc_ppport}) { - diag("No need to include '$ppport'"); - $file{changes} += ($c =~ s/^$HS*?#$HS*include.*\Q$ppport\E.*?$LF//m); - } - } - - # put back in our C comments - my $ix; - my $cppc = 0; - my @ccom = @{$file{ccom}}; - for $ix (0 .. $#ccom) { - if (!$opt{cplusplus} && $ccom[$ix] =~ s!^//!!) { - $cppc++; - $file{changes} += $c =~ s/$rccs$ix$rcce/$ccs$ccom[$ix] $cce/; - } - else { - $c =~ s/$rccs$ix$rcce/$ccom[$ix]/; - } - } - - if ($cppc) { - my $s = $cppc != 1 ? 's' : ''; - warning("Uses $cppc C++ style comment$s, which is not portable"); - } - - if ($file{changes}) { - if (exists $opt{copy}) { - my $newfile = "$filename$opt{copy}"; - if (-e $newfile) { - error("'$newfile' already exists, refusing to write copy of '$filename'"); - } - else { - local *F; - if (open F, ">$newfile") { - info("Writing copy of '$filename' with changes to '$newfile'"); - print F $c; - close F; - } - else { - error("Cannot open '$newfile' for writing: $!"); - } - } - } - elsif (exists $opt{patch} || $opt{changes}) { - if (exists $opt{patch}) { - unless ($patch_opened) { - if (open PATCH, ">$opt{patch}") { - $patch_opened = 1; - } - else { - error("Cannot open '$opt{patch}' for writing: $!"); - delete $opt{patch}; - $opt{changes} = 1; - goto fallback; - } - } - mydiff(\*PATCH, $filename, $c); - } - else { -fallback: - info("Suggested changes:"); - mydiff(\*STDOUT, $filename, $c); - } - } - else { - my $s = $file{changes} == 1 ? '' : 's'; - info("$file{changes} potentially required change$s detected"); - } - } - else { - info("Looks good"); - } -} - -close PATCH if $patch_opened; - -exit 0; - - -sub mydiff -{ - local *F = shift; - my($file, $str) = @_; - my $diff; - - if (exists $opt{diff}) { - $diff = run_diff($opt{diff}, $file, $str); - } - - if (!defined $diff and can_use('Text::Diff')) { - $diff = Text::Diff::diff($file, \$str, { STYLE => 'Unified' }); - $diff = <

$tmp") { - print F $str; - close F; - - if (open F, "$prog $file $tmp |") { - while () { - s/\Q$tmp\E/$file.patched/; - $diff .= $_; - } - close F; - unlink $tmp; - return $diff; - } - - unlink $tmp; - } - else { - error("Cannot open '$tmp' for writing: $!"); - } - - return undef; -} - -sub can_use -{ - eval "use @_;"; - return $@ eq ''; -} - -sub rec_depend -{ - my $func = shift; - my %seen; - return () unless exists $depends{$func}; - grep !$seen{$_}++, map { ($_, rec_depend($_)) } @{$depends{$func}}; -} - -sub parse_version -{ - my $ver = shift; - - if ($ver =~ /^(\d+)\.(\d+)\.(\d+)$/) { - return ($1, $2, $3); - } - elsif ($ver !~ /^\d+\.[\d_]+$/) { - die "cannot parse version '$ver'\n"; - } - - $ver =~ s/_//g; - $ver =~ s/$/000000/; - - my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; - - $v = int $v; - $s = int $s; - - if ($r < 5 || ($r == 5 && $v < 6)) { - if ($s % 10) { - die "cannot parse version '$ver'\n"; - } - } - - return ($r, $v, $s); -} - -sub format_version -{ - my $ver = shift; - - $ver =~ s/$/000000/; - my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; - - $v = int $v; - $s = int $s; - - if ($r < 5 || ($r == 5 && $v < 6)) { - if ($s % 10) { - die "invalid version '$ver'\n"; - } - $s /= 10; - - $ver = sprintf "%d.%03d", $r, $v; - $s > 0 and $ver .= sprintf "_%02d", $s; - - return $ver; - } - - return sprintf "%d.%d.%d", $r, $v, $s; -} - -sub info -{ - $opt{quiet} and return; - print @_, "\n"; -} - -sub diag -{ - $opt{quiet} and return; - $opt{diag} and print @_, "\n"; -} - -sub warning -{ - $opt{quiet} and return; - print "*** ", @_, "\n"; -} - -sub error -{ - print "*** ERROR: ", @_, "\n"; -} - -my %given_hints; -sub hint -{ - $opt{quiet} and return; - $opt{hints} or return; - my $func = shift; - exists $hints{$func} or return; - $given_hints{$func}++ and return; - my $hint = $hints{$func}; - $hint =~ s/^/ /mg; - print " --- hint for $func ---\n", $hint; -} - -sub usage -{ - my($usage) = do { local(@ARGV,$/)=($0); <> } =~ /^=head\d$HS+SYNOPSIS\s*^(.*?)\s*^=/ms; - my %M = ( 'I' => '*' ); - $usage =~ s/^\s*perl\s+\S+/$^X $0/; - $usage =~ s/([A-Z])<([^>]+)>/$M{$1}$2$M{$1}/g; - - print < -# endif -# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL))) -# include -# endif -# ifndef PERL_REVISION -# define PERL_REVISION (5) - /* Replace: 1 */ -# define PERL_VERSION PATCHLEVEL -# define PERL_SUBVERSION SUBVERSION - /* Replace PERL_PATCHLEVEL with PERL_VERSION */ - /* Replace: 0 */ -# endif -#endif - -#define PERL_BCDVERSION ((PERL_REVISION * 0x1000000L) + (PERL_VERSION * 0x1000L) + PERL_SUBVERSION) - -/* It is very unlikely that anyone will try to use this with Perl 6 - (or greater), but who knows. - */ -#if PERL_REVISION != 5 -# error ppport.h only works with Perl version 5 -#endif /* PERL_REVISION != 5 */ - -#ifdef I_LIMITS -# include -#endif - -#ifndef PERL_UCHAR_MIN -# define PERL_UCHAR_MIN ((unsigned char)0) -#endif - -#ifndef PERL_UCHAR_MAX -# ifdef UCHAR_MAX -# define PERL_UCHAR_MAX ((unsigned char)UCHAR_MAX) -# else -# ifdef MAXUCHAR -# define PERL_UCHAR_MAX ((unsigned char)MAXUCHAR) -# else -# define PERL_UCHAR_MAX ((unsigned char)~(unsigned)0) -# endif -# endif -#endif - -#ifndef PERL_USHORT_MIN -# define PERL_USHORT_MIN ((unsigned short)0) -#endif - -#ifndef PERL_USHORT_MAX -# ifdef USHORT_MAX -# define PERL_USHORT_MAX ((unsigned short)USHORT_MAX) -# else -# ifdef MAXUSHORT -# define PERL_USHORT_MAX ((unsigned short)MAXUSHORT) -# else -# ifdef USHRT_MAX -# define PERL_USHORT_MAX ((unsigned short)USHRT_MAX) -# else -# define PERL_USHORT_MAX ((unsigned short)~(unsigned)0) -# endif -# endif -# endif -#endif - -#ifndef PERL_SHORT_MAX -# ifdef SHORT_MAX -# define PERL_SHORT_MAX ((short)SHORT_MAX) -# else -# ifdef MAXSHORT /* Often used in */ -# define PERL_SHORT_MAX ((short)MAXSHORT) -# else -# ifdef SHRT_MAX -# define PERL_SHORT_MAX ((short)SHRT_MAX) -# else -# define PERL_SHORT_MAX ((short) (PERL_USHORT_MAX >> 1)) -# endif -# endif -# endif -#endif - -#ifndef PERL_SHORT_MIN -# ifdef SHORT_MIN -# define PERL_SHORT_MIN ((short)SHORT_MIN) -# else -# ifdef MINSHORT -# define PERL_SHORT_MIN ((short)MINSHORT) -# else -# ifdef SHRT_MIN -# define PERL_SHORT_MIN ((short)SHRT_MIN) -# else -# define PERL_SHORT_MIN (-PERL_SHORT_MAX - ((3 & -1) == 3)) -# endif -# endif -# endif -#endif - -#ifndef PERL_UINT_MAX -# ifdef UINT_MAX -# define PERL_UINT_MAX ((unsigned int)UINT_MAX) -# else -# ifdef MAXUINT -# define PERL_UINT_MAX ((unsigned int)MAXUINT) -# else -# define PERL_UINT_MAX (~(unsigned int)0) -# endif -# endif -#endif - -#ifndef PERL_UINT_MIN -# define PERL_UINT_MIN ((unsigned int)0) -#endif - -#ifndef PERL_INT_MAX -# ifdef INT_MAX -# define PERL_INT_MAX ((int)INT_MAX) -# else -# ifdef MAXINT /* Often used in */ -# define PERL_INT_MAX ((int)MAXINT) -# else -# define PERL_INT_MAX ((int)(PERL_UINT_MAX >> 1)) -# endif -# endif -#endif - -#ifndef PERL_INT_MIN -# ifdef INT_MIN -# define PERL_INT_MIN ((int)INT_MIN) -# else -# ifdef MININT -# define PERL_INT_MIN ((int)MININT) -# else -# define PERL_INT_MIN (-PERL_INT_MAX - ((3 & -1) == 3)) -# endif -# endif -#endif - -#ifndef PERL_ULONG_MAX -# ifdef ULONG_MAX -# define PERL_ULONG_MAX ((unsigned long)ULONG_MAX) -# else -# ifdef MAXULONG -# define PERL_ULONG_MAX ((unsigned long)MAXULONG) -# else -# define PERL_ULONG_MAX (~(unsigned long)0) -# endif -# endif -#endif - -#ifndef PERL_ULONG_MIN -# define PERL_ULONG_MIN ((unsigned long)0L) -#endif - -#ifndef PERL_LONG_MAX -# ifdef LONG_MAX -# define PERL_LONG_MAX ((long)LONG_MAX) -# else -# ifdef MAXLONG -# define PERL_LONG_MAX ((long)MAXLONG) -# else -# define PERL_LONG_MAX ((long) (PERL_ULONG_MAX >> 1)) -# endif -# endif -#endif - -#ifndef PERL_LONG_MIN -# ifdef LONG_MIN -# define PERL_LONG_MIN ((long)LONG_MIN) -# else -# ifdef MINLONG -# define PERL_LONG_MIN ((long)MINLONG) -# else -# define PERL_LONG_MIN (-PERL_LONG_MAX - ((3 & -1) == 3)) -# endif -# endif -#endif - -#if defined(HAS_QUAD) && (defined(convex) || defined(uts)) -# ifndef PERL_UQUAD_MAX -# ifdef ULONGLONG_MAX -# define PERL_UQUAD_MAX ((unsigned long long)ULONGLONG_MAX) -# else -# ifdef MAXULONGLONG -# define PERL_UQUAD_MAX ((unsigned long long)MAXULONGLONG) -# else -# define PERL_UQUAD_MAX (~(unsigned long long)0) -# endif -# endif -# endif - -# ifndef PERL_UQUAD_MIN -# define PERL_UQUAD_MIN ((unsigned long long)0L) -# endif - -# ifndef PERL_QUAD_MAX -# ifdef LONGLONG_MAX -# define PERL_QUAD_MAX ((long long)LONGLONG_MAX) -# else -# ifdef MAXLONGLONG -# define PERL_QUAD_MAX ((long long)MAXLONGLONG) -# else -# define PERL_QUAD_MAX ((long long) (PERL_UQUAD_MAX >> 1)) -# endif -# endif -# endif - -# ifndef PERL_QUAD_MIN -# ifdef LONGLONG_MIN -# define PERL_QUAD_MIN ((long long)LONGLONG_MIN) -# else -# ifdef MINLONGLONG -# define PERL_QUAD_MIN ((long long)MINLONGLONG) -# else -# define PERL_QUAD_MIN (-PERL_QUAD_MAX - ((3 & -1) == 3)) -# endif -# endif -# endif -#endif - -/* This is based on code from 5.003 perl.h */ -#ifdef HAS_QUAD -# ifdef cray -#ifndef IVTYPE -# define IVTYPE int -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_INT_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_INT_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_UINT_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_UINT_MAX -#endif - -# ifdef INTSIZE -#ifndef IVSIZE -# define IVSIZE INTSIZE -#endif - -# endif -# else -# if defined(convex) || defined(uts) -#ifndef IVTYPE -# define IVTYPE long long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_QUAD_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_QUAD_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_UQUAD_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_UQUAD_MAX -#endif - -# ifdef LONGLONGSIZE -#ifndef IVSIZE -# define IVSIZE LONGLONGSIZE -#endif - -# endif -# else -#ifndef IVTYPE -# define IVTYPE long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_LONG_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_LONG_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_ULONG_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_ULONG_MAX -#endif - -# ifdef LONGSIZE -#ifndef IVSIZE -# define IVSIZE LONGSIZE -#endif - -# endif -# endif -# endif -#ifndef IVSIZE -# define IVSIZE 8 -#endif - -#ifndef PERL_QUAD_MIN -# define PERL_QUAD_MIN IV_MIN -#endif - -#ifndef PERL_QUAD_MAX -# define PERL_QUAD_MAX IV_MAX -#endif - -#ifndef PERL_UQUAD_MIN -# define PERL_UQUAD_MIN UV_MIN -#endif - -#ifndef PERL_UQUAD_MAX -# define PERL_UQUAD_MAX UV_MAX -#endif - -#else -#ifndef IVTYPE -# define IVTYPE long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_LONG_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_LONG_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_ULONG_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_ULONG_MAX -#endif - -#endif - -#ifndef IVSIZE -# ifdef LONGSIZE -# define IVSIZE LONGSIZE -# else -# define IVSIZE 4 /* A bold guess, but the best we can make. */ -# endif -#endif -#ifndef UVTYPE -# define UVTYPE unsigned IVTYPE -#endif - -#ifndef UVSIZE -# define UVSIZE IVSIZE -#endif - -#ifndef sv_setuv -# define sv_setuv(sv, uv) \ - STMT_START { \ - UV TeMpUv = uv; \ - if (TeMpUv <= IV_MAX) \ - sv_setiv(sv, TeMpUv); \ - else \ - sv_setnv(sv, (double)TeMpUv); \ - } STMT_END -#endif - -#ifndef newSVuv -# define newSVuv(uv) ((uv) <= IV_MAX ? newSViv((IV)uv) : newSVnv((NV)uv)) -#endif -#ifndef sv_2uv -# define sv_2uv(sv) ((PL_Sv = (sv)), (UV) (SvNOK(PL_Sv) ? SvNV(PL_Sv) : sv_2nv(PL_Sv))) -#endif - -#ifndef SvUVX -# define SvUVX(sv) ((UV)SvIVX(sv)) -#endif - -#ifndef SvUVXx -# define SvUVXx(sv) SvUVX(sv) -#endif - -#ifndef SvUV -# define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv)) -#endif - -#ifndef SvUVx -# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv)) -#endif - -/* Hint: sv_uv - * Always use the SvUVx() macro instead of sv_uv(). - */ -#ifndef sv_uv -# define sv_uv(sv) SvUVx(sv) -#endif -#ifndef XST_mUV -# define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) ) -#endif - -#ifndef XSRETURN_UV -# define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END -#endif -#ifndef PUSHu -# define PUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); PUSHTARG; } STMT_END -#endif - -#ifndef XPUSHu -# define XPUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); XPUSHTARG; } STMT_END -#endif - -#if (PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION <= 5)) -/* Replace: 1 */ -# define PL_DBsingle DBsingle -# define PL_DBsub DBsub -# define PL_Sv Sv -# define PL_compiling compiling -# define PL_copline copline -# define PL_curcop curcop -# define PL_curstash curstash -# define PL_debstash debstash -# define PL_defgv defgv -# define PL_diehook diehook -# define PL_dirty dirty -# define PL_dowarn dowarn -# define PL_errgv errgv -# define PL_hexdigit hexdigit -# define PL_hints hints -# define PL_na na -# define PL_no_modify no_modify -# define PL_perl_destruct_level perl_destruct_level -# define PL_perldb perldb -# define PL_ppaddr ppaddr -# define PL_rsfp_filters rsfp_filters -# define PL_rsfp rsfp -# define PL_stack_base stack_base -# define PL_stack_sp stack_sp -# define PL_stdingv stdingv -# define PL_sv_arenaroot sv_arenaroot -# define PL_sv_no sv_no -# define PL_sv_undef sv_undef -# define PL_sv_yes sv_yes -# define PL_tainted tainted -# define PL_tainting tainting -/* Replace: 0 */ -#endif - -#ifndef PERL_UNUSED_DECL -# ifdef HASATTRIBUTE -# if (defined(__GNUC__) && defined(__cplusplus)) || defined(__INTEL_COMPILER) -# define PERL_UNUSED_DECL -# else -# define PERL_UNUSED_DECL __attribute__((unused)) -# endif -# else -# define PERL_UNUSED_DECL -# endif -#endif -#ifndef NOOP -# define NOOP (void)0 -#endif - -#ifndef dNOOP -# define dNOOP extern int Perl___notused PERL_UNUSED_DECL -#endif - -#ifndef NVTYPE -# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) -# define NVTYPE long double -# else -# define NVTYPE double -# endif -typedef NVTYPE NV; -#endif - -#ifndef INT2PTR - -# if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) -# define PTRV UV -# define INT2PTR(any,d) (any)(d) -# else -# if PTRSIZE == LONGSIZE -# define PTRV unsigned long -# else -# define PTRV unsigned -# endif -# define INT2PTR(any,d) (any)(PTRV)(d) -# endif - -# define NUM2PTR(any,d) (any)(PTRV)(d) -# define PTR2IV(p) INT2PTR(IV,p) -# define PTR2UV(p) INT2PTR(UV,p) -# define PTR2NV(p) NUM2PTR(NV,p) - -# if PTRSIZE == LONGSIZE -# define PTR2ul(p) (unsigned long)(p) -# else -# define PTR2ul(p) INT2PTR(unsigned long,p) -# endif - -#endif /* !INT2PTR */ - -#undef START_EXTERN_C -#undef END_EXTERN_C -#undef EXTERN_C -#ifdef __cplusplus -# define START_EXTERN_C extern "C" { -# define END_EXTERN_C } -# define EXTERN_C extern "C" -#else -# define START_EXTERN_C -# define END_EXTERN_C -# define EXTERN_C extern -#endif - -#ifndef PERL_GCC_BRACE_GROUPS_FORBIDDEN -# if defined(__STRICT_ANSI__) && defined(PERL_GCC_PEDANTIC) -# define PERL_GCC_BRACE_GROUPS_FORBIDDEN -# endif -#endif - -#undef STMT_START -#undef STMT_END -#if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) && !defined(__cplusplus) -# define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */ -# define STMT_END ) -#else -# if defined(VOIDFLAGS) && (VOIDFLAGS) && (defined(sun) || defined(__sun__)) && !defined(__GNUC__) -# define STMT_START if (1) -# define STMT_END else (void)0 -# else -# define STMT_START do -# define STMT_END while (0) -# endif -#endif -#ifndef boolSV -# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no) -#endif - -/* DEFSV appears first in 5.004_56 */ -#ifndef DEFSV -# define DEFSV GvSV(PL_defgv) -#endif - -#ifndef SAVE_DEFSV -# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv)) -#endif - -/* Older perls (<=5.003) lack AvFILLp */ -#ifndef AvFILLp -# define AvFILLp AvFILL -#endif -#ifndef ERRSV -# define ERRSV get_sv("@",FALSE) -#endif -#ifndef newSVpvn -# define newSVpvn(data,len) ((data) \ - ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \ - : newSV(0)) -#endif - -/* Hint: gv_stashpvn - * This function's backport doesn't support the length parameter, but - * rather ignores it. Portability can only be ensured if the length - * parameter is used for speed reasons, but the length can always be - * correctly computed from the string argument. - */ -#ifndef gv_stashpvn -# define gv_stashpvn(str,len,create) gv_stashpv(str,create) -#endif - -/* Replace: 1 */ -#ifndef get_cv -# define get_cv perl_get_cv -#endif - -#ifndef get_sv -# define get_sv perl_get_sv -#endif - -#ifndef get_av -# define get_av perl_get_av -#endif - -#ifndef get_hv -# define get_hv perl_get_hv -#endif - -/* Replace: 0 */ - -#ifdef HAS_MEMCMP -#ifndef memNE -# define memNE(s1,s2,l) (memcmp(s1,s2,l)) -#endif - -#ifndef memEQ -# define memEQ(s1,s2,l) (!memcmp(s1,s2,l)) -#endif - -#else -#ifndef memNE -# define memNE(s1,s2,l) (bcmp(s1,s2,l)) -#endif - -#ifndef memEQ -# define memEQ(s1,s2,l) (!bcmp(s1,s2,l)) -#endif - -#endif -#ifndef MoveD -# define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t)) -#endif - -#ifndef CopyD -# define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) -#endif - -#ifdef HAS_MEMSET -#ifndef ZeroD -# define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t)) -#endif - -#else -#ifndef ZeroD -# define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)),d) -#endif - -#endif -#ifndef Poison -# define Poison(d,n,t) (void)memset((char*)(d), 0xAB, (n) * sizeof(t)) -#endif -#ifndef dUNDERBAR -# define dUNDERBAR dNOOP -#endif - -#ifndef UNDERBAR -# define UNDERBAR DEFSV -#endif -#ifndef dAX -# define dAX I32 ax = MARK - PL_stack_base + 1 -#endif - -#ifndef dITEMS -# define dITEMS I32 items = SP - MARK -#endif -#ifndef dXSTARG -# define dXSTARG SV * targ = sv_newmortal() -#endif -#ifndef dTHR -# define dTHR dNOOP -#endif -#ifndef dTHX -# define dTHX dNOOP -#endif - -#ifndef dTHXa -# define dTHXa(x) dNOOP -#endif -#ifndef pTHX -# define pTHX void -#endif - -#ifndef pTHX_ -# define pTHX_ -#endif - -#ifndef aTHX -# define aTHX -#endif - -#ifndef aTHX_ -# define aTHX_ -#endif -#ifndef dTHXoa -# define dTHXoa(x) dTHXa(x) -#endif -#ifndef PUSHmortal -# define PUSHmortal PUSHs(sv_newmortal()) -#endif - -#ifndef mPUSHp -# define mPUSHp(p,l) sv_setpvn_mg(PUSHmortal, (p), (l)) -#endif - -#ifndef mPUSHn -# define mPUSHn(n) sv_setnv_mg(PUSHmortal, (NV)(n)) -#endif - -#ifndef mPUSHi -# define mPUSHi(i) sv_setiv_mg(PUSHmortal, (IV)(i)) -#endif - -#ifndef mPUSHu -# define mPUSHu(u) sv_setuv_mg(PUSHmortal, (UV)(u)) -#endif -#ifndef XPUSHmortal -# define XPUSHmortal XPUSHs(sv_newmortal()) -#endif - -#ifndef mXPUSHp -# define mXPUSHp(p,l) STMT_START { EXTEND(sp,1); sv_setpvn_mg(PUSHmortal, (p), (l)); } STMT_END -#endif - -#ifndef mXPUSHn -# define mXPUSHn(n) STMT_START { EXTEND(sp,1); sv_setnv_mg(PUSHmortal, (NV)(n)); } STMT_END -#endif - -#ifndef mXPUSHi -# define mXPUSHi(i) STMT_START { EXTEND(sp,1); sv_setiv_mg(PUSHmortal, (IV)(i)); } STMT_END -#endif - -#ifndef mXPUSHu -# define mXPUSHu(u) STMT_START { EXTEND(sp,1); sv_setuv_mg(PUSHmortal, (UV)(u)); } STMT_END -#endif - -/* Replace: 1 */ -#ifndef call_sv -# define call_sv perl_call_sv -#endif - -#ifndef call_pv -# define call_pv perl_call_pv -#endif - -#ifndef call_argv -# define call_argv perl_call_argv -#endif - -#ifndef call_method -# define call_method perl_call_method -#endif -#ifndef eval_sv -# define eval_sv perl_eval_sv -#endif - -/* Replace: 0 */ - -/* Replace perl_eval_pv with eval_pv */ -/* eval_pv depends on eval_sv */ - -#ifndef eval_pv -#if defined(NEED_eval_pv) -static SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); -static -#else -extern SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); -#endif - -#ifdef eval_pv -# undef eval_pv -#endif -#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b) -#define Perl_eval_pv DPPP_(my_eval_pv) - -#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL) - -SV* -DPPP_(my_eval_pv)(char *p, I32 croak_on_error) -{ - dSP; - SV* sv = newSVpv(p, 0); - - PUSHMARK(sp); - eval_sv(sv, G_SCALAR); - SvREFCNT_dec(sv); - - SPAGAIN; - sv = POPs; - PUTBACK; - - if (croak_on_error && SvTRUE(GvSV(errgv))) - croak(SvPVx(GvSV(errgv), na)); - - return sv; -} - -#endif -#endif -#ifndef newRV_inc -# define newRV_inc(sv) newRV(sv) /* Replace */ -#endif - -#ifndef newRV_noinc -#if defined(NEED_newRV_noinc) -static SV * DPPP_(my_newRV_noinc)(SV *sv); -static -#else -extern SV * DPPP_(my_newRV_noinc)(SV *sv); -#endif - -#ifdef newRV_noinc -# undef newRV_noinc -#endif -#define newRV_noinc(a) DPPP_(my_newRV_noinc)(aTHX_ a) -#define Perl_newRV_noinc DPPP_(my_newRV_noinc) - -#if defined(NEED_newRV_noinc) || defined(NEED_newRV_noinc_GLOBAL) -SV * -DPPP_(my_newRV_noinc)(SV *sv) -{ - SV *rv = (SV *)newRV(sv); - SvREFCNT_dec(sv); - return rv; -} -#endif -#endif - -/* Hint: newCONSTSUB - * Returns a CV* as of perl-5.7.1. This return value is not supported - * by Devel::PPPort. - */ - -/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */ -#if ((PERL_VERSION < 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION < 63))) && ((PERL_VERSION != 4) || (PERL_SUBVERSION != 5)) -#if defined(NEED_newCONSTSUB) -static void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv); -static -#else -extern void DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv); -#endif - -#ifdef newCONSTSUB -# undef newCONSTSUB -#endif -#define newCONSTSUB(a,b,c) DPPP_(my_newCONSTSUB)(aTHX_ a,b,c) -#define Perl_newCONSTSUB DPPP_(my_newCONSTSUB) - -#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL) - -void -DPPP_(my_newCONSTSUB)(HV *stash, char *name, SV *sv) -{ - U32 oldhints = PL_hints; - HV *old_cop_stash = PL_curcop->cop_stash; - HV *old_curstash = PL_curstash; - line_t oldline = PL_curcop->cop_line; - PL_curcop->cop_line = PL_copline; - - PL_hints &= ~HINT_BLOCK_SCOPE; - if (stash) - PL_curstash = PL_curcop->cop_stash = stash; - - newSUB( - -#if ((PERL_VERSION < 3) || ((PERL_VERSION == 3) && (PERL_SUBVERSION < 22))) - start_subparse(), -#elif ((PERL_VERSION == 3) && (PERL_SUBVERSION == 22)) - start_subparse(0), -#else /* 5.003_23 onwards */ - start_subparse(FALSE, 0), -#endif - - newSVOP(OP_CONST, 0, newSVpv(name,0)), - newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */ - newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv)) - ); - - PL_hints = oldhints; - PL_curcop->cop_stash = old_cop_stash; - PL_curstash = old_curstash; - PL_curcop->cop_line = oldline; -} -#endif -#endif - -/* - * Boilerplate macros for initializing and accessing interpreter-local - * data from C. All statics in extensions should be reworked to use - * this, if you want to make the extension thread-safe. See ext/re/re.xs - * for an example of the use of these macros. - * - * Code that uses these macros is responsible for the following: - * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts" - * 2. Declare a typedef named my_cxt_t that is a structure that contains - * all the data that needs to be interpreter-local. - * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t. - * 4. Use the MY_CXT_INIT macro such that it is called exactly once - * (typically put in the BOOT: section). - * 5. Use the members of the my_cxt_t structure everywhere as - * MY_CXT.member. - * 6. Use the dMY_CXT macro (a declaration) in all the functions that - * access MY_CXT. - */ - -#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \ - defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT) - -#ifndef START_MY_CXT - -/* This must appear in all extensions that define a my_cxt_t structure, - * right after the definition (i.e. at file scope). The non-threads - * case below uses it to declare the data as static. */ -#define START_MY_CXT - -#if (PERL_VERSION < 4 || (PERL_VERSION == 4 && PERL_SUBVERSION < 68 )) -/* Fetches the SV that keeps the per-interpreter data. */ -#define dMY_CXT_SV \ - SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE) -#else /* >= perl5.004_68 */ -#define dMY_CXT_SV \ - SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \ - sizeof(MY_CXT_KEY)-1, TRUE) -#endif /* < perl5.004_68 */ - -/* This declaration should be used within all functions that use the - * interpreter-local data. */ -#define dMY_CXT \ - dMY_CXT_SV; \ - my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv)) - -/* Creates and zeroes the per-interpreter data. - * (We allocate my_cxtp in a Perl SV so that it will be released when - * the interpreter goes away.) */ -#define MY_CXT_INIT \ - dMY_CXT_SV; \ - /* newSV() allocates one more than needed */ \ - my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ - Zero(my_cxtp, 1, my_cxt_t); \ - sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) - -/* This macro must be used to access members of the my_cxt_t structure. - * e.g. MYCXT.some_data */ -#define MY_CXT (*my_cxtp) - -/* Judicious use of these macros can reduce the number of times dMY_CXT - * is used. Use is similar to pTHX, aTHX etc. */ -#define pMY_CXT my_cxt_t *my_cxtp -#define pMY_CXT_ pMY_CXT, -#define _pMY_CXT ,pMY_CXT -#define aMY_CXT my_cxtp -#define aMY_CXT_ aMY_CXT, -#define _aMY_CXT ,aMY_CXT - -#endif /* START_MY_CXT */ - -#ifndef MY_CXT_CLONE -/* Clones the per-interpreter data. */ -#define MY_CXT_CLONE \ - dMY_CXT_SV; \ - my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ - Copy(INT2PTR(my_cxt_t*, SvUV(my_cxt_sv)), my_cxtp, 1, my_cxt_t);\ - sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) -#endif - -#else /* single interpreter */ - -#ifndef START_MY_CXT - -#define START_MY_CXT static my_cxt_t my_cxt; -#define dMY_CXT_SV dNOOP -#define dMY_CXT dNOOP -#define MY_CXT_INIT NOOP -#define MY_CXT my_cxt - -#define pMY_CXT void -#define pMY_CXT_ -#define _pMY_CXT -#define aMY_CXT -#define aMY_CXT_ -#define _aMY_CXT - -#endif /* START_MY_CXT */ - -#ifndef MY_CXT_CLONE -#define MY_CXT_CLONE NOOP -#endif - -#endif - -#ifndef IVdf -# if IVSIZE == LONGSIZE -# define IVdf "ld" -# define UVuf "lu" -# define UVof "lo" -# define UVxf "lx" -# define UVXf "lX" -# else -# if IVSIZE == INTSIZE -# define IVdf "d" -# define UVuf "u" -# define UVof "o" -# define UVxf "x" -# define UVXf "X" -# endif -# endif -#endif - -#ifndef NVef -# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) && \ - defined(PERL_PRIfldbl) /* Not very likely, but let's try anyway. */ -# define NVef PERL_PRIeldbl -# define NVff PERL_PRIfldbl -# define NVgf PERL_PRIgldbl -# else -# define NVef "e" -# define NVff "f" -# define NVgf "g" -# endif -#endif - -#ifndef SvPV_nolen - -#if defined(NEED_sv_2pv_nolen) -static char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv); -static -#else -extern char * DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv); -#endif - -#ifdef sv_2pv_nolen -# undef sv_2pv_nolen -#endif -#define sv_2pv_nolen(a) DPPP_(my_sv_2pv_nolen)(aTHX_ a) -#define Perl_sv_2pv_nolen DPPP_(my_sv_2pv_nolen) - -#if defined(NEED_sv_2pv_nolen) || defined(NEED_sv_2pv_nolen_GLOBAL) - -char * -DPPP_(my_sv_2pv_nolen)(pTHX_ register SV *sv) -{ - STRLEN n_a; - return sv_2pv(sv, &n_a); -} - -#endif - -/* Hint: sv_2pv_nolen - * Use the SvPV_nolen() macro instead of sv_2pv_nolen(). - */ - -/* SvPV_nolen depends on sv_2pv_nolen */ -#define SvPV_nolen(sv) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? SvPVX(sv) : sv_2pv_nolen(sv)) - -#endif - -#ifdef SvPVbyte - -/* Hint: SvPVbyte - * Does not work in perl-5.6.1, ppport.h implements a version - * borrowed from perl-5.7.3. - */ - -#if ((PERL_VERSION < 7) || ((PERL_VERSION == 7) && (PERL_SUBVERSION < 0))) - -#if defined(NEED_sv_2pvbyte) -static char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp); -static -#else -extern char * DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp); -#endif - -#ifdef sv_2pvbyte -# undef sv_2pvbyte -#endif -#define sv_2pvbyte(a,b) DPPP_(my_sv_2pvbyte)(aTHX_ a,b) -#define Perl_sv_2pvbyte DPPP_(my_sv_2pvbyte) - -#if defined(NEED_sv_2pvbyte) || defined(NEED_sv_2pvbyte_GLOBAL) - -char * -DPPP_(my_sv_2pvbyte)(pTHX_ register SV *sv, STRLEN *lp) -{ - sv_utf8_downgrade(sv,0); - return SvPV(sv,*lp); -} - -#endif - -/* Hint: sv_2pvbyte - * Use the SvPVbyte() macro instead of sv_2pvbyte(). - */ - -#undef SvPVbyte - -/* SvPVbyte depends on sv_2pvbyte */ -#define SvPVbyte(sv, lp) \ - ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \ - ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp)) - -#endif - -#else - -# define SvPVbyte SvPV -# define sv_2pvbyte sv_2pv - -#endif - -/* sv_2pvbyte_nolen depends on sv_2pv_nolen */ -#ifndef sv_2pvbyte_nolen -# define sv_2pvbyte_nolen sv_2pv_nolen -#endif - -/* Hint: sv_pvn - * Always use the SvPV() macro instead of sv_pvn(). - */ -#ifndef sv_pvn -# define sv_pvn(sv, len) SvPV(sv, len) -#endif - -/* Hint: sv_pvn_force - * Always use the SvPV_force() macro instead of sv_pvn_force(). - */ -#ifndef sv_pvn_force -# define sv_pvn_force(sv, len) SvPV_force(sv, len) -#endif - -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(vnewSVpvf) -#if defined(NEED_vnewSVpvf) -static SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args); -static -#else -extern SV * DPPP_(my_vnewSVpvf)(pTHX_ const char * pat, va_list * args); -#endif - -#ifdef vnewSVpvf -# undef vnewSVpvf -#endif -#define vnewSVpvf(a,b) DPPP_(my_vnewSVpvf)(aTHX_ a,b) -#define Perl_vnewSVpvf DPPP_(my_vnewSVpvf) - -#if defined(NEED_vnewSVpvf) || defined(NEED_vnewSVpvf_GLOBAL) - -SV * -DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args) -{ - register SV *sv = newSV(0); - sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); - return sv; -} - -#endif -#endif - -/* sv_vcatpvf depends on sv_vcatpvfn */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf) -# define sv_vcatpvf(sv, pat, args) sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) -#endif - -/* sv_vsetpvf depends on sv_vsetpvfn */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf) -# define sv_vsetpvf(sv, pat, args) sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) -#endif - -/* sv_catpvf_mg depends on sv_vcatpvfn, sv_catpvf_mg_nocontext */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg) -#if defined(NEED_sv_catpvf_mg) -static void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...); -static -#else -extern void DPPP_(my_sv_catpvf_mg)(pTHX_ SV * sv, const char * pat, ...); -#endif - -#define Perl_sv_catpvf_mg DPPP_(my_sv_catpvf_mg) - -#if defined(NEED_sv_catpvf_mg) || defined(NEED_sv_catpvf_mg_GLOBAL) - -void -DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...) -{ - va_list args; - va_start(args, pat); - sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif - -/* sv_catpvf_mg_nocontext depends on sv_vcatpvfn */ -#ifdef PERL_IMPLICIT_CONTEXT -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_catpvf_mg_nocontext) -#if defined(NEED_sv_catpvf_mg_nocontext) -static void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...); -static -#else -extern void DPPP_(my_sv_catpvf_mg_nocontext)(SV * sv, const char * pat, ...); -#endif - -#define sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) -#define Perl_sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) - -#if defined(NEED_sv_catpvf_mg_nocontext) || defined(NEED_sv_catpvf_mg_nocontext_GLOBAL) - -void -DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...) -{ - dTHX; - va_list args; - va_start(args, pat); - sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif -#endif - -#ifndef sv_catpvf_mg -# ifdef PERL_IMPLICIT_CONTEXT -# define sv_catpvf_mg Perl_sv_catpvf_mg_nocontext -# else -# define sv_catpvf_mg Perl_sv_catpvf_mg -# endif -#endif - -/* sv_vcatpvf_mg depends on sv_vcatpvfn */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vcatpvf_mg) -# define sv_vcatpvf_mg(sv, pat, args) \ - STMT_START { \ - sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ - SvSETMAGIC(sv); \ - } STMT_END -#endif - -/* sv_setpvf_mg depends on sv_vsetpvfn, sv_setpvf_mg_nocontext */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg) -#if defined(NEED_sv_setpvf_mg) -static void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...); -static -#else -extern void DPPP_(my_sv_setpvf_mg)(pTHX_ SV * sv, const char * pat, ...); -#endif - -#define Perl_sv_setpvf_mg DPPP_(my_sv_setpvf_mg) - -#if defined(NEED_sv_setpvf_mg) || defined(NEED_sv_setpvf_mg_GLOBAL) - -void -DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...) -{ - va_list args; - va_start(args, pat); - sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif - -/* sv_setpvf_mg_nocontext depends on sv_vsetpvfn */ -#ifdef PERL_IMPLICIT_CONTEXT -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_setpvf_mg_nocontext) -#if defined(NEED_sv_setpvf_mg_nocontext) -static void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...); -static -#else -extern void DPPP_(my_sv_setpvf_mg_nocontext)(SV * sv, const char * pat, ...); -#endif - -#define sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) -#define Perl_sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) - -#if defined(NEED_sv_setpvf_mg_nocontext) || defined(NEED_sv_setpvf_mg_nocontext_GLOBAL) - -void -DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...) -{ - dTHX; - va_list args; - va_start(args, pat); - sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif -#endif - -#ifndef sv_setpvf_mg -# ifdef PERL_IMPLICIT_CONTEXT -# define sv_setpvf_mg Perl_sv_setpvf_mg_nocontext -# else -# define sv_setpvf_mg Perl_sv_setpvf_mg -# endif -#endif - -/* sv_vsetpvf_mg depends on sv_vsetpvfn */ -#if ((PERL_VERSION > 4) || ((PERL_VERSION == 4) && (PERL_SUBVERSION >= 0))) && !defined(sv_vsetpvf_mg) -# define sv_vsetpvf_mg(sv, pat, args) \ - STMT_START { \ - sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ - SvSETMAGIC(sv); \ - } STMT_END -#endif -#ifndef SvGETMAGIC -# define SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_END -#endif -#ifndef PERL_MAGIC_sv -# define PERL_MAGIC_sv '\0' -#endif - -#ifndef PERL_MAGIC_overload -# define PERL_MAGIC_overload 'A' -#endif - -#ifndef PERL_MAGIC_overload_elem -# define PERL_MAGIC_overload_elem 'a' -#endif - -#ifndef PERL_MAGIC_overload_table -# define PERL_MAGIC_overload_table 'c' -#endif - -#ifndef PERL_MAGIC_bm -# define PERL_MAGIC_bm 'B' -#endif - -#ifndef PERL_MAGIC_regdata -# define PERL_MAGIC_regdata 'D' -#endif - -#ifndef PERL_MAGIC_regdatum -# define PERL_MAGIC_regdatum 'd' -#endif - -#ifndef PERL_MAGIC_env -# define PERL_MAGIC_env 'E' -#endif - -#ifndef PERL_MAGIC_envelem -# define PERL_MAGIC_envelem 'e' -#endif - -#ifndef PERL_MAGIC_fm -# define PERL_MAGIC_fm 'f' -#endif - -#ifndef PERL_MAGIC_regex_global -# define PERL_MAGIC_regex_global 'g' -#endif - -#ifndef PERL_MAGIC_isa -# define PERL_MAGIC_isa 'I' -#endif - -#ifndef PERL_MAGIC_isaelem -# define PERL_MAGIC_isaelem 'i' -#endif - -#ifndef PERL_MAGIC_nkeys -# define PERL_MAGIC_nkeys 'k' -#endif - -#ifndef PERL_MAGIC_dbfile -# define PERL_MAGIC_dbfile 'L' -#endif - -#ifndef PERL_MAGIC_dbline -# define PERL_MAGIC_dbline 'l' -#endif - -#ifndef PERL_MAGIC_mutex -# define PERL_MAGIC_mutex 'm' -#endif - -#ifndef PERL_MAGIC_shared -# define PERL_MAGIC_shared 'N' -#endif - -#ifndef PERL_MAGIC_shared_scalar -# define PERL_MAGIC_shared_scalar 'n' -#endif - -#ifndef PERL_MAGIC_collxfrm -# define PERL_MAGIC_collxfrm 'o' -#endif - -#ifndef PERL_MAGIC_tied -# define PERL_MAGIC_tied 'P' -#endif - -#ifndef PERL_MAGIC_tiedelem -# define PERL_MAGIC_tiedelem 'p' -#endif - -#ifndef PERL_MAGIC_tiedscalar -# define PERL_MAGIC_tiedscalar 'q' -#endif - -#ifndef PERL_MAGIC_qr -# define PERL_MAGIC_qr 'r' -#endif - -#ifndef PERL_MAGIC_sig -# define PERL_MAGIC_sig 'S' -#endif - -#ifndef PERL_MAGIC_sigelem -# define PERL_MAGIC_sigelem 's' -#endif - -#ifndef PERL_MAGIC_taint -# define PERL_MAGIC_taint 't' -#endif - -#ifndef PERL_MAGIC_uvar -# define PERL_MAGIC_uvar 'U' -#endif - -#ifndef PERL_MAGIC_uvar_elem -# define PERL_MAGIC_uvar_elem 'u' -#endif - -#ifndef PERL_MAGIC_vstring -# define PERL_MAGIC_vstring 'V' -#endif - -#ifndef PERL_MAGIC_vec -# define PERL_MAGIC_vec 'v' -#endif - -#ifndef PERL_MAGIC_utf8 -# define PERL_MAGIC_utf8 'w' -#endif - -#ifndef PERL_MAGIC_substr -# define PERL_MAGIC_substr 'x' -#endif - -#ifndef PERL_MAGIC_defelem -# define PERL_MAGIC_defelem 'y' -#endif - -#ifndef PERL_MAGIC_glob -# define PERL_MAGIC_glob '*' -#endif - -#ifndef PERL_MAGIC_arylen -# define PERL_MAGIC_arylen '#' -#endif - -#ifndef PERL_MAGIC_pos -# define PERL_MAGIC_pos '.' -#endif - -#ifndef PERL_MAGIC_backref -# define PERL_MAGIC_backref '<' -#endif - -#ifndef PERL_MAGIC_ext -# define PERL_MAGIC_ext '~' -#endif - -/* That's the best we can do... */ -#ifndef SvPV_force_nomg -# define SvPV_force_nomg SvPV_force -#endif - -#ifndef SvPV_nomg -# define SvPV_nomg SvPV -#endif - -#ifndef sv_catpvn_nomg -# define sv_catpvn_nomg sv_catpvn -#endif - -#ifndef sv_catsv_nomg -# define sv_catsv_nomg sv_catsv -#endif - -#ifndef sv_setsv_nomg -# define sv_setsv_nomg sv_setsv -#endif - -#ifndef sv_pvn_nomg -# define sv_pvn_nomg sv_pvn -#endif - -#ifndef SvIV_nomg -# define SvIV_nomg SvIV -#endif - -#ifndef SvUV_nomg -# define SvUV_nomg SvUV -#endif - -#ifndef sv_catpv_mg -# define sv_catpv_mg(sv, ptr) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_catpv(TeMpSv,ptr); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_catpvn_mg -# define sv_catpvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_catpvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_catsv_mg -# define sv_catsv_mg(dsv, ssv) \ - STMT_START { \ - SV *TeMpSv = dsv; \ - sv_catsv(TeMpSv,ssv); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setiv_mg -# define sv_setiv_mg(sv, i) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setiv(TeMpSv,i); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setnv_mg -# define sv_setnv_mg(sv, num) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setnv(TeMpSv,num); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setpv_mg -# define sv_setpv_mg(sv, ptr) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setpv(TeMpSv,ptr); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setpvn_mg -# define sv_setpvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setpvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setsv_mg -# define sv_setsv_mg(dsv, ssv) \ - STMT_START { \ - SV *TeMpSv = dsv; \ - sv_setsv(TeMpSv,ssv); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setuv_mg -# define sv_setuv_mg(sv, i) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setuv(TeMpSv,i); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_usepvn_mg -# define sv_usepvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_usepvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifdef USE_ITHREADS -#ifndef CopFILE -# define CopFILE(c) ((c)->cop_file) -#endif - -#ifndef CopFILEGV -# define CopFILEGV(c) (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv) -#endif - -#ifndef CopFILE_set -# define CopFILE_set(c,pv) ((c)->cop_file = savepv(pv)) -#endif - -#ifndef CopFILESV -# define CopFILESV(c) (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv) -#endif - -#ifndef CopFILEAV -# define CopFILEAV(c) (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav) -#endif - -#ifndef CopSTASHPV -# define CopSTASHPV(c) ((c)->cop_stashpv) -#endif - -#ifndef CopSTASHPV_set -# define CopSTASHPV_set(c,pv) ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch)) -#endif - -#ifndef CopSTASH -# define CopSTASH(c) (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv) -#endif - -#ifndef CopSTASH_set -# define CopSTASH_set(c,hv) CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch) -#endif - -#ifndef CopSTASH_eq -# define CopSTASH_eq(c,hv) ((hv) && (CopSTASHPV(c) == HvNAME(hv) \ - || (CopSTASHPV(c) && HvNAME(hv) \ - && strEQ(CopSTASHPV(c), HvNAME(hv))))) -#endif - -#else -#ifndef CopFILEGV -# define CopFILEGV(c) ((c)->cop_filegv) -#endif - -#ifndef CopFILEGV_set -# define CopFILEGV_set(c,gv) ((c)->cop_filegv = (GV*)SvREFCNT_inc(gv)) -#endif - -#ifndef CopFILE_set -# define CopFILE_set(c,pv) CopFILEGV_set((c), gv_fetchfile(pv)) -#endif - -#ifndef CopFILESV -# define CopFILESV(c) (CopFILEGV(c) ? GvSV(CopFILEGV(c)) : Nullsv) -#endif - -#ifndef CopFILEAV -# define CopFILEAV(c) (CopFILEGV(c) ? GvAV(CopFILEGV(c)) : Nullav) -#endif - -#ifndef CopFILE -# define CopFILE(c) (CopFILESV(c) ? SvPVX(CopFILESV(c)) : Nullch) -#endif - -#ifndef CopSTASH -# define CopSTASH(c) ((c)->cop_stash) -#endif - -#ifndef CopSTASH_set -# define CopSTASH_set(c,hv) ((c)->cop_stash = (hv)) -#endif - -#ifndef CopSTASHPV -# define CopSTASHPV(c) (CopSTASH(c) ? HvNAME(CopSTASH(c)) : Nullch) -#endif - -#ifndef CopSTASHPV_set -# define CopSTASHPV_set(c,pv) CopSTASH_set((c), gv_stashpv(pv,GV_ADD)) -#endif - -#ifndef CopSTASH_eq -# define CopSTASH_eq(c,hv) (CopSTASH(c) == (hv)) -#endif - -#endif /* USE_ITHREADS */ -#ifndef IN_PERL_COMPILETIME -# define IN_PERL_COMPILETIME (PL_curcop == &PL_compiling) -#endif - -#ifndef IN_LOCALE_RUNTIME -# define IN_LOCALE_RUNTIME (PL_curcop->op_private & HINT_LOCALE) -#endif - -#ifndef IN_LOCALE_COMPILETIME -# define IN_LOCALE_COMPILETIME (PL_hints & HINT_LOCALE) -#endif - -#ifndef IN_LOCALE -# define IN_LOCALE (IN_PERL_COMPILETIME ? IN_LOCALE_COMPILETIME : IN_LOCALE_RUNTIME) -#endif -#ifndef IS_NUMBER_IN_UV -# define IS_NUMBER_IN_UV 0x01 -#endif - -#ifndef IS_NUMBER_GREATER_THAN_UV_MAX -# define IS_NUMBER_GREATER_THAN_UV_MAX 0x02 -#endif - -#ifndef IS_NUMBER_NOT_INT -# define IS_NUMBER_NOT_INT 0x04 -#endif - -#ifndef IS_NUMBER_NEG -# define IS_NUMBER_NEG 0x08 -#endif - -#ifndef IS_NUMBER_INFINITY -# define IS_NUMBER_INFINITY 0x10 -#endif - -#ifndef IS_NUMBER_NAN -# define IS_NUMBER_NAN 0x20 -#endif - -/* GROK_NUMERIC_RADIX depends on grok_numeric_radix */ -#ifndef GROK_NUMERIC_RADIX -# define GROK_NUMERIC_RADIX(sp, send) grok_numeric_radix(sp, send) -#endif -#ifndef PERL_SCAN_GREATER_THAN_UV_MAX -# define PERL_SCAN_GREATER_THAN_UV_MAX 0x02 -#endif - -#ifndef PERL_SCAN_SILENT_ILLDIGIT -# define PERL_SCAN_SILENT_ILLDIGIT 0x04 -#endif - -#ifndef PERL_SCAN_ALLOW_UNDERSCORES -# define PERL_SCAN_ALLOW_UNDERSCORES 0x01 -#endif - -#ifndef PERL_SCAN_DISALLOW_PREFIX -# define PERL_SCAN_DISALLOW_PREFIX 0x02 -#endif - -#ifndef grok_numeric_radix -#if defined(NEED_grok_numeric_radix) -static bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); -static -#else -extern bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); -#endif - -#ifdef grok_numeric_radix -# undef grok_numeric_radix -#endif -#define grok_numeric_radix(a,b) DPPP_(my_grok_numeric_radix)(aTHX_ a,b) -#define Perl_grok_numeric_radix DPPP_(my_grok_numeric_radix) - -#if defined(NEED_grok_numeric_radix) || defined(NEED_grok_numeric_radix_GLOBAL) -bool -DPPP_(my_grok_numeric_radix)(pTHX_ const char **sp, const char *send) -{ -#ifdef USE_LOCALE_NUMERIC -#ifdef PL_numeric_radix_sv - if (PL_numeric_radix_sv && IN_LOCALE) { - STRLEN len; - char* radix = SvPV(PL_numeric_radix_sv, len); - if (*sp + len <= send && memEQ(*sp, radix, len)) { - *sp += len; - return TRUE; - } - } -#else - /* older perls don't have PL_numeric_radix_sv so the radix - * must manually be requested from locale.h - */ -#include - dTHR; /* needed for older threaded perls */ - struct lconv *lc = localeconv(); - char *radix = lc->decimal_point; - if (radix && IN_LOCALE) { - STRLEN len = strlen(radix); - if (*sp + len <= send && memEQ(*sp, radix, len)) { - *sp += len; - return TRUE; - } - } -#endif /* PERL_VERSION */ -#endif /* USE_LOCALE_NUMERIC */ - /* always try "." if numeric radix didn't match because - * we may have data from different locales mixed */ - if (*sp < send && **sp == '.') { - ++*sp; - return TRUE; - } - return FALSE; -} -#endif -#endif - -/* grok_number depends on grok_numeric_radix */ - -#ifndef grok_number -#if defined(NEED_grok_number) -static int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); -static -#else -extern int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); -#endif - -#ifdef grok_number -# undef grok_number -#endif -#define grok_number(a,b,c) DPPP_(my_grok_number)(aTHX_ a,b,c) -#define Perl_grok_number DPPP_(my_grok_number) - -#if defined(NEED_grok_number) || defined(NEED_grok_number_GLOBAL) -int -DPPP_(my_grok_number)(pTHX_ const char *pv, STRLEN len, UV *valuep) -{ - const char *s = pv; - const char *send = pv + len; - const UV max_div_10 = UV_MAX / 10; - const char max_mod_10 = UV_MAX % 10; - int numtype = 0; - int sawinf = 0; - int sawnan = 0; - - while (s < send && isSPACE(*s)) - s++; - if (s == send) { - return 0; - } else if (*s == '-') { - s++; - numtype = IS_NUMBER_NEG; - } - else if (*s == '+') - s++; - - if (s == send) - return 0; - - /* next must be digit or the radix separator or beginning of infinity */ - if (isDIGIT(*s)) { - /* UVs are at least 32 bits, so the first 9 decimal digits cannot - overflow. */ - UV value = *s - '0'; - /* This construction seems to be more optimiser friendly. - (without it gcc does the isDIGIT test and the *s - '0' separately) - With it gcc on arm is managing 6 instructions (6 cycles) per digit. - In theory the optimiser could deduce how far to unroll the loop - before checking for overflow. */ - if (++s < send) { - int digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - /* Now got 9 digits, so need to check - each time for overflow. */ - digit = *s - '0'; - while (digit >= 0 && digit <= 9 - && (value < max_div_10 - || (value == max_div_10 - && digit <= max_mod_10))) { - value = value * 10 + digit; - if (++s < send) - digit = *s - '0'; - else - break; - } - if (digit >= 0 && digit <= 9 - && (s < send)) { - /* value overflowed. - skip the remaining digits, don't - worry about setting *valuep. */ - do { - s++; - } while (s < send && isDIGIT(*s)); - numtype |= - IS_NUMBER_GREATER_THAN_UV_MAX; - goto skip_value; - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - numtype |= IS_NUMBER_IN_UV; - if (valuep) - *valuep = value; - - skip_value: - if (GROK_NUMERIC_RADIX(&s, send)) { - numtype |= IS_NUMBER_NOT_INT; - while (s < send && isDIGIT(*s)) /* optional digits after the radix */ - s++; - } - } - else if (GROK_NUMERIC_RADIX(&s, send)) { - numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */ - /* no digits before the radix means we need digits after it */ - if (s < send && isDIGIT(*s)) { - do { - s++; - } while (s < send && isDIGIT(*s)); - if (valuep) { - /* integer approximation is valid - it's 0. */ - *valuep = 0; - } - } - else - return 0; - } else if (*s == 'I' || *s == 'i') { - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; if (s == send || (*s != 'F' && *s != 'f')) return 0; - s++; if (s < send && (*s == 'I' || *s == 'i')) { - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; if (s == send || (*s != 'I' && *s != 'i')) return 0; - s++; if (s == send || (*s != 'T' && *s != 't')) return 0; - s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0; - s++; - } - sawinf = 1; - } else if (*s == 'N' || *s == 'n') { - /* XXX TODO: There are signaling NaNs and quiet NaNs. */ - s++; if (s == send || (*s != 'A' && *s != 'a')) return 0; - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; - sawnan = 1; - } else - return 0; - - if (sawinf) { - numtype &= IS_NUMBER_NEG; /* Keep track of sign */ - numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT; - } else if (sawnan) { - numtype &= IS_NUMBER_NEG; /* Keep track of sign */ - numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT; - } else if (s < send) { - /* we can have an optional exponent part */ - if (*s == 'e' || *s == 'E') { - /* The only flag we keep is sign. Blow away any "it's UV" */ - numtype &= IS_NUMBER_NEG; - numtype |= IS_NUMBER_NOT_INT; - s++; - if (s < send && (*s == '-' || *s == '+')) - s++; - if (s < send && isDIGIT(*s)) { - do { - s++; - } while (s < send && isDIGIT(*s)); - } - else - return 0; - } - } - while (s < send && isSPACE(*s)) - s++; - if (s >= send) - return numtype; - if (len == 10 && memEQ(pv, "0 but true", 10)) { - if (valuep) - *valuep = 0; - return IS_NUMBER_IN_UV; - } - return 0; -} -#endif -#endif - -/* - * The grok_* routines have been modified to use warn() instead of - * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit, - * which is why the stack variable has been renamed to 'xdigit'. - */ - -#ifndef grok_bin -#if defined(NEED_grok_bin) -static UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -static -#else -extern UV DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -#endif - -#ifdef grok_bin -# undef grok_bin -#endif -#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d) -#define Perl_grok_bin DPPP_(my_grok_bin) - -#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL) -UV -DPPP_(my_grok_bin)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_2 = UV_MAX / 2; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - - if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { - /* strip off leading b or 0b. - for compatibility silently suffer "b" and "0b" as valid binary - numbers. */ - if (len >= 1) { - if (s[0] == 'b') { - s++; - len--; - } - else if (len >= 2 && s[0] == '0' && s[1] == 'b') { - s+=2; - len-=2; - } - } - } - - for (; len-- && *s; s++) { - char bit = *s; - if (bit == '0' || bit == '1') { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - With gcc seems to be much straighter code than old scan_bin. */ - redo: - if (!overflowed) { - if (value <= max_div_2) { - value = (value << 1) | (bit - '0'); - continue; - } - /* Bah. We're just overflowed. */ - warn("Integer overflow in binary number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 2.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount. */ - value_nv += (NV)(bit - '0'); - continue; - } - if (bit == '_' && len && allow_underscores && (bit = s[1]) - && (bit == '0' || bit == '1')) - { - --len; - ++s; - goto redo; - } - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal binary digit '%c' ignored", *s); - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Binary number > 0b11111111111111111111111111111111 non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#ifndef grok_hex -#if defined(NEED_grok_hex) -static UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -static -#else -extern UV DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -#endif - -#ifdef grok_hex -# undef grok_hex -#endif -#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d) -#define Perl_grok_hex DPPP_(my_grok_hex) - -#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL) -UV -DPPP_(my_grok_hex)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_16 = UV_MAX / 16; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - const char *xdigit; - - if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { - /* strip off leading x or 0x. - for compatibility silently suffer "x" and "0x" as valid hex numbers. - */ - if (len >= 1) { - if (s[0] == 'x') { - s++; - len--; - } - else if (len >= 2 && s[0] == '0' && s[1] == 'x') { - s+=2; - len-=2; - } - } - } - - for (; len-- && *s; s++) { - xdigit = strchr((char *) PL_hexdigit, *s); - if (xdigit) { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - With gcc seems to be much straighter code than old scan_hex. */ - redo: - if (!overflowed) { - if (value <= max_div_16) { - value = (value << 4) | ((xdigit - PL_hexdigit) & 15); - continue; - } - warn("Integer overflow in hexadecimal number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 16.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount of 16-tuples. */ - value_nv += (NV)((xdigit - PL_hexdigit) & 15); - continue; - } - if (*s == '_' && len && allow_underscores && s[1] - && (xdigit = strchr((char *) PL_hexdigit, s[1]))) - { - --len; - ++s; - goto redo; - } - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal hexadecimal digit '%c' ignored", *s); - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Hexadecimal number > 0xffffffff non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#ifndef grok_oct -#if defined(NEED_grok_oct) -static UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -static -#else -extern UV DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result); -#endif - -#ifdef grok_oct -# undef grok_oct -#endif -#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d) -#define Perl_grok_oct DPPP_(my_grok_oct) - -#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL) -UV -DPPP_(my_grok_oct)(pTHX_ char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_8 = UV_MAX / 8; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - - for (; len-- && *s; s++) { - /* gcc 2.95 optimiser not smart enough to figure that this subtraction - out front allows slicker code. */ - int digit = *s - '0'; - if (digit >= 0 && digit <= 7) { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - */ - redo: - if (!overflowed) { - if (value <= max_div_8) { - value = (value << 3) | digit; - continue; - } - /* Bah. We're just overflowed. */ - warn("Integer overflow in octal number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 8.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount of 8-tuples. */ - value_nv += (NV)digit; - continue; - } - if (digit == ('_' - '0') && len && allow_underscores - && (digit = s[1] - '0') && (digit >= 0 && digit <= 7)) - { - --len; - ++s; - goto redo; - } - /* Allow \octal to work the DWIM way (that is, stop scanning - * as soon as non-octal characters are seen, complain only iff - * someone seems to want to use the digits eight and nine). */ - if (digit == 8 || digit == 9) { - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal octal digit '%c' ignored", *s); - } - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Octal number > 037777777777 non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#ifdef NO_XSLOCKS -# ifdef dJMPENV -# define dXCPT dJMPENV; int rEtV = 0 -# define XCPT_TRY_START JMPENV_PUSH(rEtV); if (rEtV == 0) -# define XCPT_TRY_END JMPENV_POP; -# define XCPT_CATCH if (rEtV != 0) -# define XCPT_RETHROW JMPENV_JUMP(rEtV) -# else -# define dXCPT Sigjmp_buf oldTOP; int rEtV = 0 -# define XCPT_TRY_START Copy(top_env, oldTOP, 1, Sigjmp_buf); rEtV = Sigsetjmp(top_env, 1); if (rEtV == 0) -# define XCPT_TRY_END Copy(oldTOP, top_env, 1, Sigjmp_buf); -# define XCPT_CATCH if (rEtV != 0) -# define XCPT_RETHROW Siglongjmp(top_env, rEtV) -# endif -#endif - -#endif /* _P_P_PORTABILITY_H_ */ - -/* End of File ppport.h */ diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t b/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t deleted file mode 100644 index 7e896530..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/01_load.t +++ /dev/null @@ -1,8 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -plan tests => 1; - -eval {use Crypt::PBC; }; ok( not $@ ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t b/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t deleted file mode 100644 index b645ce63..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/03_testnew.t +++ /dev/null @@ -1,52 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -plan tests => 5; - -use Crypt::PBC; - -my $global_c; -my $global_e; - -FILE: { - my $c = Crypt::PBC->new("params_d.txt"); - my $e = $c->init_G1->set_to_hash( "lol!" ); - - $global_e = $e; - $global_c = $c; # this shouldn't be necessary -- trying to concoct a smaller example - - ok( 1 ); -} - -GLOB: { - open IN, "params_d.txt" or die "lol: $!"; - my $c = Crypt::PBC->new(\*IN); close IN; - my $e = $c->init_G1->set_to_hash( "lol!" ); - - ok( 1 ); - ok( $e->is_eq( $global_e ) ) -} - -STRING: { - my $settings = q(type d -q 90144054120102937439179516551801119443207521965651508326977 -n 90144054120102937439179516552101359437412329625948146453801 -h 3523 -r 25587298927080027658012919827448583433838299638361665187 -a 53241464724463691897001131065853762954208272388634868483573 -b 5446291776274815451607581859968802155069674270539409546723 -k 6 -nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 -hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 -coeff0 43907136006531280293838495445857758305366399383908394927288 -coeff1 21720089592072695009765372832780685887129370300993349347738 -coeff2 11773373318911376280677890769414834592007872486079550520860 -nqr 4468071665857441743453009416233415235254714637554162977327); - my $c = Crypt::PBC->new($settings); - my $e = $c->init_G1->set_to_hash( "lol!" ); - - ok( 1 ); - ok( $e->is_eq( $global_e ) ) -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t b/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t deleted file mode 100644 index fbf9ceca..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/05_boneh_franklin.t +++ /dev/null @@ -1,50 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -plan tests => 1 + 3 + 2 + 1 + 2 + 1; - -use Crypt::PBC; - -# The data from params_d.txt was read in from param/d105171-196-185.param, which -# comes with the pbc package which can be generated by the package itself. The -# rest of this test is from testibe.c in the PBC distribution. - -my $pairing = Crypt::PBC->new("params_d.txt"); ok($pairing); - -my $g = $pairing->init_G1; ok( $g ); # P in BF -my $zg = $pairing->init_G1; ok( $zg ); # sP in BF -my $rg = $pairing->init_G1; ok( $rg ); # H2(g^r) ... in BF, though H1(g^r) here... -my $h = $pairing->init_G2; ok( $h ); # Q_id = H1(ID) in BF ... Q_id = H2(ID) here -my $zh = $pairing->init_G2; ok( $zh ); # d_id in BF -my $s = $pairing->init_GT; ok( $s ); # V and M and h2(g_id^r) and stuff -my $master = $pairing->init_Zr; ok( $master ); # s in BF -my $r = $pairing->init_Zr; ok( $r ); # r in BF - -$master->random; # generate master secret (s) -$g->random; # g is a publically known value (P) -$zg->pow_zn( $g, $master ); # sP is the master-public key P_pub - -$s->random; # just for the debug messages below -$h->random; # just for the debug messages below - -# pick random h, which represents what an ID might hash to -# for toy examples, should check that pairing(g, h) != 1 -$h->random; # this is the Qi = H1( IDi(params) ) -$zh->pow_zn( $h, $master ); # and this is the private key - -## encryption -## first pick random r -$r->random; -$s->pairing_apply( $zg, $h ); # s = e_hat(P_pub, Q_id) -- GT=e_hat(G1, G2) -$s->pow_zn( $s, $r ); # s = e_hat(P_pub, Q_id)^r, used to encrypt the message -$rg->pow_zn( $g, $r ); # we transmit g^r along with the encryption - -## decyrption -## should equal s -my $other_s = $pairing->init_GT->pairing_apply( $rg, $zh ); # s = e_hat(g^r, d_id) -- GT=e_hat(G1, G2) - -ok( $s->is_eq( $other_s ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t b/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t deleted file mode 100644 index 50b87398..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/07_BF2.t +++ /dev/null @@ -1,73 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -my $bf = 0; -my $sh = 0; -eval q{ - use Crypt::CBC; - use Crypt::Blowfish; - - $bf = 1; -}; - -eval q{ - use Digest::SHA1 qw(sha1); - - $sh = 1; -}; - -plan tests => 3 + $bf; - -use Crypt::PBC; - -# SETUP - -my $curve = Crypt::PBC->new("params_d.txt"); - -my $P = $curve->init_G2->random; # generator in G1 -- even though it's in G2 -my $s = $curve->init_Zr->random; # master secret -my $P_pub = $curve->init_G2->pow_zn( $P, $s ); # master public key - -# EXTRACT - -my $Q_id = $curve->init_G1; -if( $sh ) { - warn "using Digest::SHA1 to generate Q_id\n" if $ENV{EXTRA_INFO}; - $Q_id->set_to_hash( sha1("Paul Miller | expires 2007-11-15") ); - -} else { - $Q_id->random; # this is just a test anyway -} -my $d_id = $curve->init_G1->pow_zn( $Q_id, $s ); - -# ENCRYPT - -my $r = $curve->init_Zr->random; -my $g_id = $curve->init_GT->e_hat( $Q_id, $P_pub ); -my $U = $curve->init_G2->pow_zn( $P, $r ); # U is the part d_id can use to derive w -my $w = $curve->init_GT->pow_zn( $g_id, $r ); # w is the part you'd xor(w,M) to get V or xor(w,V) to get M - -# DECRYPT -my $w_from_U = $curve->init_GT->e_hat( $d_id, $U ); - -ok( $w_from_U->is_eq( $w ) ); -ok( $w_from_U->as_bytes, $w->as_bytes ); # binary good -ok( $w_from_U->as_str, $w->as_str ); # hexidecimal - -if( $bf ) { - # If the three comparisons above worked, this is kindof a no-brainer; but, - # personally, I was confused on how to M^H2(g^r) -- and here it is: - - my $cipher1 = new Crypt::CBC({header=>"randomiv", key=>$w->as_bytes, cipher=>'Blowfish'}); - my $cipher2 = new Crypt::CBC({header=>"randomiv", key=>$w_from_U->as_bytes, cipher=>'Blowfish'}); - my $message = "Holy smokes, this is secret!!"; - my $encrypt = $cipher1->encrypt($message); - my $decrypt = $cipher2->decrypt($encrypt); - - warn " using Crypt::CBC(Crypt::Blowfish) for 4th test\n" if $ENV{EXTRA_INFO}; - ok( $decrypt, $message ); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t b/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t deleted file mode 100644 index f6e05f3a..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/09_pairings_tests.t +++ /dev/null @@ -1,44 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $str = q(type d -q 90144054120102937439179516551801119443207521965651508326977 -n 90144054120102937439179516552101359437412329625948146453801 -h 3523 -r 25587298927080027658012919827448583433838299638361665187 -a 53241464724463691897001131065853762954208272388634868483573 -b 5446291776274815451607581859968802155069674270539409546723 -k 6 -nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 -hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 -coeff0 43907136006531280293838495445857758305366399383908394927288 -coeff1 21720089592072695009765372832780685887129370300993349347738 -coeff2 11773373318911376280677890769414834592007872486079550520860 -nqr 4468071665857441743453009416233415235254714637554162977327); - -my $epochs = 3; - -plan tests => 4 * $epochs; - -for ( 1 .. $epochs ) { - open IN, "params_d.txt" or die "couldn't open params: $!"; - my $curv1 = Crypt::PBC->new(\*IN); close IN; - my $g1_1 = $curv1->init_G1->set_to_hash("test !!"); - my $g2_1 = $curv1->init_G2->set_to_hash("test !!"); - - my $curv2 = Crypt::PBC->new($str); - my $g1_2 = $curv2->init_G1->set_to_hash("test !!"); - my $g2_2 = $curv2->init_G2->set_to_hash("test !!"); - - ok( $g1_2->as_base64, $g1_1->as_base64 ); - ok( $g2_2->as_base64, $g2_1->as_base64 ); - - ok( $g1_2->is_eq( $g1_1 ) ); - ok( $g2_2->is_eq( $g2_1 ) ); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t b/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t deleted file mode 100644 index a2a2bc5e..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/10_test_symmetric.t +++ /dev/null @@ -1,22 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -plan tests => 2; - -my $symmetric = new Crypt::PBC("params_a.txt"); -my $asymmetric = new Crypt::PBC("params_d.txt"); - -my $G1_s = $symmetric->init_G1->random; -my $G2_s = $symmetric->init_G2->random; - -my $G1_a = $asymmetric->init_G1->random; -my $G2_a = $asymmetric->init_G2->random; - -eval { $G1_s->add( $G2_s ) }; ok( not $@ ); -eval { $G1_a->add( $G2_a ) }; ok( $@ ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t deleted file mode 100644 index 207083c6..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/13_1op_arith.t +++ /dev/null @@ -1,36 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = Crypt::PBC->new("params_d.txt"); - -my @lhs = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr ); -my @rhs = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr ); - -my $epochs = 3; - -plan tests => ( ((int @lhs) * 5 * $epochs) ); - -for my $i ( 1 .. $epochs ) { - for my $i ( 0 .. $#lhs ) { - - $rhs[$i]->random; - - $lhs[$i]->set( $rhs[$i] )->square; my $sc = $lhs[$i]->clone; - $lhs[$i]->set( $rhs[$i] )->double; my $dc = $lhs[$i]->clone; - $lhs[$i]->set( $rhs[$i] )->halve; my $hc = $lhs[$i]->clone; - $lhs[$i]->set( $rhs[$i] ); $lhs[$i]->neg; my $nc = $lhs[$i]->clone; - $lhs[$i]->set( $rhs[$i] ); $lhs[$i]->invert; my $ic = $lhs[$i]->clone; - - $lhs[$i]->square( $rhs[$i] ); ok( $lhs[$i]->is_eq( $sc ) ); - $lhs[$i]->double( $rhs[$i] ); ok( $lhs[$i]->is_eq( $dc ) ); - $lhs[$i]->halve( $rhs[$i] ); ok( $lhs[$i]->is_eq( $hc ) ); - $lhs[$i]->neg( $rhs[$i] ); ok( $lhs[$i]->is_eq( $nc ) ); - $lhs[$i]->invert( $rhs[$i] ); ok( $lhs[$i]->is_eq( $ic ) ); - } -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t deleted file mode 100644 index 1aa7cc93..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/13_2op_arith.t +++ /dev/null @@ -1,35 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = Crypt::PBC->new("params_d.txt"); - -my @lhs = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); -my @rhs = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); -my @shl = ( $curve->init_G1, $curve->init_G2, $curve->init_Zr, $curve->init_GT, ); - -my $epochs = 3; - -plan tests => ( ((int @lhs) * 4 * $epochs) ); - -for my $i ( 1 .. $epochs ) { - for my $i ( 0 .. $#lhs ) { - $rhs[$i]->random; - $shl[$i]->random; - - $lhs[$i]->set( $shl[$i] )->add( $lhs[$i], $rhs[$i] ); my $ac = $lhs[$i]->clone; - $lhs[$i]->set( $shl[$i] )->Sub( $lhs[$i], $rhs[$i] ); my $sc = $lhs[$i]->clone; - $lhs[$i]->set( $shl[$i] ); $lhs[$i]->div( $lhs[$i], $rhs[$i] ); my $dc = $lhs[$i]->clone; - $lhs[$i]->set( $shl[$i] ); $lhs[$i]->mul( $lhs[$i], $rhs[$i] ); my $mc = $lhs[$i]->clone; - - $lhs[$i]->set( $shl[$i] )->add( $rhs[$i] ); ok( $lhs[$i]->is_eq( $ac ) ); - $lhs[$i]->set( $shl[$i] )->Sub( $rhs[$i] ); ok( $lhs[$i]->is_eq( $sc ) ); - $lhs[$i]->set( $shl[$i] )->div( $rhs[$i] ); ok( $lhs[$i]->is_eq( $dc ) ); - $lhs[$i]->set( $shl[$i] )->mul( $rhs[$i] ); ok( $lhs[$i]->is_eq( $mc ) ); - } -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t deleted file mode 100644 index 440af5c2..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/13_mul_znmpz.t +++ /dev/null @@ -1,33 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = new Crypt::PBC("params_d.txt"); - -plan tests => 7; - -my $a = $curve->init_Zr->set_to_int( 11 ); -my $b = 11; -my $c = new Math::BigInt(11); - -my $l1 = $curve->init_Zr->set_to_int( 5 )->mul( $a ); -my $l2 = $curve->init_Zr->set_to_int( 5 )->mul_zn( $a ); -my $l3 = $curve->init_Zr->set_to_int( 5 )->mul_int( $b ); -my $l4 = $curve->init_Zr->set_to_int( 5 )->mul_bigint( $c ); -my $l5 = $curve->init_Zr->mul( $curve->init_Zr->set_to_int(5), $a ); -my $l6 = $curve->init_Zr->mul_zn( $curve->init_Zr->set_to_int(5), $a ); -my $l7 = $curve->init_Zr->mul_int( $curve->init_Zr->set_to_int(5), $b ); -my $l8 = $curve->init_Zr->mul_bigint( $curve->init_Zr->set_to_int(5), $c ); - -ok( $l1->is_eq( $l2 ) ); -ok( $l1->is_eq( $l3 ) ); -ok( $l1->is_eq( $l4 ) ); -ok( $l1->is_eq( $l5 ) ); -ok( $l1->is_eq( $l6 ) ); -ok( $l1->is_eq( $l7 ) ); -ok( $l1->is_eq( $l8 ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t b/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t deleted file mode 100644 index b98e7188..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/13_pow_arith.t +++ /dev/null @@ -1,35 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = new Crypt::PBC('params_d.txt'); - -my $G1_a = $curve->init_G1; my $G1_b = $curve->init_G1; my $G1_c = $curve->init_G1; my $G1_d = $curve->init_G1; -my $Zr_a = $curve->init_Zr; my $Zr_b = $curve->init_Zr; my $Zr_c = $curve->init_Zr; - -my $epochs = 5; - -plan tests => $epochs * 3; - -for ( 1 .. $epochs ) { - # just looking for segfaults - - $G1_a->random; $G1_b->random; $G1_c->random; $G1_d->random; $Zr_a->random; $Zr_b->random; $Zr_c->random; - - my $mpz_a = $Zr_a->as_bigint; - my $mpz_b = $Zr_b->as_bigint; - my $mpz_c = $Zr_c->as_bigint; - - $G1_a->random->pow_zn( $G1_b, $Zr_a ); my $c_1 = $G1_a->clone; - $G1_a->random->pow2_zn( $G1_b, $Zr_a, $G1_c, $Zr_b, $G1_d, $Zr_c ); my $c_2 = $G1_a->clone; - $G1_a->random->pow3_zn( $G1_b, $Zr_a, $G1_c, $Zr_b, $G1_d, $Zr_c ); my $c_3 = $G1_a->clone; - - $G1_a->random->pow_bigint( $G1_b, $mpz_a ); ok( $G1_a->is_eq( $c_1 ) ); - $G1_a->random->pow2_bigint( $G1_b, $mpz_a, $G1_c, $mpz_b, $G1_d, $mpz_c ); ok( $G1_a->is_eq( $c_2 ) ); - $G1_a->random->pow3_bigint( $G1_b, $mpz_a, $G1_c, $mpz_b, $G1_d, $mpz_c ); ok( $G1_a->is_eq( $c_3 ) ); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t b/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t deleted file mode 100644 index a0e5cb80..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/14_from_bytes.t +++ /dev/null @@ -1,20 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = new Crypt::PBC('params_d.txt'); - -plan tests => 50; - -for ( 1 .. 50 ) { - my $P_orig = $curve->init_G2->random; - my $P_bytes = $P_orig->as_bytes; - my $P_rebuilt = $curve->init_G2->set_to_bytes( $P_bytes ); - - ok( $P_orig->is_eq( $P_rebuilt ) ); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t b/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t deleted file mode 100644 index ba1bbd15..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/14_pow_zn_one_arg.t +++ /dev/null @@ -1,20 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $curve = new Crypt::PBC('params_a.txt'); - -plan tests => 3; - -my $x = $curve->init_Zr->random; -my $P1 = $curve->init_G1->random; -my $P2 = clone $P1; - -ok( $P1->is_eq( $P2 ) ); -ok( $P1->clone->pow_zn( $x )->is_eq( $P2->pow_zn($P2, $x) ) ); -ok( not $P1->is_eq( $P2 ) ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t b/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t deleted file mode 100644 index 40837627..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/15_mpz.t +++ /dev/null @@ -1,30 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -plan tests => 3; - -my $curve = new Crypt::PBC("params_d.txt"); - -TRIVIAL: { - my $Zr1 = $curve->init_Zr->set_to_int( 53 ); - my $Zr2 = $curve->init_Zr->set_to_int( 59 ); - - my $mpz1 = $Zr1->as_bigint; - my $mpz2 = $Zr2->as_bigint; - - ok( "$mpz1", 53 ); - ok( "$mpz2", 59 ); -} - -NONTRIVIAL: { - my $Zr1 = $curve->init_Zr->set_to_int( 53 ); - my $Zr2 = $curve->init_Zr->set_to_bigint( $Zr1->as_bigint ); - - ok( $Zr1->is_eq( $Zr2 ) ); -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t b/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t deleted file mode 100644 index aae130f1..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/20_cmp.t +++ /dev/null @@ -1,29 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -use Crypt::PBC; - -my $c = new Crypt::PBC("params_d.txt"); -my @all = ( $c->init_G1, $c->init_G2, $c->init_GT, $c->init_Zr ); -my @noT = @all[0,1,3]; - -plan tests => 4*1 + @noT + 2; - -for my $e ($all[3]) { # this used to test over 2 and 3, but when GT became Zr^k, 1=0 sorta... - $e->set0; ok( $e->is0 and not $e->is1 ); - $e->set1; ok( $e->is1 and not $e->is0 ); - - $e->set_to_int(0); ok( $e->is0 and not $e->is1 ); - $e->set_to_int(1); ok( $e->is1 and not $e->is0 ); -} - -for my $e (@noT) { # , $all[2]) { - ok( $e->is_eq( $e ) ); -} - -ok( not $all[3]->set_to_int(19)->is_sqr ); -ok( $all[3]->set_to_int(25)->is_sqr ); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t b/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t deleted file mode 100644 index 11457088..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/35_scopefault.t +++ /dev/null @@ -1,31 +0,0 @@ -# vi:fdm=marker fdl=0 syntax=perl: - -use strict; -use Test; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -plan tests => 1; - -use Crypt::PBC; - -###### ---- This test shouldn't sagfault. If it does it's probably a bug in libpbc! - -BIGGER_SCOPE: { - my $e; - - HRM1: { - my $c = new Crypt::PBC("params_d.txt"); - $e = $c->init_G1->set_to_hash( "lol!" ); - } - - HRM2: { - my $d = new Crypt::PBC("params_d.txt"); - my $f = $d->init_G1->set_to_hash( "lol!" ); - } - - # warn " about to sagfault"; -} -# warn " (sagfaulted so you don't see this)"; - -ok(1); diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t deleted file mode 100644 index 8451beb5..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_a.t +++ /dev/null @@ -1,185 +0,0 @@ - -use strict; -use Test; -use Carp; -use Crypt::PBC; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -my $curve = new Crypt::PBC("params_a.txt"); -my @e = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr, 1, new Math::BigInt(19) ); -my @i = ( 0 .. $#e ); # the indicies for permute() - -if( -f "slamtest.log" ) { - unlink "slamtest.log" or die "couldn't remove old logfile: $!"; -} - -my %slam_these = ( - pairing_apply => 2, - - random => 1, # technically these should be 0, but this test is not set up for no-args - square => 1, - double => 1, - halve => 1, - neg => 1, - invert => 1, - - add => 2, - Sub => 2, - mul => 2, - div => 2, - - mul_zn => 2, - mul_int => 2, - mul_bigint => 2, - - pow_zn => 2, - pow2_zn => 4, - pow3_zn => 6, - - pow_bigint => 2, - pow2_bigint => 4, - pow3_bigint => 6, - - is0 => 1, - is1 => 1, - is_eq => 1, - is_sqr => 1, - - set0 => 1, - set1 => 1, - - set_to_hash => 1, - set_to_bytes => 1, - set_to_int => 1, - set_to_bigint => 1, - set => 1, -); - -#### This test may need some explaining... We wish to pass all -#### possible all the wrong things and make sure we catch all the -#### potential sagfaults with perl croak() errors. - -plan tests => int keys %slam_these; - -my %huge_cache = (); - -my $start_time = time; -my $total_per = 0; -my $last_time = 0; - -$ENV{MAX_PERM_TIME} = 0.05 unless defined $ENV{MAX_PERM_TIME} and $ENV{MAX_PERM_TIME} >= 0; -warn "\n\t$0 is set to truncate all tests longer than $ENV{MAX_PERM_TIME} second(s) (env MAX_PERM_TIME)\n" if $ENV{MAX_PERM_TIME} < 120; -eval 'use Time::HiRes qw(time)'; # does't matter if this fails... -warn "\t$0 gives more accurate calls/s estimates if Time::HiRes is installed...\n" if $@; - -my $shh = $ENV{MAX_PERM_TIME} < 15; - -for my $function (sort slam_sort keys %slam_these) { - my @a = &permute( $slam_these{$function} => @i ); - - # warn " WARN($function, " . (int @a) . ")"; - - if( $total_per > 0 and (my $delta_t = time - $start_time) > 0 ) { - my $v = ""; - $v = ($delta_t / $total_per); - my $t = ($v >= 1 ? sprintf('%0.2f s/call', $v) : sprintf('%0.2f calls/s', 1/$v)); - - my $m = int @a; - if( my $total = ($v * $m) > $ENV{MAX_PERM_TIME} ) { - my $mpti = int ($ENV{MAX_PERM_TIME}/$v); - $mpti = 1 if $mpti < 1; - - @a = sort { (rand 1) <=> (rand 1) } @a; - @a = @a[ 0 .. $mpti ]; - - my $nc = int @a; - - $m = "$nc (reduced randomly from $m)"; - } - - unless( $shh ) { - warn " testing $m argument permutations for $function() $t\n" if $last_time != time; - } - $last_time = time; - } - - for my $a (@a) { - my $key = "@$a"; - my $args = $huge_cache{$key}; - $args = [map { ( ref $e[$_] and $e[$_]->isa("Crypt::PBC::Element") ? $e[$_]->clone->random : $e[$_]) } @$a] - if not defined $args; - $huge_cache{$key} = $args; - - for my $e (@e) { - next unless ref $e and $e->isa("Crypt::PBC::Element"); - - ## DEBUG ## open OUTPUT, ">>slamtest.log" or die $!; - ## DEBUG ## print OUTPUT "e=$e; function=$function; args=[@$args];\n"; - ## DEBUG ## close OUTPUT; - - eval '$e->random->' . $function . '(@$args)'; - - # We are just looking for segmentation faults for now - # so we ignore most $@ entirely. - - if( $@ and not $@ =~ m/(?:SCALAR ref|HASH ref|provide something|same group|int.provided.*accept|RHS|LHS|is not a bigint|must be.*(?:G1|G2|GT|Zr))/ ) { - open OUTPUT, ">>slamtest.log" or die $!; - warn " [logged] \$@=$@"; - print OUTPUT " function=$function; \$@=$@"; - close OUTPUT; - } - } - } - - $total_per += (int @a); - - ok( 1 ); -} - -# _permute {{{ -sub _permute { - my $num = shift; - my $arr = shift; - my $src = shift; - - unshift @$_, $src->[0] for @$arr; - - my $e = $#{ $arr }; - for my $i (1 .. $#$src) { - for my $j (0 .. $e) { - my $t = [@{ $arr->[$j] }]; - - $t->[0] = $i; - - push @$arr, $t; - } - } - - &_permute( $num-1, $arr, $src ) if $num > 1; -} -# }}} -# permute {{{ -sub permute { - my $anum = shift; croak "dumb number" unless $anum > 0; - my @ret = (); - - for my $num ( 1 .. $anum ) { - my @a = map {[$_]} @_; - - &_permute( $num-1, \@a, \@_ ) if $num > 1; - - push @ret, @a; - } - - return @ret; -} -# }}} -# slam_sort {{{ -sub slam_sort { - my ($c, $d) = ($slam_these{$a}, $slam_these{$b}); - - return $c <=> $d if $c != $d; - return $a cmp $b; -} -# }}} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t b/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t deleted file mode 100644 index cd3f066c..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/80_slamtest_d.t +++ /dev/null @@ -1,185 +0,0 @@ - -use strict; -use Test; -use Carp; -use Crypt::PBC; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -my $curve = new Crypt::PBC("params_d.txt"); -my @e = ( $curve->init_G1, $curve->init_G2, $curve->init_GT, $curve->init_Zr, 1, new Math::BigInt(19) ); -my @i = ( 0 .. $#e ); # the indicies for permute() - -if( -f "slamtest.log" ) { - unlink "slamtest.log" or die "couldn't remove old logfile: $!"; -} - -my %slam_these = ( - pairing_apply => 2, - - random => 1, # technically these should be 0, but this test is not set up for no-args - square => 1, - double => 1, - halve => 1, - neg => 1, - invert => 1, - - add => 2, - Sub => 2, - mul => 2, - div => 2, - - mul_zn => 2, - mul_int => 2, - mul_bigint => 2, - - pow_zn => 2, - pow2_zn => 4, - pow3_zn => 6, - - pow_bigint => 2, - pow2_bigint => 4, - pow3_bigint => 6, - - is0 => 1, - is1 => 1, - is_eq => 1, - is_sqr => 1, - - set0 => 1, - set1 => 1, - - set_to_hash => 1, - set_to_bytes => 1, - set_to_int => 1, - set_to_bigint => 1, - set => 1, -); - -#### This test may need some explaining... We wish to pass all -#### possible all the wrong things and make sure we catch all the -#### potential sagfaults with perl croak() errors. - -plan tests => int keys %slam_these; - -my %huge_cache = (); - -my $start_time = time; -my $total_per = 0; -my $last_time = 0; - -$ENV{MAX_PERM_TIME} = 0.05 unless defined $ENV{MAX_PERM_TIME} and $ENV{MAX_PERM_TIME} >= 0; -warn "\n\t$0 is set to truncate all tests longer than $ENV{MAX_PERM_TIME} second(s) (env MAX_PERM_TIME)\n" if $ENV{MAX_PERM_TIME} < 120; -eval 'use Time::HiRes qw(time)'; # does't matter if this fails... -warn "\t$0 gives more accurate calls/s estimates if Time::HiRes is installed...\n" if $@; - -my $shh = $ENV{MAX_PERM_TIME} < 15; - -for my $function (sort slam_sort keys %slam_these) { - my @a = &permute( $slam_these{$function} => @i ); - - # warn " WARN($function, " . (int @a) . ")"; - - if( $total_per > 0 and (my $delta_t = time - $start_time) > 0 ) { - my $v = ""; - $v = ($delta_t / $total_per); - my $t = ($v >= 1 ? sprintf('%0.2f s/call', $v) : sprintf('%0.2f calls/s', 1/$v)); - - my $m = int @a; - if( my $total = ($v * $m) > $ENV{MAX_PERM_TIME} ) { - my $mpti = int ($ENV{MAX_PERM_TIME}/$v); - $mpti = 1 if $mpti < 1; - - @a = sort { (rand 1) <=> (rand 1) } @a; - @a = @a[ 0 .. $mpti ]; - - my $nc = int @a; - - $m = "$nc (reduced randomly from $m)"; - } - - unless( $shh ) { - warn " testing $m argument permutations for $function() $t\n" if $last_time != time; - } - $last_time = time; - } - - for my $a (@a) { - my $key = "@$a"; - my $args = $huge_cache{$key}; - $args = [map { ( ref $e[$_] and $e[$_]->isa("Crypt::PBC::Element") ? $e[$_]->clone->random : $e[$_]) } @$a] - if not defined $args; - $huge_cache{$key} = $args; - - for my $e (@e) { - next unless ref $e and $e->isa("Crypt::PBC::Element"); - - ## DEBUG ## open OUTPUT, ">>slamtest.log" or die $!; - ## DEBUG ## print OUTPUT "e=$e; function=$function; args=[@$args];\n"; - ## DEBUG ## close OUTPUT; - - eval '$e->random->' . $function . '(@$args)'; - - # We are just looking for segmentation faults for now - # so we ignore most $@ entirely. - - if( $@ and not $@ =~ m/(?:SCALAR ref|HASH ref|provide something|same group|int.provided.*accept|RHS|LHS|is not a bigint|must be.*(?:G1|G2|GT|Zr))/ ) { - open OUTPUT, ">>slamtest.log" or die $!; - warn " [logged] \$@=$@"; - print OUTPUT " function=$function; \$@=$@"; - close OUTPUT; - } - } - } - - $total_per += (int @a); - - ok( 1 ); -} - -# _permute {{{ -sub _permute { - my $num = shift; - my $arr = shift; - my $src = shift; - - unshift @$_, $src->[0] for @$arr; - - my $e = $#{ $arr }; - for my $i (1 .. $#$src) { - for my $j (0 .. $e) { - my $t = [@{ $arr->[$j] }]; - - $t->[0] = $i; - - push @$arr, $t; - } - } - - &_permute( $num-1, $arr, $src ) if $num > 1; -} -# }}} -# permute {{{ -sub permute { - my $anum = shift; croak "dumb number" unless $anum > 0; - my @ret = (); - - for my $num ( 1 .. $anum ) { - my @a = map {[$_]} @_; - - &_permute( $num-1, \@a, \@_ ) if $num > 1; - - push @ret, @a; - } - - return @ret; -} -# }}} -# slam_sort {{{ -sub slam_sort { - my ($c, $d) = ($slam_these{$a}, $slam_these{$b}); - - return $c <=> $d if $c != $d; - return $a cmp $b; -} -# }}} diff --git a/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t b/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t deleted file mode 100644 index 15da8d02..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/t/99_memory_tests.t +++ /dev/null @@ -1,40 +0,0 @@ - -use strict; -use Test; -use Crypt::PBC; - -if( defined $ENV{SKIP_ALL_BUT} ) { unless( $0 =~ m/\Q$ENV{SKIP_ALL_BUT}\E/ ) { plan tests => 1; skip(1); exit 0; } } - -eval "use Unix::Process"; -if( $@ ) { - plan tests => 1; - skip( 1 ); - exit 0; -} - -my $epochs = 50; # I tested this to 500 on my machine... 50 is prolly fine - -plan tests => $epochs; - -my $size = undef; -my $last = undef; -for (1 .. $epochs+4) { # we skip the first 4 (takes perl a while to calm down... *shrug*) - SCOPE1: { - my $pair = new Crypt::PBC("params_d.txt"); - - SCOPE2: { - my $G1 = $pair->init_G1->random; - my $G2 = $pair->init_G2->random; - my $GT = $pair->init_GT->random; - my $Zr = $pair->init_Zr->random; - } - } - - # This isn't the most accurate test in the whole wide world... - # so don't be too shocked if it fails. - $size = Unix::Process->vsz; - - ok( $size, $last ) if $_ > 4; - - $last = $size; -} diff --git a/scripts/crypt/Crypt-PBC-0.9000/typemap b/scripts/crypt/Crypt-PBC-0.9000/typemap deleted file mode 100644 index a190c7cf..00000000 --- a/scripts/crypt/Crypt-PBC-0.9000/typemap +++ /dev/null @@ -1,41 +0,0 @@ -TYPEMAP -pairing_t * PAIRINGT -element_t * ELEMENTT -mpz_t * MPZ - -INPUT -PAIRINGT - if (sv_derived_from($arg, \"Crypt::PBC::Pairing\")) { - IV tmp = SvIV((SV*)SvRV($arg)); - $var = ($type) tmp; - } - else - croak(\"$var is not of type Crypt::PBC::Pairing\") - -ELEMENTT - if (sv_derived_from($arg, \"Crypt::PBC::Element\")) { - IV tmp = SvIV((SV*)SvRV($arg)); - $var = ($type) tmp; - } - else - croak(\"$var is not of type Crypt::PBC::Element\") - -MPZ - /* this was cut and pasted directly from Math::BigInt::GMP -- the rest are obvious copies */ - if (sv_derived_from($arg, \"Math::BigInt::GMP\")) { - IV tmp = SvIV((SV*)SvRV($arg)); - $var = ($type) tmp; - } - else - croak(\"$var is not of type Math::BigInt::GMP\") - -OUTPUT -PAIRINGT - sv_setref_pv($arg, \"Crypt::PBC::Pairing\", (void*)$var); - -ELEMENTT - sv_setref_pv($arg, \"Crypt::PBC::Element\", (void*)$var); - -MPZ - /* this was cut and pasted directly from Math::BigInt::GMP -- the rest are obvious copies */ - sv_setref_pv($arg, \"Math::BigInt::GMP\", (void*)$var); diff --git a/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 b/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 deleted file mode 100644 index e053a0cf..00000000 --- a/scripts/inline.bk/config-x86_64-linux-gnu-thread-multi-5.014002 +++ /dev/null @@ -1,14 +0,0 @@ -version : 0.5 -languages : % - C : C - Foo : Foo - foo : Foo -types : % - C : compiled - Foo : interpreted -modules : % - C : Inline::C - Foo : Inline::Foo -suffixes : % - C : so - Foo : foo diff --git a/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl b/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl deleted file mode 100644 index b9214fb1..00000000 --- a/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2a81306732376d1bc2ce778db69819a9 -name : CBitcoin_2a81 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Mon Jun 16 16:06:28 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so b/scripts/inline.bk/lib/auto/CBitcoin_2a81/CBitcoin_2a81.so deleted file mode 100755 index ca954fe26f88d1bf7eef4b1c2bc842f64c453924..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 55706 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 IKIi)X58;>CT>t<8 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist deleted file mode 100644 index 58d4c7c6..00000000 --- a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl deleted file mode 100644 index 4ff6b1c4..00000000 --- a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : e4f163e84d3d64a84019106bfd0ab56a -name : CBitcoin_e4f1 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Mon Jun 16 16:22:24 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so b/scripts/inline.bk/lib/auto/CBitcoin_e4f1/CBitcoin_e4f1.so deleted file mode 100755 index 3d907a28649f81bf06951774dfd3d437cdf16329..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 83366 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%0A?Od^PZa&zgMhg3E~`_YkR( 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 F{|82~oq+%V diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist b/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist deleted file mode 100644 index 670221dd..00000000 --- a/scripts/inline.bk/lib/auto/coin_pl_2a81/.packlist +++ /dev/null @@ -1 +0,0 @@ -/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_2a81/coin_pl_2a81.so diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl b/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl deleted file mode 100644 index 79364485..00000000 --- a/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.inl +++ /dev/null @@ -1,22 +0,0 @@ -md5 : 2a81306732376d1bc2ce778db69819a9 -name : coin_pl_2a81 -version : "" -language : C -language_id : C -installed : 0 -date_compiled : Mon Jun 16 16:13:13 2014 -inline_version : 0.5 -ILSM : % - module : Inline::C - suffix : so - type : compiled -Config : % - apiversion : ? - archname : x86_64-linux-gnu-thread-multi - cc : cc - ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 - ld : cc - osname : linux - osvers : 3.2.0-4-amd64 - so : so - version : 5.14.2 diff --git a/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so b/scripts/inline.bk/lib/auto/coin_pl_2a81/coin_pl_2a81.so deleted file mode 100755 index aa9cd81344777f02a242b094510dffb24b8a2f55..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 56177 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 diff --git a/scripts/module/CBitcoin/CBitcoin.o b/scripts/module/CBitcoin/CBitcoin.o deleted file mode 100644 index 2085dc5eb81abbb731c891098b21bbd064b8dde5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85128 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 -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -#include "ppport.h" - - -MODULE = CBitcoin PACKAGE = CBitcoin - -void -hello() -CODE: - printf("Hello, world!\n"); - -int -is_even(input) - int input -CODE: - RETVAL = (input % 2 == 0); -OUTPUT: - RETVAL - -int -newMasterKey(arg) - int arg -CODE: - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - #RETVAL = (char *)CBByteArrayGetData(str); - RETVAL = 1; -OUTPUT: - RETVAL diff --git a/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so b/scripts/module/CBitcoin/blib/arch/auto/CBitcoin/CBitcoin.so deleted file mode 100755 index a1649b9f587cc7bfe06ddbf52f803a9eb80392a0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 53492 zcmd3Pd3;pW8TP$*hH$c-?2`ck88QJ9mJs$BKtoteAVOqOT!$<}63Av|0zs`rL1hu8 zN)@bDY}KM&#MW9|T4`O1t!=4Ri+01d+F;eIKThbS0bMriqk%G=_>1~F)y{gzU86Z zTV7lAge9HV;S3vWE~_Zu(&drtAqhaNiPtz(z0E_is?+w%42 z|1H0{<4Dr4|M2+hX!fNqkCkGH&k5id1|;vFe|--HUsOH}?J3jGzfPgxi^?DWl5*-K zfPbHV9rzOZ`_S-<___W|%0cD}>35>yi|8Cj`!C}ElP@d(5<2gEN%>Tie-Zshzoh*? zzhvC{FKOR^_5u9+{Ogw}_@Z$uP#*YvW8ms9p}!n;u8$>lyYNfem%>Rht+zj0JuHye z+?r#`*L<%0d!UmI?>uUl-3827FaEK-n+}K9KTLV~m(Ztfv%kR3>5JJ`y0wM@BH?wF z8F!5_irWnRn@u@7sn;`ZpHQf!qpLF%i8k~^Lm?~F*4Y-dLTmA6g=$xx6>1Lmgj?Do z(Qwbov*x#Vb%s|qG`5Fz-51w{n)(_@prO6(QZ!t=A++33nBU$IiG(B8>J_2+)oszH zuC~rlXL#dT4J5xLyveGs3q@OdLhEtajf-$YbEqX8jdX{b+Sax;S@q$b_E2O)XlmPr z(AxHfmWVaKdTDrL%>wqFU#;HH40ncm8lquM)aqzxZ|`byD_4Yj+Q3#MY_07Hhjs7y zt>LEik=~B#P0?^7E~+`w}%@d;bo2M!cEZ_Q;~4AZG%P~ zEg_&-4W`)9)e~)K*CkCoT@C9)eUVUaq@g7|NEmIAPRRlY1jQlOf`U_Q~jPomp2~JwG%R{b#rqhIbfu?C;U0mmdoRPAKQP=f2h?loz>$cyCQ8ch_51cPEr{{dQk{3FTaC-B*7?IoD$MwJo8X zd4v1folri^EyVjlQ_eXVk*V543FYn@&Wghc0!5#C;7UlqW9jClkuuyoG&EC6pVLYf?tPoGO;!)r_rF;|HbM-^U2OcObASm8!un#PHP3ZG9* zlQ^+o;pN0Mg%i6KUQA3AIMJ_gH8It2qFdogVw%EMrixD-1g4y8b`E(zC1BNDeK_iTc2o&`xBIHuHRK37)a;u32;NrJl%A^D z{%XyZQ*xto(G%!+o9Xz@MV}p~KG6QFy8VuX_CGu2soDPXnxDOXMvZ;6X8Y4Mzx%XT z_0QX*`ac&%|G%++|J<|D&*~jlvt{mP)M3c&uSU~qcFvuO@_|X1@jxs7T=evi5)|0) zKCzasvW&v5m=eupZl*xDXd#%JY?#Yg1^)j#6w}!L>SsqUI&m%toLG)OyLZn!ciuVk zR@H8Qf8NSfE3`019!(BdJ7*8r5YNupbvw%kKKulN+F9QX)KpZn<#lh(_WJIDS5#@0 zf9LFZyV{HG#k;)6YfGQ5+kUbJ)7^5)&bYcAW;pPOX;#zpCi?H1^QK~Rr+46ks&upo zvdzsgQgu6v2L`SMe1s-jv;7x!+g}?P2MmU~bt|!R_6JqLK*rWnXfbess;k?%CUc

yV?g%4g3!H5e@{F+58eToA<$j zVp$c$ZPIIsF9}&AV{kMe{D67kVP2&>D!K z`oxD&$=Zy<1z^4jn4@U^o;;C3%UH_7U3mexbKUm0SY3ybMEgk8_Rf*7!6v|3J{oCF zr<1_{X!^sCSo(j{^muCVsA*<2J@Ipz{vBoh-54pQ>DvJlH9Z%2-u9=#(-z$@rtBZG zcP9$TD3sk~>Rn}{OTDU%E2Ii|!S;8wI=1}H-tvxJ)AZcHODImz%Wy!Wu{#t2r5CTd ztbtzs`(Ns%6?*BgT%9}tC1`&e_#>*-kg({Qoz{Y#-GLKxp^J>desF9JJj!|~g7c}} z{^W_3)YCmI+?97ZY~1MSE|jSFvHim0V>R2`i;vfBZ!R9F!_`T6XWjN_@hP}xNzKlY zQ<9X@8qtHY2n?(yHKnwgrtvZNtX8E}{sp^w?V4TQf!fk1Yk&5JXW`ZV=v|C(kc6?% zYWiRxRgoFURd1Ycis`p_*MgG>b_=bVodv};JKKvz-OlFX%sO28>vl$q0|=BQPeAN1 z{YOpa=P&^?nLnV!%%AqALd(vPn}#U9??WZsret70JN}Qc?NFsOwuNq3sVRMGAYzJZ zn_gfTDSm;{t@+s}p1PgWj}EM2?XJ8tz{A5_n;`MJ?H>$$AI0Esma0uJMeV#p@C|Fh z_Sdz0{N$8s;8Vo&KJ*3}X=r%vqZT?}}*t*SqY_sK%pG#_VBDmY9c&OWXfJFm4724TaF>ocW>Rd)2RK)`w z>aAvHtAC)8)%L43L%Ol}QcobYR98cb3s~z}1FH?ktrm-#3h_)S8hTo+woYtAtQu}e zCI&Wk^|UvSwl>Ttn=-wu+$t|CpMt%S**x>~hSO zNk!d<;0y1!K^RfIUkA5%67Lfc61@=k$9SKJcQ@CvFI{fgeVO)%w4s7$gvDsfvzb#L zeD)d78Z4Q)NctCNq;3@b))~WRkDpdtgi?!REWp12#!-9nYMFV1Q!V}1d#Yt%mv^Bo zxo*fjS$<8@JXx`2=mJ^g*>0!E3KY$gC1`@C=u$1kf>hF*gMWMQ?=ZYW?ZHubJ?ZW8 zER=!kyy$cd>1|2!Ob4Bkc?lF2g97>fJ^lp{V4uOewQ@_+HAAlR?()>h^6MSvh7>90 zp&iHh82^r-ojPNPj{~L#jq??I@Gztrd%621cYowoP-J|i!TtGiG52D8xw-W`gVS_z z>|8G0VE3HD&1K#FntNWzgpe;cr*-#j)E!@Ly;no)kYVKgPe1Eo(Oxq?ZHBKZx(i?=$&>$n-uwKE0{zTCZ6i6QKk3$v+l`3{)=rZ_ep z7HGx)fN6+mudplUlLp^r>S3O$-sMws@&Dgn_dNgeoXs=_vdFxjW8T-A_YLO#8uNa$ zdB4ZJKV;sYHt#Q*_t(t(2j)G=7@p6(k2UWz&HEzrevWxxYu?>+fHUXMuMCtd2sgGh zbOxrE%_^HZX-28OuqI+s+Ag$G+_StlUE}-Qq`wu4wYR6Ejr|dUX)A4Lmmo1p0XS-^!9gKT+sLS>VxZJ54JPPOYT&GHt;18Z%7n8zUL0n$1 zE)S2!*2-cEsb-p?@1kU1~2^f*d~)V<2f=P*dp3yR;b z!5_R&k+Y%wLq~2!A8}m?Kp`(3%pjS~_5h?jkBbb;n}fokfew_Uu7gu%4(U6>ULO>J z{G}w1Ug8?;3x`}rhMl0`r0=5^#1I;bcMf8UxQ>!b68}WsG)~Do3XwZG@F6af*>9+0 zh8$|8zKURTBqew{io~y>t(4L?(2V1ZKuyYcCD>q<_%ZaEGJ(uG!5S->B$m2lFv8yv z6H}T=B}uSL`Z-WxdFn;>izt#wm`rL&U4ycG1DZ}{Pr^;xNRscQ~?d^CF8 zZD0~=o2=A(?CIdy38u*#5i3)_ZJyWI%dp zqq_jIr(iWm3zGZn5tvC@@kv}--iI*Bv@vyPF;t|TaR=T-I=n4y-VxMN+-Jbh)2eA? zPS9%&%}iVL92-4|q0?%#Ff8#7gppROkyq4X*tEqQm6m`mONU@^O}Bm!U1hwWtGg_Z zbqS=Mvoh9Y^`I{28CJyW(0tnYdQ2h8IHwC}^$>`-2ri#?p+iniTIFkKlzlW6#dFlHhT!z`5l>` zp&7756fM(cYUC9k!kf}640GbEFuJt$oCB@En+*?4YbV(}`$ACiv7Jv{DP<=K(oYhL z@YlNnwwOL;5?Xlofamn-bk1bD<@Kmme5G5d_m9VIWLefh_r0qWE>j*xGup*LOia$W zMj;{YfhWni-&QD7%xBBfZ&S!G9>p>vtF+n*gd71hkMYY12E8CiYdzr?f~xy0^*;Ddh$YzR*TE?fiBXh zRlEx=%5|KM6YSGb=PLllZ}OuZ5i5`p{5gum{iEQdW9BKMmN*XCW{lNHh|8d^j1rA9 z1!iPrlxpOMd~?tz^(E-WpE)8Ojw_}kfMt$kF(r3n3D78x0rwCK&>*u=OCVD?Y#E3^ z15Pm4O8q$~2eQIzNaSHGd|53nk-rkPxrR}6(YWv$mO{Z{(5 zNWKDDj(s0!%2{9~%WE5=vIW}C8e$u&vX69qiM5FFkAcGCtn|1L}fV~o8$Hb%*yF-ixGF@De( z69$bj(H&#hg4*R)PX7T=9KO7mo3Gk)tlS5Z7&=C*!sQQ=s(HB-msbz{Ejbh3ufov^ zZin6FHYT476Bx0q-pXxDeiOALySlBCykh$>z2|<2A#aS`hoNC5@>R?(28H|q2mo$B zgSDCRBM=2FSI|G|X_z43Yz*#A&WB@-x(ejo65Gd;8JfOoW9PBtsl+z9EZK|57VDM6 zlKrFOC7w)_$cxie$qd+v6D*RKYd$p$S|jFjdh3#(#gs-iVSe?#&2}=FSM&4r51L;L z>iGdC&JQqget@5wpIZ{2U#uiHzgS6ZezB6+{M?fG{7{lOzZeY4dQ8Q)#a^RkUo5YI zk@>DMW?v!?mH=LBV7a^>PU^ePUZomW$oHWo-!22^$P3u_20L>R1z9Eg5pR4q+CBwq ztO925xn0S57%+VpguEIjF!LEom7!D(5@enWjiFQx5+rI91qt{$LAoVzLB>jAf{c~K z1Q{!d3DPZz3lb%Xf{ekSoQ>d;H_yzXL>{4?RU23?D(t%Ap4#krB>We`?+8Dw9d_ba;-R;wlV>|n{c&`9pt z!IFD+u;iZoAIX`L1j)H2aml$Qaml$QamksI1j#)+SaL2jlKb^w$^9lKxh~jT-fs=8 zkeiT;R&0o!g$`jmc3yJWb zf1ZX19B~B#K>qnxOk(XJkC=u`CI13V`LIXKMaGeTF|!j-@Q6oL!v*pihrz}@!2wU8 zwkKlcM|Id6LwM9Ho~ItSUO$cSm{){gb@^BST1oP_SIpvkuhF#wUU3k~M*en9 z>ZDh6uK-au zv6INZL&N<;MS%L5j4=?VTmSuP1o}X**?i6_!!ft+^!FyBWO*DO<{ck0z{VDPmnq$OM6zNcwBMkmQiag2s0)u~;BL6}>(%=VE4E|AyTtI^K{&#JaW%3Gx(7dxt_|LY}!AXBIi<@<);2I9R1VtryBf| z6!}XWkK|7?_@^myIrTT)$oFuH>}8;wVdQlrMP9%_USZcM`#+i@e@6PJnfhbkpYoVv zYqLF`B46NqPB-`;De_;`N43ENDe}>=zzdCiyaD+zd@i!jgIGMllPPi{V?wRb|0&3W zi^XDt`%~pUy2TQMx24MKD9<{Bcc;oNtUt@(y{R&l{4KS0G~1sluOa_uoB9K(axVE< zY4E{R`7*u#T!Rm#${xyRwZVr|<=;wyyA3`9%=uno9#FM8R@@faDTc?=J+=oye(Z`%KCk_Uix;Y z%NOY{UpMpFn=Wm(zs=y=(&bj_|8~RA{&eZ3e7|8cbMgcaq{}xbk2_5L!F0*<&-}a0 zd=90{S17-`&3q51%bU2k+~dk4U9M)}K49c^G+pwTKL1|hkH1fsr)V$t8T>-J{Fwgw z9b3op7tx;a^t*=NW9f2$^SR&9`%}6cL4FU~|5f}R2S4QZaiiaXbeTl|__>{ln{*=!PX1?!9$vYnTFB<&5l&R$B4+eiAWq&I0F@ryp@^@T6 zUbZJ-8sJ~bDDCr)27iq4IsZS|ys?F>F+;B7`u%5vw`OG2HgsC~e=+vHEkpKjzONa4 zU531i{GBj(cZU21)YN8IfwT7Z`Xb@WGC(WZF|%tWj`5m0T=yu zZR>2}gBkK~^vCxNy@Q!@Hs$%Dk*cmAc`5au>F9X9J4=2@d(ARlC|CMI^V_9-C?e%mcuj5&AHuZmo!2?WQNrPkm>+46eY$6|vIXUj8bPfH9wk}b<<4|N6~&6bB4 z@6Iy#ShjqN{46#2c($ygeJ(S2AX|RK^{C$9li4yzd7f?Xscbouc)7v-Ir6Wx#}x)| z%aJc~J}V90og-V>ewD#{bL6G8uX7CEpCc>PdTj849C?iPwA$cu$I7e=!JzZe%ksSF3$G_0g>+R7T8Kk{m}zmp@MqCKxQ_VjL!Or}0sopUjaC-`2De1h?4y)#DjKb0dNpuKfD z+%+Q}<;p7RD`N1rTzQE8aHTUrwcnj9hf+RQIXZvYn=6k}e_NfCivIpw*-5ECbWH;^Zn&|VH2d@@fy zMS4Fl@#a*X{D|^;(8P~^pUk5EA2Ryd>XSFqeh!)WZ}Z8O%%2{07AXFA`{WY($72TX z^~vwiAD=LIzfayx|9;A8QSA@-g1z%j*@$@{cU5vX$u*GNwg+S6wm&{Of!y{% z=lX2az+#kh|e2m)v}i+nOvH1DZ%~ z%kmhxt*aBc+d7DxL5AGbADYP)@Sb??)yWrwNa}qEB!2%b--;33TQ@a)U>{MRIZpZvApfPYx(N`w;;F2ScW)40S_8SSvhVd;ffIH-(A(O{TlI?dZS zAH!OPW$2;&Vh`9GmZ?#JcpQ;pSQZTj_Zq|$_RFT(@c8hTh#JFkG?j9(3pxF;TyEiU zLM$e;E>9oJSBYC;3d4NURKFT941r#o90IZY77Fx=Z{bqwXY<=iOvZXP51PM0X8!%V zjX?9;xqLE?2A{$ECp8PI|q`wVG*83jvWMU3-HeB2H zi09r~&I^^95No|}hUacp{uRA^Gd(l3kmXt|E52C<+VT?+^Hq45r8_}K&S2xyJWR51 zi(RgOdHO0n+=DKm{M zE=A|u>yjS;PpKQcmQ^x*L>Uw(CZT+IK}gBn5?c^ehmSn9SPdw0vF92-N;8)!(lNmB zLMBYSmG=u+%kY4nR*v{)4$x@LcdmHP0V>jV?6D9|En&M2z72phz>nrc3@%DTS`mKVyC8l?MGH>pu z--Dq_{0Hq5F{%#?rux8Ost*jN>O#Mqh&90f1N(h#+E&3Wka+G*$?t=1>Z}PEWJGEW zmIXo1N2F;Fuml+&k#6`F{}~M=XR6s}iegY4k)e@a{2DetBGVkaTLl+$4ttVUf@EqH zIs^(D_POK>8WYJEG`Zw&hnfqTja0-sEJ_7ojUbe#uqNkzE%|N`N&m>gQ#Af#HXjwy zqJC+xP+l4=l$Qnz#f3&FFS|mKt6|XoKiUr{8I@QC^Ps2Po0ErOnAAL2OzX(>*Kw_6 zG*Tu`Vx)8@LEVm&?j)#M7x~3%pH)<6KWZr zqftOi05`*PpHnSM1RZ9$?;VB8#SD1S@O<5}0(ryI^Q_#jC*O;aMmKbBvP7;gJs)0J zG&UI==BJ;8Ulh#-g38DVN)J(jxqH)>V>I~yN^^%G1}Z^ARKotAb9+Hq{#SAooDSR`K#jvvFClB?DioaF>URbe>H)`=~TLwbPF4g0CPD z=gvrd5d-JhWW%Tam?pf5oFsOjI7#>dnA%6UJXV-tUkbmHa{&r7)u9Qs@(_%(Fi)Mq zaB9yXEEW0;%#;T))53fM{qmcjR_He{Ap0O}ERH(hl*s2XZsBkP%jGo?cHsyEE96U9 zE(;3`tdbRMJj%ct`2v=i!a@V<(kAp)CiKT3uV!L{xEHVk9*tVVcrRwI-nieBV> z%ffl7_74=!UBq3Q4Q82QWgD;-7wx@?2$P!Z zdD+lQMDd*mP5C1Xs@eBKi2exUNA{Dd0TadS^(8D--Ht$F{zxAwjHYHITY32x$xAMa zm@~U12~Huz9cEpF-5g%rU8HPy?hPi?JUOmhW@nLR=4|79&m>c55+z=n;hWIcy#D}@T z48v3z!|dVKOAoUrKFpr@Fni*|?1>MvCqB%c_%M6o!|XA`Fx$j1``(KUqi+6ZD+}Bg zA7)>Cn0@hK_Qi+U7awL{e3*S|nACINblZY$+={EzHn=V^wGFOIOl^bf5>s0j`Nd&u zp@QqfGw3w|@oi8HuJ2Z;L=+(q1lMbt<>EFtM{vFNy$bO!q};*v+V|#&C*T(@suDh| z9d647;s|6BT)#oltPy`!G&Plaaa7f5v{EdD`vljYRH1RTxEbk*OJ$8{z{2OEW^ox7 ziQxLn70p)hw&Gf&Zt+PH>!?*MFXCn7fSNO|F2yJF2)Uwry#=1&R=aq~gjh)dB0fIM zkR+(KF~a{f`%;KjUXcc;zggYo-~#?*8H!oS~U5H0$IZSPdiz7@TMTK_j~T369;*za5FrdH90V{b;Z z68>-7+*Hx(S->djQTb?5nEQNyn$JPD3Jat!0r#aljpb1Z}lEftdNg@me z#tDCl^AO4Up>%($zHWqC{b}k98149!ZR!OOus4{;hgbwNyP!`C%@RMPa`H98LsK9c z^qX@E%gb)T5s#r)>T@6y2o|4>1Wug7iWeNCEz=VBVj~#h-Rvu+$c4QqsWgQ!HK zOfe1$3YO}Yek-*r-LlpMC$y8~0b0#OUcvyZfn|e6bgtD&{uHlj}$5q>p7ciUQ?)CBvY!}QfHB7g(!fb26xO* zs7icFkG$@Dg=)lmDL~ij5$Z)D{d0G}s#^_ptp|^32f=@mSgy29iNiQJBOm-CGk6J~ zTN1PAkrDksxFyC>&QVryWlj>5j`w9O<-y*oP*`F!;Jk=`+MLwYDzvfGv0##TOf_P! zVVI9@q^{`XzW5)u@KK#AH}`20q@5&QQ6$)O`Ct;Nd7Ol*Jr_-^GR(f>Ui_j~D6`W3h`(SSf75&cUOtM; z66MQOW_(1SqCxs-^oDB0nNi1yjWD!NiI?+4%PiFEc~Sp~Em7|?jb^Jx49k}eZbS$o z+!Q8>H2?)GxDHHFH(1Ar;2h^WD3m27D4gs31J`t)^u=)2)xl}1K<4;RIbGc%U~qjW zA8>}*@r#UJEBF)Vn{(KaxiZO($qdeS0u?UZg)UvG){8~z<_OFzqp8~pp6Ohp22HcZ z_=8KFaIDu^gL^F<)N7gBOSaQd&Q|?20}N4PYJw}BF{iloQ5R}Jth z`P^s(5|I2TP4Fh8onrZW!aZiV5?RK;e~W<=<*zu0y@pE&tR(n#rxAIK_O9Dw%>0_` z-8W*)&^Cr1K24f;x-*x(l=U}_a0Bv!6u@s8Sj_3)$j5rE1=2^k-8^HxAMHiGP0pD+` zAc?Br4^)VdM`>U`GzMm=u^%*Jdli>I8pNfG(&R-&==hM4L#9k&4Ek|QEJ_iFj3VHj zZJk!|VFQaZIvV=ou!LMc;<84rT~J|-s|n6>=FGLM(oOh!K72y;MueuK*QxYc=XG9R zLUk-xv8`wk)7>U#Jt9_7A+Mv(6gX>9H^a!~%5jT+%ImGlZHm6axo=a}U-TSJV4t$# zqN^Eu?^0%4w3l{&P+3jU6IAY_N}pB%19I@EDp(gb9NGJ?Nwt^up^M+{R()HS2? zVMO}iGtSMZ!t=6)>Oe7uj}=h z^cJB+?%+UgDIOS8SCR6+4Xlud$?i!)}Au(a(Oyc_a6n-!PrQ$ z^q^#GY5DJ{rRoXWP%CX;Cg)EY~d#!*ugjs$)hg^%y2t zK4xll6%xt^V6S7QGf#sZii?K>&Cp1Q?J%h^GrPeI!nwErnjbUkGKF%*k4FPl=$3vF zfbPbercpqoAblQFsZoiQIs_d9V<%qA;eHCk99yQVEb#&u89P}cA^t^Ft_R2zhcNiq zDcV;2*7!<{w;$hJFs^L+Jka?XY-e0KFTr*o(pYYdo3a3i3I&{Ejhjm74fbE@08h2X zO>?mqc$zhCx{H&OlmaPe(d3VpIj^2%E`YfN$zo=2b0OhMRfU|Xpt;AAx=B_~lNeuZdKGTs%@1BhcK z6I>BJ3~iN6Bq!9!uV73ilQi;+U%;zN$}|dyGmu`COxCDG42%YvqEWf{I_susR3Un? zOqa}{!7`PZc+4s7ajF&~h^(*?Q=`V^Ea?R&rM>EzJ7x?wfR)nAR7)=Qk3c4+n@wZC zJTDut-!u-$_aWQTEzX}D4pJhw!7@v?I_d+N_@v!t%((Pgr@D%@HL@A(m2NYnTIFkF z0Jj@b-STFV+UYC;hdkxJ0?u1{qr;E&Drf#4N#AUo6{pfk#8~Yy7d)wJ%RgcDFTK^N zLw7uBY0LG{ZRzc5)lsL?capqby78o;EuY~uziIj(vE`!y;Jck8uxUhUTh@*OzSoR5 zV9R<;vGhLE{-iC3AW)Tl&snaF8_|~ zAwO6ZHUExmfvuK4=B(EIJMz*@;3ph9JotB{7ssomPrCd#a?v>8r(Av$jy z$B{Ueu}XjA@Dt6DpGV%p{?EDNd*l;{U8T>v<9p<bEP`@W%f%qwm3|DmZr?v?kD-;bOPs{MdhewF(E*qy&umcdI(KQ;BIywc%# zNgh3Z{}5To{>dIX9PDF=EM>#mhrt2% zF$7`zT9|c`s8)Yzrb&XvlO(9}BtgYtkEgCF#3aFwZzrkG?i9R?uv(h!VOYo!1=-)m zq_UkNEc`j#gJuU|+XcB~%}RY70zBpmyoDy>C$J&kXkId=7mo!h;+Js1ZABVL`htc% zTYSu>#pXF#E^Qpc`#xCkjZ>GSu_F2Qr!2x9kH=uTc9P(6XOj2~?b5emxhVJ5J6ljK z?_#I39j;m!HUm#e`BpgkHoTBaIL<2d03M^oZCD0;=NRah`4Fn_T(dw2Mb7VHgIzpmur=;r8F;41*J$o$XUb#6pw?s{J|;g59$D`Dxx>${ zX{MiW>BuKAhVLn}gAwv18F|{&X3F~~0{+6(V$*?Pj+j9M^1RWgd`3~#O!LEVj3<~x5Ypq16ZznTMbN;x3cfmDnM}3-(cTsJoHySxb-3X zUTa`LK7zE&x6L#zkq;7XH?Ul$CIRj+utJ`R(CpjkIf*G@rIsfU*?iY|^oc=@HLl+G zW6!T@G53j7$|3diTG4MYY2U-1XDEmCrT{H}q4(^?P~G1JY8H9j8~=}x+L@|~s{09+ zWM7TfAG8t9kHDD}l&9<|}-hTKZH#K2;iJOr@Lz!KR(w$CzfBDBE=^^ycx zEjW*ATJGg_iMkWaCp+|M871c9-T-aeP+FqS|G)Kx_1jhbxoFF$Mn2bHA6)XId_FP^ za`(oX^RW`$oFn5~vX4IJZd}Rf!#Nit%Mylr`dSaDwrZ z^^=IT;(4rF1f%Q7^BJ6DZG%fOaaW5x3U8B{af%2N6op6nq zk2QV#Os%U{QN{6QX|ztf0>d9~KFr=O{s!@kKTY@R7C*syJHArSs84)EUd%_^FBiKw zqd9sZ?YG5TsCfKb4X?DteZ_#MYj~9{b|J|ae};xzY|)(xSVg+re~Nb~;d!4fCfsI= zQ^-)qSCa=Ou)@o!%s2UoEryo@F3|9hE%@-$_=OrCw#8#)W08hOZ1LIzz%w;GYKtC3 zuJJV*9<#;k6kx4}$8GT|WM1PJuTkR;*y5K|?h=a06MVxKf=t#?6Q1B(wkV7e7hDbKGA*^dG63${mu)Y zzJCclo6eR@Kj0v0kLIZGhGbeg*z> z`!mZ>lq9C(uMTDWaDd*r7o5ppab;$`YH<$!=GpuxKs-=c1sB1Za<5WE3SPpLbGK%0 zR?V-*-xBr7Hhx+lvCCAXX1P~q-lLj*7k~5A2eS2;lO#mp&E1mC&sdaAOobtr)j*?m z*-lV*%1%NDp0aD5P@i%pi2x2AsAW(jA z-Q1un_zmnUcWh26iju@+{LQoZ84S%OozE)xdJ&q;%BfRLmgBF!%hDcerf!?4dp8A_ zkX&UB&p!&Lr{H>_BAtF0*w4&ensYxoWvuPAa+l@sDLkf`-O(N^w?5}2hC-OM3J!qH z+_Q7Gq9yL{An4;(XbJ!FdFUi@(PGSkCe9DZt64Bbzilq-c*d3_-bY26?#SViPl7T( zx276rSd&*_;AENe*MGZJx=iwn_; z1w%6@Ot=k&>gMBwi9F+H(7q7w6DH{|pu)Eh1c1ue466XXg3!sxgaX6R;)Ka@$P zvE+FY;f>Xar5wa1GI6{if-nC=x;=5i_t`!$vAl3O+CPk>c;b|Anf3>fxJ{hO3a$+| z5lz#*{bD){b>ei53cx#u^X|X|CeHW^DV9$PHn|ih6^~IgEKvYHCymjJ2gKbl!AWD; z%;fjD^1hse!g1xe9O^BbdI#Q%kHdD#rp<;7y>=lcQhYm1zD#{HnzxWMv%G(T$&}5A zve(SAS%1cRfWN>}R>4co{cTLP?6mo6W~0TgNuW~mF+*$OO*B+`4B*@MB&uiMM{4Jk z%^kS{lKB8^m7UH;q!!KsI)ln|f-^1e6!=V8)hV_wFRQ+q?H55>W%IRsEWszk$`)`k ze3I%-*kIX0YMV=XBV4d-k*1X_e6Z58GfBb;mWnb&%(9xVDKts*Nuc=jSjpt~jqGE@+HgMH;K@Dc0<@rua#6po^WaZ~#_vZQ|<{R4zA_V!1W@3RC`Hly@g~ za;^Zk*O=Ozi}4Intk#Gs${SJs$9Q=q zziNapCBMfL!0g`|umL@?A^Et-rdXAKNo>ho2w(j2)LF5XR^>=zcZ&9;L@>jEAEJj< zQH4J@qTkG^*n-)&zK2VGc|zrT34>IAngFcI8xl3WFA?0I2&xkXo$I>6vlx_@|kY$8deVlCYTD)6R1}sfC`D1eaEx)Iv`> z14w(4`qDq+N$coI-$0e}q;>R_6F}ONRON*THQJL@ZACXmyKgm`yifPJgzob_G|}GF zL-=<>=6(xd6iJ&SG)F*)1 zEe6nlF2WRI)Kjmp0#k;IK(PpnwJJ9x_PNpkn$lIVK33(A5*k&$kO=;4fHtLr5Xhe? zE@euaXi7Zoth_F<%gqVEs@#+yk;*NJU|%9&X3Q7GG1s+&&zVw3%#^0sZ4;rdm9~Y* z#n&_DeHFN|FFN0~oRzekAE8WH&PrO&TR_@!&ZT;d<(x~)ISV$aEazNW4!;LqTaK#a zW?oy4s;xMV&I2$}Es92pVmj7{%F7KWO0U->0IRYr0aaEcf~5&ycCP^+K}ltp3IbuW zC*sb%l3)MJmy(n_@6So9-)#*a`x#bv`%c^arMZht)oL(n7eLy2wYrm%T99HSbtfhD z6(B9CyAmXI7bW!&s+6SeqNH8|(vnh@ry-S`sa7jhy94m_2TL&8cbM~~c=$|S#2tmFzXV4Rry+i7%ERDf}|WxUv=V*C%zPzod9MpHy}TR z+g=!${=;aGn02KYX^y?zo@G^@m)I?0z-)B;v+1^h-BiF^p6uBk>%1DD45+*`vGXkk zG^2CyLN#WxXJ4!XhIS1aLnp^1WmSG7k;T0ppMcO$l59`$UaOx{MjmvmZpT znYzrYJ~&}BI{WzP7i*q<6uXOQ|43I4qS{PE^fpWFpVR|t)%JI=0G6Gl@;sY4iI15s zen)aSqFGtUCbF51_?T?z%6WDsR@c-&*m^)FB|ddaVZL2~s8V)`Z8H_oJ(!eP3v50g znL1$GHj@$kd7WzeR!nwMh0R3GW(MM8V;>V?mkU3febNS-xtq;g#K*SQe7hI^H=)|L zxmajw3+z{+x@i|@*fv*#go)DiAdAo7)zkhc)S02p@UNTjlmxZ?BT#!ns^F^Pta5DoUv8mKU2)TArJY1!lK23B)A-2kLVH0TlxQu*Up)}L(Z@IeQYT;u({9PK zZTeb#bXD!+JrcCpgXMYJ?Px=n(rvhXR1Z)lG@NJub`%=+rKm@LZJMEO%%Oa0r>q8D zWZ#;Pc5mCZu4Z`i@fZdCW!Yn7PO3+akXd%Nor!^+Vk^4vV|!%0ecD)*~T#w7>iRLWAvbUj*W>&!Er_+3Y1U?S}mn!c*Q;* zAAo9-+}Tf1DuXBD05+8}QJp7wUAZe*RsyLM;P`X$3?3Q1*!I`BZeKDI-A;io5Pd)DrSaePM_4?*4f)Psim`bGJfeaqJO>gOPfSC4Q^q6?6j?Ma!XUw z|5C)ygiJQH;w`)Jo3)eq8%dMrFT)cI2|t(WHjVvMQdtuikE6Z_VRTb>I8xTi3AvY8 z_o8hbVH9H4k!W*scrC6Whe%rses@+kHou?i_Ca@4t?TI4wXthW0l(a8sI|4Ub*}9) zjiSx?fe}*?Z7_s6G#LUHo#ALRJA$}-33|=i#j$IYQxa$l7wRGxcyDqqFicPP zhK3$p9ND1XTg-b$i^dHGx0?4R7dLb^Z_-ULkv4K~hEvxVsEuPoo4OH!X^&qp4)+;u za8PUNH}V1`T6$Q8i>97U-L4>78=AW|>SFwcFc>$T8hRpOb3MOW|28mc;Fj~N`P0Jl zdU_f-s4AGB_?yFSq5An^vZ(vu7lvn4XapT6&I*EZXQF>38Lc?so~|h8j`_}M>}_k0 zPHO8sohF2Z$8l3V&!?6xa-FI9rDEz$mg9AjoZ@V}d+?r%cbvd#fRu+zxoyV&!{3D9gr5EAE>+uX&SK-}Gawc;SCrQ;h6M0?7Kca=zo(>Tp zdQU9!G&({1`(Mc4IF~;(^(2XdnoZAv&EQy%cFdX+D@-Wk5IDT%2w%p)M$G{3%q{Y) z72goAIdgqp$Me(8yTRQvRutDi-aJQLuNKdEHi<_(PvbMATRrK{RNE6N^Q1rGiHOx6 ze170He7i?+j`}}WjfPNDgq~&f zg!${r(J+3?na6asT|I3rI0bC7YI~z=D?-h1&}gi5gDH)4H#8-5g;j^}U_*BYB0?zK z)6>~ytq+G`_W1c`Sb4dAo1)*Q>bGh7ZMqe0Y!5ZSgB$SE+=0by(o?uMfi4nBakp5P#4c5h27I z4z-+RQ$rIzf?M0v)zRIC$lPMpHaB9j5rmVCA-bv6*uK6u)YaaMb5sxksrrS>>q7IF zEnT^A^-3$$5NV>+LX8*{)2r?5?Z8ibH&KM0%?&-xRxQNY)YH}-weY*)y_ik72S2cl z`9ynqn;^(;@YI1HG{;vafj+(khkrLHA@J#G$S>LkDjl2ftL8=uwH*!k-SQs%)V9^v zv?0`mU*>LW4r@*sZmm!~IImr1wT44bb*~Xov@6;c#V@BXUwG!i)%7vCYCbv}I>OCr z7Ky)s-WqBTceX@Z5is$C>OJ_0?%L+A$VU9IUTZjFK|j=nRt*9{YggC$5Q0EcC<^(3 z+s2-T&Zbr?66(gUk6V3>9jFasj=d497E-24TDqZ>wN20|t3n+OJ?k+>cx|Y?VG}07 zUj?u22}7DaTsy*@8>~pfhA?U)QU0tt6^{7HpFuZv;wqx4tGx?f=Z#-N?`m9Ub@aAJ zVTpLSMvF%M-gqc72t_UY%tB3#1$99s;5lM7hhf;5ET-6kpOeQ#^z8cDy3Fst*G5`l zg`Bz4MPH=1QOzAcPDrg`v5$lnT8%1}&PUURCj8PorVjx&t%uHg;eFGlLSRj;ZSBoV zdpjCwMHB<(jGs~e(qF1?g=Me6Z@eor?u}5-FysZ*5m+<b7&B(1pQ8sB7(7EV)*s z7e=l9TP=++-mXroy93`uug255j6_2Xuxc0|$c7jnv^#+gRHkMelSKCh+K2^j=b{^m zG_*(KA%tFw;oGYPfb zkUE?YN(&8kGP*0mNQg$8AS?{k$AKbkjmnopFu&%m4%gK=vr4U%5QAvbxSyV(kK}ua&0UXHiPg zu9%Os@~SnwK5<31LM=*g3`wDuFsvF0P%NB88a6h-?0X`ZiBfgb`VfuD3ipK(kue6< z)6=EI#P~%ycR-bqR^>AYIL(y8^a@uBEj?YmP&Q-%SyQ%*_c4nPH8(^X;1`h%(GX_2 z309#^!enzHs0;I~1xxMCjaDswkh7hUzk6e-1z{?-b}+5!YNtIy6A(0Fp9<+JXszq* z=%(X`VN7(#P+ugp0ds^YV$tbhaDibU0&|_hG@^(#^ti^ZXcX#XAn%1=g`1~>5%@tE z@|>TT&_MoeEv?q3O|;DJ-bUU`gfBFPTjBv*ttYjO2qNq0y%+)EsRvA25K1W0+O`%U zrF$bardErth_bfM5LS>LWj%~NO&GnSt2v^KS{bx*BMZv_9N9$F(2AAJylca2+q)VN ztFe$lfZ=W$QClZhQ2CFzP-Rj5g=g;1!oD@w6~(@w@_rDd#0 z^Q%>6xB?4X10u5Wo0bk87pWZ`x_iQXu!jgFXp#bmwgHi-R>w{iB4M3fSP41pu9?$m zNQ!6jfbdO2+O&yG!phh7DCcetBZR@4Er>lvYbf2RRyUuSz$x0(z7` zp^jSOj>3dKEDuVZon0MJ+hO1vw}iqBwJJnM zL!EFMEQ5OWSOf{e6}bjNEO?9*R>9bkSgNpY-r)9Qcu>m^+)!U2SJD@-C@#N99JH|M z$8AxpMohgBBJqP=-J$4ux}WmTu5PuoN39MlyWt+XlWS~P<{3m(9tE}{Mxsqv>L63_ zg-y>|Sd=n`wo4hJOa_FY&P@%&5E3Cb;)QCLVGY3wPpXJ2%IPrU_6Wj43zwPpO$l*Q zJ5#u`sS7(rWN*ElZMZbK5VUVyf@BYJYiJ4UsURPqklmaDzSh#U7O9NlJ%n^ojgB;d zSzdk3ycG+X>#bP1eAWDwdKGLzL`PU}40HF0JVJ%Ha8p-jGhGI`08`Egt&`@^(B7`X zLKu7fT22f>2%nLoyy;Arq8Yw!4_}>$A?g+`MO;UYhOCF{(k2zn5fz%@+$LdA>@h=X z?8VxMfI)#ZVuroldSM8KkS9@^p=blbor#q3G*+3C8&cYu!8fFlxS%4@Yj0;{fNZb? zu3mxEL20s!oZ@RVjnDRWBI!c1$_0^**h#r_qX;uo4vpkVtF}G7A>3~DwRde~I<}#$ zC)x|k!nzgng!$D=!y5;M@I^gc9o)4dMLTO*J(r7z& zCu*^zXyPi>R-N08go(952WMmhecf$XeL<%79K=l+gbtna ztLu9kmxMRfGKeF7VNFN)RLix|CLCBX+8bI6!$#uY-nX`=BgC9PVKd2qqC8MZg@LpK z3dA0w4@Rkz)X0Y35WajB=FrsxnNbg14VoGMVXnPgsvEnSH>tgsQVIBHltfOat%idm zbw(ls`q8fS;ZB+!l*s)M9E#xrrqR)|0iiawAH@=*1DRS4`&_SN^i-J{mEY8-wYg$d zb=|_%wM!Q*!&(VWQHn*|3Yo33TC1qYo<3z_2oY)%MXA$PVb0Vj5=|>q-Gvm5bH;vC z1@INo9u-At5~1bchW7a|F-Thl^x~YLD*|oMu$H-;82dElhf%0!hyffKqiSl!9z?AaI#sKs@q$kiNcwaVrqpA0 z#yCy|2i)bTe6vl-o53^gq?|%@L#Q)?)PPdZyLIlasJoop~tBq-DzNT|Mg2gG@B zjWhX{8o1k>fatYx#mafhSGwCXWy5IS-N7V?!L8S7W~vv<7O;3Qx@ZqnNs9_C%3e%T zt9A(8Ghn{PYhVcM)2vo##X=9vwX0jNyoh4jFJN@dZGF%lQ(^dv@e8$VMtaR!5{eAo z61K*(d7X?*^!gv107OqwpA&RV2Vc3o}%(sl?IJ)&Waijm3K2f(6S_iadyC zSVlO}E|tYHV^u0tPK(`gyE>Ny2`+&=BSW0gM|Myw6Bx```2yz1Wr>yt_e6v>EAf1u zBH{o_=Sj$yn{YzYi<8Z21fj0BPTb)Oakq+&Do5AHC-IaP`6o_2VH(JAJJAbymkt6d zGr?hZTbpw8=H8ADWZCge(t?F%k3`SF(FKloaB?t6TZmfbxLsw&>f``-7nH&n50U7? zKxs&k@FfsbC#9ewD%vAEM0i88h(n7Oca2_+#i)fFyhvmtOh@t9+l`5_l;=?}(Jn*) zWDA%!bf*#v*9Xj2iuX6L<-z?19wsUpt0B=&EU}#}y~t8bQJv+ks@xgH4*Ee9md{wl z$wNENab*>!Q(m| ztCUTnE7wGBz1lY+hd28-<+{yX>!4_r)nfTYO5GX7ZF=aVX#<>BC54=>#iLN%$iw~v z(HBRrZ9PaAcu1!WOsSb0QJ!LT^kBt-FqvttVO`AJ&ZZ+Ilf;;l0&PHL+=8k|mXl`DhqM<$$f!XS8W|P&|fFnhfzk@I2G@Xif z2w&wk%Bwg)98tge4u?7grbp65a6?1wYBp_B@u^lNb5IjE1zkPi_~~_r(a0d1*2$vs zgB7*bS!bSub6}%?m35liWoOMhvv$5dfS|jEH-dDOa#0H~tpmZifj4MT)XE*LvIrAO zHf+SQM3Yt~3X9T**UHKo+Tp@H+@!y%_L#N0eZc!w*clrOgpzfl@7}cG`j3dB_6u4m zDuk<4L>~%jGj3?dS*C?>h}%dDs&VFpJp%kB!8cW^#pR@h4x%EY(#2r!*NFjnR_h(J zw+NCQoU#rQD7aVI9;Xw_{B?9z^Tmlf&MO(PaFz}u{cD=4?_TrAA-N6ZWLfs48K z$y0xw^yx?oIymXj>jd6R)@PPnTCG_^j7Qg-gPtfp

5+TI)F?PPKa9uNV$;MQT^~nZVF9Gu12R)k-Yt%%C0rW zuBr;}=|vnA=(H*fDtZGo4hh^T1!@(QX@_Zh`(mI|XcOReI`4L-Gt8Ztwtz;BiP1WpT#kVQd~bI)4o0 z!~I3fwhskD0$s^9BvQnZr15K(apYsB7C@Fj_QN=FC7c!{b}!&EO{L<{o~y~67LvkJR$B?MOPns7IjjvFx#+(+5_ibT%uEpqYKmM3H8sY zYRpm9u-(cfIKEMxDSzO2i{o%1VPI63(eAIwAf6aYfmH&h*V!P<~KWf>j_w=82aSQ1nb><{opmbvAHsY*_@kS znuhNK^WZzcXwcM`z|FyyRM~KR$~YX@PF%z0ddV$eN^JUD=x#AeUA}Z9DqWnXvSDu% z%hy8I;!C8i1a3aNWTAOzGx`{~b!LQZBo1=}FJNIVihfhtj+nuWi7{Ub*?eMTM!rJR zDc0rtE?iB==p~EJeeeQ6=tZQ4pWvXKZgZ75ch z&{P|-h9JsJU&QhTTLR4(B3v;GzBA;y(=qfEf(R6CUO_S}bZgXU81H26LHxaoCZzP_1l}7M+fr)|K65xz$FZSK4ihN?u?4nsmRJaj=9r>Y zicw*1Skz;7Xd9qK__E-FkDgh&k!+u%ZoyfJ^-P5V^4{nrYW41mrpi7F;c6S;T$?eT zz(~@Z`^KB&3xyI-VL&Yib%C4Mg7&x!3}b?R0s0WQK-pt(eu@tIK|#rwIgXdRAB&-X z8e6FShv%_=Cl14n(C)thGQ@Uq`^T_=Xm0j{cOdks-5>R|{$%ZDc%W?|L~khk<&j>- zodHGt7(NC%Qgrh^$hIYF3}6PYzyvFfsV z23dK9z8u9T>;njA<1FS(VZUH9V-U7n*&kRevy4ID3Wjv&*hS2gI?x}W>O?apjVnsk z{%G?pZN+lqb{xsfls^O)IAds+`)rCk^%KlS65$e+Rjg7F4n3IBo*CS7-2~{RJrN^P z!!dX$u$WtnOvC$-fX53W(}-ba+g44eZ{gntU^kuSMkp z0&yBb0)m_Tl)8|$hn*aIjeZNq#B9rg7%Z3W;Zj$EI>~m?09CXsfkY1u7AD^dD3hkw z(hOX-M#oV4H=wU^^2oViTDK83;%%x2K%c|5-56y~Avy)y&f7+|GxEZf!e|Z}_gY$2srghbCbWJdEq8!;J+Fb^u0TbsLv5Z7P?8@(I01KncqVT^Pm z0oaBvrkD&eS|8Zs2G?%d)&T;3W}!MDh5>#O+DGl+u6$D`j0y(hS|pudF=E%0?~bWwCB$`s zu561jQeB40Hup3~Ksqb5ykcF@6ZMvMjMdo{M;XsgW2B*ye$ zryXRLj~%e>m#nHlF$)`yJ{I$7WCL@Ln3a!ev4Ftf7hotEpQJC!w#8efzRJje<`u)3 z&|zIT1Yp;yaI9N-97GVTM|p&_3)ZVVj*SRbSDq(2c%i;N<#C+GF2L3+zb1ukQvM#C zH{ewZ#~u&5`Kkkfyh-_cQ`matzm~%Klz$+F)s_E73d7&9hz&lN!g`c{IE8g9|GdMj zgAuj-i%(zJ)fM(BE4_grM)-`g!?$kn8z|qD0 zwa#y^^|UM8yu<4_;b~X6UfC}uLtN=D^>l+*vC-32;g+DhA5_38mW5Zs>AKsIG{`}JUt7dSgxAY4!y!zLe~+FlhdEtUDb z*CjgY3OIe6zw|m@b8uG}R<%NlVZF+4Okq9B52Ube<-eT5*2kLDUyUD!PVB;(RaR)#YgUNjnOL*RjwW^8r0lYH zA+A~7sfCJn#}CT#x-zNj=HGdCjn{?cqbxs9%BvPC)-3-V3$MDTT(ipeIV`SO-SOi_ zyg>EJs&O>>5pOK*eQC{Jik|TJS0=daGFQ=X!%0e-+=j)60C{Q!XdvuX0IB@>hN!g>@@`Acd94RrUYK>j$|i zE3|5I72;15#1UmTdV8QkW!05PuDVkT73BIeulD7n`VznVwLf~sQ<9ZYB3i2XJDgQzW>r?*46joRMr4-hy{9jU7kMb|4 zFdpa6T^j2x-Zzk=vO=pSMc@Mg^I300W1SsK%5>~@fncAJY=iFoO!PdVI+ zCrKx~yE>HL>6}vnhJW&tmw2E=tC(+mn*MgeYj{0r$(Z|(;64>vXczi@v3zJCT#EY+ z4fwHQisL#lhcg%x4IB?|FwSWF68Ny}&bG1|<0mZ8%2F79_Qdz&b2lwKTZG?-1wFTb z4TgrDHffkq)tJN$p3R%#+L)M*CoWpk2sTgdB8Gc%3`6VfiQt9Ht6Bp7wzI7D-e(Kb`@bC7F((T@` z$_wAY_NhJ^ufl)MGfEFSZK{vL@AV1>kg|yI2i!VVdZQkA`Qnme|4wE4f3G*7l+Sso z|Ef;uK0Nzx2LDCJS6U}BF7}^o`(uLa8pki|R(;+0>J%@fb?>m+7rw@S6lJscefZ1- zFQw0A@Hx*#{NsSJh@1-D?ln+~FSq0_^+P~@V@vG5N%{z1o=rRUN)8IS1T=|cO%y>&qFm3?0z+wCs> z(fE}F3YDW&hXXfA$jo`?EmgMNUdz&A_rnm%ROAy~0yjek`U4r)Zok-~%(+xoEM7svUX&qn-TUF;1P+E+ar96w(wgk#@} zknhSfTfkTOPjtXv_gE~^qlP-*uK~O;MOO0iA4i0pZ-URq;$0CV{(k1?G5rUX3tSiC z|7G|uy7%P~$X~14KmHUR;JUr=u+W`YsKaj!Z(Djywnz;pc97L=NZS?+B8wdH6enJYMGMU2v zu8_{N*71tL%k*#`;H+n$pg?}x%9rWtmw;D|tJ8RYWA*fe0oN07Yu6v~TQv_a8@x50{S?Rb6DwclCr?=Uas&JxXw`W6k;t`p@A|;1_6J{cxW1#M9W%PxtNMRF z;8pcs3OMW6#ATxeo9REfL&V?4%1;6vt#hO)~@E>kyZ=eFhcYOA_;k%bdHB$5O|NUixLRY zL-VZ|J=+>z;<=pB<>QFKK?D-MRx#e#xc;MzwWuhBkcFd&OyltdhQ%Q?+dkfbxHujX zYPn;{?hwW^gO3YkiYg?`y1f-&*BELcY8w4+wKxdn$J_Hfkb_gPp>_3vJ)3vqJVmQD zvU^Y^w(YuR%jR9Jc4Xw6cQ(30gj*Ij24%$a@A)3S;g=W~zhq=*(KyyfjK41idD)|m2QYb%t@KS9 zLt!wy#kRqD=w#j6v4W%Mky-~4NyPJ=)yK~5RaCx+eB7|Lgs>^J#293ptRE!>+t)bq PlVQ}Fgjr#zer)G|faNO6 diff --git a/scripts/module/CBitcoin/blib/lib/CBitcoin.pm b/scripts/module/CBitcoin/blib/lib/CBitcoin.pm deleted file mode 100644 index 38e8c96a..00000000 --- a/scripts/module/CBitcoin/blib/lib/CBitcoin.pm +++ /dev/null @@ -1,86 +0,0 @@ -package CBitcoin; - -use 5.014002; -use strict; -use warnings; - -require Exporter; - -our @ISA = qw(Exporter); - -# Items to export into callers namespace by default. Note: do not export -# names by default without a very good reason. Use EXPORT_OK instead. -# Do not simply export all your public functions/methods/constants. - -# This allows declaration use CBitcoin ':all'; -# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK -# will save memory. -our %EXPORT_TAGS = ( 'all' => [ qw( - -) ] ); - -our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); - -our @EXPORT = qw( - -); - -our $VERSION = '0.01'; - -require XSLoader; -XSLoader::load('CBitcoin', $VERSION); - -# Preloaded methods go here. - -1; -__END__ -# Below is stub documentation for your module. You'd better edit it! - -=head1 NAME - -CBitcoin - Perl extension for blah blah blah - -=head1 SYNOPSIS - - use CBitcoin; - blah blah blah - -=head1 DESCRIPTION - -Stub documentation for CBitcoin, created by h2xs. It looks like the -author of the extension was negligent enough to leave the stub -unedited. - -Blah blah blah. - -=head2 EXPORT - -None by default. - - - -=head1 SEE ALSO - -Mention other useful documentation such as the documentation of -related modules or operating system documentation (such as man pages -in UNIX), or any relevant external documentation such as RFCs or -standards. - -If you have a mailing list set up for your module, mention it here. - -If you have a web site set up for your module, mention it here. - -=head1 AUTHOR - -Joel DeJesus, Ejoeldejesus@E - -=head1 COPYRIGHT AND LICENSE - -Copyright (C) 2014 by Joel DeJesus - -This library is free software; you can redistribute it and/or modify -it under the same terms as Perl itself, either Perl version 5.14.2 or, -at your option, any later version of Perl 5 you may have available. - - -=cut diff --git a/scripts/module/CBitcoin/ppport.h b/scripts/module/CBitcoin/ppport.h deleted file mode 100644 index 6d650f44..00000000 --- a/scripts/module/CBitcoin/ppport.h +++ /dev/null @@ -1,7063 +0,0 @@ -#if 0 -<<'SKIP'; -#endif -/* ----------------------------------------------------------------------- - - ppport.h -- Perl/Pollution/Portability Version 3.19 - - Automatically created by Devel::PPPort running under perl 5.014002. - - Do NOT edit this file directly! -- Edit PPPort_pm.PL and the - includes in parts/inc/ instead. - - Use 'perldoc ppport.h' to view the documentation below. - ----------------------------------------------------------------------- - -SKIP - -=pod - -=head1 NAME - -ppport.h - Perl/Pollution/Portability version 3.19 - -=head1 SYNOPSIS - - perl ppport.h [options] [source files] - - Searches current directory for files if no [source files] are given - - --help show short help - - --version show version - - --patch=file write one patch file with changes - --copy=suffix write changed copies with suffix - --diff=program use diff program and options - - --compat-version=version provide compatibility with Perl version - --cplusplus accept C++ comments - - --quiet don't output anything except fatal errors - --nodiag don't show diagnostics - --nohints don't show hints - --nochanges don't suggest changes - --nofilter don't filter input files - - --strip strip all script and doc functionality from - ppport.h - - --list-provided list provided API - --list-unsupported list unsupported API - --api-info=name show Perl API portability information - -=head1 COMPATIBILITY - -This version of F is designed to support operation with Perl -installations back to 5.003, and has been tested up to 5.10.0. - -=head1 OPTIONS - -=head2 --help - -Display a brief usage summary. - -=head2 --version - -Display the version of F. - -=head2 --patch=I - -If this option is given, a single patch file will be created if -any changes are suggested. This requires a working diff program -to be installed on your system. - -=head2 --copy=I - -If this option is given, a copy of each file will be saved with -the given suffix that contains the suggested changes. This does -not require any external programs. Note that this does not -automagially add a dot between the original filename and the -suffix. If you want the dot, you have to include it in the option -argument. - -If neither C<--patch> or C<--copy> are given, the default is to -simply print the diffs for each file. This requires either -C or a C program to be installed. - -=head2 --diff=I - -Manually set the diff program and options to use. The default -is to use C, when installed, and output unified -context diffs. - -=head2 --compat-version=I - -Tell F to check for compatibility with the given -Perl version. The default is to check for compatibility with Perl -version 5.003. You can use this option to reduce the output -of F if you intend to be backward compatible only -down to a certain Perl version. - -=head2 --cplusplus - -Usually, F will detect C++ style comments and -replace them with C style comments for portability reasons. -Using this option instructs F to leave C++ -comments untouched. - -=head2 --quiet - -Be quiet. Don't print anything except fatal errors. - -=head2 --nodiag - -Don't output any diagnostic messages. Only portability -alerts will be printed. - -=head2 --nohints - -Don't output any hints. Hints often contain useful portability -notes. Warnings will still be displayed. - -=head2 --nochanges - -Don't suggest any changes. Only give diagnostic output and hints -unless these are also deactivated. - -=head2 --nofilter - -Don't filter the list of input files. By default, files not looking -like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped. - -=head2 --strip - -Strip all script and documentation functionality from F. -This reduces the size of F dramatically and may be useful -if you want to include F in smaller modules without -increasing their distribution size too much. - -The stripped F will have a C<--unstrip> option that allows -you to undo the stripping, but only if an appropriate C -module is installed. - -=head2 --list-provided - -Lists the API elements for which compatibility is provided by -F. Also lists if it must be explicitly requested, -if it has dependencies, and if there are hints or warnings for it. - -=head2 --list-unsupported - -Lists the API elements that are known not to be supported by -F and below which version of Perl they probably -won't be available or work. - -=head2 --api-info=I - -Show portability information for API elements matching I. -If I is surrounded by slashes, it is interpreted as a regular -expression. - -=head1 DESCRIPTION - -In order for a Perl extension (XS) module to be as portable as possible -across differing versions of Perl itself, certain steps need to be taken. - -=over 4 - -=item * - -Including this header is the first major one. This alone will give you -access to a large part of the Perl API that hasn't been available in -earlier Perl releases. Use - - perl ppport.h --list-provided - -to see which API elements are provided by ppport.h. - -=item * - -You should avoid using deprecated parts of the API. For example, using -global Perl variables without the C prefix is deprecated. Also, -some API functions used to have a C prefix. Using this form is -also deprecated. You can safely use the supported API, as F -will provide wrappers for older Perl versions. - -=item * - -If you use one of a few functions or variables that were not present in -earlier versions of Perl, and that can't be provided using a macro, you -have to explicitly request support for these functions by adding one or -more C<#define>s in your source code before the inclusion of F. - -These functions or variables will be marked C in the list shown -by C<--list-provided>. - -Depending on whether you module has a single or multiple files that -use such functions or variables, you want either C or global -variants. - -For a C function or variable (used only in a single source -file), use: - - #define NEED_function - #define NEED_variable - -For a global function or variable (used in multiple source files), -use: - - #define NEED_function_GLOBAL - #define NEED_variable_GLOBAL - -Note that you mustn't have more than one global request for the -same function or variable in your project. - - Function / Variable Static Request Global Request - ----------------------------------------------------------------------------------------- - PL_parser NEED_PL_parser NEED_PL_parser_GLOBAL - PL_signals NEED_PL_signals NEED_PL_signals_GLOBAL - eval_pv() NEED_eval_pv NEED_eval_pv_GLOBAL - grok_bin() NEED_grok_bin NEED_grok_bin_GLOBAL - grok_hex() NEED_grok_hex NEED_grok_hex_GLOBAL - grok_number() NEED_grok_number NEED_grok_number_GLOBAL - grok_numeric_radix() NEED_grok_numeric_radix NEED_grok_numeric_radix_GLOBAL - grok_oct() NEED_grok_oct NEED_grok_oct_GLOBAL - load_module() NEED_load_module NEED_load_module_GLOBAL - my_snprintf() NEED_my_snprintf NEED_my_snprintf_GLOBAL - my_sprintf() NEED_my_sprintf NEED_my_sprintf_GLOBAL - my_strlcat() NEED_my_strlcat NEED_my_strlcat_GLOBAL - my_strlcpy() NEED_my_strlcpy NEED_my_strlcpy_GLOBAL - newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL - newRV_noinc() NEED_newRV_noinc NEED_newRV_noinc_GLOBAL - newSV_type() NEED_newSV_type NEED_newSV_type_GLOBAL - newSVpvn_flags() NEED_newSVpvn_flags NEED_newSVpvn_flags_GLOBAL - newSVpvn_share() NEED_newSVpvn_share NEED_newSVpvn_share_GLOBAL - pv_display() NEED_pv_display NEED_pv_display_GLOBAL - pv_escape() NEED_pv_escape NEED_pv_escape_GLOBAL - pv_pretty() NEED_pv_pretty NEED_pv_pretty_GLOBAL - sv_2pv_flags() NEED_sv_2pv_flags NEED_sv_2pv_flags_GLOBAL - sv_2pvbyte() NEED_sv_2pvbyte NEED_sv_2pvbyte_GLOBAL - sv_catpvf_mg() NEED_sv_catpvf_mg NEED_sv_catpvf_mg_GLOBAL - sv_catpvf_mg_nocontext() NEED_sv_catpvf_mg_nocontext NEED_sv_catpvf_mg_nocontext_GLOBAL - sv_pvn_force_flags() NEED_sv_pvn_force_flags NEED_sv_pvn_force_flags_GLOBAL - sv_setpvf_mg() NEED_sv_setpvf_mg NEED_sv_setpvf_mg_GLOBAL - sv_setpvf_mg_nocontext() NEED_sv_setpvf_mg_nocontext NEED_sv_setpvf_mg_nocontext_GLOBAL - vload_module() NEED_vload_module NEED_vload_module_GLOBAL - vnewSVpvf() NEED_vnewSVpvf NEED_vnewSVpvf_GLOBAL - warner() NEED_warner NEED_warner_GLOBAL - -To avoid namespace conflicts, you can change the namespace of the -explicitly exported functions / variables using the C -macro. Just C<#define> the macro before including C: - - #define DPPP_NAMESPACE MyOwnNamespace_ - #include "ppport.h" - -The default namespace is C. - -=back - -The good thing is that most of the above can be checked by running -F on your source code. See the next section for -details. - -=head1 EXAMPLES - -To verify whether F is needed for your module, whether you -should make any changes to your code, and whether any special defines -should be used, F can be run as a Perl script to check your -source code. Simply say: - - perl ppport.h - -The result will usually be a list of patches suggesting changes -that should at least be acceptable, if not necessarily the most -efficient solution, or a fix for all possible problems. - -If you know that your XS module uses features only available in -newer Perl releases, if you're aware that it uses C++ comments, -and if you want all suggestions as a single patch file, you could -use something like this: - - perl ppport.h --compat-version=5.6.0 --cplusplus --patch=test.diff - -If you only want your code to be scanned without any suggestions -for changes, use: - - perl ppport.h --nochanges - -You can specify a different C program or options, using -the C<--diff> option: - - perl ppport.h --diff='diff -C 10' - -This would output context diffs with 10 lines of context. - -If you want to create patched copies of your files instead, use: - - perl ppport.h --copy=.new - -To display portability information for the C function, -use: - - perl ppport.h --api-info=newSVpvn - -Since the argument to C<--api-info> can be a regular expression, -you can use - - perl ppport.h --api-info=/_nomg$/ - -to display portability information for all C<_nomg> functions or - - perl ppport.h --api-info=/./ - -to display information for all known API elements. - -=head1 BUGS - -If this version of F is causing failure during -the compilation of this module, please check if newer versions -of either this module or C are available on CPAN -before sending a bug report. - -If F was generated using the latest version of -C and is causing failure of this module, please -file a bug report using the CPAN Request Tracker at L. - -Please include the following information: - -=over 4 - -=item 1. - -The complete output from running "perl -V" - -=item 2. - -This file. - -=item 3. - -The name and version of the module you were trying to build. - -=item 4. - -A full log of the build that failed. - -=item 5. - -Any other information that you think could be relevant. - -=back - -For the latest version of this code, please get the C -module from CPAN. - -=head1 COPYRIGHT - -Version 3.x, Copyright (c) 2004-2009, Marcus Holland-Moritz. - -Version 2.x, Copyright (C) 2001, Paul Marquess. - -Version 1.x, Copyright (C) 1999, Kenneth Albanowski. - -This program is free software; you can redistribute it and/or -modify it under the same terms as Perl itself. - -=head1 SEE ALSO - -See L. - -=cut - -use strict; - -# Disable broken TRIE-optimization -BEGIN { eval '${^RE_TRIE_MAXBUF} = -1' if $] >= 5.009004 && $] <= 5.009005 } - -my $VERSION = 3.19; - -my %opt = ( - quiet => 0, - diag => 1, - hints => 1, - changes => 1, - cplusplus => 0, - filter => 1, - strip => 0, - version => 0, -); - -my($ppport) = $0 =~ /([\w.]+)$/; -my $LF = '(?:\r\n|[\r\n])'; # line feed -my $HS = "[ \t]"; # horizontal whitespace - -# Never use C comments in this file! -my $ccs = '/'.'*'; -my $cce = '*'.'/'; -my $rccs = quotemeta $ccs; -my $rcce = quotemeta $cce; - -eval { - require Getopt::Long; - Getopt::Long::GetOptions(\%opt, qw( - help quiet diag! filter! hints! changes! cplusplus strip version - patch=s copy=s diff=s compat-version=s - list-provided list-unsupported api-info=s - )) or usage(); -}; - -if ($@ and grep /^-/, @ARGV) { - usage() if "@ARGV" =~ /^--?h(?:elp)?$/; - die "Getopt::Long not found. Please don't use any options.\n"; -} - -if ($opt{version}) { - print "This is $0 $VERSION.\n"; - exit 0; -} - -usage() if $opt{help}; -strip() if $opt{strip}; - -if (exists $opt{'compat-version'}) { - my($r,$v,$s) = eval { parse_version($opt{'compat-version'}) }; - if ($@) { - die "Invalid version number format: '$opt{'compat-version'}'\n"; - } - die "Only Perl 5 is supported\n" if $r != 5; - die "Invalid version number: $opt{'compat-version'}\n" if $v >= 1000 || $s >= 1000; - $opt{'compat-version'} = sprintf "%d.%03d%03d", $r, $v, $s; -} -else { - $opt{'compat-version'} = 5; -} - -my %API = map { /^(\w+)\|([^|]*)\|([^|]*)\|(\w*)$/ - ? ( $1 => { - ($2 ? ( base => $2 ) : ()), - ($3 ? ( todo => $3 ) : ()), - (index($4, 'v') >= 0 ? ( varargs => 1 ) : ()), - (index($4, 'p') >= 0 ? ( provided => 1 ) : ()), - (index($4, 'n') >= 0 ? ( nothxarg => 1 ) : ()), - } ) - : die "invalid spec: $_" } qw( -AvFILLp|5.004050||p -AvFILL||| -CLASS|||n -CPERLscope|5.005000||p -CX_CURPAD_SAVE||| -CX_CURPAD_SV||| -CopFILEAV|5.006000||p -CopFILEGV_set|5.006000||p -CopFILEGV|5.006000||p -CopFILESV|5.006000||p -CopFILE_set|5.006000||p -CopFILE|5.006000||p -CopSTASHPV_set|5.006000||p -CopSTASHPV|5.006000||p -CopSTASH_eq|5.006000||p -CopSTASH_set|5.006000||p -CopSTASH|5.006000||p -CopyD|5.009002||p -Copy||| -CvPADLIST||| -CvSTASH||| -CvWEAKOUTSIDE||| -DEFSV_set|5.011000||p -DEFSV|5.004050||p -END_EXTERN_C|5.005000||p -ENTER||| -ERRSV|5.004050||p -EXTEND||| -EXTERN_C|5.005000||p -F0convert|||n -FREETMPS||| -GIMME_V||5.004000|n -GIMME|||n -GROK_NUMERIC_RADIX|5.007002||p -G_ARRAY||| -G_DISCARD||| -G_EVAL||| -G_METHOD|5.006001||p -G_NOARGS||| -G_SCALAR||| -G_VOID||5.004000| -GetVars||| -GvSVn|5.009003||p -GvSV||| -Gv_AMupdate||| -HEf_SVKEY||5.004000| -HeHASH||5.004000| -HeKEY||5.004000| -HeKLEN||5.004000| -HePV||5.004000| -HeSVKEY_force||5.004000| -HeSVKEY_set||5.004000| -HeSVKEY||5.004000| -HeUTF8||5.011000| -HeVAL||5.004000| -HvNAMELEN_get|5.009003||p -HvNAME_get|5.009003||p -HvNAME||| -INT2PTR|5.006000||p -IN_LOCALE_COMPILETIME|5.007002||p -IN_LOCALE_RUNTIME|5.007002||p -IN_LOCALE|5.007002||p -IN_PERL_COMPILETIME|5.008001||p -IS_NUMBER_GREATER_THAN_UV_MAX|5.007002||p -IS_NUMBER_INFINITY|5.007002||p -IS_NUMBER_IN_UV|5.007002||p -IS_NUMBER_NAN|5.007003||p -IS_NUMBER_NEG|5.007002||p -IS_NUMBER_NOT_INT|5.007002||p -IVSIZE|5.006000||p -IVTYPE|5.006000||p -IVdf|5.006000||p -LEAVE||| -LVRET||| -MARK||| -MULTICALL||5.011000| -MY_CXT_CLONE|5.009002||p -MY_CXT_INIT|5.007003||p -MY_CXT|5.007003||p -MoveD|5.009002||p -Move||| -NOOP|5.005000||p -NUM2PTR|5.006000||p -NVTYPE|5.006000||p -NVef|5.006001||p -NVff|5.006001||p -NVgf|5.006001||p -Newxc|5.009003||p -Newxz|5.009003||p -Newx|5.009003||p -Nullav||| -Nullch||| -Nullcv||| -Nullhv||| -Nullsv||| -ORIGMARK||| -PAD_BASE_SV||| -PAD_CLONE_VARS||| -PAD_COMPNAME_FLAGS||| -PAD_COMPNAME_GEN_set||| -PAD_COMPNAME_GEN||| -PAD_COMPNAME_OURSTASH||| -PAD_COMPNAME_PV||| -PAD_COMPNAME_TYPE||| -PAD_DUP||| -PAD_RESTORE_LOCAL||| -PAD_SAVE_LOCAL||| -PAD_SAVE_SETNULLPAD||| -PAD_SETSV||| -PAD_SET_CUR_NOSAVE||| -PAD_SET_CUR||| -PAD_SVl||| -PAD_SV||| -PERLIO_FUNCS_CAST|5.009003||p -PERLIO_FUNCS_DECL|5.009003||p -PERL_ABS|5.008001||p -PERL_BCDVERSION|5.011000||p -PERL_GCC_BRACE_GROUPS_FORBIDDEN|5.008001||p -PERL_HASH|5.004000||p -PERL_INT_MAX|5.004000||p -PERL_INT_MIN|5.004000||p -PERL_LONG_MAX|5.004000||p -PERL_LONG_MIN|5.004000||p -PERL_MAGIC_arylen|5.007002||p -PERL_MAGIC_backref|5.007002||p -PERL_MAGIC_bm|5.007002||p -PERL_MAGIC_collxfrm|5.007002||p -PERL_MAGIC_dbfile|5.007002||p -PERL_MAGIC_dbline|5.007002||p -PERL_MAGIC_defelem|5.007002||p -PERL_MAGIC_envelem|5.007002||p -PERL_MAGIC_env|5.007002||p -PERL_MAGIC_ext|5.007002||p -PERL_MAGIC_fm|5.007002||p -PERL_MAGIC_glob|5.011000||p -PERL_MAGIC_isaelem|5.007002||p -PERL_MAGIC_isa|5.007002||p -PERL_MAGIC_mutex|5.011000||p -PERL_MAGIC_nkeys|5.007002||p -PERL_MAGIC_overload_elem|5.007002||p -PERL_MAGIC_overload_table|5.007002||p -PERL_MAGIC_overload|5.007002||p -PERL_MAGIC_pos|5.007002||p -PERL_MAGIC_qr|5.007002||p -PERL_MAGIC_regdata|5.007002||p -PERL_MAGIC_regdatum|5.007002||p -PERL_MAGIC_regex_global|5.007002||p -PERL_MAGIC_shared_scalar|5.007003||p -PERL_MAGIC_shared|5.007003||p -PERL_MAGIC_sigelem|5.007002||p -PERL_MAGIC_sig|5.007002||p -PERL_MAGIC_substr|5.007002||p -PERL_MAGIC_sv|5.007002||p -PERL_MAGIC_taint|5.007002||p -PERL_MAGIC_tiedelem|5.007002||p -PERL_MAGIC_tiedscalar|5.007002||p -PERL_MAGIC_tied|5.007002||p -PERL_MAGIC_utf8|5.008001||p -PERL_MAGIC_uvar_elem|5.007003||p -PERL_MAGIC_uvar|5.007002||p -PERL_MAGIC_vec|5.007002||p -PERL_MAGIC_vstring|5.008001||p -PERL_PV_ESCAPE_ALL|5.009004||p -PERL_PV_ESCAPE_FIRSTCHAR|5.009004||p -PERL_PV_ESCAPE_NOBACKSLASH|5.009004||p -PERL_PV_ESCAPE_NOCLEAR|5.009004||p -PERL_PV_ESCAPE_QUOTE|5.009004||p -PERL_PV_ESCAPE_RE|5.009005||p -PERL_PV_ESCAPE_UNI_DETECT|5.009004||p -PERL_PV_ESCAPE_UNI|5.009004||p -PERL_PV_PRETTY_DUMP|5.009004||p -PERL_PV_PRETTY_ELLIPSES|5.010000||p -PERL_PV_PRETTY_LTGT|5.009004||p -PERL_PV_PRETTY_NOCLEAR|5.010000||p -PERL_PV_PRETTY_QUOTE|5.009004||p -PERL_PV_PRETTY_REGPROP|5.009004||p -PERL_QUAD_MAX|5.004000||p -PERL_QUAD_MIN|5.004000||p -PERL_REVISION|5.006000||p -PERL_SCAN_ALLOW_UNDERSCORES|5.007003||p -PERL_SCAN_DISALLOW_PREFIX|5.007003||p -PERL_SCAN_GREATER_THAN_UV_MAX|5.007003||p -PERL_SCAN_SILENT_ILLDIGIT|5.008001||p -PERL_SHORT_MAX|5.004000||p -PERL_SHORT_MIN|5.004000||p -PERL_SIGNALS_UNSAFE_FLAG|5.008001||p -PERL_SUBVERSION|5.006000||p -PERL_SYS_INIT3||5.006000| -PERL_SYS_INIT||| -PERL_SYS_TERM||5.011000| -PERL_UCHAR_MAX|5.004000||p -PERL_UCHAR_MIN|5.004000||p -PERL_UINT_MAX|5.004000||p -PERL_UINT_MIN|5.004000||p -PERL_ULONG_MAX|5.004000||p -PERL_ULONG_MIN|5.004000||p -PERL_UNUSED_ARG|5.009003||p -PERL_UNUSED_CONTEXT|5.009004||p -PERL_UNUSED_DECL|5.007002||p -PERL_UNUSED_VAR|5.007002||p -PERL_UQUAD_MAX|5.004000||p -PERL_UQUAD_MIN|5.004000||p -PERL_USE_GCC_BRACE_GROUPS|5.009004||p -PERL_USHORT_MAX|5.004000||p -PERL_USHORT_MIN|5.004000||p -PERL_VERSION|5.006000||p -PL_DBsignal|5.005000||p -PL_DBsingle|||pn -PL_DBsub|||pn -PL_DBtrace|||pn -PL_Sv|5.005000||p -PL_bufend|5.011000||p -PL_bufptr|5.011000||p -PL_compiling|5.004050||p -PL_copline|5.011000||p -PL_curcop|5.004050||p -PL_curstash|5.004050||p -PL_debstash|5.004050||p -PL_defgv|5.004050||p -PL_diehook|5.004050||p -PL_dirty|5.004050||p -PL_dowarn|||pn -PL_errgv|5.004050||p -PL_error_count|5.011000||p -PL_expect|5.011000||p -PL_hexdigit|5.005000||p -PL_hints|5.005000||p -PL_in_my_stash|5.011000||p -PL_in_my|5.011000||p -PL_last_in_gv|||n -PL_laststatval|5.005000||p -PL_lex_state|5.011000||p -PL_lex_stuff|5.011000||p -PL_linestr|5.011000||p -PL_modglobal||5.005000|n -PL_na|5.004050||pn -PL_no_modify|5.006000||p -PL_ofsgv|||n -PL_parser|5.009005||p -PL_perl_destruct_level|5.004050||p -PL_perldb|5.004050||p -PL_ppaddr|5.006000||p -PL_rsfp_filters|5.004050||p -PL_rsfp|5.004050||p -PL_rs|||n -PL_signals|5.008001||p -PL_stack_base|5.004050||p -PL_stack_sp|5.004050||p -PL_statcache|5.005000||p -PL_stdingv|5.004050||p -PL_sv_arenaroot|5.004050||p -PL_sv_no|5.004050||pn -PL_sv_undef|5.004050||pn -PL_sv_yes|5.004050||pn -PL_tainted|5.004050||p -PL_tainting|5.004050||p -PL_tokenbuf|5.011000||p -POP_MULTICALL||5.011000| -POPi|||n -POPl|||n -POPn|||n -POPpbytex||5.007001|n -POPpx||5.005030|n -POPp|||n -POPs|||n -PTR2IV|5.006000||p -PTR2NV|5.006000||p -PTR2UV|5.006000||p -PTR2nat|5.009003||p -PTR2ul|5.007001||p -PTRV|5.006000||p -PUSHMARK||| -PUSH_MULTICALL||5.011000| -PUSHi||| -PUSHmortal|5.009002||p -PUSHn||| -PUSHp||| -PUSHs||| -PUSHu|5.004000||p -PUTBACK||| -PerlIO_clearerr||5.007003| -PerlIO_close||5.007003| -PerlIO_context_layers||5.009004| -PerlIO_eof||5.007003| -PerlIO_error||5.007003| -PerlIO_fileno||5.007003| -PerlIO_fill||5.007003| -PerlIO_flush||5.007003| -PerlIO_get_base||5.007003| -PerlIO_get_bufsiz||5.007003| -PerlIO_get_cnt||5.007003| -PerlIO_get_ptr||5.007003| -PerlIO_read||5.007003| -PerlIO_seek||5.007003| -PerlIO_set_cnt||5.007003| -PerlIO_set_ptrcnt||5.007003| -PerlIO_setlinebuf||5.007003| -PerlIO_stderr||5.007003| -PerlIO_stdin||5.007003| -PerlIO_stdout||5.007003| -PerlIO_tell||5.007003| -PerlIO_unread||5.007003| -PerlIO_write||5.007003| -Perl_signbit||5.009005|n -PoisonFree|5.009004||p -PoisonNew|5.009004||p -PoisonWith|5.009004||p -Poison|5.008000||p -RETVAL|||n -Renewc||| -Renew||| -SAVECLEARSV||| -SAVECOMPPAD||| -SAVEPADSV||| -SAVETMPS||| -SAVE_DEFSV|5.004050||p -SPAGAIN||| -SP||| -START_EXTERN_C|5.005000||p -START_MY_CXT|5.007003||p -STMT_END|||p -STMT_START|||p -STR_WITH_LEN|5.009003||p -ST||| -SV_CONST_RETURN|5.009003||p -SV_COW_DROP_PV|5.008001||p -SV_COW_SHARED_HASH_KEYS|5.009005||p -SV_GMAGIC|5.007002||p -SV_HAS_TRAILING_NUL|5.009004||p -SV_IMMEDIATE_UNREF|5.007001||p -SV_MUTABLE_RETURN|5.009003||p -SV_NOSTEAL|5.009002||p -SV_SMAGIC|5.009003||p -SV_UTF8_NO_ENCODING|5.008001||p -SVfARG|5.009005||p -SVf_UTF8|5.006000||p -SVf|5.006000||p -SVt_IV||| -SVt_NV||| -SVt_PVAV||| -SVt_PVCV||| -SVt_PVHV||| -SVt_PVMG||| -SVt_PV||| -Safefree||| -Slab_Alloc||| -Slab_Free||| -Slab_to_rw||| -StructCopy||| -SvCUR_set||| -SvCUR||| -SvEND||| -SvGAMAGIC||5.006001| -SvGETMAGIC|5.004050||p -SvGROW||| -SvIOK_UV||5.006000| -SvIOK_notUV||5.006000| -SvIOK_off||| -SvIOK_only_UV||5.006000| -SvIOK_only||| -SvIOK_on||| -SvIOKp||| -SvIOK||| -SvIVX||| -SvIV_nomg|5.009001||p -SvIV_set||| -SvIVx||| -SvIV||| -SvIsCOW_shared_hash||5.008003| -SvIsCOW||5.008003| -SvLEN_set||| -SvLEN||| -SvLOCK||5.007003| -SvMAGIC_set|5.009003||p -SvNIOK_off||| -SvNIOKp||| -SvNIOK||| -SvNOK_off||| -SvNOK_only||| -SvNOK_on||| -SvNOKp||| -SvNOK||| -SvNVX||| -SvNV_set||| -SvNVx||| -SvNV||| -SvOK||| -SvOOK_offset||5.011000| -SvOOK||| -SvPOK_off||| -SvPOK_only_UTF8||5.006000| -SvPOK_only||| -SvPOK_on||| -SvPOKp||| -SvPOK||| -SvPVX_const|5.009003||p -SvPVX_mutable|5.009003||p -SvPVX||| -SvPV_const|5.009003||p -SvPV_flags_const_nolen|5.009003||p -SvPV_flags_const|5.009003||p -SvPV_flags_mutable|5.009003||p -SvPV_flags|5.007002||p -SvPV_force_flags_mutable|5.009003||p -SvPV_force_flags_nolen|5.009003||p -SvPV_force_flags|5.007002||p -SvPV_force_mutable|5.009003||p -SvPV_force_nolen|5.009003||p -SvPV_force_nomg_nolen|5.009003||p -SvPV_force_nomg|5.007002||p -SvPV_force|||p -SvPV_mutable|5.009003||p -SvPV_nolen_const|5.009003||p -SvPV_nolen|5.006000||p -SvPV_nomg_const_nolen|5.009003||p -SvPV_nomg_const|5.009003||p -SvPV_nomg|5.007002||p -SvPV_renew|5.009003||p -SvPV_set||| -SvPVbyte_force||5.009002| -SvPVbyte_nolen||5.006000| -SvPVbytex_force||5.006000| -SvPVbytex||5.006000| -SvPVbyte|5.006000||p -SvPVutf8_force||5.006000| -SvPVutf8_nolen||5.006000| -SvPVutf8x_force||5.006000| -SvPVutf8x||5.006000| -SvPVutf8||5.006000| -SvPVx||| -SvPV||| -SvREFCNT_dec||| -SvREFCNT_inc_NN|5.009004||p -SvREFCNT_inc_simple_NN|5.009004||p -SvREFCNT_inc_simple_void_NN|5.009004||p -SvREFCNT_inc_simple_void|5.009004||p -SvREFCNT_inc_simple|5.009004||p -SvREFCNT_inc_void_NN|5.009004||p -SvREFCNT_inc_void|5.009004||p -SvREFCNT_inc|||p -SvREFCNT||| -SvROK_off||| -SvROK_on||| -SvROK||| -SvRV_set|5.009003||p -SvRV||| -SvRXOK||5.009005| -SvRX||5.009005| -SvSETMAGIC||| -SvSHARED_HASH|5.009003||p -SvSHARE||5.007003| -SvSTASH_set|5.009003||p -SvSTASH||| -SvSetMagicSV_nosteal||5.004000| -SvSetMagicSV||5.004000| -SvSetSV_nosteal||5.004000| -SvSetSV||| -SvTAINTED_off||5.004000| -SvTAINTED_on||5.004000| -SvTAINTED||5.004000| -SvTAINT||| -SvTRUE||| -SvTYPE||| -SvUNLOCK||5.007003| -SvUOK|5.007001|5.006000|p -SvUPGRADE||| -SvUTF8_off||5.006000| -SvUTF8_on||5.006000| -SvUTF8||5.006000| -SvUVXx|5.004000||p -SvUVX|5.004000||p -SvUV_nomg|5.009001||p -SvUV_set|5.009003||p -SvUVx|5.004000||p -SvUV|5.004000||p -SvVOK||5.008001| -SvVSTRING_mg|5.009004||p -THIS|||n -UNDERBAR|5.009002||p -UTF8_MAXBYTES|5.009002||p -UVSIZE|5.006000||p -UVTYPE|5.006000||p -UVXf|5.007001||p -UVof|5.006000||p -UVuf|5.006000||p -UVxf|5.006000||p -WARN_ALL|5.006000||p -WARN_AMBIGUOUS|5.006000||p -WARN_ASSERTIONS|5.011000||p -WARN_BAREWORD|5.006000||p -WARN_CLOSED|5.006000||p -WARN_CLOSURE|5.006000||p -WARN_DEBUGGING|5.006000||p -WARN_DEPRECATED|5.006000||p -WARN_DIGIT|5.006000||p -WARN_EXEC|5.006000||p -WARN_EXITING|5.006000||p -WARN_GLOB|5.006000||p -WARN_INPLACE|5.006000||p -WARN_INTERNAL|5.006000||p -WARN_IO|5.006000||p -WARN_LAYER|5.008000||p -WARN_MALLOC|5.006000||p -WARN_MISC|5.006000||p -WARN_NEWLINE|5.006000||p -WARN_NUMERIC|5.006000||p -WARN_ONCE|5.006000||p -WARN_OVERFLOW|5.006000||p -WARN_PACK|5.006000||p -WARN_PARENTHESIS|5.006000||p -WARN_PIPE|5.006000||p -WARN_PORTABLE|5.006000||p -WARN_PRECEDENCE|5.006000||p -WARN_PRINTF|5.006000||p -WARN_PROTOTYPE|5.006000||p -WARN_QW|5.006000||p -WARN_RECURSION|5.006000||p -WARN_REDEFINE|5.006000||p -WARN_REGEXP|5.006000||p -WARN_RESERVED|5.006000||p -WARN_SEMICOLON|5.006000||p -WARN_SEVERE|5.006000||p -WARN_SIGNAL|5.006000||p -WARN_SUBSTR|5.006000||p -WARN_SYNTAX|5.006000||p -WARN_TAINT|5.006000||p -WARN_THREADS|5.008000||p -WARN_UNINITIALIZED|5.006000||p -WARN_UNOPENED|5.006000||p -WARN_UNPACK|5.006000||p -WARN_UNTIE|5.006000||p -WARN_UTF8|5.006000||p -WARN_VOID|5.006000||p -XCPT_CATCH|5.009002||p -XCPT_RETHROW|5.009002||p -XCPT_TRY_END|5.009002||p -XCPT_TRY_START|5.009002||p -XPUSHi||| -XPUSHmortal|5.009002||p -XPUSHn||| -XPUSHp||| -XPUSHs||| -XPUSHu|5.004000||p -XSPROTO|5.010000||p -XSRETURN_EMPTY||| -XSRETURN_IV||| -XSRETURN_NO||| -XSRETURN_NV||| -XSRETURN_PV||| -XSRETURN_UNDEF||| -XSRETURN_UV|5.008001||p -XSRETURN_YES||| -XSRETURN|||p -XST_mIV||| -XST_mNO||| -XST_mNV||| -XST_mPV||| -XST_mUNDEF||| -XST_mUV|5.008001||p -XST_mYES||| -XS_VERSION_BOOTCHECK||| -XS_VERSION||| -XSprePUSH|5.006000||p -XS||| -ZeroD|5.009002||p -Zero||| -_aMY_CXT|5.007003||p -_pMY_CXT|5.007003||p -aMY_CXT_|5.007003||p -aMY_CXT|5.007003||p -aTHXR_|5.011000||p -aTHXR|5.011000||p -aTHX_|5.006000||p -aTHX|5.006000||p -add_data|||n -addmad||| -allocmy||| -amagic_call||| -amagic_cmp_locale||| -amagic_cmp||| -amagic_i_ncmp||| -amagic_ncmp||| -any_dup||| -ao||| -append_elem||| -append_list||| -append_madprops||| -apply_attrs_my||| -apply_attrs_string||5.006001| -apply_attrs||| -apply||| -atfork_lock||5.007003|n -atfork_unlock||5.007003|n -av_arylen_p||5.009003| -av_clear||| -av_create_and_push||5.009005| -av_create_and_unshift_one||5.009005| -av_delete||5.006000| -av_exists||5.006000| -av_extend||| -av_fetch||| -av_fill||| -av_iter_p||5.011000| -av_len||| -av_make||| -av_pop||| -av_push||| -av_reify||| -av_shift||| -av_store||| -av_undef||| -av_unshift||| -ax|||n -bad_type||| -bind_match||| -block_end||| -block_gimme||5.004000| -block_start||| -boolSV|5.004000||p -boot_core_PerlIO||| -boot_core_UNIVERSAL||| -boot_core_mro||| -bytes_from_utf8||5.007001| -bytes_to_uni|||n -bytes_to_utf8||5.006001| -call_argv|5.006000||p -call_atexit||5.006000| -call_list||5.004000| -call_method|5.006000||p -call_pv|5.006000||p -call_sv|5.006000||p -calloc||5.007002|n -cando||| -cast_i32||5.006000| -cast_iv||5.006000| -cast_ulong||5.006000| -cast_uv||5.006000| -check_type_and_open||| -check_uni||| -checkcomma||| -checkposixcc||| -ckWARN|5.006000||p -ck_anoncode||| -ck_bitop||| -ck_concat||| -ck_defined||| -ck_delete||| -ck_die||| -ck_each||| -ck_eof||| -ck_eval||| -ck_exec||| -ck_exists||| -ck_exit||| -ck_ftst||| -ck_fun||| -ck_glob||| -ck_grep||| -ck_index||| -ck_join||| -ck_lfun||| -ck_listiob||| -ck_match||| -ck_method||| -ck_null||| -ck_open||| -ck_readline||| -ck_repeat||| -ck_require||| -ck_return||| -ck_rfun||| -ck_rvconst||| -ck_sassign||| -ck_select||| -ck_shift||| -ck_sort||| -ck_spair||| -ck_split||| -ck_subr||| -ck_substr||| -ck_svconst||| -ck_trunc||| -ck_unpack||| -ckwarn_d||5.009003| -ckwarn||5.009003| -cl_and|||n -cl_anything|||n -cl_init_zero|||n -cl_init|||n -cl_is_anything|||n -cl_or|||n -clear_placeholders||| -closest_cop||| -convert||| -cop_free||| -cr_textfilter||| -create_eval_scope||| -croak_nocontext|||vn -croak_xs_usage||5.011000| -croak|||v -csighandler||5.009003|n -curmad||| -custom_op_desc||5.007003| -custom_op_name||5.007003| -cv_ckproto_len||| -cv_clone||| -cv_const_sv||5.004000| -cv_dump||| -cv_undef||| -cx_dump||5.005000| -cx_dup||| -cxinc||| -dAXMARK|5.009003||p -dAX|5.007002||p -dITEMS|5.007002||p -dMARK||| -dMULTICALL||5.009003| -dMY_CXT_SV|5.007003||p -dMY_CXT|5.007003||p -dNOOP|5.006000||p -dORIGMARK||| -dSP||| -dTHR|5.004050||p -dTHXR|5.011000||p -dTHXa|5.006000||p -dTHXoa|5.006000||p -dTHX|5.006000||p -dUNDERBAR|5.009002||p -dVAR|5.009003||p -dXCPT|5.009002||p -dXSARGS||| -dXSI32||| -dXSTARG|5.006000||p -deb_curcv||| -deb_nocontext|||vn -deb_stack_all||| -deb_stack_n||| -debop||5.005000| -debprofdump||5.005000| -debprof||| -debstackptrs||5.007003| -debstack||5.007003| -debug_start_match||| -deb||5.007003|v -del_sv||| -delete_eval_scope||| -delimcpy||5.004000| -deprecate_old||| -deprecate||| -despatch_signals||5.007001| -destroy_matcher||| -die_nocontext|||vn -die_where||| -die|||v -dirp_dup||| -div128||| -djSP||| -do_aexec5||| -do_aexec||| -do_aspawn||| -do_binmode||5.004050| -do_chomp||| -do_chop||| -do_close||| -do_dump_pad||| -do_eof||| -do_exec3||| -do_execfree||| -do_exec||| -do_gv_dump||5.006000| -do_gvgv_dump||5.006000| -do_hv_dump||5.006000| -do_ipcctl||| -do_ipcget||| -do_join||| -do_kv||| -do_magic_dump||5.006000| -do_msgrcv||| -do_msgsnd||| -do_oddball||| -do_op_dump||5.006000| -do_op_xmldump||| -do_open9||5.006000| -do_openn||5.007001| -do_open||5.004000| -do_pmop_dump||5.006000| -do_pmop_xmldump||| -do_print||| -do_readline||| -do_seek||| -do_semop||| -do_shmio||| -do_smartmatch||| -do_spawn_nowait||| -do_spawn||| -do_sprintf||| -do_sv_dump||5.006000| -do_sysseek||| -do_tell||| -do_trans_complex_utf8||| -do_trans_complex||| -do_trans_count_utf8||| -do_trans_count||| -do_trans_simple_utf8||| -do_trans_simple||| -do_trans||| -do_vecget||| -do_vecset||| -do_vop||| -docatch||| -doeval||| -dofile||| -dofindlabel||| -doform||| -doing_taint||5.008001|n -dooneliner||| -doopen_pm||| -doparseform||| -dopoptoeval||| -dopoptogiven||| -dopoptolabel||| -dopoptoloop||| -dopoptosub_at||| -dopoptowhen||| -doref||5.009003| -dounwind||| -dowantarray||| -dump_all||5.006000| -dump_eval||5.006000| -dump_exec_pos||| -dump_fds||| -dump_form||5.006000| -dump_indent||5.006000|v -dump_mstats||| -dump_packsubs||5.006000| -dump_sub||5.006000| -dump_sv_child||| -dump_trie_interim_list||| -dump_trie_interim_table||| -dump_trie||| -dump_vindent||5.006000| -dumpuntil||| -dup_attrlist||| -emulate_cop_io||| -eval_pv|5.006000||p -eval_sv|5.006000||p -exec_failed||| -expect_number||| -fbm_compile||5.005000| -fbm_instr||5.005000| -feature_is_enabled||| -fetch_cop_label||5.011000| -filter_add||| -filter_del||| -filter_gets||| -filter_read||| -find_and_forget_pmops||| -find_array_subscript||| -find_beginning||| -find_byclass||| -find_hash_subscript||| -find_in_my_stash||| -find_runcv||5.008001| -find_rundefsvoffset||5.009002| -find_script||| -find_uninit_var||| -first_symbol|||n -fold_constants||| -forbid_setid||| -force_ident||| -force_list||| -force_next||| -force_version||| -force_word||| -forget_pmop||| -form_nocontext|||vn -form||5.004000|v -fp_dup||| -fprintf_nocontext|||vn -free_global_struct||| -free_tied_hv_pool||| -free_tmps||| -gen_constant_list||| -get_arena||| -get_aux_mg||| -get_av|5.006000||p -get_context||5.006000|n -get_cvn_flags||5.009005| -get_cv|5.006000||p -get_db_sub||| -get_debug_opts||| -get_hash_seed||| -get_hv|5.006000||p -get_isa_hash||| -get_mstats||| -get_no_modify||| -get_num||| -get_op_descs||5.005000| -get_op_names||5.005000| -get_opargs||| -get_ppaddr||5.006000| -get_re_arg||| -get_sv|5.006000||p -get_vtbl||5.005030| -getcwd_sv||5.007002| -getenv_len||| -glob_2number||| -glob_assign_glob||| -glob_assign_ref||| -gp_dup||| -gp_free||| -gp_ref||| -grok_bin|5.007003||p -grok_hex|5.007003||p -grok_number|5.007002||p -grok_numeric_radix|5.007002||p -grok_oct|5.007003||p -group_end||| -gv_AVadd||| -gv_HVadd||| -gv_IOadd||| -gv_SVadd||| -gv_autoload4||5.004000| -gv_check||| -gv_const_sv||5.009003| -gv_dump||5.006000| -gv_efullname3||5.004000| -gv_efullname4||5.006001| -gv_efullname||| -gv_ename||| -gv_fetchfile_flags||5.009005| -gv_fetchfile||| -gv_fetchmeth_autoload||5.007003| -gv_fetchmethod_autoload||5.004000| -gv_fetchmethod_flags||5.011000| -gv_fetchmethod||| -gv_fetchmeth||| -gv_fetchpvn_flags|5.009002||p -gv_fetchpvs|5.009004||p -gv_fetchpv||| -gv_fetchsv||5.009002| -gv_fullname3||5.004000| -gv_fullname4||5.006001| -gv_fullname||| -gv_get_super_pkg||| -gv_handler||5.007001| -gv_init_sv||| -gv_init||| -gv_name_set||5.009004| -gv_stashpvn|5.004000||p -gv_stashpvs|5.009003||p -gv_stashpv||| -gv_stashsv||| -he_dup||| -hek_dup||| -hfreeentries||| -hsplit||| -hv_assert||5.011000| -hv_auxinit|||n -hv_backreferences_p||| -hv_clear_placeholders||5.009001| -hv_clear||| -hv_common_key_len||5.010000| -hv_common||5.010000| -hv_copy_hints_hv||| -hv_delayfree_ent||5.004000| -hv_delete_common||| -hv_delete_ent||5.004000| -hv_delete||| -hv_eiter_p||5.009003| -hv_eiter_set||5.009003| -hv_exists_ent||5.004000| -hv_exists||| -hv_fetch_ent||5.004000| -hv_fetchs|5.009003||p -hv_fetch||| -hv_free_ent||5.004000| -hv_iterinit||| -hv_iterkeysv||5.004000| -hv_iterkey||| -hv_iternext_flags||5.008000| -hv_iternextsv||| -hv_iternext||| -hv_iterval||| -hv_kill_backrefs||| -hv_ksplit||5.004000| -hv_magic_check|||n -hv_magic||| -hv_name_set||5.009003| -hv_notallowed||| -hv_placeholders_get||5.009003| -hv_placeholders_p||5.009003| -hv_placeholders_set||5.009003| -hv_riter_p||5.009003| -hv_riter_set||5.009003| -hv_scalar||5.009001| -hv_store_ent||5.004000| -hv_store_flags||5.008000| -hv_stores|5.009004||p -hv_store||| -hv_undef||| -ibcmp_locale||5.004000| -ibcmp_utf8||5.007003| -ibcmp||| -incline||| -incpush_if_exists||| -incpush_use_sep||| -incpush||| -ingroup||| -init_argv_symbols||| -init_debugger||| -init_global_struct||| -init_i18nl10n||5.006000| -init_i18nl14n||5.006000| -init_ids||| -init_interp||| -init_main_stash||| -init_perllib||| -init_postdump_symbols||| -init_predump_symbols||| -init_stacks||5.005000| -init_tm||5.007002| -instr||| -intro_my||| -intuit_method||| -intuit_more||| -invert||| -io_close||| -isALNUMC|5.006000||p -isALNUM||| -isALPHA||| -isASCII|5.006000||p -isBLANK|5.006001||p -isCNTRL|5.006000||p -isDIGIT||| -isGRAPH|5.006000||p -isGV_with_GP|5.009004||p -isLOWER||| -isPRINT|5.004000||p -isPSXSPC|5.006001||p -isPUNCT|5.006000||p -isSPACE||| -isUPPER||| -isXDIGIT|5.006000||p -is_an_int||| -is_gv_magical_sv||| -is_handle_constructor|||n -is_list_assignment||| -is_lvalue_sub||5.007001| -is_uni_alnum_lc||5.006000| -is_uni_alnumc_lc||5.006000| -is_uni_alnumc||5.006000| -is_uni_alnum||5.006000| -is_uni_alpha_lc||5.006000| -is_uni_alpha||5.006000| -is_uni_ascii_lc||5.006000| -is_uni_ascii||5.006000| -is_uni_cntrl_lc||5.006000| -is_uni_cntrl||5.006000| -is_uni_digit_lc||5.006000| -is_uni_digit||5.006000| -is_uni_graph_lc||5.006000| -is_uni_graph||5.006000| -is_uni_idfirst_lc||5.006000| -is_uni_idfirst||5.006000| -is_uni_lower_lc||5.006000| -is_uni_lower||5.006000| -is_uni_print_lc||5.006000| -is_uni_print||5.006000| -is_uni_punct_lc||5.006000| -is_uni_punct||5.006000| -is_uni_space_lc||5.006000| -is_uni_space||5.006000| -is_uni_upper_lc||5.006000| -is_uni_upper||5.006000| -is_uni_xdigit_lc||5.006000| -is_uni_xdigit||5.006000| -is_utf8_alnumc||5.006000| -is_utf8_alnum||5.006000| -is_utf8_alpha||5.006000| -is_utf8_ascii||5.006000| -is_utf8_char_slow|||n -is_utf8_char||5.006000| -is_utf8_cntrl||5.006000| -is_utf8_common||| -is_utf8_digit||5.006000| -is_utf8_graph||5.006000| -is_utf8_idcont||5.008000| -is_utf8_idfirst||5.006000| -is_utf8_lower||5.006000| -is_utf8_mark||5.006000| -is_utf8_print||5.006000| -is_utf8_punct||5.006000| -is_utf8_space||5.006000| -is_utf8_string_loclen||5.009003| -is_utf8_string_loc||5.008001| -is_utf8_string||5.006001| -is_utf8_upper||5.006000| -is_utf8_xdigit||5.006000| -isa_lookup||| -items|||n -ix|||n -jmaybe||| -join_exact||| -keyword||| -leave_scope||| -lex_end||| -lex_start||| -linklist||| -listkids||| -list||| -load_module_nocontext|||vn -load_module|5.006000||pv -localize||| -looks_like_bool||| -looks_like_number||| -lop||| -mPUSHi|5.009002||p -mPUSHn|5.009002||p -mPUSHp|5.009002||p -mPUSHs|5.011000||p -mPUSHu|5.009002||p -mXPUSHi|5.009002||p -mXPUSHn|5.009002||p -mXPUSHp|5.009002||p -mXPUSHs|5.011000||p -mXPUSHu|5.009002||p -mad_free||| -madlex||| -madparse||| -magic_clear_all_env||| -magic_clearenv||| -magic_clearhint||| -magic_clearisa||| -magic_clearpack||| -magic_clearsig||| -magic_dump||5.006000| -magic_existspack||| -magic_freearylen_p||| -magic_freeovrld||| -magic_getarylen||| -magic_getdefelem||| -magic_getnkeys||| -magic_getpack||| -magic_getpos||| -magic_getsig||| -magic_getsubstr||| -magic_gettaint||| -magic_getuvar||| -magic_getvec||| -magic_get||| -magic_killbackrefs||| -magic_len||| -magic_methcall||| -magic_methpack||| -magic_nextpack||| -magic_regdata_cnt||| -magic_regdatum_get||| -magic_regdatum_set||| -magic_scalarpack||| -magic_set_all_env||| -magic_setamagic||| -magic_setarylen||| -magic_setcollxfrm||| -magic_setdbline||| -magic_setdefelem||| -magic_setenv||| -magic_sethint||| -magic_setisa||| -magic_setmglob||| -magic_setnkeys||| -magic_setpack||| -magic_setpos||| -magic_setregexp||| -magic_setsig||| -magic_setsubstr||| -magic_settaint||| -magic_setutf8||| -magic_setuvar||| -magic_setvec||| -magic_set||| -magic_sizepack||| -magic_wipepack||| -make_matcher||| -make_trie_failtable||| -make_trie||| -malloc_good_size|||n -malloced_size|||n -malloc||5.007002|n -markstack_grow||| -matcher_matches_sv||| -measure_struct||| -memEQ|5.004000||p -memNE|5.004000||p -mem_collxfrm||| -mem_log_common|||n -mess_alloc||| -mess_nocontext|||vn -mess||5.006000|v -method_common||| -mfree||5.007002|n -mg_clear||| -mg_copy||| -mg_dup||| -mg_find||| -mg_free||| -mg_get||| -mg_length||5.005000| -mg_localize||| -mg_magical||| -mg_set||| -mg_size||5.005000| -mini_mktime||5.007002| -missingterm||| -mode_from_discipline||| -modkids||| -mod||| -more_bodies||| -more_sv||| -moreswitches||| -mro_get_from_name||5.011000| -mro_get_linear_isa_dfs||| -mro_get_linear_isa||5.009005| -mro_get_private_data||5.011000| -mro_isa_changed_in||| -mro_meta_dup||| -mro_meta_init||| -mro_method_changed_in||5.009005| -mro_register||5.011000| -mro_set_mro||5.011000| -mro_set_private_data||5.011000| -mul128||| -mulexp10|||n -my_atof2||5.007002| -my_atof||5.006000| -my_attrs||| -my_bcopy|||n -my_betoh16|||n -my_betoh32|||n -my_betoh64|||n -my_betohi|||n -my_betohl|||n -my_betohs|||n -my_bzero|||n -my_chsize||| -my_clearenv||| -my_cxt_index||| -my_cxt_init||| -my_dirfd||5.009005| -my_exit_jump||| -my_exit||| -my_failure_exit||5.004000| -my_fflush_all||5.006000| -my_fork||5.007003|n -my_htobe16|||n -my_htobe32|||n -my_htobe64|||n -my_htobei|||n -my_htobel|||n -my_htobes|||n -my_htole16|||n -my_htole32|||n -my_htole64|||n -my_htolei|||n -my_htolel|||n -my_htoles|||n -my_htonl||| -my_kid||| -my_letoh16|||n -my_letoh32|||n -my_letoh64|||n -my_letohi|||n -my_letohl|||n -my_letohs|||n -my_lstat||| -my_memcmp||5.004000|n -my_memset|||n -my_ntohl||| -my_pclose||5.004000| -my_popen_list||5.007001| -my_popen||5.004000| -my_setenv||| -my_snprintf|5.009004||pvn -my_socketpair||5.007003|n -my_sprintf|5.009003||pvn -my_stat||| -my_strftime||5.007002| -my_strlcat|5.009004||pn -my_strlcpy|5.009004||pn -my_swabn|||n -my_swap||| -my_unexec||| -my_vsnprintf||5.009004|n -need_utf8|||n -newANONATTRSUB||5.006000| -newANONHASH||| -newANONLIST||| -newANONSUB||| -newASSIGNOP||| -newATTRSUB||5.006000| -newAVREF||| -newAV||| -newBINOP||| -newCONDOP||| -newCONSTSUB|5.004050||p -newCVREF||| -newDEFSVOP||| -newFORM||| -newFOROP||| -newGIVENOP||5.009003| -newGIVWHENOP||| -newGP||| -newGVOP||| -newGVREF||| -newGVgen||| -newHVREF||| -newHVhv||5.005000| -newHV||| -newIO||| -newLISTOP||| -newLOGOP||| -newLOOPEX||| -newLOOPOP||| -newMADPROP||| -newMADsv||| -newMYSUB||| -newNULLLIST||| -newOP||| -newPADOP||| -newPMOP||| -newPROG||| -newPVOP||| -newRANGE||| -newRV_inc|5.004000||p -newRV_noinc|5.004000||p -newRV||| -newSLICEOP||| -newSTATEOP||| -newSUB||| -newSVOP||| -newSVREF||| -newSV_type|5.009005||p -newSVhek||5.009003| -newSViv||| -newSVnv||| -newSVpvf_nocontext|||vn -newSVpvf||5.004000|v -newSVpvn_flags|5.011000||p -newSVpvn_share|5.007001||p -newSVpvn_utf8|5.011000||p -newSVpvn|5.004050||p -newSVpvs_flags|5.011000||p -newSVpvs_share||5.009003| -newSVpvs|5.009003||p -newSVpv||| -newSVrv||| -newSVsv||| -newSVuv|5.006000||p -newSV||| -newTOKEN||| -newUNOP||| -newWHENOP||5.009003| -newWHILEOP||5.009003| -newXS_flags||5.009004| -newXSproto||5.006000| -newXS||5.006000| -new_collate||5.006000| -new_constant||| -new_ctype||5.006000| -new_he||| -new_logop||| -new_numeric||5.006000| -new_stackinfo||5.005000| -new_version||5.009000| -new_warnings_bitfield||| -next_symbol||| -nextargv||| -nextchar||| -ninstr||| -no_bareword_allowed||| -no_fh_allowed||| -no_op||| -not_a_number||| -nothreadhook||5.008000| -nuke_stacks||| -num_overflow|||n -offer_nice_chunk||| -oopsAV||| -oopsHV||| -op_clear||| -op_const_sv||| -op_dump||5.006000| -op_free||| -op_getmad_weak||| -op_getmad||| -op_null||5.007002| -op_refcnt_dec||| -op_refcnt_inc||| -op_refcnt_lock||5.009002| -op_refcnt_unlock||5.009002| -op_xmldump||| -open_script||| -pMY_CXT_|5.007003||p -pMY_CXT|5.007003||p -pTHX_|5.006000||p -pTHX|5.006000||p -packWARN|5.007003||p -pack_cat||5.007003| -pack_rec||| -package||| -packlist||5.008001| -pad_add_anon||| -pad_add_name||| -pad_alloc||| -pad_block_start||| -pad_check_dup||| -pad_compname_type||| -pad_findlex||| -pad_findmy||| -pad_fixup_inner_anons||| -pad_free||| -pad_leavemy||| -pad_new||| -pad_peg|||n -pad_push||| -pad_reset||| -pad_setsv||| -pad_sv||5.011000| -pad_swipe||| -pad_tidy||| -pad_undef||| -parse_body||| -parse_unicode_opts||| -parser_dup||| -parser_free||| -path_is_absolute|||n -peep||| -pending_Slabs_to_ro||| -perl_alloc_using|||n -perl_alloc|||n -perl_clone_using|||n -perl_clone|||n -perl_construct|||n -perl_destruct||5.007003|n -perl_free|||n -perl_parse||5.006000|n -perl_run|||n -pidgone||| -pm_description||| -pmflag||| -pmop_dump||5.006000| -pmop_xmldump||| -pmruntime||| -pmtrans||| -pop_scope||| -pregcomp||5.009005| -pregexec||| -pregfree2||5.011000| -pregfree||| -prepend_elem||| -prepend_madprops||| -printbuf||| -printf_nocontext|||vn -process_special_blocks||| -ptr_table_clear||5.009005| -ptr_table_fetch||5.009005| -ptr_table_find|||n -ptr_table_free||5.009005| -ptr_table_new||5.009005| -ptr_table_split||5.009005| -ptr_table_store||5.009005| -push_scope||| -put_byte||| -pv_display|5.006000||p -pv_escape|5.009004||p -pv_pretty|5.009004||p -pv_uni_display||5.007003| -qerror||| -qsortsvu||| -re_compile||5.009005| -re_croak2||| -re_dup_guts||| -re_intuit_start||5.009005| -re_intuit_string||5.006000| -readpipe_override||| -realloc||5.007002|n -reentrant_free||| -reentrant_init||| -reentrant_retry|||vn -reentrant_size||| -ref_array_or_hash||| -refcounted_he_chain_2hv||| -refcounted_he_fetch||| -refcounted_he_free||| -refcounted_he_new_common||| -refcounted_he_new||| -refcounted_he_value||| -refkids||| -refto||| -ref||5.011000| -reg_check_named_buff_matched||| -reg_named_buff_all||5.009005| -reg_named_buff_exists||5.009005| -reg_named_buff_fetch||5.009005| -reg_named_buff_firstkey||5.009005| -reg_named_buff_iter||| -reg_named_buff_nextkey||5.009005| -reg_named_buff_scalar||5.009005| -reg_named_buff||| -reg_namedseq||| -reg_node||| -reg_numbered_buff_fetch||| -reg_numbered_buff_length||| -reg_numbered_buff_store||| -reg_qr_package||| -reg_recode||| -reg_scan_name||| -reg_skipcomment||| -reg_temp_copy||| -reganode||| -regatom||| -regbranch||| -regclass_swash||5.009004| -regclass||| -regcppop||| -regcppush||| -regcurly|||n -regdump_extflags||| -regdump||5.005000| -regdupe_internal||| -regexec_flags||5.005000| -regfree_internal||5.009005| -reghop3|||n -reghop4|||n -reghopmaybe3|||n -reginclass||| -reginitcolors||5.006000| -reginsert||| -regmatch||| -regnext||5.005000| -regpiece||| -regpposixcc||| -regprop||| -regrepeat||| -regtail_study||| -regtail||| -regtry||| -reguni||| -regwhite|||n -reg||| -repeatcpy||| -report_evil_fh||| -report_uninit||| -require_pv||5.006000| -require_tie_mod||| -restore_magic||| -rninstr||| -rsignal_restore||| -rsignal_save||| -rsignal_state||5.004000| -rsignal||5.004000| -run_body||| -run_user_filter||| -runops_debug||5.005000| -runops_standard||5.005000| -rvpv_dup||| -rxres_free||| -rxres_restore||| -rxres_save||| -safesyscalloc||5.006000|n -safesysfree||5.006000|n -safesysmalloc||5.006000|n -safesysrealloc||5.006000|n -same_dirent||| -save_I16||5.004000| -save_I32||| -save_I8||5.006000| -save_adelete||5.011000| -save_aelem||5.004050| -save_alloc||5.006000| -save_aptr||| -save_ary||| -save_bool||5.008001| -save_clearsv||| -save_delete||| -save_destructor_x||5.006000| -save_destructor||5.006000| -save_freeop||| -save_freepv||| -save_freesv||| -save_generic_pvref||5.006001| -save_generic_svref||5.005030| -save_gp||5.004000| -save_hash||| -save_hek_flags|||n -save_helem_flags||5.011000| -save_helem||5.004050| -save_hints||| -save_hptr||| -save_int||| -save_item||| -save_iv||5.005000| -save_lines||| -save_list||| -save_long||| -save_magic||| -save_mortalizesv||5.007001| -save_nogv||| -save_op||| -save_padsv_and_mortalize||5.011000| -save_pptr||| -save_pushi32ptr||| -save_pushptri32ptr||| -save_pushptrptr||| -save_pushptr||5.011000| -save_re_context||5.006000| -save_scalar_at||| -save_scalar||| -save_set_svflags||5.009000| -save_shared_pvref||5.007003| -save_sptr||| -save_svref||| -save_vptr||5.006000| -savepvn||| -savepvs||5.009003| -savepv||| -savesharedpvn||5.009005| -savesharedpv||5.007003| -savestack_grow_cnt||5.008001| -savestack_grow||| -savesvpv||5.009002| -sawparens||| -scalar_mod_type|||n -scalarboolean||| -scalarkids||| -scalarseq||| -scalarvoid||| -scalar||| -scan_bin||5.006000| -scan_commit||| -scan_const||| -scan_formline||| -scan_heredoc||| -scan_hex||| -scan_ident||| -scan_inputsymbol||| -scan_num||5.007001| -scan_oct||| -scan_pat||| -scan_str||| -scan_subst||| -scan_trans||| -scan_version||5.009001| -scan_vstring||5.009005| -scan_word||| -scope||| -screaminstr||5.005000| -search_const||| -seed||5.008001| -sequence_num||| -sequence_tail||| -sequence||| -set_context||5.006000|n -set_numeric_local||5.006000| -set_numeric_radix||5.006000| -set_numeric_standard||5.006000| -setdefout||| -share_hek_flags||| -share_hek||5.004000| -si_dup||| -sighandler|||n -simplify_sort||| -skipspace0||| -skipspace1||| -skipspace2||| -skipspace||| -softref2xv||| -sortcv_stacked||| -sortcv_xsub||| -sortcv||| -sortsv_flags||5.009003| -sortsv||5.007003| -space_join_names_mortal||| -ss_dup||| -stack_grow||| -start_force||| -start_glob||| -start_subparse||5.004000| -stashpv_hvname_match||5.011000| -stdize_locale||| -store_cop_label||| -strEQ||| -strGE||| -strGT||| -strLE||| -strLT||| -strNE||| -str_to_version||5.006000| -strip_return||| -strnEQ||| -strnNE||| -study_chunk||| -sub_crush_depth||| -sublex_done||| -sublex_push||| -sublex_start||| -sv_2bool||| -sv_2cv||| -sv_2io||| -sv_2iuv_common||| -sv_2iuv_non_preserve||| -sv_2iv_flags||5.009001| -sv_2iv||| -sv_2mortal||| -sv_2num||| -sv_2nv||| -sv_2pv_flags|5.007002||p -sv_2pv_nolen|5.006000||p -sv_2pvbyte_nolen|5.006000||p -sv_2pvbyte|5.006000||p -sv_2pvutf8_nolen||5.006000| -sv_2pvutf8||5.006000| -sv_2pv||| -sv_2uv_flags||5.009001| -sv_2uv|5.004000||p -sv_add_arena||| -sv_add_backref||| -sv_backoff||| -sv_bless||| -sv_cat_decode||5.008001| -sv_catpv_mg|5.004050||p -sv_catpvf_mg_nocontext|||pvn -sv_catpvf_mg|5.006000|5.004000|pv -sv_catpvf_nocontext|||vn -sv_catpvf||5.004000|v -sv_catpvn_flags||5.007002| -sv_catpvn_mg|5.004050||p -sv_catpvn_nomg|5.007002||p -sv_catpvn||| -sv_catpvs|5.009003||p -sv_catpv||| -sv_catsv_flags||5.007002| -sv_catsv_mg|5.004050||p -sv_catsv_nomg|5.007002||p -sv_catsv||| -sv_catxmlpvn||| -sv_catxmlsv||| -sv_chop||| -sv_clean_all||| -sv_clean_objs||| -sv_clear||| -sv_cmp_locale||5.004000| -sv_cmp||| -sv_collxfrm||| -sv_compile_2op||5.008001| -sv_copypv||5.007003| -sv_dec||| -sv_del_backref||| -sv_derived_from||5.004000| -sv_destroyable||5.010000| -sv_does||5.009004| -sv_dump||| -sv_dup_inc_multiple||| -sv_dup||| -sv_eq||| -sv_exp_grow||| -sv_force_normal_flags||5.007001| -sv_force_normal||5.006000| -sv_free2||| -sv_free_arenas||| -sv_free||| -sv_gets||5.004000| -sv_grow||| -sv_i_ncmp||| -sv_inc||| -sv_insert_flags||5.011000| -sv_insert||| -sv_isa||| -sv_isobject||| -sv_iv||5.005000| -sv_kill_backrefs||| -sv_len_utf8||5.006000| -sv_len||| -sv_magic_portable|5.011000|5.004000|p -sv_magicext||5.007003| -sv_magic||| -sv_mortalcopy||| -sv_ncmp||| -sv_newmortal||| -sv_newref||| -sv_nolocking||5.007003| -sv_nosharing||5.007003| -sv_nounlocking||| -sv_nv||5.005000| -sv_peek||5.005000| -sv_pos_b2u_midway||| -sv_pos_b2u||5.006000| -sv_pos_u2b_cached||| -sv_pos_u2b_forwards|||n -sv_pos_u2b_midway|||n -sv_pos_u2b||5.006000| -sv_pvbyten_force||5.006000| -sv_pvbyten||5.006000| -sv_pvbyte||5.006000| -sv_pvn_force_flags|5.007002||p -sv_pvn_force||| -sv_pvn_nomg|5.007003|5.005000|p -sv_pvn||5.005000| -sv_pvutf8n_force||5.006000| -sv_pvutf8n||5.006000| -sv_pvutf8||5.006000| -sv_pv||5.006000| -sv_recode_to_utf8||5.007003| -sv_reftype||| -sv_release_COW||| -sv_replace||| -sv_report_used||| -sv_reset||| -sv_rvweaken||5.006000| -sv_setiv_mg|5.004050||p -sv_setiv||| -sv_setnv_mg|5.006000||p -sv_setnv||| -sv_setpv_mg|5.004050||p -sv_setpvf_mg_nocontext|||pvn -sv_setpvf_mg|5.006000|5.004000|pv -sv_setpvf_nocontext|||vn -sv_setpvf||5.004000|v -sv_setpviv_mg||5.008001| -sv_setpviv||5.008001| -sv_setpvn_mg|5.004050||p -sv_setpvn||| -sv_setpvs|5.009004||p -sv_setpv||| -sv_setref_iv||| -sv_setref_nv||| -sv_setref_pvn||| -sv_setref_pv||| -sv_setref_uv||5.007001| -sv_setsv_cow||| -sv_setsv_flags||5.007002| -sv_setsv_mg|5.004050||p -sv_setsv_nomg|5.007002||p -sv_setsv||| -sv_setuv_mg|5.004050||p -sv_setuv|5.004000||p -sv_tainted||5.004000| -sv_taint||5.004000| -sv_true||5.005000| -sv_unglob||| -sv_uni_display||5.007003| -sv_unmagic||| -sv_unref_flags||5.007001| -sv_unref||| -sv_untaint||5.004000| -sv_upgrade||| -sv_usepvn_flags||5.009004| -sv_usepvn_mg|5.004050||p -sv_usepvn||| -sv_utf8_decode||5.006000| -sv_utf8_downgrade||5.006000| -sv_utf8_encode||5.006000| -sv_utf8_upgrade_flags_grow||5.011000| -sv_utf8_upgrade_flags||5.007002| -sv_utf8_upgrade_nomg||5.007002| -sv_utf8_upgrade||5.007001| -sv_uv|5.005000||p -sv_vcatpvf_mg|5.006000|5.004000|p -sv_vcatpvfn||5.004000| -sv_vcatpvf|5.006000|5.004000|p -sv_vsetpvf_mg|5.006000|5.004000|p -sv_vsetpvfn||5.004000| -sv_vsetpvf|5.006000|5.004000|p -sv_xmlpeek||| -svtype||| -swallow_bom||| -swap_match_buff||| -swash_fetch||5.007002| -swash_get||| -swash_init||5.006000| -sys_init3||5.010000|n -sys_init||5.010000|n -sys_intern_clear||| -sys_intern_dup||| -sys_intern_init||| -sys_term||5.010000|n -taint_env||| -taint_proper||| -tmps_grow||5.006000| -toLOWER||| -toUPPER||| -to_byte_substr||| -to_uni_fold||5.007003| -to_uni_lower_lc||5.006000| -to_uni_lower||5.007003| -to_uni_title_lc||5.006000| -to_uni_title||5.007003| -to_uni_upper_lc||5.006000| -to_uni_upper||5.007003| -to_utf8_case||5.007003| -to_utf8_fold||5.007003| -to_utf8_lower||5.007003| -to_utf8_substr||| -to_utf8_title||5.007003| -to_utf8_upper||5.007003| -token_free||| -token_getmad||| -tokenize_use||| -tokeq||| -tokereport||| -too_few_arguments||| -too_many_arguments||| -uiv_2buf|||n -unlnk||| -unpack_rec||| -unpack_str||5.007003| -unpackstring||5.008001| -unshare_hek_or_pvn||| -unshare_hek||| -unsharepvn||5.004000| -unwind_handler_stack||| -update_debugger_info||| -upg_version||5.009005| -usage||| -utf16_to_utf8_reversed||5.006001| -utf16_to_utf8||5.006001| -utf8_distance||5.006000| -utf8_hop||5.006000| -utf8_length||5.007001| -utf8_mg_pos_cache_update||| -utf8_to_bytes||5.006001| -utf8_to_uvchr||5.007001| -utf8_to_uvuni||5.007001| -utf8n_to_uvchr||| -utf8n_to_uvuni||5.007001| -utilize||| -uvchr_to_utf8_flags||5.007003| -uvchr_to_utf8||| -uvuni_to_utf8_flags||5.007003| -uvuni_to_utf8||5.007001| -validate_suid||| -varname||| -vcmp||5.009000| -vcroak||5.006000| -vdeb||5.007003| -vdie_common||| -vdie_croak_common||| -vdie||| -vform||5.006000| -visit||| -vivify_defelem||| -vivify_ref||| -vload_module|5.006000||p -vmess||5.006000| -vnewSVpvf|5.006000|5.004000|p -vnormal||5.009002| -vnumify||5.009000| -vstringify||5.009000| -vverify||5.009003| -vwarner||5.006000| -vwarn||5.006000| -wait4pid||| -warn_nocontext|||vn -warner_nocontext|||vn -warner|5.006000|5.004000|pv -warn|||v -watch||| -whichsig||| -write_no_mem||| -write_to_stderr||| -xmldump_all||| -xmldump_attr||| -xmldump_eval||| -xmldump_form||| -xmldump_indent|||v -xmldump_packsubs||| -xmldump_sub||| -xmldump_vindent||| -yyerror||| -yylex||| -yyparse||| -yywarn||| -); - -if (exists $opt{'list-unsupported'}) { - my $f; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $API{$f}{todo}; - print "$f ", '.'x(40-length($f)), " ", format_version($API{$f}{todo}), "\n"; - } - exit 0; -} - -# Scan for possible replacement candidates - -my(%replace, %need, %hints, %warnings, %depends); -my $replace = 0; -my($hint, $define, $function); - -sub find_api -{ - my $code = shift; - $code =~ s{ - / (?: \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / | /[^\r\n]*) - | "[^"\\]*(?:\\.[^"\\]*)*" - | '[^'\\]*(?:\\.[^'\\]*)*' }{}egsx; - grep { exists $API{$_} } $code =~ /(\w+)/mg; -} - -while () { - if ($hint) { - my $h = $hint->[0] eq 'Hint' ? \%hints : \%warnings; - if (m{^\s*\*\s(.*?)\s*$}) { - for (@{$hint->[1]}) { - $h->{$_} ||= ''; # suppress warning with older perls - $h->{$_} .= "$1\n"; - } - } - else { undef $hint } - } - - $hint = [$1, [split /,?\s+/, $2]] - if m{^\s*$rccs\s+(Hint|Warning):\s+(\w+(?:,?\s+\w+)*)\s*$}; - - if ($define) { - if ($define->[1] =~ /\\$/) { - $define->[1] .= $_; - } - else { - if (exists $API{$define->[0]} && $define->[1] !~ /^DPPP_\(/) { - my @n = find_api($define->[1]); - push @{$depends{$define->[0]}}, @n if @n - } - undef $define; - } - } - - $define = [$1, $2] if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(.*)}; - - if ($function) { - if (/^}/) { - if (exists $API{$function->[0]}) { - my @n = find_api($function->[1]); - push @{$depends{$function->[0]}}, @n if @n - } - undef $function; - } - else { - $function->[1] .= $_; - } - } - - $function = [$1, ''] if m{^DPPP_\(my_(\w+)\)}; - - $replace = $1 if m{^\s*$rccs\s+Replace:\s+(\d+)\s+$rcce\s*$}; - $replace{$2} = $1 if $replace and m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+)}; - $replace{$2} = $1 if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+).*$rccs\s+Replace\s+$rcce}; - $replace{$1} = $2 if m{^\s*$rccs\s+Replace (\w+) with (\w+)\s+$rcce\s*$}; - - if (m{^\s*$rccs\s+(\w+(\s*,\s*\w+)*)\s+depends\s+on\s+(\w+(\s*,\s*\w+)*)\s+$rcce\s*$}) { - my @deps = map { s/\s+//g; $_ } split /,/, $3; - my $d; - for $d (map { s/\s+//g; $_ } split /,/, $1) { - push @{$depends{$d}}, @deps; - } - } - - $need{$1} = 1 if m{^#if\s+defined\(NEED_(\w+)(?:_GLOBAL)?\)}; -} - -for (values %depends) { - my %s; - $_ = [sort grep !$s{$_}++, @$_]; -} - -if (exists $opt{'api-info'}) { - my $f; - my $count = 0; - my $match = $opt{'api-info'} =~ m!^/(.*)/$! ? $1 : "^\Q$opt{'api-info'}\E\$"; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $f =~ /$match/; - print "\n=== $f ===\n\n"; - my $info = 0; - if ($API{$f}{base} || $API{$f}{todo}) { - my $base = format_version($API{$f}{base} || $API{$f}{todo}); - print "Supported at least starting from perl-$base.\n"; - $info++; - } - if ($API{$f}{provided}) { - my $todo = $API{$f}{todo} ? format_version($API{$f}{todo}) : "5.003"; - print "Support by $ppport provided back to perl-$todo.\n"; - print "Support needs to be explicitly requested by NEED_$f.\n" if exists $need{$f}; - print "Depends on: ", join(', ', @{$depends{$f}}), ".\n" if exists $depends{$f}; - print "\n$hints{$f}" if exists $hints{$f}; - print "\nWARNING:\n$warnings{$f}" if exists $warnings{$f}; - $info++; - } - print "No portability information available.\n" unless $info; - $count++; - } - $count or print "Found no API matching '$opt{'api-info'}'."; - print "\n"; - exit 0; -} - -if (exists $opt{'list-provided'}) { - my $f; - for $f (sort { lc $a cmp lc $b } keys %API) { - next unless $API{$f}{provided}; - my @flags; - push @flags, 'explicit' if exists $need{$f}; - push @flags, 'depend' if exists $depends{$f}; - push @flags, 'hint' if exists $hints{$f}; - push @flags, 'warning' if exists $warnings{$f}; - my $flags = @flags ? ' ['.join(', ', @flags).']' : ''; - print "$f$flags\n"; - } - exit 0; -} - -my @files; -my @srcext = qw( .xs .c .h .cc .cpp -c.inc -xs.inc ); -my $srcext = join '|', map { quotemeta $_ } @srcext; - -if (@ARGV) { - my %seen; - for (@ARGV) { - if (-e) { - if (-f) { - push @files, $_ unless $seen{$_}++; - } - else { warn "'$_' is not a file.\n" } - } - else { - my @new = grep { -f } glob $_ - or warn "'$_' does not exist.\n"; - push @files, grep { !$seen{$_}++ } @new; - } - } -} -else { - eval { - require File::Find; - File::Find::find(sub { - $File::Find::name =~ /($srcext)$/i - and push @files, $File::Find::name; - }, '.'); - }; - if ($@) { - @files = map { glob "*$_" } @srcext; - } -} - -if (!@ARGV || $opt{filter}) { - my(@in, @out); - my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files; - for (@files) { - my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/($srcext)$/i; - push @{ $out ? \@out : \@in }, $_; - } - if (@ARGV && @out) { - warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out); - } - @files = @in; -} - -die "No input files given!\n" unless @files; - -my(%files, %global, %revreplace); -%revreplace = reverse %replace; -my $filename; -my $patch_opened = 0; - -for $filename (@files) { - unless (open IN, "<$filename") { - warn "Unable to read from $filename: $!\n"; - next; - } - - info("Scanning $filename ..."); - - my $c = do { local $/; }; - close IN; - - my %file = (orig => $c, changes => 0); - - # Temporarily remove C/XS comments and strings from the code - my @ccom; - - $c =~ s{ - ( ^$HS*\#$HS*include\b[^\r\n]+\b(?:\Q$ppport\E|XSUB\.h)\b[^\r\n]* - | ^$HS*\#$HS*(?:define|elif|if(?:def)?)\b[^\r\n]* ) - | ( ^$HS*\#[^\r\n]* - | "[^"\\]*(?:\\.[^"\\]*)*" - | '[^'\\]*(?:\\.[^'\\]*)*' - | / (?: \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / | /[^\r\n]* ) ) - }{ defined $2 and push @ccom, $2; - defined $1 ? $1 : "$ccs$#ccom$cce" }mgsex; - - $file{ccom} = \@ccom; - $file{code} = $c; - $file{has_inc_ppport} = $c =~ /^$HS*#$HS*include[^\r\n]+\b\Q$ppport\E\b/m; - - my $func; - - for $func (keys %API) { - my $match = $func; - $match .= "|$revreplace{$func}" if exists $revreplace{$func}; - if ($c =~ /\b(?:Perl_)?($match)\b/) { - $file{uses_replace}{$1}++ if exists $revreplace{$func} && $1 eq $revreplace{$func}; - $file{uses_Perl}{$func}++ if $c =~ /\bPerl_$func\b/; - if (exists $API{$func}{provided}) { - $file{uses_provided}{$func}++; - if (!exists $API{$func}{base} || $API{$func}{base} > $opt{'compat-version'}) { - $file{uses}{$func}++; - my @deps = rec_depend($func); - if (@deps) { - $file{uses_deps}{$func} = \@deps; - for (@deps) { - $file{uses}{$_} = 0 unless exists $file{uses}{$_}; - } - } - for ($func, @deps) { - $file{needs}{$_} = 'static' if exists $need{$_}; - } - } - } - if (exists $API{$func}{todo} && $API{$func}{todo} > $opt{'compat-version'}) { - if ($c =~ /\b$func\b/) { - $file{uses_todo}{$func}++; - } - } - } - } - - while ($c =~ /^$HS*#$HS*define$HS+(NEED_(\w+?)(_GLOBAL)?)\b/mg) { - if (exists $need{$2}) { - $file{defined $3 ? 'needed_global' : 'needed_static'}{$2}++; - } - else { warning("Possibly wrong #define $1 in $filename") } - } - - for (qw(uses needs uses_todo needed_global needed_static)) { - for $func (keys %{$file{$_}}) { - push @{$global{$_}{$func}}, $filename; - } - } - - $files{$filename} = \%file; -} - -# Globally resolve NEED_'s -my $need; -for $need (keys %{$global{needs}}) { - if (@{$global{needs}{$need}} > 1) { - my @targets = @{$global{needs}{$need}}; - my @t = grep $files{$_}{needed_global}{$need}, @targets; - @targets = @t if @t; - @t = grep /\.xs$/i, @targets; - @targets = @t if @t; - my $target = shift @targets; - $files{$target}{needs}{$need} = 'global'; - for (@{$global{needs}{$need}}) { - $files{$_}{needs}{$need} = 'extern' if $_ ne $target; - } - } -} - -for $filename (@files) { - exists $files{$filename} or next; - - info("=== Analyzing $filename ==="); - - my %file = %{$files{$filename}}; - my $func; - my $c = $file{code}; - my $warnings = 0; - - for $func (sort keys %{$file{uses_Perl}}) { - if ($API{$func}{varargs}) { - unless ($API{$func}{nothxarg}) { - my $changes = ($c =~ s{\b(Perl_$func\s*\(\s*)(?!aTHX_?)(\)|[^\s)]*\))} - { $1 . ($2 eq ')' ? 'aTHX' : 'aTHX_ ') . $2 }ge); - if ($changes) { - warning("Doesn't pass interpreter argument aTHX to Perl_$func"); - $file{changes} += $changes; - } - } - } - else { - warning("Uses Perl_$func instead of $func"); - $file{changes} += ($c =~ s{\bPerl_$func(\s*)\((\s*aTHX_?)?\s*} - {$func$1(}g); - } - } - - for $func (sort keys %{$file{uses_replace}}) { - warning("Uses $func instead of $replace{$func}"); - $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); - } - - for $func (sort keys %{$file{uses_provided}}) { - if ($file{uses}{$func}) { - if (exists $file{uses_deps}{$func}) { - diag("Uses $func, which depends on ", join(', ', @{$file{uses_deps}{$func}})); - } - else { - diag("Uses $func"); - } - } - $warnings += hint($func); - } - - unless ($opt{quiet}) { - for $func (sort keys %{$file{uses_todo}}) { - print "*** WARNING: Uses $func, which may not be portable below perl ", - format_version($API{$func}{todo}), ", even with '$ppport'\n"; - $warnings++; - } - } - - for $func (sort keys %{$file{needed_static}}) { - my $message = ''; - if (not exists $file{uses}{$func}) { - $message = "No need to define NEED_$func if $func is never used"; - } - elsif (exists $file{needs}{$func} && $file{needs}{$func} ne 'static') { - $message = "No need to define NEED_$func when already needed globally"; - } - if ($message) { - diag($message); - $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_$func\b.*$LF//mg); - } - } - - for $func (sort keys %{$file{needed_global}}) { - my $message = ''; - if (not exists $global{uses}{$func}) { - $message = "No need to define NEED_${func}_GLOBAL if $func is never used"; - } - elsif (exists $file{needs}{$func}) { - if ($file{needs}{$func} eq 'extern') { - $message = "No need to define NEED_${func}_GLOBAL when already needed globally"; - } - elsif ($file{needs}{$func} eq 'static') { - $message = "No need to define NEED_${func}_GLOBAL when only used in this file"; - } - } - if ($message) { - diag($message); - $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_${func}_GLOBAL\b.*$LF//mg); - } - } - - $file{needs_inc_ppport} = keys %{$file{uses}}; - - if ($file{needs_inc_ppport}) { - my $pp = ''; - - for $func (sort keys %{$file{needs}}) { - my $type = $file{needs}{$func}; - next if $type eq 'extern'; - my $suffix = $type eq 'global' ? '_GLOBAL' : ''; - unless (exists $file{"needed_$type"}{$func}) { - if ($type eq 'global') { - diag("Files [@{$global{needs}{$func}}] need $func, adding global request"); - } - else { - diag("File needs $func, adding static request"); - } - $pp .= "#define NEED_$func$suffix\n"; - } - } - - if ($pp && ($c =~ s/^(?=$HS*#$HS*define$HS+NEED_\w+)/$pp/m)) { - $pp = ''; - $file{changes}++; - } - - unless ($file{has_inc_ppport}) { - diag("Needs to include '$ppport'"); - $pp .= qq(#include "$ppport"\n) - } - - if ($pp) { - $file{changes} += ($c =~ s/^($HS*#$HS*define$HS+NEED_\w+.*?)^/$1$pp/ms) - || ($c =~ s/^(?=$HS*#$HS*include.*\Q$ppport\E)/$pp/m) - || ($c =~ s/^($HS*#$HS*include.*XSUB.*\s*?)^/$1$pp/m) - || ($c =~ s/^/$pp/); - } - } - else { - if ($file{has_inc_ppport}) { - diag("No need to include '$ppport'"); - $file{changes} += ($c =~ s/^$HS*?#$HS*include.*\Q$ppport\E.*?$LF//m); - } - } - - # put back in our C comments - my $ix; - my $cppc = 0; - my @ccom = @{$file{ccom}}; - for $ix (0 .. $#ccom) { - if (!$opt{cplusplus} && $ccom[$ix] =~ s!^//!!) { - $cppc++; - $file{changes} += $c =~ s/$rccs$ix$rcce/$ccs$ccom[$ix] $cce/; - } - else { - $c =~ s/$rccs$ix$rcce/$ccom[$ix]/; - } - } - - if ($cppc) { - my $s = $cppc != 1 ? 's' : ''; - warning("Uses $cppc C++ style comment$s, which is not portable"); - } - - my $s = $warnings != 1 ? 's' : ''; - my $warn = $warnings ? " ($warnings warning$s)" : ''; - info("Analysis completed$warn"); - - if ($file{changes}) { - if (exists $opt{copy}) { - my $newfile = "$filename$opt{copy}"; - if (-e $newfile) { - error("'$newfile' already exists, refusing to write copy of '$filename'"); - } - else { - local *F; - if (open F, ">$newfile") { - info("Writing copy of '$filename' with changes to '$newfile'"); - print F $c; - close F; - } - else { - error("Cannot open '$newfile' for writing: $!"); - } - } - } - elsif (exists $opt{patch} || $opt{changes}) { - if (exists $opt{patch}) { - unless ($patch_opened) { - if (open PATCH, ">$opt{patch}") { - $patch_opened = 1; - } - else { - error("Cannot open '$opt{patch}' for writing: $!"); - delete $opt{patch}; - $opt{changes} = 1; - goto fallback; - } - } - mydiff(\*PATCH, $filename, $c); - } - else { -fallback: - info("Suggested changes:"); - mydiff(\*STDOUT, $filename, $c); - } - } - else { - my $s = $file{changes} == 1 ? '' : 's'; - info("$file{changes} potentially required change$s detected"); - } - } - else { - info("Looks good"); - } -} - -close PATCH if $patch_opened; - -exit 0; - - -sub try_use { eval "use @_;"; return $@ eq '' } - -sub mydiff -{ - local *F = shift; - my($file, $str) = @_; - my $diff; - - if (exists $opt{diff}) { - $diff = run_diff($opt{diff}, $file, $str); - } - - if (!defined $diff and try_use('Text::Diff')) { - $diff = Text::Diff::diff($file, \$str, { STYLE => 'Unified' }); - $diff = <

$tmp") { - print F $str; - close F; - - if (open F, "$prog $file $tmp |") { - while () { - s/\Q$tmp\E/$file.patched/; - $diff .= $_; - } - close F; - unlink $tmp; - return $diff; - } - - unlink $tmp; - } - else { - error("Cannot open '$tmp' for writing: $!"); - } - - return undef; -} - -sub rec_depend -{ - my($func, $seen) = @_; - return () unless exists $depends{$func}; - $seen = {%{$seen||{}}}; - return () if $seen->{$func}++; - my %s; - grep !$s{$_}++, map { ($_, rec_depend($_, $seen)) } @{$depends{$func}}; -} - -sub parse_version -{ - my $ver = shift; - - if ($ver =~ /^(\d+)\.(\d+)\.(\d+)$/) { - return ($1, $2, $3); - } - elsif ($ver !~ /^\d+\.[\d_]+$/) { - die "cannot parse version '$ver'\n"; - } - - $ver =~ s/_//g; - $ver =~ s/$/000000/; - - my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; - - $v = int $v; - $s = int $s; - - if ($r < 5 || ($r == 5 && $v < 6)) { - if ($s % 10) { - die "cannot parse version '$ver'\n"; - } - } - - return ($r, $v, $s); -} - -sub format_version -{ - my $ver = shift; - - $ver =~ s/$/000000/; - my($r,$v,$s) = $ver =~ /(\d+)\.(\d{3})(\d{3})/; - - $v = int $v; - $s = int $s; - - if ($r < 5 || ($r == 5 && $v < 6)) { - if ($s % 10) { - die "invalid version '$ver'\n"; - } - $s /= 10; - - $ver = sprintf "%d.%03d", $r, $v; - $s > 0 and $ver .= sprintf "_%02d", $s; - - return $ver; - } - - return sprintf "%d.%d.%d", $r, $v, $s; -} - -sub info -{ - $opt{quiet} and return; - print @_, "\n"; -} - -sub diag -{ - $opt{quiet} and return; - $opt{diag} and print @_, "\n"; -} - -sub warning -{ - $opt{quiet} and return; - print "*** ", @_, "\n"; -} - -sub error -{ - print "*** ERROR: ", @_, "\n"; -} - -my %given_hints; -my %given_warnings; -sub hint -{ - $opt{quiet} and return; - my $func = shift; - my $rv = 0; - if (exists $warnings{$func} && !$given_warnings{$func}++) { - my $warn = $warnings{$func}; - $warn =~ s!^!*** !mg; - print "*** WARNING: $func\n", $warn; - $rv++; - } - if ($opt{hints} && exists $hints{$func} && !$given_hints{$func}++) { - my $hint = $hints{$func}; - $hint =~ s/^/ /mg; - print " --- hint for $func ---\n", $hint; - } - $rv; -} - -sub usage -{ - my($usage) = do { local(@ARGV,$/)=($0); <> } =~ /^=head\d$HS+SYNOPSIS\s*^(.*?)\s*^=/ms; - my %M = ( 'I' => '*' ); - $usage =~ s/^\s*perl\s+\S+/$^X $0/; - $usage =~ s/([A-Z])<([^>]+)>/$M{$1}$2$M{$1}/g; - - print < }; - my($copy) = $self =~ /^=head\d\s+COPYRIGHT\s*^(.*?)^=\w+/ms; - $copy =~ s/^(?=\S+)/ /gms; - $self =~ s/^$HS+Do NOT edit.*?(?=^-)/$copy/ms; - $self =~ s/^SKIP.*(?=^__DATA__)/SKIP -if (\@ARGV && \$ARGV[0] eq '--unstrip') { - eval { require Devel::PPPort }; - \$@ and die "Cannot require Devel::PPPort, please install.\\n"; - if (eval \$Devel::PPPort::VERSION < $VERSION) { - die "$0 was originally generated with Devel::PPPort $VERSION.\\n" - . "Your Devel::PPPort is only version \$Devel::PPPort::VERSION.\\n" - . "Please install a newer version, or --unstrip will not work.\\n"; - } - Devel::PPPort::WriteFile(\$0); - exit 0; -} -print <$0" or die "cannot strip $0: $!\n"; - print OUT "$pl$c\n"; - - exit 0; -} - -__DATA__ -*/ - -#ifndef _P_P_PORTABILITY_H_ -#define _P_P_PORTABILITY_H_ - -#ifndef DPPP_NAMESPACE -# define DPPP_NAMESPACE DPPP_ -#endif - -#define DPPP_CAT2(x,y) CAT2(x,y) -#define DPPP_(name) DPPP_CAT2(DPPP_NAMESPACE, name) - -#ifndef PERL_REVISION -# if !defined(__PATCHLEVEL_H_INCLUDED__) && !(defined(PATCHLEVEL) && defined(SUBVERSION)) -# define PERL_PATCHLEVEL_H_IMPLICIT -# include -# endif -# if !(defined(PERL_VERSION) || (defined(SUBVERSION) && defined(PATCHLEVEL))) -# include -# endif -# ifndef PERL_REVISION -# define PERL_REVISION (5) - /* Replace: 1 */ -# define PERL_VERSION PATCHLEVEL -# define PERL_SUBVERSION SUBVERSION - /* Replace PERL_PATCHLEVEL with PERL_VERSION */ - /* Replace: 0 */ -# endif -#endif - -#define _dpppDEC2BCD(dec) ((((dec)/100)<<8)|((((dec)%100)/10)<<4)|((dec)%10)) -#define PERL_BCDVERSION ((_dpppDEC2BCD(PERL_REVISION)<<24)|(_dpppDEC2BCD(PERL_VERSION)<<12)|_dpppDEC2BCD(PERL_SUBVERSION)) - -/* It is very unlikely that anyone will try to use this with Perl 6 - (or greater), but who knows. - */ -#if PERL_REVISION != 5 -# error ppport.h only works with Perl version 5 -#endif /* PERL_REVISION != 5 */ -#ifndef dTHR -# define dTHR dNOOP -#endif -#ifndef dTHX -# define dTHX dNOOP -#endif - -#ifndef dTHXa -# define dTHXa(x) dNOOP -#endif -#ifndef pTHX -# define pTHX void -#endif - -#ifndef pTHX_ -# define pTHX_ -#endif - -#ifndef aTHX -# define aTHX -#endif - -#ifndef aTHX_ -# define aTHX_ -#endif - -#if (PERL_BCDVERSION < 0x5006000) -# ifdef USE_THREADS -# define aTHXR thr -# define aTHXR_ thr, -# else -# define aTHXR -# define aTHXR_ -# endif -# define dTHXR dTHR -#else -# define aTHXR aTHX -# define aTHXR_ aTHX_ -# define dTHXR dTHX -#endif -#ifndef dTHXoa -# define dTHXoa(x) dTHXa(x) -#endif - -#ifdef I_LIMITS -# include -#endif - -#ifndef PERL_UCHAR_MIN -# define PERL_UCHAR_MIN ((unsigned char)0) -#endif - -#ifndef PERL_UCHAR_MAX -# ifdef UCHAR_MAX -# define PERL_UCHAR_MAX ((unsigned char)UCHAR_MAX) -# else -# ifdef MAXUCHAR -# define PERL_UCHAR_MAX ((unsigned char)MAXUCHAR) -# else -# define PERL_UCHAR_MAX ((unsigned char)~(unsigned)0) -# endif -# endif -#endif - -#ifndef PERL_USHORT_MIN -# define PERL_USHORT_MIN ((unsigned short)0) -#endif - -#ifndef PERL_USHORT_MAX -# ifdef USHORT_MAX -# define PERL_USHORT_MAX ((unsigned short)USHORT_MAX) -# else -# ifdef MAXUSHORT -# define PERL_USHORT_MAX ((unsigned short)MAXUSHORT) -# else -# ifdef USHRT_MAX -# define PERL_USHORT_MAX ((unsigned short)USHRT_MAX) -# else -# define PERL_USHORT_MAX ((unsigned short)~(unsigned)0) -# endif -# endif -# endif -#endif - -#ifndef PERL_SHORT_MAX -# ifdef SHORT_MAX -# define PERL_SHORT_MAX ((short)SHORT_MAX) -# else -# ifdef MAXSHORT /* Often used in */ -# define PERL_SHORT_MAX ((short)MAXSHORT) -# else -# ifdef SHRT_MAX -# define PERL_SHORT_MAX ((short)SHRT_MAX) -# else -# define PERL_SHORT_MAX ((short) (PERL_USHORT_MAX >> 1)) -# endif -# endif -# endif -#endif - -#ifndef PERL_SHORT_MIN -# ifdef SHORT_MIN -# define PERL_SHORT_MIN ((short)SHORT_MIN) -# else -# ifdef MINSHORT -# define PERL_SHORT_MIN ((short)MINSHORT) -# else -# ifdef SHRT_MIN -# define PERL_SHORT_MIN ((short)SHRT_MIN) -# else -# define PERL_SHORT_MIN (-PERL_SHORT_MAX - ((3 & -1) == 3)) -# endif -# endif -# endif -#endif - -#ifndef PERL_UINT_MAX -# ifdef UINT_MAX -# define PERL_UINT_MAX ((unsigned int)UINT_MAX) -# else -# ifdef MAXUINT -# define PERL_UINT_MAX ((unsigned int)MAXUINT) -# else -# define PERL_UINT_MAX (~(unsigned int)0) -# endif -# endif -#endif - -#ifndef PERL_UINT_MIN -# define PERL_UINT_MIN ((unsigned int)0) -#endif - -#ifndef PERL_INT_MAX -# ifdef INT_MAX -# define PERL_INT_MAX ((int)INT_MAX) -# else -# ifdef MAXINT /* Often used in */ -# define PERL_INT_MAX ((int)MAXINT) -# else -# define PERL_INT_MAX ((int)(PERL_UINT_MAX >> 1)) -# endif -# endif -#endif - -#ifndef PERL_INT_MIN -# ifdef INT_MIN -# define PERL_INT_MIN ((int)INT_MIN) -# else -# ifdef MININT -# define PERL_INT_MIN ((int)MININT) -# else -# define PERL_INT_MIN (-PERL_INT_MAX - ((3 & -1) == 3)) -# endif -# endif -#endif - -#ifndef PERL_ULONG_MAX -# ifdef ULONG_MAX -# define PERL_ULONG_MAX ((unsigned long)ULONG_MAX) -# else -# ifdef MAXULONG -# define PERL_ULONG_MAX ((unsigned long)MAXULONG) -# else -# define PERL_ULONG_MAX (~(unsigned long)0) -# endif -# endif -#endif - -#ifndef PERL_ULONG_MIN -# define PERL_ULONG_MIN ((unsigned long)0L) -#endif - -#ifndef PERL_LONG_MAX -# ifdef LONG_MAX -# define PERL_LONG_MAX ((long)LONG_MAX) -# else -# ifdef MAXLONG -# define PERL_LONG_MAX ((long)MAXLONG) -# else -# define PERL_LONG_MAX ((long) (PERL_ULONG_MAX >> 1)) -# endif -# endif -#endif - -#ifndef PERL_LONG_MIN -# ifdef LONG_MIN -# define PERL_LONG_MIN ((long)LONG_MIN) -# else -# ifdef MINLONG -# define PERL_LONG_MIN ((long)MINLONG) -# else -# define PERL_LONG_MIN (-PERL_LONG_MAX - ((3 & -1) == 3)) -# endif -# endif -#endif - -#if defined(HAS_QUAD) && (defined(convex) || defined(uts)) -# ifndef PERL_UQUAD_MAX -# ifdef ULONGLONG_MAX -# define PERL_UQUAD_MAX ((unsigned long long)ULONGLONG_MAX) -# else -# ifdef MAXULONGLONG -# define PERL_UQUAD_MAX ((unsigned long long)MAXULONGLONG) -# else -# define PERL_UQUAD_MAX (~(unsigned long long)0) -# endif -# endif -# endif - -# ifndef PERL_UQUAD_MIN -# define PERL_UQUAD_MIN ((unsigned long long)0L) -# endif - -# ifndef PERL_QUAD_MAX -# ifdef LONGLONG_MAX -# define PERL_QUAD_MAX ((long long)LONGLONG_MAX) -# else -# ifdef MAXLONGLONG -# define PERL_QUAD_MAX ((long long)MAXLONGLONG) -# else -# define PERL_QUAD_MAX ((long long) (PERL_UQUAD_MAX >> 1)) -# endif -# endif -# endif - -# ifndef PERL_QUAD_MIN -# ifdef LONGLONG_MIN -# define PERL_QUAD_MIN ((long long)LONGLONG_MIN) -# else -# ifdef MINLONGLONG -# define PERL_QUAD_MIN ((long long)MINLONGLONG) -# else -# define PERL_QUAD_MIN (-PERL_QUAD_MAX - ((3 & -1) == 3)) -# endif -# endif -# endif -#endif - -/* This is based on code from 5.003 perl.h */ -#ifdef HAS_QUAD -# ifdef cray -#ifndef IVTYPE -# define IVTYPE int -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_INT_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_INT_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_UINT_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_UINT_MAX -#endif - -# ifdef INTSIZE -#ifndef IVSIZE -# define IVSIZE INTSIZE -#endif - -# endif -# else -# if defined(convex) || defined(uts) -#ifndef IVTYPE -# define IVTYPE long long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_QUAD_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_QUAD_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_UQUAD_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_UQUAD_MAX -#endif - -# ifdef LONGLONGSIZE -#ifndef IVSIZE -# define IVSIZE LONGLONGSIZE -#endif - -# endif -# else -#ifndef IVTYPE -# define IVTYPE long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_LONG_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_LONG_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_ULONG_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_ULONG_MAX -#endif - -# ifdef LONGSIZE -#ifndef IVSIZE -# define IVSIZE LONGSIZE -#endif - -# endif -# endif -# endif -#ifndef IVSIZE -# define IVSIZE 8 -#endif - -#ifndef PERL_QUAD_MIN -# define PERL_QUAD_MIN IV_MIN -#endif - -#ifndef PERL_QUAD_MAX -# define PERL_QUAD_MAX IV_MAX -#endif - -#ifndef PERL_UQUAD_MIN -# define PERL_UQUAD_MIN UV_MIN -#endif - -#ifndef PERL_UQUAD_MAX -# define PERL_UQUAD_MAX UV_MAX -#endif - -#else -#ifndef IVTYPE -# define IVTYPE long -#endif - -#ifndef IV_MIN -# define IV_MIN PERL_LONG_MIN -#endif - -#ifndef IV_MAX -# define IV_MAX PERL_LONG_MAX -#endif - -#ifndef UV_MIN -# define UV_MIN PERL_ULONG_MIN -#endif - -#ifndef UV_MAX -# define UV_MAX PERL_ULONG_MAX -#endif - -#endif - -#ifndef IVSIZE -# ifdef LONGSIZE -# define IVSIZE LONGSIZE -# else -# define IVSIZE 4 /* A bold guess, but the best we can make. */ -# endif -#endif -#ifndef UVTYPE -# define UVTYPE unsigned IVTYPE -#endif - -#ifndef UVSIZE -# define UVSIZE IVSIZE -#endif -#ifndef sv_setuv -# define sv_setuv(sv, uv) \ - STMT_START { \ - UV TeMpUv = uv; \ - if (TeMpUv <= IV_MAX) \ - sv_setiv(sv, TeMpUv); \ - else \ - sv_setnv(sv, (double)TeMpUv); \ - } STMT_END -#endif -#ifndef newSVuv -# define newSVuv(uv) ((uv) <= IV_MAX ? newSViv((IV)uv) : newSVnv((NV)uv)) -#endif -#ifndef sv_2uv -# define sv_2uv(sv) ((PL_Sv = (sv)), (UV) (SvNOK(PL_Sv) ? SvNV(PL_Sv) : sv_2nv(PL_Sv))) -#endif - -#ifndef SvUVX -# define SvUVX(sv) ((UV)SvIVX(sv)) -#endif - -#ifndef SvUVXx -# define SvUVXx(sv) SvUVX(sv) -#endif - -#ifndef SvUV -# define SvUV(sv) (SvIOK(sv) ? SvUVX(sv) : sv_2uv(sv)) -#endif - -#ifndef SvUVx -# define SvUVx(sv) ((PL_Sv = (sv)), SvUV(PL_Sv)) -#endif - -/* Hint: sv_uv - * Always use the SvUVx() macro instead of sv_uv(). - */ -#ifndef sv_uv -# define sv_uv(sv) SvUVx(sv) -#endif - -#if !defined(SvUOK) && defined(SvIOK_UV) -# define SvUOK(sv) SvIOK_UV(sv) -#endif -#ifndef XST_mUV -# define XST_mUV(i,v) (ST(i) = sv_2mortal(newSVuv(v)) ) -#endif - -#ifndef XSRETURN_UV -# define XSRETURN_UV(v) STMT_START { XST_mUV(0,v); XSRETURN(1); } STMT_END -#endif -#ifndef PUSHu -# define PUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); PUSHTARG; } STMT_END -#endif - -#ifndef XPUSHu -# define XPUSHu(u) STMT_START { sv_setuv(TARG, (UV)(u)); XPUSHTARG; } STMT_END -#endif - -#ifdef HAS_MEMCMP -#ifndef memNE -# define memNE(s1,s2,l) (memcmp(s1,s2,l)) -#endif - -#ifndef memEQ -# define memEQ(s1,s2,l) (!memcmp(s1,s2,l)) -#endif - -#else -#ifndef memNE -# define memNE(s1,s2,l) (bcmp(s1,s2,l)) -#endif - -#ifndef memEQ -# define memEQ(s1,s2,l) (!bcmp(s1,s2,l)) -#endif - -#endif -#ifndef MoveD -# define MoveD(s,d,n,t) memmove((char*)(d),(char*)(s), (n) * sizeof(t)) -#endif - -#ifndef CopyD -# define CopyD(s,d,n,t) memcpy((char*)(d),(char*)(s), (n) * sizeof(t)) -#endif - -#ifdef HAS_MEMSET -#ifndef ZeroD -# define ZeroD(d,n,t) memzero((char*)(d), (n) * sizeof(t)) -#endif - -#else -#ifndef ZeroD -# define ZeroD(d,n,t) ((void)memzero((char*)(d), (n) * sizeof(t)), d) -#endif - -#endif -#ifndef PoisonWith -# define PoisonWith(d,n,t,b) (void)memset((char*)(d), (U8)(b), (n) * sizeof(t)) -#endif - -#ifndef PoisonNew -# define PoisonNew(d,n,t) PoisonWith(d,n,t,0xAB) -#endif - -#ifndef PoisonFree -# define PoisonFree(d,n,t) PoisonWith(d,n,t,0xEF) -#endif - -#ifndef Poison -# define Poison(d,n,t) PoisonFree(d,n,t) -#endif -#ifndef Newx -# define Newx(v,n,t) New(0,v,n,t) -#endif - -#ifndef Newxc -# define Newxc(v,n,t,c) Newc(0,v,n,t,c) -#endif - -#ifndef Newxz -# define Newxz(v,n,t) Newz(0,v,n,t) -#endif - -#ifndef PERL_UNUSED_DECL -# ifdef HASATTRIBUTE -# if (defined(__GNUC__) && defined(__cplusplus)) || defined(__INTEL_COMPILER) -# define PERL_UNUSED_DECL -# else -# define PERL_UNUSED_DECL __attribute__((unused)) -# endif -# else -# define PERL_UNUSED_DECL -# endif -#endif - -#ifndef PERL_UNUSED_ARG -# if defined(lint) && defined(S_SPLINT_S) /* www.splint.org */ -# include -# define PERL_UNUSED_ARG(x) NOTE(ARGUNUSED(x)) -# else -# define PERL_UNUSED_ARG(x) ((void)x) -# endif -#endif - -#ifndef PERL_UNUSED_VAR -# define PERL_UNUSED_VAR(x) ((void)x) -#endif - -#ifndef PERL_UNUSED_CONTEXT -# ifdef USE_ITHREADS -# define PERL_UNUSED_CONTEXT PERL_UNUSED_ARG(my_perl) -# else -# define PERL_UNUSED_CONTEXT -# endif -#endif -#ifndef NOOP -# define NOOP /*EMPTY*/(void)0 -#endif - -#ifndef dNOOP -# define dNOOP extern int /*@unused@*/ Perl___notused PERL_UNUSED_DECL -#endif - -#ifndef NVTYPE -# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) -# define NVTYPE long double -# else -# define NVTYPE double -# endif -typedef NVTYPE NV; -#endif - -#ifndef INT2PTR -# if (IVSIZE == PTRSIZE) && (UVSIZE == PTRSIZE) -# define PTRV UV -# define INT2PTR(any,d) (any)(d) -# else -# if PTRSIZE == LONGSIZE -# define PTRV unsigned long -# else -# define PTRV unsigned -# endif -# define INT2PTR(any,d) (any)(PTRV)(d) -# endif -#endif - -#ifndef PTR2ul -# if PTRSIZE == LONGSIZE -# define PTR2ul(p) (unsigned long)(p) -# else -# define PTR2ul(p) INT2PTR(unsigned long,p) -# endif -#endif -#ifndef PTR2nat -# define PTR2nat(p) (PTRV)(p) -#endif - -#ifndef NUM2PTR -# define NUM2PTR(any,d) (any)PTR2nat(d) -#endif - -#ifndef PTR2IV -# define PTR2IV(p) INT2PTR(IV,p) -#endif - -#ifndef PTR2UV -# define PTR2UV(p) INT2PTR(UV,p) -#endif - -#ifndef PTR2NV -# define PTR2NV(p) NUM2PTR(NV,p) -#endif - -#undef START_EXTERN_C -#undef END_EXTERN_C -#undef EXTERN_C -#ifdef __cplusplus -# define START_EXTERN_C extern "C" { -# define END_EXTERN_C } -# define EXTERN_C extern "C" -#else -# define START_EXTERN_C -# define END_EXTERN_C -# define EXTERN_C extern -#endif - -#if defined(PERL_GCC_PEDANTIC) -# ifndef PERL_GCC_BRACE_GROUPS_FORBIDDEN -# define PERL_GCC_BRACE_GROUPS_FORBIDDEN -# endif -#endif - -#if defined(__GNUC__) && !defined(PERL_GCC_BRACE_GROUPS_FORBIDDEN) && !defined(__cplusplus) -# ifndef PERL_USE_GCC_BRACE_GROUPS -# define PERL_USE_GCC_BRACE_GROUPS -# endif -#endif - -#undef STMT_START -#undef STMT_END -#ifdef PERL_USE_GCC_BRACE_GROUPS -# define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */ -# define STMT_END ) -#else -# if defined(VOIDFLAGS) && (VOIDFLAGS) && (defined(sun) || defined(__sun__)) && !defined(__GNUC__) -# define STMT_START if (1) -# define STMT_END else (void)0 -# else -# define STMT_START do -# define STMT_END while (0) -# endif -#endif -#ifndef boolSV -# define boolSV(b) ((b) ? &PL_sv_yes : &PL_sv_no) -#endif - -/* DEFSV appears first in 5.004_56 */ -#ifndef DEFSV -# define DEFSV GvSV(PL_defgv) -#endif - -#ifndef SAVE_DEFSV -# define SAVE_DEFSV SAVESPTR(GvSV(PL_defgv)) -#endif - -#ifndef DEFSV_set -# define DEFSV_set(sv) (DEFSV = (sv)) -#endif - -/* Older perls (<=5.003) lack AvFILLp */ -#ifndef AvFILLp -# define AvFILLp AvFILL -#endif -#ifndef ERRSV -# define ERRSV get_sv("@",FALSE) -#endif - -/* Hint: gv_stashpvn - * This function's backport doesn't support the length parameter, but - * rather ignores it. Portability can only be ensured if the length - * parameter is used for speed reasons, but the length can always be - * correctly computed from the string argument. - */ -#ifndef gv_stashpvn -# define gv_stashpvn(str,len,create) gv_stashpv(str,create) -#endif - -/* Replace: 1 */ -#ifndef get_cv -# define get_cv perl_get_cv -#endif - -#ifndef get_sv -# define get_sv perl_get_sv -#endif - -#ifndef get_av -# define get_av perl_get_av -#endif - -#ifndef get_hv -# define get_hv perl_get_hv -#endif - -/* Replace: 0 */ -#ifndef dUNDERBAR -# define dUNDERBAR dNOOP -#endif - -#ifndef UNDERBAR -# define UNDERBAR DEFSV -#endif -#ifndef dAX -# define dAX I32 ax = MARK - PL_stack_base + 1 -#endif - -#ifndef dITEMS -# define dITEMS I32 items = SP - MARK -#endif -#ifndef dXSTARG -# define dXSTARG SV * targ = sv_newmortal() -#endif -#ifndef dAXMARK -# define dAXMARK I32 ax = POPMARK; \ - register SV ** const mark = PL_stack_base + ax++ -#endif -#ifndef XSprePUSH -# define XSprePUSH (sp = PL_stack_base + ax - 1) -#endif - -#if (PERL_BCDVERSION < 0x5005000) -# undef XSRETURN -# define XSRETURN(off) \ - STMT_START { \ - PL_stack_sp = PL_stack_base + ax + ((off) - 1); \ - return; \ - } STMT_END -#endif -#ifndef XSPROTO -# define XSPROTO(name) void name(pTHX_ CV* cv) -#endif - -#ifndef SVfARG -# define SVfARG(p) ((void*)(p)) -#endif -#ifndef PERL_ABS -# define PERL_ABS(x) ((x) < 0 ? -(x) : (x)) -#endif -#ifndef dVAR -# define dVAR dNOOP -#endif -#ifndef SVf -# define SVf "_" -#endif -#ifndef UTF8_MAXBYTES -# define UTF8_MAXBYTES UTF8_MAXLEN -#endif -#ifndef CPERLscope -# define CPERLscope(x) x -#endif -#ifndef PERL_HASH -# define PERL_HASH(hash,str,len) \ - STMT_START { \ - const char *s_PeRlHaSh = str; \ - I32 i_PeRlHaSh = len; \ - U32 hash_PeRlHaSh = 0; \ - while (i_PeRlHaSh--) \ - hash_PeRlHaSh = hash_PeRlHaSh * 33 + *s_PeRlHaSh++; \ - (hash) = hash_PeRlHaSh; \ - } STMT_END -#endif - -#ifndef PERLIO_FUNCS_DECL -# ifdef PERLIO_FUNCS_CONST -# define PERLIO_FUNCS_DECL(funcs) const PerlIO_funcs funcs -# define PERLIO_FUNCS_CAST(funcs) (PerlIO_funcs*)(funcs) -# else -# define PERLIO_FUNCS_DECL(funcs) PerlIO_funcs funcs -# define PERLIO_FUNCS_CAST(funcs) (funcs) -# endif -#endif - -/* provide these typedefs for older perls */ -#if (PERL_BCDVERSION < 0x5009003) - -# ifdef ARGSproto -typedef OP* (CPERLscope(*Perl_ppaddr_t))(ARGSproto); -# else -typedef OP* (CPERLscope(*Perl_ppaddr_t))(pTHX); -# endif - -typedef OP* (CPERLscope(*Perl_check_t)) (pTHX_ OP*); - -#endif -#ifndef isPSXSPC -# define isPSXSPC(c) (isSPACE(c) || (c) == '\v') -#endif - -#ifndef isBLANK -# define isBLANK(c) ((c) == ' ' || (c) == '\t') -#endif - -#ifdef EBCDIC -#ifndef isALNUMC -# define isALNUMC(c) isalnum(c) -#endif - -#ifndef isASCII -# define isASCII(c) isascii(c) -#endif - -#ifndef isCNTRL -# define isCNTRL(c) iscntrl(c) -#endif - -#ifndef isGRAPH -# define isGRAPH(c) isgraph(c) -#endif - -#ifndef isPRINT -# define isPRINT(c) isprint(c) -#endif - -#ifndef isPUNCT -# define isPUNCT(c) ispunct(c) -#endif - -#ifndef isXDIGIT -# define isXDIGIT(c) isxdigit(c) -#endif - -#else -# if (PERL_BCDVERSION < 0x5010000) -/* Hint: isPRINT - * The implementation in older perl versions includes all of the - * isSPACE() characters, which is wrong. The version provided by - * Devel::PPPort always overrides a present buggy version. - */ -# undef isPRINT -# endif -#ifndef isALNUMC -# define isALNUMC(c) (isALPHA(c) || isDIGIT(c)) -#endif - -#ifndef isASCII -# define isASCII(c) ((c) <= 127) -#endif - -#ifndef isCNTRL -# define isCNTRL(c) ((c) < ' ' || (c) == 127) -#endif - -#ifndef isGRAPH -# define isGRAPH(c) (isALNUM(c) || isPUNCT(c)) -#endif - -#ifndef isPRINT -# define isPRINT(c) (((c) >= 32 && (c) < 127)) -#endif - -#ifndef isPUNCT -# define isPUNCT(c) (((c) >= 33 && (c) <= 47) || ((c) >= 58 && (c) <= 64) || ((c) >= 91 && (c) <= 96) || ((c) >= 123 && (c) <= 126)) -#endif - -#ifndef isXDIGIT -# define isXDIGIT(c) (isDIGIT(c) || ((c) >= 'a' && (c) <= 'f') || ((c) >= 'A' && (c) <= 'F')) -#endif - -#endif - -#ifndef PERL_SIGNALS_UNSAFE_FLAG - -#define PERL_SIGNALS_UNSAFE_FLAG 0x0001 - -#if (PERL_BCDVERSION < 0x5008000) -# define D_PPP_PERL_SIGNALS_INIT PERL_SIGNALS_UNSAFE_FLAG -#else -# define D_PPP_PERL_SIGNALS_INIT 0 -#endif - -#if defined(NEED_PL_signals) -static U32 DPPP_(my_PL_signals) = D_PPP_PERL_SIGNALS_INIT; -#elif defined(NEED_PL_signals_GLOBAL) -U32 DPPP_(my_PL_signals) = D_PPP_PERL_SIGNALS_INIT; -#else -extern U32 DPPP_(my_PL_signals); -#endif -#define PL_signals DPPP_(my_PL_signals) - -#endif - -/* Hint: PL_ppaddr - * Calling an op via PL_ppaddr requires passing a context argument - * for threaded builds. Since the context argument is different for - * 5.005 perls, you can use aTHXR (supplied by ppport.h), which will - * automatically be defined as the correct argument. - */ - -#if (PERL_BCDVERSION <= 0x5005005) -/* Replace: 1 */ -# define PL_ppaddr ppaddr -# define PL_no_modify no_modify -/* Replace: 0 */ -#endif - -#if (PERL_BCDVERSION <= 0x5004005) -/* Replace: 1 */ -# define PL_DBsignal DBsignal -# define PL_DBsingle DBsingle -# define PL_DBsub DBsub -# define PL_DBtrace DBtrace -# define PL_Sv Sv -# define PL_bufend bufend -# define PL_bufptr bufptr -# define PL_compiling compiling -# define PL_copline copline -# define PL_curcop curcop -# define PL_curstash curstash -# define PL_debstash debstash -# define PL_defgv defgv -# define PL_diehook diehook -# define PL_dirty dirty -# define PL_dowarn dowarn -# define PL_errgv errgv -# define PL_error_count error_count -# define PL_expect expect -# define PL_hexdigit hexdigit -# define PL_hints hints -# define PL_in_my in_my -# define PL_laststatval laststatval -# define PL_lex_state lex_state -# define PL_lex_stuff lex_stuff -# define PL_linestr linestr -# define PL_na na -# define PL_perl_destruct_level perl_destruct_level -# define PL_perldb perldb -# define PL_rsfp_filters rsfp_filters -# define PL_rsfp rsfp -# define PL_stack_base stack_base -# define PL_stack_sp stack_sp -# define PL_statcache statcache -# define PL_stdingv stdingv -# define PL_sv_arenaroot sv_arenaroot -# define PL_sv_no sv_no -# define PL_sv_undef sv_undef -# define PL_sv_yes sv_yes -# define PL_tainted tainted -# define PL_tainting tainting -# define PL_tokenbuf tokenbuf -/* Replace: 0 */ -#endif - -/* Warning: PL_parser - * For perl versions earlier than 5.9.5, this is an always - * non-NULL dummy. Also, it cannot be dereferenced. Don't - * use it if you can avoid is and unless you absolutely know - * what you're doing. - * If you always check that PL_parser is non-NULL, you can - * define DPPP_PL_parser_NO_DUMMY to avoid the creation of - * a dummy parser structure. - */ - -#if (PERL_BCDVERSION >= 0x5009005) -# ifdef DPPP_PL_parser_NO_DUMMY -# define D_PPP_my_PL_parser_var(var) ((PL_parser ? PL_parser : \ - (croak("panic: PL_parser == NULL in %s:%d", \ - __FILE__, __LINE__), (yy_parser *) NULL))->var) -# else -# ifdef DPPP_PL_parser_NO_DUMMY_WARNING -# define D_PPP_parser_dummy_warning(var) -# else -# define D_PPP_parser_dummy_warning(var) \ - warn("warning: dummy PL_" #var " used in %s:%d", __FILE__, __LINE__), -# endif -# define D_PPP_my_PL_parser_var(var) ((PL_parser ? PL_parser : \ - (D_PPP_parser_dummy_warning(var) &DPPP_(dummy_PL_parser)))->var) -#if defined(NEED_PL_parser) -static yy_parser DPPP_(dummy_PL_parser); -#elif defined(NEED_PL_parser_GLOBAL) -yy_parser DPPP_(dummy_PL_parser); -#else -extern yy_parser DPPP_(dummy_PL_parser); -#endif - -# endif - -/* PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf depends on PL_parser */ -/* Warning: PL_expect, PL_copline, PL_rsfp, PL_rsfp_filters, PL_linestr, PL_bufptr, PL_bufend, PL_lex_state, PL_lex_stuff, PL_tokenbuf - * Do not use this variable unless you know exactly what you're - * doint. It is internal to the perl parser and may change or even - * be removed in the future. As of perl 5.9.5, you have to check - * for (PL_parser != NULL) for this variable to have any effect. - * An always non-NULL PL_parser dummy is provided for earlier - * perl versions. - * If PL_parser is NULL when you try to access this variable, a - * dummy is being accessed instead and a warning is issued unless - * you define DPPP_PL_parser_NO_DUMMY_WARNING. - * If DPPP_PL_parser_NO_DUMMY is defined, the code trying to access - * this variable will croak with a panic message. - */ - -# define PL_expect D_PPP_my_PL_parser_var(expect) -# define PL_copline D_PPP_my_PL_parser_var(copline) -# define PL_rsfp D_PPP_my_PL_parser_var(rsfp) -# define PL_rsfp_filters D_PPP_my_PL_parser_var(rsfp_filters) -# define PL_linestr D_PPP_my_PL_parser_var(linestr) -# define PL_bufptr D_PPP_my_PL_parser_var(bufptr) -# define PL_bufend D_PPP_my_PL_parser_var(bufend) -# define PL_lex_state D_PPP_my_PL_parser_var(lex_state) -# define PL_lex_stuff D_PPP_my_PL_parser_var(lex_stuff) -# define PL_tokenbuf D_PPP_my_PL_parser_var(tokenbuf) -# define PL_in_my D_PPP_my_PL_parser_var(in_my) -# define PL_in_my_stash D_PPP_my_PL_parser_var(in_my_stash) -# define PL_error_count D_PPP_my_PL_parser_var(error_count) - - -#else - -/* ensure that PL_parser != NULL and cannot be dereferenced */ -# define PL_parser ((void *) 1) - -#endif -#ifndef mPUSHs -# define mPUSHs(s) PUSHs(sv_2mortal(s)) -#endif - -#ifndef PUSHmortal -# define PUSHmortal PUSHs(sv_newmortal()) -#endif - -#ifndef mPUSHp -# define mPUSHp(p,l) sv_setpvn(PUSHmortal, (p), (l)) -#endif - -#ifndef mPUSHn -# define mPUSHn(n) sv_setnv(PUSHmortal, (NV)(n)) -#endif - -#ifndef mPUSHi -# define mPUSHi(i) sv_setiv(PUSHmortal, (IV)(i)) -#endif - -#ifndef mPUSHu -# define mPUSHu(u) sv_setuv(PUSHmortal, (UV)(u)) -#endif -#ifndef mXPUSHs -# define mXPUSHs(s) XPUSHs(sv_2mortal(s)) -#endif - -#ifndef XPUSHmortal -# define XPUSHmortal XPUSHs(sv_newmortal()) -#endif - -#ifndef mXPUSHp -# define mXPUSHp(p,l) STMT_START { EXTEND(sp,1); sv_setpvn(PUSHmortal, (p), (l)); } STMT_END -#endif - -#ifndef mXPUSHn -# define mXPUSHn(n) STMT_START { EXTEND(sp,1); sv_setnv(PUSHmortal, (NV)(n)); } STMT_END -#endif - -#ifndef mXPUSHi -# define mXPUSHi(i) STMT_START { EXTEND(sp,1); sv_setiv(PUSHmortal, (IV)(i)); } STMT_END -#endif - -#ifndef mXPUSHu -# define mXPUSHu(u) STMT_START { EXTEND(sp,1); sv_setuv(PUSHmortal, (UV)(u)); } STMT_END -#endif - -/* Replace: 1 */ -#ifndef call_sv -# define call_sv perl_call_sv -#endif - -#ifndef call_pv -# define call_pv perl_call_pv -#endif - -#ifndef call_argv -# define call_argv perl_call_argv -#endif - -#ifndef call_method -# define call_method perl_call_method -#endif -#ifndef eval_sv -# define eval_sv perl_eval_sv -#endif - -/* Replace: 0 */ -#ifndef PERL_LOADMOD_DENY -# define PERL_LOADMOD_DENY 0x1 -#endif - -#ifndef PERL_LOADMOD_NOIMPORT -# define PERL_LOADMOD_NOIMPORT 0x2 -#endif - -#ifndef PERL_LOADMOD_IMPORT_OPS -# define PERL_LOADMOD_IMPORT_OPS 0x4 -#endif - -#ifndef G_METHOD -# define G_METHOD 64 -# ifdef call_sv -# undef call_sv -# endif -# if (PERL_BCDVERSION < 0x5006000) -# define call_sv(sv, flags) ((flags) & G_METHOD ? perl_call_method((char *) SvPV_nolen_const(sv), \ - (flags) & ~G_METHOD) : perl_call_sv(sv, flags)) -# else -# define call_sv(sv, flags) ((flags) & G_METHOD ? Perl_call_method(aTHX_ (char *) SvPV_nolen_const(sv), \ - (flags) & ~G_METHOD) : Perl_call_sv(aTHX_ sv, flags)) -# endif -#endif - -/* Replace perl_eval_pv with eval_pv */ - -#ifndef eval_pv -#if defined(NEED_eval_pv) -static SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); -static -#else -extern SV* DPPP_(my_eval_pv)(char *p, I32 croak_on_error); -#endif - -#ifdef eval_pv -# undef eval_pv -#endif -#define eval_pv(a,b) DPPP_(my_eval_pv)(aTHX_ a,b) -#define Perl_eval_pv DPPP_(my_eval_pv) - -#if defined(NEED_eval_pv) || defined(NEED_eval_pv_GLOBAL) - -SV* -DPPP_(my_eval_pv)(char *p, I32 croak_on_error) -{ - dSP; - SV* sv = newSVpv(p, 0); - - PUSHMARK(sp); - eval_sv(sv, G_SCALAR); - SvREFCNT_dec(sv); - - SPAGAIN; - sv = POPs; - PUTBACK; - - if (croak_on_error && SvTRUE(GvSV(errgv))) - croak(SvPVx(GvSV(errgv), na)); - - return sv; -} - -#endif -#endif - -#ifndef vload_module -#if defined(NEED_vload_module) -static void DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args); -static -#else -extern void DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args); -#endif - -#ifdef vload_module -# undef vload_module -#endif -#define vload_module(a,b,c,d) DPPP_(my_vload_module)(aTHX_ a,b,c,d) -#define Perl_vload_module DPPP_(my_vload_module) - -#if defined(NEED_vload_module) || defined(NEED_vload_module_GLOBAL) - -void -DPPP_(my_vload_module)(U32 flags, SV *name, SV *ver, va_list *args) -{ - dTHR; - dVAR; - OP *veop, *imop; - - OP * const modname = newSVOP(OP_CONST, 0, name); - /* 5.005 has a somewhat hacky force_normal that doesn't croak on - SvREADONLY() if PL_compling is true. Current perls take care in - ck_require() to correctly turn off SvREADONLY before calling - force_normal_flags(). This seems a better fix than fudging PL_compling - */ - SvREADONLY_off(((SVOP*)modname)->op_sv); - modname->op_private |= OPpCONST_BARE; - if (ver) { - veop = newSVOP(OP_CONST, 0, ver); - } - else - veop = NULL; - if (flags & PERL_LOADMOD_NOIMPORT) { - imop = sawparens(newNULLLIST()); - } - else if (flags & PERL_LOADMOD_IMPORT_OPS) { - imop = va_arg(*args, OP*); - } - else { - SV *sv; - imop = NULL; - sv = va_arg(*args, SV*); - while (sv) { - imop = append_elem(OP_LIST, imop, newSVOP(OP_CONST, 0, sv)); - sv = va_arg(*args, SV*); - } - } - { - const line_t ocopline = PL_copline; - COP * const ocurcop = PL_curcop; - const int oexpect = PL_expect; - -#if (PERL_BCDVERSION >= 0x5004000) - utilize(!(flags & PERL_LOADMOD_DENY), start_subparse(FALSE, 0), - veop, modname, imop); -#else - utilize(!(flags & PERL_LOADMOD_DENY), start_subparse(), - modname, imop); -#endif - PL_expect = oexpect; - PL_copline = ocopline; - PL_curcop = ocurcop; - } -} - -#endif -#endif - -#ifndef load_module -#if defined(NEED_load_module) -static void DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...); -static -#else -extern void DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...); -#endif - -#ifdef load_module -# undef load_module -#endif -#define load_module DPPP_(my_load_module) -#define Perl_load_module DPPP_(my_load_module) - -#if defined(NEED_load_module) || defined(NEED_load_module_GLOBAL) - -void -DPPP_(my_load_module)(U32 flags, SV *name, SV *ver, ...) -{ - va_list args; - va_start(args, ver); - vload_module(flags, name, ver, &args); - va_end(args); -} - -#endif -#endif -#ifndef newRV_inc -# define newRV_inc(sv) newRV(sv) /* Replace */ -#endif - -#ifndef newRV_noinc -#if defined(NEED_newRV_noinc) -static SV * DPPP_(my_newRV_noinc)(SV *sv); -static -#else -extern SV * DPPP_(my_newRV_noinc)(SV *sv); -#endif - -#ifdef newRV_noinc -# undef newRV_noinc -#endif -#define newRV_noinc(a) DPPP_(my_newRV_noinc)(aTHX_ a) -#define Perl_newRV_noinc DPPP_(my_newRV_noinc) - -#if defined(NEED_newRV_noinc) || defined(NEED_newRV_noinc_GLOBAL) -SV * -DPPP_(my_newRV_noinc)(SV *sv) -{ - SV *rv = (SV *)newRV(sv); - SvREFCNT_dec(sv); - return rv; -} -#endif -#endif - -/* Hint: newCONSTSUB - * Returns a CV* as of perl-5.7.1. This return value is not supported - * by Devel::PPPort. - */ - -/* newCONSTSUB from IO.xs is in the core starting with 5.004_63 */ -#if (PERL_BCDVERSION < 0x5004063) && (PERL_BCDVERSION != 0x5004005) -#if defined(NEED_newCONSTSUB) -static void DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv); -static -#else -extern void DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv); -#endif - -#ifdef newCONSTSUB -# undef newCONSTSUB -#endif -#define newCONSTSUB(a,b,c) DPPP_(my_newCONSTSUB)(aTHX_ a,b,c) -#define Perl_newCONSTSUB DPPP_(my_newCONSTSUB) - -#if defined(NEED_newCONSTSUB) || defined(NEED_newCONSTSUB_GLOBAL) - -/* This is just a trick to avoid a dependency of newCONSTSUB on PL_parser */ -/* (There's no PL_parser in perl < 5.005, so this is completely safe) */ -#define D_PPP_PL_copline PL_copline - -void -DPPP_(my_newCONSTSUB)(HV *stash, const char *name, SV *sv) -{ - U32 oldhints = PL_hints; - HV *old_cop_stash = PL_curcop->cop_stash; - HV *old_curstash = PL_curstash; - line_t oldline = PL_curcop->cop_line; - PL_curcop->cop_line = D_PPP_PL_copline; - - PL_hints &= ~HINT_BLOCK_SCOPE; - if (stash) - PL_curstash = PL_curcop->cop_stash = stash; - - newSUB( - -#if (PERL_BCDVERSION < 0x5003022) - start_subparse(), -#elif (PERL_BCDVERSION == 0x5003022) - start_subparse(0), -#else /* 5.003_23 onwards */ - start_subparse(FALSE, 0), -#endif - - newSVOP(OP_CONST, 0, newSVpv((char *) name, 0)), - newSVOP(OP_CONST, 0, &PL_sv_no), /* SvPV(&PL_sv_no) == "" -- GMB */ - newSTATEOP(0, Nullch, newSVOP(OP_CONST, 0, sv)) - ); - - PL_hints = oldhints; - PL_curcop->cop_stash = old_cop_stash; - PL_curstash = old_curstash; - PL_curcop->cop_line = oldline; -} -#endif -#endif - -/* - * Boilerplate macros for initializing and accessing interpreter-local - * data from C. All statics in extensions should be reworked to use - * this, if you want to make the extension thread-safe. See ext/re/re.xs - * for an example of the use of these macros. - * - * Code that uses these macros is responsible for the following: - * 1. #define MY_CXT_KEY to a unique string, e.g. "DynaLoader_guts" - * 2. Declare a typedef named my_cxt_t that is a structure that contains - * all the data that needs to be interpreter-local. - * 3. Use the START_MY_CXT macro after the declaration of my_cxt_t. - * 4. Use the MY_CXT_INIT macro such that it is called exactly once - * (typically put in the BOOT: section). - * 5. Use the members of the my_cxt_t structure everywhere as - * MY_CXT.member. - * 6. Use the dMY_CXT macro (a declaration) in all the functions that - * access MY_CXT. - */ - -#if defined(MULTIPLICITY) || defined(PERL_OBJECT) || \ - defined(PERL_CAPI) || defined(PERL_IMPLICIT_CONTEXT) - -#ifndef START_MY_CXT - -/* This must appear in all extensions that define a my_cxt_t structure, - * right after the definition (i.e. at file scope). The non-threads - * case below uses it to declare the data as static. */ -#define START_MY_CXT - -#if (PERL_BCDVERSION < 0x5004068) -/* Fetches the SV that keeps the per-interpreter data. */ -#define dMY_CXT_SV \ - SV *my_cxt_sv = get_sv(MY_CXT_KEY, FALSE) -#else /* >= perl5.004_68 */ -#define dMY_CXT_SV \ - SV *my_cxt_sv = *hv_fetch(PL_modglobal, MY_CXT_KEY, \ - sizeof(MY_CXT_KEY)-1, TRUE) -#endif /* < perl5.004_68 */ - -/* This declaration should be used within all functions that use the - * interpreter-local data. */ -#define dMY_CXT \ - dMY_CXT_SV; \ - my_cxt_t *my_cxtp = INT2PTR(my_cxt_t*,SvUV(my_cxt_sv)) - -/* Creates and zeroes the per-interpreter data. - * (We allocate my_cxtp in a Perl SV so that it will be released when - * the interpreter goes away.) */ -#define MY_CXT_INIT \ - dMY_CXT_SV; \ - /* newSV() allocates one more than needed */ \ - my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ - Zero(my_cxtp, 1, my_cxt_t); \ - sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) - -/* This macro must be used to access members of the my_cxt_t structure. - * e.g. MYCXT.some_data */ -#define MY_CXT (*my_cxtp) - -/* Judicious use of these macros can reduce the number of times dMY_CXT - * is used. Use is similar to pTHX, aTHX etc. */ -#define pMY_CXT my_cxt_t *my_cxtp -#define pMY_CXT_ pMY_CXT, -#define _pMY_CXT ,pMY_CXT -#define aMY_CXT my_cxtp -#define aMY_CXT_ aMY_CXT, -#define _aMY_CXT ,aMY_CXT - -#endif /* START_MY_CXT */ - -#ifndef MY_CXT_CLONE -/* Clones the per-interpreter data. */ -#define MY_CXT_CLONE \ - dMY_CXT_SV; \ - my_cxt_t *my_cxtp = (my_cxt_t*)SvPVX(newSV(sizeof(my_cxt_t)-1));\ - Copy(INT2PTR(my_cxt_t*, SvUV(my_cxt_sv)), my_cxtp, 1, my_cxt_t);\ - sv_setuv(my_cxt_sv, PTR2UV(my_cxtp)) -#endif - -#else /* single interpreter */ - -#ifndef START_MY_CXT - -#define START_MY_CXT static my_cxt_t my_cxt; -#define dMY_CXT_SV dNOOP -#define dMY_CXT dNOOP -#define MY_CXT_INIT NOOP -#define MY_CXT my_cxt - -#define pMY_CXT void -#define pMY_CXT_ -#define _pMY_CXT -#define aMY_CXT -#define aMY_CXT_ -#define _aMY_CXT - -#endif /* START_MY_CXT */ - -#ifndef MY_CXT_CLONE -#define MY_CXT_CLONE NOOP -#endif - -#endif - -#ifndef IVdf -# if IVSIZE == LONGSIZE -# define IVdf "ld" -# define UVuf "lu" -# define UVof "lo" -# define UVxf "lx" -# define UVXf "lX" -# else -# if IVSIZE == INTSIZE -# define IVdf "d" -# define UVuf "u" -# define UVof "o" -# define UVxf "x" -# define UVXf "X" -# endif -# endif -#endif - -#ifndef NVef -# if defined(USE_LONG_DOUBLE) && defined(HAS_LONG_DOUBLE) && \ - defined(PERL_PRIfldbl) && (PERL_BCDVERSION != 0x5006000) - /* Not very likely, but let's try anyway. */ -# define NVef PERL_PRIeldbl -# define NVff PERL_PRIfldbl -# define NVgf PERL_PRIgldbl -# else -# define NVef "e" -# define NVff "f" -# define NVgf "g" -# endif -#endif - -#ifndef SvREFCNT_inc -# ifdef PERL_USE_GCC_BRACE_GROUPS -# define SvREFCNT_inc(sv) \ - ({ \ - SV * const _sv = (SV*)(sv); \ - if (_sv) \ - (SvREFCNT(_sv))++; \ - _sv; \ - }) -# else -# define SvREFCNT_inc(sv) \ - ((PL_Sv=(SV*)(sv)) ? (++(SvREFCNT(PL_Sv)),PL_Sv) : NULL) -# endif -#endif - -#ifndef SvREFCNT_inc_simple -# ifdef PERL_USE_GCC_BRACE_GROUPS -# define SvREFCNT_inc_simple(sv) \ - ({ \ - if (sv) \ - (SvREFCNT(sv))++; \ - (SV *)(sv); \ - }) -# else -# define SvREFCNT_inc_simple(sv) \ - ((sv) ? (SvREFCNT(sv)++,(SV*)(sv)) : NULL) -# endif -#endif - -#ifndef SvREFCNT_inc_NN -# ifdef PERL_USE_GCC_BRACE_GROUPS -# define SvREFCNT_inc_NN(sv) \ - ({ \ - SV * const _sv = (SV*)(sv); \ - SvREFCNT(_sv)++; \ - _sv; \ - }) -# else -# define SvREFCNT_inc_NN(sv) \ - (PL_Sv=(SV*)(sv),++(SvREFCNT(PL_Sv)),PL_Sv) -# endif -#endif - -#ifndef SvREFCNT_inc_void -# ifdef PERL_USE_GCC_BRACE_GROUPS -# define SvREFCNT_inc_void(sv) \ - ({ \ - SV * const _sv = (SV*)(sv); \ - if (_sv) \ - (void)(SvREFCNT(_sv)++); \ - }) -# else -# define SvREFCNT_inc_void(sv) \ - (void)((PL_Sv=(SV*)(sv)) ? ++(SvREFCNT(PL_Sv)) : 0) -# endif -#endif -#ifndef SvREFCNT_inc_simple_void -# define SvREFCNT_inc_simple_void(sv) STMT_START { if (sv) SvREFCNT(sv)++; } STMT_END -#endif - -#ifndef SvREFCNT_inc_simple_NN -# define SvREFCNT_inc_simple_NN(sv) (++SvREFCNT(sv), (SV*)(sv)) -#endif - -#ifndef SvREFCNT_inc_void_NN -# define SvREFCNT_inc_void_NN(sv) (void)(++SvREFCNT((SV*)(sv))) -#endif - -#ifndef SvREFCNT_inc_simple_void_NN -# define SvREFCNT_inc_simple_void_NN(sv) (void)(++SvREFCNT((SV*)(sv))) -#endif - -#ifndef newSV_type - -#if defined(NEED_newSV_type) -static SV* DPPP_(my_newSV_type)(pTHX_ svtype const t); -static -#else -extern SV* DPPP_(my_newSV_type)(pTHX_ svtype const t); -#endif - -#ifdef newSV_type -# undef newSV_type -#endif -#define newSV_type(a) DPPP_(my_newSV_type)(aTHX_ a) -#define Perl_newSV_type DPPP_(my_newSV_type) - -#if defined(NEED_newSV_type) || defined(NEED_newSV_type_GLOBAL) - -SV* -DPPP_(my_newSV_type)(pTHX_ svtype const t) -{ - SV* const sv = newSV(0); - sv_upgrade(sv, t); - return sv; -} - -#endif - -#endif - -#if (PERL_BCDVERSION < 0x5006000) -# define D_PPP_CONSTPV_ARG(x) ((char *) (x)) -#else -# define D_PPP_CONSTPV_ARG(x) (x) -#endif -#ifndef newSVpvn -# define newSVpvn(data,len) ((data) \ - ? ((len) ? newSVpv((data), (len)) : newSVpv("", 0)) \ - : newSV(0)) -#endif -#ifndef newSVpvn_utf8 -# define newSVpvn_utf8(s, len, u) newSVpvn_flags((s), (len), (u) ? SVf_UTF8 : 0) -#endif -#ifndef SVf_UTF8 -# define SVf_UTF8 0 -#endif - -#ifndef newSVpvn_flags - -#if defined(NEED_newSVpvn_flags) -static SV * DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags); -static -#else -extern SV * DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags); -#endif - -#ifdef newSVpvn_flags -# undef newSVpvn_flags -#endif -#define newSVpvn_flags(a,b,c) DPPP_(my_newSVpvn_flags)(aTHX_ a,b,c) -#define Perl_newSVpvn_flags DPPP_(my_newSVpvn_flags) - -#if defined(NEED_newSVpvn_flags) || defined(NEED_newSVpvn_flags_GLOBAL) - -SV * -DPPP_(my_newSVpvn_flags)(pTHX_ const char *s, STRLEN len, U32 flags) -{ - SV *sv = newSVpvn(D_PPP_CONSTPV_ARG(s), len); - SvFLAGS(sv) |= (flags & SVf_UTF8); - return (flags & SVs_TEMP) ? sv_2mortal(sv) : sv; -} - -#endif - -#endif - -/* Backwards compatibility stuff... :-( */ -#if !defined(NEED_sv_2pv_flags) && defined(NEED_sv_2pv_nolen) -# define NEED_sv_2pv_flags -#endif -#if !defined(NEED_sv_2pv_flags_GLOBAL) && defined(NEED_sv_2pv_nolen_GLOBAL) -# define NEED_sv_2pv_flags_GLOBAL -#endif - -/* Hint: sv_2pv_nolen - * Use the SvPV_nolen() or SvPV_nolen_const() macros instead of sv_2pv_nolen(). - */ -#ifndef sv_2pv_nolen -# define sv_2pv_nolen(sv) SvPV_nolen(sv) -#endif - -#ifdef SvPVbyte - -/* Hint: SvPVbyte - * Does not work in perl-5.6.1, ppport.h implements a version - * borrowed from perl-5.7.3. - */ - -#if (PERL_BCDVERSION < 0x5007000) - -#if defined(NEED_sv_2pvbyte) -static char * DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp); -static -#else -extern char * DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp); -#endif - -#ifdef sv_2pvbyte -# undef sv_2pvbyte -#endif -#define sv_2pvbyte(a,b) DPPP_(my_sv_2pvbyte)(aTHX_ a,b) -#define Perl_sv_2pvbyte DPPP_(my_sv_2pvbyte) - -#if defined(NEED_sv_2pvbyte) || defined(NEED_sv_2pvbyte_GLOBAL) - -char * -DPPP_(my_sv_2pvbyte)(pTHX_ SV *sv, STRLEN *lp) -{ - sv_utf8_downgrade(sv,0); - return SvPV(sv,*lp); -} - -#endif - -/* Hint: sv_2pvbyte - * Use the SvPVbyte() macro instead of sv_2pvbyte(). - */ - -#undef SvPVbyte - -#define SvPVbyte(sv, lp) \ - ((SvFLAGS(sv) & (SVf_POK|SVf_UTF8)) == (SVf_POK) \ - ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pvbyte(sv, &lp)) - -#endif - -#else - -# define SvPVbyte SvPV -# define sv_2pvbyte sv_2pv - -#endif -#ifndef sv_2pvbyte_nolen -# define sv_2pvbyte_nolen(sv) sv_2pv_nolen(sv) -#endif - -/* Hint: sv_pvn - * Always use the SvPV() macro instead of sv_pvn(). - */ - -/* Hint: sv_pvn_force - * Always use the SvPV_force() macro instead of sv_pvn_force(). - */ - -/* If these are undefined, they're not handled by the core anyway */ -#ifndef SV_IMMEDIATE_UNREF -# define SV_IMMEDIATE_UNREF 0 -#endif - -#ifndef SV_GMAGIC -# define SV_GMAGIC 0 -#endif - -#ifndef SV_COW_DROP_PV -# define SV_COW_DROP_PV 0 -#endif - -#ifndef SV_UTF8_NO_ENCODING -# define SV_UTF8_NO_ENCODING 0 -#endif - -#ifndef SV_NOSTEAL -# define SV_NOSTEAL 0 -#endif - -#ifndef SV_CONST_RETURN -# define SV_CONST_RETURN 0 -#endif - -#ifndef SV_MUTABLE_RETURN -# define SV_MUTABLE_RETURN 0 -#endif - -#ifndef SV_SMAGIC -# define SV_SMAGIC 0 -#endif - -#ifndef SV_HAS_TRAILING_NUL -# define SV_HAS_TRAILING_NUL 0 -#endif - -#ifndef SV_COW_SHARED_HASH_KEYS -# define SV_COW_SHARED_HASH_KEYS 0 -#endif - -#if (PERL_BCDVERSION < 0x5007002) - -#if defined(NEED_sv_2pv_flags) -static char * DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); -static -#else -extern char * DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); -#endif - -#ifdef sv_2pv_flags -# undef sv_2pv_flags -#endif -#define sv_2pv_flags(a,b,c) DPPP_(my_sv_2pv_flags)(aTHX_ a,b,c) -#define Perl_sv_2pv_flags DPPP_(my_sv_2pv_flags) - -#if defined(NEED_sv_2pv_flags) || defined(NEED_sv_2pv_flags_GLOBAL) - -char * -DPPP_(my_sv_2pv_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags) -{ - STRLEN n_a = (STRLEN) flags; - return sv_2pv(sv, lp ? lp : &n_a); -} - -#endif - -#if defined(NEED_sv_pvn_force_flags) -static char * DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); -static -#else -extern char * DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags); -#endif - -#ifdef sv_pvn_force_flags -# undef sv_pvn_force_flags -#endif -#define sv_pvn_force_flags(a,b,c) DPPP_(my_sv_pvn_force_flags)(aTHX_ a,b,c) -#define Perl_sv_pvn_force_flags DPPP_(my_sv_pvn_force_flags) - -#if defined(NEED_sv_pvn_force_flags) || defined(NEED_sv_pvn_force_flags_GLOBAL) - -char * -DPPP_(my_sv_pvn_force_flags)(pTHX_ SV *sv, STRLEN *lp, I32 flags) -{ - STRLEN n_a = (STRLEN) flags; - return sv_pvn_force(sv, lp ? lp : &n_a); -} - -#endif - -#endif - -#if (PERL_BCDVERSION < 0x5008008) || ( (PERL_BCDVERSION >= 0x5009000) && (PERL_BCDVERSION < 0x5009003) ) -# define DPPP_SVPV_NOLEN_LP_ARG &PL_na -#else -# define DPPP_SVPV_NOLEN_LP_ARG 0 -#endif -#ifndef SvPV_const -# define SvPV_const(sv, lp) SvPV_flags_const(sv, lp, SV_GMAGIC) -#endif - -#ifndef SvPV_mutable -# define SvPV_mutable(sv, lp) SvPV_flags_mutable(sv, lp, SV_GMAGIC) -#endif -#ifndef SvPV_flags -# define SvPV_flags(sv, lp, flags) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_2pv_flags(sv, &lp, flags)) -#endif -#ifndef SvPV_flags_const -# define SvPV_flags_const(sv, lp, flags) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? ((lp = SvCUR(sv)), SvPVX_const(sv)) : \ - (const char*) sv_2pv_flags(sv, &lp, flags|SV_CONST_RETURN)) -#endif -#ifndef SvPV_flags_const_nolen -# define SvPV_flags_const_nolen(sv, flags) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? SvPVX_const(sv) : \ - (const char*) sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, flags|SV_CONST_RETURN)) -#endif -#ifndef SvPV_flags_mutable -# define SvPV_flags_mutable(sv, lp, flags) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) : \ - sv_2pv_flags(sv, &lp, flags|SV_MUTABLE_RETURN)) -#endif -#ifndef SvPV_force -# define SvPV_force(sv, lp) SvPV_force_flags(sv, lp, SV_GMAGIC) -#endif - -#ifndef SvPV_force_nolen -# define SvPV_force_nolen(sv) SvPV_force_flags_nolen(sv, SV_GMAGIC) -#endif - -#ifndef SvPV_force_mutable -# define SvPV_force_mutable(sv, lp) SvPV_force_flags_mutable(sv, lp, SV_GMAGIC) -#endif - -#ifndef SvPV_force_nomg -# define SvPV_force_nomg(sv, lp) SvPV_force_flags(sv, lp, 0) -#endif - -#ifndef SvPV_force_nomg_nolen -# define SvPV_force_nomg_nolen(sv) SvPV_force_flags_nolen(sv, 0) -#endif -#ifndef SvPV_force_flags -# define SvPV_force_flags(sv, lp, flags) \ - ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ - ? ((lp = SvCUR(sv)), SvPVX(sv)) : sv_pvn_force_flags(sv, &lp, flags)) -#endif -#ifndef SvPV_force_flags_nolen -# define SvPV_force_flags_nolen(sv, flags) \ - ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ - ? SvPVX(sv) : sv_pvn_force_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, flags)) -#endif -#ifndef SvPV_force_flags_mutable -# define SvPV_force_flags_mutable(sv, lp, flags) \ - ((SvFLAGS(sv) & (SVf_POK|SVf_THINKFIRST)) == SVf_POK \ - ? ((lp = SvCUR(sv)), SvPVX_mutable(sv)) \ - : sv_pvn_force_flags(sv, &lp, flags|SV_MUTABLE_RETURN)) -#endif -#ifndef SvPV_nolen -# define SvPV_nolen(sv) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? SvPVX(sv) : sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC)) -#endif -#ifndef SvPV_nolen_const -# define SvPV_nolen_const(sv) \ - ((SvFLAGS(sv) & (SVf_POK)) == SVf_POK \ - ? SvPVX_const(sv) : sv_2pv_flags(sv, DPPP_SVPV_NOLEN_LP_ARG, SV_GMAGIC|SV_CONST_RETURN)) -#endif -#ifndef SvPV_nomg -# define SvPV_nomg(sv, lp) SvPV_flags(sv, lp, 0) -#endif - -#ifndef SvPV_nomg_const -# define SvPV_nomg_const(sv, lp) SvPV_flags_const(sv, lp, 0) -#endif - -#ifndef SvPV_nomg_const_nolen -# define SvPV_nomg_const_nolen(sv) SvPV_flags_const_nolen(sv, 0) -#endif -#ifndef SvPV_renew -# define SvPV_renew(sv,n) STMT_START { SvLEN_set(sv, n); \ - SvPV_set((sv), (char *) saferealloc( \ - (Malloc_t)SvPVX(sv), (MEM_SIZE)((n)))); \ - } STMT_END -#endif -#ifndef SvMAGIC_set -# define SvMAGIC_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \ - (((XPVMG*) SvANY(sv))->xmg_magic = (val)); } STMT_END -#endif - -#if (PERL_BCDVERSION < 0x5009003) -#ifndef SvPVX_const -# define SvPVX_const(sv) ((const char*) (0 + SvPVX(sv))) -#endif - -#ifndef SvPVX_mutable -# define SvPVX_mutable(sv) (0 + SvPVX(sv)) -#endif -#ifndef SvRV_set -# define SvRV_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) >= SVt_RV); \ - (((XRV*) SvANY(sv))->xrv_rv = (val)); } STMT_END -#endif - -#else -#ifndef SvPVX_const -# define SvPVX_const(sv) ((const char*)((sv)->sv_u.svu_pv)) -#endif - -#ifndef SvPVX_mutable -# define SvPVX_mutable(sv) ((sv)->sv_u.svu_pv) -#endif -#ifndef SvRV_set -# define SvRV_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) >= SVt_RV); \ - ((sv)->sv_u.svu_rv = (val)); } STMT_END -#endif - -#endif -#ifndef SvSTASH_set -# define SvSTASH_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) >= SVt_PVMG); \ - (((XPVMG*) SvANY(sv))->xmg_stash = (val)); } STMT_END -#endif - -#if (PERL_BCDVERSION < 0x5004000) -#ifndef SvUV_set -# define SvUV_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \ - (((XPVIV*) SvANY(sv))->xiv_iv = (IV) (val)); } STMT_END -#endif - -#else -#ifndef SvUV_set -# define SvUV_set(sv, val) \ - STMT_START { assert(SvTYPE(sv) == SVt_IV || SvTYPE(sv) >= SVt_PVIV); \ - (((XPVUV*) SvANY(sv))->xuv_uv = (val)); } STMT_END -#endif - -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(vnewSVpvf) -#if defined(NEED_vnewSVpvf) -static SV * DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args); -static -#else -extern SV * DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args); -#endif - -#ifdef vnewSVpvf -# undef vnewSVpvf -#endif -#define vnewSVpvf(a,b) DPPP_(my_vnewSVpvf)(aTHX_ a,b) -#define Perl_vnewSVpvf DPPP_(my_vnewSVpvf) - -#if defined(NEED_vnewSVpvf) || defined(NEED_vnewSVpvf_GLOBAL) - -SV * -DPPP_(my_vnewSVpvf)(pTHX_ const char *pat, va_list *args) -{ - register SV *sv = newSV(0); - sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); - return sv; -} - -#endif -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vcatpvf) -# define sv_vcatpvf(sv, pat, args) sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vsetpvf) -# define sv_vsetpvf(sv, pat, args) sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)) -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_catpvf_mg) -#if defined(NEED_sv_catpvf_mg) -static void DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...); -static -#else -extern void DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...); -#endif - -#define Perl_sv_catpvf_mg DPPP_(my_sv_catpvf_mg) - -#if defined(NEED_sv_catpvf_mg) || defined(NEED_sv_catpvf_mg_GLOBAL) - -void -DPPP_(my_sv_catpvf_mg)(pTHX_ SV *sv, const char *pat, ...) -{ - va_list args; - va_start(args, pat); - sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif - -#ifdef PERL_IMPLICIT_CONTEXT -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_catpvf_mg_nocontext) -#if defined(NEED_sv_catpvf_mg_nocontext) -static void DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...); -static -#else -extern void DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...); -#endif - -#define sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) -#define Perl_sv_catpvf_mg_nocontext DPPP_(my_sv_catpvf_mg_nocontext) - -#if defined(NEED_sv_catpvf_mg_nocontext) || defined(NEED_sv_catpvf_mg_nocontext_GLOBAL) - -void -DPPP_(my_sv_catpvf_mg_nocontext)(SV *sv, const char *pat, ...) -{ - dTHX; - va_list args; - va_start(args, pat); - sv_vcatpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif -#endif - -/* sv_catpvf_mg depends on sv_catpvf_mg_nocontext */ -#ifndef sv_catpvf_mg -# ifdef PERL_IMPLICIT_CONTEXT -# define sv_catpvf_mg Perl_sv_catpvf_mg_nocontext -# else -# define sv_catpvf_mg Perl_sv_catpvf_mg -# endif -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vcatpvf_mg) -# define sv_vcatpvf_mg(sv, pat, args) \ - STMT_START { \ - sv_vcatpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ - SvSETMAGIC(sv); \ - } STMT_END -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_setpvf_mg) -#if defined(NEED_sv_setpvf_mg) -static void DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...); -static -#else -extern void DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...); -#endif - -#define Perl_sv_setpvf_mg DPPP_(my_sv_setpvf_mg) - -#if defined(NEED_sv_setpvf_mg) || defined(NEED_sv_setpvf_mg_GLOBAL) - -void -DPPP_(my_sv_setpvf_mg)(pTHX_ SV *sv, const char *pat, ...) -{ - va_list args; - va_start(args, pat); - sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif - -#ifdef PERL_IMPLICIT_CONTEXT -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_setpvf_mg_nocontext) -#if defined(NEED_sv_setpvf_mg_nocontext) -static void DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...); -static -#else -extern void DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...); -#endif - -#define sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) -#define Perl_sv_setpvf_mg_nocontext DPPP_(my_sv_setpvf_mg_nocontext) - -#if defined(NEED_sv_setpvf_mg_nocontext) || defined(NEED_sv_setpvf_mg_nocontext_GLOBAL) - -void -DPPP_(my_sv_setpvf_mg_nocontext)(SV *sv, const char *pat, ...) -{ - dTHX; - va_list args; - va_start(args, pat); - sv_vsetpvfn(sv, pat, strlen(pat), &args, Null(SV**), 0, Null(bool*)); - SvSETMAGIC(sv); - va_end(args); -} - -#endif -#endif -#endif - -/* sv_setpvf_mg depends on sv_setpvf_mg_nocontext */ -#ifndef sv_setpvf_mg -# ifdef PERL_IMPLICIT_CONTEXT -# define sv_setpvf_mg Perl_sv_setpvf_mg_nocontext -# else -# define sv_setpvf_mg Perl_sv_setpvf_mg -# endif -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(sv_vsetpvf_mg) -# define sv_vsetpvf_mg(sv, pat, args) \ - STMT_START { \ - sv_vsetpvfn(sv, pat, strlen(pat), args, Null(SV**), 0, Null(bool*)); \ - SvSETMAGIC(sv); \ - } STMT_END -#endif - -#ifndef newSVpvn_share - -#if defined(NEED_newSVpvn_share) -static SV * DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash); -static -#else -extern SV * DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash); -#endif - -#ifdef newSVpvn_share -# undef newSVpvn_share -#endif -#define newSVpvn_share(a,b,c) DPPP_(my_newSVpvn_share)(aTHX_ a,b,c) -#define Perl_newSVpvn_share DPPP_(my_newSVpvn_share) - -#if defined(NEED_newSVpvn_share) || defined(NEED_newSVpvn_share_GLOBAL) - -SV * -DPPP_(my_newSVpvn_share)(pTHX_ const char *src, I32 len, U32 hash) -{ - SV *sv; - if (len < 0) - len = -len; - if (!hash) - PERL_HASH(hash, (char*) src, len); - sv = newSVpvn((char *) src, len); - sv_upgrade(sv, SVt_PVIV); - SvIVX(sv) = hash; - SvREADONLY_on(sv); - SvPOK_on(sv); - return sv; -} - -#endif - -#endif -#ifndef SvSHARED_HASH -# define SvSHARED_HASH(sv) (0 + SvUVX(sv)) -#endif -#ifndef HvNAME_get -# define HvNAME_get(hv) HvNAME(hv) -#endif -#ifndef HvNAMELEN_get -# define HvNAMELEN_get(hv) (HvNAME_get(hv) ? (I32)strlen(HvNAME_get(hv)) : 0) -#endif -#ifndef GvSVn -# define GvSVn(gv) GvSV(gv) -#endif - -#ifndef isGV_with_GP -# define isGV_with_GP(gv) isGV(gv) -#endif -#ifndef WARN_ALL -# define WARN_ALL 0 -#endif - -#ifndef WARN_CLOSURE -# define WARN_CLOSURE 1 -#endif - -#ifndef WARN_DEPRECATED -# define WARN_DEPRECATED 2 -#endif - -#ifndef WARN_EXITING -# define WARN_EXITING 3 -#endif - -#ifndef WARN_GLOB -# define WARN_GLOB 4 -#endif - -#ifndef WARN_IO -# define WARN_IO 5 -#endif - -#ifndef WARN_CLOSED -# define WARN_CLOSED 6 -#endif - -#ifndef WARN_EXEC -# define WARN_EXEC 7 -#endif - -#ifndef WARN_LAYER -# define WARN_LAYER 8 -#endif - -#ifndef WARN_NEWLINE -# define WARN_NEWLINE 9 -#endif - -#ifndef WARN_PIPE -# define WARN_PIPE 10 -#endif - -#ifndef WARN_UNOPENED -# define WARN_UNOPENED 11 -#endif - -#ifndef WARN_MISC -# define WARN_MISC 12 -#endif - -#ifndef WARN_NUMERIC -# define WARN_NUMERIC 13 -#endif - -#ifndef WARN_ONCE -# define WARN_ONCE 14 -#endif - -#ifndef WARN_OVERFLOW -# define WARN_OVERFLOW 15 -#endif - -#ifndef WARN_PACK -# define WARN_PACK 16 -#endif - -#ifndef WARN_PORTABLE -# define WARN_PORTABLE 17 -#endif - -#ifndef WARN_RECURSION -# define WARN_RECURSION 18 -#endif - -#ifndef WARN_REDEFINE -# define WARN_REDEFINE 19 -#endif - -#ifndef WARN_REGEXP -# define WARN_REGEXP 20 -#endif - -#ifndef WARN_SEVERE -# define WARN_SEVERE 21 -#endif - -#ifndef WARN_DEBUGGING -# define WARN_DEBUGGING 22 -#endif - -#ifndef WARN_INPLACE -# define WARN_INPLACE 23 -#endif - -#ifndef WARN_INTERNAL -# define WARN_INTERNAL 24 -#endif - -#ifndef WARN_MALLOC -# define WARN_MALLOC 25 -#endif - -#ifndef WARN_SIGNAL -# define WARN_SIGNAL 26 -#endif - -#ifndef WARN_SUBSTR -# define WARN_SUBSTR 27 -#endif - -#ifndef WARN_SYNTAX -# define WARN_SYNTAX 28 -#endif - -#ifndef WARN_AMBIGUOUS -# define WARN_AMBIGUOUS 29 -#endif - -#ifndef WARN_BAREWORD -# define WARN_BAREWORD 30 -#endif - -#ifndef WARN_DIGIT -# define WARN_DIGIT 31 -#endif - -#ifndef WARN_PARENTHESIS -# define WARN_PARENTHESIS 32 -#endif - -#ifndef WARN_PRECEDENCE -# define WARN_PRECEDENCE 33 -#endif - -#ifndef WARN_PRINTF -# define WARN_PRINTF 34 -#endif - -#ifndef WARN_PROTOTYPE -# define WARN_PROTOTYPE 35 -#endif - -#ifndef WARN_QW -# define WARN_QW 36 -#endif - -#ifndef WARN_RESERVED -# define WARN_RESERVED 37 -#endif - -#ifndef WARN_SEMICOLON -# define WARN_SEMICOLON 38 -#endif - -#ifndef WARN_TAINT -# define WARN_TAINT 39 -#endif - -#ifndef WARN_THREADS -# define WARN_THREADS 40 -#endif - -#ifndef WARN_UNINITIALIZED -# define WARN_UNINITIALIZED 41 -#endif - -#ifndef WARN_UNPACK -# define WARN_UNPACK 42 -#endif - -#ifndef WARN_UNTIE -# define WARN_UNTIE 43 -#endif - -#ifndef WARN_UTF8 -# define WARN_UTF8 44 -#endif - -#ifndef WARN_VOID -# define WARN_VOID 45 -#endif - -#ifndef WARN_ASSERTIONS -# define WARN_ASSERTIONS 46 -#endif -#ifndef packWARN -# define packWARN(a) (a) -#endif - -#ifndef ckWARN -# ifdef G_WARN_ON -# define ckWARN(a) (PL_dowarn & G_WARN_ON) -# else -# define ckWARN(a) PL_dowarn -# endif -#endif - -#if (PERL_BCDVERSION >= 0x5004000) && !defined(warner) -#if defined(NEED_warner) -static void DPPP_(my_warner)(U32 err, const char *pat, ...); -static -#else -extern void DPPP_(my_warner)(U32 err, const char *pat, ...); -#endif - -#define Perl_warner DPPP_(my_warner) - -#if defined(NEED_warner) || defined(NEED_warner_GLOBAL) - -void -DPPP_(my_warner)(U32 err, const char *pat, ...) -{ - SV *sv; - va_list args; - - PERL_UNUSED_ARG(err); - - va_start(args, pat); - sv = vnewSVpvf(pat, &args); - va_end(args); - sv_2mortal(sv); - warn("%s", SvPV_nolen(sv)); -} - -#define warner Perl_warner - -#define Perl_warner_nocontext Perl_warner - -#endif -#endif - -/* concatenating with "" ensures that only literal strings are accepted as argument - * note that STR_WITH_LEN() can't be used as argument to macros or functions that - * under some configurations might be macros - */ -#ifndef STR_WITH_LEN -# define STR_WITH_LEN(s) (s ""), (sizeof(s)-1) -#endif -#ifndef newSVpvs -# define newSVpvs(str) newSVpvn(str "", sizeof(str) - 1) -#endif - -#ifndef newSVpvs_flags -# define newSVpvs_flags(str, flags) newSVpvn_flags(str "", sizeof(str) - 1, flags) -#endif - -#ifndef sv_catpvs -# define sv_catpvs(sv, str) sv_catpvn(sv, str "", sizeof(str) - 1) -#endif - -#ifndef sv_setpvs -# define sv_setpvs(sv, str) sv_setpvn(sv, str "", sizeof(str) - 1) -#endif - -#ifndef hv_fetchs -# define hv_fetchs(hv, key, lval) hv_fetch(hv, key "", sizeof(key) - 1, lval) -#endif - -#ifndef hv_stores -# define hv_stores(hv, key, val) hv_store(hv, key "", sizeof(key) - 1, val, 0) -#endif -#ifndef gv_fetchpvn_flags -# define gv_fetchpvn_flags(name, len, flags, svt) gv_fetchpv(name, flags, svt) -#endif - -#ifndef gv_fetchpvs -# define gv_fetchpvs(name, flags, svt) gv_fetchpvn_flags(name "", sizeof(name) - 1, flags, svt) -#endif - -#ifndef gv_stashpvs -# define gv_stashpvs(name, flags) gv_stashpvn(name "", sizeof(name) - 1, flags) -#endif -#ifndef SvGETMAGIC -# define SvGETMAGIC(x) STMT_START { if (SvGMAGICAL(x)) mg_get(x); } STMT_END -#endif -#ifndef PERL_MAGIC_sv -# define PERL_MAGIC_sv '\0' -#endif - -#ifndef PERL_MAGIC_overload -# define PERL_MAGIC_overload 'A' -#endif - -#ifndef PERL_MAGIC_overload_elem -# define PERL_MAGIC_overload_elem 'a' -#endif - -#ifndef PERL_MAGIC_overload_table -# define PERL_MAGIC_overload_table 'c' -#endif - -#ifndef PERL_MAGIC_bm -# define PERL_MAGIC_bm 'B' -#endif - -#ifndef PERL_MAGIC_regdata -# define PERL_MAGIC_regdata 'D' -#endif - -#ifndef PERL_MAGIC_regdatum -# define PERL_MAGIC_regdatum 'd' -#endif - -#ifndef PERL_MAGIC_env -# define PERL_MAGIC_env 'E' -#endif - -#ifndef PERL_MAGIC_envelem -# define PERL_MAGIC_envelem 'e' -#endif - -#ifndef PERL_MAGIC_fm -# define PERL_MAGIC_fm 'f' -#endif - -#ifndef PERL_MAGIC_regex_global -# define PERL_MAGIC_regex_global 'g' -#endif - -#ifndef PERL_MAGIC_isa -# define PERL_MAGIC_isa 'I' -#endif - -#ifndef PERL_MAGIC_isaelem -# define PERL_MAGIC_isaelem 'i' -#endif - -#ifndef PERL_MAGIC_nkeys -# define PERL_MAGIC_nkeys 'k' -#endif - -#ifndef PERL_MAGIC_dbfile -# define PERL_MAGIC_dbfile 'L' -#endif - -#ifndef PERL_MAGIC_dbline -# define PERL_MAGIC_dbline 'l' -#endif - -#ifndef PERL_MAGIC_mutex -# define PERL_MAGIC_mutex 'm' -#endif - -#ifndef PERL_MAGIC_shared -# define PERL_MAGIC_shared 'N' -#endif - -#ifndef PERL_MAGIC_shared_scalar -# define PERL_MAGIC_shared_scalar 'n' -#endif - -#ifndef PERL_MAGIC_collxfrm -# define PERL_MAGIC_collxfrm 'o' -#endif - -#ifndef PERL_MAGIC_tied -# define PERL_MAGIC_tied 'P' -#endif - -#ifndef PERL_MAGIC_tiedelem -# define PERL_MAGIC_tiedelem 'p' -#endif - -#ifndef PERL_MAGIC_tiedscalar -# define PERL_MAGIC_tiedscalar 'q' -#endif - -#ifndef PERL_MAGIC_qr -# define PERL_MAGIC_qr 'r' -#endif - -#ifndef PERL_MAGIC_sig -# define PERL_MAGIC_sig 'S' -#endif - -#ifndef PERL_MAGIC_sigelem -# define PERL_MAGIC_sigelem 's' -#endif - -#ifndef PERL_MAGIC_taint -# define PERL_MAGIC_taint 't' -#endif - -#ifndef PERL_MAGIC_uvar -# define PERL_MAGIC_uvar 'U' -#endif - -#ifndef PERL_MAGIC_uvar_elem -# define PERL_MAGIC_uvar_elem 'u' -#endif - -#ifndef PERL_MAGIC_vstring -# define PERL_MAGIC_vstring 'V' -#endif - -#ifndef PERL_MAGIC_vec -# define PERL_MAGIC_vec 'v' -#endif - -#ifndef PERL_MAGIC_utf8 -# define PERL_MAGIC_utf8 'w' -#endif - -#ifndef PERL_MAGIC_substr -# define PERL_MAGIC_substr 'x' -#endif - -#ifndef PERL_MAGIC_defelem -# define PERL_MAGIC_defelem 'y' -#endif - -#ifndef PERL_MAGIC_glob -# define PERL_MAGIC_glob '*' -#endif - -#ifndef PERL_MAGIC_arylen -# define PERL_MAGIC_arylen '#' -#endif - -#ifndef PERL_MAGIC_pos -# define PERL_MAGIC_pos '.' -#endif - -#ifndef PERL_MAGIC_backref -# define PERL_MAGIC_backref '<' -#endif - -#ifndef PERL_MAGIC_ext -# define PERL_MAGIC_ext '~' -#endif - -/* That's the best we can do... */ -#ifndef sv_catpvn_nomg -# define sv_catpvn_nomg sv_catpvn -#endif - -#ifndef sv_catsv_nomg -# define sv_catsv_nomg sv_catsv -#endif - -#ifndef sv_setsv_nomg -# define sv_setsv_nomg sv_setsv -#endif - -#ifndef sv_pvn_nomg -# define sv_pvn_nomg sv_pvn -#endif - -#ifndef SvIV_nomg -# define SvIV_nomg SvIV -#endif - -#ifndef SvUV_nomg -# define SvUV_nomg SvUV -#endif - -#ifndef sv_catpv_mg -# define sv_catpv_mg(sv, ptr) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_catpv(TeMpSv,ptr); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_catpvn_mg -# define sv_catpvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_catpvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_catsv_mg -# define sv_catsv_mg(dsv, ssv) \ - STMT_START { \ - SV *TeMpSv = dsv; \ - sv_catsv(TeMpSv,ssv); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setiv_mg -# define sv_setiv_mg(sv, i) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setiv(TeMpSv,i); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setnv_mg -# define sv_setnv_mg(sv, num) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setnv(TeMpSv,num); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setpv_mg -# define sv_setpv_mg(sv, ptr) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setpv(TeMpSv,ptr); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setpvn_mg -# define sv_setpvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setpvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setsv_mg -# define sv_setsv_mg(dsv, ssv) \ - STMT_START { \ - SV *TeMpSv = dsv; \ - sv_setsv(TeMpSv,ssv); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_setuv_mg -# define sv_setuv_mg(sv, i) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_setuv(TeMpSv,i); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif - -#ifndef sv_usepvn_mg -# define sv_usepvn_mg(sv, ptr, len) \ - STMT_START { \ - SV *TeMpSv = sv; \ - sv_usepvn(TeMpSv,ptr,len); \ - SvSETMAGIC(TeMpSv); \ - } STMT_END -#endif -#ifndef SvVSTRING_mg -# define SvVSTRING_mg(sv) (SvMAGICAL(sv) ? mg_find(sv, PERL_MAGIC_vstring) : NULL) -#endif - -/* Hint: sv_magic_portable - * This is a compatibility function that is only available with - * Devel::PPPort. It is NOT in the perl core. - * Its purpose is to mimic the 5.8.0 behaviour of sv_magic() when - * it is being passed a name pointer with namlen == 0. In that - * case, perl 5.8.0 and later store the pointer, not a copy of it. - * The compatibility can be provided back to perl 5.004. With - * earlier versions, the code will not compile. - */ - -#if (PERL_BCDVERSION < 0x5004000) - - /* code that uses sv_magic_portable will not compile */ - -#elif (PERL_BCDVERSION < 0x5008000) - -# define sv_magic_portable(sv, obj, how, name, namlen) \ - STMT_START { \ - SV *SvMp_sv = (sv); \ - char *SvMp_name = (char *) (name); \ - I32 SvMp_namlen = (namlen); \ - if (SvMp_name && SvMp_namlen == 0) \ - { \ - MAGIC *mg; \ - sv_magic(SvMp_sv, obj, how, 0, 0); \ - mg = SvMAGIC(SvMp_sv); \ - mg->mg_len = -42; /* XXX: this is the tricky part */ \ - mg->mg_ptr = SvMp_name; \ - } \ - else \ - { \ - sv_magic(SvMp_sv, obj, how, SvMp_name, SvMp_namlen); \ - } \ - } STMT_END - -#else - -# define sv_magic_portable(a, b, c, d, e) sv_magic(a, b, c, d, e) - -#endif - -#ifdef USE_ITHREADS -#ifndef CopFILE -# define CopFILE(c) ((c)->cop_file) -#endif - -#ifndef CopFILEGV -# define CopFILEGV(c) (CopFILE(c) ? gv_fetchfile(CopFILE(c)) : Nullgv) -#endif - -#ifndef CopFILE_set -# define CopFILE_set(c,pv) ((c)->cop_file = savepv(pv)) -#endif - -#ifndef CopFILESV -# define CopFILESV(c) (CopFILE(c) ? GvSV(gv_fetchfile(CopFILE(c))) : Nullsv) -#endif - -#ifndef CopFILEAV -# define CopFILEAV(c) (CopFILE(c) ? GvAV(gv_fetchfile(CopFILE(c))) : Nullav) -#endif - -#ifndef CopSTASHPV -# define CopSTASHPV(c) ((c)->cop_stashpv) -#endif - -#ifndef CopSTASHPV_set -# define CopSTASHPV_set(c,pv) ((c)->cop_stashpv = ((pv) ? savepv(pv) : Nullch)) -#endif - -#ifndef CopSTASH -# define CopSTASH(c) (CopSTASHPV(c) ? gv_stashpv(CopSTASHPV(c),GV_ADD) : Nullhv) -#endif - -#ifndef CopSTASH_set -# define CopSTASH_set(c,hv) CopSTASHPV_set(c, (hv) ? HvNAME(hv) : Nullch) -#endif - -#ifndef CopSTASH_eq -# define CopSTASH_eq(c,hv) ((hv) && (CopSTASHPV(c) == HvNAME(hv) \ - || (CopSTASHPV(c) && HvNAME(hv) \ - && strEQ(CopSTASHPV(c), HvNAME(hv))))) -#endif - -#else -#ifndef CopFILEGV -# define CopFILEGV(c) ((c)->cop_filegv) -#endif - -#ifndef CopFILEGV_set -# define CopFILEGV_set(c,gv) ((c)->cop_filegv = (GV*)SvREFCNT_inc(gv)) -#endif - -#ifndef CopFILE_set -# define CopFILE_set(c,pv) CopFILEGV_set((c), gv_fetchfile(pv)) -#endif - -#ifndef CopFILESV -# define CopFILESV(c) (CopFILEGV(c) ? GvSV(CopFILEGV(c)) : Nullsv) -#endif - -#ifndef CopFILEAV -# define CopFILEAV(c) (CopFILEGV(c) ? GvAV(CopFILEGV(c)) : Nullav) -#endif - -#ifndef CopFILE -# define CopFILE(c) (CopFILESV(c) ? SvPVX(CopFILESV(c)) : Nullch) -#endif - -#ifndef CopSTASH -# define CopSTASH(c) ((c)->cop_stash) -#endif - -#ifndef CopSTASH_set -# define CopSTASH_set(c,hv) ((c)->cop_stash = (hv)) -#endif - -#ifndef CopSTASHPV -# define CopSTASHPV(c) (CopSTASH(c) ? HvNAME(CopSTASH(c)) : Nullch) -#endif - -#ifndef CopSTASHPV_set -# define CopSTASHPV_set(c,pv) CopSTASH_set((c), gv_stashpv(pv,GV_ADD)) -#endif - -#ifndef CopSTASH_eq -# define CopSTASH_eq(c,hv) (CopSTASH(c) == (hv)) -#endif - -#endif /* USE_ITHREADS */ -#ifndef IN_PERL_COMPILETIME -# define IN_PERL_COMPILETIME (PL_curcop == &PL_compiling) -#endif - -#ifndef IN_LOCALE_RUNTIME -# define IN_LOCALE_RUNTIME (PL_curcop->op_private & HINT_LOCALE) -#endif - -#ifndef IN_LOCALE_COMPILETIME -# define IN_LOCALE_COMPILETIME (PL_hints & HINT_LOCALE) -#endif - -#ifndef IN_LOCALE -# define IN_LOCALE (IN_PERL_COMPILETIME ? IN_LOCALE_COMPILETIME : IN_LOCALE_RUNTIME) -#endif -#ifndef IS_NUMBER_IN_UV -# define IS_NUMBER_IN_UV 0x01 -#endif - -#ifndef IS_NUMBER_GREATER_THAN_UV_MAX -# define IS_NUMBER_GREATER_THAN_UV_MAX 0x02 -#endif - -#ifndef IS_NUMBER_NOT_INT -# define IS_NUMBER_NOT_INT 0x04 -#endif - -#ifndef IS_NUMBER_NEG -# define IS_NUMBER_NEG 0x08 -#endif - -#ifndef IS_NUMBER_INFINITY -# define IS_NUMBER_INFINITY 0x10 -#endif - -#ifndef IS_NUMBER_NAN -# define IS_NUMBER_NAN 0x20 -#endif -#ifndef GROK_NUMERIC_RADIX -# define GROK_NUMERIC_RADIX(sp, send) grok_numeric_radix(sp, send) -#endif -#ifndef PERL_SCAN_GREATER_THAN_UV_MAX -# define PERL_SCAN_GREATER_THAN_UV_MAX 0x02 -#endif - -#ifndef PERL_SCAN_SILENT_ILLDIGIT -# define PERL_SCAN_SILENT_ILLDIGIT 0x04 -#endif - -#ifndef PERL_SCAN_ALLOW_UNDERSCORES -# define PERL_SCAN_ALLOW_UNDERSCORES 0x01 -#endif - -#ifndef PERL_SCAN_DISALLOW_PREFIX -# define PERL_SCAN_DISALLOW_PREFIX 0x02 -#endif - -#ifndef grok_numeric_radix -#if defined(NEED_grok_numeric_radix) -static bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); -static -#else -extern bool DPPP_(my_grok_numeric_radix)(pTHX_ const char ** sp, const char * send); -#endif - -#ifdef grok_numeric_radix -# undef grok_numeric_radix -#endif -#define grok_numeric_radix(a,b) DPPP_(my_grok_numeric_radix)(aTHX_ a,b) -#define Perl_grok_numeric_radix DPPP_(my_grok_numeric_radix) - -#if defined(NEED_grok_numeric_radix) || defined(NEED_grok_numeric_radix_GLOBAL) -bool -DPPP_(my_grok_numeric_radix)(pTHX_ const char **sp, const char *send) -{ -#ifdef USE_LOCALE_NUMERIC -#ifdef PL_numeric_radix_sv - if (PL_numeric_radix_sv && IN_LOCALE) { - STRLEN len; - char* radix = SvPV(PL_numeric_radix_sv, len); - if (*sp + len <= send && memEQ(*sp, radix, len)) { - *sp += len; - return TRUE; - } - } -#else - /* older perls don't have PL_numeric_radix_sv so the radix - * must manually be requested from locale.h - */ -#include - dTHR; /* needed for older threaded perls */ - struct lconv *lc = localeconv(); - char *radix = lc->decimal_point; - if (radix && IN_LOCALE) { - STRLEN len = strlen(radix); - if (*sp + len <= send && memEQ(*sp, radix, len)) { - *sp += len; - return TRUE; - } - } -#endif -#endif /* USE_LOCALE_NUMERIC */ - /* always try "." if numeric radix didn't match because - * we may have data from different locales mixed */ - if (*sp < send && **sp == '.') { - ++*sp; - return TRUE; - } - return FALSE; -} -#endif -#endif - -#ifndef grok_number -#if defined(NEED_grok_number) -static int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); -static -#else -extern int DPPP_(my_grok_number)(pTHX_ const char * pv, STRLEN len, UV * valuep); -#endif - -#ifdef grok_number -# undef grok_number -#endif -#define grok_number(a,b,c) DPPP_(my_grok_number)(aTHX_ a,b,c) -#define Perl_grok_number DPPP_(my_grok_number) - -#if defined(NEED_grok_number) || defined(NEED_grok_number_GLOBAL) -int -DPPP_(my_grok_number)(pTHX_ const char *pv, STRLEN len, UV *valuep) -{ - const char *s = pv; - const char *send = pv + len; - const UV max_div_10 = UV_MAX / 10; - const char max_mod_10 = UV_MAX % 10; - int numtype = 0; - int sawinf = 0; - int sawnan = 0; - - while (s < send && isSPACE(*s)) - s++; - if (s == send) { - return 0; - } else if (*s == '-') { - s++; - numtype = IS_NUMBER_NEG; - } - else if (*s == '+') - s++; - - if (s == send) - return 0; - - /* next must be digit or the radix separator or beginning of infinity */ - if (isDIGIT(*s)) { - /* UVs are at least 32 bits, so the first 9 decimal digits cannot - overflow. */ - UV value = *s - '0'; - /* This construction seems to be more optimiser friendly. - (without it gcc does the isDIGIT test and the *s - '0' separately) - With it gcc on arm is managing 6 instructions (6 cycles) per digit. - In theory the optimiser could deduce how far to unroll the loop - before checking for overflow. */ - if (++s < send) { - int digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - digit = *s - '0'; - if (digit >= 0 && digit <= 9) { - value = value * 10 + digit; - if (++s < send) { - /* Now got 9 digits, so need to check - each time for overflow. */ - digit = *s - '0'; - while (digit >= 0 && digit <= 9 - && (value < max_div_10 - || (value == max_div_10 - && digit <= max_mod_10))) { - value = value * 10 + digit; - if (++s < send) - digit = *s - '0'; - else - break; - } - if (digit >= 0 && digit <= 9 - && (s < send)) { - /* value overflowed. - skip the remaining digits, don't - worry about setting *valuep. */ - do { - s++; - } while (s < send && isDIGIT(*s)); - numtype |= - IS_NUMBER_GREATER_THAN_UV_MAX; - goto skip_value; - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - } - numtype |= IS_NUMBER_IN_UV; - if (valuep) - *valuep = value; - - skip_value: - if (GROK_NUMERIC_RADIX(&s, send)) { - numtype |= IS_NUMBER_NOT_INT; - while (s < send && isDIGIT(*s)) /* optional digits after the radix */ - s++; - } - } - else if (GROK_NUMERIC_RADIX(&s, send)) { - numtype |= IS_NUMBER_NOT_INT | IS_NUMBER_IN_UV; /* valuep assigned below */ - /* no digits before the radix means we need digits after it */ - if (s < send && isDIGIT(*s)) { - do { - s++; - } while (s < send && isDIGIT(*s)); - if (valuep) { - /* integer approximation is valid - it's 0. */ - *valuep = 0; - } - } - else - return 0; - } else if (*s == 'I' || *s == 'i') { - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; if (s == send || (*s != 'F' && *s != 'f')) return 0; - s++; if (s < send && (*s == 'I' || *s == 'i')) { - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; if (s == send || (*s != 'I' && *s != 'i')) return 0; - s++; if (s == send || (*s != 'T' && *s != 't')) return 0; - s++; if (s == send || (*s != 'Y' && *s != 'y')) return 0; - s++; - } - sawinf = 1; - } else if (*s == 'N' || *s == 'n') { - /* XXX TODO: There are signaling NaNs and quiet NaNs. */ - s++; if (s == send || (*s != 'A' && *s != 'a')) return 0; - s++; if (s == send || (*s != 'N' && *s != 'n')) return 0; - s++; - sawnan = 1; - } else - return 0; - - if (sawinf) { - numtype &= IS_NUMBER_NEG; /* Keep track of sign */ - numtype |= IS_NUMBER_INFINITY | IS_NUMBER_NOT_INT; - } else if (sawnan) { - numtype &= IS_NUMBER_NEG; /* Keep track of sign */ - numtype |= IS_NUMBER_NAN | IS_NUMBER_NOT_INT; - } else if (s < send) { - /* we can have an optional exponent part */ - if (*s == 'e' || *s == 'E') { - /* The only flag we keep is sign. Blow away any "it's UV" */ - numtype &= IS_NUMBER_NEG; - numtype |= IS_NUMBER_NOT_INT; - s++; - if (s < send && (*s == '-' || *s == '+')) - s++; - if (s < send && isDIGIT(*s)) { - do { - s++; - } while (s < send && isDIGIT(*s)); - } - else - return 0; - } - } - while (s < send && isSPACE(*s)) - s++; - if (s >= send) - return numtype; - if (len == 10 && memEQ(pv, "0 but true", 10)) { - if (valuep) - *valuep = 0; - return IS_NUMBER_IN_UV; - } - return 0; -} -#endif -#endif - -/* - * The grok_* routines have been modified to use warn() instead of - * Perl_warner(). Also, 'hexdigit' was the former name of PL_hexdigit, - * which is why the stack variable has been renamed to 'xdigit'. - */ - -#ifndef grok_bin -#if defined(NEED_grok_bin) -static UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -static -#else -extern UV DPPP_(my_grok_bin)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -#endif - -#ifdef grok_bin -# undef grok_bin -#endif -#define grok_bin(a,b,c,d) DPPP_(my_grok_bin)(aTHX_ a,b,c,d) -#define Perl_grok_bin DPPP_(my_grok_bin) - -#if defined(NEED_grok_bin) || defined(NEED_grok_bin_GLOBAL) -UV -DPPP_(my_grok_bin)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_2 = UV_MAX / 2; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - - if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { - /* strip off leading b or 0b. - for compatibility silently suffer "b" and "0b" as valid binary - numbers. */ - if (len >= 1) { - if (s[0] == 'b') { - s++; - len--; - } - else if (len >= 2 && s[0] == '0' && s[1] == 'b') { - s+=2; - len-=2; - } - } - } - - for (; len-- && *s; s++) { - char bit = *s; - if (bit == '0' || bit == '1') { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - With gcc seems to be much straighter code than old scan_bin. */ - redo: - if (!overflowed) { - if (value <= max_div_2) { - value = (value << 1) | (bit - '0'); - continue; - } - /* Bah. We're just overflowed. */ - warn("Integer overflow in binary number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 2.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount. */ - value_nv += (NV)(bit - '0'); - continue; - } - if (bit == '_' && len && allow_underscores && (bit = s[1]) - && (bit == '0' || bit == '1')) - { - --len; - ++s; - goto redo; - } - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal binary digit '%c' ignored", *s); - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Binary number > 0b11111111111111111111111111111111 non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#ifndef grok_hex -#if defined(NEED_grok_hex) -static UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -static -#else -extern UV DPPP_(my_grok_hex)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -#endif - -#ifdef grok_hex -# undef grok_hex -#endif -#define grok_hex(a,b,c,d) DPPP_(my_grok_hex)(aTHX_ a,b,c,d) -#define Perl_grok_hex DPPP_(my_grok_hex) - -#if defined(NEED_grok_hex) || defined(NEED_grok_hex_GLOBAL) -UV -DPPP_(my_grok_hex)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_16 = UV_MAX / 16; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - const char *xdigit; - - if (!(*flags & PERL_SCAN_DISALLOW_PREFIX)) { - /* strip off leading x or 0x. - for compatibility silently suffer "x" and "0x" as valid hex numbers. - */ - if (len >= 1) { - if (s[0] == 'x') { - s++; - len--; - } - else if (len >= 2 && s[0] == '0' && s[1] == 'x') { - s+=2; - len-=2; - } - } - } - - for (; len-- && *s; s++) { - xdigit = strchr((char *) PL_hexdigit, *s); - if (xdigit) { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - With gcc seems to be much straighter code than old scan_hex. */ - redo: - if (!overflowed) { - if (value <= max_div_16) { - value = (value << 4) | ((xdigit - PL_hexdigit) & 15); - continue; - } - warn("Integer overflow in hexadecimal number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 16.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount of 16-tuples. */ - value_nv += (NV)((xdigit - PL_hexdigit) & 15); - continue; - } - if (*s == '_' && len && allow_underscores && s[1] - && (xdigit = strchr((char *) PL_hexdigit, s[1]))) - { - --len; - ++s; - goto redo; - } - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal hexadecimal digit '%c' ignored", *s); - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Hexadecimal number > 0xffffffff non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#ifndef grok_oct -#if defined(NEED_grok_oct) -static UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -static -#else -extern UV DPPP_(my_grok_oct)(pTHX_ const char * start, STRLEN * len_p, I32 * flags, NV * result); -#endif - -#ifdef grok_oct -# undef grok_oct -#endif -#define grok_oct(a,b,c,d) DPPP_(my_grok_oct)(aTHX_ a,b,c,d) -#define Perl_grok_oct DPPP_(my_grok_oct) - -#if defined(NEED_grok_oct) || defined(NEED_grok_oct_GLOBAL) -UV -DPPP_(my_grok_oct)(pTHX_ const char *start, STRLEN *len_p, I32 *flags, NV *result) -{ - const char *s = start; - STRLEN len = *len_p; - UV value = 0; - NV value_nv = 0; - - const UV max_div_8 = UV_MAX / 8; - bool allow_underscores = *flags & PERL_SCAN_ALLOW_UNDERSCORES; - bool overflowed = FALSE; - - for (; len-- && *s; s++) { - /* gcc 2.95 optimiser not smart enough to figure that this subtraction - out front allows slicker code. */ - int digit = *s - '0'; - if (digit >= 0 && digit <= 7) { - /* Write it in this wonky order with a goto to attempt to get the - compiler to make the common case integer-only loop pretty tight. - */ - redo: - if (!overflowed) { - if (value <= max_div_8) { - value = (value << 3) | digit; - continue; - } - /* Bah. We're just overflowed. */ - warn("Integer overflow in octal number"); - overflowed = TRUE; - value_nv = (NV) value; - } - value_nv *= 8.0; - /* If an NV has not enough bits in its mantissa to - * represent a UV this summing of small low-order numbers - * is a waste of time (because the NV cannot preserve - * the low-order bits anyway): we could just remember when - * did we overflow and in the end just multiply value_nv by the - * right amount of 8-tuples. */ - value_nv += (NV)digit; - continue; - } - if (digit == ('_' - '0') && len && allow_underscores - && (digit = s[1] - '0') && (digit >= 0 && digit <= 7)) - { - --len; - ++s; - goto redo; - } - /* Allow \octal to work the DWIM way (that is, stop scanning - * as soon as non-octal characters are seen, complain only iff - * someone seems to want to use the digits eight and nine). */ - if (digit == 8 || digit == 9) { - if (!(*flags & PERL_SCAN_SILENT_ILLDIGIT)) - warn("Illegal octal digit '%c' ignored", *s); - } - break; - } - - if ( ( overflowed && value_nv > 4294967295.0) -#if UVSIZE > 4 - || (!overflowed && value > 0xffffffff ) -#endif - ) { - warn("Octal number > 037777777777 non-portable"); - } - *len_p = s - start; - if (!overflowed) { - *flags = 0; - return value; - } - *flags = PERL_SCAN_GREATER_THAN_UV_MAX; - if (result) - *result = value_nv; - return UV_MAX; -} -#endif -#endif - -#if !defined(my_snprintf) -#if defined(NEED_my_snprintf) -static int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...); -static -#else -extern int DPPP_(my_my_snprintf)(char * buffer, const Size_t len, const char * format, ...); -#endif - -#define my_snprintf DPPP_(my_my_snprintf) -#define Perl_my_snprintf DPPP_(my_my_snprintf) - -#if defined(NEED_my_snprintf) || defined(NEED_my_snprintf_GLOBAL) - -int -DPPP_(my_my_snprintf)(char *buffer, const Size_t len, const char *format, ...) -{ - dTHX; - int retval; - va_list ap; - va_start(ap, format); -#ifdef HAS_VSNPRINTF - retval = vsnprintf(buffer, len, format, ap); -#else - retval = vsprintf(buffer, format, ap); -#endif - va_end(ap); - if (retval < 0 || (len > 0 && (Size_t)retval >= len)) - Perl_croak(aTHX_ "panic: my_snprintf buffer overflow"); - return retval; -} - -#endif -#endif - -#if !defined(my_sprintf) -#if defined(NEED_my_sprintf) -static int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...); -static -#else -extern int DPPP_(my_my_sprintf)(char * buffer, const char * pat, ...); -#endif - -#define my_sprintf DPPP_(my_my_sprintf) -#define Perl_my_sprintf DPPP_(my_my_sprintf) - -#if defined(NEED_my_sprintf) || defined(NEED_my_sprintf_GLOBAL) - -int -DPPP_(my_my_sprintf)(char *buffer, const char* pat, ...) -{ - va_list args; - va_start(args, pat); - vsprintf(buffer, pat, args); - va_end(args); - return strlen(buffer); -} - -#endif -#endif - -#ifdef NO_XSLOCKS -# ifdef dJMPENV -# define dXCPT dJMPENV; int rEtV = 0 -# define XCPT_TRY_START JMPENV_PUSH(rEtV); if (rEtV == 0) -# define XCPT_TRY_END JMPENV_POP; -# define XCPT_CATCH if (rEtV != 0) -# define XCPT_RETHROW JMPENV_JUMP(rEtV) -# else -# define dXCPT Sigjmp_buf oldTOP; int rEtV = 0 -# define XCPT_TRY_START Copy(top_env, oldTOP, 1, Sigjmp_buf); rEtV = Sigsetjmp(top_env, 1); if (rEtV == 0) -# define XCPT_TRY_END Copy(oldTOP, top_env, 1, Sigjmp_buf); -# define XCPT_CATCH if (rEtV != 0) -# define XCPT_RETHROW Siglongjmp(top_env, rEtV) -# endif -#endif - -#if !defined(my_strlcat) -#if defined(NEED_my_strlcat) -static Size_t DPPP_(my_my_strlcat)(char * dst, const char * src, Size_t size); -static -#else -extern Size_t DPPP_(my_my_strlcat)(char * dst, const char * src, Size_t size); -#endif - -#define my_strlcat DPPP_(my_my_strlcat) -#define Perl_my_strlcat DPPP_(my_my_strlcat) - -#if defined(NEED_my_strlcat) || defined(NEED_my_strlcat_GLOBAL) - -Size_t -DPPP_(my_my_strlcat)(char *dst, const char *src, Size_t size) -{ - Size_t used, length, copy; - - used = strlen(dst); - length = strlen(src); - if (size > 0 && used < size - 1) { - copy = (length >= size - used) ? size - used - 1 : length; - memcpy(dst + used, src, copy); - dst[used + copy] = '\0'; - } - return used + length; -} -#endif -#endif - -#if !defined(my_strlcpy) -#if defined(NEED_my_strlcpy) -static Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size); -static -#else -extern Size_t DPPP_(my_my_strlcpy)(char * dst, const char * src, Size_t size); -#endif - -#define my_strlcpy DPPP_(my_my_strlcpy) -#define Perl_my_strlcpy DPPP_(my_my_strlcpy) - -#if defined(NEED_my_strlcpy) || defined(NEED_my_strlcpy_GLOBAL) - -Size_t -DPPP_(my_my_strlcpy)(char *dst, const char *src, Size_t size) -{ - Size_t length, copy; - - length = strlen(src); - if (size > 0) { - copy = (length >= size) ? size - 1 : length; - memcpy(dst, src, copy); - dst[copy] = '\0'; - } - return length; -} - -#endif -#endif -#ifndef PERL_PV_ESCAPE_QUOTE -# define PERL_PV_ESCAPE_QUOTE 0x0001 -#endif - -#ifndef PERL_PV_PRETTY_QUOTE -# define PERL_PV_PRETTY_QUOTE PERL_PV_ESCAPE_QUOTE -#endif - -#ifndef PERL_PV_PRETTY_ELLIPSES -# define PERL_PV_PRETTY_ELLIPSES 0x0002 -#endif - -#ifndef PERL_PV_PRETTY_LTGT -# define PERL_PV_PRETTY_LTGT 0x0004 -#endif - -#ifndef PERL_PV_ESCAPE_FIRSTCHAR -# define PERL_PV_ESCAPE_FIRSTCHAR 0x0008 -#endif - -#ifndef PERL_PV_ESCAPE_UNI -# define PERL_PV_ESCAPE_UNI 0x0100 -#endif - -#ifndef PERL_PV_ESCAPE_UNI_DETECT -# define PERL_PV_ESCAPE_UNI_DETECT 0x0200 -#endif - -#ifndef PERL_PV_ESCAPE_ALL -# define PERL_PV_ESCAPE_ALL 0x1000 -#endif - -#ifndef PERL_PV_ESCAPE_NOBACKSLASH -# define PERL_PV_ESCAPE_NOBACKSLASH 0x2000 -#endif - -#ifndef PERL_PV_ESCAPE_NOCLEAR -# define PERL_PV_ESCAPE_NOCLEAR 0x4000 -#endif - -#ifndef PERL_PV_ESCAPE_RE -# define PERL_PV_ESCAPE_RE 0x8000 -#endif - -#ifndef PERL_PV_PRETTY_NOCLEAR -# define PERL_PV_PRETTY_NOCLEAR PERL_PV_ESCAPE_NOCLEAR -#endif -#ifndef PERL_PV_PRETTY_DUMP -# define PERL_PV_PRETTY_DUMP PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_QUOTE -#endif - -#ifndef PERL_PV_PRETTY_REGPROP -# define PERL_PV_PRETTY_REGPROP PERL_PV_PRETTY_ELLIPSES|PERL_PV_PRETTY_LTGT|PERL_PV_ESCAPE_RE -#endif - -/* Hint: pv_escape - * Note that unicode functionality is only backported to - * those perl versions that support it. For older perl - * versions, the implementation will fall back to bytes. - */ - -#ifndef pv_escape -#if defined(NEED_pv_escape) -static char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags); -static -#else -extern char * DPPP_(my_pv_escape)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, STRLEN * const escaped, const U32 flags); -#endif - -#ifdef pv_escape -# undef pv_escape -#endif -#define pv_escape(a,b,c,d,e,f) DPPP_(my_pv_escape)(aTHX_ a,b,c,d,e,f) -#define Perl_pv_escape DPPP_(my_pv_escape) - -#if defined(NEED_pv_escape) || defined(NEED_pv_escape_GLOBAL) - -char * -DPPP_(my_pv_escape)(pTHX_ SV *dsv, char const * const str, - const STRLEN count, const STRLEN max, - STRLEN * const escaped, const U32 flags) -{ - const char esc = flags & PERL_PV_ESCAPE_RE ? '%' : '\\'; - const char dq = flags & PERL_PV_ESCAPE_QUOTE ? '"' : esc; - char octbuf[32] = "%123456789ABCDF"; - STRLEN wrote = 0; - STRLEN chsize = 0; - STRLEN readsize = 1; -#if defined(is_utf8_string) && defined(utf8_to_uvchr) - bool isuni = flags & PERL_PV_ESCAPE_UNI ? 1 : 0; -#endif - const char *pv = str; - const char * const end = pv + count; - octbuf[0] = esc; - - if (!(flags & PERL_PV_ESCAPE_NOCLEAR)) - sv_setpvs(dsv, ""); - -#if defined(is_utf8_string) && defined(utf8_to_uvchr) - if ((flags & PERL_PV_ESCAPE_UNI_DETECT) && is_utf8_string((U8*)pv, count)) - isuni = 1; -#endif - - for (; pv < end && (!max || wrote < max) ; pv += readsize) { - const UV u = -#if defined(is_utf8_string) && defined(utf8_to_uvchr) - isuni ? utf8_to_uvchr((U8*)pv, &readsize) : -#endif - (U8)*pv; - const U8 c = (U8)u & 0xFF; - - if (u > 255 || (flags & PERL_PV_ESCAPE_ALL)) { - if (flags & PERL_PV_ESCAPE_FIRSTCHAR) - chsize = my_snprintf(octbuf, sizeof octbuf, - "%"UVxf, u); - else - chsize = my_snprintf(octbuf, sizeof octbuf, - "%cx{%"UVxf"}", esc, u); - } else if (flags & PERL_PV_ESCAPE_NOBACKSLASH) { - chsize = 1; - } else { - if (c == dq || c == esc || !isPRINT(c)) { - chsize = 2; - switch (c) { - case '\\' : /* fallthrough */ - case '%' : if (c == esc) - octbuf[1] = esc; - else - chsize = 1; - break; - case '\v' : octbuf[1] = 'v'; break; - case '\t' : octbuf[1] = 't'; break; - case '\r' : octbuf[1] = 'r'; break; - case '\n' : octbuf[1] = 'n'; break; - case '\f' : octbuf[1] = 'f'; break; - case '"' : if (dq == '"') - octbuf[1] = '"'; - else - chsize = 1; - break; - default: chsize = my_snprintf(octbuf, sizeof octbuf, - pv < end && isDIGIT((U8)*(pv+readsize)) - ? "%c%03o" : "%c%o", esc, c); - } - } else { - chsize = 1; - } - } - if (max && wrote + chsize > max) { - break; - } else if (chsize > 1) { - sv_catpvn(dsv, octbuf, chsize); - wrote += chsize; - } else { - char tmp[2]; - my_snprintf(tmp, sizeof tmp, "%c", c); - sv_catpvn(dsv, tmp, 1); - wrote++; - } - if (flags & PERL_PV_ESCAPE_FIRSTCHAR) - break; - } - if (escaped != NULL) - *escaped= pv - str; - return SvPVX(dsv); -} - -#endif -#endif - -#ifndef pv_pretty -#if defined(NEED_pv_pretty) -static char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags); -static -#else -extern char * DPPP_(my_pv_pretty)(pTHX_ SV * dsv, char const * const str, const STRLEN count, const STRLEN max, char const * const start_color, char const * const end_color, const U32 flags); -#endif - -#ifdef pv_pretty -# undef pv_pretty -#endif -#define pv_pretty(a,b,c,d,e,f,g) DPPP_(my_pv_pretty)(aTHX_ a,b,c,d,e,f,g) -#define Perl_pv_pretty DPPP_(my_pv_pretty) - -#if defined(NEED_pv_pretty) || defined(NEED_pv_pretty_GLOBAL) - -char * -DPPP_(my_pv_pretty)(pTHX_ SV *dsv, char const * const str, const STRLEN count, - const STRLEN max, char const * const start_color, char const * const end_color, - const U32 flags) -{ - const U8 dq = (flags & PERL_PV_PRETTY_QUOTE) ? '"' : '%'; - STRLEN escaped; - - if (!(flags & PERL_PV_PRETTY_NOCLEAR)) - sv_setpvs(dsv, ""); - - if (dq == '"') - sv_catpvs(dsv, "\""); - else if (flags & PERL_PV_PRETTY_LTGT) - sv_catpvs(dsv, "<"); - - if (start_color != NULL) - sv_catpv(dsv, D_PPP_CONSTPV_ARG(start_color)); - - pv_escape(dsv, str, count, max, &escaped, flags | PERL_PV_ESCAPE_NOCLEAR); - - if (end_color != NULL) - sv_catpv(dsv, D_PPP_CONSTPV_ARG(end_color)); - - if (dq == '"') - sv_catpvs(dsv, "\""); - else if (flags & PERL_PV_PRETTY_LTGT) - sv_catpvs(dsv, ">"); - - if ((flags & PERL_PV_PRETTY_ELLIPSES) && escaped < count) - sv_catpvs(dsv, "..."); - - return SvPVX(dsv); -} - -#endif -#endif - -#ifndef pv_display -#if defined(NEED_pv_display) -static char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim); -static -#else -extern char * DPPP_(my_pv_display)(pTHX_ SV * dsv, const char * pv, STRLEN cur, STRLEN len, STRLEN pvlim); -#endif - -#ifdef pv_display -# undef pv_display -#endif -#define pv_display(a,b,c,d,e) DPPP_(my_pv_display)(aTHX_ a,b,c,d,e) -#define Perl_pv_display DPPP_(my_pv_display) - -#if defined(NEED_pv_display) || defined(NEED_pv_display_GLOBAL) - -char * -DPPP_(my_pv_display)(pTHX_ SV *dsv, const char *pv, STRLEN cur, STRLEN len, STRLEN pvlim) -{ - pv_pretty(dsv, pv, cur, pvlim, NULL, NULL, PERL_PV_PRETTY_DUMP); - if (len > cur && pv[cur] == '\0') - sv_catpvs(dsv, "\\0"); - return SvPVX(dsv); -} - -#endif -#endif - -#endif /* _P_P_PORTABILITY_H_ */ - -/* End of File ppport.h */ diff --git a/scripts/module/hello.pm b/scripts/module/hello.pm deleted file mode 100644 index 33c66b14..00000000 --- a/scripts/module/hello.pm +++ /dev/null @@ -1,6 +0,0 @@ -#!/usr/bin/perl -use ExtUtils::testlib; -use CBitcoin; -CBitcoin::hello(); - -CBitcoin::newMasterKey(1); diff --git a/scripts/test.pm b/scripts/test.pm new file mode 100644 index 00000000..2de98383 --- /dev/null +++ b/scripts/test.pm @@ -0,0 +1,19 @@ + use strict; + use warnings; + use DBI; + use Digest::SHA qw(sha256); + use CBitcoin::CBHD; + +print "hello\n"; +my $parentkey = new CBitcoin::CBHD; +$parentkey->generate(); +my ($wif,$address) = ($parentkey->WIF(),$parentkey->address()); +print "WIF:$wif\n"; +print "Address:$address\n"; + +my $childkey = $parentkey->deriveChild(1,2); +($wif,$address) = ($childkey->WIF(),$childkey->address()); + +print "WIF:$wif\n"; +print "Address:$address\n"; + diff --git a/scripts/test2.pm b/scripts/test2.pm new file mode 100644 index 00000000..863644cc --- /dev/null +++ b/scripts/test2.pm @@ -0,0 +1,5 @@ + use CBitcoin::Script; + +my $address = '1ErayvrvUhxw1Nr6gkWmqVHUNZdX5QxxjY'; + +print "Script:".CBitcoin::Script::addressToScript($address)."\n"; From 3bae3ba93e7ef69c95a5d4da341f612196b594ba Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 20:31:04 +0900 Subject: [PATCH 010/127] stripped out binary crud --- scripts/CBHD/CBHD.bs | 0 scripts/CBHD/CBHD.c | 457 ------------------ scripts/CBHD/CBHD.o | Bin 135592 -> 0 bytes scripts/CBHD/Makefile.PL | 2 +- scripts/CBHD/Makefile.old | 8 +- scripts/CBHD/blib/arch/.exists | 0 .../CBHD/blib/arch/auto/CBitcoin/CBHD/.exists | 0 .../CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so | Bin 87701 -> 0 bytes scripts/CBHD/blib/lib/CBitcoin/.exists | 0 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm | 121 ----- scripts/CBHD/blib/lib/CBitcoin/coinx2.pl | 15 - .../CBHD/blib/lib/auto/CBitcoin/CBHD/.exists | 0 scripts/CBHD/blib/man1/.exists | 0 scripts/CBHD/blib/man3/.exists | 0 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm | 134 ----- scripts/CBHD/blib/script/.exists | 0 scripts/CBHD/old-config/CBHD.bs | 0 scripts/CBHD/old-config/Makefile.PL | 2 +- scripts/CBHD/old-config/Makefile.old | 8 +- scripts/CBHD/old-config/pm_to_blib | 0 scripts/CBHD/pm_to_blib | 0 scripts/CBitcoin/Makefile.PL | 2 +- scripts/Script/MYMETA.json | 39 -- scripts/Script/MYMETA.yml | 21 - scripts/Script/Makefile.PL | 2 +- scripts/Script/Makefile.old | 4 +- scripts/Script/Script.bs | 0 scripts/Script/Script.c | 156 ------ scripts/Script/Script.o | Bin 77088 -> 0 bytes scripts/Script/Script.xs | 21 +- scripts/Script/blib/arch/.exists | 0 .../blib/arch/auto/CBitcoin/Script/.exists | 0 .../blib/arch/auto/CBitcoin/Script/Script.so | Bin 49246 -> 0 bytes scripts/Script/blib/lib/CBitcoin/.exists | 0 scripts/Script/blib/lib/CBitcoin/Script.pm | 22 - scripts/Script/blib/lib/CBitcoin/coinx2.pl | 15 - .../blib/lib/auto/CBitcoin/Script/.exists | 0 scripts/Script/blib/man1/.exists | 0 scripts/Script/blib/man3/.exists | 0 scripts/Script/blib/script/.exists | 0 scripts/Script/old-config/MYMETA.json | 39 -- scripts/Script/old-config/MYMETA.yml | 21 - scripts/Script/old-config/Makefile.PL | 2 +- scripts/Script/old-config/Makefile.old | 4 +- scripts/Script/old-config/Script.bs | 0 scripts/Script/old-config/pm_to_blib | 0 scripts/Script/pm_to_blib | 0 scripts/Script/src/Script.c | 1 - scripts/TransactionInput/Makefile.PL | 13 - scripts/TransactionInput/TransactionInput.pm | 20 - scripts/TransactionInput/TransactionInput.xs | 117 ----- scripts/TransactionInput/coinx2.pl | 15 - .../old-config/Makefile.PL.cbhd | 25 - .../TransactionInput/src/TransactionInput.c | 34 -- 54 files changed, 27 insertions(+), 1293 deletions(-) delete mode 100644 scripts/CBHD/CBHD.bs delete mode 100644 scripts/CBHD/CBHD.c delete mode 100644 scripts/CBHD/CBHD.o delete mode 100644 scripts/CBHD/blib/arch/.exists delete mode 100644 scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists delete mode 100755 scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so delete mode 100644 scripts/CBHD/blib/lib/CBitcoin/.exists delete mode 100644 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm delete mode 100644 scripts/CBHD/blib/lib/CBitcoin/coinx2.pl delete mode 100644 scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists delete mode 100644 scripts/CBHD/blib/man1/.exists delete mode 100644 scripts/CBHD/blib/man3/.exists delete mode 100644 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm delete mode 100644 scripts/CBHD/blib/script/.exists delete mode 100644 scripts/CBHD/old-config/CBHD.bs delete mode 100644 scripts/CBHD/old-config/pm_to_blib delete mode 100644 scripts/CBHD/pm_to_blib delete mode 100644 scripts/Script/MYMETA.json delete mode 100644 scripts/Script/MYMETA.yml delete mode 100644 scripts/Script/Script.bs delete mode 100644 scripts/Script/Script.c delete mode 100644 scripts/Script/Script.o delete mode 100644 scripts/Script/blib/arch/.exists delete mode 100644 scripts/Script/blib/arch/auto/CBitcoin/Script/.exists delete mode 100755 scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so delete mode 100644 scripts/Script/blib/lib/CBitcoin/.exists delete mode 100644 scripts/Script/blib/lib/CBitcoin/Script.pm delete mode 100644 scripts/Script/blib/lib/CBitcoin/coinx2.pl delete mode 100644 scripts/Script/blib/lib/auto/CBitcoin/Script/.exists delete mode 100644 scripts/Script/blib/man1/.exists delete mode 100644 scripts/Script/blib/man3/.exists delete mode 100644 scripts/Script/blib/script/.exists delete mode 100644 scripts/Script/old-config/MYMETA.json delete mode 100644 scripts/Script/old-config/MYMETA.yml delete mode 100644 scripts/Script/old-config/Script.bs delete mode 100644 scripts/Script/old-config/pm_to_blib delete mode 100644 scripts/Script/pm_to_blib delete mode 100644 scripts/TransactionInput/Makefile.PL delete mode 100644 scripts/TransactionInput/TransactionInput.pm delete mode 100644 scripts/TransactionInput/TransactionInput.xs delete mode 100644 scripts/TransactionInput/coinx2.pl delete mode 100644 scripts/TransactionInput/old-config/Makefile.PL.cbhd delete mode 100644 scripts/TransactionInput/src/TransactionInput.c diff --git a/scripts/CBHD/CBHD.bs b/scripts/CBHD/CBHD.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/CBHD.c b/scripts/CBHD/CBHD.c deleted file mode 100644 index 72467ff0..00000000 --- a/scripts/CBHD/CBHD.c +++ /dev/null @@ -1,457 +0,0 @@ -/* - * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the - * contents of CBHD.xs. Do not edit this file, edit CBHD.xs instead. - * - * ANY CHANGES MADE HERE WILL BE LOST! - * - */ - -#line 1 "CBHD.xs" -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* newMasterKey(int arg){ - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* deriveChildPrivate(char* privstring,bool private,int child){ - CBHDKey* masterkey = importDataToCBHDKey(privstring); - - // generate child key - CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { private, child}; - CBHDKeyDeriveChild(masterkey, childID, childkey); - free(masterkey); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(childkey, keyData); - free(childkey); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* exportWIFFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBWIF * wif = CBHDKeyGetWIF(cbkey); - free(cbkey); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* exportAddressFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); - free(cbkey); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - return (char *)CBByteArrayGetData(addressstring); -} -char* exportPublicKeyFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); - free(cbkey); - return (char*) pubkey; -} - - -char* newWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - free(key); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* publickeyFromWIF(char* wifstring){ - CBByteArray * old = CBNewByteArrayFromString(wifstring,true); - CBWIF * wif = CBNewWIFFromString(old, false); - CBDestroyByteArray(old); - uint8_t privKey[32]; - CBWIFGetPrivateKey(wif,privKey); - CBFreeWIF(wif); - CBKeyPair * key = CBNewKeyPair(true); - CBInitKeyPair(key); - memcpy(key->privkey, privKey, 32); - CBKeyGetPublicKey(key->privkey, key->pubkey.key); - return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); - -} - -char* addressFromPublicKey(char* pubkey){ - CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); - //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); - //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); - - - //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); - - CBKeyPair * key = CBNewKeyPair(false); - memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); - CBDestroyByteArray(pubkeystring); - // this code came from CBKeyPairGetHash definition - uint8_t hash[32]; - CBSha256(key->pubkey.key, 33, hash); - CBRipemd160(hash, 32, key->pubkey.hash); - - CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); - free(key); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - - return (char *)CBByteArrayGetData(addressstring); -} - -char* createWIF(int arg){ - CBKeyPair * key = CBNewKeyPair(true); - CBKeyPairGenerate(key); - CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBReleaseObject(wif); - //return (char *)CBByteArrayGetData(str); - CBReleaseObject(str); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); - CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - return (char *)CBByteArrayGetData(string); - //CBReleaseObject(key); - //CBReleaseObject(address); -} - - - - - -#line 166 "CBHD.c" -#ifndef PERL_UNUSED_VAR -# define PERL_UNUSED_VAR(var) if (0) var = var -#endif - -#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE -#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) - -/* prototype to pass -Wmissing-prototypes */ -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); - -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) -{ - const GV *const gv = CvGV(cv); - - PERL_ARGS_ASSERT_CROAK_XS_USAGE; - - if (gv) { - const char *const gvname = GvNAME(gv); - const HV *const stash = GvSTASH(gv); - const char *const hvname = stash ? HvNAME(stash) : NULL; - - if (hvname) - Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); - else - Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); - } else { - /* Pants. I don't think that it should be possible to get here. */ - Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); - } -} -#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE - -#ifdef PERL_IMPLICIT_CONTEXT -#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) -#else -#define croak_xs_usage S_croak_xs_usage -#endif - -#endif - -/* NOTE: the prototype of newXSproto() is different in versions of perls, - * so we define a portable version of newXSproto() - */ -#ifdef newXS_flags -#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) -#else -#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) -#endif /* !defined(newXS_flags) */ - -#line 218 "CBHD.c" - -XS(XS_CBitcoin__CBHD_newMasterKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_newMasterKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "arg"); - { - int arg = (int)SvIV(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = newMasterKey(arg); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_deriveChildPrivate); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_deriveChildPrivate) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 3) - croak_xs_usage(cv, "privstring, private, child"); - { - char * privstring = (char *)SvPV_nolen(ST(0)); - bool private = (bool)SvTRUE(ST(1)); - int child = (int)SvIV(ST(2)); - char * RETVAL; - dXSTARG; - - RETVAL = deriveChildPrivate(privstring, private, child); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "privstring"); - { - char * privstring = (char *)SvPV_nolen(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = exportWIFFromCBHDKey(privstring); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "privstring"); - { - char * privstring = (char *)SvPV_nolen(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = exportAddressFromCBHDKey(privstring); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "privstring"); - { - char * privstring = (char *)SvPV_nolen(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = exportPublicKeyFromCBHDKey(privstring); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_newWIF); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_newWIF) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "arg"); - { - int arg = (int)SvIV(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = newWIF(arg); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_publickeyFromWIF); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_publickeyFromWIF) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "wifstring"); - { - char * wifstring = (char *)SvPV_nolen(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = publickeyFromWIF(wifstring); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_addressFromPublicKey); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_addressFromPublicKey) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "pubkey"); - { - char * pubkey = (char *)SvPV_nolen(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = addressFromPublicKey(pubkey); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__CBHD_createWIF); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__CBHD_createWIF) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "arg"); - { - int arg = (int)SvIV(ST(0)); - char * RETVAL; - dXSTARG; - - RETVAL = createWIF(arg); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - -#ifdef __cplusplus -extern "C" -#endif -XS(boot_CBitcoin__CBHD); /* prototype to pass -Wmissing-prototypes */ -XS(boot_CBitcoin__CBHD) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif -#if (PERL_REVISION == 5 && PERL_VERSION < 9) - char* file = __FILE__; -#else - const char* file = __FILE__; -#endif - - PERL_UNUSED_VAR(cv); /* -W */ - PERL_UNUSED_VAR(items); /* -W */ -#ifdef XS_APIVERSION_BOOTCHECK - XS_APIVERSION_BOOTCHECK; -#endif - XS_VERSION_BOOTCHECK ; - - newXS("CBitcoin::CBHD::newMasterKey", XS_CBitcoin__CBHD_newMasterKey, file); - newXS("CBitcoin::CBHD::deriveChildPrivate", XS_CBitcoin__CBHD_deriveChildPrivate, file); - newXS("CBitcoin::CBHD::exportWIFFromCBHDKey", XS_CBitcoin__CBHD_exportWIFFromCBHDKey, file); - newXS("CBitcoin::CBHD::exportAddressFromCBHDKey", XS_CBitcoin__CBHD_exportAddressFromCBHDKey, file); - newXS("CBitcoin::CBHD::exportPublicKeyFromCBHDKey", XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey, file); - newXS("CBitcoin::CBHD::newWIF", XS_CBitcoin__CBHD_newWIF, file); - newXS("CBitcoin::CBHD::publickeyFromWIF", XS_CBitcoin__CBHD_publickeyFromWIF, file); - newXS("CBitcoin::CBHD::addressFromPublicKey", XS_CBitcoin__CBHD_addressFromPublicKey, file); - newXS("CBitcoin::CBHD::createWIF", XS_CBitcoin__CBHD_createWIF, file); -#if (PERL_REVISION == 5 && PERL_VERSION >= 9) - if (PL_unitcheckav) - call_list(PL_scopestack_ix, PL_unitcheckav); -#endif - XSRETURN_YES; -} - diff --git a/scripts/CBHD/CBHD.o b/scripts/CBHD/CBHD.o deleted file mode 100644 index f444dcf1124ff6a92a7653fa12898e84474033cf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 135592 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

QEN|?-}ys;q})<|i2vFI(& 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

m1IcX{IDZ$mv0ODSybQTuc6# z_}6Dp@3={z<2D&|p4nBFq1-9)*^{3yFB&reTr^4>YzSMSHlQ8)KOhi3M*(F zbqAgu>%=%cj3|vXt^lilBp8K{(8MM(L(cw7O9-cTV$*RwQO`a-^@D5S6I4B=bC;=q zOiktjaekLGOP1thcHz#Nck4Q^bB}~>Ll*qe9w`XvpRvmyN>!J?r`n2>l$xBXlQx4D z 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

q3XI6WFZB3y5LJUsOv(#9v9wma$hl) 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 = []; + $this->{outputs} = []; + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + else{ + # we have the data, let's get the serialized data + $x->{'lockTime'} ||= 0; + $x->{'version'} ||= 1; + $this->lockTime($x->{'lockTime'}); + $this->version($x->{'version'}); + } + + + return $this; +} +=head2 +---++ variable accessors +=cut + +sub lockTime { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{lockTime} = $x; + return $x; + } + else{ + return $this->{lockTime}; + } +} + + +sub version { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + $this->{version} = $x; + return $x; + + + } + else{ + return $this->{version}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + unless($this->{serializeddata}){ + eval{ + + }; + if($@){ + warn "We cannot serialize the data yet.\n"; + } + } + return $this->{serializeddata}; + } +} +# this serializes the data we have +sub serializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + # check to see that we have inputs and outputs + unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ + die "not enough inputs or outputs to serialize this transaction\n"; + } + my @inputs; + foreach my $inx (@{$this->{inputs}}){ + push(@inputs,$inx->serializeddata()); + } + my @outputs; + foreach my $outx (@{$this->{outputs}}){ + push(@outputs,$outx->serializeddata()); + } + # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) + my $data = CBitcoin::Transaction::create_tx_obj( + $this->lockTime() + ,$this->version() + ,\@inputs + ,\@outputs + ,$this->numOfInputs + ,$this->numOfOutputs + ); + return $this->serializeddata($data); + +} +# TODO: change the name of this function!!! it does the opposite of its name +sub deserializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + $this->serializeddata( + CBitcoin::Transaction::create_tx_obj( + $this->lockTime(), + $this->version() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} + +# signatures.... +=head3 +---+++ sign($index,$cbhdkey) +Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! +=cut +sub sign_single_input{ + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my ($index,$keypair) = (shift,shift); + unless($index =~ m/\d+/){ + die "index is not a positive integer.\n"; + } + unless(ref($keypair) eq 'CBitcoin::CBHD'){ + die "keypair is not a CBitcoin::CBHD object.\n"; + } + + unless($this->serializeddata()){ + die "serialize the tx data first, before trying to sign prevOuts.\n"; + } + + require Data::Dumper; + my @alpha = ( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL'); + my $xo = Data::Dumper::Dumper(\@alpha); + print STDERR $xo; + # CB_SIGHASH_ALL means each signature signs all transaction outputs + + my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + + return $this->serializeddata($data) if $data; + + return $this->serializeddata(); +} + + +=head2 +---++ methods +=cut +sub addInput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'prevOutHash'} + && $x->{'prevOutIndex'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addTxInput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionInput'){ + $y = $x; + } + else{ + die "insufficient variables to use addTxInput function\n"; + } + push(@{$this->{inputs}},$y); + return scalar(@{$this->{inputs}}); +} + +sub numOfInputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{inputs}}); +} + + +sub addOutput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'value'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addOutput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ + $y = $x; + } + else{ + die "insufficient variables to use addOutput function\n"; + } + push(@{$this->{outputs}},$y); + return scalar(@{$this->{outputs}}); +} + +sub numOfOutputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{outputs}}); +} +=head3 +---+++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + my $x = shift; + + if( + $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) + && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl b/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..a6e47d55 --- /dev/null +++ b/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::Transaction'; +my $package_name = 'CBitcoin::Transaction'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists b/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man1/.exists b/scripts/Transaction/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man3/.exists b/scripts/Transaction/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm new file mode 100644 index 00000000..01952750 --- /dev/null +++ b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm @@ -0,0 +1,141 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "Transaction 3" +.TH Transaction 3 "2014-06-30" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SS " \-\-\-++ constructors" +.IX Subsection " ---++ constructors" +.SS " \-\-\-++ variable accessors" +.IX Subsection " ---++ variable accessors" +\fI \-\-\-+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!\fR +.IX Subsection " ---+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!" +.SS " \-\-\-++ methods" +.IX Subsection " ---++ methods" +\fI \-\-\-+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables.\fR +.IX Subsection " ---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." diff --git a/scripts/Transaction/blib/script/.exists b/scripts/Transaction/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/old-config/MYMETA.json b/scripts/Transaction/old-config/MYMETA.json new file mode 100644 index 00000000..41366499 --- /dev/null +++ b/scripts/Transaction/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Transaction", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Transaction/old-config/MYMETA.yml b/scripts/Transaction/old-config/MYMETA.yml new file mode 100644 index 00000000..13c0faa3 --- /dev/null +++ b/scripts/Transaction/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Transaction +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Transaction/old-config/Transaction.bs b/scripts/Transaction/old-config/Transaction.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/old-config/pm_to_blib b/scripts/Transaction/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/pm_to_blib b/scripts/Transaction/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/tx.pm b/scripts/tx.pm new file mode 100644 index 00000000..b102f586 --- /dev/null +++ b/scripts/tx.pm @@ -0,0 +1,75 @@ + use strict; + use warnings; + use DBI; + use Digest::SHA qw(sha256); + use CBitcoin::CBHD; + use CBitcoin::Script; + use CBitcoin::Transaction; + use CBitcoin::TransactionInput; + use CBitcoin::TransactionOutput; +print "hello\n"; + +my $parentkey = new CBitcoin::CBHD; +$parentkey->serializedkeypair('xprv9s21ZrQH143K4Rz5APz2LhW4ms2mVTVa5YVMZzGAYgNRoXkxri6ELZVbzqc8VFtHseksaBnahJbbgkxue3nXsMjuF5pg1cknX4ueyQwUATY'); +print "WIF:".$parentkey->WIF()."\n"; +print "Address:".$parentkey->address()."\n"; + +my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +#print "Script:$script\n"; + +#my $txinput = new CBitcoin::TransactionInput; +my $input = CBitcoin::TransactionInput::->new( +{ + 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' + ,'prevOutIndex' => 1 + ,'script' => CBitcoin::Script::address_to_script($parentkey->address()) +} +); + + +my $btcamt = 3.4049993; +my $x1 = { + 'value' => $btcamt*100000000 + ,'script' => $script +}; +my $output = CBitcoin::TransactionOutput::->new($x1); + + + + +my $tx = CBitcoin::Transaction::->new({}); + +$tx->addInput($input); +$tx->addOutput($output); + +my $data = $tx->serializeData(); +$data = $tx->serializeddata(); +print "Unsigned Transaction Data:$data\n"; + +# sign an input +my $oppppp = $tx->sign_single_input(0,$parentkey); +print "Final:$oppppp\n"; +#$data = $tx->serializeddata(); +#print "Signed Transaction Data:$data\n"; + +__END__ +$x->{'data'} = CBitcoin::TransactionOutput::create_txoutput_obj( + $x->{'script'} + ,$x->{'value'} +); +my $y = ''; +$y = CBitcoin::TransactionOutput::get_value_from_obj($x->{'data'}); +$y = $y/100000000; +print "Value:$y\n"; +#$y = CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x->{'data'}); +#print "prevOutIndex:$y\n"; +#$y = CBitcoin::TransactionInput::get_sequence_from_obj($x->{'data'}); +#print "sequence:$y\n"; +print "Data:".$x->{'data'}."\n"; +$y = CBitcoin::TransactionOutput::get_script_from_obj($x->{'data'}); +print "Script:$y\n"; + + + + + From 10021e42453913b5073f1f9c855c74b64dd66153 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Tue, 1 Jul 2014 09:47:46 +0900 Subject: [PATCH 032/127] added multisig, but c code crashes anyway --- library/src/CBScript.c | 1 - scripts/Transaction/MYMETA.json | 39 -- scripts/Transaction/MYMETA.yml | 21 - scripts/Transaction/Makefile.old | 367 ++++++++++++-- scripts/Transaction/Transaction.bs | 0 scripts/Transaction/Transaction.c | 463 ------------------ scripts/Transaction/Transaction.o | Bin 128536 -> 0 bytes scripts/Transaction/Transaction.pm | 80 ++- scripts/Transaction/Transaction.xs | 63 ++- scripts/Transaction/blib/arch/.exists | 0 .../arch/auto/CBitcoin/Transaction/.exists | 0 .../auto/CBitcoin/Transaction/Transaction.so | Bin 85950 -> 0 bytes scripts/Transaction/blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/Transaction.pm | 287 ----------- .../Transaction/blib/lib/CBitcoin/coinx2.pl | 15 - .../lib/auto/CBitcoin/Transaction/.exists | 0 scripts/Transaction/blib/man1/.exists | 0 scripts/Transaction/blib/man3/.exists | 0 .../blib/man3/CBitcoin::Transaction.3pm | 141 ------ scripts/Transaction/blib/script/.exists | 0 scripts/Transaction/old-config/MYMETA.json | 39 -- scripts/Transaction/old-config/MYMETA.yml | 21 - scripts/Transaction/old-config/Transaction.bs | 0 scripts/Transaction/old-config/Transaction.pm | 80 ++- scripts/Transaction/old-config/pm_to_blib | 0 scripts/Transaction/pm_to_blib | 0 scripts/Transaction/src/Transaction.c | 55 ++- scripts/tx.pm | 54 +- 28 files changed, 591 insertions(+), 1135 deletions(-) delete mode 100644 scripts/Transaction/MYMETA.json delete mode 100644 scripts/Transaction/MYMETA.yml delete mode 100644 scripts/Transaction/Transaction.bs delete mode 100644 scripts/Transaction/Transaction.c delete mode 100644 scripts/Transaction/Transaction.o delete mode 100644 scripts/Transaction/blib/arch/.exists delete mode 100644 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists delete mode 100755 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so delete mode 100644 scripts/Transaction/blib/lib/CBitcoin/.exists delete mode 100644 scripts/Transaction/blib/lib/CBitcoin/Transaction.pm delete mode 100644 scripts/Transaction/blib/lib/CBitcoin/coinx2.pl delete mode 100644 scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists delete mode 100644 scripts/Transaction/blib/man1/.exists delete mode 100644 scripts/Transaction/blib/man3/.exists delete mode 100644 scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm delete mode 100644 scripts/Transaction/blib/script/.exists delete mode 100644 scripts/Transaction/old-config/MYMETA.json delete mode 100644 scripts/Transaction/old-config/MYMETA.yml delete mode 100644 scripts/Transaction/old-config/Transaction.bs delete mode 100644 scripts/Transaction/old-config/pm_to_blib delete mode 100644 scripts/Transaction/pm_to_blib diff --git a/library/src/CBScript.c b/library/src/CBScript.c index a6250ff5..24790375 100644 --- a/library/src/CBScript.c +++ b/library/src/CBScript.c @@ -518,7 +518,6 @@ bool CBInitScriptFromString(CBScript * self, char * string){ } void CBInitScriptMultisigOutput(CBScript * self, uint8_t ** pubKeys, uint8_t m, uint8_t n){ - //CBInitByteArrayOfSize(self, 2 + n*(1 + CB_PUBKEY_SIZE)); CBInitByteArrayOfSize(self, 3 + n*(1 + CB_PUBKEY_SIZE)); CBByteArraySetByte(self, 0, CB_SCRIPT_OP_1 + m - 1); uint16_t cursor = 1; diff --git a/scripts/Transaction/MYMETA.json b/scripts/Transaction/MYMETA.json deleted file mode 100644 index 41366499..00000000 --- a/scripts/Transaction/MYMETA.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "abstract" : "unknown", - "author" : [ - "unknown" - ], - "dynamic_config" : 0, - "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", - "license" : [ - "unknown" - ], - "meta-spec" : { - "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" - }, - "name" : "CBitcoin-Transaction", - "no_index" : { - "directory" : [ - "t", - "inc" - ] - }, - "prereqs" : { - "build" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "configure" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "runtime" : { - "requires" : {} - } - }, - "release_status" : "stable", - "version" : "0.01" -} diff --git a/scripts/Transaction/MYMETA.yml b/scripts/Transaction/MYMETA.yml deleted file mode 100644 index 13c0faa3..00000000 --- a/scripts/Transaction/MYMETA.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -abstract: unknown -author: - - unknown -build_requires: - ExtUtils::MakeMaker: 0 -configure_requires: - ExtUtils::MakeMaker: 0 -dynamic_config: 0 -generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' -license: unknown -meta-spec: - url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 -name: CBitcoin-Transaction -no_index: - directory: - - t - - inc -requires: {} -version: 0.01 diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old index 347ffbd8..bc066153 100644 --- a/scripts/Transaction/Makefile.old +++ b/scripts/Transaction/Makefile.old @@ -67,12 +67,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = ../blib/arch -INST_SCRIPT = ../blib/script -INST_BIN = ../blib/bin -INST_LIB = ../blib/lib -INST_MAN1DIR = ../blib/man1 -INST_MAN3DIR = ../blib/man3 +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -155,15 +155,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = +OBJECT = $(BASEEXT)$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = -C_FILES = -O_FILES = +XS_FILES = Transaction.xs +C_FILES = Transaction.c +O_FILES = Transaction.o H_FILES = MAN1PODS = MAN3PODS = Transaction.pm @@ -188,10 +188,13 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = Transaction.pm +TO_INST_PM = Transaction.pm \ + coinx2.pl PM_TO_BLIB = Transaction.pm \ - $(INST_LIB)/CBitcoin/Transaction.pm + $(INST_LIB)/CBitcoin/Transaction.pm \ + coinx2.pl \ + $(INST_LIB)/CBitcoin/coinx2.pl # --- MakeMaker platform_constants section: @@ -207,7 +210,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -253,7 +256,24 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section skipped. +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = CBitcoin-Transaction +DISTVNAME = CBitcoin-Transaction-0.01 + # --- MakeMaker macro section: @@ -502,11 +522,17 @@ manifypods : pure_all \ # --- MakeMaker subdirs section: -# none +# The default clean, realclean and test targets in this Makefile +# have automatically been given entries for each subdir. + + +subdirs :: + $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) + # --- MakeMaker clean_subdirs section: clean_subdirs : - $(NOECHO) $(NOOP) + $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker clean section: @@ -522,16 +548,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml blibdirs.ts \ - core core.*perl.*.? \ - core.[0-9] core.[0-9][0-9] \ - core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ - mon.out perl \ - perl$(EXE_EXT) perl.exe \ - perlmain.c pm_to_blib \ - pm_to_blib.ts so_locations \ - tmon.out + MYMETA.yml Transaction.c \ + blibdirs.ts core \ + core.*perl.*.? core.[0-9] \ + core.[0-9][0-9] core.[0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ + lib$(BASEEXT).def mon.out \ + perl perl$(EXE_EXT) \ + perl.exe perlmain.c \ + pm_to_blib pm_to_blib.ts \ + so_locations tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -540,7 +566,8 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - $(NOECHO) $(NOOP) + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker realclean section: @@ -626,15 +653,91 @@ signature : cpansign -s -# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) -# --- MakeMaker dist_core section skipped. -# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" -# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -656,7 +759,117 @@ distsignature : create_distdir -# --- MakeMaker install section skipped. +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + +doc_perl_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLPRIVLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_vendor_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLVENDORLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist + # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -665,6 +878,75 @@ FORCE : # --- MakeMaker perldepend section: +PERL_HDRS = \ + $(PERL_INC)/EXTERN.h \ + $(PERL_INC)/INTERN.h \ + $(PERL_INC)/XSUB.h \ + $(PERL_INC)/av.h \ + $(PERL_INC)/bitcount.h \ + $(PERL_INC)/config.h \ + $(PERL_INC)/cop.h \ + $(PERL_INC)/cv.h \ + $(PERL_INC)/dosish.h \ + $(PERL_INC)/embed.h \ + $(PERL_INC)/embedvar.h \ + $(PERL_INC)/fakesdio.h \ + $(PERL_INC)/fakethr.h \ + $(PERL_INC)/form.h \ + $(PERL_INC)/git_version.h \ + $(PERL_INC)/gv.h \ + $(PERL_INC)/handy.h \ + $(PERL_INC)/hv.h \ + $(PERL_INC)/intrpvar.h \ + $(PERL_INC)/iperlsys.h \ + $(PERL_INC)/keywords.h \ + $(PERL_INC)/l1_char_class_tab.h \ + $(PERL_INC)/malloc_ctl.h \ + $(PERL_INC)/metaconfig.h \ + $(PERL_INC)/mg.h \ + $(PERL_INC)/mydtrace.h \ + $(PERL_INC)/nostdio.h \ + $(PERL_INC)/op.h \ + $(PERL_INC)/op_reg_common.h \ + $(PERL_INC)/opcode.h \ + $(PERL_INC)/opnames.h \ + $(PERL_INC)/overload.h \ + $(PERL_INC)/pad.h \ + $(PERL_INC)/parser.h \ + $(PERL_INC)/patchlevel-debian.h \ + $(PERL_INC)/patchlevel.h \ + $(PERL_INC)/perl.h \ + $(PERL_INC)/perlapi.h \ + $(PERL_INC)/perlio.h \ + $(PERL_INC)/perliol.h \ + $(PERL_INC)/perlsdio.h \ + $(PERL_INC)/perlsfio.h \ + $(PERL_INC)/perlvars.h \ + $(PERL_INC)/perly.h \ + $(PERL_INC)/pp.h \ + $(PERL_INC)/pp_proto.h \ + $(PERL_INC)/proto.h \ + $(PERL_INC)/reentr.h \ + $(PERL_INC)/regcharclass.h \ + $(PERL_INC)/regcomp.h \ + $(PERL_INC)/regexp.h \ + $(PERL_INC)/regnodes.h \ + $(PERL_INC)/scope.h \ + $(PERL_INC)/sv.h \ + $(PERL_INC)/thread.h \ + $(PERL_INC)/time64.h \ + $(PERL_INC)/time64_config.h \ + $(PERL_INC)/uconfig.h \ + $(PERL_INC)/unixish.h \ + $(PERL_INC)/utf8.h \ + $(PERL_INC)/utfebcdic.h \ + $(PERL_INC)/util.h \ + $(PERL_INC)/uudmap.h \ + $(PERL_INC)/warnings.h + +$(OBJECT) : $(PERL_HDRS) + +Transaction.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -673,9 +955,19 @@ FORCE : # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = ../perl +MAP_TARGET = perl FULLPERL = /usr/bin/perl +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR=old-config \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= + # --- MakeMaker test section: @@ -692,7 +984,9 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) - $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' +subdirs-test :: + $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) + test_dynamic :: pure_all @@ -725,7 +1019,8 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm + Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm \ + coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/Transaction/Transaction.bs b/scripts/Transaction/Transaction.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/Transaction.c b/scripts/Transaction/Transaction.c deleted file mode 100644 index fb47f74b..00000000 --- a/scripts/Transaction/Transaction.c +++ /dev/null @@ -1,463 +0,0 @@ -/* - * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the - * contents of Transaction.xs. Do not edit this file, edit Transaction.xs instead. - * - * ANY CHANGES MADE HERE WILL BE LOST! - * - */ - -#line 1 "Transaction.xs" -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -// print CBByteArray to hex string -char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ - char* answer = malloc(dlen*sizeof(char*)); - CBByteArrayToString(serializeddata, 0, dlen, answer, 0); - return answer; -} -CBByteArray* hexstring_to_bytearray(char* hexstring){ - CBByteArray* answer = CBNewByteArrayFromHex(hexstring); - return answer; -} - -//bool CBInitScriptFromString(CBScript * self, char * string) -char* scriptToString(CBScript* script){ - char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); - CBScriptToString(script, answer); - return answer; - -} - - -CBTransaction* serializeddata_to_obj(char* datastring){ - - CBByteArray* data = hexstring_to_bytearray(datastring); - - CBTransaction* tx = CBNewTransactionFromData(data); - uint32_t dlen = CBTransactionDeserialise(tx); - - //CBDestroyByteArray(data); - return tx; -} - -char* obj_to_serializeddata(CBTransaction * tx){ - CBTransactionPrepareBytes(tx); - int dlen = CBTransactionSerialise(tx,1); - CBByteArray* serializeddata = CBGetMessage(tx)->bytes; - - char* answer = bytearray_to_hexstring(serializeddata,dlen); - - return answer; -} - -/* - * TransactionOutput related functions - */ -char* txoutput_obj_to_serializeddata(CBTransactionOutput * txoutput){ - CBTransactionOutputPrepareBytes(txoutput); - int dlen = CBTransactionOutputSerialise(txoutput); - CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; - - char* answer = bytearray_to_hexstring(serializeddata,dlen); - - return answer; -} -CBTransactionOutput* txoutput_serializeddata_to_obj(char* datastring){ - - CBByteArray* data = hexstring_to_bytearray(datastring); - - CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); - int dlen = (int)CBTransactionOutputDeserialise(txoutput); - - //CBTransactionInputDeserialise(txinput); - //CBDestroyByteArray(data); - return txoutput; -} -/* - * TransactionInput related functions - */ - -CBTransactionInput* txinput_serializeddata_to_obj(char* datastring){ - - CBByteArray* data = hexstring_to_bytearray(datastring); - - CBTransactionInput* txinput = CBNewTransactionInputFromData(data); - int dlen = (int)CBTransactionInputDeserialise(txinput); - - //CBTransactionInputDeserialise(txinput); - //CBDestroyByteArray(data); - return txinput; -} - -char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ - CBTransactionInputPrepareBytes(txinput); - int dlen = CBTransactionInputSerialise(txinput); - CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - - char* answer = bytearray_to_hexstring(serializeddata,dlen); - - return answer; -} - -// CBHDKeys - -CBHDKey* cbhdkey_serializeddata_to_obj(char* privstring){ - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} - -char* cbhdkey_obj_to_serializeddata(CBHDKey * keypair){ - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(keypair, keyData); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} -/* - * CBScript - */ -char* script_obj_to_serializeddata(CBScript* script){ - char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); - CBScriptToString(script, answer); - return answer; - -} -CBScript* script_serializeddata_to_obj(char* scriptstring){ - CBScript* self; - if(CBInitScriptFromString(self,scriptstring)){ - return self; - } - else{ - return NULL; - } -} - -//////////////////////// perl export functions ///////////// -//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) - -char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ - CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); - - int n; - int in_length, out_length; - if ((! SvROK(inputs)) - || (SvTYPE(SvRV(inputs)) != SVt_PVAV) - || ((in_length = av_len((AV *)SvRV(inputs))) < 0)) - { - return 0; - } - if ((! SvROK(outputs)) - || (SvTYPE(SvRV(outputs)) != SVt_PVAV) - || ((out_length = av_len((AV *)SvRV(outputs))) < 0)) - { - return 0; - } - - // load TransactionInput - for (n=0; n<=in_length; n++) { - STRLEN l; - - char * fn = SvPV (*av_fetch ((AV *) SvRV (inputs), n, 0), l); - CBTransactionInput * inx = txinput_serializeddata_to_obj(fn); - CBTransactionAddInput(tx,inx); - } - for (n=0; n<=out_length; n++) { - STRLEN l; - - char * fn = SvPV (*av_fetch ((AV *) SvRV (outputs), n, 0), l); - CBTransactionOutput * outx = txoutput_serializeddata_to_obj(fn); - CBTransactionAddOutput(tx,outx); - } - char* answer = obj_to_serializeddata(tx); - //CBFreeTransaction(tx); - return answer; -} -/* -char* get_script_from_obj(char* serializedDataString){ - CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); - char* scriptstring = scriptToString(txoutput->scriptObject); - //CBFreeTransactionOutput(txoutput); - return scriptstring; -} -*/ -int get_lockTime_from_obj(char* serializedDataString){ - CBTransaction* tx = serializeddata_to_obj(serializedDataString); - uint32_t lockTime = tx->lockTime; - CBFreeTransaction(tx); - return (int)lockTime; -} - -int get_version_from_obj(char* serializedDataString){ - CBTransaction* tx = serializeddata_to_obj(serializedDataString); - uint32_t version = tx->version; - CBFreeTransaction(tx); - return (int)version; -} -// CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType -char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ - printf("%d:We are here.",1); - - - CBTransaction * tx = serializeddata_to_obj(txString); - CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); - CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); - - - - printf("%d:We are here.\n",4); - - // figure out the signature type - CBSignType signtype; - if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { - signtype = CB_SIGHASH_ALL; - } - else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ - signtype = CB_SIGHASH_NONE; - } - else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ - signtype = CB_SIGHASH_SINGLE; - } - else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ - signtype = CB_SIGHASH_ANYONECANPAY; - } - else{ - // we have to fail here - return "NULL"; - } -/* - CBTransactionSignPubKeyHashInput( - tx - ,keypair->keyPair - , prevOutSubScript - , (uint32_t)input - , CB_SIGHASH_ALL - );*/ - CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; - tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); - uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, - keypair->keyPair, oldprevOutSubScript, input, signtype); - if (!sigLen){ - CBLogError("Unable to add a signature to a pubkey hash transaction input."); - return "NULL"; - } - // add the public key - CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); - memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); - //return txString; - - return obj_to_serializeddata(tx); - -} - - -#line 280 "Transaction.c" -#ifndef PERL_UNUSED_VAR -# define PERL_UNUSED_VAR(var) if (0) var = var -#endif - -#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE -#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) - -/* prototype to pass -Wmissing-prototypes */ -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); - -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) -{ - const GV *const gv = CvGV(cv); - - PERL_ARGS_ASSERT_CROAK_XS_USAGE; - - if (gv) { - const char *const gvname = GvNAME(gv); - const HV *const stash = GvSTASH(gv); - const char *const hvname = stash ? HvNAME(stash) : NULL; - - if (hvname) - Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); - else - Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); - } else { - /* Pants. I don't think that it should be possible to get here. */ - Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); - } -} -#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE - -#ifdef PERL_IMPLICIT_CONTEXT -#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) -#else -#define croak_xs_usage S_croak_xs_usage -#endif - -#endif - -/* NOTE: the prototype of newXSproto() is different in versions of perls, - * so we define a portable version of newXSproto() - */ -#ifdef newXS_flags -#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) -#else -#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) -#endif /* !defined(newXS_flags) */ - -#line 332 "Transaction.c" - -XS(XS_CBitcoin__Transaction_create_tx_obj); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__Transaction_create_tx_obj) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 6) - croak_xs_usage(cv, "lockTime, version, inputs, outputs, numOfInputs, numOfOutputs"); - { - int lockTime = (int)SvIV(ST(0)); - int version = (int)SvIV(ST(1)); - SV * inputs = ST(2); - SV * outputs = ST(3); - int numOfInputs = (int)SvIV(ST(4)); - int numOfOutputs = (int)SvIV(ST(5)); - char * RETVAL; - dXSTARG; - - RETVAL = create_tx_obj(lockTime, version, inputs, outputs, numOfInputs, numOfOutputs); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__Transaction_get_lockTime_from_obj); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__Transaction_get_lockTime_from_obj) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "serializedDataString"); - { - char * serializedDataString = (char *)SvPV_nolen(ST(0)); - int RETVAL; - dXSTARG; - - RETVAL = get_lockTime_from_obj(serializedDataString); - XSprePUSH; PUSHi((IV)RETVAL); - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__Transaction_get_version_from_obj); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__Transaction_get_version_from_obj) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "serializedDataString"); - { - char * serializedDataString = (char *)SvPV_nolen(ST(0)); - int RETVAL; - dXSTARG; - - RETVAL = get_version_from_obj(serializedDataString); - XSprePUSH; PUSHi((IV)RETVAL); - } - XSRETURN(1); -} - - -XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 5) - croak_xs_usage(cv, "txString, keypairString, prevOutSubScriptString, input, signTypeString"); - { - char * txString = (char *)SvPV_nolen(ST(0)); - char * keypairString = (char *)SvPV_nolen(ST(1)); - char * prevOutSubScriptString = (char *)SvPV_nolen(ST(2)); - int input = (int)SvIV(ST(3)); - char * signTypeString = (char *)SvPV_nolen(ST(4)); - char * RETVAL; - dXSTARG; - - RETVAL = sign_tx_pubkeyhash(txString, keypairString, prevOutSubScriptString, input, signTypeString); - sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; - } - XSRETURN(1); -} - -#ifdef __cplusplus -extern "C" -#endif -XS(boot_CBitcoin__Transaction); /* prototype to pass -Wmissing-prototypes */ -XS(boot_CBitcoin__Transaction) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif -#if (PERL_REVISION == 5 && PERL_VERSION < 9) - char* file = __FILE__; -#else - const char* file = __FILE__; -#endif - - PERL_UNUSED_VAR(cv); /* -W */ - PERL_UNUSED_VAR(items); /* -W */ -#ifdef XS_APIVERSION_BOOTCHECK - XS_APIVERSION_BOOTCHECK; -#endif - XS_VERSION_BOOTCHECK ; - - newXS("CBitcoin::Transaction::create_tx_obj", XS_CBitcoin__Transaction_create_tx_obj, file); - newXS("CBitcoin::Transaction::get_lockTime_from_obj", XS_CBitcoin__Transaction_get_lockTime_from_obj, file); - newXS("CBitcoin::Transaction::get_version_from_obj", XS_CBitcoin__Transaction_get_version_from_obj, file); - newXS("CBitcoin::Transaction::sign_tx_pubkeyhash", XS_CBitcoin__Transaction_sign_tx_pubkeyhash, file); -#if (PERL_REVISION == 5 && PERL_VERSION >= 9) - if (PL_unitcheckav) - call_list(PL_scopestack_ix, PL_unitcheckav); -#endif - XSRETURN_YES; -} - diff --git a/scripts/Transaction/Transaction.o b/scripts/Transaction/Transaction.o deleted file mode 100644 index 633f1476af84e9a880817f864914573fe43ee458..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128536 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

QEN|?-}ys;q})<|i2vFI(& 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

m1IcX{IDZ$mv0ODSybQTuc6# z_}6Dp@3={z<2D&|p4nBFq1-9)*^{3yFB&reTr^4>YzSMSHlQ8)KOhi3M*(F zbqAgu>%=%cj3|vXt^lilBp8K{(8MM(L(cw7O9-cTV$*RwQO`a-^@D5S6I4B=bC;=q zOiktjaekLGOP1thcHz#Nck4Q^bB}~>Ll*qe9w`XvpRvmyN>!J?r`n2>l$xBXlQx4D z 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 die "serialize the tx data first, before trying to sign prevOuts.\n"; } - - require Data::Dumper; - my @alpha = ( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL'); - my $xo = Data::Dumper::Dumper(\@alpha); - print STDERR $xo; - # CB_SIGHASH_ALL means each signature signs all transaction outputs - - my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL' - ); + # get the input + my $prevOutInput = $this->input($index); + unless(ref($prevOutInput) eq 'CBitcoin::TransactionInput'){ + return undef; + } + + + # find out what type of script we are dealing with + # p2sh, pubkey, keyhash, multisig + my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); + + my $data; + if($scripttype eq 'keyhash'){ + $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } + elsif($scripttype eq 'multisig'){ + # do multisig + $data = CBitcoin::Transaction::sign_tx_multisig( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } return $this->serializeddata($data) if $data; - return $this->serializeddata(); + return $this->serializeddata(); } - =head2 ---++ methods =cut @@ -229,6 +243,15 @@ sub numOfInputs { return scalar(@{$this->{inputs}}); } +sub input { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfInputs() ){ + die "index is not an integer\n"; + } + return $this->{inputs}->[$index]; +} sub addOutput { my $this = shift; @@ -262,6 +285,17 @@ sub numOfOutputs { die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; return scalar(@{$this->{outputs}}); } + +sub output { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfOutputs() ){ + die "index is not an integer\n"; + } + return $this->{outputs}->[$index]; +} + =head3 ---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables. diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index c0867540..4fd875e4 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -212,9 +212,6 @@ int get_version_from_obj(char* serializedDataString){ } // CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ - printf("%d:We are here.",1); - - CBTransaction * tx = serializeddata_to_obj(txString); CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); @@ -250,6 +247,13 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc , CB_SIGHASH_ALL );*/ CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + ; + if (!CBTransactionSignPubKeyHashInput(tx, keypair->keyPair, + oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } +/* tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, keypair->keyPair, oldprevOutSubScript, input, signtype); @@ -257,15 +261,58 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc CBLogError("Unable to add a signature to a pubkey hash transaction input."); return "NULL"; } + // add the public key CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); //return txString; - +*/ return obj_to_serializeddata(tx); } +char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } + + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + /* + * CBTransactionSignMultisigInput( + CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType + ) + */ + if (!CBTransactionSignMultisigInput(tx, keypair->keyPair, oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + + return obj_to_serializeddata(tx); +} + MODULE = CBitcoin::Transaction PACKAGE = CBitcoin::Transaction @@ -297,3 +344,11 @@ sign_tx_pubkeyhash (txString, keypairString, prevOutSubScriptString, input, sign int input char * signTypeString +char * +sign_tx_multisig (txString, keypairString, prevOutSubScriptString, input, signTypeString) + char * txString + char * keypairString + char * prevOutSubScriptString + int input + char * signTypeString + diff --git a/scripts/Transaction/blib/arch/.exists b/scripts/Transaction/blib/arch/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so deleted file mode 100755 index 06f813cc18f73aab4b9f9cfd357f24183f3304ae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 85950 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

q3XI6WFZB3y5LJUsOv(#9v9wma$hl) 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 = []; - $this->{outputs} = []; - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - else{ - # we have the data, let's get the serialized data - $x->{'lockTime'} ||= 0; - $x->{'version'} ||= 1; - $this->lockTime($x->{'lockTime'}); - $this->version($x->{'version'}); - } - - - return $this; -} -=head2 ----++ variable accessors -=cut - -sub lockTime { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - # TODO: validation of some sort - $this->{lockTime} = $x; - return $x; - } - else{ - return $this->{lockTime}; - } -} - - -sub version { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - $this->{version} = $x; - return $x; - - - } - else{ - return $this->{version}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - unless($this->{serializeddata}){ - eval{ - - }; - if($@){ - warn "We cannot serialize the data yet.\n"; - } - } - return $this->{serializeddata}; - } -} -# this serializes the data we have -sub serializeData { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - # check to see that we have inputs and outputs - unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ - die "not enough inputs or outputs to serialize this transaction\n"; - } - my @inputs; - foreach my $inx (@{$this->{inputs}}){ - push(@inputs,$inx->serializeddata()); - } - my @outputs; - foreach my $outx (@{$this->{outputs}}){ - push(@outputs,$outx->serializeddata()); - } - # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) - my $data = CBitcoin::Transaction::create_tx_obj( - $this->lockTime() - ,$this->version() - ,\@inputs - ,\@outputs - ,$this->numOfInputs - ,$this->numOfOutputs - ); - return $this->serializeddata($data); - -} -# TODO: change the name of this function!!! it does the opposite of its name -sub deserializeData { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - $this->serializeddata( - CBitcoin::Transaction::create_tx_obj( - $this->lockTime(), - $this->version() - ) - ); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } -} - -# signatures.... -=head3 ----+++ sign($index,$cbhdkey) -Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! -=cut -sub sign_single_input{ - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my ($index,$keypair) = (shift,shift); - unless($index =~ m/\d+/){ - die "index is not a positive integer.\n"; - } - unless(ref($keypair) eq 'CBitcoin::CBHD'){ - die "keypair is not a CBitcoin::CBHD object.\n"; - } - - unless($this->serializeddata()){ - die "serialize the tx data first, before trying to sign prevOuts.\n"; - } - - require Data::Dumper; - my @alpha = ( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL'); - my $xo = Data::Dumper::Dumper(\@alpha); - print STDERR $xo; - # CB_SIGHASH_ALL means each signature signs all transaction outputs - - my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL' - ); - - return $this->serializeddata($data) if $data; - - return $this->serializeddata(); -} - - -=head2 ----++ methods -=cut -sub addInput { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - my $y; - if(ref($x) eq 'HASH'){ - # we need script, prevOutHash, prevOutIndex - if( - $x->{'prevOutHash'} - && $x->{'prevOutIndex'} - && $x->{'script'} - ){ - $y = new CBitcoin::TransactionInput($x); - } - else{ - die "hash has insufficient information for use in addTxInput\n"; - } - } - elsif(ref($x) eq 'CBitcoin::TransactionInput'){ - $y = $x; - } - else{ - die "insufficient variables to use addTxInput function\n"; - } - push(@{$this->{inputs}},$y); - return scalar(@{$this->{inputs}}); -} - -sub numOfInputs { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - return scalar(@{$this->{inputs}}); -} - - -sub addOutput { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - my $y; - if(ref($x) eq 'HASH'){ - # we need script, prevOutHash, prevOutIndex - if( - $x->{'value'} - && $x->{'script'} - ){ - $y = new CBitcoin::TransactionInput($x); - } - else{ - die "hash has insufficient information for use in addOutput\n"; - } - } - elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ - $y = $x; - } - else{ - die "insufficient variables to use addOutput function\n"; - } - push(@{$this->{outputs}},$y); - return scalar(@{$this->{outputs}}); -} - -sub numOfOutputs { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - return scalar(@{$this->{outputs}}); -} -=head3 ----+++ importSerializedData -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. -=cut -sub importSerializedData { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - my $x = shift; - - if( - $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) - && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } -} - -1; diff --git a/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl b/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl deleted file mode 100644 index a6e47d55..00000000 --- a/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl +++ /dev/null @@ -1,15 +0,0 @@ - use InlineX::C2XS qw(c2xs); - - -my $module_name = 'CBitcoin::Transaction'; -my $package_name = 'CBitcoin::Transaction'; - -my $config_opts = {'WRITE_PM' => 1, - 'WRITE_MAKEFILE_PL' => 1, - 'VERSION' => 0.01, - }; - - -c2xs($module_name, $package_name,'./',$config_opts); - - diff --git a/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists b/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/blib/man1/.exists b/scripts/Transaction/blib/man1/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/blib/man3/.exists b/scripts/Transaction/blib/man3/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm deleted file mode 100644 index 01952750..00000000 --- a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm +++ /dev/null @@ -1,141 +0,0 @@ -.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "Transaction 3" -.TH Transaction 3 "2014-06-30" "perl v5.14.2" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.SS " \-\-\-++ constructors" -.IX Subsection " ---++ constructors" -.SS " \-\-\-++ variable accessors" -.IX Subsection " ---++ variable accessors" -\fI \-\-\-+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!\fR -.IX Subsection " ---+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!" -.SS " \-\-\-++ methods" -.IX Subsection " ---++ methods" -\fI \-\-\-+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables.\fR -.IX Subsection " ---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." diff --git a/scripts/Transaction/blib/script/.exists b/scripts/Transaction/blib/script/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/old-config/MYMETA.json b/scripts/Transaction/old-config/MYMETA.json deleted file mode 100644 index 41366499..00000000 --- a/scripts/Transaction/old-config/MYMETA.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "abstract" : "unknown", - "author" : [ - "unknown" - ], - "dynamic_config" : 0, - "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", - "license" : [ - "unknown" - ], - "meta-spec" : { - "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" - }, - "name" : "CBitcoin-Transaction", - "no_index" : { - "directory" : [ - "t", - "inc" - ] - }, - "prereqs" : { - "build" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "configure" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "runtime" : { - "requires" : {} - } - }, - "release_status" : "stable", - "version" : "0.01" -} diff --git a/scripts/Transaction/old-config/MYMETA.yml b/scripts/Transaction/old-config/MYMETA.yml deleted file mode 100644 index 13c0faa3..00000000 --- a/scripts/Transaction/old-config/MYMETA.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -abstract: unknown -author: - - unknown -build_requires: - ExtUtils::MakeMaker: 0 -configure_requires: - ExtUtils::MakeMaker: 0 -dynamic_config: 0 -generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' -license: unknown -meta-spec: - url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 -name: CBitcoin-Transaction -no_index: - directory: - - t - - inc -requires: {} -version: 0.01 diff --git a/scripts/Transaction/old-config/Transaction.bs b/scripts/Transaction/old-config/Transaction.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index 64270aad..c0ac83cd 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -1,7 +1,9 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use CBitcoin::Script; use CBitcoin::TransactionInput; +use CBitcoin::TransactionOutput; require Exporter; *import = \&Exporter::import; @@ -152,12 +154,13 @@ sub deserializeData { ---+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! =cut -sub sign_single_input{ + +sub sign_single_input { my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; my ($index,$keypair) = (shift,shift); unless($index =~ m/\d+/){ - die "index is not a positive integer.\n"; + die "index is not a positive integer($index).\n"; } unless(ref($keypair) eq 'CBitcoin::CBHD'){ die "keypair is not a CBitcoin::CBHD object.\n"; @@ -166,32 +169,43 @@ sub sign_single_input{ unless($this->serializeddata()){ die "serialize the tx data first, before trying to sign prevOuts.\n"; } - - require Data::Dumper; - my @alpha = ( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL'); - my $xo = Data::Dumper::Dumper(\@alpha); - print STDERR $xo; - # CB_SIGHASH_ALL means each signature signs all transaction outputs - - my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( - $this->serializeddata() - ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' - ,$index - ,'CB_SIGHASH_ALL' - ); + # get the input + my $prevOutInput = $this->input($index); + unless(ref($prevOutInput) eq 'CBitcoin::TransactionInput'){ + return undef; + } + + + # find out what type of script we are dealing with + # p2sh, pubkey, keyhash, multisig + my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); + + my $data; + if($scripttype eq 'keyhash'){ + $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } + elsif($scripttype eq 'multisig'){ + # do multisig + $data = CBitcoin::Transaction::sign_tx_multisig( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } return $this->serializeddata($data) if $data; - return $this->serializeddata(); + return $this->serializeddata(); } - =head2 ---++ methods =cut @@ -229,6 +243,15 @@ sub numOfInputs { return scalar(@{$this->{inputs}}); } +sub input { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfInputs() ){ + die "index is not an integer\n"; + } + return $this->{inputs}->[$index]; +} sub addOutput { my $this = shift; @@ -262,6 +285,17 @@ sub numOfOutputs { die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; return scalar(@{$this->{outputs}}); } + +sub output { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfOutputs() ){ + die "index is not an integer\n"; + } + return $this->{outputs}->[$index]; +} + =head3 ---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables. diff --git a/scripts/Transaction/old-config/pm_to_blib b/scripts/Transaction/old-config/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/pm_to_blib b/scripts/Transaction/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c index 68ab6192..ba23fcc3 100644 --- a/scripts/Transaction/src/Transaction.c +++ b/scripts/Transaction/src/Transaction.c @@ -208,9 +208,6 @@ int get_version_from_obj(char* serializedDataString){ } // CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ - printf("%d:We are here.",1); - - CBTransaction * tx = serializeddata_to_obj(txString); CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); @@ -246,6 +243,13 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc , CB_SIGHASH_ALL );*/ CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + ; + if (!CBTransactionSignPubKeyHashInput(tx, keypair->keyPair, + oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } +/* tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, keypair->keyPair, oldprevOutSubScript, input, signtype); @@ -253,12 +257,55 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc CBLogError("Unable to add a signature to a pubkey hash transaction input."); return "NULL"; } + // add the public key CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); //return txString; - +*/ return obj_to_serializeddata(tx); } +char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } + + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + /* + * CBTransactionSignMultisigInput( + CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType + ) + */ + if (!CBTransactionSignMultisigInput(tx, keypair->keyPair, oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + + return obj_to_serializeddata(tx); +} + diff --git a/scripts/tx.pm b/scripts/tx.pm index b102f586..59b1a0ba 100644 --- a/scripts/tx.pm +++ b/scripts/tx.pm @@ -47,29 +47,47 @@ $data = $tx->serializeddata(); print "Unsigned Transaction Data:$data\n"; # sign an input -my $oppppp = $tx->sign_single_input(0,$parentkey); -print "Final:$oppppp\n"; +my $txdata = $tx->sign_single_input(0,$parentkey); +print "Final:$txdata\n"; #$data = $tx->serializeddata(); #print "Signed Transaction Data:$data\n"; -__END__ -$x->{'data'} = CBitcoin::TransactionOutput::create_txoutput_obj( - $x->{'script'} - ,$x->{'value'} -); -my $y = ''; -$y = CBitcoin::TransactionOutput::get_value_from_obj($x->{'data'}); -$y = $y/100000000; -print "Value:$y\n"; -#$y = CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x->{'data'}); -#print "prevOutIndex:$y\n"; -#$y = CBitcoin::TransactionInput::get_sequence_from_obj($x->{'data'}); -#print "sequence:$y\n"; -print "Data:".$x->{'data'}."\n"; -$y = CBitcoin::TransactionOutput::get_script_from_obj($x->{'data'}); -print "Script:$y\n"; +my ($m, $n) = (2,3); +print "Let's do a multisig transaction of ($m, $n)\n"; + +my @arraypubkeys; +foreach my $i (1..$n){ + my $childkey = $parentkey->deriveChild(1,$i); + print "Address $i:".$childkey->address()."\n"; + push(@arraypubkeys,$childkey->publickey()); +} +print "Starting multisig operation\n"; + +$tx = CBitcoin::Transaction::->new(); +$tx->addInput(CBitcoin::TransactionInput::->new( +{ + 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' + ,'prevOutIndex' => 1 + ,'script' => CBitcoin::Script::multisigToScript(\@arraypubkeys,$m,$n) +} +) ); +# use the same output as before +$tx->addOutput($output); +$data = $tx->serializeData(); +$data = $tx->serializeddata(); +print "Unsigned Transaction Data:$data\n"; +# sign with enough keys to validate the transaction +foreach my $i (0..($m-1)){ + my $childkey = $parentkey->deriveChild(1,$i+1); + print "Ref:".ref($childkey)."\n"; + print "Address $i:".$childkey->address()."\n"; + $txdata = $tx->sign_single_input(0,$childkey); + die "no tx data\n" unless $txdata; + print "Latest:$txdata\n"; +} +__END__ From 8a100d96df6578ea73c8d764aa4fe3295874db4d Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sat, 4 Oct 2014 08:20:13 +0900 Subject: [PATCH 033/127] latest changes --- scripts/CBHD/CBHD.pm | 17 + scripts/CBHD/old-config/Makefile.PL | 2 +- scripts/CBHD/src/CBHD.c | 16 +- scripts/Script/old-config/Makefile.PL | 2 +- scripts/Script/src/Script.c | 27 + scripts/Transaction/MYMETA.json | 39 ++ scripts/Transaction/MYMETA.yml | 21 + scripts/Transaction/Makefile.old | 367 ++---------- scripts/Transaction/Transaction.bs | 0 scripts/Transaction/Transaction.c | 537 ++++++++++++++++++ scripts/Transaction/Transaction.o | Bin 0 -> 138088 bytes scripts/Transaction/blib/arch/.exists | 0 .../arch/auto/CBitcoin/Transaction/.exists | 0 .../auto/CBitcoin/Transaction/Transaction.so | Bin 0 -> 90434 bytes scripts/Transaction/blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/Transaction.pm | 321 +++++++++++ .../Transaction/blib/lib/CBitcoin/coinx2.pl | 15 + .../lib/auto/CBitcoin/Transaction/.exists | 0 scripts/Transaction/blib/man1/.exists | 0 scripts/Transaction/blib/man3/.exists | 0 .../blib/man3/CBitcoin::Transaction.3pm | 141 +++++ scripts/Transaction/blib/script/.exists | 0 scripts/Transaction/old-config/MYMETA.json | 39 ++ scripts/Transaction/old-config/MYMETA.yml | 21 + scripts/Transaction/old-config/Makefile.PL | 2 +- scripts/Transaction/old-config/Transaction.bs | 0 scripts/Transaction/old-config/pm_to_blib | 0 scripts/Transaction/pm_to_blib | 0 scripts/Transaction/src/Transaction.c | 5 - .../TransactionInput/old-config/Makefile.PL | 2 +- .../TransactionOutput/old-config/Makefile.PL | 2 +- scripts/checker.pm | 99 ++++ scripts/tx.pm | 6 +- 33 files changed, 1335 insertions(+), 346 deletions(-) create mode 100644 scripts/Transaction/MYMETA.json create mode 100644 scripts/Transaction/MYMETA.yml create mode 100644 scripts/Transaction/Transaction.bs create mode 100644 scripts/Transaction/Transaction.c create mode 100644 scripts/Transaction/Transaction.o create mode 100644 scripts/Transaction/blib/arch/.exists create mode 100644 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists create mode 100755 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so create mode 100644 scripts/Transaction/blib/lib/CBitcoin/.exists create mode 100644 scripts/Transaction/blib/lib/CBitcoin/Transaction.pm create mode 100644 scripts/Transaction/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists create mode 100644 scripts/Transaction/blib/man1/.exists create mode 100644 scripts/Transaction/blib/man3/.exists create mode 100644 scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm create mode 100644 scripts/Transaction/blib/script/.exists create mode 100644 scripts/Transaction/old-config/MYMETA.json create mode 100644 scripts/Transaction/old-config/MYMETA.yml create mode 100644 scripts/Transaction/old-config/Transaction.bs create mode 100644 scripts/Transaction/old-config/pm_to_blib create mode 100644 scripts/Transaction/pm_to_blib create mode 100644 scripts/checker.pm diff --git a/scripts/CBHD/CBHD.pm b/scripts/CBHD/CBHD.pm index 48036944..60203a41 100644 --- a/scripts/CBHD/CBHD.pm +++ b/scripts/CBHD/CBHD.pm @@ -118,4 +118,21 @@ sub publickey { return $x; } +# this function returns an array +sub childid { + my $this = shift; + my $childid = ''; #only ranges 31 bits, not 32 bits + my $priv = ''; #determines whether key is less than 2^31 (soft) or greater than 2^31 (hard) + eval{ + die "no private key" unless $this->serializedkeypair(); + $childid = CBitcoin::CBHD::exportChildIDFromCBHDKey($this->serializedkeypair()); + $priv = CBitcoin::CBHD::exportPrivChildIDFromCBHDKey($this->serializedkeypair()); + }; + if($@){ + return undef; + } + return ($priv,$childid); +} + + 1; diff --git a/scripts/CBHD/old-config/Makefile.PL b/scripts/CBHD/old-config/Makefile.PL index 25a08887..ac50a725 100644 --- a/scripts/CBHD/old-config/Makefile.PL +++ b/scripts/CBHD/old-config/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.02' } }; diff --git a/scripts/CBHD/src/CBHD.c b/scripts/CBHD/src/CBHD.c index 2d483df4..ae24f294 100644 --- a/scripts/CBHD/src/CBHD.c +++ b/scripts/CBHD/src/CBHD.c @@ -21,14 +21,14 @@ CBByteArray* hexstring_to_bytearray(char* hexstring){ CBByteArray* answer = CBNewByteArrayFromHex(hexstring); return answer; } - +/* //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); CBScriptToString(script, answer); return answer; -} +}*/ CBHDKey* importDataToCBHDKey(char* privstring) { CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); @@ -83,6 +83,18 @@ char* exportWIFFromCBHDKey(char* privstring){ return (char *)CBByteArrayGetData(str); } +int exportChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int childnumber = (int)cbkey->childID.childNumber; + free(cbkey); + return childnumber; +} +int exportPrivChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int priv = (int)cbkey->childID.priv; + free(cbkey); + return priv; +} char* exportAddressFromCBHDKey(char* privstring){ CBHDKey* cbkey = importDataToCBHDKey(privstring); diff --git a/scripts/Script/old-config/Makefile.PL b/scripts/Script/old-config/Makefile.PL index fb686c18..6b049e62 100644 --- a/scripts/Script/old-config/Makefile.PL +++ b/scripts/Script/old-config/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' } }; diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 891afffc..0c28dded 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -11,6 +11,18 @@ #include #include +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + + //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); @@ -31,6 +43,18 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// +// 20 byte hex string (Hash160) to address +char* newAddressFromRIPEMD160Hash(char* hexstring){ + CBByteArray* array = hexstring_to_bytearray(hexstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBByteArrayGetData(array),CB_PREFIX_PRODUCTION_ADDRESS, true); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + + + + /* Return 1 if this script is multisig, 0 for else*/ // this function does not work char* whatTypeOfScript(char* scriptstring){ @@ -118,3 +142,6 @@ char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { return scriptToString(finalscript); } + + + diff --git a/scripts/Transaction/MYMETA.json b/scripts/Transaction/MYMETA.json new file mode 100644 index 00000000..41366499 --- /dev/null +++ b/scripts/Transaction/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Transaction", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Transaction/MYMETA.yml b/scripts/Transaction/MYMETA.yml new file mode 100644 index 00000000..13c0faa3 --- /dev/null +++ b/scripts/Transaction/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Transaction +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old index bc066153..347ffbd8 100644 --- a/scripts/Transaction/Makefile.old +++ b/scripts/Transaction/Makefile.old @@ -67,12 +67,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = blib/arch -INST_SCRIPT = blib/script -INST_BIN = blib/bin -INST_LIB = blib/lib -INST_MAN1DIR = blib/man1 -INST_MAN3DIR = blib/man3 +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -155,15 +155,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = $(BASEEXT)$(OBJ_EXT) +OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = Transaction.xs -C_FILES = Transaction.c -O_FILES = Transaction.o +XS_FILES = +C_FILES = +O_FILES = H_FILES = MAN1PODS = MAN3PODS = Transaction.pm @@ -188,13 +188,10 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = Transaction.pm \ - coinx2.pl +TO_INST_PM = Transaction.pm PM_TO_BLIB = Transaction.pm \ - $(INST_LIB)/CBitcoin/Transaction.pm \ - coinx2.pl \ - $(INST_LIB)/CBitcoin/coinx2.pl + $(INST_LIB)/CBitcoin/Transaction.pm # --- MakeMaker platform_constants section: @@ -210,7 +207,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -256,24 +253,7 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section: -TAR = tar -TARFLAGS = cvf -ZIP = zip -ZIPFLAGS = -r -COMPRESS = gzip --best -SUFFIX = .gz -SHAR = shar -PREOP = $(NOECHO) $(NOOP) -POSTOP = $(NOECHO) $(NOOP) -TO_UNIX = $(NOECHO) $(NOOP) -CI = ci -u -RCS_LABEL = rcs -Nv$(VERSION_SYM): -q -DIST_CP = best -DIST_DEFAULT = tardist -DISTNAME = CBitcoin-Transaction -DISTVNAME = CBitcoin-Transaction-0.01 - +# --- MakeMaker dist section skipped. # --- MakeMaker macro section: @@ -522,17 +502,11 @@ manifypods : pure_all \ # --- MakeMaker subdirs section: -# The default clean, realclean and test targets in this Makefile -# have automatically been given entries for each subdir. - - -subdirs :: - $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) - +# none # --- MakeMaker clean_subdirs section: clean_subdirs : - $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker clean section: @@ -548,16 +522,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml Transaction.c \ - blibdirs.ts core \ - core.*perl.*.? core.[0-9] \ - core.[0-9][0-9] core.[0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ - lib$(BASEEXT).def mon.out \ - perl perl$(EXE_EXT) \ - perl.exe perlmain.c \ - pm_to_blib pm_to_blib.ts \ - so_locations tmon.out + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -566,8 +540,7 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker realclean section: @@ -653,91 +626,15 @@ signature : cpansign -s -# --- MakeMaker dist_basics section: -distclean :: realclean distcheck - $(NOECHO) $(NOOP) - -distcheck : - $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck - -skipcheck : - $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck - -manifest : - $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest - -veryclean : realclean - $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old - - - -# --- MakeMaker dist_core section: - -dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) - $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ - -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- - -tardist : $(DISTVNAME).tar$(SUFFIX) - $(NOECHO) $(NOOP) - -uutardist : $(DISTVNAME).tar$(SUFFIX) - uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' - -$(DISTVNAME).tar$(SUFFIX) : distdir - $(PREOP) - $(TO_UNIX) - $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(COMPRESS) $(DISTVNAME).tar - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' - $(POSTOP) - -zipdist : $(DISTVNAME).zip - $(NOECHO) $(NOOP) - -$(DISTVNAME).zip : distdir - $(PREOP) - $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' - $(POSTOP) - -shdist : distdir - $(PREOP) - $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' - $(POSTOP) - - -# --- MakeMaker distdir section: -create_distdir : - $(RM_RF) $(DISTVNAME) - $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ - -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" - -distdir : create_distdir distmeta - $(NOECHO) $(NOOP) +# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_core section skipped. +# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section: -disttest : distdir - cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL - cd $(DISTVNAME) && $(MAKE) $(PASTHRU) - cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) - - - -# --- MakeMaker dist_ci section: - -ci : - $(PERLRUN) "-MExtUtils::Manifest=maniread" \ - -e "@all = keys %{ maniread() };" \ - -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ - -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" +# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -759,117 +656,7 @@ distsignature : create_distdir -# --- MakeMaker install section: - -install :: pure_install doc_install - $(NOECHO) $(NOOP) - -install_perl :: pure_perl_install doc_perl_install - $(NOECHO) $(NOOP) - -install_site :: pure_site_install doc_site_install - $(NOECHO) $(NOOP) - -install_vendor :: pure_vendor_install doc_vendor_install - $(NOECHO) $(NOOP) - -pure_install :: pure_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -doc_install :: doc_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -pure__install : pure_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -doc__install : doc_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -pure_perl_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLPRIVLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ - $(INST_BIN) $(DESTINSTALLBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(SITEARCHEXP)/auto/$(FULLEXT) - - -pure_site_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLSITELIB) \ - $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ - $(INST_BIN) $(DESTINSTALLSITEBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(PERL_ARCHLIB)/auto/$(FULLEXT) - -pure_vendor_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLVENDORLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ - $(INST_BIN) $(DESTINSTALLVENDORBIN) \ - $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) - - -doc_perl_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLPRIVLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_site_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLSITELIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_vendor_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLVENDORLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - - -uninstall :: uninstall_from_$(INSTALLDIRS)dirs - $(NOECHO) $(NOOP) - -uninstall_from_perldirs :: - $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist - -uninstall_from_sitedirs :: - $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist - -uninstall_from_vendordirs :: - $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist - +# --- MakeMaker install section skipped. # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -878,75 +665,6 @@ FORCE : # --- MakeMaker perldepend section: -PERL_HDRS = \ - $(PERL_INC)/EXTERN.h \ - $(PERL_INC)/INTERN.h \ - $(PERL_INC)/XSUB.h \ - $(PERL_INC)/av.h \ - $(PERL_INC)/bitcount.h \ - $(PERL_INC)/config.h \ - $(PERL_INC)/cop.h \ - $(PERL_INC)/cv.h \ - $(PERL_INC)/dosish.h \ - $(PERL_INC)/embed.h \ - $(PERL_INC)/embedvar.h \ - $(PERL_INC)/fakesdio.h \ - $(PERL_INC)/fakethr.h \ - $(PERL_INC)/form.h \ - $(PERL_INC)/git_version.h \ - $(PERL_INC)/gv.h \ - $(PERL_INC)/handy.h \ - $(PERL_INC)/hv.h \ - $(PERL_INC)/intrpvar.h \ - $(PERL_INC)/iperlsys.h \ - $(PERL_INC)/keywords.h \ - $(PERL_INC)/l1_char_class_tab.h \ - $(PERL_INC)/malloc_ctl.h \ - $(PERL_INC)/metaconfig.h \ - $(PERL_INC)/mg.h \ - $(PERL_INC)/mydtrace.h \ - $(PERL_INC)/nostdio.h \ - $(PERL_INC)/op.h \ - $(PERL_INC)/op_reg_common.h \ - $(PERL_INC)/opcode.h \ - $(PERL_INC)/opnames.h \ - $(PERL_INC)/overload.h \ - $(PERL_INC)/pad.h \ - $(PERL_INC)/parser.h \ - $(PERL_INC)/patchlevel-debian.h \ - $(PERL_INC)/patchlevel.h \ - $(PERL_INC)/perl.h \ - $(PERL_INC)/perlapi.h \ - $(PERL_INC)/perlio.h \ - $(PERL_INC)/perliol.h \ - $(PERL_INC)/perlsdio.h \ - $(PERL_INC)/perlsfio.h \ - $(PERL_INC)/perlvars.h \ - $(PERL_INC)/perly.h \ - $(PERL_INC)/pp.h \ - $(PERL_INC)/pp_proto.h \ - $(PERL_INC)/proto.h \ - $(PERL_INC)/reentr.h \ - $(PERL_INC)/regcharclass.h \ - $(PERL_INC)/regcomp.h \ - $(PERL_INC)/regexp.h \ - $(PERL_INC)/regnodes.h \ - $(PERL_INC)/scope.h \ - $(PERL_INC)/sv.h \ - $(PERL_INC)/thread.h \ - $(PERL_INC)/time64.h \ - $(PERL_INC)/time64_config.h \ - $(PERL_INC)/uconfig.h \ - $(PERL_INC)/unixish.h \ - $(PERL_INC)/utf8.h \ - $(PERL_INC)/utfebcdic.h \ - $(PERL_INC)/util.h \ - $(PERL_INC)/uudmap.h \ - $(PERL_INC)/warnings.h - -$(OBJECT) : $(PERL_HDRS) - -Transaction.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -955,19 +673,9 @@ Transaction.c : $(XSUBPPDEPS) # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = perl +MAP_TARGET = ../perl FULLPERL = /usr/bin/perl -$(MAP_TARGET) :: static $(MAKE_APERL_FILE) - $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ - -$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib - $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) - $(NOECHO) $(PERLRUNINST) \ - Makefile.PL DIR=old-config \ - MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ - MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= - # --- MakeMaker test section: @@ -984,9 +692,7 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) -subdirs-test :: - $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) - + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' test_dynamic :: pure_all @@ -1019,8 +725,7 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm \ - coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/Transaction/Transaction.bs b/scripts/Transaction/Transaction.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/Transaction.c b/scripts/Transaction/Transaction.c new file mode 100644 index 00000000..77d46f4a --- /dev/null +++ b/scripts/Transaction/Transaction.c @@ -0,0 +1,537 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of Transaction.xs. Do not edit this file, edit Transaction.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "Transaction.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + + +CBTransaction* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransaction* tx = CBNewTransactionFromData(data); + uint32_t dlen = CBTransactionDeserialise(tx); + + //CBDestroyByteArray(data); + return tx; +} + +char* obj_to_serializeddata(CBTransaction * tx){ + CBTransactionPrepareBytes(tx); + int dlen = CBTransactionSerialise(tx,1); + CBByteArray* serializeddata = CBGetMessage(tx)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + +/* + * TransactionOutput related functions + */ +char* txoutput_obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} +CBTransactionOutput* txoutput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} +/* + * TransactionInput related functions + */ + +CBTransactionInput* txinput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + +// CBHDKeys + +CBHDKey* cbhdkey_serializeddata_to_obj(char* privstring){ + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} + +char* cbhdkey_obj_to_serializeddata(CBHDKey * keypair){ + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(keypair, keyData); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} +/* + * CBScript + */ +char* script_obj_to_serializeddata(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +CBScript* script_serializeddata_to_obj(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return NULL; + } +} + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + +char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ + CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + + int n; + int in_length, out_length; + if ((! SvROK(inputs)) + || (SvTYPE(SvRV(inputs)) != SVt_PVAV) + || ((in_length = av_len((AV *)SvRV(inputs))) < 0)) + { + return 0; + } + if ((! SvROK(outputs)) + || (SvTYPE(SvRV(outputs)) != SVt_PVAV) + || ((out_length = av_len((AV *)SvRV(outputs))) < 0)) + { + return 0; + } + + // load TransactionInput + for (n=0; n<=in_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (inputs), n, 0), l); + CBTransactionInput * inx = txinput_serializeddata_to_obj(fn); + CBTransactionAddInput(tx,inx); + } + for (n=0; n<=out_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (outputs), n, 0), l); + CBTransactionOutput * outx = txoutput_serializeddata_to_obj(fn); + CBTransactionAddOutput(tx,outx); + } + char* answer = obj_to_serializeddata(tx); + //CBFreeTransaction(tx); + return answer; +} +/* +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} +*/ +int get_lockTime_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t lockTime = tx->lockTime; + CBFreeTransaction(tx); + return (int)lockTime; +} + +int get_version_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t version = tx->version; + CBFreeTransaction(tx); + return (int)version; +} +// CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType +char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } +/* + CBTransactionSignPubKeyHashInput( + tx + ,keypair->keyPair + , prevOutSubScript + , (uint32_t)input + , CB_SIGHASH_ALL + );*/ + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + ; + if (!CBTransactionSignPubKeyHashInput(tx, keypair->keyPair, + oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } +/* + tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); + uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, + keypair->keyPair, oldprevOutSubScript, input, signtype); + if (!sigLen){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + + // add the public key + CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); + memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); + //return txString; +*/ + return obj_to_serializeddata(tx); + +} + +char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } + + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + /* + * CBTransactionSignMultisigInput( + CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType + ) + */ + if (!CBTransactionSignMultisigInput(tx, keypair->keyPair, oldprevOutSubScript, input, signtype)){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + + return obj_to_serializeddata(tx); +} + + +#line 327 "Transaction.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 379 "Transaction.c" + +XS(XS_CBitcoin__Transaction_create_tx_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_create_tx_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 6) + croak_xs_usage(cv, "lockTime, version, inputs, outputs, numOfInputs, numOfOutputs"); + { + int lockTime = (int)SvIV(ST(0)); + int version = (int)SvIV(ST(1)); + SV * inputs = ST(2); + SV * outputs = ST(3); + int numOfInputs = (int)SvIV(ST(4)); + int numOfOutputs = (int)SvIV(ST(5)); + char * RETVAL; + dXSTARG; + + RETVAL = create_tx_obj(lockTime, version, inputs, outputs, numOfInputs, numOfOutputs); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_lockTime_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_lockTime_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_lockTime_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_version_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_version_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_version_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 5) + croak_xs_usage(cv, "txString, keypairString, prevOutSubScriptString, input, signTypeString"); + { + char * txString = (char *)SvPV_nolen(ST(0)); + char * keypairString = (char *)SvPV_nolen(ST(1)); + char * prevOutSubScriptString = (char *)SvPV_nolen(ST(2)); + int input = (int)SvIV(ST(3)); + char * signTypeString = (char *)SvPV_nolen(ST(4)); + char * RETVAL; + dXSTARG; + + RETVAL = sign_tx_pubkeyhash(txString, keypairString, prevOutSubScriptString, input, signTypeString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_sign_tx_multisig); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_sign_tx_multisig) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 5) + croak_xs_usage(cv, "txString, keypairString, prevOutSubScriptString, input, signTypeString"); + { + char * txString = (char *)SvPV_nolen(ST(0)); + char * keypairString = (char *)SvPV_nolen(ST(1)); + char * prevOutSubScriptString = (char *)SvPV_nolen(ST(2)); + int input = (int)SvIV(ST(3)); + char * signTypeString = (char *)SvPV_nolen(ST(4)); + char * RETVAL; + dXSTARG; + + RETVAL = sign_tx_multisig(txString, keypairString, prevOutSubScriptString, input, signTypeString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__Transaction); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__Transaction) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::Transaction::create_tx_obj", XS_CBitcoin__Transaction_create_tx_obj, file); + newXS("CBitcoin::Transaction::get_lockTime_from_obj", XS_CBitcoin__Transaction_get_lockTime_from_obj, file); + newXS("CBitcoin::Transaction::get_version_from_obj", XS_CBitcoin__Transaction_get_version_from_obj, file); + newXS("CBitcoin::Transaction::sign_tx_pubkeyhash", XS_CBitcoin__Transaction_sign_tx_pubkeyhash, file); + newXS("CBitcoin::Transaction::sign_tx_multisig", XS_CBitcoin__Transaction_sign_tx_multisig, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/Transaction/Transaction.o b/scripts/Transaction/Transaction.o new file mode 100644 index 0000000000000000000000000000000000000000..48184fb5c66d9f815b703ae2c680fa8a6209e218 GIT binary patch literal 138088 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 TU)X(+#%-O@##Q49#9jXfKa}JK literal 0 HcmV?d00001 diff --git a/scripts/Transaction/blib/arch/.exists b/scripts/Transaction/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so new file mode 100755 index 0000000000000000000000000000000000000000..ba8fccafdfc5f85ad7acdfa0d9aa25b7bf610c34 GIT binary patch literal 90434 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 Jcj(7B|2JrDe#ig- literal 0 HcmV?d00001 diff --git a/scripts/Transaction/blib/lib/CBitcoin/.exists b/scripts/Transaction/blib/lib/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm b/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm new file mode 100644 index 00000000..c0ac83cd --- /dev/null +++ b/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm @@ -0,0 +1,321 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Transaction; + +use CBitcoin::Script; +use CBitcoin::TransactionInput; +use CBitcoin::TransactionOutput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Transaction::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; + +@CBitcoin::Transaction::EXPORT = (); +@CBitcoin::Transaction::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +=head2 +---++ constructors +=cut +sub new { + my $package = shift; + my $this = bless({}, $package); + $this->{inputs} = []; + $this->{outputs} = []; + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + else{ + # we have the data, let's get the serialized data + $x->{'lockTime'} ||= 0; + $x->{'version'} ||= 1; + $this->lockTime($x->{'lockTime'}); + $this->version($x->{'version'}); + } + + + return $this; +} +=head2 +---++ variable accessors +=cut + +sub lockTime { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{lockTime} = $x; + return $x; + } + else{ + return $this->{lockTime}; + } +} + + +sub version { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + $this->{version} = $x; + return $x; + + + } + else{ + return $this->{version}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + unless($this->{serializeddata}){ + eval{ + + }; + if($@){ + warn "We cannot serialize the data yet.\n"; + } + } + return $this->{serializeddata}; + } +} +# this serializes the data we have +sub serializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + # check to see that we have inputs and outputs + unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ + die "not enough inputs or outputs to serialize this transaction\n"; + } + my @inputs; + foreach my $inx (@{$this->{inputs}}){ + push(@inputs,$inx->serializeddata()); + } + my @outputs; + foreach my $outx (@{$this->{outputs}}){ + push(@outputs,$outx->serializeddata()); + } + # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) + my $data = CBitcoin::Transaction::create_tx_obj( + $this->lockTime() + ,$this->version() + ,\@inputs + ,\@outputs + ,$this->numOfInputs + ,$this->numOfOutputs + ); + return $this->serializeddata($data); + +} +# TODO: change the name of this function!!! it does the opposite of its name +sub deserializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + $this->serializeddata( + CBitcoin::Transaction::create_tx_obj( + $this->lockTime(), + $this->version() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} + +# signatures.... +=head3 +---+++ sign($index,$cbhdkey) +Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! +=cut + +sub sign_single_input { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my ($index,$keypair) = (shift,shift); + unless($index =~ m/\d+/){ + die "index is not a positive integer($index).\n"; + } + unless(ref($keypair) eq 'CBitcoin::CBHD'){ + die "keypair is not a CBitcoin::CBHD object.\n"; + } + + unless($this->serializeddata()){ + die "serialize the tx data first, before trying to sign prevOuts.\n"; + } + + # get the input + my $prevOutInput = $this->input($index); + unless(ref($prevOutInput) eq 'CBitcoin::TransactionInput'){ + return undef; + } + + + # find out what type of script we are dealing with + # p2sh, pubkey, keyhash, multisig + my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); + + my $data; + if($scripttype eq 'keyhash'){ + $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } + elsif($scripttype eq 'multisig'){ + # do multisig + $data = CBitcoin::Transaction::sign_tx_multisig( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + } + return $this->serializeddata($data) if $data; + + return $this->serializeddata(); +} + +=head2 +---++ methods +=cut +sub addInput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'prevOutHash'} + && $x->{'prevOutIndex'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addTxInput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionInput'){ + $y = $x; + } + else{ + die "insufficient variables to use addTxInput function\n"; + } + push(@{$this->{inputs}},$y); + return scalar(@{$this->{inputs}}); +} + +sub numOfInputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{inputs}}); +} + +sub input { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfInputs() ){ + die "index is not an integer\n"; + } + return $this->{inputs}->[$index]; +} + +sub addOutput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'value'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addOutput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ + $y = $x; + } + else{ + die "insufficient variables to use addOutput function\n"; + } + push(@{$this->{outputs}},$y); + return scalar(@{$this->{outputs}}); +} + +sub numOfOutputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{outputs}}); +} + +sub output { + my $this = shift; + my $index = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfOutputs() ){ + die "index is not an integer\n"; + } + return $this->{outputs}->[$index]; +} + +=head3 +---+++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + my $x = shift; + + if( + $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) + && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl b/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..a6e47d55 --- /dev/null +++ b/scripts/Transaction/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::Transaction'; +my $package_name = 'CBitcoin::Transaction'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists b/scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man1/.exists b/scripts/Transaction/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man3/.exists b/scripts/Transaction/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm new file mode 100644 index 00000000..5dfedf3e --- /dev/null +++ b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm @@ -0,0 +1,141 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "Transaction 3" +.TH Transaction 3 "2014-07-01" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SS " \-\-\-++ constructors" +.IX Subsection " ---++ constructors" +.SS " \-\-\-++ variable accessors" +.IX Subsection " ---++ variable accessors" +\fI \-\-\-+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!\fR +.IX Subsection " ---+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!" +.SS " \-\-\-++ methods" +.IX Subsection " ---++ methods" +\fI \-\-\-+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables.\fR +.IX Subsection " ---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." diff --git a/scripts/Transaction/blib/script/.exists b/scripts/Transaction/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/old-config/MYMETA.json b/scripts/Transaction/old-config/MYMETA.json new file mode 100644 index 00000000..41366499 --- /dev/null +++ b/scripts/Transaction/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Transaction", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Transaction/old-config/MYMETA.yml b/scripts/Transaction/old-config/MYMETA.yml new file mode 100644 index 00000000..13c0faa3 --- /dev/null +++ b/scripts/Transaction/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Transaction +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Transaction/old-config/Makefile.PL b/scripts/Transaction/old-config/Makefile.PL index f86998e9..0b54fdf4 100644 --- a/scripts/Transaction/old-config/Makefile.PL +++ b/scripts/Transaction/old-config/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' ,'CC' => 'c99' } diff --git a/scripts/Transaction/old-config/Transaction.bs b/scripts/Transaction/old-config/Transaction.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/old-config/pm_to_blib b/scripts/Transaction/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/pm_to_blib b/scripts/Transaction/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c index ba23fcc3..93ef6a4a 100644 --- a/scripts/Transaction/src/Transaction.c +++ b/scripts/Transaction/src/Transaction.c @@ -213,9 +213,6 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); - - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { @@ -274,8 +271,6 @@ char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScri - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { diff --git a/scripts/TransactionInput/old-config/Makefile.PL b/scripts/TransactionInput/old-config/Makefile.PL index 2a1aeb72..8311d174 100644 --- a/scripts/TransactionInput/old-config/Makefile.PL +++ b/scripts/TransactionInput/old-config/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' ,'CC' => 'c99' } diff --git a/scripts/TransactionOutput/old-config/Makefile.PL b/scripts/TransactionOutput/old-config/Makefile.PL index 16a984df..c49b58e7 100644 --- a/scripts/TransactionOutput/old-config/Makefile.PL +++ b/scripts/TransactionOutput/old-config/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' ,'CC' => 'c99' } diff --git a/scripts/checker.pm b/scripts/checker.pm new file mode 100644 index 00000000..96d8397d --- /dev/null +++ b/scripts/checker.pm @@ -0,0 +1,99 @@ + use strict; + use warnings; + use DBI; + use Digest::SHA qw(sha256); + use CBitcoin::CBHD; + use CBitcoin::Script; + use CBitcoin::Transaction; + use CBitcoin::TransactionInput; + use CBitcoin::TransactionOutput; +print "hello\n"; + +my $parentkey = new CBitcoin::CBHD; +$parentkey->serializedkeypair('xprv9s21ZrQH143K4Rz5APz2LhW4ms2mVTVa5YVMZzGAYgNRoXkxri6ELZVbzqc8VFtHseksaBnahJbbgkxue3nXsMjuF5pg1cknX4ueyQwUATY'); +print "WIF:".$parentkey->WIF()."\n"; +print "Address:".$parentkey->address()."\n"; + +my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +print "Script:$script\n"; + +my @in = ('KKWG2APFnnKg7S6uQdjtYUJ8eGMSHx6LA','PiMJNPBMzwQLucHp91aMVxpM8NA2o4Qm3'); +foreach my $i1 (@in){ + print "Script:".CBitcoin::Script::address_to_script('1'.$i1)."\n"; +} + +__END__ +#my $txinput = new CBitcoin::TransactionInput; +my $input = CBitcoin::TransactionInput::->new( +{ + 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' + ,'prevOutIndex' => 1 + ,'script' => CBitcoin::Script::address_to_script($parentkey->address()) +} +); + + +my $btcamt = 3.4049993; +my $x1 = { + 'value' => $btcamt*100000000 + ,'script' => $script +}; +my $output = CBitcoin::TransactionOutput::->new($x1); + + + + +my $tx = CBitcoin::Transaction::->new({}); + +$tx->addInput($input); +$tx->addOutput($output); + +my $data = $tx->serializeData(); +$data = $tx->serializeddata(); +print "Unsigned Transaction Data:$data\n"; + +# sign an input +my $txdata = $tx->sign_single_input(0,$parentkey); +print "Final:$txdata\n"; +#$data = $tx->serializeddata(); +#print "Signed Transaction Data:$data\n"; + +my ($m, $n) = (2,3); +print "Let's do a multisig transaction of ($m, $n)\n"; + +my @arraypubkeys; +foreach my $i (1..$n){ + my $childkey = $parentkey->deriveChild(1,$i); + print "Address $i:".$childkey->address()."\n"; + push(@arraypubkeys,$childkey->publickey()); +} +print "Starting multisig operation\n"; + +$tx = CBitcoin::Transaction::->new(); +$tx->addInput(CBitcoin::TransactionInput::->new( +{ + 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' + ,'prevOutIndex' => 1 + ,'script' => CBitcoin::Script::multisigToScript(\@arraypubkeys,$m,$n) +} +) ); + +# use the same output as before +$tx->addOutput($output); + +$data = $tx->serializeData(); +$data = $tx->serializeddata(); +print "Unsigned Transaction Data:$data\n"; +__END__ +# sign with enough keys to validate the transaction +foreach my $i (0..($m-1)){ + my $childkey = $parentkey->deriveChild(1,$i+1); + print "Ref:".ref($childkey)."\n"; + print "Address $i:".$childkey->address()."\n"; + $txdata = $tx->sign_single_input(0,$childkey); + die "no tx data\n" unless $txdata; + print "Latest:$txdata\n"; +} + +__END__ + diff --git a/scripts/tx.pm b/scripts/tx.pm index 59b1a0ba..804f5a58 100644 --- a/scripts/tx.pm +++ b/scripts/tx.pm @@ -15,13 +15,13 @@ print "WIF:".$parentkey->WIF()."\n"; print "Address:".$parentkey->address()."\n"; my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); -#print "Script:$script\n"; +print "Script:$script\n"; #my $txinput = new CBitcoin::TransactionInput; my $input = CBitcoin::TransactionInput::->new( { 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' - ,'prevOutIndex' => 1 + ,'prevOutIndex' => '1' ,'script' => CBitcoin::Script::address_to_script($parentkey->address()) } ); @@ -78,7 +78,7 @@ $tx->addOutput($output); $data = $tx->serializeData(); $data = $tx->serializeddata(); print "Unsigned Transaction Data:$data\n"; - +__END__ # sign with enough keys to validate the transaction foreach my $i (0..($m-1)){ my $childkey = $parentkey->deriveChild(1,$i+1); From a62a3a25b1715422dc37ac54ddb36f3b21401880 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sat, 4 Oct 2014 19:21:15 +0900 Subject: [PATCH 034/127] getting Script done --- scripts/Script/Makefile.PL | 2 +- scripts/Script/Makefile.old | 12 +- scripts/Script/Script.c | 56 +++- scripts/Script/Script.o | Bin 102824 -> 111088 bytes scripts/Script/Script.pm | 80 +++++- scripts/Script/Script.xs | 33 +++ .../blib/arch/auto/CBitcoin/Script/Script.so | Bin 66139 -> 72462 bytes scripts/Script/blib/lib/CBitcoin/Script.pm | 80 +++++- scripts/Script/blib/man3/CBitcoin::Script.3pm | 136 ++++++++++ scripts/Script/old-config/Makefile.old | 12 +- scripts/Script/old-config/Script.pm | 80 +++++- scripts/Script/src/Script.c | 2 + scripts/Transaction/Makefile.PL | 2 +- scripts/Transaction/Makefile.old | 4 +- scripts/Transaction/Transaction.c | 9 +- scripts/Transaction/Transaction.o | Bin 138088 -> 137656 bytes scripts/Transaction/Transaction.pm | 31 ++- scripts/Transaction/Transaction.xs | 5 - .../auto/CBitcoin/Transaction/Transaction.so | Bin 90434 -> 89806 bytes .../blib/lib/CBitcoin/Transaction.pm | 31 ++- .../blib/man3/CBitcoin::Transaction.3pm | 15 +- scripts/Transaction/old-config/Makefile.old | 4 +- scripts/Transaction/old-config/Transaction.pm | 31 ++- scripts/TransactionInput/Makefile.PL | 2 +- scripts/TransactionInput/Makefile.old | 12 +- scripts/TransactionInput/TransactionInput.pm | 254 +++++++++--------- .../TransactionInput/TransactionInput.so | Bin 70471 -> 70119 bytes .../blib/lib/CBitcoin/TransactionInput.pm | 254 +++++++++--------- .../blib/man3/CBitcoin::TransactionInput.3pm | 7 +- .../TransactionInput/old-config/Makefile.old | 12 +- .../old-config/TransactionInput.pm | 254 +++++++++--------- scripts/tx.pm | 4 +- scripts/txinput.pm | 64 +++-- 33 files changed, 1005 insertions(+), 483 deletions(-) create mode 100644 scripts/Script/blib/man3/CBitcoin::Script.3pm diff --git a/scripts/Script/Makefile.PL b/scripts/Script/Makefile.PL index fb686c18..6b049e62 100644 --- a/scripts/Script/Makefile.PL +++ b/scripts/Script/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' } }; diff --git a/scripts/Script/Makefile.old b/scripts/Script/Makefile.old index 17f232b8..6b6d0e01 100644 --- a/scripts/Script/Makefile.old +++ b/scripts/Script/Makefile.old @@ -15,7 +15,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Script] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -119,7 +119,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -165,7 +165,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = Script.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -485,8 +485,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + Script.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + Script.pm $(INST_MAN3DIR)/CBitcoin::Script.$(MAN3EXT) diff --git a/scripts/Script/Script.c b/scripts/Script/Script.c index 1713e6eb..cca0c7ed 100644 --- a/scripts/Script/Script.c +++ b/scripts/Script/Script.c @@ -24,6 +24,18 @@ #include #include +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + + //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); @@ -44,6 +56,20 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// + + +// 20 byte hex string (Hash160) to address +char* newAddressFromRIPEMD160Hash(char* hexstring){ + CBByteArray* array = hexstring_to_bytearray(hexstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBByteArrayGetData(array),CB_PREFIX_PRODUCTION_ADDRESS, true); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + + + + /* Return 1 if this script is multisig, 0 for else*/ // this function does not work char* whatTypeOfScript(char* scriptstring){ @@ -132,7 +158,10 @@ char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { return scriptToString(finalscript); } -#line 136 "Script.c" + + + +#line 165 "Script.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -184,7 +213,29 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 188 "Script.c" +#line 217 "Script.c" + +XS(XS_CBitcoin__Script_newAddressFromRIPEMD160Hash); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_newAddressFromRIPEMD160Hash) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "hexstring"); + { + char * hexstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = newAddressFromRIPEMD160Hash(hexstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + XS(XS_CBitcoin__Script_whatTypeOfScript); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__Script_whatTypeOfScript) @@ -299,6 +350,7 @@ XS(boot_CBitcoin__Script) #endif XS_VERSION_BOOTCHECK ; + newXS("CBitcoin::Script::newAddressFromRIPEMD160Hash", XS_CBitcoin__Script_newAddressFromRIPEMD160Hash, file); newXS("CBitcoin::Script::whatTypeOfScript", XS_CBitcoin__Script_whatTypeOfScript, file); newXS("CBitcoin::Script::addressToScript", XS_CBitcoin__Script_addressToScript, file); newXS("CBitcoin::Script::pubkeyToScript", XS_CBitcoin__Script_pubkeyToScript, file); diff --git a/scripts/Script/Script.o b/scripts/Script/Script.o index 473285e6a4cdcb85160f51ff778bb01e4c144abf..bc518e9cad38a2911a564ae5be7e29f881c72127 100644 GIT binary patch literal 111088 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⋙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 KKBjnG5C0#-!AoWU literal 102824 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 i>;r6=if$)zD`i?RRzD?`wBzRZt>t@64 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 Jv3T3p{XfC*G86y+ diff --git a/scripts/Script/Script.pm b/scripts/Script/Script.pm index e5e9ac18..25feb25d 100644 --- a/scripts/Script/Script.pm +++ b/scripts/Script/Script.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Script; +use Digest::SHA qw(sha256); + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,9 +16,83 @@ DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +=pod + +---+ constructor + +---++ new + +{ 'address' => ..} or {'text' => ..} + +=cut + sub address_to_script { - my $address = shift; - return addressToScript($address); + #use bigint; + my $x = shift; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + # addressToScript is a C function + return addressToScript($x); + } + else{ + die "this is not an address($x)"; + } +} + +sub script_to_address { + #use bigint; + my $x = shift; + # this part only works for OP_HASH160 + if(defined $x && $x =~ m/\s0x([0-9a-fA-F]{40}\s)/){ + # this is a C function + return newAddressFromRIPEMD160Hash($1); + } + else{ + die "We cannot make an address"; + } } + + +1; +__END__ + + +{ + # We need bigint or else the addresses will get screwed up upon conversion from ripemd160 + use bigint; + my @b58 = qw{ + 1 2 3 4 5 6 7 8 9 + A B C D E F G H J K L M N P Q R S T U V W X Y Z + a b c d e f g h i j k m n o p q r s t u v w x y z + }; + + my $b58 = qr/[@{[join '', @b58]}]/x; + + sub encode_base58 { my $_ = shift; $_ < 58 ? $b58[$_] : encode_base58($_/58) . $b58[$_%58] } + + sub ripemd160ToAddress { + my $twentybyteHex = shift; + if($twentybyteHex =~ m/([0-9a-fA-F]+)/){ + $twentybyteHex = $1; + } + else{ + return undef; + } + $twentybyteHex = lc($twentybyteHex); + + warn "KGC::Peerer::BitcoinJ::ripemd160ToAddress($twentybyteHex)\n"; + my @hex = ($twentybyteHex =~ /(..)/g); + my @dec = map { hex($_) } @hex; + my @bytes = map { pack('C', $_) } @dec; + my $hash = join( '', @bytes); + my $checksum = substr sha256(sha256 chr(0).$hash), 0, 4; + my $value = 0; + for ( (chr(0).$hash.$checksum) =~ /./gs ) { $value = $value * 256 + ord } + #(sprintf "%33s", encode_base58( $value) ) =~ y/ /1/r; + $value = sprintf "%33s", encode_base58( $value); + $value =~ y/ /1/r; + return '1'.$value; + } +} 1; diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 9cdc6d43..667656c5 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -15,6 +15,18 @@ #include #include +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + + //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); @@ -35,6 +47,20 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// + + +// 20 byte hex string (Hash160) to address +char* newAddressFromRIPEMD160Hash(char* hexstring){ + CBByteArray* array = hexstring_to_bytearray(hexstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBByteArrayGetData(array),CB_PREFIX_PRODUCTION_ADDRESS, true); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + + + + /* Return 1 if this script is multisig, 0 for else*/ // this function does not work char* whatTypeOfScript(char* scriptstring){ @@ -123,11 +149,18 @@ char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { return scriptToString(finalscript); } + + + MODULE = CBitcoin::Script PACKAGE = CBitcoin::Script PROTOTYPES: DISABLE +char * +newAddressFromRIPEMD160Hash (hexstring) + char * hexstring + char * whatTypeOfScript (scriptstring) char * scriptstring diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so b/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so index ea2a7dde22e2b3d7f573e98b2887bd6192b4a11f..28fcddb8cda7aa37dd1ebcdc60647a4605e3febe 100755 GIT binary patch literal 72462 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 literal 66139 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 ..} or {'text' => ..} + +=cut + sub address_to_script { - my $address = shift; - return addressToScript($address); + #use bigint; + my $x = shift; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + # addressToScript is a C function + return addressToScript($x); + } + else{ + die "this is not an address($x)"; + } +} + +sub script_to_address { + #use bigint; + my $x = shift; + # this part only works for OP_HASH160 + if(defined $x && $x =~ m/\s0x([0-9a-fA-F]{40}\s)/){ + # this is a C function + return newAddressFromRIPEMD160Hash($1); + } + else{ + die "We cannot make an address"; + } } + + +1; +__END__ + + +{ + # We need bigint or else the addresses will get screwed up upon conversion from ripemd160 + use bigint; + my @b58 = qw{ + 1 2 3 4 5 6 7 8 9 + A B C D E F G H J K L M N P Q R S T U V W X Y Z + a b c d e f g h i j k m n o p q r s t u v w x y z + }; + + my $b58 = qr/[@{[join '', @b58]}]/x; + + sub encode_base58 { my $_ = shift; $_ < 58 ? $b58[$_] : encode_base58($_/58) . $b58[$_%58] } + + sub ripemd160ToAddress { + my $twentybyteHex = shift; + if($twentybyteHex =~ m/([0-9a-fA-F]+)/){ + $twentybyteHex = $1; + } + else{ + return undef; + } + $twentybyteHex = lc($twentybyteHex); + + warn "KGC::Peerer::BitcoinJ::ripemd160ToAddress($twentybyteHex)\n"; + my @hex = ($twentybyteHex =~ /(..)/g); + my @dec = map { hex($_) } @hex; + my @bytes = map { pack('C', $_) } @dec; + my $hash = join( '', @bytes); + my $checksum = substr sha256(sha256 chr(0).$hash), 0, 4; + my $value = 0; + for ( (chr(0).$hash.$checksum) =~ /./gs ) { $value = $value * 256 + ord } + #(sprintf "%33s", encode_base58( $value) ) =~ y/ /1/r; + $value = sprintf "%33s", encode_base58( $value); + $value =~ y/ /1/r; + return '1'.$value; + } +} 1; diff --git a/scripts/Script/blib/man3/CBitcoin::Script.3pm b/scripts/Script/blib/man3/CBitcoin::Script.3pm new file mode 100644 index 00000000..2d962744 --- /dev/null +++ b/scripts/Script/blib/man3/CBitcoin::Script.3pm @@ -0,0 +1,136 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "Script 3" +.TH Script 3 "2014-10-04" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +\&\-\-\-+ constructor +.PP +\&\-\-\-++ new +.PP +{ 'address' => ..} or {'text' => ..} diff --git a/scripts/Script/old-config/Makefile.old b/scripts/Script/old-config/Makefile.old index 17f232b8..6b6d0e01 100644 --- a/scripts/Script/old-config/Makefile.old +++ b/scripts/Script/old-config/Makefile.old @@ -15,7 +15,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Script] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -119,7 +119,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -165,7 +165,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = Script.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -485,8 +485,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + Script.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + Script.pm $(INST_MAN3DIR)/CBitcoin::Script.$(MAN3EXT) diff --git a/scripts/Script/old-config/Script.pm b/scripts/Script/old-config/Script.pm index e5e9ac18..0a307022 100644 --- a/scripts/Script/old-config/Script.pm +++ b/scripts/Script/old-config/Script.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Script; +use Digest::SHA qw(sha256); + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,9 +16,83 @@ DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +=pod + +---+ constructor + +---++ new + +{ 'address' => ..} or {'text' => ..} + +=cut + sub address_to_script { - my $address = shift; - return addressToScript($address); + #use bigint; + my $x = shift; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + # addressToScript is a C function + return addressToScript($x); + } + else{ + die "this is not an address($x)"; + } +} + +sub script_to_address { + #use bigint; + my $x = shift; + # this part only works for OP_HASH160 + if(defined $x && $x =~ m/\s0x([0-9a-fA-F]{40}\s)/){ + # this is a C function + return newAddressFromRIPEMD160Hash($1); + } + else{ + die "This is not a script($x)."; + } } + + +1; +__END__ + + +{ + # We need bigint or else the addresses will get screwed up upon conversion from ripemd160 + use bigint; + my @b58 = qw{ + 1 2 3 4 5 6 7 8 9 + A B C D E F G H J K L M N P Q R S T U V W X Y Z + a b c d e f g h i j k m n o p q r s t u v w x y z + }; + + my $b58 = qr/[@{[join '', @b58]}]/x; + + sub encode_base58 { my $_ = shift; $_ < 58 ? $b58[$_] : encode_base58($_/58) . $b58[$_%58] } + + sub ripemd160ToAddress { + my $twentybyteHex = shift; + if($twentybyteHex =~ m/([0-9a-fA-F]+)/){ + $twentybyteHex = $1; + } + else{ + return undef; + } + $twentybyteHex = lc($twentybyteHex); + + warn "KGC::Peerer::BitcoinJ::ripemd160ToAddress($twentybyteHex)\n"; + my @hex = ($twentybyteHex =~ /(..)/g); + my @dec = map { hex($_) } @hex; + my @bytes = map { pack('C', $_) } @dec; + my $hash = join( '', @bytes); + my $checksum = substr sha256(sha256 chr(0).$hash), 0, 4; + my $value = 0; + for ( (chr(0).$hash.$checksum) =~ /./gs ) { $value = $value * 256 + ord } + #(sprintf "%33s", encode_base58( $value) ) =~ y/ /1/r; + $value = sprintf "%33s", encode_base58( $value); + $value =~ y/ /1/r; + return '1'.$value; + } +} 1; diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 0c28dded..32911e77 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -43,6 +43,8 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// + + // 20 byte hex string (Hash160) to address char* newAddressFromRIPEMD160Hash(char* hexstring){ CBByteArray* array = hexstring_to_bytearray(hexstring); diff --git a/scripts/Transaction/Makefile.PL b/scripts/Transaction/Makefile.PL index f86998e9..0b54fdf4 100644 --- a/scripts/Transaction/Makefile.PL +++ b/scripts/Transaction/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' ,'CC' => 'c99' } diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old index 347ffbd8..255dc900 100644 --- a/scripts/Transaction/Makefile.old +++ b/scripts/Transaction/Makefile.old @@ -16,7 +16,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Transaction] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -120,7 +120,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl diff --git a/scripts/Transaction/Transaction.c b/scripts/Transaction/Transaction.c index 77d46f4a..201a79c0 100644 --- a/scripts/Transaction/Transaction.c +++ b/scripts/Transaction/Transaction.c @@ -226,9 +226,6 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); - - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { @@ -287,8 +284,6 @@ char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScri - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { @@ -323,7 +318,7 @@ char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScri } -#line 327 "Transaction.c" +#line 322 "Transaction.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -375,7 +370,7 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 379 "Transaction.c" +#line 374 "Transaction.c" XS(XS_CBitcoin__Transaction_create_tx_obj); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__Transaction_create_tx_obj) diff --git a/scripts/Transaction/Transaction.o b/scripts/Transaction/Transaction.o index 48184fb5c66d9f815b703ae2c680fa8a6209e218..6345fe0b324c5ee67ef06e1108ec5bc24c187328 100644 GIT binary patch delta 37981 zcmd6Q34Bz=((iQG5`;ilk_;h`5s*D(*aIRA3K$_mScD)TQ9%NNMAoo{03xWM@dza# zLO>J{kchImKv0yZsKGU|NW6;R9=rLdP)YXL|r|V|ti>VXUEGIQ9{hEhSJAQ;; z8#c}5>aG-v%9*)Gl#)7D20L^j~&E~nr02P1QA2%NLi?``xPLUl%!xA7X{twuTd(;7Pu&$#p2 zlUO{UWtDzb!#b;>%IgY*a~au>*~m=no1rQxNY;1S&5XIGga%>ejum`I4IZK zBh`*Q{b$!zwcbLj0aO22;7rbrt0OR%Yos$ZJ2tY?t(LU9b2vMuT|J+uKqv4RKXU! zwZOSDe?VP|BoN^n7-8%<=db0li{1h)Y5+U6d7?vi^m|Rc8zY{y_a-00kxZdWJ%1FrdAG`4R|GHu_31CHA-UAi+~5Ci_=e}BMna9op|Lyt84`%$01 zq)9@#J`D`gZ1%e-zrF`H#U@U-2OCVTjT2YTn-Bkkd-K1) zDmPZOoYDv5a+XZz8%EU%%s2nB_1`G-j;W8imcH-w*)COEU4xHdbora5qErifn4!ym z6RA4t%rKX$fhJ>=Ssiq_C6cr}#16;DK&_8ev?vT911eVGG7%HIJV3_zNnJNi;gZoH z_N4&X$RZnQ^7{bku}F_{BJYn@Rh=m-V#69ucY0!>v$J7E3_ekxT+!AnHYH}Ud2qH_ zY)V2Gn-a0uoU#|2Q=yB^DY4iDX}#EJzL&q<=+EEAuz%oK;gdXF8u&6Wc)I+RD4!FH z&DYF3J61NhuH5N8WUiMhgiP=EXZ-)LtVCl+P@I9#XdhTL(|LJ$Qu)*T;hA)rA5(F= zXkocH^Z#gJ>F&JxNc`Vy@3gMmJByxsl0)LCwD8|vSdNj4|8iaF6qqwV{6AS&VypA1 z{ugtXoSkd#l3zmal3&DKa@oF1E{EPFm&IKYr1g9c@~L!Fg#D#TakZ#k$>kh+)SWXq zn^%soI$`u&u0odUkV5DV8bbY>g}@xVh-3LFdhYBDcf^~H=vU1;>^Tqku^Y*IOqE5fZ@ zuAk;&mw$lWpN#+E)hX_GL~5L!>#SPUuB{o~fv9x3uKGl&pDqaEDQ;DOoSl@XP zV%_v=Fq(RggKhh^sy!H4pYtBX)K4dt%IvmXmcqA!ze7Xym=pWBXV4Df$(lV&iB38-R`oUEbey16Ch2H=>@M$^>_0N#>*`u-8mi4sn>F!aZ{#@rG5IRTnYhNI zDmf3WiO*@c5bOD0sp%P$JSPDe@}ame%zBT< zJ5vrtIr|Saq@r(ELuBfVN;`g)_L{~PlxvL1j%28^>t~g=!IWMK3Qg8{)Iw7_>5M(x zX=uNIe3Z!=OC%p0uv-umnyj&;g{FkjPd(_S=&u@KqW|S8C-11+=~@`qt#`oA5R*+0 zK*NmhX9CcWfL&)rVW$=Y0>o&e-5Z1g+8R#V6Yhw5%y^v|M;chAc1K!!f9H-hnlM+- zKwDRGJ;L7R{7L7*BXK##XHek_Dgw298}y(B|DMKNuwK7%nzO9=B4B4$xXFL1u^gIx zwYlIr7Zk>t{I@|Y!Q{USVl7Pm`yiHN@?}A+tI5}-kF4;jQT}{4L z5KA)os36wD^ClO0}Dw^F%An`}aD4bkKty1|st6i%$9%B=SW>W%p{QtQ9tRJm?3*?&bk z4Ufj9*I{uqr(v!vm&rF`tg>tBPp+z_)GAP@(qSkuWmaZTe#xM=EBa^-E!>COfcYC98m$E6=Fuh|{YoM$ao+?}Ia8vOgW@-_Dd zYQ9*@Dcc>F)Rz0@xj_GnG5)8pZCu-);4D_kIP7jXn#E@PmFu>E!ijvdLA0+mLaELOtZ;-2!A(oChYK&3Gz`x`@g zOE9HdIcgjTlQqF>p(&wH9G;x=J_j40Uk7}SGFjtAZx^PN7VtUBWQ`XsG^M#gADaHH~A$R(_0l6TuXz(Sd)J+h$Wc(LqV*C$*%}v zNhY5c#JZaN&bqo${;g_f4wrUuN?Vo5KNrN3Ouit9wJ`ZTK`g=KUkqZgCciI;)i(L) z!$C0I{lSKvXRYvh-Krz&0F9o2{CVRM^ZaLjBLpPWbnxehx zDb^PU>W!Jrp*_SYZYC!CL|xjeMn2Ety`0isW%92wruQmSdMjXll*t-5XnsF?!kF+N zSp5)-UyJf@R;Cu;cz|wW;L$7W_OO!EaU$8-)>fG%h%i= zs5z{jf3rHynt_218e?onvTa-=ujMRO!qqVT53Xcp0B%;6qSl-4cw=rz!0aHCeX%at zsGh`3L0$iD^(Ytj*QMPm=PWz?f>YXsO#aItR@>yy1+iF@|2l{znEd%5*23g>Mw=yK zRubojxON4>7AC(th$Wc(^Fb`u+oxGN)y=R>ocY&uqk;MRjyGcJHlymqCrG76Ahe!Ct@QS zaH*Ly^+fZC-dwuf*?6LT7>1JJj^6XliT712AD@ZLA@B!2c$fo-IlbcH3+ptfNEU&o z7thM6E{fx)|jtW_l2hO^8at%mJc_fbw|b_Dw!3&NlD zq>sC9WaY3*Zz7&`a(vAf{8)EC_OWx%$qAjeAQIN3&Ryxo8J;I-@ zG;znCi>I!wv!~OK2b%BuDO&w2tU-5rQ*qPcs!OY+K2&){r2&yiE5pJbtsWWPAF4J` zxBm^lZ&3sFu~IKWdPCJEVq<&%8zk2wfG;JwgkAQJ5u9(RT9|x`cz+%S$E)iiHpc3S zvjEi9sxIt^S4|@txiz*3O5)LCl74^Ua)G-MTHLr61~*dIscw+hNcB|Bp%{~}q!_5v z7}4R7)>!q7sP>UIkq&DbW1X=va01zgv8Od$4DJNgMR_4D0ZrTtd6W!-Vobtjqa_b& zXE)Fd`CLbKw?{RtKf|v1eXq_$hmLx!&Uf=VNf#;qME68Y7+RGsTj2gvM706CmVFK2l5GgOP9_< zF_nJQr7EDVLF>`jGj&|bwUG@s;1^R#NMPWD4C)%jSLe$iEneP&x@Ky68PmO(euCS)Pt!-4J{zHHn@Rl{l(xcI5nfdr-^g!<{0k5&;~=Uv#&s?D zF!A-e zb*kFll{nz~t}v;MO4^s-M(wWRO#adX+3nR|dR{fwZFFI0yPD#kf6*6r@#+YL9q{Jc z+CkOuF9`<6&pG^;Uk}GoQo3g6L~3nio93@lNmx((p0{P?J}5KYk5-Pu03w)%tKBQd5#4z7x{)(T{1$ zXp6oUQi;CKqL*8APneH1%CR z{g;LJg&v5zds%*a^F2pVw}i<^*R-t;hYYf`6)m|_tZG}VYW?9jSsh@}#TK0ke~^iP zQ83{=ZOL0IwC#d;n=XiZL-5gvy9Zk4#)i-`S-Poej;k2ZaEgJ9Ro*3FFtKGMR&^?H@XT{wi^kky#cISoA>m_}_qKCtAq*W?> z)l;>DcY5N=`-MffhPJ(MMLu;M;*or`Cwc&kMm)r6W2SX~tdR7m5c(BKKO91TPqe)< zJsU#D`-JbeL+DhZM_avlA%vbUYgglQ7DYY^c1qe~(YL^9Nq4qr9Le4yw5$-i2hwoL zhrPKp1fSg7KmXTL?bcT0A6cp%a2#noV}I3KHBoBl2`-Pcv0+Q@sC+I?qHmD zT{_Vje5QrdvD4rVs)VdXUsO<`D!zOSHyi(fjI>xl~RgbMJ! z1}Fb_SY0&85Qy0Ujj?ch5gcdXwtjvE_%aKpHL$)J8^@I^=xLd<*Sv3;kgLN*Qvvn1gMS$u@={e?$Y{2t#R@Mu z%llP;-^@70N}m&$IW@-8-(}(BESy6cukUxuPy?$%j#XiTg)g;myKO5Nr@k0s=^ulP zn{hc`2ZfYu1}`Sw?G+d)u#DVl8QJeQ;y%PQH9Fp+-_%y$t-$I>menykXbExUBc5I}0y*<4YGkqSnMek3!lIRJDOzQgyh7 zIDIgo)TmZK0nxkK6X?Q^l=Wq3{P2osbHm;*=n)V#6n&I|Zz#5Q0W}w|Jvs^a_+7uh zcfBg`PupssNZ<*OkLKJltu%g8&~Z>q^raRW|5?z@Kn=r~hJ$w)s(Nz6_*2C|OwA#K z=sP&%Er$xwoLL zu24kcb#Mg}_ewhc;x&*bhw(oYe8bV!(axHlEa*ESYd9L&3;CoP*F~$g3Dq-DOmtiu zO}{DVPM}60-L0XfuL!yqct@a*K9E7l1CU4JMYJ^HwV2;rn|K{4L|Xj}B`9{+PVkFd zuM5>N@T8*=CrQ&61pPCl5q+$#rX%T2!7Jz^m*}588g3=%x1fON_1tBB1sw;aM7L$% z(*^B=sF6r-y;>VzBj|SEBYGY;|2aW#hAg6^+v(cx3;KJ=Cwg&LOc>vn)zdSCCv+HBYp-7 zNfi!dSjYVyf7{_TVKNguw;}yWOYN~#&>4_MbSIuNe+s$<6#U*4Z6l3CE&o{1*c5l3l<8Q#5 zf#RnjgOWQTF9RK1YNbUxg?Jzol4>cGWmqOXWDBpL$+X-3CUYsd6AEs(Os){(flzuo z+S;AqH{mK0^hWUAfwlYcFn=xR;gCi2eO$W=zqd4z42S$X{9SN?lJ(%d6T9adNV(G= zUN$D~JNYJkT~xgUg(MybC3j-g7T_6&e!4W#QF?e6Hh#W?G^FXC7>6bwWRtfFRU#CS zYAFHry&vCjS6ho$A1EZcJ=6O|?Xyre8C|^#o++5*LE01) z-@}KPI^1Mq>uboJqMmV&9F71!8iBd_w4FG;ZzLl8z`HKmD;w~{Z`CV(FC>wJXuJ0=UGxF=(doSg_Gz!kF%E_ z&rR(Ip@8V4yqjkUIvt|!#SnUekCH)rh7Ym+iR4!t%4=nT|2{ZN-jxNKEakAa^=- z2;Uc8L1#b#(K~rEqzQTylupNZAAqPCsJh7AmM2ulz&8U!_=2Z;v7l!_KGjZSx=hed zK{3%i=q)T>QJk6vq=A}=bT@9kSI~99I};-;f(%k^;M*xns6K@}qD#7HA9;dKghHg% zVkkjd?m{!SglZ0WW}%U4+|y-(-Uey2a5SS~4J9d1O5({)wZ|-eq%f`O22rz-j^udr z1lCaxyRbhR!)NnUB0lU! z%*Oy8<>{~ZcxeK-57Opir5TV(s-JiX@d*`v6P8qCp=dtF@hC(sz&JW_ujdPKDfp09 z+aY}cnjFV-tW>CSAb$ZZm92P=@gi>GS`8{k#Wc9PtEPQ|{yh=e=V0sbT_MWcxAUV& zu884QAm+Ch#mcfYsE?Z~+tdE}lC+ zUJ6WHh2UL;J~lzhA`}mX>_vFj{ga;{3x)V)C?jzpL@dSu?f_|vvBg=up?2lTYb-wx zxkP93dOTFn9w=Ch9-oI&TeZ2IDr$*e!z?rB(U1%EymgCLj+KFTuGqg(u`p zK|c@P`z#-i3fco1_hBU0LmsJSbI+6t)!k5tw914M6uW=nHN*d^&=ow=9|q4-RIP>N zrKmc=(=v^F%EUVya#7`ep2vNOpfjO>jNmgS88ND3 z$;etLBh|Ss*hzRPj?ct(5pf4bKIrSHP42;(hq1p(!r0NH2mSa=TKq-o`5m68L z!Ilpo=z**U5PTZ)5p-|l6+f<-HfY@SgJPoRv7au2c7u8l=_k3ThYA|N`=H-(2C4e- z1X(6j6CsaOA3&iNm!TL#k9f!*W!ghn8UmRQVRL`rPVsUNnr`-FG__=xV;T+{i2#veUE8gItsE70S&ybF{F)nOjp$XpEtLxT z0mywA<4S@8O2$AbiOr{(U3m_efIfq$N09!AZ4DK4bMO%z?bZD_RnS!+>k;&^AM#O! zU$Q!YCHDsIug`?|S5SFq>lkm)7X@7(yhLXhm>X{b-2oXyujWXa2s#4th>qZAi=Kjx zgu*;r3!C!NGfU9R!1Jh@g{R9kk75Jf=0nT3LbVG@A4MM}96|)oJrm)L5anQJgoDpP z)$et6mpvd<(U3)S_s*JrL(r=rA8B`(3VJpa5d8x0-X92hIFu4Skem6rpz$ZI)*x-ZO7X3rUjrY} zpR?~vg5C~UNULjL`5GMCk9mT$;@#bJWf2sw!Jht!dtr{CPk?tV`WVi(HwgMu$ROJM z!0L;F#t)^4UdPRUThJ*`Nc8vI{8B-$fij{y@IBawS0oepr{Gy<`R*v_3y?;%@qLq^ zQy`aU<9n>2*FXW$#`k@K{uD}W-|GZ@0ivF;d>05h1$;ys-){in?C=SpmDs3HtqKC%3?Yd$J_SZMbJ3j8!X?c zg2wSC+W5Xh&^X>mrx@RJ1bu~93)MrALG(F( z{;JH6k*2}1khc+6zwuB=s$IO2UMo~npbTmJv8;%E6gP!rN*;ksOx%C+p?RmM^C%SL zW1WLgl#fwf4J|jJ_)b2R-M}Xp6Gj$fZ9@O|@-8t-(Dfjn=r*18UNcwF)1esY6b~QJ z9uxFmd@|T5@JKedL*NR$o6*~Rer|t9&<{ff(H)uoR?u4@kLYzg9_@HNHZ5%gg`2VS zN}!BX-}A6c6sljr^Az^lImmqq`|t#;c?wUfW1$pF?)TYY7(WLa%X1)V3({Zl4%WIH z?IZd)KO6QIbW6zEf^oeF`J_tW+h&eXeF?=#tAD};688r8)A*X^_p9Nir}0I`7Rbh; zdIPp$;y%qgO%3iR6Xruu_B47>+zPLt$ARY=q(A2)N~)kQLK@Qe)*% zsbz4*7Pq=KRJ;>>&!Tu0q(6%$7jg7Qgvtf^sB%}~*?3matDyKL&0g@IHsW4>3JL(AY^tujhxE*@9jGc}U|Yl-r)e&<;Tf zB@aQwZXDD}e5q(hOE}%tsqy>Pe3Ws_)0da z0OS3ReIF32QQ#{;)fbROsvjC_S3e0=1myc^o|QFyT4rvCJSZk3NuZv`1m6WdkJI96 z?!ZezTmpH|t6A>Bb+nECy+dt{0?!_N7yBX8cM1Bp&MvOX%2-#GK zdVxlXtyH@{)X8A*y@2mR|KvgJB_u0H*;SQ3p{|yKZy$=|A$=dJrt#X*N2nqpA8BJio-3YuyU*y_heM2KT0vSZ#$Hy;^pbtVG(K+pPtz<#}3WY>( z=M8h1ppQct(y9|g9Kei z&fr^ev!MHf_azMBLC7H0$L!;rP~8oANUL1fhGO>sUJIJ0gt}@1Wn^SF)7J`m7kFMq zS92hZl3I{U$xBf1GS=z9ck5nJXA+c>sy0Nuf~rdi+Tlf^!f%kif~r1{MXG1{9_@Nl zXn4&bA8A~e54?iIJPy>WD1Mty0S^lCIPel37q4w>6Z9a+cojWPhdff<(nPD4^bhrT zKNP--_u@9*OJ5Rn0eB9fkpf6NghuwZ)Rk)v2sIK3xk!io))v+tQi<;2JdnMGtOb;k zm1Mp{#t6CrL>#R7L{&<5OD;>>D;|93vpLSJAx6t&ok*WL63yo zBiOHBwAB$r-y9mr=TJ(u9gd`sxQ-5CI>EL}Gotj@AR&`)#gYos_>*(}6`b;3&6#c-*>%dnj^fsO8^0aH0sG7;A%i3&Z@JAH@3#*^l5w8oyDS@)q{`0LY`{ zc_^Wz4|v|jBo#6#!S}CkquVJ^`Zn78hTnnI8W!sI1&DeFRkwlf9aNR@a@Jg^!XS(2 z$M}HXNzi>EpXht}5Hvv0C!v^V^I$(g&`UraNBSXttX(4L2f%wABfJ+fNM#1*h*0?; zkLdcmMtvpdA}A#KGIxH}TS9x`c_<@#8n>^7pmFNFi}aa9UF!xx*M~HsceC*fK^H+T z(I)amg1!s|@8a1o5u)BhRT1x|9}Cq>;Cl~yp$BB4N==33?_r(!aDl)T;C>&I#gOto zf=RILeH{KVP^Ljov3i)k1zhZxlosR17y#)fP}qpZK|= zPyF1KPtXHa{}g{C+zLo3L2y1~Q?eMgm7sDjWPau^t)b+@eMO(CfeIhh-KVg43{oih z5VB9HPw>e(?KE1$mYw$3C_U{DJN*oTli|P_1be{+O4@+?bF`fZC7)yIC5SkS$x2A3 zq%CBg#R{K75tWX^6-pNGYgww^RO*9$WnZYz6;>(!5+iO1gw{cReC~uCWqb*y`dE8lo(zOl9^Vh3d29< zch~y_UcH7kb8|U!zAHFsV<7zsu9jn2l_hH51No?O_vZC^xiAs~#aLTS1N9rK7O|0C zLe(3*NTaKi-_)#}_N?kWMF(aYV1AAM4FZ3H^}{T@3Rdlflwzt(c&kBzhmoG3i^Itm)1iu(VHxq!nl{>!RsKXf8h`O z6t~IR415vZeBa|w zs{%PlxWo4>2vvPHpaq9pU3(;G@gUMK2YC9eW?~+Q@Mh{Co(=? z;Mt5nAn*qn-y!gIj2{TWb6l<$n0Ol4?s3-6{8TSZ0oAE?}FJZj9z_&A=g*f>S48aRbED#lrF#d$Vix}S~@KVP2 z3f%lw-FJgH{a$jHt644G11E!oAMeBXd4UgQ{1<_bXFMiL+cP~ngYl*UUs9`@7J65u zg~jCDEa)v$ew}F^UaE3H&eKIT{H(g72Ny z0{8!O8T7!_RS?a%Wqky0c8*ct4GW7&nZUH!iCp}IJ6%*WzYcVsz~@Hkb}fNCH0NF^ z%$b#Y4HOdnq@c}0y$#BU-X&*$NZBFV>KSUkG8Xe$-KTHv45)A}dDR}Jr|txOwp6Dfn&9>_vE=ZHm9 zXDn>%XI*bvIE|e-R(@{bq&HvH`a$64>s3EnIN34h%s(~W%75M?L+caqFT5(v(5Z>n z95iczHyoQ2D`>MgHGvGGTL{`LPWbUN(Om^?7N_f>kmwr)Z5F2?P)76!L7TWsfwyM7Sm50mKcn&B zvN4p2Z$*Wvj9(V`a>lF7)Pb1>Y+<~Pz+Yv&aR`pv@25<(2_alA^D}?R06oHIts29#89rVS>U%bUMTQP#@`iqF5@Q!ZvJJ2pAoN5Z82SUlqbei$d@rxSuoeaR}jZJ;nGx1iqK?u-UptXfdI!d?6nRuY#zW*s;+TO>5Bf zBrT6)+>8fshqn-TKI5GQzJc%E>jl1z@j)7gSvA9=az+c$QI370z|FdzYvJ@hVxf-N zwSsZ8aE5o)#41Zq%{TwR$$E{q3e36}qjiNXmLcku$GKOYgN#V*w1a|P;?>oP1pW%+ z?^?LMlbo|~a`P+ee-XIr{_*0Be5%{k> zLFNivuOTkiGJ%_aGiH^>gST^A|Dxk^Z4wpwGya^wZ)f~13#a4z9n=|kl~_3SM<(mf zh2Xf-E@qYXgZsF9v1e%I? z6>EH?zXQi;%>VZptAg$LyoHnFU)jMg0)wap)?K^RHuM5}`Bc)Ep?|H;eU8m2~UyEq^^cD@M-KMMDEGMfj@$kWOhKXmdF4 zBJfGPKMfN2jr_!u4S8rTCr{A7RMy_N3w%&#jlVANQ85}nCGa}@e(9eAFY#!7_X1YSMz-#d{Lz=+<;Ax#H@Z-Fb<%Zz6Al=+bJ6ID!xLn=3XuLq+ zTN-NosKA@^8==zz&uXjnzX`lC^#m za6zOfLKGBKgrK0Pl-T|v7bOZ}^rGMUo_S|?c5>r$?|r`i_k8Ce%*^liw&`=u*=!E% zjrjich*fpOZ-Khbs8VkgcQ_o$N3H5naj|b>w)@KV_`l;|H03jY{N=?NeXTxGwZ#x? zX4Kuza@DODq8f=z>!YaFu3mrr^;fy-T^tVYfnq3qwcXyhGJA{t-?eza28Bq_Rye-=1QxNb#iK^ zdlItu3@gm~tVz?JD+{{4-B!%>C(6F3Lzk`H)2CLujZpdFg>Brmz~QJj+)A5P-5NP# zY`a7(9+YCmei4IOh=C&65e%mjvgg^zOswxfkrX0FSbxrlt(A@Twb)S`D_rmg! zOwe(mUKl2B?yWq#f+$zsr#Y(cv)W};DQ{p7$1tm7MqJrq4``zOt*0_#D;JX7J(>a> z==53MjF`fPF4%@hE7%N^tg>@@7YgIyIi5n;`ZNckAsuOt8>11v7Q{b zT^^iC#Zt{=@m`x=D28AvMAvC)4(CE~yOAWjrp~6~AXe?hvWo7`W#T(gz5@D_LXVR{ z3>Pm6EVDg?%9&zMnAPP*`3XaQg;8E9DhS&=+ka9#&_b3&jo$zR2$jr2aHL*Crs`Ph zrv%{zC6~a2c>_UelZk%=cskp)s2CLB!h3*?CM+dHM|3YC;8Re#VDG%)EZ+WX&7MJomUjJ5oa z#aVCoGRjyB(M@N2s5sZ+r11FGhEIjH##Go~4>X<%8^Wi;24gCOXgL)m-w8cB@+YW~ zzbSmA_Hu4EhVqtwF?9cS90r?vlGV`fi7(V0S_4@R`x6WIN6^4FYr8+u9#cVxhS5n3 zo|emhe;CR6Uvr|W^p5|ai?P@Kt_sE|3G3q(Vg0+yUi1b|R*T-Q@Sfgf^mIV)=|Ff- z2aKK$(Xyu{Z};^3lT@V-P)|QVz0Zr%L8GS+{r5eM1Hv)M@+^=4`|iGH@!xm1fAPQQ z?oC*O|E9bD4A%U}|C{cvZe=W~A{JR|mduO3vTLB-(hhqg69txMX<}5~5S;1v5iatq zeoH-8_R?Bnt#x8)HS59(SImhi4o7R7{ec9f<`34zr4Q77cOjl49-(#^6iEkI`=V1+ zv(SO(%0h=@sMY@QhR*VSD{Ez(IA#yH~)eEgd!FtiMm~Z7}R%lR2CM@`%0yRV% zD`9!nghC2I8QNLX)9K{VI!x%_+?dJ5d*q_1EBsO+ukW8>ishMD% zUQs3Xa*#{ZxI~+CVU4BHS{hf&5-Ve?)I$yz8@iJVtuU?e2CnmTtL)=39fnEXiMJEM z@j{E#0*M#7NY(K>9Gj+F9UgC>R;f$&D)sSfwMtzIU!^V?t5lx8O67&GQhCNI6{6)T zCHYR&c0JIa-A>N$skd>c;w6Er!S0vkAB^%fW4Zc=!CyDZKmHrbReaI2G;Zeq56e|0 zY#v$!f}Ks<%0=smr;-b=RuQvkwHg(+W`ya|YSm`ef3mBGsnf!;Xco1~->itVcpb9* ztK!;(#ql4kUD312#lN?B%?}QzU;ZB~URhby#qajCse@-=c?%uh z+T1awO^B8gAjJ2kS>i12%)=$9G@e7OZcoSg_GR#Tb5D&LU8;I z#Dyeb4vrz~($k*sXC||e8ezGt`r$(}8{y4!EYIquh4HI49&U!@8(Rshn-zv<{A>6P zg8!3)MX)v}(N`JlOFHM$qpTDsK6DGKcv!&^=@t%0D^w``G4@Dnd2DQ6Z6`c#M;n2KjmCWiJ9M?afrI9dpN965VU{oeFAGREHfq)yWFLQKQE zesO~c+ND@0=>^oGr;#=&RZ?tg%{tnsPz5Vr<^hP221Tj|GE}hV` zN?SIjM}PDr6`EuS;Ul61?Xgm!$wH|>k1xaUHiD$YZo)eaK>5k6FhMHN!%bbG>Aj+0 zFe+RQDoFXJv!pyd`HUe64yGvvLr*;=#a z;@AOV@1sYWGD2yjabNpPAn1u^OmwLBjnjoVL>QeIBq0?VwGxdG5?@*`fJfZ4av;u$ zk7mArcz1nV_+rjeYfI7AK6|!{{#Nwb8jWb}l#OiHOZIc?>t*acOIXCxqqrD)Toq$k zqu0jaqrQx_@x$rqUJMNe`#)v-DSPP#0sFvy`$Qy|Im}W$h<#VyuZC2jy$v)Lqxur%Z^V*l&oVMYt)hQR?Q>vRNS?bid6=VWgX!dsj^cT zD(?72q`aU?AA|%|R{4;Es)WXqcDu>fi2kSUlC>EYR35If$}TDQ4|>T73978JD+N^v zy<9x#wjMoN#TgN0{dvr7Z9Q70?VzCg0F|8_ga#>>`-9K`&D;w++*ZY$Ds@H$*%3rTPb|xV3UxX<1}pzObA)}t`D+>$Zr9;Z;f3_P zAw4VU?JB-StR0f*_JV2U2Fv^$^fW6%@eARLiE9RJW#i0t-7$iZJuO7mZRNkX7A9_}WLtTMC)3)kY*=}32|d?Ut+ zJJN1AN~%(up!wk{tK6XZI^0CvtUJdlM>b~JrdGo7xX7kl>R@?~*S>!vmy|{^N7i;< zPgYkov%ye%%G|lany&^mf3uDrkFQ>uE36qm5EMCH&WhewrEz7d4Nl~rEl{-R3hAwiW@UZtQag<=@4Vz_=VGQMy-+^=FdKvQJ!Vs64^!KUn| zvL%AP2dHd(5E`T+d?*MF2*qOIE_RRV5-Vg{Wy=MXMkqToLy%?%H@AkLvi{AWokE*i zNW^+Br{2SFv7~}&CsTgv9|&QsRQ^;2DQ|Bcs_+qmw7seP z=@6Er^0^A5?M)RvRv>O~Dt|77#i{(KAuL+uuY|A&mA_q4i%@1m|8twhI1X{$aPd&t z+ZAc?=&G9it)Rp}m5nVgEeXd6mA%5=Xlf07L6y)H4#T8lY$88sYUEmu_!UlZ15(*H zE71Nn>?{kP=alw0mA}N8+}~8`hoJf4Dy!U}`OnxB#)OB>(wABIYnSCY9vk^J7k{+G zN41Cc;|eMrdo%lk4XDcf%N=e>Va->4N^^TfE9ZEX>W2!;90r-n;I2Wo}x~Y(JGfXQiL6T)H0yTN|yIvt;jK4e9S6y zwuv|g$?+m~?~t=+M7six^J9vW(h zsCDN`McZ0YVkavQEr#xmIOi*lPpGDR>9(>j9E^TvLB#W(q2oFXEAA}zp*Xb5O8>Hw z<@>x}^lqDIYZG6HZ-PXtjYv2X%Re-8Wn`1U)VA0uh1MI0PI*3z{UsZGzhakC{=;*u>2UDvd z`U3>87`gtOG%*4Ss-aG_8=6!{Z?`W>_%q0;E?SDy5U7qO{sH-v+<@c+v{c6pQxi}& zu8OS4Wf|Fr3F7Wbzj-9qsl8)(+OV;r*XxP=8 zX+Ma&MXc*Y7>RG=!G*AUlns|~B*>Zsg~ovwX)y_g-Yput(-AN42#NGzxn+<|QqRj| ztDU$HvT#2Z!sl}Kbw<+PVS#LomZ+mWr?;e$yCAD3nv923N}9-0Pdjms#Ry3CD67=q zbdHo-Et8iapH$zMr5~hfDW_D8=1Np!)mo5J3x)5M$yo4H=`mT_XeaKsSXDk2#1Fi& z>X%aL51GV*t2U}O2QMXkWHL!6b7k_ROtK-HM2^VP8JYaUPLfL$mtiKMPr6j&)L=Y~ zab7JQ9U-|6_TpfsS26A5bgWH_88TTYlhrcWD3e_>IVO|yGPw?(x)@?bNTCGVh>~V9 z=_Hf>G8qp6;^xWHlaNQH!?N@Nxax`6OMyq$+ESRUsXQ%V5HPOXI$->=QyTY(rI}}rVtv) zq@|s}==!30$ySa=z3yoO8|sUs5|~SFX`RlG+y7O4v91I!u>0pE3y&yMUB>6Yo^jNK zolQh+nOd0rCw|zQuBjlJ;?(}WiHLI7)bPhOwfay7W!$wj`X!BS2`bC*tyguJqtW-lMWTCY^m|N4BGwzqw7{6!wZNFZ z)YSSyd%`Cpj$2|DjF(UVe(IZScJB(gQbWil9y6WRF`Y_RhHTwH7 z`nqZSu2K}YjC=@GZEJ*Cp;>&j4*nqsl8UC2f;;?KA_Rq-|f)2 z-eVWS==MbGgX}kr9t2a6#=U(>J3JHNo3>ztHSkp;UDR<6;1n5o0JEwBeVCRb@{Z|a zl&0MW8n!n=cs7h4VbZ6==#@nG*L+_KqYs1mV=)xkcf`;dU=37bU)Q7_fGI@N zQCQKH_!J^5{2bAGe>V@KPnq<>F#3*3XKQqSXxPaxepI9TzzCDRtkEN3rAZfPbRRfO z^a!nDF?@{To0O>>KF2?Pa)#NJ`f!CLKA33Qsh5kh-%q#+5qT{gg9;}l- zwYTZC=H_S-_?JcCw~D}BWzi^JTD^Vt;k902!p6H4fsZHxPb&gnQUt!Ltglc+w&T|| zh0!RYdi1D<_tEf=G+f{1&S|(Ve_i3^UnhQ31mg4|Amz9izgE+l&JMIp5qNSDc#47h zl!MU*q4231u8$SJhU*nrRRq3K!?o?Q>|X(mz|E>Fj!Av5KB?1MgM3y5{)2|=@d|!} zV>V!PVcci8Yz>Xj4JB*1Uh!6p(;1weJ*ft~N0ZmL_&FNhK$Bk*EgzxSvqWF?R%r@7 zGzHKcm)G#kn!LUuz69yrL~M^7O^u$Ht9bJ@wecFB$alO{ze*b30&>xu7yzQXh;4m8 zOHniHOXMg`TVEnyV>}X4x{E44y+My_rgZ#^B5)^F9xt9;kx|=8qSMhd3#DN(TF}U|2`ary54q;*4Mth8m`M9)^XU0=EABe_$`n*9-@oD zYiM|Xt(wUiuDkD47?PA|bPvG3(=*GJCB_5qOUx@P~@PA7Px9 zvC8;^le?rnI2S;2A3SC*DMD`r2&8+wpwSOYbzA#I4cD7yC*yPk9H_~^2HCwuZ0Z|K zQ#AA#SS>a0Xyztq`1=~JyUEqu(8o2DozHAH;xc4W@c*M}>sEi%aNX)H%_?n5%IZID ztG;5vSBDNqb&bA@aq2?dO?eI1-MAU2HX5thNzm-aYj|ym!{dF0%hy;lsyl0;;kvW- zjFYp6G^1S@r=HNA_0({WCO<&pK6|m&9S>s#a{x~&0?#M{UsMFXO2a2Ruv=8GfJW#w z-c$tsdJ*_h9f$e-a8lIKDt-y`bW!~hVJFdvm{n0s)Sinb!bPN$JL|M|3)NV|-P)$! z7;2`7o?--~r-*L!N-zcQ4tvn_z>7XlO&8s}(rre65dHD^u@2n*QL1Sp;^@Q7@={W5 zAQh$DtEnP*(Yb~$Melff<~5rX8;;;(p13f zEtv%A%aB5J?fMcwZ_w4iPjrn0iGOF%e?kChe1ULs0ERG<>k-e5tpe=|u7PNzQ4^`n zZxe$dJPclyRN8faF0a zRTX*+!p`dmS%dJY$|lI6WDVpa=YF83R2@xo4KEe_hu|5Es*|AgV03V}u4LC6Qj@`t zQtn;c%m)m*1_X$1cem8OXwY8BBOl$M0DXvFP3Pb>Mrx89KY71B}4 z{Y^9J>NSHd3)!fRV=IC_^krf7A2Rx(D$S6n|g-ggvSVzeg$Qy-q&xZoy zc0%3J*aVY!Q`kVeIbN#S{)F_=C_ET4Q3@>_9Bo?=skQ}os%@bMCP52xNj1zu76}iA z9jU0gAM&x}-qutKeP#&v2G1CzN7A_guU`#%1*9M?M#97~c6|bvxVNzI!*@v~6?#6n z9<;;rQZfnBA4JQ4){{c#4dKC%{UF+E%zH|C-dvTf4j{&&_AflSk_;NBz*zM0G^CQ0 zx*b-(oTH4agsibzyju(-`H)XWc7kV|9dF7wE#7E;5U6Yo2LCuM-d+a%E98;(Z#>N( zHs}a&jYsW)b!20_YS7<6`gjcCEM$*IBa53$sqYP`dXP&-)W^0G%7!=pNJxGNwY&20 zZ)ea8AeHDL$x`cngFX*gL_d=#>FEYt5po{F2=gGHk{jTefRXG@kisST!If&O=HQ=z zwmQd1`fh{%2LvXdk*1JGQiu4Y{-`0946cbtuj0m7Y0#y>OY|?i!M$wI*rG^_OOQDc z2W~IOCE)-!O$mNZq~cu);$fuoc(5fJ^q-JS^lDzTyaqi3Qjx}`E#qOFm5*{j>XYTl zM?J_PsXA~0rNnm-ISGYFaSN%>W-H-DNSTBlYw)4&mf>*&_=z6ID_I3TfGX`?5J2O2 z=ae@IJE;x(m|{rbCvYaCksiF(tB-#xBacBk(Y+eVKHOnww}xz_ad$g78C{)&tC+ag z^5Lx*Z=A~3Oh}%B!aqWfDPo(L4Eb1c7qI1QL%0oi9zl~6A>|R2QuoezhSV(ZBVBnA z_o(1`r#w27V9z7?sXRAiK8k_mv#%UOtQq7!ica?OhLUH{ok65w+|9t9hJ)xQNTt%# zkU^ynA%{w%;X)cl+Z7_yF&P4_De=NYOx(5jG%9$6tKjfJoQ|ry;3NsxfC3U;#fxgH zA>0GJQ?VB>@OF`H&~HHYRII@Vtes=f*B}>Zu?McA5z!lxr=f6pw&mfGq2lTcsYFj; z8(xEc4YH6H55kUV7;hG@BYs1w0P;!dG(=8Ek5?gOI+~ov$BsNh7#9knU*>TmSWE@f z1p-9h&qqX$LF0iKY3$>I=@`%%u2rfb^&)s@ppnb;!~`$DL0^G%qMJ9Cbhbe+hwK^H zNhcter2H(EXGoO=F%u(s72Gqi(p4c96L-H>(qt-+QB|wykb}Z*Z#_x-4Z0HKldTRA zISXywfs|P&+=2Tf&k%kH{6u%JEp55z2^L<;)n*6~eS{Z^WP?5cc}RK?K(AO{jv=DXGotb8as<8z^1vP zk*EZ@Sj5K!Vje23;K|_P-ck|GgXDQAbsJJiYG8sionlBm1X=Siuyssl8FV|yC++V! zuz*1az%w6xOoo*C*vCs@;(Q#TA3^|2?&o+)B=a;>aZQ6fq@B*j@cVqx$i0CFa=IZl z5xfh~%6r@!Sq8ll(ur=saR&_g9>_*oT!4cMaMVq0BrBh9NbLaOLnABIWZ~UaMVbT2 zKCE3dr225UH-a20WkEja)Z|?_@ChC} zDV(Y>c7V%|QbWP($1whYY(EOW!xhgpgmGQ+V}G{cnz~p_*_sW>kD>NK9y47HIt@~h z#xqIAW7up;YE2=j94U1{m-?oVlxLA`tMwwyR#Sd-paMz*zm!_H2#3xL$iq_5@!~?l zuEn;=x{J}|eN7$q^|2x4gLIT~Pve>TlR>9JHfoE1LM}8T8_QmW;)fj<*n_2B_f*Ps_cfanBXlkYX?t&oQ_etf@xe5iQm7*hCI_T?y* z4nvn?f$DXdk9wT`cs(6P%@)Ky}7NkC*wNOVxst;s6fks;JqBYB) zYePP1FX7|4Wzc=VvjXW%Zj;>xeGpPsU}rfbR|U^g=qd_YKZQPyaLcVX zr22v%Y4IWiP}qHk_rC88snd{0bUau3PlKKSu2o2@SIIGa8>;H@9C(S2=3AU3gN}xD zr121uxeBLHeaNNKQ*d>am?io_Y8Hlf7P7L?!ammg-LP;4a*!5%;Q|WxD92}l$@RkL zyOVdwgdaKLYF4 zU?i`>$u;QXV{ko#K00x&ygWQqKx@HEbS!VGLkzkxq$7>{VdgV9ymNVYuQH@MK`u!> z3Rg+$HrIWhA%(A109^r}QF08rEu<3dW9?H0{RZH#ui%!-ey_F@?yHkHYd z;97_DWj+q8HxP>c3A{w#;MyKFv^POI(fznv&KvYi$R>It`~HVPw}D*UcU|tbkZ-YG z^WD*)H$gJd%J(3Hz6q&BE8mk0x(#Fzt?IqXpnrlK-S>+Iy$SMl-)|c9P4H~ce4jPw zHjqNJ@_pN&e*!YZrNHz7~=-P)krfa_V!_eg`r{w7-ao^H_C z-$X0l%MBX)n`qVM8x0!!Tlan3pnn4KoaXxrgU0?QTKUd5XzXvImG4q~x2;+Y`H_JH1_xNn(s#p8vC1Q2d@cB4H^%ENaJU-*FBHRemc*k&kdK7b!F=*8gLg!D5Nr1ob9-4?t=zrw~7IR+IPP6ebz zO~~AY4St1NbhsgP6LLxF4qV-YeS1AYx_ZTsx&W!0@hqyoj^%5E{uFXHVS*2aH+KnKsl}kfo&*^Pj*lWe|NV4OYR8n?GbIl zg`WlQcC^)oPjHq&M?m^^wABl;NooU+te*=>omBSUl$MkfHBD9T(r*yxcb2 z@e#-(siz=E3g?sXYkX_dx?Q;Nv*39Ng)<@LC6p?~3rnsc6$O5z(f_)aFpO6rkA%l^ z!%k@*Zn6uwUPj?WsQWTD54a@zoFVlvq?6Pt$V4f8vUc!gv}}QR1;J==zd|j`yL{UY z;STPDRFZlGGEfTdMR!ng4K9$*Q(S|+hR*%q*@-b9;pHLMphrT=PBij7_$g@s0TLE` zTU)@$kJ1=|mnE6AXF_c!^%3=7&M=hV)$+!n=@7i3Pco;4cdA zMx7j98#;9g4`>f0BOO_s2gFcFe-%IBGGVuYl~p={G}Z3*;k>rX%-a z6-w~kYx8@;P2(NLUNo|W=|Kj)75qqJwCna_(BDHIm1;u)nM~rLbI#DI2Hw}uWNYs3 zTL#?-(qF^qw?H;Y^{*u3Y2GC~u5Te1X%PumUqi>QK=M8m2A;EP4B=-Xbsz4F;~-}r zT7D1mNq8lnyDQxrZuxHTypB?HAmw#*Pzfet$^BQH6q;cOpMn5N^|*)k*fj?2;2ZR< z240g_uYCqy0IvNQ+DX0vis>32+6wRzox`2c(4dz>I?;D{59?;o0mvr$6FxkQHRyJb zyB~ML^BnRfgU0VnIDpO44N?!Fk&THmvL6ho8<0hGS-u4>*DbsPFGCI)!53F3CAvW5 zL2TROyze|_2;YR1gJ|njUNv_a^nUOYtz6CT9`4Eu0isXwS@ju%o&b4Bi~dkRAw10s z!5Ks9B6ts>k!kg$?OzOf8KfV=>I{HvlB&nOmeeCW5+CFujSus$lCU4#Z(tGwJuq>< zT}R4pGj#CG{08bwg&ian%Uj~thSZ;sPg1`@)9)w0h7K*tWa})J5#5zF^(HO zj>lomKH>h?Lk`jQ_cx=Q@B)v-UFVuk&fZY*}sH>R!ZYf8T{D+DM;fZ zkBM(%pKjx$?i+@Y90-sR2QOe340;sg5j~pM{M!b75M1w|4}3`X4*K|seKhTh?(tHQ z%!YK7a_`^)vB025LN?LWxgMJh8b9YjJ~qSEcd$kA*Cmc&FO-H?DNj-hS;@PJ+b*Sknx<(Zvg(D=3+uz&lGLvpXp;fq^|%kRNNPFcP;v?KQCR#1kteWJ z9$I7Kp2iE$ABJi}@SmWQQ4Lss0;gsycU`N2;U2z&JQQ>P+C;(w4SFBAPGYMMfT5He zgltNB!Bt8ILh}2V_#oqbjAI7h2t^JGcaRS`?_TUsJLkL+T26KA_g(DcI1U zH$V!}y;-}HL1%!UXw?7}^gYv{EyzO}--r}^fDvZ!g7}&t^%ZzOL?hi3 zq>(cQji22m`V6Tl5dA(`ki z9NKh)#xaI84x5Zq_&A_BpXW{(QfDBaq~3&4J(>8eZw0H_1#blhZOFPcsY5sZey%7Ob!w1zeN($?7Vr5(2CB7)Pwe-XiM5TFDT%e>UM1F_Kvi+^U6T9(?2KQh6L4ZI5{(m4m83L3Xfjmljg6q01>%A`a zJMmCb@Dm1fWdG0`QYAm%R`L97tE5oU6a17c+aLIuR9=ONx3G8()=@GHPErC;a0^@M zS;+krOMij5ExI`!ad6*l(WuAmyX1JPI7Oxc6DR(ZjFM#!<7#5`;Nx@y1Fr@-w{gg; zZ>9Gd=Bh$I(Mo%0A#KlZ7+V^o{Dx9K_PxN6>H&VF@qx-Z6n3kxq|Y{7Jq>weM7cU> z7^w!X0x@f%s(0;2LiH|*S$;0yXrbZM9`|xg!wg(~b^Zhce}&~UAg2KD%9b##n(;6< z<4QwKeLLD316N-X{~UOJ$I5Lp%sotY@xt>p(K#9&iSSXr{l)V&(U%OmIX`a`(fEe#>T4bT~~|G+AAGw80=wRrW1T%v~<^sop?j{)&dq#rWqo_r9R z3duyzGU#Qzhdc(UNc$dVTFs=vR0+IR8~7Z?vkg3x@m&VKf$=j2{xahiCGNAo<&lQ$ zF(!U66s|CS+rSGLFP>({8?;lYtSq|>yb&LfuCjksDWQ#{FH&`Gyb`OtFNs68FBI-Y`W&z! zop6~QSJDVtX4I#1Dl@K{xD?CRHgFf?%?-R9&z8;x?k1cDL0^MVf68LGfj8%xO*C+| zfJ{?N68akUPY;;m~f;$eeOeY569%@DPk`p*3AnjvbT&-lo^N5iR7YT-Vt z;Uqtr9~`|M!fV+#;%enS6(Ss@u#Oe*H;05X)_u{Szh(L>$R+x^K~JfRCh+sj8T;UxbTZWCWPaM>#=Ml{TIj&ZpygMB83`6Sg zEG#zgQ|utiu%qlh7lz|RR1UU7pcwYbF2i1eOZtD^z#B9EPMAIX3!1#?pEhvi=5r0F z23*JWyCU(>`lJ4`!}qM9TDCJgzNHzWhEk5jbQv%WAH4yiG@Kmgvg7iMOZ!dnZt&IDuE5BdOS^|^>e9D!)X$$-?G|l;OdWF1PpvQ*ZXY^r&XmB{@^vn z@evcM;wjA}b6!&*$LjAgTrzO=_a45}>`+79;)c2bIaJR-47yuG>8A7yPB9_1g^ZWe zaO#h#6dzu-HJs!xvwRB!uh+;HceIswXvV11ZC69#IacVY;pA8ycZX;=j(#RdcR}Q_bo$#{ckI2(D7NEIwh-W0+nAUZOV`^s`KF zgmk2RFB|l?Ouwq(6pT9hzMc zJbPv`5hIBpp3Qiofvdl`&=y>!u^!zGx+&DGG{$9OdZKgM`{13%9= zeuUyKoZ$nQRtvQ{@Zwu2q+WWb?(hNL@@dXBcgg1&O4E!YHYYkleA)BoduNNFA z-*VV{3$XQPfGF|$0cq9=V zm6@#2$iO!<-dDrP&OEj=Qp2fXUt;-5VK^QL-eY1R_{(8~tkn2{Y>Sfh8m@QX77Zsq zAF;WBfnQ_%T@9!6+zm30*T)i<4KiF}_WxHj1>Nxv8cvRXW(T(oyc~CU)LdzlMj$y( zpbTDa4Id?MNF`BABXq|}8cvR5*g<;(Z_0Ro4JXIyuX~Kr@UhaR{1f7nH9~hhQ^U!z z`tE^620nxxuZ2_>_UKlPen|PjbdQGXZr;>zax;?6oiy-A89#5}^BMnI;-QW0aVBmU z3ac3}%VU>1h8%BTyo!Op$arhU)k=J$7%Jh_BMfiraCG2XnZaQMZg{*nJ!s$~$va+Y z5Gao;zR#ei@=mnY!29x@Lymzz!|pGDs{;1N&jvlDh4dCRU#6-$55~&!-3DI1l*HQ^ z_!W=D`x$sDAMmC~Jak8~rlwTz8wxRe;9qCp#kt)B2L1`3nNJ${pnB4NUKox?T5n59 z6oe5D$1Cv?FS9_VswLFlAgyWOvl~je&IVqKTVj-f4{M6@z3^w6LClGhhMq9+W84y( z4SW?vhS!^rUlDusl0om{f$*z=FXlH2>gzaF{jPAsHnbmyg+7*%R$00kXy8{l+$j>5 zdpPaYCHOF~-cV>!MH<=*fl3(f8H4W0Bk;O`M>m&h(FP_QqHD)OI|)8D>cS0j!oXX)q}*2qK9klpyej%-Dl34soW(V+ z7e+W7zwlfcY~YV`1I{t<8T>+Kvw29swrBXEB_C}l`-xB diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm index c0ac83cd..72b2b675 100644 --- a/scripts/Transaction/Transaction.pm +++ b/scripts/Transaction/Transaction.pm @@ -1,6 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use bigint; use CBitcoin::Script; use CBitcoin::TransactionInput; use CBitcoin::TransactionOutput; @@ -18,9 +19,14 @@ DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -=head2 + + +=pod + ---++ constructors + =cut + sub new { my $package = shift; my $this = bless({}, $package); @@ -46,8 +52,10 @@ sub new { return $this; } -=head2 +=pod + ---++ variable accessors + =cut sub lockTime { @@ -103,6 +111,8 @@ sub serializeddata { } # this serializes the data we have sub serializeData { + + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -132,6 +142,9 @@ sub serializeData { } # TODO: change the name of this function!!! it does the opposite of its name sub deserializeData { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -150,12 +163,18 @@ sub deserializeData { } # signatures.... -=head3 +=pod + ---+++ sign($index,$cbhdkey) + Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! + =cut sub sign_single_input { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; my ($index,$keypair) = (shift,shift); @@ -180,13 +199,13 @@ sub sign_single_input { # find out what type of script we are dealing with # p2sh, pubkey, keyhash, multisig my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); - + warn "My script:".$prevOutInput->script()."\n"; my $data; if($scripttype eq 'keyhash'){ $data = CBitcoin::Transaction::sign_tx_pubkeyhash( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); @@ -196,7 +215,7 @@ sub sign_single_input { $data = CBitcoin::Transaction::sign_tx_multisig( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index 4fd875e4..d861ea26 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -217,9 +217,6 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); - - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { @@ -278,8 +275,6 @@ char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScri - printf("%d:We are here.\n",4); - // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so index ba8fccafdfc5f85ad7acdfa0d9aa25b7bf610c34..2e1bd732fc52d834fd92ce270acf9c7b0d101618 100755 GIT binary patch delta 37365 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 delta 38019 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 CDVrSt diff --git a/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm b/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm index c0ac83cd..72b2b675 100644 --- a/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm +++ b/scripts/Transaction/blib/lib/CBitcoin/Transaction.pm @@ -1,6 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use bigint; use CBitcoin::Script; use CBitcoin::TransactionInput; use CBitcoin::TransactionOutput; @@ -18,9 +19,14 @@ DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -=head2 + + +=pod + ---++ constructors + =cut + sub new { my $package = shift; my $this = bless({}, $package); @@ -46,8 +52,10 @@ sub new { return $this; } -=head2 +=pod + ---++ variable accessors + =cut sub lockTime { @@ -103,6 +111,8 @@ sub serializeddata { } # this serializes the data we have sub serializeData { + + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -132,6 +142,9 @@ sub serializeData { } # TODO: change the name of this function!!! it does the opposite of its name sub deserializeData { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -150,12 +163,18 @@ sub deserializeData { } # signatures.... -=head3 +=pod + ---+++ sign($index,$cbhdkey) + Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! + =cut sub sign_single_input { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; my ($index,$keypair) = (shift,shift); @@ -180,13 +199,13 @@ sub sign_single_input { # find out what type of script we are dealing with # p2sh, pubkey, keyhash, multisig my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); - + warn "My script:".$prevOutInput->script()."\n"; my $data; if($scripttype eq 'keyhash'){ $data = CBitcoin::Transaction::sign_tx_pubkeyhash( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); @@ -196,7 +215,7 @@ sub sign_single_input { $data = CBitcoin::Transaction::sign_tx_multisig( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); diff --git a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm index 5dfedf3e..7af6d141 100644 --- a/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm +++ b/scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm @@ -124,17 +124,18 @@ .\" ======================================================================== .\" .IX Title "Transaction 3" -.TH Transaction 3 "2014-07-01" "perl v5.14.2" "User Contributed Perl Documentation" +.TH Transaction 3 "2014-10-04" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh -.SS " \-\-\-++ constructors" -.IX Subsection " ---++ constructors" -.SS " \-\-\-++ variable accessors" -.IX Subsection " ---++ variable accessors" -\fI \-\-\-+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!\fR -.IX Subsection " ---+++ sign($index,$cbhdkey) Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!!" +\&\-\-\-++ constructors +.PP +\&\-\-\-++ variable accessors +.PP +\&\-\-\-+++ sign($index,$cbhdkey) +.PP +Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! .SS " \-\-\-++ methods" .IX Subsection " ---++ methods" \fI \-\-\-+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables.\fR diff --git a/scripts/Transaction/old-config/Makefile.old b/scripts/Transaction/old-config/Makefile.old index 347ffbd8..255dc900 100644 --- a/scripts/Transaction/old-config/Makefile.old +++ b/scripts/Transaction/old-config/Makefile.old @@ -16,7 +16,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Transaction] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -120,7 +120,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index c0ac83cd..72b2b675 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -1,6 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use bigint; use CBitcoin::Script; use CBitcoin::TransactionInput; use CBitcoin::TransactionOutput; @@ -18,9 +19,14 @@ DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -=head2 + + +=pod + ---++ constructors + =cut + sub new { my $package = shift; my $this = bless({}, $package); @@ -46,8 +52,10 @@ sub new { return $this; } -=head2 +=pod + ---++ variable accessors + =cut sub lockTime { @@ -103,6 +111,8 @@ sub serializeddata { } # this serializes the data we have sub serializeData { + + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -132,6 +142,9 @@ sub serializeData { } # TODO: change the name of this function!!! it does the opposite of its name sub deserializeData { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -150,12 +163,18 @@ sub deserializeData { } # signatures.... -=head3 +=pod + ---+++ sign($index,$cbhdkey) + Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! + =cut sub sign_single_input { + + use bigint; + my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; my ($index,$keypair) = (shift,shift); @@ -180,13 +199,13 @@ sub sign_single_input { # find out what type of script we are dealing with # p2sh, pubkey, keyhash, multisig my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); - + warn "My script:".$prevOutInput->script()."\n"; my $data; if($scripttype eq 'keyhash'){ $data = CBitcoin::Transaction::sign_tx_pubkeyhash( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); @@ -196,7 +215,7 @@ sub sign_single_input { $data = CBitcoin::Transaction::sign_tx_multisig( $this->serializeddata() ,$keypair->serializedkeypair() - ,'prevOutSubScriptString' + ,$prevOutInput->script() ,$index ,'CB_SIGHASH_ALL' ); diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL index 2a1aeb72..8311d174 100644 --- a/scripts/TransactionInput/Makefile.PL +++ b/scripts/TransactionInput/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' ,'CC' => 'c99' } diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old index 591e9ea5..cf961ebb 100644 --- a/scripts/TransactionInput/Makefile.old +++ b/scripts/TransactionInput/Makefile.old @@ -16,7 +16,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::TransactionInput] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -120,7 +120,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -166,7 +166,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = TransactionInput.pm +MAN3PODS = # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -486,10 +486,8 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all \ - TransactionInput.pm - $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ - TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) +manifypods : pure_all + $(NOECHO) $(NOOP) diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm index e222c11e..0cae0b48 100644 --- a/scripts/TransactionInput/TransactionInput.pm +++ b/scripts/TransactionInput/TransactionInput.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionInput; + + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,150 +16,156 @@ DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VE sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking +{ ## start of bigint block + use bigint; -sub new { - my $package = shift; - my $this = bless({}, $package); + sub new { + my $package = shift; + my $this = bless({}, $package); - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } - return $this; -} - -sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; + return $this; } -} - -sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; + + sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; return $x; } else{ - return undef; + return $this->{prevOutHash}; } } - else{ - return $this->{prevOutIndex}; - } -} - -sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; + + sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } } - else{ - return $this->{script}; - } -} - - -sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; + + sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } } - else{ - return $this->{sequence}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; + + + sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; + + sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } } - else{ - return 0; + + + sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } } -} -=head2 +=pod + ---++ importSerializedData + Call this when you want the serialized data to be split up, parsed and assigned to other private variables. + =cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; + my $x = shift; - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } } -} +} # end of bigint block 1; diff --git a/scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so b/scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so index d4f801b268e1d84c3d43a8cc91e09236d6a2333b..7fc8950c7817d93f3faed017d0683a28c1495704 100755 GIT binary patch delta 7915 zcmZ`;3v^V~6}|UOg2@m<2q7~}0`n4*$Y3%=7)E`X3e-=)il~4#6dHdJ5j84c?NTO{ zZ$xb1ii7bNty00RuBlV1?P?`fMf|O1Q9l^lnqom7+SMpxqZQI~?mKrl33}I>IdAWC z?zx|HfA8H_w`G0&i>$U_VPmn-X{skg<5!y|#HYO(@t~1H*qV^=KLmbVr0G43>Au>8dMn<++o>9xD_b(|7R(arrRE}I!)b_=F{nx*0<-cs-@%8M*?~nZ8 z!My$H-^w3ZmMBUWW*xK=y-j_@#-vb-O*&<)Q0yg|I}L@|ppfL#}Gc^*$P#hVP}i_0`zg z((nd1ReL;60{ofOTx~-{AR&3We)9f)!ZMu7_!h=PO*3gdcdPi1_R@%4-!$N1Td$K}kVD;YmRnEnTCBU2O_YmiNhAIbP;#`9(JCyY0%3ubF! zyqV0p{Pj#Rg%!}oc$#@yyOr^@TWG$6@spXKrx{O+jMk=r*X_pvF^Oe(o@EFzzLW72 z8NY||wT$m#d@1Aio!}GVG^Xe|p%8r99Adm#;W1k; zJ2burG0sG{P2;-}po5mJm9O!O~#$N{j<2ZJkHU1oN0tckqsENZ! zj7B_LThy=VTxRum>Cx6^QvJs4 z7RXS)vF=t7bL%60^{of$SM}xJZY_8TGQK|a)cRF*&w&nnwjNlPSHGd|Fx27D7--X>Ciq*hJG-Y?)dX$1I6W)) zfRsNebGVyPhXYj8BYUirD@>QgMc8L(z%@JaXoaiFtPf99MWR5fdsPaaQ^`U0wvKTl`%9g&xc*kn?i3qGqn1^PT|eo(!$ zChBh_^~#_cwzhu!B7$wuk{2^><_hN~V+U^HcLdd4Yr}qXa(^VKwymwVT7#;0ZEp9s;^php3 zZ{1%bRW!W2!L>7!gC8;wyJ58YV!b`(r;KwH2PqC-TD*plPDZnaDtFR!D7V zt-kO|&MhKfFNMZ7V1wsacf$Xr)=H@6jm*?p!$7Ppq>i^1CthKkbAW??6IcL_onu^+ zNAnsh7%L^P0?b}%VCBn6!l_}F&N&RkW_duVdrC^LV+v;(1M$@*>h*hS6A$sypJG5b zA5x5TXSp2obFi6veUiX~*k#aNcVTzs`nFc!s(~r**RW!pE*~2Yi^zOAau}>6=Dlxs ziCVkiEbI3r>ctI#vfboK9)uAK1LtRu!|Iaeb$RI+_0@)Lky={kbRFk#a18^o<)v!R zy>=wQIOl#29%CSuE>$Bo7GL-$&b>hZ$HG$!SS<8d*vm|v!wkfZma3aJ7ME7yZVgG- z^L!329-}%oRwT?RP#gG}fpA>b!Ojs5a#=}E1IrX&N?=eNdMdqYU3pfjJoK)dgl(xJrm|^|3Yl+Tv&7FinCiuAwRzy9GxR)fDh}SG~XVo!|JX3wnchb zO`IY+#_EQRV<0wVta|w8_N;Rm=gi^Y#|*@7Bd~s<5VIO}opjgV#f>(MRsOcpS(_Q> z>|h|alfbzU#%Ht_oYKNMz>J)1JUT(rRUQ^r%i1cMI=R8?3v^|nyg*b0> z@DT&CqhYmpvmNPYoKs|Do2k`dTR-bAh)uRtYIAXE9pjvf8Hmld)&9-p)0S{fihX<8SB2EF0*jh7fNZq(fz7iHQk?zG?SGcH}`Y!3kG64 z%ha?j_WWIpbKd6QLk40;2t=dL;#{Ds7k)5XC- z4vuk90Cky?yQ|3=B+D<;haU5IxLruQzN#96UQ

=D7+|4P}3D`5e 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'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } - return $this; -} - -sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; + return $this; } -} - -sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; + + sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; return $x; } else{ - return undef; + return $this->{prevOutHash}; } } - else{ - return $this->{prevOutIndex}; - } -} - -sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; + + sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } } - else{ - return $this->{script}; - } -} - - -sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; + + sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } } - else{ - return $this->{sequence}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; + + + sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; + + sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } } - else{ - return 0; + + + sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } } -} -=head2 +=pod + ---++ importSerializedData + Call this when you want the serialized data to be split up, parsed and assigned to other private variables. + =cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; + my $x = shift; - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } } -} +} # end of bigint block 1; diff --git a/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm b/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm index fdb1f942..58e44622 100644 --- a/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm +++ b/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm @@ -124,10 +124,11 @@ .\" ======================================================================== .\" .IX Title "TransactionInput 3" -.TH TransactionInput 3 "2014-06-28" "perl v5.14.2" "User Contributed Perl Documentation" +.TH TransactionInput 3 "2014-10-04" "perl v5.14.2" "User Contributed Perl Documentation" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh -.SS " \-\-\-++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." -.IX Subsection " ---++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." +\&\-\-\-++ importSerializedData +.PP +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. diff --git a/scripts/TransactionInput/old-config/Makefile.old b/scripts/TransactionInput/old-config/Makefile.old index 591e9ea5..cf961ebb 100644 --- a/scripts/TransactionInput/old-config/Makefile.old +++ b/scripts/TransactionInput/old-config/Makefile.old @@ -16,7 +16,7 @@ # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::TransactionInput] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -120,7 +120,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -166,7 +166,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = TransactionInput.pm +MAN3PODS = # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -486,10 +486,8 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all \ - TransactionInput.pm - $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ - TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) +manifypods : pure_all + $(NOECHO) $(NOOP) diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index 56c67caf..0cae0b48 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionInput; + + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,150 +16,156 @@ DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VE sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking +{ ## start of bigint block + use bigint; -sub new { - my $package = shift; - my $this = bless({}, $package); + sub new { + my $package = shift; + my $this = bless({}, $package); - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } - return $this; -} - -sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; + return $this; } -} - -sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; + + sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; return $x; } else{ - return undef; + return $this->{prevOutHash}; } } - else{ - return $this->{prevOutIndex}; - } -} - -sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; + + sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } } - else{ - return $this->{script}; - } -} - - -sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; + + sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } } - else{ - return $this->{sequence}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; + + + sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; + + sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } } - else{ - return 0; + + + sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } } -} -=head2 +=pod + ---++ importSerializedData + Call this when you want the serialized data to be split up, parsed and assigned to other private variables. + =cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; + my $x = shift; - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } } -} +} # end of bigint block 1; diff --git a/scripts/tx.pm b/scripts/tx.pm index 804f5a58..4a913ed3 100644 --- a/scripts/tx.pm +++ b/scripts/tx.pm @@ -51,7 +51,7 @@ my $txdata = $tx->sign_single_input(0,$parentkey); print "Final:$txdata\n"; #$data = $tx->serializeddata(); #print "Signed Transaction Data:$data\n"; - +__END__ my ($m, $n) = (2,3); print "Let's do a multisig transaction of ($m, $n)\n"; @@ -78,7 +78,7 @@ $tx->addOutput($output); $data = $tx->serializeData(); $data = $tx->serializeddata(); print "Unsigned Transaction Data:$data\n"; -__END__ + # sign with enough keys to validate the transaction foreach my $i (0..($m-1)){ my $childkey = $parentkey->deriveChild(1,$i+1); diff --git a/scripts/txinput.pm b/scripts/txinput.pm index 0d49a7d5..866c3201 100644 --- a/scripts/txinput.pm +++ b/scripts/txinput.pm @@ -6,37 +6,35 @@ use CBitcoin::TransactionInput; print "hello\n"; - -my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +my $address = "1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"; +print "Address:$address\n"; +my $script = CBitcoin::Script::address_to_script($address); print "Script:$script\n"; - -#my $txinput = new CBitcoin::TransactionInput; - -my $x = { - 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' - ,'prevOutIndex' => 10 - ,'sequence' => 33 #hex('0xFFFFFFFF') - ,'script' => 'OP_DUP OP_HASH160 0xa1a2fea3e780c2d3f54acf41ea08ab580a2a620e OP_EQUALVERIFY OP_CHECKSIG' -}; -#my $txinput = CBitcoin::TransactionInput::->new($x); -$x->{'data'} = CBitcoin::TransactionInput::create_txinput_obj( - $x->{'script'} - ,$x->{'sequence'} - ,$x->{'prevOutHash'} - ,$x->{'prevOutIndex'} -); -my $y = ''; -$y = CBitcoin::TransactionInput::get_prevOutHash_from_obj($x->{'data'}); -print "PrevOutHash:$y\n"; -$y = CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x->{'data'}); -print "prevOutIndex:$y\n"; -$y = CBitcoin::TransactionInput::get_sequence_from_obj($x->{'data'}); -print "sequence:$y\n"; -print "Data:".$x->{'data'}."\n"; -$y = CBitcoin::TransactionInput::get_script_from_obj($x->{'data'}); -print "Script:$y\n"; - - - - - +$address = CBitcoin::Script::script_to_address($script); +print "Address:$address\n"; +for () { + next if /^#/; + chomp; + eval { + my ($address,$blah) = split(',',$_); + print "Address:[$address]\n"; + my $script = CBitcoin::Script::address_to_script($address); + my $newaddress = CBitcoin::Script::script_to_address($script); + my $bool = 0; + $bool = 1 if $address eq $newaddress; + print "Test:($script|$bool)\n"; + }; + if($@){ warn "Error:$@";} +} +__DATA__ +# The following keys were created using javascript code on bitaddress.org +16PRgUZvCneM7AYJ94TaoGE4rMQnRdqqt4,5JkYWudPXkXHkmayfUz52WsweFpY7saT4V9vh4ZNtWgFLLwNgej +1KDxAxej4NZMQtao9xZGiadbsqxcKJt9Ng,5J4G4vaBCiAF881AMEEyc8uC2EHgLfCFP4BL97EvD5vnH99yC6p +1PnA88ck7hGSsSqpPXhaVbWL3suWXEqfsF,5KKGiz5ViCpSXzWCm9ff48g5AdK54FR3w1ByrhQDb1U6kgjmgr2 +12jXM28Awqgm2NPgiD6EVjZmih66U5mUAt,5JfTp8uzBFzcJWhjrb7wJfevehwjT6c3WCBcYivpoRcjaSAgHtZ +1BV1GXQmBKF6v6CqUjH6y95KNXqtCoLNWH,5JGcHNTEqrYGVuE2sRw2Ys26xY51ypm4c1dnfZGyw8naAUjkdGM +1AsCoc5UVkHcfFRXUA2YtDJbse7k6Ws4Pz,5J3fMYfP7knUYk67eETrQcby9vhUHjdH9mz5Veag4TvuhX9JMnF +1MNJYvW6AmRhsrr9ELo5A4mRw2P4yafVZQ,5JEwVA4ek7Kcm23oPKaJEx6dj9G9UcM6DCybSb3hhaG8875L3hb +1HCMAqVqJEYNq444ecHeYJ235soup8wUKb,5KVZt4CfaBhPHaJ9Bw9b9zoM7TfnPBTwz3SyYBcn2fEdwHfrzJF +1tkf9nKFNqqD5FNyxU6C4CFBtk8dQFFLw,5JQvrDNPZeLN78jYPpscv3x15pgqDDdkMBwjzva3PMCBagop2yA +1NwuhznLyRaQ7e3hWpFveMVimsH5FfdhLa,5K2dPvJfj2MUvfi5zGxPvUupqPVR2o6PqEtsHzfVPregUoYKUBE From 4430e53ab3863d540ad7e1ab60844ec38b8eae9e Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sat, 4 Oct 2014 20:39:05 +0900 Subject: [PATCH 035/127] TxInput working --- scripts/TransactionInput/Makefile.old | 8 +- scripts/TransactionInput/TransactionInput.pm | 193 +++++------------- .../blib/lib/CBitcoin/TransactionInput.pm | 193 +++++------------- .../blib/man3/CBitcoin::TransactionInput.3pm | 134 ------------ .../TransactionInput/old-config/Makefile.old | 8 +- .../old-config/TransactionInput.pm | 193 +++++------------- .../old-config/TransactionOutput.pm | 111 ++-------- scripts/txinput.pm | 57 ++++-- 8 files changed, 218 insertions(+), 679 deletions(-) delete mode 100644 scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old index cf961ebb..e1e5c3af 100644 --- a/scripts/TransactionInput/Makefile.old +++ b/scripts/TransactionInput/Makefile.old @@ -166,7 +166,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = TransactionInput.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -486,8 +486,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + TransactionInput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm index 0cae0b48..ca690d84 100644 --- a/scripts/TransactionInput/TransactionInput.pm +++ b/scripts/TransactionInput/TransactionInput.pm @@ -1,7 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionInput; - +use CBitcoin::Script; require Exporter; *import = \&Exporter::import; @@ -16,156 +16,65 @@ DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VE sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -{ ## start of bigint block + +sub new { use bigint; + my $package = shift; + my $this = bless({}, $package); - sub new { - my $package = shift; - my $this = bless({}, $package); - - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } - - + my $x = shift; + unless(ref($x) eq 'HASH'){ return $this; } - - sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; - } - } - - sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; - return $x; - } - else{ - return undef; - } - } - else{ - return $this->{prevOutIndex}; - } - } - - sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } - } - - - sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; - } - else{ - return $this->{sequence}; - } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + } - - sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } + elsif( + defined $x->{'prevOutHash'} && $x->{'prevOutHash'} =~ m/^([0-9a-fA-F]+)$/ + && defined $x->{'prevOutIndex'} && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + my $sequence = hex('0xFFFFFFFF') unless defined $x->{'sequence'}; + # call this function to validate the data, and get serialized data back + #char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + $this->{'data'} = create_txinput_obj( + $x->{'script'} + ,$sequence + ,$x->{'prevOutHash'} + ,$x->{'prevOutIndex'} + ); + $this->script; + $this->prevOutHash; + $this->prevOutIndex; } + return $this; +} - sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } - } -=pod - ----++ importSerializedData +sub script { + my $this = shift; + # this is a C function + return get_script_from_obj($this->{'data'}); +} -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +sub prevOutHash { + use bigint; + my $this = shift; + # this is a C function + return get_prevOutHash_from_obj($this->{'data'}); +} -=cut - sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - - my $x = shift; - - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } - } +sub prevOutIndex { + use bigint; + my $this = shift; + return get_prevOutIndex_from_obj($this->{'data'}); +} +sub sequence { + use bigint; + my $this = shift; + return get_sequence_from_obj($this->{'data'}); +} -} # end of bigint block 1; diff --git a/scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm b/scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm index 0cae0b48..ca690d84 100644 --- a/scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm +++ b/scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm @@ -1,7 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionInput; - +use CBitcoin::Script; require Exporter; *import = \&Exporter::import; @@ -16,156 +16,65 @@ DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VE sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -{ ## start of bigint block + +sub new { use bigint; + my $package = shift; + my $this = bless({}, $package); - sub new { - my $package = shift; - my $this = bless({}, $package); - - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } - - + my $x = shift; + unless(ref($x) eq 'HASH'){ return $this; } - - sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; - } - } - - sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; - return $x; - } - else{ - return undef; - } - } - else{ - return $this->{prevOutIndex}; - } - } - - sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } - } - - - sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; - } - else{ - return $this->{sequence}; - } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + } - - sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } + elsif( + defined $x->{'prevOutHash'} && $x->{'prevOutHash'} =~ m/^([0-9a-fA-F]+)$/ + && defined $x->{'prevOutIndex'} && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + my $sequence = hex('0xFFFFFFFF') unless defined $x->{'sequence'}; + # call this function to validate the data, and get serialized data back + #char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + $this->{'data'} = create_txinput_obj( + $x->{'script'} + ,$sequence + ,$x->{'prevOutHash'} + ,$x->{'prevOutIndex'} + ); + $this->script; + $this->prevOutHash; + $this->prevOutIndex; } + return $this; +} - sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } - } -=pod - ----++ importSerializedData +sub script { + my $this = shift; + # this is a C function + return get_script_from_obj($this->{'data'}); +} -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +sub prevOutHash { + use bigint; + my $this = shift; + # this is a C function + return get_prevOutHash_from_obj($this->{'data'}); +} -=cut - sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - - my $x = shift; - - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } - } +sub prevOutIndex { + use bigint; + my $this = shift; + return get_prevOutIndex_from_obj($this->{'data'}); +} +sub sequence { + use bigint; + my $this = shift; + return get_sequence_from_obj($this->{'data'}); +} -} # end of bigint block 1; diff --git a/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm b/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm deleted file mode 100644 index 58e44622..00000000 --- a/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm +++ /dev/null @@ -1,134 +0,0 @@ -.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "TransactionInput 3" -.TH TransactionInput 3 "2014-10-04" "perl v5.14.2" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -\&\-\-\-++ importSerializedData -.PP -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. diff --git a/scripts/TransactionInput/old-config/Makefile.old b/scripts/TransactionInput/old-config/Makefile.old index cf961ebb..e1e5c3af 100644 --- a/scripts/TransactionInput/old-config/Makefile.old +++ b/scripts/TransactionInput/old-config/Makefile.old @@ -166,7 +166,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = TransactionInput.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -486,8 +486,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + TransactionInput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index 0cae0b48..ca690d84 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -1,7 +1,7 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionInput; - +use CBitcoin::Script; require Exporter; *import = \&Exporter::import; @@ -16,156 +16,65 @@ DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VE sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking -{ ## start of bigint block + +sub new { use bigint; + my $package = shift; + my $this = bless({}, $package); - sub new { - my $package = shift; - my $this = bless({}, $package); - - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } - - + my $x = shift; + unless(ref($x) eq 'HASH'){ return $this; } - - sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; - } - } - - sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; - return $x; - } - else{ - return undef; - } - } - else{ - return $this->{prevOutIndex}; - } - } - - sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } - } - - - sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; - } - else{ - return $this->{sequence}; - } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + } - - sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } + elsif( + defined $x->{'prevOutHash'} && $x->{'prevOutHash'} =~ m/^([0-9a-fA-F]+)$/ + && defined $x->{'prevOutIndex'} && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + my $sequence = hex('0xFFFFFFFF') unless defined $x->{'sequence'}; + # call this function to validate the data, and get serialized data back + #char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + $this->{'data'} = create_txinput_obj( + $x->{'script'} + ,$sequence + ,$x->{'prevOutHash'} + ,$x->{'prevOutIndex'} + ); + $this->script; + $this->prevOutHash; + $this->prevOutIndex; } + return $this; +} - sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } - } -=pod - ----++ importSerializedData +sub script { + my $this = shift; + # this is a C function + return get_script_from_obj($this->{'data'}); +} -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +sub prevOutHash { + use bigint; + my $this = shift; + # this is a C function + return get_prevOutHash_from_obj($this->{'data'}); +} -=cut - sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - - my $x = shift; - - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } - } +sub prevOutIndex { + use bigint; + my $this = shift; + return get_prevOutIndex_from_obj($this->{'data'}); +} +sub sequence { + use bigint; + my $this = shift; + return get_sequence_from_obj($this->{'data'}); +} -} # end of bigint block 1; diff --git a/scripts/TransactionOutput/old-config/TransactionOutput.pm b/scripts/TransactionOutput/old-config/TransactionOutput.pm index 6bf10309..5125aa57 100644 --- a/scripts/TransactionOutput/old-config/TransactionOutput.pm +++ b/scripts/TransactionOutput/old-config/TransactionOutput.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::TransactionOutput; +use CBitcoin::Script; + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -16,6 +18,7 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking sub new { + use bigint; my $package = shift; my $this = bless({}, $package); @@ -23,112 +26,34 @@ sub new { unless(ref($x) eq 'HASH'){ return $this; } - if(defined $x->{'data'}){ + if(defined $x->{'data'} && $x->{'data'} =~ m/^([0-9a-zA-Z]+)$/){ # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif($x->{'value'} =~ m/[0-9]+/ - && defined $x->{'script'} + $this->data($x->{'data'}); + # check if we can set up script and value to make sure that the data is valid + $this->script; + $this->value; + } + elsif( + defined $x->{'value'} && $x->{'value'} =~ m/^[0-9]+$/ + && defined $x->{'script'} && $x->{'script'} =~ m/^$/ ){ - # we have the data, let's get the serialized data - $this->value($x->{'value'}); - $this->script($x->{'script'}); # call this function to validate the data, and get serialized data back - $this->deserializeData(); + # this is a C function + $this->{'data'} = create_txoutput_obj($x->{'script'},$x->{'value'}); } - - + return $this; } - sub script { my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # TODO: validation of some sort - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } + return get_script_from_obj($this->{'data'}); } - sub value { my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - if($x =~ m/\d+/){ - $this->{value} = $x; - return $x; - } - else{ - return undef; - } - - } - else{ - return $this->{value}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - - $this->serializeddata( - CBitcoin::TransactionOutput::create_txoutput_obj( - $this->script(), - $this->value() - ) - ); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } -} -=head2 ----++ importSerializedData -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. -=cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - - my $x = shift; - - if( - $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x) ) - && $this->value(CBitcoin::TransactionOutput::get_value_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } + # this is a C function + return get_value_from_obj($this->{'data'}); } 1; diff --git a/scripts/txinput.pm b/scripts/txinput.pm index 866c3201..b6786e4a 100644 --- a/scripts/txinput.pm +++ b/scripts/txinput.pm @@ -4,37 +4,54 @@ use Digest::SHA qw(sha256); use CBitcoin::Script; use CBitcoin::TransactionInput; + use CBitcoin::TransactionOutput; print "hello\n"; -my $address = "1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"; -print "Address:$address\n"; -my $script = CBitcoin::Script::address_to_script($address); -print "Script:$script\n"; -$address = CBitcoin::Script::script_to_address($script); -print "Address:$address\n"; for () { next if /^#/; chomp; eval { - my ($address,$blah) = split(',',$_); - print "Address:[$address]\n"; + use bigint; + my ($address,$value,$prevOutHash,$prevOutIndex) = split(',',$_); + my $script = CBitcoin::Script::address_to_script($address); - my $newaddress = CBitcoin::Script::script_to_address($script); + #my $newaddress = CBitcoin::Script::script_to_address($script); + #my $out = CBitcoin::TransactionOutput->new({'script' => $script, 'value' => $value}); + my $in = CBitcoin::TransactionInput->new({ + 'prevOutHash' => $prevOutHash + ,'prevOutIndex' => $prevOutIndex + ,'script' => $script + }); + + my $bool = 0; - $bool = 1 if $address eq $newaddress; + if( + $prevOutHash eq $in->prevOutHash() + && $prevOutIndex eq $in->prevOutIndex() + && $script eq $in->script() + ){ + $bool = 1; + } + + +# $bool = 1 if $script eq $out->script() && $value eq $out->value() && $address eq CBitcoin::Script::script_to_address($out->script()); + print "Test:($script|$bool)\n"; }; if($@){ warn "Error:$@";} } + + + __DATA__ # The following keys were created using javascript code on bitaddress.org -16PRgUZvCneM7AYJ94TaoGE4rMQnRdqqt4,5JkYWudPXkXHkmayfUz52WsweFpY7saT4V9vh4ZNtWgFLLwNgej -1KDxAxej4NZMQtao9xZGiadbsqxcKJt9Ng,5J4G4vaBCiAF881AMEEyc8uC2EHgLfCFP4BL97EvD5vnH99yC6p -1PnA88ck7hGSsSqpPXhaVbWL3suWXEqfsF,5KKGiz5ViCpSXzWCm9ff48g5AdK54FR3w1ByrhQDb1U6kgjmgr2 -12jXM28Awqgm2NPgiD6EVjZmih66U5mUAt,5JfTp8uzBFzcJWhjrb7wJfevehwjT6c3WCBcYivpoRcjaSAgHtZ -1BV1GXQmBKF6v6CqUjH6y95KNXqtCoLNWH,5JGcHNTEqrYGVuE2sRw2Ys26xY51ypm4c1dnfZGyw8naAUjkdGM -1AsCoc5UVkHcfFRXUA2YtDJbse7k6Ws4Pz,5J3fMYfP7knUYk67eETrQcby9vhUHjdH9mz5Veag4TvuhX9JMnF -1MNJYvW6AmRhsrr9ELo5A4mRw2P4yafVZQ,5JEwVA4ek7Kcm23oPKaJEx6dj9G9UcM6DCybSb3hhaG8875L3hb -1HCMAqVqJEYNq444ecHeYJ235soup8wUKb,5KVZt4CfaBhPHaJ9Bw9b9zoM7TfnPBTwz3SyYBcn2fEdwHfrzJF -1tkf9nKFNqqD5FNyxU6C4CFBtk8dQFFLw,5JQvrDNPZeLN78jYPpscv3x15pgqDDdkMBwjzva3PMCBagop2yA -1NwuhznLyRaQ7e3hWpFveMVimsH5FfdhLa,5K2dPvJfj2MUvfi5zGxPvUupqPVR2o6PqEtsHzfVPregUoYKUBE +16PRgUZvCneM7AYJ94TaoGE4rMQnRdqqt4,5453543543,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1KDxAxej4NZMQtao9xZGiadbsqxcKJt9Ng,1000933,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1PnA88ck7hGSsSqpPXhaVbWL3suWXEqfsF,100033223,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,2 +12jXM28Awqgm2NPgiD6EVjZmih66U5mUAt,99599595,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,5 +1BV1GXQmBKF6v6CqUjH6y95KNXqtCoLNWH,345445,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1AsCoc5UVkHcfFRXUA2YtDJbse7k6Ws4Pz,20000003,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1MNJYvW6AmRhsrr9ELo5A4mRw2P4yafVZQ,20000111,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,1 +1HCMAqVqJEYNq444ecHeYJ235soup8wUKb,30000003,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1tkf9nKFNqqD5FNyxU6C4CFBtk8dQFFLw,400000003,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,0 +1NwuhznLyRaQ7e3hWpFveMVimsH5FfdhLa,66666555,3f12ca91d24d3ff8eb89058c3ab05433419ea069ed31b754eaf4afa7486f4f8f,10 From 74258962f1f334119bb20118da6c1b5559a33500 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 6 Oct 2014 12:57:04 +0900 Subject: [PATCH 036/127] bytes are reversed in Transaction Inputs --- .../TransactionInput.bs => CBHD/CBHD.bs} | 0 scripts/CBHD/CBHD.c | 535 ++++++++++++++++++ scripts/CBHD/CBHD.o | Bin 0 -> 148160 bytes scripts/CBHD/CBHD.pm | 61 +- scripts/CBHD/CBHD.xs | 40 ++ scripts/CBHD/Makefile.PL | 2 +- scripts/CBHD/Makefile.old | 8 +- scripts/CBHD/blib/arch/.exists | 0 .../CBHD/blib/arch/auto/CBitcoin/CBHD/.exists | 0 .../CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so | Bin 0 -> 94875 bytes scripts/CBHD/blib/lib/CBitcoin/.exists | 0 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm | 133 +++++ scripts/CBHD/blib/lib/CBitcoin/coinx2.pl | 15 + .../CBHD/blib/lib/auto/CBitcoin/CBHD/.exists | 0 scripts/CBHD/blib/man1/.exists | 0 scripts/CBHD/blib/man3/.exists | 0 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm | 135 +++++ scripts/CBHD/blib/script/.exists | 0 scripts/CBHD/old-config/CBHD.bs | 0 scripts/CBHD/old-config/CBHD.pm | 44 +- scripts/CBHD/old-config/Makefile.old | 8 +- scripts/CBHD/old-config/pm_to_blib | 0 scripts/CBHD/pm_to_blib | 0 scripts/Transaction/Transaction.c | 155 ++++- scripts/Transaction/Transaction.o | Bin 137656 -> 166712 bytes scripts/Transaction/Transaction.pm | 241 ++------ scripts/Transaction/Transaction.xs | 56 ++ .../auto/CBitcoin/Transaction/Transaction.so | Bin 89806 -> 107281 bytes .../blib/lib/CBitcoin/Transaction.pm | 241 ++------ .../blib/man3/CBitcoin::Transaction.3pm | 8 +- scripts/Transaction/old-config/Transaction.pm | 241 ++------ scripts/Transaction/src/Transaction.c | 34 ++ scripts/TransactionInput/Makefile.old | 8 +- scripts/TransactionInput/TransactionInput.pm | 20 +- .../blib/lib/CBitcoin/TransactionInput.pm | 20 +- .../TransactionInput/old-config/Makefile.old | 8 +- .../old-config/TransactionInput.pm | 20 +- scripts/TransactionOutput/MYMETA.json | 39 ++ scripts/TransactionOutput/MYMETA.yml | 21 + scripts/TransactionOutput/Makefile.PL | 2 +- scripts/TransactionOutput/Makefile.old | 374 ++---------- scripts/TransactionOutput/TransactionInput.pm | 163 ------ scripts/TransactionOutput/TransactionInput.xs | 146 ----- .../TransactionOutput/TransactionOutput.bs | 0 scripts/TransactionOutput/TransactionOutput.c | 263 +++++++++ scripts/TransactionOutput/TransactionOutput.o | Bin 0 -> 96392 bytes .../TransactionOutput/TransactionOutput.pm | 114 +--- scripts/TransactionOutput/blib/arch/.exists | 0 .../auto/CBitcoin/TransactionOutput/.exists | 0 .../TransactionOutput/TransactionOutput.so | Bin 0 -> 62405 bytes .../blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/TransactionOutput.pm | 72 +++ .../blib/lib/CBitcoin/coinx2.pl | 15 + .../auto/CBitcoin/TransactionOutput/.exists | 0 scripts/TransactionOutput/blib/man1/.exists | 0 scripts/TransactionOutput/blib/man3/.exists | 0 scripts/TransactionOutput/blib/script/.exists | 0 .../TransactionOutput/old-config/MYMETA.json | 39 ++ .../TransactionOutput/old-config/MYMETA.yml | 21 + .../TransactionOutput/old-config/Makefile.old | 12 +- .../old-config/TransactionOutput.bs | 0 .../old-config/TransactionOutput.pm | 17 +- .../TransactionOutput/old-config/pm_to_blib | 0 scripts/TransactionOutput/pm_to_blib | 0 scripts/compile.sh | 11 + scripts/txinput.pm | 52 +- 66 files changed, 1995 insertions(+), 1399 deletions(-) rename scripts/{TransactionOutput/TransactionInput.bs => CBHD/CBHD.bs} (100%) create mode 100644 scripts/CBHD/CBHD.c create mode 100644 scripts/CBHD/CBHD.o create mode 100644 scripts/CBHD/blib/arch/.exists create mode 100644 scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists create mode 100755 scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so create mode 100644 scripts/CBHD/blib/lib/CBitcoin/.exists create mode 100644 scripts/CBHD/blib/lib/CBitcoin/CBHD.pm create mode 100644 scripts/CBHD/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists create mode 100644 scripts/CBHD/blib/man1/.exists create mode 100644 scripts/CBHD/blib/man3/.exists create mode 100644 scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm create mode 100644 scripts/CBHD/blib/script/.exists create mode 100644 scripts/CBHD/old-config/CBHD.bs create mode 100644 scripts/CBHD/old-config/pm_to_blib create mode 100644 scripts/CBHD/pm_to_blib create mode 100644 scripts/TransactionOutput/MYMETA.json create mode 100644 scripts/TransactionOutput/MYMETA.yml delete mode 100644 scripts/TransactionOutput/TransactionInput.pm delete mode 100644 scripts/TransactionOutput/TransactionInput.xs create mode 100644 scripts/TransactionOutput/TransactionOutput.bs create mode 100644 scripts/TransactionOutput/TransactionOutput.c create mode 100644 scripts/TransactionOutput/TransactionOutput.o create mode 100644 scripts/TransactionOutput/blib/arch/.exists create mode 100644 scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionOutput/.exists create mode 100755 scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionOutput/TransactionOutput.so create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/.exists create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/TransactionOutput.pm create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/TransactionOutput/blib/lib/auto/CBitcoin/TransactionOutput/.exists create mode 100644 scripts/TransactionOutput/blib/man1/.exists create mode 100644 scripts/TransactionOutput/blib/man3/.exists create mode 100644 scripts/TransactionOutput/blib/script/.exists create mode 100644 scripts/TransactionOutput/old-config/MYMETA.json create mode 100644 scripts/TransactionOutput/old-config/MYMETA.yml create mode 100644 scripts/TransactionOutput/old-config/TransactionOutput.bs create mode 100644 scripts/TransactionOutput/old-config/pm_to_blib create mode 100644 scripts/TransactionOutput/pm_to_blib create mode 100755 scripts/compile.sh diff --git a/scripts/TransactionOutput/TransactionInput.bs b/scripts/CBHD/CBHD.bs similarity index 100% rename from scripts/TransactionOutput/TransactionInput.bs rename to scripts/CBHD/CBHD.bs diff --git a/scripts/CBHD/CBHD.c b/scripts/CBHD/CBHD.c new file mode 100644 index 00000000..7f140e06 --- /dev/null +++ b/scripts/CBHD/CBHD.c @@ -0,0 +1,535 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of CBHD.xs. Do not edit this file, edit CBHD.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "CBHD.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} +/* +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +}*/ + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool private,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { private, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + +int exportChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int childnumber = (int)cbkey->childID.childNumber; + free(cbkey); + return childnumber; +} +int exportPrivChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int priv = (int)cbkey->childID.priv; + free(cbkey); + return priv; +} + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} +char* exportPublicKeyFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); + free(cbkey); + return (char*) pubkey; +} + + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + + +#line 198 "CBHD.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 250 "CBHD.c" + +XS(XS_CBitcoin__CBHD_newMasterKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_newMasterKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = newMasterKey(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_deriveChildPrivate); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_deriveChildPrivate) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 3) + croak_xs_usage(cv, "privstring, private, child"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + bool private = (bool)SvTRUE(ST(1)); + int child = (int)SvIV(ST(2)); + char * RETVAL; + dXSTARG; + + RETVAL = deriveChildPrivate(privstring, private, child); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportWIFFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportWIFFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportChildIDFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportChildIDFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = exportChildIDFromCBHDKey(privstring); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportPrivChildIDFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportPrivChildIDFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = exportPrivChildIDFromCBHDKey(privstring); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportAddressFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportAddressFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "privstring"); + { + char * privstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = exportPublicKeyFromCBHDKey(privstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_newWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_newWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = newWIF(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_publickeyFromWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_publickeyFromWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "wifstring"); + { + char * wifstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = publickeyFromWIF(wifstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_addressFromPublicKey); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_addressFromPublicKey) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "pubkey"); + { + char * pubkey = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = addressFromPublicKey(pubkey); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__CBHD_createWIF); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__CBHD_createWIF) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "arg"); + { + int arg = (int)SvIV(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = createWIF(arg); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__CBHD); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__CBHD) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::CBHD::newMasterKey", XS_CBitcoin__CBHD_newMasterKey, file); + newXS("CBitcoin::CBHD::deriveChildPrivate", XS_CBitcoin__CBHD_deriveChildPrivate, file); + newXS("CBitcoin::CBHD::exportWIFFromCBHDKey", XS_CBitcoin__CBHD_exportWIFFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportChildIDFromCBHDKey", XS_CBitcoin__CBHD_exportChildIDFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportPrivChildIDFromCBHDKey", XS_CBitcoin__CBHD_exportPrivChildIDFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportAddressFromCBHDKey", XS_CBitcoin__CBHD_exportAddressFromCBHDKey, file); + newXS("CBitcoin::CBHD::exportPublicKeyFromCBHDKey", XS_CBitcoin__CBHD_exportPublicKeyFromCBHDKey, file); + newXS("CBitcoin::CBHD::newWIF", XS_CBitcoin__CBHD_newWIF, file); + newXS("CBitcoin::CBHD::publickeyFromWIF", XS_CBitcoin__CBHD_publickeyFromWIF, file); + newXS("CBitcoin::CBHD::addressFromPublicKey", XS_CBitcoin__CBHD_addressFromPublicKey, file); + newXS("CBitcoin::CBHD::createWIF", XS_CBitcoin__CBHD_createWIF, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/CBHD/CBHD.o b/scripts/CBHD/CBHD.o new file mode 100644 index 0000000000000000000000000000000000000000..b0369462d68c3caf2ef90ca84f5388d81dab6b2f GIT binary patch literal 148160 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 Rts5^OZtI7y6SsAM{|D4og0KJp literal 0 HcmV?d00001 diff --git a/scripts/CBHD/CBHD.pm b/scripts/CBHD/CBHD.pm index 60203a41..bd44b02c 100644 --- a/scripts/CBHD/CBHD.pm +++ b/scripts/CBHD/CBHD.pm @@ -20,7 +20,13 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking sub new { my $package = shift; - return bless({}, $package); + my $seed = shift; + my $this = {}; + bless($this, $package); + if(defined $seed){ + $this->serialized_data($seed); + } + return $this; } # newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF # generate a key (parent) @@ -28,7 +34,7 @@ sub generate { my $this = shift; eval{ my $key = CBitcoin::CBHD::newMasterKey(1); - $this->serializedkeypair($key) || die "Cannot load the key."; + $this->serialized_data($key) || die "Cannot load the key."; }; if($@){ return 0; @@ -36,23 +42,29 @@ sub generate { return 1; } -sub serializedkeypair { +sub serialized_data { my $this = shift; my $x = shift; - if($x){ - $this->{serializedkey} = $x; - return $this->{serializedkey}; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + $this->{'data'} = $x; + return $this->{'data'}; + } + elsif(!(defined $x)){ + return $this->{'data'}; } else{ - return $this->{serializedkey}; + die "no arguments to create CBitcoin::CBHD data"; } } -=head2 +=pod + ---++ deriveChild($hardbool,$childid) + If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true. =cut + sub deriveChild { my $this = shift; my $hardbool = shift; @@ -68,8 +80,8 @@ sub deriveChild { unless($childid > 0 && $childid < 2**31){ die "The child id is not in the correct range.\n"; } - die "no private key" unless $this->serializedkeypair; - $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); + die "no private key" unless $this->serialized_data; + $childkey->serialized_data(CBitcoin::CBHD::deriveChildPrivate($this->serialized_data(),$hardbool,$childid)); }; if($@){ @@ -83,8 +95,8 @@ sub WIF { my $this = shift; my $wif = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serialized_data()); }; if($@){ return undef; @@ -96,8 +108,8 @@ sub address { my $this = shift; my $address = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serialized_data()); }; if($@){ return undef; @@ -109,8 +121,8 @@ sub publickey { my $this = shift; my $x = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serialized_data()); }; if($@){ return undef; @@ -118,21 +130,4 @@ sub publickey { return $x; } -# this function returns an array -sub childid { - my $this = shift; - my $childid = ''; #only ranges 31 bits, not 32 bits - my $priv = ''; #determines whether key is less than 2^31 (soft) or greater than 2^31 (hard) - eval{ - die "no private key" unless $this->serializedkeypair(); - $childid = CBitcoin::CBHD::exportChildIDFromCBHDKey($this->serializedkeypair()); - $priv = CBitcoin::CBHD::exportPrivChildIDFromCBHDKey($this->serializedkeypair()); - }; - if($@){ - return undef; - } - return ($priv,$childid); -} - - 1; diff --git a/scripts/CBHD/CBHD.xs b/scripts/CBHD/CBHD.xs index 3ed763ea..fba8d35a 100644 --- a/scripts/CBHD/CBHD.xs +++ b/scripts/CBHD/CBHD.xs @@ -14,6 +14,26 @@ #include #include + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} +/* +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +}*/ + CBHDKey* importDataToCBHDKey(char* privstring) { CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); @@ -67,6 +87,18 @@ char* exportWIFFromCBHDKey(char* privstring){ return (char *)CBByteArrayGetData(str); } +int exportChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int childnumber = (int)cbkey->childID.childNumber; + free(cbkey); + return childnumber; +} +int exportPrivChildIDFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + int priv = (int)cbkey->childID.priv; + free(cbkey); + return priv; +} char* exportAddressFromCBHDKey(char* privstring){ CBHDKey* cbkey = importDataToCBHDKey(privstring); @@ -172,6 +204,14 @@ char * exportWIFFromCBHDKey (privstring) char * privstring +int +exportChildIDFromCBHDKey (privstring) + char * privstring + +int +exportPrivChildIDFromCBHDKey (privstring) + char * privstring + char * exportAddressFromCBHDKey (privstring) char * privstring diff --git a/scripts/CBHD/Makefile.PL b/scripts/CBHD/Makefile.PL index 25a08887..ac50a725 100644 --- a/scripts/CBHD/Makefile.PL +++ b/scripts/CBHD/Makefile.PL @@ -15,7 +15,7 @@ my %options = %{ '-lcbitcoin.2.0', '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.02' } }; diff --git a/scripts/CBHD/Makefile.old b/scripts/CBHD/Makefile.old index 59823434..d7ff6eb5 100644 --- a/scripts/CBHD/Makefile.old +++ b/scripts/CBHD/Makefile.old @@ -13,9 +13,9 @@ # BUILD_REQUIRES => { } # CONFIGURE_REQUIRES => { } -# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::CBHD] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -119,7 +119,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -153,7 +153,7 @@ BASEEXT = CBHD PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = -INC = /home/joeldejesus/Workspace/cbitcoin/library/include +INC = ../../library/include OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic diff --git a/scripts/CBHD/blib/arch/.exists b/scripts/CBHD/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so new file mode 100755 index 0000000000000000000000000000000000000000..373834cbf707c64795644b3b7721e30c6908b1cd GIT binary patch literal 94875 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

bqH~PlNF=N^P?5MA|5|$zSmZWb*173ejY@ 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 + } + return $this; +} +# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF +# generate a key (parent) +sub generate { + my $this = shift; + eval{ + my $key = CBitcoin::CBHD::newMasterKey(1); + $this->serialized_data($key) || die "Cannot load the key."; + }; + if($@){ + return 0; + } + return 1; +} + +sub serialized_data { + my $this = shift; + my $x = shift; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + $this->{'data'} = $x; + return $this->{'data'}; + } + elsif(!(defined $x)){ + return $this->{'data'}; + } + else{ + die "no arguments to create CBitcoin::CBHD data"; + } +} +=pod + +---++ deriveChild($hardbool,$childid) + +If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to +go from private parent keypair to private child keypair, then set $hardbool to true. + +=cut + +sub deriveChild { + my $this = shift; + my $hardbool = shift; + my $childid = shift; + my $childkey = new CBitcoin::CBHD; + eval{ + if($hardbool){ + $hardbool = 1; + } + else{ + $hardbool = 0; + } + unless($childid > 0 && $childid < 2**31){ + die "The child id is not in the correct range.\n"; + } + die "no private key" unless $this->serialized_data; + $childkey->serialized_data(CBitcoin::CBHD::deriveChildPrivate($this->serialized_data(),$hardbool,$childid)); + + }; + if($@){ + return undef; + } + return $childkey; + +} + +sub WIF { + my $this = shift; + my $wif = ''; + eval{ + die "no private key" unless $this->serialized_data(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serialized_data()); + }; + if($@){ + return undef; + } + return $wif; +} + +sub address { + my $this = shift; + my $address = ''; + eval{ + die "no private key" unless $this->serialized_data(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serialized_data()); + }; + if($@){ + return undef; + } + return $address; +} + +sub publickey { + my $this = shift; + my $x = ''; + eval{ + die "no private key" unless $this->serialized_data(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serialized_data()); + }; + if($@){ + return undef; + } + return $x; +} + +1; diff --git a/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl b/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..0d4b2dbe --- /dev/null +++ b/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::CBHD'; +my $package_name = 'CBitcoin::CBHD'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.02, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/blib/man1/.exists b/scripts/CBHD/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/blib/man3/.exists b/scripts/CBHD/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm b/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm new file mode 100644 index 00000000..c6d24984 --- /dev/null +++ b/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm @@ -0,0 +1,135 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "CBHD 3" +.TH CBHD 3 "2014-10-06" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +\&\-\-\-++ deriveChild($hardbool,$childid) +.PP +If you want to go from private parent keypair to public child keypair, then set \f(CW$hardbool\fR to false. If you want to +go from private parent keypair to private child keypair, then set \f(CW$hardbool\fR to true. diff --git a/scripts/CBHD/blib/script/.exists b/scripts/CBHD/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/old-config/CBHD.bs b/scripts/CBHD/old-config/CBHD.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/old-config/CBHD.pm b/scripts/CBHD/old-config/CBHD.pm index 48036944..bd44b02c 100644 --- a/scripts/CBHD/old-config/CBHD.pm +++ b/scripts/CBHD/old-config/CBHD.pm @@ -20,7 +20,13 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking sub new { my $package = shift; - return bless({}, $package); + my $seed = shift; + my $this = {}; + bless($this, $package); + if(defined $seed){ + $this->serialized_data($seed); + } + return $this; } # newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF # generate a key (parent) @@ -28,7 +34,7 @@ sub generate { my $this = shift; eval{ my $key = CBitcoin::CBHD::newMasterKey(1); - $this->serializedkeypair($key) || die "Cannot load the key."; + $this->serialized_data($key) || die "Cannot load the key."; }; if($@){ return 0; @@ -36,23 +42,29 @@ sub generate { return 1; } -sub serializedkeypair { +sub serialized_data { my $this = shift; my $x = shift; - if($x){ - $this->{serializedkey} = $x; - return $this->{serializedkey}; + if(defined $x && $x =~ m/^([0-9a-zA-Z]+)$/){ + $this->{'data'} = $x; + return $this->{'data'}; + } + elsif(!(defined $x)){ + return $this->{'data'}; } else{ - return $this->{serializedkey}; + die "no arguments to create CBitcoin::CBHD data"; } } -=head2 +=pod + ---++ deriveChild($hardbool,$childid) + If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true. =cut + sub deriveChild { my $this = shift; my $hardbool = shift; @@ -68,8 +80,8 @@ sub deriveChild { unless($childid > 0 && $childid < 2**31){ die "The child id is not in the correct range.\n"; } - die "no private key" unless $this->serializedkeypair; - $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); + die "no private key" unless $this->serialized_data; + $childkey->serialized_data(CBitcoin::CBHD::deriveChildPrivate($this->serialized_data(),$hardbool,$childid)); }; if($@){ @@ -83,8 +95,8 @@ sub WIF { my $this = shift; my $wif = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serialized_data()); }; if($@){ return undef; @@ -96,8 +108,8 @@ sub address { my $this = shift; my $address = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serialized_data()); }; if($@){ return undef; @@ -109,8 +121,8 @@ sub publickey { my $this = shift; my $x = ''; eval{ - die "no private key" unless $this->serializedkeypair(); - $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); + die "no private key" unless $this->serialized_data(); + $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serialized_data()); }; if($@){ return undef; diff --git a/scripts/CBHD/old-config/Makefile.old b/scripts/CBHD/old-config/Makefile.old index 59823434..d7ff6eb5 100644 --- a/scripts/CBHD/old-config/Makefile.old +++ b/scripts/CBHD/old-config/Makefile.old @@ -13,9 +13,9 @@ # BUILD_REQUIRES => { } # CONFIGURE_REQUIRES => { } -# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] -# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::CBHD] # PREREQ_PM => { } # TEST_REQUIRES => { } @@ -119,7 +119,7 @@ DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) PERL_LIB = /usr/share/perl/5.14 PERL_ARCHLIB = /usr/lib/perl/5.14 LIBPERL_A = libperl.a -MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so FIRST_MAKEFILE = Makefile MAKEFILE_OLD = Makefile.old MAKE_APERL_FILE = Makefile.aperl @@ -153,7 +153,7 @@ BASEEXT = CBHD PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = -INC = /home/joeldejesus/Workspace/cbitcoin/library/include +INC = ../../library/include OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic diff --git a/scripts/CBHD/old-config/pm_to_blib b/scripts/CBHD/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/CBHD/pm_to_blib b/scripts/CBHD/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/Transaction.c b/scripts/Transaction/Transaction.c index 201a79c0..39818fe3 100644 --- a/scripts/Transaction/Transaction.c +++ b/scripts/Transaction/Transaction.c @@ -206,6 +206,40 @@ char* get_script_from_obj(char* serializedDataString){ return scriptstring; } */ +int get_numOfInputs(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t numOfInputs = tx->inputNum; + CBFreeTransaction(tx); + return (int)numOfInputs; +} +int get_numOfOutputs(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t numOfOutputs = tx->outputNum; + CBFreeTransaction(tx); + return (int)numOfOutputs; +} +char* get_Input(char* serializedDataString,int InputIndex){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBTransactionInput** inputs = tx->inputs; + char* answer = txinput_obj_to_serializeddata(inputs[InputIndex]); + CBFreeTransaction(tx); + return answer; +} +char* get_Output(char* serializedDataString,int OutputIndex){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBTransactionOutput** outputs = tx->outputs; + char* answer = txoutput_obj_to_serializeddata(outputs[OutputIndex]); + CBFreeTransaction(tx); + return answer; +} + +char* hash_of_tx(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBByteArray * data = CBNewByteArrayWithData(CBTransactionGetHash(tx), (uint32_t)32); + CBFreeTransaction(tx); + return bytearray_to_hexstring(data,32); +} + int get_lockTime_from_obj(char* serializedDataString){ CBTransaction* tx = serializeddata_to_obj(serializedDataString); uint32_t lockTime = tx->lockTime; @@ -318,7 +352,7 @@ char* sign_tx_multisig(char* txString, char* keypairString, char* prevOutSubScri } -#line 322 "Transaction.c" +#line 356 "Transaction.c" #ifndef PERL_UNUSED_VAR # define PERL_UNUSED_VAR(var) if (0) var = var #endif @@ -370,7 +404,7 @@ S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) #define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) #endif /* !defined(newXS_flags) */ -#line 374 "Transaction.c" +#line 408 "Transaction.c" XS(XS_CBitcoin__Transaction_create_tx_obj); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__Transaction_create_tx_obj) @@ -399,6 +433,118 @@ XS(XS_CBitcoin__Transaction_create_tx_obj) } +XS(XS_CBitcoin__Transaction_get_numOfInputs); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_numOfInputs) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_numOfInputs(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_numOfOutputs); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_numOfOutputs) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_numOfOutputs(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_Input); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_Input) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 2) + croak_xs_usage(cv, "serializedDataString, InputIndex"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int InputIndex = (int)SvIV(ST(1)); + char * RETVAL; + dXSTARG; + + RETVAL = get_Input(serializedDataString, InputIndex); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_Output); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_Output) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 2) + croak_xs_usage(cv, "serializedDataString, OutputIndex"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int OutputIndex = (int)SvIV(ST(1)); + char * RETVAL; + dXSTARG; + + RETVAL = get_Output(serializedDataString, OutputIndex); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_hash_of_tx); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_hash_of_tx) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = hash_of_tx(serializedDataString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + XS(XS_CBitcoin__Transaction_get_lockTime_from_obj); /* prototype to pass -Wmissing-prototypes */ XS(XS_CBitcoin__Transaction_get_lockTime_from_obj) { @@ -519,6 +665,11 @@ XS(boot_CBitcoin__Transaction) XS_VERSION_BOOTCHECK ; newXS("CBitcoin::Transaction::create_tx_obj", XS_CBitcoin__Transaction_create_tx_obj, file); + newXS("CBitcoin::Transaction::get_numOfInputs", XS_CBitcoin__Transaction_get_numOfInputs, file); + newXS("CBitcoin::Transaction::get_numOfOutputs", XS_CBitcoin__Transaction_get_numOfOutputs, file); + newXS("CBitcoin::Transaction::get_Input", XS_CBitcoin__Transaction_get_Input, file); + newXS("CBitcoin::Transaction::get_Output", XS_CBitcoin__Transaction_get_Output, file); + newXS("CBitcoin::Transaction::hash_of_tx", XS_CBitcoin__Transaction_hash_of_tx, file); newXS("CBitcoin::Transaction::get_lockTime_from_obj", XS_CBitcoin__Transaction_get_lockTime_from_obj, file); newXS("CBitcoin::Transaction::get_version_from_obj", XS_CBitcoin__Transaction_get_version_from_obj, file); newXS("CBitcoin::Transaction::sign_tx_pubkeyhash", XS_CBitcoin__Transaction_sign_tx_pubkeyhash, file); diff --git a/scripts/Transaction/Transaction.o b/scripts/Transaction/Transaction.o index 6345fe0b324c5ee67ef06e1108ec5bc24c187328..5bb4e60dd5dc8680594424b3d2c2b89c4a411134 100644 GIT binary patch literal 166712 zcmeFa34D~*)j$3`&x9}`2?-E}VUvLgkU)S00}puMWofX*xDAXR@~`p)&Dv7oOADNQEcto-~0bGADubh zbMIO1x#yneKHIQmcG(=qwk`Ryt?8CQ!nLfNWrka%*hQAt>TQ*^*JPhAZU0C6`z7rw zvQLz>*Jqz9`O#loC0k$fw!eD7_<#33$>m?t*23AN&5$+@+nsG`;zu2O4^@fbfTnV z1*)uPbs2-K3T_esa74&s7l6GAQCZUd`yb#Csei{MIqgqgz|O3V@F%i=T-P(P_Zj?2 zq<@KWvI2tPR?P+PsR+oJ-hfcEh2O_m!cY-w>*MZ{_7fMZd<^`Jjqis)T&#o8j@l%; z1;6+Kwm_IzZ$u=GY7mK<0*T<~HlH}~lJ<`ZK2}~79D=lQKNc}R#pe|-EnZUE{?p>h z()M31!9eAxuEp=o%1(D@Y`Xv^xfC;`?XtAgjO}FrOF9O^$gI-#Cp)I_;Ql6Qvi(r| ztZaA2j%?^x{N8NT&{t{LzzR|Ubt0CQvEy~nTk!f{FIp@4O!_+tvkRWab;0x20WO8J zGdre~bbvQSnI-Lo*(G4utGh#2lwb^txwnrO@bAbam{WpdTz(1s84YV zo-S+u2oxA`w)S38dJ>w-*dF}&V~S`=jBDspKK5bD;McX4*{~3wdc*-U#BG1-WFsiZ z7*u4zeB=}yx?pATisF^UtBM1VV{On6gHVO-N}#O$&oRS4w<8!idKr1a)5>k=&*nd2 z;AxkxCoQTgj``0~W2QzNa>n+JGTazXI;NC$_{db`D7F3er~Y~+Oyw*K>fZa*55^lY z+TD_W?-p08FJd>%`A6QJrLC0k#GNhoh(ZjrZRO7XSz+4j6^la80>K3Ucd z_4KrB>*?f-?Ry~Px?4&0>mYw^9;O(CCFukV&Cb|r9CMd z#eoUPsb#rDfZPky?-qiP=%)gOp5CQb|fDCP$ICtRsAal2P!bCnRyBwQlNE zt6OR965+V|9yLYVr%bgrh={_uP)`$7gkvWv9*R zfJI%_{&!e(NgY$O%i7;!5vT!*0!~D%*bJ7C?nS7m70C^B-|!=qSfbn}M13pva?af=rVV z0qdEwiq?lp9uZ1|4L+SOIvq~}wDy_~JOi{?EvW}+AlQSS;OuXarX{nULl24q! zrvJ_#9_RJq|GzSSG5fpfzi|RQ1|z90>6l6f2iVm~v4Wjp^cD_QYvg+6{goWwpsuRT z)4#rIos8`_oWZKa{T7Ykj8<)@N4O7U_2QKB5pGsTtB(f)TzyD6C|x^Q=(E~CGHdMBLY%-YiG zUzJ|lGHO=)%eXh~NIFu|QC_4JZ#xt|U-2TZ9+$xtJ-iT+?ZXRDROr?DkQnJHM#3wF zj)#^HRw57+255j)bI$5fARj?l_KIlR` zN#mIPa?aOQyqv{KwL<==W3#k`e6soL6agAqlH z3HSFfXcchx$tBU(hg2~1b)ZBSFrGU328gWPtz*qTr0ExRMMr%jdL_x?m$Q0b6O4eoPw5Y zDIUYwgunX6>h+a%8-jVhjlt$nU1LL@udbn~B^=80HMWF_XlU86aBV4b6BxY<`*6{_`xo2wc^Rn=i|ntUD&cEYXV1N3XEs%sY5)EwLh<|CqBURL`vwj%BK;v2%$S3#1aY%{;);2e8ID>I>B1LuY z%nzJij3&)1diBZvNdFBj_2D`I3G>fdu%xUEECwn{=av*#lmv>S;ev$=W=A$xlrETC z7R4!EupIi#EM8DvyxiJ2esn?M=zJ@Gbbf&qkqx7(tsj2DvhWPmvfOYUVI_Q03i;~K zv0-sSe+LV)Kek9<5ma@wB@>L27D5E^%PC+Fl4*wu+xwo zro%Ocd+jQ%;W|U^IuE!GIYgGOH;p$U*~Lx#I}QIHLq3FLvKya=acDfMchZbY#9Gp# zCQUYA$W(_eQ-34eE@gibGWmJ!Z_*R!S=Y9%1Gj;UielG6NIHJYO2KY>0Cf8$5E-Ph zt8W8vQh{M*c4<8n@S0J9zfLTCjcFOF>WdaZ5^4je{?j;-CT*|n6p>}DP7wR$zBP5v`|{6UPj=6NPt`fSU=;KqvQU?` z^ocWon}RF!Cg`bLOeYt2cOTsfWmOsOo*#s6k|N#5U!@SuME7Z5Q;24w`}A8C@{(K; z&ENn+#aPN5zmL#N8d^4?*<>My(7bP|p813pyrs}YLggPSR7B{4JE$HIT0v+Tp_PPc z30;W8ar~`RfOY`jCDbRpA!PY7{6Cf9W(+M>N@?&J!wAuEGja&ga5HiVc_GxjKt|O} zZ)Sfl9G8^U%z?<3$Yq{|HejVt+aQVnsmk<)U)y_!o#XMJBGicU`-6+{|X&%v0!j=v|#4M7!- zzZa!$B>**-A8Q-K_5+Xl=0w@Zjj}N!%Erhj8+l@*@2t|rR_y{TG&7S#>F=p><$mla}@R&q3%t3)KTut2w0)EUYMw?TO>`j^kv-aeBpa zT$#WT$BIUv=^@e3Z}p#v!@Dr$1sKx6Y8YR+XN#Q$t3h@2v_*|iLmD5z$ngP;93Q}# z@d?L_PjmG6G)Iq5bM*LxW5x%Z$nk0Dr%`OR*Q?QI6TFJkK8N7d4D$(IW3N`7Clb7t z;Z%aV>>KA`Ad3io!M;Vo5{pu%F~tY5OULRoPU6=7?Mid^qy_5=mXIdY+t^C4I&a^=0Bu{Q%n9iNSkoIsA;v(b@zHac?8#zl@f z5s?#)iJWju~{m)fW*_Zdluj`n@>2>D?8EUVAx{0XQf zhfqP$B1HLw#x9}7L1-MIsf5PQQ9X+YolR{egeDRyBQ%-pl@ppmZFKDKGnLQ^YMVxA zHKFN*Y6umRpS6T$5^5qei%_etv|^*xXU;dlYnQ)`PDT67Edxhg{v9@4v8l59RK5%{ zF8^+BU4|PfmwzwAyQP_IWMeqXBe2C#H+?}}mhZ(N99SXk7f5PP}Z4Oy| z!qoW`x3-X~(+oEfY)c}|n+Wb;*!nUYi@-^Sn@QDPh8Gju$M6z@`x#yy9*43A7;YhW zkl_`WCNBRWhF5-nF2chMx0aM5Ji>5WFF5eJ{Kpt>U#uc|oZ(f}dV*m)sXE1Q=Vqvt zF8^tU9pvPZWE$^vt}#k8!`3ijZCQ_&3}Ty8QbXzCpv^&+wgE zW%mHXcN-Ku$nftpghLGf2ag6W|Bo4dKtp(p;XkPLafTmK>k}!eaQCt7Y0BxtjJw#7 zNucam#$DC%0aA-`H?`k%`G3VYRc%Kh*BGbSG_A)Or!zjmxI5!hj5E}69rBHFrcHC% z){Xq@!FUJbEXKPT_h!78vBwUpQ0-&f$EGE@pK)KC#(#iuKgJI-?$7v}j0Z6O7UO}8 zA7XqKjK^^Q?=jBj_D30yW&C}{;~4*d zaUsX|5aaP2ufvQd+W1x(%rE0f+jU76~0G0X2@dcjGTzGb^(f=3cs>s?zMApljCZiVhZ(msKEn7KwttNA zF3!K>jK5%aRn_%8`-^jQvo$}+0jCU};$)-c!ZpOFpc=j^BmGP~N zZ)1P(fk8gV! zzaja<_)R-kZOryFe%s!z=H~$8cUj*7y1dZmeU8sVjQ?(bZ6W60LB`#j!9K)?7^gBm z#yE}fDaPF$I$rMRLF3PKs9x`8+=KBR#=RKtWt_$MR>mI2`xtv2JkfUf?_}K1xslcj zLp3L@-F`mxxI?nhU#wQpTF+Rn(nDJ@GGZ?q^q+0KuW;yi zdxY^y=fEV)w_}V~Ido!ioN>UpS>^Ky#;YCLF2BWiE$7qQjB6dd1nly^!+5=OuaZB_ zxY5D0W;jL2qWFXu?_hj|b3paq&G<@(_Ah%GZ*xv5{recV^Z52NzK-=BV7!~<4>I2C zd|T;1#P}AD$6>~|N_-gK;q*}T>lovG&ZA2HIO8ufKEe1-_U9DiyPXzw{&1S{ewm-% zH2!;Jei+}&_z2_s7$0N&fb)dXcbxGzczh=qA7Ffn@i)2NoM!wG*N-+2+5a}r*EYrn zdHg#Vf6sYZ)!*HWA7#9k@neklF@C~%P4(Z;_^>lb`FnuzGtT31ZV2_9@lP2aV*E3i z55~vXzaxx)?fh89{}^M-bz0dw&bXV4^7{nibQk5%DaJjy{WN0_{#eXRZ! za7F!!lsq3?O$u$ayxxnNfK+F;-e$}~xv%1F#$$loR}qv(Jwsm{jcu7$|6)*gWy&R} zt_s!d_@P$UJ}W;$U3-)|MyzhU4_Bp#_FH9>hrTUJ9V1q^{ZjUhE+lVHsRJc+SIYaPuWN;S ze?B&1xO<}%GGc`{c?)>BbKwgARVk04f9v1^f8W%=5FT#dG(5!1Wb{qHQ{A7SD-wOX z<91qZ)b`CFQ*^DKJ43zw9w_lzFBw*4_An(XK%VJ zUqr}rP-!W#`p<=cUY&9wc-dzi2K4f;i^JY68zTd{C2IVPc>Ha>IiP*&8bQYw-qJd5 z=&2&ZlX63p4o0kF&x1V2G%4*VAAyo|$X~ck@@-dtzuYGIu50u>9G7k!?>e9xC%B3z z$ZDB*&Sq#6oan+`y5n~UPIBQU3+}cPob1AL5Lh1sr*JFn&^%KaQi1eLbK&JixW7c5 zXS*CF>*Fiz*Q7iOKB<(->DPZ!Hs?UU0k5dIQ#kq!yllQQsOF^KS>#+Mp+UG|l3RKG zd^D_H)Hay>ru&!uhEQHnw)FGU4NITZe_1(9?X@Yh!T7+|rj3@*d%wL4fb!V;fI8!V zFbe#E@{9%#t$2KuyJ;GFd3e{Q+yaW!*%2TIyxu&2Csm~qMpTu`8BqyX#^_Zw9J&E9Fq86nH4pBl6ni)a zbcgpJ_MjXI=!ek({V+P9A4UgMAP4lL=zv;IhALe-6yJ2GuPUhd1T&n-yKLS}hIFsU z+k;^Vb?&LoQ5=6c!CnqUXc@sQZe2~VH@DUj^l)nv!9LvDO3=%@SGWg^_0ZdwcehvA z9I2aAMnZ5@8Wi>Gz8`26-hLTwRbUup5~4#+zaBZNjmu3>YU3i(i;$1BWSysaQX2I0 zY*L8QpkE*AIT7{^3zl11x1>A-#s^n5Y_{B4p7bHPmIYND?(g?WKLuYzd(&~AiSC<@ z5hl7{I&Qj%?w^h)phOQy$684A!1S$J_N?^#fuRaBolft=P=*9_@-}!!)-qbfv|^@K{%jiP-f1y6fH0Q`hC+Fy!2Rk!5{W z-_nWJSqDlXI(?S__24K)6-=;o=o%Il&1NB{k}F`*q{u1dmayMP^P+QBC|56 zx4H%+LmT8_NZ}mRhanAZke4Ba6Aq44aA?^M>c=o&#c)u6h7$=6U|2-(EQYjf2MuCa zPOUzM%Lop!9|Qj#|7wES_R|W|vK=&xN7O{EBN&DW=GpXsRx81L^|T`186{l6_h_zU zJl6gh=yv(HGM-@nUf~^#&$02T9K3f*^6+$#!h0E)GTz5{9^?It=QBRQ7@j$Tsf2SJ z#tZnG)*;5__Mepf$88JtGH?_8p;Y|x4*D*J1hNuX-=pX-dX$1g1!mA8esBvC;u;W0 zb{~Y~P*2g}xYVOa$i@6n+;@fBi=M#qRa=m@^e|BpTJr_*BsbZO9aT2^w%GpYE`!fr z)5WrSU~l)3qj(>)C(=WXVZ|ZxH<&p@zGynUgvFY;FPjd3KryiRI*c~ijazx;$dHqT z&^tTHJ33{wg_{)kQ=hi_bkwIyeI}{TF6uK`eRfr!ZuOa>KD(*URP~vrKGW4_clDW} zKKW@z?~I$la^I5KmUsDCV7pIk(DDvQs{~R_$bd||vkOa%P!HPX(}WD@ojym^4wRp7 zdCw1!g7sF~fWCP8M>75B0L`dBMnE1&9WVeh6jrR&%k2%}c1lIe8`2T;hOnG77b_Q& zxJ6|$LhM7MAqCv#4tPL@XroB78;6tZ&Vr7~Zagzfb|*sszo#l9}zs%ywgDyD_ufnAvX3Y&T}M8#CM44DJ%a%uYPB zCNn#YnVrVWPGe@LF|*T{*=fw|G-h_P8Qh_RnO%6sO=fl(GrNqLUB=8VV`i5zv&)#- zWz6hiGq_0yGkfr)kId{bX7(5}dyJVq#>^gLW{)wm$C%l}W^kViW^UT7&8Wu?$l^`L z%uUA3O~%Yk#>`E|%uUA3P0EZac02raco9IY4F83Zn`-}sk(+A&g^`XXZh})>=EJhzFoh4CiwBZ(=`1q$~ z`Pbty!|~JhTiRAf$<;8j)ssoJQK*R#&MG`5%n1F&;~Gp0nov*BB@J--w?%OVKp%Lc zBH4}8Hr(yK(f$}h+Z|=RUsU&3WNYC462m0ycau8jp?)_<_q&Ck1EVu|@2w2GSUITG z?frr}QBXTa?+y0Pz+IyEMDX|8FMu1wzfHLWF5)#W*0ImVB1-LFR!`j#{S_Oti|DVa z+i67KsrrKsEXu6oYc`(uQ~Ul1`X1#6^u;R}>X7C=uI?oER`=s*gN3J0&;_rXCA;4P zJ<0ASa4*;G?dD8@Hd31!L8qy!&(Lo_c&PF?$=@3vp8*IHgnu}$G&n|(z8pfCgmS5;msGCyk9+h3HXqMqzBgBXhDFqocMd z{+6!59ARU@xd13iCq-fPu+#;~WOuRZgi^QbPKv@s?lB+O!-LbQ&I&xF0(B?5*D4j* z^@V5^s=HC4T3>=LRvL;YyC(ph?7l~dV_%F6xrrV?(+T+MZQ~?Fv0cFEZI6#)dlbas zS!w8Nvb&$^bwQ$DzylxP6P$<7w81_ki+~)V)-q0}vFK4cP(O6KNOeMQagHN9q4O%d zI8NyKMcotUKe8u6?sQ0X!m|8vbSH$M1W!kk-G2h03WUEv-P#@Q_D^;4A#+q+^iOl@ zR2K1h*E0V&#h}JQb#p?BtA9LSYj9_@SpM%j!>3{5WP%M;H$2ln)45CQoh^Dv(;RhM z2GT5}y2337j4xwD(DJWjM5mAbRqE~{JaZ8F)w?0*L(}iQseiME^Qx)?^t)UGyj}WauUp>lw1&^$zV2ywtjZ zz457-H}R0^@p}J740#~U+&2%09O6OdW(cWxU2?di%_AX|arXqETo}S@8 z|K-llw34=HC09fb=}L7!P_9$>w{psPt>H=jtDF;{C1Yb%z2(1JQWGO~jne{K2lC>& zX!W~9y>e=|IEBN!o`F}z=L;MVAE~*4XNSYJhs|-gzQiz(I`3sKAz(TFTb#dWXKssj z=63B2u7W$*BG2AFhIF66|796DnfM9^m)-j+!)zS>-OiS&GW`8wF{8S`^4}vflukXsUJ9ZI!2I9lIB=A{6CIX=JQ1)u>l!ToBMh@MHdM75n1fz_S6oA{1x&PZ zOZ;a$KY~&=a&s_b!E3U8pc<*2k-yYw)bwIi+lXK7oYMTT^KB?O#J^N6T%xzBWkd81 zmHkBDq;i<(J5|~eeL!Um(ce?^$yNIYs#p(#if$dx@IU3GPM4`ZtY}@GpLY5~6FkW| zh$1fd*dQwf$A_(IXEX{*%};?rM}?m_NT;Lzz5YKr`1Bab|5;{?;9nThj@f@g=8RfT za(?iny&64fe~q5B*BEjxzwXcp1Fx;WDIauAeS;y_)Kd=aUW&->n-1Lpk-t$x^qRZ4vIoM;7y$r;NyEvjp zrMkdL8_N8lW1oUfYC}1+5cg@2hlIuxqAl{!2~FS(lyho3`x1rd{^QVz)RQ*MLnjgP zQP0VQa>$%-SYBE&n;SNon#kO+F@(t6uzWH==7tqeu6QlD_+(l8;O7vAkA6h-49`ar z-1ddmK)EV-8W2t>zyfRdScFObwksUKW3A!i1SbI=XALhDOm8y`pU~cg`jaEW&;E^) zzwQdg6IX!;N&ek}C!MG8-WYuA6>hqwiR#sA-9i}Ejrt|Xe9VkjrGrf&D#^)dfwWQ4 z%NY?FqMVVDA`NMiHVp$QezD<{)Pbp&Zg#K!{FSa>fy&la`$EU>S54S)-3R zxy{ZKv$=@mhIz?RP04LhPy5M^A@>s1Qx5jITeveFb8_3bGnI+ltq$cvS)hv&l4 z-o|#m9-e!%^K%e~XB=s9=ia7{I{JEeE*-kz8Aopa3do49{$-_Ct)jbNgY&JzQ8EAV0c5*~Yq; z?0yO+DA|o^n(W5pNp|CuC%bXtlHC~oWH$y8E(ItWFWRZ&du~q`mW5vK0X_5P@X=yG zFFXfT2aW+*=o(d!V;)}!x~SFe8H}XVbk7j{B@kG))aGaR=*o{Lo1f6dLmS#q$1u-u zL+;xJ+;p?;pMtLuREu} z(8$onCd>0T_3YMoPc}YcKVdS2~t(_X3GPc9oPq8DC=4+&%6A@ zfg8KM@0^3(s#}^Z&uMP3GVq$1=kJmIK5*9Qe*a*p z$NopTL-a?=CQU<*=T+zTAVKl^D^DE5*Hn`nB0O(8kHPr$q<^ejf>U#tR(x+;O{?28 zQawdQ`tn?yLso9S=N$ED7P(O5`ZC0n=werQP)qa-7v==fGhH|oqG!4O1T+}JUlLG; z$~~8>XUNFV78jndLxc&oF{C2xxgz?Ju`8n=8QaQ`lVlr1+CF=>s{)}1eU%H>tA1qc zYKELNJGgTWxzWxrpWsf06A5;>=rVp0!E0P}#h}E>E%$uKRX$I~eo#F(M{#(>wE&+7 zP!Y)Y%uYHAy-0jcQsg5Cp1GW-E?eBEs&aFgBm(2;U5Ye)Jn;7|d|YEM4_Kn*f$XL@7;Wp$+U zC3I@NCY|z_QY7ozblSyH9m%?mA^awfcSQHxGPuc&*F{ET>>8zV(haU!BQne3Q|k7J z9u#qUY;r_TDz1Egc!UT2@}kr-XM}grLOu|T7=WZ42u2Jf^>iQ@aTXp3V1mimU_!LH zAE6Eskh9d5O>Oij>WHD|DV;uFQ^*=Ii~#L2M~omJX_q--B%wl5l1CAsJ?Dr~go>zb zG=;K+&=`6KvXoFhwap_`KxjT8epSAV&^QWtIiW&A%Lt99MYx*K1e&W_LT3}YkPyE{ zUr%Tf$u$w0Oe1O~#4pufN@yw_Ncjc$5z`1>L5JB9(+OV5@En3$85W^lJpUwB#am%E z@${464DV_PRd|n$VL4VF*mBYf|08NvLPp^ZmMh&o40 zvQp5(Wd^G~(1->Sz=zqA-S}XcY=ZUx?IfvAR3q9lzXhyh_apF0r3hb3P_>1t$Q7B- zs~#`HXK(v8X;tNkyIiT1kiu=5NwD^l-QD1GgnFkA-%~KPjYYO+j#S+W;Ip@S6`X92 z!9tLfwY4X{-7yrw89k>$Rjwp!K(8-=Tt-t>jg>V}(NICGl)*mB!dK?`1|4}itk>6p zmF#{9K6~5v_6K>1i;ulLyVuWEmlxoZ?y|h8yQ$kI>fQ~ho7@Ype-J%esaBOYGiyPw z!bRZI+6F6YVK03C5BEk*;btqVyw@o(1!a=O7WGPjp0HJgq7S!1bMO9R{m-*oPsHZuMH_?3P@q*z^yx# zCpK(SlHGk^^st!+>0a)UzCS_dEcA8cU}R<0StEyFMWwy=NdI9pRoev^i&-oDb`#=E z!Gk~>GP-8wjfCG@qFsJo9zLrl#XWBn{X`ZO_q@^A4Sq2XelO9{rt-#kfZNrZSJ0-F zj4f9kS>-tN6^;qyT3+D=*gtbr&H?E^Di@s+qoYQ!QR+WxWC!;5jmrOr?q3k8f7DoP zkYmoMaU@MgnNfv=2EbU+oLXO_#(xhr=8yIlRq(J!XFEWO2cw75Kz*uoj2?#FXbX0DwxSRL~^qzdbFh} zm`$@>NW(0ca}KEKS~52KcVcJkP&6ra#tyq&%?oXM#tz4BbkFb+3Dww~`%p*bxS?4~ z+1GKL#pL<8;ZbXBT+SQVf7!TEt9Ad;kv7MTq5foZTt3@WqZwC#M&LRd`9E&#Ab?$W z6z0Ayx(Y``>M9&bnMAq@^Jw(Tl&(T9IP?&I;b^kDn%c&oLby0jD4*JB6IEF7v1)6j zwz1fTSMOli{~a3O0=xR`0u?gZ{R)g#WmMs~^}rsBmpd$*9uh_}_Rq$Lo5vy7?t{~a ze+vf3$&~AD z8-~wg9zxgesYleOeVtZ21ScE+Xpnxfq6c{kXkH85aUdbf!YZi#aPWGh5AjHGV3jaP z?ZXIr*m4$#`BDuOXm#}(o5_bf3C2|TMQD4pD4=nxRMpPm+$Dhla83j#>T zxlsWBvOWLV>bFPP!5N)9c;Wey88a~P@sC`Z746~dXb;tPUVAbIJediKcycv=Ch#vX z{KU@9x5Y4-H=nla0&#A>BosM!u6RRmp=hA+m80w037p)Q$%*L6y#TyBTdaiuu=_Ht z=i68o68+h?YRArxc5FqoW2;01ITna>>|#(9mvtSHj(s)Wv9+B~=cE-9v9)5FLR5>U z@sD7g_(_hf$5H5reGg3b1Vypa`7_{;F#N>R*=*;mBulZMs)3ejb9B@~;te?$9?cpE zZWM*u!M}hbkB}ocrIh-*HEEY+9c4GMP(sZ#V;c;Of76YIKOXqWV3x+DxMJ^c6vaff1Mbmyx)Z)dU_ASh+z15 zh^>q|1m4p5@Sa>Fs&A1MM)MpC@lp!@acd0hL{=TTZk0pF)CSAGU3yZ!+|dbyTNiLR ze-uY+mlr8eWm!|}E&CfUtL+Z}IHk28lz2?7Yk;HFH>GIk*dK+M=m~lQK>lhB5^q5u zfjaMberG+gtZSW~-IldQ^<3gy9LZ%!O$!hG=~oqlJwsS_dUs6#Pfzu+w=AY9Q*k+;H!9CNbOd$^G$Yts}Pr zTz^FM|CGp`{A8tZk?sqF{}iWV;>QDwh@$qg1-x9R6so-yEv?E<(&h`$`5Lwk+rPwd z#ZC{JPTG~c<>Q|vj$K-{SI(8@|@e$ zJ8HH)C)9)h-{io*Iq;YmK)iZ~e{dg2^_Aul#@JqjbT6<+o$gc$kw^Hh7)(D5X4=1| zekjb~{W1OTiNW{kQbqdjv(-f|P!JW&&Vin|Z$Ov_)OU z1)@<@Q|CZ?fIkk89$W^Wi&9)@ivH5@T`NARIjl2ZTIJjBzfO*`hoxexBk9v}B&GWO z6FD>25yKPObP$Fz5`C_49(W{0<>5|>$|ZGDR345lDi6mLm4nK2E-DA3i^{>6qGFn< zs8D+m4)x7iDI!0NS@ef=Xs8JM=$|eEcz7HRc1%9N<_HgyozG%ai;nD9Abr*#ft`Ojv2oR(qZECX#J()j^qC~~SG2%q zOYDz8j$-xFe>|~&rDqdoIr7i`7*dQ9`&W|K4A0|!s(?Qqo##jKVlVztJ%2$&bxFW_ z{##HTm-cu8M;~smxZ}n#1e$o`_;M#p;n7A}3NJ@5g_mQN!Yh$A{*~yZ@Jh^5FwL|S zsJ#dWHWuvB^!-%_kML_TOX2mH_P_m0OQV0oKfg3|d5zl@=y}14a8-62>*V&7*SZJNS z7`4t`ie6{G#TzI1N9*i&BC00|*V$}P9kq?q57yVn; z8J4R*C=+M2&e9zXJRpDn4A)^%*`c zwiitQ$rLKM9EdlDaFU_39PKik#Ft6t!ZjFLg&9uNWs(f_05YnajUP@=wMcm5*Hb-j zjC^&Oq^EjN7a=Vu(@d+7+KaHm_gkb>-)w>j&-^f4v5G2<) z``W#Xk*Lx~BoG7Jrl%p;e<4Jm{lHmM4lXDrk z)1WHQrJq!~wLO#AKhd$A@E=d?H#<-4n;^v~vEPhJ?6;y5`|X5@-2uX%nAlS~N$kI0 zB8fdEIk#GW3V*wbSY+cZ;RQ@cv+MzBX!W_CL`fhJ2vCZdks4FU6ZA<;) z;5=+%y1NzEz2{}p-KDydexjAqIEh(W0{%f(*g25|(TOECYKfEx38IyRKJcskAM}9*1%KS&>)ALl9jl%mN5S;1CBz)L-%S>-~-vkLT z8+pB*uZAq@q~>H@DK%$Nbj?{5Q*$aKYffc!&8dv3Ii{Iv4z(Ad&pWS>nsY%+%~=tH zSH|E~F*PX=)4n{Vm))`{ZjhrAozT-{oGS<<6vLM%8FMfqq`!7A-L|LV{=|p_3O65)VP|ga?UdsUhwl@e1=J4-#F!08f6y z%z+}fsDLT>&mSb#cXE)Jv_lRO>!S}6>thZQ4Uq?lhUkMtL(D<0-Sq?4)5pTj|7W0b;AJ)t?1gTxO!Hh^`i^NYQ}}x4WjJ(ob0NULJL2~8{oCQ09c*&$ zQK3`+s5oLP?(Wr@re5a@O)sZ$PlNGV4YFa)aU$*?SS~_1zQ7w9X?1vQpIT=&0Na6a3_A5$`ej@81AfVnv zoMfqs4&(cGh3C-IuwI>ubzs6>_^%AuHi5e%z}dd`5!gcaK%{OhP@Cn{7i{&X4}S>eLU)kXc8FPMgsVnO%#8!df~^$H*O-G8Cy&J@$Hw${^Mq= z_i$`{5hk+#xJ}d_-&XOc=hn%Wao`KSsX{#RWgPp0FOEd=M@^#`<0~Wd%fk^9FnWxQ zZ)4c_1_Vu(Y9uRpGi)2*fS`Y|gshBu#>TffY>`$zHKDO@s$OSdS`@_ql;~0Hye*$5qUtZ6Bi~?QsRUB z9{h(@I1wgoQFqR5d>EfzqsQM#P`_M4KVL!)7gpIeo~zRQtC*AGNw24?vp)Mgtw6nC zub}!Fc>Pjf=b{CcTobekt9? z`)$;!>?_l>Iwmz|*f!o)i)hBT?nT3kZhDdcPxq;ddPRfBce1;B4%^0C!m8C`txFu+ zo-0g`qLkLOGGHdV7sF>-_rZGT%WNBOnNZfSidEnk-rbFGOx@Y0TqwMXk_zwhMy|(E zODF^II-kiAS=jee7W`F&Jc=?EN1Z1pyYbCy@?zxwxNI9w2h}oIEPC!GJ-A^zC7xM6Yg^x^udh?^}$~?P`~RP(UAk*+D$#^VPi?B&Ptd10SBb4 z3YANf-n4CM#%Jw4n6;4nJ?x>~d!@R%_wU}r?rCQx!|pEIN==;(EO?uPNjJRn>9Jhh zC#OzHE$wAlT{55x%o%jfj5ng&1g%3SaUeh7mjqrgC|O^xC#Gm6yI z^whLe9LpeWLiO<(@33_+jEekGtwW3k{O18UwD{hB!~lop0DnL_{BQ#I26v6U;XFG^ zUycr%g1H)I5yqqVvUp^eZfkg5%q-v>{0gR0>Vld8KVR-L9VjaXMQX z;L(Bv+Pks#Nk$#Ky-hMV&PXc&r=|e1P&K^Z1-*Eh(T8c^QUsh%9a-!gqtO9Bic;+* z$(T>Y5jucBLp#-Fcv{qeXYzm{wrFe?8)G<|)dM^y4U=sS>*e;jrX8hA41_CdsSv83 zaOn|F)C_+BthxD--o#8mndyoHI+r2j5IL|QT6U_MwS|#PVwG!FDo!#n7ez9Owb+X_ zDVmS9i2nxgw_|N`3w^HP`Gj6zcu=1b|G{w7pKUD>Qci1aYlV=aDanF2Wba6O)qy7>G-{=FUmI%3oJ0%{? zYHn@dZ;Z0gw;G;L=-Ui0F3PL9t%bkA2_bLLtO_ATQ)0j1imUqDsRhf0+^bnjg%n*0 zBD0Tsf0@5=fI@%Y@G^z|f#Jmsa38nb#osVMAw?|lXzpf#2ehC}7&G9tJf;qsE<%cH zwpAgdm`gC=L#*IO{EY(^`nQIcDfAxCtYtWb{7Mobc#^;p&^rrzXl9I?=Do0!1M6gu7T;zlgGPO~l;v5+DTBNkFLB_6TO zcGCDe!DLAnQHUcJ+K9!CIFmK@h!}~`qYN)o=+TB3H)7G%oBP0sg%q*G!}GAfKrI+I zp@X?8$8-@=T!Ux|DdrNyDW4S-@HbAe(B~RnrqBxvFK)o1YdrUX0ShT&i3g1TL^1wN z(}HmWF6O2Z(?v*e4F)Wvm`gC=a#pa2zj44q*BV}?&>IXdZor~z8TWw!3n}8@l#rq+ zaSW9W-X<(GM_ha)0cFYav@~|Fkz-YQKImh zMoLH-BWz5B6u%SX-XT`-9Dn0X2tCLlW5DwXoo#q=krQ3&iV289p#q(Udrt zFS9=<%m9V_K(pe)B2A7qS1zPSv*M)0qjcS+T*&^KwNyyIX2qp-J~vJ0Zw#i;^@isY zdV}G`1ygj*<~|TiA*(g3LP*h+IG7bIaK08S7qV8fmI^7l5@bsg_YU(n4p8WAhLUZz=YedGDT*0KSvodMMx3* zq+tBHTD-+YA}F%~=a51U=HQ|ei|!DV$6V+rWTeqWaVLoJMi+}wnQq%! zDWsS|ql>js2|IKYGScYcGcdYLj7ADBI|ISxi3FF&3EsoA_?({2Rg{P3^E$p0y_dh? zs3F50p`*I=Y9_BWthbnyECoTMm8d_n*;K8&T*x$*c3JR%pBR)VC}ym(fvjY>Q6^-B zvilP$yMIfpvILR`6G=~~?-ZZ8++;kW8|#%bBiO;_nIaauBY zA@__}&_ZV!UZ&7+DOUYK!SM>+-|&1w4=}tOp$8gXzR-gWZ=%roUC9Pix+9i=0%l^R z6MC%S+*=kf9F$`R)0?fzU>vI;ZjR{}h~Y*JuN9a&x6t&@D8M~5 zxcVgY_=tY7_C(iE?gPtOND)iCtn*lae)1Skv*L=dbP+$`3{ptZoj|IH70-z9T4?+g zfBeJI2~Gb1gyMOHrhf)P@q9wlKL(+AIYMtu(faa*-e!0?LSJQgKB0FQo>%CdhL zTGy(HtRu+ZQ1gUrVOGLIOaE$yWzkPPsG4E~Mm30;&GoTT(AU-B{0E zBovA2#&PcRGJj*;5c(a%%M|)u!{fo4EEQdU;y#e2LW)@8EPagyPHDlox*=V}52zbL zitYq;!{YmEcn1;xaCAZ^8D6H)DTe12x|`wogibZQ9HD2z4NbO@FZ3+K%Mp5x;rWCv zF+8u(^9(Oj=yJnz3w^8M#nlZNe-`@-Ga{sjC7uxx^lHIMAurObl|pW37pQIs5(^3H z##yXmzSgzsG?PPF7c5~R$1^Ko-N<9PeE!C|Av8X@fPYjs1kGYDtQaB1I2fJJ#*FuI zbz>4Mn8x36bwe6TxWlK_js4v31b@SFU(0StFcVY&>HV6PDi>1nC4tn7+*?vFLERY1 zwj~sa>c&3q^L75ll_m5a49_R@9}O?AZiudjxesKikRp~iOXCGAMetdzYpIZty5cXa zJi-Fs*Mj9j{#vu*F3`qGxvZuWmdHJ!<>Jbj_;kc{5%PDMwNyy)JVAv!#l7F+Z=46A z-!Z&Qq2Dt+uh1VDo=@n17+#Lh9~xf1&^9~^f`4FlqR`Fo%n$y-N$nv^K!};xQRuMY z85E+qoY+MyLLu)P0dj31))o_j8t# z?0~aLk$PAwiaVPW8(!U|Tu4d11h$g6w`6gGN_!r6kpL#DwDgY#!n23nX`r~mg`Qz} zKA~qCURWL1uI1`PwQGLWTdY6O52wO25P}_Atz~8T&0bbf=YYZ z61kyTF0RswPxS9%s&i5yr)#ODLW<`JDs4IUUd-P(4?$y&zlGy z(}I;k7W5!1P-=vn%`Q+)5+oK9)TH0B+ElG;)z6vylV&Xy@?B;ntVyr2s#E-pHA(2x z%%hs5k+!fRiAgaIH7S+HV!V&5Nq=XxAM$rxO_ByTtN*l`RLlMLYtL2cw23F?IO zzF$j~3n}@MKE&x`0B!KLH>p;6;i|! zXK5n~gtTCJ>e=CBlKgv zOx+Oral^|I`bop{34Pe`yh8uP@G^xyVt8($2V@z$u~C!p?_qyoMuZfx#4{p-d$nMt zkZ)?%N+G+j3sg4*iG>7p<962ZjMlZPm4|j0f5Q?M@?mBrtQ+^UiUa(ObwlWb%%i#? z=y7dyg^*$#j6TE0jQ4SM;}KTyeg2NC8`5x?JA7K*$YGncdhDzI%%lV}K?RWB^;)W2 zNXeH3QWtPpp-5CWd_3iYP4>BkE;PJMp~o9uT-^{|L%9!RsgNR;I7{js0%h6+BbvKg|%mfucdgp1Wav>#O5=iyu z-jaF=>c)ERBB4lBH;!{3mq%y4Tj(1NFJI_=hUXUgW5dfA+UjHU3EkiD;xb(PNM~J; z;X;a7;tY=$tQ5gPTGvV;BXz}JbBfosNOWDVb*&QeW@e#Zi|!Egf$1oujGsCR5?2z; zZM+|g#gD7C`V~ToWmLad`|+mfD5O}Xj)IIIagUV5`>{;?7_ZeYjV)GL+~n0=%7wgA zvnqtVNwb#7K>ngx74c41#F~?-g%^y~9~?e}yhgKDithIeD_(cpBVv`@`yws1EY^H% zm!1)iS%pqm$wQL;MX@qdSe?i^);W6Kp5r#;rSgK2DMDVXE*Y4SD^4I+94GfJwqxYx z#`W>B{UK)Ix`oa*yiB2o8J<_@k%s3JI?wQOgdSyh`9c>M-bA6#?Mo4WieZB%+gfWKiaW6gga- z@o(~q;B+lmDdd+lYo(B@*$32Bd50jekl;W*i*;P2b*=L9*z))rj;TUUWmdui`C?YF zl)v#nF7ztq(Scmhh1%!}A;mZtUBWIT{wZ=+rV97W58;&Sq@#`!H zte2P+RSAwex3L0AZ@BatFBOP2FJ|A?=F5eYwUfZs5$-L^Fv0$1EPE`mOtgP#mWdzF>)6IslZUwJpzcyGr-eH|RwA8ZL)f?O8O!hA?vRaYFeTg{Oz^0IQ zAJZ~LiS{q?a>WVc;`c8VtlQX&-@hE*D04!J9Inpz{fh|xP778FdG-LZ0^1THE%pI*L78JD782}V zUSYL8w60YLdA!f^H*6(@e2G~J_b+d;s`vOC_b);w`f02gn+~L#qFHPJ}Y^$wGf1Yd!XTtrqr`N9ZpP)~h{V=&u-F zj?i}+o=@nz4bLm|e#6TY`X0lJzpl(a74SC{4x@qd;DTke6-bb&Oc~&g8CSJ+b{S;HRnO zQT5^ch^#z9UCvk@ka6U zI$OjXdWi4+6!>bN^Vm=a?Vczdzqdmj@aC!dPyw%Of0elRs9zGdYLv z561R?k@<21^lN-WPHxP}tzWr07%ShI+>cpLZ2w#MK7!mhS;rUY<$}K4GLoALvGSeC zUCDZ4`(MGAJLLM#Xg=|l6L7h-wVL<+vGSeCm9n1L{)2g|Ap5cB_&_NKOxcRcP9;{p zGr5zjC$|5qu>KtDYN%?q{Q>+sC;Wi24SnE$drV8Hc}!hHb$v@sa7^pO34sZPqw4D# zT3Sb~YiJp>rY;<^KDkS1b94{tUSGFn%)098c#Val&lYp0XH&4be$4pM1%+c~E?hjD z`Hj_8^}4H7*<95Ss;UmxH8zZH4dDPIIn~GrZ*B^PM%Uu7goJ}YxNbubm@xKGxTYq! z7HFu#p}KXUV3;~Lg=?FGRW%|5;?Q*Ah9+v&G--f=v9`K(bq#A9xl_2Nt^w7lPF1WJ zO`}8LMME%LgMy%3Na$Kq*Bn%0z}7VIF&@wvjtY(F1$zc6% zi0bCeO%jOOs+z`4#BL74K-uZ0s^(CT>6tTT1)G8mHNl4JIu$E;&v)jGg=;PhR-+b$ zW^4`zi<_IP&=JL$SsScgA8Ofv4d|$1mdu(TRBkI&QQcgp{7~rJU?^0z4%0xvh|F2o z5^ieImLeKT8xr$H$Be2_aQs92?T#tawz-EOW7_lXKCEm0yy+Lahq|Y&_}-tK9M1zUSPuN) zYl<@xevmcE<;?GeU(4~M3O|bRqvFf(=_EVjdM3NNJF{(9aGtCGXjh}#2YlPr?Mm$A z%t|O)N1~&8COgwT+mjsEOZHptEN5(=T=&=;s4crE$|pO+QGuQ8KB}O59e(BGM+tr? zpGF~deLMsy!x@zU0l52e_w9q1Pnmu`4DY1<%GVQ)E;kEgVtm;Otk2*|D@Mj~ z|JgkUj9wpM^zZ*$My~*)N2hIj8uAOqy2EiF?PM-^G+-=KCAx8H&?y3Jf3GvIzFbjh!3%}!h_kYLe z77=J;s%_cH^yOu3m?yyYF=^zu#Q|te&^KdVSZm z*vYm}!$dsebXIppM&~LP8dE`{5mgMSPzhGFTNS4>uP$L#n;iEEOlw_NdaERFQoM;h zoP5mnW0$#KF@s*E2A#h4V%NpDm;ZE{`##r&H0bWP|Ik&#L%#3-@{nD<-LGtOr8{G7 zS7@{={ku?zm$}mCLG^pb$?nzpe_8HcPF|KXv6qtqd)w0bs!%u-t_p9gs<-MJ8`k;M z2ke}z@P<&JI)wW&t2r3JKEc46#!$G~Ds618TUXV*uG%VX39p?PsDbTWSaUZrH`G*B z9U%&PqCj;^bJGUcPX>a`%?*v#`XKCQnyo+p_DK2kRX|^3>1!N)6$7{h!Xtt{B8$&_R4RY+#vOw9=N~=ED3d3nx zyVg>p4}>;Vg=zz}8?Dx+jq5gA0o>ri4l~e%L&b4dS5?;rt&rL#RW??Ho9i0ZS*6vD z8=C51`wwKz8i+;+cB`8LxC^w_)UR&|G}hOInouWbE}y-)EHHE7g38&;Dy=|O2=?Y1 zAe!IchAZ&U*hH@8$na}&6_ zVNHFoY9mb1x((oIZ6H)%wFa%$HLA~zDs~&HS~2Y5x*Dr=!{$JBD+f>Q+)80f*$Vus zx`se=V`JEAt=<@DYzc?zYJxNr-0oX}au{0aLaR0yfMjXmkcJz>b>aG;wRra2*~`lH z%#ec(RU3jeYM54eSpYV8f%U=7R&Ag@*sv~K3mf*p+PdZt45X$pw5blf4~8t5VVpgh z+?g{1=gzLED4shzP`SK(c3|o3#TBIs7g(UGwy|-20QQO1fiMIf2DApwda7$-M;xdq zom)~|Q4%OFE3-m@rp9I%(wYs>IS5f{30b8uTR79}nqaQiRzs>_Q(!|?^ZF?91p*s#$GRc#DHYbadbSgrC4w*RmzmvG2L zS2xx-HixVY>jI5yF0?kZ)Q4dyG}KrW*#K$|grZQ`nz^vNqy&=>rW(c)vTA~`veZmN z%2(CH04WHqb&Y|w^;M9ErJ-6#dJK@7%GOZJ8Wo~VjgVWV8{mvJ6qs$TQM>Y)&=pP< zgWy&v#J_qyfrx#6U|ldAfDx{*#Oz($+_*uFqXib-xUnz|v9nda zaKT)wy0)&qW(}u<-IAaC1lr<2=Dp+8U@t`(R!I7ZN zoIz(lw5ZRmYOTPU0?P+;)T&-nTLT%3>#nY<9$IQ@s=`%)aHAS`>~QDKt}K~dJPT6P zft3$HgACRg|L9N5KKdjRk1W2C@Ze0 zv_flI0yV1YHn%i1Ho-JCL9K&219=mOt|M5Hpp*u1*+s+}Y__7sP~93;t^%-7YGCd_ zDOM3QP^S_AD+I1|NN#W*dWB(qgiZXYP=+^v6LS|V@y+zX1&YyQRr1$hZHE(YiwajD z03{F>79>Tu6-o&dvrdB;kzf^&(d8{`;N-Lf(nA#|tGse?pmGLO56Yy{SypQ;uGLlx z=P=x;YlX55i3SA<4A%y6E$h=^E3i&Y2-b8=6=O`_1;I@b-T)&4%?ffB zgdjkns!dg}@|!~tNtMEodbpmfU~3SLir^ilU2~(FCOkxZ;*z2hYn2omAdN${@X;KG zdS8PxRX9;*O41RE2j*aOR>Eb4#uiuxFq<&3m>ueR0bL$YIjBoWKxJ_V4l3aQ%-LpG zJG5~4>JC{XNq6sp7M%lud^DC@Uh<-gD@0&IS*1=Im$EqeO{ezA5 zxX2+5F^C)Kn68dFc>Jz}q$Np6u?`i|TV%l1yhTHZj2s#O zrx%x(i)-sJULj#FKd-x-hQykDu|}3(3Q1KT%NEWqm^C}KXp#1QO)ta@B^A@f9>EG4 z-6beZ&!4qx5D!U6_H+%48gZo>GSrkx{7p$4L?o8Ov9>tnkth}v>>kp!}(0fS~PE}knt_F&?5O68ehsR zE)4^vxa+uz={|0{^ePpH;lhGB`Kh5JMh_f0QM-fmwcyjcqCxdO98)t5i;|_N`^Co3 z$tfz9K|;b}wv4vYxWP3g!^!F&ma@jh_#9ffa`YdUJ#z5yfxDf2w$upu74;yC>uN>h zQtDVSIVjZ>sh~{Sb-t){aba+Nxdy9f0`Y=e8NIUAn{x}p2rPlOxI|n)TBx|!;o?u+ z8kqwIj1^y-RTN`y82R+nCCSweWh0b0rP@#e&CJpe-}CZibkvfip~J{7B^642XG-*z zX4SD%ykJ&N97VOyOKg-7A04YSL_+yYO|FZx7+WP(32s_cJXaiYjySOdO0C5pQR_}S z6*4!?N6;-LLn??lM{bd{oyJ)t(sI`NHfy+KQ#qqE$7YU@c%fs}4C$rw%X6g)Hoj|R zO7lw!!%DOy`7@;8(86*iGe=aEOC!i2R1#C9A{n$Kag*07F(xNpM}5r}kP%9BE0Tya zM;tMvK7*uvB5Ik81&NIob% zU(Qe#wr5I*3oc!-SO+l)>N@?9v_luJrRthL*dUsdJxbCYNrSaIG75w!CzdTNlVCkd zGonHrXvE~f+jb4YF^bc4 zt9WKvNS^v8@nqf4HB7(w3YRGfb@$H@MLBaU8*pD zetuzUVPWwCoh!{RkYq@@f@D;c9X{l0RR;7yG93vQIZ~rXj2bQGmSnCn{nHPJXz(b{ zsgUeM*En>f3q45}+1qqripc}1CKOH!nmeugB31(H+C z04I$+c%m9dIMhwbtlCoJDrcF>8Zt0z*yvH&BggAG z44G)g!USA1S?LW0ac!$Y^ZwX*q^pERkzqKFg_3zLEGdvAPSj+J8q7bdbmDO`W{=Q0 zynHLpRkHfW*-N&LrxNNVi>PnS`NLN1HG^ktVO2s>+;tK<4;N^~@OyqpMAqE19`^iBt2n z+4(}FB_{MAK5%mO$U&ndQ<8HQVM!TNIam!0DTq#vN*9JcBXKh<^!?Da$ zbp~04(Mvp1rU|K>{>3tHQF9i|PlW++wbjVl9NK4N^QmrKdks#jBa0Y6N9SAm(_&ai-{N)SR9rH! z#g6DKgGPkKEIC{8#29O2k`&D)#Z}0XX>pmfw|f34s}eepPMTy&GHPZVgw<(6hmrEt zwZuF;iH?FAe+P)yhB&8-ndlBPX3L6(SU9^h&SSE*OUhXy%r4YfNUXKQBgw#Y5iBkl zR*mnI3d&~({SsAY$Z6@~ie^dTHrlv4eC>*2YM_`3B}@Ry=jRlaN$#l)5R&rf8CDeu zE7J96%hbG37NcZ>7_VHbt7ytvFjE$I)LArRkdacyn~-Bm&INQiYPaIt$QotwPdjnK?;aq;E>D6~f8n9Q6hnJz{(e>3A4ALjS_dH7qMc0}h{< zD(NX5-z^Bqv@JMH;=)YG_lhNj3TtQT3ewfI%)F3Oh88ZBa8O(lb43~IVtk54juSO+EbfJgvv?vRQpn3X*&HZHU zS(br9>u6yY+G);`GQ zN?gj9bCB|7jZ@o8)|ldy%iLa;p>>V6B)6dIq%)XUJ{YYZXuz(Jz9TtvSgQ?FAz4+C z!BXOKuFUSTXXO`_Et;$I3R`N>%QkY>veu&+QfZmw2bE(N1_Wf?GTcc{p{xCKB^v8m zKuDcr#fqIN2H!BDnJr%`lS?l_zVdor$SpNEV@CAq%8o6Tm3S1^Y4rk3WojZG5KSNZOi0NzvFR->o2~Cc#wOkv zyPz(!APkqJDkRmCt7$Ti)M3|FPBF7mYZZ${tBhThGCD9-o{V^pUX;^GU|Ie=T%?H= zuB?9uEwZ*J9wp+^)AUu=HOplUKdcvN8a-3SQ29oPx>Xt`7-O^qI9W`JGnVWydz5~2 zQocBVP4h#1k`Yj@4u;qf7FXrMWEf6#!7w_gl%a!zI8C<9T4WR|$}bH`TTGgy7U6QF z4g{&NaEKtP6ChoC5zA>elZ&T1_m5xFh#D_X$vR1qo}|1U%E&Qx;J}gN$IARtcAn*wi3{koN-k`L`GQzB zL>I}XWgPHJ>fvG-uCvLhXkxr8p^j55wF?r<84LB2gqTRu!q5le>4j^=QiJgmGlxr^ z#l!TPtpq_?eb=d?oK>*itb)1H&nAzX&|jD9gvvxhFTTK*<;7t-sZ+<`8zG#?Qea`Y zrY9;iSJSIJ5^Li%EIBU?$3akHpe8|b5}|vF2{ap0pBEd+*oQT+EWMH@*FWOKBJA7L z<%KXZN^K>{k*}2K%3)mb-ZjINaYL>fifhS)Q=`N%1gaPx;`QIkOj<{n${ZW#Cs(Ws z3PQBXtC%}i=Eb{~Q3edeDvC5viL58fqP;B4R*5hYq~j%Y4R>&5*+UQ-TL%c4ea^C# zWeGy!Oxp8gAxO;@2A%&JTzqaJ1&B*X_z$a=V%V5y>gbiqo-EEbOBa*M$`<5>E08$7 ziV`uKeiSZU6yy|3u#?nTj4J*SvTW<2SbNbVT-HcrLxOmP)K{)u#+?b4pA^ZQNkY@C z3Q6CQvJ4NG5M)5r1>s#6{iOium>O<$&MR}eT}jS(b?6X=LWZNRE4ghz+Bf8EWD!Wl zhT=uRNV^9a_0r&ba?M#TNnsMJvj|xU)(b`2vrFPNC()+ajV|RBE|Mub)`P@bWFcj@ zl@^SLn%L$QpCpTmDV=vpvL zu4RNVLBh6N{46Myp-{5Wu=PRujfUrNNh0=^;FbltE~=?nsU!pv2E{5;j7zPm#9K+m zG%d%F7GtpVK09Suy@Zco$`P`^V%bV8tts}A7Ldzgu~SP~;wEJoA&b#HA7*7aTRo?6 zAuC8IX$>1F>LFa||E|)fRZCZM6oC7Sf^a2)MC`n12^-HB?0#FpryexUR)mW}6 zQ@m^y=OAGc5CW4{aMwF^-?%>`Tme>h(HLKeyaRMa2 zWlP#TE~NK5X~Xw;nm1A|oup*VL4sIiO!P+Afi4VX!8@u(-*_oYgHT8sb+%F_-YSV3OHU6@m76{JTOtLI1;l&gz!VOm0hEKW;T5RcN} zDd#Eqbnc89`6asOG;4l{RPLIEEeL{=k&fPmSm*ngaE9*V&!1Z8u3*cIi; z(#Di2<8)J&jMy49luHG%m{t~ssW9n?>mVT*hFqqqJJ^nyU5mPi>ar|cEL-4o7h+tf zt>UfWjP>$JNT4KoOdeOA>jW3Cy6+*ZZicX!Ba1uQPId(=drndD0&#EMN(fwi=gL<#giC zzslX0VPw?_O&D0CBZpbK%#OqM%ist)lIP0hqOg4{To96)#tD@KcGt^!HS>{~sr-~n^D168JG%0&1-=lqWXgg`tT`~cT8J89ZBK{l z7~OT^DG@DBJVItDpXt(1cGg@mp3HB92`c-VW++vL7@g4Dv`Z=_BiVHEN6DOA3KHgh zl`C^`6ECF|7%!3)(Z|9YSHdPO8KIq;Z3l)m(NbP?Z(Evfw3Z zDygw^zp)cWN}Q1#Hdik^XpX5RhbELJk%reLH{Hr37eIA^rL23*Z*oe)lt{jy5iz#1 z`i5+n(U2pP5OIui<#W#ytyL6Ph<6bH2>kI;mA^-&ksG|`cGqgNkftBh*%d42GC zIn9F7V$C0`{+l|nY0S~x32Z;7UH+iO_4t`coD#Y)MFv@S@8ep8XrOM-Q2u?FY7uymm}SyazCd@U#w*sc1|~$WC&{=MV)a0YR>LJ*9~drfS6#(-36RDQ?Bxpf z)ofa(&zkE?oun};_Z@K4j+Sjd(T8HzULn0WOpe3Vv5@_U^<}It%bh6!M4MWwi0vpE z=5-Pjqf0fp$hgX#Mmj3nnn~pacO9km1M%L_R+#eV=p;s>f}{g5XPC4|Sd-W+9vfuC zmC=~Lg@9%gi3M`9GN?;$)HzFt+EV}AkcIozo?y$cS*9|^=q6DaopNL&w>D({yb4_& zlgU$<083gddwkRpWrw;hR!dr93PzWfovdN|Oy%DC(y$hFFMK=~}Yd zP$uj6a*bLRz~ri5STC@-e;AX)OXW(Lrhbx{1t*VFUR+9*C|Z;&$xqm7D9W(yH1w^? z6&5K><~m{Ui_Rj$nGU)dN#)L69U-HFxM53TZir*pFf1pUuM35ekA+JswlF(WrVnAd zqp?U%v>NZNvWHcMXC3DC>YH?CX}$k>ktOEiSQeHnw7YEmi1v{o(5S@-<9fw zYx410np{Dy+yNLbq~;-V$624mSzXhu^uRcgFVm~lR*bYz@uIM0O!E#2dD%1b)Ihq` zJ6_&ir~zND;L3@GZKNztv#V5ECz_g{`rX=b$|G?{yi~6q##w$=|FQYvJ7xJ8 zY8J?Hr-Y}u#pSc*GOJ`KIWa4!%zYZ|P!7ScVA$sk*OPP|PtiB$fzqy6PSB*U7rBA9mh{jT7iTlJm$vvA8;(rZKvB zA&Ul*a_zcACLe1uFGFo;5gldXX(#qN4GmSUedXvvgrqIAWhj?aO~)zCpF_=LgN4*s zCV}y7SOpH7LQRWX4hkRc+C8Q@v^2I>S`45uNGhp$zi-F5$ShGOq@~#*G?o`gHW9j* zh5|X?*b2L@_vm0K%VTA-zZmthT8g5%vWaJgW(u^&S$4n;9zR5PyGj?($wo|+!{}IE zJWFm45nr%%UAHMSOh)FSNl=x_D?$=rE8RvtLhKf%^m3sMgMCnnxl~nXtJg9N%4IIi z3}mhl@1Y7iNW$`vdX?UC5Z8)ij0!ik^_1ZnbIkB%-5M_GWk`@@Z>`Q)24xQ)7>y{7 zqkYl#`&K5-daH=+O_Uv>!F99x4=B*p%9WE=&X7fTx9c8r6FA8)2vXI@%=n;B>O(f#nD|lO0*r}(dAVEa-RLWcVMKXGA z@!cZi$O$9jWeCmrBw;Hlln$9aU9z7!A#iI0#ARTf9QpA{uYl@=Ak1w;_8ojv7ofs& z8^`7GlcNXB)GeCQjpK5$T0_EBxIHO$jdHn5LV7^hyA->O8>_NMX6yZd;qJ6-$q;0n zAeJWch&Tf*nJ?>iGBa_z@&^qZpEV?<*F~$pZA#28V?FjNgf`T*@?u+_k~WgPhSEc@ z{2ZEDEUVk?!Pk+DS9Cel)(Ig>3I(dm~)k^7Qo3dTk^E6ItOw<+hustv* z%(TSAB(#jzo^BIyxilAd>C4Hb24`g*nciVQ{`7*}qIio>=bne+ULSpSh#Yw4OsdA> zv8fsho7C99VZA+;$%8rcSuJ>8OKPMF4!o%5q_p(2YM)zcUYa~esfnPz%H;^pc95U? zY}e5Wjzom;a=zM!8KDw88T(k(Ns$yqh0s;cnW((p+t)kc5PXSdD=^RKKnUAXItU>$ocCrLSLl3b88MtYjIYs0cq){q_r53)+7_>(-(4i zDu;8eIVNonJ=e+jjP0QIF2`r#xjdq8wCI~A{37tv^(kKc)0$jbvwvEPOKSB`OTW1G zz_bn*)ftf1?cBPVX}!;?Hy~|Vt&$q`(|Tv6b<0faAR;0vU+JH=$B+g!H>LH?+>NJF zLqzR%l+jS0%~5R`^2N$BM%QXwQ_9#~*PsS^j(xSBa)k2;?J_R3i~7Z6e0IH-Cl$Ly z&*kD;1Jlwksx1{hw~i=1t8T5{at<9bUG4Qx53BC0|BLR2{vUPk#P_qL9Ba37skz#x ziP}Yu1}als8+iNlt2IyCV0Zfr2=h`{J|zTivJN`_=i+)&CE=^+9;=;rmCa{|!B>?zweFTvYqwTEo-2 zT~f2=W%bkc7}lU>j{L|Jf75o~13_$(+UtL6_i43SRo^eN8)(_%q3eHJ_SyfR%I+;? zzYbmJ!++85BtTT@cZ+IP?RKeD7um(6Yn@$WS`mNB&5QB3Qkhe92?I`-kXLk>E{nun zN{jW4if44`UG;5-yw&f-)HLkF#_ze)C3~2k!aGfDyrgWYl6i^fj$gEQPFGl>!pBl_ zs*4P@b9G6ii`-Y1-$ia_?HrO|sLh{^d#uDV|8GaSd|h2h9;H;}=!bXwkVPFI{h`l# zg-d#zT3Q+d^3Po&ZZ1ER>;b9J@8tLP;ONfyG?n_Qb>**Be&MpzFIDIN?e{a}yIQaA z^4}lZQT{r_RQt^8uiw$5pZu@x`wz6$PgAMW;*ZK#`=0$AFQ3@&l|u4Mmv-^pKQ8lh zciB<$G22AHamLE1wcn@l`)YrEex%jk>_1Idb>;8)yL=$Wg`}Kii$sQ*e(#hg^fi^b zbZGo(uPm$fVWzST>P5_zrn*YRi_^O{p*BL5kYP{>Tm6&_1EW8a{X5cQ=N96@@qKu+&7lA_mM{8 zPb=SkYBN{&{Z?b51V4k&zGpwz;rmhhuGc>J{w@-Kv+o&yTYgbS-7M7)-`|4*lbyeP z|8@DLI{WRh6zz||p!U<}Q`+~A~eky8Elj)lTjBYxhsIyy~^osCcf%hhUKKN|nmx9~; zFTBM|t&~Qgs>hY`b}!dY!&-$fjrUEeiiUUV6ZnP%{x9LGe{}fvuCkudfMRUjS2GF-qqFfHR#!n@7s9y zO@e%yv}<*GItf?%G?DM=Vdph8LB1e?>#(JIx{;nc66Bvv;QxW1(a>Y(CBd!Q`X7|Q zj}or+DS@8YpHrzR3G$^0{L%z|Qv!c5fj=i)>$48^$&2PreVib_GlA>F->YlKLxl(X zi~aO4KOY2M0&a0}MuMKjkY5J*u=XYTmL|wwlfZ9F;EyEmXA}4v3H7=dGeRwXMmgheln>H_KyiqWxmiAydSv9p8#%u zj5Dky$vKn=ude>fg{R{j{g3OR$NrLFSl<$X7r^b0Wtsl>6ZHQKdHah#rl*bgM>sG1 zeTuN|B>ImQUR^zpOW@@R{PYA)w7s#`vsSIef(0lK-dnq6&HlcZDJ z?U7*8QoGe4-t?2WlQedZgd48$VUi`Py`!V*c477&|9I5u9w!iXSzv>J{T^>suHp@q z_m5ZZ%Bb9+#d6UnllOd8t#75i%3U5tWWS8uITqf@MQz|#u z8l@|rXOU)v=p&HCv6UoT~0Rh|k9vBAfQ3 zq1|ql#KNl4Ybe~rD{ra}9a_+cDi7xQA9YtM`Y+o!f}bVb3~wKrRd(GbA3l-JAa|&Q zUw7RWoT~hrH8LGYb&~(T{}qqJ<##=l>opkTr3&Rx-c9}+*L8Y5SkHM82c99noBS<~ z>zbDFdmQiK_*%!cZYKYnkp7>c;oNJXFui*K0 z+c~atOXJ-g_j-vRI~^bH_+O6enuVQjeay$Tp1$1vj(fk&cHGxzlH=ZQ z7dt-Mm3zD6V;z4UT&I`1CTjKE=;X&czRB?kj_)Ds9D3+^dHKB^_wpHzd-+VqCyFks z&osxqe2L>;{uIZLae6Lre3IigJMQ)0@3`0hvg2NUljC0g3&*{DFqqUs?KaufCqsc8 zY|nm!^m#~t_bFFNk!-*Vi`Z*$z+ z=Xb|@x_Y*ibrC(-pF4r;*S!9o34B-rFHPVp68P;2e68chOP$Ql|8U&bb5jEUC4uiL z>m_>d`L;~p-4pnz1U@@~FG=7l68OplzQJ)_V>0`^>A1Jg7RRSL`Oh8q@^&eZ?bD#1 zS}oe`1o>&@Hh0|XNl)OJ2|PD}7dU>RD|eCOzTBk={A$O&U)}Av*YijM*L5sC)IMI1 zu4C!JcKbYm>-v_-dp&h!{mHnmPa|+0W^|p)?BBx4>$N!Jx=yBt)~CDtH{RLtT*pU( zb9|WKh#J z&f6UK`hQ8_^%}^Ru&^GJ)UixcBEr9rxwFkig$_+~)~f9rt>^0@r@Am$UOvPTu#6y>J~<+r{^bHjejp zdOADq`$Zl&$L%>z-q*7tfnS)wA57ryB=D^X{3pkKzo>&h0?z&SzyyAH0?$t1;}iHC z$7ee`S2*tNc9!G5UtHk0m%k-}-{-jR7mqmZ^{h|eTM~E;O;Y7xd+zDD?-wl{_vLm- z;JqF9{bHcwUe9oF?H7B?e~UkpoV@QB#g6-avDooBPS1Ic7dn2Kf4>AiDuL%Z?)%Fe$9+A|NZ=PH@S7YzN$P9ua<}7N|KA<={{NKY zUjCf~zQu9x|6e)o_57H?n`)4igYBG=!23Av{eO_-zT6Suoaan-^4@Q!JKkODW%ev_ z-234r;OvK2I(c88n-cii1imSO+m>CnTVw5vX+$eH-${fGd$?LBs|FGlx zI{v2PEgXLjT>Yxt@sFH*OUDmarE+lpItrZqb6^5LK7pT^!0$-lYZLhMj{E-guH)Vx zwkPn0YAiYUyxJx3%mjX10xwVC7bozW6ZqN$zAk}(>UgP~pZU*r$Gv_2blm4lb<{cJ zVEY`9z&kkZ<3kU}eYr;`@Z1ExB!MqW;I}wFS zy!yp)FTV$F5Mn#;=eVzbhT~pOzXU$kajz%Waj$1KxW+O4)$CU0b6mTE@r6!*x#Ooh zd2LdYe+!)B=Z8*@xAWEn{#ycX(@F}HgZ*Ss0-un;XF2ZuVS(emp34&Wss#RA0^gFr ze@)=~98mrFc23~^68MA!J}rTt>-c=Bg0=55$Gv@SbbP9lzuj>!|6~Gx!SNHEo;Mx$ zdj6HbYaCd;-C8H`ZV9}<$3ZxytF$E^d0BcJe1X{!hofo>#!tKF2xvx14_M3a0-<$F=EFEc~)>4OyNSS_ox%D0Q>fE4KwWmwS-ohdB8|oPOVbyEyL4JvM=lNZ^wa zc%I{@y86s<+?P8)fnSiouSnoyq%1wu&Ryic+3nv7h&?H_CEw`uqH~C&VILX1hZp7jCPHg!J1ecuy*GrwfA&6!BNo{y=_>o;B7)QL9I=dXX@keF3%TV!|#6Rs3fyNL$tp59B{L?<7hw=3= zib~_GwTB)PSVSEAX-hIy}l>N&MN)k>5=GYIK@a#P5Xs zW5k>3f}K}*sG#t#Nq!Lekv&($Vp z4@JA!{Sjt|-kLTJ&puu7>BwpuO%Vz8d}XIpS^MC$AI#&Eh=q=TOg|h}(7OT6L<{XC>^Q&)e|z zERSzf2N55#SNxze@lohUeTnx&K2$*b7WAWX;sa3c(}{1`JC>`@+t9=8EKe2)#~s9* z^@{u<=IE#EiGPB)ZO{KS{Uw^j$?dG{?AV z-1g14C0+;lfZfMo@*km}_9OYXVb77oYoXk!#QPu*If?kk7%#3QzOqBC|E}poN{Cy1P9tvhxrn&c=UU=cpNELg#JKP; z;^(42{)hO*;C0O3#f*BY?cj&|5Z{J4bue+;XW5;2jxOfOkxBe(#JzFErz3yMC*Bn8 zyMXx1kUyVzdyJdc5wC-IejoA6n#OuQL3{zucPnwT&rafIpIYi5a+sf(efA=5_GwMr z?9+p|*=Hbev(F^rW}gD$W}lOZn|&@OZuYsJxY@_<`_PZofA)c2Jx20tFz#$1{vP7e zd&KQJ;%CHL!moZLz7+cFz%TS;tYu|^7Tl>C1+}ig8;?}-j5x4gJleo2S6YUIgSi4yJ9z@*Qw+nG=-=m3J z``Wl<`Y%ELb3Dl(zE7;jNyPtwe!ZCZ-*Gdj;{)herJm5Z?^`6!8J@pO=Z( zLSFO%@u$H*C!UY_)Q`k}MEz@HUBv8T_w(3&D8`S5f2NcCwV2m*A^sTpMPK60VgI4T zmm-gyOnf==(wW3BLq9DiJ{t8rlXwy45zC10g*bmB@eeT0K2H3r^w^H?6F(H=_2faml&Fe}2SLDg}5^o0i$B2J`dBg_dkHNn05$}z4na_w1LI3)ZcsBCM zI_R%f|1&#Ad+tO0bJ+P{;wvz}=uUhY^kfom1b-e)d~LT_ZVqv~52}dxeAx3;;xpm@ z7ZGoZ{&F4h17MeXi0_Me%A>>|LVo!I@m27XcZnZ_^`%dV{|kO@_sf|5i_)VVYNJ0H z?+m^-@gavq`8LFdA`i$Q{vqW15uXeHvHNbU+;uqL6G{F&obO!X?coon5I+awi`{o) z`k%zS@>-G~*Cn2p-FIX1<&b}bOm`{Y8!?B>y_v zaXIl+*C@Y|crV25)x?KkJbi}vZ5V$y5-(~N^=~2G9sObl@eLSHYao8xdF`1I^)w}( zh4J3*(=qv(;29)e44z5+1n@D$j|9&p{x$3{kNCOB!+{w1XifYc#QzN9ub>}g z65kj7aSZV#7~gY=?*V_FM|^qrSf3@t*C5YXPW(*x-%8@yhzqNUpNM$%4Dlb(?i+~@ zf&3QY3*lEgi08sSHPCO&{&jF(O^M%wINzFhnZ+OCC-jQ;$s~S>G8bg5nq6L-xA{cV|-jryf5mxlK8oZ!>ftMQpNtn ze}UaL5?>1aTZq?(9d;1^d*@g}4fvhe-<~^Z>mtS%VjOHu@-5p$JsHGbMjW>Lo=lJ3 zpFf7=FNEE4iI=p4{fQ63c`YHn3D+H#6JLyew~}}ZoY!jN12B(xhIlUQxRLl`^!F{q zXLOA9-$8sphsc{^-e&f>3HexS;+LgI`3&L@VSLXde%E19ehl$>$p3SRKZ&?8kN986 z8kra#s?+7yhuC_yqK$XNcQ=@r}d}P(#VFh4^Lg{~g4S#kgDp6wc1GD*G}`qvoZFQL8c{wdQ_&^w;jJd%F|mUn9aj@S0C~wX#7{vzHxmB=ad->yvk_N!5MKm;u7P&8^F0#wX-Yf?{k=8u z*6Gnc8N`1;UY$vNLKIJpA-=pp{2-V3#-5SSBR(7Ymk@7@xV@bCH?Z4E;>V&stBI#z zpJ#|qL%iBZ{64(jLi`ByyB)-DM!%?m{%!VOigs*Dd?C)OHF0~cPzLc1uv;ea(KxR$ z#Akr#5+AG;lVcw7&m&GPA$}$FEGPZ|;_OP|pV&A{{44akXNVtVc|P&k9b<*I5YNQ8 zvxE4bsDBOQk7oZv>c$V65`PopT5IApa9$b2|JEn!$t1of+I?jZhv#ec*_v;X-v z{u2KK_ObijO#bisiyRpw-w^#hllY-n2eA9yOwUq`o4F)!>&5ek7xaqd+Wl^(=Xc~M z%SnDc`r}ICxrp3xc^c&+(cZ}!T zn)utWX9n@r7%!~>uNF7b&N7v>SSd}0alL(KlfJ44S(;@{PX^;u24 z*AbCFL;PvT@%3tIu=9PsX~UkFNuMoE{BmNii zsFlQ@K-^nRd@;t6Cy5_}@pJ?6&X9kX_{t`+{l$NsQsQ&bFIEtL2zlM@#G9i&mam!J8lgTR&*-JLWG7he~I`n7_Z+a{wnxq z#5;rkNPK_flQrRY)?RksU1Q>Af4i^9S1^umA$~RTsO`jGMjrJS z@naCj8pFTL{x4zNNhh9*_Zf8{_Y3 z#Q&%l?RgRLf5LCCC4M2|-g@HW8%8~^62A|6J|I36{{JcQ3*c|x5g!46_>*`Z#_{_0 zQ>xKO{(p<{w>j}wVV{GE?+btEMtnHh>saE0P@j>+pV}kZ;Y8xM)Q$Wk;@y!SE+Bp( z@}zT#e~j_vO5&I5Ny~8?@p0g5h~F8-Q|pOe1iQUKd=A?8-^5RXAAU)EHTtRD|84!H zDeSf zh<^GB@w$j_-xF_+cvutTSbdcH66Bf^{{sEOuJ@XJTlBlGBwrKlbqw*>aou7B@j}#d zD)Hx#2hJgG`+ye{AA^2)KJf<;udXIu0QozKhlkRMO&%sb68`@j@!t@K-zI(r{BtYu zqp&XY1Mzg&$M(6KoezOMo1q-z7fK!VXh;0Ah*Ld@Ujsgn_|4!Gh);nZ<`e&D&-jH3 z;vXQ+oJ;)g@Xw2h*8snU_|Vo-|DD7K!ftDcKaTa#ABj(bJ!>GIncX@ekE%z!74fhkj6!L3{--o#TIPtNt|1-pIf<2!nzAyB@LVR4yc)o8E z&&T`siQDshKO(*v>wa5_uS0+Ql6V)?a|iLE(DM`Vui^iH5Vw6TwJ`ph-(FKEo>zV1 zX&4te5`P!(dlR?&jRz6$fqqd){CoKAV&cs(t}P{=kM}nb&w?H9A>IjgSWA2<+IJoC zBhkJu5nqD-@(%IIXqPR-H=!NBB0eAdz^<^j{AeWqt^S7+xB4GW-0FWUajXAO;#U6& z#I63*h+F;V5V!iDL)_}WjJVbRI^tIUJBVBT?fDJnpH}}TNZ#uIJaMc48^o>tUlF(Z z|3uvCUlZ}n>SOh9MBM7%g1FWHVB%K)F2t?=eTZBA?Rh6wAFKa~ByaUEAa3<9CvNpW zow(Ki0^(NxD~VhEZU2JR)9U{i$y@!OBX0G7ow(KiL*iEdPl;RocM!Mw|4!WMUk~$0 zu77LdR{z6@Tm6q9ZuRd^-0DAqxYd6$ajX9f;#U76;%5KF#4TSrm$o5-xw{@7Oh}(UwFB887@%97ak6>NvbK=iJ{zu{uVLh-m@*r!+;}M7VBEB&##^rS4 zH{yL4;&xr3FY!C@ekk#Kke5#;-WK`oOyY+i?ovD_`huWu6hcH&Kt&+pkIes1M{j(ng6@qDz)A;j%D2uBc~1^Wyj z-UQ?OXyRueADT*hU(Cm66EDK~o=kjI&v-sdiMNHGD~Q{C_-5jxp??+eEbym^KaF+B zmx;fzcdXBQ#OFi)OX6$bhX`JIp!~&h?{&b;;*O2a{CiM0^`|e;-l+D`4fr%4F4%4J_+%3G4an( z?o#5t;BPC4-weCmM*M8dFKivf>~kXG!#a}x6Z6woiQk5}y@~i5)PE0@WBTpyF7HG9 zEzI-V5Vz;M9YK6E<}VGg-e&q=+bi0+HSs?1j|}2vDEAoRwhwOv@pb4&i-?>4rNnJ~ zxu3YnKSkW+KP3K7w9Bu=P0yZaf3t(>X;1uR#O1;2nr>iejme z#I2qu5Wf}knL^^dIz~m86E{7#5U+>zsMW-mBJQmt{tm{k?}(fJ8b?(vV07scL`I--UQ%_~B8+2jRNyP~tZs-qf z;_sjx7ZAtgpwzjvb1^V$k@$C* zXZ9mLw^jW9aN;S%^C`rCK)=W*J_-H0jCeETpG%0}13i}#9|M2Bfp{zAd-oFm+X1O? zJWBi|@{Njwj6<|pEIurRH}M?! zLu=xHA#dzTyiTL2=V;>gcXNjkKMDRYh4{Xhm(3#H7y0)Y#LH{MaxW#`2l>y9#Czhr z?j!yb+T{u2OIt+!FA={1e)s|LchMiW5nqFN@-y+xXqS3fu^jWaX&Lc-bK={u&!ipk z8xZ$;65kX3YasEysOJRY_B@Du;@!H$`cx3#iTa#Fd=cz?C2`wVaXayY5r@|jzpQ2~ z_c`K+VSIU;_@bk{n0;b-6NpbmzL!t@D#Y^& z;v10gokRRX$X`kPcli13#HS(8Sxfu}=&w1bs(sEzp4OcB<%p}TiJyZ0-kJE{;fH;Q zcfmL^nD`@zOB0A+ia3);d;#<1-aO)_r;PYTDECa_ z+fmQu#J}tl_5Y3dQ^<2ZA#Ue;>X54EI|O;l`NZFXpR6E$EBxVB;*C)M2Z^^rzVQt4 zOAz;7C;kcQ|0!|X-}XK6N8t|*v#Xxhbr`=|5I+w2VO!!`;s4!;p9}fE#8dehwi16Xum;h!?{j zP9(k^?KPM9T`2by;%Ttwg~ZDc2d*VpLiMK!(YU0zi*@ARqNjhacO_z zd!RpdBz|v$`2C*5uR%Tg6Ytb9%8w>K_^`-NByRV!6%v0Nc3w>U#oAHNQsT|`jC=+0 z(-99>6CZ|pK27{==y`?sa_|p{uSI;@M*NyXV|{)iek|%!XGHwGzWmTB;&_bjdlO#= ze{N0uOvIC}#Aogs^&U+;?Xbv)5x=xy*)6Apt*dy&^^9yMtlI`e_P_6 z5NCQ2AC?~V^e29M$H-43Zt?I+;%A|rw-Wyr{(l$ok8r*(68|1??`z_J$Ncmc;`hT2 z>7!$P%|2_;zm6ep&!-qhe0y5_{utupu>LcNxb0^;fp~4?)ia2H)hX&PAU+rIvzYi1 z=}~?@@tx>Lw-Ub!d`G+s9|Jl|)DTYcUjJ|FY7&BU9)&fgH<2mV%TTva>&3vr-1aVxhi@$Rr^ zcj6~^k9r3a|6-5Gk0ZVu{x*mBboA>}iQC^(zmfQF=~4eG;)|f?CE_FZj`IH|Zhx2P zE8_1qkMh3}--&*aHa>oCe)|XVnO4MC!Ok6t4}sl!6Sw^_gNPq;cr0%`@evqD&LqAP zetRYHHxMVUBYs@BsDCB#*YyPDxRZEO#LxSQ?}WcSM*J4!&#w@_3H5oC_yZU(-X~rL zJs%PO59+y<__BRs{l6sM1^&5%xcz;>pNKz({{9DX`#VpyCd6{gALgN7?@7E(k0{re z_SMcnSw7(m?WIhObZ>9HQU#9zkwmJ_#f&m?Z=wT!sM z+Z%~zA^xl){u1KhW5n-j3fJ1?XUsSAiBJft3WdQ^Y?^r+|=l1EyY+CUuLA@u?2DMUR#aa`-! zSt};THpl&W?M%?$aB}>f^{-CQvoE-v@3bhEI*9lU;DQl3bp9)@1{6g?$PQRA>LDTrbbtHc?B1URsY((;}@QGT;(r^{Iia$yye5MImk3F=k#d(TVY*v zx#L=Y>%Z4IuJW@Xf3xE%Z~gZk$5nnMFtGu<>25_@ybDYl`miFBt(=i!d4{1mifAIH5t zvm96X%OF3*ag|?z`iym4<<~-flH=Z<)4}b0dqL01#E$`AN<16o{r^P$|KYel-&Y)0`Jq@Zdc$#lzMC9Z`4y1g;<(CN{QS~!m46iS+Z|VV zi=V%N>*?qaH3jFj_f&Z!hjDuzT_@sZhoivFKMzE|7)0_V&_9y6{k@NgPLI}qJL*5p zajpM1m~WosxXRn#jV^Xv<=gBpFLEq$T;**)_Gyl*{0gk!E_Gbxf5W`&V#ihfetnVS zD#ukmLto^$9^CAC2JG+{@r%LVC4M#dx5RG-uXjQ$N8f5Y+H*wrA-)Fky}+%#?t`5( zNq!yVvx&FWLgX0Z^ysNB#`zxaxSHm0*gxNK75yjVPjWn%vZs6~N4euFx|dd1jzx~E zd|AtYQ)fA@@=fVc2X6AqAm4^~W5mynPLI~7AJ!iZcUjTF)uJQ+_#d5P8S9x2<7~#0e+kW`5j;p+_V@!2i$oobI^Ff7?o4xJgixy4!KpzhJ+}*Ep{F z=Rp1u$5p;}izvU|ag~1r^3OZ2^45>uavZK16m4}}_0+-q_j}^Ug4diDz83sV<)?$! z12=!`iTTt%#0P?B5YGcYhIl#n@x;#npH2J{@H2?t27WPdyN>w)ahpFrN!;!$`GEL0 z(El0n+L#B`%uR(u`>EQ$Uw9{fKhbfu=Q*%vd&jjM?Rh}m99Q|fAm0vF*5`GSZvy%E zh}++d-R$(JKfDBg_`-4ZpKCBK|KPaFAAt3!+B0JLDyDoQ_@0ido|Vwk+HsY)d2u)5 zDXa_ibX@h={gwS3S3PBrALzKs--Y^&aa{Y+8S-C`;~ZCc8>jLeSN+dI|4ELkyp2;8 zj;nlAta~qZT;*+?I>&L99|rjg99MZ8r>=Bd<(EMITE|u1#;MyKSNXp~{vO9w-o~l5 zj;p-=oy*4@SNXaJ$%`D%Ij-`ZkpH~sxXOREuS%yk?y$AAtFF4)I>#g~Z2!FCtzDelGEI zz%M6$E%?pEZwJ4R_$%Pw5Pui^H{x5tTjp1_^H<>QiPy$_tq1YO;KPUy1fNViA3UG< zT<}ujr-GkO{37s+h+hwWH*uS9K1}=x$p3@*%ix=d{|o$U;$MOPO8j^5eP%{GYuMCy zwJyF*9pJe3uQtfvIykQV>umI|&fwO+_JjT-iMItGLcD98SnvemeZZ#^9|c}aygt?? zP9bjN(dCXqMJV_-aJ7S;Zyxg4`<;AE;px!-cj7(4pLTlGK6k-B8yr{t2Sfjxj;s7m z$ZsLu8S(8?$5oHT;q8vAp3#v10o>Z9J?fb@ON8Vwo&kOUxY^;(^dOdMNAmq3-A! zKCW5BJ43#l_|f1?hz|q5o%nI!4-(G@f06i=;O`P&3;qf5C&9l1w|HyUDSmTY+tK1} z-GX4I%K7XQXvYTNX8#iCZ$aGFA=?w5vPab0gSb79q95@^kRL((#XX~*mZ*1-CfU6>)E=lh=5=dC&NzWyF5~zZzWiDB2AB+~TkAOk>jdo zp958k%(om@d5gEFJFX^}rUsW|spBed@%D1ZRewJ8U+uWcTfDv1ah1Og@^?9|@)mE` zIIi;ccPJkLH-DH`Up|!MIpSx7zd`(R@Q;Y!4qjtU)Mxtd2TvpZEcpJ!Ujy$z{A2Kb z#J>g~LHrN!M6Pze)5*%+Kv`) zKXP2#aVOgS6L7P0H&rIb4&q0G|3$nd?9;F?e$VtA4BnD>AMp0XFM$3Y#4QdCb==3> ziQuYM&v#s}SdUyMukrR~=r17tG59>ENA1%B^YoJ)SN+!S&T(Aj^B{kL<0}6b+T{wz zRsIIZ-$HyF_??cc9$WWV?YQbWC|zFUc-V23xAo_Bj;s8nba|2EIdE&Qhhc|*6aOdp zm&7-M*O(jinf-?%uI>qL`t5$wro?~K%F5Bw>Ct-LoUT;t?YN3sobTee%752drBkV+ ziFaxfd4I=MkHz`p99KOTK)!&uJzuoQan)mSev#vuoC zW$>27H-Yy6*Epd5+(d(}9DN;EQ5%m2JFfn7BK&7K>7NSyQ;5$5pGCYe+N+#+OYkMc zyMkXrd>iy%N8IAogO2NZOF#Lq$5Y@I5ARQle1nq@rUBnbJPZ7Nr$_B`ChYUE<61?F z4_`a3@~=YvJI7W2PmC|WJFfEe+R2L?^-J(mekdOY-q>-~W9#ZI9as7DA%CFbDsSUa z2ggap=?i{q;2LCAmV zxXRmj^qu3{fBT{T{^q#Ko4?haCvW6XKUe*=4%K(k_Z?Sx^S9=Xt9&2G@9((E+j!L8 zag{HId?&|M-o~R|j;s9bkUt9C{OVz}`w-$EfKMR44SYKB-@wl%zGq`8T#n_$+koFl zyf^s0#7BTXLVPm#bHt0mKPJ8id^_>;z|%@&ea$|XfbUQI4)6}dSA+K>z7>1~@j6Xn zdB+iN1U`%S0pR7t4+CF9yf655;5Hte0e`;DarGY?kM4I|{pSVv&qJjD37pq6#QzEY z8gYBR$|mCW9Jy`8FNI(INIVb6oY<_%g(C)w2}xlZd|wKGkv6W8=##$5qdu&hjEhq2nrV zjfWD(GMCxXRmjalPXzZ-4J?rQ<4ZL=UbC(k>s?PziP4ac<|+jo%{ zIo>7x+fmO?i2n-y9r5?A{}TTgyy5&;4O&{#d)P>zy9e->kO0$nhe{p8@$dh_~7&%75VWXni_#jrk{&T@w5T-(v&?Y)j`JD!Mke1P;n0R2xAe+>L3 z;@6ee7tP~ZvFRZ_o(YN-|xmauJZPG-gAi8>k;dn=eX*z{gXwGtDcUKF9SFKY>#?gL_7ohI;ThV z55u^2E6MkR{Jq3CHH-CJYSRm!ThZc3kBx-u8A}_1Ehq zFLE61xXN3+9pbpk9}W2tj;p-I+sTfrd>Q0V05^ZQ8SQuyaoexEfcTq`Kb!bg@H>cq z3%-VUZTQJL;*G&yA$~CUR^pw(zaxG$_+P|rpYXvai&5k-I~)i3Zp8D!hY-IKd;;;c z;M0je30?wj@z(BlSme02qs7~^9oKeTfp$Ef^p`;Y3gU~wZzDbh?XsHq4DhFjF9Lsw z_>0j09&w8U-#YH&?Qh@~Z@2W+))0R`CH}N_*$n+@#P{Df$~6bKe*GBilkT|Mb0XH6 zJ36lR?0-bm)75d6zZ}=g`Z%ugCqw=i$5p%*@)pH8umpZQUzqOYaIW8x@RD+xx zH#n|(-h-Z799KQ%EmS&{y3cWy{|)jFf?K<{Z63r^j}h+y{=Czp`Uj%D-Xz`*>lj-| z&r#5`jrdUTA4!ktuX$>$m-(&fZ{)b1SJxw>+}_}JUN=Mk{>1MG@8IG9>xByQ!-b6m?^gK`&;{xs-cM!Y5XUBs>3*AXv;{3pb( z1^$>Q&_%_uT+}iO`_|LvhKID6dGY1j3`v(tkdejc@!VVdZt355x z>Fc=4AKEuoXc+P7;G-Q^J(lOpc3ky51NjBS8y+3?pW?Xcu{`HI$5qeikiW=rmA5?S zYR5wezO1ah3lA@-V!6Y)pEdlP>N{5awtg3ltp6TF;w6U6f+#193(g!n-4>xiESei!kD z;A@F52VYP8Ht^SoKMKBy__N^Kh<^co&>68E%>FyU4s5kCz4 z6yo{d=Mz5%dD2o&nyG_~ZLWMcthqwa;SMr?2B`Pa78oJFfCI`^k$O!yQ+78y6-yuJT9qlNULr zIg&+Ro?ROzZ17Se7)nU=W6JA-f`7qdH5TStNi1Te-~W+q^A6T7VZ8K z@i)Q00yqD$Jo#thmN(WtOO(oC`agu8G~!=??+?!U43c2&YHwX6H49xRsmdxR!fVRxI}-Ug5avu{``@$5qb~$X`$V zW$=}bs~*e4S2?bFjvXW~a;$b-w9(w(os3@hOl$f%qKo(}|x9 zei892z^@_x0QeomH-N7pz7>2O@jt;|A>QJEc)lMH&jA07_yF*o#HWDQI5+Aud**?s z5x)R@0P!op#}K~-yqNgi;HMCO2K;>DFN3cnUgyAA@4pdm2mUzm!@*x5J_!5^;uFAs zBAy3c`@E`lD+g~){2cHu#4iRviueuSLx`^epFsR6@CC%*20xqlC*aG8{|Np7xW<2t zV-M7h=lQ7P+D|PHf7WsBr_F~%`3tH-;LEOfvu8!A{uUZ~{6u6CpL;FO%Sx#QZ!F1>!M*Qy9QGT4$qxLy+NaQCtuJ*KX zaJJ(r-#$CaFCd-+ev0F&$Hu`c99KQ|cld54{y6m9<+$pxad3^}s%QV9@*>A0j;p+l zga2?`l@OPp

f1FF+Zsbj=*M3qh*KeaT-MP=3;au|W4YX4> z`6>7k=aP2-d5fHH*AP*;!MV>{=3Mf21lp;J{5HJKx#UffPT_RId4*C`b~^WYyPQji zdx3VkN&Xi8#JS{MfV{7q@6ZrY`PsS8``x*O_#9}b#0Jd6nfS2DS|8_J@|GcQrt>Oo z8kITDecnaRCB#U?UrwF{k2#mTCy}?@d5z1v%el`RcP=63B7P%z0lbyG2!4)y9sCM; z8T=V}1^f;9ZuoEb@NgaF_ubDS`r<}3>fF3GP3sfLTW6?GCoji#%O$tp`vv4(V>C{T zeDy5#1LQW&_B45PkuvOZjl6lj#(6@1AJ;`cl206_?GujZ+_po1hStZDpT@YdIpoKt zY5S$*6ETi-J$Vs6f2<;ZiE(9(5Mp?o6WH(TQjJ*sot z4jI@EndJ4k+HOAimvr?N{l)12eE%%B43=R@t>3L!rwuIQz>lACq8ZGRho zJCA%4u0Ir$cP457{p7tkUR@+#gYAaZimor&AwVLfX}Evq=cp#M;CPuB0uFi6q5uuV zyyue_qP~iJBkGmp?Wp6h9mSUTJ@E6GTi&mz_mQW`3Ww7`RO&iPpB(rv@SE{vj1;vZub#Cpg49v-8*u-FKh~~b6A{>qcy&L w4ry-pHN>gCjYDoDw{f}sIk%ey%0A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 diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm index 72b2b675..30070764 100644 --- a/scripts/Transaction/Transaction.pm +++ b/scripts/Transaction/Transaction.pm @@ -28,6 +28,7 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking =cut sub new { + use bigint; my $package = shift; my $this = bless({}, $package); $this->{inputs} = []; @@ -36,17 +37,43 @@ sub new { unless(ref($x) eq 'HASH'){ return $this; } - if(defined $x->{'data'}){ + if(defined $x->{'data'} && $x->{'data'} =~ m/^([0-9a-zA-Z]+)$/){ # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - + $this->{'data'} = $x->{'data'}; + # test to see if the data is valid } - else{ + elsif( + defined $x->{'inputs'} && ref($x->{'inputs'}) eq 'ARRAY' + && defined $x->{'outputs'} && ref($x->{'outputs'}) eq 'ARRAY' + ){ # we have the data, let's get the serialized data $x->{'lockTime'} ||= 0; $x->{'version'} ||= 1; - $this->lockTime($x->{'lockTime'}); - $this->version($x->{'version'}); + my @inputs; + foreach my $i1 (@{$x->{'inputs'}}){ + #warn "Input:".$i1->serialized_data."\n"; + push(@inputs,$i1->serialized_data); + } + my @outputs; + foreach my $i1 (@{$x->{'outputs'}}){ + #warn "Output:".$i1->serialized_data."\n"; + push(@outputs,$i1->serialized_data); + } + # char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ + $this->{'data'} = create_tx_obj( + $x->{'lockTime'} + ,$x->{'version'} + ,\@inputs + ,\@outputs + ,scalar(@inputs) + ,scalar(@outputs) + ); + # make sure the data is properly formatted + $this->lockTime(); + $this->version(); + } + else{ + die "no arguments to create transaction"; } @@ -58,110 +85,30 @@ sub new { =cut -sub lockTime { +sub serialized_data { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - # TODO: validation of some sort - $this->{lockTime} = $x; - return $x; - } - else{ - return $this->{lockTime}; - } + return $this->{'data'}; } - -sub version { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - $this->{version} = $x; - return $x; - - - } - else{ - return $this->{version}; - } -} - -sub serializeddata { +sub lockTime { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - unless($this->{serializeddata}){ - eval{ - - }; - if($@){ - warn "We cannot serialize the data yet.\n"; - } - } - return $this->{serializeddata}; - } + # this is a C function + return get_lockTime_from_obj($this->{'data'}); } -# this serializes the data we have -sub serializeData { +sub version { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - # check to see that we have inputs and outputs - unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ - die "not enough inputs or outputs to serialize this transaction\n"; - } - my @inputs; - foreach my $inx (@{$this->{inputs}}){ - push(@inputs,$inx->serializeddata()); - } - my @outputs; - foreach my $outx (@{$this->{outputs}}){ - push(@outputs,$outx->serializeddata()); - } - # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) - my $data = CBitcoin::Transaction::create_tx_obj( - $this->lockTime() - ,$this->version() - ,\@inputs - ,\@outputs - ,$this->numOfInputs - ,$this->numOfOutputs - ); - return $this->serializeddata($data); - + # this is a C function + return get_version_from_obj($this->{'data'}); } -# TODO: change the name of this function!!! it does the opposite of its name -sub deserializeData { - - use bigint; +sub hash { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - $this->serializeddata( - CBitcoin::Transaction::create_tx_obj( - $this->lockTime(), - $this->version() - ) - ); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } + return hash_of_tx($this->{'data'}); } + # signatures.... =pod @@ -199,7 +146,7 @@ sub sign_single_input { # find out what type of script we are dealing with # p2sh, pubkey, keyhash, multisig my $scripttype = CBitcoin::Script::whatTypeOfScript($prevOutInput->script() ); - warn "My script:".$prevOutInput->script()."\n"; + #warn "My script:".$prevOutInput->script()."\n"; my $data; if($scripttype eq 'keyhash'){ $data = CBitcoin::Transaction::sign_tx_pubkeyhash( @@ -225,116 +172,40 @@ sub sign_single_input { return $this->serializeddata(); } -=head2 +=pod + ---++ methods + =cut -sub addInput { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - my $y; - if(ref($x) eq 'HASH'){ - # we need script, prevOutHash, prevOutIndex - if( - $x->{'prevOutHash'} - && $x->{'prevOutIndex'} - && $x->{'script'} - ){ - $y = new CBitcoin::TransactionInput($x); - } - else{ - die "hash has insufficient information for use in addTxInput\n"; - } - } - elsif(ref($x) eq 'CBitcoin::TransactionInput'){ - $y = $x; - } - else{ - die "insufficient variables to use addTxInput function\n"; - } - push(@{$this->{inputs}},$y); - return scalar(@{$this->{inputs}}); -} sub numOfInputs { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - return scalar(@{$this->{inputs}}); + return get_numOfInputs($this->{'data'}); } sub input { my $this = shift; my $index = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfInputs() ){ - die "index is not an integer\n"; + die "index is not an integer or in the proper range\n"; } - return $this->{inputs}->[$index]; -} - -sub addOutput { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - my $x = shift; - my $y; - if(ref($x) eq 'HASH'){ - # we need script, prevOutHash, prevOutIndex - if( - $x->{'value'} - && $x->{'script'} - ){ - $y = new CBitcoin::TransactionInput($x); - } - else{ - die "hash has insufficient information for use in addOutput\n"; - } - } - elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ - $y = $x; - } - else{ - die "insufficient variables to use addOutput function\n"; - } - push(@{$this->{outputs}},$y); - return scalar(@{$this->{outputs}}); + # char* get_Input(char* serializedDataString,int InputIndex) + return CBitcoin::TransactionInput->new({'data' => get_Input($this->{'data'},$index) }); } sub numOfOutputs { my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - return scalar(@{$this->{outputs}}); + return get_numOfOutputs($this->{'data'}); } sub output { my $this = shift; my $index = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; unless($index =~ m/\d+/ && $index >= 0 && $index < $this->numOfOutputs() ){ - die "index is not an integer\n"; - } - return $this->{outputs}->[$index]; -} - -=head3 ----+++ importSerializedData -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. -=cut -sub importSerializedData { - my $this = shift; - die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; - - my $x = shift; - - if( - $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) - && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; + die "index is not an integer or in the proper range\n"; } + # char* get_Input(char* serializedDataString,int InputIndex) + return CBitcoin::TransactionOutput->new({'data' => get_Output($this->{'data'},$index) }); } 1; diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index d861ea26..caded435 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -197,6 +197,40 @@ char* get_script_from_obj(char* serializedDataString){ return scriptstring; } */ +int get_numOfInputs(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t numOfInputs = tx->inputNum; + CBFreeTransaction(tx); + return (int)numOfInputs; +} +int get_numOfOutputs(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t numOfOutputs = tx->outputNum; + CBFreeTransaction(tx); + return (int)numOfOutputs; +} +char* get_Input(char* serializedDataString,int InputIndex){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBTransactionInput** inputs = tx->inputs; + char* answer = txinput_obj_to_serializeddata(inputs[InputIndex]); + CBFreeTransaction(tx); + return answer; +} +char* get_Output(char* serializedDataString,int OutputIndex){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBTransactionOutput** outputs = tx->outputs; + char* answer = txoutput_obj_to_serializeddata(outputs[OutputIndex]); + CBFreeTransaction(tx); + return answer; +} + +char* hash_of_tx(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + CBByteArray * data = CBNewByteArrayWithData(CBTransactionGetHash(tx), (uint32_t)32); + CBFreeTransaction(tx); + return bytearray_to_hexstring(data,32); +} + int get_lockTime_from_obj(char* serializedDataString){ CBTransaction* tx = serializeddata_to_obj(serializedDataString); uint32_t lockTime = tx->lockTime; @@ -323,6 +357,28 @@ create_tx_obj (lockTime, version, inputs, outputs, numOfInputs, numOfOutputs) int numOfInputs int numOfOutputs +int +get_numOfInputs (serializedDataString) + char * serializedDataString + +int +get_numOfOutputs (serializedDataString) + char * serializedDataString + +char * +get_Input (serializedDataString, InputIndex) + char * serializedDataString + int InputIndex + +char * +get_Output (serializedDataString, OutputIndex) + char * serializedDataString + int OutputIndex + +char * +hash_of_tx (serializedDataString) + char * serializedDataString + int get_lockTime_from_obj (serializedDataString) char * serializedDataString diff --git a/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so b/scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so index 2e1bd732fc52d834fd92ce270acf9c7b0d101618..bd0970ac07a088f877fe65722e43a09e6542bb35 100755 GIT binary patch literal 107281 zcmdqKcYKva_CNmILYTD4O>%Q{fnYAV2_&HO8ViOHLXj3pKvZ0!6bS*z zDk`=W6&1_wqU*X?7ZnA|uGkRUimv6xiXAJz_j_iZo12)Z-+g`l`aQlb^SsZTIp@ro zGiT;$arL;;@lJ=svJaPafgP|<^hjxh)3(`D-%WXj^6*KD#6@ zkFxjb=J0&y$qN3W%r^4u(r$Mu+OdDX_lUOBi$*T|PMSE)O2|m=-uIrlkJk=;zUQO| zo_ThQ=kgTF9E0C1{3hbpAHPBP4aScL>x{Y9XhpHCLR0oaIRHQEI37Rtw*#%NmKY4}Luj&P6%ioZH1P zb7GH&P5-U3GZ;z@(R-Xluf?$Lt0j5m%c55{2; zPs}kICF7ZK!+2yYvhR#p9*j>OjCYQkJ!YI2j3>q>eawC`7TGTz_82h!crX?j<2<~X z>+{DvJS*#m;=32`8FQ@X=xVJHs5pRYY+VQvQ<@U-n^*Ob7_wGBRWs$dHJ<_mcRbQSxb&gX}GQM^W-t( zUjBH9^-$Ws3Xk4@QTK6k?%({m9U9uuHvhU10l5r>sN-}5H0NmB;}H;4B56~x9|PAO z|6dS9?eYJ~**=}I8)ze&aHOMs{;rrX?a2>yV9!R-+v5**Ab(Q_^w}NQKd1w}c^%MS z>wvzp1N!CgMSJ%9!QUSJRV2jr=r@6$)sCP4+kt#X2lC+_E6|RdvJS>Q2IJLUoQ&>vJUKA-9h|!?!cb94*2_aAb(T`{1ap2 z_C8^s@$+FrxA(0*4gX;yhx<|(7^ zhuZKzW#VK{8@+vu-;S8^wf)@1_JfHx?xlHrWcpRsM$U57(f(aM6`Q(#;Mo)-=ZJ|1 zTYgq&&3|B==5H|L65Bz4Z#3h$hnsgC2_}9v8~eALakt~4%GgnfMkRa96N3zjUXvnuAIuqsNXo>DQVdRg_n1+{h6%ch<(X3^3m)l(~H zFRIpc?blRPt*oSg%0&y#2jhel6_bsGF^ei|YpZLm+2_?&S1wytd0s``(u(=jD{JeP zEm$(oT3oqk(b6hw%;?dmFJ}GJrBifOgo!O8&A~dc`rHWj_+?8MhpJavwN=X&)YL`V zju|~g5wxgNDpyXST{bm}4YH;#t6WlBSyi`S=@LpCTUl2L&M4~G>e}jM3(&P%iioNx zTUK3DxvZMT)V8jf5@}Gka_REAn&ovBOJ|?Wju=trSI?RA3q_L@XU9@?eLJ#S3#A%p zgGH@-r<=FmM_m`))4G)lmeB6sC%c5a?Tc1b?MeO}9#L&Oc8IEO@kiC{`EwRlpZ9Af zw+b8+Xv$Ax=2urOtX;lX4JJDhshnKBsJgPYdeZE(tE=kZ)QE_as_RU!z|WzvCs&^r zae!?}M_p9hErz#mfgM+^OoLKmnGX35;>uKZGT2tFvC2v->gF%2fJ?0! zoK#oNshC$?S6fqEwP5aoDyyt|*`kWd6%~uBmqgCzR@YU{Z#@@^=gd*#q<-9g?27EdSt@0@qV@5Bit6I8XNkv7}e56wZG1({nnv7XoGQCtGt95302l|7%-rbaGkNBZoZ1w4&}{9 zql%?-;oo033mJRi)CG&HE9PRJsG;akBu!jVy{s0=wS~Ktu~QbzTT-@sHf9fP);%6G zx^(Hham$u1UDmN7wP?pks98Q60ZP+bhaKgfvV2k90xK4ZAga>C(FPLr{-1 z0;aNNf!!~1S22A=Dm$n_@Rd(7froXk0xL?L)qi>Ivi|UB<)Z$J7R=_aYPOF3egpay z^s8O^D;$02E?89EcgfPe)m6WP8SC7f-@&G5dhPGvTvA zrsD6AS+(rEn!2UGgK^Q)dGoN>usP{rxV7I9tD;)1!4(y=Yispx2&5%*+Bn=gskCJD zn2G^tKiKT7{`bOc{eG7K&FirKFaM)r$~z`n?maB;x&S*-r&WM|dDzbnz@mVKt7a96~v;Vf~Hnyf~er$`?y+hR)|A;6$w#Jde6GcBMLbWV^6g~QWNg#@TS`>e7 z6n$(Iy&#Hi-z#PH&?tJBDE^`-IQFQwn zk(GO*=;o3~wb>s2uIOPD66U?QFPwlw~wPy zbl%sF95Vvylzt0Eh=|)Ldi3)QPZXWcHSEJ5MNhPeC<9US=$p~GQFPviw~vA-I-gtE z$IvKxiA_XV6h-HA3i}8}(d~QwtSgJ6r`XIW%cJP_a}!q2ilXxwn0?HTqTBaKSXUE8 zH*6rIn;>|=Wr-M;t0x}8yU-g~!? zT~YMzHWB6SD7t-bgVlSY=zMNxAN!-|0h@^OKoq@46#Y;XJu8ZSIEo&OqKBjC*-`W( zQS_WB`q3!5N#(lM!i=y|9qL)X}%`GEUJ1dGlCW?Q46y4k^RJAox zbaU%Q(N{*%`RvU;>Z9lbZ6eAIQFK1zvyY}Iy1B)ts)7DYg9FyFoU!;fDYFP? z#Pi9}eE1lSoZ-Z{t7kPIPk-{Gmb4h3}Q1~5UE(Og2gy8rt;O&lOTtnhGRrpD$23J)M= zN^IVva6U0pVe>A9vxu1jo3|_6m6)loxk=#^Vy3+2dWGYNnd+Kr6m}9b#Wl}T`1^st zOg+tI3V%V&l+#?K@Q1`qHO&PIzeCIv(;QIvHDacgW{<)z5HqDTTM9o-%q?T{kssCg z6ElT0A6EDQVr~VS4=8*O@c`mI3g1D@RMEUk;hTsD5pP%c8sfpkO$uK|%qiYnukc1< zPT}Sng)b)N)NP)n@cG2Uh|3gSM$DzWxk%x&iJAJF3lyGB%q@0vK;hGgxzsj$6rN1X zt#h-b@C0I}wB{o}sPQK*B0j9}aAKym<^u{3Am)YT?8sD#vHA0gamM}yGjQC|!QSkppzM?($oh1MLE=Q?LT zj)q>-@Qazp4l`eY|0ytn|FJ0kM~}Kf4UdH${qV$)<3On4$-5 zY+paB0qv~iy+Uh7Wugu$8{Vr+2sMs68}x7@JQALde`Y?}X%+~MFCU-FqhC_yT6D=m zIvsVS51Q3w!nl9-hb8D$>NME%8px1!?7++67;1Pt)bMC&!w2IE_Y{5;4%2T9heC~uvf;ao?9#?L z*&evf|M=Xd=7rxMI~HvZq#mKvqm&qG_#yl~S~u(quYu%H!&{+-C*Y6pG=zSrAslKv zlOh)xaY>ohlyFz2ZC`k_Y5+s_gjb26QfqeM^|y?Y5z;R}zj1}+c#Ri(20&7;aviXLs6v>JluXJJ;W_-do?hj2cu zgOPuW7)g!ml(2TjQ_Z)Ap9_zLooGwkR4POF( z7JoA~J5eO9Jp+SW!U(CqFd;r^T`6FwvHSH1?vjQl8%KnHP(AvTeyhRhx;+hJvqjPd zzE4>E%{WTvq9iOf0^)(tY;Q}mVRo~Gqz#|IWrd%7bk1CReub|kW8|$!lz0beue-vpV>;=H${nVs!Cc{&Aec>F|7d1G^v0*;dh{o zhKDv!&BjFBcR%+`;RLp6*w?%i0#yE5vp2VJ&lxj|&n%uv8`bfIRSUJ0@KDtfjdY(E zM5|zzlh&nRxhjp}Wa9e-aJ zPgTL^M{pJ82N)tZLM#;&gs-B4#1U3HQ|dCwaDK%qImP7Y{!Jn?!zT{ zPnI?ypB{CsIU19+ZYx|KKHac|sy;#c&3zbR2pV@7U2`O@yA$yk9ug5%+L#><_X2!? z!-Wp8FX>-n%DJ=IyxI|tjWADWbRSky*8W5(N5F5C;WI6UKRF-|7IFDj%bm3E~Q@6o>ZZvb_!qEPOD_Ln$upZ1bFpiT>$~#6a@oG zYo9?k!$UxX#Ku{kaBovjOHXOc-aEFjG&^BzBPMle!*`f;?#7YXr43(%Q&kh>fbe%; zF}l7mzKU1$@Vg)~g~%cb3T<8#K3bOo_0KA1Mq2nB_z_AQszvxdP~jY8#k*MVn(r@d zSj4n0p{O0s6wHEr#!P`>Yj36?2|Uk8Nr;G2Gvz0AOC`3#7tHwg27_K1-bNj4VWf>_ zq}|Q-&w^+o?NL=kGf zjxQ)y$3r+G92rp4dkZmh>x1fh}fG@Yq1hD3}X zF2l_D?FB`T-_vkFV|fkRO#1vc#&3F#8oz&lPmkZ9arVpcyGl`ibNp%y+pmpZX+)G7 zzfpj#$8RAhdi;7Q);8mp0HPT`hpKNqehiVGV`i5xlJ}an3{ZX{mqy7)d`Ngcg zQBgY_b!XDL%Q=Q=@C(C)K3CzJ?hIrQKPO_xLy(VmbK^y&R%IM%nCQQ zab*BG{phDOzbLY#>?Z4fK{SDK$kcO~)RNNhGv|7x;@}GM51h5EAWtcJ_$CzXtsol} zvsyv=V<@15D@dJc#6dZm^(`xiu;;tlTUp_gQQazDMC#=l8EZhPBw&eS+m6{J|%Xu{llPE|3YYTfnaJO`Gcn#Md?Ssfw?aI=++vD!!5^ z=l?yvtR5=9D$!cU*9^+}MSK-2>TkwZSHt#e@%0UQPp48H_D>%GwvMkf2x*D0eG&FH z@%0x|(K^1iX=>~ES_7hqua&00O?(x8L=MK+3^26B*8| z37cY7-)8-4wqquU+Lo9ZteS--iuPjW8#FWP*R>cM6ElaEFviS5*0;ZYJ&3AS@zQ4h zaV_gHVmD*NBKwc^ByLXYl@bYnv9L_2evA+HB`{4uAX3+$lLWS3-~V@0<99Cj^!P2N;9tzY z8H)Ow<5ytVer^6GL`13a`|16*r-9c*c{{|C{G-=nI&_4p+!@2ma4Vr&_| z%Yj?QZyNZb#%~2G?ft(RG_@y~rA1);rnA2N@f(3ErKN-M>&AMFMGzVz;}=6B_WyW{ zWbgk$vGncqX~PqxxY-*neNly+>(Za#SPDfZ-S#rk#~`rzkQdd z-zJ=GmN4q=SkqDl~jBItUTHU8^t?BXN-Pn&>%_VAA zh3l{4-RjZdun0EyBklV^x!5lk_*Inu5nj?!ehJQg8Rh3FYKKwYDQVqXydN~duyqjS z4|2cUGa^bwc{*V0EH#b{yweGTcu(l-|I#ArHai-3(%NEbd&5-d9S!ePj^%wuG;)Ub zwA1J%s=uwBM$DL-t6ky7wv8M~YiF?0vQ~|(v5hs@o1=+4T;8?`jQa|s5I!-gNh$7- zVlUrElOlVqJ`|k}B4qLQP=cvvXStUTHS+Ez0?9MB;qwq~qKZ=*j)r62VFPZx-oRPQ zGWw~ahxegqZyEioVpdzPsco6$y$sMe1C20cAI|D?g7)z(|ikWEiEM6 zoR)zn=q5Gg!DLKsEsxh9zb`*IG14YK%|ItjetMSf*gR?<9>}+opZ-bm|3iN22V;Lv zei{#3BKhfTDrudc_zq=<`RRGQY!H4IT|j<{1LOaBerifp`RVhw?ELfr&VHGno>$c0 z%ujb1wqMIn>m#C6emWPhbuisRhN%2BEz+P(ei~^i+RIOYb{eVt)VZBTc7FQkKkR!{ zCbaX@3#LMAiq22F+cvTD(+yEgOn%y=Nv-qKxgeVSw8+%cgpTvm3e|x5X(Y~C^3y~` z5BEaRUVcha%qlt6`w$?jYHT*?>`T+{`c&ohjF<|R< zT}?ZapPnKA=CoB<_Dz0j07E1{@%ltP3To^=%%i5&HE6&aiMin>rK;`4$@z-PfE#B& z1`6dp5w0@ilB$<6PMfn|W;P8y`je})anOPAIM!}XE5Un7_w(H&c%-!9oA4tr1&d%W zRhu{vwZ*&Ls2iVFgo0b1d8+VcvUae5$ z{Gs9HI4iXWX*VncZ>6dYHO}{kr?cAeUZ_(Imc>xRI6ht+t*bF@hqBf+3(uUYE&Fca z<9H!OJv(2cUzf8#yXg}!-Ef{tBNK_3M05Uu9{=Uy)~rNXxfYzus^AL#4=v zT-4BkeETb@s1L4w)gGHa@>NxPab-=MR$2;;6;n!13KdTYRTQ^|6DLg^7hOH2Wa3Gs zttiD4PXo`G;)!L&r&%io_bVLKufQtkS5Rn0MMJ+TnCj@}8o_r$f;ivy^08w@I2V|w ze6zG1z}SN|f~|_oLj&dL+*M zq@xU@+=h~WM97aNk8i5xVmHal&JfB&D8tyQ^Y4}jT*ETw?ZmbGN|Z-YZX+F+{`|Wa z;Xpi$_~KQEtGa#G@$p z;{kXsR-fGOQO{Kf2VWfJ;W&S?5BL`)#!fy}g zqez{IMy~bFC2WL)_1EEd81?FX`(o)?<2=*U>iUOFy)vYo`ZrL21ns+{v{e0!R_%W@ z^&QF2fFIbtqxzAizCHQ$-;PtNf{GpNs3(G0F`_rDsr8}arvdc#zy?L7xMhbDIMwK-(Cr!{{KoJ|JIX0t~xcUe}6Fj z^LBdc@i+DVtNgEMKXPk_={!xYX&qEKZ7(E0ie>ZnYlF+%;EUVfyV~HF+u-Zl=;JrHJd$)_^}vlF z9tpaL{M|X+zgCC+_lfx71rPhXTz+W5!-!LVXOh_dK9~87hh2}*R)@OnjkB+RKDLyE zGE;%jP{%H*OAM99rh*^3@EB?ARY3);<|0a@5_Qy152zBUR2@x5kiDNU?y&fw36E|3 zf&_<6KVSsfcJDU>W7J0U{d`Q@zsv9+GuR$SY;{!sJ~oQJGuXCMYyJPvzxLm4ZQG;i zJv3#mDOZ?sy(zCW<*lZ?&y-J^@}Mc-H{~~`jLFh+eWvVb$|0s4Z_4SWoNLMzrd)5z zD@}Q;Dep7olcqdq%J)tAjVWV-M!zY0nsSIK$D4AxDd(DUg(=sY@=89eq+j*Y@^?lJxw{pl;ce~-IQ}pxx$p|O?jm$Z#Ct8rhL+r2Tl3DDZepgOpeiS z%ATeiV#@KRoNmgwrd(ml^`^Yil((94e|bO&K55LD;ep(-)w35=E(r|kcYMDAeFx|1 z6ZJP^or+7(Qu}XU-ELw-Th{XLKQGgN=N8$>k&Jxc*bu-U&qao_8=e+wVRkwMzZ!Eo zJ1<7gbGkb(#BBnn=scH&Bj#*X*Qp20b-6n&SW<_&PP_^4e!l>u^`m)Ojh(ma5`K&1 zz8;CkwLzV}i3b9%2E||@eYrNO({Bdhv{5l!2K!x`6jfqx@7jD8C7gw&({-sjeK`-O zTV{X?gWk$T#YC4U4jnsdG+NtzCo|ZyM%*)E&6tmrouCSY=>_+=;LI z;^!C`kR@;uD=Jo6@jKKxm4A(RiND3b7}Qo-@wYl) zEjpGU=U`2Xzs*32+Da>ar-P&540^0svW63}E~Cn(o)%Ua1*!3(*%$>d0rK*Drh0O%&=t(u%> zOc4^RdBW*hrx16rPiHXd;Sk}+lutNQBR_jKYazw0WY1=^P&Vz zwK4IX9PB3Q^jUTKHutXg=6NYHy7K@XC zh8p9;F>P!uGjG+7&F&_WAyCD`63t_0`?v56T zgE%?e&%%zxp`&pc%Ncq#IF*TsR=f)yZj$|YQ%D>gfZ0<}4K{|zL+GO%yj~$8Dv%-M zsM{3sh`HoE;W~xOT@5qT?C^S^a08rUa3KfaJpfB=_8(=%~fq0ox&eW(}tUY7>p00lX_|-gh&C()yN~@R4XY@BR^c7 ziZ=1Fu-EVD=0_()RskkvcarJ3KO^sYj-w9D6yd`p_hf1hc*K$ZK!I9}fHUZ|;va+L zKyvj$3R#SeaPmA`$mK-yZ6OOVEs{<6dc-M6bIE6GkzVmwHqb)N>9-QELTU~qI~{+g zcSA5G+3hew<%0tOJ2{M0$;WfaF($ovY+Fh$%2FQsHrgfp0`Lw72G8p~sre|13V=(#hZBe#`~yjD8$Tj}WCN=F}C zN0+fBldaVHzd>TxXRwSpx|K|~ym!Yii*%cY(|ck@^K>Fk*L8l4mI?Q12#<{Cuzq=G z$Id_qbemLWc^AYUMQ!(`HCAp~w&NMZfP5NmNXv1ofoepFd!2#!$FNU6fo7om7b*@z?;p`?;> z7pA#Qad|+IFL@ND2x-U}%#vl=P7Q-rw=wMA*|D#nOWmu`zcSxyhZl-e|9thW`WJz^ ze}K{b1B~t;V4MEgl$QQQD3Sg}D3Sg}D3Sizl$QR165YQD49b}p2j3dULe=|h`3}}V z-+B}Fx$;HKC*LIo7RV}0Qr{-WEX6!j_Qm?++ic)S`46_;;<#cw9a$ttAm8{db6l%n z$jb1+&)%i60r)QQPe^d(X(u`+GR>+$DQe}&G#i>gDQe|N)J8iJu#F>aN{b^Sl!zlE zl!zlEl!zm3N{b^wiFRZJ2IX`lm$YKji(L68<7~8n1@dGD^jOFJoI=5&@;oHdw2<*! zksQXUQs(fg$qzj& zP9HE$PY!Vl(LjwxirL9PgU2h*B5^a8+w|jgT}V`5^wWoGR4T5nju6v3{nH z&~@b^sTuHXg-o|9Kv=~LfE*t&vE4zUn(IK7-3DpzouLrA3m z^wTul=@hTA?dc6j_^#k?ml%$nO8OaE@*bC%ij7_RS=^ntg8N-!8Kyw`>_44I7K2U%`t(L^{)CJ2SIYvyRRZZHe!!hD^#B}=Q8ir#; zBLiWp?!u86F_=+uh4EyJn9H_T8c%i>dDxw#U(NjzhP$&k6{}qOHDDEySa&y;H;Igcwgh|G8Yb?tl<8Y1Q7F%E(+FD@tkA8yaqi6??H)O#kpF zRofIR79&BVf6RFRn`6ZW7?A#nhS$Z4XE+Lenq3wvTkBXUgo_goEJ!N+37Q}pByx(koTin_soKkC}Ou_BFO z_LHuCB39ml36*X+Mk%BB$I7RWs?s|-5J?dBY^)431$9>I141iSLYS2vr}mq!;7hUc zWa4{wp5XY@ZaL(--){$d~clOpP5QO&fvet$qFpK>6r%K z7bl-#00j*GN1W`*Nzhv@KuAq-(n~HuVjFa~>P6|x@ zLvb>bGk<`=568)3rj3CHKN2V7IKG37fA_@6O$hY#!Ny^4SMW%j zyeS#D#Ek#ZIN9g{o?vi&ygbNhak9Z1;^n{T&r*Y%;wAqmfBGo~Z;O}j(Ek%1I-6~e zm)W%cR8zk*UIuB;RD*ZL%PTm)XBfOYUJj;z$_?HVFNZK?*BHD%Ue05G&oTZu5HJ5q ze=W296EFYH@v1fWaJ(Ey|JE6M!twG{#`C!jlLX`C=Zx2t1|N-=A8;z4XWG{%$PX$1 zeA9kIf;^t_dx61C3GzS8F{=#TmLT6_d|hbp_5}Gk{qYBbcP2>wpUBcz8-2SHWFhs} zoB6yuLB=xOuQB8GP=Z{|@mz1lb5DXy<9J%7zD9p< zGWriC$iD2)788Gm6Xac-&zCtmBaE@yqQCUl~Sn20qI_%37bp+xx|`}0>L?~O$H0^9F$tXB3O zhJ4!lPcy#ZL^*`><1xoJwVOGTD06B5UUeOe{F*4gXFNV>{J&qyPyl$J>E8hrwx8r%8P=)FWBQLyu|6YF`s^D@YW&jPLHI{;p){p*@+-vk=DEd?m{+jNdG$-q`F;mVWjp=;ZAh^ey_!c?Xi^OzP|D)a&(2$?|pDTi_g`?0Gp^E@ONTG4%(NC;YR@IZ%C2n zaeW_aa8rsL%=tae;B6_A|5Kdw@dj^Ck(j5r$}xCniX1`vLk90kkvDO^lo-4_MfT=? ze1gGyppWr%vcdaP2rcf}{3E)l%)P0r_9gEx5PBb*NxId>`kCaayR4a4ucP*$qLT*I}JXRCNt^J zKRcgL@(!oTPbvSerhnly8N+zqW$=+S*@gP{U zTE@?A)Bg=V$^R*2`h(7=RQ_%9$;UYVA2N8GPabA|c--LaKFOCP(w}gCtoV2OtkjZylm&c~Gh z55a!Mhvhn|^d0uecLKn1E*;-tpL`dJ(i2@eevbI$jf{^JQ-9PaPhKDcKq1f6LmfwF)4Nk?iaI=3Iqma*4F6=?XHGt1mhNrcl1aT!g;IF+B zZs$X@Zp9FHaqI;YS4nXj{uvS1Ft#8{Tth2y1{rZ1|J&b)3qjnP*rzFOKE-X8FhyH; z>7CKyE^Q^wAR}(e1jPyK#z5TK*e;NfUPWd%yj4(Xn zT^G9mLgFt)V)Og2`b$LMw&xM*5$|nlCD0%v@M?dd>F!Cm!@oZEe%dz=H~726S0LQP z3RHJV;1W-9S0N(1B*Cw3q=c+)C&8hY z#GcJbF^>-Y!(V8yik{Ugq8+-rRsRh#{jX0m4ozRM6f!RRA|m5*-Y<;!@bXqN3^Fpd z-fhM>W10hl(h$oBH;G-*%QD}6u5OssauxpZJ>cp$L5Z{ydq8%XZ?J0@D;-W$4sjKs z0rbhmSXO+;8|aXI;RD}L7kBB-pi_>83g0jnH(7YvE{l;WG7RnJ*l|$aeI@>HP67X2jx7N40_ zIlxDhWkRllWq@2?`84e_cNFwn83R(#y-Q=Sg`mWTp(@wE%kfo2>fNoS-rZX2-L0kC z&@U%pqWSM}oUcRM%GiON>%Bad|MTbgzaheNyTwnzxuE6U67&qP1P$+&XzUhQ=zTXi zMD^YyPJ+a4NgDaZJw1Rt=El2~@li6wZ;h>>_(^CG$f(?5i_e%HEk2{l7GDmAj5)?D z;u361GO9I#Q$|qW6|wyP)hGU7;e{IiA%`F9uy*yUt)22}Yp1;0+9@_PPI=9CimX6D z`(JnP_68=rl~Idv@?II64K?xaB4XxuPy8C^%17O0bSJt?yAvGS?$YiAht@`Zk&4FM zlkDsg#*FBmv`58wu5h7$-ILx@s6g~qoOX7(9iz}aNk?6gcr#TYm6bx`YdE)ilFmwH z;siu_caz)7MXEv{s_vXA{(xN7-J|1rmX-017oEF0)`9U({0D?=@c-z@gh|?=Kecw~ zPpuvLQ)`FX&^Ywxh(l-L!q0Cxllm)%$~BnQemuBWrWeRl5!3!8r~Q=e3J;*iz#@4J zv)i9+U`Vb(>hhmb9gK&C>4`@$FS5SCFnj%p9Oo=Ab|Ky_ ziS%$5-xKk6P2{F4s{+pSc1t{q{NoS+-i$=%!mKZtdAcXAVcYj%v-h~fyKrtLZs`r5 zc(*0agf@9MDBi0RH%#KFTC$wNu1Vy(V9f0GP~g2**}~0E#_|~8>th$7W#ZisR^a_p z;`0=9T@O^;ka(#P^EeFfZddkE%y$WZHyY@XrMLv~-jsNaV)o11Xu{3Lgn+z)cJD9{ z6ZaGP<4>`Cs+$-_I?weV?98iSxeBiHztUMR>6W|&8s6GD7v~w>kYv1r;}1e{nuBKe)IWxW50PWU6(Glm9szW1 z5)>WEOmeJ4e9J$gFPR>7(}bgP3#NBwnz{$Wu7x~+J_9|n7p7ijx`BS#1h-`R4GhS? zB5bfY>V%UkOAv*bT@5Udsc?2?Hv@;tDe!M*hJi)$FI04#fg#yB2{6;ZGI=k$kQp$r zTn<2*%gk~-4*Q+KS#l?)P-eE{DFx@t39RjDdQ>A{XOHp?tdrFUpUggvd*D61OeHUY zTQUpO+lsiRbVw)SC$rEzqq*22Z@}nf4sbjN*{-Y!yjn?qhkTw?HchrF72g26i-ay#+K2Jdpn-WZ!qymN%1#5ImX@_&Vp zInmtH+T)PdA?7m69PcUpdmUErGIsCY_+|u%Kl1^)MC_u>2eo%BaXWkPkams`mteYO z?qPUwmc@uoXb>ZI!wc#yI`&JwibN{oLs7rBsi~IxBRC*XWg%?4@&hY}I|2U&s(Fzc zBgmMs7%Bp*9YL~G;N0Q<5rNU;_}QKCI#qWJj>tO5=a?yP_eZ`s#Eg?N25!uHjggZw zny0TTh6k}~XT8B>o#INw>D!8-J91stJ8TAxpTHk6f?IhvMQ1e+0(Z9C-!B$iIk&)A zD<@OJh@2n-&Y80gY0H&!AFkZoITc6_opSyTo|v4YxWwq3^Dcyn9RBY_VsqAk5|{IM z3bJ?3m!Kr%90Px1&VD#t=1j+VQqD4T32!rgjzRK|z6P4RgvMF^(~g7g^!e46KOk+o_bJu+U$tJeB~H{k2TzDH-sBzm}OR?cZi3w`(3#=`8B)#{WBGQ7g#!N zqSe>8sIPBPU*Dp>zD0e#vRbLHZ&6?0qQ2g!=Y|k!*72fJt6A5gW?hS#buDVvwWwLw zqGnx-nsqH|))_V2B|^^BqlPPR0uEg0Fjni zApWW9^xPXNe#T}$xKPi%kzx+!g^h|tS4pHf$BO$9pTUJcD48Mg7^a9_S0)}&b((Xk zI29X?;6kn$&S1H?4v}DU&Ju@$EohDyltAPdLeBZ32WGyFYQ%Gx)WL-uRV-{GMYW@y zT-SQ;#wrk8$i0Nyo#6_ub@beamBvsqz=JO;Vg!e+m+)WVI0o0s|0H4lU#Xt2aBJ`o zffsAxv<{9&G8D%$SQ)N{_B-VFp>AXa&H1%__sTlM6(8y_eS;BUDm!_oZsYN zbY*3+-OcK8T2>m*cPM_yU{cOq0w)UpZ4O@dXT40Dck1(eRQPXKc7T_6FfvZZ0QnEA zCy8n5d7R#0@$v~Qyl)mGzJZ(=Q3Lbxgg?$X0(Dsr0r}(gIsd0e{seXR8GL-dH~v95 z*d0vc>obCT%Al_ZKHwU$6j2jQ*T^9rL9c>-bBDxovstiPFcvStN)e@>A#jG8_?g;7@Q z8k{&_nR)R%eh}Ouf`jux5{+aXVzdYNznTr2ci-HWn~cGsY#N`2c{eL~J|~{ofCVFX z!7LTcmdL;rO>ouC3JLK8MkKiU9fdq%D@H7M@lOi*#hFBFyvNh5fS{=0+TjZ2iczsZ z>lZ3iAZF658=4dvDvn2>1~)#SP?1Q&rXjfLErmkD&AEH2)=(zir-r6ZL#d%0!*v8Y z5(eX+7{S|`F@heC5$t*Vy|CL8Jcn;g3C`$Xt$r2V5*N9E>R7>*IY!Vs?njX#gUdUE znD1c1IRj@poYWa5Sn7skj3`!2Z1txIlRD!h_qF^(4j+e8T^0DW2+GErU`hm8Uui8u zvA2j&wQqpMN?`LCF$Cv$>r6E#FFm8pqy?x7qeydb5L%I4Af!14w<7x#WcRED+8QIe zDy}oy;{pvf;9nSze-nBHcv^(hd^MLjm@OK8N(SYF=^VvGYdOZzOf+7(m;D6il@U&k ze>5kdVcMgZn3j*VW+H?TUXI3y_W&{uCu2|x)uY{BA~@1nfXI=KZ~t>ayB zcpo}AP!VJ&Y(ayA)WZoT*G{&1BWSO#I1R8?aIPjbd9r3qFqfAD1IhmlsNv~D%ARjWyMD|rJa%BiZIHh?LrS135u zdB-rjW7AuUn$b#Bc|_DbNcX|hO{GVk&SZ0j5`$Z`Nu#acnMO?@X>qj`oM}+5+>6u} zJWD-Y#Cx}LMIvB@kuy|2#;G;SsdM5;c?Ov)4Lm^(MGgzjR`+I{!6G=2d@NkrjrF6o)yl9h&3xC*8G6&eDFLKP#9F{;0kcQfeFe}7et1qS0MNY z=W`Ju^${V5IgA%Yy7V-?a^N$Ajm47ZX4hhK1n4&K?qmwNkBHU`!<;stl_^&ds zkIdmfZ!=cHVY$I;ogYMuxjtgd$N>2M6fuUg;0B}7qeo=BfnFJ)%p2{V%TMX+n~ZY< zav>w_W&^X?{ac-@N7~)rX=_ZXDzt*P+ar`zHJ}A0s1Dx|QU6C=bO!GFiYva*XVXDEC1fgN*g7} zYcL;z_ZdHUWHPt5|A@Fn4a9CU5SX0{mRQ024a`njT)DCZ=F;j1Y}0794Tf5Iq2Te( zN0G{UpI2RL;WOEEWTUKR4tj}mDbIH>Oed?{mi2HD=T*)lq|e}ao%24VoUGoQovYNu z%{q_gYt^*Lx{!U}prSvkIDqr3RSaic$=tg`g>9DPRNkecChJ8G?t^MPtqdmQ;3Fzo zXa0-}3b%+6lU=%<|BP=z;jGu5rk2tJf)#j<~_RXd};NHzZg zA%il5Pdj;@SdSpv7JSdix5wlRZav<&M@-&Y0QiA{Zdt-je%Kx}`2pR~Y~mw9V*6kP zKa30-ck029B7>Gg!#_4KAk%n-@QG7jFyzW6D*9B}z?}LlC4Xk%P+8X%@Q73IUW(+X zPJo{~^>eY1e3%Q?7f$_ftxQ(Zj4ur=m$3}-uZ-SVQsSyM__cZ!1Q#kYO#gjjV2vC| zzkF*txKh5z+M@=pl9M=e-zlhW$vr^s@0E9WnIf;}Qu%{Y#jh9SCT^&HG#G!(D@N_Y zaBBi<0&Y#f)m_Sp$6DFm8pMaY5=k(-`)F97D)fVsl%0sD?n&y7(=^m}PvUKQRsAyt zD`i{vNcH_Lo+cu3Vl%=9vdHWnpoz?RBCW(R1jMXAVn3WVK`~{;!R=|K>Z2TToa!hi z$478?+GNeqKY;V8>ISD3KL}gof}8>Sz$6|;yygtzK8=?JeR=>5)<_5^49FQ$W2s$& zNX5wK9DjjAUhz2gCOJbjr(dLC>~e-_6cG2a-EfU^t@x|3e+~5PlTZwG-@scv`{^ot zO#?%E_SZ;=lZXnm0(`CsAw3IqtoW@yCf~clvpCX3AOeAjUs$xq91= zJBAxzO5O#ElZ*XT@LAq!!|a!R(*f%Zb3iUY2;{ACzTu>jTv>+L&0FhKpMv5Wzpv4c zyi1(>idY+xpTqRL4Mx;_c|9(b@*0e&8u?HRV59RHSjhY9-4Nt?mpS=Cv6{@wDf&t? zS#dx70oG%+M_=%cr$auK3Ve<8c{Im6jt;pKW1DxqT6NU@@O>1omu|e{=#a0nn>U&E z`yKLjOx?U&oG*e6nc5-UNDg_o8+~DiT!=2_-C_8TIOHg#z`Q>@Us3vwI^+-J-(~dG zJ7skt@V!occZ_7?l+%!I^LE?zJLMMIgH=)6@09#QKY0&1-_-UyGz3u!=wQq9E ze{}*5J1ZatU)s3km+apWCu5IaN6EWPLwUKwoEgiJ~TT_47Eh}?? ze{lYw_`_~FiR1mF-G8_I50ZA?&!+yUTaKi@7?;*x-$}lPg(WZ6#R-S_=p^e|ALla9 zOFGFnIevI&OV#h`BnM#joFGlRc0L2J~X^dd-#0U;~ zjNrh<2)aK;(22Mepw9WtcE;OCt9dCdriE0Ik8R*T-4${DG=22J@Mv7OWX(2j=yGYJ4)<3G5??QM zdI9A6wr>Ho>m9vtcP2*gc4v%O3rgbT9#}|xWlnJt(!~lkI@QTl3u=?9R#?6%PW=La zkV_EOzG>>!KW2+RX8}$(&@W%Wp!sH)1v(&mK&-D^N#*+vG2#xae2KfTOa^>2ozo-A z&T6G>maQxaZ!`I3o9F0wYa0gnstm*j`ln(>7Wf`>@~b&*^y9W1c@R2$PnathTouvG zCrzzKZst|~K2wW}4yf60lm=vV9x9(wQnk_i3@=akK5-s_qTaPDYAoNU>fO)YwC^)z zP?qZI5!F>(fcw65riXBWRJrUt%ZJSlVvDX^u+s8r{eZr!QdJ^)Aj=zB2Y6+g@T|K<3dy z8w_)<3=%dNSRnaF@O&E$94gOB18j61L6@*n%Y&(an_T*iLCDH0^ZmnBHUWJf$U)hy z-kZz%0-g5V@0wVGMv159GV;f{4}wcxghc2Y@3vn#Xri=}R27GAAUhRuzX4A6;$hCA z5(E9Rm|maY=B+l|AeAc!Pc|@HzRxa~8kj40(CkwT?1RzZD}phCre^TvL*HaK&-D{@ zzEh&_meFHAUK@b-Q&rFVhPmz5^GinEp6{!)X|Hcw@*_eY4TiXW5q7@NqS>j*XYRYr z1T{wRrK5~{;1=(O#4VsCZiz<%@-`%f0ptek0lga&?ErcMe)cvdnp^1d2}tv9O4M;I z&TnIkJOv~@C#S767uFpS?3jqdL zJdA$k_t3~IZbs+w)gpnI6^{v^Y+aWj)>2o_3?(xVsHwH`duos?eDGL)zP7PI@J}@6 z_tt2T=ttB?dtj*O!oKy@2=ArR%zoOHA+aO?)L*{?St9rsQolRsEb!dc=Ptm*kf^jOUo*Wt1w|9Fkg7Bdj| z`Q|hFMdBT}Cx4i3S0mP8?aUvpd$dwaqb=s6`c+~zdo)rnr1cIl7DJprO2dmBVhF}G z{{#&$c8E|8;E5Wpafk~gU=ii=`cpK~!^LYbn!NlJ^O4r_N7DvwV8uctA~a*B)4Du1qa&R(bJ9s{^Q ze=@k=Df%&P&mM~i#csC)i-tgPN5~Y zSs9xUfZlbU-ioad|E8%=!L`o*KDff|U6aDEJ9360!mJ#D5q0F$K)N&MpBMvI&gJNs zJ7*&1U#FZ^Xb@v1@{wrBn~{1M+9lOg&cTa!>KqxwitT~9c@rwk1G3YXN{mQH@3EOj>r~M@@E(}Gw6%8+lDrG7-dW73mU|}_`QE|(R5c&@ z%$jVZ;%_$*du*HuX(V*^^y!Viw`8e@lzsZ}T|FlET?p4ceQUwMUH)8jxlcc`;V

%9MJmXFIf_Qw!#? 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 CX{^2g diff --git a/scripts/CBHD/Makefile.PL b/scripts/CBHD/Makefile.PL index e796988d..25a08887 100644 --- a/scripts/CBHD/Makefile.PL +++ b/scripts/CBHD/Makefile.PL @@ -3,7 +3,7 @@ my %options = %{ { 'TYPEMAPS' => [], 'NAME' => 'CBitcoin::CBHD', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'INC' => '../../library/include', 'LIBS' => ['-lcbitcoin.2.0', '-lcbitcoin-network.2.0', '-lcbitcoin-storage.2.0', diff --git a/scripts/CBHD/Makefile.old b/scripts/CBHD/Makefile.old index e3a67291..59823434 100644 --- a/scripts/CBHD/Makefile.old +++ b/scripts/CBHD/Makefile.old @@ -165,7 +165,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = CBHD.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -485,8 +485,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + CBHD.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + CBHD.pm $(INST_MAN3DIR)/CBitcoin::CBHD.$(MAN3EXT) diff --git a/scripts/CBHD/blib/arch/.exists b/scripts/CBHD/blib/arch/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so b/scripts/CBHD/blib/arch/auto/CBitcoin/CBHD/CBHD.so deleted file mode 100755 index e1a8c70973e4f11e151356a7a4a074b8e7560c66..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87701 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� z=e6-i9cM7ViL1B)gEvOFq`^EWQ1kU0{DuhEXYketmoWHU5w1hW+4vVNarI-i4YXq2 zXWI%U!h#b9WC#(G_J+!@-ok)oT9yH)etp;tyj^tmf z>w}sHTxy^d>&~Sg(gGg~3#JYH`w-RPLEWpjJ{e|78~B9~b;v;LL6<1-Lz??*dL<1E zemKJQ8T`!%*KhE*B3#no$0FQ-!7G+IdQrO=d}@RnFnDEzOB&oC;rb1Jd4%gTI2qv* z1{Wh-hjy{?Kd$}7ycuZ4y3d;xd@?LJVc@o*i4gOq&>ofR&Mz{`bWqq5~Jm7i*typ)i zKduGd85T?%cwdO>&{lt>w>}(ZNgHUr1z)-8jQ(1M_eZ4+v~k1lGVsALSBD4nkly;5 zUPZ?#%%j5j1Fp~DZ$`L&gTEEwk_JB(;RXyo8AnuWeM1JH65$36J~hH64PF`H`VH=n zaD4_RBV5AZVub6|aoW$v^-3M5pcU&r+eWx2!-5kAZo}cq{87g#cu>2bI!;s8LN^_! z)t(X7b;WlTd^SWKGLVOV^VeO+X;q$<6CI~84*!;)>NrjD>+}3k$0=xygBM@c(fbbe zT%x6x>$OwI>5YE9zL<`i)qMBq6{_ic?S_%Ii?*`d_lKp@1{%L~DRsBzHrDH+<9?=D zj1*mUoc8Z(y^4-gcrL>A8GLPo>o<5n_t+&iZHaRfi3BV5AZFGskcXzCqguz{Ylkwl8}pjs#gyTrny)_``xU>hpb@i+TC?1*2ur06G=Aw)YN_Tn z*6X4SFV!qYif+pAAd;{`daD>_NgHUiK=bV+0IHn;*2Y_-iVQSDL#uXH)X}4Rw1U6XE9c(edm~(*!Jmq7 z{RZD3;gSY_I>HSY{4BnP!ymP(!Oumw0fT=U;gSYFAL059{*MUPXRx;-Y$IXt?g%&J z?nZxY{GZeQf|CriV%<5(3O*PXoG|cA?H81#fy3Gbr&TRwEp*YUU(srR9#((F-)pts z2&+G2;1i1Ks#X6IyUuxYR%^)}2eMT3{|Lm^Sdi5Op9D2M67(w|+0ok~Z)k zLsZA4|AF4RGt81U@Eakj{vRS<>y@`JCSR_QF}dr?P zV&DozbyZ`_v|OKFsm2WMSDaI0mRhA)2(W?HI2t`i8;g41!O<_%3SOz#4mD;s1~kKq zsj=VGd|%Kjv`EK1LFldA8`BwE%0Diu!9Nj)>|LbEBW5wk1Njc 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 diff --git a/scripts/CBHD/blib/lib/CBitcoin/.exists b/scripts/CBHD/blib/lib/CBitcoin/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm b/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm deleted file mode 100644 index 48036944..00000000 --- a/scripts/CBHD/blib/lib/CBitcoin/CBHD.pm +++ /dev/null @@ -1,121 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::CBHD; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::CBHD::VERSION = '0.02'; - -DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; - -@CBitcoin::CBHD::EXPORT = (); -@CBitcoin::CBHD::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - - -# Preloaded methods go here. - - -sub new { - my $package = shift; - return bless({}, $package); -} -# newMasterKey deriveChildPrivate exportWIFFromCBHDKey exportAddressFromCBHDKey publickeyFromWIF -# generate a key (parent) -sub generate { - my $this = shift; - eval{ - my $key = CBitcoin::CBHD::newMasterKey(1); - $this->serializedkeypair($key) || die "Cannot load the key."; - }; - if($@){ - return 0; - } - return 1; -} - -sub serializedkeypair { - my $this = shift; - my $x = shift; - if($x){ - $this->{serializedkey} = $x; - return $this->{serializedkey}; - } - else{ - return $this->{serializedkey}; - } -} -=head2 ----++ deriveChild($hardbool,$childid) -If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to -go from private parent keypair to private child keypair, then set $hardbool to true. - -=cut -sub deriveChild { - my $this = shift; - my $hardbool = shift; - my $childid = shift; - my $childkey = new CBitcoin::CBHD; - eval{ - if($hardbool){ - $hardbool = 1; - } - else{ - $hardbool = 0; - } - unless($childid > 0 && $childid < 2**31){ - die "The child id is not in the correct range.\n"; - } - die "no private key" unless $this->serializedkeypair; - $childkey->serializedkeypair(CBitcoin::CBHD::deriveChildPrivate($this->serializedkeypair(),$hardbool,$childid)); - - }; - if($@){ - return undef; - } - return $childkey; - -} - -sub WIF { - my $this = shift; - my $wif = ''; - eval{ - die "no private key" unless $this->serializedkeypair(); - $wif = CBitcoin::CBHD::exportWIFFromCBHDKey($this->serializedkeypair()); - }; - if($@){ - return undef; - } - return $wif; -} - -sub address { - my $this = shift; - my $address = ''; - eval{ - die "no private key" unless $this->serializedkeypair(); - $address = CBitcoin::CBHD::exportAddressFromCBHDKey($this->serializedkeypair()); - }; - if($@){ - return undef; - } - return $address; -} - -sub publickey { - my $this = shift; - my $x = ''; - eval{ - die "no private key" unless $this->serializedkeypair(); - $x = CBitcoin::CBHD::exportPublicKeyFromCBHDKey($this->serializedkeypair()); - }; - if($@){ - return undef; - } - return $x; -} - -1; diff --git a/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl b/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl deleted file mode 100644 index 324425b4..00000000 --- a/scripts/CBHD/blib/lib/CBitcoin/coinx2.pl +++ /dev/null @@ -1,15 +0,0 @@ - use InlineX::C2XS qw(c2xs); - - -my $module_name = 'CBitcoin::CBHD'; -my $package_name = 'CBitcoin::CBHD'; - -my $config_opts = {'WRITE_PM' => 1, - 'WRITE_MAKEFILE_PL' => 1, - 'VERSION' => 0.01, - }; - - -c2xs($module_name, $package_name,'./',$config_opts); - - diff --git a/scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists b/scripts/CBHD/blib/lib/auto/CBitcoin/CBHD/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/man1/.exists b/scripts/CBHD/blib/man1/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/man3/.exists b/scripts/CBHD/blib/man3/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm b/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm deleted file mode 100644 index ec0d3242..00000000 --- a/scripts/CBHD/blib/man3/CBitcoin::CBHD.3pm +++ /dev/null @@ -1,134 +0,0 @@ -.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) -.\" -.\" Standard preamble: -.\" ======================================================================== -.de Sp \" Vertical space (when we can't use .PP) -.if t .sp .5v -.if n .sp -.. -.de Vb \" Begin verbatim text -.ft CW -.nf -.ne \\$1 -.. -.de Ve \" End verbatim text -.ft R -.fi -.. -.\" Set up some character translations and predefined strings. \*(-- will -.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left -.\" double quote, and \*(R" will give a right double quote. \*(C+ will -.\" give a nicer C++. Capital omega is used to do unbreakable dashes and -.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, -.\" nothing in troff, for use with C<>. -.tr \(*W- -.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' -.ie n \{\ -. ds -- \(*W- -. ds PI pi -. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch -. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch -. ds L" "" -. ds R" "" -. ds C` "" -. ds C' "" -'br\} -.el\{\ -. ds -- \|\(em\| -. ds PI \(*p -. ds L" `` -. ds R" '' -'br\} -.\" -.\" Escape single quotes in literal strings from groff's Unicode transform. -.ie \n(.g .ds Aq \(aq -.el .ds Aq ' -.\" -.\" If the F register is turned on, we'll generate index entries on stderr for -.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index -.\" entries marked with X<> in POD. Of course, you'll have to process the -.\" output yourself in some meaningful fashion. -.ie \nF \{\ -. de IX -. tm Index:\\$1\t\\n%\t"\\$2" -.. -. nr % 0 -. rr F -.\} -.el \{\ -. de IX -.. -.\} -.\" -.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). -.\" Fear. Run. Save yourself. No user-serviceable parts. -. \" fudge factors for nroff and troff -.if n \{\ -. ds #H 0 -. ds #V .8m -. ds #F .3m -. ds #[ \f1 -. ds #] \fP -.\} -.if t \{\ -. ds #H ((1u-(\\\\n(.fu%2u))*.13m) -. ds #V .6m -. ds #F 0 -. ds #[ \& -. ds #] \& -.\} -. \" simple accents for nroff and troff -.if n \{\ -. ds ' \& -. ds ` \& -. ds ^ \& -. ds , \& -. ds ~ ~ -. ds / -.\} -.if t \{\ -. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" -. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' -. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' -. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' -. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' -. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' -.\} -. \" troff and (daisy-wheel) nroff accents -.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' -.ds 8 \h'\*(#H'\(*b\h'-\*(#H' -.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] -.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' -.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' -.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] -.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] -.ds ae a\h'-(\w'a'u*4/10)'e -.ds Ae A\h'-(\w'A'u*4/10)'E -. \" corrections for vroff -.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' -.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' -. \" for low resolution devices (crt and lpr) -.if \n(.H>23 .if \n(.V>19 \ -\{\ -. ds : e -. ds 8 ss -. ds o a -. ds d- d\h'-1'\(ga -. ds D- D\h'-1'\(hy -. ds th \o'bp' -. ds Th \o'LP' -. ds ae ae -. ds Ae AE -.\} -.rm #[ #] #H #V #F C -.\" ======================================================================== -.\" -.IX Title "CBHD 3" -.TH CBHD 3 "2014-06-25" "perl v5.14.2" "User Contributed Perl Documentation" -.\" For nroff, turn off justification. Always turn off hyphenation; it makes -.\" way too many mistakes in technical documents. -.if n .ad l -.nh -.ie n .SS " \-\-\-++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true." -.el .SS " \-\-\-++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set \f(CW$hardbool\fP to false. If you want to go from private parent keypair to private child keypair, then set \f(CW$hardbool\fP to true." -.IX Subsection " ---++ deriveChild($hardbool,$childid) If you want to go from private parent keypair to public child keypair, then set $hardbool to false. If you want to go from private parent keypair to private child keypair, then set $hardbool to true." diff --git a/scripts/CBHD/blib/script/.exists b/scripts/CBHD/blib/script/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/old-config/CBHD.bs b/scripts/CBHD/old-config/CBHD.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/old-config/Makefile.PL b/scripts/CBHD/old-config/Makefile.PL index e796988d..25a08887 100644 --- a/scripts/CBHD/old-config/Makefile.PL +++ b/scripts/CBHD/old-config/Makefile.PL @@ -3,7 +3,7 @@ my %options = %{ { 'TYPEMAPS' => [], 'NAME' => 'CBitcoin::CBHD', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'INC' => '../../library/include', 'LIBS' => ['-lcbitcoin.2.0', '-lcbitcoin-network.2.0', '-lcbitcoin-storage.2.0', diff --git a/scripts/CBHD/old-config/Makefile.old b/scripts/CBHD/old-config/Makefile.old index e3a67291..59823434 100644 --- a/scripts/CBHD/old-config/Makefile.old +++ b/scripts/CBHD/old-config/Makefile.old @@ -165,7 +165,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = CBHD.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -485,8 +485,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + CBHD.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + CBHD.pm $(INST_MAN3DIR)/CBitcoin::CBHD.$(MAN3EXT) diff --git a/scripts/CBHD/old-config/pm_to_blib b/scripts/CBHD/old-config/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBHD/pm_to_blib b/scripts/CBHD/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/CBitcoin/Makefile.PL b/scripts/CBitcoin/Makefile.PL index 33000f9b..9a1c26f0 100644 --- a/scripts/CBitcoin/Makefile.PL +++ b/scripts/CBitcoin/Makefile.PL @@ -8,5 +8,5 @@ WriteMakefile( PREREQ_PM => {}, # e.g., Module::Name => 1.1 ($] >= 5.005 ? ## Add these new keywords supported since 5.005 (ABSTRACT_FROM => 'lib/CBitcoin.pm', # retrieve abstract from module - AUTHOR => 'Joel DeJesus ') : ()), + AUTHOR => 'Joel DeJesus ') : ()), ); diff --git a/scripts/Script/MYMETA.json b/scripts/Script/MYMETA.json deleted file mode 100644 index 430dfb2d..00000000 --- a/scripts/Script/MYMETA.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "abstract" : "unknown", - "author" : [ - "unknown" - ], - "dynamic_config" : 0, - "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", - "license" : [ - "unknown" - ], - "meta-spec" : { - "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" - }, - "name" : "CBitcoin-Script", - "no_index" : { - "directory" : [ - "t", - "inc" - ] - }, - "prereqs" : { - "build" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "configure" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "runtime" : { - "requires" : {} - } - }, - "release_status" : "stable", - "version" : "0.01" -} diff --git a/scripts/Script/MYMETA.yml b/scripts/Script/MYMETA.yml deleted file mode 100644 index 6bc437d1..00000000 --- a/scripts/Script/MYMETA.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -abstract: unknown -author: - - unknown -build_requires: - ExtUtils::MakeMaker: 0 -configure_requires: - ExtUtils::MakeMaker: 0 -dynamic_config: 0 -generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' -license: unknown -meta-spec: - url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 -name: CBitcoin-Script -no_index: - directory: - - t - - inc -requires: {} -version: 0.01 diff --git a/scripts/Script/Makefile.PL b/scripts/Script/Makefile.PL index e8672560..fb686c18 100644 --- a/scripts/Script/Makefile.PL +++ b/scripts/Script/Makefile.PL @@ -3,7 +3,7 @@ my %options = %{ { 'TYPEMAPS' => [], 'NAME' => 'CBitcoin::Script', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'INC' => '../../library/include', 'LIBS' => ['-lcbitcoin.2.0', '-lcbitcoin-network.2.0', '-lcbitcoin-storage.2.0', diff --git a/scripts/Script/Makefile.old b/scripts/Script/Makefile.old index 9e507545..17f232b8 100644 --- a/scripts/Script/Makefile.old +++ b/scripts/Script/Makefile.old @@ -13,7 +13,7 @@ # BUILD_REQUIRES => { } # CONFIGURE_REQUIRES => { } -# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] # MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Script] @@ -153,7 +153,7 @@ BASEEXT = Script PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = -INC = /home/joeldejesus/Workspace/cbitcoin/library/include +INC = ../../library/include OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic diff --git a/scripts/Script/Script.bs b/scripts/Script/Script.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/Script.c b/scripts/Script/Script.c deleted file mode 100644 index 3cdc6f15..00000000 --- a/scripts/Script/Script.c +++ /dev/null @@ -1,156 +0,0 @@ -/* - * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the - * contents of Script.xs. Do not edit this file, edit Script.xs instead. - * - * ANY CHANGES MADE HERE WILL BE LOST! - * - */ - -#line 1 "Script.xs" -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -//////////////////////// perl export functions ///////////// -int addressToScript(char* addressString){ - CBAddress * address = CBNewAddressFromString(CBNewByteArrayFromString(addressString, true), false); - // extract script from address, get uint8_t * 20 byte ripemd 160 bit hash (equal to address without checksum bytes) - uint8_t* addrraw = CBByteArrayGetData(CBGetByteArray(address)); - CBFreeAddress(address); - - - CBScript * self; - CBInitScriptPubKeyHashOutput(self,addrraw); - return 1; -/* - char* output; - CBScriptToString(self,output); - return output;*/ -} - - - - - - -#line 51 "Script.c" -#ifndef PERL_UNUSED_VAR -# define PERL_UNUSED_VAR(var) if (0) var = var -#endif - -#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE -#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) - -/* prototype to pass -Wmissing-prototypes */ -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); - -STATIC void -S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) -{ - const GV *const gv = CvGV(cv); - - PERL_ARGS_ASSERT_CROAK_XS_USAGE; - - if (gv) { - const char *const gvname = GvNAME(gv); - const HV *const stash = GvSTASH(gv); - const char *const hvname = stash ? HvNAME(stash) : NULL; - - if (hvname) - Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); - else - Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); - } else { - /* Pants. I don't think that it should be possible to get here. */ - Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); - } -} -#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE - -#ifdef PERL_IMPLICIT_CONTEXT -#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) -#else -#define croak_xs_usage S_croak_xs_usage -#endif - -#endif - -/* NOTE: the prototype of newXSproto() is different in versions of perls, - * so we define a portable version of newXSproto() - */ -#ifdef newXS_flags -#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) -#else -#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) -#endif /* !defined(newXS_flags) */ - -#line 103 "Script.c" - -XS(XS_CBitcoin__Script_addressToScript); /* prototype to pass -Wmissing-prototypes */ -XS(XS_CBitcoin__Script_addressToScript) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif - if (items != 1) - croak_xs_usage(cv, "addressString"); - { - char * addressString = (char *)SvPV_nolen(ST(0)); - int RETVAL; - dXSTARG; - - RETVAL = addressToScript(addressString); - XSprePUSH; PUSHi((IV)RETVAL); - } - XSRETURN(1); -} - -#ifdef __cplusplus -extern "C" -#endif -XS(boot_CBitcoin__Script); /* prototype to pass -Wmissing-prototypes */ -XS(boot_CBitcoin__Script) -{ -#ifdef dVAR - dVAR; dXSARGS; -#else - dXSARGS; -#endif -#if (PERL_REVISION == 5 && PERL_VERSION < 9) - char* file = __FILE__; -#else - const char* file = __FILE__; -#endif - - PERL_UNUSED_VAR(cv); /* -W */ - PERL_UNUSED_VAR(items); /* -W */ -#ifdef XS_APIVERSION_BOOTCHECK - XS_APIVERSION_BOOTCHECK; -#endif - XS_VERSION_BOOTCHECK ; - - newXS("CBitcoin::Script::addressToScript", XS_CBitcoin__Script_addressToScript, file); -#if (PERL_REVISION == 5 && PERL_VERSION >= 9) - if (PL_unitcheckav) - call_list(PL_scopestack_ix, PL_unitcheckav); -#endif - XSRETURN_YES; -} - diff --git a/scripts/Script/Script.o b/scripts/Script/Script.o deleted file mode 100644 index b2aa8471cc653d02f650a0275f737aa3a7e56c5c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 77088 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 diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index c794f0c4..526d6d4d 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -18,19 +18,14 @@ //////////////////////// perl export functions ///////////// int addressToScript(char* addressString){ - CBAddress * address = CBNewAddressFromString(CBNewByteArrayFromString(addressString, true), false); - // extract script from address, get uint8_t * 20 byte ripemd 160 bit hash (equal to address without checksum bytes) - uint8_t* addrraw = CBByteArrayGetData(CBGetByteArray(address)); - CBFreeAddress(address); - - - CBScript * self; - CBInitScriptPubKeyHashOutput(self,addrraw); - return 1; -/* - char* output; - CBScriptToString(self,output); - return output;*/ + CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); + CBAddress * addr = CBNewAddressFromString(addrStr, false); + + CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); + + char scriptStr[CBScriptStringMaxSize(script)]; + CBScriptToString(script, scriptStr); + return scriptStr; } diff --git a/scripts/Script/blib/arch/.exists b/scripts/Script/blib/arch/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/.exists b/scripts/Script/blib/arch/auto/CBitcoin/Script/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so b/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so deleted file mode 100755 index 399559515ee6ae6807015eed1a8083d14f4d5823..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 49246 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 z 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 diff --git a/scripts/Script/blib/lib/CBitcoin/.exists b/scripts/Script/blib/lib/CBitcoin/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/lib/CBitcoin/Script.pm b/scripts/Script/blib/lib/CBitcoin/Script.pm deleted file mode 100644 index e5e9ac18..00000000 --- a/scripts/Script/blib/lib/CBitcoin/Script.pm +++ /dev/null @@ -1,22 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::Script; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::Script::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::Script $CBitcoin::Script::VERSION; - -@CBitcoin::Script::EXPORT = (); -@CBitcoin::Script::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - -sub address_to_script { - my $address = shift; - return addressToScript($address); -} - -1; diff --git a/scripts/Script/blib/lib/CBitcoin/coinx2.pl b/scripts/Script/blib/lib/CBitcoin/coinx2.pl deleted file mode 100644 index 9fa8621e..00000000 --- a/scripts/Script/blib/lib/CBitcoin/coinx2.pl +++ /dev/null @@ -1,15 +0,0 @@ - use InlineX::C2XS qw(c2xs); - - -my $module_name = 'CBitcoin::Script'; -my $package_name = 'CBitcoin::Script'; - -my $config_opts = {'WRITE_PM' => 1, - 'WRITE_MAKEFILE_PL' => 1, - 'VERSION' => 0.01, - }; - - -c2xs($module_name, $package_name,'./',$config_opts); - - diff --git a/scripts/Script/blib/lib/auto/CBitcoin/Script/.exists b/scripts/Script/blib/lib/auto/CBitcoin/Script/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/man1/.exists b/scripts/Script/blib/man1/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/man3/.exists b/scripts/Script/blib/man3/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/blib/script/.exists b/scripts/Script/blib/script/.exists deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/old-config/MYMETA.json b/scripts/Script/old-config/MYMETA.json deleted file mode 100644 index 430dfb2d..00000000 --- a/scripts/Script/old-config/MYMETA.json +++ /dev/null @@ -1,39 +0,0 @@ -{ - "abstract" : "unknown", - "author" : [ - "unknown" - ], - "dynamic_config" : 0, - "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", - "license" : [ - "unknown" - ], - "meta-spec" : { - "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", - "version" : "2" - }, - "name" : "CBitcoin-Script", - "no_index" : { - "directory" : [ - "t", - "inc" - ] - }, - "prereqs" : { - "build" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "configure" : { - "requires" : { - "ExtUtils::MakeMaker" : "0" - } - }, - "runtime" : { - "requires" : {} - } - }, - "release_status" : "stable", - "version" : "0.01" -} diff --git a/scripts/Script/old-config/MYMETA.yml b/scripts/Script/old-config/MYMETA.yml deleted file mode 100644 index 6bc437d1..00000000 --- a/scripts/Script/old-config/MYMETA.yml +++ /dev/null @@ -1,21 +0,0 @@ ---- -abstract: unknown -author: - - unknown -build_requires: - ExtUtils::MakeMaker: 0 -configure_requires: - ExtUtils::MakeMaker: 0 -dynamic_config: 0 -generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' -license: unknown -meta-spec: - url: http://module-build.sourceforge.net/META-spec-v1.4.html - version: 1.4 -name: CBitcoin-Script -no_index: - directory: - - t - - inc -requires: {} -version: 0.01 diff --git a/scripts/Script/old-config/Makefile.PL b/scripts/Script/old-config/Makefile.PL index e8672560..fb686c18 100644 --- a/scripts/Script/old-config/Makefile.PL +++ b/scripts/Script/old-config/Makefile.PL @@ -3,7 +3,7 @@ my %options = %{ { 'TYPEMAPS' => [], 'NAME' => 'CBitcoin::Script', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', + 'INC' => '../../library/include', 'LIBS' => ['-lcbitcoin.2.0', '-lcbitcoin-network.2.0', '-lcbitcoin-storage.2.0', diff --git a/scripts/Script/old-config/Makefile.old b/scripts/Script/old-config/Makefile.old index 9e507545..17f232b8 100644 --- a/scripts/Script/old-config/Makefile.old +++ b/scripts/Script/old-config/Makefile.old @@ -13,7 +13,7 @@ # BUILD_REQUIRES => { } # CONFIGURE_REQUIRES => { } -# INC => q[/home/joeldejesus/Workspace/cbitcoin/library/include] +# INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] # MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] # NAME => q[CBitcoin::Script] @@ -153,7 +153,7 @@ BASEEXT = Script PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = -INC = /home/joeldejesus/Workspace/cbitcoin/library/include +INC = ../../library/include OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic diff --git a/scripts/Script/old-config/Script.bs b/scripts/Script/old-config/Script.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/old-config/pm_to_blib b/scripts/Script/old-config/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/pm_to_blib b/scripts/Script/pm_to_blib deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 37669fc4..43a34d3e 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -21,7 +21,6 @@ int addressToScript(char* addressString){ char scriptStr[CBScriptStringMaxSize(script)]; CBScriptToString(script, scriptStr); - return scriptStr; } diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL deleted file mode 100644 index 78c8e4cc..00000000 --- a/scripts/TransactionInput/Makefile.PL +++ /dev/null @@ -1,13 +0,0 @@ -use ExtUtils::MakeMaker; -my %options = %{ -{ - 'TYPEMAPS' => [], - 'NAME' => 'CBitcoin::TransactionInput', - 'INC' => '', - 'VERSION' => '0.01' -} -}; -WriteMakefile(%options); - -# Remove the Makefile dependency. Causes problems on a few systems. -sub MY::makefile { '' } diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm deleted file mode 100644 index d90e6bcd..00000000 --- a/scripts/TransactionInput/TransactionInput.pm +++ /dev/null @@ -1,20 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::TransactionInput; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::TransactionInput::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; - -@CBitcoin::TransactionInput::EXPORT = (); -@CBitcoin::TransactionInput::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - - - - -1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs deleted file mode 100644 index 49ed15c9..00000000 --- a/scripts/TransactionInput/TransactionInput.xs +++ /dev/null @@ -1,117 +0,0 @@ -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* newMasterKey(int arg){ - CBHDKey * masterkey = CBNewHDKey(true); - CBHDKeyGenerateMaster(masterkey,true); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(masterkey, keyData); - free(masterkey); - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* deriveChildPrivate(char* privstring,bool private,int child){ - CBHDKey* masterkey = importDataToCBHDKey(privstring); - - // generate child key - CBHDKey * childkey = CBNewHDKey(true); - CBHDKeyChildID childID = { private, child}; - CBHDKeyDeriveChild(masterkey, childID, childkey); - free(masterkey); - - uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); - CBHDKeySerialise(childkey, keyData); - free(childkey); - - CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); - // need to figure out how to free keyData memory - CBByteArray * str = CBChecksumBytesGetString(checksumBytes); - CBReleaseObject(checksumBytes); - return (char *)CBByteArrayGetData(str); -} - -char* exportWIFFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBWIF * wif = CBHDKeyGetWIF(cbkey); - free(cbkey); - CBByteArray * str = CBChecksumBytesGetString(wif); - CBFreeWIF(wif); - return (char *)CBByteArrayGetData(str); -} - - -char* exportAddressFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); - free(cbkey); - CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); - CBReleaseObject(address); - return (char *)CBByteArrayGetData(addressstring); -} -char* exportPublicKeyFromCBHDKey(char* privstring){ - CBHDKey* cbkey = importDataToCBHDKey(privstring); - uint8_t* pubkey = CBHDKeyGetPublicKey(cbkey); - free(cbkey); - return (char*) pubkey; -} - - - - - - -MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput - -PROTOTYPES: DISABLE - - -char * -newMasterKey (arg) - int arg - -char * -deriveChildPrivate (privstring, private, child) - char * privstring - bool private - int child - -char * -exportWIFFromCBHDKey (privstring) - char * privstring - -char * -exportAddressFromCBHDKey (privstring) - char * privstring - -char * -exportPublicKeyFromCBHDKey (privstring) - char * privstring - diff --git a/scripts/TransactionInput/coinx2.pl b/scripts/TransactionInput/coinx2.pl deleted file mode 100644 index 8eb140c1..00000000 --- a/scripts/TransactionInput/coinx2.pl +++ /dev/null @@ -1,15 +0,0 @@ - use InlineX::C2XS qw(c2xs); - - -my $module_name = 'CBitcoin::TransactionInput'; -my $package_name = 'CBitcoin::TransactionInput'; - -my $config_opts = {'WRITE_PM' => 1, - 'WRITE_MAKEFILE_PL' => 1, - 'VERSION' => 0.01, - }; - - -c2xs($module_name, $package_name,'./',$config_opts); - - diff --git a/scripts/TransactionInput/old-config/Makefile.PL.cbhd b/scripts/TransactionInput/old-config/Makefile.PL.cbhd deleted file mode 100644 index e796988d..00000000 --- a/scripts/TransactionInput/old-config/Makefile.PL.cbhd +++ /dev/null @@ -1,25 +0,0 @@ -use ExtUtils::MakeMaker; -my %options = %{ -{ - 'TYPEMAPS' => [], - 'NAME' => 'CBitcoin::CBHD', - 'INC' => '/home/joeldejesus/Workspace/cbitcoin/library/include', - 'LIBS' => ['-lcbitcoin.2.0', -'-lcbitcoin-network.2.0', -'-lcbitcoin-storage.2.0', -'-lcbitcoin-threads.2.0', -'-lpthread', -'-lcbitcoin-logging.2.0', -'-lcbitcoin-crypto.2.0', -'-lcrypto', -'-lcbitcoin.2.0', -'-lcbitcoin-file-ec.2.0', -'-lcbitcoin-rand.2.0'] - ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' - ,'VERSION' => '0.02' -} -}; -WriteMakefile(%options); - -# Remove the Makefile dependency. Causes problems on a few systems. -sub MY::makefile { '' } diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c deleted file mode 100644 index e020772a..00000000 --- a/scripts/TransactionInput/src/TransactionInput.c +++ /dev/null @@ -1,34 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -CBHDKey* importDataToCBHDKey(char* privstring) { - CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); - CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); - CBReleaseObject(masterString); - CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); - CBReleaseObject(masterData); - return (CBHDKey *)masterkey; -} -//////////////////////// perl export functions ///////////// - -char* createTxInput(char* prevOutHashstring, int prevOutIndexstring){ - CBByteArray * prevOutHash = CBNewByteArrayFromString(prevOutHashstring, true); - CBTransactionInput * txinput; - //CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex); - -} - - - - - From 8352df48ea65149f2d713376024aab5a87b80a68 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 22:16:12 +0900 Subject: [PATCH 011/127] added multisig to Script --- scripts/Script/Makefile.old | 367 ++++++++++++++++++++++++++++++++---- scripts/Script/Script.xs | 46 ++++- scripts/Script/src/Script.c | 59 +++++- scripts/test.pm | 14 +- 4 files changed, 438 insertions(+), 48 deletions(-) diff --git a/scripts/Script/Makefile.old b/scripts/Script/Makefile.old index 17f232b8..4b77bcb4 100644 --- a/scripts/Script/Makefile.old +++ b/scripts/Script/Makefile.old @@ -66,12 +66,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = ../blib/arch -INST_SCRIPT = ../blib/script -INST_BIN = ../blib/bin -INST_LIB = ../blib/lib -INST_MAN1DIR = ../blib/man1 -INST_MAN3DIR = ../blib/man3 +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -154,15 +154,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = +OBJECT = $(BASEEXT)$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = -C_FILES = -O_FILES = +XS_FILES = Script.xs +C_FILES = Script.c +O_FILES = Script.o H_FILES = MAN1PODS = MAN3PODS = @@ -187,10 +187,13 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = Script.pm +TO_INST_PM = Script.pm \ + coinx2.pl PM_TO_BLIB = Script.pm \ - $(INST_LIB)/CBitcoin/Script.pm + $(INST_LIB)/CBitcoin/Script.pm \ + coinx2.pl \ + $(INST_LIB)/CBitcoin/coinx2.pl # --- MakeMaker platform_constants section: @@ -206,7 +209,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -252,7 +255,24 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section skipped. +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = CBitcoin-Script +DISTVNAME = CBitcoin-Script-0.01 + # --- MakeMaker macro section: @@ -499,11 +519,17 @@ manifypods : pure_all # --- MakeMaker subdirs section: -# none +# The default clean, realclean and test targets in this Makefile +# have automatically been given entries for each subdir. + + +subdirs :: + $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) + # --- MakeMaker clean_subdirs section: clean_subdirs : - $(NOECHO) $(NOOP) + $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker clean section: @@ -519,16 +545,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml blibdirs.ts \ - core core.*perl.*.? \ - core.[0-9] core.[0-9][0-9] \ - core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ - mon.out perl \ - perl$(EXE_EXT) perl.exe \ - perlmain.c pm_to_blib \ - pm_to_blib.ts so_locations \ - tmon.out + MYMETA.yml Script.c \ + blibdirs.ts core \ + core.*perl.*.? core.[0-9] \ + core.[0-9][0-9] core.[0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ + lib$(BASEEXT).def mon.out \ + perl perl$(EXE_EXT) \ + perl.exe perlmain.c \ + pm_to_blib pm_to_blib.ts \ + so_locations tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -537,7 +563,8 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - $(NOECHO) $(NOOP) + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker realclean section: @@ -623,15 +650,91 @@ signature : cpansign -s -# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) -# --- MakeMaker dist_core section skipped. -# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" -# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -653,7 +756,117 @@ distsignature : create_distdir -# --- MakeMaker install section skipped. +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + +doc_perl_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLPRIVLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_vendor_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLVENDORLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist + # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -662,6 +875,75 @@ FORCE : # --- MakeMaker perldepend section: +PERL_HDRS = \ + $(PERL_INC)/EXTERN.h \ + $(PERL_INC)/INTERN.h \ + $(PERL_INC)/XSUB.h \ + $(PERL_INC)/av.h \ + $(PERL_INC)/bitcount.h \ + $(PERL_INC)/config.h \ + $(PERL_INC)/cop.h \ + $(PERL_INC)/cv.h \ + $(PERL_INC)/dosish.h \ + $(PERL_INC)/embed.h \ + $(PERL_INC)/embedvar.h \ + $(PERL_INC)/fakesdio.h \ + $(PERL_INC)/fakethr.h \ + $(PERL_INC)/form.h \ + $(PERL_INC)/git_version.h \ + $(PERL_INC)/gv.h \ + $(PERL_INC)/handy.h \ + $(PERL_INC)/hv.h \ + $(PERL_INC)/intrpvar.h \ + $(PERL_INC)/iperlsys.h \ + $(PERL_INC)/keywords.h \ + $(PERL_INC)/l1_char_class_tab.h \ + $(PERL_INC)/malloc_ctl.h \ + $(PERL_INC)/metaconfig.h \ + $(PERL_INC)/mg.h \ + $(PERL_INC)/mydtrace.h \ + $(PERL_INC)/nostdio.h \ + $(PERL_INC)/op.h \ + $(PERL_INC)/op_reg_common.h \ + $(PERL_INC)/opcode.h \ + $(PERL_INC)/opnames.h \ + $(PERL_INC)/overload.h \ + $(PERL_INC)/pad.h \ + $(PERL_INC)/parser.h \ + $(PERL_INC)/patchlevel-debian.h \ + $(PERL_INC)/patchlevel.h \ + $(PERL_INC)/perl.h \ + $(PERL_INC)/perlapi.h \ + $(PERL_INC)/perlio.h \ + $(PERL_INC)/perliol.h \ + $(PERL_INC)/perlsdio.h \ + $(PERL_INC)/perlsfio.h \ + $(PERL_INC)/perlvars.h \ + $(PERL_INC)/perly.h \ + $(PERL_INC)/pp.h \ + $(PERL_INC)/pp_proto.h \ + $(PERL_INC)/proto.h \ + $(PERL_INC)/reentr.h \ + $(PERL_INC)/regcharclass.h \ + $(PERL_INC)/regcomp.h \ + $(PERL_INC)/regexp.h \ + $(PERL_INC)/regnodes.h \ + $(PERL_INC)/scope.h \ + $(PERL_INC)/sv.h \ + $(PERL_INC)/thread.h \ + $(PERL_INC)/time64.h \ + $(PERL_INC)/time64_config.h \ + $(PERL_INC)/uconfig.h \ + $(PERL_INC)/unixish.h \ + $(PERL_INC)/utf8.h \ + $(PERL_INC)/utfebcdic.h \ + $(PERL_INC)/util.h \ + $(PERL_INC)/uudmap.h \ + $(PERL_INC)/warnings.h + +$(OBJECT) : $(PERL_HDRS) + +Script.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -670,9 +952,19 @@ FORCE : # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = ../perl +MAP_TARGET = perl FULLPERL = /usr/bin/perl +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR=old-config \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= + # --- MakeMaker test section: @@ -689,7 +981,9 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) - $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' +subdirs-test :: + $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) + test_dynamic :: pure_all @@ -722,7 +1016,8 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - Script.pm $(INST_LIB)/CBitcoin/Script.pm + Script.pm $(INST_LIB)/CBitcoin/Script.pm \ + coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 526d6d4d..2dd10a0d 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -15,20 +15,52 @@ #include #include +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + +CBScript* stringToScript(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return false; + } +} + //////////////////////// perl export functions ///////////// -int addressToScript(char* addressString){ + + + +char* addressToScript(char* addressString){ CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); CBAddress * addr = CBNewAddressFromString(addrStr, false); CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); - char scriptStr[CBScriptStringMaxSize(script)]; - CBScriptToString(script, scriptStr); - return scriptStr; + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + CBFreeScript(script); + //printf("Script = %s\n", answer); + + return answer; } +// CBScript * CBNewScriptPubKeyOutput(uint8_t * pubKey); +char* pubkeyToScript (char* pubKeystring){ + // convert to uint8_t * + CBByteArray * masterString = CBNewByteArrayFromString(pubKeystring, true); + CBScript * script = CBNewScriptPubKeyOutput(CBByteArrayGetData(masterString)); + CBReleaseObject(masterString); + return scriptToString(script); +} @@ -38,7 +70,11 @@ MODULE = CBitcoin::Script PACKAGE = CBitcoin::Script PROTOTYPES: DISABLE -int +char * addressToScript (addressString) char * addressString +char * +pubkeyToScript (pubKeystring) + char * pubKeystring + diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 43a34d3e..d65aaf80 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -11,20 +11,69 @@ #include #include +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + +CBScript* stringToScript(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return false; + } +} + //////////////////////// perl export functions ///////////// -int addressToScript(char* addressString){ + + + +char* addressToScript(char* addressString){ CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); CBAddress * addr = CBNewAddressFromString(addrStr, false); CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); - char scriptStr[CBScriptStringMaxSize(script)]; - CBScriptToString(script, scriptStr); - return scriptStr; -} + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + CBFreeScript(script); + //printf("Script = %s\n", answer); + return answer; +} +// CBScript * CBNewScriptPubKeyOutput(uint8_t * pubKey); +char* pubkeyToScript (char* pubKeystring){ + // convert to uint8_t * + CBByteArray * masterString = CBNewByteArrayFromString(pubKeystring, true); + CBScript * script = CBNewScriptPubKeyOutput(CBByteArrayGetData(masterString)); + CBReleaseObject(masterString); + return scriptToString(script); +} +//http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 +//CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); +//char* multisigToScript (char** multisigConcatenated,) +char* multisigToScript(AV* array,uint8_t m, uint8_t n) { + int i; + char** multisig = (char**)malloc((int)n * sizeof(char*)); + for (i=0; i<=av_len(array); i++) { + SV** singlePubKey = av_fetch(array, i, 0); + if (singlePubKey != NULL){ + CBByteArray * masterString = CBNewByteArrayFromString((char* )SvNV(*singlePubKey), false); + // this line should just assign a uint8_t * pointer + multisig[i] = CBByteArrayGetData(masterString); + CBReleaseObject(masterString); + } + } + CBScript* finalscript = CBNewScriptMultisigOutput(multisig,m,n); + return scriptToString(finalscript); +} diff --git a/scripts/test.pm b/scripts/test.pm index 2de98383..90db9772 100644 --- a/scripts/test.pm +++ b/scripts/test.pm @@ -2,9 +2,19 @@ use warnings; use DBI; use Digest::SHA qw(sha256); + use CBitcoin::Script; use CBitcoin::CBHD; - print "hello\n"; + + +my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +print "Script:$script\n"; +my $parentkey = new CBitcoin::CBHD; +$parentkey->generate(); +$script = CBitcoin::Script::pubkeyToScript($parentkey->publickey()); +print "Script from public key:$script\n"; + +=pod my $parentkey = new CBitcoin::CBHD; $parentkey->generate(); my ($wif,$address) = ($parentkey->WIF(),$parentkey->address()); @@ -16,4 +26,4 @@ my $childkey = $parentkey->deriveChild(1,2); print "WIF:$wif\n"; print "Address:$address\n"; - +=cut From 313b1fb903b2f831fe1dc0f937dbab2b2a5a1b24 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 22:32:19 +0900 Subject: [PATCH 012/127] and yet more work --- scripts/Script/Script.xs | 21 +++++++++++++++++++-- scripts/Script/src/Script.c | 33 +++++++++++++++++++++------------ 2 files changed, 40 insertions(+), 14 deletions(-) diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 2dd10a0d..5b877df2 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -62,8 +62,25 @@ char* pubkeyToScript (char* pubKeystring){ return scriptToString(script); } - - +//http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 +//CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); +//char* multisigToScript (char** multisigConcatenated,) +char* multisigToScript(AV* array,uint8_t m, uint8_t n) { + int i; + uint8_t** multisig = (uint8_t**)malloc((int)n * sizeof(uint8_t*)); + + for (i=0; i<=av_len(array); i++) { + SV** singlePubKey = av_fetch(array, i, 0); + if (singlePubKey != NULL){ + CBByteArray * masterString = CBNewByteArrayFromString(SvNV(*singlePubKey), false); + // this line should just assign a uint8_t * pointer + multisig[i] = CBByteArrayGetData(masterString); + CBReleaseObject(masterString); + } + } + CBScript* finalscript = CBNewScriptMultisigOutput(multisig,m,n); + return scriptToString(finalscript); +} MODULE = CBitcoin::Script PACKAGE = CBitcoin::Script diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index d65aaf80..affe7ebb 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -61,18 +61,27 @@ char* pubkeyToScript (char* pubKeystring){ //http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 //CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); //char* multisigToScript (char** multisigConcatenated,) -char* multisigToScript(AV* array,uint8_t m, uint8_t n) { - int i; - char** multisig = (char**)malloc((int)n * sizeof(char*)); - - for (i=0; i<=av_len(array); i++) { - SV** singlePubKey = av_fetch(array, i, 0); - if (singlePubKey != NULL){ - CBByteArray * masterString = CBNewByteArrayFromString((char* )SvNV(*singlePubKey), false); - // this line should just assign a uint8_t * pointer - multisig[i] = CBByteArrayGetData(masterString); - CBReleaseObject(masterString); - } +char* multisigToScript(SV* pubKeyArray,uint8_t m, uint8_t n) { + int i, n, length; + uint8_t** multisig = (uint8_t**)malloc((int)n * sizeof(uint8_t*)); + int length; + if ((! SvROK(pubKeyArray)) + || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) + || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) + { + XSRETURN_UNDEF; + } + for (n=0; n<=length; i++) { + HV * rh; + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); + + CBByteArray * masterString = CBNewByteArrayFromString(fn, true); + // this line should just assign a uint8_t * pointer + multisig[i] = CBByteArrayGetData(masterString); + CBReleaseObject(masterString); + } CBScript* finalscript = CBNewScriptMultisigOutput(multisig,m,n); return scriptToString(finalscript); From e35971db74f2929c5a706c7ad623322e0b625937 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 22:36:28 +0900 Subject: [PATCH 013/127] multisig function is compiling --- scripts/Script/Script.xs | 28 +++++++++++++++------------- scripts/Script/src/Script.c | 17 +++++------------ 2 files changed, 20 insertions(+), 25 deletions(-) diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 5b877df2..8ba6e158 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -65,20 +65,22 @@ char* pubkeyToScript (char* pubKeystring){ //http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 //CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); //char* multisigToScript (char** multisigConcatenated,) -char* multisigToScript(AV* array,uint8_t m, uint8_t n) { - int i; - uint8_t** multisig = (uint8_t**)malloc((int)n * sizeof(uint8_t*)); - - for (i=0; i<=av_len(array); i++) { - SV** singlePubKey = av_fetch(array, i, 0); - if (singlePubKey != NULL){ - CBByteArray * masterString = CBNewByteArrayFromString(SvNV(*singlePubKey), false); - // this line should just assign a uint8_t * pointer - multisig[i] = CBByteArrayGetData(masterString); - CBReleaseObject(masterString); - } +char* multisigToScript(SV* pubKeyArray,uint8_t mKeys, uint8_t nKeys) { + int i, n, length; + uint8_t** multisig = (uint8_t**)malloc((int)nKeys * sizeof(uint8_t*)); + length = (int)av_len((AV *)SvRV(pubKeyArray)); + for (n=0; n<=length; i++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); + + CBByteArray * masterString = CBNewByteArrayFromString(fn, true); + // this line should just assign a uint8_t * pointer + multisig[n] = CBByteArrayGetData(masterString); + CBReleaseObject(masterString); + } - CBScript* finalscript = CBNewScriptMultisigOutput(multisig,m,n); + CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); return scriptToString(finalscript); } diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index affe7ebb..7668d09a 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -61,28 +61,21 @@ char* pubkeyToScript (char* pubKeystring){ //http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 //CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); //char* multisigToScript (char** multisigConcatenated,) -char* multisigToScript(SV* pubKeyArray,uint8_t m, uint8_t n) { +char* multisigToScript(SV* pubKeyArray,uint8_t mKeys, uint8_t nKeys) { int i, n, length; - uint8_t** multisig = (uint8_t**)malloc((int)n * sizeof(uint8_t*)); - int length; - if ((! SvROK(pubKeyArray)) - || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) - || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) - { - XSRETURN_UNDEF; - } + uint8_t** multisig = (uint8_t**)malloc((int)nKeys * sizeof(uint8_t*)); + length = (int)av_len((AV *)SvRV(pubKeyArray)); for (n=0; n<=length; i++) { - HV * rh; STRLEN l; char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); CBByteArray * masterString = CBNewByteArrayFromString(fn, true); // this line should just assign a uint8_t * pointer - multisig[i] = CBByteArrayGetData(masterString); + multisig[n] = CBByteArrayGetData(masterString); CBReleaseObject(masterString); } - CBScript* finalscript = CBNewScriptMultisigOutput(multisig,m,n); + CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); return scriptToString(finalscript); } From 4fd10976b26283c4537b3af0ecf0390702a62206 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Wed, 25 Jun 2014 23:27:14 +0900 Subject: [PATCH 014/127] multisig script func is slooow, hanging --- scripts/Script/Script.xs | 15 ++++++++++++--- scripts/Script/src/Script.c | 21 ++++++++++++++++----- scripts/test.pm | 13 +++++++++++++ 3 files changed, 41 insertions(+), 8 deletions(-) diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 8ba6e158..71dc8ffb 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -39,7 +39,7 @@ CBScript* stringToScript(char* scriptstring){ char* addressToScript(char* addressString){ - CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); + CBByteArray * addrStr = CBNewByteArrayFromString(addressString, true); CBAddress * addr = CBNewAddressFromString(addrStr, false); CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); @@ -65,9 +65,12 @@ char* pubkeyToScript (char* pubKeystring){ //http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 //CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); //char* multisigToScript (char** multisigConcatenated,) -char* multisigToScript(SV* pubKeyArray,uint8_t mKeys, uint8_t nKeys) { +char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { + uint8_t mKeys, nKeys; + mKeys = (uint8_t)(((int)'0')+mKeysInt); + nKeys = (uint8_t)(((int)'0')+nKeysInt); int i, n, length; - uint8_t** multisig = (uint8_t**)malloc((int)nKeys * sizeof(uint8_t*)); + uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); length = (int)av_len((AV *)SvRV(pubKeyArray)); for (n=0; n<=length; i++) { STRLEN l; @@ -97,3 +100,9 @@ char * pubkeyToScript (pubKeystring) char * pubKeystring +char * +multisigToScript (pubKeyArray, mKeysInt, nKeysInt) + SV * pubKeyArray + int mKeysInt + int nKeysInt + diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 7668d09a..464d2e21 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -35,7 +35,7 @@ CBScript* stringToScript(char* scriptstring){ char* addressToScript(char* addressString){ - CBByteArray * addrStr = CBNewByteArrayFromString(addressString, false); + CBByteArray * addrStr = CBNewByteArrayFromString(addressString, true); CBAddress * addr = CBNewAddressFromString(addrStr, false); CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); @@ -61,10 +61,21 @@ char* pubkeyToScript (char* pubKeystring){ //http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 //CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); //char* multisigToScript (char** multisigConcatenated,) -char* multisigToScript(SV* pubKeyArray,uint8_t mKeys, uint8_t nKeys) { - int i, n, length; - uint8_t** multisig = (uint8_t**)malloc((int)nKeys * sizeof(uint8_t*)); - length = (int)av_len((AV *)SvRV(pubKeyArray)); +char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { + uint8_t mKeys, nKeys; + mKeys = (uint8_t)(((int)'0')+mKeysInt); + nKeys = (uint8_t)(((int)'0')+nKeysInt); + int i, n; + I32 length = 0; + if ((! SvROK(pubKeyArray)) + || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) + || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) + { + XSRETURN_UNDEF; + } + /* Create the array which holds the return values. */ + uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); + for (n=0; n<=length; i++) { STRLEN l; diff --git a/scripts/test.pm b/scripts/test.pm index 90db9772..1707c45d 100644 --- a/scripts/test.pm +++ b/scripts/test.pm @@ -9,10 +9,23 @@ print "hello\n"; my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); print "Script:$script\n"; + my $parentkey = new CBitcoin::CBHD; $parentkey->generate(); $script = CBitcoin::Script::pubkeyToScript($parentkey->publickey()); print "Script from public key:$script\n"; +#my $childkey = $parentkey->deriveChild(1,23); + +my @arraypubkeys; +foreach my $i (1..3){ + my $childkey = $parentkey->deriveChild(1,$i); + print "Address $i:".$childkey->address()."\n"; + push(@arraypubkeys,$childkey->publickey()); +} +print "Starting multisig operation\n"; +$script = CBitcoin::Script::multisigToScript(\@arraypubkeys,2,3); +print "Multisig Script:$script\n"; +__END__ =pod my $parentkey = new CBitcoin::CBHD; From 1b89ae75251b30336812de284fc7fd4c86ce7894 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 00:04:45 +0900 Subject: [PATCH 015/127] got multisig script working --- scripts/Script/Script.xs | 29 ++++++++++++++++++++++------- scripts/Script/src/Script.c | 14 +++++++++----- 2 files changed, 31 insertions(+), 12 deletions(-) diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 71dc8ffb..5d1c1391 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -67,23 +67,38 @@ char* pubkeyToScript (char* pubKeystring){ //char* multisigToScript (char** multisigConcatenated,) char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { uint8_t mKeys, nKeys; - mKeys = (uint8_t)(((int)'0')+mKeysInt); - nKeys = (uint8_t)(((int)'0')+nKeysInt); - int i, n, length; + mKeys = (uint8_t)mKeysInt; + nKeys = (uint8_t)nKeysInt; + + printf( "1 - m %d\n", mKeysInt ); + int n; + I32 length = 0; + if ((! SvROK(pubKeyArray)) + || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) + || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) + { + return 0; + } + printf( "2 - n %d\n", nKeysInt ); + /* Create the array which holds the return values. */ uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); - length = (int)av_len((AV *)SvRV(pubKeyArray)); - for (n=0; n<=length; i++) { + printf( "3 - length %d\n", length ); + for (n=0; n<=length; n++) { STRLEN l; - + printf( "Inside Spot Up %d\n", n ); char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); - + printf("String Inside: %s", fn); + printf( "Inside Spot Middle 1 %d\n", n ); CBByteArray * masterString = CBNewByteArrayFromString(fn, true); + printf( "Inside Spot Middle 2 %d\n", n ); // this line should just assign a uint8_t * pointer multisig[n] = CBByteArrayGetData(masterString); + printf( "Inside Spot Middle 3 %d\n", n ); CBReleaseObject(masterString); } CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); + printf( "Spot %d\n", 10000000 ); return scriptToString(finalscript); } diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 464d2e21..0cdbee77 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -63,30 +63,34 @@ char* pubkeyToScript (char* pubKeystring){ //char* multisigToScript (char** multisigConcatenated,) char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { uint8_t mKeys, nKeys; - mKeys = (uint8_t)(((int)'0')+mKeysInt); - nKeys = (uint8_t)(((int)'0')+nKeysInt); - int i, n; + mKeys = (uint8_t)mKeysInt; + nKeys = (uint8_t)nKeysInt; + + int n; I32 length = 0; if ((! SvROK(pubKeyArray)) || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) { - XSRETURN_UNDEF; + return 0; } /* Create the array which holds the return values. */ uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); - for (n=0; n<=length; i++) { + for (n=0; n<=length; n++) { STRLEN l; char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); CBByteArray * masterString = CBNewByteArrayFromString(fn, true); + // this line should just assign a uint8_t * pointer multisig[n] = CBByteArrayGetData(masterString); + CBReleaseObject(masterString); } CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); + return scriptToString(finalscript); } From cd413d6d12161eb0c4a560bd5065687c3bc5cf89 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 09:50:09 +0900 Subject: [PATCH 016/127] adding bool functions to test type of script --- scripts/Script/Script.pm | 19 ++++++++++++++++++ scripts/Script/Script.xs | 15 ++++++-------- scripts/Script/src/Script.c | 40 +++++++++++++++++++++++++++++++++++++ 3 files changed, 65 insertions(+), 9 deletions(-) diff --git a/scripts/Script/Script.pm b/scripts/Script/Script.pm index e5e9ac18..ab0c8302 100644 --- a/scripts/Script/Script.pm +++ b/scripts/Script/Script.pm @@ -19,4 +19,23 @@ sub address_to_script { return addressToScript($address); } +sub pubkey_to_script { + my $pubkey = shift; + return pubkeyToScript($pubkey); +} + +sub multisig_to_script { + my $publickey = shift; + my ($m,$n) = (shift,shift); + # make sure that m,n are valid numbers + unless($n =~ m/\d+/ && $n =~ m/\d+/){ + die "m,n are not properly set.\n"; + } + if($m >= 2**8 || $n >= 2**8 || $m <= 0 || $n <= 0 || $m > $n){ + die "m,n are not properly set.\n"; + } + return CBitcoin::Script::multisigToScript(\@arraypubkeys,$m,$n); + +} + 1; diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 5d1c1391..edc0f76a 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -70,7 +70,6 @@ char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { mKeys = (uint8_t)mKeysInt; nKeys = (uint8_t)nKeysInt; - printf( "1 - m %d\n", mKeysInt ); int n; I32 length = 0; if ((! SvROK(pubKeyArray)) @@ -79,26 +78,24 @@ char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { { return 0; } - printf( "2 - n %d\n", nKeysInt ); /* Create the array which holds the return values. */ uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); - printf( "3 - length %d\n", length ); + for (n=0; n<=length; n++) { STRLEN l; - printf( "Inside Spot Up %d\n", n ); + char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); - printf("String Inside: %s", fn); - printf( "Inside Spot Middle 1 %d\n", n ); + CBByteArray * masterString = CBNewByteArrayFromString(fn, true); - printf( "Inside Spot Middle 2 %d\n", n ); + // this line should just assign a uint8_t * pointer multisig[n] = CBByteArrayGetData(masterString); - printf( "Inside Spot Middle 3 %d\n", n ); + CBReleaseObject(masterString); } CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); - printf( "Spot %d\n", 10000000 ); + return scriptToString(finalscript); } diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 0cdbee77..53d40cc7 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -31,6 +31,46 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// +/* Return 1 if this script is multisig, 0 for else*/ +int whatTypeOfScript(char* typearg,char* scriptstring){ + CBScript * script; + if(!CBInitScriptFromString(script,scriptstring)){ + return 0; + } + if(strcmp(typearg,"multisig") == 0){ + if(CBScriptIsMultisig(script)){ + return 1; + } + else{ + return 0; + } + } + else if(strcmp(typearg,"p2sh") == 0){ + if(CBScriptIsP2SH(script)){ + return 1; + } + else{ + return 0; + } + } + else if(strcmp(typearg,"pubkey") == 0){ + if(CBScriptIsPubkey(script)){ + return 1; + } + else{ + return 0; + } + } + else if(strcmp(typearg,"keyhash") == 0){ + if(CBScriptIsKeyHash(script)){ + return 1; + } + else{ + return 0; + } + } + return 0; +} From 91acccbb266ec850b8082951cb8f8956a3692749 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 10:26:22 +0900 Subject: [PATCH 017/127] bool function still needs work --- scripts/Script/Script.pm | 19 -------------- scripts/Script/Script.xs | 29 ++++++++++++++++++++- scripts/Script/src/Script.c | 52 +++++++++++++------------------------ scripts/test.pm | 5 ++++ 4 files changed, 51 insertions(+), 54 deletions(-) diff --git a/scripts/Script/Script.pm b/scripts/Script/Script.pm index ab0c8302..e5e9ac18 100644 --- a/scripts/Script/Script.pm +++ b/scripts/Script/Script.pm @@ -19,23 +19,4 @@ sub address_to_script { return addressToScript($address); } -sub pubkey_to_script { - my $pubkey = shift; - return pubkeyToScript($pubkey); -} - -sub multisig_to_script { - my $publickey = shift; - my ($m,$n) = (shift,shift); - # make sure that m,n are valid numbers - unless($n =~ m/\d+/ && $n =~ m/\d+/){ - die "m,n are not properly set.\n"; - } - if($m >= 2**8 || $n >= 2**8 || $m <= 0 || $n <= 0 || $m > $n){ - die "m,n are not properly set.\n"; - } - return CBitcoin::Script::multisigToScript(\@arraypubkeys,$m,$n); - -} - 1; diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index edc0f76a..9f753cc9 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -29,12 +29,35 @@ CBScript* stringToScript(char* scriptstring){ return self; } else{ - return false; + return NULL; } } //////////////////////// perl export functions ///////////// +/* Return 1 if this script is multisig, 0 for else*/ +char* whatTypeOfScript(char* scriptstring){ + CBScript * script = CBNewScriptFromString(scriptstring); + if(script == NULL){ + return "NULL"; + } + if(CBScriptIsMultisig(script)){ + return "multisig"; + } + else if(CBScriptIsP2SH(script)){ + return "p2sh"; + } + else if(CBScriptIsPubkey(script)){ + return "pubkey"; + } + else if(CBScriptIsKeyHash(script)){ + return "keyhash"; + } + else{ + return "FAILED"; + } + +} @@ -104,6 +127,10 @@ MODULE = CBitcoin::Script PACKAGE = CBitcoin::Script PROTOTYPES: DISABLE +char * +whatTypeOfScript (scriptstring) + char * scriptstring + char * addressToScript (addressString) char * addressString diff --git a/scripts/Script/src/Script.c b/scripts/Script/src/Script.c index 53d40cc7..891afffc 100644 --- a/scripts/Script/src/Script.c +++ b/scripts/Script/src/Script.c @@ -25,51 +25,35 @@ CBScript* stringToScript(char* scriptstring){ return self; } else{ - return false; + return NULL; } } //////////////////////// perl export functions ///////////// /* Return 1 if this script is multisig, 0 for else*/ -int whatTypeOfScript(char* typearg,char* scriptstring){ - CBScript * script; - if(!CBInitScriptFromString(script,scriptstring)){ - return 0; +// this function does not work +char* whatTypeOfScript(char* scriptstring){ + CBScript * script = CBNewScriptFromString(scriptstring); + if(script == NULL){ + return "NULL"; } - if(strcmp(typearg,"multisig") == 0){ - if(CBScriptIsMultisig(script)){ - return 1; - } - else{ - return 0; - } + if(CBScriptIsMultisig(script)){ + return "multisig"; } - else if(strcmp(typearg,"p2sh") == 0){ - if(CBScriptIsP2SH(script)){ - return 1; - } - else{ - return 0; - } + else if(CBScriptIsP2SH(script)){ + return "p2sh"; } - else if(strcmp(typearg,"pubkey") == 0){ - if(CBScriptIsPubkey(script)){ - return 1; - } - else{ - return 0; - } + else if(CBScriptIsPubkey(script)){ + return "pubkey"; } - else if(strcmp(typearg,"keyhash") == 0){ - if(CBScriptIsKeyHash(script)){ - return 1; - } - else{ - return 0; - } + else if(CBScriptIsKeyHash(script)){ + return "keyhash"; } - return 0; + else{ + return "FAILED"; + } + } diff --git a/scripts/test.pm b/scripts/test.pm index 1707c45d..819e3d86 100644 --- a/scripts/test.pm +++ b/scripts/test.pm @@ -25,6 +25,11 @@ foreach my $i (1..3){ print "Starting multisig operation\n"; $script = CBitcoin::Script::multisigToScript(\@arraypubkeys,2,3); print "Multisig Script:$script\n"; +my $scripttype = CBitcoin::Script::whatTypeOfScript($script); + +print "Script Type:$scripttype\n"; + + __END__ =pod From 81ab60fd7c7cf4fe266409c006d72dd4995ffc76 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 10:55:08 +0900 Subject: [PATCH 018/127] started work on transaction input --- scripts/Script/Makefile.old | 367 +----- scripts/Script/Script.xs | 1 + scripts/TransactionInput/Makefile.PL | 25 + scripts/TransactionInput/Makefile.old | 1030 +++++++++++++++++ scripts/TransactionInput/TransactionInput.pm | 58 + scripts/TransactionInput/TransactionInput.xs | 51 + scripts/TransactionInput/coinx2.pl | 15 + .../TransactionInput/old-config/Makefile.PL | 25 + .../TransactionInput/old-config/Makefile.old | 735 ++++++++++++ .../old-config/TransactionInput.pm | 58 + .../TransactionInput/src/TransactionInput.c | 41 + 11 files changed, 2075 insertions(+), 331 deletions(-) create mode 100644 scripts/TransactionInput/Makefile.PL create mode 100644 scripts/TransactionInput/Makefile.old create mode 100644 scripts/TransactionInput/TransactionInput.pm create mode 100644 scripts/TransactionInput/TransactionInput.xs create mode 100644 scripts/TransactionInput/coinx2.pl create mode 100644 scripts/TransactionInput/old-config/Makefile.PL create mode 100644 scripts/TransactionInput/old-config/Makefile.old create mode 100644 scripts/TransactionInput/old-config/TransactionInput.pm create mode 100644 scripts/TransactionInput/src/TransactionInput.c diff --git a/scripts/Script/Makefile.old b/scripts/Script/Makefile.old index 4b77bcb4..17f232b8 100644 --- a/scripts/Script/Makefile.old +++ b/scripts/Script/Makefile.old @@ -66,12 +66,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = blib/arch -INST_SCRIPT = blib/script -INST_BIN = blib/bin -INST_LIB = blib/lib -INST_MAN1DIR = blib/man1 -INST_MAN3DIR = blib/man3 +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -154,15 +154,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = $(BASEEXT)$(OBJ_EXT) +OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = Script.xs -C_FILES = Script.c -O_FILES = Script.o +XS_FILES = +C_FILES = +O_FILES = H_FILES = MAN1PODS = MAN3PODS = @@ -187,13 +187,10 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = Script.pm \ - coinx2.pl +TO_INST_PM = Script.pm PM_TO_BLIB = Script.pm \ - $(INST_LIB)/CBitcoin/Script.pm \ - coinx2.pl \ - $(INST_LIB)/CBitcoin/coinx2.pl + $(INST_LIB)/CBitcoin/Script.pm # --- MakeMaker platform_constants section: @@ -209,7 +206,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -255,24 +252,7 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section: -TAR = tar -TARFLAGS = cvf -ZIP = zip -ZIPFLAGS = -r -COMPRESS = gzip --best -SUFFIX = .gz -SHAR = shar -PREOP = $(NOECHO) $(NOOP) -POSTOP = $(NOECHO) $(NOOP) -TO_UNIX = $(NOECHO) $(NOOP) -CI = ci -u -RCS_LABEL = rcs -Nv$(VERSION_SYM): -q -DIST_CP = best -DIST_DEFAULT = tardist -DISTNAME = CBitcoin-Script -DISTVNAME = CBitcoin-Script-0.01 - +# --- MakeMaker dist section skipped. # --- MakeMaker macro section: @@ -519,17 +499,11 @@ manifypods : pure_all # --- MakeMaker subdirs section: -# The default clean, realclean and test targets in this Makefile -# have automatically been given entries for each subdir. - - -subdirs :: - $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) - +# none # --- MakeMaker clean_subdirs section: clean_subdirs : - $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker clean section: @@ -545,16 +519,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml Script.c \ - blibdirs.ts core \ - core.*perl.*.? core.[0-9] \ - core.[0-9][0-9] core.[0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ - lib$(BASEEXT).def mon.out \ - perl perl$(EXE_EXT) \ - perl.exe perlmain.c \ - pm_to_blib pm_to_blib.ts \ - so_locations tmon.out + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -563,8 +537,7 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker realclean section: @@ -650,91 +623,15 @@ signature : cpansign -s -# --- MakeMaker dist_basics section: -distclean :: realclean distcheck - $(NOECHO) $(NOOP) - -distcheck : - $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck - -skipcheck : - $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck - -manifest : - $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest - -veryclean : realclean - $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old - - - -# --- MakeMaker dist_core section: - -dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) - $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ - -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- - -tardist : $(DISTVNAME).tar$(SUFFIX) - $(NOECHO) $(NOOP) - -uutardist : $(DISTVNAME).tar$(SUFFIX) - uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' - -$(DISTVNAME).tar$(SUFFIX) : distdir - $(PREOP) - $(TO_UNIX) - $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(COMPRESS) $(DISTVNAME).tar - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' - $(POSTOP) - -zipdist : $(DISTVNAME).zip - $(NOECHO) $(NOOP) - -$(DISTVNAME).zip : distdir - $(PREOP) - $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' - $(POSTOP) - -shdist : distdir - $(PREOP) - $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' - $(POSTOP) - - -# --- MakeMaker distdir section: -create_distdir : - $(RM_RF) $(DISTVNAME) - $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ - -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" - -distdir : create_distdir distmeta - $(NOECHO) $(NOOP) +# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_core section skipped. +# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section: -disttest : distdir - cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL - cd $(DISTVNAME) && $(MAKE) $(PASTHRU) - cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) - - - -# --- MakeMaker dist_ci section: - -ci : - $(PERLRUN) "-MExtUtils::Manifest=maniread" \ - -e "@all = keys %{ maniread() };" \ - -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ - -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" +# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -756,117 +653,7 @@ distsignature : create_distdir -# --- MakeMaker install section: - -install :: pure_install doc_install - $(NOECHO) $(NOOP) - -install_perl :: pure_perl_install doc_perl_install - $(NOECHO) $(NOOP) - -install_site :: pure_site_install doc_site_install - $(NOECHO) $(NOOP) - -install_vendor :: pure_vendor_install doc_vendor_install - $(NOECHO) $(NOOP) - -pure_install :: pure_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -doc_install :: doc_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -pure__install : pure_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -doc__install : doc_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -pure_perl_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLPRIVLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ - $(INST_BIN) $(DESTINSTALLBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(SITEARCHEXP)/auto/$(FULLEXT) - - -pure_site_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLSITELIB) \ - $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ - $(INST_BIN) $(DESTINSTALLSITEBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(PERL_ARCHLIB)/auto/$(FULLEXT) - -pure_vendor_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLVENDORLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ - $(INST_BIN) $(DESTINSTALLVENDORBIN) \ - $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) - - -doc_perl_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLPRIVLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_site_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLSITELIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_vendor_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLVENDORLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - - -uninstall :: uninstall_from_$(INSTALLDIRS)dirs - $(NOECHO) $(NOOP) - -uninstall_from_perldirs :: - $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist - -uninstall_from_sitedirs :: - $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist - -uninstall_from_vendordirs :: - $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist - +# --- MakeMaker install section skipped. # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -875,75 +662,6 @@ FORCE : # --- MakeMaker perldepend section: -PERL_HDRS = \ - $(PERL_INC)/EXTERN.h \ - $(PERL_INC)/INTERN.h \ - $(PERL_INC)/XSUB.h \ - $(PERL_INC)/av.h \ - $(PERL_INC)/bitcount.h \ - $(PERL_INC)/config.h \ - $(PERL_INC)/cop.h \ - $(PERL_INC)/cv.h \ - $(PERL_INC)/dosish.h \ - $(PERL_INC)/embed.h \ - $(PERL_INC)/embedvar.h \ - $(PERL_INC)/fakesdio.h \ - $(PERL_INC)/fakethr.h \ - $(PERL_INC)/form.h \ - $(PERL_INC)/git_version.h \ - $(PERL_INC)/gv.h \ - $(PERL_INC)/handy.h \ - $(PERL_INC)/hv.h \ - $(PERL_INC)/intrpvar.h \ - $(PERL_INC)/iperlsys.h \ - $(PERL_INC)/keywords.h \ - $(PERL_INC)/l1_char_class_tab.h \ - $(PERL_INC)/malloc_ctl.h \ - $(PERL_INC)/metaconfig.h \ - $(PERL_INC)/mg.h \ - $(PERL_INC)/mydtrace.h \ - $(PERL_INC)/nostdio.h \ - $(PERL_INC)/op.h \ - $(PERL_INC)/op_reg_common.h \ - $(PERL_INC)/opcode.h \ - $(PERL_INC)/opnames.h \ - $(PERL_INC)/overload.h \ - $(PERL_INC)/pad.h \ - $(PERL_INC)/parser.h \ - $(PERL_INC)/patchlevel-debian.h \ - $(PERL_INC)/patchlevel.h \ - $(PERL_INC)/perl.h \ - $(PERL_INC)/perlapi.h \ - $(PERL_INC)/perlio.h \ - $(PERL_INC)/perliol.h \ - $(PERL_INC)/perlsdio.h \ - $(PERL_INC)/perlsfio.h \ - $(PERL_INC)/perlvars.h \ - $(PERL_INC)/perly.h \ - $(PERL_INC)/pp.h \ - $(PERL_INC)/pp_proto.h \ - $(PERL_INC)/proto.h \ - $(PERL_INC)/reentr.h \ - $(PERL_INC)/regcharclass.h \ - $(PERL_INC)/regcomp.h \ - $(PERL_INC)/regexp.h \ - $(PERL_INC)/regnodes.h \ - $(PERL_INC)/scope.h \ - $(PERL_INC)/sv.h \ - $(PERL_INC)/thread.h \ - $(PERL_INC)/time64.h \ - $(PERL_INC)/time64_config.h \ - $(PERL_INC)/uconfig.h \ - $(PERL_INC)/unixish.h \ - $(PERL_INC)/utf8.h \ - $(PERL_INC)/utfebcdic.h \ - $(PERL_INC)/util.h \ - $(PERL_INC)/uudmap.h \ - $(PERL_INC)/warnings.h - -$(OBJECT) : $(PERL_HDRS) - -Script.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -952,19 +670,9 @@ Script.c : $(XSUBPPDEPS) # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = perl +MAP_TARGET = ../perl FULLPERL = /usr/bin/perl -$(MAP_TARGET) :: static $(MAKE_APERL_FILE) - $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ - -$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib - $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) - $(NOECHO) $(PERLRUNINST) \ - Makefile.PL DIR=old-config \ - MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ - MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= - # --- MakeMaker test section: @@ -981,9 +689,7 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) -subdirs-test :: - $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) - + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' test_dynamic :: pure_all @@ -1016,8 +722,7 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - Script.pm $(INST_LIB)/CBitcoin/Script.pm \ - coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + Script.pm $(INST_LIB)/CBitcoin/Script.pm $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/Script/Script.xs b/scripts/Script/Script.xs index 9f753cc9..9cdc6d43 100644 --- a/scripts/Script/Script.xs +++ b/scripts/Script/Script.xs @@ -36,6 +36,7 @@ CBScript* stringToScript(char* scriptstring){ //////////////////////// perl export functions ///////////// /* Return 1 if this script is multisig, 0 for else*/ +// this function does not work char* whatTypeOfScript(char* scriptstring){ CBScript * script = CBNewScriptFromString(scriptstring); if(script == NULL){ diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL new file mode 100644 index 00000000..610ba0fa --- /dev/null +++ b/scripts/TransactionInput/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::TransactionInput', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.02' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old new file mode 100644 index 00000000..f50bb47a --- /dev/null +++ b/scripts/TransactionInput/Makefile.old @@ -0,0 +1,1030 @@ +# This Makefile is for the CBitcoin::TransactionInput extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::TransactionInput] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.02] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::TransactionInput +NAME_SYM = CBitcoin_TransactionInput +VERSION = 0.02 +VERSION_MACRO = VERSION +VERSION_SYM = 0_02 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.02 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/TransactionInput +BASEEXT = TransactionInput +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = $(BASEEXT)$(OBJ_EXT) +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = TransactionInput.xs +C_FILES = TransactionInput.c +O_FILES = TransactionInput.o +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = TransactionInput.pm \ + coinx2.pl + +PM_TO_BLIB = TransactionInput.pm \ + $(INST_LIB)/CBitcoin/TransactionInput.pm \ + coinx2.pl \ + $(INST_LIB)/CBitcoin/coinx2.pl + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = CBitcoin-TransactionInput +DISTVNAME = CBitcoin-TransactionInput-0.02 + + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::TransactionInput might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# The default clean, realclean and test targets in this Makefile +# have automatically been given entries for each subdir. + + +subdirs :: + $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) + + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml TransactionInput.c \ + blibdirs.ts core \ + core.*perl.*.? core.[0-9] \ + core.[0-9][0-9] core.[0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ + lib$(BASEEXT).def mon.out \ + perl perl$(EXE_EXT) \ + perl.exe perlmain.c \ + pm_to_blib pm_to_blib.ts \ + so_locations tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionInput' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionInput",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) + + + +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" + + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + +doc_perl_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLPRIVLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_vendor_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLVENDORLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist + + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: +PERL_HDRS = \ + $(PERL_INC)/EXTERN.h \ + $(PERL_INC)/INTERN.h \ + $(PERL_INC)/XSUB.h \ + $(PERL_INC)/av.h \ + $(PERL_INC)/bitcount.h \ + $(PERL_INC)/config.h \ + $(PERL_INC)/cop.h \ + $(PERL_INC)/cv.h \ + $(PERL_INC)/dosish.h \ + $(PERL_INC)/embed.h \ + $(PERL_INC)/embedvar.h \ + $(PERL_INC)/fakesdio.h \ + $(PERL_INC)/fakethr.h \ + $(PERL_INC)/form.h \ + $(PERL_INC)/git_version.h \ + $(PERL_INC)/gv.h \ + $(PERL_INC)/handy.h \ + $(PERL_INC)/hv.h \ + $(PERL_INC)/intrpvar.h \ + $(PERL_INC)/iperlsys.h \ + $(PERL_INC)/keywords.h \ + $(PERL_INC)/l1_char_class_tab.h \ + $(PERL_INC)/malloc_ctl.h \ + $(PERL_INC)/metaconfig.h \ + $(PERL_INC)/mg.h \ + $(PERL_INC)/mydtrace.h \ + $(PERL_INC)/nostdio.h \ + $(PERL_INC)/op.h \ + $(PERL_INC)/op_reg_common.h \ + $(PERL_INC)/opcode.h \ + $(PERL_INC)/opnames.h \ + $(PERL_INC)/overload.h \ + $(PERL_INC)/pad.h \ + $(PERL_INC)/parser.h \ + $(PERL_INC)/patchlevel-debian.h \ + $(PERL_INC)/patchlevel.h \ + $(PERL_INC)/perl.h \ + $(PERL_INC)/perlapi.h \ + $(PERL_INC)/perlio.h \ + $(PERL_INC)/perliol.h \ + $(PERL_INC)/perlsdio.h \ + $(PERL_INC)/perlsfio.h \ + $(PERL_INC)/perlvars.h \ + $(PERL_INC)/perly.h \ + $(PERL_INC)/pp.h \ + $(PERL_INC)/pp_proto.h \ + $(PERL_INC)/proto.h \ + $(PERL_INC)/reentr.h \ + $(PERL_INC)/regcharclass.h \ + $(PERL_INC)/regcomp.h \ + $(PERL_INC)/regexp.h \ + $(PERL_INC)/regnodes.h \ + $(PERL_INC)/scope.h \ + $(PERL_INC)/sv.h \ + $(PERL_INC)/thread.h \ + $(PERL_INC)/time64.h \ + $(PERL_INC)/time64_config.h \ + $(PERL_INC)/uconfig.h \ + $(PERL_INC)/unixish.h \ + $(PERL_INC)/utf8.h \ + $(PERL_INC)/utfebcdic.h \ + $(PERL_INC)/util.h \ + $(PERL_INC)/uudmap.h \ + $(PERL_INC)/warnings.h + +$(OBJECT) : $(PERL_HDRS) + +TransactionInput.c : $(XSUBPPDEPS) + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = perl +FULLPERL = /usr/bin/perl + +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR=old-config \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + +subdirs-test :: + $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) + + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm \ + coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm new file mode 100644 index 00000000..6f93dc33 --- /dev/null +++ b/scripts/TransactionInput/TransactionInput.pm @@ -0,0 +1,58 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionInput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionInput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; + +@CBitcoin::TransactionInput::EXPORT = (); +@CBitcoin::TransactionInput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + return bless({}, $package); +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + + + +1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs new file mode 100644 index 00000000..a161ea35 --- /dev/null +++ b/scripts/TransactionInput/TransactionInput.xs @@ -0,0 +1,51 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + // prevOutHash is stored as a hex + CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + + return (CBTransactionInput*)CBNewTransactionInput( + CBNewScriptFromString(scriptstring), + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); +} + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + + + + +MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput + +PROTOTYPES: DISABLE + + diff --git a/scripts/TransactionInput/coinx2.pl b/scripts/TransactionInput/coinx2.pl new file mode 100644 index 00000000..8eb140c1 --- /dev/null +++ b/scripts/TransactionInput/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::TransactionInput'; +my $package_name = 'CBitcoin::TransactionInput'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/TransactionInput/old-config/Makefile.PL b/scripts/TransactionInput/old-config/Makefile.PL new file mode 100644 index 00000000..610ba0fa --- /dev/null +++ b/scripts/TransactionInput/old-config/Makefile.PL @@ -0,0 +1,25 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::TransactionInput', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.02' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionInput/old-config/Makefile.old b/scripts/TransactionInput/old-config/Makefile.old new file mode 100644 index 00000000..cc6055ea --- /dev/null +++ b/scripts/TransactionInput/old-config/Makefile.old @@ -0,0 +1,735 @@ +# This Makefile is for the CBitcoin::TransactionInput extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::TransactionInput] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.02] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = cc +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::TransactionInput +NAME_SYM = CBitcoin_TransactionInput +VERSION = 0.02 +VERSION_MACRO = VERSION +VERSION_SYM = 0_02 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.02 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/TransactionInput +BASEEXT = TransactionInput +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = TransactionInput.pm + +PM_TO_BLIB = TransactionInput.pm \ + $(INST_LIB)/CBitcoin/TransactionInput.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::TransactionInput might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all + $(NOECHO) $(NOOP) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionInput' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionInput",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm new file mode 100644 index 00000000..6f93dc33 --- /dev/null +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -0,0 +1,58 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionInput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionInput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; + +@CBitcoin::TransactionInput::EXPORT = (); +@CBitcoin::TransactionInput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + return bless({}, $package); +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + + + +1; diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c new file mode 100644 index 00000000..5a13c0b5 --- /dev/null +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -0,0 +1,41 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + // prevOutHash is stored as a hex + CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + + return (CBTransactionInput*)CBNewTransactionInput( + CBNewScriptFromString(scriptstring), + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); +} + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + + + From 090d1e70f71a29c89139c5f7b7980f7558007150 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 13:08:01 +0900 Subject: [PATCH 019/127] got tx input serialization to work --- scripts/TransactionInput/Makefile.PL | 2 +- scripts/TransactionInput/Makefile.old | 14 +++---- scripts/TransactionInput/TransactionInput.pm | 35 ++++++++++++++++++ scripts/TransactionInput/TransactionInput.xs | 37 +++++++++++++++---- .../TransactionInput/old-config/Makefile.PL | 2 +- .../TransactionInput/old-config/Makefile.old | 12 +++--- .../old-config/TransactionInput.pm | 35 ++++++++++++++++++ .../TransactionInput/src/TransactionInput.c | 32 ++++++++++++---- 8 files changed, 139 insertions(+), 30 deletions(-) diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL index 610ba0fa..8ccebaa1 100644 --- a/scripts/TransactionInput/Makefile.PL +++ b/scripts/TransactionInput/Makefile.PL @@ -16,7 +16,7 @@ my %options = %{ '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' - ,'VERSION' => '0.02' + ,'VERSION' => '0.01' } }; WriteMakefile(%options); diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old index f50bb47a..c958524f 100644 --- a/scripts/TransactionInput/Makefile.old +++ b/scripts/TransactionInput/Makefile.old @@ -20,7 +20,7 @@ # PREREQ_PM => { } # TEST_REQUIRES => { } # TYPEMAPS => [] -# VERSION => q[0.02] +# VERSION => q[0.01] # --- MakeMaker post_initialize section: @@ -59,11 +59,11 @@ DIRFILESEP = / DFSEP = $(DIRFILESEP) NAME = CBitcoin::TransactionInput NAME_SYM = CBitcoin_TransactionInput -VERSION = 0.02 +VERSION = 0.01 VERSION_MACRO = VERSION -VERSION_SYM = 0_02 +VERSION_SYM = 0_01 DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" -XS_VERSION = 0.02 +XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" INST_ARCHLIB = blib/arch @@ -271,7 +271,7 @@ RCS_LABEL = rcs -Nv$(VERSION_SYM): -q DIST_CP = best DIST_DEFAULT = tardist DISTNAME = CBitcoin-TransactionInput -DISTVNAME = CBitcoin-TransactionInput-0.02 +DISTVNAME = CBitcoin-TransactionInput-0.01 # --- MakeMaker macro section: @@ -600,7 +600,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) ' - t' >> META_new.yml $(NOECHO) $(ECHO) ' - inc' >> META_new.yml $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml - $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml $(NOECHO) $(ECHO) Generating META.json $(NOECHO) $(ECHO) '{' > META_new.json @@ -640,7 +640,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) ' }' >> META_new.json $(NOECHO) $(ECHO) ' },' >> META_new.json $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json - $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json $(NOECHO) $(ECHO) '}' >> META_new.json -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm index 6f93dc33..f9cf848b 100644 --- a/scripts/TransactionInput/TransactionInput.pm +++ b/scripts/TransactionInput/TransactionInput.pm @@ -53,6 +53,41 @@ sub prevOutIndex { } } +sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub validate { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + return test1($this->script(), $this->sequence(), $this->prevOutHash(),$this->prevOutIndex()); +} 1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs index a161ea35..20f3e3ac 100644 --- a/scripts/TransactionInput/TransactionInput.xs +++ b/scripts/TransactionInput/TransactionInput.xs @@ -28,19 +28,35 @@ char* scriptToString(CBScript* script){ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ // prevOutHash is stored as a hex CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + CBScript* script = CBNewScriptFromString(scriptstring); - return (CBTransactionInput*)CBNewTransactionInput( - CBNewScriptFromString(scriptstring), - (uint32_t)sequenceInt, - prevOutHash, - (uint32_t)prevOutIndexInt - ); + + CBTransactionInput* txinput = CBNewTransactionInput( + script, + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return txinput; } +char* serializeByteData(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + return (char *)CBByteArrayGetData(serializeddata); +} //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) - +char* test1(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); + char* answer = serializeByteData(txinput); + CBFreeTransactionInput(txinput); + return answer; +} @@ -49,3 +65,10 @@ MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput PROTOTYPES: DISABLE +char * +test1 (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) + char * scriptstring + int sequenceInt + char * prevOutHashString + int prevOutIndexInt + diff --git a/scripts/TransactionInput/old-config/Makefile.PL b/scripts/TransactionInput/old-config/Makefile.PL index 610ba0fa..8ccebaa1 100644 --- a/scripts/TransactionInput/old-config/Makefile.PL +++ b/scripts/TransactionInput/old-config/Makefile.PL @@ -16,7 +16,7 @@ my %options = %{ '-lcbitcoin-file-ec.2.0', '-lcbitcoin-rand.2.0'] ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' - ,'VERSION' => '0.02' + ,'VERSION' => '0.01' } }; WriteMakefile(%options); diff --git a/scripts/TransactionInput/old-config/Makefile.old b/scripts/TransactionInput/old-config/Makefile.old index cc6055ea..3db90311 100644 --- a/scripts/TransactionInput/old-config/Makefile.old +++ b/scripts/TransactionInput/old-config/Makefile.old @@ -20,7 +20,7 @@ # PREREQ_PM => { } # TEST_REQUIRES => { } # TYPEMAPS => [] -# VERSION => q[0.02] +# VERSION => q[0.01] # --- MakeMaker post_initialize section: @@ -59,11 +59,11 @@ DIRFILESEP = / DFSEP = $(DIRFILESEP) NAME = CBitcoin::TransactionInput NAME_SYM = CBitcoin_TransactionInput -VERSION = 0.02 +VERSION = 0.01 VERSION_MACRO = VERSION -VERSION_SYM = 0_02 +VERSION_SYM = 0_01 DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" -XS_VERSION = 0.02 +XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" INST_ARCHLIB = ../blib/arch @@ -573,7 +573,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) ' - t' >> META_new.yml $(NOECHO) $(ECHO) ' - inc' >> META_new.yml $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml - $(NOECHO) $(ECHO) 'version: 0.02' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml $(NOECHO) $(ECHO) Generating META.json $(NOECHO) $(ECHO) '{' > META_new.json @@ -613,7 +613,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) ' }' >> META_new.json $(NOECHO) $(ECHO) ' },' >> META_new.json $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json - $(NOECHO) $(ECHO) ' "version" : "0.02"' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json $(NOECHO) $(ECHO) '}' >> META_new.json -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index 6f93dc33..f9cf848b 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -53,6 +53,41 @@ sub prevOutIndex { } } +sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub validate { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + return test1($this->script(), $this->sequence(), $this->prevOutHash(),$this->prevOutIndex()); +} 1; diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c index 5a13c0b5..7f0ef7d5 100644 --- a/scripts/TransactionInput/src/TransactionInput.c +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -24,18 +24,34 @@ char* scriptToString(CBScript* script){ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ // prevOutHash is stored as a hex CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); - - return (CBTransactionInput*)CBNewTransactionInput( - CBNewScriptFromString(scriptstring), - (uint32_t)sequenceInt, - prevOutHash, - (uint32_t)prevOutIndexInt - ); + CBScript* script = CBNewScriptFromString(scriptstring); + + + CBTransactionInput* txinput = CBNewTransactionInput( + script, + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); + CBFreeScript(script); + CBDestroyByteArray(prevOutHash); + return txinput; } +char* serializeByteData(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + return (char *)CBByteArrayGetData(serializeddata); +} //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) - +char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); + char* answer = serializeByteData(txinput); + CBFreeTransactionInput(txinput); + return answer; +} From a1bdce92910a64e5cc5c37ec67195fe72ce606d2 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Thu, 26 Jun 2014 16:09:23 +0900 Subject: [PATCH 020/127] switched to different constructor method --- scripts/TransactionInput/TransactionInput.pm | 78 ++++++++++++++++++- scripts/TransactionInput/TransactionInput.xs | 4 +- .../old-config/TransactionInput.pm | 78 ++++++++++++++++++- .../TransactionInput/src/TransactionInput.c | 18 ++++- 4 files changed, 168 insertions(+), 10 deletions(-) diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm index f9cf848b..7b8792bb 100644 --- a/scripts/TransactionInput/TransactionInput.pm +++ b/scripts/TransactionInput/TransactionInput.pm @@ -17,7 +17,32 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking sub new { my $package = shift; - return bless({}, $package); + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; } sub prevOutHash { @@ -82,12 +107,59 @@ sub sequence { } } -sub validate { +sub serializeddata { my $this = shift; die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + my $x = shift; - return test1($this->script(), $this->sequence(), $this->prevOutHash(),$this->prevOutIndex()); + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x)) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } } + 1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs index 20f3e3ac..b255df69 100644 --- a/scripts/TransactionInput/TransactionInput.xs +++ b/scripts/TransactionInput/TransactionInput.xs @@ -51,7 +51,7 @@ char* serializeByteData(CBTransactionInput * txinput){ //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) -char* test1(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ +char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); char* answer = serializeByteData(txinput); CBFreeTransactionInput(txinput); @@ -66,7 +66,7 @@ PROTOTYPES: DISABLE char * -test1 (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) +create_txinput_obj (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) char * scriptstring int sequenceInt char * prevOutHashString diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index f9cf848b..7b8792bb 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -17,7 +17,32 @@ sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking sub new { my $package = shift; - return bless({}, $package); + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; } sub prevOutHash { @@ -82,12 +107,59 @@ sub sequence { } } -sub validate { +sub serializeddata { my $this = shift; die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + my $x = shift; - return test1($this->script(), $this->sequence(), $this->prevOutHash(),$this->prevOutIndex()); + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x)) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } } + 1; diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c index 7f0ef7d5..2b670946 100644 --- a/scripts/TransactionInput/src/TransactionInput.c +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -38,20 +38,34 @@ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt return txinput; } -char* serializeByteData(CBTransactionInput * txinput){ +char* obj_to_serializeddata(CBTransactionInput * txinput){ CBTransactionInputPrepareBytes(txinput); CBTransactionInputSerialise(txinput); CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; return (char *)CBByteArrayGetData(serializeddata); } +CBTransactionInput* serializeddata_to_obj(char* datastring){ + CBByteArray* data = CBNewByteArrayFromString(datastring,true); + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + CBDestroyByteArray(data); + return txinput; +} //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); - char* answer = serializeByteData(txinput); + char* answer = obj_to_serializeddata(txinput); CBFreeTransactionInput(txinput); return answer; } +char* get_script_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txinput->scriptObject); + CBFreeTransactionInput(txinput); + return scriptstring; +} + + From 52d398c1ee69c0edf706085443cfeb8c558ed69c Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sat, 28 Jun 2014 14:09:23 +0900 Subject: [PATCH 021/127] Finally! figured out how to serialize and deserialize CBByteArray objects --- scripts/TransactionInput/Makefile.PL | 1 + scripts/TransactionInput/Makefile.old | 11 ++- scripts/TransactionInput/TransactionInput.pm | 4 +- scripts/TransactionInput/TransactionInput.xs | 87 ++++++++++++++++++- .../TransactionInput/old-config/Makefile.PL | 1 + .../TransactionInput/old-config/Makefile.old | 11 ++- .../old-config/TransactionInput.pm | 4 +- .../TransactionInput/src/TransactionInput.c | 71 ++++++++++++--- 8 files changed, 161 insertions(+), 29 deletions(-) diff --git a/scripts/TransactionInput/Makefile.PL b/scripts/TransactionInput/Makefile.PL index 8ccebaa1..2a1aeb72 100644 --- a/scripts/TransactionInput/Makefile.PL +++ b/scripts/TransactionInput/Makefile.PL @@ -17,6 +17,7 @@ my %options = %{ '-lcbitcoin-rand.2.0'] ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' + ,'CC' => 'c99' } }; WriteMakefile(%options); diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old index c958524f..26e42022 100644 --- a/scripts/TransactionInput/Makefile.old +++ b/scripts/TransactionInput/Makefile.old @@ -12,6 +12,7 @@ # MakeMaker Parameters: # BUILD_REQUIRES => { } +# CC => q[c99] # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] @@ -30,7 +31,7 @@ # These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). # They may have been overridden via Makefile.PL or on the command line. AR = ar -CC = cc +CC = c99 CCCDLFLAGS = -fPIC CCDLFLAGS = -Wl,-E DLEXT = so @@ -165,7 +166,7 @@ C_FILES = TransactionInput.c O_FILES = TransactionInput.o H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = TransactionInput.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -505,8 +506,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + TransactionInput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) diff --git a/scripts/TransactionInput/TransactionInput.pm b/scripts/TransactionInput/TransactionInput.pm index 7b8792bb..e222c11e 100644 --- a/scripts/TransactionInput/TransactionInput.pm +++ b/scripts/TransactionInput/TransactionInput.pm @@ -148,7 +148,7 @@ sub importSerializedData { my $x = shift; if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) ){ @@ -160,6 +160,4 @@ sub importSerializedData { } } - - 1; diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs index b255df69..b219e772 100644 --- a/scripts/TransactionInput/TransactionInput.xs +++ b/scripts/TransactionInput/TransactionInput.xs @@ -37,27 +37,90 @@ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt prevOutHash, (uint32_t)prevOutIndexInt ); + //CBFreeScript(script); //CBDestroyByteArray(prevOutHash); return txinput; } -char* serializeByteData(CBTransactionInput * txinput){ +CBTransactionInput* serializeddata_to_obj(char* datastring){ + uint32_t length = (uint32_t)sizeof(datastring); + + /*CBByteArray* data = CBNewByteArrayOfSize(length); + for(uint32_t i=0;isequence, txinput->prevOut.index ); + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* obj_to_serializeddata(CBTransactionInput * txinput){ CBTransactionInputPrepareBytes(txinput); CBTransactionInputSerialise(txinput); CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - return (char *)CBByteArrayGetData(serializeddata); + + // style 1 + CBTransactionInput* newtxinput = CBNewTransactionInputFromData(serializeddata); + int dlen = (int)CBTransactionInputDeserialise(newtxinput); + // style 3 + + + //CBTransactionInput* newtxinphut = serializeddata_to_obj((char *)CBByteArrayGetData(serializeddata)); + //uint8_t* answer = CBByteArrayGetData(serializeddata); + + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + + + printf( "Part 1 (length=%s;%d) Sequence:%d and prevOutIndex:%d\n", answer,dlen,newtxinput->sequence, newtxinput->prevOut.index ); + return answer; } + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); - char* answer = serializeByteData(txinput); - CBFreeTransactionInput(txinput); + char* answer = obj_to_serializeddata(txinput); + //CBFreeTransactionInput(txinput); return answer; } +char* get_script_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txinput->scriptObject); + //CBFreeTransactionInput(txinput); + return scriptstring; +} +char* get_prevOutHash_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + CBByteArray* data = txinput->prevOut.hash; + char * answer = (char*)CBByteArrayGetData(data); + //CBFreeTransactionInput(txinput); + //CBDestroyByteArray(data); + return answer; +} +int get_prevOutIndex_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t index = txinput->prevOut.index; + CBFreeTransactionInput(txinput); + return (int)index; +} +int get_sequence_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t sequence = txinput->sequence; + CBFreeTransactionInput(txinput); + return (int)sequence; +} + + MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput @@ -72,3 +135,19 @@ create_txinput_obj (scriptstring, sequenceInt, prevOutHashString, prevOutIndexIn char * prevOutHashString int prevOutIndexInt +char * +get_script_from_obj (serializedDataString) + char * serializedDataString + +char * +get_prevOutHash_from_obj (serializedDataString) + char * serializedDataString + +int +get_prevOutIndex_from_obj (serializedDataString) + char * serializedDataString + +int +get_sequence_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/TransactionInput/old-config/Makefile.PL b/scripts/TransactionInput/old-config/Makefile.PL index 8ccebaa1..2a1aeb72 100644 --- a/scripts/TransactionInput/old-config/Makefile.PL +++ b/scripts/TransactionInput/old-config/Makefile.PL @@ -17,6 +17,7 @@ my %options = %{ '-lcbitcoin-rand.2.0'] ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' ,'VERSION' => '0.01' + ,'CC' => 'c99' } }; WriteMakefile(%options); diff --git a/scripts/TransactionInput/old-config/Makefile.old b/scripts/TransactionInput/old-config/Makefile.old index 3db90311..591e9ea5 100644 --- a/scripts/TransactionInput/old-config/Makefile.old +++ b/scripts/TransactionInput/old-config/Makefile.old @@ -12,6 +12,7 @@ # MakeMaker Parameters: # BUILD_REQUIRES => { } +# CC => q[c99] # CONFIGURE_REQUIRES => { } # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] @@ -30,7 +31,7 @@ # These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). # They may have been overridden via Makefile.PL or on the command line. AR = ar -CC = cc +CC = c99 CCCDLFLAGS = -fPIC CCDLFLAGS = -Wl,-E DLEXT = so @@ -165,7 +166,7 @@ C_FILES = O_FILES = H_FILES = MAN1PODS = -MAN3PODS = +MAN3PODS = TransactionInput.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -485,8 +486,10 @@ POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" POD2MAN = $(POD2MAN_EXE) -manifypods : pure_all - $(NOECHO) $(NOOP) +manifypods : pure_all \ + TransactionInput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index 7b8792bb..e222c11e 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -148,7 +148,7 @@ sub importSerializedData { my $x = shift; if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) ){ @@ -160,6 +160,4 @@ sub importSerializedData { } } - - 1; diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c index 2b670946..0b9c22cd 100644 --- a/scripts/TransactionInput/src/TransactionInput.c +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -33,8 +33,27 @@ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt prevOutHash, (uint32_t)prevOutIndexInt ); - CBFreeScript(script); - CBDestroyByteArray(prevOutHash); + + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return txinput; +} + +CBTransactionInput* serializeddata_to_obj(char* datastring){ + uint32_t length = (uint32_t)sizeof(datastring); + + /*CBByteArray* data = CBNewByteArrayOfSize(length); + for(uint32_t i=0;isequence, txinput->prevOut.index ); + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); return txinput; } @@ -42,30 +61,60 @@ char* obj_to_serializeddata(CBTransactionInput * txinput){ CBTransactionInputPrepareBytes(txinput); CBTransactionInputSerialise(txinput); CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - return (char *)CBByteArrayGetData(serializeddata); -} -CBTransactionInput* serializeddata_to_obj(char* datastring){ - CBByteArray* data = CBNewByteArrayFromString(datastring,true); - CBTransactionInput* txinput = CBNewTransactionInputFromData(data); - CBDestroyByteArray(data); - return txinput; + + // style 1 + CBTransactionInput* newtxinput = CBNewTransactionInputFromData(serializeddata); + int dlen = (int)CBTransactionInputDeserialise(newtxinput); + // style 3 + + + //CBTransactionInput* newtxinphut = serializeddata_to_obj((char *)CBByteArrayGetData(serializeddata)); + //uint8_t* answer = CBByteArrayGetData(serializeddata); + + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + + + printf( "Part 1 (length=%s;%d) Sequence:%d and prevOutIndex:%d\n", answer,dlen,newtxinput->sequence, newtxinput->prevOut.index ); + return answer; } + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); char* answer = obj_to_serializeddata(txinput); - CBFreeTransactionInput(txinput); + //CBFreeTransactionInput(txinput); return answer; } char* get_script_from_obj(char* serializedDataString){ CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); char* scriptstring = scriptToString(txinput->scriptObject); - CBFreeTransactionInput(txinput); + //CBFreeTransactionInput(txinput); return scriptstring; } +char* get_prevOutHash_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + CBByteArray* data = txinput->prevOut.hash; + char * answer = (char*)CBByteArrayGetData(data); + //CBFreeTransactionInput(txinput); + //CBDestroyByteArray(data); + return answer; +} +int get_prevOutIndex_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t index = txinput->prevOut.index; + CBFreeTransactionInput(txinput); + return (int)index; +} +int get_sequence_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t sequence = txinput->sequence; + CBFreeTransactionInput(txinput); + return (int)sequence; +} From 320b388e9852c52f4c5203de5424d7ba50b32f8c Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sat, 28 Jun 2014 23:39:59 +0900 Subject: [PATCH 022/127] added TransactionOutput code --- scripts/TransactionInput/Makefile.old | 367 +-------- scripts/TransactionInput/TransactionInput.xs | 43 +- .../TransactionInput/src/TransactionInput.c | 43 +- scripts/TransactionOutput/MYMETA.json | 39 + scripts/TransactionOutput/MYMETA.yml | 21 + scripts/TransactionOutput/Makefile.PL | 26 + scripts/TransactionOutput/Makefile.old | 738 ++++++++++++++++++ scripts/TransactionOutput/TransactionInput.bs | 0 scripts/TransactionOutput/TransactionInput.c | 329 ++++++++ scripts/TransactionOutput/TransactionInput.o | Bin 0 -> 109448 bytes scripts/TransactionOutput/TransactionInput.pm | 163 ++++ scripts/TransactionOutput/TransactionInput.xs | 146 ++++ scripts/TransactionOutput/blib/arch/.exists | 0 .../auto/CBitcoin/TransactionInput/.exists | 0 .../TransactionInput/TransactionInput.so | Bin 0 -> 70471 bytes .../blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/TransactionInput.pm | 163 ++++ .../blib/lib/CBitcoin/coinx2.pl | 15 + .../auto/CBitcoin/TransactionInput/.exists | 0 scripts/TransactionOutput/blib/man1/.exists | 0 scripts/TransactionOutput/blib/man3/.exists | 0 .../blib/man3/CBitcoin::TransactionInput.3pm | 133 ++++ scripts/TransactionOutput/blib/script/.exists | 0 scripts/TransactionOutput/coinx2.pl | 15 + .../TransactionOutput/old-config/Makefile.PL | 26 + .../old-config/TransactionOutput.pm | 163 ++++ scripts/TransactionOutput/pm_to_blib | 0 .../TransactionOutput/src/TransactionOutput.c | 95 +++ 28 files changed, 2144 insertions(+), 381 deletions(-) create mode 100644 scripts/TransactionOutput/MYMETA.json create mode 100644 scripts/TransactionOutput/MYMETA.yml create mode 100644 scripts/TransactionOutput/Makefile.PL create mode 100644 scripts/TransactionOutput/Makefile.old create mode 100644 scripts/TransactionOutput/TransactionInput.bs create mode 100644 scripts/TransactionOutput/TransactionInput.c create mode 100644 scripts/TransactionOutput/TransactionInput.o create mode 100644 scripts/TransactionOutput/TransactionInput.pm create mode 100644 scripts/TransactionOutput/TransactionInput.xs create mode 100644 scripts/TransactionOutput/blib/arch/.exists create mode 100644 scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/.exists create mode 100755 scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/.exists create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/TransactionInput.pm create mode 100644 scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/TransactionOutput/blib/lib/auto/CBitcoin/TransactionInput/.exists create mode 100644 scripts/TransactionOutput/blib/man1/.exists create mode 100644 scripts/TransactionOutput/blib/man3/.exists create mode 100644 scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm create mode 100644 scripts/TransactionOutput/blib/script/.exists create mode 100644 scripts/TransactionOutput/coinx2.pl create mode 100644 scripts/TransactionOutput/old-config/Makefile.PL create mode 100644 scripts/TransactionOutput/old-config/TransactionOutput.pm create mode 100644 scripts/TransactionOutput/pm_to_blib create mode 100644 scripts/TransactionOutput/src/TransactionOutput.c diff --git a/scripts/TransactionInput/Makefile.old b/scripts/TransactionInput/Makefile.old index 26e42022..591e9ea5 100644 --- a/scripts/TransactionInput/Makefile.old +++ b/scripts/TransactionInput/Makefile.old @@ -67,12 +67,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = blib/arch -INST_SCRIPT = blib/script -INST_BIN = blib/bin -INST_LIB = blib/lib -INST_MAN1DIR = blib/man1 -INST_MAN3DIR = blib/man3 +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -155,15 +155,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = $(BASEEXT)$(OBJ_EXT) +OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = TransactionInput.xs -C_FILES = TransactionInput.c -O_FILES = TransactionInput.o +XS_FILES = +C_FILES = +O_FILES = H_FILES = MAN1PODS = MAN3PODS = TransactionInput.pm @@ -188,13 +188,10 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = TransactionInput.pm \ - coinx2.pl +TO_INST_PM = TransactionInput.pm PM_TO_BLIB = TransactionInput.pm \ - $(INST_LIB)/CBitcoin/TransactionInput.pm \ - coinx2.pl \ - $(INST_LIB)/CBitcoin/coinx2.pl + $(INST_LIB)/CBitcoin/TransactionInput.pm # --- MakeMaker platform_constants section: @@ -210,7 +207,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -256,24 +253,7 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section: -TAR = tar -TARFLAGS = cvf -ZIP = zip -ZIPFLAGS = -r -COMPRESS = gzip --best -SUFFIX = .gz -SHAR = shar -PREOP = $(NOECHO) $(NOOP) -POSTOP = $(NOECHO) $(NOOP) -TO_UNIX = $(NOECHO) $(NOOP) -CI = ci -u -RCS_LABEL = rcs -Nv$(VERSION_SYM): -q -DIST_CP = best -DIST_DEFAULT = tardist -DISTNAME = CBitcoin-TransactionInput -DISTVNAME = CBitcoin-TransactionInput-0.01 - +# --- MakeMaker dist section skipped. # --- MakeMaker macro section: @@ -522,17 +502,11 @@ manifypods : pure_all \ # --- MakeMaker subdirs section: -# The default clean, realclean and test targets in this Makefile -# have automatically been given entries for each subdir. - - -subdirs :: - $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) - +# none # --- MakeMaker clean_subdirs section: clean_subdirs : - $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker clean section: @@ -548,16 +522,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml TransactionInput.c \ - blibdirs.ts core \ - core.*perl.*.? core.[0-9] \ - core.[0-9][0-9] core.[0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ - lib$(BASEEXT).def mon.out \ - perl perl$(EXE_EXT) \ - perl.exe perlmain.c \ - pm_to_blib pm_to_blib.ts \ - so_locations tmon.out + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -566,8 +540,7 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker realclean section: @@ -653,91 +626,15 @@ signature : cpansign -s -# --- MakeMaker dist_basics section: -distclean :: realclean distcheck - $(NOECHO) $(NOOP) - -distcheck : - $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck - -skipcheck : - $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck - -manifest : - $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest - -veryclean : realclean - $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old - - - -# --- MakeMaker dist_core section: - -dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) - $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ - -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- - -tardist : $(DISTVNAME).tar$(SUFFIX) - $(NOECHO) $(NOOP) - -uutardist : $(DISTVNAME).tar$(SUFFIX) - uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' - -$(DISTVNAME).tar$(SUFFIX) : distdir - $(PREOP) - $(TO_UNIX) - $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(COMPRESS) $(DISTVNAME).tar - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' - $(POSTOP) - -zipdist : $(DISTVNAME).zip - $(NOECHO) $(NOOP) - -$(DISTVNAME).zip : distdir - $(PREOP) - $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' - $(POSTOP) - -shdist : distdir - $(PREOP) - $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' - $(POSTOP) - - -# --- MakeMaker distdir section: -create_distdir : - $(RM_RF) $(DISTVNAME) - $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ - -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" - -distdir : create_distdir distmeta - $(NOECHO) $(NOOP) +# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_core section skipped. +# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section: -disttest : distdir - cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL - cd $(DISTVNAME) && $(MAKE) $(PASTHRU) - cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) - - - -# --- MakeMaker dist_ci section: - -ci : - $(PERLRUN) "-MExtUtils::Manifest=maniread" \ - -e "@all = keys %{ maniread() };" \ - -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ - -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" +# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -759,117 +656,7 @@ distsignature : create_distdir -# --- MakeMaker install section: - -install :: pure_install doc_install - $(NOECHO) $(NOOP) - -install_perl :: pure_perl_install doc_perl_install - $(NOECHO) $(NOOP) - -install_site :: pure_site_install doc_site_install - $(NOECHO) $(NOOP) - -install_vendor :: pure_vendor_install doc_vendor_install - $(NOECHO) $(NOOP) - -pure_install :: pure_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -doc_install :: doc_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -pure__install : pure_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -doc__install : doc_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -pure_perl_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLPRIVLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ - $(INST_BIN) $(DESTINSTALLBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(SITEARCHEXP)/auto/$(FULLEXT) - - -pure_site_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLSITELIB) \ - $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ - $(INST_BIN) $(DESTINSTALLSITEBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(PERL_ARCHLIB)/auto/$(FULLEXT) - -pure_vendor_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLVENDORLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ - $(INST_BIN) $(DESTINSTALLVENDORBIN) \ - $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) - - -doc_perl_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLPRIVLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_site_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLSITELIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_vendor_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLVENDORLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - - -uninstall :: uninstall_from_$(INSTALLDIRS)dirs - $(NOECHO) $(NOOP) - -uninstall_from_perldirs :: - $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist - -uninstall_from_sitedirs :: - $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist - -uninstall_from_vendordirs :: - $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist - +# --- MakeMaker install section skipped. # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -878,75 +665,6 @@ FORCE : # --- MakeMaker perldepend section: -PERL_HDRS = \ - $(PERL_INC)/EXTERN.h \ - $(PERL_INC)/INTERN.h \ - $(PERL_INC)/XSUB.h \ - $(PERL_INC)/av.h \ - $(PERL_INC)/bitcount.h \ - $(PERL_INC)/config.h \ - $(PERL_INC)/cop.h \ - $(PERL_INC)/cv.h \ - $(PERL_INC)/dosish.h \ - $(PERL_INC)/embed.h \ - $(PERL_INC)/embedvar.h \ - $(PERL_INC)/fakesdio.h \ - $(PERL_INC)/fakethr.h \ - $(PERL_INC)/form.h \ - $(PERL_INC)/git_version.h \ - $(PERL_INC)/gv.h \ - $(PERL_INC)/handy.h \ - $(PERL_INC)/hv.h \ - $(PERL_INC)/intrpvar.h \ - $(PERL_INC)/iperlsys.h \ - $(PERL_INC)/keywords.h \ - $(PERL_INC)/l1_char_class_tab.h \ - $(PERL_INC)/malloc_ctl.h \ - $(PERL_INC)/metaconfig.h \ - $(PERL_INC)/mg.h \ - $(PERL_INC)/mydtrace.h \ - $(PERL_INC)/nostdio.h \ - $(PERL_INC)/op.h \ - $(PERL_INC)/op_reg_common.h \ - $(PERL_INC)/opcode.h \ - $(PERL_INC)/opnames.h \ - $(PERL_INC)/overload.h \ - $(PERL_INC)/pad.h \ - $(PERL_INC)/parser.h \ - $(PERL_INC)/patchlevel-debian.h \ - $(PERL_INC)/patchlevel.h \ - $(PERL_INC)/perl.h \ - $(PERL_INC)/perlapi.h \ - $(PERL_INC)/perlio.h \ - $(PERL_INC)/perliol.h \ - $(PERL_INC)/perlsdio.h \ - $(PERL_INC)/perlsfio.h \ - $(PERL_INC)/perlvars.h \ - $(PERL_INC)/perly.h \ - $(PERL_INC)/pp.h \ - $(PERL_INC)/pp_proto.h \ - $(PERL_INC)/proto.h \ - $(PERL_INC)/reentr.h \ - $(PERL_INC)/regcharclass.h \ - $(PERL_INC)/regcomp.h \ - $(PERL_INC)/regexp.h \ - $(PERL_INC)/regnodes.h \ - $(PERL_INC)/scope.h \ - $(PERL_INC)/sv.h \ - $(PERL_INC)/thread.h \ - $(PERL_INC)/time64.h \ - $(PERL_INC)/time64_config.h \ - $(PERL_INC)/uconfig.h \ - $(PERL_INC)/unixish.h \ - $(PERL_INC)/utf8.h \ - $(PERL_INC)/utfebcdic.h \ - $(PERL_INC)/util.h \ - $(PERL_INC)/uudmap.h \ - $(PERL_INC)/warnings.h - -$(OBJECT) : $(PERL_HDRS) - -TransactionInput.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -955,19 +673,9 @@ TransactionInput.c : $(XSUBPPDEPS) # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = perl +MAP_TARGET = ../perl FULLPERL = /usr/bin/perl -$(MAP_TARGET) :: static $(MAKE_APERL_FILE) - $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ - -$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib - $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) - $(NOECHO) $(PERLRUNINST) \ - Makefile.PL DIR=old-config \ - MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ - MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= - # --- MakeMaker test section: @@ -984,9 +692,7 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) -subdirs-test :: - $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) - + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' test_dynamic :: pure_all @@ -1019,8 +725,7 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm \ - coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/TransactionInput/TransactionInput.xs b/scripts/TransactionInput/TransactionInput.xs index b219e772..1267e2f9 100644 --- a/scripts/TransactionInput/TransactionInput.xs +++ b/scripts/TransactionInput/TransactionInput.xs @@ -16,6 +16,18 @@ #include #include + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); @@ -44,18 +56,12 @@ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt } CBTransactionInput* serializeddata_to_obj(char* datastring){ - uint32_t length = (uint32_t)sizeof(datastring); - /*CBByteArray* data = CBNewByteArrayOfSize(length); - for(uint32_t i=0;isequence, txinput->prevOut.index ); + //CBTransactionInputDeserialise(txinput); //CBDestroyByteArray(data); return txinput; @@ -63,27 +69,16 @@ CBTransactionInput* serializeddata_to_obj(char* datastring){ char* obj_to_serializeddata(CBTransactionInput * txinput){ CBTransactionInputPrepareBytes(txinput); - CBTransactionInputSerialise(txinput); + int dlen = CBTransactionInputSerialise(txinput); CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - // style 1 - CBTransactionInput* newtxinput = CBNewTransactionInputFromData(serializeddata); - int dlen = (int)CBTransactionInputDeserialise(newtxinput); - // style 3 + char* answer = bytearray_to_hexstring(serializeddata,dlen); - - //CBTransactionInput* newtxinphut = serializeddata_to_obj((char *)CBByteArrayGetData(serializeddata)); - //uint8_t* answer = CBByteArrayGetData(serializeddata); - - char* answer = malloc(dlen*sizeof(char*)); - CBByteArrayToString(serializeddata, 0, dlen, answer, 0); - - - printf( "Part 1 (length=%s;%d) Sequence:%d and prevOutIndex:%d\n", answer,dlen,newtxinput->sequence, newtxinput->prevOut.index ); return answer; } + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ @@ -102,9 +97,7 @@ char* get_script_from_obj(char* serializedDataString){ char* get_prevOutHash_from_obj(char* serializedDataString){ CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); CBByteArray* data = txinput->prevOut.hash; - char * answer = (char*)CBByteArrayGetData(data); - //CBFreeTransactionInput(txinput); - //CBDestroyByteArray(data); + char * answer = bytearray_to_hexstring(data,data->length); return answer; } int get_prevOutIndex_from_obj(char* serializedDataString){ diff --git a/scripts/TransactionInput/src/TransactionInput.c b/scripts/TransactionInput/src/TransactionInput.c index 0b9c22cd..6ea36198 100644 --- a/scripts/TransactionInput/src/TransactionInput.c +++ b/scripts/TransactionInput/src/TransactionInput.c @@ -12,6 +12,18 @@ #include #include + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + //bool CBInitScriptFromString(CBScript * self, char * string) char* scriptToString(CBScript* script){ char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); @@ -40,18 +52,12 @@ CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt } CBTransactionInput* serializeddata_to_obj(char* datastring){ - uint32_t length = (uint32_t)sizeof(datastring); - /*CBByteArray* data = CBNewByteArrayOfSize(length); - for(uint32_t i=0;isequence, txinput->prevOut.index ); + //CBTransactionInputDeserialise(txinput); //CBDestroyByteArray(data); return txinput; @@ -59,27 +65,16 @@ CBTransactionInput* serializeddata_to_obj(char* datastring){ char* obj_to_serializeddata(CBTransactionInput * txinput){ CBTransactionInputPrepareBytes(txinput); - CBTransactionInputSerialise(txinput); + int dlen = CBTransactionInputSerialise(txinput); CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - // style 1 - CBTransactionInput* newtxinput = CBNewTransactionInputFromData(serializeddata); - int dlen = (int)CBTransactionInputDeserialise(newtxinput); - // style 3 + char* answer = bytearray_to_hexstring(serializeddata,dlen); - - //CBTransactionInput* newtxinphut = serializeddata_to_obj((char *)CBByteArrayGetData(serializeddata)); - //uint8_t* answer = CBByteArrayGetData(serializeddata); - - char* answer = malloc(dlen*sizeof(char*)); - CBByteArrayToString(serializeddata, 0, dlen, answer, 0); - - - printf( "Part 1 (length=%s;%d) Sequence:%d and prevOutIndex:%d\n", answer,dlen,newtxinput->sequence, newtxinput->prevOut.index ); return answer; } + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ @@ -98,9 +93,7 @@ char* get_script_from_obj(char* serializedDataString){ char* get_prevOutHash_from_obj(char* serializedDataString){ CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); CBByteArray* data = txinput->prevOut.hash; - char * answer = (char*)CBByteArrayGetData(data); - //CBFreeTransactionInput(txinput); - //CBDestroyByteArray(data); + char * answer = bytearray_to_hexstring(data,data->length); return answer; } int get_prevOutIndex_from_obj(char* serializedDataString){ diff --git a/scripts/TransactionOutput/MYMETA.json b/scripts/TransactionOutput/MYMETA.json new file mode 100644 index 00000000..4e3bca8a --- /dev/null +++ b/scripts/TransactionOutput/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-TransactionInput", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/TransactionOutput/MYMETA.yml b/scripts/TransactionOutput/MYMETA.yml new file mode 100644 index 00000000..5ed5f58a --- /dev/null +++ b/scripts/TransactionOutput/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-TransactionInput +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/TransactionOutput/Makefile.PL b/scripts/TransactionOutput/Makefile.PL new file mode 100644 index 00000000..2a1aeb72 --- /dev/null +++ b/scripts/TransactionOutput/Makefile.PL @@ -0,0 +1,26 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::TransactionInput', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' + ,'CC' => 'c99' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionOutput/Makefile.old b/scripts/TransactionOutput/Makefile.old new file mode 100644 index 00000000..591e9ea5 --- /dev/null +++ b/scripts/TransactionOutput/Makefile.old @@ -0,0 +1,738 @@ +# This Makefile is for the CBitcoin::TransactionInput extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CC => q[c99] +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::TransactionInput] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = c99 +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::TransactionInput +NAME_SYM = CBitcoin_TransactionInput +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/TransactionInput +BASEEXT = TransactionInput +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = TransactionInput.pm + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = TransactionInput.pm + +PM_TO_BLIB = TransactionInput.pm \ + $(INST_LIB)/CBitcoin/TransactionInput.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::TransactionInput might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all \ + TransactionInput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionInput' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionInput",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/TransactionOutput/TransactionInput.bs b/scripts/TransactionOutput/TransactionInput.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/TransactionInput.c b/scripts/TransactionOutput/TransactionInput.c new file mode 100644 index 00000000..40f54cb7 --- /dev/null +++ b/scripts/TransactionOutput/TransactionInput.c @@ -0,0 +1,329 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of TransactionInput.xs. Do not edit this file, edit TransactionInput.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "TransactionInput.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + // prevOutHash is stored as a hex + CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + CBScript* script = CBNewScriptFromString(scriptstring); + + + CBTransactionInput* txinput = CBNewTransactionInput( + script, + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); + + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return txinput; +} + +CBTransactionInput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); + char* answer = obj_to_serializeddata(txinput); + //CBFreeTransactionInput(txinput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txinput->scriptObject); + //CBFreeTransactionInput(txinput); + return scriptstring; +} +char* get_prevOutHash_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + CBByteArray* data = txinput->prevOut.hash; + char * answer = bytearray_to_hexstring(data,data->length); + return answer; +} +int get_prevOutIndex_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t index = txinput->prevOut.index; + CBFreeTransactionInput(txinput); + return (int)index; +} +int get_sequence_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t sequence = txinput->sequence; + CBFreeTransactionInput(txinput); + return (int)sequence; +} + + + + +#line 129 "TransactionInput.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 181 "TransactionInput.c" + +XS(XS_CBitcoin__TransactionInput_create_txinput_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__TransactionInput_create_txinput_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 4) + croak_xs_usage(cv, "scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt"); + { + char * scriptstring = (char *)SvPV_nolen(ST(0)); + int sequenceInt = (int)SvIV(ST(1)); + char * prevOutHashString = (char *)SvPV_nolen(ST(2)); + int prevOutIndexInt = (int)SvIV(ST(3)); + char * RETVAL; + dXSTARG; + + RETVAL = create_txinput_obj(scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__TransactionInput_get_script_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__TransactionInput_get_script_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = get_script_from_obj(serializedDataString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__TransactionInput_get_prevOutHash_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__TransactionInput_get_prevOutHash_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = get_prevOutHash_from_obj(serializedDataString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__TransactionInput_get_prevOutIndex_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__TransactionInput_get_prevOutIndex_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_prevOutIndex_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__TransactionInput_get_sequence_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__TransactionInput_get_sequence_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_sequence_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__TransactionInput); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__TransactionInput) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::TransactionInput::create_txinput_obj", XS_CBitcoin__TransactionInput_create_txinput_obj, file); + newXS("CBitcoin::TransactionInput::get_script_from_obj", XS_CBitcoin__TransactionInput_get_script_from_obj, file); + newXS("CBitcoin::TransactionInput::get_prevOutHash_from_obj", XS_CBitcoin__TransactionInput_get_prevOutHash_from_obj, file); + newXS("CBitcoin::TransactionInput::get_prevOutIndex_from_obj", XS_CBitcoin__TransactionInput_get_prevOutIndex_from_obj, file); + newXS("CBitcoin::TransactionInput::get_sequence_from_obj", XS_CBitcoin__TransactionInput_get_sequence_from_obj, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/TransactionOutput/TransactionInput.o b/scripts/TransactionOutput/TransactionInput.o new file mode 100644 index 0000000000000000000000000000000000000000..78e27923d7075284ba10e45758c09ee6b3fd6a76 GIT binary patch literal 109448 zcmeFa3!Ie2l{fr6PY**6%#GVH+@z&JhTAY)Me#B-FgOhZj4&W7+VsryTwrc?_Y4EN ziUP`r7fdw4Xp|(H#oQKMlMqdIO*9GFWH%()7!tE@$i9g|Hy4t4Au);H|6J;Mo}TH} zWV7$?_x--Nf6!h3Q&p!kc+gFRtDDLh17@hhCu?EiL6mQ}p9|BJMfmU z{HikfQSHE&YX`of=uGXwt;DiJ*%eLY`lqQrM0<;b1+(wfDZjFT*Q*Bp*|3TXyuito z1FzH#{QJN!ear^FN-~z#fpZ9gma&vYQ&(EnMy+iGLPt&V)V1i(Mk8|Vz>lQp!5hm4 zzH+T{u+XcZ(D%L&MBTytuez#gbJeB@1Z~)~kyUVT3hCwGa;|l7dELPZsbyz1_b>GtZob52KQeWh*y<8v;s_gqfV{tm~o++wv&zd-%F=l+7# zelX|E8?!8*fuZHmO3vW&Xl3QW{*dac_F!f3;PN*r z!=a*mUqlC(2lZ-Ov0(@MsVrT4aQX`eQ`7Tn4_-2T<-qUi27aR@BWi4*_`0s#tKL{S zy|9w%*WTT6=3HvD(xD+^7HDfAE+c+$IgFRt)&<&1>jpYu3@?;kdtKGms_Uw*uZlij zG_}%GeJw@=oQrFrFbDYICsQS603K_S>*~(;JNbx`WeCGkk`I%qMjf z%<^+3;UA6YQe>v;Ah1WhQ*f*b5CX*-X}%05!SxR!{a;P4@Prsh`E(>IU9q1sz=e zf7Hl~fx*1szufU7`=Yt^N;M2<@c8=dYcsO5j3e2R=g$uI*B;zC*&V{7se90W>;I15 zU+X0P&yJt0X9u^`o5?vq%a~^m|GyZ&Ds}Sk(8iau$w!)A^to~w$iLXh|M!gFvj01N z6eRtBZv1F|ai}+FajQL8rmi}Bm{()MyxLh3S5WUGP2a_ObNBS`lJ~9s;vWNb2N$38 zJMhm9rwj_?Br-QE*WCqFqw07L-d7I1>Mhr%z(HQeYo%Q6-AkyrvAX}amf3r}G#6r~ z=Bj|S6dxrLYvkbagKf(=RhOZ|WKC_Ql5PLAc34l4`dj0L;$Aqn4dGnea%VbPOg1Ij zds4|%qP?qiZYUYQp*P;u6pwVJ=7xF_@xJxFsoGewZKLKZDbm#(??)NbUs2tjYU*z9 zy7=OTM64?rYf80ucSX8-dQ%r)+?0sNQt@c2znyTjyK(zFmv4=yq9RYUCDGl<72b(I zmG=qhReBe>eD$~|{)+F`p3#t3CmBz)$2!_~$D3EiQZdn#)wiU4!Q%1?tD?MOfi+k& zhDN)8JO{V|XJ zgqM7plDWYNP=zD?;nF$PH=5RRuIzD>U8FKDFzk{a80xUPpPFRucU^gNzD$x0-!pv5 zKGb0?4xdU%Cu~`HRP26$5#K?gNLUUJb%HVy1gm&h{|QrT*luEvTFhhEjU=!W4w_E; z6&}2cG?yFv8S3U!msr%i(3?o+QN7`gHaT3{IWZ!98A!}|#H^pAm}zIkY*uWzQu5}I zuuizv$|Dx*3>$4>L^E;84N?_$krgAavtI|h z;bei$3PS?pTDJ_1H$p;gymaJ;?Ii)IH5%==Mn1-AxADgn<|4Pr8u?LsF(h=t`NHpS z6&4~lW{o^*(HIKBFUjd=iNZsWKcfyM zh6nR6e-xjr()_9u$TjNDuO=gN!a3IP;`~+Lb_>;tGPFuWP>wKIO|6n8pvt;oXh+EP zX?)pu!B_G&xK%>=n;YCJThgjrt)fVkYoyJfpliwMp%6h^1(j0Iw(W4)HB!gXGZL)j zkV|e8%T+Pkm9I6XC;#G?QAm__iI-fl8~qdN8dBTXXd-3hZzSai^*ZXbB%7!+lH5*$ zSb4<$4WxL$CW*Q4$zQY_?n#7SA_6E{DoFLTOofw@JE#w21;p6O?;y70?5*HbLgh+0 z#euUZf7Lw zFTC_`8HxG}FMF6#snn~KVVf+diu{)o4hdQz{h2PPMp`HnwE8J7Ss`fMZx}5TRR2dt zm4dE)RGfgIt%9})x=v7=pzYKhC)_Vy=WhUX-i%LmCaq9W_)Dg{MKh|HsdT>R0zuN< zqB23!-J)57N}=B|sKbu3w0Keh79(!8cnXn?=8DgwHZVOTZ>nfOSQUqo7y&0dR+xlF z#kUzIqgwq;Mz#5wj8dBwCZo0s%dy6_~3& zO&s8;;aXTZm5!>lf9i5toz7`ZI;T3r3FpvwmD;1nUj*q`z|m9gyX?({F^A|$nrj!N{?;Ky9y>SX??vl zwmt6`$eq&NW0j4YZa0p^P0u88es?Cb+GVXGFMZPhV z$}~leGf)ksGEI@l^(zu^kRlDmQ>06A73or3MYEjI2LzH?%XAjO@_JvA2&Y38}{%A5N6h09c_2X7c!%;+w=PkDn!Z;+4nG z5hSbq__=~Y7(UAyU;c3%H8|liK?|O(CsZM5;cA&2f))w7M9`8ia>+_T7fN2Opk;#U z1YIoc)eBlKd9wD8zeLbh$-7k0HbIvOY8F%_a<&OtA*e^tNV69^yD+$|JP1;U3FUM=vbBaE-Pc^>5+4+y+gI6tTG zdWud0;S&lQC&0!7;WL3yB$2enr=;*%&FvLd=M?q{+#^xr_?-d|DD3|+)*=Y0aF?(; ztZ=u$BMNU6cvRudzgkFjk14!G;Bkewl9>d;&ndiZ*%bs&DBSyeEy0rt_uaFI;3$JbNk6N-n~5qOtC_#29c^ZEeOQapm=%|Q5H6_4a_6c(X4-RSw;<1VkDITZzu;LQ?SFEZdipSeBC66ke zU`zjxDW0hKNyU>CKc#rG;=flsMe);$&r|$q#Zwi3MsY~-XBE%k1qiN5@jT7{oZ@oD z&nTX+<)2ktq4}RzyioBM6faWz4~iG7exFmkMD=w-@iM!P?f<0Wi!}d~;!A8X+tZ3K zQ~VRf)r!w3u2K8=x#Cs!)i@LigwHCD==h&gyjt;|kuu(E6dzDrr}&WKwTcfbUT2Fp zJEHhX%|EKRLGdxgS1CTOc#Goa6!$1Tq4);X$4SKrqaVdd#itdgRGu@6ciQR%756JX zr+Amv-y_FS<9BQQ1B!1{d`R(4iVrLP8^uQy->mqk;#;)6V~Y3ad_Jytua4K}72mGo z`JCcA6u+SOfXaJ9@qpr!itp0)Pbt1v?eDbW_t>|wH$J2Iy&N{dJ`~@t_?+Sg6z?ez z`*@$?1BxHCW$8Pl_#y4jVZ{$CepvAbRh}b?AF(NN3WSd;epK_1DSk}*b6oM`+TZ6C zf7Iwh@ln;+NySg-eEe6%A5;8Y#UHoDm%pg^6Dsd1#eb*#eyI4E{d<=8wBmo%@javX zOZFI!X3i>pf%n1iuZq8-`ae-9`uwW)@1)`rX8aU?P1`@M_@5O2MDe%Hcq;ym%70ez zceTH-DSlD$>x#dp_zlIU6u+tX2lgEHPv;cBr1%ete`tp|e@~J0=ie0XD=Lb_x~%d4 zOYQxD=D)1?F2%1XKBV|n#rG@z4_)65EB=+SAH~16&*Q-CsN&z+)|F&W#}vP={Eo@- z!uU5;KTj+Eojr}$-{Xo$IJ8kfpr?4G;!}$A6`xgH=*W6`V3hQ~*b#qyNbxAe_bVQw z_^{%!iXT>7qWFm7QinF$f$(FBCpyL4zoUw$X#OV@Pj%?r2K`q&&5^+7xZwM-*S7_^9Gq#m5v!6dzZ-TJdv=*C;-r zxK8m&#cLIxQoK&_X~pXmpHW<|_^je96`xbQLGhk3(*KQ$4=8R>d`R&o#fKGdR(wS9 zRf>-)-lF)J;;R)OSA31)=M-P7_=MuEj;yyQ6<_DfxrprTl;Z0h*;t%b9CgOAJ)cp$ z&5>~VH;P--o_?#i&7mXUK=?JqJDeF@|D57(Cs9uMd&Y`>l8O%~zSWt-}I4@qqU4sN#E+-!a99wEl6$hn)q?|2f4EsXk69e%R#`qk2n`{ z{nLs+r1*^D$5fuPia+X{W&d?f@li8ATt^Q+AiM0P29j|?gk8A%AD1O#i$?_jk{CUNP6+f@|h~h6htz7=7 z;uFpX7#~yob?0-~8zR0}{LhM?Q~XUc9*R$?d?yuu-?^0ae@d|xNHYJ^ibn**zRxHw z2#EchRXker&nYfZyl1@Vqg3&M@z$h`I8nbf@B9!>lahT_Y3U7dBzb3BnjkAQ_bR0c zS_90zib45OGC8W8@`|lVRbY2pUJtR05xWCVyX*%3alVh;KpHzm%I?nVxg^-tg5BP{ ze}r>gwbR+ z=J;^J7~vwvhZDxq79JJb|+f=+R^@2|Vs*E)6UZB}>^071{!q1t>~)!j8a;0u*H7ie2Ev0osFL zeh6Hyxe}q3T%u4MWXYugI&O5r@~}fmP2g|1Zb(nq@5*};GOQz>9FS9udd(ycL)cfQCi_m>l=iCu}cObk=vl6M?Xqk$K(WYT%$()wy{(_C1p-Mc665E${`l$9Q{ zUvarUna=e|JB{m;>0AvI9hN?2zb>Y&jl4JSb?_A(P8wM|Lv=VQUuJ;la8iM`z?zv< zxRiS@I-FD_NHjC4n3i_d}d4;uE98~yAjH~HC5ZdR>uW0T{8j8Y!R zdmKzyDHWxs?1Br7s=uGEl<%i2<@@PMF;JEA1EUlfrkCs|Sx05siTCAAKr`HlwkZX# zBF&;rDfD+@N}<0KQwsf^Fi3PXrO5AHrW7q_8!r={Mb|JA?=q#x?_H)8iPcqVN%2ax zio`3`D-sv5MNyosPA(v(6pLMN)6PAZ_Xaw|3O!Kz2YYOpQRpAj75c|?h5j*Jp$4i# z|CFv!%ej-SqD=H#;M~swRR}C{{I_hS#R}!FsC1OVS}8o5_b5)dUf>u8x2cxK1 zkSsY9M}36z)ZL7hJar;t1cijl*l%-5F@uREzhNY1Fmb$;T!y$|-PP9Ehw`348#ri5^pEChjA7-!^TQmA*KfcEd8( z-y1HIN8zdAq!ZI->Gy{}gp#gb{((ZZ?U%G}$eIvYW}SB|0_{xLgw&JsIJID@b>838 z!yFSLixyhvJxzO{37aVSX}a}hZJhU5fM)18oAg{lgNCPeI*=A!EgAVD#$udJVwCWk z7NJYz+~A!c=LYHQgVlLzYLUHru6Au|F&~7Zjz-jhz$nS)=37l^K14Eg% zQ!mgS^+@h)g(-n^?WdqUJWM69f*(<&n^D0F^p55>#S85hz&jA$t9YsXuZ#~UzTBp# za_H_<>et$&db&In98r8k@oL3K6|YfzOfjB0!cbz5qj;U3X+5X7-u?l%|AK8Hmcb?X z)9heMr#?d}fmMR^tY}Bk=S4Zd%MnEI-r zj*-XiLQSuOA`cVgP-~$$ZE|yiRFJJPbcj?6C4DPZ))2QfHzplZqyh9OhZj z$&<-WFmJ3e!O|oJH7s{&(v`b3NlsO%a)b9m z(%c~Jk8*==K?F3v=htqHJzn#Byyo|K&F}G=-{UpE$7_C%*ZdxBp29LTv!AwhBKdx= znf+cf`@LrNd(G_kn%VC)v)^lGzcxd$8k)J2_P5f^onA9{dd=MFHFKxe%$;5{cY4j- z={0kwHbZeTnz@(uz0%CRUNiT4&D`rXbFbITy%)Lv}P^BU%xl&Od^Q=wFld#wDY|uRN+)h}6V3W5ktzNUDo0w-?8tPF* zql)E45y?rb3yjRN!aMjmww%d<@V+$4WR$^|8FGU(Y%_wT57@h*+Cr*R`aZtpFbj0) z`xWL;xd(aYA>}@hUhW}#iMS`peOTcz3kHHwD}4`#>m0w8zSn*M;!65{AN{bs0b&UK zgDet6d^%(q9!G3)qLTk1e)dh$AGXQ5B>fS-)ROdLTpm2gDXScRYt!yq@{jt`Pp}*) zOXmo@u#}$W`@C^{D<)wMZDLS_POoxqR@JyO%SRt!c@uy>{>`li!%H4_i!RmHL-DR=E38kT<*3BV zs4Cal7T!%0Pg=h5CAMZoH=VcCC*v*GF;W?C>u02MckjK7Lc(R=rx}$Ay8UHF6@m_o zypVY6+`V%Nqe{uU>l#KnKktzi>Lu^c9?si>;o1Qi^N&IP+~5WtZPGZ5!}O>)d;>kV zB=wT=K)9k5Wzfo;8zk*;un_LO4a72=9L|gQFXqH4@*Wl+3+4tt&xNSg1oTG=af&8+ ziT6e&N@zGaHZKtt#5*_mV`f1`H>9)R;vNgmy$VIFe5#%se3GkA2c?Yf!AUco1Srr1 z!Z@1-A&q=9laHm5OBho3tbCF+H~0XTdNETe(5(EI@DAbeo?jB8gDoe$IucXEetCLTI{#)l2qghzXLpn6C(oa}6)i9e=Q>*9w2Z`S2xF zkz!?HH={Vb!U-)id}|C};k1e`M_^_}O+8ll3g>oiG~b$08eZeX-CAqYYpqMGwcgYc zmRE8;5rACOjM{L6GXqy{lD#>d)m3S%wxqMVMl*}0>b1-U2c<>TR(Pv66DsPATjA>z z$tEs*J>T)+=~t;3RX(zb3vYA8C(5(o;h4h9q;Mmjkl;~qD3HqK2Fah!SQc(|{?YA4 zdwMUnD+~&Y9ST+M4o4z{QpxR9X+o^?9__L``ypW#>|tliJA&8lFBU=VGJN z{&Z<}u|Z)_rM=w>^I20jDwASsMksu0P>wZ{^HsL3pp4T&Xo9Cw#lp z1TIB=u?{PIhcQjk*j>(9m;F8I?C&+~S*SxsDC*{Y3QAc&?@@(>q%-f;(NT5Xug$5t z-mh@36h5p{LSbd$hnz;lF_Q7YbYUKGg`rvSsJ5u1cSNC_)`vf2dM=zktjbmKKB90s zb^oKz@7)%Unih+i7FgjY%m@`VE%Z=6clcxJ&3{~rYV)5^sJ8S;RmbF_Dl7acRa}U) zXh0b&`0q3eny3sv#V$hR|9dqsi`#x$+sYWpu89M#aKw4lO>bb| zCiEs}2RxRfQ_ccRR!QH)6Iasvc-lz%09(JLA7mSr^kZzcl0L>(Bk5;(Jk@Le13T-f z_D4pBv=CphhT=dU^MLl&NwohsP|pPFjrQU55HBcpk6HMIb;D*Tf}X?FgH z!#{QC87`^+vKcXfKT{|-PvJ9W%p~^}wGSP%SJMaWKhg*7=L*%9f8of6LFd*lSq9gq z{z{?x)U%F6FO|~nuN}FasulPfN3OW)1^!my7J;v6yW0f5&JScb;WmM9DC`mVrgpGj z;5mgi3H%*H_h2mid)5wZQzZW_Zi>D`Aovf8579P8A{hD>6^|GeFq1gwp7$SP03iSOejvmkw6`mO!7vV3~ zu%V4x&4nag$6t-15?9*aK~bS@@RexbV@3&)D`qULuGD~X#$t-oV22!D&R8Ny!uT0W zdms$lx#V4VBO|#5oUu$wO29nhB0(W3d9k1}-9ub3_YTwC1?7?@&0R2GkTiEeg)|_| zU9doGrPRX0YFS6{O9V5^7gwp+Gb<#}EoDo{U@4TDd&-%Wa4KumiOfprloOvatCyd-GZDkA8@Z%e>}TDg zg=Ni|wMPq!o0zrN`JqFNh?|(T&*3j*>No9X-QiSMQm#0HSqGGr%8+j~n?F zV^tLS6@T8@BJwMK-k}K(`4zul%pne`*Be?ak%o$Xxzkm55=6qbQo1;uBbM(*zk#jiO% zT>hlu*OlKX#cyiA;I{98S?31HxO0PKrnx~fp4=b}d2Wyf4tqRKlM-`-^!4rB zU<7lP*Y{bY1LPLQ1SgOFTXc$7i^*eX4=TyAB${}TQzfBaq6p9SlJhBPe0s?=`VkIH zTgeNncyjVnGF_jOrKOG9;5Dpdrk6Z2VwJh^$PLnQXKwIql;fDAqNLv0i)_|h$(0VR zT4=TiPfC?+bmSU7D4Co10X*X^N;WGLZ&7lUF3{pFO13apcndT(14`n?LM7KZ-*Owf zKCQ8Brm-SCQ&iHZx7iYPmNY5UugO=Ge958ju8CaF8$JTRtUDN$`YW2NoW82L*mR(o z6WXW>{Waz)LerPwW(G@s;p{*|vyy#1R>?2<3Cvj}->+DpX&5>js&H4a0WbNj^Bxo~ ziY0bgC9kP^tfKaQtK@aP_YYFBH=SpwSW|DpDmkYaRuP?vmHf_M?k(rv-Ex0WxwYIM zO((6H#U;OSifbVwH~R+5D}w!=#gX)%xJ?;`vXWPwYfwY<^&dKL3V+U7W{D{IwR0I{ za0mTu771H(3@d$mnuj%5GKZgK5`J?7YD3n{ijvFu0VxroGB6oqFX^hlfSaxkkWC1E zMS!{@>6L+PNTVV8K0h~9Uve`)$t4ZllK$Y$da>%7u-yWd(>OQ!2he9=)16sIDq#96IA@ELx%LE<_(0LJ7YJqnJn*O)x##A*W@0en@)*lx+vKjL-i+ zk}-dP^U0~vQzL`w%fTgmm9K;Z2D>NR;`CUF6sML-^xW+fsJTIU^oIo;d!S&%8smV* z4iq#2a3{y!SwJT~@OAj>SaA-d!M3ocNKk_b9~A;grrUd<;B8bS^Tx zXx}_$8HA|T?BaU78^1k!6mRn zQ-r-N1hda0one55;rW6jxS!371Z-CFrc2&rK{LM1JVT+Lq&52j0TN}-o-Hy;lsS8j zpv6*cu4q7F&e`(>RZ3pDsIpeje0dU)RzYZ?Lh@D%S|DhRApOF6ouEac@_Ipw1#JAILvaZg)RN$=&FB5p1 z!pjBjRai-UY5ys#s{RBcr0u7`YLbBhSb-}vK2f+*;BkdD0-sa3O5h2FR|q_*uvXwH zg%N?L6|UaK?VeG%hSU@Y|6E}mjYJ^)ONDC%{z~CGy5Pju^AxV9yH$LfOkq8F9)z6o zwfou4r(jVO0ZRwtXBZw+*doe#L1FvzwN&_o!tEEK5~3}I9imwMM*Hkek?LDHnA3lU zDUutc$(Bd+fEwXFT8@=REu8Z($3U~YqyjxshHE%HYBiDU(asGP(PLLRTu6Mxp5k(l za)XQUF0PEe93WeFDRFCYJ(t*w_i;9T6~J>;>S%6bCQ^J~@hx0@Ki}_zT(6CVGcJZtULC^c{&E;YDiyVKS!36ap{MXD%57SPk$~gpSK< z?))1-9bP(j!AmZag&*gF%5o9O0-rBU&t3c(DqlRWY~%)Qbl$8TzVh>CYok(r-kg`I zd}v<9Rc`qOe*W_oQifSm<}H%ivWm=GENC+NO3m^7nYW|_Nem6%^GE|XBf*LdNP+Sf zD61l8e%bHv$#(i@*)o?L&hJ5f&*S$I{63Q3^ZC7i-wXM@h~M9~rRn(>51`4Bq}^rn zFOP3j4b874<(grcUqy16m2!TyXfMPAIDbVO=gHzYe`OaVSsdrr$N(SM^GafRnRa_uEWc(^-rj18MSs%&`-%>H}XKwj&64XdnF<;8dqFYhX!+Dh~UBv=w zgnp=zN1|fkM*$bme$uk#Nl8i$e%Xf_ENdZA?QtX-y%bVY^jbu3Hs2sq3b)wudTP66 z#Zh~Sy=g?Bm5*OSe|zGh=@#9Y^6Tr!N1k&N-W%+SCH9q0ACeoKB;L2!6_$0ONH@_o zEt{(J>Ff;JFT27`q5E;r$qYBxT zp!7TEiommt<^;|$-4QL7Q|oS5NJ)htKvF2`N-yJbh<|}(P#-5197hRDzdFsCzk}V~k^m?DG zepj$nayl;gY47$Pv><}5GEIwMwMOv*BSuaUYz>W)E7+&dhNQ?Bjdlcn$!JI5^Xa)Sr00G)J@+ddu7JBc zw|{^^%nsbK{w<2NUQLQ@U>|oS`M3@C!gr{fo$FtnnV}-nwz1{4xt8~JvUYl97yliyvR85icu)oS8;EgbUO*b7 z_k4OHRvquP+5OwaTa633HqFrOt?6FjI?8obwi?rX4r;1bu$G&4c?~uW;ACb8Z~)g& z?3bLAX%66Ix&!!*&jEZV%>jHT-2u3n;s7|ek_3ADI^zKNA$%gqjDIPutIiMqnmN53 zjd&LDm(6KcpU=Zeb~B?*Lne`1i00el{?>*RO|uub9?iG!x%K`WbEEktmb?&SB|7`@ z|ClAK5y!F{abeULaV%|Q?M7q7+y}cUeUWY+V$*M zm(y+f6`xJNl4jGdq}#NcDK^cym1Mx**=7dhY+6^HU#G+0{53XRghu{qo2F^Ljv2j+ zP4Duz_7~Xn$K85=nN8(oS2~a9iXC%qCAIum z6aGF5C7fJ$UJD-X>O^qR{%cJ62aW#)rcASY0tALe|4jS*Ayj=8*U;D~c(WA@O%H}H zNVipY(8x*O~So*ZLgv&$2i-V^(xwPjN|9SshAk0myH`vu1j`bN$HzgOdGm~ykbTYb+t<8w`nN?BJQ&%D3VhsuksQ=6nA8tSKFz4h$aEJzPT%mhZ2=$kfkmO4XH$-N zZZosi*i>ue_iX;^xlKpPCH#yO{aUSM&D&<%eE3^J`+yQ!X5@{QqY^rix7JF*>-mh? zrsG^W$rjG#kJvWVvgru7gilX}bNQp-Ob4S(lq$li{ESWIY&snE(<_$oVW>?H(4!Engdu+)DxdyRf^>aJq6l42FGv?@hSy6$aeL&{eOH*; z(kq4h4KSO|QRMbgGk#LQ-@3Hve8VRKx2_Fu!r$IL?q+j}8_xd%h`GV%@tz+zADa-- zOsj2ER3^VMp)9V4?Bue1E%25=v)@0;w#hYla+lEcUl(nAaT=Hw%mTZbBO6aN_<}=EkQ8;E~pm0**D0{SBoC~); z-5NRaGLUfptw~6gQ(^@QFCMvkWMmBfpji=$Ko#^sc=#B5yO{bt*^ z{|9}<`Br4id{i4b#tsyE;oNB+2YeaY41#4%S2_gq zIM2{=;F=e>>R~ujHNv2blpw=0OPgo$@rXEvCfD?S4i6dp5+1S{Njl-m^Ky*d8J3qp zE0YT>YyJ{eXhn`s^$W`F%k#x>s6n!^%G~!?^8hRy<{F9vyIZt44K5zI&4zU@VB1-8 z=WVv-jJU5F3R-G1aB-J``v~Q}%wvbUB&qX2b^Zd3*u_8=v9_$`lGKb#{QS~ny%e&l z9gwV-dCV`*CyTfo1YdsTNP82upNP-3Ahb*Ms@(>L&CE}0V1+6}3$E1m6xMibq`g(z zp5|ZS9v{%TF9i=c{K8b8DHoUziexhNk&}KR+BWGax7fNKC1acKBl=9 z={HgMRjHr0wb>;7yc&k^D$@!Vx)tk9a-~b!Xp)APZP8Me_A-P9rJ{o-iMuj>W$w*3 z&F#`p(y~cE?9oCd{Xvg5M9bSWuU9`Igh{^FC2cfG!zr^|d$q!yZpC_&JnWJ-o222D zK{H3R^grk)bHd{EaKbbtY+qv8@dz>1V%T2>X9g z9^ZC()tlrmT+&vPG(7p2$TeF(zN4RB5i-Qv+oO?rn%3z>9>M=LYwPLEb$(l>atWhQ;4 zo+$;aohK~=HYgDSE;H$k9<9QpH+i%&lfKHMg-rTtk5+2Z*Lt*Kliudhf+oE(M{I}% z9Bf!dqr0_duw#=n^)eflsd%$nvB4z2=aQ~7$$2UR@oIR~Ak%_v;kGsXwNH6G>GHaM zvi7Y)KM~28WTlbFdD z=r8-y%cz(N4t~`rGhfBeyA|JXRf)%12G{J>n!nXg+q&K~_=460X>hHhTG|+?ZADG3 z2i#iG!L>{qZ@O*Oo1~cm8QOYDOPk4LTU!S+UaD=H?mO0kA^NUYd!;{qOfPaYCLQx= z#U|b2(T1#6hSwG?gDGZ`rdsAHcC}WByA_8x#2(E`=qJf((kYKtY|^_tTB%9z_GlrK zzR{zVne^Xd!>qcfFzKf~TA4|I#-oKy`nX3cHR)$OTCqt#=h1>DosSKsX;)I-yXpTv zl^41-NmDJeZcW7lZp8+Z{IN^A&Lm$~vBZ5DWLn7JzV1;T&$_&>zg2lWpr7z0Ci%FM zGP~N0lb-%b=&-Mz@-zX&j9{tBrZm4{={lD1%Sx=MeX0GLCD3cXMB* z+U6Fw@7KSmNu$gRbJ>)pzXDD#gk~mb>?K33HCo!3UIq{FkQOnj$m9X&$dF!RJ?jga z^mLC_Y|^tl+7J(5c$I1ySgA>xYMHHcf>tPVD-Q7hQ-%~75{Oo4k%jt6PQs)Yd$eMc zzR07Mn)JmUEo9QmJzAMbCx?sL&_;zxr#xDjN%wiQkV*G@v{IAa?a_)&dXGm7n)Ek3 zT7^j9y_^28RC%F(lQh*btKU?tbt^WQ!MkldVS!~l!auO!prZjO92Bq9ax0-k4CXF&POm|ayvRkX(B#pgfs5Mec8`I0+B(BvWMirTy#7Qml zE&ZgKWzs+KXvHQ?zgIvnDkmxL-SGOZmVuR;q^XwKN`I&oPP-L{I0;k4$bsFlNgCc6 z_PuA7;cxVlq&Df-JX*0y|IVY8n)L5ITF9i|@@Qoyy(mvKL4L!e7kjialV0l4LMFY; zqm`QU#U8ELq$@pI(4_D3XhZyl>A(DqUf$!Iq^Xv9L`+5b@)=cZFv*yXJKTXu_NoZt zHw-c@Wbhk>%4509>-saA9H+c6g-vpXk}~=Y`Hr$>$v3dbFmG_v@;xm2<{9mc43e)W zQ=hh)q-h+DF4x99>4*4@St{y0{T$*qOon_5i@rbZ+dO618y!|gr}PukeY1*Tl$pT; zn9@IVYt@^iv6l?BzOJQ>>1FU6leBH4icEgvke0bmKWS!}^kW{a*rXr#Xexl`Hw>=_ zv<&=)Nt$Yzt@L57aKx=R#BZ1)Mh^H5lQg_D_>E)A@G1SI-kJ2%9a}sdM6Wviq;`ek zy_^2Opz>lwOwv@#JR+vz3AbW{NuIBA!5x_75*0!GhC!x<41VKZl7m6XwM{7_k()=%;qCVfU};x`O>&24n6Nt(vtH{R05Jn4t{jaQVxFZ6SW-!K{H zw7|RhjV;>dVYlzsm#9jOGBbDpQ~F`IR=r6Yd&yAipq4hKm%(qmq(zJ>GWm^qm2ZP* zeL<6M@My&*z1gFcn)Fp3Eo9PLJX)DaPbmF`dxusy>{c9Ngu68BZ}gMw z-lX>{P3+#F`&?#QP4WaT*6EdDir%iJ@6^vBMs6}5&;svfC;?@BBy5Q zV_=lUvijb>sArbu@O7b{rh1-}QOervpbPSQ^k zs+wSCaQ$rc7Ha*$Lwij4y@%bjt8gX?Fj_Z#IixO^S-=~&emT|7I6=b!N8 zA6XFo+w*&qiTUkaO&z_>@%jDBmPVH@p4ZXd)!RR>wX1i2V|yxTy>pS|uJjU8yraEw zerr?HP>zesFEq`0C41tDj`>T<7c8E?Vm*F)kQ?miZi;odMXiQJtScF7O0{=)MY?)= zQ|0|h>g5n}6H!yUdg96QHtL{BVtS?8JL4ci3&~V-bG!v<*mbhKH5pGy;ht1mA|7it zbx<8y+dF$C*G&rtbWyprx3+h+bZenhb9)!D<3cfIOihzOkfJM|YNm={Zjvb4+@6SY zHIUsj=%g7G#ysgJDe&235@;sT(-%t!IoT(lt@_#7DmbRNO+T9qj&(Kfk|O9xJ4vt2 zaT*P^Q`;C_DMUcaC*rN~ew7A4xuW?yDFGI(3CcpEDY2`^D55Ra+`UuCi8wl{LifZH z$+)IhRIiNp;78%&T}|z*E7h+D=<4wecQT47=yeg51kswUi*pz7JMi{M)CzG*O z8e@h-Y{PJgCF4t$Nhw%@zwc0|>93dqN|9O;-6_%#yQ@6C-@rqRW9_~39*wM?fAzde zUkmn*dGp0fpIv_G{@~i+w2Kd2bM^8|uMLd2EztK!V8kVXz83@ek4(GflXvumF1>nx z`;dpZ-3pcm$2tqg&k8PlFMg%R$#tfW#%CbcnLP%d`1zg}8RAPJew3bf zndG%d$xqQoa6Y}yqqj@(X6HI{h_90yoJJpW>8+05gmIu3KRZI`6@E|9yHhcWKbDPh z<`v=DyoYab!uFc0*OJ_?SwHzyMyY3wMIA`(mt`+Ve}O3d)MF?3a&Q$I9k?a<$eOFy zTvm%l_u9|=_cZ#un}d&>fA#Xqu0f;s+5b&FeZ|-4hyGg{4U7stvM*5JEVKj3@<72e zfn;z?pkOsL|C%#>jPKvr;23A_SZCQ7Cl9Mfq$8G0B~!5!{RUh|cUNnO-{6s~RA(~U zlq7#=CE`&k6OT4_C-GZCk?ur$Yb?>)WJP*YEz6?KaGNQY+NacHPprvT6}~2lACANW z$jSC-JdxWKHFJH0I}7WY1y+!;%@Mezrl z@rPsa6PZz3IN-UX^s`A3>UUGD34in~$sVeqdt)lm-qmVFnz}oC+OfbQ+1v(@2ZY-zBfu_RW%PG}P{p#PDs-p+WUy@_<( z)f`JSTdDqbS{bbf^v)CK-A90jyV2yHPqV)N!y~yj#wkL zia$N0`j<~g<=8Bpv_3m(pR9&&ocr*9Ss;`T}`9^odcUf)Gj(AsV zstv1Ow52_fg!Ikb$(`*G8NZ&7VWlCH5nWLoU0btpW7QQk(T1z*YoeQLHf)TnUuS_; zTX*-4D13NRGzD#=7mWxen%b;nw5L0PJ~VbBH;%sdCanm@gvPVA2P4|j1cRWgXlE?3 z18v7!q8+ha=v+IAl88h12?`M6U42$E))z-^GKI*6tp$rD)-KaeGi*)W9o>nf)!7>D zZrpBl_I9LT*j>$*s4PmHqscUsvR16GudO9h!oWf1q}3e9JmGPJ0mnMf5$Rojdv~;@ zBL=IAB->!Z)N>xA{$y_>_kCwKEG2@!UeKG2)>w_a6s|x~gjR8g6@g-#cEB=vF((!+ zgu({vwSN7&E5HEyKL?QUs7{A4A2Vd~-* zIL_gK&g$vx?mq(&f6r2U7eoJ?v6J~=B!!DE1 zQnQt8?2R_FXG`>Ub>p`sBR%jZn9CT=X!=~GSr2y=B`fzS4^8z`L&^3=b_r3~Wpj5Y z^usfi8ffQXp;<^13nmAdQ7Q%NOnHhCXO!xM5Lc|*6j~8Nm|eb*O|qH%CxS*eMK~B3 zG{&^PVMDZ`8q>_`ZzJ38w@96-Zg(=ZQK~Jz0}6CwE-Tu~3L^&>ZH>ds5%wBy#GVPm zl#K0+VLBv|=m?tzhLnuViucFi_|X&%XQG?6L|%~8+=-!2w&5+2g1c%aB`jWMl+c>! z?uBtc70?Q)mIFnJ3whk!SrKiHrDB*n$-Yz+9o_|t5_8h9o;(V=9D#Tp&5agKRdMr! zO&nHIUAKP4nvGTj9<_rOq@JD8R=7d9()JjpC`R91-6$OH?jY007-ERvba~NX|G2%k zvxj_19Ck}HJlda(_CY<^#$Z|OCO-y~!V*9$Da|CfHJZeY-Ki7|ffkltOx1YvLde}l zitKM|Z*8-7?IQE0r3^hXP6yMiG2ZH}6ui~2o-G~g+~Gu6WS(-=>v(~fRzpq*PJ-qO(>!*YN* z2tCJp$n4s?Xq_iD_0yUS&85g3!81N&g0kMpVIbE^!Zvm`_vrG`f~Aob=U%v7)-wG8 z6&^se*^LE}T@EeQmiYIM_8oC+_1gNHb(_iZV61Fnx{}kx#-c{XAR`lvc6Gy%VQ3?8 z=g>SG3Kqn{<`E%&-pWaXCW}NO-VcjOLcto%@E(>-g1t05W7vCl57Z8=bT3_u!5hrI zYURoe+82@yK?~WRadQ}W>IG(1OM-n#a~v)fv&Vu?*|(#C4oK7jPXP^*1BSv|qvDEb ziu7_UC1aT2$&5T2XxhZ8gT`XT7SYw+iLu`Sd%;|fTf79*`V(nxm$e0d#+q%%gg@vK zRa{ZGeqBwpzG_3&T1+DHe)#r!v@aDyLuM(UCKK_V4&Ij|G;4yKEo*yIP$Jw}k1T;* zaDP~U@t!u}qH$UnXhAVcc`Dk4>4)V=mbO(;I(z^v(9jirk{q@~e$G#2EX8A{UX!Ix z+KnAe4raKNMOY{a7$yY^2!CWq$Xm3huy#^i`0Y-ZXEe2gW;Rd#?j81#Sjm>?-rONn^F62a+ey*VSS<9HMvBDbjArsBkQr8AqpX`@K`*X z(eaKX{7fsYcpc;vp%ETx&xy-?#m>7MhZl%Ud%N0^)QAq&VcmeZ7S*u1maZUrA?2G0 z2-A7X#^{P_#AV%>X3@brZ)yoEOuTP>Zz_T zqA0k&wrXPy#ljmKHf&naAn`yemMpAWjd3~@LFB~VH{R6U)l9P&(GNxFNty>_Yq5?F z_Fi!uXMpH33a`pY* z&VWtYIK=j5bQOc(4=xZTcXW_n!;l~x*s>9E7n@Qyb#4V57u#M>Zxu5LJ2C6muCIrZ*2Q+k{A^oo59N z%@vzTIhe6n86o%11RMyfhfEi`NEoZ-`Aao}yaE%L0~0iJoX< z38QDlVUi<^MwrB&g&N)&OJL-ijC>F+tvl9=+L{$>>eolsHIT5in~hd5Q^-8e96YCIeS) zMXS3J@sbj8QXm>-lZ$SM$2wNPgoRrQF;@z1)dUCHZQi+xTZzQUJ!lN7GmI2Ss-~$U zLqpu?@Q7yy#&ic18>M)hK8-8kctsABE!mIJo`$ykv~9;C4O5btj!;@OfL3~O)YF~B z5Ry5rHG)NRtwYOj+ zOT$DfAzVMXVz?7*YGQIyCkJ&rdplsXXfWypKDd_N2i48V3RBdRG zWoYoYncXBeZbx{(*RuqZ zNWB1TlCg8i^W{N6bL&nLKa*`gwLH0YwMAC&kG0BK(3A#QH@?jNGF*1|COV9nG|T;G+nVS0^wU=e3T* zWK1T^AWW@f8&1^ga?jFA^yZJTaNwch#=O}KJ=8plY_R`XhY1E`C(z=Goco5G2=lX z9f@V}GEAp>%g7}X;#C@EAofX{RCOdhRxg%f95Q1^K4;R7nCj;3feEgqgSh|i;PY^>phcgKVBy8&2pRn% zM+d=qilN)I;DRx2HRbxl+hkHG0cS2jCO;B@xVTAfOQIBlq8{&hyWO8S- zrO^Og!u9r`-;~9to9)qVxE(}K7(9$D2U=!s>E4y%FzhjLsfO{Cdo^>M(S=|b9;CGw zv74T7)bZIQ792YD@~*7F8ncL81noNznqvxU4eb2Xb?_<+Bc{NONo3FH2f{fx;_hAC z>!FT;EQ{?0cPuz<*8K&AkU00EQ)Ka+JUhURR%qG;ckIHpNq5rhE1J8v<1B;s3miC0(L?f5*v`?xKaRR( z{(uSgTbMAa6Lf=w<#T?Ss+cBv>BV;}%@lCK6!>HfQ$#|;T~>b#N8G%*f&=8Tm;VzH&ox66i%ZzYDjM1iTT6ZGu-NSUM#A#DT?3<_A z#)!4{ip@B*S2N;}UN4x}R$UQU;d)G*w1ahuw8QZO85zP--ZX*4kN>b?VS4q_@)yA( zuO6&#Cl*g>09 z*wX!w+y+yZIJBWqHHoke7X@j$N9Q=SC9ml2z+}x}b>Nx_$Li!qaUB2~?r!eItS~1v z-n?lb4PxQbQ?DUisj90%P;Y#L9N6)WA<4Rzm{`^bw1s0YS@iIsK{1vIzATq$n>Rt^ z_UM*?ZuO&^-{s(v<`fQM^lF`tbi}=9KhdPqQxi0c)8wF@o`@Kvc?oc_DqHO>ta!`_ z+!xWd2eb&3%$5d6!uR!v#1O&v@|_)BLb`h?I#7@sL(vr39fB%z?N8AniGb(?8=95X zm|-!A)T4Cf2J41Vk?Vr;a2+0NYKr&Jw!O8Fy@>A|l>&3}KFugV`$?!$RxR>%Jl_#& z({2U>xsmRl#e=X*GzPCDqU~WsuD*IBUD(5WkWU~w1k{6vBzu02rDYGx9t+(Vyd5>S zy513%x>6hyV(-uAQgSSnX2;xPI;-WK2b{x}jcn-bN-03%J4HVA;YD*r^(w5VL$;1l zY|Uw?%t3r)M_2bw*gicffML?d6tJ>F^0fBNJc8??vl2dh7q88c78YQHQ`ko8UWv{e zu*=4Mf)`xWtXnB@o18|WNAfg?`$P`y_^}DXGEe7UGC|~795w=47-KlM=G%WhnTCk6 zjeyU_6D+ihU{Gm^gLR07wI*UcZ4ivM5E9IFQZUEQA*67L1g0Ff!_g<2aT|s>kY+l% zOIt5kCgLw#vXdJ|RJVf;Y7o5gy6c|NleeHvB&;FAs|9C!oCdQy6(%&5b88z zU&BW-w3dobr|lN}oW$N%WJM=5hMC9xb|)8kZ{N-WZDTEJgf-*ve6Ur~89Fb(vMjW= z%le~no`efMG3;z;^2yVdVy!*qxdn*K9^*@=By>BDdl%Z+_i)UQa^&mSE?LfBgGGg zqX9Y3q6>CRB|2FmhtVlvwghP$lJDR{8I9yHFnrQT3!UuN*7K9T-Z_GJOWKPIf4yoY zZ?KadeUghcI5tq|RGtnG$&1&(m(?M7uHiel`E9ttp1-{t%8GBtsX%i6Rq!`_r#`<4 z9iaQl`657a{@@wN=BrO)u=*)t#wL{Fa|n(hcCTIs8(Dn>Pf4+%azM_TOup{thzbLP zC?OeZ!BCOCp$mFPPOAg$NW?eMl5GwY+^a!a!YKpODMNI^Bd9y&DD5mL6pFz$%M*dL zy~NaoKgVR@vV1`#k)T{e>j>>c?+^rFYSWg3Jw2q3aZv6*9ihjaux>@$IcPDn0^1qh zY9d<369i<2c%G4B1DGd*2>0=yW^*!+9yPV$hLBvPgcqa{T^IFws*0}rP>|+65EmoOcua|;7n8>WTYU5H&ff%|^3w4P6b9u}QA8&6Hy@a|7$y#=u%BFrJ7#qP z=oVeTCj83_-z&=H2JX^KIt^lH4@qVCh2BQSm_A>KTSfh0~`}Ag4hg^^F&P1 zOd`|6gL19cPwN0S*AS28YD#p+cF;L%FMVG?Je7z~%Q>HdNi@ZlBW>!VP1NbZlN~p4 z{M3%Q$KvDJj%L$5jU2g>UJkbr%0OH;P*n_X$f0m(#>70_u0K+w)l?>_pDGbMoh5fz z`V?w}Ju4qbQa^Bngif>XAjz@C?x2UcaCC!N)@KBv>pq$uI9fr>suy~^dnJeN?M+$B zQ9O60{)vwnlCmF8lZ$qY6jJ)1E0i4yJOS*5u5V<|y|axZf;gltx|^4Sa4atkG^_Dn z)K8kBgLZb6a&ST0ZG;SbwLxo6GR11c9+?e>Z+>|)kqXeY7LN4PrO**9Pwg#q*38dr z@{O-rF#-tugUZNqDDt3#0_@!p9C=qH$fmFws~fA79Jh2TO1pdn8Ese-5h{^Gr!ZAq zNjshy^&;sWdd7<%+~Sn?Xb8on&^@(_1}KR3Ygo=MF$p>Ni?F9iwPW#h=N)7f&2ezK zk=;LqlpEDUViCc4P!bQ=sbEGfFzv*108O;W4tmHB&$wLCP)pCC!4@fsm(Y}#kW_ao zp8JJ+Hz$w2N3A%@?^M;QSndS_e2+WqG@{TH?~`%+qU#_tg(BFZ(un5R6afltauF{g z2$v_-`3jp)TgWQtSynlEf&1pK4lKc%rn@$-OwUFl{NvaHPrT7qU{$2929sTM=f7W+BgCDMopUW`=M35m^_ZuU_zX03uj1u?rU&upY_Qs;3W!Vd>AJuBvHR zQ42j|fzumX9x2-XcJr+()(8v=o;ZT->q#mPCX`A~l5!_u35hN~3QW7ACN~)cCrocF zQ9XDH#G;#kq<8&8OEY;ZI@RTegrdBCF&kDy#_}*K#I~+jvEt%T*~)lhd#p>I*`Bv# zmOi{qUu3k#@;kn#xqE|U_ZQof@`ncx;X8u#Q`hvLUi`z)HFr5z6^8ca+#a}rew?Hj z^h-Dwzp1aErT8?zFL5c+)}cb+cBcy!h*t;E@Vb`XR_`5ldrm`P#a)5Bo&Lfg)xC@8 zc%4UYRfWZSovr*kD3o`UXn0MbH_p3?^GN;|h=$iVdRtjo96?Skl0PJj*H7pRb=8H% z_d3;urS}A?3qyD3)D)K8HLR+z;`ZFC!ex7huPm$&oVG_4E(58muna{|6jiDVgEb?m zjWXzjUM2K~HrApI>VKuuAEr-KxQE)fJ5W;?x+@2aZl^Z(<_4C5cUhH>>neO{oA~b0 z`V){QzV*uY@L$1~^mR(>vrbrF8(Ci@^J{-4@5TBB#Z0{GHSa&8k7bbUkk`}5 z1CplCFWc$r#2-S(Jv$wBlp`pWPdxB1sRV+Ka-JjQ?EA_aaTHXZ=q5nL7nCnchYJ9y zjx3h^T$!e0jqr7SmLhV#{*t)#?`p+V)og=&ym+gr*=X4+hj-|tJ!(0g4Ud=OyA|_z zSyr}j+Nje-*kAn$fdi=&UtCRlRVo_%O8_*#{jW&?`Xzlo*{VM)@Yopnr1?SZnBN&7 zTcp^ujQmFb+dwn2 zAnCrg-z3TCAm)S1cA?l{8rA&T9(uQ|e`cpGX?h=A_T~&UD)&D9UDgT$zSrRTyO1|X zL@s^w2`OpnQ~&ArFb4PkZqNqvBnDqG?W^A*8odUWJ(7V&<=*%Zy<^=QG_eNPe+XqV z$$v`aH{(R|lSvGg{}Z4QPt#8%`L*h(eAX^ff_|9x&F5!9&s6`Om!tx(t3DQ{p80%E z>-&mu^5a^6Fx}KM^zR};v_WdNj%oc9gECD2P5qNdWYXVR)t^}}Nq^*uOnsx*QJ@X> z9Uxi#|BK!&>qqk8z7Li^lk8M@%TJ}sAszqmfRpflaQpN_9hurc^B+>bZBXY1w=boJ zzEimz>(_4&&7t-(a|vXWgvt*RLYW5K2rs>rz>w8M@&oLF(#sMGSebvWBw%I!S&;zG zWRmq>;o2+BQtR9cVDf#;?!>l8N=oI&n{HF%dtCU`x!Bhek&6@PrD!|b` zyIQB&^y}`Kw4BUB-<^ei59q|d9-s6YCLb0pZ<+W%3p$nGrsa6wf%HG&f2Q)Mv(SGH zI`KJzPkLP|AJz!yB@>@e7Wz`qSwE^zvnoYMD4&2XX0O$g?>pE`noLity$=8S?Ig7(C^AZKLR@2kGe8i z59sx@(#?;8^Zo?%mz7?u{#)j=WxcI*^ZUT2JpBR|@i#x^YV=tTdM3TKYI*Z}p@z?+ zS;~J>%bTBkH2j}ey7~P;!{<$eg3R)kWp2TG56oe7z)! z^DcfQEYsDld-0I|;AEEXjHUl#hB<%R$mf=8WAX)mLv>H(uv^0|REEd;Gar9uym9w^ z)qwV%BrF~P#Ua}}-Odkv0?~hzmib#fL+jN0A7>t#z0p0J%W&oQ&Ue)rD)@e2Bhwc~ z+#_W7>c&uTkd8+t8PTI8<~oI*u63WQGi4XL2hdCzbmfxiDcyJON2VHCZ_VGGmG8dD zJFoQd8}v2RED!$t+3gHsXOsjL;yRzZHstX1-FchKR<8r^_7xm%H{16MOy;W* z(?_4-qdU5e5`U7}@S*sDUPPxD&(O#D=(BwE89w?PAAO#WPG=#8PmPa0-A7L;og(h} zKKhNm@)bV%{w(x|ve3Vjh5m9D`s-Qf!?DiNi}XWhG^SrAKDuAd`B~_7S?KXB^qaEK zAIL)gcozC|S?FKSLVwjqr`X=~_cb5g-(LsoJH1Fh6!V+%=C5uO-CzEEUwJ=$u8&Sf z1%}UsKDxhrRTg?I3;otC^Z_58=B#P=K_A`U?$Ipt<39QlAD^%J=zcz@vd~}k(f#&j zlOpjNtk2>s^pKD4m#5rE_sg?H=`_s6_;2)3=_|j~N8jY5&-Br6R{G$1z28^f-|oFx z=#OWie?4S?Hs5<3`zjJx}t{{c=`hp)b!uU+<&Sp4aH}Y9HOtztu#l2iw~TUwOa1ecMN$>C@-G`RH_JW%T?fr4P2lVS3O?*c~loRPUi$3=3kV9uL(TthZ%u~dHx%C*bff` z9>!_N%@@e3*Yw4n8gipOb^H z$-&plUHOYgf2@7K3gTM@{!QRvIS&MRN(Awzg80^fX9XVSxgdA-b8Qfxr%?1DI$SwR zMt`iF1p{~YP|ZuoUAwmlynNu{c`M7^d7A|BHG=%%dFuvVI*4x^1XLM1QOv{*32kB(U5Y(lDwh4-*d;&aCY$K6*FD_y?cx{La2ku* z>ocynZp_=^%H|Gpdp}c6&)NB{431pgy2J99Qeyx5>HmA08^qD!)+TpYd`Y+XM2Bl@ zcbIST4`Utl)%<=Hq%-_x6}%7pjjA5f;Gfj-Fce;`ya&CV=Tdpbt3D?p{u}ouljwNC zf4LOj$_>EinD4(_^2gmKB0ApkUoQEtdSUWi_*Ru?J-oi^;R|><*GZ#exBqe}fAwk} zzJ>qbI$d;R`Y)H_^IhZN47`Qf@gMkmdY+u$b)4w1_IgP5Ujg1l^I< z_z=~nz3?$8Cr&u7PzIe3G6Q-3M>pz~>nOztb(A(eWbul-vA9#{&56u3*uz z6#lj1KZHM6!pCocKdkHe8t%rnJNCer>w15M4_E)WQiI>>t-BJHgs)J$RDs{4$)Fy* zx+b2E@Y@rziy7+;PgOe(hM%wCope;-~|?eZDC zqh3fk2#?bnq|U*w*LW zMg3<6{BeyhyKijgJ)wTH8u5EnZ}wUC7XMqkFaNiQxAXo4xAVH!-`&AHMYL|3Tb>GV z%aa7ZTm7&J{94sp3cPM*Uygg>6I5@*;h$)J7zfW^(dU^1&(yen1Kv^XwH$t0<8(9p z&Lp3I2mF-H^YFY4ef*#B25PU|n!l}{SE?TD{~)!wb)@jCAv z@YdRI^nwr2x-c2OvWhSN%ka(W=jrhB>Tj#ynoeS0z&}*~`3C-bF@N48@Vm4w{|^5y zpO3!?f3LRpBKp47^DfV^^6;AKpEcke<;n2jnt$5B2Wp+T6Fw=ypSTbFiGtoAf*02H zj)Hg8xcC>`*0WdOWz`>+zzb==_dYzY=FiXI$CPI`{DR7p34dPm>KXV^_arqsa%r8k zcDY^q5W6pJep3DRYQ)!9d1}G!KG&`A-!+c9!L2;~;Z~kU;8vce;Z~k$a4XLu_?w#l zzlImkc-#XoCO;3aq<)xR`zEWm+cZy=g(oUcb@)K-bL>-{El(cpi*7-DGd;c=-b3v> z2yP#vJR06u>!ZD&&(3?Un(rt7M*LRI&+ovG=JE0S;Z{FC!L5GmlXC66RzLY1M2ET6 zPieT-PYt-$PgA(nPY1ZwPfxhjkKKQE-*!!C^)n9fRzEY~RzC~iGqlfN4j-!VvK~HK z^U^kWCC!u8-`%%eIjgE)oj`nw^4kXnTl|AscM51;G%uodFAeXccCQMzc5eW;c5ex{ zcDMJ5+Ig+rdm-N1eJI@8eLURS-9EI|@>{#ViFj-G58&4BTj192`{CB^Kf#A-o%#!2 zIWcOq=*XvjVdWg8{ZDClwHiLY8vGm01C8MAwNAHz_tZSl3BE-8&wJt4zJuV_zE8rf zeJ8`MedoZfeV4$keb>RQeYeA{eZPlW`<{VY`{va=ZS`;MTM};VTNQ5Y+W>Cu+Y)|A z`+-jIa@vpef^X8eei+{06*xMcgkPcY`y9MqRUf|){;T|5xb2TO!ux4Iza3sp`;&w4 zg?fH>0{(`|e-8ekJfE(^+T}6z&rVWV!r#{O*?#bHI`1R!`s#1?yxGdR`&wVl8Hg{Y z_FVvfSMkf??)}^w9@z$u)AQ>C@Ow1APQY7hKY1QLP5bTqswcay5~}C2@T%(1 z)#3A%CmDXT`g2=&td_stF7R=>-uvJi6+aAa_4_nDRpVtke6I4p20yFzdK+F&`|@@0 zo77LX!e{Be+_&&!>gPYhduV)}gO`_Isd?JkrMvF)lz~^(J~$Eni{h_?H&g#<1Go1H zb%s~b_4b8-s(v*T{(v5jg%_&t+kF~*wEEkt@cs3C{4)3s^}~)EchNi$r|Yo# z->LGHhG)qW;TPq}@L%OA@Gs@5@K@w%@F%qo9|7N>aW?^ev*xSWaJ!$F4sWgYS`BZd zewzWmQT=u|{7$VGnegffz8$mRKdFDlX}{wxzi{-&{eGr9O2ap5{!fJ0XyD_M;r%oo zQ{aWPzNf-BsDGrv`)WQP0WYI{&II^JS{G--$7{cm4u4Mb)oS>+YWEEIBZ}V*zf#wm z2~SshWx*@xy5clGtp3+(o-YkAY4Z>Kle(&Zcsbig!Mo~tK`MN-`e7Q}em`dfe6r@} z3Gi1n56p(Ypm{YNK3(Nm4Zl(ILk9e~9`AYYu5kaTQnXgz?(Pp{b4rzqQ-SPe5KZx)$lT! z$1>mr)Q@+=)3sm9gnyuUEDL@@^HH3x!|K1k^?&$?B!69r@G5G@WVri%a(AS_UsV50 zg{NtKOoM-}a*u$I(7ZPR{(#Ck8$K!_yEw6QxYua?g>SL>AO5=X?}nFAJ!HavsP4~@ z1#hbQvDeS7{;zfah>p@42j+Y9ye|=MzxR?1pXwHq=tzNYQN5+YN9#Uz8vF)b*9iC_ zz3wmpzDo1_Z1{1_SLyJLg?u?z!)-mzfVb0l-whw4`5_bDRrgEd)bFf5?^S)4hL2G{ zOoVUL`koA*nCQ!&0=L(JQsKMQ57OXA^}J;S{E+6)3Gn4=-`Vh@d3|}(;WqEAhObaN zX28d3UfK;`lH~Je!XMDOoCRO0$8kE3)qfN1e@erzQhO!BZ_~V;4FA^ZAHG-Zl?s1b z`++q0Ijz4V;NNNfp8(&h>zWN8u69g^Ur|i`96nv;%z($K9(Kc@(Y%ofZ>;{D1%FWU zPn`O-)&F3P_tNkp*8ky!6rT+5>Mtvn0=M7CNQJl6e#z#0E6-f5cOwvgRf0dk1o+>o zx7qOKDo;B6Q$1b{pR4&Q1OAWJo!#)Y8h4rS6B-v;@HtvfST6a~beQ zHJ|T>w^#qpg#V-RXThgvK8(};$m-`at!t&>?R8y=@RKTkGQ6?cJq2#}kyGI>YyC=t zFVHw00bikhI062O_9wI9zo`GE!(Y^Xel@(7JOkd)=70EynkO^iF?kkzuC2cs-&X&2 z-?=nAQ|C>DC)oN6|MLpp@F{TneGnVQ*{A$e`yW!Jy-c0zHYR4@2NbCQazpWm&YJ8Q3|0lPv&qVlJdYlZOr2duy z-=lJ*!s}`um-z}!8`>XEfM2CNv*D+;KBmLx>HgLO7Cg@OKbjY<{`VC1^;`#@p>}Tu->dSpgU9Q6TsQbzs)wiGmVYwb^1lqX{ONGZ zzXfjj_rWdyF}UUb18(`tt3IsWEPoBS3uFyS~o>rs%OMss%QA6dWKs)FNa(Hb#TkS1#bEG!7cxB z_<&r#e$K)Nt3GpSeY5%>sd=Or{7fC6ry|_`znePnI@&MY0NS*en#u&ark)c_p;#s z*0{@~`mpvYrF~j)c1_g72%Jn z{%gZesXR^L7j6B8U(h<<72Zen*#~ard>C%!90eb(aWMt{WnSODbK#v-o^*I&mFHc! zm1h&&%JW~iweMlLwXgjihP8{e?>~sIq%*=7TfnXVbcFw-`=~wPm9@SMhBr>| z*ZUNFY7y^K;6G|zn+xw=$Hy;%_t!l2KD>a+`5F8X%`>~<$F(o|5#BSOKkr$1O|?@V z{hYOn{r_mC;4`&8R)#0(d21cGy>Fu#e2L264qisr+YNr5?xXgH_f-G1*LAJ@ug3Z7 zeH!t_6h95VS@Yf+cmbC%IzEB_mE?UpJdd7FeG7kG*L4h@r2cRQZu_B&@LgJe3+jG} zUGEarPg!^?{d_feeYIC3cvY3h-q&FHJE{M4M*N1nz8-qPYpb6Pg8!-c>Ph$!tuK?| zl?wX&bKpnRE^oo#^x?5J@bRj*&)}7nXD58E_G5?P>orbK!B49G|AF__JWx2v7tHF@ ze!sc`{CoA2KJcn)uQBlX+RwZVKcf2;YvDJ_zl2ZGyuAzWhVTw*msap}mGcgGJ9qNv=na3Vpm+Pda4TnDt+S&M zpIFz&PlZ3B_<8X6Ri8`XAFBU<2;ZoA*zUtwd6L~fqGLbe+v;`7pW*9upW!_GR@G+# z^;63~#ix&zhrb|Cg3pmRg)flb3jbLB?QVFREBy~V03W1z=1KVDs?TxoOpS}@;aBSU z&OCTW)!SnDX5D8y0slkwnFUYKKI(t)k;+q8^QhHxUp(iq=Qj1X zWW=Yd94+BjYMt!>U!Z>24W6mz3w`1C|4$8uS5-fI7H;KS2(PaB@m;w6KJZ4k`+xu4 zaSZ;O>fsOgdG+($x^Ant=~@TN!^i3MnriSk^|yNP3YvfHzMAE4q<)fu_?CKn2Yi{@ z_a690m45(yuzU{O%Krx3%D)_L<^K?F<=+gq^6!9K`M-r*`7_~G{_Ov>E^1G!H!FWZ z&9CNG{?c$Oe`UCpzc$>;-xzM?Zw0sV-v+nx4}e?whrzAcPtYCgQF9E8$lDb#N>H=Wr|kPPmo-JGhnq zC%BdW5BN6iTXJb1YS(4Y>x;tedHvOJdtP4)ZqMtlhyR{Gds&Fx44m4(|Gu^3OWKc>gO}Cw8hih^#rM?yswv{z>wNdXPZ##*dl3GV z&if4fEA0nn!tYVL{2Oln|H4Z6l%P?Lqvts)r-+T^c7@@C40| zxf@iJ{VMos<*yE3ByS48sB+v4U!!{K3}3DIH29k;&#UlTHNFH z4sO3k`UTvcNAH2J*LeI99;fo0g)=(D zr!{<|`tzM|`@PMc@N~^fqu@{JdY^;;q1S!V;THc6e3o8^S_ki+Rdj2x8@#Xb!x~P9V4}MPLXer!YZ}vRqx9hqUUQF%Y9X?C#em}gp&ifd=q~`fq@ZR$Ozz_Ih z#=d}CIrqYk*7QGc4BlGz_lh*VynZat)$m`{?zQ2Ytlr?&v`-iexBO4Rt=?9_du!hK z1U^~*HN1`H^Y7u))UVFNtvvagU0x4cv|c2_tzE8zmr{Rg1K*?i?+m|P{dN%C%Ciu@ zQR8J5+^+W%xYb*p8!o@D|EfGU!gp!j>j3|6IsfxL;C9~k;S1C*pTeiO4On#Sfd5DP zr33IoT1SqR0^Jo8O)6qX|zc)%;=tln!^THaZW#R3$US9)`Q+z%6YPI8y zaGTHD!N17m%h3(qP5mi;9*eSDhOB)Gl5>LvJDl_wqkl;-*O;I;KU?o;>x#qWfdRKGm}e^GhPz}sHsFCcew z|JBCDM_SkF!@FyqZv)?{@z@b={}0Q3@VmhrYrnPuVe8W@T2WxC!*@bM~V zYxp4L?+E{2#aQ-nFZ?~V`-AWu@{#Z)op%y^rsk!W;1@KGj>5;3ie(>X;h!o#PfP!O ztGDwS?UmIY49&K&kTd7YCazeAE5Q?dH7QGhk5YpH7*vz-*p!f9q+@p z>%1B8uIdlF;7#Lwo*&>(Yk&1O+&-_dKr8=qR-dnGUM&Z=&-thUuaejQd}H{ElHOC` z_oyFsg`d=T><9l<_4Wunx2|^_++Kg30k_XBTL3?)d2a>0gvQqf_z0DA2Rx&gzuv>} z9yPrG2G6B>h_&|LxBAae|A~kHevOYyfH$h*y&inx72aFGTUYYl34U!=@4ewkS}%sc zFUZHjzgB;k4&SeFy#U^^xIga-_&)gtcp0tZJK$T?Zx6$l*c*PA>T?MEg6eZDyqU(`ba-9W=K^>M z)z1pJ{T{*wc(VHW4tR0RV~64WRLAygCm)Q{(+D_$>9qRd9QqZxcMX_8~jqb2QH!f*;g+^ap&2)}2_&<@IL& zuYE!IA=TT}@Dc_+h%XutOo+{&{FeruAy z{;%QPG`}5!Tb`5f$vW=^cokh&p_?zS=UTeITob;snvd%Rx9j~2KC-%x&vVP=`3tC@ z6ocniKd%Tcqw?2*FDUHu-T-f^`fm^4tMd1OKO}z$UPt|NBK)}4ubJ>ywC{Zlo~8c3 z1a9x!TLV9(cKH&%D8IknJ@B2iyl27(XKb@emA@f;sOrBJ{7%(R zPxut|!;A3cDu2QDmzVP^U2j=<(>y+|I((w)Ga24p^FUkpx60oIK1%b$6L9iHP_L)G&iaQhtV+#N2j|8e>J z<6`jQnh$Hk?@~FN!hcepTi{vpRQM|O!+!8(nm2~Q4{Q96g;&Y#%l|z5OZDe@@Kfqn zi{We4pWlaHq598&w=Lk$y9>Tl`?Me6wN(D!;Da=N|AC+N>0^a%^Z#(Cb4yn()mwS^ zt*VC_@YdiY$$Z-aN$^OOVdVtT%O0=`}S;XJ&V^5?(ZUx&3zO#6Yd@by>vxa#oFb>3w7 ztOOt57XFi-2X%oTs_*0PgWs$5bQt^*UDwm_PPKiW>F~ES|Gx&0*F5t!yov6Et%I-B zym1b0^I?2Pe}1day((u#xP9N2o9n!L;l0#vzk}QF4IYI*t@-n3_%&*m-{D>B`g*U}>GJx2QPcD@{I^GO!zlYWi{%`|-zMk-(H4lt|57R#91^6tDub1IxG_GHTcTk=;;3qYIE`~o^ z%$IWoe7pL|YWO0}10TUJs$Dk0?Q?xThmTYJe+9p&@w*FNT*D?&1%q9a{$O;*TmmMQ-KSG8IdMH&OfxK^~X?PpvQW5wGPVwh-P` zc~&FO8kKWH;I5o?T*0DabKv21?Z_ejam3eBo->H=ot-@v`x`!Ao?8XBc1%;A!hyT; zyj#=%K$*Z@`By5wLf~Qf69aeg|0uqe+&y&tZAA3P9j)P`JjXi0r^p8d`Q3RxD(S!R z7~&TwehmC?`NSZPE9cD`1TzA6`Ddwrz7n{LpQ-o-fxGx4dcM3ka2J0_@yi2u@muvg z>w~~u{7ss-*9Y$6ztev2^T1vFV~XDvxQm~u^VMMTLtFn>QM2pH?97@On!I?yh%?;>!gd zUT@XFUHlfs*9hFj+xpTVa2J14@r?s_@wQ&HlDo@sL$Ri=>uz{``7pTE!#L!hR5MBz z9a9nCLU~?(>~G7eCbYpMhuBkLI5ZfxGy{ir*Z#i?{h_ zd*CkKKCg6F;4a?gpYH;9@%I0*9|_#W+x+lr;4Z$a?$@0T+{IgaU68x#a_!Yl^;YYy z=s|RtTYWZ@+q|(gAv-MA3h}*_=T>+djmJBKJg%INtDN@)?#lVOo-d>Y?&80c4~OS= z-;9otfxA3A6hAF+7ur|x^Wn?n{|?;cvG-Lj4cvt$xC)7mcLI0u_BlWw1zs>a(*LzN za2Id=aC_h`|4`-M6}XGHb@02uUA%q%;*r2zy!FFh19$O%DgWufUA*K;9a4(ku`+Se5f+{N4HZo~)f@+WIwQ9f`NKUeuH$*mt|s9)8F|17^AeomeOFQ|RO z{qXYgN8t_Sc6CQ~3_~cKJd0NqND$qsomAtIxmW zW#RVuU&-*o+RwCxSCe;w*OT85?=OE8{;Yf)e5!mJe7<}he5rg9{3Ce=e4BhH{DAy0 z{G|Mf9+%f=Ud?Ys;U(o2;Md5LMuY8ZWmazkLo@ z4|rRZe;|B}#>)u!bMo=<*W}aT4Rl@e;Wq!T3S3)??CaVrxA|mV`D~8u2;yCrwa;(e z3s2K|4+nW%{d}+b`8jY`m4h|^oDJN?*U|p}T;ML=*4fC|Pv0M*I-vX%8=?eMsjZk1OYMD(Ag{yK>q(J0S4vc=yfd zcoe=#{zTx8Y@MARxXV+yh|3avjuYJ8pYWf+T^?I!mj&+f98#W@fxCEHXV(SpntVv~ z#~m4gyLfB&9f7<2_4GXGo4{SXt!sw@ckyY8KN`4;w{`7g;4Xfi;?KyfKkQID#_o-R zqQm^Gyf8es22FW*DftcXO7eE_M)Fj6bNPMn&hjVW_sS>1AC#xVhsocCPnK_hzbM}e z-z@(T{-gXf{8xFbr>|$5Z&&z-vHXF%cC`7nMBuI+KUO=Im0No)Q2uK0#qx&m=hVI} z;4|g7!R@~H-SG3uKLBp?!05m=HDq7$WVy|^m9O>{@nR6~=G%Dv(0q7J`NANNs~>y* zxIFN1+uig{5i=U$S1A)7EdmeO5ZtZBF zix=w^1x1IsU2nYH>aCGpM=OK)da9pF@U42jQ$5Jz%4weuT0d}CPMe>b1)d$R`wZ>i z$K0(bEn75|ys+I_m(aTk1* z{CoH(@{{myd}NTv)z6jM_l^%d9CuR#ckx{m|3cs{-sb0dfxGyrihn(D7jLiMEeYJk+wak= zkmribU6*}c*cb5cbzOUdJT89;?Qahu{x`)Rga6B&JUUJVc^uj2Wu6P%<+ph_cVG8Y z|G)pY&vz^auTD{{U{E_w+6NHN_u?uaf@(|5$#-eNo|}!^*i+ULJl>ULF3c zyb=6w`Cae=u9BjoKfIKD6uhl`GQ7Y1CHP?ZLb=Vu)74Mj4&1e)&BGrA?ow1J>q;5j zk3{|i<=+BNlJA4(S3P9HOUTc_YszE&{Q0e2o>2b6aGM9N2|S#K>&a~%F5bZBZ5G5| z5z%zzZw+54Zy)4w)I#;sHSloU^$Og@|4Z@x0(bE?4?h&Ri{GsHM*?^8_Wp-afxGzQ ziXSJpdYkRO86B^{UzaZq^0@pzBxZ-lRw90d;y;9U(EXWBK^_-cv7FDdHE@^T=HWeo zXUFS)Q6{{b{6yd`kIlom`}^~__H}tyE50~9*Hu2QOyDk$&BIj!cX@^@zIxy;-sa(k zfx9Z$pz(D>;4a?g;hO_@`8O+nhrnID&BNUSckzEK{+_^Hyv@S{0(bHCD@1=q#~``& zhj>>}(J>OuW%45MwekjV z``q^C@NX2~4W3v1ydS)pd?>t*e2mlQ)?Cro^7tHN` zC^}ZdE66`Ve(Rq*5MMy?2jL~kv|i-%cEwG%?#Y-Ij{Hy@G^S7^IqV2qxcrlA9rjDT(`!u zeS6?x`|brU@y*kINz;BefFRuq4o_9&$ z?!1$g|9$wI@@;{;^TxZ1jgI|+x5yU%*RjCE^Zp*VJMY`d{}23QdBF#KJ{w2do8adr4F^}M%)FRSalJAAIzyRq<2)qMQR@QwAo zuYeELKL1nrN!9-W_#E9&`vYFJw$EQ>kpF7eJ68Mlmhk@-^l`o5E43ay4u3`U@Ctlw zZJ*~$_&K%vcksJ(|KtL^yY4eo9(;NElk@qA{lj%vb=hob0q>;8UEsa-cnExf9#4m77c8=+@C3~>pTk?o55s%Q zYwN3(-(Ih81Gm?&pMl4#BIm*D$q&Ho{^wtCyYJUTm1yO$=jmPG_Waa--^Jo>Kly)P C!U?1R literal 0 HcmV?d00001 diff --git a/scripts/TransactionOutput/TransactionInput.pm b/scripts/TransactionOutput/TransactionInput.pm new file mode 100644 index 00000000..e222c11e --- /dev/null +++ b/scripts/TransactionOutput/TransactionInput.pm @@ -0,0 +1,163 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionInput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionInput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; + +@CBitcoin::TransactionInput::EXPORT = (); +@CBitcoin::TransactionInput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + +sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + my $x = shift; + + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/TransactionOutput/TransactionInput.xs b/scripts/TransactionOutput/TransactionInput.xs new file mode 100644 index 00000000..1267e2f9 --- /dev/null +++ b/scripts/TransactionOutput/TransactionInput.xs @@ -0,0 +1,146 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + // prevOutHash is stored as a hex + CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + CBScript* script = CBNewScriptFromString(scriptstring); + + + CBTransactionInput* txinput = CBNewTransactionInput( + script, + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); + + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return txinput; +} + +CBTransactionInput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); + char* answer = obj_to_serializeddata(txinput); + //CBFreeTransactionInput(txinput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txinput->scriptObject); + //CBFreeTransactionInput(txinput); + return scriptstring; +} +char* get_prevOutHash_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + CBByteArray* data = txinput->prevOut.hash; + char * answer = bytearray_to_hexstring(data,data->length); + return answer; +} +int get_prevOutIndex_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t index = txinput->prevOut.index; + CBFreeTransactionInput(txinput); + return (int)index; +} +int get_sequence_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t sequence = txinput->sequence; + CBFreeTransactionInput(txinput); + return (int)sequence; +} + + + + +MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput + +PROTOTYPES: DISABLE + + +char * +create_txinput_obj (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) + char * scriptstring + int sequenceInt + char * prevOutHashString + int prevOutIndexInt + +char * +get_script_from_obj (serializedDataString) + char * serializedDataString + +char * +get_prevOutHash_from_obj (serializedDataString) + char * serializedDataString + +int +get_prevOutIndex_from_obj (serializedDataString) + char * serializedDataString + +int +get_sequence_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/TransactionOutput/blib/arch/.exists b/scripts/TransactionOutput/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/.exists b/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so b/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so new file mode 100755 index 0000000000000000000000000000000000000000..d4f801b268e1d84c3d43a8cc91e09236d6a2333b GIT binary patch literal 70471 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'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + +sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + my $x = shift; + + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl b/scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..8eb140c1 --- /dev/null +++ b/scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::TransactionInput'; +my $package_name = 'CBitcoin::TransactionInput'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/TransactionOutput/blib/lib/auto/CBitcoin/TransactionInput/.exists b/scripts/TransactionOutput/blib/lib/auto/CBitcoin/TransactionInput/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/man1/.exists b/scripts/TransactionOutput/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/man3/.exists b/scripts/TransactionOutput/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm b/scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm new file mode 100644 index 00000000..fdb1f942 --- /dev/null +++ b/scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm @@ -0,0 +1,133 @@ +.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16) +.\" +.\" Standard preamble: +.\" ======================================================================== +.de Sp \" Vertical space (when we can't use .PP) +.if t .sp .5v +.if n .sp +.. +.de Vb \" Begin verbatim text +.ft CW +.nf +.ne \\$1 +.. +.de Ve \" End verbatim text +.ft R +.fi +.. +.\" Set up some character translations and predefined strings. \*(-- will +.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left +.\" double quote, and \*(R" will give a right double quote. \*(C+ will +.\" give a nicer C++. Capital omega is used to do unbreakable dashes and +.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, +.\" nothing in troff, for use with C<>. +.tr \(*W- +.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' +.ie n \{\ +. ds -- \(*W- +. ds PI pi +. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch +. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch +. ds L" "" +. ds R" "" +. ds C` "" +. ds C' "" +'br\} +.el\{\ +. ds -- \|\(em\| +. ds PI \(*p +. ds L" `` +. ds R" '' +'br\} +.\" +.\" Escape single quotes in literal strings from groff's Unicode transform. +.ie \n(.g .ds Aq \(aq +.el .ds Aq ' +.\" +.\" If the F register is turned on, we'll generate index entries on stderr for +.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index +.\" entries marked with X<> in POD. Of course, you'll have to process the +.\" output yourself in some meaningful fashion. +.ie \nF \{\ +. de IX +. tm Index:\\$1\t\\n%\t"\\$2" +.. +. nr % 0 +. rr F +.\} +.el \{\ +. de IX +.. +.\} +.\" +.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). +.\" Fear. Run. Save yourself. No user-serviceable parts. +. \" fudge factors for nroff and troff +.if n \{\ +. ds #H 0 +. ds #V .8m +. ds #F .3m +. ds #[ \f1 +. ds #] \fP +.\} +.if t \{\ +. ds #H ((1u-(\\\\n(.fu%2u))*.13m) +. ds #V .6m +. ds #F 0 +. ds #[ \& +. ds #] \& +.\} +. \" simple accents for nroff and troff +.if n \{\ +. ds ' \& +. ds ` \& +. ds ^ \& +. ds , \& +. ds ~ ~ +. ds / +.\} +.if t \{\ +. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" +. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' +. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' +. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' +. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' +. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' +.\} +. \" troff and (daisy-wheel) nroff accents +.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' +.ds 8 \h'\*(#H'\(*b\h'-\*(#H' +.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] +.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' +.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' +.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] +.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] +.ds ae a\h'-(\w'a'u*4/10)'e +.ds Ae A\h'-(\w'A'u*4/10)'E +. \" corrections for vroff +.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' +.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' +. \" for low resolution devices (crt and lpr) +.if \n(.H>23 .if \n(.V>19 \ +\{\ +. ds : e +. ds 8 ss +. ds o a +. ds d- d\h'-1'\(ga +. ds D- D\h'-1'\(hy +. ds th \o'bp' +. ds Th \o'LP' +. ds ae ae +. ds Ae AE +.\} +.rm #[ #] #H #V #F C +.\" ======================================================================== +.\" +.IX Title "TransactionInput 3" +.TH TransactionInput 3 "2014-06-28" "perl v5.14.2" "User Contributed Perl Documentation" +.\" For nroff, turn off justification. Always turn off hyphenation; it makes +.\" way too many mistakes in technical documents. +.if n .ad l +.nh +.SS " \-\-\-++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." +.IX Subsection " ---++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables." diff --git a/scripts/TransactionOutput/blib/script/.exists b/scripts/TransactionOutput/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/coinx2.pl b/scripts/TransactionOutput/coinx2.pl new file mode 100644 index 00000000..5af4dc65 --- /dev/null +++ b/scripts/TransactionOutput/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::TransactionOutput'; +my $package_name = 'CBitcoin::TransactionOutput'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/TransactionOutput/old-config/Makefile.PL b/scripts/TransactionOutput/old-config/Makefile.PL new file mode 100644 index 00000000..16a984df --- /dev/null +++ b/scripts/TransactionOutput/old-config/Makefile.PL @@ -0,0 +1,26 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::TransactionOutput', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' + ,'CC' => 'c99' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/TransactionOutput/old-config/TransactionOutput.pm b/scripts/TransactionOutput/old-config/TransactionOutput.pm new file mode 100644 index 00000000..70cb44e3 --- /dev/null +++ b/scripts/TransactionOutput/old-config/TransactionOutput.pm @@ -0,0 +1,163 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionOutput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionOutput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionOutput $CBitcoin::TransactionOutput::VERSION; + +@CBitcoin::TransactionOutput::EXPORT = (); +@CBitcoin::TransactionOutput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + +sub script { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + $this->serializeddata( CBitcoin::TransactionOutput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + + my $x = shift; + + if( $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionOutput::get_prevOutHash_from_obj($x) ) ) + && $this->prevOutIndex(CBitcoin::TransactionOutput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionOutput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/TransactionOutput/pm_to_blib b/scripts/TransactionOutput/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/src/TransactionOutput.c b/scripts/TransactionOutput/src/TransactionOutput.c new file mode 100644 index 00000000..6a55ec64 --- /dev/null +++ b/scripts/TransactionOutput/src/TransactionOutput.c @@ -0,0 +1,95 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionOutput* stringToTransactionOutput(char* scriptstring, int valueInt){ + + CBScript* script = CBNewScriptFromString(scriptstring); + + CBTransactionOutput* answer = CBNewTransactionOutput((uint64_t) valueInt,script); + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return answer; +} + +CBTransactionOutput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} + +char* obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txoutput_obj(char* scriptstring, int valueInt){ + CBTransactionOutput* txoutput = stringToTransactionOutput(scriptstring,valueInt); + char* answer = obj_to_serializeddata(txoutput); + //CBFreeTransactionOutput(txoutput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txOutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} + +int get_value_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + uint64_t value = txoutput->value; + CBFreeTransactionOutput(txoutput); + return (int)value; +} + + + + From f551f1bb7f72109e4dc4b91367374ddf9b755fde Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sun, 29 Jun 2014 00:06:14 +0900 Subject: [PATCH 023/127] Got tx output working --- scripts/Script/MYMETA.json | 39 + scripts/Script/MYMETA.yml | 21 + .../blib/arch/.exists => Script/Script.bs} | 0 scripts/Script/Script.c | 312 ++++++++ scripts/Script/Script.o | Bin 0 -> 102824 bytes .../blib/arch}/.exists | 0 .../blib/arch/auto/CBitcoin/Script}/.exists | 0 .../blib/arch/auto/CBitcoin/Script/Script.so | Bin 0 -> 66139 bytes .../blib/lib/CBitcoin}/.exists | 0 scripts/Script/blib/lib/CBitcoin/Script.pm | 22 + scripts/Script/blib/lib/CBitcoin/coinx2.pl | 15 + .../blib/lib/auto/CBitcoin/Script}/.exists | 0 .../blib/man3 => Script/blib/man1}/.exists | 0 .../blib/script => Script/blib/man3}/.exists | 0 .../pm_to_blib => Script/blib/script/.exists} | 0 scripts/Script/old-config/MYMETA.json | 39 + scripts/Script/old-config/MYMETA.yml | 21 + scripts/Script/old-config/Script.bs | 0 scripts/Script/old-config/pm_to_blib | 0 scripts/Script/pm_to_blib | 0 .../MYMETA.json | 0 .../MYMETA.yml | 0 scripts/TransactionInput/TransactionInput.bs | 0 .../TransactionInput.c | 0 .../TransactionInput.o | Bin scripts/TransactionInput/blib/arch/.exists | 0 .../auto/CBitcoin/TransactionInput/.exists | 0 .../TransactionInput/TransactionInput.so | Bin .../blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/TransactionInput.pm | 0 .../blib/lib/CBitcoin/coinx2.pl | 0 .../auto/CBitcoin/TransactionInput/.exists | 0 scripts/TransactionInput/blib/man1/.exists | 0 scripts/TransactionInput/blib/man3/.exists | 0 .../blib/man3/CBitcoin::TransactionInput.3pm | 0 scripts/TransactionInput/blib/script/.exists | 0 .../TransactionInput/old-config/MYMETA.json | 39 + .../TransactionInput/old-config/MYMETA.yml | 21 + .../old-config/TransactionInput.bs | 0 .../old-config/TransactionInput.pm | 6 +- .../TransactionInput/old-config/pm_to_blib | 0 scripts/TransactionInput/pm_to_blib | 0 scripts/TransactionOutput/Makefile.PL | 2 +- scripts/TransactionOutput/Makefile.old | 384 ++++++++- .../TransactionOutput/TransactionOutput.pm | 134 ++++ .../TransactionOutput/TransactionOutput.xs | 118 +++ .../TransactionOutput/old-config/Makefile.old | 738 ++++++++++++++++++ .../old-config/TransactionOutput.pm | 75 +- .../TransactionOutput/src/TransactionOutput.c | 2 +- scripts/txinput.pm | 42 + scripts/txoutput.pm | 47 ++ 51 files changed, 1981 insertions(+), 96 deletions(-) create mode 100644 scripts/Script/MYMETA.json create mode 100644 scripts/Script/MYMETA.yml rename scripts/{TransactionOutput/blib/arch/.exists => Script/Script.bs} (100%) create mode 100644 scripts/Script/Script.c create mode 100644 scripts/Script/Script.o rename scripts/{TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput => Script/blib/arch}/.exists (100%) rename scripts/{TransactionOutput/blib/lib/CBitcoin => Script/blib/arch/auto/CBitcoin/Script}/.exists (100%) create mode 100755 scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so rename scripts/{TransactionOutput/blib/lib/auto/CBitcoin/TransactionInput => Script/blib/lib/CBitcoin}/.exists (100%) create mode 100644 scripts/Script/blib/lib/CBitcoin/Script.pm create mode 100644 scripts/Script/blib/lib/CBitcoin/coinx2.pl rename scripts/{TransactionOutput/blib/man1 => Script/blib/lib/auto/CBitcoin/Script}/.exists (100%) rename scripts/{TransactionOutput/blib/man3 => Script/blib/man1}/.exists (100%) rename scripts/{TransactionOutput/blib/script => Script/blib/man3}/.exists (100%) rename scripts/{TransactionOutput/pm_to_blib => Script/blib/script/.exists} (100%) create mode 100644 scripts/Script/old-config/MYMETA.json create mode 100644 scripts/Script/old-config/MYMETA.yml create mode 100644 scripts/Script/old-config/Script.bs create mode 100644 scripts/Script/old-config/pm_to_blib create mode 100644 scripts/Script/pm_to_blib rename scripts/{TransactionOutput => TransactionInput}/MYMETA.json (100%) rename scripts/{TransactionOutput => TransactionInput}/MYMETA.yml (100%) create mode 100644 scripts/TransactionInput/TransactionInput.bs rename scripts/{TransactionOutput => TransactionInput}/TransactionInput.c (100%) rename scripts/{TransactionOutput => TransactionInput}/TransactionInput.o (100%) create mode 100644 scripts/TransactionInput/blib/arch/.exists create mode 100644 scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/.exists rename scripts/{TransactionOutput => TransactionInput}/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so (100%) create mode 100644 scripts/TransactionInput/blib/lib/CBitcoin/.exists rename scripts/{TransactionOutput => TransactionInput}/blib/lib/CBitcoin/TransactionInput.pm (100%) rename scripts/{TransactionOutput => TransactionInput}/blib/lib/CBitcoin/coinx2.pl (100%) create mode 100644 scripts/TransactionInput/blib/lib/auto/CBitcoin/TransactionInput/.exists create mode 100644 scripts/TransactionInput/blib/man1/.exists create mode 100644 scripts/TransactionInput/blib/man3/.exists rename scripts/{TransactionOutput => TransactionInput}/blib/man3/CBitcoin::TransactionInput.3pm (100%) create mode 100644 scripts/TransactionInput/blib/script/.exists create mode 100644 scripts/TransactionInput/old-config/MYMETA.json create mode 100644 scripts/TransactionInput/old-config/MYMETA.yml create mode 100644 scripts/TransactionInput/old-config/TransactionInput.bs create mode 100644 scripts/TransactionInput/old-config/pm_to_blib create mode 100644 scripts/TransactionInput/pm_to_blib create mode 100644 scripts/TransactionOutput/TransactionOutput.pm create mode 100644 scripts/TransactionOutput/TransactionOutput.xs create mode 100644 scripts/TransactionOutput/old-config/Makefile.old create mode 100644 scripts/txinput.pm create mode 100644 scripts/txoutput.pm diff --git a/scripts/Script/MYMETA.json b/scripts/Script/MYMETA.json new file mode 100644 index 00000000..430dfb2d --- /dev/null +++ b/scripts/Script/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Script", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Script/MYMETA.yml b/scripts/Script/MYMETA.yml new file mode 100644 index 00000000..6bc437d1 --- /dev/null +++ b/scripts/Script/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Script +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/TransactionOutput/blib/arch/.exists b/scripts/Script/Script.bs similarity index 100% rename from scripts/TransactionOutput/blib/arch/.exists rename to scripts/Script/Script.bs diff --git a/scripts/Script/Script.c b/scripts/Script/Script.c new file mode 100644 index 00000000..1713e6eb --- /dev/null +++ b/scripts/Script/Script.c @@ -0,0 +1,312 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of Script.xs. Do not edit this file, edit Script.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "Script.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + +CBScript* stringToScript(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return NULL; + } +} + + +//////////////////////// perl export functions ///////////// +/* Return 1 if this script is multisig, 0 for else*/ +// this function does not work +char* whatTypeOfScript(char* scriptstring){ + CBScript * script = CBNewScriptFromString(scriptstring); + if(script == NULL){ + return "NULL"; + } + if(CBScriptIsMultisig(script)){ + return "multisig"; + } + else if(CBScriptIsP2SH(script)){ + return "p2sh"; + } + else if(CBScriptIsPubkey(script)){ + return "pubkey"; + } + else if(CBScriptIsKeyHash(script)){ + return "keyhash"; + } + else{ + return "FAILED"; + } + +} + + + +char* addressToScript(char* addressString){ + CBByteArray * addrStr = CBNewByteArrayFromString(addressString, true); + CBAddress * addr = CBNewAddressFromString(addrStr, false); + + CBScript * script = CBNewScriptPubKeyHashOutput(CBByteArrayGetData(CBGetByteArray(addr)) + 1); + + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + CBFreeScript(script); + //printf("Script = %s\n", answer); + + return answer; +} + +// CBScript * CBNewScriptPubKeyOutput(uint8_t * pubKey); +char* pubkeyToScript (char* pubKeystring){ + // convert to uint8_t * + CBByteArray * masterString = CBNewByteArrayFromString(pubKeystring, true); + CBScript * script = CBNewScriptPubKeyOutput(CBByteArrayGetData(masterString)); + CBReleaseObject(masterString); + + return scriptToString(script); +} + +//http://stackoverflow.com/questions/1503763/how-can-i-pass-an-array-to-a-c-function-in-perl-xs#1505355 +//CBNewScriptMultisigOutput(uint8_t ** pubKeys, uint8_t m, uint8_t n); +//char* multisigToScript (char** multisigConcatenated,) +char* multisigToScript(SV* pubKeyArray,int mKeysInt, int nKeysInt) { + uint8_t mKeys, nKeys; + mKeys = (uint8_t)mKeysInt; + nKeys = (uint8_t)nKeysInt; + + int n; + I32 length = 0; + if ((! SvROK(pubKeyArray)) + || (SvTYPE(SvRV(pubKeyArray)) != SVt_PVAV) + || ((length = av_len((AV *)SvRV(pubKeyArray))) < 0)) + { + return 0; + } + /* Create the array which holds the return values. */ + uint8_t** multisig = (uint8_t**)malloc(nKeysInt * sizeof(uint8_t*)); + + for (n=0; n<=length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (pubKeyArray), n, 0), l); + + CBByteArray * masterString = CBNewByteArrayFromString(fn, true); + + // this line should just assign a uint8_t * pointer + multisig[n] = CBByteArrayGetData(masterString); + + CBReleaseObject(masterString); + + } + CBScript* finalscript = CBNewScriptMultisigOutput(multisig,mKeys,nKeys); + + return scriptToString(finalscript); +} + +#line 136 "Script.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 188 "Script.c" + +XS(XS_CBitcoin__Script_whatTypeOfScript); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_whatTypeOfScript) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "scriptstring"); + { + char * scriptstring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = whatTypeOfScript(scriptstring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Script_addressToScript); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_addressToScript) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "addressString"); + { + char * addressString = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = addressToScript(addressString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Script_pubkeyToScript); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_pubkeyToScript) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "pubKeystring"); + { + char * pubKeystring = (char *)SvPV_nolen(ST(0)); + char * RETVAL; + dXSTARG; + + RETVAL = pubkeyToScript(pubKeystring); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Script_multisigToScript); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Script_multisigToScript) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 3) + croak_xs_usage(cv, "pubKeyArray, mKeysInt, nKeysInt"); + { + SV * pubKeyArray = ST(0); + int mKeysInt = (int)SvIV(ST(1)); + int nKeysInt = (int)SvIV(ST(2)); + char * RETVAL; + dXSTARG; + + RETVAL = multisigToScript(pubKeyArray, mKeysInt, nKeysInt); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__Script); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__Script) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::Script::whatTypeOfScript", XS_CBitcoin__Script_whatTypeOfScript, file); + newXS("CBitcoin::Script::addressToScript", XS_CBitcoin__Script_addressToScript, file); + newXS("CBitcoin::Script::pubkeyToScript", XS_CBitcoin__Script_pubkeyToScript, file); + newXS("CBitcoin::Script::multisigToScript", XS_CBitcoin__Script_multisigToScript, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/Script/Script.o b/scripts/Script/Script.o new file mode 100644 index 0000000000000000000000000000000000000000..473285e6a4cdcb85160f51ff778bb01e4c144abf GIT binary patch literal 102824 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 i>;r6=if$)zD`i?RRzD?`wBzRZt>t@64 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 Jv3T3p{XfC*G86y+ literal 0 HcmV?d00001 diff --git a/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/.exists b/scripts/Script/blib/arch/.exists similarity index 100% rename from scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/.exists rename to scripts/Script/blib/arch/.exists diff --git a/scripts/TransactionOutput/blib/lib/CBitcoin/.exists b/scripts/Script/blib/arch/auto/CBitcoin/Script/.exists similarity index 100% rename from scripts/TransactionOutput/blib/lib/CBitcoin/.exists rename to scripts/Script/blib/arch/auto/CBitcoin/Script/.exists diff --git a/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so b/scripts/Script/blib/arch/auto/CBitcoin/Script/Script.so new file mode 100755 index 0000000000000000000000000000000000000000..ea2a7dde22e2b3d7f573e98b2887bd6192b4a11f GIT binary patch literal 66139 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 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/TransactionOutput/blib/man1/.exists b/scripts/Script/blib/lib/auto/CBitcoin/Script/.exists similarity index 100% rename from scripts/TransactionOutput/blib/man1/.exists rename to scripts/Script/blib/lib/auto/CBitcoin/Script/.exists diff --git a/scripts/TransactionOutput/blib/man3/.exists b/scripts/Script/blib/man1/.exists similarity index 100% rename from scripts/TransactionOutput/blib/man3/.exists rename to scripts/Script/blib/man1/.exists diff --git a/scripts/TransactionOutput/blib/script/.exists b/scripts/Script/blib/man3/.exists similarity index 100% rename from scripts/TransactionOutput/blib/script/.exists rename to scripts/Script/blib/man3/.exists diff --git a/scripts/TransactionOutput/pm_to_blib b/scripts/Script/blib/script/.exists similarity index 100% rename from scripts/TransactionOutput/pm_to_blib rename to scripts/Script/blib/script/.exists diff --git a/scripts/Script/old-config/MYMETA.json b/scripts/Script/old-config/MYMETA.json new file mode 100644 index 00000000..430dfb2d --- /dev/null +++ b/scripts/Script/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Script", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Script/old-config/MYMETA.yml b/scripts/Script/old-config/MYMETA.yml new file mode 100644 index 00000000..6bc437d1 --- /dev/null +++ b/scripts/Script/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Script +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Script/old-config/Script.bs b/scripts/Script/old-config/Script.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/old-config/pm_to_blib b/scripts/Script/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Script/pm_to_blib b/scripts/Script/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/MYMETA.json b/scripts/TransactionInput/MYMETA.json similarity index 100% rename from scripts/TransactionOutput/MYMETA.json rename to scripts/TransactionInput/MYMETA.json diff --git a/scripts/TransactionOutput/MYMETA.yml b/scripts/TransactionInput/MYMETA.yml similarity index 100% rename from scripts/TransactionOutput/MYMETA.yml rename to scripts/TransactionInput/MYMETA.yml diff --git a/scripts/TransactionInput/TransactionInput.bs b/scripts/TransactionInput/TransactionInput.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/TransactionInput.c b/scripts/TransactionInput/TransactionInput.c similarity index 100% rename from scripts/TransactionOutput/TransactionInput.c rename to scripts/TransactionInput/TransactionInput.c diff --git a/scripts/TransactionOutput/TransactionInput.o b/scripts/TransactionInput/TransactionInput.o similarity index 100% rename from scripts/TransactionOutput/TransactionInput.o rename to scripts/TransactionInput/TransactionInput.o diff --git a/scripts/TransactionInput/blib/arch/.exists b/scripts/TransactionInput/blib/arch/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/.exists b/scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so b/scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so similarity index 100% rename from scripts/TransactionOutput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so rename to scripts/TransactionInput/blib/arch/auto/CBitcoin/TransactionInput/TransactionInput.so diff --git a/scripts/TransactionInput/blib/lib/CBitcoin/.exists b/scripts/TransactionInput/blib/lib/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/lib/CBitcoin/TransactionInput.pm b/scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm similarity index 100% rename from scripts/TransactionOutput/blib/lib/CBitcoin/TransactionInput.pm rename to scripts/TransactionInput/blib/lib/CBitcoin/TransactionInput.pm diff --git a/scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl b/scripts/TransactionInput/blib/lib/CBitcoin/coinx2.pl similarity index 100% rename from scripts/TransactionOutput/blib/lib/CBitcoin/coinx2.pl rename to scripts/TransactionInput/blib/lib/CBitcoin/coinx2.pl diff --git a/scripts/TransactionInput/blib/lib/auto/CBitcoin/TransactionInput/.exists b/scripts/TransactionInput/blib/lib/auto/CBitcoin/TransactionInput/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/blib/man1/.exists b/scripts/TransactionInput/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/blib/man3/.exists b/scripts/TransactionInput/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm b/scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm similarity index 100% rename from scripts/TransactionOutput/blib/man3/CBitcoin::TransactionInput.3pm rename to scripts/TransactionInput/blib/man3/CBitcoin::TransactionInput.3pm diff --git a/scripts/TransactionInput/blib/script/.exists b/scripts/TransactionInput/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/old-config/MYMETA.json b/scripts/TransactionInput/old-config/MYMETA.json new file mode 100644 index 00000000..4e3bca8a --- /dev/null +++ b/scripts/TransactionInput/old-config/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-TransactionInput", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/TransactionInput/old-config/MYMETA.yml b/scripts/TransactionInput/old-config/MYMETA.yml new file mode 100644 index 00000000..5ed5f58a --- /dev/null +++ b/scripts/TransactionInput/old-config/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-TransactionInput +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/TransactionInput/old-config/TransactionInput.bs b/scripts/TransactionInput/old-config/TransactionInput.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/old-config/TransactionInput.pm b/scripts/TransactionInput/old-config/TransactionInput.pm index e222c11e..56c67caf 100644 --- a/scripts/TransactionInput/old-config/TransactionInput.pm +++ b/scripts/TransactionInput/old-config/TransactionInput.pm @@ -148,9 +148,9 @@ sub importSerializedData { my $x = shift; if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + && $this->prevOutHash(CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x) ) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x) ) ){ $this->{serializeddata} = $x; return 1; diff --git a/scripts/TransactionInput/old-config/pm_to_blib b/scripts/TransactionInput/old-config/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionInput/pm_to_blib b/scripts/TransactionInput/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/TransactionOutput/Makefile.PL b/scripts/TransactionOutput/Makefile.PL index 2a1aeb72..16a984df 100644 --- a/scripts/TransactionOutput/Makefile.PL +++ b/scripts/TransactionOutput/Makefile.PL @@ -2,7 +2,7 @@ use ExtUtils::MakeMaker; my %options = %{ { 'TYPEMAPS' => [], - 'NAME' => 'CBitcoin::TransactionInput', + 'NAME' => 'CBitcoin::TransactionOutput', 'INC' => '../../library/include', 'LIBS' => ['-lcbitcoin.2.0', '-lcbitcoin-network.2.0', diff --git a/scripts/TransactionOutput/Makefile.old b/scripts/TransactionOutput/Makefile.old index 591e9ea5..da81d390 100644 --- a/scripts/TransactionOutput/Makefile.old +++ b/scripts/TransactionOutput/Makefile.old @@ -1,4 +1,4 @@ -# This Makefile is for the CBitcoin::TransactionInput extension to perl. +# This Makefile is for the CBitcoin::TransactionOutput extension to perl. # # It was generated automatically by MakeMaker version # 6.9 (Revision: 69000) from the contents of @@ -17,7 +17,7 @@ # INC => q[../../library/include] # LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] # MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] -# NAME => q[CBitcoin::TransactionInput] +# NAME => q[CBitcoin::TransactionOutput] # PREREQ_PM => { } # TEST_REQUIRES => { } # TYPEMAPS => [] @@ -58,8 +58,8 @@ VENDORLIBEXP = /usr/share/perl5 AR_STATIC_ARGS = cr DIRFILESEP = / DFSEP = $(DIRFILESEP) -NAME = CBitcoin::TransactionInput -NAME_SYM = CBitcoin_TransactionInput +NAME = CBitcoin::TransactionOutput +NAME_SYM = CBitcoin_TransactionOutput VERSION = 0.01 VERSION_MACRO = VERSION VERSION_SYM = 0_01 @@ -67,12 +67,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = ../blib/arch -INST_SCRIPT = ../blib/script -INST_BIN = ../blib/bin -INST_LIB = ../blib/lib -INST_MAN1DIR = ../blib/man1 -INST_MAN3DIR = ../blib/man3 +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -149,24 +149,28 @@ MM_REVISION = 69000 # PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) # DLBASE = Basename part of dynamic library. May be just equal BASEEXT. MAKE = make -FULLEXT = CBitcoin/TransactionInput -BASEEXT = TransactionInput +FULLEXT = CBitcoin/TransactionOutput +BASEEXT = TransactionOutput PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = +OBJECT = $(BASEEXT)$(OBJ_EXT) LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = -C_FILES = -O_FILES = +XS_FILES = TransactionInput.xs \ + TransactionOutput.xs +C_FILES = TransactionInput.c \ + TransactionOutput.c +O_FILES = TransactionInput.o \ + TransactionOutput.o H_FILES = MAN1PODS = -MAN3PODS = TransactionInput.pm +MAN3PODS = TransactionInput.pm \ + TransactionOutput.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -188,10 +192,16 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = TransactionInput.pm +TO_INST_PM = TransactionInput.pm \ + TransactionOutput.pm \ + coinx2.pl PM_TO_BLIB = TransactionInput.pm \ - $(INST_LIB)/CBitcoin/TransactionInput.pm + $(INST_LIB)/CBitcoin/TransactionInput.pm \ + TransactionOutput.pm \ + $(INST_LIB)/CBitcoin/TransactionOutput.pm \ + coinx2.pl \ + $(INST_LIB)/CBitcoin/coinx2.pl # --- MakeMaker platform_constants section: @@ -207,7 +217,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -253,7 +263,24 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section skipped. +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = CBitcoin-TransactionOutput +DISTVNAME = CBitcoin-TransactionOutput-0.01 + # --- MakeMaker macro section: @@ -271,7 +298,7 @@ MPOLLUTE = # --- MakeMaker const_loadlibs section: -# CBitcoin::TransactionInput might depend on some other libraries: +# CBitcoin::TransactionOutput might depend on some other libraries: # See ExtUtils::Liblist for details # EXTRALIBS = -lcbitcoin.2.0 @@ -487,9 +514,11 @@ POD2MAN = $(POD2MAN_EXE) manifypods : pure_all \ - TransactionInput.pm + TransactionInput.pm \ + TransactionOutput.pm $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ - TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) \ + TransactionOutput.pm $(INST_MAN3DIR)/CBitcoin::TransactionOutput.$(MAN3EXT) @@ -502,11 +531,17 @@ manifypods : pure_all \ # --- MakeMaker subdirs section: -# none +# The default clean, realclean and test targets in this Makefile +# have automatically been given entries for each subdir. + + +subdirs :: + $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) + # --- MakeMaker clean_subdirs section: clean_subdirs : - $(NOECHO) $(NOOP) + $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker clean section: @@ -522,7 +557,8 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml blibdirs.ts \ + MYMETA.yml TransactionInput.c \ + TransactionOutput.c blibdirs.ts \ core core.*perl.*.? \ core.[0-9] core.[0-9][0-9] \ core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ @@ -540,7 +576,8 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - $(NOECHO) $(NOOP) + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- # --- MakeMaker realclean section: @@ -570,7 +607,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml - $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionInput' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionOutput' >> META_new.yml $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml $(NOECHO) $(ECHO) ' directory:' >> META_new.yml $(NOECHO) $(ECHO) ' - t' >> META_new.yml @@ -593,7 +630,7 @@ metafile : create_distdir $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json $(NOECHO) $(ECHO) ' },' >> META_new.json - $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionInput",' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionOutput",' >> META_new.json $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json $(NOECHO) $(ECHO) ' "t",' >> META_new.json @@ -626,15 +663,91 @@ signature : cpansign -s -# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) -# --- MakeMaker dist_core section skipped. -# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" -# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -656,7 +769,117 @@ distsignature : create_distdir -# --- MakeMaker install section skipped. +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + +doc_perl_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLPRIVLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_vendor_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLVENDORLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist + # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -665,6 +888,75 @@ FORCE : # --- MakeMaker perldepend section: +PERL_HDRS = \ + $(PERL_INC)/EXTERN.h \ + $(PERL_INC)/INTERN.h \ + $(PERL_INC)/XSUB.h \ + $(PERL_INC)/av.h \ + $(PERL_INC)/bitcount.h \ + $(PERL_INC)/config.h \ + $(PERL_INC)/cop.h \ + $(PERL_INC)/cv.h \ + $(PERL_INC)/dosish.h \ + $(PERL_INC)/embed.h \ + $(PERL_INC)/embedvar.h \ + $(PERL_INC)/fakesdio.h \ + $(PERL_INC)/fakethr.h \ + $(PERL_INC)/form.h \ + $(PERL_INC)/git_version.h \ + $(PERL_INC)/gv.h \ + $(PERL_INC)/handy.h \ + $(PERL_INC)/hv.h \ + $(PERL_INC)/intrpvar.h \ + $(PERL_INC)/iperlsys.h \ + $(PERL_INC)/keywords.h \ + $(PERL_INC)/l1_char_class_tab.h \ + $(PERL_INC)/malloc_ctl.h \ + $(PERL_INC)/metaconfig.h \ + $(PERL_INC)/mg.h \ + $(PERL_INC)/mydtrace.h \ + $(PERL_INC)/nostdio.h \ + $(PERL_INC)/op.h \ + $(PERL_INC)/op_reg_common.h \ + $(PERL_INC)/opcode.h \ + $(PERL_INC)/opnames.h \ + $(PERL_INC)/overload.h \ + $(PERL_INC)/pad.h \ + $(PERL_INC)/parser.h \ + $(PERL_INC)/patchlevel-debian.h \ + $(PERL_INC)/patchlevel.h \ + $(PERL_INC)/perl.h \ + $(PERL_INC)/perlapi.h \ + $(PERL_INC)/perlio.h \ + $(PERL_INC)/perliol.h \ + $(PERL_INC)/perlsdio.h \ + $(PERL_INC)/perlsfio.h \ + $(PERL_INC)/perlvars.h \ + $(PERL_INC)/perly.h \ + $(PERL_INC)/pp.h \ + $(PERL_INC)/pp_proto.h \ + $(PERL_INC)/proto.h \ + $(PERL_INC)/reentr.h \ + $(PERL_INC)/regcharclass.h \ + $(PERL_INC)/regcomp.h \ + $(PERL_INC)/regexp.h \ + $(PERL_INC)/regnodes.h \ + $(PERL_INC)/scope.h \ + $(PERL_INC)/sv.h \ + $(PERL_INC)/thread.h \ + $(PERL_INC)/time64.h \ + $(PERL_INC)/time64_config.h \ + $(PERL_INC)/uconfig.h \ + $(PERL_INC)/unixish.h \ + $(PERL_INC)/utf8.h \ + $(PERL_INC)/utfebcdic.h \ + $(PERL_INC)/util.h \ + $(PERL_INC)/uudmap.h \ + $(PERL_INC)/warnings.h + +$(OBJECT) : $(PERL_HDRS) + +TransactionOutput.c TransactionInput.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -673,9 +965,19 @@ FORCE : # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = ../perl +MAP_TARGET = perl FULLPERL = /usr/bin/perl +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR=old-config \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= + # --- MakeMaker test section: @@ -692,7 +994,9 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) - $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' +subdirs-test :: + $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) + test_dynamic :: pure_all @@ -725,7 +1029,9 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm \ + TransactionOutput.pm $(INST_LIB)/CBitcoin/TransactionOutput.pm \ + coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/TransactionOutput/TransactionOutput.pm b/scripts/TransactionOutput/TransactionOutput.pm new file mode 100644 index 00000000..6bf10309 --- /dev/null +++ b/scripts/TransactionOutput/TransactionOutput.pm @@ -0,0 +1,134 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionOutput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionOutput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionOutput $CBitcoin::TransactionOutput::VERSION; + +@CBitcoin::TransactionOutput::EXPORT = (); +@CBitcoin::TransactionOutput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif($x->{'value'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->value($x->{'value'}); + $this->script($x->{'script'}); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + + +sub script { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub value { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + if($x =~ m/\d+/){ + $this->{value} = $x; + return $x; + } + else{ + return undef; + } + + } + else{ + return $this->{value}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + + $this->serializeddata( + CBitcoin::TransactionOutput::create_txoutput_obj( + $this->script(), + $this->value() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + + my $x = shift; + + if( + $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x) ) + && $this->value(CBitcoin::TransactionOutput::get_value_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/TransactionOutput/TransactionOutput.xs b/scripts/TransactionOutput/TransactionOutput.xs new file mode 100644 index 00000000..350b3c71 --- /dev/null +++ b/scripts/TransactionOutput/TransactionOutput.xs @@ -0,0 +1,118 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionOutput* stringToTransactionOutput(char* scriptstring, int valueInt){ + + CBScript* script = CBNewScriptFromString(scriptstring); + + CBTransactionOutput* answer = CBNewTransactionOutput((uint64_t) valueInt,script); + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return answer; +} + +CBTransactionOutput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} + +char* obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txoutput_obj(char* scriptstring, int valueInt){ + CBTransactionOutput* txoutput = stringToTransactionOutput(scriptstring,valueInt); + char* answer = obj_to_serializeddata(txoutput); + //CBFreeTransactionOutput(txoutput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} + +int get_value_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + uint64_t value = txoutput->value; + CBFreeTransactionOutput(txoutput); + return (int)value; +} + + + + + +MODULE = CBitcoin::TransactionOutput PACKAGE = CBitcoin::TransactionOutput + +PROTOTYPES: DISABLE + + +char * +create_txoutput_obj (scriptstring, valueInt) + char * scriptstring + int valueInt + +char * +get_script_from_obj (serializedDataString) + char * serializedDataString + +int +get_value_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/TransactionOutput/old-config/Makefile.old b/scripts/TransactionOutput/old-config/Makefile.old new file mode 100644 index 00000000..98aae8ad --- /dev/null +++ b/scripts/TransactionOutput/old-config/Makefile.old @@ -0,0 +1,738 @@ +# This Makefile is for the CBitcoin::TransactionOutput extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CC => q[c99] +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::TransactionOutput] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = c99 +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::TransactionOutput +NAME_SYM = CBitcoin_TransactionOutput +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/TransactionOutput +BASEEXT = TransactionOutput +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = TransactionOutput.pm + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = TransactionOutput.pm + +PM_TO_BLIB = TransactionOutput.pm \ + $(INST_LIB)/CBitcoin/TransactionOutput.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::TransactionOutput might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all \ + TransactionOutput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + TransactionOutput.pm $(INST_MAN3DIR)/CBitcoin::TransactionOutput.$(MAN3EXT) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-TransactionOutput' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-TransactionOutput",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + TransactionOutput.pm $(INST_LIB)/CBitcoin/TransactionOutput.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/TransactionOutput/old-config/TransactionOutput.pm b/scripts/TransactionOutput/old-config/TransactionOutput.pm index 70cb44e3..6bf10309 100644 --- a/scripts/TransactionOutput/old-config/TransactionOutput.pm +++ b/scripts/TransactionOutput/old-config/TransactionOutput.pm @@ -28,15 +28,12 @@ sub new { $this->importSerializedData($x->{'data'}); } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ + elsif($x->{'value'} =~ m/[0-9]+/ && defined $x->{'script'} ){ # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); + $this->value($x->{'value'}); $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); # call this function to validate the data, and get serialized data back $this->deserializeData(); } @@ -45,45 +42,13 @@ sub new { return $this; } -sub prevOutHash { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; - } -} - -sub prevOutIndex { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; - return $x; - } - else{ - return undef; - } - } - else{ - return $this->{prevOutIndex}; - } -} sub script { my $this = shift; die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; my $x = shift; if($x){ - # TODO + # TODO: validation of some sort $this->{script} = $x; return $x; } @@ -93,17 +58,22 @@ sub script { } -sub sequence { +sub value { my $this = shift; die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; my $x = shift; if($x){ - # TODO - $this->{sequence} = $x; - return $x; + if($x =~ m/\d+/){ + $this->{value} = $x; + return $x; + } + else{ + return undef; + } + } else{ - return $this->{sequence}; + return $this->{value}; } } @@ -125,11 +95,13 @@ sub serializeddata { sub deserializeData { my $this = shift; die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - $this->serializeddata( CBitcoin::TransactionOutput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); + + $this->serializeddata( + CBitcoin::TransactionOutput::create_txoutput_obj( + $this->script(), + $this->value() + ) + ); if(defined $this->serializeddata()){ return 1; } @@ -147,10 +119,9 @@ sub importSerializedData { my $x = shift; - if( $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x)) - && $this->prevOutHash(pack('H*',CBitcoin::TransactionOutput::get_prevOutHash_from_obj($x) ) ) - && $this->prevOutIndex(CBitcoin::TransactionOutput::get_prevOutIndex_from_obj($x)) - && $this->sequence(CBitcoin::TransactionOutput::get_sequence_from_obj($x)) + if( + $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x) ) + && $this->value(CBitcoin::TransactionOutput::get_value_from_obj($x) ) ){ $this->{serializeddata} = $x; return 1; diff --git a/scripts/TransactionOutput/src/TransactionOutput.c b/scripts/TransactionOutput/src/TransactionOutput.c index 6a55ec64..fd673478 100644 --- a/scripts/TransactionOutput/src/TransactionOutput.c +++ b/scripts/TransactionOutput/src/TransactionOutput.c @@ -77,7 +77,7 @@ char* create_txoutput_obj(char* scriptstring, int valueInt){ } char* get_script_from_obj(char* serializedDataString){ - CBTransactionOutput* txOutput = serializeddata_to_obj(serializedDataString); + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); char* scriptstring = scriptToString(txoutput->scriptObject); //CBFreeTransactionOutput(txoutput); return scriptstring; diff --git a/scripts/txinput.pm b/scripts/txinput.pm new file mode 100644 index 00000000..0d49a7d5 --- /dev/null +++ b/scripts/txinput.pm @@ -0,0 +1,42 @@ + use strict; + use warnings; + use DBI; + use Digest::SHA qw(sha256); + use CBitcoin::Script; + use CBitcoin::TransactionInput; +print "hello\n"; + + +my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +print "Script:$script\n"; + +#my $txinput = new CBitcoin::TransactionInput; + +my $x = { + 'prevOutHash' => '06e595b5fe42b820f7c9762e8dd8fce26bcd83d7a48b184c0017bf49b6f0b5ad' + ,'prevOutIndex' => 10 + ,'sequence' => 33 #hex('0xFFFFFFFF') + ,'script' => 'OP_DUP OP_HASH160 0xa1a2fea3e780c2d3f54acf41ea08ab580a2a620e OP_EQUALVERIFY OP_CHECKSIG' +}; +#my $txinput = CBitcoin::TransactionInput::->new($x); +$x->{'data'} = CBitcoin::TransactionInput::create_txinput_obj( + $x->{'script'} + ,$x->{'sequence'} + ,$x->{'prevOutHash'} + ,$x->{'prevOutIndex'} +); +my $y = ''; +$y = CBitcoin::TransactionInput::get_prevOutHash_from_obj($x->{'data'}); +print "PrevOutHash:$y\n"; +$y = CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x->{'data'}); +print "prevOutIndex:$y\n"; +$y = CBitcoin::TransactionInput::get_sequence_from_obj($x->{'data'}); +print "sequence:$y\n"; +print "Data:".$x->{'data'}."\n"; +$y = CBitcoin::TransactionInput::get_script_from_obj($x->{'data'}); +print "Script:$y\n"; + + + + + diff --git a/scripts/txoutput.pm b/scripts/txoutput.pm new file mode 100644 index 00000000..e8bdd4f2 --- /dev/null +++ b/scripts/txoutput.pm @@ -0,0 +1,47 @@ + use strict; + use warnings; + use DBI; + use Digest::SHA qw(sha256); + use CBitcoin::Script; + use CBitcoin::TransactionOutput; +print "hello\n"; + + +my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); +print "Script:$script\n"; + +#my $txinput = new CBitcoin::TransactionInput; +my $btcamt = 3.4049993; +my $x = { + 'value' => $btcamt*100000000 + ,'script' => $script +}; +#my $txinput = CBitcoin::TransactionInput::->new($x); +my $txoutput = CBitcoin::TransactionOutput::->new($x); + +print "Value:".($txoutput->value()/100000000)."\n"; +print "Script:".$txoutput->script()."\n"; +print "Data:".$txoutput->serializeddata()."\n"; + + +__END__ +$x->{'data'} = CBitcoin::TransactionOutput::create_txoutput_obj( + $x->{'script'} + ,$x->{'value'} +); +my $y = ''; +$y = CBitcoin::TransactionOutput::get_value_from_obj($x->{'data'}); +$y = $y/100000000; +print "Value:$y\n"; +#$y = CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x->{'data'}); +#print "prevOutIndex:$y\n"; +#$y = CBitcoin::TransactionInput::get_sequence_from_obj($x->{'data'}); +#print "sequence:$y\n"; +print "Data:".$x->{'data'}."\n"; +$y = CBitcoin::TransactionOutput::get_script_from_obj($x->{'data'}); +print "Script:$y\n"; + + + + + From 0d249845cecbb704f0bb39d0885dc07c4dbb3044 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Sun, 29 Jun 2014 00:42:21 +0900 Subject: [PATCH 024/127] added Transaction --- scripts/Transaction/Makefile.PL | 26 + scripts/Transaction/Makefile.old | 1054 +++++++++++++++++ scripts/Transaction/Transaction.pm | 130 ++ scripts/Transaction/Transaction.xs | 113 ++ scripts/Transaction/TransactionInput.bs | 0 scripts/Transaction/TransactionInput.pm | 163 +++ scripts/Transaction/TransactionInput.xs | 146 +++ scripts/Transaction/TransactionOutput.pm | 134 +++ scripts/Transaction/TransactionOutput.xs | 118 ++ scripts/Transaction/coinx2.pl | 15 + scripts/Transaction/old-config/Makefile.PL | 26 + scripts/Transaction/old-config/Makefile.old | 738 ++++++++++++ scripts/Transaction/old-config/Transaction.pm | 130 ++ scripts/Transaction/src/Transaction.c | 90 ++ 14 files changed, 2883 insertions(+) create mode 100644 scripts/Transaction/Makefile.PL create mode 100644 scripts/Transaction/Makefile.old create mode 100644 scripts/Transaction/Transaction.pm create mode 100644 scripts/Transaction/Transaction.xs create mode 100644 scripts/Transaction/TransactionInput.bs create mode 100644 scripts/Transaction/TransactionInput.pm create mode 100644 scripts/Transaction/TransactionInput.xs create mode 100644 scripts/Transaction/TransactionOutput.pm create mode 100644 scripts/Transaction/TransactionOutput.xs create mode 100644 scripts/Transaction/coinx2.pl create mode 100644 scripts/Transaction/old-config/Makefile.PL create mode 100644 scripts/Transaction/old-config/Makefile.old create mode 100644 scripts/Transaction/old-config/Transaction.pm create mode 100644 scripts/Transaction/src/Transaction.c diff --git a/scripts/Transaction/Makefile.PL b/scripts/Transaction/Makefile.PL new file mode 100644 index 00000000..f86998e9 --- /dev/null +++ b/scripts/Transaction/Makefile.PL @@ -0,0 +1,26 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::Transaction', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' + ,'CC' => 'c99' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old new file mode 100644 index 00000000..057e458a --- /dev/null +++ b/scripts/Transaction/Makefile.old @@ -0,0 +1,1054 @@ +# This Makefile is for the CBitcoin::Transaction extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CC => q[c99] +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::Transaction] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = c99 +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::Transaction +NAME_SYM = CBitcoin_Transaction +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = blib/arch +INST_SCRIPT = blib/script +INST_BIN = blib/bin +INST_LIB = blib/lib +INST_MAN1DIR = blib/man1 +INST_MAN3DIR = blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/Transaction +BASEEXT = Transaction +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = $(BASEEXT)$(OBJ_EXT) +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = Transaction.xs \ + TransactionInput.xs \ + TransactionOutput.xs +C_FILES = Transaction.c \ + TransactionInput.c \ + TransactionOutput.c +O_FILES = Transaction.o \ + TransactionInput.o \ + TransactionOutput.o +H_FILES = +MAN1PODS = +MAN3PODS = Transaction.pm \ + TransactionInput.pm \ + TransactionOutput.pm + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = Transaction.pm \ + TransactionInput.pm \ + TransactionOutput.pm \ + coinx2.pl + +PM_TO_BLIB = Transaction.pm \ + $(INST_LIB)/CBitcoin/Transaction.pm \ + TransactionInput.pm \ + $(INST_LIB)/CBitcoin/TransactionInput.pm \ + TransactionOutput.pm \ + $(INST_LIB)/CBitcoin/TransactionOutput.pm \ + coinx2.pl \ + $(INST_LIB)/CBitcoin/coinx2.pl + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section: +TAR = tar +TARFLAGS = cvf +ZIP = zip +ZIPFLAGS = -r +COMPRESS = gzip --best +SUFFIX = .gz +SHAR = shar +PREOP = $(NOECHO) $(NOOP) +POSTOP = $(NOECHO) $(NOOP) +TO_UNIX = $(NOECHO) $(NOOP) +CI = ci -u +RCS_LABEL = rcs -Nv$(VERSION_SYM): -q +DIST_CP = best +DIST_DEFAULT = tardist +DISTNAME = CBitcoin-Transaction +DISTVNAME = CBitcoin-Transaction-0.01 + + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::Transaction might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all \ + Transaction.pm \ + TransactionInput.pm \ + TransactionOutput.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + Transaction.pm $(INST_MAN3DIR)/CBitcoin::Transaction.$(MAN3EXT) \ + TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) \ + TransactionOutput.pm $(INST_MAN3DIR)/CBitcoin::TransactionOutput.$(MAN3EXT) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# The default clean, realclean and test targets in this Makefile +# have automatically been given entries for each subdir. + + +subdirs :: + $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) + + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml Transaction.c \ + TransactionInput.c TransactionOutput.c \ + blibdirs.ts core \ + core.*perl.*.? core.[0-9] \ + core.[0-9][0-9] core.[0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ + lib$(BASEEXT).def mon.out \ + perl perl$(EXE_EXT) \ + perl.exe perlmain.c \ + pm_to_blib pm_to_blib.ts \ + so_locations tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- + - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-Transaction' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-Transaction",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section: +distclean :: realclean distcheck + $(NOECHO) $(NOOP) + +distcheck : + $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck + +skipcheck : + $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck + +manifest : + $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest + +veryclean : realclean + $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old + + + +# --- MakeMaker dist_core section: + +dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) + $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ + -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- + +tardist : $(DISTVNAME).tar$(SUFFIX) + $(NOECHO) $(NOOP) + +uutardist : $(DISTVNAME).tar$(SUFFIX) + uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' + +$(DISTVNAME).tar$(SUFFIX) : distdir + $(PREOP) + $(TO_UNIX) + $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(COMPRESS) $(DISTVNAME).tar + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' + $(POSTOP) + +zipdist : $(DISTVNAME).zip + $(NOECHO) $(NOOP) + +$(DISTVNAME).zip : distdir + $(PREOP) + $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' + $(POSTOP) + +shdist : distdir + $(PREOP) + $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar + $(RM_RF) $(DISTVNAME) + $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' + $(POSTOP) + + +# --- MakeMaker distdir section: +create_distdir : + $(RM_RF) $(DISTVNAME) + $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ + -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" + +distdir : create_distdir distmeta + $(NOECHO) $(NOOP) + + + +# --- MakeMaker dist_test section: +disttest : distdir + cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL + cd $(DISTVNAME) && $(MAKE) $(PASTHRU) + cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) + + + +# --- MakeMaker dist_ci section: + +ci : + $(PERLRUN) "-MExtUtils::Manifest=maniread" \ + -e "@all = keys %{ maniread() };" \ + -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ + -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" + + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section: + +install :: pure_install doc_install + $(NOECHO) $(NOOP) + +install_perl :: pure_perl_install doc_perl_install + $(NOECHO) $(NOOP) + +install_site :: pure_site_install doc_site_install + $(NOECHO) $(NOOP) + +install_vendor :: pure_vendor_install doc_vendor_install + $(NOECHO) $(NOOP) + +pure_install :: pure_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +doc_install :: doc_$(INSTALLDIRS)_install + $(NOECHO) $(NOOP) + +pure__install : pure_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +doc__install : doc_site_install + $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site + +pure_perl_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLPRIVLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ + $(INST_BIN) $(DESTINSTALLBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(SITEARCHEXP)/auto/$(FULLEXT) + + +pure_site_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLSITELIB) \ + $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ + $(INST_BIN) $(DESTINSTALLSITEBIN) \ + $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) + $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ + $(PERL_ARCHLIB)/auto/$(FULLEXT) + +pure_vendor_install :: all + $(NOECHO) $(MOD_INSTALL) \ + read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ + write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ + $(INST_LIB) $(DESTINSTALLVENDORLIB) \ + $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ + $(INST_BIN) $(DESTINSTALLVENDORBIN) \ + $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ + $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ + $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) + + +doc_perl_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLPRIVLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_site_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLSITELIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + +doc_vendor_install :: all + $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod + -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) + -$(NOECHO) $(DOC_INSTALL) \ + "Module" "$(NAME)" \ + "installed into" "$(INSTALLVENDORLIB)" \ + LINKTYPE "$(LINKTYPE)" \ + VERSION "$(VERSION)" \ + EXE_FILES "$(EXE_FILES)" \ + >> $(DESTINSTALLARCHLIB)/perllocal.pod + + +uninstall :: uninstall_from_$(INSTALLDIRS)dirs + $(NOECHO) $(NOOP) + +uninstall_from_perldirs :: + $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist + +uninstall_from_sitedirs :: + $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist + +uninstall_from_vendordirs :: + $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist + + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: +PERL_HDRS = \ + $(PERL_INC)/EXTERN.h \ + $(PERL_INC)/INTERN.h \ + $(PERL_INC)/XSUB.h \ + $(PERL_INC)/av.h \ + $(PERL_INC)/bitcount.h \ + $(PERL_INC)/config.h \ + $(PERL_INC)/cop.h \ + $(PERL_INC)/cv.h \ + $(PERL_INC)/dosish.h \ + $(PERL_INC)/embed.h \ + $(PERL_INC)/embedvar.h \ + $(PERL_INC)/fakesdio.h \ + $(PERL_INC)/fakethr.h \ + $(PERL_INC)/form.h \ + $(PERL_INC)/git_version.h \ + $(PERL_INC)/gv.h \ + $(PERL_INC)/handy.h \ + $(PERL_INC)/hv.h \ + $(PERL_INC)/intrpvar.h \ + $(PERL_INC)/iperlsys.h \ + $(PERL_INC)/keywords.h \ + $(PERL_INC)/l1_char_class_tab.h \ + $(PERL_INC)/malloc_ctl.h \ + $(PERL_INC)/metaconfig.h \ + $(PERL_INC)/mg.h \ + $(PERL_INC)/mydtrace.h \ + $(PERL_INC)/nostdio.h \ + $(PERL_INC)/op.h \ + $(PERL_INC)/op_reg_common.h \ + $(PERL_INC)/opcode.h \ + $(PERL_INC)/opnames.h \ + $(PERL_INC)/overload.h \ + $(PERL_INC)/pad.h \ + $(PERL_INC)/parser.h \ + $(PERL_INC)/patchlevel-debian.h \ + $(PERL_INC)/patchlevel.h \ + $(PERL_INC)/perl.h \ + $(PERL_INC)/perlapi.h \ + $(PERL_INC)/perlio.h \ + $(PERL_INC)/perliol.h \ + $(PERL_INC)/perlsdio.h \ + $(PERL_INC)/perlsfio.h \ + $(PERL_INC)/perlvars.h \ + $(PERL_INC)/perly.h \ + $(PERL_INC)/pp.h \ + $(PERL_INC)/pp_proto.h \ + $(PERL_INC)/proto.h \ + $(PERL_INC)/reentr.h \ + $(PERL_INC)/regcharclass.h \ + $(PERL_INC)/regcomp.h \ + $(PERL_INC)/regexp.h \ + $(PERL_INC)/regnodes.h \ + $(PERL_INC)/scope.h \ + $(PERL_INC)/sv.h \ + $(PERL_INC)/thread.h \ + $(PERL_INC)/time64.h \ + $(PERL_INC)/time64_config.h \ + $(PERL_INC)/uconfig.h \ + $(PERL_INC)/unixish.h \ + $(PERL_INC)/utf8.h \ + $(PERL_INC)/utfebcdic.h \ + $(PERL_INC)/util.h \ + $(PERL_INC)/uudmap.h \ + $(PERL_INC)/warnings.h + +$(OBJECT) : $(PERL_HDRS) + +TransactionOutput.c Transaction.c TransactionInput.c : $(XSUBPPDEPS) + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = perl +FULLPERL = /usr/bin/perl + +$(MAP_TARGET) :: static $(MAKE_APERL_FILE) + $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ + +$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib + $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) + $(NOECHO) $(PERLRUNINST) \ + Makefile.PL DIR=old-config \ + MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ + MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + +subdirs-test :: + $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) + + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm \ + TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm \ + TransactionOutput.pm $(INST_LIB)/CBitcoin/TransactionOutput.pm \ + coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm new file mode 100644 index 00000000..ca57df21 --- /dev/null +++ b/scripts/Transaction/Transaction.pm @@ -0,0 +1,130 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Transaction; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Transaction::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; + +@CBitcoin::Transaction::EXPORT = (); +@CBitcoin::Transaction::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + else{ + # we have the data, let's get the serialized data + $x->{'lockTime'} ||= time(); # the time is not really relevant + $x->{'version'} ||= 1; + $this->lockTime($x->{'lockTime'}); + $this->version($x->{'version'}); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + + +sub lockTime { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{lockTime} = $x; + return $x; + } + else{ + return $this->{lockTime}; + } +} + + +sub version { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + $this->{version} = $x; + return $x; + + + } + else{ + return $this->{version}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + $this->serializeddata( + CBitcoin::Transaction::create_tx_obj( + $this->lockTime(), + $this->version() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + my $x = shift; + + if( + $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) + && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs new file mode 100644 index 00000000..29c4ba41 --- /dev/null +++ b/scripts/Transaction/Transaction.xs @@ -0,0 +1,113 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + + +CBTransactionOutput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransaction* tx = CBNewTransactionFromData(data); + uint32_t dlen = CBTransactionDeserialise(tx); + + //CBDestroyByteArray(data); + return tx; +} + +char* obj_to_serializeddata(CBTransaction * tx){ + CBTransactionPrepareBytes(tx); + int dlen = CBTransactionSerialise(tx,1); + CBByteArray* serializeddata = CBGetMessage(tx)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + +char* create_tx_obj(int lockTime, int version){ + CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + char* answer = obj_to_serializeddata(tx); + //CBFreeTransaction(tx); + return answer; +} +/* +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} +*/ +int get_lockTime_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t lockTime = tx->lockTime; + CBFreeTransaction(tx); + return (int)lockTime; +} + +int get_version_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t version = tx->version; + CBFreeTransaction(tx); + return (int)version; +} + + + +MODULE = CBitcoin::Transaction PACKAGE = CBitcoin::Transaction + +PROTOTYPES: DISABLE + + +char * +create_tx_obj (lockTime, version) + int lockTime + int version + +int +get_lockTime_from_obj (serializedDataString) + char * serializedDataString + +int +get_version_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/Transaction/TransactionInput.bs b/scripts/Transaction/TransactionInput.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/TransactionInput.pm b/scripts/Transaction/TransactionInput.pm new file mode 100644 index 00000000..e222c11e --- /dev/null +++ b/scripts/Transaction/TransactionInput.pm @@ -0,0 +1,163 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionInput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionInput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; + +@CBitcoin::TransactionInput::EXPORT = (); +@CBitcoin::TransactionInput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif(defined $x->{'prevOutHash'} + && $x->{'prevOutIndex'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->prevOutHash($x->{'prevOutHash'}); + $this->prevOutIndex($x->{'prevOutIndex'}); + $this->script($x->{'script'}); + $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + +sub prevOutHash { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO: do input validation here + $this->{prevOutHash} = $x; + return $x; + } + else{ + return $this->{prevOutHash}; + } +} + +sub prevOutIndex { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # make sure that this is a positive integer + if($x =~ m/[0-9]+/){ + $this->{prevOutIndex} = $x; + return $x; + } + else{ + return undef; + } + } + else{ + return $this->{prevOutIndex}; + } +} + +sub script { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub sequence { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{sequence} = $x; + return $x; + } + else{ + return $this->{sequence}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), + $this->sequence(), + $this->prevOutHash(), + $this->prevOutIndex() + )); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; + + my $x = shift; + + if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) + && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) + && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) + && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/TransactionInput.xs b/scripts/Transaction/TransactionInput.xs new file mode 100644 index 00000000..1267e2f9 --- /dev/null +++ b/scripts/Transaction/TransactionInput.xs @@ -0,0 +1,146 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + // prevOutHash is stored as a hex + CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); + CBScript* script = CBNewScriptFromString(scriptstring); + + + CBTransactionInput* txinput = CBNewTransactionInput( + script, + (uint32_t)sequenceInt, + prevOutHash, + (uint32_t)prevOutIndexInt + ); + + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return txinput; +} + +CBTransactionInput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ + CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); + char* answer = obj_to_serializeddata(txinput); + //CBFreeTransactionInput(txinput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txinput->scriptObject); + //CBFreeTransactionInput(txinput); + return scriptstring; +} +char* get_prevOutHash_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + CBByteArray* data = txinput->prevOut.hash; + char * answer = bytearray_to_hexstring(data,data->length); + return answer; +} +int get_prevOutIndex_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t index = txinput->prevOut.index; + CBFreeTransactionInput(txinput); + return (int)index; +} +int get_sequence_from_obj(char* serializedDataString){ + CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); + uint32_t sequence = txinput->sequence; + CBFreeTransactionInput(txinput); + return (int)sequence; +} + + + + +MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput + +PROTOTYPES: DISABLE + + +char * +create_txinput_obj (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) + char * scriptstring + int sequenceInt + char * prevOutHashString + int prevOutIndexInt + +char * +get_script_from_obj (serializedDataString) + char * serializedDataString + +char * +get_prevOutHash_from_obj (serializedDataString) + char * serializedDataString + +int +get_prevOutIndex_from_obj (serializedDataString) + char * serializedDataString + +int +get_sequence_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/Transaction/TransactionOutput.pm b/scripts/Transaction/TransactionOutput.pm new file mode 100644 index 00000000..6bf10309 --- /dev/null +++ b/scripts/Transaction/TransactionOutput.pm @@ -0,0 +1,134 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::TransactionOutput; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::TransactionOutput::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::TransactionOutput $CBitcoin::TransactionOutput::VERSION; + +@CBitcoin::TransactionOutput::EXPORT = (); +@CBitcoin::TransactionOutput::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + elsif($x->{'value'} =~ m/[0-9]+/ + && defined $x->{'script'} + ){ + # we have the data, let's get the serialized data + $this->value($x->{'value'}); + $this->script($x->{'script'}); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + + +sub script { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{script} = $x; + return $x; + } + else{ + return $this->{script}; + } +} + + +sub value { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + if($x =~ m/\d+/){ + $this->{value} = $x; + return $x; + } + else{ + return undef; + } + + } + else{ + return $this->{value}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + + $this->serializeddata( + CBitcoin::TransactionOutput::create_txoutput_obj( + $this->script(), + $this->value() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; + + my $x = shift; + + if( + $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x) ) + && $this->value(CBitcoin::TransactionOutput::get_value_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/TransactionOutput.xs b/scripts/Transaction/TransactionOutput.xs new file mode 100644 index 00000000..350b3c71 --- /dev/null +++ b/scripts/Transaction/TransactionOutput.xs @@ -0,0 +1,118 @@ +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +// CBScript * script = CBNewScriptFromString(scriptstring); + +CBTransactionOutput* stringToTransactionOutput(char* scriptstring, int valueInt){ + + CBScript* script = CBNewScriptFromString(scriptstring); + + CBTransactionOutput* answer = CBNewTransactionOutput((uint64_t) valueInt,script); + //CBFreeScript(script); + //CBDestroyByteArray(prevOutHash); + return answer; +} + +CBTransactionOutput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} + +char* obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) +char* create_txoutput_obj(char* scriptstring, int valueInt){ + CBTransactionOutput* txoutput = stringToTransactionOutput(scriptstring,valueInt); + char* answer = obj_to_serializeddata(txoutput); + //CBFreeTransactionOutput(txoutput); + return answer; +} + +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} + +int get_value_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + uint64_t value = txoutput->value; + CBFreeTransactionOutput(txoutput); + return (int)value; +} + + + + + +MODULE = CBitcoin::TransactionOutput PACKAGE = CBitcoin::TransactionOutput + +PROTOTYPES: DISABLE + + +char * +create_txoutput_obj (scriptstring, valueInt) + char * scriptstring + int valueInt + +char * +get_script_from_obj (serializedDataString) + char * serializedDataString + +int +get_value_from_obj (serializedDataString) + char * serializedDataString + diff --git a/scripts/Transaction/coinx2.pl b/scripts/Transaction/coinx2.pl new file mode 100644 index 00000000..a6e47d55 --- /dev/null +++ b/scripts/Transaction/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::Transaction'; +my $package_name = 'CBitcoin::Transaction'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/Transaction/old-config/Makefile.PL b/scripts/Transaction/old-config/Makefile.PL new file mode 100644 index 00000000..f86998e9 --- /dev/null +++ b/scripts/Transaction/old-config/Makefile.PL @@ -0,0 +1,26 @@ +use ExtUtils::MakeMaker; +my %options = %{ +{ + 'TYPEMAPS' => [], + 'NAME' => 'CBitcoin::Transaction', + 'INC' => '../../library/include', + 'LIBS' => ['-lcbitcoin.2.0', +'-lcbitcoin-network.2.0', +'-lcbitcoin-storage.2.0', +'-lcbitcoin-threads.2.0', +'-lpthread', +'-lcbitcoin-logging.2.0', +'-lcbitcoin-crypto.2.0', +'-lcrypto', +'-lcbitcoin.2.0', +'-lcbitcoin-file-ec.2.0', +'-lcbitcoin-rand.2.0'] + ,'MYEXTLIB' => '/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ' + ,'VERSION' => '0.01' + ,'CC' => 'c99' +} +}; +WriteMakefile(%options); + +# Remove the Makefile dependency. Causes problems on a few systems. +sub MY::makefile { '' } diff --git a/scripts/Transaction/old-config/Makefile.old b/scripts/Transaction/old-config/Makefile.old new file mode 100644 index 00000000..347ffbd8 --- /dev/null +++ b/scripts/Transaction/old-config/Makefile.old @@ -0,0 +1,738 @@ +# This Makefile is for the CBitcoin::Transaction extension to perl. +# +# It was generated automatically by MakeMaker version +# 6.9 (Revision: 69000) from the contents of +# Makefile.PL. Don't edit this file, edit Makefile.PL instead. +# +# ANY CHANGES MADE HERE WILL BE LOST! +# +# MakeMaker ARGV: () +# + +# MakeMaker Parameters: + +# BUILD_REQUIRES => { } +# CC => q[c99] +# CONFIGURE_REQUIRES => { } +# INC => q[../../library/include] +# LIBS => [q[-lcbitcoin.2.0], q[-lcbitcoin-network.2.0], q[-lcbitcoin-storage.2.0], q[-lcbitcoin-threads.2.0], q[-lpthread], q[-lcbitcoin-logging.2.0], q[-lcbitcoin-crypto.2.0], q[-lcrypto], q[-lcbitcoin.2.0], q[-lcbitcoin-file-ec.2.0], q[-lcbitcoin-rand.2.0]] +# MYEXTLIB => q[/usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so ] +# NAME => q[CBitcoin::Transaction] +# PREREQ_PM => { } +# TEST_REQUIRES => { } +# TYPEMAPS => [] +# VERSION => q[0.01] + +# --- MakeMaker post_initialize section: + + +# --- MakeMaker const_config section: + +# These definitions are from config.sh (via /usr/lib/perl/5.14/Config.pm). +# They may have been overridden via Makefile.PL or on the command line. +AR = ar +CC = c99 +CCCDLFLAGS = -fPIC +CCDLFLAGS = -Wl,-E +DLEXT = so +DLSRC = dl_dlopen.xs +EXE_EXT = +FULL_AR = /usr/bin/ar +LD = cc +LDDLFLAGS = -shared -L/usr/local/lib -fstack-protector +LDFLAGS = -fstack-protector -L/usr/local/lib +LIBC = +LIB_EXT = .a +OBJ_EXT = .o +OSNAME = linux +OSVERS = 3.2.0-4-amd64 +RANLIB = : +SITELIBEXP = /usr/local/share/perl/5.14.2 +SITEARCHEXP = /usr/local/lib/perl/5.14.2 +SO = so +VENDORARCHEXP = /usr/lib/perl5 +VENDORLIBEXP = /usr/share/perl5 + + +# --- MakeMaker constants section: +AR_STATIC_ARGS = cr +DIRFILESEP = / +DFSEP = $(DIRFILESEP) +NAME = CBitcoin::Transaction +NAME_SYM = CBitcoin_Transaction +VERSION = 0.01 +VERSION_MACRO = VERSION +VERSION_SYM = 0_01 +DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" +XS_VERSION = 0.01 +XS_VERSION_MACRO = XS_VERSION +XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 +MAN1EXT = 1p +MAN3EXT = 3pm +INSTALLDIRS = site +DESTDIR = +PREFIX = $(SITEPREFIX) +PERLPREFIX = /usr +SITEPREFIX = /usr/local +VENDORPREFIX = /usr +INSTALLPRIVLIB = /usr/share/perl/5.14 +DESTINSTALLPRIVLIB = $(DESTDIR)$(INSTALLPRIVLIB) +INSTALLSITELIB = /usr/local/share/perl/5.14.2 +DESTINSTALLSITELIB = $(DESTDIR)$(INSTALLSITELIB) +INSTALLVENDORLIB = /usr/share/perl5 +DESTINSTALLVENDORLIB = $(DESTDIR)$(INSTALLVENDORLIB) +INSTALLARCHLIB = /usr/lib/perl/5.14 +DESTINSTALLARCHLIB = $(DESTDIR)$(INSTALLARCHLIB) +INSTALLSITEARCH = /usr/local/lib/perl/5.14.2 +DESTINSTALLSITEARCH = $(DESTDIR)$(INSTALLSITEARCH) +INSTALLVENDORARCH = /usr/lib/perl5 +DESTINSTALLVENDORARCH = $(DESTDIR)$(INSTALLVENDORARCH) +INSTALLBIN = /usr/bin +DESTINSTALLBIN = $(DESTDIR)$(INSTALLBIN) +INSTALLSITEBIN = /usr/local/bin +DESTINSTALLSITEBIN = $(DESTDIR)$(INSTALLSITEBIN) +INSTALLVENDORBIN = /usr/bin +DESTINSTALLVENDORBIN = $(DESTDIR)$(INSTALLVENDORBIN) +INSTALLSCRIPT = /usr/bin +DESTINSTALLSCRIPT = $(DESTDIR)$(INSTALLSCRIPT) +INSTALLSITESCRIPT = /usr/local/bin +DESTINSTALLSITESCRIPT = $(DESTDIR)$(INSTALLSITESCRIPT) +INSTALLVENDORSCRIPT = /usr/bin +DESTINSTALLVENDORSCRIPT = $(DESTDIR)$(INSTALLVENDORSCRIPT) +INSTALLMAN1DIR = /usr/share/man/man1 +DESTINSTALLMAN1DIR = $(DESTDIR)$(INSTALLMAN1DIR) +INSTALLSITEMAN1DIR = /usr/local/man/man1 +DESTINSTALLSITEMAN1DIR = $(DESTDIR)$(INSTALLSITEMAN1DIR) +INSTALLVENDORMAN1DIR = /usr/share/man/man1 +DESTINSTALLVENDORMAN1DIR = $(DESTDIR)$(INSTALLVENDORMAN1DIR) +INSTALLMAN3DIR = /usr/share/man/man3 +DESTINSTALLMAN3DIR = $(DESTDIR)$(INSTALLMAN3DIR) +INSTALLSITEMAN3DIR = /usr/local/man/man3 +DESTINSTALLSITEMAN3DIR = $(DESTDIR)$(INSTALLSITEMAN3DIR) +INSTALLVENDORMAN3DIR = /usr/share/man/man3 +DESTINSTALLVENDORMAN3DIR = $(DESTDIR)$(INSTALLVENDORMAN3DIR) +PERL_LIB = /usr/share/perl/5.14 +PERL_ARCHLIB = /usr/lib/perl/5.14 +LIBPERL_A = libperl.a +MYEXTLIB = /usr/local/lib/libcbitcoin.2.0.so /usr/local/lib/libcbitcoin-file-no-ec.2.0.so /usr/local/lib/libcbitcoin-rand.2.0.so /usr/local/lib/perl/5.14.2/auto/File/Map/Map.so /usr/local/lib/perl/5.14.2/auto/Crypt/PBC/PBC.so /usr/local/lib/perl/5.14.2/auto/Math/BigInt/GMP/GMP.so /usr/local/lib/perl/5.14.2/auto/BerkeleyDB/BerkeleyDB.so /usr/local/lib/perl/5.14.2/auto/PerlIO/Layers/Layers.so /usr/local/lib/libcbitcoin-threads.2.0.so /usr/local/lib/libcbitcoin-network.2.0.so /usr/local/lib/libcbitcoin-file-ec.2.0.so /usr/local/lib/libcbitcoin-storage.2.0.so /usr/local/lib/libcbitcoin-crypto.2.0.so /usr/local/lib/libcbitcoin-logging.2.0.so +FIRST_MAKEFILE = Makefile +MAKEFILE_OLD = Makefile.old +MAKE_APERL_FILE = Makefile.aperl +PERLMAINCC = $(CC) +PERL_INC = /usr/lib/perl/5.14/CORE +PERL = /usr/bin/perl +FULLPERL = /usr/bin/perl +ABSPERL = $(PERL) +PERLRUN = $(PERL) +FULLPERLRUN = $(FULLPERL) +ABSPERLRUN = $(ABSPERL) +PERLRUNINST = $(PERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +FULLPERLRUNINST = $(FULLPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +ABSPERLRUNINST = $(ABSPERLRUN) "-I$(INST_ARCHLIB)" "-I$(INST_LIB)" +PERL_CORE = 0 +PERM_DIR = 755 +PERM_RW = 644 +PERM_RWX = 755 + +MAKEMAKER = /usr/local/share/perl/5.14.2/ExtUtils/MakeMaker.pm +MM_VERSION = 6.9 +MM_REVISION = 69000 + +# FULLEXT = Pathname for extension directory (eg Foo/Bar/Oracle). +# BASEEXT = Basename part of FULLEXT. May be just equal FULLEXT. (eg Oracle) +# PARENT_NAME = NAME without BASEEXT and no trailing :: (eg Foo::Bar) +# DLBASE = Basename part of dynamic library. May be just equal BASEEXT. +MAKE = make +FULLEXT = CBitcoin/Transaction +BASEEXT = Transaction +PARENT_NAME = CBitcoin +DLBASE = $(BASEEXT) +VERSION_FROM = +INC = ../../library/include +OBJECT = +LDFROM = $(OBJECT) +LINKTYPE = dynamic +BOOTDEP = + +# Handy lists of source code files: +XS_FILES = +C_FILES = +O_FILES = +H_FILES = +MAN1PODS = +MAN3PODS = Transaction.pm + +# Where is the Config information that we are using/depend on +CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h + +# Where to build things +INST_LIBDIR = $(INST_LIB)/CBitcoin +INST_ARCHLIBDIR = $(INST_ARCHLIB)/CBitcoin + +INST_AUTODIR = $(INST_LIB)/auto/$(FULLEXT) +INST_ARCHAUTODIR = $(INST_ARCHLIB)/auto/$(FULLEXT) + +INST_STATIC = $(INST_ARCHAUTODIR)/$(BASEEXT)$(LIB_EXT) +INST_DYNAMIC = $(INST_ARCHAUTODIR)/$(DLBASE).$(DLEXT) +INST_BOOT = $(INST_ARCHAUTODIR)/$(BASEEXT).bs + +# Extra linker info +EXPORT_LIST = +PERL_ARCHIVE = +PERL_ARCHIVE_AFTER = + + +TO_INST_PM = Transaction.pm + +PM_TO_BLIB = Transaction.pm \ + $(INST_LIB)/CBitcoin/Transaction.pm + + +# --- MakeMaker platform_constants section: +MM_Unix_VERSION = 6.9 +PERL_MALLOC_DEF = -DPERL_EXTMALLOC_DEF -Dmalloc=Perl_malloc -Dfree=Perl_mfree -Drealloc=Perl_realloc -Dcalloc=Perl_calloc + + +# --- MakeMaker tool_autosplit section: +# Usage: $(AUTOSPLITFILE) FileToSplit AutoDirToSplitInto +AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$ARGV[1], 0, 1, 1)' -- + + + +# --- MakeMaker tool_xsubpp section: + +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils +XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp +XSUBPPRUN = $(PERLRUN) $(XSUBPP) +XSPROTOARG = +XSUBPPDEPS = /usr/share/perl/5.14/ExtUtils/typemap $(XSUBPP) +XSUBPPARGS = -typemap /usr/share/perl/5.14/ExtUtils/typemap +XSUBPP_EXTRA_ARGS = + + +# --- MakeMaker tools_other section: +SHELL = /bin/sh +CHMOD = chmod +CP = cp +MV = mv +NOOP = $(TRUE) +NOECHO = @ +RM_F = rm -f +RM_RF = rm -rf +TEST_F = test -f +TOUCH = touch +UMASK_NULL = umask 0 +DEV_NULL = > /dev/null 2>&1 +MKPATH = $(ABSPERLRUN) -MExtUtils::Command -e 'mkpath' -- +EQUALIZE_TIMESTAMP = $(ABSPERLRUN) -MExtUtils::Command -e 'eqtime' -- +FALSE = false +TRUE = true +ECHO = echo +ECHO_N = echo -n +UNINST = 0 +VERBINST = 0 +MOD_INSTALL = $(ABSPERLRUN) -MExtUtils::Install -e 'install([ from_to => {@ARGV}, verbose => '\''$(VERBINST)'\'', uninstall_shadows => '\''$(UNINST)'\'', dir_mode => '\''$(PERM_DIR)'\'' ]);' -- +DOC_INSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'perllocal_install' -- +UNINSTALL = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'uninstall' -- +WARN_IF_OLD_PACKLIST = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'warn_if_old_packlist' -- +MACROSTART = +MACROEND = +USEMAKEFILE = -f +FIXIN = $(ABSPERLRUN) -MExtUtils::MY -e 'MY->fixin(shift)' -- +CP_NONEMPTY = $(ABSPERLRUN) -MExtUtils::Command::MM -e 'cp_nonempty' -- + + +# --- MakeMaker makemakerdflt section: +makemakerdflt : all + $(NOECHO) $(NOOP) + + +# --- MakeMaker dist section skipped. + +# --- MakeMaker macro section: + + +# --- MakeMaker depend section: + + +# --- MakeMaker cflags section: + +CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 +OPTIMIZE = -O2 -g +PERLTYPE = +MPOLLUTE = + + +# --- MakeMaker const_loadlibs section: + +# CBitcoin::Transaction might depend on some other libraries: +# See ExtUtils::Liblist for details +# +EXTRALIBS = -lcbitcoin.2.0 +LDLOADLIBS = -lcbitcoin.2.0 +BSLOADLIBS = +LD_RUN_PATH = /usr/local/lib + + +# --- MakeMaker const_cccmd section: +CCCMD = $(CC) -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) + +# --- MakeMaker post_constants section: + + +# --- MakeMaker pasthru section: + +PASTHRU = LIBPERL_A="$(LIBPERL_A)"\ + LINKTYPE="$(LINKTYPE)"\ + OPTIMIZE="$(OPTIMIZE)"\ + PREFIX="$(PREFIX)"\ + PASTHRU_INC="$(PASTHRU_INC)" + + +# --- MakeMaker special_targets section: +.SUFFIXES : .xs .c .C .cpp .i .s .cxx .cc $(OBJ_EXT) + +.PHONY: all config static dynamic test linkext manifest blibdirs clean realclean disttest distdir + + + +# --- MakeMaker c_o section: + +.c.i: + cc -E -c $(PASTHRU_INC) $(INC) \ + $(CCFLAGS) $(OPTIMIZE) \ + $(PERLTYPE) $(MPOLLUTE) $(DEFINE_VERSION) \ + $(XS_DEFINE_VERSION) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c > $*.i + +.c.s: + $(CCCMD) -S $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.c$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + +.cpp$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cpp + +.cxx$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cxx + +.cc$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.cc + +.C$(OBJ_EXT): + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.C + + +# --- MakeMaker xs_c section: + +.xs.c: + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $(XSUBPP_EXTRA_ARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + + +# --- MakeMaker xs_o section: + +.xs$(OBJ_EXT): + $(XSUBPPRUN) $(XSPROTOARG) $(XSUBPPARGS) $*.xs > $*.xsc && $(MV) $*.xsc $*.c + $(CCCMD) $(CCCDLFLAGS) "-I$(PERL_INC)" $(PASTHRU_DEFINE) $(DEFINE) $*.c + + +# --- MakeMaker top_targets section: +all :: pure_all manifypods + $(NOECHO) $(NOOP) + + +pure_all :: config pm_to_blib subdirs linkext + $(NOECHO) $(NOOP) + +subdirs :: $(MYEXTLIB) + $(NOECHO) $(NOOP) + +config :: $(FIRST_MAKEFILE) blibdirs + $(NOECHO) $(NOOP) + +help : + perldoc ExtUtils::MakeMaker + + +# --- MakeMaker blibdirs section: +blibdirs : $(INST_LIBDIR)$(DFSEP).exists $(INST_ARCHLIB)$(DFSEP).exists $(INST_AUTODIR)$(DFSEP).exists $(INST_ARCHAUTODIR)$(DFSEP).exists $(INST_BIN)$(DFSEP).exists $(INST_SCRIPT)$(DFSEP).exists $(INST_MAN1DIR)$(DFSEP).exists $(INST_MAN3DIR)$(DFSEP).exists + $(NOECHO) $(NOOP) + +# Backwards compat with 6.18 through 6.25 +blibdirs.ts : blibdirs + $(NOECHO) $(NOOP) + +$(INST_LIBDIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_LIBDIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_LIBDIR) + $(NOECHO) $(TOUCH) $(INST_LIBDIR)$(DFSEP).exists + +$(INST_ARCHLIB)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHLIB) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHLIB) + $(NOECHO) $(TOUCH) $(INST_ARCHLIB)$(DFSEP).exists + +$(INST_AUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_AUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_AUTODIR) + $(NOECHO) $(TOUCH) $(INST_AUTODIR)$(DFSEP).exists + +$(INST_ARCHAUTODIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_ARCHAUTODIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_ARCHAUTODIR) + $(NOECHO) $(TOUCH) $(INST_ARCHAUTODIR)$(DFSEP).exists + +$(INST_BIN)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_BIN) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_BIN) + $(NOECHO) $(TOUCH) $(INST_BIN)$(DFSEP).exists + +$(INST_SCRIPT)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_SCRIPT) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_SCRIPT) + $(NOECHO) $(TOUCH) $(INST_SCRIPT)$(DFSEP).exists + +$(INST_MAN1DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN1DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN1DIR) + $(NOECHO) $(TOUCH) $(INST_MAN1DIR)$(DFSEP).exists + +$(INST_MAN3DIR)$(DFSEP).exists :: Makefile.PL + $(NOECHO) $(MKPATH) $(INST_MAN3DIR) + $(NOECHO) $(CHMOD) $(PERM_DIR) $(INST_MAN3DIR) + $(NOECHO) $(TOUCH) $(INST_MAN3DIR)$(DFSEP).exists + + + +# --- MakeMaker linkext section: + +linkext :: $(LINKTYPE) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dlsyms section: + + +# --- MakeMaker dynamic_bs section: +BOOTSTRAP = $(BASEEXT).bs + +# As Mkbootstrap might not write a file (if none is required) +# we use touch to prevent make continually trying to remake it. +# The DynaLoader only reads a non-empty file. +$(BOOTSTRAP) : $(FIRST_MAKEFILE) $(BOOTDEP) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(NOECHO) $(ECHO) "Running Mkbootstrap for $(NAME) ($(BSLOADLIBS))" + $(NOECHO) $(PERLRUN) \ + "-MExtUtils::Mkbootstrap" \ + -e "Mkbootstrap('$(BASEEXT)','$(BSLOADLIBS)');" + $(NOECHO) $(TOUCH) $@ + $(CHMOD) $(PERM_RW) $@ + + +# --- MakeMaker dynamic section: + +dynamic :: $(FIRST_MAKEFILE) $(BOOTSTRAP) $(INST_DYNAMIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker dynamic_lib section: + +# This section creates the dynamically loadable $(INST_DYNAMIC) +# from $(OBJECT) and possibly $(MYEXTLIB). +ARMAYBE = : +OTHERLDFLAGS = +INST_DYNAMIC_DEP = +INST_DYNAMIC_FIX = + +$(INST_DYNAMIC): $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists $(EXPORT_LIST) $(PERL_ARCHIVE) $(PERL_ARCHIVE_AFTER) $(INST_DYNAMIC_DEP) + $(RM_F) $@ + LD_RUN_PATH="$(LD_RUN_PATH)" $(LD) $(LDDLFLAGS) $(LDFROM) $(OTHERLDFLAGS) -o $@ $(MYEXTLIB) \ + $(PERL_ARCHIVE) $(LDLOADLIBS) $(PERL_ARCHIVE_AFTER) $(EXPORT_LIST) \ + $(INST_DYNAMIC_FIX) + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(RM_RF) $(BOOTSTRAP) + - $(CP_NONEMPTY) $(BOOTSTRAP) $(INST_BOOT) $(PERM_RW) + + +# --- MakeMaker static section: + +## $(INST_PM) has been moved to the all: target. +## It remains here for awhile to allow for old usage: "make static" +static :: $(FIRST_MAKEFILE) $(INST_STATIC) + $(NOECHO) $(NOOP) + + +# --- MakeMaker static_lib section: + +$(INST_STATIC) : $(OBJECT) $(MYEXTLIB) $(INST_ARCHAUTODIR)$(DFSEP).exists + $(RM_RF) $@ + $(CP) $(MYEXTLIB) $@ + $(FULL_AR) $(AR_STATIC_ARGS) $@ $(OBJECT) && $(RANLIB) $@ + $(CHMOD) $(PERM_RWX) $@ + $(NOECHO) $(ECHO) "$(EXTRALIBS)" > $(INST_ARCHAUTODIR)/extralibs.ld + + +# --- MakeMaker manifypods section: + +POD2MAN_EXE = $(PERLRUN) "-MExtUtils::Command::MM" -e pod2man "--" +POD2MAN = $(POD2MAN_EXE) + + +manifypods : pure_all \ + Transaction.pm + $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ + Transaction.pm $(INST_MAN3DIR)/CBitcoin::Transaction.$(MAN3EXT) + + + + +# --- MakeMaker processPL section: + + +# --- MakeMaker installbin section: + + +# --- MakeMaker subdirs section: + +# none + +# --- MakeMaker clean_subdirs section: +clean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker clean section: + +# Delete temporary files but do not touch installed files. We don't delete +# the Makefile here so a later make realclean still has a makefile to use. + +clean :: clean_subdirs + - $(RM_F) \ + $(BASEEXT).bso $(BASEEXT).def \ + $(BASEEXT).exp $(BASEEXT).x \ + $(BOOTSTRAP) $(INST_ARCHAUTODIR)/extralibs.all \ + $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ + *$(LIB_EXT) *$(OBJ_EXT) \ + *perl.core MYMETA.json \ + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out + - $(RM_RF) \ + blib + $(NOECHO) $(RM_F) $(MAKEFILE_OLD) + - $(MV) $(FIRST_MAKEFILE) $(MAKEFILE_OLD) $(DEV_NULL) + + +# --- MakeMaker realclean_subdirs section: +realclean_subdirs : + $(NOECHO) $(NOOP) + + +# --- MakeMaker realclean section: +# Delete temporary files (via clean) and also delete dist files +realclean purge :: clean realclean_subdirs + - $(RM_F) \ + $(OBJECT) $(MAKEFILE_OLD) \ + $(FIRST_MAKEFILE) + - $(RM_RF) \ + $(DISTVNAME) + + +# --- MakeMaker metafile section: +metafile : create_distdir + $(NOECHO) $(ECHO) Generating META.yml + $(NOECHO) $(ECHO) '---' > META_new.yml + $(NOECHO) $(ECHO) 'abstract: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'author:' >> META_new.yml + $(NOECHO) $(ECHO) ' - unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'build_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'configure_requires:' >> META_new.yml + $(NOECHO) $(ECHO) ' ExtUtils::MakeMaker: 0' >> META_new.yml + $(NOECHO) $(ECHO) 'dynamic_config: 1' >> META_new.yml + $(NOECHO) $(ECHO) 'generated_by: '\''ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351'\''' >> META_new.yml + $(NOECHO) $(ECHO) 'license: unknown' >> META_new.yml + $(NOECHO) $(ECHO) 'meta-spec:' >> META_new.yml + $(NOECHO) $(ECHO) ' url: http://module-build.sourceforge.net/META-spec-v1.4.html' >> META_new.yml + $(NOECHO) $(ECHO) ' version: 1.4' >> META_new.yml + $(NOECHO) $(ECHO) 'name: CBitcoin-Transaction' >> META_new.yml + $(NOECHO) $(ECHO) 'no_index:' >> META_new.yml + $(NOECHO) $(ECHO) ' directory:' >> META_new.yml + $(NOECHO) $(ECHO) ' - t' >> META_new.yml + $(NOECHO) $(ECHO) ' - inc' >> META_new.yml + $(NOECHO) $(ECHO) 'requires: {}' >> META_new.yml + $(NOECHO) $(ECHO) 'version: 0.01' >> META_new.yml + -$(NOECHO) $(MV) META_new.yml $(DISTVNAME)/META.yml + $(NOECHO) $(ECHO) Generating META.json + $(NOECHO) $(ECHO) '{' > META_new.json + $(NOECHO) $(ECHO) ' "abstract" : "unknown",' >> META_new.json + $(NOECHO) $(ECHO) ' "author" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "dynamic_config" : 1,' >> META_new.json + $(NOECHO) $(ECHO) ' "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351",' >> META_new.json + $(NOECHO) $(ECHO) ' "license" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "unknown"' >> META_new.json + $(NOECHO) $(ECHO) ' ],' >> META_new.json + $(NOECHO) $(ECHO) ' "meta-spec" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "2"' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "name" : "CBitcoin-Transaction",' >> META_new.json + $(NOECHO) $(ECHO) ' "no_index" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "directory" : [' >> META_new.json + $(NOECHO) $(ECHO) ' "t",' >> META_new.json + $(NOECHO) $(ECHO) ' "inc"' >> META_new.json + $(NOECHO) $(ECHO) ' ]' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "prereqs" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "build" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "configure" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "ExtUtils::MakeMaker" : "0"' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "runtime" : {' >> META_new.json + $(NOECHO) $(ECHO) ' "requires" : {}' >> META_new.json + $(NOECHO) $(ECHO) ' }' >> META_new.json + $(NOECHO) $(ECHO) ' },' >> META_new.json + $(NOECHO) $(ECHO) ' "release_status" : "stable",' >> META_new.json + $(NOECHO) $(ECHO) ' "version" : "0.01"' >> META_new.json + $(NOECHO) $(ECHO) '}' >> META_new.json + -$(NOECHO) $(MV) META_new.json $(DISTVNAME)/META.json + + +# --- MakeMaker signature section: +signature : + cpansign -s + + +# --- MakeMaker dist_basics section skipped. + +# --- MakeMaker dist_core section skipped. + +# --- MakeMaker distdir section skipped. + +# --- MakeMaker dist_test section skipped. + +# --- MakeMaker dist_ci section skipped. + +# --- MakeMaker distmeta section: +distmeta : create_distdir metafile + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -e q{META.yml};' \ + -e 'eval { maniadd({q{META.yml} => q{Module YAML meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.yml to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'exit unless -f q{META.json};' \ + -e 'eval { maniadd({q{META.json} => q{Module JSON meta-data (added by MakeMaker)}}) }' \ + -e ' or print "Could not add META.json to MANIFEST: $$$${'\''@'\''}\n"' -- + + + +# --- MakeMaker distsignature section: +distsignature : create_distdir + $(NOECHO) cd $(DISTVNAME) && $(ABSPERLRUN) -MExtUtils::Manifest=maniadd -e 'eval { maniadd({q{SIGNATURE} => q{Public-key signature (added by MakeMaker)}}) }' \ + -e ' or print "Could not add SIGNATURE to MANIFEST: $$$${'\''@'\''}\n"' -- + $(NOECHO) cd $(DISTVNAME) && $(TOUCH) SIGNATURE + cd $(DISTVNAME) && cpansign -s + + + +# --- MakeMaker install section skipped. + +# --- MakeMaker force section: +# Phony target to force checking subdirectories. +FORCE : + $(NOECHO) $(NOOP) + + +# --- MakeMaker perldepend section: + + +# --- MakeMaker makefile section: + + +# --- MakeMaker staticmake section: + +# --- MakeMaker makeaperl section --- +MAP_TARGET = ../perl +FULLPERL = /usr/bin/perl + + +# --- MakeMaker test section: + +TEST_VERBOSE=0 +TEST_TYPE=test_$(LINKTYPE) +TEST_FILE = test.pl +TEST_FILES = +TESTDB_SW = -d + +testdb :: testdb_$(LINKTYPE) + +test :: $(TEST_TYPE) subdirs-test + +subdirs-test :: + $(NOECHO) $(NOOP) + + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' + +test_dynamic :: pure_all + +testdb_dynamic :: pure_all + PERL_DL_NONLAZY=1 $(FULLPERLRUN) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + +test_ : test_dynamic + +test_static :: pure_all $(MAP_TARGET) + +testdb_static :: pure_all $(MAP_TARGET) + PERL_DL_NONLAZY=1 ./$(MAP_TARGET) $(TESTDB_SW) "-I$(INST_LIB)" "-I$(INST_ARCHLIB)" $(TEST_FILE) + + + +# --- MakeMaker ppd section: +# Creates a PPD (Perl Package Description) for a binary distribution. +ppd : + $(NOECHO) $(ECHO) '' > $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) ' ' >> $(DISTNAME).ppd + $(NOECHO) $(ECHO) '' >> $(DISTNAME).ppd + + +# --- MakeMaker pm_to_blib section: + +pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) + $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ + Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm + $(NOECHO) $(TOUCH) pm_to_blib + + +# --- MakeMaker selfdocument section: + + +# --- MakeMaker postamble section: + + +# End. diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm new file mode 100644 index 00000000..ca57df21 --- /dev/null +++ b/scripts/Transaction/old-config/Transaction.pm @@ -0,0 +1,130 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::Transaction; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::Transaction::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; + +@CBitcoin::Transaction::EXPORT = (); +@CBitcoin::Transaction::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + + +sub new { + my $package = shift; + my $this = bless({}, $package); + + my $x = shift; + unless(ref($x) eq 'HASH'){ + return $this; + } + if(defined $x->{'data'}){ + # we have a tx input which is serialized + $this->importSerializedData($x->{'data'}); + + } + else{ + # we have the data, let's get the serialized data + $x->{'lockTime'} ||= time(); # the time is not really relevant + $x->{'version'} ||= 1; + $this->lockTime($x->{'lockTime'}); + $this->version($x->{'version'}); + # call this function to validate the data, and get serialized data back + $this->deserializeData(); + } + + + return $this; +} + + +sub lockTime { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO: validation of some sort + $this->{lockTime} = $x; + return $x; + } + else{ + return $this->{lockTime}; + } +} + + +sub version { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + $this->{version} = $x; + return $x; + + + } + else{ + return $this->{version}; + } +} + +sub serializeddata { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + if($x){ + # TODO + $this->{serializeddata} = $x; + return $x; + } + else{ + return $this->{serializeddata}; + } +} + + +sub deserializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + $this->serializeddata( + CBitcoin::Transaction::create_tx_obj( + $this->lockTime(), + $this->version() + ) + ); + if(defined $this->serializeddata()){ + return 1; + } + else{ + return 0; + } +} +=head2 +---++ importSerializedData +Call this when you want the serialized data to be split up, parsed and assigned to other private variables. +=cut +sub importSerializedData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + my $x = shift; + + if( + $this->lockTime(CBitcoin::Transaction::get_lockTime_from_obj($x) ) + && $this->version(CBitcoin::Transaction::get_version_from_obj($x) ) + ){ + $this->{serializeddata} = $x; + return 1; + } + else{ + return undef; + } +} + +1; diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c new file mode 100644 index 00000000..0c846ac0 --- /dev/null +++ b/scripts/Transaction/src/Transaction.c @@ -0,0 +1,90 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + + +CBTransactionOutput* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransaction* tx = CBNewTransactionFromData(data); + uint32_t dlen = CBTransactionDeserialise(tx); + + //CBDestroyByteArray(data); + return tx; +} + +char* obj_to_serializeddata(CBTransaction * tx){ + CBTransactionPrepareBytes(tx); + int dlen = CBTransactionSerialise(tx,1); + CBByteArray* serializeddata = CBGetMessage(tx)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + + + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + +char* create_tx_obj(int lockTime, int version){ + CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + char* answer = obj_to_serializeddata(tx); + //CBFreeTransaction(tx); + return answer; +} +/* +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} +*/ +int get_lockTime_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t lockTime = tx->lockTime; + CBFreeTransaction(tx); + return (int)lockTime; +} + +int get_version_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t version = tx->version; + CBFreeTransaction(tx); + return (int)version; +} + + From 46dbe62d85f32b5843215810ff45b0896bac6dd2 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 09:56:27 +0900 Subject: [PATCH 025/127] added some tx functions --- scripts/Transaction/old-config/Transaction.pm | 88 +++++++++++++++++-- 1 file changed, 82 insertions(+), 6 deletions(-) diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index ca57df21..bb3b77a4 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use CBitcoin::TransactionInput; + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,11 +16,14 @@ DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - +=head2 +---++ constructors +=cut sub new { my $package = shift; my $this = bless({}, $package); - + $this->{inputs} = []; + $this->{outputs} = []; my $x = shift; unless(ref($x) eq 'HASH'){ return $this; @@ -34,14 +39,14 @@ sub new { $x->{'version'} ||= 1; $this->lockTime($x->{'lockTime'}); $this->version($x->{'version'}); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); } return $this; } - +=head2 +---++ variable accessors +=cut sub lockTime { my $this = shift; @@ -105,8 +110,79 @@ sub deserializeData { return 0; } } + =head2 ----++ importSerializedData +---++ methods +=cut +sub addInput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'prevOutHash'} + && $x->{'prevOutIndex'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addTxInput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionInput'){ + $y = $x; + } + else{ + die "insufficient variables to use addTxInput function\n"; + } + push(@{$this->{inputs}},$y); + return scalar(@{$this->{inputs}}); +} + +sub numOfInputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{inputs}}); +} + + +sub addOutput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'value'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addOutput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ + $y = $x; + } + else{ + die "insufficient variables to use addOutput function\n"; + } + push(@{$this->{outputs}},$y); + return scalar(@{$this->{outputs}}); +} + +sub numOfOutputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{outputs}}); +} +=head3 +---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables. =cut sub importSerializedData { From b923c1d5b15a6f331526c964825ad1c1d9fccaa5 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 12:05:38 +0900 Subject: [PATCH 026/127] redid create_obj function --- scripts/Transaction/Transaction.pm | 88 +++++++++- scripts/Transaction/TransactionInput.bs | 0 scripts/Transaction/TransactionInput.pm | 163 ------------------ scripts/Transaction/TransactionInput.xs | 146 ---------------- scripts/Transaction/TransactionOutput.pm | 134 -------------- scripts/Transaction/TransactionOutput.xs | 118 ------------- scripts/Transaction/old-config/Transaction.pm | 39 ++++- scripts/Transaction/src/Transaction.c | 82 ++++++++- 8 files changed, 200 insertions(+), 570 deletions(-) delete mode 100644 scripts/Transaction/TransactionInput.bs delete mode 100644 scripts/Transaction/TransactionInput.pm delete mode 100644 scripts/Transaction/TransactionInput.xs delete mode 100644 scripts/Transaction/TransactionOutput.pm delete mode 100644 scripts/Transaction/TransactionOutput.xs diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm index ca57df21..bb3b77a4 100644 --- a/scripts/Transaction/Transaction.pm +++ b/scripts/Transaction/Transaction.pm @@ -1,6 +1,8 @@ ## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) package CBitcoin::Transaction; +use CBitcoin::TransactionInput; + require Exporter; *import = \&Exporter::import; require DynaLoader; @@ -14,11 +16,14 @@ DynaLoader::bootstrap CBitcoin::Transaction $CBitcoin::Transaction::VERSION; sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - +=head2 +---++ constructors +=cut sub new { my $package = shift; my $this = bless({}, $package); - + $this->{inputs} = []; + $this->{outputs} = []; my $x = shift; unless(ref($x) eq 'HASH'){ return $this; @@ -34,14 +39,14 @@ sub new { $x->{'version'} ||= 1; $this->lockTime($x->{'lockTime'}); $this->version($x->{'version'}); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); } return $this; } - +=head2 +---++ variable accessors +=cut sub lockTime { my $this = shift; @@ -105,8 +110,79 @@ sub deserializeData { return 0; } } + =head2 ----++ importSerializedData +---++ methods +=cut +sub addInput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'prevOutHash'} + && $x->{'prevOutIndex'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addTxInput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionInput'){ + $y = $x; + } + else{ + die "insufficient variables to use addTxInput function\n"; + } + push(@{$this->{inputs}},$y); + return scalar(@{$this->{inputs}}); +} + +sub numOfInputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{inputs}}); +} + + +sub addOutput { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my $x = shift; + my $y; + if(ref($x) eq 'HASH'){ + # we need script, prevOutHash, prevOutIndex + if( + $x->{'value'} + && $x->{'script'} + ){ + $y = new CBitcoin::TransactionInput($x); + } + else{ + die "hash has insufficient information for use in addOutput\n"; + } + } + elsif(ref($x) eq 'CBitcoin::TransactionOutput'){ + $y = $x; + } + else{ + die "insufficient variables to use addOutput function\n"; + } + push(@{$this->{outputs}},$y); + return scalar(@{$this->{outputs}}); +} + +sub numOfOutputs { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + return scalar(@{$this->{outputs}}); +} +=head3 +---+++ importSerializedData Call this when you want the serialized data to be split up, parsed and assigned to other private variables. =cut sub importSerializedData { diff --git a/scripts/Transaction/TransactionInput.bs b/scripts/Transaction/TransactionInput.bs deleted file mode 100644 index e69de29b..00000000 diff --git a/scripts/Transaction/TransactionInput.pm b/scripts/Transaction/TransactionInput.pm deleted file mode 100644 index e222c11e..00000000 --- a/scripts/Transaction/TransactionInput.pm +++ /dev/null @@ -1,163 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::TransactionInput; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::TransactionInput::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::TransactionInput $CBitcoin::TransactionInput::VERSION; - -@CBitcoin::TransactionInput::EXPORT = (); -@CBitcoin::TransactionInput::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - - -sub new { - my $package = shift; - my $this = bless({}, $package); - - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif(defined $x->{'prevOutHash'} - && $x->{'prevOutIndex'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->prevOutHash($x->{'prevOutHash'}); - $this->prevOutIndex($x->{'prevOutIndex'}); - $this->script($x->{'script'}); - $this->sequence(hex('0xFFFFFFFF')) unless defined $this->sequence(); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } - - - return $this; -} - -sub prevOutHash { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO: do input validation here - $this->{prevOutHash} = $x; - return $x; - } - else{ - return $this->{prevOutHash}; - } -} - -sub prevOutIndex { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # make sure that this is a positive integer - if($x =~ m/[0-9]+/){ - $this->{prevOutIndex} = $x; - return $x; - } - else{ - return undef; - } - } - else{ - return $this->{prevOutIndex}; - } -} - -sub script { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } -} - - -sub sequence { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{sequence} = $x; - return $x; - } - else{ - return $this->{sequence}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - $this->serializeddata( CBitcoin::TransactionInput::create_txinput_obj($this->script(), - $this->sequence(), - $this->prevOutHash(), - $this->prevOutIndex() - )); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } -} -=head2 ----++ importSerializedData -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. -=cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionInput type" unless ref($this) eq 'CBitcoin::TransactionInput'; - - my $x = shift; - - if( $this->script(CBitcoin::TransactionInput::get_script_from_obj($x)) - && $this->prevOutHash(pack('H*',CBitcoin::TransactionInput::get_prevOutHash_from_obj($x) ) ) - && $this->prevOutIndex(CBitcoin::TransactionInput::get_prevOutIndex_from_obj($x)) - && $this->sequence(CBitcoin::TransactionInput::get_sequence_from_obj($x)) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } -} - -1; diff --git a/scripts/Transaction/TransactionInput.xs b/scripts/Transaction/TransactionInput.xs deleted file mode 100644 index 1267e2f9..00000000 --- a/scripts/Transaction/TransactionInput.xs +++ /dev/null @@ -1,146 +0,0 @@ -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -// print CBByteArray to hex string -char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ - char* answer = malloc(dlen*sizeof(char*)); - CBByteArrayToString(serializeddata, 0, dlen, answer, 0); - return answer; -} -CBByteArray* hexstring_to_bytearray(char* hexstring){ - CBByteArray* answer = CBNewByteArrayFromHex(hexstring); - return answer; -} - -//bool CBInitScriptFromString(CBScript * self, char * string) -char* scriptToString(CBScript* script){ - char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); - CBScriptToString(script, answer); - return answer; - -} -// CBScript * script = CBNewScriptFromString(scriptstring); - -CBTransactionInput* stringToTransactionInput(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ - // prevOutHash is stored as a hex - CBByteArray* prevOutHash = CBNewByteArrayFromHex(prevOutHashString); - CBScript* script = CBNewScriptFromString(scriptstring); - - - CBTransactionInput* txinput = CBNewTransactionInput( - script, - (uint32_t)sequenceInt, - prevOutHash, - (uint32_t)prevOutIndexInt - ); - - //CBFreeScript(script); - //CBDestroyByteArray(prevOutHash); - return txinput; -} - -CBTransactionInput* serializeddata_to_obj(char* datastring){ - - CBByteArray* data = hexstring_to_bytearray(datastring); - - CBTransactionInput* txinput = CBNewTransactionInputFromData(data); - int dlen = (int)CBTransactionInputDeserialise(txinput); - - //CBTransactionInputDeserialise(txinput); - //CBDestroyByteArray(data); - return txinput; -} - -char* obj_to_serializeddata(CBTransactionInput * txinput){ - CBTransactionInputPrepareBytes(txinput); - int dlen = CBTransactionInputSerialise(txinput); - CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; - - char* answer = bytearray_to_hexstring(serializeddata,dlen); - - return answer; -} - - - -//////////////////////// perl export functions ///////////// -//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) -char* create_txinput_obj(char* scriptstring, int sequenceInt, char* prevOutHashString, int prevOutIndexInt){ - CBTransactionInput* txinput = stringToTransactionInput(scriptstring,sequenceInt,prevOutHashString,prevOutIndexInt); - char* answer = obj_to_serializeddata(txinput); - //CBFreeTransactionInput(txinput); - return answer; -} - -char* get_script_from_obj(char* serializedDataString){ - CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); - char* scriptstring = scriptToString(txinput->scriptObject); - //CBFreeTransactionInput(txinput); - return scriptstring; -} -char* get_prevOutHash_from_obj(char* serializedDataString){ - CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); - CBByteArray* data = txinput->prevOut.hash; - char * answer = bytearray_to_hexstring(data,data->length); - return answer; -} -int get_prevOutIndex_from_obj(char* serializedDataString){ - CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); - uint32_t index = txinput->prevOut.index; - CBFreeTransactionInput(txinput); - return (int)index; -} -int get_sequence_from_obj(char* serializedDataString){ - CBTransactionInput* txinput = serializeddata_to_obj(serializedDataString); - uint32_t sequence = txinput->sequence; - CBFreeTransactionInput(txinput); - return (int)sequence; -} - - - - -MODULE = CBitcoin::TransactionInput PACKAGE = CBitcoin::TransactionInput - -PROTOTYPES: DISABLE - - -char * -create_txinput_obj (scriptstring, sequenceInt, prevOutHashString, prevOutIndexInt) - char * scriptstring - int sequenceInt - char * prevOutHashString - int prevOutIndexInt - -char * -get_script_from_obj (serializedDataString) - char * serializedDataString - -char * -get_prevOutHash_from_obj (serializedDataString) - char * serializedDataString - -int -get_prevOutIndex_from_obj (serializedDataString) - char * serializedDataString - -int -get_sequence_from_obj (serializedDataString) - char * serializedDataString - diff --git a/scripts/Transaction/TransactionOutput.pm b/scripts/Transaction/TransactionOutput.pm deleted file mode 100644 index 6bf10309..00000000 --- a/scripts/Transaction/TransactionOutput.pm +++ /dev/null @@ -1,134 +0,0 @@ -## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) -package CBitcoin::TransactionOutput; - -require Exporter; -*import = \&Exporter::import; -require DynaLoader; - -$CBitcoin::TransactionOutput::VERSION = '0.01'; - -DynaLoader::bootstrap CBitcoin::TransactionOutput $CBitcoin::TransactionOutput::VERSION; - -@CBitcoin::TransactionOutput::EXPORT = (); -@CBitcoin::TransactionOutput::EXPORT_OK = (); - -sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking - - -sub new { - my $package = shift; - my $this = bless({}, $package); - - my $x = shift; - unless(ref($x) eq 'HASH'){ - return $this; - } - if(defined $x->{'data'}){ - # we have a tx input which is serialized - $this->importSerializedData($x->{'data'}); - - } - elsif($x->{'value'} =~ m/[0-9]+/ - && defined $x->{'script'} - ){ - # we have the data, let's get the serialized data - $this->value($x->{'value'}); - $this->script($x->{'script'}); - # call this function to validate the data, and get serialized data back - $this->deserializeData(); - } - - - return $this; -} - - -sub script { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # TODO: validation of some sort - $this->{script} = $x; - return $x; - } - else{ - return $this->{script}; - } -} - - -sub value { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - if($x =~ m/\d+/){ - $this->{value} = $x; - return $x; - } - else{ - return undef; - } - - } - else{ - return $this->{value}; - } -} - -sub serializeddata { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - my $x = shift; - if($x){ - # TODO - $this->{serializeddata} = $x; - return $x; - } - else{ - return $this->{serializeddata}; - } -} - - -sub deserializeData { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - - $this->serializeddata( - CBitcoin::TransactionOutput::create_txoutput_obj( - $this->script(), - $this->value() - ) - ); - if(defined $this->serializeddata()){ - return 1; - } - else{ - return 0; - } -} -=head2 ----++ importSerializedData -Call this when you want the serialized data to be split up, parsed and assigned to other private variables. -=cut -sub importSerializedData { - my $this = shift; - die "not correct TransactionOutput type" unless ref($this) eq 'CBitcoin::TransactionOutput'; - - my $x = shift; - - if( - $this->script(CBitcoin::TransactionOutput::get_script_from_obj($x) ) - && $this->value(CBitcoin::TransactionOutput::get_value_from_obj($x) ) - ){ - $this->{serializeddata} = $x; - return 1; - } - else{ - return undef; - } -} - -1; diff --git a/scripts/Transaction/TransactionOutput.xs b/scripts/Transaction/TransactionOutput.xs deleted file mode 100644 index 350b3c71..00000000 --- a/scripts/Transaction/TransactionOutput.xs +++ /dev/null @@ -1,118 +0,0 @@ -#include "EXTERN.h" -#include "perl.h" -#include "XSUB.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - - -// print CBByteArray to hex string -char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ - char* answer = malloc(dlen*sizeof(char*)); - CBByteArrayToString(serializeddata, 0, dlen, answer, 0); - return answer; -} -CBByteArray* hexstring_to_bytearray(char* hexstring){ - CBByteArray* answer = CBNewByteArrayFromHex(hexstring); - return answer; -} - -//bool CBInitScriptFromString(CBScript * self, char * string) -char* scriptToString(CBScript* script){ - char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); - CBScriptToString(script, answer); - return answer; - -} -// CBScript * script = CBNewScriptFromString(scriptstring); - -CBTransactionOutput* stringToTransactionOutput(char* scriptstring, int valueInt){ - - CBScript* script = CBNewScriptFromString(scriptstring); - - CBTransactionOutput* answer = CBNewTransactionOutput((uint64_t) valueInt,script); - //CBFreeScript(script); - //CBDestroyByteArray(prevOutHash); - return answer; -} - -CBTransactionOutput* serializeddata_to_obj(char* datastring){ - - CBByteArray* data = hexstring_to_bytearray(datastring); - - CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); - int dlen = (int)CBTransactionOutputDeserialise(txoutput); - - //CBTransactionInputDeserialise(txinput); - //CBDestroyByteArray(data); - return txoutput; -} - -char* obj_to_serializeddata(CBTransactionOutput * txoutput){ - CBTransactionOutputPrepareBytes(txoutput); - int dlen = CBTransactionOutputSerialise(txoutput); - CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; - - char* answer = bytearray_to_hexstring(serializeddata,dlen); - - return answer; -} - - - -//////////////////////// perl export functions ///////////// -//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) -char* create_txoutput_obj(char* scriptstring, int valueInt){ - CBTransactionOutput* txoutput = stringToTransactionOutput(scriptstring,valueInt); - char* answer = obj_to_serializeddata(txoutput); - //CBFreeTransactionOutput(txoutput); - return answer; -} - -char* get_script_from_obj(char* serializedDataString){ - CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); - char* scriptstring = scriptToString(txoutput->scriptObject); - //CBFreeTransactionOutput(txoutput); - return scriptstring; -} - -int get_value_from_obj(char* serializedDataString){ - CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); - uint64_t value = txoutput->value; - CBFreeTransactionOutput(txoutput); - return (int)value; -} - - - - - -MODULE = CBitcoin::TransactionOutput PACKAGE = CBitcoin::TransactionOutput - -PROTOTYPES: DISABLE - - -char * -create_txoutput_obj (scriptstring, valueInt) - char * scriptstring - int valueInt - -char * -get_script_from_obj (serializedDataString) - char * serializedDataString - -int -get_value_from_obj (serializedDataString) - char * serializedDataString - diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index bb3b77a4..284eb6b2 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -88,11 +88,46 @@ sub serializeddata { return $x; } else{ + unless($this->{serializeddata}){ + eval{ + + }; + if($@){ + warn "We cannot serialize the data yet.\n"; + } + } return $this->{serializeddata}; } } - - +# this serializes the data we have +sub serializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + # check to see that we have inputs and outputs + unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ + die "not enough inputs or outputs to serialize this transaction\n"; + } + my @inputs; + foreach my $inx (@{$this->{inputs}}){ + push(@inputs,$inx->serializeddata()); + } + my @outputs; + foreach my $outx (@{$this->{outputs}}){ + push(@outputs,$outx->serializeddata()); + } + # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) + my $data = CBitcoin::Transaction::create_tx_obj( + $this->lockTime() + ,$this->version() + ,\@inputs + ,\@outputs + ,$this->numOfInputs + ,$this->numOfOutputs + ); + return $this->serializeddata($data); + +} sub deserializeData { my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c index 0c846ac0..df1dd535 100644 --- a/scripts/Transaction/src/Transaction.c +++ b/scripts/Transaction/src/Transaction.c @@ -11,6 +11,8 @@ #include #include #include +#include +#include // print CBByteArray to hex string @@ -54,13 +56,91 @@ char* obj_to_serializeddata(CBTransaction * tx){ return answer; } +/* + * TransactionOutput related functions + */ +char* txoutput_obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} +CBTransactionOutput* txoutput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} +/* + * TransactionInput related functions + */ +CBTransactionInput* txinput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) -char* create_tx_obj(int lockTime, int version){ +char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + + int n; + int in_length, out_length; + if ((! SvROK(inputs)) + || (SvTYPE(SvRV(inputs)) != SVt_PVAV) + || ((in_length = av_len((AV *)SvRV(inputs))) < 0)) + { + return 0; + } + if ((! SvROK(outputs)) + || (SvTYPE(SvRV(outputs)) != SVt_PVAV) + || ((out_length = av_len((AV *)SvRV(outputs))) < 0)) + { + return 0; + } + + // load TransactionInput + for (n=0; n<=in_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (inputs), n, 0), l); + CBTransactionInput * inx = txinput_serializeddata_to_obj(fn); + CBTransactionAddInput(tx,inx); + } + for (n=0; n<=out_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (outputs), n, 0), l); + CBTransactionOutput * outx = txoutput_serializeddata_to_obj(fn); + CBTransactionAddOutput(tx,outx); + } char* answer = obj_to_serializeddata(tx); //CBFreeTransaction(tx); return answer; From 04291f0a3ea7dec6b881fe416f564d7d84fe8a8f Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 17:08:09 +0900 Subject: [PATCH 027/127] trying to get signatures working --- scripts/CBHD/src/CBHD.c | 20 +++++ scripts/Transaction/Makefile.old | 35 ++------ scripts/Transaction/Transaction.pm | 39 +++++++- scripts/Transaction/Transaction.xs | 88 ++++++++++++++++++- scripts/Transaction/old-config/Transaction.pm | 35 +++++++- scripts/Transaction/src/Transaction.c | 75 +++++++++++++++- 6 files changed, 258 insertions(+), 34 deletions(-) diff --git a/scripts/CBHD/src/CBHD.c b/scripts/CBHD/src/CBHD.c index dd521648..2d483df4 100644 --- a/scripts/CBHD/src/CBHD.c +++ b/scripts/CBHD/src/CBHD.c @@ -10,6 +10,26 @@ #include #include + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + CBHDKey* importDataToCBHDKey(char* privstring) { CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old index 057e458a..bc066153 100644 --- a/scripts/Transaction/Makefile.old +++ b/scripts/Transaction/Makefile.old @@ -161,20 +161,12 @@ LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = Transaction.xs \ - TransactionInput.xs \ - TransactionOutput.xs -C_FILES = Transaction.c \ - TransactionInput.c \ - TransactionOutput.c -O_FILES = Transaction.o \ - TransactionInput.o \ - TransactionOutput.o +XS_FILES = Transaction.xs +C_FILES = Transaction.c +O_FILES = Transaction.o H_FILES = MAN1PODS = -MAN3PODS = Transaction.pm \ - TransactionInput.pm \ - TransactionOutput.pm +MAN3PODS = Transaction.pm # Where is the Config information that we are using/depend on CONFIGDEP = $(PERL_ARCHLIB)$(DFSEP)Config.pm $(PERL_INC)$(DFSEP)config.h @@ -197,16 +189,10 @@ PERL_ARCHIVE_AFTER = TO_INST_PM = Transaction.pm \ - TransactionInput.pm \ - TransactionOutput.pm \ coinx2.pl PM_TO_BLIB = Transaction.pm \ $(INST_LIB)/CBitcoin/Transaction.pm \ - TransactionInput.pm \ - $(INST_LIB)/CBitcoin/TransactionInput.pm \ - TransactionOutput.pm \ - $(INST_LIB)/CBitcoin/TransactionOutput.pm \ coinx2.pl \ $(INST_LIB)/CBitcoin/coinx2.pl @@ -521,13 +507,9 @@ POD2MAN = $(POD2MAN_EXE) manifypods : pure_all \ - Transaction.pm \ - TransactionInput.pm \ - TransactionOutput.pm + Transaction.pm $(NOECHO) $(POD2MAN) --section=3 --perm_rw=$(PERM_RW) \ - Transaction.pm $(INST_MAN3DIR)/CBitcoin::Transaction.$(MAN3EXT) \ - TransactionInput.pm $(INST_MAN3DIR)/CBitcoin::TransactionInput.$(MAN3EXT) \ - TransactionOutput.pm $(INST_MAN3DIR)/CBitcoin::TransactionOutput.$(MAN3EXT) + Transaction.pm $(INST_MAN3DIR)/CBitcoin::Transaction.$(MAN3EXT) @@ -567,7 +549,6 @@ clean :: clean_subdirs *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ MYMETA.yml Transaction.c \ - TransactionInput.c TransactionOutput.c \ blibdirs.ts core \ core.*perl.*.? core.[0-9] \ core.[0-9][0-9] core.[0-9][0-9][0-9] \ @@ -965,7 +946,7 @@ PERL_HDRS = \ $(OBJECT) : $(PERL_HDRS) -TransactionOutput.c Transaction.c TransactionInput.c : $(XSUBPPDEPS) +Transaction.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -1039,8 +1020,6 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm \ - TransactionInput.pm $(INST_LIB)/CBitcoin/TransactionInput.pm \ - TransactionOutput.pm $(INST_LIB)/CBitcoin/TransactionOutput.pm \ coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm index bb3b77a4..284eb6b2 100644 --- a/scripts/Transaction/Transaction.pm +++ b/scripts/Transaction/Transaction.pm @@ -88,11 +88,46 @@ sub serializeddata { return $x; } else{ + unless($this->{serializeddata}){ + eval{ + + }; + if($@){ + warn "We cannot serialize the data yet.\n"; + } + } return $this->{serializeddata}; } } - - +# this serializes the data we have +sub serializeData { + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + + # check to see that we have inputs and outputs + unless($this->numOfInputs() > 0 && $this->numOfOutputs() > 0){ + die "not enough inputs or outputs to serialize this transaction\n"; + } + my @inputs; + foreach my $inx (@{$this->{inputs}}){ + push(@inputs,$inx->serializeddata()); + } + my @outputs; + foreach my $outx (@{$this->{outputs}}){ + push(@outputs,$outx->serializeddata()); + } + # create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs) + my $data = CBitcoin::Transaction::create_tx_obj( + $this->lockTime() + ,$this->version() + ,\@inputs + ,\@outputs + ,$this->numOfInputs + ,$this->numOfOutputs + ); + return $this->serializeddata($data); + +} sub deserializeData { my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index 29c4ba41..e4bbbe49 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -15,6 +15,8 @@ #include #include #include +#include +#include // print CBByteArray to hex string @@ -58,13 +60,91 @@ char* obj_to_serializeddata(CBTransaction * tx){ return answer; } +/* + * TransactionOutput related functions + */ +char* txoutput_obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} +CBTransactionOutput* txoutput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} +/* + * TransactionInput related functions + */ +CBTransactionInput* txinput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) -char* create_tx_obj(int lockTime, int version){ +char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + + int n; + int in_length, out_length; + if ((! SvROK(inputs)) + || (SvTYPE(SvRV(inputs)) != SVt_PVAV) + || ((in_length = av_len((AV *)SvRV(inputs))) < 0)) + { + return 0; + } + if ((! SvROK(outputs)) + || (SvTYPE(SvRV(outputs)) != SVt_PVAV) + || ((out_length = av_len((AV *)SvRV(outputs))) < 0)) + { + return 0; + } + + // load TransactionInput + for (n=0; n<=in_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (inputs), n, 0), l); + CBTransactionInput * inx = txinput_serializeddata_to_obj(fn); + CBTransactionAddInput(tx,inx); + } + for (n=0; n<=out_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (outputs), n, 0), l); + CBTransactionOutput * outx = txoutput_serializeddata_to_obj(fn); + CBTransactionAddOutput(tx,outx); + } char* answer = obj_to_serializeddata(tx); //CBFreeTransaction(tx); return answer; @@ -99,9 +179,13 @@ PROTOTYPES: DISABLE char * -create_tx_obj (lockTime, version) +create_tx_obj (lockTime, version, inputs, outputs, numOfInputs, numOfOutputs) int lockTime int version + SV * inputs + SV * outputs + int numOfInputs + int numOfOutputs int get_lockTime_from_obj (serializedDataString) diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index 284eb6b2..b6afc42a 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -35,7 +35,7 @@ sub new { } else{ # we have the data, let's get the serialized data - $x->{'lockTime'} ||= time(); # the time is not really relevant + $x->{'lockTime'} ||= 0; $x->{'version'} ||= 1; $this->lockTime($x->{'lockTime'}); $this->version($x->{'version'}); @@ -128,6 +128,7 @@ sub serializeData { return $this->serializeddata($data); } +# TODO: change the name of this function!!! it does the opposite of its name sub deserializeData { my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -146,6 +147,38 @@ sub deserializeData { } } +# signatures.... +=head3 +---+++ sign($index,$cbhdkey) +Sign the ith ($index) output with the private key corresponding to the inputs. +=cut +sub sign{ + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my ($index,$keypair) = (shift,shift); + unless($index =~ m/\d+/){ + die "index is not a positive integer.\n"; + } + unless(ref($keypair) eq 'CBitcoin::CBHD'){ + die "keypair is not a CBitcoin::CBHD object.\n"; + } + unless($this->{serializeddata}){ + die "serialize the tx data first, before trying to sign prevOuts.\n"; + } + + # CB_SIGHASH_ALL means each signature signs all transaction outputs + my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + return $this->serializeddata($data); + +} + + =head2 ---++ methods =cut diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c index df1dd535..543618eb 100644 --- a/scripts/Transaction/src/Transaction.c +++ b/scripts/Transaction/src/Transaction.c @@ -35,7 +35,7 @@ char* scriptToString(CBScript* script){ } -CBTransactionOutput* serializeddata_to_obj(char* datastring){ +CBTransaction* serializeddata_to_obj(char* datastring){ CBByteArray* data = hexstring_to_bytearray(datastring); @@ -105,6 +105,46 @@ char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ return answer; } +// CBHDKeys + +CBHDKey* cbhdkey_serializeddata_to_obj(char* privstring){ + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} + +char* cbhdkey_obj_to_serializeddata(CBHDKey * keypair){ + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(keypair, keyData); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} +/* + * CBScript + */ +char* script_obj_to_serializeddata(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +CBScript* script_serializeddata_to_obj(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return NULL; + } +} + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) @@ -166,5 +206,38 @@ int get_version_from_obj(char* serializedDataString){ CBFreeTransaction(tx); return (int)version; } +// CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType +char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutScriptString); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } + CBTransactionSignPubKeyHashInput( + tx + ,keypair->keyPair + , (CBByteArray *) prevOutSubScript + , (uint32_t)input + , signtype + ); + return obj_to_serializeddata(tx); +} From 2305661ac57b44e276afa1d0c73de7b7a9964004 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 21:57:07 +0900 Subject: [PATCH 028/127] close to getting transaction signing to work --- scripts/Transaction/Transaction.pm | 48 +++++++- scripts/Transaction/Transaction.xs | 104 +++++++++++++++++- scripts/Transaction/old-config/Transaction.pm | 21 +++- scripts/Transaction/src/Transaction.c | 29 ++++- 4 files changed, 192 insertions(+), 10 deletions(-) diff --git a/scripts/Transaction/Transaction.pm b/scripts/Transaction/Transaction.pm index 284eb6b2..64270aad 100644 --- a/scripts/Transaction/Transaction.pm +++ b/scripts/Transaction/Transaction.pm @@ -35,7 +35,7 @@ sub new { } else{ # we have the data, let's get the serialized data - $x->{'lockTime'} ||= time(); # the time is not really relevant + $x->{'lockTime'} ||= 0; $x->{'version'} ||= 1; $this->lockTime($x->{'lockTime'}); $this->version($x->{'version'}); @@ -128,6 +128,7 @@ sub serializeData { return $this->serializeddata($data); } +# TODO: change the name of this function!!! it does the opposite of its name sub deserializeData { my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; @@ -146,6 +147,51 @@ sub deserializeData { } } +# signatures.... +=head3 +---+++ sign($index,$cbhdkey) +Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! +=cut +sub sign_single_input{ + my $this = shift; + die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; + my ($index,$keypair) = (shift,shift); + unless($index =~ m/\d+/){ + die "index is not a positive integer.\n"; + } + unless(ref($keypair) eq 'CBitcoin::CBHD'){ + die "keypair is not a CBitcoin::CBHD object.\n"; + } + + unless($this->serializeddata()){ + die "serialize the tx data first, before trying to sign prevOuts.\n"; + } + + require Data::Dumper; + my @alpha = ( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL'); + my $xo = Data::Dumper::Dumper(\@alpha); + print STDERR $xo; + # CB_SIGHASH_ALL means each signature signs all transaction outputs + + my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL' + ); + + return $this->serializeddata($data) if $data; + + return $this->serializeddata(); +} + + =head2 ---++ methods =cut diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index e4bbbe49..c2ca0eb2 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -39,7 +39,7 @@ char* scriptToString(CBScript* script){ } -CBTransactionOutput* serializeddata_to_obj(char* datastring){ +CBTransaction* serializeddata_to_obj(char* datastring){ CBByteArray* data = hexstring_to_bytearray(datastring); @@ -109,6 +109,46 @@ char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ return answer; } +// CBHDKeys + +CBHDKey* cbhdkey_serializeddata_to_obj(char* privstring){ + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} + +char* cbhdkey_obj_to_serializeddata(CBHDKey * keypair){ + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(keypair, keyData); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} +/* + * CBScript + */ +char* script_obj_to_serializeddata(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +CBScript* script_serializeddata_to_obj(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return NULL; + } +} + //////////////////////// perl export functions ///////////// //CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) @@ -170,8 +210,62 @@ int get_version_from_obj(char* serializedDataString){ CBFreeTransaction(tx); return (int)version; } +// CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType +char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + printf("%d:We are here.",1); + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } +/* + CBTransactionSignPubKeyHashInput( + tx + ,keypair->keyPair + , prevOutSubScript + , (uint32_t)input + , CB_SIGHASH_ALL + );*/ + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); + uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, + keypair->keyPair, oldprevOutSubScript, input, signtype); + if (!sigLen){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + // add the public key + CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); + memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); + return txString; + /* + return obj_to_serializeddata(tx); + */ +} + MODULE = CBitcoin::Transaction PACKAGE = CBitcoin::Transaction @@ -195,3 +289,11 @@ int get_version_from_obj (serializedDataString) char * serializedDataString +char * +sign_tx_pubkeyhash (txString, keypairString, prevOutSubScriptString, input, signTypeString) + char * txString + char * keypairString + char * prevOutSubScriptString + int input + char * signTypeString + diff --git a/scripts/Transaction/old-config/Transaction.pm b/scripts/Transaction/old-config/Transaction.pm index b6afc42a..64270aad 100644 --- a/scripts/Transaction/old-config/Transaction.pm +++ b/scripts/Transaction/old-config/Transaction.pm @@ -150,9 +150,9 @@ sub deserializeData { # signatures.... =head3 ---+++ sign($index,$cbhdkey) -Sign the ith ($index) output with the private key corresponding to the inputs. +Sign the ith ($index) output with the private key corresponding to the inputs. The index starts from 0!!!!! =cut -sub sign{ +sub sign_single_input{ my $this = shift; die "not correct Transaction type" unless ref($this) eq 'CBitcoin::Transaction'; my ($index,$keypair) = (shift,shift); @@ -162,11 +162,22 @@ sub sign{ unless(ref($keypair) eq 'CBitcoin::CBHD'){ die "keypair is not a CBitcoin::CBHD object.\n"; } - unless($this->{serializeddata}){ + + unless($this->serializeddata()){ die "serialize the tx data first, before trying to sign prevOuts.\n"; } + require Data::Dumper; + my @alpha = ( + $this->serializeddata() + ,$keypair->serializedkeypair() + ,'prevOutSubScriptString' + ,$index + ,'CB_SIGHASH_ALL'); + my $xo = Data::Dumper::Dumper(\@alpha); + print STDERR $xo; # CB_SIGHASH_ALL means each signature signs all transaction outputs + my $data = CBitcoin::Transaction::sign_tx_pubkeyhash( $this->serializeddata() ,$keypair->serializedkeypair() @@ -174,8 +185,10 @@ sub sign{ ,$index ,'CB_SIGHASH_ALL' ); - return $this->serializeddata($data); + return $this->serializeddata($data) if $data; + + return $this->serializeddata(); } diff --git a/scripts/Transaction/src/Transaction.c b/scripts/Transaction/src/Transaction.c index 543618eb..68ab6192 100644 --- a/scripts/Transaction/src/Transaction.c +++ b/scripts/Transaction/src/Transaction.c @@ -208,11 +208,17 @@ int get_version_from_obj(char* serializedDataString){ } // CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + printf("%d:We are here.",1); + + CBTransaction * tx = serializeddata_to_obj(txString); CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); - CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutScriptString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + printf("%d:We are here.\n",4); + // figure out the signature type CBSignType signtype; if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { @@ -231,13 +237,28 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc // we have to fail here return "NULL"; } +/* CBTransactionSignPubKeyHashInput( tx ,keypair->keyPair - , (CBByteArray *) prevOutSubScript + , prevOutSubScript , (uint32_t)input - , signtype - ); + , CB_SIGHASH_ALL + );*/ + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); + uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, + keypair->keyPair, oldprevOutSubScript, input, signtype); + if (!sigLen){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + // add the public key + CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); + memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); + //return txString; + return obj_to_serializeddata(tx); + } From 73da65d36c36de77b61ba64d59226d4c2f4e1502 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 22:06:00 +0900 Subject: [PATCH 029/127] tx signing kind of works --- scripts/Transaction/Transaction.xs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/Transaction/Transaction.xs b/scripts/Transaction/Transaction.xs index c2ca0eb2..c0867540 100644 --- a/scripts/Transaction/Transaction.xs +++ b/scripts/Transaction/Transaction.xs @@ -260,10 +260,10 @@ char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubSc // add the public key CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); - return txString; - /* + //return txString; + return obj_to_serializeddata(tx); - */ + } From 8b77b22322431e03fbcbd49127255f20f06280f4 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 22:31:15 +0900 Subject: [PATCH 030/127] fixing multisig function in CBScripts --- library/src/CBScript.c | 7 +- scripts/Transaction/Makefile.old | 367 +++---------------------------- scripts/test.pm | 15 +- 3 files changed, 50 insertions(+), 339 deletions(-) diff --git a/library/src/CBScript.c b/library/src/CBScript.c index 2d3a629f..bda775e7 100644 --- a/library/src/CBScript.c +++ b/library/src/CBScript.c @@ -518,7 +518,8 @@ bool CBInitScriptFromString(CBScript * self, char * string){ } void CBInitScriptMultisigOutput(CBScript * self, uint8_t ** pubKeys, uint8_t m, uint8_t n){ - CBInitByteArrayOfSize(self, 2 + n*(1 + CB_PUBKEY_SIZE)); + //CBInitByteArrayOfSize(self, 2 + n*(1 + CB_PUBKEY_SIZE)); + CBInitByteArrayOfSize(self, 3 + n*(1 + CB_PUBKEY_SIZE)); CBByteArraySetByte(self, 0, CB_SCRIPT_OP_1 + m - 1); uint16_t cursor = 1; for (uint8_t x = 0; x < n; x++, cursor += CB_PUBKEY_SIZE + 1) { @@ -526,6 +527,10 @@ void CBInitScriptMultisigOutput(CBScript * self, uint8_t ** pubKeys, uint8_t m, CBByteArraySetBytes(self, cursor + 1, pubKeys[x], CB_PUBKEY_SIZE); } CBByteArraySetByte(self, cursor, CB_SCRIPT_OP_1 + n - 1); + + cursor+=1; + CBByteArraySetByte(self, cursor, CB_SCRIPT_OP_CHECKMULTISIGVERIFY); + } void CBInitScriptP2SHOutput(CBScript * self, CBScript * script){ diff --git a/scripts/Transaction/Makefile.old b/scripts/Transaction/Makefile.old index bc066153..347ffbd8 100644 --- a/scripts/Transaction/Makefile.old +++ b/scripts/Transaction/Makefile.old @@ -67,12 +67,12 @@ DEFINE_VERSION = -D$(VERSION_MACRO)=\"$(VERSION)\" XS_VERSION = 0.01 XS_VERSION_MACRO = XS_VERSION XS_DEFINE_VERSION = -D$(XS_VERSION_MACRO)=\"$(XS_VERSION)\" -INST_ARCHLIB = blib/arch -INST_SCRIPT = blib/script -INST_BIN = blib/bin -INST_LIB = blib/lib -INST_MAN1DIR = blib/man1 -INST_MAN3DIR = blib/man3 +INST_ARCHLIB = ../blib/arch +INST_SCRIPT = ../blib/script +INST_BIN = ../blib/bin +INST_LIB = ../blib/lib +INST_MAN1DIR = ../blib/man1 +INST_MAN3DIR = ../blib/man3 MAN1EXT = 1p MAN3EXT = 3pm INSTALLDIRS = site @@ -155,15 +155,15 @@ PARENT_NAME = CBitcoin DLBASE = $(BASEEXT) VERSION_FROM = INC = ../../library/include -OBJECT = $(BASEEXT)$(OBJ_EXT) +OBJECT = LDFROM = $(OBJECT) LINKTYPE = dynamic BOOTDEP = # Handy lists of source code files: -XS_FILES = Transaction.xs -C_FILES = Transaction.c -O_FILES = Transaction.o +XS_FILES = +C_FILES = +O_FILES = H_FILES = MAN1PODS = MAN3PODS = Transaction.pm @@ -188,13 +188,10 @@ PERL_ARCHIVE = PERL_ARCHIVE_AFTER = -TO_INST_PM = Transaction.pm \ - coinx2.pl +TO_INST_PM = Transaction.pm PM_TO_BLIB = Transaction.pm \ - $(INST_LIB)/CBitcoin/Transaction.pm \ - coinx2.pl \ - $(INST_LIB)/CBitcoin/coinx2.pl + $(INST_LIB)/CBitcoin/Transaction.pm # --- MakeMaker platform_constants section: @@ -210,7 +207,7 @@ AUTOSPLITFILE = $(ABSPERLRUN) -e 'use AutoSplit; autosplit($$$$ARGV[0], $$$$AR # --- MakeMaker tool_xsubpp section: -XSUBPPDIR = /usr/share/perl/5.14/ExtUtils +XSUBPPDIR = /usr/share/perl/5.14.2/ExtUtils XSUBPP = $(XSUBPPDIR)$(DFSEP)xsubpp XSUBPPRUN = $(PERLRUN) $(XSUBPP) XSPROTOARG = @@ -256,24 +253,7 @@ makemakerdflt : all $(NOECHO) $(NOOP) -# --- MakeMaker dist section: -TAR = tar -TARFLAGS = cvf -ZIP = zip -ZIPFLAGS = -r -COMPRESS = gzip --best -SUFFIX = .gz -SHAR = shar -PREOP = $(NOECHO) $(NOOP) -POSTOP = $(NOECHO) $(NOOP) -TO_UNIX = $(NOECHO) $(NOOP) -CI = ci -u -RCS_LABEL = rcs -Nv$(VERSION_SYM): -q -DIST_CP = best -DIST_DEFAULT = tardist -DISTNAME = CBitcoin-Transaction -DISTVNAME = CBitcoin-Transaction-0.01 - +# --- MakeMaker dist section skipped. # --- MakeMaker macro section: @@ -522,17 +502,11 @@ manifypods : pure_all \ # --- MakeMaker subdirs section: -# The default clean, realclean and test targets in this Makefile -# have automatically been given entries for each subdir. - - -subdirs :: - $(NOECHO) cd old-config && $(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) all $(PASTHRU) - +# none # --- MakeMaker clean_subdirs section: clean_subdirs : - $(ABSPERLRUN) -e 'exit 0 unless chdir '\''old-config'\''; system '\''$(MAKE) clean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker clean section: @@ -548,16 +522,16 @@ clean :: clean_subdirs $(INST_ARCHAUTODIR)/extralibs.ld $(MAKE_APERL_FILE) \ *$(LIB_EXT) *$(OBJ_EXT) \ *perl.core MYMETA.json \ - MYMETA.yml Transaction.c \ - blibdirs.ts core \ - core.*perl.*.? core.[0-9] \ - core.[0-9][0-9] core.[0-9][0-9][0-9] \ - core.[0-9][0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9][0-9] \ - lib$(BASEEXT).def mon.out \ - perl perl$(EXE_EXT) \ - perl.exe perlmain.c \ - pm_to_blib pm_to_blib.ts \ - so_locations tmon.out + MYMETA.yml blibdirs.ts \ + core core.*perl.*.? \ + core.[0-9] core.[0-9][0-9] \ + core.[0-9][0-9][0-9] core.[0-9][0-9][0-9][0-9] \ + core.[0-9][0-9][0-9][0-9][0-9] lib$(BASEEXT).def \ + mon.out perl \ + perl$(EXE_EXT) perl.exe \ + perlmain.c pm_to_blib \ + pm_to_blib.ts so_locations \ + tmon.out - $(RM_RF) \ blib $(NOECHO) $(RM_F) $(MAKEFILE_OLD) @@ -566,8 +540,7 @@ clean :: clean_subdirs # --- MakeMaker realclean_subdirs section: realclean_subdirs : - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(MAKEFILE_OLD) realclean'\'' if -f '\''$(MAKEFILE_OLD)'\'';' -- - - $(ABSPERLRUN) -e 'chdir '\''old-config'\''; system '\''$(MAKE) $(USEMAKEFILE) $(FIRST_MAKEFILE) realclean'\'' if -f '\''$(FIRST_MAKEFILE)'\'';' -- + $(NOECHO) $(NOOP) # --- MakeMaker realclean section: @@ -653,91 +626,15 @@ signature : cpansign -s -# --- MakeMaker dist_basics section: -distclean :: realclean distcheck - $(NOECHO) $(NOOP) - -distcheck : - $(PERLRUN) "-MExtUtils::Manifest=fullcheck" -e fullcheck - -skipcheck : - $(PERLRUN) "-MExtUtils::Manifest=skipcheck" -e skipcheck - -manifest : - $(PERLRUN) "-MExtUtils::Manifest=mkmanifest" -e mkmanifest - -veryclean : realclean - $(RM_F) *~ */*~ *.orig */*.orig *.bak */*.bak *.old */*.old - - - -# --- MakeMaker dist_core section: - -dist : $(DIST_DEFAULT) $(FIRST_MAKEFILE) - $(NOECHO) $(ABSPERLRUN) -l -e 'print '\''Warning: Makefile possibly out of date with $(VERSION_FROM)'\''' \ - -e ' if -e '\''$(VERSION_FROM)'\'' and -M '\''$(VERSION_FROM)'\'' < -M '\''$(FIRST_MAKEFILE)'\'';' -- - -tardist : $(DISTVNAME).tar$(SUFFIX) - $(NOECHO) $(NOOP) - -uutardist : $(DISTVNAME).tar$(SUFFIX) - uuencode $(DISTVNAME).tar$(SUFFIX) $(DISTVNAME).tar$(SUFFIX) > $(DISTVNAME).tar$(SUFFIX)_uu - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)_uu' - -$(DISTVNAME).tar$(SUFFIX) : distdir - $(PREOP) - $(TO_UNIX) - $(TAR) $(TARFLAGS) $(DISTVNAME).tar $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(COMPRESS) $(DISTVNAME).tar - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).tar$(SUFFIX)' - $(POSTOP) - -zipdist : $(DISTVNAME).zip - $(NOECHO) $(NOOP) - -$(DISTVNAME).zip : distdir - $(PREOP) - $(ZIP) $(ZIPFLAGS) $(DISTVNAME).zip $(DISTVNAME) - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).zip' - $(POSTOP) - -shdist : distdir - $(PREOP) - $(SHAR) $(DISTVNAME) > $(DISTVNAME).shar - $(RM_RF) $(DISTVNAME) - $(NOECHO) $(ECHO) 'Created $(DISTVNAME).shar' - $(POSTOP) - - -# --- MakeMaker distdir section: -create_distdir : - $(RM_RF) $(DISTVNAME) - $(PERLRUN) "-MExtUtils::Manifest=manicopy,maniread" \ - -e "manicopy(maniread(),'$(DISTVNAME)', '$(DIST_CP)');" - -distdir : create_distdir distmeta - $(NOECHO) $(NOOP) +# --- MakeMaker dist_basics section skipped. +# --- MakeMaker dist_core section skipped. +# --- MakeMaker distdir section skipped. -# --- MakeMaker dist_test section: -disttest : distdir - cd $(DISTVNAME) && $(ABSPERLRUN) Makefile.PL - cd $(DISTVNAME) && $(MAKE) $(PASTHRU) - cd $(DISTVNAME) && $(MAKE) test $(PASTHRU) - - - -# --- MakeMaker dist_ci section: - -ci : - $(PERLRUN) "-MExtUtils::Manifest=maniread" \ - -e "@all = keys %{ maniread() };" \ - -e "print(qq{Executing $(CI) @all\n}); system(qq{$(CI) @all});" \ - -e "print(qq{Executing $(RCS_LABEL) ...\n}); system(qq{$(RCS_LABEL) @all});" +# --- MakeMaker dist_test section skipped. +# --- MakeMaker dist_ci section skipped. # --- MakeMaker distmeta section: distmeta : create_distdir metafile @@ -759,117 +656,7 @@ distsignature : create_distdir -# --- MakeMaker install section: - -install :: pure_install doc_install - $(NOECHO) $(NOOP) - -install_perl :: pure_perl_install doc_perl_install - $(NOECHO) $(NOOP) - -install_site :: pure_site_install doc_site_install - $(NOECHO) $(NOOP) - -install_vendor :: pure_vendor_install doc_vendor_install - $(NOECHO) $(NOOP) - -pure_install :: pure_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -doc_install :: doc_$(INSTALLDIRS)_install - $(NOECHO) $(NOOP) - -pure__install : pure_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -doc__install : doc_site_install - $(NOECHO) $(ECHO) INSTALLDIRS not defined, defaulting to INSTALLDIRS=site - -pure_perl_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLARCHLIB)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLPRIVLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLARCHLIB) \ - $(INST_BIN) $(DESTINSTALLBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(SITEARCHEXP)/auto/$(FULLEXT) - - -pure_site_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLSITEARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLSITELIB) \ - $(INST_ARCHLIB) $(DESTINSTALLSITEARCH) \ - $(INST_BIN) $(DESTINSTALLSITEBIN) \ - $(INST_SCRIPT) $(DESTINSTALLSITESCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLSITEMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLSITEMAN3DIR) - $(NOECHO) $(WARN_IF_OLD_PACKLIST) \ - $(PERL_ARCHLIB)/auto/$(FULLEXT) - -pure_vendor_install :: all - $(NOECHO) $(MOD_INSTALL) \ - read $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist \ - write $(DESTINSTALLVENDORARCH)/auto/$(FULLEXT)/.packlist \ - $(INST_LIB) $(DESTINSTALLVENDORLIB) \ - $(INST_ARCHLIB) $(DESTINSTALLVENDORARCH) \ - $(INST_BIN) $(DESTINSTALLVENDORBIN) \ - $(INST_SCRIPT) $(DESTINSTALLVENDORSCRIPT) \ - $(INST_MAN1DIR) $(DESTINSTALLVENDORMAN1DIR) \ - $(INST_MAN3DIR) $(DESTINSTALLVENDORMAN3DIR) - - -doc_perl_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLPRIVLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_site_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLSITELIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - -doc_vendor_install :: all - $(NOECHO) $(ECHO) Appending installation info to $(DESTINSTALLARCHLIB)/perllocal.pod - -$(NOECHO) $(MKPATH) $(DESTINSTALLARCHLIB) - -$(NOECHO) $(DOC_INSTALL) \ - "Module" "$(NAME)" \ - "installed into" "$(INSTALLVENDORLIB)" \ - LINKTYPE "$(LINKTYPE)" \ - VERSION "$(VERSION)" \ - EXE_FILES "$(EXE_FILES)" \ - >> $(DESTINSTALLARCHLIB)/perllocal.pod - - -uninstall :: uninstall_from_$(INSTALLDIRS)dirs - $(NOECHO) $(NOOP) - -uninstall_from_perldirs :: - $(NOECHO) $(UNINSTALL) $(PERL_ARCHLIB)/auto/$(FULLEXT)/.packlist - -uninstall_from_sitedirs :: - $(NOECHO) $(UNINSTALL) $(SITEARCHEXP)/auto/$(FULLEXT)/.packlist - -uninstall_from_vendordirs :: - $(NOECHO) $(UNINSTALL) $(VENDORARCHEXP)/auto/$(FULLEXT)/.packlist - +# --- MakeMaker install section skipped. # --- MakeMaker force section: # Phony target to force checking subdirectories. @@ -878,75 +665,6 @@ FORCE : # --- MakeMaker perldepend section: -PERL_HDRS = \ - $(PERL_INC)/EXTERN.h \ - $(PERL_INC)/INTERN.h \ - $(PERL_INC)/XSUB.h \ - $(PERL_INC)/av.h \ - $(PERL_INC)/bitcount.h \ - $(PERL_INC)/config.h \ - $(PERL_INC)/cop.h \ - $(PERL_INC)/cv.h \ - $(PERL_INC)/dosish.h \ - $(PERL_INC)/embed.h \ - $(PERL_INC)/embedvar.h \ - $(PERL_INC)/fakesdio.h \ - $(PERL_INC)/fakethr.h \ - $(PERL_INC)/form.h \ - $(PERL_INC)/git_version.h \ - $(PERL_INC)/gv.h \ - $(PERL_INC)/handy.h \ - $(PERL_INC)/hv.h \ - $(PERL_INC)/intrpvar.h \ - $(PERL_INC)/iperlsys.h \ - $(PERL_INC)/keywords.h \ - $(PERL_INC)/l1_char_class_tab.h \ - $(PERL_INC)/malloc_ctl.h \ - $(PERL_INC)/metaconfig.h \ - $(PERL_INC)/mg.h \ - $(PERL_INC)/mydtrace.h \ - $(PERL_INC)/nostdio.h \ - $(PERL_INC)/op.h \ - $(PERL_INC)/op_reg_common.h \ - $(PERL_INC)/opcode.h \ - $(PERL_INC)/opnames.h \ - $(PERL_INC)/overload.h \ - $(PERL_INC)/pad.h \ - $(PERL_INC)/parser.h \ - $(PERL_INC)/patchlevel-debian.h \ - $(PERL_INC)/patchlevel.h \ - $(PERL_INC)/perl.h \ - $(PERL_INC)/perlapi.h \ - $(PERL_INC)/perlio.h \ - $(PERL_INC)/perliol.h \ - $(PERL_INC)/perlsdio.h \ - $(PERL_INC)/perlsfio.h \ - $(PERL_INC)/perlvars.h \ - $(PERL_INC)/perly.h \ - $(PERL_INC)/pp.h \ - $(PERL_INC)/pp_proto.h \ - $(PERL_INC)/proto.h \ - $(PERL_INC)/reentr.h \ - $(PERL_INC)/regcharclass.h \ - $(PERL_INC)/regcomp.h \ - $(PERL_INC)/regexp.h \ - $(PERL_INC)/regnodes.h \ - $(PERL_INC)/scope.h \ - $(PERL_INC)/sv.h \ - $(PERL_INC)/thread.h \ - $(PERL_INC)/time64.h \ - $(PERL_INC)/time64_config.h \ - $(PERL_INC)/uconfig.h \ - $(PERL_INC)/unixish.h \ - $(PERL_INC)/utf8.h \ - $(PERL_INC)/utfebcdic.h \ - $(PERL_INC)/util.h \ - $(PERL_INC)/uudmap.h \ - $(PERL_INC)/warnings.h - -$(OBJECT) : $(PERL_HDRS) - -Transaction.c : $(XSUBPPDEPS) # --- MakeMaker makefile section: @@ -955,19 +673,9 @@ Transaction.c : $(XSUBPPDEPS) # --- MakeMaker staticmake section: # --- MakeMaker makeaperl section --- -MAP_TARGET = perl +MAP_TARGET = ../perl FULLPERL = /usr/bin/perl -$(MAP_TARGET) :: static $(MAKE_APERL_FILE) - $(MAKE) $(USEMAKEFILE) $(MAKE_APERL_FILE) $@ - -$(MAKE_APERL_FILE) : $(FIRST_MAKEFILE) pm_to_blib - $(NOECHO) $(ECHO) Writing \"$(MAKE_APERL_FILE)\" for this $(MAP_TARGET) - $(NOECHO) $(PERLRUNINST) \ - Makefile.PL DIR=old-config \ - MAKEFILE=$(MAKE_APERL_FILE) LINKTYPE=static \ - MAKEAPERL=1 NORECURS=1 CCCDLFLAGS= - # --- MakeMaker test section: @@ -984,9 +692,7 @@ test :: $(TEST_TYPE) subdirs-test subdirs-test :: $(NOECHO) $(NOOP) -subdirs-test :: - $(NOECHO) cd old-config && $(MAKE) test $(PASTHRU) - + $(NOECHO) $(ECHO) 'No tests defined for $(NAME) extension.' test_dynamic :: pure_all @@ -1019,8 +725,7 @@ ppd : pm_to_blib : $(FIRST_MAKEFILE) $(TO_INST_PM) $(NOECHO) $(ABSPERLRUN) -MExtUtils::Install -e 'pm_to_blib({@ARGV}, '\''$(INST_LIB)/auto'\'', q[$(PM_FILTER)], '\''$(PERM_DIR)'\'')' -- \ - Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm \ - coinx2.pl $(INST_LIB)/CBitcoin/coinx2.pl + Transaction.pm $(INST_LIB)/CBitcoin/Transaction.pm $(NOECHO) $(TOUCH) pm_to_blib diff --git a/scripts/test.pm b/scripts/test.pm index 819e3d86..df49f34d 100644 --- a/scripts/test.pm +++ b/scripts/test.pm @@ -5,27 +5,28 @@ use CBitcoin::Script; use CBitcoin::CBHD; print "hello\n"; - +my ($m,$n) = (1,2); my $script = CBitcoin::Script::address_to_script("1Fjf3xLuuQpuyw6EyxkXuLHzJUw7yUwPTi"); print "Script:$script\n"; my $parentkey = new CBitcoin::CBHD; -$parentkey->generate(); +$parentkey->serializedkeypair('xprv9s21ZrQH143K4Rz5APz2LhW4ms2mVTVa5YVMZzGAYgNRoXkxri6ELZVbzqc8VFtHseksaBnahJbbgkxue3nXsMjuF5pg1cknX4ueyQwUATY'); $script = CBitcoin::Script::pubkeyToScript($parentkey->publickey()); -print "Script from public key:$script\n"; +my $scripttype = CBitcoin::Script::whatTypeOfScript($script); +print "Script from public key:$script\nType:$scripttype\n"; #my $childkey = $parentkey->deriveChild(1,23); my @arraypubkeys; -foreach my $i (1..3){ +foreach my $i (1..$n){ my $childkey = $parentkey->deriveChild(1,$i); print "Address $i:".$childkey->address()."\n"; push(@arraypubkeys,$childkey->publickey()); } print "Starting multisig operation\n"; -$script = CBitcoin::Script::multisigToScript(\@arraypubkeys,2,3); -print "Multisig Script:$script\n"; -my $scripttype = CBitcoin::Script::whatTypeOfScript($script); +$script = CBitcoin::Script::multisigToScript(\@arraypubkeys,$m,$n); +print "Multisig Script:\n($script)\n"; +$scripttype = CBitcoin::Script::whatTypeOfScript($script); print "Script Type:$scripttype\n"; From e6c540d0604617ff2cae55fe6643a8e789f41858 Mon Sep 17 00:00:00 2001 From: Joel DeJesus Date: Mon, 30 Jun 2014 22:38:20 +0900 Subject: [PATCH 031/127] fixed multisig signatures in CBScript --- library/src/CBScript.c | 2 +- scripts/Transaction/MYMETA.json | 39 ++ scripts/Transaction/MYMETA.yml | 21 + scripts/Transaction/Transaction.bs | 0 scripts/Transaction/Transaction.c | 463 ++++++++++++++++++ scripts/Transaction/Transaction.o | Bin 0 -> 128536 bytes scripts/Transaction/blib/arch/.exists | 0 .../arch/auto/CBitcoin/Transaction/.exists | 0 .../auto/CBitcoin/Transaction/Transaction.so | Bin 0 -> 85950 bytes scripts/Transaction/blib/lib/CBitcoin/.exists | 0 .../blib/lib/CBitcoin/Transaction.pm | 287 +++++++++++ .../Transaction/blib/lib/CBitcoin/coinx2.pl | 15 + .../lib/auto/CBitcoin/Transaction/.exists | 0 scripts/Transaction/blib/man1/.exists | 0 scripts/Transaction/blib/man3/.exists | 0 .../blib/man3/CBitcoin::Transaction.3pm | 141 ++++++ scripts/Transaction/blib/script/.exists | 0 scripts/Transaction/old-config/MYMETA.json | 39 ++ scripts/Transaction/old-config/MYMETA.yml | 21 + scripts/Transaction/old-config/Transaction.bs | 0 scripts/Transaction/old-config/pm_to_blib | 0 scripts/Transaction/pm_to_blib | 0 scripts/tx.pm | 75 +++ 23 files changed, 1102 insertions(+), 1 deletion(-) create mode 100644 scripts/Transaction/MYMETA.json create mode 100644 scripts/Transaction/MYMETA.yml create mode 100644 scripts/Transaction/Transaction.bs create mode 100644 scripts/Transaction/Transaction.c create mode 100644 scripts/Transaction/Transaction.o create mode 100644 scripts/Transaction/blib/arch/.exists create mode 100644 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/.exists create mode 100755 scripts/Transaction/blib/arch/auto/CBitcoin/Transaction/Transaction.so create mode 100644 scripts/Transaction/blib/lib/CBitcoin/.exists create mode 100644 scripts/Transaction/blib/lib/CBitcoin/Transaction.pm create mode 100644 scripts/Transaction/blib/lib/CBitcoin/coinx2.pl create mode 100644 scripts/Transaction/blib/lib/auto/CBitcoin/Transaction/.exists create mode 100644 scripts/Transaction/blib/man1/.exists create mode 100644 scripts/Transaction/blib/man3/.exists create mode 100644 scripts/Transaction/blib/man3/CBitcoin::Transaction.3pm create mode 100644 scripts/Transaction/blib/script/.exists create mode 100644 scripts/Transaction/old-config/MYMETA.json create mode 100644 scripts/Transaction/old-config/MYMETA.yml create mode 100644 scripts/Transaction/old-config/Transaction.bs create mode 100644 scripts/Transaction/old-config/pm_to_blib create mode 100644 scripts/Transaction/pm_to_blib create mode 100644 scripts/tx.pm diff --git a/library/src/CBScript.c b/library/src/CBScript.c index bda775e7..a6250ff5 100644 --- a/library/src/CBScript.c +++ b/library/src/CBScript.c @@ -529,7 +529,7 @@ void CBInitScriptMultisigOutput(CBScript * self, uint8_t ** pubKeys, uint8_t m, CBByteArraySetByte(self, cursor, CB_SCRIPT_OP_1 + n - 1); cursor+=1; - CBByteArraySetByte(self, cursor, CB_SCRIPT_OP_CHECKMULTISIGVERIFY); + CBByteArraySetByte(self, cursor, CB_SCRIPT_OP_CHECKMULTISIG); } diff --git a/scripts/Transaction/MYMETA.json b/scripts/Transaction/MYMETA.json new file mode 100644 index 00000000..41366499 --- /dev/null +++ b/scripts/Transaction/MYMETA.json @@ -0,0 +1,39 @@ +{ + "abstract" : "unknown", + "author" : [ + "unknown" + ], + "dynamic_config" : 0, + "generated_by" : "ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351", + "license" : [ + "unknown" + ], + "meta-spec" : { + "url" : "http://search.cpan.org/perldoc?CPAN::Meta::Spec", + "version" : "2" + }, + "name" : "CBitcoin-Transaction", + "no_index" : { + "directory" : [ + "t", + "inc" + ] + }, + "prereqs" : { + "build" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "configure" : { + "requires" : { + "ExtUtils::MakeMaker" : "0" + } + }, + "runtime" : { + "requires" : {} + } + }, + "release_status" : "stable", + "version" : "0.01" +} diff --git a/scripts/Transaction/MYMETA.yml b/scripts/Transaction/MYMETA.yml new file mode 100644 index 00000000..13c0faa3 --- /dev/null +++ b/scripts/Transaction/MYMETA.yml @@ -0,0 +1,21 @@ +--- +abstract: unknown +author: + - unknown +build_requires: + ExtUtils::MakeMaker: 0 +configure_requires: + ExtUtils::MakeMaker: 0 +dynamic_config: 0 +generated_by: 'ExtUtils::MakeMaker version 6.9, CPAN::Meta::Converter version 2.120351' +license: unknown +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +name: CBitcoin-Transaction +no_index: + directory: + - t + - inc +requires: {} +version: 0.01 diff --git a/scripts/Transaction/Transaction.bs b/scripts/Transaction/Transaction.bs new file mode 100644 index 00000000..e69de29b diff --git a/scripts/Transaction/Transaction.c b/scripts/Transaction/Transaction.c new file mode 100644 index 00000000..fb47f74b --- /dev/null +++ b/scripts/Transaction/Transaction.c @@ -0,0 +1,463 @@ +/* + * This file was generated automatically by ExtUtils::ParseXS version 2.2210 from the + * contents of Transaction.xs. Do not edit this file, edit Transaction.xs instead. + * + * ANY CHANGES MADE HERE WILL BE LOST! + * + */ + +#line 1 "Transaction.xs" +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + + +// print CBByteArray to hex string +char* bytearray_to_hexstring(CBByteArray * serializeddata,uint32_t dlen){ + char* answer = malloc(dlen*sizeof(char*)); + CBByteArrayToString(serializeddata, 0, dlen, answer, 0); + return answer; +} +CBByteArray* hexstring_to_bytearray(char* hexstring){ + CBByteArray* answer = CBNewByteArrayFromHex(hexstring); + return answer; +} + +//bool CBInitScriptFromString(CBScript * self, char * string) +char* scriptToString(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} + + +CBTransaction* serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransaction* tx = CBNewTransactionFromData(data); + uint32_t dlen = CBTransactionDeserialise(tx); + + //CBDestroyByteArray(data); + return tx; +} + +char* obj_to_serializeddata(CBTransaction * tx){ + CBTransactionPrepareBytes(tx); + int dlen = CBTransactionSerialise(tx,1); + CBByteArray* serializeddata = CBGetMessage(tx)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + +/* + * TransactionOutput related functions + */ +char* txoutput_obj_to_serializeddata(CBTransactionOutput * txoutput){ + CBTransactionOutputPrepareBytes(txoutput); + int dlen = CBTransactionOutputSerialise(txoutput); + CBByteArray* serializeddata = CBGetMessage(txoutput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} +CBTransactionOutput* txoutput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionOutput* txoutput = CBNewTransactionOutputFromData(data); + int dlen = (int)CBTransactionOutputDeserialise(txoutput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txoutput; +} +/* + * TransactionInput related functions + */ + +CBTransactionInput* txinput_serializeddata_to_obj(char* datastring){ + + CBByteArray* data = hexstring_to_bytearray(datastring); + + CBTransactionInput* txinput = CBNewTransactionInputFromData(data); + int dlen = (int)CBTransactionInputDeserialise(txinput); + + //CBTransactionInputDeserialise(txinput); + //CBDestroyByteArray(data); + return txinput; +} + +char* txinput_obj_to_serializeddata(CBTransactionInput * txinput){ + CBTransactionInputPrepareBytes(txinput); + int dlen = CBTransactionInputSerialise(txinput); + CBByteArray* serializeddata = CBGetMessage(txinput)->bytes; + + char* answer = bytearray_to_hexstring(serializeddata,dlen); + + return answer; +} + +// CBHDKeys + +CBHDKey* cbhdkey_serializeddata_to_obj(char* privstring){ + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} + +char* cbhdkey_obj_to_serializeddata(CBHDKey * keypair){ + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(keypair, keyData); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} +/* + * CBScript + */ +char* script_obj_to_serializeddata(CBScript* script){ + char* answer = (char *)malloc(CBScriptStringMaxSize(script)*sizeof(char)); + CBScriptToString(script, answer); + return answer; + +} +CBScript* script_serializeddata_to_obj(char* scriptstring){ + CBScript* self; + if(CBInitScriptFromString(self,scriptstring)){ + return self; + } + else{ + return NULL; + } +} + +//////////////////////// perl export functions ///////////// +//CBTransactionInput * CBNewTransactionInput(CBScript * script, uint32_t sequence, CBByteArray * prevOutHash, uint32_t prevOutIndex) + +char* create_tx_obj(int lockTime, int version, SV* inputs, SV* outputs, int numOfInputs, int numOfOutputs){ + CBTransaction* tx = CBNewTransaction((uint32_t) lockTime, (uint32_t) version); + + int n; + int in_length, out_length; + if ((! SvROK(inputs)) + || (SvTYPE(SvRV(inputs)) != SVt_PVAV) + || ((in_length = av_len((AV *)SvRV(inputs))) < 0)) + { + return 0; + } + if ((! SvROK(outputs)) + || (SvTYPE(SvRV(outputs)) != SVt_PVAV) + || ((out_length = av_len((AV *)SvRV(outputs))) < 0)) + { + return 0; + } + + // load TransactionInput + for (n=0; n<=in_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (inputs), n, 0), l); + CBTransactionInput * inx = txinput_serializeddata_to_obj(fn); + CBTransactionAddInput(tx,inx); + } + for (n=0; n<=out_length; n++) { + STRLEN l; + + char * fn = SvPV (*av_fetch ((AV *) SvRV (outputs), n, 0), l); + CBTransactionOutput * outx = txoutput_serializeddata_to_obj(fn); + CBTransactionAddOutput(tx,outx); + } + char* answer = obj_to_serializeddata(tx); + //CBFreeTransaction(tx); + return answer; +} +/* +char* get_script_from_obj(char* serializedDataString){ + CBTransactionOutput* txoutput = serializeddata_to_obj(serializedDataString); + char* scriptstring = scriptToString(txoutput->scriptObject); + //CBFreeTransactionOutput(txoutput); + return scriptstring; +} +*/ +int get_lockTime_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t lockTime = tx->lockTime; + CBFreeTransaction(tx); + return (int)lockTime; +} + +int get_version_from_obj(char* serializedDataString){ + CBTransaction* tx = serializeddata_to_obj(serializedDataString); + uint32_t version = tx->version; + CBFreeTransaction(tx); + return (int)version; +} +// CBTransaction * self, CBKeyPair * key, CBByteArray * prevOutSubScript, uint32_t input, CBSignType signType +char* sign_tx_pubkeyhash(char* txString, char* keypairString, char* prevOutSubScriptString, int input, char* signTypeString){ + printf("%d:We are here.",1); + + + CBTransaction * tx = serializeddata_to_obj(txString); + CBHDKey * keypair = cbhdkey_serializeddata_to_obj(keypairString); + CBScript * prevOutSubScript = script_serializeddata_to_obj(prevOutSubScriptString); + + + + printf("%d:We are here.\n",4); + + // figure out the signature type + CBSignType signtype; + if (strcmp(signTypeString, "CB_SIGHASH_ALL") == 0) { + signtype = CB_SIGHASH_ALL; + } + else if(strcmp(signTypeString, "CB_SIGHASH_NONE") == 0){ + signtype = CB_SIGHASH_NONE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_SINGLE") == 0){ + signtype = CB_SIGHASH_SINGLE; + } + else if(strcmp(signTypeString, "CB_SIGHASH_ANYONECANPAY") == 0){ + signtype = CB_SIGHASH_ANYONECANPAY; + } + else{ + // we have to fail here + return "NULL"; + } +/* + CBTransactionSignPubKeyHashInput( + tx + ,keypair->keyPair + , prevOutSubScript + , (uint32_t)input + , CB_SIGHASH_ALL + );*/ + CBScript * oldprevOutSubScript = tx->inputs[input]->scriptObject; + tx->inputs[input]->scriptObject = CBNewScriptOfSize(CB_PUBKEY_SIZE + CB_MAX_DER_SIG_SIZE + 3); + uint8_t sigLen = CBTransactionAddSignature(tx, tx->inputs[input]->scriptObject, 0, + keypair->keyPair, oldprevOutSubScript, input, signtype); + if (!sigLen){ + CBLogError("Unable to add a signature to a pubkey hash transaction input."); + return "NULL"; + } + // add the public key + CBByteArraySetByte(tx->inputs[input]->scriptObject, sigLen, CB_PUBKEY_SIZE); + memcpy(CBByteArrayGetData(tx->inputs[input]->scriptObject) + sigLen + 1, keypair->keyPair->pubkey.key, CB_PUBKEY_SIZE); + //return txString; + + return obj_to_serializeddata(tx); + +} + + +#line 280 "Transaction.c" +#ifndef PERL_UNUSED_VAR +# define PERL_UNUSED_VAR(var) if (0) var = var +#endif + +#ifndef PERL_ARGS_ASSERT_CROAK_XS_USAGE +#define PERL_ARGS_ASSERT_CROAK_XS_USAGE assert(cv); assert(params) + +/* prototype to pass -Wmissing-prototypes */ +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params); + +STATIC void +S_croak_xs_usage(pTHX_ const CV *const cv, const char *const params) +{ + const GV *const gv = CvGV(cv); + + PERL_ARGS_ASSERT_CROAK_XS_USAGE; + + if (gv) { + const char *const gvname = GvNAME(gv); + const HV *const stash = GvSTASH(gv); + const char *const hvname = stash ? HvNAME(stash) : NULL; + + if (hvname) + Perl_croak(aTHX_ "Usage: %s::%s(%s)", hvname, gvname, params); + else + Perl_croak(aTHX_ "Usage: %s(%s)", gvname, params); + } else { + /* Pants. I don't think that it should be possible to get here. */ + Perl_croak(aTHX_ "Usage: CODE(0x%"UVxf")(%s)", PTR2UV(cv), params); + } +} +#undef PERL_ARGS_ASSERT_CROAK_XS_USAGE + +#ifdef PERL_IMPLICIT_CONTEXT +#define croak_xs_usage(a,b) S_croak_xs_usage(aTHX_ a,b) +#else +#define croak_xs_usage S_croak_xs_usage +#endif + +#endif + +/* NOTE: the prototype of newXSproto() is different in versions of perls, + * so we define a portable version of newXSproto() + */ +#ifdef newXS_flags +#define newXSproto_portable(name, c_impl, file, proto) newXS_flags(name, c_impl, file, proto, 0) +#else +#define newXSproto_portable(name, c_impl, file, proto) (PL_Sv=(SV*)newXS(name, c_impl, file), sv_setpv(PL_Sv, proto), (CV*)PL_Sv) +#endif /* !defined(newXS_flags) */ + +#line 332 "Transaction.c" + +XS(XS_CBitcoin__Transaction_create_tx_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_create_tx_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 6) + croak_xs_usage(cv, "lockTime, version, inputs, outputs, numOfInputs, numOfOutputs"); + { + int lockTime = (int)SvIV(ST(0)); + int version = (int)SvIV(ST(1)); + SV * inputs = ST(2); + SV * outputs = ST(3); + int numOfInputs = (int)SvIV(ST(4)); + int numOfOutputs = (int)SvIV(ST(5)); + char * RETVAL; + dXSTARG; + + RETVAL = create_tx_obj(lockTime, version, inputs, outputs, numOfInputs, numOfOutputs); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_lockTime_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_lockTime_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_lockTime_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_get_version_from_obj); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_get_version_from_obj) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 1) + croak_xs_usage(cv, "serializedDataString"); + { + char * serializedDataString = (char *)SvPV_nolen(ST(0)); + int RETVAL; + dXSTARG; + + RETVAL = get_version_from_obj(serializedDataString); + XSprePUSH; PUSHi((IV)RETVAL); + } + XSRETURN(1); +} + + +XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash); /* prototype to pass -Wmissing-prototypes */ +XS(XS_CBitcoin__Transaction_sign_tx_pubkeyhash) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif + if (items != 5) + croak_xs_usage(cv, "txString, keypairString, prevOutSubScriptString, input, signTypeString"); + { + char * txString = (char *)SvPV_nolen(ST(0)); + char * keypairString = (char *)SvPV_nolen(ST(1)); + char * prevOutSubScriptString = (char *)SvPV_nolen(ST(2)); + int input = (int)SvIV(ST(3)); + char * signTypeString = (char *)SvPV_nolen(ST(4)); + char * RETVAL; + dXSTARG; + + RETVAL = sign_tx_pubkeyhash(txString, keypairString, prevOutSubScriptString, input, signTypeString); + sv_setpv(TARG, RETVAL); XSprePUSH; PUSHTARG; + } + XSRETURN(1); +} + +#ifdef __cplusplus +extern "C" +#endif +XS(boot_CBitcoin__Transaction); /* prototype to pass -Wmissing-prototypes */ +XS(boot_CBitcoin__Transaction) +{ +#ifdef dVAR + dVAR; dXSARGS; +#else + dXSARGS; +#endif +#if (PERL_REVISION == 5 && PERL_VERSION < 9) + char* file = __FILE__; +#else + const char* file = __FILE__; +#endif + + PERL_UNUSED_VAR(cv); /* -W */ + PERL_UNUSED_VAR(items); /* -W */ +#ifdef XS_APIVERSION_BOOTCHECK + XS_APIVERSION_BOOTCHECK; +#endif + XS_VERSION_BOOTCHECK ; + + newXS("CBitcoin::Transaction::create_tx_obj", XS_CBitcoin__Transaction_create_tx_obj, file); + newXS("CBitcoin::Transaction::get_lockTime_from_obj", XS_CBitcoin__Transaction_get_lockTime_from_obj, file); + newXS("CBitcoin::Transaction::get_version_from_obj", XS_CBitcoin__Transaction_get_version_from_obj, file); + newXS("CBitcoin::Transaction::sign_tx_pubkeyhash", XS_CBitcoin__Transaction_sign_tx_pubkeyhash, file); +#if (PERL_REVISION == 5 && PERL_VERSION >= 9) + if (PL_unitcheckav) + call_list(PL_scopestack_ix, PL_unitcheckav); +#endif + XSRETURN_YES; +} + diff --git a/scripts/Transaction/Transaction.o b/scripts/Transaction/Transaction.o new file mode 100644 index 0000000000000000000000000000000000000000..633f1476af84e9a880817f864914573fe43ee458 GIT binary patch literal 128536 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

FgYiIjNUdZF~GIr^{bMVjgy z&*T>C1u|K!7hilw1)Oe`$^QUsnaLd>1Qj2Cd|I(KuNV(7XMPW&$(cK}sQ8L80V@Xm z)i8)F#%i=SuNYfZx7bpgTFaHw6|>5f_p~pVD;25}y*q&I$FCU7gAQnN^JGFpbz0+a zBtrB4B=*y{oU0dNb72|t6ynSBd zKIMg&RN2 zcYhEzY_07N-1+|b8!Cv;_m_Yz=eq}l==pwCu^uzukArCD`vEPg<$R;Jp6~0?+C1NP zt8TH&acXV8=PPD4-=8Z9YKKs%I?sPkDJL=uNLdBl(OlP0e$|8#hlAdte=wm0j(=ne1~Fb`pm6nHm5>O{Rf!( zwknwF(9Jq#{xkLbqobLBia37$74?75zhP@_{@wlI&rMX&JpX{+8afzQ?+;&BjLoyJ z_J>b`XlDN*)!uS{xJ-?M*}fI6&9i^6>K3cRskPZ(pqSO{f2ky>*`KUB(Z5l)A3yub zpRpcjbmzad{b4fOIscfi`2O(wLm+O-UWUg6Cg0b9P0fG&ex!UJw$@#FW67nqpwFII z9gK_LpX{XwbAO^PVgCoQiJStQvvF3D6dSJ^)%}Nxrv`sM11Vbn&uIOK0nrAm;Hi>>uLQpkdz|NnDftESqW!Xzbt~E;(8_W56H9}tmhtuX zG!?w4URgE^|KXg%g`0lWA9zh(SQ zk}CeL0+Wuv%P9T0_&Zlo|7ZMF7`Fcwf4Ol{D*gh1E#r^l)A9H9=gOA&9k7bO_dzuA z_o`}d8GpUdTgTr+Xl;(a=Tx`YZ8)_Sf9n*pioaycE)+2Ss#PaW`Fyq?U*Q;kQS4`9+|M?t@-zWA!Fp$V*JqTY7Q1rQ+q>9} zR!Y=!nI4Mo5LCquf;yr8)7Syk`a!H3&T)4}-{G2O{oIIiLvB8AYZ19G@Xi+ZaM%lf z1CC?&L!DAoyqp0YI$kDH+i~$yrl|ijUeXL(Yw_Z)hhHfB;_Kl*0KMyBFJQeM?p2J< z)k>|0e*n=$%U!CyIa>I<PrtBaL zc$Clf87cMO$F5dmj*U^R0e-+bY&T-s8d?9DeynrZr!*$kO$pC_J28w0paDJ{h;AxX zCxl?37UF20_cYI=nkN8}4AVB6=bsQ4ZOFbt^K8{T>4xV+2!O7~G|za=bH3)uHat&g zo*OjJ8JcIJ=2^rObls?VmTR64nulM9fX%-co)wyBlIH2HdD>_m+vqw~^Au^GZ$+46 z|B%kxRGMw%^wK;Dl?!kFGf+B`<6V7P}6xN|~oYPPeR^q%L=WRGw zVBL@5yd7tOpsV2C6KC#Yt8p&DP0lW2oDUG=Rz2i{Tt0Wec{84NtjC$p`F7)+hR2*o zaOQL35Yo5;k8GzgopHFIx!V^{w(ON@c88R?qc~gBz}se>f1_`c_eZysVlYf*f*hu;7 z5{Ak0)on-0O5Z!sQw|bTgC(wQB(!OLBjK+~YyH(^gWi2{{>hZ+A~?z&Csc?oI*x$n~%v*O?3GHR^d#*o9m9$iNM zCis8{Us&L=UWbeNE+X+R)6spmD#b7wHuc>u@)fhQg6aNkM7Q*~v3f#JtfP=#GTBdrwPVqVU|rwR(Yb{cX2&z{`x zcOE-{?~P*oAU+cyw03&Fz0*B`4Mw|-kjeu=TFS}dvi`O z0UI>uZst6|oJX7U>E=A&oG&ovb>@77Ip1T>kC^lG=KPj9e`3zxn{xu+7{L)V=Wgaa zz??^$^XcY1-<&Tn=XK_MgE`-0&X1V$^XB}PIe%i#-5rL|~l!yNTj z_W)_#a9%zGC;P4%#LJ0j^Q~8xAL1n=U%g^jg>?08P?u-)#$|(I*w+!48x?gX+~nJI z4kgrf$K}=PvO8Xz@m+HUs4(bt2aT)YHs7_Xv1bIATY1?=`2PvpeLEEWHjLQ!TXlJ7 z9xfl|WrApjN`Ub^gYo!Jfsy{A3{)Df*^xNd6sg zS7P`FTqd$#TgRwuYbEzbw|z;GAs~qvn60G3FTh4U)3CfG6)DF?D#Sh%)| zM2eW?ih+iv&S;)TDG7pI0>dzcCCM}Fw?L9X3?_M|x`t%=GiEw@mVrXffV-1t8<-|< zM9<_owpJXH-(l91=NgzRU&C}K&oeMAJ3()9mFZgm<#S+R;JF-Z#**)}`30ranKM^f z$vf0Fm5-r-yA4c0>s%}O9=ktmb|NWq0J10fUIQgsXIsfTZO(!dNwX5kHVQ)3ggH<* z9w06KWh@vXrOPsaj8#~?QX;fIBLO2x$#24?<^K_bOzAoS9BoC)(A#kqf5yC}4BLlR zy1NeoJ!Lq9%!&A|wrMG&Un5g0{Ff5d&alKv#9Yc)jr`(oP@6K2S{VuGGN}!eYq^yz zT-{}Iyh}Lc^eOQ!(^_;n)0iTD!px_frF9C?j$@k6sE0$uqA<|e8ihErS&J!d zE=M+p1INf{*!;~TmzRLNKu4}6KIVWI8o5?xb;`g`z?9J$0hw~Ly8MINzvSa`E(epbf@&7g5G#@5`Sk)dVI8dGKpM7xDg6eu zfjOVi_)=|vC2GN$GC(80I6oDr+!!a0AZAh)a}10E{{tuuDN86e+ddnTg5(RTD~=gq zLHP+{G=BS6<{%*Z^a9y`6y^r{GKT!TB@Fauo+dIwZv>|@F<>RH#(Q_0W${X8@@({z zB~@T!h~#tyDqW|L5YHp2q`otFgkVk(WUdzjQ&qb{(dKTH*>6y3}qO z32_)Rl3Jiqnm`^{sf8Ma;Ob2DN$v}KLunmC*cXb2ijbHcNv7vU!#io6r~{cI-ULHh zXYGMBaV0s!mtzK;NS2lS3?zrss}@tpU-1fR`nj%%V<%ggbq_&e`vcwiY-jB0R@MUvtRfwz;_|_S;k=xL%e8Ia zrDekZ2xcnx3#?yRa}v)$2y{55(#l$xcm%B-msMK@+4=U1ScBvqxFNf%{R31ZO5^~H zE)IpX5x9V&f~{$?AF2`HABPf#I=zmh0%QvN6LXwMxYH#N=~C<5JBtMKubs~B4WmX;+Myw7aIJ`xPZ$oy+xfow%@CrK% zF{j2CtZOm8IMm|<^o|eEJ3hc;#^+L+#}}u>#}}u>#}}u>$LCU-#|Mgcd~q0&n=p~V z)%FK!^!YLaK^9zR!oEPxLuv=FGO$EGg_I3$wBJz7<q*5;=weJ<@)ZDHJJ} zccPePM~&wyQpX(nJy5pVLF5keCRE=k(MlENt}8DJ~j7DFvc^2~eMb zrxKNj1JIq*_pdrR#8*W9G&)(##{!#ETA?^A#HAQSPML0tidC5XoN|pOh%AgZXQ0+s zDf&QK&LG`3P0T~-%{f`4v&HR*shq(Y%@P+;!w`+;i2xETXPCBgfw%>0P|gUAszrBH z;+&BhtqhMn?E))jbT@GLBB)mrkiDN;4oigw@>^AVVg5uOWxxX?`Hs>!`+E5vd<@OMhfK2 z*@lAei^P24vCC_$oLbG?n0qPF?PQ>bA%7i+lPFWxT%yhOvDesK$1FJIb^eRuiAV1!D}6&mjLizreq=Sqf& zFS5rkI`{xr{do-GKEK$^kXk)_Ea85?_?Yv!CeWYofM49tpjtaYdGa8bIo@@;HRcyj zW3!P{uSGTa#b3z0p=LDu9`TD$83Ya5$o&c8{Q|(Nf5EsQIYC@bt2S$^4kn0OIHKz{ zj3tO`7zkVR5SkK1A4bVm!*akGpeUBF`j>)7bix9>U&4aTm6BIX~;x zXA{Le46|Q!>vM^69=4b{mR+Wd-j^ufL8;1VV4()Cxic#ByY#! zo736gN0Q{544|;Ve};S}K@YV6p)@7Q6#BQ9X@4|HuA_g74Sp<1{)Ac0>23J`f=}Z( znww7it_7B zKJQME3t8@0oB4V?MfT==t~2wwCq=g7d|hSmvnld+=GS^-@4gh7O#jszygx-Q=KOCo z`VXYY4UDgAO#B^8k+(3Pue15+4XbU6jBtLhSKB7UM~b|k^<#^{M^fZBtn^zAt_#R# z@w6c427}iJlk3sILKe7VFjX#{c`I+`*mF3ub)#rEJH1-RI7q zl>EAI&R>oGgHl#-{{Ck0$5KvYy?M=@PbnwUp4W~2O;RqWf8I3X{Z7g~%=fnpJ}hMi z+Vi%--%I%fcLfIw{z1xW&fmLs4^^LzNEu*!zGv{yQeMsYecukN_PSJge;43?7`!Gm zb?oe=R?a_7ysuA{N4Va6V(`XP`3vo9G^wKR4^!wp95tL3= zw>wRaX8a^MT@V)7=%vY%XkW6y2h!wa0yxFsrZo8^<3T!lyP{*c2PZC_+Zy7bZC?VW3MzNE{G z7~dUD`|s0bN7~cbIR{~k%~!g-kM$tW(HooH>2d|_i8u^Pj4xfzq`&eF-j^=lC+=$G z?N67_az45_dcA%lUCyPwB@V^A%qiZ_kj(Q{3ekyfZ^ir~OfbcV)&r}Mi;Cx1raY$vc$TBL%ijRgpYu&TeVZvS;(RP{&VU+U zYiT+vT=>5yK zEV-QP{Tio9$={wO(}?TM_;zN=arF1qM&7P0`7!q&n@#`SS#lcjHfNWTzb8w6zp+&A!hGBAJfiv^%#tZS;5!VCWyx&TvmM5srYzZx z@pq52tdiqBk|lq~eAwyEPqv)S_TRemlPx>5{XT>DXUh)hz`ry2K(>6E_tRzr>Vk3(=l>BiUu%N$W5&;JGye5K z$(Q$X{^IOa^>=enPGf#NZt%9C$Bzi zM(H~klwt07l6*S8V?lWr*Q0<>$4^sGF5-M9__}eAVL^=w-_0cYc zOFSpzIjmUi0=Hq|;AG^X-n5h4PV-}&j}a~HQnjj(I0Ez9rD>EarWF9CGjQ-(gV=_3 zv0VnkhK~;`Q8n6SYAGe66Jn}e7H{G4gjlSnhHU*_$!12reTzo!AE=@ko7W()DAx8D;URdq49TcXl1a}w~LJf9W)N`J*;Bf zl7GXp5-c;&mZ!r9!EzsW=}yFvS3*VbBp)|f__ST#0Rh2*KHh_1O5|545y3&GHBF93 z1q+^RV3xcVb_NIg__z_DFUc&-b#RpL=O|&=%DoDmvo!svwdf7nAAsks9){FdRUp_AylXKU9{a< zVww*qPsdeA+y`H^kLV99!&ZlBm6+O1iKC#r<4XL!&T#1W_B8FZ&mScG=&>r9RM7>H{sMKG0IC z3q$fC@+0)1U8_Ue$}L2J%G#XBKYA4i!GMy`lQ#eCjy7H2EX7TKs-=>rS}Jj&QL@KX zA|FS9gr2rbl+FSx_YKtftm_kNp(Z&GGf>bW`2}1HdaFZ<&N@rbSsen#S7H_zI>-TP zrqaX#jG{xTMj`Po@~lIedDw5|9!Q1wEs3vF{LSbP&YjJjh7zAU$16T}t}FgNRL$IZ zW+ue5ZGfsY!bA+Ez^#e-5E76OSQ0v5Zv@ajdZ*eGpIC5(z<1ZBrmT?s2iAu_9@si)J# zVN}qLsUNE;KU=IKO4GSC%gVi#L3d-~3JfUl6CAoe^s{|EShPcbY3a~kS~~QXmJW5H zapl~UDBxtOB3>dtMSTmUI_@WX*I=g_N;9xRZe?q_fl(Pi z@e5_B`ywY&DOaQ3gfboNp=t6y>{>%vrgfG)lL?k>S{KL)j4>26t<`cOmWxo1X}3Rjmnw3lqK$_#M|MVWIvo=(O%}l&tf~S+ow9Js99nQbhb~^ zNQghfp!Vr`sx3`eD7@`6bX!P_VEN0`C@i)n0A-!3I19v=P|`klzCtD9j|htPIhwN^ zdzDFNT3I(I7NCEZ*-J07@QGL827tT)Nw6>{&}8BI4M@le1vt-nf8iXr3(&)PGcXrf z?E~ECJ-i@;)RSi1^E6MSCgUeZr07p7H+U|A4DE!-J19h^bEWQSC?en78r#t@-ah=P*WtLT%{1y~v+cYDnei;^iaGf9$K~4}|!Wi0{*u);_oNE7w z(3Agx0iDy-gBs4tR7`#6Z1vnnxf99NIcQ*-d;%lwoMT`}Ho+~OLk5Or4xEhzSr?oF zIWZNmy@4f?e;=NeccAEcsA21aE*Z0_9Iz)JZcX0>zJz-jWaE`WJ< z8BBK~vt%lVkZ%uGaDjZAt=-Iss^uzdd$p;Wxol95;c^_-b zIZ42M%;!R@Y?+Gtiq3uQ5s>YRthVKRnmxciP2u&nyq)5P+E1wdn{C;Ei_UnXN#Sj_ zypDLR!P{+lBk?$cciM70@pyxG+46Uoo6dO82~&ytDqC`nI!`js(e~JKI?|+brG2K- z|Ez6AhI4oiCvQbj33YyqE)lyZ^Do*vmT1QjJg%K1#I;Db&U+YM%(4W*|3N1~^h9u| zH}^O$_4*U3)UBusU23M~za9<<&#eWe{Ya#q?H`5T;VRx(CkQg;UI-Q8E9~EpWg)I@ z|7Zk8mona>rr(Xp5qWR@fX0mFh~2yctT-8~;Ksan895nO^71{!&;{crA_o%$Zy)>=o!7V%-0h;Htk9VuxH4x!l@-cOnS@KRs5^{H<7c`E zbnzan$xYWAd?6-a5V_fHM{BpB|9C5O)|pzsVk;%L9dG=^AgIZ0uXpE`cmn~Q+ktlQ zRn!2b=Q2)^H&&(y)o@dj(IpG>Qlsqt1E;8lMK$9wI5AYi`jPRbV&LX9BLV(4-Oh!_ zLN)v-HREQe3Dx+J;u+J_C6`5vnOzbDhm#wv zuWMFcr>s`$>zdWqHLI^P>bWh0nzg*0)N0l?t6AHuW^J>YwaseQHmh0NtY&Sqnzcp^ z_i9kHf%nu}&4y+*8=BQ@XjZeKS ztmc|#HP1I~hMFzB-P3BeG^^RttY%BInk~(0wlu5R(yV4nvzjeN z4R@PRb7M_hje6lALq*_?&1!CJR&!&snj4$d+}Nz<#%47)DmBSZU@+?=3wismwziQ) z-mPt9k#}nwS>*1|xwUmsNVLOkTV(OarOcYJkeKYq;zJ4*h%6L>$YL$CL{uUp%X3mjf4DvIw_^^^06`v`YT1urjMYU-(Mf@Hc>&W6J zRT`(M^m6sh5=*i0xoDo)nnd)IlDR;PQ&wwKEv`m^jx6S^VtEmtVh^Y-|`fg%TFJDb6{3E;FVqhDq+m0}1Ep(mQuIJ6nM&tGNE2u|#1sF|e zi>Chq>qFb@S7Aop^C&T)Ta`&L@hNogmWWCtLfdT?(Yz#Xg6>f7+vRnKCqsAIjIO*p z+3zm(L0aBcUhh!+kinwdZ5a|ygzmL@$DemCZQiM`d!QloTV)4$`RpS1PZWDleTJB= zK8e%Y9JP3(2CC}U1UU(!8s>Eup(Lji3wvG?COwp_ufKsmLMiIGGx+#sZ}OkvV1Fc= zFU|<=>>@$!G)vsZ$;r{k7M&O$A@gj+^0Ql{!yxoZ{wNVEUL=1%C5-ih+*L=WB}#D% z7U|}$5yRQmotcI;LJTG<&?rspX518N&XASdDDj8OBRxK+$d|E$jP&Fs0>DbV3>QD) z$Gmc$%%>G1Qksu&6hD!5fYBc2f3FZRZ@u{~KN%zC?3$c`yqgudn29Gg7Jz)oSp$@K zF(3ix(pwe6{Rn0xa>e@!rHL!B@v$U6n#5 z;(2;?{RV}~#f1pe$cBd%su0P{kd5ys6cv4#yH{%smEy0|u=%KJn}+H74Cbcv#;*jy z2bu|j9#0S)d2$`>PK%t+ccsK_s7#R>zH`Ktz5#oXNG%(#HqADE4L% zs`V|fSSjqDAWCqZAnsD#$xF{@Gid>uKEf&6<|MQr|DwpfTabeaa(Gq>ZA}naXwSB% zw#Ee-z9xg;Fdn~Cx`cT-5SIlimpPfu8iPs(<%4OlVxqO2V=og_2bFs{PH=9Hb8`N@ zoP>tyF~!t`4nMYJB7_j$6efrd0CHbW#iaI8AL@1$k&~UGa@5bgFeEbAnTu&(rVh6vXB#!))bpyW$P9xDWPTDj&rzQ% z;*DFmE*Ws9ky9>TVrtEDbWJ>2zKl8;nQh<@*%vh|GDkfj!RzU8Ao&sm>uJ~W$hppt zf$k_4#z(P~hAuKt$km+D#RjIyBq~_q=p6#?KUr7KGuDKa&#TRl^JOWPm&o}B7RbLL zSR%^}Z%+=n#tgEA({q8dI&RI%xHW>M@gfyam{d6%@e{e&z!c@FOXAbhH5|Fz`D;+0XGU86Y6YYhk~|6FGr5|-0hqOUizlP}j2ZZYZ#IzhjC+WjT^I#>)mZ}W0(cE8;xmtMz$N6C5tHY4tM18r|y7v8s~=PC5*JY z49w^7?{O|V*&Y5)S7YkjK33$n?hK{Q?c0n})PV1ctN)rM|96HpOONpP28Ogd?l1(*#dcL>^QnLhfgPJ!AsRQo0{Dy8X(^Kee#ZMJe)Gu2zp2 zKcvZ}c;X)UbKEUzB6gdJKz1%%YDFG3FhBLY*(;l20j++_HH}ugpxo*njg&cmK`AS| z2>;6)z95^9YLs^~Cw;85kk>D<+DulpE$=jLcjr2vk=~QnwazY-oV?4zxV}^+ZrSUt{@91_`4;170KxZqF<72DZ8TCS`c>#o6 z%8dNY;dS5!1lhL8za73eCQswm;}dtrWC<(yrw01veXM*jch2NxbVH+wj}+diSdq`- zlg9sTAo6*9(!S*;>I(zIatOF1Upo30p+NHCT;wZd18eFWN17yAv=sK82IhK}KGJrjmO-HQm!ZpFIE z5~sqDZoM@U;#{H9)LrQS_qDqBbFm+|pVhs;ixWgK!lnCw`Zk(hi2EtL>MMn~ z5JBF({2YwjAK45%i|r?!q3|}~eaLwi-*TnUPZlX&W$P6hQ(TYN(dVckeC#sV_+C4v zI$BV$3}GWip_&vFxh|T65>n8^bZx+aZ!t}!RM$`hi9?4QzZ$wqgCMs%ho`Z#a%6&DGx9~cLUnN$_{BMfB z!6Yl5O7|tkYLBtt?Ojc@f?5cB3s1U~UU!llSH`+1*b6a?) z>A%mGiHO6(yPelDAXI8wZtMd5Tca$V@yWFWl=e;bFfc z?;?KIwa1Zfp)?de=i1}QXE=*5IRDW0IPwEd^4}ePiyHp($pM+buetht^8GOI>#lyE zd<4-__?Gi8t=}gXa=ia=7|hV`lfzNL3jb;P*ZJimh^xX6O#k(MnaKJ2&}mftH~ZzV zHo!55f7}t@vGL2BIld-`FX8ihQF1@+`OZ0{`1kweKRADfjl2VXnMM15FzpBZ@+sQ; zlXF<{$NVyx{6D+n_sb#3lEPn2`w_p)q`m~7)?e2~_GJG=9}^Do(MAqrdy>z5YSBiH z3>K51oQYeK#;a#Br0`K{nZPGuXq%NCzx;E&E?WY9sYZuJlI`bu7%v- z_Igm;Cq?jyM}pwvPJC|+l)$xEE=q!xjxz@3Vk$eG>TuP9+El!q6+F$+AHxfI6k#2l zs$TkIwfJo(z|##3$+Nluo?#Z~up9-k!D&h=ss)toz{(d0z_a1t45u=#?3@X>$$4SM$3eBTItMIQ+hxHhQlsM|Ovf;B)23QU>Lzp*E?Z z;s!kUt&<+b4btr87g@pYjC-uqg)6P#Ve`4aAlnblNo1S5V!0JOVj8SeJ`)T6=;iy# znH}f*+1PFPesKqBbx#X^<6Hy2LZ$Y5WpCcs2(#dSlsS2CGJ<|pI<3IJF~0@D&zyJA zLq3cE4SsGW4o`3cfM2L4E)o21tAk%VPhk9<^iSxaqsk=Qnqyk|jqSjdpo(A*_5PF$ zG8}vQOblU#4-Qo?W#tusHCW-h89vQ>sXMNR`2@t~-NbMn?qf{keNFlZABU3nBm-=u z?*m*z5&wojU>!oRGI+Uqdrba;L%JgVve;6rK*75B%VMvfXaui}zbsbS25?pUWwGy3 z0)ndz6!Io4SHU#~rpS{}fP-sQf#9GI`2pAYn6G?UY!q@Rc$I+&8dRg;dc#~GE3iuo z)*DzNS0n&#FtA*HLdgxjCJYHHwOmCbH~RDwgQ(TLGWciTxN#W!W=_g(^~PM@YUbUe zzUWwV3OoSiCBaet{os<{!Y9Gee)og_{**RGHF4_7IH;)qEpT!azb^nBYhXxTN3W0b z^HCcfkjfVb#~YY0&!W2~7+4@vP{D%}4eW{8;LCvtf~Mxq=QK_B^SVHPjy)a(^$|Zk z7UaDFcw?%ayKcTea(uf0RrlvxBgeGs2bUkBN(N~##1+KZ`C5r)r>3BJ?sf*K34*Ww zfvepOcK?&GNC_q{DfsX(r|A0-_h5(=VpxVjv;ODG{fO&*2i?J$XZ4Br*7E+>T z)~0~o#ihyis4`hs8;HNg6DpFC36Ra_B1Ne_^kv=VUt20lt5mZs#ARtf>DuEdVmbsC zW$5CHzjO02=CUYAyF%|FgQht}q4B36txm^;7v=Jj0xOWxMIE(xA&TJoqE1|=Fu`IR z##z)wqb#uugDX;t1Y%ZP*%l~Yx8;iOsjKU$N@h4*U1Jq>)1W|HKy^jh#u9Om-Fj%$ zUwlc_Q+uFXEaKRDX;dK&ARvm0wJW3IZ%Bfo-umswv7*ceRHEC)i9tktG#W1s&`k3s z`3YhL;;g8jc6p^p<6!%1G)=6gze;ry&Jt6wrWXy+bG1M`kK2x-GL06A=?MHH^9A}P z;xOD(bdv5@Ee>P7EgGmtv{KBZE#~X=mx}!y(aCxtt+T})$ibq)8eVCO5s0OtAsVi- z#Z6(rp&G8X#r-LO6_m^SPvOwmVV7YxdHX3YM_DTxP8+y^6qZ%HtMLiujR>Om~cpqE%qH%m{7+>?V zMJOL|Jl*7re1VOF0Gz;?@I}6|#hnb#i5eb)UJh^)Kj6ey0wEcjzM@n3*{Uyc#10+c=f?%>GG7qRk-J|)fL~6LO8T*+?MN4%D zzEYMT_Q;3iui>DRa>mwZ7dd7roEy# z-o)>0n_oX@E>u?TZtTypRw*I5(_l*0nzUaPyB`&xKz*Bz-%#*&xd8!~wKlCQ$O)nc zerKyMfoq+;&V?)dS*tVny^i9ADG21^0?epgoCN7k@q4}Dvf{5Wss7?WA^+MG--iwf zR$vIm9nH$k+=zau)wAc}^*42m3SuR8!MyUz^2%wBmD?A6vbtsN1PM<<@H^Y)_dc|h zOg{Xyo%rYQ?&Wx*%J!PR;az6I)dj{RF|MEeV3}VB@bJ zjKe4x;{0O18U?rL9fq)t&)5<~EgDjEN2*JtWPVppF{fI+-+=oP8B+YhkRm3c7b7P@ z@MXXR@zW^&ZoufVnMdyue~)?p0CRD_E5y&tH^ST=%P1j{|MhGx_?2G#T_@t6F76C{B(zQI*`o?X^)Y78o_wc{ z<-Z*QzGpA}=dXUNM!B$^ z>ii#L0KH1@#bw));z-ZajKt#nuZ+Y$!Or5Y+VHT*$KZ;)kxg&9$>rzWRB`todFh9n zd*}5ypwadkrWldjRJ! z|IB+yIWOskp~#q$lTwsPT|_4e7^qDu)sylx7}X?&Eq_TGng?A@X{VPA{u*a-6)Y?n zLMBS{X95l7ygHEqmVX1aSG+|2l9J(PP62;899J?zyUG%e!$&0}IT*g4wGL}b$tX@d z@9!oeuS-U2S&8BSWJ$>wif|%@VhGA`Npzt?y|kSK%1)n^NXu3N_jw(@vHb5LPD{rA z45EK2mdHN&^kQH8sQ|(^-M(xpTH#zCmzguKRYSj(&}*kN&u#&&e;A7G49?PHU$m?EafJc$F7ywW`Q`sp6dJ7o;tvuV)wC1Cz{rm(b_||Iv0Rv zid|xrPBV?4p>agK(JGx~=)ZzK-Oy_+t4#gR!cY~w2!C6-#?u)(9WWp$>5v4WhrR%z zXY2Po>kRX^=DY!x+y6Y>vQFavAz*jlZmApMTMsUmgX1HH{u_IOuQRi0D`A^#z&v{5 zMZkghUj-~XpMJ7Y+eozEPwWN{kNfWE?#M- z4{|+bb26-x?bG2@=S`dUiac(?wv@*>IKb|Hre*cpi^bh}llKJUkY^|1t{d$AEo(K< z;1}6=fZn$4fi=~*<||$wp=lsKKXTM7n7xo1{of9gk&W8{hm1zd=~g^iu&mpru>)q# z`GB&%W{>;Zf#o1$xH~eT|9}wShg_#-0G7=%_I`|Em#y)F>ph_KE(3l6+q)2rS#mDL z?^Er*R@wa?&a!8`;AIae{m_7Vgh@LX%HX^lT0i$P{b)e=V*CdripeNatd{YrvNq%a zr4a*$qTdDaepcC34^tVx63s((zs!Ic=wS`5z^_-)um6>(3(hB;F}|--R_yIk?g3U= zJCEIE5idB&3pRK;=LWaQ#K%KxvOyH*pr(s#QdlCKsIE1Cx zE@mm#soj^U-3zAZ)E>apo(rf`yPTHU0g>wv@bs@!ghjrmnLs!K_ z)rBn6N@-i-tyXEo&{-G$9M{5$iPwcg z1gPtRY8_e)g|Qi6VYoPl87_Y8Lx(V2obMSf{TV9G57aUQExKYHA!99}su(}AV%!Hf zbQjounhyHjE)>8&i}o_;Wn;r=z@d`sH)fawRvGtFJXF(XUhty_lqQE2m-WKM$o;c* zg6JYsGQgh9O4G@3C_yD&aH$t;^@87d!5%Mo(F009HK6C2mi3%cKGlEi?kf`FS?XMY zk$mm#a?}9UswS_!NNcMs0q)_UZ0+O$rG*BtR^?%4bTPHc_{Lnk$7Noy)&SP3vaQ~h z9Uf5numP;nb#cL_N94G$O^lEJUM)jBz$&}K69r}UUU0h?JmfXNO{8NgX@0zt_O<_xs%Q^ZMRdREnul#M zk1X!~rq6VX=wJr>EYSM@0K@Ddtcy1S4#a_zI!g*bHO!Ya>yl{$-@H`h9^R z$E)90rXlANBpW(&sk;Cjel&E}p4V&1=pvIK2E(EX z`*Dod@!58XD=l9Sb`os0|1ulFwNgqOx`U?Uk_{9I1ebDY5>zb5#Dgqe65G6>~1f(-vGTO zsfHJ;=tZ?9$x^$>HT2RfZ=XdTfFkS}UD;_~z(23WL%H@bPp5L;Eb}-flTP+z(h!(p zkI|WAxcTA)58iLvPtS2PNj;Stnc-$ql$mrHVRa7p#**=<@u-Cc`(aXdHS?5CNs-!GIVAcpRw}b zQvP5weULjuH_KMTxC*-`EXPYmcG&cK9P22LzL^+Nmnt{Q+Nmt-n`N>L9r|0=VnCf` zx$0vAlV!Oo%l?K&m1Vgq%d)dE^(xDB^Lk*NWx9Rnb{O)Td0@2z2J}sl=_T^Sb{QO zFsmW6EMVv=%Q_gqEE}wtyjjLSF2O^YJkSG5M;X8@TNdwUm96kFm2LHcTMf`zb`V~C zkzQ0;R;03we>$zK(%a`O53tHk@{F!*gcqFY1^0P6mAhf`U$QK(CnBg)&D$Q+wOw~T z?v1d>E}8G%msfJHR)CBe$mcossce}|sMf2~xL*B+P_0)}nPq(ZRl46uy$nfnQAM|%z`T&$MyH7j{kZwoZ?ntYzT{dX5jO|Rf#QA#KF91E+ z(7C8}X{HZy$LgjVpW{^6X>f|u8|h|xJzk(a5)8p34GY|K>#fo)*v_OIIw0Ln0o3W% z*PCvARl5BFjVj&xs&xAiP^X)2Ueex8H{Cuo&4EJb8>#NEPf`M(0FzF)foj^mC06M+ zNTpk02d0~`T&J5CJmdkTdkx^`ZSc9?bi>B?We;cBM_%xy2b9{zIV?k$Dj7P{k_}yD zS~~-nY4<87Z>EJktYzgMP|6Q~crer6iT6XMd6>$!dIA5WArGBtm2hC`0yontRHpGy zE0<03_L=4Z$TZLB%0_s>nO<<8r&GBbA;)A|^F4N7dl1yx({-kqu620k&7+!4$&0X_ zeTgSO_H^zH^KdnA*^+sdeKvDxI-$z68O*dDfMd3xyFHW7D}C4Qx8t>%KAde@$D_5$ZB^SG(Zwp8 zXIlAutjzW90fnHSC|+jhyhxHaX$rzm#S5;v(wsifwk9ko+M2PE~`fI6w8-lUGI zr2Y#URZ>S)QYUmqxV;^QGTnR;uwFxT`_MYX+3#L0F}Q4#Ssc2aAouEiGm>!dza zCG`N{vV&%HDyjWNupNg2nI2Hu)c~%cIndL5tK{xfdwbZ+MtT9i`{+t7oofIq-swt^ z&g}ENOqUqI%)ZjAO)a;pJgj9mc|hsi1~9W9iube1-t;h)9rl7>4A7aq2VP9Ytm!rM zbd}j>hT)}M-ae0cfK_&**MWC=!J}S~)T7x64ZSPc~#`N?%Rp9=B|@p)>VMuQ%X) zWYAp0r1M>u8fPi+CHNgJYhJveSSKw z$tr!$(7B$!6Yq&#g`so%{I!REz|c9YM7W*Xz8Vb6oextBreMaL>9)+M^>=Nn`Cwmawg6 zc4l^Wta*7JtCd3>VnG62oA5}0%gYXz5J&r>ah!?$hza-^LQ#zpV)>${DH1>4NXXGd-yZ z>VkXYt%)w^QzlDG&x$3sU#SV|f=`C!5J-<@+S!gL_|gY|P8W>yBm9F=bGo1`y5JAU zrIC1<7sL{Xq{j%~d3ij+*HictI$s?tw9CY#OBdV}(*^HZ2MM}c#_fJB$_JYGq6x#|5l`?O5UYLr8f6ak+m)czmc$zsPZG9YtqD%ytYnHi>LanN zI}gSZ+ov?aDSUTW&fEElSf-u79Z$SZ6K)FM4+ef6<=hm$Tc+>=8FVUMhDRD%e-LJW+}#J`yXm>$95Zn!=HzzSsXSgs1OSzW<R?u&m5MBRlnUnN5It1vhs zR44$U`XrK0sP2gi)jc9qKgLZFs(VDJHbT!hp>nr>k!cBOy8E9+`rthN^u0m8;BbC_ zQ7O4E^S$dFBT|al(8d<8L=)aCtn+vNNOOo_d76z0Z|5U1hU|Pip5W{H{7IopXDtF;8b`?)(ON`d+^md+%7i((bF%uIMj^1<-f zRdHG@iqTceaJ-g@SS>SF%icIGwruLEyG@kf$EV2DTO}qeuuorWiqHHqh?fg&}0OCER;yr%^zj z0D8Xn!mmStZP~a0%qr@LJ)d69~U=xMAu|`0u*}8`ztD?u+|0xf_^mgWR0-uZE(ycGMTk=#GIyf%T~E zuYK;T`+QDE3ZSA9ShtZQ^0<*dEO^(zl>@*Za(F%=R6zY9{^1QYZymOP}7AAR*pipGSnOeAM@SZh;%E_*jZJyvuct zwtfRMZ{TBFM#V3~e;QtJyrF{HKt_0n{Hb-YTSt~T0%#yNe9@O1_k#I59$qb{&-gTG z?%7K2{K%;nAZ6s4$kMpb_i49cxA`O^s=j^|Zhtl9R5=Zm%fbhWara&<{C7NdfqeeL zr$LdssP)${wmXjXq3ed+Adu9$>McMnPu-8dt9Uxig#WpV!Km9Dd+De3MEo4zzR=toG(#a8xla|X@=*zu+{zE8s$N#F)PX}jTDU@}DRO7wfj+mVOX#O2}BwsPJ~ zEaM^n(#w!>@qF=Cd}=+HS?ZDpiwSvI|7V;T-}ilYo6me~;8W-5<{JOX3)ZddzhL79 zYy7qTz;ZY!S9mK|z7Qw`AQS{u%QkrZ_#)5ll^IOX^Daad$UQGiKVzN0awTv2NTgPW zId_5mD|{c1(gT0~bG^*E%_z2Vo!@^!lz-LpfX7=UA@)4xzCdd^FSCxdT!>@}EogE8 zV(hKCxTBu6QM-6c@ZuOn*sGVqLhD5r`B$xC3meXpb}vS|sfe0EA>%yj%rnt#wkt)S zwGKU_7TKs+P=jrF<%}fo{a&q2dhzV27b{n;Ub$)|`|_Ny3CWX=sN>z|qF0U{xqDeu z0~Y-@2zYu|@gOX!`AQuJDfzsRJ(9diIU$^)?ddOU`vPn7p-#g!*(fZdzZgyRK{WJd7-@Y zLHxFD>qu^Y)!jaX^g0ot9k0II_xjF%-6;696E{5Gz!R&M2di;ZrsKuRUVzGC$=$BZ zZ;q~FvFqbRb&#|tqTxlWIN&dg5ZJz0=^tB83ECT0aNbp`Ix5(weF9TS#;8)I$uX@B zNmu=TB~$N@NB3F!K$OJ7UK1F1z8-Thy2oT@C3v;gCvi7McP_!Cn+R!L$q~3-SU(v@ zI@F;Mg+5un!*Qg`cVyV(h+eg7n=mLF=0Nr27~c4VD)GkPNcsMgn9WeA)J6E`Z*Dgm zn@iPvxm_r3Ufi`K*s*O>xm0a0ZknsMH_wz>P47R>(mdOl!(}g*W;V~|^Sw208{TQn zMLFxmMtSr0;p?_-9y@Y$T=BJht{i6d#zqhBA6{&NY6s>Cwa(Uy&Ea`=#6Y-!tx}~3 zBzoIy6$-^!z{>!a=9opIc>$yg=sPNe6SgqP@<*F^Vh$%HTdSvGIVxCnTY zxUbR3kqSYK%@^~ho9zm3gk^5d9I*Qb_fHgse9679P-qmJVZPB^v$%bi%L;LbGXOlb zPCI!(F7l>PYmrT0&DiMvVjXWV7pwV_H4Q7;XYUyF5BSf$`Q*t>d(Q3NbMgnf_q_P8 znf#SKFTSt1=j6H6WkA0;vuD$?zWxvRsr38%wp@I5YRenEzGZ#O`>t4vYya}TtJdR+ zm$zmmnR-7j=lEw6|LnmZe|g_E%-pv;br~<$^3Npyr0{Gw48Yn`k+re%x?;Bcs0@n+F zAAg?Fw`=Y4)L)>V|NE}K%lt2$Bj@>V&lk|IKl4+=$y~nr=fGulzc1yu{4sEO?&R)0 zsdcV>9p=CBTmLof{{h;EtercTdTs{+U-3VZOu)}u%-$sgocMtg{ujUR+A z$2A= zqZlwxF_@`w7bR0`l;-dxP2S72TeG`@0xV@K#4aedSE%(b?&moUADT*Hm@~P4stN1xu9BHYCGqcq@Rx_(VQ5+<)KWPc{NWNKsq4->S7rt#Z*jI)20WiEKDzj*e=sQY=U>yzFEEa~$wlxcQ)5 ztj@LO;S>e4rA8C<7HZ8iVEH^w)x*$ppxvmW$b7AKI)L@g2Q4rc)Xp?=)%-mAaA#5I zY6ct~Z*iuAY(;do-SjdT3y$$z9iu#(hurX1P{}n;qp{*_P|lr2Z%S+%qtwbZ=qMJe z3tls~P{iG4t6a;A1Yz*u##qN}MDn$AtkH`f zJm$qz5v<@OXg4{!MK7~|v23t$aI8CI}Hl?1_pQm5hM^nixq^qi@+S`Y`Ckv1k_ zv9Ja7VjdO2(6RW+2E$gGoA=J1rDWIJGgN?>OEbl}NX?6Z%gjLIoaR(V3(#c^5b1$; zL36$|3;k0+!+{oCRcng0Rs-4?kv^KbJX){R3Qd_5G9hFdf}s7-aE;p8NIYOqpa@ho z2UF8ro@a`)uE8K&xI8GI6F* zSF11!Q%6hPhH@2-^So3s+GwPPT12PNa(hmlmrJLM-i?Q{!SZra~WNl zh34U4%mq$Ib9%MK{c_{q5G{av6cUCyRCB|Wi8NJf70AtLPfRh*Ql?OHCI_Fn5`i;M z3FNcH*yNGJ<3V=c(S3(NHWet|Q3@7XIkaHLVQdtAzoFQQ_`ud1#d=u+IdJUq9#kVf zTZs;5s!*jc(D>UiZG$3hhS(aa66%R6<}ggSvwR0I9#9~(-(VAbDF`7oWE?ALmpy0Y zsMN%CLMu1`zN7;nz;qqp{W#`B3NQs=N$HwG<5wWYLF+WNfvAgGUHp@lSAok=Y;bm) zY{OTf>Jz6DWHpt;d6;SN7<3^zGYbJ0(JI|Z#j0)`Y!ss}RG#qWOm8O&tVvIhIRbkL z*M&_&1B!wGJIYO{usNF4^4XXvaI+i%kQ(A$a9-Qh5IB)uXWnO$L7&@oXZ?ZzE+Ls8v~p0^s^=q5 zUL?;HUa5edfIo3}0?uu@OuYqe!2vii1;PmueUiQ$DEGJnT=9B9~YH^uUXo%e5f=L973k3S2{0<(@BR+EAz|=T~8S}6Oeu?34 zr~^A!uFXK}6rgc&zkn4XhMN|&4%rfSZ*24cG#IS8@&m+kwP*q@o(N`PkjHWcCXXzI z|LPAg;RpF z1rvbb!nbQNoiMFn7D3vX29$yDg3^kPH%w5S(nU#`P#M@pSGg=eq*ZbP!-=#1Y z!7SzgmP6&m*+wPcN+`CBr#6!5D_o(9u3!MMvRZ_AI&Z$Y&<^nVVhBd90iJOjXm<*< zG!Wc2Lk=^w!dY3G%8-D5>R%(UVi37p#N4B$j!Ot(c(VRLqIyrtKbNIj!SY=QOEWD2d&lHa0Au$Btofl}# zLX0NIxq;O_W)75%tUNg=6lF*|2ONI77mU{6s*)vGt&8QDa+*LSCOBHmmB%1~uCf-~ zq!tvRnP=A@)eoi)9XZew^nsju$P_uj)uGgxK~|BekOX>Qm=$g)L_84&5~0VyodzQV z`q#XgN)R`~?FM*m!DUN2uC-xHAt`R2!b^6%LtAZxacWHr8Kv)t(W64FGKy9x3}6N* zQpwBDV?`&n$a$$5N;v3Ly|d_CP8mauE?^@J6mZQ*`;2iV*Qt!7nanP<7J_OMehGQu zA|4i2QKF{c$zz>U#voJBWS3D}y+Q|%3bySP=2?*9sah7G@Q8SXW);+zf{gtIZn3zR`ra2o<9$AN7Oa@_?0$ zeO2J-bIl`mkP#tNFps-U#17>~oJ41R1M~({gd+tDIhp~dp@W6&P$RbJWMG`jB`lR) zbdKx&Tpcr`d&wWs$OUmI++Y``pTt}kSPadT3=#S1gicq25`Wu;QOVHoiY110IO*k5 zQng9lYs0)E(hG;2`rM)^g&G%a!jc-;7NR*Lv{U<|X&tdu)s>4%I*P*%$TUMt0g~aw zn|~1-LFkIH6EGJ47?(x~^c8CZ@w_3hw-+&pw$PDT2~CT@v`jAvyC9e@N{^8UCs(M1 z8V>`Xfx8G@DLy*mgkoLMj0DE1**pn9sK%h@$>k&%qr%H&lPg5^;kt&UUzK#`S`cE! z{W8%|dckRW-zbf`F#?lE;M7#Jn z5zh~rn2dC45w8^ojtfWVx{ml*xj-K$@`{`fOHQb7kzZuU&ly7zXxAax+(2{F$M;Qw zGPI8U0xB1T*yxp`AHuJ>QU$Z)1l$s?|A2+Z$FQbyuT>MzoxX+)xAX?_i?YO}Q3dTd z!=_MOE{Y2wpsNP1%ltwgXGW)ln*mz9_US6)Y#B1>}B&M`Zm72G9uiFPY8LMRcdG2VXlCSx^9wZzUl_rqIrT1j4JTrDh~z*8(&Wi1 z2naSe5csuNKfKopY6xS+#|}>%K63M6Z}U8&N1Jc270ZR;#rZwlXw|o|hB3(P98LUHkmZ)l+ z=u{PIx1(BFL%`9%0;by9v5n%9Ux0@3@In~6!}T*~09orXR*wfmFppqgus2X@)Ll5z ziMz-jV+D+fRvIv=7&y9cY8Tw{7_-AjM1;kL-_2|tPh3~T?OM2 z)OK@_kruB0jLql*$(3+ECZ29x$tFobG%n(v41i&(Isfpix0pjXTb5KH8D3&lqO6bs z@fKzJvw`xzvV%d@L7BxCoGdiYo)t}-5!V@V!gX4$QH*w8Dk>5k^U%5GGIysk z-k}?gW9vf2P<(vdJ3h4UhRj%~T(MX})h+TxToDQ>EKZJ32>~S!bBRc*&RaMGyURHy zGX-+wHeN*7b7iO<2G*%#BtLpB`&>|`u7Oa%M#Oi`^o`!l`5tw1>>r3T^ci7+0a$)8JL83|s(B9|Yizm2-HVNkBb_ zQ#pf%i+a53M^I|j)~RBdJkC9Ldi61n)~Pc{pWE6yXYh-T_T!0mZoF z!T*I7j}B;r01p-*LKr#1 zZkZ|Cf_)96L#odZX~VMH%gc5XpYU*Dpbim}UNbf-Ji=r=F(oqCxlboy7Fp8dymsh7JnKO^82fc|e6EqJ z&w~;=>dvXE(5aGr`4+ZKP@TBMP??Pa!h+}+7e0_bxI);OrY3`1bsEYe4_8rq;V_EL zg$);R7}Ja>T#?`wo+Dtm(^MAJln{lk>bnOXa z1v2Fv6c~K0teguWVPM)@nj|_!uvz7Hr3#Uyt4eo_i~WpS2#a^yEW(X(!J^0^6t!B; z-FX&KGjx5n1mCRbO&uRQatM2Ne3C;RI!7xmR>Lh`k#RQ#E6y!+ZiINC zrzP?bE!`!?1SN{yEsc)RjD)Lnr*^o=boJ{d9w*xwMn2uv4?-8fFmMbLBYJNf+F=r& z-?;1&bqX>aejO)HUfuE+_R>+q`ibTMWMC}9T{;l}@djm4Bs;!haa~t$0bN;4G1yS?VWAeF&LC1UG>CuIb^lSF zwlkm<77hY0Az&&xkd+hfF1|V!M#xqGnILA156?h#2PLuJ@WQZbOsT=cYqWBZCYZzU z5s`w0ebEubot-&zhLS$CngZS1*vCB~&;&ImOLhs|!wl*U9+XIXM%eDu^rCwZQ3AtT z5mAQ6Fk8eJLr1oP3bs@bOfTU16RImGQG5*Qx*ZTmJgg&ox8drkA(29^>Crv#jb-%F zH*ps;O#~OQRpUbRjO)qHSXv&R41*K&a^QG~kh%4U?pZ+BRC7%{!oz3XIj!AuIU?Is zb65+bcW{D5@4G?A;)8~UE*k2DLK2;zFGc+?R3n>cUZW{%Q5V;>>J; zH1lyUw~@0*eO9I6afIa?wcKgO-P%pMs?fFdild(ka5nYbhn zi>5Lk!Qotne*k81jKMK+c}$#Xso;#jZ*q&O=yAMg5#ko7tpg~?om%u`4TW65rH)f?u3|Ht44yzV08q*-)tZ+K_0VSsra@R3gpqPY>U zc}@VR7#XgG)NzGH25=Pyvnqjcw{#FjW9cN~!>9B_p>Ud#ec%Pw>)b+c{vqRdy3RnK z<(WO%08|-=1;+niH^qu}m&-;tF0lJiv>mtU6vC3oa8S#-jt6vcU|r{7f8YgB`_ki* z_OJ&iL#;^!bjpD|Xd_Vcpa4BGIIV0~9;>7+K}+-qS{w$xW_Bt%c}8 z8Sznd#(`iBJ45S)qssvVS7aHBki8lxsZHH!$O&RJ5Ez<=>=Myb3(mnG;KB?>4vwXJ z;#l@S#oMH8@aaWKl%US#G4btQxZ04y!e`ljh65x99Slc(@h$2 za71{<+%%_nVV+}~o+If3pp*wV2K6!~MP>%J`LyUqa+TpJZh>&3fGk(9#xdZFyEP+i z`z#-X!SryCb(3T#qb)pG32~G?Z6~ZTXE$>=GYvso;NsBL1#eOe33`W+MW_567@rc*VRQ|`>yY{3uq;2{qPW#@A(?ioJDizGhNvHK_y3sizx2Gdc;noSfgLvHfa zMIa8dt#=S>caQslJp17#I{Ec^XHo{^b#2297>su=4L4};4G}JF@I-_gGw)i0b(gXV zN25{(S|5GyxPeBu?`69yG6YX`;Ey9=@XZcI+K7l z8N8;?A<@Q&!D}PjkiqLCT-x9b5pK}n!3Z~Ca5}=J3@%5w5hW|USpOeZ3}nPWE0!!H zR`AiV;Ix7JR2BK&Z3Z4w5?I&teU`EokTE1kf$!>dV_4TIeiWO(AB3pm2KH<9{oX>V zN3ZXkFg;4AuFJ)8*!Umf9kG?~@)daVmm zYM>QMmeSsW(^hb!wukN+7_V!3$qrcszIT&>?+EF-&A@nFH}%x@RxR+(uwd4}FNLTc zvHGCi`e>LXYv7MURF7V^3cng=$r`vU!Iwn15rdx{;f4%ON4T`XmqoZigRh8i0|pO8xRk-ai30#a0v#Cr zHIDKdZv0^m8EEB_=a3aV92T55@Uaken}JsV6GTw#ggaBhqS=Q!-81@zZ9Z+WaH2E)@Q;jSpy#qQ9ZiWD&!|Y`Gc2k;A0`` zxPjjfQ9ZiWdxoo^&#vH{!OJ4tfWa#w+@QhdN4T`XD! zoWiq|wU97(o~?CEgms--qjg-VSLz-Gx9c@g;a#g$jOdjL&){8(a|+K=`@=?WHP9MI zqZ8U#M17A?KVK`@qt_mVXEzRNhNn|_@6mjZ>J_f*tde2OOz>tc_dkcFvId&GB$WE9 z<~GqwP+Qk%+s2ASouqkwORv;P2EQ}H4H*3H2sdc(!x1iR@S_oK&|n^lsk3On;O|B_ zgipUrarha3)Nuy$YnX}~ zGI&RXOB>8n_cY(2!7qq#0|xJna4CcDiEuqS&icP>g{vQu5hjpFuwT_GQiUBt8N<}5=xJ$H(v|g#>3?5RP({YyC7B+fo z2u6+WRxqNzN2ssX3O4DrN5|QXU7F$PbljUY-#Sqowk$qZk{biUXYoJjJVUEaikX86l zRLVf>H#DPxkA}H=b)4RMLa(CZ6#ij^8!-4M5pK}ne~WNwgP)9WLk3^B$`MZ;XYiH? zH)Qa(2$wc^M}!+RcvplQFnDi-OBsAmgzMFDO6RhbjyCEz1+7@}Xg{t6Q(?hr19Ktj zHUryAg6cR;Sqn)zPV3km)^+MB1=ne5h=qZdD=JyXX}PpsMaL;Tq*v8(n%bsU%x(j% zaWwk;9_o9<^J=YNlU{puoZi@_*Qe8QZ`6EW)GJieNhQNro1m>M_d{W+tbryk38nr@ zbDQWT=(uNU+s2AS9jAF-r&rN&3co4B4H*2^2sdc(L7YmW==tRw?)cy<#pHXyuaU!XImakA(%Z1{yJtn{FBs)Y_-Dg1?L^GVq^5 zRF4X^Ti*+_WDPX_KpFNn-&2wG@@R~622V%00fSFQxIu$o9O2Ri-xA@541NQSr{<5! z(BR*Qa6<;aF~X${eshEyH25tMZouICBV5Yhe~xfH%Fy~>PZQt*08QqIjy6uR|u1VuTWH?GJL64@iM(q85;ab#W`hY zsow}2z12W#9F4wJ8;hv#QHHP53hvcwk216yZ`KS?rwo6r`F4eUKlLF6jhP8*&2nEK zmdYAv@{&;M8qIB@m!J%PQL`8;l9b`&n&bQYNLsXAz zcB$TaZkQ!&;9Emfj}CjK-nu8uk~PqH0kQ37L4q!}HtvfmGSC)j1g-jAt#)Hr z*QswQ$WPVt2eB~lJgq)atNv80^0XYas=+D6Ijw4`^h4g1pR2aKNgnC8ffy8Q0n(Iw~1bYR((>l7%P&r zYF+7jrCvF+4E{-kOB?*N2-mahwYq*;^FT@sv|`Cp`dTgUrm$evz(+$=k5YJ_-uhse zC2Qb!LR8P7e^hUMGR%@S@Lxhy&yxpV(_7yTvt*rkM}HsITmQav7H_S~-e*@Z+u&sp zZouFb5pK}n^CMi^;FS?>$l!hJv@NJHgGVFWkiq*ST-x9R5pK}ngAs1P;B16T8T_^g zHxe;NA*FM@ULha`TCrpSF~$vs1*Z+XBShV1;472_r^YO0EhMP1XKNi3VO^&#)H*KL zD>RCMTNRb4#;(;WM)XQGX7Db>IW=af{b8fG8fcB9QGPjuzli!CiGIFTut%>wYRqmN z)C^Cj#@?;@9?>hbPf5uzW+o^k%l&`DQdt8{UJ^=uMRS|zC8)8hwQXZXk{Y{T^So29 zRAUCeE5Z#J{O$-hXz=euxU|9ViEu*(f8`=KByfmp1t85pK}nZ$`KQ zgTEEwdep4-^$(Rc%pwD=Sn@2gf`1$qoHj6Cu=f$9k7|KO!-73R_*Z)CZ}dvJH~0&R zb8>H~Z-tfJYT(PY*9lYfi<1sB7u7~c~ND! zIPVS*4(4(2X_#^)^i41+VesvFWJB$_3J$Xy#)+-+XINTsHO}C*_F=pXQsLXT!|t6Z z9Q}pY)PQ$Md28Kn&EWl)1-m1!=IR}ACPd>s9K~u)J*@rzM{Gn9DhyMGuT|}8*DJcJ zR3#Q-w*aCdvhp9+@^;;&H>{i~5lauF?2n#$s%GUMSM6)p2XLQ1%Wvf!7GGQgK!srC zKcE@y`eoIwMx&J<)C%_E$|kM+D^;Jr#pI@SUxBNVYvZQ|m|KdL@e@Pq(SlJm~pNQe&SzoU0ch_s>EiXUC*p1`84{G^i zzhpVxwL350rRl~o=ZcTG{4eh6aCct5V$_Xe$-KTkW?r+atvBygTE4rVulZlD#BX=q zu(s^FMax_LcHR1~4*K4;hH+ObXV^VUl)vl>m-9gr3@y-Ip5~$}i{yNQ9m8*;t3X#$ zcxSpx3h1A`>==G^wWpT@rfM^J9^_5@s9%%X{{TCN-*1^=kyJ1L6`gqL2X*Gh#543m z+jh@O-tWhM=67`FU*?%V(TP9LGe4mdzuYtX--&;QXLh|4pYqIJcj8xgW`{fR=ZE&S z6Ti|kyV;3f723m2{OZuob>c4w?N}%NLeK0{Cw?HbH=X!3p4pR5{94cKL??coXZpVr zzuq&w-if~mdO96P3Eb~(@JtWKZ}xi^d!}DI@q?b}%})F?2_nsBPaiHH*=Oc~; z-0yX3QJ10LyR<8(;h((({y9tF(>-|3o<6U4+&SNudEbAky8tQlyvbQ14-=8dz|5KX(fgzXg0eA5}4}4nT_~m;`)brCN@E5|EtcBb@ zxY^aRPmRmvxDJ4C-TeFo%|Ai|gP+lVlj2`S0gmBYg74LPcLJZ5oSlEpX+1Vot$x0+ znZ*B30G~9DpIZX|_e<3C_!9YlwnYBbFrwsJ`YK1i(fK^Zzf4sS*IWE;1wM(+amnxU z#Q)xG^?S%ReBNh@%QQ_ z>VL};_56w8zyDPI`m~g{KYU@2{qod*H2!~E@%L|XIbWj%z9V=m9bFmyPLgxRMUwE0 zN+m2hGpKLS$Wncg_S7iT2( zpl}3OEpUfu289;SB+s>RU=$9&E8|0Fh2b3|&*x!B37K#>P!)&C@fc(tX@?V9Cm(%qcw>(w#%)zFE|BPK7>=bY;4d$4%W1s-X`Z) z;q<+1u7nTT^?o5S>EOk{op0HDcABG3Ps1|Gdb9NsDAD@xlb^jMa41{sb3$FGTtz(F zmiRH6*cW%>r*%!aA3FlJ^HC<;53O)SZL)diEm(=v=yCr4JeX=TIH$_wk z=sBZaKcmKj<3ydvF=s*;+Q9M3y**6$EKm0ld{TbN&y?`94ZYPSvOVHvG~DjYKbb&N z;Wsm*FS1G7I1tPobBN6!${>_uBH5^mypB$T6DEb{0#gQ5_+oP6PIBzb*>Qq!aN`2L zd*#&Y7>=alms=7iT-Yfmdivq3&QHOJN?1Z62ov_lzNeBr#$gv?$CKkjVL57T`7&Xr bpooTc;u2F|ou5t;F7rbh;eq%GpFsM5Tbf0x literal 0 HcmV?d00001 diff --git a/scripts/c2xs/blib/lib/CBitcoin/.exists b/scripts/c2xs/blib/lib/CBitcoin/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm b/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm new file mode 100644 index 00000000..5f4d804a --- /dev/null +++ b/scripts/c2xs/blib/lib/CBitcoin/CBHD.pm @@ -0,0 +1,17 @@ +## This file generated by InlineX::C2XS (version 0.22) using Inline::C (version 0.5) +package CBitcoin::CBHD; + +require Exporter; +*import = \&Exporter::import; +require DynaLoader; + +$CBitcoin::CBHD::VERSION = '0.01'; + +DynaLoader::bootstrap CBitcoin::CBHD $CBitcoin::CBHD::VERSION; + +@CBitcoin::CBHD::EXPORT = (); +@CBitcoin::CBHD::EXPORT_OK = (); + +sub dl_load_flags {0} # Prevent DynaLoader from complaining and croaking + +1; diff --git a/scripts/c2xs/blib/lib/CBitcoin/coinx2.pl b/scripts/c2xs/blib/lib/CBitcoin/coinx2.pl new file mode 100644 index 00000000..324425b4 --- /dev/null +++ b/scripts/c2xs/blib/lib/CBitcoin/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::CBHD'; +my $package_name = 'CBitcoin::CBHD'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/c2xs/blib/lib/auto/CBitcoin/CBHD/.exists b/scripts/c2xs/blib/lib/auto/CBitcoin/CBHD/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/man1/.exists b/scripts/c2xs/blib/man1/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/man3/.exists b/scripts/c2xs/blib/man3/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/blib/script/.exists b/scripts/c2xs/blib/script/.exists new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/coinx2.pl b/scripts/c2xs/coinx2.pl new file mode 100644 index 00000000..324425b4 --- /dev/null +++ b/scripts/c2xs/coinx2.pl @@ -0,0 +1,15 @@ + use InlineX::C2XS qw(c2xs); + + +my $module_name = 'CBitcoin::CBHD'; +my $package_name = 'CBitcoin::CBHD'; + +my $config_opts = {'WRITE_PM' => 1, + 'WRITE_MAKEFILE_PL' => 1, + 'VERSION' => 0.01, + }; + + +c2xs($module_name, $package_name,'./',$config_opts); + + diff --git a/scripts/c2xs/pm_to_blib b/scripts/c2xs/pm_to_blib new file mode 100644 index 00000000..e69de29b diff --git a/scripts/c2xs/src/CBHD.c b/scripts/c2xs/src/CBHD.c new file mode 100644 index 00000000..f380a015 --- /dev/null +++ b/scripts/c2xs/src/CBHD.c @@ -0,0 +1,143 @@ +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +CBHDKey* importDataToCBHDKey(char* privstring) { + CBByteArray * masterString = CBNewByteArrayFromString(privstring, true); + CBChecksumBytes * masterData = CBNewChecksumBytesFromString(masterString, false); + CBReleaseObject(masterString); + CBHDKey * masterkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(masterData))); + CBReleaseObject(masterData); + return (CBHDKey *)masterkey; +} +//////////////////////// perl export functions ///////////// + +char* newMasterKey(int arg){ + CBHDKey * masterkey = CBNewHDKey(true); + CBHDKeyGenerateMaster(masterkey,true); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(masterkey, keyData); + free(masterkey); + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* deriveChildPrivate(char* privstring,bool hard,int child){ + CBHDKey* masterkey = importDataToCBHDKey(privstring); + + // generate child key + CBHDKey * childkey = CBNewHDKey(true); + CBHDKeyChildID childID = { hard, child}; + CBHDKeyDeriveChild(masterkey, childID, childkey); + free(masterkey); + + uint8_t * keyData = malloc(CB_HD_KEY_STR_SIZE); + CBHDKeySerialise(childkey, keyData); + free(childkey); + + CBChecksumBytes * checksumBytes = CBNewChecksumBytesFromBytes(keyData, 82, false); + // need to figure out how to free keyData memory + CBByteArray * str = CBChecksumBytesGetString(checksumBytes); + CBReleaseObject(checksumBytes); + return (char *)CBByteArrayGetData(str); +} + +char* exportWIFFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBWIF * wif = CBHDKeyGetWIF(cbkey); + free(cbkey); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* exportAddressFromCBHDKey(char* privstring){ + CBHDKey* cbkey = importDataToCBHDKey(privstring); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBHDKeyGetHash(cbkey), CB_PREFIX_PRODUCTION_ADDRESS, false); + free(cbkey); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + return (char *)CBByteArrayGetData(addressstring); +} + +char* newWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + free(key); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBFreeWIF(wif); + return (char *)CBByteArrayGetData(str); +} + + +char* publickeyFromWIF(char* wifstring){ + CBByteArray * old = CBNewByteArrayFromString(wifstring,true); + CBWIF * wif = CBNewWIFFromString(old, false); + CBDestroyByteArray(old); + uint8_t privKey[32]; + CBWIFGetPrivateKey(wif,privKey); + CBFreeWIF(wif); + CBKeyPair * key = CBNewKeyPair(true); + CBInitKeyPair(key); + memcpy(key->privkey, privKey, 32); + CBKeyGetPublicKey(key->privkey, key->pubkey.key); + return (char *)CBByteArrayGetData(CBNewByteArrayWithDataCopy(key->pubkey.key,CB_PUBKEY_SIZE)); + +} + +char* addressFromPublicKey(char* pubkey){ + CBByteArray * pubkeystring = CBNewByteArrayFromString(pubkey, false); + //CBChecksumBytes * walletKeyData = CBNewChecksumBytesFromString(walletKeyString, false); + //CBHDKey * cbkey = CBNewHDKeyFromData(CBByteArrayGetData(CBGetByteArray(walletKeyData))); + + + //CBByteArray * old = CBNewByteArrayFromString(pubkey,false); + + CBKeyPair * key = CBNewKeyPair(false); + memcpy(key->pubkey.key, CBByteArrayGetData(CBGetByteArray(pubkeystring)), CB_PUBKEY_SIZE); + CBDestroyByteArray(pubkeystring); + // this code came from CBKeyPairGetHash definition + uint8_t hash[32]; + CBSha256(key->pubkey.key, 33, hash); + CBRipemd160(hash, 32, key->pubkey.hash); + + CBAddress * address = CBNewAddressFromRIPEMD160Hash(key->pubkey.hash, CB_PREFIX_PRODUCTION_ADDRESS, true); + free(key); + CBByteArray * addressstring = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + CBReleaseObject(address); + + return (char *)CBByteArrayGetData(addressstring); +} + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + //return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + return (char *)CBByteArrayGetData(string); + //CBReleaseObject(key); + //CBReleaseObject(address); +} + + + + diff --git a/scripts/coinxs.pl b/scripts/coinxs.pl new file mode 100644 index 00000000..13fc56cb --- /dev/null +++ b/scripts/coinxs.pl @@ -0,0 +1,56 @@ +package CBitcoin; +our $VERSION = '0.01'; +BEGIN {$VERSION = '0.01'} +=pod + use Inline C => Config => LIBS => ' -lcbitcoin.2.0 -lcbitcoin-network.2.0 -lcbitcoin-storage.2.0 -lcbitcoin-threads.2.0 -lpthread -lcbitcoin-logging.2.0 -lcbitcoin-crypto.2.0 -lcrypto -lcbitcoin.2.0 -lcbitcoin-file-ec.2.0 -lcbitcoin-rand.2.0 ' + ,INC => '-I"/home/joeldejesus/Workspace/cbitcoin/library/include"' +# ,LD => 'gcc -Wl,-rpath=../bin' + ,CLEAN_AFTER_BUILD => 0 + ,BUILD_NOISY => 1 ; +=cut +#print "9 + 16 = ", add(9, 16), "\n"; +#print "9 - 16 = ", subtract(9, 16), "\n"; +print "WIF:".createWIF(2)."\n"; + + use InlineX::XS <<'END_OF_C_CODE'; +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +char* createWIF(int arg){ + CBKeyPair * key = CBNewKeyPair(true); + CBKeyPairGenerate(key); + CBWIF * wif = CBNewWIFFromPrivateKey(key->privkey, true, CB_NETWORK_PRODUCTION, false); + CBByteArray * str = CBChecksumBytesGetString(wif); + CBReleaseObject(wif); + return (char *)CBByteArrayGetData(str); + CBReleaseObject(str); + //CBAddress * address = CBNewAddressFromRIPEMD160Hash(CBKeyPairGetHash(key), CB_PREFIX_PRODUCTION_ADDRESS, false); + //CBByteArray * string = CBChecksumBytesGetString(CBGetChecksumBytes(address)); + //CBReleaseObject(key); + //CBReleaseObject(address); + +// return (int) 1; +} + +int add(int x, int y) { + return x + y; +} + +int subtract(int x, int y) { + return x - y; +} + + +END_OF_C_CODE + + + use InlineX::XS 'END'; diff --git a/scripts/crypt/Crypt-PBC-0.9000.tar.gz b/scripts/crypt/Crypt-PBC-0.9000.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..5a0bebea1435b7190971ab4494f721f9cd978376 GIT binary patch literal 62417 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 literal 0 HcmV?d00001 diff --git a/scripts/crypt/Crypt-PBC-0.9000/Changes b/scripts/crypt/Crypt-PBC-0.9000/Changes new file mode 100644 index 00000000..bf55dff5 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/Changes @@ -0,0 +1,167 @@ +0.9000: Wed Jul 29 2009 + - updates were needed for the 0.5.1 release, which means that + version, or newer, is now required to build this. + +0.855: Fri Mar 27 18:42:50 EDT 2009 + - added chrony's meta.yml stuff for the github repo + +0.854: Thu Aug 21 06:21:28 EDT 2008 + - Used EU::MM's prompt() instead of rolling my own. BingOS++. + Woops. + +0.853: Thu Aug 14 12:05:26 EDT 2008 + - Fixed a build problem for bsd + - Fixed an eval { use Something } problem in a test. + It now reads eval q{ use something }; ... grrz. + +0.852: Wed Aug 13 16:29:37 EDT 2008 + - A cpan tester informed me that his libgmp was in /usr/local + ... that's kindof a no brainer. I added some rudimentary + libpaths to the Makefile.PL; I should probably make it use + some system paths. Later. + +0.851: Tue Aug 12 07:09:26 EDT 2008 + - Wow, newbie error. I can't use <> in the Makefile.PL + because it tries to slurp each INSTALLDIR=site type argument + as an input file... Doh + +0.85: Mon Aug 11 12:05:47 EDT 2008 + - introduced a bug in the Makefile.PL while fixing something + else. + +0.81: Mon Aug 11 07:17:47 EDT 2008 + - minor doc fixes were necessary + +0.8: Sun Aug 10 07:03:58 EDT 2008 + - there were bugs in the manifest, so some of the tests + weren't shipping. + - I taught the distribution to pull libpbc, build, and link + against it. I expect it won't work reliably on other + systems, but it works fine on mine. + +0.8: Sat Aug 9 07:55:29 EDT 2008 + - I have given up on version.pm and Module::Build. They both + cause more problems than they solve. + - I added the expected libpbc version to the README + +0.7.21.3.4.18: Thu Jul 31 14:33:42 EDT 2008 + - removed the Makefile.PL, causes problems + +0.7.21.2.4.18: Mon Jul 28 16:39:23 EDT 2008 + - I added libchecks to the other .PL + +0.7.21.1.4.18: Thu Jul 24 06:54:02 EDT 2008 + - brought M::B into the mix. EU::MM will cause version.pm + problems eventually. + +0.7.21.0.4.18: Sat Jul 5 08:03:51 EDT 2008 + - I brought us up to 0.4.18!! At some point Lynn fixed the + bug I was waiting on!! Hurray! + - I'm now using version.pm + - I'm now using Devel::CheckLib (so the cpan testers FAIL + reports will stop when they don't have libpbc) + +0.7.20.0-0.4.7: Mon Feb 01 15:00 EST 2007 + - jettero changed the version number in the pm file and ran + the usual battery of tests + +0.7.20.0-0.4.6: Mon Feb 01 15:00 EST 2007 + - jettero changed the version number in the pm file and ran + the usual battery of tests + - interestingly, 0.7.20-0.4.5 was never released due to bugs + in some esoteric math problem in Ben's cache. + +0.7.20.0-0.4.5: Mon Feb 01 15:00 EST 2007 + - jettero changed the version number in the pm file and ran + the usual battery of tests + - several tests failed... investigating... + +0.7.20.0-0.4.4: Mon Jan 30??? EST 2007 + - jettero changed the version number in the pm file and made + sure all the tests complete + +0.7.20.0-0.4.3: Mon Jan 15 11:00:57 EST 2007 + - jettero told PBC.pm and pairing.xs about the new + pairing_is_symmetric() function + +0.7.18.3-0.4.2: Sun Dec 10 10:27:32 EST 2006 + - jettero added element_from_bytes and set_to_bytes + +0.7.18.3-0.4.2: Sat Dec 9 12:14:56 EST 2006 + - jettero made pow_zn capable of taking a single argument, + which should be pretty clear + - jettero added a tests for that + +0.7.18.1-0.4.2: Sat Dec 2 09:54 EST 2006 + - I created a slow but reasonably accurate way of detecting + whether the pairing is symmetric, for purposes of deciding + whether G1 and G2 are algebraically similar. This is for my + own testing purposes until Ben adds pairing_is_symmetric() + to libpbc. + +0.4.2-0.7.17.1: Sat Dec 2 09:36:55 EST 2006 + - this is a bugfix for the version released 15 minutes ago. + +0.4.2-0.7.17: Sat Dec 2 09:21:55 EST 2006 + - This is a documentation fix only. + - There will be a new version very soon though. I need to + make serious changes to the argument type restrictions as + they should apparently not be the same on different types of + curves (symmetric vs asymmetric curves). + +0.4.2-0.7.16: Fri Dec 1 09:20:30 EST 2006 + - jettero made more synonyms for pairing_apply because of + frequent typos + - jettero fixed several documenation typos + +0.4.2-0.7.15: Tue Nov 28 10:16:07 EST 2006 + - jettero reversioned the package in preparation for launch. + +0.4.1-0.5.04: Tue Nov 28 10:13:55 EST 2006 + - jettero added the slamtest, which slams functions with all + the wrong arguments, literally, in the permutation sense. + It ran all night. The test in the shipped-package is _much_ + shorter, but can be extended with 'MAX_PERM_TIME=1000 make + test' + +0.4.1-0.5.03: Sun Nov 26 22:26:33 EST 2006 + - jettero added a memory (leak) test + +0.4.1-0.5.02: Sun Nov 26 21:52:00 EST 2006 + - jettero added a couple more tests and boatloads of docs + +0.3.17-0.5.01: Mon Nov 20 08:38:04 EST 2006 + - jettero completed a few more t/ tests (this time for the + earith.xs). + +0.3.17-0.5.00: Thu Nov 16 20:03:34 EST 2006 + - jettero reversioned the package to represent the version of + libpbc it is intended to work with in addition to the + version of the perl API. 0.3.17-0.5.00 means PBC.pm version + 0.5.00 intended to work with libpbc 0.3.17. + +0.10: Tue Nov 14 07:12:55 EST 2006 + - jettero added a bit of type-saftey to PBC.pm. It seems + libpbc segfaults when the LHS and BASE of pow_zn() aren't in + the same group, or when pairing_apply() is applied on + arguments that aren't GT=e_hat(G1, G2); and that took some + figurin'. + +0.09: Sun Nov 12 15:13:33 EST 2006 + - jettero started using element2bytes instead of element2mpz + to print elements. Many of the elements are atually + quadratics, and poly coeffs and the PBC crew do not make it + simple to get to the mpzs. + +0.08: Sun Nov 12 11:23:48 EST 2006 + - jettero noticed possible bugs in either the init or as_str + of elements... + +0.07: Sun Nov 12 09:03:27 EST 2006 + - jettero fixed my changelog app + +0.01 Fri Nov 10 23:07:15 2006 + - I got this package all skeled up ... I need a small part + of it for a school project so I'm going to focus on that + part first. + diff --git a/scripts/crypt/Crypt-PBC-0.9000/MANIFEST b/scripts/crypt/Crypt-PBC-0.9000/MANIFEST new file mode 100644 index 00000000..651f21ee --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/MANIFEST @@ -0,0 +1,44 @@ +Changes +MANIFEST +Makefile.PL +PBC.pm +PBC.xs +README +TODO +contrib/c_quicky.c +contrib/libtest.c +contrib/quicky +earith.xs +ecomp.xs +einit.xs +inc/Devel/CheckLib.pm +lib/Crypt/PBC.pod +lib/Crypt/PBC/Element.pod +lib/Crypt/PBC/Pairing.pod +pairing.xs +params_a.txt +params_d.txt +params_d159.txt +params_e.txt +pbctest.c +ppport.h +t/01_load.t +t/03_testnew.t +t/05_boneh_franklin.t +t/07_BF2.t +t/09_pairings_tests.t +t/10_test_symmetric.t +t/13_1op_arith.t +t/13_2op_arith.t +t/13_mul_znmpz.t +t/13_pow_arith.t +t/14_from_bytes.t +t/14_pow_zn_one_arg.t +t/15_mpz.t +t/20_cmp.t +t/35_scopefault.t +t/80_slamtest_a.t +t/80_slamtest_d.t +t/99_memory_tests.t +typemap +META.yml Module meta-data (added by MakeMaker) diff --git a/scripts/crypt/Crypt-PBC-0.9000/META.yml b/scripts/crypt/Crypt-PBC-0.9000/META.yml new file mode 100644 index 00000000..647e75e1 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/META.yml @@ -0,0 +1,33 @@ +--- #YAML:1.0 +name: Crypt-PBC +version: 0.9000 +abstract: OO interface for the Stanford PBC library +author: + - Paul Miller +license: LGPL +distribution_type: module +configure_requires: + ExtUtils::MakeMaker: 0 +build_requires: + ExtUtils::MakeMaker: 0 +requires: + Math::BigInt: 0 + Math::BigInt::GMP: 0 + MIME::Base64: 0 + perl: 5.006001 +resources: + repository: http://github.com/jettero/crypt--pbc/ +no_index: + directory: + - t + - inc +generated_by: ExtUtils::MakeMaker version 6.54 +meta-spec: + url: http://module-build.sourceforge.net/META-spec-v1.4.html + version: 1.4 +keywords: + - pbc + - ecc + - crypt + - boneh + - ibe diff --git a/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL b/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL new file mode 100644 index 00000000..d1cf8d07 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/Makefile.PL @@ -0,0 +1,160 @@ +use strict; +use lib qw(inc); +use Devel::CheckLib; +use ExtUtils::MakeMaker; + +my @libpath = qw(/lib /usr/lib /usr/local/lib); +my @incpath = qw(/usr/include/pbc /usr/local/include/pbc /usr/include /usr/local/include); + +my $ver = "0.5.1"; +my @extra = ( + LIBS => ['-lpbc'], + INC => join(" ", map {"-I$_"} (@incpath)), +); + +eval { assert_lib( lib => 'pbc', libpath=>\@libpath, incpath=>\@incpath, header => "pbc.h" ); }; +if( $@ ) { + warn "Error locating libpbc version 0.5.1: $@"; + + warn "\nYou can get the latest debian binaries from https://voltar.org/pbcfiles\n\n"; + sleep 1; + + my $res = ($ENV{BUILD_HERE} || prompt("Would you like to download and build libpbc from tarball automatically? [y/N]", "n")); + if( $res =~ m/y/i ) { + exit 0 unless grab_libpbc($ver); + exit 0 unless unpack_libpbc($ver); + exit 0 unless build_libpbc($ver); + + } else { + exit 0; + } +} + +WriteMakefile( + NAME => 'Crypt::PBC', + VERSION_FROM => 'PBC.pm', + PREREQ_PM => { + 'MIME::Base64' => 0, + 'Math::BigInt::GMP' => 0, + 'Math::BigInt' => 0, + }, + + ($] >= 5.005 ? + (ABSTRACT_FROM => 'lib/Crypt/PBC.pod', + AUTHOR => 'Paul Miller ') : ()), + + ($ExtUtils::MakeMaker::VERSION ge '6.48'? + (MIN_PERL_VERSION => 5.006001, + META_MERGE => { + keywords => [qw(pbc ecc crypt boneh ibe)], + resources=> { + repository => 'http://github.com/jettero/crypt--pbc/', + }, + }, + + LICENSE => 'LGPL', + ) : ()), + + @extra, + + clean => { FILES => "libpbc.a .pbctest pbc-$ver.tar.gz pbc-$ver slamtest.log " . join(" ", grep {s/\.c$//} <*.c>) }, + depend => { + "PBC.c" => " earith.xs ecomp.xs einit.xs pairing.xs ", + }, + +); + +sub build_libpbc { + my $ver = shift; + + @extra = ( + MYEXTLIB => "libpbc.a", + INC => "-Ipbc-$ver/include", + LIBS => "-lgmp", + ); + + warn "(You do need libgmp installed in order for this PBC.so to function...)\n"; + check_lib_or_exit( lib => 'gmp', libpath=>\@libpath, incpath=>\@incpath, header=>"gmp.h" ); + warn "(... it seems you have libgmp. Nevermind.)\n"; + + # we don't literally build it, we add things to the makefile + *MY::postamble = \&postamble; +} + +sub postamble { + my @CFLAGS = map {"-I$_"} @incpath; + my @LFLAGS = map {"-L$_"} @libpath; + +" +PBC\$(OBJ_EXT) : \$(MYEXTLIB) + +\$(MYEXTLIB): pbc-$ver/.libs/libpbc.so + \$(AR) \$(AR_STATIC_ARGS) \$@ pbc-$ver/.libs/*.o + +pbc-$ver/.libs/libpbc.so: + cd pbc-$ver && CFLAGS='@CFLAGS' CPPFLAGS='@CFLAGS' LDFLAGS='@LFLAGS' ./configure && \$(MAKE) \$(PASTHRU) +"; + +} + +sub unpack_libpbc { + my $ver = shift; + return 1 if -d "pbc-$ver" or $ENV{SKIP_DOWNLOAD}; + + warn "unpacking libpbc from pbc-$ver.tar.gz...\n"; + + my $worked = 0; + eval { + eval "require Archive::Tar;"; die $@ if $@; + my $tar = Archive::Tar->new; + + $tar->read("pbc-$ver.tar.gz", 1); + $tar->extract; + + $worked = 1 if -x "pbc-$ver/configure"; + }; + warn "Archive::Tar unpack problem: $@\n" if $@; + + unless( $worked ) { + if( system("gzip -dc pbc-$ver.tar.gz | tar -xvf -") == 0 ) { + $worked = 1 if -x "pbc-$ver/configure"; + } + } + + warn "failed to unpack pbc\n" unless $worked; + $worked; +} + +sub grab_libpbc { + my $ver = shift; + return 1 if -f "pbc-$ver.tar.gz" or $ENV{SKIP_DOWNLOAD}; + + warn "downloading libpbc from http://voltar.org/pbcfiles/pbc-$ver.tar.gz...\n"; + + my $worked = 0; + eval { + eval "require LWP::UserAgent"; die $@ if $@; + my $ua = LWP::UserAgent->new; + $ua->agent("crypt-pbc-fetcher/1.0"); + + my $req = HTTP::Request->new(GET => "http://voltar.org/pbcfiles/pbc-$ver.tar.gz"); + my $res = $ua->request($req, "pbc-$ver.tar.gz"); + + $worked = 1 if $res->is_success; + }; + warn "LWP fetch problem: $@\n" if $@; + + unless( $worked ) { + if( 0 != system(wget => '-O', "pbc-$ver.tar.gz", "http://voltar.org/pbcfiles/pbc-$ver.tar.gz") ) { + warn "couldn't fetch with wget...\n"; + if( 0 != system(curl => '-o', "pbc-$ver.tar.gz", "http://voltar.org/pbcfiles/pbc-$ver.tar.gz") ) { + warn "couldn't fetch with curl ...\n"; + } + } + + $worked = 1 if -f "pbc-$ver.tar.gz"; + } + + warn "failed to download pbc\n" unless $worked; + $worked; +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/PBC.pm b/scripts/crypt/Crypt-PBC-0.9000/PBC.pm new file mode 100644 index 00000000..090cc7ae --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/PBC.pm @@ -0,0 +1,766 @@ +package Crypt::PBC::Element; + +use strict; +use Carp; +use MIME::Base64; +use Math::BigInt lib => 'GMP'; + +our %tt; # This maps our element types and our pairings. Arguably this should be + # done in the element references themselves, but those are scalar refs, not + # hash refs. + +use overload + '""' => sub { my $this = shift; "Crypt::PBC::Element-$tt{$$this}{t}#$$this" }, + 'nomethod' => sub { my $this = shift; my $that = pop; croak "arithmetic operation '$that' not defined for $this" }; + +1; + +# DESTROY {{{ +sub DESTROY { + my $this = shift; + + my $i = $$this; + + Crypt::PBC::element_clear( $this ); + + delete $tt{$i}; +} +# }}} +# clone {{{ +sub clone { + my $this = shift; + my ($type, $pair) = @{ $tt{$$this} }{qw(t p)}; + + my $that = eval "\$pair->init_$type"; + if( $@ ) { + # Can't call method "init_G1" on an undefined value at (eval 2) line 1. + # at t/13_pow_arith.t line 28 + chomp $@; $@ =~ s/at \(eval \d+\) line \d+/during Crypt::PBC::Element::clone()/; + croak $@; + } + + return $that->set( $this ); +} +*copy = *clone; +# }}} + +#### exporters +# as_bytes {{{ +sub as_bytes { + my $this = shift; + + return Crypt::PBC::export_element( $this ); +} +# }}} +# as_hex {{{ +sub as_hex { + my $this = shift; + + return unpack("H*", $this->as_bytes); +} +*as_str = *as_hex; +# }}} +# as_base64 {{{ +sub as_base64 { + my $this = shift; + my $arg = shift || ""; + + my $that = encode_base64($this->as_bytes, $arg); + $that =~ s/\n$//sg; + + return $that; +} +# }}} +# as_bigint {{{ +sub as_bigint { + my $this = shift; + my $that = Crypt::PBC::element_to_mpz($this); + + my $int = new Math::BigInt; + $int->{value} = $that; + $int->{sign} = '+'; + + # I wanted to do something like thits, but I think + # the mpz_t's returned from element_to_mpz are always going to be positive... + # $int->{sign} = $this->is_neg ? "-" : "+"; + + return $int; +} +# }}} +# stddump {{{ +sub stddump { + my $this = shift; + + Crypt::PBC::element_fprintf(*STDOUT, '%B', $this ); +} +# }}} +# errdump {{{ +sub errdump { + my $this = shift; + + return Crypt::PBC::element_fprintf(*STDERR, '%B', $this ); +} +# }}} + +#### initializers and set routines +# random {{{ +sub random { + my $this = shift; + + Crypt::PBC::element_random( $this ); + + return $this; +} +# }}} +# set_to_bytes {{{ +sub set_to_bytes { + my $this = shift; + my $data = shift; + + croak "provide something to set the element to" unless defined $data and length $data > 0; + Crypt::PBC::element_from_bytes($this, $data); + + $this; +} +# }}} +# set_to_hash {{{ +sub set_to_hash { + my $this = shift; + my $hash = shift; + + croak "provide something to set the element to" unless defined $hash and length $hash > 0; + #my $type = $tt{$$this}{t}; + #warn " >type=$type; hash=$hash...@_...<\n"; + Crypt::PBC::element_from_hash($this, $hash); + #warn " \n"; + + $this; +} +# }}} +# set_to_int {{{ +sub set_to_int { + my $this = shift; + my $int = shift; + + croak "int provided ($int) is not acceptable" unless $int =~ m/^\-?[0-9]+\z/s; + + Crypt::PBC::element_set_si($this, $int); + + $this; +} +# }}} +# set_to_bigint {{{ +sub set_to_bigint { + my $this = shift; + my $int = shift; + + croak "int provided is not a bigint" unless ref $int and $int->isa("Math::BigInt"); + + Crypt::PBC::element_set_mpz($this, $int->{value}); + + $this; +} +# }}} +# set {{{ +sub set { + my $this = shift; + my $that = shift; + + croak "LHS and RHS must be algebraically similar ($tt{$$this}{c} vs $tt{$$that}{c})" + unless $tt{$$this}{c} eq $tt{$$that}{c}; + + Crypt::PBC::element_set($this, $that); + + $this; +} +# }}} +# set0 {{{ +sub set0 { + my $this = shift; + my $that = shift; + + Crypt::PBC::element_set0($this); + + $this; +} +# }}} +# set1 {{{ +sub set1 { + my $this = shift; + my $that = shift; + + Crypt::PBC::element_set1($this); + + $this; +} +# }}} + +#### comparisons +# is0 {{{ +sub is0 { + my $this = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + return Crypt::PBC::element_is0( $this ); +} +# }}} +# is1 {{{ +sub is1 { + my $this = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + return Crypt::PBC::element_is1( $this ); +} +# }}} +# is_eq {{{ +sub is_eq { + my $this = shift; + my $that = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and RHS must be algebraically similar ($tt{$$this}{c} vs $tt{$$that}{c}) " + unless $tt{$$this}{c} eq $tt{$$that}{c}; + + return not Crypt::PBC::element_cmp( $this, $that ); # returns 0 if they're algebraically similar +} +# }}} +# is_sqr {{{ +sub is_sqr { + my $this = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + my $type = $tt{$$this}{t}; + + return 1 if $type eq "G1"; + return 1 if $type eq "G2"; + return 1 if $type eq "GT"; + + return Crypt::PBC::element_is_sqr( $this ); +} +# }}} + +#### exponentiation +# pow_zn {{{ +sub pow_zn { + my $this = shift; + my $base = shift; + my $expo = shift; + + if( defined $base and not defined $expo ) { + $expo = $base; + $base = $this; + } + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and BASE must be algebraically similar ($tt{$$this}{c} vs $tt{$$base}{c})" + unless $tt{$$this}{c} eq $tt{$$base}{c}; + + croak "EXPO must be of type Zr (not $tt{$$expo}{t})" unless $tt{$$expo}{t} eq "Zr"; + + Crypt::PBC::element_pow_zn( $this, $base, $expo ); + + $this; +} +# }}} +# pow2_zn {{{ +sub pow2_zn { + my $this = shift; + my $a1 = shift; + my $n1 = shift; + my $a2 = shift; + my $n2 = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; + croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; + croak "n1 must be of type Zr (not $tt{$$n1}{t})" unless $tt{$$n1}{t} eq "Zr"; + croak "n2 must be of type Zr (not $tt{$$n2}{t})" unless $tt{$$n2}{t} eq "Zr"; + + Crypt::PBC::element_pow2_zn( $this, $a1, $n1, $a2, $n2 ); + + $this; +} +# }}} +# pow3_zn {{{ +sub pow3_zn { + my $this = shift; + my $a1 = shift; + my $n1 = shift; + my $a2 = shift; + my $n2 = shift; + my $a3 = shift; + my $n3 = shift; + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; + croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; + croak "LHS and a3 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a3}{c})" unless $tt{$$this}{c} eq $tt{$$a3}{c}; + croak "n1 must be of type Zr (not $tt{$$n1}{t})" unless $tt{$$n1}{t} eq "Zr"; + croak "n2 must be of type Zr (not $tt{$$n2}{t})" unless $tt{$$n2}{t} eq "Zr"; + croak "n3 must be of type Zr (not $tt{$$n3}{t})" unless $tt{$$n3}{t} eq "Zr"; + + Crypt::PBC::element_pow3_zn( $this, $a1, $n1, $a2, $n2, $a3, $n3 ); + + $this; +} +# }}} + +# pow_bigint {{{ +sub pow_bigint { + my $this = shift; + my $base = shift; + my $expo = shift; + + if( defined $base and not defined $expo ) { + $expo = $base; + $base = $this; + } + + croak "EXPO provided is not a bigint" unless ref $expo and $expo->isa("Math::BigInt"); + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and BASE must be algebraically similar ($tt{$$this}{c} vs $tt{$$base}{c})" + unless exists $tt{$$this} and $tt{$$this}{c} eq $tt{$$base}{c}; + + Crypt::PBC::element_pow_mpz( $this, $base, $expo->{value} ); + + $this; +} +# }}} +# pow2_bigint {{{ +sub pow2_bigint { + my $this = shift; + my $a1 = shift; + my $n1 = shift; + my $a2 = shift; + my $n2 = shift; + + croak "n1 provided is not a bigint" unless ref $n1 and $n1->isa("Math::BigInt"); + croak "n2 provided is not a bigint" unless ref $n2 and $n2->isa("Math::BigInt"); + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; + croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; + + Crypt::PBC::element_pow2_mpz( $this, $a1, $n1->{value}, $a2, $n2->{value} ); + + $this; +} +# }}} +# pow3_bigint {{{ +sub pow3_bigint { + my $this = shift; + my $a1 = shift; + my $n1 = shift; + my $a2 = shift; + my $n2 = shift; + my $a3 = shift; + my $n3 = shift; + + croak "n1 provided is not a bigint" unless ref $n1 and $n1->isa("Math::BigInt"); + croak "n2 provided is not a bigint" unless ref $n2 and $n2->isa("Math::BigInt"); + croak "n3 provided is not a bigint" unless ref $n3 and $n2->isa("Math::BigInt"); + + croak "LHS should have a type" unless exists $tt{$$this}; + croak "LHS and a1 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a1}{c})" unless $tt{$$this}{c} eq $tt{$$a1}{c}; + croak "LHS and a2 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a2}{c})" unless $tt{$$this}{c} eq $tt{$$a2}{c}; + croak "LHS and a3 must be algebraically similar ($tt{$$this}{c} vs $tt{$$a3}{c})" unless $tt{$$this}{c} eq $tt{$$a3}{c}; + + Crypt::PBC::element_pow3_mpz( $this, $a1, $n1->{value}, $a2, $n2->{value}, $a3, $n3->{value} ); + + $this; +} +# }}} + +#### arith +## 1op +# square {{{ +sub square { + my $lhs = shift; + my $rhs = shift; + + if( $rhs ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; + + } else { + $rhs = $lhs; + } + + Crypt::PBC::element_square( $lhs, $rhs ); + + $lhs; +} +# }}} +# double {{{ +sub double { + my $lhs = shift; + my $rhs = shift; + + if( $rhs ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; + + } else { + $rhs = $lhs; + } + + Crypt::PBC::element_double( $lhs, $rhs ); + + $lhs; +} +# }}} +# halve {{{ +sub halve { + my $lhs = shift; + my $rhs = shift; + + if( $rhs ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; + + } else { + $rhs = $lhs; + } + + Crypt::PBC::element_halve( $lhs, $rhs ); + + $lhs; +} +# }}} +# neg {{{ +sub neg { + my $lhs = shift; + my $rhs = shift; + + if( $rhs ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; + + } else { + $rhs = $lhs; + } + + Crypt::PBC::element_neg( $lhs, $rhs ); + + $lhs; +} +# }}} +# invert {{{ +sub invert { + my $lhs = shift; + my $rhs = shift; + + if( $rhs ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs}{c})" unless $tt{$$lhs}{c} eq $tt{$$rhs}{c}; + + } else { + $rhs = $lhs; + } + + Crypt::PBC::element_invert( $lhs, $rhs ); + + $lhs; +} +# }}} + +## 2op +# add {{{ +sub add { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; + + Crypt::PBC::element_add( $lhs, $rhs1, $rhs2 ); + + } else { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + Crypt::PBC::element_add( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} +# Sub {{{ +sub Sub { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; + + Crypt::PBC::element_sub( $lhs, $rhs1, $rhs2 ); + + } else { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + Crypt::PBC::element_sub( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} +# mul {{{ +sub mul { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; + + Crypt::PBC::element_mul( $lhs, $rhs1, $rhs2 ); + + } else { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + Crypt::PBC::element_mul( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} +# div {{{ +sub div { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 and RHS2 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c} vs $tt{$$rhs2}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c} and $tt{$$rhs1}{c} eq $tt{$$rhs2}{c}; + + Crypt::PBC::element_div( $lhs, $rhs1, $rhs2 ); + + } else { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS and RHS should be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + Crypt::PBC::element_div( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} + +# mul_zn {{{ +sub mul_zn { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + croak "RHS2 should be in Zr (not $tt{$$rhs2}{t})" unless $tt{$$rhs2}{t} eq "Zr"; + + Crypt::PBC::element_mul_zn( $lhs, $rhs1, $rhs2 ); + + } else { + croak "RHS should be in Zr (not $tt{$$rhs1}{t})" + unless $tt{$$rhs1}{t} eq "Zr"; + + Crypt::PBC::element_mul_zn( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} +# mul_int {{{ +sub mul_int { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + croak "int provided ($rhs2) is not acceptable" unless $rhs2 =~ m/^\-?[0-9]+\z/s; + + Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); + + } else { + croak "int provided ($rhs1) is not acceptable" unless $rhs1 =~ m/^\-?[0-9]+\z/s; + + Crypt::PBC::element_mul_si( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} +# mul_bigint {{{ +sub mul_bigint { + my $lhs = shift; + my $rhs1 = shift; + my $rhs2 = shift; + + if( $rhs2 ) { + croak "LHS should have a type" unless exists $tt{$$lhs}; + croak "LHS, RHS1 must be algebraically similar ($tt{$$lhs}{c} vs $tt{$$rhs1}{c})" + unless $tt{$$lhs}{c} eq $tt{$$rhs1}{c}; + + croak "int provided is not a bigint" unless ref $rhs2 and $rhs2->isa("Math::BigInt"); + + Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); + + } else { + croak "int provided is not a bigint" unless ref $rhs1 and $rhs1->isa("Math::BigInt"); + + Crypt::PBC::element_mul_si( $lhs, $lhs, $rhs1 ); + } + + $lhs; +} +# }}} + +# pairing_apply {{{ +sub pairing_apply { + my $this = shift; + my $rhs1 = shift; + my $rhs2 = shift; + my $pair = $tt{$$this}{p}; + + my $c1 = $tt{$$rhs1}{c}; + my $c2 = $tt{$$rhs2}{c}; + + croak "group type for LHS must be GT (not $tt{$$this}{t})" unless $tt{$$this}{t} eq "GT"; + croak "group type for RHS1 must be G1 (not $c1)" unless $c1 eq "G1" or $c1 eq "G[12]"; + croak "group type for RHS2 must be G2 (not $c2)" unless $c2 eq "G2" or $c2 eq "G[12]"; + + Crypt::PBC::pairing_apply( $this => ($rhs1, $rhs2) => $pair ); + + $this; +} +*ehat = *pairing_apply; +*e_hat = *pairing_apply; +*apply_pairing = *pairing_apply; +# }}} + +#### package Crypt::PBC::Pairing {{{ + +package Crypt::PBC::Pairing; + +use strict; +use Carp; + +1; + +sub _stype { + my $this = shift; + my $that = shift; + my $type = shift; + + $Crypt::PBC::Element::tt{$$that} = { + t => $type, + p => $this, + c => $type, + }; + + if( $type =~ m/G[12]/ and Crypt::PBC::pairing_is_symmetric($this) ) { + $Crypt::PBC::Element::tt{$$that}{c} = "G[12]"; + } + + return; +} + +sub init_G1 { my $this = shift; my $that = Crypt::PBC::element_init_G1( $this ); $this->_stype($that => "G1"); $that } +sub init_G2 { my $this = shift; my $that = Crypt::PBC::element_init_G2( $this ); $this->_stype($that => "G2"); $that } +sub init_GT { my $this = shift; my $that = Crypt::PBC::element_init_GT( $this ); $this->_stype($that => "GT"); $that } +sub init_Zr { my $this = shift; my $that = Crypt::PBC::element_init_Zr( $this ); $this->_stype($that => "Zr"); $that } +sub DESTROY { my $this = shift; my $that = Crypt::PBC::pairing_clear( $this ); } + +# }}} +#### package Crypt::PBC {{{ + +package Crypt::PBC; + +use strict; +use warnings; +use Carp; + +our $VERSION = '0.9000'; + +# use base 'Exporter'; +# our %EXPORT_TAGS = ( 'all' => [ qw( ) ] ); +# our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); +# our @EXPORT = qw( ); +# +# sub AUTOLOAD { +# my $constname; +# our $AUTOLOAD; ($constname = $AUTOLOAD) =~ s/.*:://; +# croak "Crypt::PBC::constant wtf($AUTOLOAD, $constname) not defined" if $constname eq 'constant'; +# my ($error, $val) = constant($constname); +# if( $error ) { croak $error } +# goto &$AUTOLOAD; +# } + +require XSLoader; +XSLoader::load('Crypt::PBC', $VERSION); + +1; + +sub new { + my $class = shift; + my $that; + my $arg = shift; + + TOP: { + if( ref($arg) eq "GLOB" ) { + my $contents = do { local $/; <$arg> }; + + $arg = $contents; + redo TOP; + + } elsif( $arg !~ m/\n/ and -f $arg ) { + open my $in, $arg or croak "couldn't open param file ($arg): $!"; + my $contents = do { local $/; <$in> }; close $in; + + $arg = $contents; + redo TOP; + + } elsif( $arg ) { + $arg =~ s/^\s*//s; + $arg =~ s/\s*$//s; + + if( $arg =~ m/^(?s:type\s+[a-z]+\s*|[a-z0-9]+\s+[0-9]+\s*)+\z/s ) { + $that = Crypt::PBC::pairing_init_str($arg); + + } else { + croak "either the filename doesn't exist or that param string is unparsable: $arg"; + } + + } else { + croak "you must pass a file, glob (stream), or init params to new()"; + } + } + + croak "something went wrong ... you must pass a file, glob (stream), or init params to new()" unless $$that>0; + return $that; +} + +# }}} + +1; diff --git a/scripts/crypt/Crypt-PBC-0.9000/PBC.xs b/scripts/crypt/Crypt-PBC-0.9000/PBC.xs new file mode 100644 index 00000000..86ba12dd --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/PBC.xs @@ -0,0 +1,94 @@ +#include + +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +#include "ppport.h" + +MODULE = Crypt::PBC PACKAGE = Crypt::PBC + +PROTOTYPES: ENABLE + +INCLUDE: pairing.xs +INCLUDE: einit.xs +INCLUDE: earith.xs +INCLUDE: ecomp.xs + +void +element_fprintf(stream,format,element) + FILE * stream + char * format + element_t * element + + CODE: + element_fprintf(stream, format, *element); + +SV * +export_element(element) + element_t * element + + PREINIT: + char *buf; + int len; + + CODE: + len = element_length_in_bytes(*element); + buf = malloc( len + 2 ); + + // My bug posted to the pbc-dev newsgroup, where I was getting different + // results for different elements that test equal? Yeah, the following + // line was not present when I got that result. I'm awesome. 11/15/06 + element_to_bytes(buf, *element); + + RETVAL = newSVpvn(buf, len); + + free(buf); + + OUTPUT: + RETVAL + +mpz_t * +element_to_mpz(element) + element_t * element + + PREINIT: + mpz_t * ret = malloc (sizeof(mpz_t)); + + CODE: + mpz_init(*ret); + element_to_mpz(*ret, *element); + RETVAL = ret; + + OUTPUT: + RETVAL + +int +element_length_in_bytes(element) + element_t * element + + CODE: + RETVAL = element_length_in_bytes(*element); + + OUTPUT: + RETVAL + +SV * +element_order(element) + element_t * element + + PREINIT: + int i; + char *c; + + CODE: + i = mpz_sizeinbase(element[0]->field->order, 10); + c = malloc(i + 2); + + mpz_get_str(c, 10, element[0]->field->order); + + RETVAL = newSVpv(c, strlen(c)); + free(c); + + OUTPUT: + RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/README b/scripts/crypt/Crypt-PBC-0.9000/README new file mode 100644 index 00000000..a2ef1086 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/README @@ -0,0 +1,39 @@ +LIBPBC + +This is tested against libpbc version 0.4.18 . + +(The v0.8+ builds will pull the right version of libpbc and try to build it on some platforms.) + +COPYRIGHT + +Copyright (C) 2008 by Paul Miller + +SYNOPSIS + + use Crypt::PBC; + + my $pairing = new Crypt::PBC("params_d.txt"); + my $G1 = $pairing->init_G1->random; + my $G2 = $pairing->init_G2->random->double->square; + my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); + +----------------------------- + +"Chapter 1. Overview" + +The following text is the Overview chapter from the PBC library +documentation: + + The PBC library is a free portable C library designed to make it + easy to implement pairing-based cryptosystems. It provides an + abstract interface to a cyclic group with a bilinear pairing, and + the programmer does not need to worry about, or even know about + elliptic curves. + + It is built on top of GMP, another C library which performs + arbitrary precision arithmetic on integers, rationals and floats + with strong emphasis on portability and speed. + + The PBC library homepage: http://crypto.stanford.edu/pbc/ + + The GMP library homepage: http://www.swox.com/gmp/ diff --git a/scripts/crypt/Crypt-PBC-0.9000/TODO b/scripts/crypt/Crypt-PBC-0.9000/TODO new file mode 100644 index 00000000..587dfa75 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/TODO @@ -0,0 +1,96 @@ + + ** Updated: 12/02/2006 ** + + It would seem G1 and G2 are interchangable in some curves! + + "It turns out type A, A1 and E pairings are symmetric, and types D, F have + G1 being a group whose elements have a shorter representation than G2's + and G1 and G2 are not interchangeable." --Lynn + + I may need to rethink the argument type restrictions at some point. + + - you cannot tell if elements are compatible by their + element_size_in_bytes(), nor by their element->field->order + - A GT is compatible with a G2 and a G1 is compatible with a G2 under a + symmetric curve, which -- I think -- can be detected if a G1 and a G2 are + the same size and order? + + - "The next release will have int pairing_is_symmetric(pairing_ptr p) + function, which tells you when G1 and G2 are the same. " -- Lynn + + ** Updated: 11/28/2006 ** + + - There is no params support at all yet, and there probably should be. + - There are no mathematical tests at all yet, and there probably should + be. + - There should be more type-safety checks. For instance, element_is_sqr() + sagfaults on G1 and G2 elements. We'd like a croak() instead of an + unexplained exit. + +Please send feature requests to Paul Miller and I will try to accommodate. + +The following table lists the libpbc functions, whether they're ported in the +.xs files, whether they've been exported by the PM object oriented interface, +whether they've been documented, called in a test and finally; whether they've +been tested for mathematical accuracy (usually not) or whether they've been +"slammed" with all ther permutations of wrong group types inside an eval {}s. + +[Note: these are the XS names, not the PBC names (mostly).] + ++---------------------+----------------+---------------+-----------+------------+-------------+ +| libpbc function | XS port / Docs | PM OOi / Docs | t/ called | t/ slammed | t/ accuracy | ++---------------------+----------------+---------------+-----------+------------+-------------+ +| element_fprintf | x x | x e | \0 | \0 | \0 | +| element_export | x x | x e | x | \0 | x | +| element_to_mpz | x x | x e | x | \0 | x | +| element_add | x x | x e | 2 | 2 | | +| element_sub | x x | x e | 2 | 2 | | +| element_mul | x x | x e | 2 | 2 | | +| element_mul_zn | x x | x | 2 | 2 | | +| element_mul_mpz | x x | x | 2 | 2 | | +| element_mul_si | x x | x | 2 | 2 | | +| element_div | x x | x e | 2 | 2 | | +| element_double | x x | x e | 2 | 1 | | +| element_halve | x x | x e | 2 | 1 | | +| element_square | x x | x e | 2 | 1 | | +| element_neg | x x | x e | 2 | 1 | | +| element_invert | x x | x e | 2 | 1 | | +| element_pow_zn | x x | x e | x | 2 | x | +| element_pow_mpz | x x | x e | x | 2 | | +| element_pow2_zn | x x | x e | x | 4 | | +| element_pow3_zn | x x | x e | x | 6 | | +| element_pow2_mpz | x x | x e | x | 4 | | +| element_pow3_mpz | x x | x e | x | 6 | | +| element_is0 | x x | x e | x | 1 | | +| element_is1 | x x | x e | x | 1 | | +| element_is_sqr | x x | x e | x | 1 | x | +| element_cmp | x x | x e | x | 1 | | +| element_clear | x x | x e | | \0 | \0 | +| element_random | x x | x e | x | 1 | x | +| element_set0 | x x | x e | x | 1 | x | +| element_set1 | x x | x e | x | 1 | x | +| element_set | x x | x e | x | 1 | x | +| element_set_si | x x | x e | x | 1 | x | +| element_set_mpz | x x | x e | x | 1 | x | +| element_from_hash | x x | x e | x | 1 | x | +| pairing_init_stream | x x | x c | x | \0 | x | +| pairing_init_str | x x | x c | x | \0 | x | +| pairing_clear | x x | x p | | \0 | \0 | +| pairing_apply | x x | x e | x | 2 | x | +| element_init_G1 | x x | x p | x | \0 | \0 | +| element_init_G2 | x x | x p | x | \0 | \0 | +| element_init_GT | x x | x p | x | \0 | \0 | +| element_init_Zr | x x | x p | x | \0 | \0 | +| element_pp_init | | | | | | +| element_pp_clear | | | | | | +| element_pp_pow | | | | | | +| a_param_init | | | | | | +| a_param_clear | | | | | | +| a_param_gen | | | | | | +| a_param_out_str | | | | | | +| ... | | | | | | +| f_param_init | | | | | | +| f_param_clear | | | | | | +| f_param_gen | | | | | | +| f_param_out_str | | | | | | ++---------------------+----------------+---------------+-----------+------------+-------------+ diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c b/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c new file mode 100644 index 00000000..85df44c9 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/contrib/c_quicky.c @@ -0,0 +1,33 @@ +// C: -I/usr/include/pbc -lpbc +// cat params_d.txt | c c_quicky.c + +#include +#include +#include + +char huge1[4096] = "TEST"; +char huge2[4096] = "another test"; + +int main() { + pairing_t pairing; + element_t gt, g1, g2; + char ptr[4096]; + + size_t count = fread(ptr, 1, 1024, stdin); + if (!count) pbc_die("input error"); + if (pairing_init_set_buf(pairing, ptr, count)) pbc_die("pairing init failed"); + + element_init_GT(gt, pairing); + element_init_G1(g1, pairing); + element_init_G2(g2, pairing); + + element_random(g1); + element_random(g2); + + element_from_hash(g1, huge1, strlen(huge1)); + element_from_hash(g2, huge2, strlen(huge2)); + + pairing_apply(gt, g1, g2, pairing); + + element_printf("gt: %B\n", gt); +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c b/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c new file mode 100644 index 00000000..05e99ceb --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/contrib/libtest.c @@ -0,0 +1,13 @@ + +#include +#include + +char *test = "type a\nq 8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791\nh 12016012264891146079388821366740534204802954401251311822919615131047207289359704531102844802183906537786776\nr 730750818665451621361119245571504901405976559617\nexp2 159\nexp1 107\nsign1 1\nsign0 1\n"; + +int main() { + pairing_t pairing; + pairing_init_set_buf(pairing, test, strlen(test)); + + return 0; +} + diff --git a/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky b/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky new file mode 100755 index 00000000..76017bdf --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/contrib/quicky @@ -0,0 +1,22 @@ +#!/usr/bin/perl + +# load this test version, not the installed version: +BEGIN { system('perl Makefile.PL') unless -f 'Makefile'; system("make"); unshift @INC, 'blib/arch', 'blib/lib' } + +use strict; +use Crypt::PBC; +use Math::BigInt (try => 'GMP'); + +my $curve = new Crypt::PBC("params_d159.txt"); +my $x = $curve->init_Zr->random; +my $y = $curve->init_Zr->random; +my $xy = $curve->init_Zr->set( $x )->mul( $y ); +my $GT1 = $curve->init_GT->random; +my $GT2 = $curve->init_GT->set( $GT1 ); + +$GT1->pow_zn( $xy ); +$GT2->pow_zn( $x )->pow_zn( $y ); + +$| = 1; +print "gt_to_xy = ", $GT1->as_base64, "\n"; +print "gt_to_x_to_y = ", $GT2->as_base64, "\n"; diff --git a/scripts/crypt/Crypt-PBC-0.9000/earith.xs b/scripts/crypt/Crypt-PBC-0.9000/earith.xs new file mode 100644 index 00000000..96729a4b --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/earith.xs @@ -0,0 +1,168 @@ +void +element_add(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + element_t * rhs2 + + CODE: + element_add(*lhs, *rhs1, *rhs2); + +void +element_sub(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + element_t * rhs2 + + CODE: + element_sub(*lhs, *rhs1, *rhs2); + +void +element_mul(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + element_t * rhs2 + + CODE: + element_mul(*lhs, *rhs1, *rhs2); + +void +element_mul_zn(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + element_t * rhs2 + + CODE: + element_mul_zn(*lhs, *rhs1, *rhs2); + +void +element_mul_mpz(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + mpz_t * rhs2 + + CODE: + element_mul_mpz(*lhs, *rhs1, *rhs2); + +void +element_mul_si(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + long rhs2 + + CODE: + element_mul_si(*lhs, *rhs1, rhs2); + +void +element_div(lhs,rhs1,rhs2) + element_t * lhs + element_t * rhs1 + element_t * rhs2 + + CODE: + element_div(*lhs, *rhs1, *rhs2); + +void +element_double(lhs,rhs) + element_t * lhs + element_t * rhs + + CODE: + element_double(*lhs,*rhs); + +void +element_halve(lhs,rhs) + element_t * lhs + element_t * rhs + + CODE: + element_halve(*lhs,*rhs); + +void +element_square(lhs,rhs) + element_t * lhs + element_t * rhs + + CODE: + element_square(*lhs,*rhs); + +void +element_neg(lhs,rhs) + element_t * lhs + element_t * rhs + + CODE: + element_neg(*lhs,*rhs); + +void +element_invert(lhs,rhs) + element_t * lhs + element_t * rhs + + CODE: + element_invert(*lhs,*rhs); + +void +element_pow_zn(LHS,RHS_base,RHS_expo) + element_t * LHS + element_t * RHS_base + element_t * RHS_expo + + CODE: + element_pow_zn(*LHS, *RHS_base, *RHS_expo); + +void +element_pow2_zn(x,a1,n1,a2,n2) + element_t * x + element_t * a1 + element_t * n1 + element_t * a2 + element_t * n2 + + CODE: + element_pow2_zn(*x,*a1,*n2,*a2,*n2); // sets x = a1^n1 times a2^n2, but n1, n2 must be elements of a ring Z_n for some integer n. + +void +element_pow3_zn(x,a1,n1,a2,n2,a3,n3) + element_t * x + element_t * a1 + element_t * n1 + element_t * a2 + element_t * n2 + element_t * a3 + element_t * n3 + + CODE: + element_pow3_zn(*x,*a1,*n2,*a2,*n2,*a3,*n3); + +void +element_pow_mpz(LHS,RHS_base,RHS_expo) + element_t * LHS + element_t * RHS_base + mpz_t * RHS_expo + + CODE: + element_pow_mpz(*LHS, *RHS_base, *RHS_expo); + +void +element_pow2_mpz(x,a1,n1,a2,n2) + element_t * x + element_t * a1 + mpz_t * n1 + element_t * a2 + mpz_t * n2 + + CODE: + element_pow2_mpz(*x,*a1,*n2,*a2,*n2); + +void +element_pow3_mpz(x,a1,n1,a2,n2,a3,n3) + element_t * x + element_t * a1 + mpz_t * n1 + element_t * a2 + mpz_t * n2 + element_t * a3 + mpz_t * n3 + + CODE: + element_pow3_mpz(*x,*a1,*n2,*a2,*n2,*a3,*n3); diff --git a/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs b/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs new file mode 100644 index 00000000..31f970e6 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/ecomp.xs @@ -0,0 +1,40 @@ +int +element_is0(element) + element_t * element + + CODE: + RETVAL = element_is0(*element); + + OUTPUT: + RETVAL + +int +element_is1(element) + element_t * element + + CODE: + RETVAL = element_is1(*element); + + OUTPUT: + RETVAL + +int +element_is_sqr(element) + element_t * element + + CODE: + RETVAL = element_is_sqr(*element); + + OUTPUT: + RETVAL + +int +element_cmp(a,b) + element_t * a + element_t * b + + CODE: + RETVAL = element_cmp(*a, *b); + + OUTPUT: + RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/einit.xs b/scripts/crypt/Crypt-PBC-0.9000/einit.xs new file mode 100644 index 00000000..a869fe35 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/einit.xs @@ -0,0 +1,134 @@ +element_t * +element_init_G1(pairing) + pairing_t * pairing + + PREINIT: + element_t * element = malloc( sizeof(element_t) ); + + CODE: + element_init_G1(*element, *pairing); + RETVAL = element; + + OUTPUT: + RETVAL + +element_t * +element_init_G2(pairing) + pairing_t * pairing + + PREINIT: + element_t * element = malloc( sizeof(element_t) ); + + CODE: + element_init_G2(*element, *pairing); + RETVAL = element; + + OUTPUT: + RETVAL + +element_t * +element_init_GT(pairing) + pairing_t * pairing + + PREINIT: + element_t * element = malloc( sizeof(element_t) ); + + CODE: + element_init_GT(*element, *pairing); + RETVAL = element; + + OUTPUT: + RETVAL + +element_t * +element_init_Zr(pairing) + pairing_t * pairing + + PREINIT: + element_t * element = malloc( sizeof(element_t) ); + + CODE: + element_init_Zr(*element, *pairing); + RETVAL = element; + + OUTPUT: + RETVAL + +void +element_clear(element) + element_t * element + + CODE: + element_clear(*element); + free(element); + +void +element_random(element) + element_t * element + + CODE: + element_random(*element); + +void +element_set0(element) + element_t * element + + CODE: + element_set0(*element); + +void +element_set1(element) + element_t * element + + CODE: + element_set1(*element); + +void +element_set(a,b) + element_t * a + element_t * b + + CODE: + element_set(*a, *b); + +void +element_set_si(a,b) + element_t * a + long b + + CODE: + element_set_si(*a, b); + +void +element_set_mpz(a,m) + element_t * a + mpz_t * m + + CODE: + element_set_mpz(*a, *m); + +void +element_from_hash(element,hash) + element_t * element + SV * hash + + PREINIT: + STRLEN len; + char * ptr; + + CODE: + ptr = SvPV(hash, len); + element_from_hash(*element, ptr, len); + +void +element_from_bytes(element,data) + element_t * element + SV * data + + PREINIT: + STRLEN len; + char * ptr; + + CODE: + ptr = SvPV(data, len); + element_from_bytes(*element, ptr); // , len); diff --git a/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm b/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm new file mode 100644 index 00000000..80e0dc7f --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/inc/Devel/CheckLib.pm @@ -0,0 +1,380 @@ +# $Id: CheckLib.pm,v 1.25 2008/10/27 12:16:23 drhyde Exp $ + +package # +Devel::CheckLib; + +use strict; +use vars qw($VERSION @ISA @EXPORT); +$VERSION = '0.6'; +use Config; + +use File::Spec; +use File::Temp; + +require Exporter; +@ISA = qw(Exporter); +@EXPORT = qw(assert_lib check_lib_or_exit); + +# localising prevents the warningness leaking out of this module +local $^W = 1; # use warnings is a 5.6-ism + +_findcc(); # bomb out early if there's no compiler + +=head1 NAME + +Devel::CheckLib - check that a library is available + +=head1 DESCRIPTION + +Devel::CheckLib is a perl module that checks whether a particular C +library and its headers are available. + +=head1 SYNOPSIS + + use Devel::CheckLib; + + check_lib_or_exit( lib => 'jpeg', header => 'jpeglib.h' ); + check_lib_or_exit( lib => [ 'iconv', 'jpeg' ] ); + + # or prompt for path to library and then do this: + check_lib_or_exit( lib => 'jpeg', libpath => $additional_path ); + +=head1 USING IT IN Makefile.PL or Build.PL + +If you want to use this from Makefile.PL or Build.PL, do +not simply copy the module into your distribution as this may cause +problems when PAUSE and search.cpan.org index the distro. Instead, use +the use-devel-checklib script. + +=head1 HOW IT WORKS + +You pass named parameters to a function, describing to it how to build +and link to the libraries. + +It works by trying to compile this: + + int main(void) { return 0; } + +and linking it to the specified libraries. If something pops out the end +which looks executable, then we know that it worked. That tiny program is +built once for each library that you specify, and (without linking) once +for each header file. + +=head1 FUNCTIONS + +All of these take the same named parameters and are exported by default. +To avoid exporting them, C. + +=head2 assert_lib + +This takes several named parameters, all of which are optional, and dies +with an error message if any of the libraries listed can +not be found. B: dying in a Makefile.PL or Build.PL may provoke +a 'FAIL' report from CPAN Testers' automated smoke testers. Use +C instead. + +The named parameters are: + +=over + +=item lib + +Must be either a string with the name of a single +library or a reference to an array of strings of library names. Depending +on the compiler found, library names will be fed to the compiler either as +C<-l> arguments or as C<.lib> file names. (E.g. C<-ljpeg> or C) + +=item libpath + +a string or an array of strings +representing additional paths to search for libraries. + +=item LIBS + +a C-style space-seperated list of +libraries (each preceded by '-l') and directories (preceded by '-L'). + +This can also be supplied on the command-line. + +=back + +And libraries are no use without header files, so ... + +=over + +=item header + +Must be either a string with the name of a single +header file or a reference to an array of strings of header file names. + +=item incpath + +a string or an array of strings +representing additional paths to search for headers. + +=item INC + +a C-style space-seperated list of +incpaths, each preceded by '-I'. + +This can also be supplied on the command-line. + +=back + +=head2 check_lib_or_exit + +This behaves exactly the same as C except that instead of +dieing, it warns (with exactly the same error message) and exits. +This is intended for use in Makefile.PL / Build.PL +when you might want to prompt the user for various paths and +things before checking that what they've told you is sane. + +If any library or header is missing, it exits with an exit value of 0 to avoid +causing a CPAN Testers 'FAIL' report. CPAN Testers should ignore this +result -- which is what you want if an external library dependency is not +available. + +=cut + +sub check_lib_or_exit { + eval 'assert_lib(@_)'; + if($@) { + warn $@; + exit; + } +} + +sub assert_lib { + my %args = @_; + my (@libs, @libpaths, @headers, @incpaths); + + # FIXME: these four just SCREAM "refactor" at me + @libs = (ref($args{lib}) ? @{$args{lib}} : $args{lib}) + if $args{lib}; + @libpaths = (ref($args{libpath}) ? @{$args{libpath}} : $args{libpath}) + if $args{libpath}; + @headers = (ref($args{header}) ? @{$args{header}} : $args{header}) + if $args{header}; + @incpaths = (ref($args{incpath}) ? @{$args{incpath}} : $args{incpath}) + if $args{incpath}; + + # work-a-like for Makefile.PL's LIBS and INC arguments + # if given as command-line argument, append to %args + for my $arg (@ARGV) { + for my $mm_attr_key qw(LIBS INC) { + if (my ($mm_attr_value) = $arg =~ /\A $mm_attr_key = (.*)/x) { + # it is tempting to put some \s* into the expression, but the + # MM command-line parser only accepts LIBS etc. followed by =, + # so we should not be any more lenient with whitespace than that + $args{$mm_attr_key} .= " $mm_attr_value"; + } + } + } + + # using special form of split to trim whitespace + if(defined($args{LIBS})) { + foreach my $arg (split(' ', $args{LIBS})) { + die("LIBS argument badly-formed: $arg\n") unless($arg =~ /^-l/i); + push @{$arg =~ /^-l/ ? \@libs : \@libpaths}, substr($arg, 2); + } + } + if(defined($args{INC})) { + foreach my $arg (split(' ', $args{INC})) { + die("INC argument badly-formed: $arg\n") unless($arg =~ /^-I/); + push @incpaths, substr($arg, 2); + } + } + + my @cc = _findcc(); + my @missing; + + # first figure out which headers we can't find ... + for my $header (@headers) { + my($ch, $cfile) = File::Temp::tempfile( + 'assertlibXXXXXXXX', SUFFIX => '.c' + ); + print $ch qq{#include <$header>\nint main(void) { return 0; }\n}; + close($ch); + my $exefile = File::Temp::mktemp( 'assertlibXXXXXXXX' ) . $Config{_exe}; + my @sys_cmd; + # FIXME: re-factor - almost identical code later when linking + if ( $Config{cc} eq 'cl' ) { # Microsoft compiler + require Win32; + @sys_cmd = (@cc, $cfile, "/Fe$exefile", (map { '/I'.Win32::GetShortPathName($_) } @incpaths)); + } elsif($Config{cc} =~ /bcc32(\.exe)?/) { # Borland + @sys_cmd = (@cc, (map { "-I$_" } @incpaths), "-o$exefile", $cfile); + } else { # Unix-ish + # gcc, Sun, AIX (gcc, cc) + @sys_cmd = (@cc, $cfile, (map { "-I$_" } @incpaths), "-o", "$exefile"); + } + warn "# @sys_cmd\n" if $args{debug}; + my $rv = $args{debug} ? system(@sys_cmd) : _quiet_system(@sys_cmd); + push @missing, $header if $rv != 0 || ! -x $exefile; + _cleanup_exe($exefile); + unlink $cfile; + } + + # now do each library in turn with no headers + #j my($ch, $cfile) = File::Temp::tempfile( + #j 'assertlibXXXXXXXX', SUFFIX => '.c' + #j ); + #j print $ch "int main(void) { return 0; }\n"; + #j close($ch); + + my $cfile = "contrib/libtest.c"; + + for my $lib ( @libs ) { + my $exefile = File::Temp::mktemp( 'assertlibXXXXXXXX' ) . $Config{_exe}; + my @sys_cmd; + if ( $Config{cc} eq 'cl' ) { # Microsoft compiler + require Win32; + my @libpath = map { + q{/libpath:} . Win32::GetShortPathName($_) + } @libpaths; + @sys_cmd = (@cc, $cfile, "${lib}.lib", "/Fe$exefile", + "/link", @libpath + ); + } elsif($Config{cc} eq 'CC/DECC') { # VMS + } elsif($Config{cc} =~ /bcc32(\.exe)?/) { # Borland + my @libpath = map { "-L$_" } @libpaths; + @sys_cmd = (@cc, "-o$exefile", "-l$lib", @libpath, $cfile); + } else { # Unix-ish + # gcc, Sun, AIX (gcc, cc) + my @libpath = map { "-L$_" } @libpaths; + @sys_cmd = (@cc, $cfile, "-o", "$exefile", "-l$lib", @libpath); + } + warn "# @sys_cmd\n" if $args{debug}; + my $rv = $args{debug} ? system(@sys_cmd) : _quiet_system(@sys_cmd); + push @missing, $lib if $rv != 0 || ! -x $exefile; + _cleanup_exe($exefile); + } + #j unlink $cfile; + + my $miss_string = join( q{, }, map { qq{'$_'} } @missing ); + die("Can't link/include $miss_string\n") if @missing; +} + +sub _cleanup_exe { + my ($exefile) = @_; + my $ofile = $exefile; + $ofile =~ s/$Config{_exe}$/$Config{_o}/; + unlink $exefile if -f $exefile; + unlink $ofile if -f $ofile; + unlink "$exefile\.manifest" if -f "$exefile\.manifest"; + return +} + +sub _findcc { + my @paths = split(/$Config{path_sep}/, $ENV{PATH}); + my @cc = split(/\s+/, $Config{cc}); + return @cc if -x $cc[0]; + foreach my $path (@paths) { + my $compiler = File::Spec->catfile($path, $cc[0]) . $Config{_exe}; + return ($compiler, @cc[1 .. $#cc]) if -x $compiler; + } + die("Couldn't find your C compiler\n"); +} + +# code substantially borrowed from IPC::Run3 +sub _quiet_system { + my (@cmd) = @_; + + # save handles + local *STDOUT_SAVE; + local *STDERR_SAVE; + open STDOUT_SAVE, ">&STDOUT" or die "CheckLib: $! saving STDOUT"; + open STDERR_SAVE, ">&STDERR" or die "CheckLib: $! saving STDERR"; + + # redirect to nowhere + local *DEV_NULL; + open DEV_NULL, ">" . File::Spec->devnull + or die "CheckLib: $! opening handle to null device"; + open STDOUT, ">&" . fileno DEV_NULL + or die "CheckLib: $! redirecting STDOUT to null handle"; + open STDERR, ">&" . fileno DEV_NULL + or die "CheckLib: $! redirecting STDERR to null handle"; + + # run system command + my $rv = system(@cmd); + + # restore handles + open STDOUT, ">&" . fileno STDOUT_SAVE + or die "CheckLib: $! restoring STDOUT handle"; + open STDERR, ">&" . fileno STDERR_SAVE + or die "CheckLib: $! restoring STDERR handle"; + + return $rv; +} + +=head1 PLATFORMS SUPPORTED + +You must have a C compiler installed. We check for C<$Config{cc}>, +both literally as it is in Config.pm and also in the $PATH. + +It has been tested with varying degrees on rigourousness on: + +=over + +=item gcc (on Linux, *BSD, Mac OS X, Solaris, Cygwin) + +=item Sun's compiler tools on Solaris + +=item IBM's tools on AIX + +=item SGI's tools on Irix 6.5 + +=item Microsoft's tools on Windows + +=item MinGW on Windows (with Strawberry Perl) + +=item Borland's tools on Windows + +=item QNX + +=back + +=head1 WARNINGS, BUGS and FEEDBACK + +This is a very early release intended primarily for feedback from +people who have discussed it. The interface may change and it has +not been adequately tested. + +Feedback is most welcome, including constructive criticism. +Bug reports should be made using L or by email. + +When submitting a bug report, please include the output from running: + + perl -V + perl -MDevel::CheckLib -e0 + +=head1 SEE ALSO + +L + +L + +=head1 AUTHORS + +David Cantrell Edavid@cantrell.org.ukE + +David Golden Edagolden@cpan.orgE + +Thanks to the cpan-testers-discuss mailing list for prompting us to write it +in the first place; + +to Chris Williams for help with Borland support. + +=head1 COPYRIGHT and LICENCE + +Copyright 2007 David Cantrell. Portions copyright 2007 David Golden. + +This module is free-as-in-speech software, and may be used, distributed, +and modified under the same conditions as perl itself. + +=head1 CONSPIRACY + +This module is also free-as-in-mason software. + +=cut + +1; diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod new file mode 100644 index 00000000..b55d55c2 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC.pod @@ -0,0 +1,248 @@ +=head1 NAME + +Crypt::PBC - OO interface for the Stanford PBC library + +=head1 SYNOPSIS + + use Crypt::PBC; + + my $pairing = new Crypt::PBC("params_d.txt"); + my $G1 = $pairing->init_G1->random; + my $G2 = $pairing->init_G2->random->double->square; + my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); + + +=head1 "Chapter 1. Overview" + +The following text is the Overview chapter from the PBC library +documentation: + + The PBC library is a free portable C library designed to make it + easy to implement pairing-based cryptosystems. It provides an + abstract interface to a cyclic group with a bilinear pairing, and + the programmer does not need to worry about, or even know about + elliptic curves. + + It is built on top of GMP, another C library which performs + arbitrary precision arithmetic on integers, rationals and floats + with strong emphasis on portability and speed. + + The PBC library homepage: http://crypto.stanford.edu/pbc/ + + The GMP library homepage: http://www.swox.com/gmp/ + +=head1 Nomenclature + +The documentation (and error messages) for these modules frequently refer to +the LHS, the RHS, EXPO, and BASE. They are the left hand side, right hand +side, exponent and base. In an algebraic equation: LHS=RHS and LHS=BASE^EXPO. +In other words, the LHS is the element to which a value is being assigned. +There may sometimes be more than one RHS, or it might be called the a1 or n1; +but, there will only be one LHS. + +=head1 Perl Module Methods + +The Perl Module methods implement an OO interface that the author (Paul) highly +recommends using. The only Perl Module OO function in the L +package is C. Please see L and +L for the guts of the intended OO interface. + +=head2 Crypt::PBC::new() + +Returns a new PBC pairing object. C takes, as arguments, either the +name of a file, a file stream (e.g., new C), or the params +for a curve as a string. Ben Lynn provides a zip file of d-type curves: + + MNT curve parameters for embedding degree 6 (which I + call type D curves), for all D less than a million, and + for subgroup sizes at least 80 bits and less than 300 + bits long. Generated using test programs bundled with + PBC library. + + http://crypto.stanford.edu/pbc/download.html + +=head1 XS Loaded Functions + +This section is basically a listing of the PBC functions as they are +imported. You can use them directly if you're already comfortable with the +layout of PBC. If you're starting from scratch and aren't much of a C +coder, you'll have an easier time using the Perl Module methods because +they implement a little type-safety to protect perl coders from segfaults. + +Mixing and matching direct calls with the Perl Module methods is a sure way +to run into trouble, since the Perl Module methods tag the PBC elements +with a type. + +=head2 Pairing Functions + +(You can use these functions successfully, but the intended interface was +described above. L describes that interface in detail.) + + # Initialize a pairing from a a $string + my $pairing = Crypt::PBC::pairing_init_str($string); + + # Clear the memory malloced for the pairing + Crypt::PBC::pairing_clear($pairing); + + # Apply the pairing. Be careful here. If you pass the wrong type of + # elements, GT = apply(G1, G2), this will segmentation fault! Please + # see the PBC documentation for further information: + # http://crypto.stanford.edu/pbc/manual/ + Crypt::PBC::pairing_apply($LHS, $RHS1, $RHS2, $pairing); + +=head2 Element Initializer and Assignment Functions + +(You can use these functions successfully, but the intended interface was +described above. L describes that interface in detail.) + + my $element_in_G1 = Crypt::PBC::element_init_G1($pairing); + my $element_in_G2 = Crypt::PBC::element_init_G2($pairing); + my $element_in_GT = Crypt::PBC::element_init_GT($pairing); + my $element_in_Zr = Crypt::PBC::element_init_Zr($pairing); + + # Do not forget to clear your memory! + Crypt::PBC::element_clear( $element ); # in any group + + # assign some random to $element + # (uses /dev/urandom if possible, or rand() if necessary) + Crypt::PBC::element_random( $element ); + Crypt::PBC::element_set0( $element ); # set to 0 + Crypt::PBC::element_set1( $element ); # set to 1 + Crypt::PBC::element_set( $a, $b ); # a=b + Crypt::PBC::element_set_si( $a, 5 ); # a=5 + + Crypt::PBC::element_set_mpz( $a, $bigint ); + # For this one, construct a Math::BigInt::GMP and pass that for + # $bigint. Alternatively, you can construct a $i=Math::BigInt and + # pass the $i->{value}. (That interface is probably not well + # supported but is the only one of which the author is aware.) + + Crypt::PBC::element_from_hash( $element, $hash ); + # Set $element based on the bytes in $hash. You must use some kind + # of hashing algorithm (e.g., Digest::SHA1) to map data to an + # element: + # + # "In general you cannot feed it plaintext. You should only give it + # short strings of bytes (e.g. 160 bits if G1 has order around 2^160, + # which is the case for most of the bundled pairing parameters)." + # -- Lynn + + Crypt::PBC::element_from_bytes( $element, $bytes ); + # Set $element based on the bytes in $bytes. this probably isn't useful + # unless $bytes is like $spewed_result from element_export() below. + +=head2 Arithmetic Functions + +(You can use these functions successfully, but the intended interface was +described above. L describes that interface in detail.) + + # lhs=rhs1+rhs2 -- make sure these are all the same type ... + Crypt::PBC::element_add($lhs, $rhs1, $rhs2); + Crypt::PBC::element_sub($lhs, $rhs1, $rhs2); # lhs=rhs1-rhs2 + Crypt::PBC::element_mul($lhs, $rhs1, $rhs2); + Crypt::PBC::element_div($lhs, $rhs1, $rhs2); + + # (whatever these mean is in the context of the $pairing) + Crypt::PBC::element_double($lhs, $rhs); # lhs = 2*rhs + Crypt::PBC::element_halve( $lhs, $rhs); # lhs = rhs/2 + Crypt::PBC::element_square($lhs, $rhs); # lhs = rhs^2 + Crypt::PBC::element_neg( $lhs, $rhs); # (please see the PBC docs) + Crypt::PBC::element_invert($lhs, $rhs); # lhs = 1/rhs + + # Here's a few other choices for mul + Crypt::PBC::element_mul_zn( $lhs, $rhs1, $rhs2 ); + # $rhs1 and $lhs should be of the same type, but here $rhs2 should be + # in Zr instead of being in the same group like in element_mul() + # above + + Crypt::PBC::element_mul_mpz( $lhs, $rhs1, $rhs2 ); + # For this one, construct a Math::BigInt::GMP and pass that for + # $rhs2 or pass $i->{value} from a Math::BigInt. + + Crypt::PBC::element_mul_si( $lhs, $rhs1, $rhs2 ); + # Here, $rhs2 is a regular old integer... + + Crypt::PBC::element_pow_zn( $lhs, $a, $n); # lhs = a^n + Crypt::PBC::element_pow2_zn($lhs, $a1, $n1, $a2, $n2); # a1^n1 * a2^n2 + Crypt::PBC::element_pow3_zn($lhs, $a1, $n1, $a2, $n2, $a3, $n3); + # in the above, the lhs and a\d+ should be in the same group, n\d+ in Zr + + Crypt::PBC::element_pow_mpz( $lhs, $a, $n); + Crypt::PBC::element_pow2_mpz($lhs, $a1, $n1, $a2, $n2); + Crypt::PBC::element_pow3_mpz($lhs, $a1, $n1, $a2, $n2, $a3, $n3); + # like the _zn functions, but n\d+ should be Math::BigInt::GMP + # or pass $i->{value} from a Math::BigInt. + +=head2 Comparison Functions + +(You can use these functions successfully, but the intended interface was +described above. L describes that interface in detail.) + + Crypt::PBC::element_is0( $a ); # 1 when $a is 0 + Crypt::PBC::element_is1( $a ); # 1 when $a is 1 + Crypt::PBC::element_cmp( $a,$b ); # paradoxically, false when $a == $b + Crypt::PBC::element_is_sqr( $a ); # 1 when $a is a perfect square ... + # see the PBC docs for words like "residue" + +=head2 Export and Output + +(You can use these functions successfully, but the intended interface was +described above. L describes that interface in detail.) + + # Please check the PBC docs ... + Crypt::PBC::element_fprintf(\*OUTFILE, $format, $element); + Crypt::PBC::element_fprintf(\*STDOUT, "example element=\%B\n", $element); + # (You may be surprised how many bigints are in these group elements.) + + my $spewed_result = Crypt::PBC::export_element($element); + # These are bytes, dumped from the $element, that can be used to + # reconstruct the element or used for interacting with real life data. + + # Example: + my $cipher = new Crypt::CBC({ + header => "randomiv", + key => Crypt::PBC::export_element($element), + cipher => 'Blowfish', # hehe + }); + + my $big = Crypt::PBC::element_to_mpz( $element ); + # Returns a Math::BigInt::GMP, not a Math::BigInt! WARNING: the + # DESTROY() method from Math::BigInt::GMP will be missing unless you + # require that package into your program. You'll want to do that or you'll + # have a memory leak... Lastly, this is really only useful for elements in + # Zr -- element_fprintf() to see what I mean. + +=head1 XS AUTHOR + +Paul Miller + +Paul is using this software in his own projects... If you find bugs, please +please please let him know. :) Actually, let him know if you find it handy at +all. Half the fun of releasing this stuff is knowing that people use it. + +Additionally, he is aware that the documentation sucks. Should you email him +for help, he will most likely try to give it. + +=head1 COPYRIGHT + +Copyright (c) 2008 Paul Miller -- LGPL [attached] + +This interface is intended to be LGPL to whatever extent allowed by the license +for the pbc library itself. That license is GPL and probably therefore makes +this package GPL. I'm not expert on these matters, so I'm choosing LGPL if +possible. + +=head1 SPECIAL THANKS + +Without the direction of Dr. Leszek T. Lilien +(http://www.cs.wmich.edu/~llilien/), I never would have heard of IBE/PBC -- +much less develop any interest in it. Crypto is not his specialty, but +like any good professor, he's interested in everything. + +=head1 SEE ALSO + + http://crypto.stanford.edu/pbc/ + + http://groups.google.com/group/pbc-devel + +perl(1), L, L diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod new file mode 100644 index 00000000..be4f3a66 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Element.pod @@ -0,0 +1,235 @@ +=head1 NAME + +Crypt::PBC::Element - OO interface for the Stanford PBC library + +=head1 SYNOPSIS + + use Crypt::PBC; + + my $pairing = new Crypt::PBC("params_d.txt"); + my $G1 = $pairing->init_G1->random; + my $G2 = $pairing->init_G2->random->double->square; + my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); + +=head1 Overview + +Throughout the entire OO interface I have attempted to be consistant that the +Element return itself where it isn't immediately obvious that some other thing +should be returned instead. + + my $x = $pairing->init_G1; # $x is an element + $x->random; # randomize the element. + $x->set0; # set element to 0 + $x->set_to_hash("lol!"); # set element to lol ... + + # All the above can instead be written as: + my $x = $pairing->init_G1->random->set0->set_to_hash("lol!"); + +However, functions that return something else ... dont' return elements. +C<$string> (below) is a MIME encoded string, not an element. + + my $string = $x->as_base64; + +For more help seting up a new Pairing, see the L manpage (under new). + +Best of all, you do not need to keep track of which elements need to be cleared +when using the OO interface. L and L +keep track of which elements and pairings need to be cleared in the C +method. If you overload C, be sure to call C! + +=head1 Assignment Functions + + my $x = $pairing->init_G1; + + $x->set0; # sets the element to 0 + $x->set1; # sets the element to 1 + + my $y = $pairing->init_Zr->set_to_int( 19 ); # set a new element to 19 + + my $i = new Math::Bigint( 25 ); + my $z = $pairing->init_Zr->set_to_bigint( $i ): + # $z is now the bigint 25 ah, magic. + + $z->random; # ruin the bigint and replace with boring random bytes + + $y->set_to_hash("Poru Mira"); + # Set $element based on the bytes "Poru Mira". + +You must use some kind of hashing algorithm (e.g., L) to map data to +an element. "In general you cannot feed it plaintext. You should only give it +short strings of bytes (e.g. 160 bits if G1 has order around 2^160, which is +the case for most of the bundled pairing parameters)." -- Lynn + + my $a = $pairing->init_G1->random; + my $b = $pairing->init_G1->set( $a ); + +The above makes a new G1 element ($a), sets it to random, then makes another G1 +($b) and sets it to the random value of element $a. The following is probably +more clear and is identical to the functions above. There's more on clone +later in this document. + + my $c = $a->clone; + print "You see this I bet!\n" if $c->is_eq( $a ) and $c->is_eq( $b ); + +This will come in handing when transfering keys between nodes. + + my $d_i_a = $pairing->init_G1->random; + my $bytes = $d_i->as_bytes; + my $d_i_b = $pairing->init_G1->set_to_bytes( $bytes ); + +=head1 Comparison Functions + + my $z = $pairing->init_G1->random; + my $y = $pairing->init_G1->random; + + print "I say yes here!\n" if $z->set0->is0; + print "I say yes here!\n" if $z->set1->is1; + print "I say nothing...\n" if $z->set1->is0; + + print "This is pretty much always true... unless we're in GT\n" + $z->is_eq( $z ); + + print "This is usually not going to print anything...\n" + $z->random->is_eq( $y->random ); + + my $m = $pairing->init_Zr; + print "I say yes here.\n" if $m->set_to_int(25)->is_sqr; + print "I say nothing...\n" if $m->set_to_int(19)->is_sqr; + +=head1 Arithmetic Functions + +These no-argument functions are rather self explainatory. The only thing +that's not immediately clear is that $Zr is B to the value of the +operation. These all return $Zr, of course. Also, these operations work on +elements in G1, G2, and GT -- although that's not pictured. + + my $Zr = $pairing->init_Zr; + + $Zr->square; # $Zr = $Zr * $Zr; + $Zr->double; # $Zr = $Zr + $Zr + $Zr->invert; # $Zr = 1/$Zr + $Zr->halve; # $Zr = $Zr/2 + $Zr->neg; # $Zr = -$Zr + +All the the functions above will work with arguments instead. The following +examples are logically equivelent, but the shorter form is probably also a great +deal faster. + + $Zr->set( $a )->halve; + $Zr->halve( $a ); + + $Zr->square( $a ); + $Zr->set( $a )->square; + +The following one-argument functions are probably just as clear as the ones +above. The Bing of Zr is implicit as it is above and, as above, the +operations work in G1, G2, and GT. Watch out though, for these, the element +types on the LHS must match the RHS. L will C an +error if the types don't match. + + my $Zr2 = $pairing->init_Zr->random; + + $Zr->add( $Zr2 ); # Zr = Zr + Zr2 + $Zr->Sub( $Zr2 ); # Zr = Zr - Zr2 -- note the capital S + $Zr->div( $Zr2 ); # Zr = Zr / Zr2 + $Zr->mul( $Zr2 ); # Zr = Zr * Zr2 + +All the the functions above will work with another argument instead. The +following example is logically equivelent, but the shorter form is probably +also a great deal faster. + + $Zr->div( $a, $Zr2 ); # Zr = $a/$Zr2 + $Zr->set( $a )->div( $Zr2 ); # Zr = $Zr/$Zr2 + +There are two more multiplication functions to choose from. They take perl +integers and L objects. + + my $a = $Zr->set_to_int(7)->mul_int( 5 )->clone; + my $b = $Zr->set_to_int(7)->mul_bigint( new Math::BigInt( 5 ) )->clone; + + # here, $a and $b will test equal with $a->is_eq( $b ) + +Assume all the following variables are elements in the indicated groups. Beware +that the RHS-a elements must all be the same type as the LHS element. The RHS-n +arguments must all be of elements in Zr. L will C +an error if the arguments are of the wrong types. + + $G1_l->pow_zn( $Zr_n ); # G1_l = G1_l^Zr_n + $G1_l->pow_zn( $G1_a, $Zr_n ); # G1_l = G1_a^Zr_n + + $G1_l->pow2_zn( $G1_a1, $Zr_n1, $G1_a2, $Zr_n2 ); # l = a1^n1 * a2^n2 + $G1_l->pow3_zn( $G1_a1, $Zr_n1, $G1_a2, $Zr_n2, $G1_a3, $Zr_n3 ); + # l = a1^n1 * a2^n2 * a3^n3 + +These functions are all pretty much the same, but they take bigints for the +RHS-n arguments. They will all C if the LHS doesn't match the RHS-a or +if the RHS-n arguments aren't L objects. + + $G1_l->pow_bigint( $G1_a, $BI_n ); + $G1_l->pow2_bigint( $G1_a1, $BI_n1, $G1_a2, $BI_n2 ); + $G1_l->pow3_bigint( $G1_a1, $BI_n1, $G1_a2, $BI_n2, $G1_a3, $BI_n3 ); + +Arguably the most important arithmetic function of all is saved for last. The +C function is special, in that it has more restrictions on the +LHS, RHS1 and RHS2 than most other functions. The LHS must be in GT, RHS1 must +be in G1 and RHS2 must be in G2. + + my $GT = $pairing->init_GT; + my $G1 = $pairing->init_G1; + my $G2 = $pairing->init_G2; + + $GT->pairing_apply( $G1, $G2 ); + $GT->apply_pairing( $G1, $G2 ); # synonym for pairing_apply + $GT->ehat( $G1, $G2 ); # synonym for pairing_apply + $GT->e_hat( $G1, $G2 ); # synonym for pairing_apply + +=head1 I/O, Export, and Conversion Functions + +libpbc offers a va_args (printf) style output that's probably of limited use +except for debugging. L ports the C version directly +and you can use it as incdicated in L. The L +module only uses C in the stddump and C and C +and even then only in a limited capacity. + + my $element = $pairing->init_G1; + print "Hey, these don't look like I thought they would:\n"; + + $element->stddump; # dumps the element on STDOUT + + # You may be surprised to see that a G1 Element is in fact two MPZs. + + $element->errdump; # dumps the element on STDERR instead of STDOUT + +The following will be of major importance to anyone looking to use Crypt::PBC +for real-life applications. C almost certainly has to be used in +conjunction with some other algorithm, but that is indeed what it is for. + + my $secret_key_bin = $element->as_bytes; + + my $example_cipher = new Crypt::CBC({ + header => "randomiv", + cipher => 'Blowfish' + key => $secret_key_bin, + }); + + my $secret = $example_cipher->encrypt("you can't read this!!"); + +There are, of course, other ways to export the bytes. The bigint exporter +probably only works on Zr elements, but it probalby has uses. + + my $key_hex = $element->as_hex; # as_str is a synonym for as_hex + my $key_b64 = $element->as_base64; # MIME base64 as per RFC 2045 + my $bigint = $element->as_bigint; # Math::BigInt + +=head1 Miscellaneous Functions + + my $z = $pairing->init_Zr->random; + my $c = $z->clone;# creates a copy of $z in $c. + my $d = $z->copy; # copy is an alias for clone + # ($c is a new Element in new memory with the same value as $z) + +=head1 AUTHOR AND LICENSING + +GPL-ish licensing with the author: Paul Miller . + +Please see L for further information. diff --git a/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod new file mode 100644 index 00000000..207a0233 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/lib/Crypt/PBC/Pairing.pod @@ -0,0 +1,39 @@ +=head1 NAME + +Crypt::PBC::Pairing - OO interface for the Stanford PBC library + +=head1 SYNOPSIS + + use Crypt::PBC; + + my $pairing = new Crypt::PBC("params_d.txt"); + my $G1 = $pairing->init_G1->random; + my $G2 = $pairing->init_G2->random->double->square; + my $GT = $pairing->init_GT->pairing_apply( $G1, $G2 ); + +=head1 Initializer Functions + +The only thing of use this package does is initialize elements in the pairing. +It does many other things behind the scenes though. + + my $G1_element = $pairing->init_G1; # returns Crypt::PBC::Element + my $G2_element = $pairing->init_G2; # objects + my $GT_element = $pairing->init_GT; + my $Zr_element = $pairing->init_Zr; + +The most important thing the Pairing package does is handle memory for you. +The package is a scalar ref of the C-pointer. C<$$pairing> is the "address" as +an integer! + +It's important when clearing the PBC memory that pairings get cleared after +elements and the Element and Pairing objects handle that on their own. You may +safely ignore clearing elements and pairings if you use the OO interface. + +Although, be sure that if you overload C that you call +C! + +=head1 AUTHOR AND LICENSING + +GPL-ish licensing with the author: Paul Miller . + +Please see L for further information. diff --git a/scripts/crypt/Crypt-PBC-0.9000/pairing.xs b/scripts/crypt/Crypt-PBC-0.9000/pairing.xs new file mode 100644 index 00000000..c720265d --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/pairing.xs @@ -0,0 +1,48 @@ +pairing_t * +pairing_init_str(str) + SV * str + + PREINIT: + STRLEN len; + char * ptr; + pairing_t * pairing = malloc( sizeof(pairing_t) ); + + CODE: + ptr = SvPV(str, len); + + if( pairing_init_set_buf(*pairing, ptr, len) ) + pbc_die("pairing init failed"); + + RETVAL = pairing; + + OUTPUT: + RETVAL + +void +pairing_clear(pairing) + pairing_t * pairing + + CODE: + // fprintf(stderr, " ... freeing a pairing ... \n"); + pairing_clear(*pairing); + free(pairing); + +void +pairing_apply(LHS,RHS1,RHS2,pairing) + element_t * LHS + element_t * RHS1 + element_t * RHS2 + pairing_t * pairing + + CODE: + pairing_apply(*LHS, *RHS1, *RHS2, *pairing); + +int +pairing_is_symmetric(me) + pairing_t * me + + CODE: + RETVAL = pairing_is_symmetric(*me); + + OUTPUT: + RETVAL diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_a.txt b/scripts/crypt/Crypt-PBC-0.9000/params_a.txt new file mode 100644 index 00000000..cee0e9bb --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/params_a.txt @@ -0,0 +1,8 @@ +type a +q 8780710799663312522437781984754049815806883199414208211028653399266475630880222957078625179422662221423155858769582317459277713367317481324925129998224791 +h 12016012264891146079388821366740534204802954401251311822919615131047207289359704531102844802183906537786776 +r 730750818665451621361119245571504901405976559617 +exp2 159 +exp1 107 +sign1 1 +sign0 1 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_d.txt b/scripts/crypt/Crypt-PBC-0.9000/params_d.txt new file mode 100644 index 00000000..6242cef1 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/params_d.txt @@ -0,0 +1,14 @@ +type d +q 90144054120102937439179516551801119443207521965651508326977 +n 90144054120102937439179516552101359437412329625948146453801 +h 3523 +r 25587298927080027658012919827448583433838299638361665187 +a 53241464724463691897001131065853762954208272388634868483573 +b 5446291776274815451607581859968802155069674270539409546723 +k 6 +nk 536565217356706344663314419655601558604376922027564701618757289270614360593294739461568130362279778081437146273088457636627768012396592169059882662689261645948113285006858612654825829457395553891546397990662355454563776046265747800873542312230073566643975827908869710713161941935371830987701273239900997531501272405727670675418703842862606824000125008640 +hk 819546557806423450339849940898193664969813698879192227897917671302330185914203886301113045602626676261586588840857293388779160133822229389038218318388504449595493650939257095992443062327856033482709266319687677297858891026083277228064475554560 +coeff0 43907136006531280293838495445857758305366399383908394927288 +coeff1 21720089592072695009765372832780685887129370300993349347738 +coeff2 11773373318911376280677890769414834592007872486079550520860 +nqr 4468071665857441743453009416233415235254714637554162977327 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt b/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt new file mode 100644 index 00000000..6303b336 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/params_d159.txt @@ -0,0 +1,14 @@ +type d +q 625852803282871856053922297323874661378036491717 +n 625852803282871856053923088432465995634661283063 +h 3 +r 208617601094290618684641029477488665211553761021 +a 581595782028432961150765424293919699975513269268 +b 517921465817243828776542439081147840953753552322 +k 6 +nk 60094290356408407130984161127310078516360031868417968262992864809623507269833854678414046779817844853757026858774966331434198257512457993293271849043664655146443229029069463392046837830267994222789160047337432075266619082657640364986415435746294498140589844832666082434658532589211525696 +hk 1380801711862212484403205699005242141541629761433899149236405232528956996854655261075303661691995273080620762287276051361446528504633283152278831183711301329765591450680250000592437612973269056 +coeff0 472731500571015189154958232321864199355792223347 +coeff1 352243926696145937581894994871017455453604730246 +coeff2 289113341693870057212775990719504267185772707305 +nqr 431211441436589568382088865288592347194866189652 diff --git a/scripts/crypt/Crypt-PBC-0.9000/params_e.txt b/scripts/crypt/Crypt-PBC-0.9000/params_e.txt new file mode 100644 index 00000000..83aa36cd --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/params_e.txt @@ -0,0 +1,10 @@ +type e +q 7245986106510086080714203333362098431608853335867425877960916928496629182991629664903654100214900946450053872786629995869445693724001299041657434948257845644905153122838458864000479326695430719258600053239930483226650953770354174712511646273516974069245462534034085895319225452125649979474047163305307830001 +r 730750862221594424981965739670091261094297337857 +h 13569343110918781839835249021482970252603216587988030044836106948825516930173270978617489032334001006615524543925753725725046733884363846960470444404747241287743773746682188521738728797153760275116924829183670000 +a 7130970454025799000067946137594446075551569949583815943390108723282396973737794273397246892274981883807989525599540630855644968426794929215599380425269625872763801485968007136000471718335185787206876242871042697778608875139078711621836858237429403052273312335081163896980825048123655535355411494046493419999 +b 7169309004853894693616698536183663527570664411678352588247044791687141043489072737232715961588288238022010974661903752526911876859197052490952065266265699130144252031591491045333807587788600764557450846327338626261289568016170532652061787582791926724597362401398804563093625182790987016728290050466098223333 +exp2 159 +exp1 135 +sign1 1 +sign0 1 diff --git a/scripts/crypt/Crypt-PBC-0.9000/pbctest.c b/scripts/crypt/Crypt-PBC-0.9000/pbctest.c new file mode 100644 index 00000000..62c58662 --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/pbctest.c @@ -0,0 +1,7 @@ + + +#include + +int main() { + return 0; +} diff --git a/scripts/crypt/Crypt-PBC-0.9000/ppport.h b/scripts/crypt/Crypt-PBC-0.9000/ppport.h new file mode 100644 index 00000000..f6e2dc4d --- /dev/null +++ b/scripts/crypt/Crypt-PBC-0.9000/ppport.h @@ -0,0 +1,4954 @@ +#if 0 +<<'SKIP'; +#endif +/* +---------------------------------------------------------------------- + + ppport.h -- Perl/Pollution/Portability Version 3.06_01 + + Automatically created by Devel::PPPort running under + perl 5.008008 on Fri Nov 10 23:07:15 2006. + + Do NOT edit this file directly! -- Edit PPPort_pm.PL and the + includes in parts/inc/ instead. + + Use 'perldoc ppport.h' to view the documentation below. + +---------------------------------------------------------------------- + +SKIP + +=pod + +=head1 NAME + +ppport.h - Perl/Pollution/Portability version 3.06_01 + +=head1 SYNOPSIS + + perl ppport.h [options] [source files] + + Searches current directory for files if no [source files] are given + + --help show short help + + --patch=file write one patch file with changes + --copy=suffix write changed copies with suffix + --diff=program use diff program and options + + --compat-version=version provide compatibility with Perl version + --cplusplus accept C++ comments + + --quiet don't output anything except fatal errors + --nodiag don't show diagnostics + --nohints don't show hints + --nochanges don't suggest changes + --nofilter don't filter input files + + --list-provided list provided API + --list-unsupported list unsupported API + --api-info=name show Perl API portability information + +=head1 COMPATIBILITY + +This version of F is designed to support operation with Perl +installations back to 5.003, and has been tested up to 5.9.3. + +=head1 OPTIONS + +=head2 --help + +Display a brief usage summary. + +=head2 --patch=I + +If this option is given, a single patch file will be created if +any changes are suggested. This requires a working diff program +to be installed on your system. + +=head2 --copy=I + +If this option is given, a copy of each file will be saved with +the given suffix that contains the suggested changes. This does +not require any external programs. + +If neither C<--patch> or C<--copy> are given, the default is to +simply print the diffs for each file. This requires either +C or a C program to be installed. + +=head2 --diff=I + +Manually set the diff program and options to use. The default +is to use C, when installed, and output unified +context diffs. + +=head2 --compat-version=I + +Tell F to check for compatibility with the given +Perl version. The default is to check for compatibility with Perl +version 5.003. You can use this option to reduce the output +of F if you intend to be backward compatible only +up to a certain Perl version. + +=head2 --cplusplus + +Usually, F will detect C++ style comments and +replace them with C style comments for portability reasons. +Using this option instructs F to leave C++ +comments untouched. + +=head2 --quiet + +Be quiet. Don't print anything except fatal errors. + +=head2 --nodiag + +Don't output any diagnostic messages. Only portability +alerts will be printed. + +=head2 --nohints + +Don't output any hints. Hints often contain useful portability +notes. + +=head2 --nochanges + +Don't suggest any changes. Only give diagnostic output and hints +unless these are also deactivated. + +=head2 --nofilter + +Don't filter the list of input files. By default, files not looking +like source code (i.e. not *.xs, *.c, *.cc, *.cpp or *.h) are skipped. + +=head2 --list-provided + +Lists the API elements for which compatibility is provided by +F. Also lists if it must be explicitly requested, +if it has dependencies, and if there are hints for it. + +=head2 --list-unsupported + +Lists the API elements that are known not to be supported by +F and below which version of Perl they probably +won't be available or work. + +=head2 --api-info=I + +Show portability information for API elements matching I. +If I is surrounded by slashes, it is interpreted as a regular +expression. + +=head1 DESCRIPTION + +In order for a Perl extension (XS) module to be as portable as possible +across differing versions of Perl itself, certain steps need to be taken. + +=over 4 + +=item * + +Including this header is the first major one. This alone will give you +access to a large part of the Perl API that hasn't been available in +earlier Perl releases. Use + + perl ppport.h --list-provided + +to see which API elements are provided by ppport.h. + +=item * + +You should avoid using deprecated parts of the API. For example, using +global Perl variables without the C prefix is deprecated. Also, +some API functions used to have a C prefix. Using this form is +also deprecated. You can safely use the supported API, as F +will provide wrappers for older Perl versions. + +=item * + +If you use one of a few functions that were not present in earlier +versions of Perl, and that can't be provided using a macro, you have +to explicitly request support for these functions by adding one or +more C<#define>s in your source code before the inclusion of F. + +These functions will be marked C in the list shown by +C<--list-provided>. + +Depending on whether you module has a single or multiple files that +use such functions, you want either C or global variants. + +For a C function, use: + + #define NEED_function + +For a global function, use: + + #define NEED_function_GLOBAL + +Note that you mustn't have more than one global request for one +function in your project. + + Function Static Request Global Request + ----------------------------------------------------------------------------------------- + eval_pv() NEED_eval_pv NEED_eval_pv_GLOBAL + grok_bin() NEED_grok_bin NEED_grok_bin_GLOBAL + grok_hex() NEED_grok_hex NEED_grok_hex_GLOBAL + grok_number() NEED_grok_number NEED_grok_number_GLOBAL + grok_numeric_radix() NEED_grok_numeric_radix NEED_grok_numeric_radix_GLOBAL + grok_oct() NEED_grok_oct NEED_grok_oct_GLOBAL + newCONSTSUB() NEED_newCONSTSUB NEED_newCONSTSUB_GLOBAL + newRV_noinc() NEED_newRV_noinc NEED_newRV_noinc_GLOBAL + sv_2pv_nolen() NEED_sv_2pv_nolen NEED_sv_2pv_nolen_GLOBAL + sv_2pvbyte() NEED_sv_2pvbyte NEED_sv_2pvbyte_GLOBAL + sv_catpvf_mg() NEED_sv_catpvf_mg NEED_sv_catpvf_mg_GLOBAL + sv_catpvf_mg_nocontext() NEED_sv_catpvf_mg_nocontext NEED_sv_catpvf_mg_nocontext_GLOBAL + sv_setpvf_mg() NEED_sv_setpvf_mg NEED_sv_setpvf_mg_GLOBAL + sv_setpvf_mg_nocontext() NEED_sv_setpvf_mg_nocontext NEED_sv_setpvf_mg_nocontext_GLOBAL + vnewSVpvf() NEED_vnewSVpvf NEED_vnewSVpvf_GLOBAL + +To avoid namespace conflicts, you can change the namespace of the +explicitly exported functions using the C macro. +Just C<#define> the macro before including C: + + #define DPPP_NAMESPACE MyOwnNamespace_ + #include "ppport.h" + +The default namespace is C. + +=back + +The good thing is that most of the above can be checked by running +F on your source code. See the next section for +details. + +=head1 EXAMPLES + +To verify whether F is needed for your module, whether you +should make any changes to your code, and whether any special defines +should be used, F can be run as a Perl script to check your +source code. Simply say: + + perl ppport.h + +The result will usually be a list of patches suggesting changes +that should at least be acceptable, if not necessarily the most +efficient solution, or a fix for all possible problems. + +If you know that your XS module uses features only available in +newer Perl releases, if you're aware that it uses C++ comments, +and if you want all suggestions as a single patch file, you could +use something like this: + + perl ppport.h --compat-version=5.6.0 --cplusplus --patch=test.diff + +If you only want your code to be scanned without any suggestions +for changes, use: + + perl ppport.h --nochanges + +You can specify a different C program or options, using +the C<--diff> option: + + perl ppport.h --diff='diff -C 10' + +This would output context diffs with 10 lines of context. + +To display portability information for the C function, +use: + + perl ppport.h --api-info=newSVpvn + +Since the argument to C<--api-info> can be a regular expression, +you can use + + perl ppport.h --api-info=/_nomg$/ + +to display portability information for all C<_nomg> functions or + + perl ppport.h --api-info=/./ + +to display information for all known API elements. + +=head1 BUGS + +If this version of F is causing failure during +the compilation of this module, please check if newer versions +of either this module or C are available on CPAN +before sending a bug report. + +If F was generated using the latest version of +C and is causing failure of this module, please +file a bug report using the CPAN Request Tracker at L. + +Please include the following information: + +=over 4 + +=item 1. + +The complete output from running "perl -V" + +=item 2. + +This file. + +=item 3. + +The name and version of the module you were trying to build. + +=item 4. + +A full log of the build that failed. + +=item 5. + +Any other information that you think could be relevant. + +=back + +For the latest version of this code, please get the C +module from CPAN. + +=head1 COPYRIGHT + +Version 3.x, Copyright (c) 2004-2005, Marcus Holland-Moritz. + +Version 2.x, Copyright (C) 2001, Paul Marquess. + +Version 1.x, Copyright (C) 1999, Kenneth Albanowski. + +This program is free software; you can redistribute it and/or +modify it under the same terms as Perl itself. + +=head1 SEE ALSO + +See L. + +=cut + +use strict; + +my %opt = ( + quiet => 0, + diag => 1, + hints => 1, + changes => 1, + cplusplus => 0, + filter => 1, +); + +my($ppport) = $0 =~ /([\w.]+)$/; +my $LF = '(?:\r\n|[\r\n])'; # line feed +my $HS = "[ \t]"; # horizontal whitespace + +eval { + require Getopt::Long; + Getopt::Long::GetOptions(\%opt, qw( + help quiet diag! filter! hints! changes! cplusplus + patch=s copy=s diff=s compat-version=s + list-provided list-unsupported api-info=s + )) or usage(); +}; + +if ($@ and grep /^-/, @ARGV) { + usage() if "@ARGV" =~ /^--?h(?:elp)?$/; + die "Getopt::Long not found. Please don't use any options.\n"; +} + +usage() if $opt{help}; + +if (exists $opt{'compat-version'}) { + my($r,$v,$s) = eval { parse_version($opt{'compat-version'}) }; + if ($@) { + die "Invalid version number format: '$opt{'compat-version'}'\n"; + } + die "Only Perl 5 is supported\n" if $r != 5; + die "Invalid version number: $opt{'compat-version'}\n" if $v >= 1000 || $s >= 1000; + $opt{'compat-version'} = sprintf "%d.%03d%03d", $r, $v, $s; +} +else { + $opt{'compat-version'} = 5; +} + +# Never use C comments in this file!!!!! +my $ccs = '/'.'*'; +my $cce = '*'.'/'; +my $rccs = quotemeta $ccs; +my $rcce = quotemeta $cce; + +my %API = map { /^(\w+)\|([^|]*)\|([^|]*)\|(\w*)$/ + ? ( $1 => { + ($2 ? ( base => $2 ) : ()), + ($3 ? ( todo => $3 ) : ()), + (index($4, 'v') >= 0 ? ( varargs => 1 ) : ()), + (index($4, 'p') >= 0 ? ( provided => 1 ) : ()), + (index($4, 'n') >= 0 ? ( nothxarg => 1 ) : ()), + } ) + : die "invalid spec: $_" } qw( +AvFILLp|5.004050||p +AvFILL||| +CLASS|||n +CX_CURPAD_SAVE||| +CX_CURPAD_SV||| +CopFILEAV|5.006000||p +CopFILEGV_set|5.006000||p +CopFILEGV|5.006000||p +CopFILESV|5.006000||p +CopFILE_set|5.006000||p +CopFILE|5.006000||p +CopSTASHPV_set|5.006000||p +CopSTASHPV|5.006000||p +CopSTASH_eq|5.006000||p +CopSTASH_set|5.006000||p +CopSTASH|5.006000||p +CopyD|5.009002||p +Copy||| +CvPADLIST||| +CvSTASH||| +CvWEAKOUTSIDE||| +DEFSV|5.004050||p +END_EXTERN_C|5.005000||p +ENTER||| +ERRSV|5.004050||p +EXTEND||| +EXTERN_C|5.005000||p +FREETMPS||| +GIMME_V||5.004000|n +GIMME|||n +GROK_NUMERIC_RADIX|5.007002||p +G_ARRAY||| +G_DISCARD||| +G_EVAL||| +G_NOARGS||| +G_SCALAR||| +G_VOID||5.004000| +GetVars||| +GvSV||| +Gv_AMupdate||| +HEf_SVKEY||5.004000| +HeHASH||5.004000| +HeKEY||5.004000| +HeKLEN||5.004000| +HePV||5.004000| +HeSVKEY_force||5.004000| +HeSVKEY_set||5.004000| +HeSVKEY||5.004000| +HeVAL||5.004000| +HvNAME||| +INT2PTR|5.006000||p +IN_LOCALE_COMPILETIME|5.007002||p +IN_LOCALE_RUNTIME|5.007002||p +IN_LOCALE|5.007002||p +IN_PERL_COMPILETIME|5.008001||p +IS_NUMBER_GREATER_THAN_UV_MAX|5.007002||p +IS_NUMBER_INFINITY|5.007002||p +IS_NUMBER_IN_UV|5.007002||p +IS_NUMBER_NAN|5.007003||p +IS_NUMBER_NEG|5.007002||p +IS_NUMBER_NOT_INT|5.007002||p +IVSIZE|5.006000||p +IVTYPE|5.006000||p +IVdf|5.006000||p +LEAVE||| +LVRET||| +MARK||| +MY_CXT_CLONE|5.009002||p +MY_CXT_INIT|5.007003||p +MY_CXT|5.007003||p +MoveD|5.009002||p +Move||| +NEWSV||| +NOOP|5.005000||p +NUM2PTR|5.006000||p +NVTYPE|5.006000||p +NVef|5.006001||p +NVff|5.006001||p +NVgf|5.006001||p +Newc||| +Newz||| +New||| +Nullav||| +Nullch||| +Nullcv||| +Nullhv||| +Nullsv||| +ORIGMARK||| +PAD_BASE_SV||| +PAD_CLONE_VARS||| +PAD_COMPNAME_FLAGS||| +PAD_COMPNAME_GEN_set||| +PAD_COMPNAME_GEN||| +PAD_COMPNAME_OURSTASH||| +PAD_COMPNAME_PV||| +PAD_COMPNAME_TYPE||| +PAD_RESTORE_LOCAL||| +PAD_SAVE_LOCAL||| +PAD_SAVE_SETNULLPAD||| +PAD_SETSV||| +PAD_SET_CUR_NOSAVE||| +PAD_SET_CUR||| +PAD_SVl||| +PAD_SV||| +PERL_BCDVERSION|5.009003||p +PERL_GCC_BRACE_GROUPS_FORBIDDEN|5.008001||p +PERL_INT_MAX|5.004000||p +PERL_INT_MIN|5.004000||p +PERL_LONG_MAX|5.004000||p +PERL_LONG_MIN|5.004000||p +PERL_MAGIC_arylen|5.007002||p +PERL_MAGIC_backref|5.007002||p +PERL_MAGIC_bm|5.007002||p +PERL_MAGIC_collxfrm|5.007002||p +PERL_MAGIC_dbfile|5.007002||p +PERL_MAGIC_dbline|5.007002||p +PERL_MAGIC_defelem|5.007002||p +PERL_MAGIC_envelem|5.007002||p +PERL_MAGIC_env|5.007002||p +PERL_MAGIC_ext|5.007002||p +PERL_MAGIC_fm|5.007002||p +PERL_MAGIC_glob|5.007002||p +PERL_MAGIC_isaelem|5.007002||p +PERL_MAGIC_isa|5.007002||p +PERL_MAGIC_mutex|5.007002||p +PERL_MAGIC_nkeys|5.007002||p +PERL_MAGIC_overload_elem|5.007002||p +PERL_MAGIC_overload_table|5.007002||p +PERL_MAGIC_overload|5.007002||p +PERL_MAGIC_pos|5.007002||p +PERL_MAGIC_qr|5.007002||p +PERL_MAGIC_regdata|5.007002||p +PERL_MAGIC_regdatum|5.007002||p +PERL_MAGIC_regex_global|5.007002||p +PERL_MAGIC_shared_scalar|5.007003||p +PERL_MAGIC_shared|5.007003||p +PERL_MAGIC_sigelem|5.007002||p +PERL_MAGIC_sig|5.007002||p +PERL_MAGIC_substr|5.007002||p +PERL_MAGIC_sv|5.007002||p +PERL_MAGIC_taint|5.007002||p +PERL_MAGIC_tiedelem|5.007002||p +PERL_MAGIC_tiedscalar|5.007002||p +PERL_MAGIC_tied|5.007002||p +PERL_MAGIC_utf8|5.008001||p +PERL_MAGIC_uvar_elem|5.007003||p +PERL_MAGIC_uvar|5.007002||p +PERL_MAGIC_vec|5.007002||p +PERL_MAGIC_vstring|5.008001||p +PERL_QUAD_MAX|5.004000||p +PERL_QUAD_MIN|5.004000||p +PERL_REVISION|5.006000||p +PERL_SCAN_ALLOW_UNDERSCORES|5.007003||p +PERL_SCAN_DISALLOW_PREFIX|5.007003||p +PERL_SCAN_GREATER_THAN_UV_MAX|5.007003||p +PERL_SCAN_SILENT_ILLDIGIT|5.008001||p +PERL_SHORT_MAX|5.004000||p +PERL_SHORT_MIN|5.004000||p +PERL_SUBVERSION|5.006000||p +PERL_UCHAR_MAX|5.004000||p +PERL_UCHAR_MIN|5.004000||p +PERL_UINT_MAX|5.004000||p +PERL_UINT_MIN|5.004000||p +PERL_ULONG_MAX|5.004000||p +PERL_ULONG_MIN|5.004000||p +PERL_UNUSED_DECL|5.007002||p +PERL_UQUAD_MAX|5.004000||p +PERL_UQUAD_MIN|5.004000||p +PERL_USHORT_MAX|5.004000||p +PERL_USHORT_MIN|5.004000||p +PERL_VERSION|5.006000||p +PL_DBsingle|||pn +PL_DBsub|||pn +PL_DBtrace|||n +PL_Sv|5.005000||p +PL_compiling|5.004050||p +PL_copline|5.005000||p +PL_curcop|5.004050||p +PL_curstash|5.004050||p +PL_debstash|5.004050||p +PL_defgv|5.004050||p +PL_diehook|5.004050||p +PL_dirty|5.004050||p +PL_dowarn|||pn +PL_errgv|5.004050||p +PL_hexdigit|5.005000||p +PL_hints|5.005000||p +PL_last_in_gv|||n +PL_modglobal||5.005000|n +PL_na|5.004050||pn +PL_no_modify|5.006000||p +PL_ofs_sv|||n +PL_perl_destruct_level|5.004050||p +PL_perldb|5.004050||p +PL_ppaddr|5.006000||p +PL_rsfp_filters|5.004050||p +PL_rsfp|5.004050||p +PL_rs|||n +PL_stack_base|5.004050||p +PL_stack_sp|5.004050||p +PL_stdingv|5.004050||p +PL_sv_arenaroot|5.004050||p +PL_sv_no|5.004050||pn +PL_sv_undef|5.004050||pn +PL_sv_yes|5.004050||pn +PL_tainted|5.004050||p +PL_tainting|5.004050||p +POPi|||n +POPl|||n +POPn|||n +POPpbytex||5.007001|n +POPpx||5.005030|n +POPp|||n +POPs|||n +PTR2IV|5.006000||p +PTR2NV|5.006000||p +PTR2UV|5.006000||p +PTR2ul|5.007001||p +PTRV|5.006000||p +PUSHMARK||| +PUSHi||| +PUSHmortal|5.009002||p +PUSHn||| +PUSHp||| +PUSHs||| +PUSHu|5.004000||p +PUTBACK||| +PerlIO_clearerr||5.007003| +PerlIO_close||5.007003| +PerlIO_eof||5.007003| +PerlIO_error||5.007003| +PerlIO_fileno||5.007003| +PerlIO_fill||5.007003| +PerlIO_flush||5.007003| +PerlIO_get_base||5.007003| +PerlIO_get_bufsiz||5.007003| +PerlIO_get_cnt||5.007003| +PerlIO_get_ptr||5.007003| +PerlIO_read||5.007003| +PerlIO_seek||5.007003| +PerlIO_set_cnt||5.007003| +PerlIO_set_ptrcnt||5.007003| +PerlIO_setlinebuf||5.007003| +PerlIO_stderr||5.007003| +PerlIO_stdin||5.007003| +PerlIO_stdout||5.007003| +PerlIO_tell||5.007003| +PerlIO_unread||5.007003| +PerlIO_write||5.007003| +Poison|5.008000||p +RETVAL|||n +Renewc||| +Renew||| +SAVECLEARSV||| +SAVECOMPPAD||| +SAVEPADSV||| +SAVETMPS||| +SAVE_DEFSV|5.004050||p +SPAGAIN||| +SP||| +START_EXTERN_C|5.005000||p +START_MY_CXT|5.007003||p +STMT_END|||p +STMT_START|||p +ST||| +SVt_IV||| +SVt_NV||| +SVt_PVAV||| +SVt_PVCV||| +SVt_PVHV||| +SVt_PVMG||| +SVt_PV||| +Safefree||| +Slab_Alloc||| +Slab_Free||| +StructCopy||| +SvCUR_set||| +SvCUR||| +SvEND||| +SvGETMAGIC|5.004050||p +SvGROW||| +SvIOK_UV||5.006000| +SvIOK_notUV||5.006000| +SvIOK_off||| +SvIOK_only_UV||5.006000| +SvIOK_only||| +SvIOK_on||| +SvIOKp||| +SvIOK||| +SvIVX||| +SvIV_nomg|5.009001||p +SvIV_set||| +SvIVx||| +SvIV||| +SvIsCOW_shared_hash||5.008003| +SvIsCOW||5.008003| +SvLEN_set||| +SvLEN||| +SvLOCK||5.007003| +SvMAGIC_set||5.009003| +SvNIOK_off||| +SvNIOKp||| +SvNIOK||| +SvNOK_off||| +SvNOK_only||| +SvNOK_on||| +SvNOKp||| +SvNOK||| +SvNVX||| +SvNV_set||| +SvNVx||| +SvNV||| +SvOK||| +SvOOK||| +SvPOK_off||| +SvPOK_only_UTF8||5.006000| +SvPOK_only||| +SvPOK_on||| +SvPOKp||| +SvPOK||| +SvPVX||| +SvPV_force_nomg|5.007002||p +SvPV_force||| +SvPV_nolen|5.006000||p +SvPV_nomg|5.007002||p +SvPV_set||| +SvPVbyte_force||5.009002| +SvPVbyte_nolen||5.006000| +SvPVbytex_force||5.006000| +SvPVbytex||5.006000| +SvPVbyte|5.006000||p +SvPVutf8_force||5.006000| +SvPVutf8_nolen||5.006000| +SvPVutf8x_force||5.006000| +SvPVutf8x||5.006000| +SvPVutf8||5.006000| +SvPVx||| +SvPV||| +SvREFCNT_dec||| +SvREFCNT_inc||| +SvREFCNT||| +SvROK_off||| +SvROK_on||| +SvROK||| +SvRV_set||5.009003| +SvRV||| +SvSETMAGIC||| +SvSHARE||5.007003| +SvSTASH_set||5.009003| +SvSTASH||| +SvSetMagicSV_nosteal||5.004000| +SvSetMagicSV||5.004000| +SvSetSV_nosteal||5.004000| +SvSetSV||| +SvTAINTED_off||5.004000| +SvTAINTED_on||5.004000| +SvTAINTED||5.004000| +SvTAINT||| +SvTRUE||| +SvTYPE||| +SvUNLOCK||5.007003| +SvUOK||5.007001| +SvUPGRADE||| +SvUTF8_off||5.006000| +SvUTF8_on||5.006000| +SvUTF8||5.006000| +SvUVXx|5.004000||p +SvUVX|5.004000||p +SvUV_nomg|5.009001||p +SvUV_set||5.009003| +SvUVx|5.004000||p +SvUV|5.004000||p +SvVOK||5.008001| +THIS|||n +UNDERBAR|5.009002||p +UVSIZE|5.006000||p +UVTYPE|5.006000||p +UVXf|5.007001||p +UVof|5.006000||p +UVuf|5.006000||p +UVxf|5.006000||p +XCPT_CATCH|5.009002||p +XCPT_RETHROW|5.009002||p +XCPT_TRY_END|5.009002||p +XCPT_TRY_START|5.009002||p +XPUSHi||| +XPUSHmortal|5.009002||p +XPUSHn||| +XPUSHp||| +XPUSHs||| +XPUSHu|5.004000||p +XSRETURN_EMPTY||| +XSRETURN_IV||| +XSRETURN_NO||| +XSRETURN_NV||| +XSRETURN_PV||| +XSRETURN_UNDEF||| +XSRETURN_UV|5.008001||p +XSRETURN_YES||| +XSRETURN||| +XST_mIV||| +XST_mNO||| +XST_mNV||| +XST_mPV||| +XST_mUNDEF||| +XST_mUV|5.008001||p +XST_mYES||| +XS_VERSION_BOOTCHECK||| +XS_VERSION||| +XS||| +ZeroD|5.009002||p +Zero||| +_aMY_CXT|5.007003||p +_pMY_CXT|5.007003||p +aMY_CXT_|5.007003||p +aMY_CXT|5.007003||p +aTHX_|5.006000||p +aTHX|5.006000||p +add_data||| +allocmy||| +amagic_call||| +any_dup||| +ao||| +append_elem||| +append_list||| +apply_attrs_my||| +apply_attrs_string||5.006001| +apply_attrs||| +apply||| +asIV||| +asUV||| +atfork_lock||5.007003|n +atfork_unlock||5.007003|n +av_arylen_p||5.009003| +av_clear||| +av_delete||5.006000| +av_exists||5.006000| +av_extend||| +av_fake||| +av_fetch||| +av_fill||| +av_len||| +av_make||| +av_pop||| +av_push||| +av_reify||| +av_shift||| +av_store||| +av_undef||| +av_unshift||| +ax|||n +bad_type||| +bind_match||| +block_end||| +block_gimme||5.004000| +block_start||| +boolSV|5.004000||p +boot_core_PerlIO||| +boot_core_UNIVERSAL||| +boot_core_xsutils||| +bytes_from_utf8||5.007001| +bytes_to_utf8||5.006001| +cache_re||| +call_argv|5.006000||p +call_atexit||5.006000| +call_body||| +call_list_body||| +call_list||5.004000| +call_method|5.006000||p +call_pv|5.006000||p +call_sv|5.006000||p +calloc||5.007002|n +cando||| +cast_i32||5.006000| +cast_iv||5.006000| +cast_ulong||5.006000| +cast_uv||5.006000| +check_uni||| +checkcomma||| +checkposixcc||| +ck_anoncode||| +ck_bitop||| +ck_concat||| +ck_defined||| +ck_delete||| +ck_die||| +ck_eof||| +ck_eval||| +ck_exec||| +ck_exists||| +ck_exit||| +ck_ftst||| +ck_fun||| +ck_glob||| +ck_grep||| +ck_index||| +ck_join||| +ck_lengthconst||| +ck_lfun||| +ck_listiob||| +ck_match||| +ck_method||| +ck_null||| +ck_open||| +ck_repeat||| +ck_require||| +ck_retarget||| +ck_return||| +ck_rfun||| +ck_rvconst||| +ck_sassign||| +ck_select||| +ck_shift||| +ck_sort||| +ck_spair||| +ck_split||| +ck_subr||| +ck_substr||| +ck_svconst||| +ck_trunc||| +ck_unpack||| +cl_and||| +cl_anything||| +cl_init_zero||| +cl_init||| +cl_is_anything||| +cl_or||| +closest_cop||| +convert||| +cop_free||| +cr_textfilter||| +croak_nocontext|||vn +croak|||v +csighandler||5.007001|n +custom_op_desc||5.007003| +custom_op_name||5.007003| +cv_ckproto||| +cv_clone||| +cv_const_sv||5.004000| +cv_dump||| +cv_undef||| +cx_dump||5.005000| +cx_dup||| +cxinc||| +dAXMARK||5.009003| +dAX|5.007002||p +dITEMS|5.007002||p +dMARK||| +dMY_CXT_SV|5.007003||p +dMY_CXT|5.007003||p +dNOOP|5.006000||p +dORIGMARK||| +dSP||| +dTHR|5.004050||p +dTHXa|5.006000||p +dTHXoa|5.006000||p +dTHX|5.006000||p +dUNDERBAR|5.009002||p +dXCPT|5.009002||p +dXSARGS||| +dXSI32||| +dXSTARG|5.006000||p +deb_curcv||| +deb_nocontext|||vn +deb_stack_all||| +deb_stack_n||| +debop||5.005000| +debprofdump||5.005000| +debprof||| +debstackptrs||5.007003| +debstack||5.007003| +deb||5.007003|v +del_he||| +del_sv||| +delimcpy||5.004000| +depcom||| +deprecate_old||| +deprecate||| +despatch_signals||5.007001| +die_nocontext|||vn +die_where||| +die|||v +dirp_dup||| +div128||| +djSP||| +do_aexec5||| +do_aexec||| +do_aspawn||| +do_binmode||5.004050| +do_chomp||| +do_chop||| +do_close||| +do_dump_pad||| +do_eof||| +do_exec3||| +do_execfree||| +do_exec||| +do_gv_dump||5.006000| +do_gvgv_dump||5.006000| +do_hv_dump||5.006000| +do_ipcctl||| +do_ipcget||| +do_join||| +do_kv||| +do_magic_dump||5.006000| +do_msgrcv||| +do_msgsnd||| +do_oddball||| +do_op_dump||5.006000| +do_open9||5.006000| +do_openn||5.007001| +do_open||5.004000| +do_pipe||| +do_pmop_dump||5.006000| +do_print||| +do_readline||| +do_seek||| +do_semop||| +do_shmio||| +do_spawn_nowait||| +do_spawn||| +do_sprintf||| +do_sv_dump||5.006000| +do_sysseek||| +do_tell||| +do_trans_complex_utf8||| +do_trans_complex||| +do_trans_count_utf8||| +do_trans_count||| +do_trans_simple_utf8||| +do_trans_simple||| +do_trans||| +do_vecget||| +do_vecset||| +do_vop||| +docatch_body||| +docatch||| +doeval||| +dofile||| +dofindlabel||| +doform||| +doing_taint||5.008001|n +dooneliner||| +doopen_pm||| +doparseform||| +dopoptoeval||| +dopoptolabel||| +dopoptoloop||| +dopoptosub_at||| +dopoptosub||| +dounwind||| +dowantarray||| +dump_all||5.006000| +dump_eval||5.006000| +dump_fds||| +dump_form||5.006000| +dump_indent||5.006000|v +dump_mstats||| +dump_packsubs||5.006000| +dump_sub||5.006000| +dump_vindent||5.006000| +dumpuntil||| +dup_attrlist||| +emulate_eaccess||| +eval_pv|5.006000||p +eval_sv|5.006000||p +expect_number||| +fbm_compile||5.005000| +fbm_instr||5.005000| +fd_on_nosuid_fs||| +filter_add||| +filter_del||| +filter_gets||| +filter_read||| +find_beginning||| +find_byclass||| +find_in_my_stash||| +find_runcv||| +find_rundefsvoffset||5.009002| +find_script||| +find_uninit_var||| +fold_constants||| +forbid_setid||| +force_ident||| +force_list||| +force_next||| +force_version||| +force_word||| +form_nocontext|||vn +form||5.004000|v +fp_dup||| +fprintf_nocontext|||vn +free_global_struct||| +free_tied_hv_pool||| +free_tmps||| +gen_constant_list||| +get_av|5.006000||p +get_context||5.006000|n +get_cv|5.006000||p +get_db_sub||| +get_debug_opts||| +get_hash_seed||| +get_hv|5.006000||p +get_mstats||| +get_no_modify||| +get_num||| +get_op_descs||5.005000| +get_op_names||5.005000| +get_opargs||| +get_ppaddr||5.006000| +get_sv|5.006000||p +get_vtbl||5.005030| +getcwd_sv||5.007002| +getenv_len||| +gp_dup||| +gp_free||| +gp_ref||| +grok_bin|5.007003||p +grok_hex|5.007003||p +grok_number|5.007002||p +grok_numeric_radix|5.007002||p +grok_oct|5.007003||p +group_end||| +gv_AVadd||| +gv_HVadd||| +gv_IOadd||| +gv_autoload4||5.004000| +gv_check||| +gv_dump||5.006000| +gv_efullname3||5.004000| +gv_efullname4||5.006001| +gv_efullname||| +gv_ename||| +gv_fetchfile||| +gv_fetchmeth_autoload||5.007003| +gv_fetchmethod_autoload||5.004000| +gv_fetchmethod||| +gv_fetchmeth||| +gv_fetchpvn_flags||5.009002| +gv_fetchpv||| +gv_fetchsv||5.009002| +gv_fullname3||5.004000| +gv_fullname4||5.006001| +gv_fullname||| +gv_handler||5.007001| +gv_init_sv||| +gv_init||| +gv_share||| +gv_stashpvn|5.006000||p +gv_stashpv||| +gv_stashsv||| +he_dup||| +hek_dup||| +hfreeentries||| +hsplit||| +hv_assert||5.009001| +hv_auxinit||| +hv_clear_placeholders||5.009001| +hv_clear||| +hv_delayfree_ent||5.004000| +hv_delete_common||| +hv_delete_ent||5.004000| +hv_delete||| +hv_eiter_p||5.009003| +hv_eiter_set||5.009003| +hv_exists_ent||5.004000| +hv_exists||| +hv_fetch_common||| +hv_fetch_ent||5.004000| +hv_fetch||| +hv_free_ent||5.004000| +hv_iterinit||| +hv_iterkeysv||5.004000| +hv_iterkey||| +hv_iternext_flags||5.008000| +hv_iternextsv||| +hv_iternext||| +hv_iterval||| +hv_ksplit||5.004000| +hv_magic_check||| +hv_magic||| +hv_name_set||5.009003| +hv_notallowed||| +hv_placeholders_get||5.009003| +hv_placeholders_p||5.009003| +hv_placeholders_set||5.009003| +hv_riter_p||5.009003| +hv_riter_set||5.009003| +hv_scalar||5.009001| +hv_store_ent||5.004000| +hv_store_flags||5.008000| +hv_store||| +hv_undef||| +ibcmp_locale||5.004000| +ibcmp_utf8||5.007003| +ibcmp||| +incl_perldb||| +incline||| +incpush||| +ingroup||| +init_argv_symbols||| +init_debugger||| +init_global_struct||| +init_i18nl10n||5.006000| +init_i18nl14n||5.006000| +init_ids||| +init_interp||| +init_lexer||| +init_main_stash||| +init_perllib||| +init_postdump_symbols||| +init_predump_symbols||| +init_stacks||5.005000| +init_tm||5.007002| +instr||| +intro_my||| +intuit_method||| +intuit_more||| +invert||| +io_close||| +isALNUM||| +isALPHA||| +isDIGIT||| +isLOWER||| +isSPACE||| +isUPPER||| +is_an_int||| +is_gv_magical_sv||| +is_gv_magical||| +is_handle_constructor||| +is_list_assignment||| +is_lvalue_sub||5.007001| +is_uni_alnum_lc||5.006000| +is_uni_alnumc_lc||5.006000| +is_uni_alnumc||5.006000| +is_uni_alnum||5.006000| +is_uni_alpha_lc||5.006000| +is_uni_alpha||5.006000| +is_uni_ascii_lc||5.006000| +is_uni_ascii||5.006000| +is_uni_cntrl_lc||5.006000| +is_uni_cntrl||5.006000| +is_uni_digit_lc||5.006000| +is_uni_digit||5.006000| +is_uni_graph_lc||5.006000| +is_uni_graph||5.006000| +is_uni_idfirst_lc||5.006000| +is_uni_idfirst||5.006000| +is_uni_lower_lc||5.006000| +is_uni_lower||5.006000| +is_uni_print_lc||5.006000| +is_uni_print||5.006000| +is_uni_punct_lc||5.006000| +is_uni_punct||5.006000| +is_uni_space_lc||5.006000| +is_uni_space||5.006000| +is_uni_upper_lc||5.006000| +is_uni_upper||5.006000| +is_uni_xdigit_lc||5.006000| +is_uni_xdigit||5.006000| +is_utf8_alnumc||5.006000| +is_utf8_alnum||5.006000| +is_utf8_alpha||5.006000| +is_utf8_ascii||5.006000| +is_utf8_char_slow||| +is_utf8_char||5.006000| +is_utf8_cntrl||5.006000| +is_utf8_digit||5.006000| +is_utf8_graph||5.006000| +is_utf8_idcont||5.008000| +is_utf8_idfirst||5.006000| +is_utf8_lower||5.006000| +is_utf8_mark||5.006000| +is_utf8_print||5.006000| +is_utf8_punct||5.006000| +is_utf8_space||5.006000| +is_utf8_string_loclen||5.009003| +is_utf8_string_loc||5.008001| +is_utf8_string||5.006001| +is_utf8_upper||5.006000| +is_utf8_xdigit||5.006000| +isa_lookup||| +items|||n +ix|||n +jmaybe||| +keyword||| +leave_scope||| +lex_end||| +lex_start||| +linklist||| +listkids||| +list||| +load_module_nocontext|||vn +load_module||5.006000|v +localize||| +looks_like_number||| +lop||| +mPUSHi|5.009002||p +mPUSHn|5.009002||p +mPUSHp|5.009002||p +mPUSHu|5.009002||p +mXPUSHi|5.009002||p +mXPUSHn|5.009002||p +mXPUSHp|5.009002||p +mXPUSHu|5.009002||p +magic_clear_all_env||| +magic_clearenv||| +magic_clearpack||| +magic_clearsig||| +magic_dump||5.006000| +magic_existspack||| +magic_freearylen_p||| +magic_freeovrld||| +magic_freeregexp||| +magic_getarylen||| +magic_getdefelem||| +magic_getglob||| +magic_getnkeys||| +magic_getpack||| +magic_getpos||| +magic_getsig||| +magic_getsubstr||| +magic_gettaint||| +magic_getuvar||| +magic_getvec||| +magic_get||| +magic_killbackrefs||| +magic_len||| +magic_methcall||| +magic_methpack||| +magic_nextpack||| +magic_regdata_cnt||| +magic_regdatum_get||| +magic_regdatum_set||| +magic_scalarpack||| +magic_set_all_env||| +magic_setamagic||| +magic_setarylen||| +magic_setbm||| +magic_setcollxfrm||| +magic_setdbline||| +magic_setdefelem||| +magic_setenv||| +magic_setfm||| +magic_setglob||| +magic_setisa||| +magic_setmglob||| +magic_setnkeys||| +magic_setpack||| +magic_setpos||| +magic_setregexp||| +magic_setsig||| +magic_setsubstr||| +magic_settaint||| +magic_setutf8||| +magic_setuvar||| +magic_setvec||| +magic_set||| +magic_sizepack||| +magic_wipepack||| +magicname||| +make_trie||| +malloced_size|||n +malloc||5.007002|n +markstack_grow||| +measure_struct||| +memEQ|5.004000||p +memNE|5.004000||p +mem_collxfrm||| +mess_alloc||| +mess_nocontext|||vn +mess||5.006000|v +method_common||| +mfree||5.007002|n +mg_clear||| +mg_copy||| +mg_dup||| +mg_find||| +mg_free||| +mg_get||| +mg_length||5.005000| +mg_localize||| +mg_magical||| +mg_set||| +mg_size||5.005000| +mini_mktime||5.007002| +missingterm||| +mode_from_discipline||| +modkids||| +mod||| +moreswitches||| +mul128||| +mulexp10|||n +my_atof2||5.007002| +my_atof||5.006000| +my_attrs||| +my_bcopy|||n +my_betoh16|||n +my_betoh32|||n +my_betoh64|||n +my_betohi|||n +my_betohl|||n +my_betohs|||n +my_bzero|||n +my_chsize||| +my_exit_jump||| +my_exit||| +my_failure_exit||5.004000| +my_fflush_all||5.006000| +my_fork||5.007003|n +my_htobe16|||n +my_htobe32|||n +my_htobe64|||n +my_htobei|||n +my_htobel|||n +my_htobes|||n +my_htole16|||n +my_htole32|||n +my_htole64|||n +my_htolei|||n +my_htolel|||n +my_htoles|||n +my_htonl||| +my_kid||| +my_letoh16|||n +my_letoh32|||n +my_letoh64|||n +my_letohi|||n +my_letohl|||n +my_letohs|||n +my_lstat||| +my_memcmp||5.004000|n +my_memset|||n +my_ntohl||| +my_pclose||5.004000| +my_popen_list||5.007001| +my_popen||5.004000| +my_setenv||| +my_socketpair||5.007003|n +my_stat||| +my_strftime||5.007002| +my_swabn|||n +my_swap||| +my_unexec||| +my||| +newANONATTRSUB||5.006000| +newANONHASH||| +newANONLIST||| +newANONSUB||| +newASSIGNOP||| +newATTRSUB||5.006000| +newAVREF||| +newAV||| +newBINOP||| +newCONDOP||| +newCONSTSUB|5.006000||p +newCVREF||| +newDEFSVOP||| +newFORM||| +newFOROP||| +newGVOP||| +newGVREF||| +newGVgen||| +newHVREF||| +newHVhv||5.005000| +newHV||| +newIO||| +newLISTOP||| +newLOGOP||| +newLOOPEX||| +newLOOPOP||| +newMYSUB||5.006000| +newNULLLIST||| +newOP||| +newPADOP||5.006000| +newPMOP||| +newPROG||| +newPVOP||| +newRANGE||| +newRV_inc|5.004000||p +newRV_noinc|5.006000||p +newRV||| +newSLICEOP||| +newSTATEOP||| +newSUB||| +newSVOP||| +newSVREF||| +newSVhek||5.009003| +newSViv||| +newSVnv||| +newSVpvf_nocontext|||vn +newSVpvf||5.004000|v +newSVpvn_share||5.007001| +newSVpvn|5.006000||p +newSVpv||| +newSVrv||| +newSVsv||| +newSVuv|5.006000||p +newSV||| +newUNOP||| +newWHILEOP||5.009003| +newXSproto||5.006000| +newXS||5.006000| +new_collate||5.006000| +new_constant||| +new_ctype||5.006000| +new_he||| +new_logop||| +new_numeric||5.006000| +new_stackinfo||5.005000| +new_version||5.009000| +next_symbol||| +nextargv||| +nextchar||| +ninstr||| +no_bareword_allowed||| +no_fh_allowed||| +no_op||| +not_a_number||| +nothreadhook||5.008000| +nuke_stacks||| +num_overflow|||n +oopsAV||| +oopsCV||| +oopsHV||| +op_clear||| +op_const_sv||| +op_dump||5.006000| +op_free||| +op_null||5.007002| +op_refcnt_lock||5.009002| +op_refcnt_unlock||5.009002| +open_script||| +pMY_CXT_|5.007003||p +pMY_CXT|5.007003||p +pTHX_|5.006000||p +pTHX|5.006000||p +pack_cat||5.007003| +pack_rec||| +package||| +packlist||5.008001| +pad_add_anon||| +pad_add_name||| +pad_alloc||| +pad_block_start||| +pad_check_dup||| +pad_compname_type||| +pad_findlex||| +pad_findmy||| +pad_fixup_inner_anons||| +pad_free||| +pad_leavemy||| +pad_new||| +pad_push||| +pad_reset||| +pad_setsv||| +pad_sv||| +pad_swipe||| +pad_tidy||| +pad_undef||| +parse_body||| +parse_unicode_opts||| +path_is_absolute||| +peep||| +pending_ident||| +perl_alloc_using|||n +perl_alloc|||n +perl_clone_using|||n +perl_clone|||n +perl_construct|||n +perl_destruct||5.007003|n +perl_free|||n +perl_parse||5.006000|n +perl_run|||n +pidgone||| +pmflag||| +pmop_dump||5.006000| +pmruntime||| +pmtrans||| +pop_scope||| +pregcomp||| +pregexec||| +pregfree||| +prepend_elem||| +printf_nocontext|||vn +ptr_table_clear||| +ptr_table_fetch||| +ptr_table_free||| +ptr_table_new||| +ptr_table_split||| +ptr_table_store||| +push_scope||| +put_byte||| +pv_display||5.006000| +pv_uni_display||5.007003| +qerror||| +re_croak2||| +re_dup||| +re_intuit_start||5.006000| +re_intuit_string||5.006000| +realloc||5.007002|n +reentrant_free||| +reentrant_init||| +reentrant_retry|||vn +reentrant_size||| +refkids||| +refto||| +ref||| +reg_node||| +reganode||| +regatom||| +regbranch||| +regclass_swash||5.007003| +regclass||| +regcp_set_to||| +regcppop||| +regcppush||| +regcurly||| +regdump||5.005000| +regexec_flags||5.005000| +reghop3||| +reghopmaybe3||| +reghopmaybe||| +reghop||| +reginclass||| +reginitcolors||5.006000| +reginsert||| +regmatch||| +regnext||5.005000| +regoptail||| +regpiece||| +regpposixcc||| +regprop||| +regrepeat_hard||| +regrepeat||| +regtail||| +regtry||| +reguni||| +regwhite||| +reg||| +repeatcpy||| +report_evil_fh||| +report_uninit||| +require_errno||| +require_pv||5.006000| +rninstr||| +rsignal_restore||| +rsignal_save||| +rsignal_state||5.004000| +rsignal||5.004000| +run_body||| +runops_debug||5.005000| +runops_standard||5.005000| +rvpv_dup||| +rxres_free||| +rxres_restore||| +rxres_save||| +safesyscalloc||5.006000|n +safesysfree||5.006000|n +safesysmalloc||5.006000|n +safesysrealloc||5.006000|n +same_dirent||| +save_I16||5.004000| +save_I32||| +save_I8||5.006000| +save_aelem||5.004050| +save_alloc||5.006000| +save_aptr||| +save_ary||| +save_bool||5.008001| +save_clearsv||| +save_delete||| +save_destructor_x||5.006000| +save_destructor||5.006000| +save_freeop||| +save_freepv||| +save_freesv||| +save_generic_pvref||5.006001| +save_generic_svref||5.005030| +save_gp||5.004000| +save_hash||| +save_hek_flags||| +save_helem||5.004050| +save_hints||5.005000| +save_hptr||| +save_int||| +save_item||| +save_iv||5.005000| +save_lines||| +save_list||| +save_long||| +save_magic||| +save_mortalizesv||5.007001| +save_nogv||| +save_op||| +save_padsv||5.007001| +save_pptr||| +save_re_context||5.006000| +save_scalar_at||| +save_scalar||| +save_set_svflags||5.009000| +save_shared_pvref||5.007003| +save_sptr||| +save_svref||| +save_threadsv||5.005000| +save_vptr||5.006000| +savepvn||| +savepv||| +savesharedpv||5.007003| +savestack_grow_cnt||5.008001| +savestack_grow||| +savesvpv||5.009002| +sawparens||| +scalar_mod_type||| +scalarboolean||| +scalarkids||| +scalarseq||| +scalarvoid||| +scalar||| +scan_bin||5.006000| +scan_commit||| +scan_const||| +scan_formline||| +scan_heredoc||| +scan_hex||| +scan_ident||| +scan_inputsymbol||| +scan_num||5.007001| +scan_oct||| +scan_pat||| +scan_str||| +scan_subst||| +scan_trans||| +scan_version||5.009001| +scan_vstring||5.008001| +scan_word||| +scope||| +screaminstr||5.005000| +seed||| +set_context||5.006000|n +set_csh||| +set_numeric_local||5.006000| +set_numeric_radix||5.006000| +set_numeric_standard||5.006000| +setdefout||| +setenv_getix||| +share_hek_flags||| +share_hek||| +si_dup||| +sighandler|||n +simplify_sort||| +skipspace||| +sortsv||5.007003| +ss_dup||| +stack_grow||| +start_glob||| +start_subparse||5.004000| +stashpv_hvname_match||5.009003| +stdize_locale||| +strEQ||| +strGE||| +strGT||| +strLE||| +strLT||| +strNE||| +str_to_version||5.006000| +strnEQ||| +strnNE||| +study_chunk||| +sub_crush_depth||| +sublex_done||| +sublex_push||| +sublex_start||| +sv_2bool||| +sv_2cv||| +sv_2io||| +sv_2iuv_non_preserve||| +sv_2iv_flags||5.009001| +sv_2iv||| +sv_2mortal||| +sv_2nv||| +sv_2pv_flags||5.007002| +sv_2pv_nolen|5.006000||p +sv_2pvbyte_nolen||| +sv_2pvbyte|5.006000||p +sv_2pvutf8_nolen||5.006000| +sv_2pvutf8||5.006000| +sv_2pv||| +sv_2uv_flags||5.009001| +sv_2uv|5.004000||p +sv_add_arena||| +sv_add_backref||| +sv_backoff||| +sv_bless||| +sv_cat_decode||5.008001| +sv_catpv_mg|5.006000||p +sv_catpvf_mg_nocontext|||pvn +sv_catpvf_mg|5.006000|5.004000|pv +sv_catpvf_nocontext|||vn +sv_catpvf||5.004000|v +sv_catpvn_flags||5.007002| +sv_catpvn_mg|5.006000||p +sv_catpvn_nomg|5.007002||p +sv_catpvn||| +sv_catpv||| +sv_catsv_flags||5.007002| +sv_catsv_mg|5.006000||p +sv_catsv_nomg|5.007002||p +sv_catsv||| +sv_chop||| +sv_clean_all||| +sv_clean_objs||| +sv_clear||| +sv_cmp_locale||5.004000| +sv_cmp||| +sv_collxfrm||| +sv_compile_2op||5.008001| +sv_copypv||5.007003| +sv_dec||| +sv_del_backref||| +sv_derived_from||5.004000| +sv_dump||| +sv_dup||| +sv_eq||| +sv_force_normal_flags||5.007001| +sv_force_normal||5.006000| +sv_free2||| +sv_free_arenas||| +sv_free||| +sv_gets||5.004000| +sv_grow||| +sv_inc||| +sv_insert||| +sv_isa||| +sv_isobject||| +sv_iv||5.005000| +sv_len_utf8||5.006000| +sv_len||| +sv_magicext||5.007003| +sv_magic||| +sv_mortalcopy||| +sv_newmortal||| +sv_newref||| +sv_nolocking||5.007003| +sv_nosharing||5.007003| +sv_nounlocking||5.007003| +sv_nv||5.005000| +sv_peek||5.005000| +sv_pos_b2u||5.006000| +sv_pos_u2b||5.006000| +sv_pvbyten_force||5.006000| +sv_pvbyten||5.006000| +sv_pvbyte||5.006000| +sv_pvn_force_flags||5.007002| +sv_pvn_force|||p +sv_pvn_nomg|5.007003||p +sv_pvn|5.006000||p +sv_pvutf8n_force||5.006000| +sv_pvutf8n||5.006000| +sv_pvutf8||5.006000| +sv_pv||5.006000| +sv_recode_to_utf8||5.007003| +sv_reftype||| +sv_release_COW||| +sv_release_IVX||| +sv_replace||| +sv_report_used||| +sv_reset||| +sv_rvweaken||5.006000| +sv_setiv_mg|5.006000||p +sv_setiv||| +sv_setnv_mg|5.006000||p +sv_setnv||| +sv_setpv_mg|5.006000||p +sv_setpvf_mg_nocontext|||pvn +sv_setpvf_mg|5.006000|5.004000|pv +sv_setpvf_nocontext|||vn +sv_setpvf||5.004000|v +sv_setpviv_mg||5.008001| +sv_setpviv||5.008001| +sv_setpvn_mg|5.006000||p +sv_setpvn||| +sv_setpv||| +sv_setref_iv||| +sv_setref_nv||| +sv_setref_pvn||| +sv_setref_pv||| +sv_setref_uv||5.007001| +sv_setsv_cow||| +sv_setsv_flags||5.007002| +sv_setsv_mg|5.006000||p +sv_setsv_nomg|5.007002||p +sv_setsv||| +sv_setuv_mg|5.006000||p +sv_setuv|5.006000||p +sv_tainted||5.004000| +sv_taint||5.004000| +sv_true||5.005000| +sv_unglob||| +sv_uni_display||5.007003| +sv_unmagic||| +sv_unref_flags||5.007001| +sv_unref||| +sv_untaint||5.004000| +sv_upgrade||| +sv_usepvn_mg|5.006000||p +sv_usepvn||| +sv_utf8_decode||5.006000| +sv_utf8_downgrade||5.006000| +sv_utf8_encode||5.006000| +sv_utf8_upgrade_flags||5.007002| +sv_utf8_upgrade||5.007001| +sv_uv|5.006000||p +sv_vcatpvf_mg|5.006000|5.004000|p +sv_vcatpvfn||5.004000| +sv_vcatpvf|5.006000|5.004000|p +sv_vsetpvf_mg|5.006000|5.004000|p +sv_vsetpvfn||5.004000| +sv_vsetpvf|5.006000|5.004000|p +svtype||| +swallow_bom||| +swash_fetch||5.007002| +swash_init||5.006000| +sys_intern_clear||| +sys_intern_dup||| +sys_intern_init||| +taint_env||| +taint_proper||| +tmps_grow||5.006000| +toLOWER||| +toUPPER||| +to_byte_substr||| +to_uni_fold||5.007003| +to_uni_lower_lc||5.006000| +to_uni_lower||5.007003| +to_uni_title_lc||5.006000| +to_uni_title||5.007003| +to_uni_upper_lc||5.006000| +to_uni_upper||5.007003| +to_utf8_case||5.007003| +to_utf8_fold||5.007003| +to_utf8_lower||5.007003| +to_utf8_substr||| +to_utf8_title||5.007003| +to_utf8_upper||5.007003| +tokeq||| +tokereport||| +too_few_arguments||| +too_many_arguments||| +unlnk||| +unpack_rec||| +unpack_str||5.007003| +unpackstring||5.008001| +unshare_hek_or_pvn||| +unshare_hek||| +unsharepvn||5.004000| +upg_version||5.009000| +usage||| +utf16_textfilter||| +utf16_to_utf8_reversed||5.006001| +utf16_to_utf8||5.006001| +utf16rev_textfilter||| +utf8_distance||5.006000| +utf8_hop||5.006000| +utf8_length||5.007001| +utf8_mg_pos_init||| +utf8_mg_pos||| +utf8_to_bytes||5.006001| +utf8_to_uvchr||5.007001| +utf8_to_uvuni||5.007001| +utf8n_to_uvchr||5.007001| +utf8n_to_uvuni||5.007001| +utilize||| +uvchr_to_utf8_flags||5.007003| +uvchr_to_utf8||5.007001| +uvuni_to_utf8_flags||5.007003| +uvuni_to_utf8||5.007001| +validate_suid||| +varname||| +vcmp||5.009000| +vcroak||5.006000| +vdeb||5.007003| +vdie||| +vform||5.006000| +visit||| +vivify_defelem||| +vivify_ref||| +vload_module||5.006000| +vmess||5.006000| +vnewSVpvf|5.006000|5.004000|p +vnormal||5.009002| +vnumify||5.009000| +vstringify||5.009000| +vwarner||5.006000| +vwarn||5.006000| +wait4pid||| +warn_nocontext|||vn +warner_nocontext|||vn +warner||5.006000|v +warn|||v +watch||| +whichsig||| +write_to_stderr||| +yyerror||| +yylex||| +yyparse||| +yywarn||| +); + +if (exists $opt{'list-unsupported'}) { + my $f; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $API{$f}{todo}; + print "$f ", '.'x(40-length($f)), " ", format_version($API{$f}{todo}), "\n"; + } + exit 0; +} + +# Scan for possible replacement candidates + +my(%replace, %need, %hints, %depends); +my $replace = 0; +my $hint = ''; + +while () { + if ($hint) { + if (m{^\s*\*\s(.*?)\s*$}) { + $hints{$hint} ||= ''; # suppress warning with older perls + $hints{$hint} .= "$1\n"; + } + else { + $hint = ''; + } + } + $hint = $1 if m{^\s*$rccs\sHint:\s+(\w+)\s*$}; + + $replace = $1 if m{^\s*$rccs\s+Replace:\s+(\d+)\s+$rcce\s*$}; + $replace{$2} = $1 if $replace and m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+)}; + $replace{$2} = $1 if m{^\s*#\s*define\s+(\w+)(?:\([^)]*\))?\s+(\w+).*$rccs\s+Replace\s+$rcce}; + $replace{$1} = $2 if m{^\s*$rccs\s+Replace (\w+) with (\w+)\s+$rcce\s*$}; + + if (m{^\s*$rccs\s+(\w+)\s+depends\s+on\s+(\w+(\s*,\s*\w+)*)\s+$rcce\s*$}) { + push @{$depends{$1}}, map { s/\s+//g; $_ } split /,/, $2; + } + + $need{$1} = 1 if m{^#if\s+defined\(NEED_(\w+)(?:_GLOBAL)?\)}; +} + +if (exists $opt{'api-info'}) { + my $f; + my $count = 0; + my $match = $opt{'api-info'} =~ m!^/(.*)/$! ? $1 : "^\Q$opt{'api-info'}\E\$"; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $f =~ /$match/; + print "\n=== $f ===\n\n"; + my $info = 0; + if ($API{$f}{base} || $API{$f}{todo}) { + my $base = format_version($API{$f}{base} || $API{$f}{todo}); + print "Supported at least starting from perl-$base.\n"; + $info++; + } + if ($API{$f}{provided}) { + my $todo = $API{$f}{todo} ? format_version($API{$f}{todo}) : "5.003"; + print "Support by $ppport provided back to perl-$todo.\n"; + print "Support needs to be explicitly requested by NEED_$f.\n" if exists $need{$f}; + print "Depends on: ", join(', ', @{$depends{$f}}), ".\n" if exists $depends{$f}; + print "$hints{$f}" if exists $hints{$f}; + $info++; + } + unless ($info) { + print "No portability information available.\n"; + } + $count++; + } + if ($count > 0) { + print "\n"; + } + else { + print "Found no API matching '$opt{'api-info'}'.\n"; + } + exit 0; +} + +if (exists $opt{'list-provided'}) { + my $f; + for $f (sort { lc $a cmp lc $b } keys %API) { + next unless $API{$f}{provided}; + my @flags; + push @flags, 'explicit' if exists $need{$f}; + push @flags, 'depend' if exists $depends{$f}; + push @flags, 'hint' if exists $hints{$f}; + my $flags = @flags ? ' ['.join(', ', @flags).']' : ''; + print "$f$flags\n"; + } + exit 0; +} + +my @files; +my @srcext = qw( xs c h cc cpp ); +my $srcext = join '|', @srcext; + +if (@ARGV) { + my %seen; + @files = grep { -f && !exists $seen{$_} } map { glob $_ } @ARGV; +} +else { + eval { + require File::Find; + File::Find::find(sub { + $File::Find::name =~ /\.($srcext)$/i + and push @files, $File::Find::name; + }, '.'); + }; + if ($@) { + @files = map { glob "*.$_" } @srcext; + } +} + +if (!@ARGV || $opt{filter}) { + my(@in, @out); + my %xsc = map { /(.*)\.xs$/ ? ("$1.c" => 1, "$1.cc" => 1) : () } @files; + for (@files) { + my $out = exists $xsc{$_} || /\b\Q$ppport\E$/i || !/\.($srcext)$/i; + push @{ $out ? \@out : \@in }, $_; + } + if (@ARGV && @out) { + warning("Skipping the following files (use --nofilter to avoid this):\n| ", join "\n| ", @out); + } + @files = @in; +} + +unless (@files) { + die "No input files given!\n"; +} + +my(%files, %global, %revreplace); +%revreplace = reverse %replace; +my $filename; +my $patch_opened = 0; + +for $filename (@files) { + unless (open IN, "<$filename") { + warn "Unable to read from $filename: $!\n"; + next; + } + + info("Scanning $filename ..."); + + my $c = do { local $/; }; + close IN; + + my %file = (orig => $c, changes => 0); + + # temporarily remove C comments from the code + my @ccom; + $c =~ s{ + ( + [^"'/]+ + | + (?:"[^"\\]*(?:\\.[^"\\]*)*" [^"'/]*)+ + | + (?:'[^'\\]*(?:\\.[^'\\]*)*' [^"'/]*)+ + ) + | + (/ (?: + \*[^*]*\*+(?:[^$ccs][^*]*\*+)* / + | + /[^\r\n]* + )) + }{ + defined $2 and push @ccom, $2; + defined $1 ? $1 : "$ccs$#ccom$cce"; + }egsx; + + $file{ccom} = \@ccom; + $file{code} = $c; + $file{has_inc_ppport} = ($c =~ /#.*include.*\Q$ppport\E/); + + my $func; + + for $func (keys %API) { + my $match = $func; + $match .= "|$revreplace{$func}" if exists $revreplace{$func}; + if ($c =~ /\b(?:Perl_)?($match)\b/) { + $file{uses_replace}{$1}++ if exists $revreplace{$func} && $1 eq $revreplace{$func}; + $file{uses_Perl}{$func}++ if $c =~ /\bPerl_$func\b/; + if (exists $API{$func}{provided}) { + if (!exists $API{$func}{base} || $API{$func}{base} > $opt{'compat-version'}) { + $file{uses}{$func}++; + my @deps = rec_depend($func); + if (@deps) { + $file{uses_deps}{$func} = \@deps; + for (@deps) { + $file{uses}{$_} = 0 unless exists $file{uses}{$_}; + } + } + for ($func, @deps) { + if (exists $need{$_}) { + $file{needs}{$_} = 'static'; + } + } + } + } + if (exists $API{$func}{todo} && $API{$func}{todo} > $opt{'compat-version'}) { + if ($c =~ /\b$func\b/) { + $file{uses_todo}{$func}++; + } + } + } + } + + while ($c =~ /^$HS*#$HS*define$HS+(NEED_(\w+?)(_GLOBAL)?)\b/mg) { + if (exists $need{$2}) { + $file{defined $3 ? 'needed_global' : 'needed_static'}{$2}++; + } + else { + warning("Possibly wrong #define $1 in $filename"); + } + } + + for (qw(uses needs uses_todo needed_global needed_static)) { + for $func (keys %{$file{$_}}) { + push @{$global{$_}{$func}}, $filename; + } + } + + $files{$filename} = \%file; +} + +# Globally resolve NEED_'s +my $need; +for $need (keys %{$global{needs}}) { + if (@{$global{needs}{$need}} > 1) { + my @targets = @{$global{needs}{$need}}; + my @t = grep $files{$_}{needed_global}{$need}, @targets; + @targets = @t if @t; + @t = grep /\.xs$/i, @targets; + @targets = @t if @t; + my $target = shift @targets; + $files{$target}{needs}{$need} = 'global'; + for (@{$global{needs}{$need}}) { + $files{$_}{needs}{$need} = 'extern' if $_ ne $target; + } + } +} + +for $filename (@files) { + exists $files{$filename} or next; + + info("=== Analyzing $filename ==="); + + my %file = %{$files{$filename}}; + my $func; + my $c = $file{code}; + + for $func (sort keys %{$file{uses_Perl}}) { + if ($API{$func}{varargs}) { + my $changes = ($c =~ s{\b(Perl_$func\s*\(\s*)(?!aTHX_?)(\)|[^\s)]*\))} + { $1 . ($2 eq ')' ? 'aTHX' : 'aTHX_ ') . $2 }ge); + if ($changes) { + warning("Doesn't pass interpreter argument aTHX to Perl_$func"); + $file{changes} += $changes; + } + } + else { + warning("Uses Perl_$func instead of $func"); + $file{changes} += ($c =~ s{\bPerl_$func(\s*)\((\s*aTHX_?)?\s*} + {$func$1(}g); + } + } + + for $func (sort keys %{$file{uses_replace}}) { + warning("Uses $func instead of $replace{$func}"); + $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); + } + + for $func (sort keys %{$file{uses}}) { + next unless $file{uses}{$func}; # if it's only a dependency + if (exists $file{uses_deps}{$func}) { + diag("Uses $func, which depends on ", join(', ', @{$file{uses_deps}{$func}})); + } + elsif (exists $replace{$func}) { + warning("Uses $func instead of $replace{$func}"); + $file{changes} += ($c =~ s/\b$func\b/$replace{$func}/g); + } + else { + diag("Uses $func"); + } + hint($func); + } + + for $func (sort keys %{$file{uses_todo}}) { + warning("Uses $func, which may not be portable below perl ", + format_version($API{$func}{todo})); + } + + for $func (sort keys %{$file{needed_static}}) { + my $message = ''; + if (not exists $file{uses}{$func}) { + $message = "No need to define NEED_$func if $func is never used"; + } + elsif (exists $file{needs}{$func} && $file{needs}{$func} ne 'static') { + $message = "No need to define NEED_$func when already needed globally"; + } + if ($message) { + diag($message); + $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_$func\b.*$LF//mg); + } + } + + for $func (sort keys %{$file{needed_global}}) { + my $message = ''; + if (not exists $global{uses}{$func}) { + $message = "No need to define NEED_${func}_GLOBAL if $func is never used"; + } + elsif (exists $file{needs}{$func}) { + if ($file{needs}{$func} eq 'extern') { + $message = "No need to define NEED_${func}_GLOBAL when already needed globally"; + } + elsif ($file{needs}{$func} eq 'static') { + $message = "No need to define NEED_${func}_GLOBAL when only used in this file"; + } + } + if ($message) { + diag($message); + $file{changes} += ($c =~ s/^$HS*#$HS*define$HS+NEED_${func}_GLOBAL\b.*$LF//mg); + } + } + + $file{needs_inc_ppport} = keys %{$file{uses}}; + + if ($file{needs_inc_ppport}) { + my $pp = ''; + + for $func (sort keys %{$file{needs}}) { + my $type = $file{needs}{$func}; + next if $type eq 'extern'; + my $suffix = $type eq 'global' ? '_GLOBAL' : ''; + unless (exists $file{"needed_$type"}{$func}) { + if ($type eq 'global') { + diag("Files [@{$global{needs}{$func}}] need $func, adding global request"); + } + else { + diag("File needs $func, adding static request"); + } + $pp .= "#define NEED_$func$suffix\n"; + } + } + + if ($pp && ($c =~ s/^(?=$HS*#$HS*define$HS+NEED_\w+)/$pp/m)) { + $pp = ''; + $file{changes}++; + } + + unless ($file{has_inc_ppport}) { + diag("Needs to include '$ppport'"); + $pp .= qq(#include "$ppport"\n) + } + + if ($pp) { + $file{changes} += ($c =~ s/^($HS*#$HS*define$HS+NEED_\w+.*?)^/$1$pp/ms) + || ($c =~ s/^(?=$HS*#$HS*include.*\Q$ppport\E)/$pp/m) + || ($c =~ s/^($HS*#$HS*include.*XSUB.*\s*?)^/$1$pp/m) + || ($c =~ s/^/$pp/); + } + } + else { + if ($file{has_inc_ppport}) { + diag("No need to include '$ppport'"); + $file{changes} += ($c =~ s/^$HS*?#$HS*include.*\Q$ppport\E.*?$LF//m); + } + } + + # put back in our C comments + my $ix; + my $cppc = 0; + my @ccom = @{$file{ccom}}; + for $ix (0 .. $#ccom) { + if (!$opt{cplusplus} && $ccom[$ix] =~ s!^//!!) { + $cppc++; + $file{changes} += $c =~ s/$rccs$ix$rcce/$ccs$ccom[$ix] $cce/; + } + else { + $c =~ s/$rccs$ix$rcce/$ccom[$ix]/; + } + } + + if ($cppc) { + my $s = $cppc != 1 ? 's' : ''; + warning("Uses $cppc C++ style comment$s, which is not portable"); + } + + if ($file{changes}) { + if (exists $opt{copy}) { + my $newfile = "$filename$opt{copy}"; + if (-e $newfile) { + error("'$newfile' already exists, refusing to write copy of '$filename'"); + } + else { + local *F; + if (open F, ">$newfile") { + info("Writing copy of '$filename' with changes to '$newfile'"); + print F $c; + close F; + } + else { + error("Cannot open '$newfile' for writing: $!"); + } + } + } + elsif (exists $opt{patch} || $opt{changes}) { + if (exists $opt{patch}) { + unless ($patch_opened) { + if (open PATCH, ">$opt{patch}") { + $patch_opened = 1; + } + else { + error("Cannot open '$opt{patch}' for writing: $!"); + delete $opt{patch}; + $opt{changes} = 1; + goto fallback; + } + } + mydiff(\*PATCH, $filename, $c); + } + else { +fallback: + info("Suggested changes:"); + mydiff(\*STDOUT, $filename, $c); + } + } + else { + my $s = $file{changes} == 1 ? '' : 's'; + info("$file{changes} potentially required change$s detected"); + } + } + else { + info("Looks good"); + } +} + +close PATCH if $patch_opened; + +exit 0; + + +sub mydiff +{ + local *F = shift; + my($file, $str) = @_; + my $diff; + + if (exists $opt{diff}) { + $diff = run_diff($opt{diff}, $file, $str); + } + + if (!defined $diff and can_use('Text::Diff')) { + $diff = Text::Diff::diff($file, \$str, { STYLE => 'Unified' }); + $diff = <

&N5J>3l8n+TTYR50$ETt8XU=L#C9bfYX^yprEp4}$ODk=BG0|LSnw zZl!p&!g9+_ys^C){)Ums(Jb~j)=L^0+W#+tGpjRAzms?tyc73>Lj}5Hkz;QJ61hhH z&p8jpz3tDDFGwPuIhHs3;j_=SBLA%OMBJ-hQ>2glj?Qic;Ow`&{ttToxQAC2ZH)ZW zUch1Q$`bWI=n3M!9u<4~VG(fx{Ih-S|2`+&>5BV(=`o99qMo?l#rq%i<-eD+{dC1W zY}MiRr&OF>2B5N|yia@nxZgTq{G048t38hQ>H)m_JXIeG))(h!sd;~b4j$uOfBlcVZbr$oM_y;Qk;Tv$ zzqo&eWc~T4uA8xpc4#V4@Sh?16Zzu)FW~y~pLqR@B|Y(ayXEQAQ;|QO9|urb(f>uy zzc?ZPF#UXoysG~Y|NF1V|5N=)V5QX+_kZt$?S=noc>TlWM!rb955zD|?>_4J4{t=u zbRSOp!U_4m{(+SKu^1RHW;p*VCglIrZ>0=>9fUI>|LZ;fa6dPHCuO*E&NB|>k9OQR zq5g*-O&OXm9iKn2KQ|%&!EdA#k3>bDVdyb?G5Db&vXqaDFuCp=$}se3bLT9UGWg#^ zA}p>Cx&ReB-o*c)`_MmnJ+A&oL|9yp3=!;b{VCP>zx!!j*fISn_9HFBJ{iRC&%*8) z#9x|)Ju!&CEDJkf5Px~D{|E6`b`aacnA1v}ZRxMf;%7WQO1Zk;27bn%!9VYufZqmx?O;-S`XKmm?fKY*^nW-Zy*5US zE9cP(_$R=R>+dBf(Q)`|z>h2cO@_ZRi(kh24e#U4j*p*WiE%sa`1q~KM?8IbLiru= zQ^=WNzIgA1^dGSFUTEL#BNNg;JOTgr6Yx(M9(m~UB(_q15B#-#^#%CMgmRvbJ)(Y{ zcRM@MUuF1sD(HMAev~H0^KFJN(gmbl3Q8Y8s1xbmF`@iT!;g-0XF~d4vht(0 z;{GASUzx=ZE`7%N<&OOi`Q>NIu&L>Xg@*VSM%O^{m zCs^iOShjTY0g+C<+0sY%e7DO6?GY3o4z$YY)4FnXTPFfkdb@1M=i>v8;;YWxa_Bbg zv>ua)oytum1zLmvrdstaAA{2MI2e`K*$* zr;a#$`^hs$kDM&01IWtDM>v>CDV9&o=c%jRmW~PFh@Y%{?C#S?PL<}z9rSbf@a-o{ zN9W5o&fPe7bNaYLr(D<>TKX==4;&dh;I{9mVf&b5?D?OZt(4D*+JDCm2Ro&qo@Z~o z4oaE$36~8cuLnP#u)1unZ3BEdL~FPMBgb@DF22Lz8wrjeh*QG!{p_}#zE&yKE|H-&FJWfC&ux`_bd5#VgCo519;2; literal 0 HcmV?d00001 diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist b/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist new file mode 100644 index 00000000..1e32e659 --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_9baf/.packlist @@ -0,0 +1 @@ +/home/joeldejesus/Workspace/cbitcoin/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl b/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl new file mode 100644 index 00000000..ddcaa36c --- /dev/null +++ b/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.inl @@ -0,0 +1,22 @@ +md5 : 9baf23db48918e69e7905a1c99e0a33d +name : coin_pl_9baf +version : "" +language : C +language_id : C +installed : 0 +date_compiled : Wed Jun 11 17:47:30 2014 +inline_version : 0.5 +ILSM : % + module : Inline::C + suffix : so + type : compiled +Config : % + apiversion : ? + archname : x86_64-linux-gnu-thread-multi + cc : cc + ccflags : -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fstack-protector -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 + ld : cc + osname : linux + osvers : 3.2.0-4-amd64 + so : so + version : 5.14.2 diff --git a/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so b/scripts/_Inline/lib/auto/coin_pl_9baf/coin_pl_9baf.so new file mode 100755 index 0000000000000000000000000000000000000000..64a1a0e7d21c501e012f8ff6565b66a687085ebb GIT binary patch literal 63690 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�ns>(W{dq) z)4Z@gM{I$g6;044uN7Vnwp61aWfph$h^$n zEWFU7=y=_(O_$fL;!%J*& zH#QkXCu+Ff7RAVeMHQ6G^G|_i5UrwViI`2Eeu_qdX7YsIx5Xs_a1Lj}6Z+5=pHbAw8h&JpaU9@W-r&URdA68>jY`oeytj(C zv20O6HENl8u;p~b3CL?j4S$12aR)4BP>sl^3hs8q2!vtLGHslv9l^7-q9*;~-abc6 zq2I2U0cEh;azq(+Uq#K@uy~{WNjl^zt<@jAi0MaR)C9p`OJp3d6LpT}wGveir^K+A zfmGC@8}N}b+=fH#z&oKGHbDbXcD&wEnDyL?p?_9a+VLPIh!gQwr!u}ApikX%`QuPo z7pI-2IO^~>+vckPy@|@oz1IQDB}zzcJ%*gMA?FzJQV$r&_8YTsEFykV0WTr6YT}|xQX_uj_8_b&$COc zvXJ3h1HR*2jqPiIFnhE{f_NS(l-s!&pmUX7V)*&?Ge0&Q*}m*_%Q}7wJlwg8k8;{@ zg7G+$a<1As!Ls<=-K6cTyoMvU?FrE~l=;}sb*P$vdjifi%+!Aen#}9;x^f{>;gmll z5waG6Y+3(4jSXN$=LX8!1(wOBNHETgjQ=+Y_d!ADCgz?jOnlikqwhT!QQ3p>;HfxJ z`mzDff^8ByfuWr9@%L1Fyj8~AuKXw&pTvW2<3MS;G09?BZJm;FnsXs~9c1WiURr3t zA%I)sJ5sDAaja$4aiDa*0b&`ZKi1AF+Ze}Gc3V8S$AA%NVNI>TpK+(dK8_Fe`6*}Y zINIl&_$G~Uz$&YW8(i7^c+eCN9*t{sg6kG1qEp)N0@^Uqb3qW@t4|7_=Nf01BkFAZ zJgxhW#%{wr@^co{vVDu-QOQUxb}nbu*AMgF+T38-gBcL~okblkLl`bs0-kvDNH7N( zrk)?}zDUPbh_UqyYD*6rC0n4^poJ#`dFOx?;aq|VaCX@)bu@A+KQaMUJnKw1 zoOdytWq%XSyBN+V0qJnQ8y&jgd^f}Sc2ucwzMBF2F^~>tRmq!oI-FJQ)HXDJ=?t)N zmYw@K%MXD?hw}r3|0Go5{2;@57#7m9!)8b-6tj?j`B5Mg2TCUzaN2UHk4|VW9nK}p zdx+^1|dS*kK(dwtJ@v}k=1pCj%9={ z13Zz7wmrd(-^tlXG4^q6cLQoC^Ma^-JY)YIz|vYHoQvV#U;!?M2-U5IdJo>7KpjphlGXEk_!W_TV4&&h_z%(3I%ZYv)Pv~l z(#2rmR66@O-G5{YwFEy;m@ENR%)Y>wod#G|JBV7EFztv3>*GM_H3l$dpFI0mF?(|y zd)b5W;E6a;`mzB`V>Yy<7cgeuh-c!PeEcwGM=PfInEfPGggqhfY* zPz@S?#@U}Tq)t>Z>;60MLk8>WP0+}`APg5$JJu8FG_QcBW43}Z>%;n?m*7e+!P5!V zj&(YNbRD1$;gcA`KPQw>)~;slOMs>K7`@JGYO`1{tdF`^F|I^!=J1EWun-V;Y3W9a9De%R0x8}a+!h8_j|8$)Mi zs8e+85ttLOmG&CzsjakYO1+gXxBm%iJFnP5!}Hh>ZRyWp3j5hQH+ElP?0%kRV)qrs zZgILByRXH??rV(Qt*BD5`x;~S0FaJdRXIDuja^kcwH69YMMrx3{3d1H02Up)Z!vaX zB2=+^kg+Q=;g(%SU$y$&8V??b1Eo(H!0q$8CGoL~rS`XRoMmsvgAd|BsclTcOtweK z&|#Zw=qmgM7{IXoTYN_qzg@ktSyuM|z)*)B&Uyfsf)G=_5MQJ*ZNS^bs9tKah4L zRaue^sLsPw?Ztp6P6eCu1+S#~jcF&j5bz;m^R@oKtQtpnE z^0F)Cm+?~EZTeAC?vIzk7YX^HE(72QaPdUXOF>1`W^gwSM@e}#UdpF&Qo^p358|b` zDeNdI|B91RmTVfRSsD-zLUEw9#DHs|@_o89b>2nWTV=<^v6fZF0sZjJ>u8YlvIUQ~ zru@bOPapITP*NBJlO|wSGT}D9MQGcTdZ5{a+YMNYiwvc~Zul>1)Kv)+4VAb8jNL0v z_!pp#%a5PejI2ugENqcVqBfDOE~k(K^lXS9TV!+jvzhb#yr8BU`FZ`%Z5|CFiLbV~ z@Yz?Ajel@ih1ZSnW6YVjHuf8vO>J7sPd;n9y#mR2;wfJBs-?}e>gW5is5lju{L23B zQ?IVrOoRHuEHk!xWZs%#{~`x0?WwlSY!_F}%b<|(E9@7`{vy=9Ih*NCv+!;NYHz{{ zS9VCM=l5;qAyo^hR~4Y*G{?5jafyCaQc_duK}-<1f@P)f)s{*-eK-a-RS%oz)%w)~ zW73b&)z}Hzbh}u|QEP)$+0XPx%dNJ}6KnnAaFu-phBS78ZS!>6Pm3#KTUGW!%=Fk= z+vfSSW}a@pjzu;3HCx+`C)9rRJVllL6XdRvGi;kD(|$FJRko9aDl>d%FGANLb|qpV~&*7m$saSHCx)pnA<9g+D-EW#59v z$5q%i&poubC@Ahwo<^QKZk}y(Z*g>Or9B9aGH#4Ild^f%p*eaTZHCP^T#|ci+vX<6 zHQc`ovA?afZEj>Vti#(v~AoP10BD$U6VN$&5|>1kL=}7838)>x-n`$a!VtnUri>Zqyh@` zU|`w^=$@X_M@~j>zj*2=Cr%^$3ty_S(ltBV9+|=({QXqFIp|mPY736OjHIf@y3~cT(Ny(igp}!NFS?6_)(>rfbsoewsqil z6H5EQ((X%ac;`6fI}T6Of0lIY^i$?lSz{YpS4GCIXpJ;CL{>ziozbxiTiaJg+v@5g zW9y+3|IyO1=%F1?SjB|({ijUVMlrs=q!!KMhV>OHuY;*fQaSo ztU{r_eO;Sth{n2x)-{^k9>GA3(rtC^(TFKeubkf6678sK>0pnD#Oal%EL{<)rwD~A z*L6guwYS$%3q_dT7^z;G%8XTRUhbm}YwAj7S@v9E`NoH@RJ7wR7AXlb&>Y*z@bfoQ*@hj^|(2 zqxU-Fa|*@ytMT-Mli=iM;OI$k@S3&b#in?fg5q8t*7MI8{+WtDc7ijC%ua&H<6$)a z%;6t_J9J3JYd=xoT`?2jl8eMm!xk?3^o%i6*H4~$<~{3go;>x8*-`P@8Db9f=(5Gn zj;%=H{{=-}jZ@_73&l-yixz#ce(o;um#T_0K6?j>P^I-y15fho`~OCbub{@w3xBwN zy_l^!7gI0Ydg4~7u*L2;wg&%KXT*~(Zrb4SIpb|lwAkZ&)DsnpJib}tUGbTdpXvUe zB{H4SSx$MTlZb>}(_9zrKoE5BskY|UmgPb9hyMU1{#CDVeUyph=!DlE3A0HgytI`U z2y0r~o0j9UV!c(<*|DrV+<^4d5u>g)RF!9~SX0Dw7*EEwtwKHwN7~z4TCJ54_;|Y& z4kN}(^kJMnjMs+=`cP_hENu?gA%E3{TOw;atZ)>u(GiX|og1+lp%Q>q-`pCFKoYo& z0*k_PPG5jXnj2Yzn4Q_)x@x}u2dtYTYcZbAWy>sOjc{~LU9>TbpQOZ3%?91 z>6JPU)V4>K;elcFfPQML=FJIDKV|NMsznQ|a9y;XMh`EAMleTBOXsRcds974-qKLl z-eA?h{PpckZ5>v0b+{9wkF>8=?~F z7{1eKjNH-M(bUl#vF25sRJEu!HZxkYmbz7u1~o3Lc1{?nF3jg88pF+zmgOCdSa8D2 zn%binK|^bF4c6mEyeWto=6veOMU%$X)|Fvo#`*mkc)nYkCQQlUXdl#J;a~cy zuC_3Nm?Y>NwHhJ_4Gb1TT;5XGjDhIUt!-)zFKe!YTh&Ax;l~`gnv1p3&ZTPXYg*|I zcq6kj8m_XIss&~`SnKLLB2cRa2CQERFK}nxcqLuGwsUE7Q$3a|s}r$4VLYsf8OLs@ zqpp6X)rbI?9|4Kp-Wlcm!ry09M&ZqvTovU|g29j8!>!AfVXIE+_<&H zYFpLXhW!u3>N$i->fqmSI*1K3(dejy988rOY0Ls`tLYmS@&q?4;b>iRN8b#xs&08x zJsqd59pXA7YOa>Gwy%O$U>tC-D2&ixMVEGl8&s}p?`&zsS)IYe_<%=2XK;1E`8s;Xsk2MRDkyQ% z+|z>7%|HH2k85B?#C8j54k-ividmUnIlr-P{KPV=cEP;xf=YyqwYHHyyw;+bI$C4F z(a2I`WF>QqyK}L^%a!Gry28sNaA)isW0@sdx26vM-X6tJ&?-E)YQe%&=FJW-sG7e( z%{}IfUS&nrMv&amC+DlZRoRV3py5|xZljI()82tx)IhV8mb+$I-rm}Y*@tmpCmNgi zKj!-3hPsYA1W0ssM;OCi2RG3^Vz$Lh4|GhZ*xazxs%dIzYsO~XYFiUtj(iormPA^c z>7bYzSRQFntqv-Ct>|3U#taaFcQG!*Yop=S7&Ckm>sKqY3_Jyyn=2sw{r^;U?lE%R z)g8Z%li)m{8wju}k1io3roiGjBudK5_Ihnk{Mvdq#%YsGW_M|?98lp14XVB zP+F=ss#=r+6-h-UpsFBJTc!O2MN~Zg;ExFL6s1Bf&=e|_v=RYTCH;KQ@0@$*sn9EX z@44sx-oNwy{qAoNI%2)$R=3OiN&)m>uv&FL4S_LgjMQAeA;^5x*VeP09g%9gw=9_k zb1c^&l91)5no7$^lk;L@YCulmXE3zQYPqvsUq!aGFK7l$%d|R1e$BF2*2qahXocE0 zTGftGxly?B6%9I!^xACg6!VVKSgvilv@I_#$^R+URvWDfavU|unAX}Nw0aX=ZAuYg zuu!R^aLnA65@v+EP$Mi(tyzc3zEEwupkGCwNyqjOoHpY6tlQKrm9!|ugoJc%mLzne ze!iC7adKgvpLtBm#c0O*V#A)Hel*i*mdfR33(*7bmJrCyf>8m=OwHR!@=}wPMEYiJ zTLiptX8uU&9JkYl@0?pIojwIvI(u+wzI=TCF6gJjh`T+)R8$aUr6hDswnEJ1S!*}Uf5o&~$&gu`SWSmZ zO=KKOl)nS)SFTBzn-b`jn{XitHtD4!3^BYd?aBaQ@<2usUj0~mPRT2gPx8hT8+@Gr z?6?F#f>P|5Bx%?s80ua0oa`BdFuz9IE_ct1pN-*LZ8I7WBu#?hFLkLU`j zlQE?=IH9W$p3zACK}kBdu}~IrGF`ldARSA2K`rIdX%rXcgsMbx8DldDjSiw`O}eeI z(T$<(2(qS%$Z&hb z8Y}~Cxrd5I3~30L>2t50)KR&NnWn)ncPj{4m(PWnZS)p`s$Qihj8DH_$IfgtBySik zH1WAbEEt>kmfAjtfHF#H_nO#zSkKbS;@hTXLe4w1X#9`uX8Ip9WvkZ6wi~SrvIe*6 zC_~5(ZJD#n!byJO6$RHrbIHe&05xWyFm+H~hS7-3ZJBsFDVGxqP9Hh4IL}PMKwY|Q z%5>B1!nHqwzeDxE?1&yoow#d{M_+{)1^~OY8XFJ;1-md{9#I?=dqtr^)jY4 zymA&G#Cmd@d*(J9-9n`{$|#y7(lJH0+jUew<(I@JNM1OlBzcd3!-_z@nt|Z63_Dx1 zd*xM#8lR)Fy}G$kmb=mC2}`^fKiU{c(rz%FxG&ofWU`YxTfH(rJph@sHW@+9iWEmx zssd8&$!lM3Rd;L}ZGvdD#3)v!QIl1U^^WO8`Q6s}T2my+l*$!@nIt?Ql#R75WO42} zqm7bSGp^bWj+CG^TTrC1vYqC3@yP?^{9@{6tE8%4ceo#vBBf3hUw-cM)BoK)u1{m?hpW z)x^1Oq&dl}*BT!YdKyooIKm-D$Bh1YMx!iiRrla>Q|2iYnI(TDJRW(a=ryK0u^u*O z8USkP5zc6J71c`5rBfHRXh!KUEpqZ%S;yfq4UufVl4z55x+vLB2AoZVyWhm^ zX@OiS2wan+k(G!nm{VQoZk3xItOJcg3JF9c!W*@SU5q=>z$?V{PN7XrjckhgDvp~b zN7@D9B&ldt4?}J|lp;^YRt+eN3d?!eC+RJz=wx?DLiA0Y$3ZM_a<|kE={7gQtm3u@ zUXo5+TsnAWDSSbrRx^qZra+Fk{7h+K{^a4CZryiGEvB^ghO8usyk1t7(daVvTp0x- znUgrttQ!+JMon%mn{U#-1v2h)*D%8l;}Qi!K{+a>YO37Yya^?@+DSzt?h?zCV1oKK z(=EH3*$S5F47#Z6g)@G6vRRW=Zr~g)Nun-R7t*UrClF&XNy+J*~@8_v4Bx5P@sTV zt^sWPHCTy;JWgbxq1zbpk`$O}G^Rcgqx>f4?RM5fV-c#vXq5zw5J0shN5%%B#X#j~ z5qRD{mlP>s7Rm^n^_s=qk-1XUCSVBGkxC@MMV7{;=hqLAMGHRee63X3%! ztCs0a5Z8o^{OCj$!MA;U*m6XZMd3F|;@g^sVt~>3?c}SVW z@2NkyJxw*P(uD>UhAI`4m6gxS1|>ITGsY)QV;;^O!jzCNmZDiq`T*g|mVxVunVVk& z1v4#(u`~1Yrh{Zo;l!Ax6|g3dpl?X@-@GsKJR|m{k zwg?65BQ`CPgV?^%spzRwdw}6+s;?$VNsnEKSi?-LNjSRtKF0*F$>-~IE(m zk`OkLtFSxf4P$Eqx{)E}j4vBb_a&;bUGsAu8^dH!Pm7$RD& z7FxU)7VzZ_i=J1_gdl#VFbq79tfrl8yFyshJOWyY?bNiMFn?x4nXpv_#gj-RE!S9R zTTCo^V|B*7rkx#=c_lL%nPa&bt<72ylHc&@9AJ<{)y7ndrR?OpREh%IPr&3IYgNv@t!LGskdtz zRZR2T36RU_Zh*B!6O3&bE2XlER6lkjR{P;YkS|=Mhzk@Uc1Hrx5sanE%1W&*&v0!^ zeAy?0iYT+>KyEfmCrbcS$tK5!`AZtXViZO)$zZ1}mUa*wiC=x4(?`-9fTMBOU5iV1 zEzHBFVm{$%toyp1!kSEelnDiODUWElq#`X; z76vePt&G2?If(#h>3p+w0Rq!afIm17A*Y2%4T&#pOL>&Z8F<@Ng=$oeAO$`Q=EBv_zLei?l46zz8{8 z&d0JM*qE4jZL`u|rzNs_ll`(G`^6S#yTs)w&P+~Z;%1c~79Eq{0D)nIuqG){g#~jS z>9B%TX8I=&o60YcyTe45Orjczc3DhTa4uvLa>&#GU0FGAp(DitHoN8}u`<#*+3OPc zQ@>X$?44+#CZ%G{!4#0luJGASC}54c0}*n~`NSAIEvd`ZH|Zz80D+Or$*eTDLBtZ) zF=?8!h~!+K;cRYmz7X}EdUsv)J*VY8+K&(qm9|z-V%iO#q*vQ=a*}&mm7~y(g&PV%mhT^_-PHi2`g)Cfyb^>P?p1;YC77D0eAZ3ox6bW!hYHNOS9(cosv; zhnV||$?QO<(D+O-0WTn_l!qv9%F-@S1FVsMzYg<97FU2&p>BQ*WC?7|M!EbLQ zo54)Q^X9xWC>9Koe#l+PByQx#rLugDNKAG?>xF5J0TBU40ZsKu@@^ifZ~`lC-j*W< z$+vHpkeJrjgl$k|f#IS^_R|bz082LQ*s*ChGtb-*TS_$T&B&q#JC)ViFSi#JQec-) z=dI1N;(s>XW z$}!(PP>oP0EnHb=HAEsMsZCkWt|L4|e^5&sGywT#ZnH(4QHs8ngly?8+q@+Cy`46p zSum7eu`6LKtkxg`glD(B!O8$Z;woDcRAnMB?Sr}LR;ZKx8@6_s`#hT#UXx!<_ZTGQ z@%>QpcBq<&94ihf^sLaBE%40PPP#lmAo~WB!>BMhA0BL%KT$!G+nxe(d)l&*2%SIx z?kQDZ{+dEavx%o64J6}?GLcgzDtr$N{i-Ph0y*NuJ-DNmqi&?H6b6P*7)sOh*gX4L z-E#iYE)14|Hv2`UEr+BCFVX%)6;+p4$rdL@qF_)ytIPvK(b0lJD%agTTXU8=WQa?v zRkc|=fYJ)Yw!|D>745Tzt!%a`=M~-Rb!4QP6iDrtZt7G2Y0A^a2K6`h<`JtFr;UKU z#lafYs8MqxiQY4#&&bG!!Cb5)?5Wnu?>Awj3dR`gNi*Y|p!ZEWS#(GZ#rdaK#*u0u z?ovaWIK-qF4jPQ0VQDQ)6RfD@Llqmc3ZElwcVMrDb9!gAh2|s3(CObGlx$&G5n@op zHMve$&NXJdQ%f74vkU8L94*r@X*n>38c}L#DkTFI(1d>EC8;a&q|lodB~IqQ4H@o_ z5rQ$A27r#?UMq5*Og}}#+(*DLwvAY}_T*HG`r{u1Cc=kirD$9C7ZLXtEQ123qGN!CPmY;00{IRWV9JWcrpkmQk#uoOd>ZJnNc>QFM!b~uk zta=Di-d&dk!Gf=7YZ^3(V7&JZn`gYvXaU(bSb1ELcFG2K?66LLbm^FOmbg`!JWdnM z-PRhr@Z>&54aE)%vpP3?5c8-k;v%0+%@>1Vo+mMER~c5C8^|!xseF&@q)=o8y3p$K zrBFMVifR9-Ey$VuC{oalG<&Echiz}~Em`hASZ3{o!jv&3&F&T%tVc>G=1H8UU}c?X zV5QE|L7I9~S%?>w*2~(|nRXJ2P~_!ljY2{(xj8J}Be6@i6vF zB6mL3&_s$|HpfAAwrZMavd>s8ohmIsSX*-JQdwAo$?|S*5mgwZmm~8_bI0f>Z0XBR z#)fi*TH%v3C~PW#2nV-9r0rS?=~xJ*e-HF|3o1|u%!G_@<8_&2R3OY&`O9YThR1@v zmUed0ytw$h#I8%S3wr{7TY;Mj_#FjKpCyjH_^iUNUD=%hMz%{c&VKs%a4x5V;n+mv8;HCq22}% zfP;M5YZsFiU}PIVX$L&RIlu49mI8btN8Jx}1 zopmVY9`*z;=}(YdH`0e6db%6(zTf*P z2V*dIWie)+mY@9aB)^{LS_m-cWlS!e_^K;NZ&!AALKJ`No+O6ilI*6DCV$V<*yqM% z6-5U8Z~hM4RKPl@MHjf~fFI?ev_X_Y2(K zfPYxvW&(buz)c7IqXIV-@J|Zdo`BzRX;E*2ioenSzw!1$00Bm}@dOYVpUg8Z1$d3O z0T~zI8@vfg7{*i7Fh&@D&WrtVUi`gJc(Gr|i$5FS*Bv!h7=Fcz(9gi?k}wSTTaHV@ zFrIWes4m1nfKfRV{9~`IX#EILf7=WAuHQ$5VZ3<86TFZxJmz&iocI0S%Y8^=Fvp0s zNc{(Su7v=DUdH5lucr>u8zT&L28ym2igCj5fVWRS`>IQv74XplHx=;l0yiD-PaS8% zFdm-kOBnFa3fxq{KQC~50{%sRfvH`^-)Qj>PXsRn_@_DQY=BYJc=lNF3_1#57xFQ{ zuji-{Y4mx2^~F5NLV(dL2ynPFW29=-@$I6Z0At9IkD~>Rv`F9h>bfNE%woWo7PzT^ zuPAWS0bg0*W&*yd!0ioq&TVJO$AAwPxV-@%DR46ZA1iRv0pC&JrUG6laC-v&Sb-Zc z7Nh^ydV8UX03+LY0*H*$dB&vxAIMSn1o#1OLXwa16g7;IkFWJIj^}0FdySXz2ERiV z0p8-MvGVcFUc^4XOFjmCo8yvvjHknSrFRDyl~d_)udHbOh>#N#M-JiBL;Jfq>I%5k>^?nFz97WuJ3s2AiXj2@l9TL48=J4_?V}8((jUw z0l)D@&UM*^nSf^t+=w3%f9$FMv&a?T8}eKucK6l(>ScM7h19O%@3sEwEt8Y%^H=-*uE7pi$Gz(UHx=;h z1#UXv-zac10l&S#?G5+=pB{;^fHw==-hjIWZYJQZ0yiD-c7dA;_+o+E6Yy6G+=v*9 z{vY=CLLdP~w($fK8IR=|mjZk|N8J;kPF2>G#8^B<4P(UEDKF!_d0F?q+sjz=I}#