From e4921b9bc6cbc6576c7a67300739868c817bed2d Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Sat, 18 Jul 2015 10:46:01 +0930 Subject: [PATCH] Add documentation. First up, a draft of a paper showing the differences between the LN draft and this. Signed-off-by: Rusty Russell --- Makefile | 8 + doc/.gitignore | 7 + doc/bitcoin.bib | 64 ++ doc/commit-tx.eps | 581 ++++++++++ doc/commit-tx.svg | 494 +++++++++ doc/deployable-lightning.lyx | 1963 ++++++++++++++++++++++++++++++++++ doc/deployable-lightning.pdf | Bin 0 -> 253625 bytes doc/dual-anchor-diag1.eps | 466 ++++++++ doc/dual-anchor-diag1.svg | 527 +++++++++ doc/dual-anchor-diag2.eps | 637 +++++++++++ doc/dual-anchor-diag2.svg | 795 ++++++++++++++ doc/dual-anchor-diag3.eps | 806 ++++++++++++++ doc/dual-anchor-diag3.svg | 813 ++++++++++++++ doc/dual-anchor-diag4.eps | 818 ++++++++++++++ doc/dual-anchor-diag4.svg | 823 ++++++++++++++ doc/dual-anchor-final.eps | 911 ++++++++++++++++ doc/dual-anchor-final.svg | 1027 ++++++++++++++++++ doc/dual-anchor-take2.svg | 847 +++++++++++++++ doc/dual-anchor.svg | 592 ++++++++++ doc/htlc.eps | 667 ++++++++++++ doc/htlc.svg | 596 +++++++++++ 21 files changed, 13442 insertions(+) create mode 100644 doc/.gitignore create mode 100644 doc/bitcoin.bib create mode 100644 doc/commit-tx.eps create mode 100644 doc/commit-tx.svg create mode 100644 doc/deployable-lightning.lyx create mode 100644 doc/deployable-lightning.pdf create mode 100644 doc/dual-anchor-diag1.eps create mode 100644 doc/dual-anchor-diag1.svg create mode 100644 doc/dual-anchor-diag2.eps create mode 100644 doc/dual-anchor-diag2.svg create mode 100644 doc/dual-anchor-diag3.eps create mode 100644 doc/dual-anchor-diag3.svg create mode 100644 doc/dual-anchor-diag4.eps create mode 100644 doc/dual-anchor-diag4.svg create mode 100644 doc/dual-anchor-final.eps create mode 100644 doc/dual-anchor-final.svg create mode 100644 doc/dual-anchor-take2.svg create mode 100644 doc/dual-anchor.svg create mode 100644 doc/htlc.eps create mode 100644 doc/htlc.svg diff --git a/Makefile b/Makefile index 3d7293d85..2a5587309 100644 --- a/Makefile +++ b/Makefile @@ -46,6 +46,12 @@ $(CCAN_OBJS) $(HELPER_OBJS) $(PROGRAM_OBJS) $(BITCOIN_OBJS): ccan/config.h ccan/config.h: ccan/tools/configurator/configurator $< > $@ +doc/deployable-lightning.pdf: doc/deployable-lightning.lyx doc/bitcoin.bib + lyx -E pdf $@ $< + +doc/deployable-lightning.tex: doc/deployable-lightning.lyx + lyx -E latex $@ $< + update-ccan: mv ccan ccan.old DIR=$$(pwd)/ccan; cd ../ccan && ./tools/create-ccan-tree -a $$DIR `cd $$DIR.old/ccan && find * -name _info | sed s,/_info,, | sort` $(CCAN_NEW) @@ -58,10 +64,12 @@ update-ccan: distclean: clean $(RM) lightning.pb-c.c lightning.pb-c.h ccan/config.h + $(RM) doc/deployable-lightning.pdf clean: $(RM) $(PROGRAMS) test-cli/leak-anchor-sigs $(RM) bitcoin/*.o *.o $(CCAN_OBJS) + $(RM) doc/deployable-lightning.{aux,bbl,blg,dvi,log,out,tex} ccan-tal.o: $(CCANDIR)/ccan/tal/tal.c $(CC) $(CFLAGS) -c -o $@ $< diff --git a/doc/.gitignore b/doc/.gitignore new file mode 100644 index 000000000..4a4d6a756 --- /dev/null +++ b/doc/.gitignore @@ -0,0 +1,7 @@ +*.aux +*.bbl +*.blg +*.dvi +*.log +*.out +*.tex diff --git a/doc/bitcoin.bib b/doc/bitcoin.bib new file mode 100644 index 000000000..57bb67b02 --- /dev/null +++ b/doc/bitcoin.bib @@ -0,0 +1,64 @@ +@InProceedings{Decker2015Making, + author = {Christian Decker and James Guthrie and Jochen Seidel and Roger Wattenhofer}, + note = {\tt decker@ethz.ch and wattenhofer@ethz.ch}, + title = {{Making Bitcoin Exchanges Transparent}}, + booktitle = {{20th European Symposium on Research in Computer Security (ESORICS), Vienna, Austria}}, + month = {September}, + year = {2015} +} +@misc{Poon2015Lightning, + author = {Joseph Poon and Thaddeus Dryja}, + title = {The Bitcoin Lightning Network DRAFT Version 0.5}, + note = {\url{http://lightning.network/lightning-network-paper-DRAFT-0.5.pdf}}, + year = {2015}, + urldate = {2015-02-28} +} +@misc{nakamoto2008bitcoin, + title={{Bitcoin: A peer-to-peer electronic cash system}}, + author={Nakamoto, Satoshi}, + year={2008} +} +@misc{BitcoinChannels, + title = {{Rapidly-adjusted (micro)payments to a pre-determined party}}, + urldate = {2015-07-13}, + note = {\url{https://en.bitcoin.it/wiki/Contract#Example_7:_Rapidly-adjusted_.28micro.29payments_to_a_pre-determined_party}} + } +@article{DBLP:journals/corr/DeckerW14, + author = {Christian Decker and + Roger Wattenhofer}, + title = {Bitcoin Transaction Malleability and MtGox}, + journal = {CoRR}, + volume = {abs/1403.6676}, + year = {2014}, + url = {http://arxiv.org/abs/1403.6676}, + timestamp = {Tue, 01 Apr 2014 11:56:46 +0200}, + biburl = {http://dblp.uni-trier.de/rec/bib/journals/corr/DeckerW14}, + bibsource = {dblp computer science bibliography, http://dblp.org} +} +@misc{BIP62, + author = { Pieter Wuille }, + title = { Dealing with malleability }, + urldate = {2015-07-13}, + note = {\url{https://github.com/bitcoin/bips/blob/master/bip-0062.mediawiki}} +} +@misc{BIP65, + author = { Peter Todd }, + title = {{OP\_CHECKLOCKTIMEVERIFY}}, + urldate = {2015-07-13}, + note = {\url{https://github.com/bitcoin/bips/blob/master/bip-0065.mediawiki}} +} +@misc{friedenbach_bitcoin-development_2015, + title = {[Bitcoin-development] [{BIP} draft] Consensus-enforced transaction replacement signalled via sequence numbers}, + note = {\url{http://lists.linuxfoundation.org/pipermail/bitcoin-dev/2015-June/008452.html}}, + type = {E-mail}, + author = {Friedenbach, Mark}, + urldate = {2015-07-13}, + date = {2015-06-02} +} +@misc{nolan_alt, + title = {Alt chains and atomic transfers}, + note = {\url{https://bitcointalk.org/index.php?topic=193281.msg2224949#msg2224949}}, + author = {Nolan, Tier}, + urldate = {2015-07-14}, + file = {Alt chains and atomic transfers:/home/rusty/.mozilla/firefox/vfn6if9k.default/zotero/storage/PEHK469N/index.html:text/html} +} diff --git a/doc/commit-tx.eps b/doc/commit-tx.eps new file mode 100644 index 000000000..1e00f4e1b --- /dev/null +++ b/doc/commit-tx.eps @@ -0,0 +1,581 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Fri Jul 17 17:03:11 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 75 179 475 425 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 45 /hyphen put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 71 /G put +Encoding 73 /I put +Encoding 78 /N put +Encoding 79 /O put +Encoding 80 /P put +Encoding 82 /R put +Encoding 83 /S put +Encoding 84 /T put +Encoding 86 /V put +Encoding 95 /underscore put +Encoding 105 /i put +Encoding 109 /m put +Encoding 111 /o put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 23 dict dup begin +/.notdef 0 def +/C 1 def +/o 2 def +/m 3 def +/i 4 def +/t 5 def +/T 6 def +/x 7 def +/space 8 def +/A 9 def +/B 10 def +/S 11 def +/I 12 def +/G 13 def +/ampersand 14 def +/R 15 def +/E 16 def +/V 17 def +/O 18 def +/N 19 def +/hyphen 20 def +/P 21 def +/underscore 22 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d3900000ffc000001fe6670676d7134766a0000 +11fc000000ab676c7966476f57940000009c00000f6068656164026638f7000012a800000036 +686865610cb80668000012e000000024686d74786f850a45000013040000005c6c6f63610000 +b77c00001360000000606d61787004840671000013c000000020707265703b07f100000013e0 +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900010073 +ffe3052705f000190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a +10fcec32ec310010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e012320001110002132 +3637150e01232000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a01 +86015386ed0562d55f5efec7fed8fed9fec75e5fd34848019f01670168019f47000000020071 +ffe30475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec +310010e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f +117b12a019f01911015d012206151416333236353426273200111000232200111000027394ac +ab9593acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec70139 +0113011401380000000100ba0000071d047b0022005a4026061209180f00061d07150c871d20 +03b81bbc19100700110f0808065011080f501c18081a462310fcec32fcfcfcec11123931002f +3c3ce4f43cc4ec32111217393040133024502470249024a024a024bf24df24ff2409015d013e +013332161511231134262322061511231134262322061511231133153e01333216042945c082 +afbeb972758fa6b972778da6b9b93fb0797aab03897c76f5e2fd5c029ea19cbea4fd87029ea2 +9bbfa3fd870460ae67627c000000000200c100000179061400030007002b400e06be04b100bc +020501080400460810fc3cec3231002fe4fcec30400b1009400950096009700905015d133311 +2311331523c1b8b8b8b80460fba00614e90000010037000002f2059e0013003840190e05080f +03a9001101bc08870a0b08090204000810120e461410fc3cc4fc3cc432393931002fecf43cc4 +ec3211393930b2af1501015d01112115211114163b01152322263511233533110177017bfe85 +4b73bdbdd5a28787059efec28ffda0894e9a9fd202608f013e0000000001fffa000004e905d5 +0007004a400e0602950081040140031c0040050810d4e4fce431002ff4ec3230014bb00a5458 +bd00080040000100080008ffc03811373859401300091f00100110021f071009400970099f09 +095d03211521112311210604effdeecbfdee05d5aafad5052b000001003b000004790460000b +014340460511060706041103040707060411050401020103110202010b110001000a11090a01 +01000a110b0a0708070911080807420a070401040800bf05020a0704010408000208060c10d4 +4bb00a544bb00f545b4bb010545b4bb011545b58b90006004038594bb0145458b90006ffc038 +59c4d4c411173931002f3cec321739304b5358071005ed071008ed071008ed071005ed071005 +ed071008ed071008ed071005ed59220140980a04040a1a04150a260a3d04310a55045707580a +660a76017a047607740a8d04820a99049f049707920a900aa601a904af04a507a30aa00a1c0a +03040505090a0b1a03150515091a0b2903260525092a0b200d3a013903370534073609390b30 +0d4903460545094a0b400d590056015902590357055606590756085609590b500d6f0d78017f +0d9b019407ab01a407b00dcf0ddf0dff0d2f5d005d09022309012309013309010464fe6b01aa +d9febafebad901b3fe72d9012901290460fddffdc101b8fe48024a0216fe71018f0000020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000300c9000004ec05d50008001100200043 +40231900950a0995128101950aad1f110b080213191f05000e1c1605191c2e09001c12042110 +fcec32fcecd4ec111739393931002fececf4ec10ee3930b20f2201015d011121323635342623 +01112132363534262325213216151406071e01151404232101930144a39d9da3febc012b9491 +9194fe0b0204e7fa807c95a5fef0fbfde802c9fddd878b8c850266fe3e6f727170a6c0b189a2 +1420cb98c8da00010087ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f +1f1e420a0b1e1f0415010015a11494189511049500942591118c281e0a0b1f1b0700221b190e +2d071914222810dcc4ecfcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b53 +5807100eed11173907100eed1117395922b20f2901015db61f292f294f29035d01152e012322 +061514161f011e0115140421222627351e013332363534262f012e01353424333216044873cc +5fa5b377a67ae2d7feddfee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663 +651f192bd9b6d9e0302fd04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003 +002eb700af02011c00040410fc4bb0105458b9000000403859ec31002fec3001400d30054005 +500560058f059f05065d13331123c9caca05d5fa2b0000010073ffe3058b05f0001d00394020 +00051b0195031b950812a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fc +c4310010e4f4ecf4ec10fed4ee11393930251121352111060423200011100021320417152e01 +23200011100021323604c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed +011301126ba8d50191a6fd7f53550199016d016e01994846d75f60fecefed1fed2fece250000 +00020081ffe305fe05f00009003001cd40960d010e0c861112110b860a0b1212110986000915 +1615070106088616161502010301861d1e1d008609001e1e1d201f02211e110a130a17161503 +181411130a07080206091113130a0201020300110a130a171602181511130a141113130a4212 +0b090306000a1e0328150e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e +1e032e1227210e110f132103121b103110fcecc4d4d4ec10c6ee113911123939113939113911 +3931002fc6e4f6e6ee10ee10c6111239111739111739304b5358071005ed0705ed1117390710 +05ed111739071005ed1117390705ed111739071005ed111739071008ed07100eed1117390710 +0eed111739071008ed071008ed07100eed1117395922b20f3201015d40b2070b052209291c00 +1c011f02170b2a002a0126123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b00 +9a0199029708950b931595169522992d1f090b090c08110c270c2818021b09190b190c19111c +141c15161d1f3227002701290923122a132a1428152f323b09341239133f324a094c144b1546 +194f3256015a09590c551259135c1f5f326a0c691160327501790c7a1193009301970295059c +079c089f089a099b0b9a0c9032a032b032395d005d010e011514163332363709013e01373306 +02070123270e01232200353436372e0135343633321617152e0123220615141601f25b55d4a0 +5fa649fe7b01fc3b4206ba0c685d0117fc8f68e483f1fece86863032deb853a555579e446983 +3b032351a15892c23f40028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c524 +24b62f316f583367000200c90000055405d50013001c00b14035090807030a06110304030511 +0404034206040015030415950914950d810b040506031109001c160e050a191904113f140a1c +0c041d10fcec32fcc4ec1117391139393931002f3cf4ecd4ec123912391239304b5358071005 +ed071005ed1117395922b2401e01015d40427a13010500050105020603070415001501140216 +03170425002501250226032706260726082609201e3601360246014602680575047505771388 +068807980698071f5d005d011e01171323032e012b0111231121201615140601113332363534 +2623038d417b3ecdd9bf4a8b78dcca01c80100fc83fd89fe9295959202bc16907efe68017f96 +62fd8905d5d6d88dba024ffdee8783838500000100c90000048b05d5000b002e401506950402 +950081089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01 +015d132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa0000 +000100100000056805d5000600b7402704110506050311020306060503110403000100021101 +010042030401af0006040302000505010710d4c4173931002fec3239304b5358071005ed0710 +08ed071008ed071005ed5922b2500801015d406200032a03470447055a037d03830307060007 +0208040906150114021a041a052a002601260229042905250620083800330133023c043c0537 +06480045014502490449054706590056066602690469057a0076017602790479057506800898 +009706295d005d21013309013301024afdc6d301d901dad2fdc705d5fb1704e9fa2b00020073 +ffe305d905f0000b00170023401306951200950c91128c1809190f33031915101810fcecfcec +310010e4f4ec10ee300122001110003332001110002720001110002120001110000327dcfefd +0103dcdc0101feffdc013a0178fe88fec6fec5fe870179054cfeb8fee5fee6feb80148011a01 +1b0148a4fe5bfe9efe9ffe5b01a40162016201a50000000100c90000053305d500090079401e +071101020102110607064207020300af0805060107021c0436071c00040a10fcecfcec113939 +31002f3cec323939304b5358071004ed071004ed5922b21f0b01015d40303602380748024707 +690266078002070601090615011a06460149065701580665016906790685018a0695019a069f +0b105d005d13210111331121011123c901100296c4fef0fd6ac405d5fb1f04e1fa2b04e1fb1f +0001006401df027f028300030011b6009c020401000410dccc310010d4ec301321152164021b +fde50283a400000200c90000048d05d500080013003a40180195100095098112100a08020400 +05190d3f11001c09041410fcec32fcec11173931002ff4ecd4ec30400b0f151f153f155f15af +1505015d011133323635342623252132041514042b0111230193fe8d9a9a8dfe3801c8fb0101 +fefffbfeca052ffdcf92878692a6e3dbdde2fda80001ffecfe1d0414feac0003000fb500a901 +00020410c4c43100d4ec30011521350414fbd8feac8f8f000000013500b800cb00cb00c100aa +009c01a600b800660000007100cb00a002b20085007500b800c301cb0189022d00cb00a600f0 +00d300aa008700cb03aa0400014a003300cb000000d9050200f4015400b4009c013901140139 +07060400044e04b4045204b804e704cd0037047304cd04600473013303a2055605a605560539 +03c5021200c9001f00b801df007300ba03e9033303bc0444040e00df03cd03aa00e503aa0404 +000000cb008f00a4007b00b80014016f007f027b0252008f00c705cd009a009a006f00cb00cd +019e01d300f000ba018300d5009803040248009e01d500c100cb00f600830354027f00000333 +026600d300c700a400cd008f009a0073040005d5010a00fe022b00a400b4009c00000062009c +0000001d032d05d505d505d505f0007f007b005400a406b80614072301d300b800cb00a601c3 +01ec069300a000d3035c037103db0185042304a80448008f0139011401390360008f05d5019a +0614072306660179046004600460047b009c00000277046001aa00e904600762007b00c5007f +027b000000b4025205cd006600bc00660077061000cd013b01850389008f007b0000001d00cd +074a042f009c009c0000077d006f0000006f0335006a006f007b00ae00b2002d0396008f027b +00f600830354063705f6008f009c04e10266008f018d02f600cd03440029006604ee00730000 +140000960000b707060504030201002c2010b002254964b040515820c859212d2cb002254964 +b040515820c859212d2c20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0 +042523e120b00050b00d7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b0fd45 +4459212d2cb002254560442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b002 +2549b00525b005254960b0206368208a108a233a8a10653a2d00000100000002570a0e576762 +5f0f3cf5001f080000000000cef5cb7600000000cef5cb76f7d6fcae0d720955000000080000 +00010000000000010000076dfe1d00000de2f7d6fa510d720001000000000000000000000000 +0000001704cd00660596007304e5007107cb00ba023900c10323003704e3fffa04bc003b028b +000005790010057d00c905140087025c00c906330073063d0081058f00c9050e00c905790010 +064c007305fc00c902e3006404d300c90400ffec0000000000000044000000dc000001800000 +0244000002940000031000000380000005040000050400000600000006b0000007a8000007f0 +0000089800000b0000000c1400000c7400000d5400000de000000e8800000eb400000f340000 +0f600001000000170354002b0068000c000200100099000800000415021600080004b8028040 +fffbfe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f32503f20e03f19603f02503ef +8a4105effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e84203e7fe03e63203e5e45305e5 +9603e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df3203de1403dd9603dcfe03db +1203da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d44703d3d21b05d3fe03d21b03 +d1fe03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca3203c9fe03c6851105c61c03 +c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe03bcfe03bbfe03ba1103b986 +2505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505b65d40ff03b64004b52503b4 +fe03b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab2505ac6403abaa1205ab2503aa +1203a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a20e05a33203a20e03a16403a0 +8a4105a096039ffe039e9d0c059efe039d0c039c9b19059c64039b9a10059b19039a1003990a +0398fe0397960d0597fe03960d03958a410595960394930e05942803930e0392fa039190bb05 +91fe03908f5d0590bb039080048f8e25058f5d038f40048e25038dfe038c8b2e058cfe038b2e +038a8625058a410389880b05891403880b03878625058764038685110586250385110384fe03 +8382110583fe0382110381fe0380fe037ffe0340ff7e7d7d057efe037d7d037c64037b541505 +7b25037afe0379fe03780e03770c03760a0375fe0374fa0373fa0372fa0371fa0370fe036ffe +036efe036c21036bfe036a1142056a530369fe03687d036711420566fe0365fe0364fe0363fe +0362fe03613a0360fa035e0c035dfe035bfe035afe0359580a0559fa03580a03571619055732 +0356fe035554150555420354150353011005531803521403514a130551fe03500b034ffe034e +4d10054efe034d10034cfe034b4a13054bfe034a4910054a1303491d0d05491003480d0347fe +0346960345960344fe0343022d0543fa0342bb03414b0340fe033ffe033e3d12053e14033d3c +0f053d12033c3b0d053c40ff0f033b0d033afe0339fe033837140538fa033736100537140336 +350b05361003350b03341e03330d0332310b0532fe03310b03302f0b05300d032f0b032e2d09 +052e10032d09032c32032b2a25052b64032a2912052a25032912032827250528410327250326 +250b05260f03250b0324fe0323fe03220f03210110052112032064031ffa031e1d0d051e6403 +1d0d031c1142051cfe031bfa031a42031911420519fe031864031716190517fe031601100516 +190315fe0314fe0313fe031211420512fe0311022d05114203107d030f64030efe030d0c1605 +0dfe030c0110050c16030bfe030a100309fe0308022d0508fe030714030664030401100504fe +03401503022d0503fe0302011005022d0301100300fe0301b80164858d012b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%BeginResource: font DejaVuSans-Bold +11 dict begin +/FontType 42 def +/FontName /DejaVuSans-Bold def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 79 /O put +Encoding 82 /R put +/CharStrings 3 dict dup begin +/.notdef 0 def +/O 1 def +/R 2 def +end readonly def +/sfnts [ +<000100000009008000030010637674203eb9310800000268000002546670676d5b026bf00000 +04bc000000ac676c7966581f41560000009c000001cc68656164045e38fb0000056800000036 +686865610eaf0774000005a000000024686d747811c30188000005c40000000c6c6f63610000 +02f8000005d0000000106d6178700648062d000005e000000020707265707c61a2e700000600 +000007a700020066fe96046605a400030007001fbc00040126000000060126b6010805890204 +002fc4d4ec310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f27206 +2900000000020066ffe3066605f0000b00170032401306ae1200ae0c9c129818092d0f37032d +152b1810fcecfcec310010e4f4ec10ee30400b0019171310192f193f1905015d012202151412 +3332123534020320001110002120001110000366b0c2c2b0b1c2c2b101680198fe68fe98fe99 +fe67019904d9fefcecebfefc0104ebec01040117fe64fe95fe96fe64019c016a016b019c0000 +000200bc0000060005d50008001c008740321b1a021c191d161716181d1717162519160a1300 +ae0906ae0c8d170a16131803101c190600040d07031617100907160b031d10fcec32d4c4ec11 +39173911173931002f3cf4ecd4ec39123939304b5358071005ed071005ed1117395922b2181c +01015d401f1b181b191a1a1b1b1a1c361536164515451656155616501e65156516601e0f5d01 +32363534262b0119022111212004151406071e01171321032e012302df79696979a2fe7f024c +012701138f904f7d40d1fe66b637715e033f5a676658fe81fef6fdcb05d5c6d694be2d127f81 +fe5801737052000001660133016600bc00e90000013d00a200fa031f00020002006601660002 +000200ac015400ec00bc006201660181048501540166016d04a400020166007f04cd00000002 +0133006200710000002504a401bc00ba00e500660181018d0548055a0166016d000000000002 +000200f605c301f0053902390058046d043d04b2048104b2016601750466048100b004660439 +02d1049c047b04cf047b005801330166014c0166014c000200ac009a014a0123009a029a0144 +0119014402cd00c100000166013f019a013b05cb05cb00d500d5015000ac00ac0077020a01c7 +01f2012f015801b2012300f600f6011f012f0135023501ee01e70133009800d10358050a009a +008f0112009800bc00cd00e500e500f2007304000166008f05d5022b05d500c300e100d700e5 +0000006a01020000001d032d05d505d505f000a8006a00ec00e1010205d506140721046602f8 +00ec018302a602f80123010201020112011f031f005e03cd046004c7048900ec01bc00ba0102 +0333031f03420333035c0112011f05d5019a009a00e106660179046004600460047b000000ec +02c302b802cd00be00dd00d50000006a025c027b029a00dd01ae01ba01120000008501ae0460 +0762041b009a069a045800ee009a029a00d102cd019a015005cb05cb008b008b063100f60406 +00f0034c016004a800c10000002505c101000121074a06120096014a078300a800000337007b +0014000000c9010005c105c105c105c101000108061d00960427039e00ec0102027d01330098 +00d10358017900cd02390362009c009c009c009301b8009300b80073000014000326b7070605 +04030201002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c +20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d +7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b80128454459212d2cb0022545 +60442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0052549 +60b0206368208a108a233a8a10653a2d000100000002570aca280dd25f0f3cf5001f08000000 +0000cef5cb7000000000cef5cb70f772fcae0fcd096500010008000000010000000000010000 +076dfe1d00001021f772f9320fcd00010000000000000000000000000000000304cd006606cd +0066062900bc000000000000004c000000e0000001cc000100000003034e002b0078000c0002 +001000400008000005ed02210008000441840280012600fe000301250011000301240121003a +0005012400fa000301230016000301220121003a0005012200fe00030121003a0003012000fa +0003011f00bb0003011e00640003011d00fe0003011c00190003011b001e0003011a00fe0003 +011900fe0003011800fe0003011700fe0003011600fe000301150114000e0005011500fe0003 +0114000e0003011300fe0003011200fe0003010f010e007d0005010f00fe0003010e007d0003 +010d010c008c0005010d00fe0003010d00c00004010c010b00590005010c008c0003010c0080 +0004010b010a00260005010b00590003010b00400004010a00260003010900fe0003010800fe +00030107000c00030107008000040106b2972e054113010600fa0003010500fa0003010400fe +0003010300190003010200fa0003010100fa0003010040ff7d03ff3e03fefe03fcfb2c05fcfe +03fb2c03fafe03f9f84705f97d03f84703f7fa03f6fe03f5fe03f4fe03f3bb03f2fe03f1fe03 +f0fe03ef1e03eefe03edec0a05edfe03ec0a03ec4004ebea0a05eb3203ea0a03e9fa03e89116 +05e8fe03e7fa03e6fa03e5911605e5fe03e4fe03e3fe03e2fe03e1fe03e0fe03dffe03defa03 +dddc1805dd6403dc1803dba01e05db6403dad92505dafa03d92503d8d12505d8fa03d7d61405 +d71603d6d51005d61403d51003d4d30b05d42003d30b03d2d12505d2fa03d1911605d12503d0 +940c05d02303cfce1405cf2603cecd1205ce1403cd1203cc911605cc1d03cb1403cac9bb05ca +fe03c9c85d05c9bb03c98004c840ffc72505c85d03c84004c72503c6fe03c56403c4901005c4 +fe03c31c03c2fe03c1fe03c0bf3a05c0fa03bfad1b05bf3a03bebd1a05be3203bdbc1105bd1a +03bcbb0f05bc1103bbba0c05bb0f03ba0c03b9911605b9fe03b8fe03b71503b61203b5fe03b4 +fe03b3fe03b21703b11903b01603afad1b05affa03aead1b05aefa03ad911605ad1b03ac9116 +05ac7d03abfe03aa2603a9fe03a8fe03a7fe03a6fe03a50a03a4fe03a3a20e05a3fe03a20e03 +a24004a1a01e05a1fa03a0911605a01e039f9116059ffa039e940c059e1c039dfe039c9bbb05 +9cfe039b9a5d059bbb039b80049a8f25059a5d039a400499fe0398972e0598fe03972e039691 +1605961e40ff0395940c05952003940c0393911605934b039291160592fe0391901005911603 +9010038f25038efe038dfe038cfe038bfe038afe0389fe038887250588fe0387250386fe0385 +fe0384320383960382fe0381fe038019037f0a037efe037dfe037cfe037bfa037afa0379fe03 +7776a60577fe0376a60375741b0575fa03741b0373fa03727d0371fe03706f2c056f2c036efa +036dfa036cfa036bfe036afe0369fe0368630c0568320367fe0366320365640a0565fe03640a +0364400463620a05630c03620a0361601505619603600111056015035f0a035efe035dfe035c +0111055cfe035b5a1b055bfe035a0111055a1b0359fe0358fa0357fe035601110540ff56fe03 +55fe03541e035314035251190552fa0351011105511903504f190550fa034f4e11054f19034e +11034d1e034c4b14054c15034b4a11054b14034a490e054a1103490e0348fa03474614054715 +0346140345fa0344430e05440f03430e034241250542fa0341011105412503403f0f0540fe03 +3f3e0e053f0f033e0e033d3c0d053d16033c0d033b64033afe0339140338fe0337130336351a +0536250335341405351a0335c004340a0d0534140334800433320c05331403334004320c0331 +30a60531fe033001110530a6032f0c032e13032d2c3a052dfa032c1525052c3a032b64032a64 +0329fe0328150327171105271e03262003251e0324231105402b241e0323110322000d0522fa +03210f032140042014031f0a031e1e031d1c19051d25031c0f13051c19031cb801004091041b +0d031a194b051a7d0319011105194b0318fe031711031615250516fa03150111051525031464 +0313110312fe031101110511fe031064030f0e10050f13030fc0040e10030e80040d0111050d +fa030c32030b0a0d050b16030b80040a0d030a400409fe0308fe0307fe0306050a0506fe0305 +0a0305400404fa030364030201110502fe0301000d05011103000d0301b80164858d012b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d0000> +] def +/f-1-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 75 179 475 425 +%%EndPageSetup +q 75 179 400 246 rectclip q +0 g +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +137.555 66.457 96 80 re S Q +BT +17.6 0 0 17.6 150.69448 331.751667 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 25.652 m 178.293 25.078 l 178.293 65.078 l S Q +178.293 376.818 m 175.094 380.017 l 178.293 368.818 l 181.492 380.017 l + h +178.293 376.818 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-57.078 178.293 m -53.879 175.094 l -65.078 178.293 l -53.879 181.492 l + h +-57.078 178.293 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +315.172 67.43 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 330.78111 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 34.363 m 297.879 47.617 287.133 58.363 273.879 58.363 c 260.621 + 58.363 249.879 47.617 249.879 34.363 c 249.879 21.109 260.621 10.363 273.879 + 10.363 c 287.133 10.363 297.879 21.109 297.879 34.363 c h +297.879 34.363 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 10.363 m 273.879 58.363 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 34.363 m 297.879 34.363 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 41.652 m 194.293 41.652 l 194.293 65.078 l S Q +194.293 376.818 m 191.094 380.017 l 194.293 368.818 l 197.492 380.017 l + h +194.293 376.818 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-57.078 194.293 m -53.879 191.094 l -65.078 194.293 l -53.879 197.492 l + h +-57.078 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 25.652 m 368.883 25.078 l 368.887 65.078 l S Q +368.887 376.818 m 365.684 380.017 l 368.887 368.818 l 372.086 380.017 l + h +368.887 376.818 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-57.078 368.887 m -53.879 365.684 l -65.078 368.887 l -53.879 372.086 l + h +-57.078 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 41.652 m 352.883 41.652 l 352.887 65.078 l S Q +352.887 376.818 m 349.684 380.017 l 352.887 368.818 l 356.086 380.017 l + h +352.887 376.818 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-57.078 352.887 m -53.879 349.684 l -65.078 352.887 l -53.879 356.086 l + h +-57.078 352.887 m S Q +BT +12 0 0 12 154.199851 353.916559 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +154.352 146.453 m 154.48 162.617 l 98.852 162.617 l 98.852 186.047 l S Q +98.852 255.849 m 95.648 259.053 l 98.852 247.849 l 102.051 259.053 l h +98.852 255.849 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-178.047 98.852 m -174.844 95.648 l -186.047 98.852 l -174.844 102.051 +l h +-178.047 98.852 m S Q +BT +12 0 0 12 74.360245 239.841376 Tm +/f-0-0 1 Tf +(SIG B)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +186.359 146.055 m 186.359 202.055 l S Q +186.359 239.842 m 183.16 243.041 l 186.359 231.842 l 189.559 243.041 l +h +186.359 239.842 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-194.055 186.359 m -190.855 183.16 l -202.055 186.359 l -190.855 189.559 + l h +-194.055 186.359 m S Q +BT +12 0 0 12 98.003489 217.457611 Tm +/f-0-0 1 Tf +[(REV)17(OCA)77(TION-)21(A & SIG B)]TJ +/f-1-0 1 Tf +5.02832 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.206055 -1.25 Td +[(OP_CSV & SIG A)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.176 146.453 m 403.047 162.617 l 458.676 162.617 l 458.676 186.047 l + S Q +458.676 255.849 m 455.477 259.053 l 458.676 247.849 l 461.879 259.053 l + h +458.676 255.849 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-178.047 458.676 m -174.844 455.477 l -186.047 458.676 l -174.844 461.879 + l h +-178.047 458.676 m S Q +BT +12 0 0 12 441.962302 234.992646 Tm +/f-0-0 1 Tf +(SIG A)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +361.629 149.289 m 361.629 205.289 l S Q +361.629 236.607 m 358.43 239.81 l 361.629 228.607 l 364.828 239.81 l h +361.629 236.607 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-197.289 361.629 m -194.086 358.43 l -205.289 361.629 l -194.086 364.828 + l h +-197.289 361.629 m S Q +BT +12 0 0 12 331.539304 213.416986 Tm +/f-0-0 1 Tf +[(REV)17(OCA)77(TION-)34(B & SIG A)]TJ +/f-1-0 1 Tf +5.021484 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.207031 -1.25 Td +[(OP_CSV & SIG B)]TJ +ET +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/commit-tx.svg b/doc/commit-tx.svg new file mode 100644 index 000000000..a3152ae8d --- /dev/null +++ b/doc/commit-tx.svg @@ -0,0 +1,494 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + CommitTx A + + + CommitTx B + + + + + + + SIG A & B + SIG A & B + + SIG B + + REVOCATION-A & SIG BOROP_CSV & SIG A + + SIG A + + REVOCATION-B & SIG AOROP_CSV & SIG B + + diff --git a/doc/deployable-lightning.lyx b/doc/deployable-lightning.lyx new file mode 100644 index 000000000..ede692ef1 --- /dev/null +++ b/doc/deployable-lightning.lyx @@ -0,0 +1,1963 @@ +#LyX 2.1 created this file. For more info see http://www.lyx.org/ +\lyxformat 474 +\begin_document +\begin_header +\textclass article +\begin_preamble +% for subfigures/subtables +\usepackage[caption=false,font=footnotesize]{subfig} +\end_preamble +\options journal +\use_default_options false +\maintain_unincluded_children false +\language english +\language_package none +\inputencoding default +\fontencoding global +\font_roman default +\font_sans default +\font_typewriter default +\font_math auto +\font_default_family default +\use_non_tex_fonts false +\font_sc false +\font_osf false +\font_sf_scale 100 +\font_tt_scale 100 +\graphics default +\default_output_format default +\output_sync 0 +\bibtex_command bibtex +\index_command default +\float_placement H +\paperfontsize default +\spacing single +\use_hyperref true +\pdf_title "Your Title" +\pdf_author "Your Name" +\pdf_bookmarks true +\pdf_bookmarksnumbered true +\pdf_bookmarksopen true +\pdf_bookmarksopenlevel 1 +\pdf_breaklinks false +\pdf_pdfborder true +\pdf_colorlinks false +\pdf_backref false +\pdf_pdfusetitle false +\pdf_quoted_options "pdfpagelayout=OneColumn, pdfnewwindow=true, pdfstartview=XYZ, plainpages=false" +\papersize default +\use_geometry false +\use_package amsmath 1 +\use_package amssymb 1 +\use_package cancel 0 +\use_package esint 0 +\use_package mathdots 1 +\use_package mathtools 0 +\use_package mhchem 1 +\use_package stackrel 0 +\use_package stmaryrd 0 +\use_package undertilde 0 +\cite_engine basic +\cite_engine_type default +\biblio_style ieeetr +\use_bibtopic false +\use_indices false +\paperorientation portrait +\suppress_date false +\justification true +\use_refstyle 0 +\index Index +\shortcut idx +\color #008000 +\end_index +\secnumdepth 3 +\tocdepth 3 +\paragraph_separation indent +\paragraph_indentation default +\quotes_language english +\papercolumns 1 +\papersides 1 +\paperpagestyle default +\tracking_changes false +\output_changes false +\html_math_output 0 +\html_css_as_file 0 +\html_be_strict false +\end_header + +\begin_body + +\begin_layout Title +Reaching The Ground With Lightning (draft 0.1) +\end_layout + +\begin_layout Author +Rusty Russell +\end_layout + +\begin_layout Abstract +The Lightning Network (as proposed by Joseph Poon and Thaddeus Dryja +\begin_inset CommandInset citation +LatexCommand cite +key "Poon2015Lightning" + +\end_inset + +) requires some new sighash modes in order to work with Bitcoin. + This paper proposes a simplified variant which requires only modifications + which are already proposed for bitcoin, and slightly simplifies the revocation + of existing contracts. +\end_layout + +\begin_layout Abstract +Keywords: bitcoin, lightning, revocation hash, HTLC +\end_layout + +\begin_layout Section +Introduction +\end_layout + +\begin_layout Standard +The Bitcoin network +\begin_inset CommandInset citation +LatexCommand cite +key "nakamoto2008bitcoin" + +\end_inset + + allows the transfer of value between peers using +\emph on +transactions. + +\emph default + Each bitcoin transaction consists of one or more +\emph on +outputs +\emph default + (typically specifying the hash of the recipient's key), and one or more + +\emph on +inputs +\emph default + (typically containing the recipient's key and a signature of the transaction). + Thus one transfers value to another peer by creating a transaction which + +\emph on +spends +\emph default + one or more outputs and creates an output which the recipient can spent + using their private key. +\end_layout + +\begin_layout Standard +While such cryptographic transfer of value is near-instantaneous, ensuring + that the transaction has been included in the consensus of the shared ledger + (aka. + +\emph on +blockchain +\emph default +) creates delays ranging from a few minutes to hours, depending on the level + of reliability required. + Inclusion in the blockchain is performed by miners, who preferentially + include transactions paying greatest fee per byte. +\end_layout + +\begin_layout Standard +Thus using the blockchain directly is slow, and too expensive for genuinely + small transfers (typical fees are a few cents). +\end_layout + +\begin_layout Section +Previous Work +\end_layout + +\begin_layout Standard +To work around the bitcoin network's delays and fees, several forms of +\emph on +off-chain +\emph default + transaction patterns have been developed, where series of transactions + are sent directly between two parties, with only the initial opening transactio +n and final redemption transaction being included in the bitcoin blockchain. +\end_layout + +\begin_layout Standard +The Lightning Network paper proposed a solution, but at the cost of introducing + new signature variants (sighash ops). + Adding a new signature opcode would allow many other improvements +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +Schnorr signatures offer faster batch validation, according to https://github.com +/ElementsProject/elementsproject.github.io#schnorr-signature-validation +\end_layout + +\end_inset + + +\begin_inset Foot +status collapsed + +\begin_layout Plain Layout +DER encoding adds unnecessary bytes and is a cause of malleability +\end_layout + +\end_inset + + but that is precisely why it's a matter for longer term research and unlikely + to be deployed in Bitcoin in the immediate future. +\end_layout + +\begin_layout Subsection +Payment Channels +\end_layout + +\begin_layout Standard +The concept of +\emph on +payment channels +\emph default + (sometimes called micropayment channels) has existed in various forms for + several years +\begin_inset CommandInset citation +LatexCommand cite +key "BitcoinChannels" + +\end_inset + +. + The simplest form is as follows, and allows A to quickly and cheaply pay + B a stream of slightly increasing amounts: +\end_layout + +\begin_layout Enumerate +A creates an +\emph on +anchor +\emph default + transaction to +\emph on +open the channel +\emph default + which: +\end_layout + +\begin_deeper +\begin_layout Enumerate +Outputs $1, +\end_layout + +\begin_layout Enumerate +Requires the signatures of both A and B to redeem. +\end_layout + +\end_deeper +\begin_layout Enumerate +A sends the transaction ID of the anchor, which output to spend, and the + amount of that output to B. +\end_layout + +\begin_layout Enumerate +B signs a +\begin_inset Quotes eld +\end_inset + +refund +\begin_inset Quotes erd +\end_inset + + transaction which: +\end_layout + +\begin_deeper +\begin_layout Enumerate +spends that anchor output, +\end_layout + +\begin_layout Enumerate +outputs the $1 to an address controlled by A, and +\end_layout + +\begin_layout Enumerate +can only be spent in 24 hours (using the +\emph on +locktime +\emph default + field) +\end_layout + +\end_deeper +\begin_layout Enumerate +B sends A the refund transaction. +\end_layout + +\begin_layout Enumerate +A broadcasts the anchor transaction, knowing she can get the funds back + in 24 hours using the refund if B vanishes. +\end_layout + +\begin_layout Standard +A can now pay B 1 cent by signing a new +\emph on +commitment +\emph default +transaction to send to B, which spends the anchor output and has two outputs: + one pays A 99c, and the other pays B 1 cent. + A can later pay B another cent by signing another transaction ( +\begin_inset Quotes eld +\end_inset + +updating the commitment +\begin_inset Quotes erd +\end_inset + +) for B which pays A 98c and B 2c, etc. +\end_layout + +\begin_layout Standard +At any point, B can +\begin_inset Quotes eld +\end_inset + +close the channel +\begin_inset Quotes erd +\end_inset + + by signing and broadcasting the latest commitment transaction to collect + the money. + B should do this before 24 hours pass, otherwise A can use the refund transacti +on. +\end_layout + +\begin_layout Subsubsection +Limitations Of Simple Payment Channels +\end_layout + +\begin_layout Standard +Simple channels have several limitations: +\end_layout + +\begin_layout Description +Single +\begin_inset space ~ +\end_inset + +recipient. + A new recipient requires a new channel, which must wait for consensus on + the anchor transaction. +\end_layout + +\begin_layout Description +One +\begin_inset space ~ +\end_inset + +way. + They cannot be reversed: A can sign a transaction which pays B less money + than the last, but B could still broadcast the older transaction. +\end_layout + +\begin_layout Description +Vulnerable +\begin_inset space ~ +\end_inset + +to +\begin_inset space ~ +\end_inset + +malleability. + The anchor transaction could be altered in several ways (without invaliding + it completely) before inclusion in the blockchain: this alters its transaction + id and thus makes the refund transaction unusable. +\end_layout + +\begin_layout Standard +This last issue is a common one with complex bitcoin transactions, and BIP62 +\begin_inset CommandInset citation +LatexCommand cite +key "BIP62" + +\end_inset + + is proposed to prevent non-signing parties from being able to malleate + transactions. + +\end_layout + +\begin_layout Subsection +Generalized Payment Channels Using Revocable Transactions +\end_layout + +\begin_layout Standard +The Lightning network introduced generalized, bi-directional payment channels, + referred to here as +\emph on +Poon-Dryja channels +\emph default +. + These use a mutual anchor, which both create to provide the channel funding, + and a symmetrical +\emph on +pair +\emph default + of updatable commitment +\emph on + +\emph default +transactions rather than the single transaction used in the one-way channel + case. +\end_layout + +\begin_layout Standard +[FIXME: Insert Figure 1 from LN draft 0.5] +\end_layout + +\begin_layout Standard +To update the commitment, A sends B a signature for B's new commitment transacti +on, and B sends A a signature for A's new commitment transaction. +\end_layout + +\begin_layout Standard +As before, each commitment transaction contains two outputs, one for A and + one for B; but A's commitment transaction output to itself is encumbered + by an additional restriction (as is B's output to itself). + Instead of paying A directly, needs both A and B's signature. + B provides such a signature, but on a +\begin_inset Quotes eld +\end_inset + +commitment refund +\begin_inset Quotes erd +\end_inset + + transaction which can only be spent after a delay (40 days in the paper). + Thus if A closes the channel by signing and broadcasting its commitment + transaction, B can collect its output immediately, but A must wait 40 days. +\end_layout + +\begin_layout Standard +This delay encumbering the output is what makes the commitment transaction + +\emph on +revocable; +\emph default + once an updated commitment transaction is agreed upon, the previous commitment + transaction pair is revoked by sharing the private keys needed to redeem + those encumbered outputs. + Thus, A shares its (throwaway) private key, and B shares its throwaway + private key. + If A were to sign and broadcast a revoked commitment transaction, B could + not only immediately spend its own output, but it has both A's key and + its own to generate a transaction which can spend the output which would + normally go to A after a delay. +\end_layout + +\begin_layout Subsection +Hashed Timelock Contracts (HTLCs) +\end_layout + +\begin_layout Standard +The Lightning Network paper used a set of 4 transactions to implement a +\emph on + hashed timelock contract, +\emph default +which guarantees payment of a given amount on presentation of a secret value + +\emph on +R +\emph default + within a certain timespan. + Any number of these could be active within a generalized channel, and this + is what allows a network to form: Node A offers node B $1 for the secret + within 2 days, node B offers node C 99c for the secret within 1 day, etc. +\end_layout + +\begin_layout Standard +[ FIXME: Insert figure 2 from LN Draft 0.5 ] +\end_layout + +\begin_layout Section +Enhancements To Lightning +\end_layout + +\begin_layout Standard +This paper proposes various modifications. +\end_layout + +\begin_layout Subsection +Poon-Dryja Generalized Payment Channel Modifications +\end_layout + +\begin_layout Standard +This paper proposes three of these. +\end_layout + +\begin_layout Subsubsection +Placing Timeout in Output Script +\end_layout + +\begin_layout Standard +Rather than using a separate transaction to enforce the delay, BIP65 +\begin_inset CommandInset citation +LatexCommand cite +key "BIP65" + +\end_inset + + proposes an OP_CHECKLOCKTIMEVERIFY which allows an output to specify the + minimum time at which it can be spent. + With this enhancement, we no longer need a separate +\begin_inset Quotes eld +\end_inset + +commitment refund +\begin_inset Quotes erd +\end_inset + + transaction. + The commitment transaction to-self output script would be a little more + complex: +\end_layout + +\begin_layout Itemize +A and B's signature, OR +\end_layout + +\begin_layout Itemize +A's signature and OP_CHECKLOCKTIMEVERIFY <40 days> +\end_layout + +\begin_layout Subsubsection +Using Relative Locktime +\end_layout + +\begin_layout Standard +The Poon-Dryja channel uses a 40 day locktime, because transaction locktime + is absolute. + Before 40 days the channel must be closed otherwise spending a revoked + transaction and immediately following it with the commit refund transaction + is possible. +\end_layout + +\begin_layout Standard +A proposal to extend output scripts to specify a minimum +\emph on +relative +\emph default + time before they can be spent +\begin_inset CommandInset citation +LatexCommand cite +key "friedenbach_bitcoin-development_2015" + +\end_inset + + can reduce this timeout (say, to 1 day) and avoid placing a lifetime limit + on the channel, like so: +\end_layout + +\begin_layout Itemize +A and B's signature, OR +\end_layout + +\begin_layout Itemize +A's signature and OP_CHECKSEQUENCEVERIFY <1 day> +\end_layout + +\begin_layout Subsubsection +Using Revocation Preimages Instead of Private Keys +\end_layout + +\begin_layout Standard +There's a slightly more intuitive and more efficient method than exchanging + private keys, which is to reuse a technique of hash preimages which is + already needed for HTLCs (as we see later). +\end_layout + +\begin_layout Standard +Instead of using a private keys, B uses knowledge of a hash preimage as + well as its signature to steal funds from a revoked commitment transaction. + Thus, to create a commitment transaction each side provides a hash value; + to revoke a commitment transaction it provides the prehash image. +\end_layout + +\begin_layout Standard +The resulting commitment transaction to-self output now looks like: +\end_layout + +\begin_layout Itemize +B's signature and a preimage which hashes to , OR +\end_layout + +\begin_layout Itemize +A's signature and OP_CHECKSEQUENCEVERIFY <1 day> +\end_layout + +\begin_layout Standard +This can be expressed fairly easily in bitcoin's script-based scripting + language, as annotated in +\begin_inset CommandInset ref +LatexCommand ref +reference "sub:Commitment-Outputs-For" + +\end_inset + +. + The final pair of commitment transaction outputs is shown in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Commitment-Transaction-Outputs" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename commit-tx.eps + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +Commitment Transaction Outputs +\begin_inset CommandInset label +LatexCommand label +name "fig:Commitment-Transaction-Outputs" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Subsection +Channel Opening Modifications +\end_layout + +\begin_layout Standard +The method of creating the first commitment transaction before signing the + anchor transaction (as proposed in the paper) presents two problems in + practice: +\end_layout + +\begin_layout Enumerate +The anchor transaction id required for the commitment input will only be + known one the anchor is signed, and +\end_layout + +\begin_layout Enumerate +The anchor transaction can be malleated by either party before entering + the blockchain, rendering the commitment input unusable. +\end_layout + +\begin_layout Standard +The last of these is particularly pernicious, as BIP62 doesn't solve it: + signatories can always re-sign a transaction, hence altering its transaction + ID. + The paper proposes new SIGHASH flags which mitigate this problem, but we + are attempting to avoid that. +\end_layout + +\begin_layout Standard +For ease of understanding, we develop the protocol in stages. + Please note that the intermediary proposals are insecure! +\end_layout + +\begin_layout Subsubsection +Separate Anchor Transactions +\end_layout + +\begin_layout Standard +To avoid the problem of needing all anchor signatures to derive the anchor + transaction ID to create the commitment transaction input, we split the + anchor into two transactions; thus A knows its anchor transaction ID, and + B knows its anchor transaction ID as shown in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Simplistic-Dual-Anchor" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\align center +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename dual-anchor-diag1.eps + scale 50 + +\end_inset + + +\begin_inset Caption Standard + +\begin_layout Plain Layout +Simplistic Dual Anchor Design +\begin_inset CommandInset label +LatexCommand label +name "fig:Simplistic-Dual-Anchor" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +This form allows A and B to create commitment transactions which spends + the anchors outputs by exchanging anchor transaction IDs. + It has the problem that if the other party does not then broadcast its + anchor transaction, we cannot spend the commitment transaction, and our + own anchor funds are stuck. +\end_layout + +\begin_layout Standard +This we introduce an +\emph on +escape +\emph default + transaction, which lets us regain our anchor funds in that case, as shown + in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Dual-Anchor2" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename dual-anchor-diag2.eps + scale 50 + +\end_inset + + +\begin_inset Caption Standard + +\begin_layout Plain Layout +Dual Anchor With Simple Escape Transactions +\begin_inset CommandInset label +LatexCommand label +name "fig:Dual-Anchor2" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +However, this escape transaction would let either side remove its funds + from the channel at any time, which would make the channel insecure. + Thus, after the commitment transactions have been established, we want + to revoke the escape transactions. + We can do the same way we did for the commitment transaction revocation; + by placing restrictions on the +\begin_inset Quotes eld +\end_inset + +to-me +\begin_inset Quotes erd +\end_inset + + output. + In particular, adding a delay if paying back to the anchor owner, and allowing + it to be spent by the other party immediately if they possess the revocation + preimage, as shown in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Anchor-revoc-escape" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename dual-anchor-diag3.eps + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +Dual Anchors With Revocable Escape Transactions +\begin_inset CommandInset label +LatexCommand label +name "fig:Anchor-revoc-escape" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +Unfortunately, this revocation is not a complete solution; if B uses its + escape transaction, A can collect B's anchor funds, but it has no way of + collecting its own! The commitment transaction cannot be used, as one of + its inputs has been spent by B's escape transaction. + A's own escape transaction has been revoked, so B would simply steal the + funds. +\end_layout + +\begin_layout Standard +Thus we need an additional construction, such that using one escape transaction + immediately unlocks the other anchor funds for its owner. + To do this, we ensure that the escape transaction is forced to reveal a + secret, which is a fairly well-established technique +\begin_inset CommandInset citation +LatexCommand cite +key "nolan_alt" + +\end_inset + +. + The anchor transaction is modified to either require both signatures (for + the commitment transaction), or both signatures and the secret (for the + escape transaction), as shown in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Secret-Revelation-by" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename dual-anchor-diag4.eps + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +Secret Revelation by Escape Transactions +\begin_inset CommandInset label +LatexCommand label +name "fig:Secret-Revelation-by" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +That revealed secret can be used with the other alternative: the +\emph on +fast escape transaction. + +\emph default + This reveals the secret just like the escape transaction, but its output + is immediately usable if one knows the other side's secret. + This is shown in Figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:Final-Dual-Anchor" + +\end_inset + +. + Thus, if the B broadcasts its escape transaction after it has been revoked, + A can (after ensuring escape B is sufficiently deep in the block chain) + broadcast its fast escape transaction and use B's secret to immediately + spend the output. +\end_layout + +\begin_layout Standard +On the other hand, if B broadcasts its fast escape transaction without knowing + A's secret, A can simply wait for the timeout and spend the fast escape + output, then use its own fast escape transaction and B's secret to recover + its own anchor funds as well. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename dual-anchor-final.eps + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +Final Dual Anchor Design +\begin_inset CommandInset label +LatexCommand label +name "fig:Final-Dual-Anchor" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +The final scripts are shown in +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:Appendix-A:-Scripts" + +\end_inset + +. +\end_layout + +\begin_layout Subsubsection +Disadvantages of The Dual Anchor Approach +\end_layout + +\begin_layout Standard +Unlike the mutual anchor approach, use of escape transactions is not outsourcabl +e: you cannot have an untrusted third party which can monitor the network + for the other sides' revoked escape transaction and respond with your own + escape transaction. + If you were to provide a third party with your fast escape transaction, + you would necessarily provide it with the secret, which it could give to + B. +\end_layout + +\begin_layout Subsection +Hashed Timelock Contract (HTLC) Modification +\end_layout + +\begin_layout Standard +Using the same techniques used above, we can condense each HTLC into a single + output script on the commitment transaction. + This output is spendable under three conditions: +\end_layout + +\begin_layout Enumerate +Recipient knows the R value (funds go to recipient), or +\end_layout + +\begin_layout Enumerate +The HTLC has timed out (funds return to sender), or +\end_layout + +\begin_layout Enumerate +The Commit transaction has been revoked (funds to go other side). +\end_layout + +\begin_layout Standard +Unlike the original paper, we use revocation preimages instead of sharing + temporary private keys. + If we also use OP_CHECKLOCKTIMEVERIFY and OP_CHECKSEQUENCEVERIFY it is + fairly simple to express these conditions in a single output script. +\end_layout + +\begin_layout Standard +For each direction the HTLC could transfer funds, there are two scripts + required; one for A's commitment transaction and one for B's commitment + transaction. + It's also a requirement that the conditions which allow payment to oneself + be delayed, to give the other side an opportunity to take the funds in + case of revocation. + This is shown in figure +\begin_inset CommandInset ref +LatexCommand ref +reference "fig:HTLC-Using-Revocation" + +\end_inset + +. +\end_layout + +\begin_layout Standard +\begin_inset Float figure +wide false +sideways false +status open + +\begin_layout Plain Layout +\align center +\begin_inset Graphics + filename htlc.eps + scale 50 + +\end_inset + + +\end_layout + +\begin_layout Plain Layout +\begin_inset Caption Standard + +\begin_layout Plain Layout +HTLC Using Revocation Preimages, OP_CLV and OP_CSV +\begin_inset CommandInset label +LatexCommand label +name "fig:HTLC-Using-Revocation" + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\end_inset + + +\end_layout + +\begin_layout Standard +The scripts for this can be found in +\begin_inset CommandInset ref +LatexCommand ref +reference "sec:Appendix-A:-Scripts" + +\end_inset + +. +\end_layout + +\begin_layout Section +Conclusions +\end_layout + +\begin_layout Standard +Secret preimages can replace exposure of temporary private keys in the Lightning + Network constructs with no loss of generality, and a slight gain in simplicity. +\end_layout + +\begin_layout Standard +The use of script conditionals to enforce timeouts instead of using separate + pre-signed transactions reduces an HTLC from a set of four dual-signed + transactions to a single (more complex) output script, and additionally + avoids any requirement for new CHECKSIG flags for HTLCs. +\end_layout + +\begin_layout Standard +By using a dual anchor and escape transactions, channel establishment can + also avoid new CHECKSIG flags, though it loses the important ability to + outsource the enforcement of channel contract terms. +\end_layout + +\begin_layout Section* +Acknowlegments +\end_layout + +\begin_layout Standard +Thanks to Joseph Poon for designing the escape/fast-escape dual-anchor method, + as well as finding a flaw in my original formulation of the dual anchor + construct and reviewing an earlier draft of this paper. + Also thanks to him and Thaddeus Dryja for the initial eye-opening Lightning + Network paper. +\end_layout + +\begin_layout Standard +\begin_inset CommandInset bibtex +LatexCommand bibtex +bibfiles "bitcoin" +options "plain" + +\end_inset + + +\end_layout + +\begin_layout Section* +Appendix A: Transaction Scripts +\begin_inset CommandInset label +LatexCommand label +name "sec:Appendix-A:-Scripts" + +\end_inset + + +\end_layout + +\begin_layout Standard +All outputs are expressed as pay-to-scripthash outputs, where the redeeming + input provides the redeemscript. + Where a redeem-hash value is optional, it is generally supplied: for example, + if we want to pay to A if a preimage is supplied and B if no preimage is + supplied, we expect the input scriptsig to provide two arguments in both + cases (generally a zero in the second case). + This saves an extra test (of form +\begin_inset Quotes eld +\end_inset + +OP_DEPTH OP_EQUAL +\begin_inset Quotes erd +\end_inset + +), at cost of a single byte in the input script. +\end_layout + +\begin_layout Subsection* +Anchor Transaction +\end_layout + +\begin_layout Standard +The anchor inputs are whatever the node chooses. +\end_layout + +\begin_layout Subsubsection* +Anchor Output Redeemscript +\end_layout + +\begin_layout Standard +The anchor output is a pay to script hash, with a redeemscript as follows: +\end_layout + +\begin_layout Description +OP_IF They put a non-zero here if they're supplying the secret +\end_layout + +\begin_deeper +\begin_layout Description +OP_HASH +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +OP_EQUALVERIFY Check secret is correct. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +2 +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +2 +\begin_inset space ~ +\end_inset + +OP_CHECKMULTISIG Make sure A and B have signed. +\end_layout + +\begin_layout Subsection* +Escape Transaction +\end_layout + +\begin_layout Standard +The escape transaction for A spends A's anchor output and reveals A's secret. + Similarly for B. +\end_layout + +\begin_layout Subsubsection* +Escape Input Script +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +SECRET +\begin_inset space ~ +\end_inset + +1 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsubsection* +Escape Output Redeemscript +\end_layout + +\begin_layout Standard +This allows two paths: one for the other side to use the revocation image, + and one for this side to get their funds back after a delay. + This show's A's script, but B's is the same with A and B exchanged. +\end_layout + +\begin_layout Description +OP_HASH160 +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +OP_EQUAL Check if the top of stack is the revocation image. +\end_layout + +\begin_layout Description +OP_IF +\end_layout + +\begin_deeper +\begin_layout Description + Funds for B. +\end_layout + +\end_deeper +\begin_layout Description +OP_ELSE It's A getting their funds back +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKSEQUENCEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Ensure delay. +\end_layout + +\begin_layout Description + Needs to be signed by A. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +OP_CHECKSIG Make sure it's signed correctly. +\end_layout + +\begin_layout Subsubsection* +Spending The Escape Output +\end_layout + +\begin_layout Standard +Either B using a revocation preimage: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Standard +Or A using after a timeout: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsection* +Fast-Escape Transaction +\end_layout + +\begin_layout Subsubsection* +Fast-Escape Input Script +\end_layout + +\begin_layout Standard +This is identical to the normal escape input script. +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +SECRET +\begin_inset space ~ +\end_inset + +1 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsubsection* +Fast-Escape Output Redeemscript +\end_layout + +\begin_layout Standard +This allows two paths: one for this side to use the other side's secret + (revealed by them using an escape transaction), and one for the other side + to claim this side's anchor funds after a delay. + This show's A's script, but B's is the same with A and B exchanged. +\end_layout + +\begin_layout Description +OP_HASH +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +OP_EQUAL If top argument is B's secret +\end_layout + +\begin_layout Description +OP_IF +\end_layout + +\begin_deeper +\begin_layout Description + For A +\end_layout + +\end_deeper +\begin_layout Description +OP_ELSE B gets it if A doesn't know the secret. +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKSEQUENCEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Ensure delay. +\end_layout + +\begin_layout Description + Needs to be signed by B. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +OP_CHECKSIG Make sure it's signed correctly. +\end_layout + +\begin_layout Subsubsection* +Spending The Fast-Escape Output +\end_layout + +\begin_layout Standard +Either A using a B's secret revealed by B using its own escape transaction: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Standard +Or B using after a timeout: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsection* +Commitment Transactions For Generalized Channels +\begin_inset CommandInset label +LatexCommand label +name "sub:Commitment-Outputs-For" + +\end_inset + + +\end_layout + +\begin_layout Standard +These examples are for A's Commitment Transaction; switch A and B to get + B's commitment transaction. +\end_layout + +\begin_layout Subsubsection* +Commitment Input Script +\end_layout + +\begin_layout Standard +The commitment transaction has two inputs; one which spends each anchor + output. + The two zeroes indicate it is not revealing the secret: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsubsection* +Commitment Transaction Output Redeemscripts +\end_layout + +\begin_layout Standard +One output pays B's funds to B as normal (eg. + pay to scripthash +\begin_inset Quotes eld +\end_inset + + OP_CHECKSIG +\begin_inset Quotes erd +\end_inset + +). + The other output pays A's funds: either to B if they supply the revocation + preimage, or to A after a delay. + This is the redeemscript: +\end_layout + +\begin_layout Description +OP_HASH160 +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +OP_EQUAL Did they supply revocation preimage? +\end_layout + +\begin_layout Description +OP_IF +\end_layout + +\begin_deeper +\begin_layout Description + To B. +\end_layout + +\end_deeper +\begin_layout Description +OP_ELSE +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKSEQUENCEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Spending transaction must be after timeout +\end_layout + +\begin_layout Description + To A. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +OP_CHECKSIG Signature must be correct. +\end_layout + +\begin_layout Subsubsection* +Spending Commitment Output +\end_layout + +\begin_layout Standard +Either B using a revocation preimage: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Standard +Or A using after a timeout: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsection* +Hash Locked Transaction Commitments +\end_layout + +\begin_layout Standard +There are two styles of commitment transaction outputs for HTLCs: a +\begin_inset Quotes eld +\end_inset + +sender +\begin_inset Quotes erd +\end_inset + + and +\begin_inset Quotes eld +\end_inset + +receiver +\begin_inset Quotes erd +\end_inset + + case. + The output is a pay-to-script-hash, so the redeemscripts are shown below. +\end_layout + +\begin_layout Standard +These scripts show A as the sender, and B as the receiver: exchange A and + B for the reverse. +\end_layout + +\begin_layout Subsubsection* +HTLC Sender Redeemscript +\end_layout + +\begin_layout Description +OP_HASH160 +\begin_inset space ~ +\end_inset + +OP_DUP Replace top element with two copies of its hash +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_EQUAL Test if they supplied the HTLC R value +\end_layout + +\begin_layout Description +OP_SWAP +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +OP_EQUAL +\begin_inset space ~ +\end_inset + +OP_ADD Or the commitment revocation hash +\end_layout + +\begin_layout Description +OP_IF If any hash matched. +\end_layout + +\begin_deeper +\begin_layout Description + Pay to B. +\end_layout + +\end_deeper +\begin_layout Description +OP_ELSE Must be A, after HTLC has timed out. +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKLOCKTIMEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Ensure (absolute) time has passed. +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKSEQUENCEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Delay gives B enough time to use revocation if it has it. +\end_layout + +\begin_layout Description + Pay to A. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +OP_CHECKSIG Verify A or B's signature is correct. +\end_layout + +\begin_layout Subsubsection* +HTLC Receiver Redeemscript +\end_layout + +\begin_layout Description +OP_HASH160 +\begin_inset space ~ +\end_inset + +OP_DUP Replace top element with two copies of its hash +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_EQUAL B redeeming the contract, using R preimage? +\end_layout + +\begin_layout Description +OP_IF +\end_layout + +\begin_deeper +\begin_layout Description +OP_DROP Remove extra hash +\end_layout + +\begin_layout Description + Pay to B +\end_layout + +\end_deeper +\begin_layout Description +OP_ELSE +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_EQUAL If the commit has been revoked. +\end_layout + +\begin_layout Description +OP_NOTIF If not, you need to wait for timeout. +\end_layout + +\begin_deeper +\begin_layout Description + +\begin_inset space ~ +\end_inset + +OP_CHECKLOCKTIMEVERIFY +\begin_inset space ~ +\end_inset + +OP_DROP Ensure (absolute) time has passed. +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description + Pay to A +\end_layout + +\end_deeper +\begin_layout Description +OP_ENDIF +\end_layout + +\begin_layout Description +OP_CHECKSIG Verify A or B's signature is correct. +\end_layout + +\begin_layout Subsubsection* +Redeeming A HTLC Output +\end_layout + +\begin_layout Standard +To redeem an HTLC, the recipient one provides the preimage R, and their + signature. + In our example above, B can redeem the HTLC: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsubsection* +Claiming a Timed-out HTLC +\end_layout + +\begin_layout Standard +To claim a timed-out HTLC, the sender supplies a zero value (which is nice + and short, but fails to hash to any of the revocation hashes), and their + signature. + In our example above, A can claim the timed-out HTLC: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + +0 +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\begin_layout Subsubsection* +Claiming A HTLC Output For A Revoked Commitment Transaction +\end_layout + +\begin_layout Standard +If either side publishes a commitment transaction which has been revoked, + we can use the revocation preimage they supplied to spend all the outputs. + This example shows A claiming the HTLC output if B broadcasts a revoked + commitment transaction: +\end_layout + +\begin_layout Description + +\begin_inset space ~ +\end_inset + + +\begin_inset space ~ +\end_inset + +{} +\end_layout + +\end_body +\end_document diff --git a/doc/deployable-lightning.pdf b/doc/deployable-lightning.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ca2b075b28fe1866a2f5d64413e8be600b3b633b GIT binary patch literal 253625 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 p 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 literal 0 HcmV?d00001 diff --git a/doc/dual-anchor-diag1.eps b/doc/dual-anchor-diag1.eps new file mode 100644 index 000000000..5d80aa445 --- /dev/null +++ b/doc/dual-anchor-diag1.eps @@ -0,0 +1,466 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Tue Jul 14 10:01:07 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 103 375 472 811 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 71 /G put +Encoding 73 /I put +Encoding 83 /S put +Encoding 84 /T put +Encoding 99 /c put +Encoding 104 /h put +Encoding 105 /i put +Encoding 109 /m put +Encoding 110 /n put +Encoding 111 /o put +Encoding 114 /r put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 19 dict dup begin +/.notdef 0 def +/A 1 def +/n 2 def +/c 3 def +/h 4 def +/o 5 def +/r 6 def +/space 7 def +/B 8 def +/C 9 def +/m 10 def +/i 11 def +/t 12 def +/T 13 def +/x 14 def +/S 15 def +/I 16 def +/G 17 def +/ampersand 18 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d3900000d94000001fe6670676d7134766a0000 +0f94000000ab676c796615929d9f0000009c00000cf868656164026638f70000104000000036 +686865610cb806640000107800000024686d7478594408ed0000109c0000004c6c6f63610000 +6ad8000010e8000000506d617870048006710000113800000020707265703b07f10000001158 +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000100ba00000464047b0013003640190309 +00030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31002f3ce4f4c4ec11 +12173930b46015cf1502015d0111231134262322061511231133153e013332160464b87c7c95 +acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef00010071ffe303e7047b0019 +003f401b00860188040e860d880ab91104b917b8118c1a07120d004814451a10fce432ec3100 +10e4f4ec10fef4ee10f5ee30400b0f1b101b801b901ba01b05015d01152e0123220615141633 +323637150e0123220011100021321603e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655 +a20435ac2b2be3cdcde32b2baa2424013e010e0112013a230000000100ba0000046406140013 +00344019030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f +3cecf4c4ec1112173930b2601501015d0111231134262322061511231133113e013332160464 +b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef0000020071ffe3 +0475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec3100 +10e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b +12a019f01911015d012206151416333236353426273200111000232200111000027394acab95 +93acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113 +011401380000000100ba0000034a047b001100304014060b0700110b03870eb809bc070a0608 +0008461210fcc4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511 +231133153e0133321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663 +05050000000300c9000004ec05d5000800110020004340231900950a0995128101950aad1f11 +0b080213191f05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fec +ecf4ec10ee3930b20f2201015d01112132363534262301112132363534262325213216151406 +071e01151404232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfd +e802c9fddd878b8c850266fe3e6f727170a6c0b189a21420cb98c8da00010073ffe3052705f0 +00190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec31 +0010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123 +2000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed05 +62d55f5efec7fed8fed9fec75e5fd34848019f01670168019f470000000100ba0000071d047b +0022005a4026061209180f00061d07150c871d2003b81bbc19100700110f0808065011080f50 +1c18081a462310fcec32fcfcfcec11123931002f3c3ce4f43cc4ec3211121739304013302450 +2470249024a024a024bf24df24ff2409015d013e013332161511231134262322061511231134 +262322061511231133153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797a +ab03897c76f5e2fd5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c000000000200c1 +00000179061400030007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fc +ec30400b1009400950096009700905015d1333112311331523c1b8b8b8b80460fba00614e900 +00010037000002f2059e0013003840190e05080f03a9001101bc08870a0b0809020400081012 +0e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930b2af1501015d011121152111 +14163b01152322263511233533110177017bfe854b73bdbdd5a28787059efec28ffda0894e9a +9fd202608f013e0000000001fffa000004e905d50007004a400e0602950081040140031c0040 +050810d4e4fce431002ff4ec3230014bb00a5458bd00080040000100080008ffc03811373859 +401300091f00100110021f071009400970099f09095d03211521112311210604effdeecbfdee +05d5aafad5052b000001003b000004790460000b014340460511060706041103040707060411 +050401020103110202010b110001000a11090a0101000a110b0a0708070911080807420a0704 +01040800bf05020a0704010408000208060c10d44bb00a544bb00f545b4bb010545b4bb01154 +5b58b90006004038594bb0145458b90006ffc03859c4d4c411173931002f3cec321739304b53 +58071005ed071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014098 +0a04040a1a04150a260a3d04310a55045707580a660a76017a047607740a8d04820a99049f04 +9707920a900aa601a904af04a507a30aa00a1c0a03040505090a0b1a03150515091a0b290326 +0525092a0b200d3a013903370534073609390b300d4903460545094a0b400d59005601590259 +0357055606590756085609590b500d6f0d78017f0d9b019407ab01a407b00dcf0ddf0dff0d2f +5d005d09022309012309013309010464fe6b01aad9febafebad901b3fe72d9012901290460fd +dffdc101b8fe48024a0216fe71018f0000010087ffe304a205f00027007e403c0d0c020e0b02 +1e1f1e080902070a021f1f1e420a0b1e1f0415010015a11494189511049500942591118c281e +0a0b1f1b0700221b190e2d071914222810dcc4ecfcece4111239393939310010e4f4e4ec10ee +f6ee10c6111739304b535807100eed11173907100eed1117395922b20f2901015db61f292f29 +4f29035d01152e012322061514161f011e0115140421222627351e013332363534262f012e01 +353424333216044873cc5fa5b377a67ae2d7feddfee76aef807bec72adbc879a7be2ca0117f5 +69da05a4c53736807663651f192bd9b6d9e0302fd04546887e6e7c1f182dc0abc6e426000001 +00c90000019305d50003002eb700af02011c00040410fc4bb0105458b9000000403859ec3100 +2fec3001400d30054005500560058f059f05065d13331123c9caca05d5fa2b0000010073ffe3 +058b05f0001d0039402000051b0195031b950812a111ae15950e91088c1e02001c1134043318 +190b101e10fcecfce4fcc4310010e4f4ecf4ec10fed4ee113939302511213521110604232000 +11100021320417152e0123200011100021323604c3feb6021275fee6a0fea2fe75018b015e92 +01076f70fc8bfeeefeed011301126ba8d50191a6fd7f53550199016d016e01994846d75f60fe +cefed1fed2fece25000000020081ffe305fe05f00009003001cd40960d010e0c861112110b86 +0a0b12121109860009151615070106088616161502010301861d1e1d008609001e1e1d201f02 +211e110a130a17161503181411130a07080206091113130a0201020300110a130a1716021815 +11130a141113130a42120b090306000a1e0328150e0628270695182b9527942491188c0e130a +2e0b0e09002e1215270e1e032e1227210e110f132103121b103110fcecc4d4d4ec10c6ee1139 +111239391139391139113931002fc6e4f6e6ee10ee10c6111239111739111739304b53580710 +05ed0705ed111739071005ed111739071005ed1117390705ed111739071005ed111739071008 +ed07100eed11173907100eed111739071008ed071008ed07100eed1117395922b20f3201015d +40b2070b052209291c001c011f02170b2a002a0126123a003412440b5e0059015a0a55125a1a +5a1f5930671e7b009b009a0199029708950b931595169522992d1f090b090c08110c270c2818 +021b09190b190c19111c141c15161d1f3227002701290923122a132a1428152f323b09341239 +133f324a094c144b1546194f3256015a09590c551259135c1f5f326a0c691160327501790c7a +1193009301970295059c079c089f089a099b0b9a0c9032a032b032395d005d010e0115141633 +32363709013e0137330602070123270e01232200353436372e0135343633321617152e012322 +0615141601f25b55d4a05fa649fe7b01fc3b4206ba0c685d0117fc8f68e483f1fece86863032 +deb853a555579e4469833b032351a15892c23f40028ffdf859cb7284fefe7efee39359570113 +d780e1633f7d3ca2c52424b62f316f583367013500b800cb00cb00c100aa009c01a600b80066 +0000007100cb00a002b20085007500b800c301cb0189022d00cb00a600f000d300aa008700cb +03aa0400014a003300cb000000d9050200f4015400b4009c01390114013907060400044e04b4 +045204b804e704cd0037047304cd04600473013303a2055605a60556053903c5021200c9001f +00b801df007300ba03e9033303bc0444040e00df03cd03aa00e503aa0404000000cb008f00a4 +007b00b80014016f007f027b0252008f00c705cd009a009a006f00cb00cd019e01d300f000ba +018300d5009803040248009e01d500c100cb00f600830354027f00000333026600d300c700a4 +00cd008f009a0073040005d5010a00fe022b00a400b4009c00000062009c0000001d032d05d5 +05d505d505f0007f007b005400a406b80614072301d300b800cb00a601c301ec069300a000d3 +035c037103db0185042304a80448008f0139011401390360008f05d5019a0614072306660179 +046004600460047b009c00000277046001aa00e904600762007b00c5007f027b000000b40252 +05cd006600bc00660077061000cd013b01850389008f007b0000001d00cd074a042f009c009c +0000077d006f0000006f0335006a006f007b00ae00b2002d0396008f027b00f6008303540637 +05f6008f009c04e10266008f018d02f600cd03440029006604ee00730000140000960000b707 +060504030201002c2010b002254964b040515820c859212d2cb002254964b040515820c85921 +2d2c20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050 +b00d7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b0fd454459212d2cb00225 +4560442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b00525 +4960b0206368208a108a233a8a10653a2d00000100000002570a9e9b8d645f0f3cf5001f0800 +00000000cef5cb7600000000cef5cb76f7d6fcae0d7209550000000800000001000000000001 +0000076dfe1d00000de2f7d6fa510d7200010000000000000000000000000000001304cd0066 +05790010051200ba04660071051200ba04e50071034a00ba028b0000057d00c90596007307cb +00ba023900c10323003704e3fffa04bc003b05140087025c00c906330073063d008100000000 +0000004400000140000001b800000250000002c80000036c000003dc000003dc0000048c0000 +0524000005e800000638000006b400000724000008a8000009a0000009e800000a9000000cf8 +0001000000130354002b0068000c000200100099000800000415021600080004b8028040fffb +fe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f32503f20e03f19603f02503ef8a41 +05effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e84203e7fe03e63203e5e45305e59603 +e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df3203de1403dd9603dcfe03db1203 +da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d44703d3d21b05d3fe03d21b03d1fe +03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca3203c9fe03c6851105c61c03c516 +03c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe03bcfe03bbfe03ba1103b9862505 +b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505b65d40ff03b64004b52503b4fe03 +b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab2505ac6403abaa1205ab2503aa1203 +a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a20e05a33203a20e03a16403a08a41 +05a096039ffe039e9d0c059efe039d0c039c9b19059c64039b9a10059b19039a1003990a0398 +fe0397960d0597fe03960d03958a410595960394930e05942803930e0392fa039190bb0591fe +03908f5d0590bb039080048f8e25058f5d038f40048e25038dfe038c8b2e058cfe038b2e038a +8625058a410389880b05891403880b03878625058764038685110586250385110384fe038382 +110583fe0382110381fe0380fe037ffe0340ff7e7d7d057efe037d7d037c64037b5415057b25 +037afe0379fe03780e03770c03760a0375fe0374fa0373fa0372fa0371fa0370fe036ffe036e +fe036c21036bfe036a1142056a530369fe03687d036711420566fe0365fe0364fe0363fe0362 +fe03613a0360fa035e0c035dfe035bfe035afe0359580a0559fa03580a035716190557320356 +fe035554150555420354150353011005531803521403514a130551fe03500b034ffe034e4d10 +054efe034d10034cfe034b4a13054bfe034a4910054a1303491d0d05491003480d0347fe0346 +960345960344fe0343022d0543fa0342bb03414b0340fe033ffe033e3d12053e14033d3c0f05 +3d12033c3b0d053c40ff0f033b0d033afe0339fe033837140538fa033736100537140336350b +05361003350b03341e03330d0332310b0532fe03310b03302f0b05300d032f0b032e2d09052e +10032d09032c32032b2a25052b64032a2912052a25032912032827250528410327250326250b +05260f03250b0324fe0323fe03220f03210110052112032064031ffa031e1d0d051e64031d0d +031c1142051cfe031bfa031a42031911420519fe031864031716190517fe0316011005161903 +15fe0314fe0313fe031211420512fe0311022d05114203107d030f64030efe030d0c16050dfe +030c0110050c16030bfe030a100309fe0308022d0508fe030714030664030401100504fe0340 +1503022d0503fe0302011005022d0301100300fe0301b80164858d012b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 103 375 472 811 +%%EndPageSetup +q 103 375 369 436 rectclip q +0 g +BT +17.6 0 0 17.6 144.230383 731.577319 Tm +/f-0-0 1 Tf +[(Anchor)-3( A)]TJ +11.78352 -0.0324679 Td +[(Anchor)-3( B)]TJ +ET +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 841.889771 cm +136.09 87.465 96 32.57 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 841.889771 cm +184.09 118.895 m 183.887 226.375 l 271.77 225.562 l 273.789 329 l S Q +273.633 520.886 m 270.371 524.023 l 273.789 512.89 l 276.77 524.148 l h +273.633 520.886 m f* +0.799847 w +q -0.0195316 1 1 0.0195316 0 841.889771 cm +-326.224 267.261 m -323.025 264.062 l -334.22 267.261 l -323.025 270.46 + l h +-326.224 267.261 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 841.889771 cm +342.945 87.465 96 33.715 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 841.889771 cm +390.945 120.035 m 391.754 227.113 l 300.438 226.707 l 300.438 328.527 l + S Q +300.438 521.362 m 297.234 524.562 l 300.438 513.362 l 303.637 524.562 l + h +300.438 521.362 m f* +0.8 w +q 0.000000078569 1 1 -0.000000078569 0 841.889771 cm +-320.527 300.438 m -317.328 297.234 l -328.527 300.438 l -317.328 303.637 + l h +-320.527 300.438 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 841.889771 cm +151.195 383.562 96 80 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 841.889771 cm +103.516 47.465 m 152.09 84.609 l S Q +145.734 762.14 m 141.246 761.542 l 152.09 757.28 l 145.137 766.628 l h +145.734 762.14 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 841.889771 cm +-130.441 19.999 m -127.897 17.456 l -136.796 19.999 l -127.898 22.543 l + h +-130.441 19.999 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +215.516 40.609 m 208.09 85.75 l S Q +209.387 764.034 m 206.75 767.71 l 208.09 756.14 l 213.062 766.671 l h +209.387 764.034 m f* +0.789384 w +q 0.164557 1 1 -0.164557 0 841.889771 cm +-42.255 216.34 m -39.099 213.184 l -50.149 216.342 l -39.099 219.497 l +h +-42.255 216.34 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +311.516 47.465 m 360.09 84.609 l S Q +353.734 762.14 m 349.246 761.542 l 360.09 757.28 l 353.137 766.628 l h +353.734 762.14 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 841.889771 cm +-261.69 120.366 m -259.146 117.823 l -268.045 120.366 l -259.147 122.91 + l h +-261.69 120.366 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +470.945 48.035 m 422.945 86.324 l S Q +429.199 760.554 m 429.707 765.054 l 422.945 755.566 l 433.695 760.05 l +h +429.199 760.554 m f* +0.625421 w +q 1 0.797619 0.797619 -1 0 841.889771 cm +222.665 258.938 m 225.169 256.435 l 216.411 258.938 l 225.168 261.438 l + h +222.665 258.938 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +432.09 32.035 m 400.66 85.75 l S Q +404.699 763.042 m 403.555 767.421 l 400.66 756.14 l 409.078 764.191 l h +404.699 763.042 m f* +0.69049 w +q 0.585107 1 1 -0.585107 0 841.889771 cm +117.663 335.854 m 120.426 333.093 l 110.76 335.854 l 120.427 338.616 l +h +117.663 335.854 m S Q +BT +17.6 0 0 17.6 164.334229 422.643237 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +0.8 w +q 1 0 0 -1 0 841.889771 cm +264.246 342.754 m 191.934 342.18 l 191.934 382.18 l S Q +191.934 467.71 m 188.734 470.909 l 191.934 459.71 l 195.133 470.909 l h +191.934 467.71 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 841.889771 cm +-374.18 191.934 m -370.98 188.734 l -382.18 191.934 l -370.98 195.133 l + h +-374.18 191.934 m S Q +BT +12 0 0 12 155.950134 708.444678 Tm +/f-0-0 1 Tf +(SIGA & SIGB)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 841.889771 cm +328.812 384.531 96 80 re S Q +BT +17.6 0 0 17.6 341.950464 421.672681 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 841.889771 cm +311.516 351.465 m 311.516 364.719 300.773 375.465 287.516 375.465 c 274.262 + 375.465 263.516 364.719 263.516 351.465 c 263.516 338.211 274.262 327.465 + 287.516 327.465 c 300.773 327.465 311.516 338.211 311.516 351.465 c h +311.516 351.465 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 841.889771 cm +287.516 327.465 m 287.516 375.465 l S Q +q 1 0 0 -1 0 841.889771 cm +263.516 351.465 m 311.516 351.465 l S Q +q 1 0 0 -1 0 841.889771 cm +264.246 358.754 m 207.934 358.754 l 207.934 382.18 l S Q +207.934 467.71 m 204.734 470.909 l 207.934 459.71 l 211.133 470.909 l h +207.934 467.71 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 841.889771 cm +-374.18 207.934 m -370.98 204.735 l -382.18 207.934 l -370.98 211.133 l + h +-374.18 207.934 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +310.215 342.754 m 382.523 342.18 l 382.523 382.18 l S Q +382.523 467.71 m 379.324 470.909 l 382.523 459.71 l 385.723 470.909 l h +382.523 467.71 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 841.889771 cm +-374.18 382.523 m -370.981 379.324 l -382.18 382.523 l -370.981 385.723 + l h +-374.18 382.523 m S Q +0.8 w +q 1 0 0 -1 0 841.889771 cm +310.215 358.754 m 366.523 358.754 l 366.523 382.18 l S Q +366.523 467.71 m 363.324 470.909 l 366.523 459.71 l 369.723 470.909 l h +366.523 467.71 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 841.889771 cm +-374.18 366.523 m -370.981 363.324 l -382.18 366.523 l -370.981 369.723 + l h +-374.18 366.523 m S Q +BT +12 0 0 12 167.8396 444.80813 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +(SIG A & B)Tj +1.258278 22.063959 Td +(SIGA & SIGB)Tj +ET +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/dual-anchor-diag1.svg b/doc/dual-anchor-diag1.svg new file mode 100644 index 000000000..f3bee7c5c --- /dev/null +++ b/doc/dual-anchor-diag1.svg @@ -0,0 +1,527 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + CommitTx A + + SIGA & SIGB + + CommitTx B + + + + + + + SIG A & B + SIG A & B + SIGA & SIGB + + diff --git a/doc/dual-anchor-diag2.eps b/doc/dual-anchor-diag2.eps new file mode 100644 index 000000000..995989fc2 --- /dev/null +++ b/doc/dual-anchor-diag2.eps @@ -0,0 +1,637 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Tue Jul 14 10:40:39 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 26 -1 525 434 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 71 /G put +Encoding 73 /I put +Encoding 83 /S put +Encoding 84 /T put +Encoding 97 /a put +Encoding 99 /c put +Encoding 101 /e put +Encoding 104 /h put +Encoding 105 /i put +Encoding 109 /m put +Encoding 110 /n put +Encoding 111 /o put +Encoding 112 /p put +Encoding 114 /r put +Encoding 115 /s put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 24 dict dup begin +/.notdef 0 def +/A 1 def +/n 2 def +/c 3 def +/h 4 def +/o 5 def +/r 6 def +/space 7 def +/B 8 def +/C 9 def +/m 10 def +/i 11 def +/t 12 def +/T 13 def +/x 14 def +/E 15 def +/s 16 def +/a 17 def +/p 18 def +/e 19 def +/S 20 def +/I 21 def +/G 22 def +/ampersand 23 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d39000011f4000001fe6670676d7134766a0000 +13f4000000ab676c79668c28776e0000009c0000115868656164026638f7000014a000000036 +686865610cb80669000014d800000024686d747871640bcb000014fc000000606c6f63610000 +b4980000155c000000646d61787004850671000015c000000020707265703b07f100000015e0 +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000100ba00000464047b0013003640190309 +00030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31002f3ce4f4c4ec11 +12173930b46015cf1502015d0111231134262322061511231133153e013332160464b87c7c95 +acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef00010071ffe303e7047b0019 +003f401b00860188040e860d880ab91104b917b8118c1a07120d004814451a10fce432ec3100 +10e4f4ec10fef4ee10f5ee30400b0f1b101b801b901ba01b05015d01152e0123220615141633 +323637150e0123220011100021321603e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655 +a20435ac2b2be3cdcde32b2baa2424013e010e0112013a230000000100ba0000046406140013 +00344019030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f +3cecf4c4ec1112173930b2601501015d0111231134262322061511231133113e013332160464 +b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef0000020071ffe3 +0475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec3100 +10e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b +12a019f01911015d012206151416333236353426273200111000232200111000027394acab95 +93acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113 +011401380000000100ba0000034a047b001100304014060b0700110b03870eb809bc070a0608 +0008461210fcc4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511 +231133153e0133321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663 +05050000000300c9000004ec05d5000800110020004340231900950a0995128101950aad1f11 +0b080213191f05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fec +ecf4ec10ee3930b20f2201015d01112132363534262301112132363534262325213216151406 +071e01151404232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfd +e802c9fddd878b8c850266fe3e6f727170a6c0b189a21420cb98c8da00010073ffe3052705f0 +00190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec31 +0010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123 +2000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed05 +62d55f5efec7fed8fed9fec75e5fd34848019f01670168019f470000000100ba0000071d047b +0022005a4026061209180f00061d07150c871d2003b81bbc19100700110f0808065011080f50 +1c18081a462310fcec32fcfcfcec11123931002f3c3ce4f43cc4ec3211121739304013302450 +2470249024a024a024bf24df24ff2409015d013e013332161511231134262322061511231134 +262322061511231133153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797a +ab03897c76f5e2fd5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c000000000200c1 +00000179061400030007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fc +ec30400b1009400950096009700905015d1333112311331523c1b8b8b8b80460fba00614e900 +00010037000002f2059e0013003840190e05080f03a9001101bc08870a0b0809020400081012 +0e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930b2af1501015d011121152111 +14163b01152322263511233533110177017bfe854b73bdbdd5a28787059efec28ffda0894e9a +9fd202608f013e0000000001fffa000004e905d50007004a400e0602950081040140031c0040 +050810d4e4fce431002ff4ec3230014bb00a5458bd00080040000100080008ffc03811373859 +401300091f00100110021f071009400970099f09095d03211521112311210604effdeecbfdee +05d5aafad5052b000001003b000004790460000b014340460511060706041103040707060411 +050401020103110202010b110001000a11090a0101000a110b0a0708070911080807420a0704 +01040800bf05020a0704010408000208060c10d44bb00a544bb00f545b4bb010545b4bb01154 +5b58b90006004038594bb0145458b90006ffc03859c4d4c411173931002f3cec321739304b53 +58071005ed071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014098 +0a04040a1a04150a260a3d04310a55045707580a660a76017a047607740a8d04820a99049f04 +9707920a900aa601a904af04a507a30aa00a1c0a03040505090a0b1a03150515091a0b290326 +0525092a0b200d3a013903370534073609390b300d4903460545094a0b400d59005601590259 +0357055606590756085609590b500d6f0d78017f0d9b019407ab01a407b00dcf0ddf0dff0d2f +5d005d09022309012309013309010464fe6b01aad9febafebad901b3fe72d9012901290460fd +dffdc101b8fe48024a0216fe71018f00000100c90000048b05d5000b002e4015069504029500 +81089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01015d +132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa00000001 +006fffe303c7047b002700e7403c0d0c020e0b531f1e080902070a531f1f1e420a0b1e1f0415 +00860189041486158918b91104b925b8118c281e0a0b1f1b0700521b080e07081422452810fc +c4ecd4ece4111239393939310010e4f4ec10fef5ee10f5ee121739304b535807100eed111739 +070eed1117395922b2002701015d406d1c0a1c0b1c0c2e092c0a2c0b2c0c3b093b0a3b0b3b0c +0b200020012402280a280b2a132f142f152a16281e281f292029212427860a860b860c860d12 +000000010202060a060b030c030d030e030f03100319031a031b031c041d09272f293f295f29 +7f2980299029a029f029185d005d7101152e012322061514161f011e0115140623222627351e +013332363534262f012e01353436333216038b4ea85a898962943fc4a5f7d85ac36c66c66182 +8c65ab40ab98e0ce66b4043fae282854544049210e2a99899cb62323be353559514b50250f24 +95829eac1e0000000002007bffe3042d047b000a002500bc4027191f0b17090e00a91706b90e +1120861fba1cb923b8118c170c001703180d09080b1f030814452610fcecccd4ec3232113939 +31002fc4e4f4fcf4ec10c6ee10ee11391139123930406e301d301e301f3020302130223f2740 +1d401e401f402040214022501d501e501f50205021502250277027851d871e871f8720872185 +229027a027f0271e301e301f30203021401e401f40204021501e501f50205021601e601f6020 +6021701e701f70207021801e801f80208021185d015d0122061514163332363d01371123350e +01232226353436332135342623220607353e0133321602bedfac816f99b9b8b83fbc88accbfd +fb0102a79760b65465be5af3f00233667b6273d9b4294cfd81aa6661c1a2bdc0127f8b2e2eaa +2727fc00000200bafe5604a4047b0010001c003e401b1ab9000e14b90508b80e8c01bd03bc1d +11120b471704000802461d10fcec3232f4ec310010e4e4e4f4c4ec10c4ee304009601e801ea0 +1ee01e04015d2511231133153e013332001110022322260134262322061514163332360173b9 +b93ab17bcc00ffffcc7bb10238a79292a7a79292a7a8fdae060aaa6461febcfef8fef8febc61 +01ebcbe7e7cbcbe7e700000000020071ffe3047f047b0014001b007040240015010986088805 +15a90105b90c01bb18b912b80c8c1c1b1502081508004b02120f451c10fcecf4ecc411123931 +0010e4f4ece410ee10ee10f4ee1112393040293f1d701da01dd01df01d053f003f013f023f15 +3f1b052c072f082f092c0a6f006f016f026f156f1b095d71015d0115211e0133323637150e01 +232000111000333200072e0123220607047ffcb20ccdb76ac76263d06bfef4fec70129fce201 +07b802a5889ab90e025e5abec73434ae2a2c0138010a01130143feddc497b4ae9e0000010087 +ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f1f1e420a0b1e1f041501 +0015a11494189511049500942591118c281e0a0b1f1b0700221b190e2d071914222810dcc4ec +fcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b535807100eed1117390710 +0eed1117395922b20f2901015db61f292f294f29035d01152e012322061514161f011e011514 +0421222627351e013332363534262f012e01353424333216044873cc5fa5b377a67ae2d7fedd +fee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663651f192bd9b6d9e0302f +d04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003002eb700af02011c0004 +0410fc4bb0105458b9000000403859ec31002fec3001400d30054005500560058f059f05065d +13331123c9caca05d5fa2b0000010073ffe3058b05f0001d0039402000051b0195031b950812 +a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fcc4310010e4f4ecf4ec10 +fed4ee11393930251121352111060423200011100021320417152e0123200011100021323604 +c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed011301126ba8d50191a6 +fd7f53550199016d016e01994846d75f60fecefed1fed2fece25000000020081ffe305fe05f0 +0009003001cd40960d010e0c861112110b860a0b121211098600091516150701060886161615 +02010301861d1e1d008609001e1e1d201f02211e110a130a17161503181411130a0708020609 +1113130a0201020300110a130a171602181511130a141113130a42120b090306000a1e032815 +0e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e1e032e1227210e110f13 +2103121b103110fcecc4d4d4ec10c6ee1139111239391139391139113931002fc6e4f6e6ee10 +ee10c6111239111739111739304b5358071005ed0705ed111739071005ed111739071005ed11 +17390705ed111739071005ed111739071008ed07100eed11173907100eed111739071008ed07 +1008ed07100eed1117395922b20f3201015d40b2070b052209291c001c011f02170b2a002a01 +26123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b009a0199029708950b9315 +95169522992d1f090b090c08110c270c2818021b09190b190c19111c141c15161d1f32270027 +01290923122a132a1428152f323b09341239133f324a094c144b1546194f3256015a09590c55 +1259135c1f5f326a0c691160327501790c7a1193009301970295059c079c089f089a099b0b9a +0c9032a032b032395d005d010e011514163332363709013e0137330602070123270e01232200 +353436372e0135343633321617152e0123220615141601f25b55d4a05fa649fe7b01fc3b4206 +ba0c685d0117fc8f68e483f1fece86863032deb853a555579e4469833b032351a15892c23f40 +028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c52424b62f316f5833670135 +00b800cb00cb00c100aa009c01a600b800660000007100cb00a002b20085007500b800c301cb +0189022d00cb00a600f000d300aa008700cb03aa0400014a003300cb000000d9050200f40154 +00b4009c01390114013907060400044e04b4045204b804e704cd0037047304cd046004730133 +03a2055605a60556053903c5021200c9001f00b801df007300ba03e9033303bc0444040e00df +03cd03aa00e503aa0404000000cb008f00a4007b00b80014016f007f027b0252008f00c705cd +009a009a006f00cb00cd019e01d300f000ba018300d5009803040248009e01d500c100cb00f6 +00830354027f00000333026600d300c700a400cd008f009a0073040005d5010a00fe022b00a4 +00b4009c00000062009c0000001d032d05d505d505d505f0007f007b005400a406b806140723 +01d300b800cb00a601c301ec069300a000d3035c037103db0185042304a80448008f01390114 +01390360008f05d5019a0614072306660179046004600460047b009c00000277046001aa00e9 +04600762007b00c5007f027b000000b4025205cd006600bc00660077061000cd013b01850389 +008f007b0000001d00cd074a042f009c009c0000077d006f0000006f0335006a006f007b00ae +00b2002d0396008f027b00f600830354063705f6008f009c04e10266008f018d02f600cd0344 +0029006604ee00730000140000960000b707060504030201002c2010b002254964b040515820 +c859212d2cb002254964b040515820c859212d2c20100720b00050b00d7920b8ffff5058041b +0559b0051cb0032508b0042523e120b00050b00d7920b8ffff5058041b0559b0051cb0032508 +e12d2c4b505820b0fd454459212d2cb002254560442d2c4b5358b00225b0022545445921212d +2c45442d2cb00225b0022549b00525b005254960b0206368208a108a233a8a10653a2d000001 +00000002570a812518945f0f3cf5001f080000000000cef5cb7600000000cef5cb76f7d6fcae +0d72095500000008000000010000000000010000076dfe1d00000de2f7d6fa510d7200010000 +000000000000000000000000001804cd006605790010051200ba04660071051200ba04e50071 +034a00ba028b0000057d00c90596007307cb00ba023900c10323003704e3fffa04bc003b050e +00c9042b006f04e7007b051400ba04ec007105140087025c00c906330073063d008100000000 +0000004400000140000001b800000250000002c80000036c000003dc000003dc0000048c0000 +0524000005e800000638000006b400000724000008a80000090800000a6800000b9400000c34 +00000d0800000e0000000e4800000ef0000011580001000000180354002b0068000c00020010 +0099000800000415021600080004b8028040fffbfe03fa1403f92503f83203f79603f60e03f5 +fe03f4fe03f32503f20e03f19603f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03eafe +03e93a03e84203e7fe03e63203e5e45305e59603e48a4105e45303e3e22f05e3fa03e22f03e1 +fe03e0fe03df3203de1403dd9603dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03d5d4 +4705d57d03d44703d3d21b05d3fe03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e05cc +fe03cb1e03ca3203c9fe03c6851105c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe +03befe03bdfe03bcfe03bbfe03ba1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b7 +8004b6b52505b65d40ff03b64004b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae6403 +ad0e03acab2505ac6403abaa1205ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03a512 +03a4fe03a3a20e05a33203a20e03a16403a08a4105a096039ffe039e9d0c059efe039d0c039c +9b19059c64039b9a10059b19039a1003990a0398fe0397960d0597fe03960d03958a41059596 +0394930e05942803930e0392fa039190bb0591fe03908f5d0590bb039080048f8e25058f5d03 +8f40048e25038dfe038c8b2e058cfe038b2e038a8625058a410389880b05891403880b038786 +25058764038685110586250385110384fe038382110583fe0382110381fe0380fe037ffe0340 +ff7e7d7d057efe037d7d037c64037b5415057b25037afe0379fe03780e03770c03760a0375fe +0374fa0373fa0372fa0371fa0370fe036ffe036efe036c21036bfe036a1142056a530369fe03 +687d036711420566fe0365fe0364fe0363fe0362fe03613a0360fa035e0c035dfe035bfe035a +fe0359580a0559fa03580a035716190557320356fe0355541505554203541503530110055318 +03521403514a130551fe03500b034ffe034e4d10054efe034d10034cfe034b4a13054bfe034a +4910054a1303491d0d05491003480d0347fe0346960345960344fe0343022d0543fa0342bb03 +414b0340fe033ffe033e3d12053e14033d3c0f053d12033c3b0d053c40ff0f033b0d033afe03 +39fe033837140538fa033736100537140336350b05361003350b03341e03330d0332310b0532 +fe03310b03302f0b05300d032f0b032e2d09052e10032d09032c32032b2a25052b64032a2912 +052a25032912032827250528410327250326250b05260f03250b0324fe0323fe03220f032101 +10052112032064031ffa031e1d0d051e64031d0d031c1142051cfe031bfa031a420319114205 +19fe031864031716190517fe031601100516190315fe0314fe0313fe031211420512fe031102 +2d05114203107d030f64030efe030d0c16050dfe030c0110050c16030bfe030a100309fe0308 +022d0508fe030714030664030401100504fe03401503022d0503fe0302011005022d03011003 +00fe0301b80164858d012b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 26 -1 525 434 +%%EndPageSetup +q 26 -1 499 435 rectclip q +0 g +BT +17.6 0 0 17.6 130.590635 355.418671 Tm +/f-0-0 1 Tf +[(Anchor)-3( A)]TJ +11.78352 -0.0324679 Td +[(Anchor)-3( B)]TJ +ET +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +122.449 55.629 96 32.574 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +170.449 87.059 m 170.449 167.059 l S Q +170.449 274.838 m 167.25 278.037 l 170.449 266.838 l 173.648 278.037 l +h +170.449 274.838 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-159.059 170.449 m -155.859 167.25 l -167.059 170.449 l -155.859 173.648 + l h +-159.059 170.449 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +329.305 55.629 96 33.715 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +377.305 88.203 m 377.305 168.203 l S Q +377.305 273.693 m 374.105 276.892 l 377.305 265.693 l 380.504 276.892 l + h +377.305 273.693 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-160.203 377.305 m -157.004 374.105 l -168.203 377.305 l -157.004 380.504 + l h +-160.203 377.305 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +170.164 216.844 m 170.449 256.203 l 265.957 256.105 l 265.387 297.246 l + S Q +265.496 144.65 m 262.344 147.892 l 265.387 136.65 l 268.742 147.803 l h +265.496 144.65 m f* +0.799923 w +q 0.0138888 1 1 -0.0138888 0 433.896301 cm +-285.504 269.461 m -282.306 266.265 l -293.504 269.463 l -282.307 272.663 + l h +-285.504 269.461 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +137.555 351.727 96 80 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +89.879 15.629 m 138.449 52.773 l S Q +132.094 385.982 m 127.609 385.385 l 138.449 381.123 l 131.496 390.467 l + h +132.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-106.472 33.506 m -103.931 30.965 l -112.827 33.506 l -103.931 36.047 l + h +-106.472 33.506 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +201.879 8.773 m 194.449 53.918 l S Q +195.746 387.873 m 193.109 391.553 l 194.449 379.978 l 199.426 390.513 l + h +195.746 387.873 m f* +0.789384 w +q 0.164557 1 1 -0.164557 0 433.896301 cm +-13.448 197.959 m -10.288 194.802 l -21.342 197.961 l -10.287 201.119 l + h +-13.448 197.959 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +297.879 15.629 m 346.449 52.773 l S Q +340.094 385.982 m 335.609 385.385 l 346.449 381.123 l 339.496 390.467 l + h +340.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-237.721 133.872 m -235.179 131.331 l -244.076 133.873 l -235.18 136.414 + l h +-237.721 133.872 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +457.305 16.203 m 409.305 54.488 l S Q +415.559 384.396 m 416.066 388.892 l 409.305 379.408 l 420.059 383.892 l + h +415.559 384.396 m f* +0.625421 w +q 1 0.797619 0.797619 -1 0 433.896301 cm +229.848 232.831 m 232.35 230.331 l 223.594 232.831 l 232.353 235.333 l +h +229.848 232.831 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +418.449 0.203 m 387.02 53.918 l S Q +391.059 386.885 m 389.914 391.263 l 387.02 379.978 l 395.438 388.029 l +h +391.059 386.885 m f* +0.69049 w +q 0.585107 1 1 -0.585107 0 433.896301 cm +135.434 311.816 m 138.197 309.054 l 128.528 311.817 l 138.195 314.579 l + h +135.434 311.816 m S Q +BT +17.6 0 0 17.6 150.69448 46.484589 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +27.348 174.184 96 32.574 re S Q +BT +17.6 0 0 17.6 34.346965 238.578938 Tm +/f-0-0 1 Tf +[(Esca)-3(pe A)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 310.918 m 178.293 310.348 l 178.293 350.348 l S Q +178.293 91.549 m 175.094 94.752 l 178.293 83.549 l 181.492 94.752 l h +178.293 91.549 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-342.348 178.293 m -339.144 175.094 l -350.348 178.293 l -339.144 181.492 + l h +-342.348 178.293 m S Q +BT +12 0 0 12 142.310385 332.286029 Tm +/f-0-0 1 Tf +(SIGA & SIGB)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +427.684 171.355 96 32.57 re S Q +BT +17.6 0 0 17.6 434.682052 241.407364 Tm +/f-0-0 1 Tf +[(Esca)-3(pe B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +315.172 352.695 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 45.514032 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 319.629 m 297.879 332.887 287.133 343.629 273.879 343.629 c 260.621 + 343.629 249.879 332.887 249.879 319.629 c 249.879 306.375 260.621 295.629 + 273.879 295.629 c 287.133 295.629 297.879 306.375 297.879 319.629 c h +297.879 319.629 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 295.629 m 273.879 343.629 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 319.629 m 297.879 319.629 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 326.918 m 194.293 326.918 l 194.293 350.348 l S Q +194.293 91.549 m 191.094 94.752 l 194.293 83.549 l 197.492 94.752 l h +194.293 91.549 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-342.348 194.293 m -339.144 191.094 l -350.348 194.293 l -339.144 197.492 + l h +-342.348 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 310.918 m 368.883 310.348 l 368.887 350.348 l S Q +368.887 91.549 m 365.684 94.752 l 368.887 83.549 l 372.086 94.752 l h +368.887 91.549 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-342.348 368.887 m -339.145 365.684 l -350.348 368.887 l -339.145 372.086 + l h +-342.348 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 326.918 m 352.883 326.918 l 352.887 350.348 l S Q +352.887 91.549 m 349.684 94.752 l 352.887 83.549 l 356.086 94.752 l h +352.887 91.549 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-342.348 352.887 m -339.145 349.683 l -350.348 352.887 l -339.145 356.086 + l h +-342.348 352.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +377.742 218.223 m 377.789 256.203 l 281.711 255.531 l 281.711 297.816 l + S Q +281.711 144.08 m 278.508 147.279 l 281.711 136.08 l 284.91 147.279 l h +281.711 144.08 m f* +0.8 w +q 0.000000189189 1 1 -0.000000189189 0 433.896301 cm +-289.816 281.711 m -286.617 278.508 l -297.816 281.711 l -286.617 284.91 + l h +-289.816 281.711 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +193.879 191.387 m 193.879 204.641 183.133 215.387 169.879 215.387 c 156.621 + 215.387 145.879 204.641 145.879 191.387 c 145.879 178.133 156.621 167.387 + 169.879 167.387 c 183.133 167.387 193.879 178.133 193.879 191.387 c h +193.879 191.387 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +169.879 167.387 m 169.879 215.387 l S Q +q 1 0 0 -1 0 433.896301 cm +145.879 191.387 m 193.879 191.387 l S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +402.199 193.73 m 402.199 206.988 391.453 217.73 378.199 217.73 c 364.945 + 217.73 354.199 206.988 354.199 193.73 c 354.199 180.477 364.945 169.73 +378.199 169.73 c 391.453 169.73 402.199 180.477 402.199 193.73 c h +402.199 193.73 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +378.199 169.73 m 378.199 217.73 l S Q +q 1 0 0 -1 0 433.896301 cm +354.199 193.73 m 402.199 193.73 l S Q +BT +12 0 0 12 154.199851 68.649481 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +145.879 191.629 m 125.879 191.629 l S Q +133.879 242.267 m 137.078 245.467 l 125.879 242.267 l 137.078 239.064 l + h +133.879 242.267 m f* +0.8 w +q 1 0 0 -1 0 433.896301 cm +133.879 191.629 m 137.078 188.43 l 125.879 191.629 l 137.078 194.832 l +h +133.879 191.629 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.652 190.984 m 423.652 190.984 l S Q +415.652 242.912 m 412.453 239.713 l 423.652 242.912 l 412.453 246.115 l + h +415.652 242.912 m f* +0.8 w +q -1 0 0 1 0 433.896301 cm +-415.652 -190.984 m -412.453 -194.184 l -423.652 -190.984 l -412.453 -187.781 + l h +-415.652 -190.984 m S Q +BT +12 0 0 12 78.878745 206.540155 Tm +/f-0-0 1 Tf +(SIGA)Tj +-0.712919 5.044474 Td +(SIGA & SIGB)Tj +27.716749 0.235534 Td +(SIGA & SIGB)Tj +-4.384188 5.279695 Td +(SIGA & SIGB)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +73.477 207.059 m 73.477 252.309 l S Q +73.477 189.588 m 70.277 192.787 l 73.477 181.588 l 76.68 192.787 l h +73.477 189.588 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-244.309 73.477 m -241.109 70.277 l -252.309 73.477 l -241.109 76.68 l +h +-244.309 73.477 m S Q +BT +12 0 0 12 479.918845 208.481293 Tm +/f-0-0 1 Tf +(SIGB)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +474.531 205.117 m 474.531 250.367 l S Q +474.531 191.529 m 471.328 194.728 l 474.531 183.529 l 477.73 194.728 l +h +474.531 191.529 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-242.367 474.531 m -239.168 471.328 l -250.367 474.531 l -239.168 477.73 + l h +-242.367 474.531 m S Q +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/dual-anchor-diag2.svg b/doc/dual-anchor-diag2.svg new file mode 100644 index 000000000..55683994b --- /dev/null +++ b/doc/dual-anchor-diag2.svg @@ -0,0 +1,795 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + + SIGA & SIGB + + + Escape B + + + CommitTx B + + + + + + + + + + + + + + + + + + SIG A & B + SIG A & B + + + SIGA + SIGA & SIGB + SIGA & SIGB + SIGA & SIGB + + SIGB + + + diff --git a/doc/dual-anchor-diag3.eps b/doc/dual-anchor-diag3.eps new file mode 100644 index 000000000..456429ecc --- /dev/null +++ b/doc/dual-anchor-diag3.eps @@ -0,0 +1,806 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Tue Jul 14 10:46:42 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 26 -1 547 434 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 45 /hyphen put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 71 /G put +Encoding 73 /I put +Encoding 77 /M put +Encoding 79 /O put +Encoding 80 /P put +Encoding 82 /R put +Encoding 83 /S put +Encoding 84 /T put +Encoding 86 /V put +Encoding 95 /underscore put +Encoding 97 /a put +Encoding 99 /c put +Encoding 101 /e put +Encoding 104 /h put +Encoding 105 /i put +Encoding 109 /m put +Encoding 110 /n put +Encoding 111 /o put +Encoding 112 /p put +Encoding 114 /r put +Encoding 115 /s put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 31 dict dup begin +/.notdef 0 def +/A 1 def +/n 2 def +/c 3 def +/h 4 def +/o 5 def +/r 6 def +/space 7 def +/B 8 def +/C 9 def +/m 10 def +/i 11 def +/t 12 def +/T 13 def +/x 14 def +/E 15 def +/s 16 def +/a 17 def +/p 18 def +/e 19 def +/S 20 def +/I 21 def +/G 22 def +/ampersand 23 def +/O 24 def +/P 25 def +/underscore 26 def +/V 27 def +/R 28 def +/M 29 def +/hyphen 30 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d3900001648000001fe6670676d7134766a0000 +1848000000ab676c7966ab10bf5d0000009c000015ac68656164026638f7000018f400000036 +686865610cb806700000192c00000024686d747895560ef9000019500000007c6c6f63610001 +3e90000019cc000000806d617870048c067100001a4c00000020707265703b07f10000001a6c +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000100ba00000464047b0013003640190309 +00030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31002f3ce4f4c4ec11 +12173930b46015cf1502015d0111231134262322061511231133153e013332160464b87c7c95 +acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef00010071ffe303e7047b0019 +003f401b00860188040e860d880ab91104b917b8118c1a07120d004814451a10fce432ec3100 +10e4f4ec10fef4ee10f5ee30400b0f1b101b801b901ba01b05015d01152e0123220615141633 +323637150e0123220011100021321603e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655 +a20435ac2b2be3cdcde32b2baa2424013e010e0112013a230000000100ba0000046406140013 +00344019030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f +3cecf4c4ec1112173930b2601501015d0111231134262322061511231133113e013332160464 +b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef0000020071ffe3 +0475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec3100 +10e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b +12a019f01911015d012206151416333236353426273200111000232200111000027394acab95 +93acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113 +011401380000000100ba0000034a047b001100304014060b0700110b03870eb809bc070a0608 +0008461210fcc4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511 +231133153e0133321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663 +05050000000300c9000004ec05d5000800110020004340231900950a0995128101950aad1f11 +0b080213191f05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fec +ecf4ec10ee3930b20f2201015d01112132363534262301112132363534262325213216151406 +071e01151404232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfd +e802c9fddd878b8c850266fe3e6f727170a6c0b189a21420cb98c8da00010073ffe3052705f0 +00190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec31 +0010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123 +2000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed05 +62d55f5efec7fed8fed9fec75e5fd34848019f01670168019f470000000100ba0000071d047b +0022005a4026061209180f00061d07150c871d2003b81bbc19100700110f0808065011080f50 +1c18081a462310fcec32fcfcfcec11123931002f3c3ce4f43cc4ec3211121739304013302450 +2470249024a024a024bf24df24ff2409015d013e013332161511231134262322061511231134 +262322061511231133153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797a +ab03897c76f5e2fd5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c000000000200c1 +00000179061400030007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fc +ec30400b1009400950096009700905015d1333112311331523c1b8b8b8b80460fba00614e900 +00010037000002f2059e0013003840190e05080f03a9001101bc08870a0b0809020400081012 +0e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930b2af1501015d011121152111 +14163b01152322263511233533110177017bfe854b73bdbdd5a28787059efec28ffda0894e9a +9fd202608f013e0000000001fffa000004e905d50007004a400e0602950081040140031c0040 +050810d4e4fce431002ff4ec3230014bb00a5458bd00080040000100080008ffc03811373859 +401300091f00100110021f071009400970099f09095d03211521112311210604effdeecbfdee +05d5aafad5052b000001003b000004790460000b014340460511060706041103040707060411 +050401020103110202010b110001000a11090a0101000a110b0a0708070911080807420a0704 +01040800bf05020a0704010408000208060c10d44bb00a544bb00f545b4bb010545b4bb01154 +5b58b90006004038594bb0145458b90006ffc03859c4d4c411173931002f3cec321739304b53 +58071005ed071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014098 +0a04040a1a04150a260a3d04310a55045707580a660a76017a047607740a8d04820a99049f04 +9707920a900aa601a904af04a507a30aa00a1c0a03040505090a0b1a03150515091a0b290326 +0525092a0b200d3a013903370534073609390b300d4903460545094a0b400d59005601590259 +0357055606590756085609590b500d6f0d78017f0d9b019407ab01a407b00dcf0ddf0dff0d2f +5d005d09022309012309013309010464fe6b01aad9febafebad901b3fe72d9012901290460fd +dffdc101b8fe48024a0216fe71018f00000100c90000048b05d5000b002e4015069504029500 +81089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01015d +132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa00000001 +006fffe303c7047b002700e7403c0d0c020e0b531f1e080902070a531f1f1e420a0b1e1f0415 +00860189041486158918b91104b925b8118c281e0a0b1f1b0700521b080e07081422452810fc +c4ecd4ece4111239393939310010e4f4ec10fef5ee10f5ee121739304b535807100eed111739 +070eed1117395922b2002701015d406d1c0a1c0b1c0c2e092c0a2c0b2c0c3b093b0a3b0b3b0c +0b200020012402280a280b2a132f142f152a16281e281f292029212427860a860b860c860d12 +000000010202060a060b030c030d030e030f03100319031a031b031c041d09272f293f295f29 +7f2980299029a029f029185d005d7101152e012322061514161f011e0115140623222627351e +013332363534262f012e01353436333216038b4ea85a898962943fc4a5f7d85ac36c66c66182 +8c65ab40ab98e0ce66b4043fae282854544049210e2a99899cb62323be353559514b50250f24 +95829eac1e0000000002007bffe3042d047b000a002500bc4027191f0b17090e00a91706b90e +1120861fba1cb923b8118c170c001703180d09080b1f030814452610fcecccd4ec3232113939 +31002fc4e4f4fcf4ec10c6ee10ee11391139123930406e301d301e301f3020302130223f2740 +1d401e401f402040214022501d501e501f50205021502250277027851d871e871f8720872185 +229027a027f0271e301e301f30203021401e401f40204021501e501f50205021601e601f6020 +6021701e701f70207021801e801f80208021185d015d0122061514163332363d01371123350e +01232226353436332135342623220607353e0133321602bedfac816f99b9b8b83fbc88accbfd +fb0102a79760b65465be5af3f00233667b6273d9b4294cfd81aa6661c1a2bdc0127f8b2e2eaa +2727fc00000200bafe5604a4047b0010001c003e401b1ab9000e14b90508b80e8c01bd03bc1d +11120b471704000802461d10fcec3232f4ec310010e4e4e4f4c4ec10c4ee304009601e801ea0 +1ee01e04015d2511231133153e013332001110022322260134262322061514163332360173b9 +b93ab17bcc00ffffcc7bb10238a79292a7a79292a7a8fdae060aaa6461febcfef8fef8febc61 +01ebcbe7e7cbcbe7e700000000020071ffe3047f047b0014001b007040240015010986088805 +15a90105b90c01bb18b912b80c8c1c1b1502081508004b02120f451c10fcecf4ecc411123931 +0010e4f4ece410ee10ee10f4ee1112393040293f1d701da01dd01df01d053f003f013f023f15 +3f1b052c072f082f092c0a6f006f016f026f156f1b095d71015d0115211e0133323637150e01 +232000111000333200072e0123220607047ffcb20ccdb76ac76263d06bfef4fec70129fce201 +07b802a5889ab90e025e5abec73434ae2a2c0138010a01130143feddc497b4ae9e0000010087 +ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f1f1e420a0b1e1f041501 +0015a11494189511049500942591118c281e0a0b1f1b0700221b190e2d071914222810dcc4ec +fcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b535807100eed1117390710 +0eed1117395922b20f2901015db61f292f294f29035d01152e012322061514161f011e011514 +0421222627351e013332363534262f012e01353424333216044873cc5fa5b377a67ae2d7fedd +fee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663651f192bd9b6d9e0302f +d04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003002eb700af02011c0004 +0410fc4bb0105458b9000000403859ec31002fec3001400d30054005500560058f059f05065d +13331123c9caca05d5fa2b0000010073ffe3058b05f0001d0039402000051b0195031b950812 +a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fcc4310010e4f4ecf4ec10 +fed4ee11393930251121352111060423200011100021320417152e0123200011100021323604 +c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed011301126ba8d50191a6 +fd7f53550199016d016e01994846d75f60fecefed1fed2fece25000000020081ffe305fe05f0 +0009003001cd40960d010e0c861112110b860a0b121211098600091516150701060886161615 +02010301861d1e1d008609001e1e1d201f02211e110a130a17161503181411130a0708020609 +1113130a0201020300110a130a171602181511130a141113130a42120b090306000a1e032815 +0e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e1e032e1227210e110f13 +2103121b103110fcecc4d4d4ec10c6ee1139111239391139391139113931002fc6e4f6e6ee10 +ee10c6111239111739111739304b5358071005ed0705ed111739071005ed111739071005ed11 +17390705ed111739071005ed111739071008ed07100eed11173907100eed111739071008ed07 +1008ed07100eed1117395922b20f3201015d40b2070b052209291c001c011f02170b2a002a01 +26123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b009a0199029708950b9315 +95169522992d1f090b090c08110c270c2818021b09190b190c19111c141c15161d1f32270027 +01290923122a132a1428152f323b09341239133f324a094c144b1546194f3256015a09590c55 +1259135c1f5f326a0c691160327501790c7a1193009301970295059c079c089f089a099b0b9a +0c9032a032b032395d005d010e011514163332363709013e0137330602070123270e01232200 +353436372e0135343633321617152e0123220615141601f25b55d4a05fa649fe7b01fc3b4206 +ba0c685d0117fc8f68e483f1fece86863032deb853a555579e4469833b032351a15892c23f40 +028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c52424b62f316f5833670002 +0073ffe305d905f0000b00170023401306951200950c91128c1809190f33031915101810fcec +fcec310010e4f4ec10ee300122001110003332001110002720001110002120001110000327dc +fefd0103dcdc0101feffdc013a0178fe88fec6fec5fe870179054cfeb8fee5fee6feb8014801 +1a011b0148a4fe5bfe9efe9ffe5b01a40162016201a50000000200c90000048d05d500080013 +003a40180195100095098112100a0802040005190d3f11001c09041410fcec32fcec11173931 +002ff4ecd4ec30400b0f151f153f155f15af1505015d01113332363534262325213204151404 +2b0111230193fe8d9a9a8dfe3801c8fb0101fefffbfeca052ffdcf92878692a6e3dbdde2fda8 +0001ffecfe1d0414feac0003000fb500a90100020410c4c43100d4ec30011521350414fbd8fe +ac8f8f000000000100100000056805d5000600b7402704110506050311020306060503110403 +000100021101010042030401af0006040302000505010710d4c4173931002fec3239304b5358 +071005ed071008ed071008ed071005ed5922b2500801015d406200032a03470447055a037d03 +8303070600070208040906150114021a041a052a002601260229042905250620083800330133 +023c043c053706480045014502490449054706590056066602690469057a0076017602790479 +057506800898009706295d005d21013309013301024afdc6d301d901dad2fdc705d5fb1704e9 +fa2b000200c90000055405d50013001c00b14035090807030a06110304030511040403420604 +0015030415950914950d810b040506031109001c160e050a191904113f140a1c0c041d10fcec +32fcc4ec1117391139393931002f3cf4ecd4ec123912391239304b5358071005ed071005ed11 +17395922b2401e01015d40427a13010500050105020603070415001501140216031704250025 +01250226032706260726082609201e3601360246014602680575047505771388068807980698 +071f5d005d011e01171323032e012b01112311212016151406011133323635342623038d417b +3ecdd9bf4a8b78dcca01c80100fc83fd89fe9295959202bc16907efe68017f9662fd8905d5d6 +d88dba024ffdee8783838500000100c90000061f05d5000c00bf403403110708070211010208 +080702110302090a0901110a0a09420a070203080300af080b050908030201050a061c043e0a +1c00040d10fcecfcec11173931002f3cc4ec32111739304b5358071005ed071008ed071008ed +071005ed5922b2700e01015d405603070f080f09020a15021407130a260226072007260a200a +3407350a69027c027b07790a80028207820a90021604010b0313011b0323012c032708280934 +013c035608590965086a097608790981018d0395019b03145d005d1321090121112311012301 +1123c9012d017d017f012dc5fe7fcbfe7fc405d5fc0803f8fa2b051ffc000400fae100000001 +006401df027f028300030011b6009c020401000410dccc310010d4ec301321152164021bfde5 +0283a400013500b800cb00cb00c100aa009c01a600b800660000007100cb00a002b200850075 +00b800c301cb0189022d00cb00a600f000d300aa008700cb03aa0400014a003300cb000000d9 +050200f4015400b4009c01390114013907060400044e04b4045204b804e704cd0037047304cd +04600473013303a2055605a60556053903c5021200c9001f00b801df007300ba03e9033303bc +0444040e00df03cd03aa00e503aa0404000000cb008f00a4007b00b80014016f007f027b0252 +008f00c705cd009a009a006f00cb00cd019e01d300f000ba018300d5009803040248009e01d5 +00c100cb00f600830354027f00000333026600d300c700a400cd008f009a0073040005d5010a +00fe022b00a400b4009c00000062009c0000001d032d05d505d505d505f0007f007b005400a4 +06b80614072301d300b800cb00a601c301ec069300a000d3035c037103db0185042304a80448 +008f0139011401390360008f05d5019a0614072306660179046004600460047b009c00000277 +046001aa00e904600762007b00c5007f027b000000b4025205cd006600bc00660077061000cd +013b01850389008f007b0000001d00cd074a042f009c009c0000077d006f0000006f0335006a +006f007b00ae00b2002d0396008f027b00f600830354063705f6008f009c04e10266008f018d +02f600cd03440029006604ee00730000140000960000b707060504030201002c2010b0022549 +64b040515820c859212d2cb002254964b040515820c859212d2c20100720b00050b00d7920b8 +ffff5058041b0559b0051cb0032508b0042523e120b00050b00d7920b8ffff5058041b0559b0 +051cb0032508e12d2c4b505820b0fd454459212d2cb002254560442d2c4b5358b00225b00225 +45445921212d2c45442d2cb00225b0022549b00525b005254960b0206368208a108a233a8a10 +653a2d00000100000002570afb6146a45f0f3cf5001f080000000000cef5cb7600000000cef5 +cb76f7d6fcae0d72095500000008000000010000000000010000076dfe1d00000de2f7d6fa51 +0d7200010000000000000000000000000000001f04cd006605790010051200ba046600710512 +00ba04e50071034a00ba028b0000057d00c90596007307cb00ba023900c10323003704e3fffa +04bc003b050e00c9042b006f04e7007b051400ba04ec007105140087025c00c906330073063d +0081064c007304d300c90400ffec05790010058f00c906e700c902e300640000000000000044 +00000140000001b800000250000002c80000036c000003dc000003dc0000048c000005240000 +05e800000638000006b400000724000008a80000090800000a6800000b9400000c3400000d08 +00000e0000000e4800000ef000001158000011e4000012640000129000001370000014840000 +1580000015ac00010000001f0354002b0068000c000200100099000800000415021600080004 +b8028040fffbfe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f32503f20e03f19603 +f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e84203e7fe03e63203e5 +e45305e59603e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df3203de1403dd9603 +dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d44703d3d21b05d3fe +03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca3203c9fe03c68511 +05c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe03bcfe03bbfe03ba +1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505b65d40ff03b64004 +b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab2505ac6403abaa1205 +ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a20e05a33203a20e03 +a16403a08a4105a096039ffe039e9d0c059efe039d0c039c9b19059c64039b9a10059b19039a +1003990a0398fe0397960d0597fe03960d03958a410595960394930e05942803930e0392fa03 +9190bb0591fe03908f5d0590bb039080048f8e25058f5d038f40048e25038dfe038c8b2e058c +fe038b2e038a8625058a410389880b05891403880b0387862505876403868511058625038511 +0384fe038382110583fe0382110381fe0380fe037ffe0340ff7e7d7d057efe037d7d037c6403 +7b5415057b25037afe0379fe03780e03770c03760a0375fe0374fa0373fa0372fa0371fa0370 +fe036ffe036efe036c21036bfe036a1142056a530369fe03687d036711420566fe0365fe0364 +fe0363fe0362fe03613a0360fa035e0c035dfe035bfe035afe0359580a0559fa03580a035716 +190557320356fe035554150555420354150353011005531803521403514a130551fe03500b03 +4ffe034e4d10054efe034d10034cfe034b4a13054bfe034a4910054a1303491d0d0549100348 +0d0347fe0346960345960344fe0343022d0543fa0342bb03414b0340fe033ffe033e3d12053e +14033d3c0f053d12033c3b0d053c40ff0f033b0d033afe0339fe033837140538fa0337361005 +37140336350b05361003350b03341e03330d0332310b0532fe03310b03302f0b05300d032f0b +032e2d09052e10032d09032c32032b2a25052b64032a2912052a250329120328272505284103 +27250326250b05260f03250b0324fe0323fe03220f03210110052112032064031ffa031e1d0d +051e64031d0d031c1142051cfe031bfa031a42031911420519fe031864031716190517fe0316 +01100516190315fe0314fe0313fe031211420512fe0311022d05114203107d030f64030efe03 +0d0c16050dfe030c0110050c16030bfe030a100309fe0308022d0508fe030714030664030401 +100504fe03401503022d0503fe0302011005022d0301100300fe0301b80164858d012b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%BeginResource: font DejaVuSans-Bold +11 dict begin +/FontType 42 def +/FontName /DejaVuSans-Bold def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 79 /O put +Encoding 82 /R put +/CharStrings 3 dict dup begin +/.notdef 0 def +/O 1 def +/R 2 def +end readonly def +/sfnts [ +<000100000009008000030010637674203eb9310800000268000002546670676d5b026bf00000 +04bc000000ac676c7966581f41560000009c000001cc68656164045e38fb0000056800000036 +686865610eaf0774000005a000000024686d747811c30188000005c40000000c6c6f63610000 +02f8000005d0000000106d6178700648062d000005e000000020707265707c61a2e700000600 +000007a700020066fe96046605a400030007001fbc00040126000000060126b6010805890204 +002fc4d4ec310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f27206 +2900000000020066ffe3066605f0000b00170032401306ae1200ae0c9c129818092d0f37032d +152b1810fcecfcec310010e4f4ec10ee30400b0019171310192f193f1905015d012202151412 +3332123534020320001110002120001110000366b0c2c2b0b1c2c2b101680198fe68fe98fe99 +fe67019904d9fefcecebfefc0104ebec01040117fe64fe95fe96fe64019c016a016b019c0000 +000200bc0000060005d50008001c008740321b1a021c191d161716181d1717162519160a1300 +ae0906ae0c8d170a16131803101c190600040d07031617100907160b031d10fcec32d4c4ec11 +39173911173931002f3cf4ecd4ec39123939304b5358071005ed071005ed1117395922b2181c +01015d401f1b181b191a1a1b1b1a1c361536164515451656155616501e65156516601e0f5d01 +32363534262b0119022111212004151406071e01171321032e012302df79696979a2fe7f024c +012701138f904f7d40d1fe66b637715e033f5a676658fe81fef6fdcb05d5c6d694be2d127f81 +fe5801737052000001660133016600bc00e90000013d00a200fa031f00020002006601660002 +000200ac015400ec00bc006201660181048501540166016d04a400020166007f04cd00000002 +0133006200710000002504a401bc00ba00e500660181018d0548055a0166016d000000000002 +000200f605c301f0053902390058046d043d04b2048104b2016601750466048100b004660439 +02d1049c047b04cf047b005801330166014c0166014c000200ac009a014a0123009a029a0144 +0119014402cd00c100000166013f019a013b05cb05cb00d500d5015000ac00ac0077020a01c7 +01f2012f015801b2012300f600f6011f012f0135023501ee01e70133009800d10358050a009a +008f0112009800bc00cd00e500e500f2007304000166008f05d5022b05d500c300e100d700e5 +0000006a01020000001d032d05d505d505f000a8006a00ec00e1010205d506140721046602f8 +00ec018302a602f80123010201020112011f031f005e03cd046004c7048900ec01bc00ba0102 +0333031f03420333035c0112011f05d5019a009a00e106660179046004600460047b000000ec +02c302b802cd00be00dd00d50000006a025c027b029a00dd01ae01ba01120000008501ae0460 +0762041b009a069a045800ee009a029a00d102cd019a015005cb05cb008b008b063100f60406 +00f0034c016004a800c10000002505c101000121074a06120096014a078300a800000337007b +0014000000c9010005c105c105c105c101000108061d00960427039e00ec0102027d01330098 +00d10358017900cd02390362009c009c009c009301b8009300b80073000014000326b7070605 +04030201002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c +20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d +7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b80128454459212d2cb0022545 +60442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0052549 +60b0206368208a108a233a8a10653a2d000100000002570aca280dd25f0f3cf5001f08000000 +0000cef5cb7000000000cef5cb70f772fcae0fcd096500010008000000010000000000010000 +076dfe1d00001021f772f9320fcd00010000000000000000000000000000000304cd006606cd +0066062900bc000000000000004c000000e0000001cc000100000003034e002b0078000c0002 +001000400008000005ed02210008000441840280012600fe000301250011000301240121003a +0005012400fa000301230016000301220121003a0005012200fe00030121003a0003012000fa +0003011f00bb0003011e00640003011d00fe0003011c00190003011b001e0003011a00fe0003 +011900fe0003011800fe0003011700fe0003011600fe000301150114000e0005011500fe0003 +0114000e0003011300fe0003011200fe0003010f010e007d0005010f00fe0003010e007d0003 +010d010c008c0005010d00fe0003010d00c00004010c010b00590005010c008c0003010c0080 +0004010b010a00260005010b00590003010b00400004010a00260003010900fe0003010800fe +00030107000c00030107008000040106b2972e054113010600fa0003010500fa0003010400fe +0003010300190003010200fa0003010100fa0003010040ff7d03ff3e03fefe03fcfb2c05fcfe +03fb2c03fafe03f9f84705f97d03f84703f7fa03f6fe03f5fe03f4fe03f3bb03f2fe03f1fe03 +f0fe03ef1e03eefe03edec0a05edfe03ec0a03ec4004ebea0a05eb3203ea0a03e9fa03e89116 +05e8fe03e7fa03e6fa03e5911605e5fe03e4fe03e3fe03e2fe03e1fe03e0fe03dffe03defa03 +dddc1805dd6403dc1803dba01e05db6403dad92505dafa03d92503d8d12505d8fa03d7d61405 +d71603d6d51005d61403d51003d4d30b05d42003d30b03d2d12505d2fa03d1911605d12503d0 +940c05d02303cfce1405cf2603cecd1205ce1403cd1203cc911605cc1d03cb1403cac9bb05ca +fe03c9c85d05c9bb03c98004c840ffc72505c85d03c84004c72503c6fe03c56403c4901005c4 +fe03c31c03c2fe03c1fe03c0bf3a05c0fa03bfad1b05bf3a03bebd1a05be3203bdbc1105bd1a +03bcbb0f05bc1103bbba0c05bb0f03ba0c03b9911605b9fe03b8fe03b71503b61203b5fe03b4 +fe03b3fe03b21703b11903b01603afad1b05affa03aead1b05aefa03ad911605ad1b03ac9116 +05ac7d03abfe03aa2603a9fe03a8fe03a7fe03a6fe03a50a03a4fe03a3a20e05a3fe03a20e03 +a24004a1a01e05a1fa03a0911605a01e039f9116059ffa039e940c059e1c039dfe039c9bbb05 +9cfe039b9a5d059bbb039b80049a8f25059a5d039a400499fe0398972e0598fe03972e039691 +1605961e40ff0395940c05952003940c0393911605934b039291160592fe0391901005911603 +9010038f25038efe038dfe038cfe038bfe038afe0389fe038887250588fe0387250386fe0385 +fe0384320383960382fe0381fe038019037f0a037efe037dfe037cfe037bfa037afa0379fe03 +7776a60577fe0376a60375741b0575fa03741b0373fa03727d0371fe03706f2c056f2c036efa +036dfa036cfa036bfe036afe0369fe0368630c0568320367fe0366320365640a0565fe03640a +0364400463620a05630c03620a0361601505619603600111056015035f0a035efe035dfe035c +0111055cfe035b5a1b055bfe035a0111055a1b0359fe0358fa0357fe035601110540ff56fe03 +55fe03541e035314035251190552fa0351011105511903504f190550fa034f4e11054f19034e +11034d1e034c4b14054c15034b4a11054b14034a490e054a1103490e0348fa03474614054715 +0346140345fa0344430e05440f03430e034241250542fa0341011105412503403f0f0540fe03 +3f3e0e053f0f033e0e033d3c0d053d16033c0d033b64033afe0339140338fe0337130336351a +0536250335341405351a0335c004340a0d0534140334800433320c05331403334004320c0331 +30a60531fe033001110530a6032f0c032e13032d2c3a052dfa032c1525052c3a032b64032a64 +0329fe0328150327171105271e03262003251e0324231105402b241e0323110322000d0522fa +03210f032140042014031f0a031e1e031d1c19051d25031c0f13051c19031cb801004091041b +0d031a194b051a7d0319011105194b0318fe031711031615250516fa03150111051525031464 +0313110312fe031101110511fe031064030f0e10050f13030fc0040e10030e80040d0111050d +fa030c32030b0a0d050b16030b80040a0d030a400409fe0308fe0307fe0306050a0506fe0305 +0a0305400404fa030364030201110502fe0301000d05011103000d0301b80164858d012b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d0000> +] def +/f-1-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 26 -1 547 434 +%%EndPageSetup +q 26 -1 521 435 rectclip q +0 g +BT +17.6 0 0 17.6 130.590635 355.418671 Tm +/f-0-0 1 Tf +[(Anchor)-3( A)]TJ +11.78352 -0.0324679 Td +[(Anchor)-3( B)]TJ +ET +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +122.449 55.629 96 32.574 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +170.449 87.059 m 170.449 167.059 l S Q +170.449 274.838 m 167.25 278.037 l 170.449 266.838 l 173.648 278.037 l +h +170.449 274.838 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-159.059 170.449 m -155.859 167.25 l -167.059 170.449 l -155.859 173.648 + l h +-159.059 170.449 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +329.305 55.629 96 33.715 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +377.305 88.203 m 377.305 168.203 l S Q +377.305 273.693 m 374.105 276.892 l 377.305 265.693 l 380.504 276.892 l + h +377.305 273.693 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-160.203 377.305 m -157.004 374.105 l -168.203 377.305 l -157.004 380.504 + l h +-160.203 377.305 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +170.164 216.844 m 170.449 256.203 l 265.957 256.105 l 265.387 297.246 l + S Q +265.496 144.65 m 262.344 147.892 l 265.387 136.65 l 268.742 147.803 l h +265.496 144.65 m f* +0.799923 w +q 0.0138888 1 1 -0.0138888 0 433.896301 cm +-285.504 269.461 m -282.306 266.265 l -293.504 269.463 l -282.307 272.663 + l h +-285.504 269.461 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +137.555 351.727 96 80 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +89.879 15.629 m 138.449 52.773 l S Q +132.094 385.982 m 127.609 385.385 l 138.449 381.123 l 131.496 390.467 l + h +132.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-106.472 33.506 m -103.931 30.965 l -112.827 33.506 l -103.931 36.047 l + h +-106.472 33.506 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +201.879 8.773 m 194.449 53.918 l S Q +195.746 387.873 m 193.109 391.553 l 194.449 379.978 l 199.426 390.513 l + h +195.746 387.873 m f* +0.789384 w +q 0.164557 1 1 -0.164557 0 433.896301 cm +-13.448 197.959 m -10.288 194.802 l -21.342 197.961 l -10.287 201.119 l + h +-13.448 197.959 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +297.879 15.629 m 346.449 52.773 l S Q +340.094 385.982 m 335.609 385.385 l 346.449 381.123 l 339.496 390.467 l + h +340.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-237.721 133.872 m -235.179 131.331 l -244.076 133.873 l -235.18 136.414 + l h +-237.721 133.872 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +457.305 16.203 m 409.305 54.488 l S Q +415.559 384.396 m 416.066 388.892 l 409.305 379.408 l 420.059 383.892 l + h +415.559 384.396 m f* +0.625421 w +q 1 0.797619 0.797619 -1 0 433.896301 cm +229.848 232.831 m 232.35 230.331 l 223.594 232.831 l 232.353 235.333 l +h +229.848 232.831 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +418.449 0.203 m 387.02 53.918 l S Q +391.059 386.885 m 389.914 391.263 l 387.02 379.978 l 395.438 388.029 l +h +391.059 386.885 m f* +0.69049 w +q 0.585107 1 1 -0.585107 0 433.896301 cm +135.434 311.816 m 138.197 309.054 l 128.528 311.817 l 138.195 314.579 l + h +135.434 311.816 m S Q +BT +17.6 0 0 17.6 150.69448 46.484589 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +27.348 174.184 96 32.574 re S Q +BT +17.6 0 0 17.6 34.346965 238.578938 Tm +/f-0-0 1 Tf +[(Esca)-3(pe A)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 310.918 m 178.293 310.348 l 178.293 350.348 l S Q +178.293 91.549 m 175.094 94.752 l 178.293 83.549 l 181.492 94.752 l h +178.293 91.549 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-342.348 178.293 m -339.144 175.094 l -350.348 178.293 l -339.144 181.492 + l h +-342.348 178.293 m S Q +BT +12 0 0 12 142.310385 332.286029 Tm +/f-0-0 1 Tf +(SIGA & SIGB)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +427.684 171.355 96 32.57 re S Q +BT +17.6 0 0 17.6 434.682052 241.407364 Tm +/f-0-0 1 Tf +[(Esca)-3(pe B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +315.172 352.695 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 45.514032 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 319.629 m 297.879 332.887 287.133 343.629 273.879 343.629 c 260.621 + 343.629 249.879 332.887 249.879 319.629 c 249.879 306.375 260.621 295.629 + 273.879 295.629 c 287.133 295.629 297.879 306.375 297.879 319.629 c h +297.879 319.629 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 295.629 m 273.879 343.629 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 319.629 m 297.879 319.629 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 326.918 m 194.293 326.918 l 194.293 350.348 l S Q +194.293 91.549 m 191.094 94.752 l 194.293 83.549 l 197.492 94.752 l h +194.293 91.549 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-342.348 194.293 m -339.144 191.094 l -350.348 194.293 l -339.144 197.492 + l h +-342.348 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 310.918 m 368.883 310.348 l 368.887 350.348 l S Q +368.887 91.549 m 365.684 94.752 l 368.887 83.549 l 372.086 94.752 l h +368.887 91.549 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-342.348 368.887 m -339.145 365.684 l -350.348 368.887 l -339.145 372.086 + l h +-342.348 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 326.918 m 352.883 326.918 l 352.887 350.348 l S Q +352.887 91.549 m 349.684 94.752 l 352.887 83.549 l 356.086 94.752 l h +352.887 91.549 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-342.348 352.887 m -339.145 349.683 l -350.348 352.887 l -339.145 356.086 + l h +-342.348 352.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +377.742 218.223 m 377.789 256.203 l 281.711 255.531 l 281.711 297.816 l + S Q +281.711 144.08 m 278.508 147.279 l 281.711 136.08 l 284.91 147.279 l h +281.711 144.08 m f* +0.8 w +q 0.000000189189 1 1 -0.000000189189 0 433.896301 cm +-289.816 281.711 m -286.617 278.508 l -297.816 281.711 l -286.617 284.91 + l h +-289.816 281.711 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +193.879 191.387 m 193.879 204.641 183.133 215.387 169.879 215.387 c 156.621 + 215.387 145.879 204.641 145.879 191.387 c 145.879 178.133 156.621 167.387 + 169.879 167.387 c 183.133 167.387 193.879 178.133 193.879 191.387 c h +193.879 191.387 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +169.879 167.387 m 169.879 215.387 l S Q +q 1 0 0 -1 0 433.896301 cm +145.879 191.387 m 193.879 191.387 l S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +402.199 193.73 m 402.199 206.988 391.453 217.73 378.199 217.73 c 364.945 + 217.73 354.199 206.988 354.199 193.73 c 354.199 180.477 364.945 169.73 +378.199 169.73 c 391.453 169.73 402.199 180.477 402.199 193.73 c h +402.199 193.73 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +378.199 169.73 m 378.199 217.73 l S Q +q 1 0 0 -1 0 433.896301 cm +354.199 193.73 m 402.199 193.73 l S Q +BT +12 0 0 12 154.199851 68.649481 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +145.879 191.629 m 125.879 191.629 l S Q +133.879 242.267 m 137.078 245.467 l 125.879 242.267 l 137.078 239.064 l + h +133.879 242.267 m f* +0.8 w +q 1 0 0 -1 0 433.896301 cm +133.879 191.629 m 137.078 188.43 l 125.879 191.629 l 137.078 194.832 l +h +133.879 191.629 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.652 190.984 m 423.652 190.984 l S Q +415.652 242.912 m 412.453 239.713 l 423.652 242.912 l 412.453 246.115 l + h +415.652 242.912 m f* +0.8 w +q -1 0 0 1 0 433.896301 cm +-415.652 -190.984 m -412.453 -194.184 l -423.652 -190.984 l -412.453 -187.781 + l h +-415.652 -190.984 m S Q +BT +12 0 0 12 46.933432 206.540155 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGA)]TJ +/f-1-0 1 Tf +3.046875 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.569336 -1.25 Td +[(RIMA)17(GE-)20(A & SIGB)]TJ +2.471652 7.544474 Td +(SIGA & SIGB)Tj +27.716749 0.235534 Td +(SIGA & SIGB)Tj +-4.384188 5.279695 Td +(SIGA & SIGB)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +73.477 207.059 m 73.477 252.309 l S Q +73.477 189.588 m 70.277 192.787 l 73.477 181.588 l 76.68 192.787 l h +73.477 189.588 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-244.309 73.477 m -241.109 70.277 l -252.309 73.477 l -241.109 76.68 l +h +-244.309 73.477 m S Q +BT +12 0 0 12 447.973532 208.481293 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGB)]TJ +/f-1-0 1 Tf +3.047852 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.5625 -1.25 Td +[(RIMA)17(GE-)33(B & SIGA)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +474.531 205.117 m 474.531 250.367 l S Q +474.531 191.529 m 471.328 194.728 l 474.531 183.529 l 477.73 194.728 l +h +474.531 191.529 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-242.367 474.531 m -239.168 471.328 l -250.367 474.531 l -239.168 477.73 + l h +-242.367 474.531 m S Q +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/dual-anchor-diag3.svg b/doc/dual-anchor-diag3.svg new file mode 100644 index 000000000..169644de2 --- /dev/null +++ b/doc/dual-anchor-diag3.svg @@ -0,0 +1,813 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + + SIGA & SIGB + + + Escape B + + + CommitTx B + + + + + + + + + + + + + + + + + + SIG A & B + SIG A & B + + + OP_CSV & SIGAORRIMAGE-A & SIGB + SIGA & SIGB + SIGA & SIGB + SIGA & SIGB + + OP_CSV & SIGBORRIMAGE-B & SIGA + + + diff --git a/doc/dual-anchor-diag4.eps b/doc/dual-anchor-diag4.eps new file mode 100644 index 000000000..7162fdb4a --- /dev/null +++ b/doc/dual-anchor-diag4.eps @@ -0,0 +1,818 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Tue Jul 14 15:49:50 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 12 -1 552 434 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 45 /hyphen put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 71 /G put +Encoding 73 /I put +Encoding 77 /M put +Encoding 79 /O put +Encoding 80 /P put +Encoding 82 /R put +Encoding 83 /S put +Encoding 84 /T put +Encoding 86 /V put +Encoding 95 /underscore put +Encoding 97 /a put +Encoding 99 /c put +Encoding 101 /e put +Encoding 104 /h put +Encoding 105 /i put +Encoding 109 /m put +Encoding 110 /n put +Encoding 111 /o put +Encoding 112 /p put +Encoding 114 /r put +Encoding 115 /s put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 31 dict dup begin +/.notdef 0 def +/A 1 def +/n 2 def +/c 3 def +/h 4 def +/o 5 def +/r 6 def +/space 7 def +/B 8 def +/C 9 def +/m 10 def +/i 11 def +/t 12 def +/T 13 def +/x 14 def +/E 15 def +/s 16 def +/a 17 def +/p 18 def +/e 19 def +/S 20 def +/I 21 def +/G 22 def +/ampersand 23 def +/R 24 def +/hyphen 25 def +/O 26 def +/P 27 def +/underscore 28 def +/V 29 def +/M 30 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d3900001648000001fe6670676d7134766a0000 +1848000000ab676c7966ab10bf5d0000009c000015ac68656164026638f7000018f400000036 +686865610cb806700000192c00000024686d747895560ef9000019500000007c6c6f63610001 +3e90000019cc000000806d617870048c067100001a4c00000020707265703b07f10000001a6c +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000100ba00000464047b0013003640190309 +00030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31002f3ce4f4c4ec11 +12173930b46015cf1502015d0111231134262322061511231133153e013332160464b87c7c95 +acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef00010071ffe303e7047b0019 +003f401b00860188040e860d880ab91104b917b8118c1a07120d004814451a10fce432ec3100 +10e4f4ec10fef4ee10f5ee30400b0f1b101b801b901ba01b05015d01152e0123220615141633 +323637150e0123220011100021321603e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655 +a20435ac2b2be3cdcde32b2baa2424013e010e0112013a230000000100ba0000046406140013 +00344019030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f +3cecf4c4ec1112173930b2601501015d0111231134262322061511231133113e013332160464 +b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef0000020071ffe3 +0475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec3100 +10e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b +12a019f01911015d012206151416333236353426273200111000232200111000027394acab95 +93acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113 +011401380000000100ba0000034a047b001100304014060b0700110b03870eb809bc070a0608 +0008461210fcc4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511 +231133153e0133321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663 +05050000000300c9000004ec05d5000800110020004340231900950a0995128101950aad1f11 +0b080213191f05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fec +ecf4ec10ee3930b20f2201015d01112132363534262301112132363534262325213216151406 +071e01151404232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfd +e802c9fddd878b8c850266fe3e6f727170a6c0b189a21420cb98c8da00010073ffe3052705f0 +00190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec31 +0010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123 +2000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed05 +62d55f5efec7fed8fed9fec75e5fd34848019f01670168019f470000000100ba0000071d047b +0022005a4026061209180f00061d07150c871d2003b81bbc19100700110f0808065011080f50 +1c18081a462310fcec32fcfcfcec11123931002f3c3ce4f43cc4ec3211121739304013302450 +2470249024a024a024bf24df24ff2409015d013e013332161511231134262322061511231134 +262322061511231133153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797a +ab03897c76f5e2fd5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c000000000200c1 +00000179061400030007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fc +ec30400b1009400950096009700905015d1333112311331523c1b8b8b8b80460fba00614e900 +00010037000002f2059e0013003840190e05080f03a9001101bc08870a0b0809020400081012 +0e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930b2af1501015d011121152111 +14163b01152322263511233533110177017bfe854b73bdbdd5a28787059efec28ffda0894e9a +9fd202608f013e0000000001fffa000004e905d50007004a400e0602950081040140031c0040 +050810d4e4fce431002ff4ec3230014bb00a5458bd00080040000100080008ffc03811373859 +401300091f00100110021f071009400970099f09095d03211521112311210604effdeecbfdee +05d5aafad5052b000001003b000004790460000b014340460511060706041103040707060411 +050401020103110202010b110001000a11090a0101000a110b0a0708070911080807420a0704 +01040800bf05020a0704010408000208060c10d44bb00a544bb00f545b4bb010545b4bb01154 +5b58b90006004038594bb0145458b90006ffc03859c4d4c411173931002f3cec321739304b53 +58071005ed071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014098 +0a04040a1a04150a260a3d04310a55045707580a660a76017a047607740a8d04820a99049f04 +9707920a900aa601a904af04a507a30aa00a1c0a03040505090a0b1a03150515091a0b290326 +0525092a0b200d3a013903370534073609390b300d4903460545094a0b400d59005601590259 +0357055606590756085609590b500d6f0d78017f0d9b019407ab01a407b00dcf0ddf0dff0d2f +5d005d09022309012309013309010464fe6b01aad9febafebad901b3fe72d9012901290460fd +dffdc101b8fe48024a0216fe71018f00000100c90000048b05d5000b002e4015069504029500 +81089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01015d +132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa00000001 +006fffe303c7047b002700e7403c0d0c020e0b531f1e080902070a531f1f1e420a0b1e1f0415 +00860189041486158918b91104b925b8118c281e0a0b1f1b0700521b080e07081422452810fc +c4ecd4ece4111239393939310010e4f4ec10fef5ee10f5ee121739304b535807100eed111739 +070eed1117395922b2002701015d406d1c0a1c0b1c0c2e092c0a2c0b2c0c3b093b0a3b0b3b0c +0b200020012402280a280b2a132f142f152a16281e281f292029212427860a860b860c860d12 +000000010202060a060b030c030d030e030f03100319031a031b031c041d09272f293f295f29 +7f2980299029a029f029185d005d7101152e012322061514161f011e0115140623222627351e +013332363534262f012e01353436333216038b4ea85a898962943fc4a5f7d85ac36c66c66182 +8c65ab40ab98e0ce66b4043fae282854544049210e2a99899cb62323be353559514b50250f24 +95829eac1e0000000002007bffe3042d047b000a002500bc4027191f0b17090e00a91706b90e +1120861fba1cb923b8118c170c001703180d09080b1f030814452610fcecccd4ec3232113939 +31002fc4e4f4fcf4ec10c6ee10ee11391139123930406e301d301e301f3020302130223f2740 +1d401e401f402040214022501d501e501f50205021502250277027851d871e871f8720872185 +229027a027f0271e301e301f30203021401e401f40204021501e501f50205021601e601f6020 +6021701e701f70207021801e801f80208021185d015d0122061514163332363d01371123350e +01232226353436332135342623220607353e0133321602bedfac816f99b9b8b83fbc88accbfd +fb0102a79760b65465be5af3f00233667b6273d9b4294cfd81aa6661c1a2bdc0127f8b2e2eaa +2727fc00000200bafe5604a4047b0010001c003e401b1ab9000e14b90508b80e8c01bd03bc1d +11120b471704000802461d10fcec3232f4ec310010e4e4e4f4c4ec10c4ee304009601e801ea0 +1ee01e04015d2511231133153e013332001110022322260134262322061514163332360173b9 +b93ab17bcc00ffffcc7bb10238a79292a7a79292a7a8fdae060aaa6461febcfef8fef8febc61 +01ebcbe7e7cbcbe7e700000000020071ffe3047f047b0014001b007040240015010986088805 +15a90105b90c01bb18b912b80c8c1c1b1502081508004b02120f451c10fcecf4ecc411123931 +0010e4f4ece410ee10ee10f4ee1112393040293f1d701da01dd01df01d053f003f013f023f15 +3f1b052c072f082f092c0a6f006f016f026f156f1b095d71015d0115211e0133323637150e01 +232000111000333200072e0123220607047ffcb20ccdb76ac76263d06bfef4fec70129fce201 +07b802a5889ab90e025e5abec73434ae2a2c0138010a01130143feddc497b4ae9e0000010087 +ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f1f1e420a0b1e1f041501 +0015a11494189511049500942591118c281e0a0b1f1b0700221b190e2d071914222810dcc4ec +fcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b535807100eed1117390710 +0eed1117395922b20f2901015db61f292f294f29035d01152e012322061514161f011e011514 +0421222627351e013332363534262f012e01353424333216044873cc5fa5b377a67ae2d7fedd +fee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663651f192bd9b6d9e0302f +d04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003002eb700af02011c0004 +0410fc4bb0105458b9000000403859ec31002fec3001400d30054005500560058f059f05065d +13331123c9caca05d5fa2b0000010073ffe3058b05f0001d0039402000051b0195031b950812 +a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fcc4310010e4f4ecf4ec10 +fed4ee11393930251121352111060423200011100021320417152e0123200011100021323604 +c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed011301126ba8d50191a6 +fd7f53550199016d016e01994846d75f60fecefed1fed2fece25000000020081ffe305fe05f0 +0009003001cd40960d010e0c861112110b860a0b121211098600091516150701060886161615 +02010301861d1e1d008609001e1e1d201f02211e110a130a17161503181411130a0708020609 +1113130a0201020300110a130a171602181511130a141113130a42120b090306000a1e032815 +0e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e1e032e1227210e110f13 +2103121b103110fcecc4d4d4ec10c6ee1139111239391139391139113931002fc6e4f6e6ee10 +ee10c6111239111739111739304b5358071005ed0705ed111739071005ed111739071005ed11 +17390705ed111739071005ed111739071008ed07100eed11173907100eed111739071008ed07 +1008ed07100eed1117395922b20f3201015d40b2070b052209291c001c011f02170b2a002a01 +26123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b009a0199029708950b9315 +95169522992d1f090b090c08110c270c2818021b09190b190c19111c141c15161d1f32270027 +01290923122a132a1428152f323b09341239133f324a094c144b1546194f3256015a09590c55 +1259135c1f5f326a0c691160327501790c7a1193009301970295059c079c089f089a099b0b9a +0c9032a032b032395d005d010e011514163332363709013e0137330602070123270e01232200 +353436372e0135343633321617152e0123220615141601f25b55d4a05fa649fe7b01fc3b4206 +ba0c685d0117fc8f68e483f1fece86863032deb853a555579e4469833b032351a15892c23f40 +028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c52424b62f316f5833670002 +00c90000055405d50013001c00b14035090807030a0611030403051104040342060400150304 +15950914950d810b040506031109001c160e050a191904113f140a1c0c041d10fcec32fcc4ec +1117391139393931002f3cf4ecd4ec123912391239304b5358071005ed071005ed1117395922 +b2401e01015d40427a1301050005010502060307041500150114021603170425002501250226 +032706260726082609201e3601360246014602680575047505771388068807980698071f5d00 +5d011e01171323032e012b01112311212016151406011133323635342623038d417b3ecdd9bf +4a8b78dcca01c80100fc83fd89fe9295959202bc16907efe68017f9662fd8905d5d6d88dba02 +4ffdee87838385000001006401df027f028300030011b6009c020401000410dccc310010d4ec +301321152164021bfde50283a40000020073ffe305d905f0000b00170023401306951200950c +91128c1809190f33031915101810fcecfcec310010e4f4ec10ee300122001110003332001110 +002720001110002120001110000327dcfefd0103dcdc0101feffdc013a0178fe88fec6fec5fe +870179054cfeb8fee5fee6feb80148011a011b0148a4fe5bfe9efe9ffe5b01a40162016201a5 +0000000200c90000048d05d500080013003a40180195100095098112100a0802040005190d3f +11001c09041410fcec32fcec11173931002ff4ecd4ec30400b0f151f153f155f15af1505015d +011133323635342623252132041514042b0111230193fe8d9a9a8dfe3801c8fb0101fefffbfe +ca052ffdcf92878692a6e3dbdde2fda80001ffecfe1d0414feac0003000fb500a90100020410 +c4c43100d4ec30011521350414fbd8feac8f8f000000000100100000056805d5000600b74027 +04110506050311020306060503110403000100021101010042030401af000604030200050501 +0710d4c4173931002fec3239304b5358071005ed071008ed071008ed071005ed5922b2500801 +015d406200032a03470447055a037d038303070600070208040906150114021a041a052a0026 +01260229042905250620083800330133023c043c053706480045014502490449054706590056 +066602690469057a0076017602790479057506800898009706295d005d21013309013301024a +fdc6d301d901dad2fdc705d5fb1704e9fa2b000100c90000061f05d5000c00bf403403110708 +070211010208080702110302090a0901110a0a09420a070203080300af080b05090803020105 +0a061c043e0a1c00040d10fcecfcec11173931002f3cc4ec32111739304b5358071005ed0710 +08ed071008ed071005ed5922b2700e01015d405603070f080f09020a15021407130a26022607 +2007260a200a3407350a69027c027b07790a80028207820a90021604010b0313011b0323012c +032708280934013c035608590965086a097608790981018d0395019b03145d005d1321090121 +1123110123011123c9012d017d017f012dc5fe7fcbfe7fc405d5fc0803f8fa2b051ffc000400 +fae10000013500b800cb00cb00c100aa009c01a600b800660000007100cb00a002b200850075 +00b800c301cb0189022d00cb00a600f000d300aa008700cb03aa0400014a003300cb000000d9 +050200f4015400b4009c01390114013907060400044e04b4045204b804e704cd0037047304cd +04600473013303a2055605a60556053903c5021200c9001f00b801df007300ba03e9033303bc +0444040e00df03cd03aa00e503aa0404000000cb008f00a4007b00b80014016f007f027b0252 +008f00c705cd009a009a006f00cb00cd019e01d300f000ba018300d5009803040248009e01d5 +00c100cb00f600830354027f00000333026600d300c700a400cd008f009a0073040005d5010a +00fe022b00a400b4009c00000062009c0000001d032d05d505d505d505f0007f007b005400a4 +06b80614072301d300b800cb00a601c301ec069300a000d3035c037103db0185042304a80448 +008f0139011401390360008f05d5019a0614072306660179046004600460047b009c00000277 +046001aa00e904600762007b00c5007f027b000000b4025205cd006600bc00660077061000cd +013b01850389008f007b0000001d00cd074a042f009c009c0000077d006f0000006f0335006a +006f007b00ae00b2002d0396008f027b00f600830354063705f6008f009c04e10266008f018d +02f600cd03440029006604ee00730000140000960000b707060504030201002c2010b0022549 +64b040515820c859212d2cb002254964b040515820c859212d2c20100720b00050b00d7920b8 +ffff5058041b0559b0051cb0032508b0042523e120b00050b00d7920b8ffff5058041b0559b0 +051cb0032508e12d2c4b505820b0fd454459212d2cb002254560442d2c4b5358b00225b00225 +45445921212d2c45442d2cb00225b0022549b00525b005254960b0206368208a108a233a8a10 +653a2d00000100000002570afb6146a45f0f3cf5001f080000000000cef5cb7600000000cef5 +cb76f7d6fcae0d72095500000008000000010000000000010000076dfe1d00000de2f7d6fa51 +0d7200010000000000000000000000000000001f04cd006605790010051200ba046600710512 +00ba04e50071034a00ba028b0000057d00c90596007307cb00ba023900c10323003704e3fffa +04bc003b050e00c9042b006f04e7007b051400ba04ec007105140087025c00c906330073063d +0081058f00c902e30064064c007304d300c90400ffec0579001006e700c90000000000000044 +00000140000001b800000250000002c80000036c000003dc000003dc0000048c000005240000 +05e800000638000006b400000724000008a80000090800000a6800000b9400000c3400000d08 +00000e0000000e4800000ef0000011580000126c0000129800001324000013a4000013d00000 +14b0000015ac00010000001f0354002b0068000c000200100099000800000415021600080004 +b8028040fffbfe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f32503f20e03f19603 +f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e84203e7fe03e63203e5 +e45305e59603e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df3203de1403dd9603 +dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d44703d3d21b05d3fe +03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca3203c9fe03c68511 +05c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe03bcfe03bbfe03ba +1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505b65d40ff03b64004 +b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab2505ac6403abaa1205 +ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a20e05a33203a20e03 +a16403a08a4105a096039ffe039e9d0c059efe039d0c039c9b19059c64039b9a10059b19039a +1003990a0398fe0397960d0597fe03960d03958a410595960394930e05942803930e0392fa03 +9190bb0591fe03908f5d0590bb039080048f8e25058f5d038f40048e25038dfe038c8b2e058c +fe038b2e038a8625058a410389880b05891403880b0387862505876403868511058625038511 +0384fe038382110583fe0382110381fe0380fe037ffe0340ff7e7d7d057efe037d7d037c6403 +7b5415057b25037afe0379fe03780e03770c03760a0375fe0374fa0373fa0372fa0371fa0370 +fe036ffe036efe036c21036bfe036a1142056a530369fe03687d036711420566fe0365fe0364 +fe0363fe0362fe03613a0360fa035e0c035dfe035bfe035afe0359580a0559fa03580a035716 +190557320356fe035554150555420354150353011005531803521403514a130551fe03500b03 +4ffe034e4d10054efe034d10034cfe034b4a13054bfe034a4910054a1303491d0d0549100348 +0d0347fe0346960345960344fe0343022d0543fa0342bb03414b0340fe033ffe033e3d12053e +14033d3c0f053d12033c3b0d053c40ff0f033b0d033afe0339fe033837140538fa0337361005 +37140336350b05361003350b03341e03330d0332310b0532fe03310b03302f0b05300d032f0b +032e2d09052e10032d09032c32032b2a25052b64032a2912052a250329120328272505284103 +27250326250b05260f03250b0324fe0323fe03220f03210110052112032064031ffa031e1d0d +051e64031d0d031c1142051cfe031bfa031a42031911420519fe031864031716190517fe0316 +01100516190315fe0314fe0313fe031211420512fe0311022d05114203107d030f64030efe03 +0d0c16050dfe030c0110050c16030bfe030a100309fe0308022d0508fe030714030664030401 +100504fe03401503022d0503fe0302011005022d0301100300fe0301b80164858d012b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%BeginResource: font DejaVuSans-Bold +11 dict begin +/FontType 42 def +/FontName /DejaVuSans-Bold def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 79 /O put +Encoding 82 /R put +/CharStrings 3 dict dup begin +/.notdef 0 def +/O 1 def +/R 2 def +end readonly def +/sfnts [ +<000100000009008000030010637674203eb9310800000268000002546670676d5b026bf00000 +04bc000000ac676c7966581f41560000009c000001cc68656164045e38fb0000056800000036 +686865610eaf0774000005a000000024686d747811c30188000005c40000000c6c6f63610000 +02f8000005d0000000106d6178700648062d000005e000000020707265707c61a2e700000600 +000007a700020066fe96046605a400030007001fbc00040126000000060126b6010805890204 +002fc4d4ec310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f27206 +2900000000020066ffe3066605f0000b00170032401306ae1200ae0c9c129818092d0f37032d +152b1810fcecfcec310010e4f4ec10ee30400b0019171310192f193f1905015d012202151412 +3332123534020320001110002120001110000366b0c2c2b0b1c2c2b101680198fe68fe98fe99 +fe67019904d9fefcecebfefc0104ebec01040117fe64fe95fe96fe64019c016a016b019c0000 +000200bc0000060005d50008001c008740321b1a021c191d161716181d1717162519160a1300 +ae0906ae0c8d170a16131803101c190600040d07031617100907160b031d10fcec32d4c4ec11 +39173911173931002f3cf4ecd4ec39123939304b5358071005ed071005ed1117395922b2181c +01015d401f1b181b191a1a1b1b1a1c361536164515451656155616501e65156516601e0f5d01 +32363534262b0119022111212004151406071e01171321032e012302df79696979a2fe7f024c +012701138f904f7d40d1fe66b637715e033f5a676658fe81fef6fdcb05d5c6d694be2d127f81 +fe5801737052000001660133016600bc00e90000013d00a200fa031f00020002006601660002 +000200ac015400ec00bc006201660181048501540166016d04a400020166007f04cd00000002 +0133006200710000002504a401bc00ba00e500660181018d0548055a0166016d000000000002 +000200f605c301f0053902390058046d043d04b2048104b2016601750466048100b004660439 +02d1049c047b04cf047b005801330166014c0166014c000200ac009a014a0123009a029a0144 +0119014402cd00c100000166013f019a013b05cb05cb00d500d5015000ac00ac0077020a01c7 +01f2012f015801b2012300f600f6011f012f0135023501ee01e70133009800d10358050a009a +008f0112009800bc00cd00e500e500f2007304000166008f05d5022b05d500c300e100d700e5 +0000006a01020000001d032d05d505d505f000a8006a00ec00e1010205d506140721046602f8 +00ec018302a602f80123010201020112011f031f005e03cd046004c7048900ec01bc00ba0102 +0333031f03420333035c0112011f05d5019a009a00e106660179046004600460047b000000ec +02c302b802cd00be00dd00d50000006a025c027b029a00dd01ae01ba01120000008501ae0460 +0762041b009a069a045800ee009a029a00d102cd019a015005cb05cb008b008b063100f60406 +00f0034c016004a800c10000002505c101000121074a06120096014a078300a800000337007b +0014000000c9010005c105c105c105c101000108061d00960427039e00ec0102027d01330098 +00d10358017900cd02390362009c009c009c009301b8009300b80073000014000326b7070605 +04030201002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c +20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d +7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b80128454459212d2cb0022545 +60442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0052549 +60b0206368208a108a233a8a10653a2d000100000002570aca280dd25f0f3cf5001f08000000 +0000cef5cb7000000000cef5cb70f772fcae0fcd096500010008000000010000000000010000 +076dfe1d00001021f772f9320fcd00010000000000000000000000000000000304cd006606cd +0066062900bc000000000000004c000000e0000001cc000100000003034e002b0078000c0002 +001000400008000005ed02210008000441840280012600fe000301250011000301240121003a +0005012400fa000301230016000301220121003a0005012200fe00030121003a0003012000fa +0003011f00bb0003011e00640003011d00fe0003011c00190003011b001e0003011a00fe0003 +011900fe0003011800fe0003011700fe0003011600fe000301150114000e0005011500fe0003 +0114000e0003011300fe0003011200fe0003010f010e007d0005010f00fe0003010e007d0003 +010d010c008c0005010d00fe0003010d00c00004010c010b00590005010c008c0003010c0080 +0004010b010a00260005010b00590003010b00400004010a00260003010900fe0003010800fe +00030107000c00030107008000040106b2972e054113010600fa0003010500fa0003010400fe +0003010300190003010200fa0003010100fa0003010040ff7d03ff3e03fefe03fcfb2c05fcfe +03fb2c03fafe03f9f84705f97d03f84703f7fa03f6fe03f5fe03f4fe03f3bb03f2fe03f1fe03 +f0fe03ef1e03eefe03edec0a05edfe03ec0a03ec4004ebea0a05eb3203ea0a03e9fa03e89116 +05e8fe03e7fa03e6fa03e5911605e5fe03e4fe03e3fe03e2fe03e1fe03e0fe03dffe03defa03 +dddc1805dd6403dc1803dba01e05db6403dad92505dafa03d92503d8d12505d8fa03d7d61405 +d71603d6d51005d61403d51003d4d30b05d42003d30b03d2d12505d2fa03d1911605d12503d0 +940c05d02303cfce1405cf2603cecd1205ce1403cd1203cc911605cc1d03cb1403cac9bb05ca +fe03c9c85d05c9bb03c98004c840ffc72505c85d03c84004c72503c6fe03c56403c4901005c4 +fe03c31c03c2fe03c1fe03c0bf3a05c0fa03bfad1b05bf3a03bebd1a05be3203bdbc1105bd1a +03bcbb0f05bc1103bbba0c05bb0f03ba0c03b9911605b9fe03b8fe03b71503b61203b5fe03b4 +fe03b3fe03b21703b11903b01603afad1b05affa03aead1b05aefa03ad911605ad1b03ac9116 +05ac7d03abfe03aa2603a9fe03a8fe03a7fe03a6fe03a50a03a4fe03a3a20e05a3fe03a20e03 +a24004a1a01e05a1fa03a0911605a01e039f9116059ffa039e940c059e1c039dfe039c9bbb05 +9cfe039b9a5d059bbb039b80049a8f25059a5d039a400499fe0398972e0598fe03972e039691 +1605961e40ff0395940c05952003940c0393911605934b039291160592fe0391901005911603 +9010038f25038efe038dfe038cfe038bfe038afe0389fe038887250588fe0387250386fe0385 +fe0384320383960382fe0381fe038019037f0a037efe037dfe037cfe037bfa037afa0379fe03 +7776a60577fe0376a60375741b0575fa03741b0373fa03727d0371fe03706f2c056f2c036efa +036dfa036cfa036bfe036afe0369fe0368630c0568320367fe0366320365640a0565fe03640a +0364400463620a05630c03620a0361601505619603600111056015035f0a035efe035dfe035c +0111055cfe035b5a1b055bfe035a0111055a1b0359fe0358fa0357fe035601110540ff56fe03 +55fe03541e035314035251190552fa0351011105511903504f190550fa034f4e11054f19034e +11034d1e034c4b14054c15034b4a11054b14034a490e054a1103490e0348fa03474614054715 +0346140345fa0344430e05440f03430e034241250542fa0341011105412503403f0f0540fe03 +3f3e0e053f0f033e0e033d3c0d053d16033c0d033b64033afe0339140338fe0337130336351a +0536250335341405351a0335c004340a0d0534140334800433320c05331403334004320c0331 +30a60531fe033001110530a6032f0c032e13032d2c3a052dfa032c1525052c3a032b64032a64 +0329fe0328150327171105271e03262003251e0324231105402b241e0323110322000d0522fa +03210f032140042014031f0a031e1e031d1c19051d25031c0f13051c19031cb801004091041b +0d031a194b051a7d0319011105194b0318fe031711031615250516fa03150111051525031464 +0313110312fe031101110511fe031064030f0e10050f13030fc0040e10030e80040d0111050d +fa030c32030b0a0d050b16030b80040a0d030a400409fe0308fe0307fe0306050a0506fe0305 +0a0305400404fa030364030201110502fe0301000d05011103000d0301b80164858d012b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d0000> +] def +/f-1-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 12 -1 552 434 +%%EndPageSetup +q 12 -1 540 435 rectclip q +0 g +BT +17.6 0 0 17.6 130.590635 355.418671 Tm +/f-0-0 1 Tf +[(Anchor)-3( A)]TJ +11.78352 -0.0324679 Td +[(Anchor)-3( B)]TJ +ET +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +122.449 55.629 96 32.574 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +170.449 87.059 m 170.449 167.059 l S Q +170.449 274.838 m 167.25 278.037 l 170.449 266.838 l 173.648 278.037 l +h +170.449 274.838 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-159.059 170.449 m -155.859 167.25 l -167.059 170.449 l -155.859 173.648 + l h +-159.059 170.449 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +329.305 55.629 96 33.715 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +377.305 88.203 m 377.305 168.203 l S Q +377.305 273.693 m 374.105 276.892 l 377.305 265.693 l 380.504 276.892 l + h +377.305 273.693 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-160.203 377.305 m -157.004 374.105 l -168.203 377.305 l -157.004 380.504 + l h +-160.203 377.305 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +170.164 216.844 m 170.449 256.203 l 265.957 256.105 l 265.387 297.246 l + S Q +265.496 144.65 m 262.344 147.892 l 265.387 136.65 l 268.742 147.803 l h +265.496 144.65 m f* +0.799923 w +q 0.0138888 1 1 -0.0138888 0 433.896301 cm +-285.504 269.461 m -282.306 266.265 l -293.504 269.463 l -282.307 272.663 + l h +-285.504 269.461 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +137.555 351.727 96 80 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +89.879 15.629 m 138.449 52.773 l S Q +132.094 385.982 m 127.609 385.385 l 138.449 381.123 l 131.496 390.467 l + h +132.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-106.472 33.506 m -103.931 30.965 l -112.827 33.506 l -103.931 36.047 l + h +-106.472 33.506 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +201.879 8.773 m 194.449 53.918 l S Q +195.746 387.873 m 193.109 391.553 l 194.449 379.978 l 199.426 390.513 l + h +195.746 387.873 m f* +0.789384 w +q 0.164557 1 1 -0.164557 0 433.896301 cm +-13.448 197.959 m -10.288 194.802 l -21.342 197.961 l -10.287 201.119 l + h +-13.448 197.959 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +297.879 15.629 m 346.449 52.773 l S Q +340.094 385.982 m 335.609 385.385 l 346.449 381.123 l 339.496 390.467 l + h +340.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-237.721 133.872 m -235.179 131.331 l -244.076 133.873 l -235.18 136.414 + l h +-237.721 133.872 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +457.305 16.203 m 409.305 54.488 l S Q +415.559 384.396 m 416.066 388.892 l 409.305 379.408 l 420.059 383.892 l + h +415.559 384.396 m f* +0.625421 w +q 1 0.797619 0.797619 -1 0 433.896301 cm +229.848 232.831 m 232.35 230.331 l 223.594 232.831 l 232.353 235.333 l +h +229.848 232.831 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +418.449 0.203 m 387.02 53.918 l S Q +391.059 386.885 m 389.914 391.263 l 387.02 379.978 l 395.438 388.029 l +h +391.059 386.885 m f* +0.69049 w +q 0.585107 1 1 -0.585107 0 433.896301 cm +135.434 311.816 m 138.197 309.054 l 128.528 311.817 l 138.195 314.579 l + h +135.434 311.816 m S Q +BT +17.6 0 0 17.6 150.69448 46.484589 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +27.348 174.184 96 32.574 re S Q +BT +17.6 0 0 17.6 34.346965 238.578938 Tm +/f-0-0 1 Tf +[(Esca)-3(pe A)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 310.918 m 178.293 310.348 l 178.293 350.348 l S Q +178.293 91.549 m 175.094 94.752 l 178.293 83.549 l 181.492 94.752 l h +178.293 91.549 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-342.348 178.293 m -339.144 175.094 l -350.348 178.293 l -339.144 181.492 + l h +-342.348 178.293 m S Q +BT +12 0 0 12 142.310385 332.286029 Tm +/f-0-0 1 Tf +(SIGA & SIGB)Tj +/f-1-0 1 Tf +2.288086 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.415039 -1.25 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)21(A)]TJ +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +427.684 171.355 96 32.57 re S Q +BT +17.6 0 0 17.6 434.682052 241.407364 Tm +/f-0-0 1 Tf +[(Esca)-3(pe B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +315.172 352.695 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 45.514032 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 319.629 m 297.879 332.887 287.133 343.629 273.879 343.629 c 260.621 + 343.629 249.879 332.887 249.879 319.629 c 249.879 306.375 260.621 295.629 + 273.879 295.629 c 287.133 295.629 297.879 306.375 297.879 319.629 c h +297.879 319.629 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 295.629 m 273.879 343.629 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 319.629 m 297.879 319.629 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 326.918 m 194.293 326.918 l 194.293 350.348 l S Q +194.293 91.549 m 191.094 94.752 l 194.293 83.549 l 197.492 94.752 l h +194.293 91.549 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-342.348 194.293 m -339.144 191.094 l -350.348 194.293 l -339.144 197.492 + l h +-342.348 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 310.918 m 368.883 310.348 l 368.887 350.348 l S Q +368.887 91.549 m 365.684 94.752 l 368.887 83.549 l 372.086 94.752 l h +368.887 91.549 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-342.348 368.887 m -339.145 365.684 l -350.348 368.887 l -339.145 372.086 + l h +-342.348 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 326.918 m 352.883 326.918 l 352.887 350.348 l S Q +352.887 91.549 m 349.684 94.752 l 352.887 83.549 l 356.086 94.752 l h +352.887 91.549 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-342.348 352.887 m -339.145 349.683 l -350.348 352.887 l -339.145 356.086 + l h +-342.348 352.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +377.742 218.223 m 377.789 256.203 l 281.711 255.531 l 281.711 297.816 l + S Q +281.711 144.08 m 278.508 147.279 l 281.711 136.08 l 284.91 147.279 l h +281.711 144.08 m f* +0.8 w +q 0.000000189189 1 1 -0.000000189189 0 433.896301 cm +-289.816 281.711 m -286.617 278.508 l -297.816 281.711 l -286.617 284.91 + l h +-289.816 281.711 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +193.879 191.387 m 193.879 204.641 183.133 215.387 169.879 215.387 c 156.621 + 215.387 145.879 204.641 145.879 191.387 c 145.879 178.133 156.621 167.387 + 169.879 167.387 c 183.133 167.387 193.879 178.133 193.879 191.387 c h +193.879 191.387 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +169.879 167.387 m 169.879 215.387 l S Q +q 1 0 0 -1 0 433.896301 cm +145.879 191.387 m 193.879 191.387 l S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +402.199 193.73 m 402.199 206.988 391.453 217.73 378.199 217.73 c 364.945 + 217.73 354.199 206.988 354.199 193.73 c 354.199 180.477 364.945 169.73 +378.199 169.73 c 391.453 169.73 402.199 180.477 402.199 193.73 c h +402.199 193.73 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +378.199 169.73 m 378.199 217.73 l S Q +q 1 0 0 -1 0 433.896301 cm +354.199 193.73 m 402.199 193.73 l S Q +BT +12 0 0 12 154.199851 68.649481 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +145.879 191.629 m 125.879 191.629 l S Q +133.879 242.267 m 137.078 245.467 l 125.879 242.267 l 137.078 239.064 l + h +133.879 242.267 m f* +0.8 w +q 1 0 0 -1 0 433.896301 cm +133.879 191.629 m 137.078 188.43 l 125.879 191.629 l 137.078 194.832 l +h +133.879 191.629 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.652 190.984 m 423.652 190.984 l S Q +415.652 242.912 m 412.453 239.713 l 423.652 242.912 l 412.453 246.115 l + h +415.652 242.912 m f* +0.8 w +q -1 0 0 1 0 433.896301 cm +-415.652 -190.984 m -412.453 -194.184 l -423.652 -190.984 l -412.453 -187.781 + l h +-415.652 -190.984 m S Q +BT +12 0 0 12 46.933432 206.540155 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGA)]TJ +/f-1-0 1 Tf +3.046875 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.569336 -1.25 Td +[(RIMA)17(GE-)20(A & SIGB)]TJ +-2.377081 7.679162 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)21(A)]TJ +32.565481 0.100846 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)35(B)]TJ +-4.384188 5.279695 Td +(SIGA & SIGB)Tj +/f-1-0 1 Tf +2.288086 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.40918 -1.25 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)35(B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +73.477 207.059 m 73.477 252.309 l S Q +73.477 189.588 m 70.277 192.787 l 73.477 181.588 l 76.68 192.787 l h +73.477 189.588 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-244.309 73.477 m -241.109 70.277 l -252.309 73.477 l -241.109 76.68 l +h +-244.309 73.477 m S Q +BT +12 0 0 12 447.973532 208.481293 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGB)]TJ +/f-1-0 1 Tf +3.047852 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.5625 -1.25 Td +[(RIMA)17(GE-)33(B & SIGA)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +474.531 205.117 m 474.531 250.367 l S Q +474.531 191.529 m 471.328 194.728 l 474.531 183.529 l 477.73 194.728 l +h +474.531 191.529 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-242.367 474.531 m -239.168 471.328 l -250.367 474.531 l -239.168 477.73 + l h +-242.367 474.531 m S Q +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/dual-anchor-diag4.svg b/doc/dual-anchor-diag4.svg new file mode 100644 index 000000000..8ff60a227 --- /dev/null +++ b/doc/dual-anchor-diag4.svg @@ -0,0 +1,823 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + + SIGA & SIGBORSIGA & SIGB & SECRET-A + + + Escape B + + + CommitTx B + + + + + + + + + + + + + + + + + + SIG A & B + SIG A & B + + + OP_CSV & SIGAORRIMAGE-A & SIGB + SIGA & SIGB & SECRET-A + SIGA & SIGB & SECRET-B + SIGA & SIGBORSIGA & SIGB & SECRET-B + + OP_CSV & SIGBORRIMAGE-B & SIGA + + + diff --git a/doc/dual-anchor-final.eps b/doc/dual-anchor-final.eps new file mode 100644 index 000000000..f7665f005 --- /dev/null +++ b/doc/dual-anchor-final.eps @@ -0,0 +1,911 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Tue Jul 14 16:07:01 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 7 -1 559 434 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 45 /hyphen put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 70 /F put +Encoding 71 /G put +Encoding 73 /I put +Encoding 77 /M put +Encoding 79 /O put +Encoding 80 /P put +Encoding 82 /R put +Encoding 83 /S put +Encoding 84 /T put +Encoding 86 /V put +Encoding 95 /underscore put +Encoding 97 /a put +Encoding 99 /c put +Encoding 101 /e put +Encoding 104 /h put +Encoding 105 /i put +Encoding 109 /m put +Encoding 110 /n put +Encoding 111 /o put +Encoding 112 /p put +Encoding 114 /r put +Encoding 115 /s put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 32 dict dup begin +/.notdef 0 def +/A 1 def +/n 2 def +/c 3 def +/h 4 def +/o 5 def +/r 6 def +/space 7 def +/B 8 def +/C 9 def +/m 10 def +/i 11 def +/t 12 def +/T 13 def +/x 14 def +/E 15 def +/s 16 def +/a 17 def +/p 18 def +/e 19 def +/S 20 def +/I 21 def +/G 22 def +/ampersand 23 def +/R 24 def +/hyphen 25 def +/O 26 def +/P 27 def +/underscore 28 def +/V 29 def +/M 30 def +/F 31 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d390000169c000001fe6670676d7134766a0000 +189c000000ab676c79662a49843c0000009c0000160068656164026638f70000194800000036 +686865610cb806710000198000000024686d747899f00fc2000019a4000000806c6f63610001 +549000001a24000000846d617870048d067100001aa800000020707265703b07f10000001ac8 +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000100ba00000464047b0013003640190309 +00030e0106870e11b80cbc0a010208004e0d09080b461410fcec32f4ec31002f3ce4f4c4ec11 +12173930b46015cf1502015d0111231134262322061511231133153e013332160464b87c7c95 +acb9b942b375c1c602a4fd5c029e9f9ebea4fd870460ae6564ef00010071ffe303e7047b0019 +003f401b00860188040e860d880ab91104b917b8118c1a07120d004814451a10fce432ec3100 +10e4f4ec10fef4ee10f5ee30400b0f1b101b801b901ba01b05015d01152e0123220615141633 +323637150e0123220011100021321603e74e9d50b3c6c6b3509d4e4da55dfdfed6012d010655 +a20435ac2b2be3cdcde32b2baa2424013e010e0112013a230000000100ba0000046406140013 +00344019030900030e0106870e11b80c970a010208004e0d09080b461410fcec32f4ec31002f +3cecf4c4ec1112173930b2601501015d0111231134262322061511231133113e013332160464 +b87c7c95acb9b942b375c1c602a4fd5c029e9f9ebea4fd870614fd9e6564ef0000020071ffe3 +0475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec3100 +10e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f117b +12a019f01911015d012206151416333236353426273200111000232200111000027394acab95 +93acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec701390113 +011401380000000100ba0000034a047b001100304014060b0700110b03870eb809bc070a0608 +0008461210fcc4ec3231002fe4f4ecc4d4cc11123930b450139f1302015d012e012322061511 +231133153e0133321617034a1f492c9ca7b9b93aba85132e1c03b41211cbbefdb20460ae6663 +05050000000300c9000004ec05d5000800110020004340231900950a0995128101950aad1f11 +0b080213191f05000e1c1605191c2e09001c12042110fcec32fcecd4ec111739393931002fec +ecf4ec10ee3930b20f2201015d01112132363534262301112132363534262325213216151406 +071e01151404232101930144a39d9da3febc012b94919194fe0b0204e7fa807c95a5fef0fbfd +e802c9fddd878b8c850266fe3e6f727170a6c0b189a21420cb98c8da00010073ffe3052705f0 +00190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a10fcec32ec31 +0010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e0123200011100021323637150e0123 +2000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a0186015386ed05 +62d55f5efec7fed8fed9fec75e5fd34848019f01670168019f470000000100ba0000071d047b +0022005a4026061209180f00061d07150c871d2003b81bbc19100700110f0808065011080f50 +1c18081a462310fcec32fcfcfcec11123931002f3c3ce4f43cc4ec3211121739304013302450 +2470249024a024a024bf24df24ff2409015d013e013332161511231134262322061511231134 +262322061511231133153e01333216042945c082afbeb972758fa6b972778da6b9b93fb0797a +ab03897c76f5e2fd5c029ea19cbea4fd87029ea29bbfa3fd870460ae67627c000000000200c1 +00000179061400030007002b400e06be04b100bc020501080400460810fc3cec3231002fe4fc +ec30400b1009400950096009700905015d1333112311331523c1b8b8b8b80460fba00614e900 +00010037000002f2059e0013003840190e05080f03a9001101bc08870a0b0809020400081012 +0e461410fc3cc4fc3cc432393931002fecf43cc4ec3211393930b2af1501015d011121152111 +14163b01152322263511233533110177017bfe854b73bdbdd5a28787059efec28ffda0894e9a +9fd202608f013e0000000001fffa000004e905d50007004a400e0602950081040140031c0040 +050810d4e4fce431002ff4ec3230014bb00a5458bd00080040000100080008ffc03811373859 +401300091f00100110021f071009400970099f09095d03211521112311210604effdeecbfdee +05d5aafad5052b000001003b000004790460000b014340460511060706041103040707060411 +050401020103110202010b110001000a11090a0101000a110b0a0708070911080807420a0704 +01040800bf05020a0704010408000208060c10d44bb00a544bb00f545b4bb010545b4bb01154 +5b58b90006004038594bb0145458b90006ffc03859c4d4c411173931002f3cec321739304b53 +58071005ed071008ed071008ed071005ed071005ed071008ed071008ed071005ed5922014098 +0a04040a1a04150a260a3d04310a55045707580a660a76017a047607740a8d04820a99049f04 +9707920a900aa601a904af04a507a30aa00a1c0a03040505090a0b1a03150515091a0b290326 +0525092a0b200d3a013903370534073609390b300d4903460545094a0b400d59005601590259 +0357055606590756085609590b500d6f0d78017f0d9b019407ab01a407b00dcf0ddf0dff0d2f +5d005d09022309012309013309010464fe6b01aad9febafebad901b3fe72d9012901290460fd +dffdc101b8fe48024a0216fe71018f00000100c90000048b05d5000b002e4015069504029500 +81089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01015d +132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa00000001 +006fffe303c7047b002700e7403c0d0c020e0b531f1e080902070a531f1f1e420a0b1e1f0415 +00860189041486158918b91104b925b8118c281e0a0b1f1b0700521b080e07081422452810fc +c4ecd4ece4111239393939310010e4f4ec10fef5ee10f5ee121739304b535807100eed111739 +070eed1117395922b2002701015d406d1c0a1c0b1c0c2e092c0a2c0b2c0c3b093b0a3b0b3b0c +0b200020012402280a280b2a132f142f152a16281e281f292029212427860a860b860c860d12 +000000010202060a060b030c030d030e030f03100319031a031b031c041d09272f293f295f29 +7f2980299029a029f029185d005d7101152e012322061514161f011e0115140623222627351e +013332363534262f012e01353436333216038b4ea85a898962943fc4a5f7d85ac36c66c66182 +8c65ab40ab98e0ce66b4043fae282854544049210e2a99899cb62323be353559514b50250f24 +95829eac1e0000000002007bffe3042d047b000a002500bc4027191f0b17090e00a91706b90e +1120861fba1cb923b8118c170c001703180d09080b1f030814452610fcecccd4ec3232113939 +31002fc4e4f4fcf4ec10c6ee10ee11391139123930406e301d301e301f3020302130223f2740 +1d401e401f402040214022501d501e501f50205021502250277027851d871e871f8720872185 +229027a027f0271e301e301f30203021401e401f40204021501e501f50205021601e601f6020 +6021701e701f70207021801e801f80208021185d015d0122061514163332363d01371123350e +01232226353436332135342623220607353e0133321602bedfac816f99b9b8b83fbc88accbfd +fb0102a79760b65465be5af3f00233667b6273d9b4294cfd81aa6661c1a2bdc0127f8b2e2eaa +2727fc00000200bafe5604a4047b0010001c003e401b1ab9000e14b90508b80e8c01bd03bc1d +11120b471704000802461d10fcec3232f4ec310010e4e4e4f4c4ec10c4ee304009601e801ea0 +1ee01e04015d2511231133153e013332001110022322260134262322061514163332360173b9 +b93ab17bcc00ffffcc7bb10238a79292a7a79292a7a8fdae060aaa6461febcfef8fef8febc61 +01ebcbe7e7cbcbe7e700000000020071ffe3047f047b0014001b007040240015010986088805 +15a90105b90c01bb18b912b80c8c1c1b1502081508004b02120f451c10fcecf4ecc411123931 +0010e4f4ece410ee10ee10f4ee1112393040293f1d701da01dd01df01d053f003f013f023f15 +3f1b052c072f082f092c0a6f006f016f026f156f1b095d71015d0115211e0133323637150e01 +232000111000333200072e0123220607047ffcb20ccdb76ac76263d06bfef4fec70129fce201 +07b802a5889ab90e025e5abec73434ae2a2c0138010a01130143feddc497b4ae9e0000010087 +ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f1f1e420a0b1e1f041501 +0015a11494189511049500942591118c281e0a0b1f1b0700221b190e2d071914222810dcc4ec +fcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b535807100eed1117390710 +0eed1117395922b20f2901015db61f292f294f29035d01152e012322061514161f011e011514 +0421222627351e013332363534262f012e01353424333216044873cc5fa5b377a67ae2d7fedd +fee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663651f192bd9b6d9e0302f +d04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003002eb700af02011c0004 +0410fc4bb0105458b9000000403859ec31002fec3001400d30054005500560058f059f05065d +13331123c9caca05d5fa2b0000010073ffe3058b05f0001d0039402000051b0195031b950812 +a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fcc4310010e4f4ecf4ec10 +fed4ee11393930251121352111060423200011100021320417152e0123200011100021323604 +c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed011301126ba8d50191a6 +fd7f53550199016d016e01994846d75f60fecefed1fed2fece25000000020081ffe305fe05f0 +0009003001cd40960d010e0c861112110b860a0b121211098600091516150701060886161615 +02010301861d1e1d008609001e1e1d201f02211e110a130a17161503181411130a0708020609 +1113130a0201020300110a130a171602181511130a141113130a42120b090306000a1e032815 +0e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e1e032e1227210e110f13 +2103121b103110fcecc4d4d4ec10c6ee1139111239391139391139113931002fc6e4f6e6ee10 +ee10c6111239111739111739304b5358071005ed0705ed111739071005ed111739071005ed11 +17390705ed111739071005ed111739071008ed07100eed11173907100eed111739071008ed07 +1008ed07100eed1117395922b20f3201015d40b2070b052209291c001c011f02170b2a002a01 +26123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b009a0199029708950b9315 +95169522992d1f090b090c08110c270c2818021b09190b190c19111c141c15161d1f32270027 +01290923122a132a1428152f323b09341239133f324a094c144b1546194f3256015a09590c55 +1259135c1f5f326a0c691160327501790c7a1193009301970295059c079c089f089a099b0b9a +0c9032a032b032395d005d010e011514163332363709013e0137330602070123270e01232200 +353436372e0135343633321617152e0123220615141601f25b55d4a05fa649fe7b01fc3b4206 +ba0c685d0117fc8f68e483f1fece86863032deb853a555579e4469833b032351a15892c23f40 +028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c52424b62f316f5833670002 +00c90000055405d50013001c00b14035090807030a0611030403051104040342060400150304 +15950914950d810b040506031109001c160e050a191904113f140a1c0c041d10fcec32fcc4ec +1117391139393931002f3cf4ecd4ec123912391239304b5358071005ed071005ed1117395922 +b2401e01015d40427a1301050005010502060307041500150114021603170425002501250226 +032706260726082609201e3601360246014602680575047505771388068807980698071f5d00 +5d011e01171323032e012b01112311212016151406011133323635342623038d417b3ecdd9bf +4a8b78dcca01c80100fc83fd89fe9295959202bc16907efe68017f9662fd8905d5d6d88dba02 +4ffdee87838385000001006401df027f028300030011b6009c020401000410dccc310010d4ec +301321152164021bfde50283a40000020073ffe305d905f0000b00170023401306951200950c +91128c1809190f33031915101810fcecfcec310010e4f4ec10ee300122001110003332001110 +002720001110002120001110000327dcfefd0103dcdc0101feffdc013a0178fe88fec6fec5fe +870179054cfeb8fee5fee6feb80148011a011b0148a4fe5bfe9efe9ffe5b01a40162016201a5 +0000000200c90000048d05d500080013003a40180195100095098112100a0802040005190d3f +11001c09041410fcec32fcec11173931002ff4ecd4ec30400b0f151f153f155f15af1505015d +011133323635342623252132041514042b0111230193fe8d9a9a8dfe3801c8fb0101fefffbfe +ca052ffdcf92878692a6e3dbdde2fda80001ffecfe1d0414feac0003000fb500a90100020410 +c4c43100d4ec30011521350414fbd8feac8f8f000000000100100000056805d5000600b74027 +04110506050311020306060503110403000100021101010042030401af000604030200050501 +0710d4c4173931002fec3239304b5358071005ed071008ed071008ed071005ed5922b2500801 +015d406200032a03470447055a037d038303070600070208040906150114021a041a052a0026 +01260229042905250620083800330133023c043c053706480045014502490449054706590056 +066602690469057a0076017602790479057506800898009706295d005d21013309013301024a +fdc6d301d901dad2fdc705d5fb1704e9fa2b000100c90000061f05d5000c00bf403403110708 +070211010208080702110302090a0901110a0a09420a070203080300af080b05090803020105 +0a061c043e0a1c00040d10fcecfcec11173931002f3cc4ec32111739304b5358071005ed0710 +08ed071008ed071005ed5922b2700e01015d405603070f080f09020a15021407130a26022607 +2007260a200a3407350a69027c027b07790a80028207820a90021604010b0313011b0323012c +032708280934013c035608590965086a097608790981018d0395019b03145d005d1321090121 +1123110123011123c9012d017d017f012dc5fe7fcbfe7fc405d5fc0803f8fa2b051ffc000400 +fae10000000100c90000042305d50009002940120695040295008104ad08050107031c00040a +10fcec32d4c431002fecf4ec10ee30b20f0b01015d13211521112115211123c9035afd700250 +fdb0ca05d5aafe48aafd3700013500b800cb00cb00c100aa009c01a600b800660000007100cb +00a002b20085007500b800c301cb0189022d00cb00a600f000d300aa008700cb03aa0400014a +003300cb000000d9050200f4015400b4009c01390114013907060400044e04b4045204b804e7 +04cd0037047304cd04600473013303a2055605a60556053903c5021200c9001f00b801df0073 +00ba03e9033303bc0444040e00df03cd03aa00e503aa0404000000cb008f00a4007b00b80014 +016f007f027b0252008f00c705cd009a009a006f00cb00cd019e01d300f000ba018300d50098 +03040248009e01d500c100cb00f600830354027f00000333026600d300c700a400cd008f009a +0073040005d5010a00fe022b00a400b4009c00000062009c0000001d032d05d505d505d505f0 +007f007b005400a406b80614072301d300b800cb00a601c301ec069300a000d3035c037103db +0185042304a80448008f0139011401390360008f05d5019a0614072306660179046004600460 +047b009c00000277046001aa00e904600762007b00c5007f027b000000b4025205cd006600bc +00660077061000cd013b01850389008f007b0000001d00cd074a042f009c009c0000077d006f +0000006f0335006a006f007b00ae00b2002d0396008f027b00f600830354063705f6008f009c +04e10266008f018d02f600cd03440029006604ee00730000140000960000b707060504030201 +002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c20100720 +b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d7920b8ff +ff5058041b0559b0051cb0032508e12d2c4b505820b0fd454459212d2cb002254560442d2c4b +5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b005254960b0206368 +208a108a233a8a10653a2d00000100000002570af3b98c425f0f3cf5001f080000000000cef5 +cb7600000000cef5cb76f7d6fcae0d72095500000008000000010000000000010000076dfe1d +00000de2f7d6fa510d7200010000000000000000000000000000002004cd0066057900100512 +00ba04660071051200ba04e50071034a00ba028b0000057d00c90596007307cb00ba023900c1 +0323003704e3fffa04bc003b050e00c9042b006f04e7007b051400ba04ec007105140087025c +00c906330073063d0081058f00c902e30064064c007304d300c90400ffec0579001006e700c9 +049a00c9000000000000004400000140000001b800000250000002c80000036c000003dc0000 +03dc0000048c00000524000005e800000638000006b400000724000008a80000090800000a68 +00000b9400000c3400000d0800000e0000000e4800000ef0000011580000126c000012980000 +1324000013a4000013d0000014b0000015ac000016000001000000200354002b0068000c0002 +00100099000800000415021600080004b8028040fffbfe03fa1403f92503f83203f79603f60e +03f5fe03f4fe03f32503f20e03f19603f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03 +eafe03e93a03e84203e7fe03e63203e5e45305e59603e48a4105e45303e3e22f05e3fa03e22f +03e1fe03e0fe03df3203de1403dd9603dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03 +d5d44705d57d03d44703d3d21b05d3fe03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e +05ccfe03cb1e03ca3203c9fe03c6851105c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03 +bffe03befe03bdfe03bcfe03bbfe03ba1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb +03b78004b6b52505b65d40ff03b64004b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae +6403ad0e03acab2505ac6403abaa1205ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03 +a51203a4fe03a3a20e05a33203a20e03a16403a08a4105a096039ffe039e9d0c059efe039d0c +039c9b19059c64039b9a10059b19039a1003990a0398fe0397960d0597fe03960d03958a4105 +95960394930e05942803930e0392fa039190bb0591fe03908f5d0590bb039080048f8e25058f +5d038f40048e25038dfe038c8b2e058cfe038b2e038a8625058a410389880b05891403880b03 +878625058764038685110586250385110384fe038382110583fe0382110381fe0380fe037ffe +0340ff7e7d7d057efe037d7d037c64037b5415057b25037afe0379fe03780e03770c03760a03 +75fe0374fa0373fa0372fa0371fa0370fe036ffe036efe036c21036bfe036a1142056a530369 +fe03687d036711420566fe0365fe0364fe0363fe0362fe03613a0360fa035e0c035dfe035bfe +035afe0359580a0559fa03580a035716190557320356fe035554150555420354150353011005 +531803521403514a130551fe03500b034ffe034e4d10054efe034d10034cfe034b4a13054bfe +034a4910054a1303491d0d05491003480d0347fe0346960345960344fe0343022d0543fa0342 +bb03414b0340fe033ffe033e3d12053e14033d3c0f053d12033c3b0d053c40ff0f033b0d033a +fe0339fe033837140538fa033736100537140336350b05361003350b03341e03330d0332310b +0532fe03310b03302f0b05300d032f0b032e2d09052e10032d09032c32032b2a25052b64032a +2912052a25032912032827250528410327250326250b05260f03250b0324fe0323fe03220f03 +210110052112032064031ffa031e1d0d051e64031d0d031c1142051cfe031bfa031a42031911 +420519fe031864031716190517fe031601100516190315fe0314fe0313fe031211420512fe03 +11022d05114203107d030f64030efe030d0c16050dfe030c0110050c16030bfe030a100309fe +0308022d0508fe030714030664030401100504fe03401503022d0503fe0302011005022d0301 +100300fe0301b80164858d012b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%BeginResource: font DejaVuSans-Bold +11 dict begin +/FontType 42 def +/FontName /DejaVuSans-Bold def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 79 /O put +Encoding 82 /R put +/CharStrings 3 dict dup begin +/.notdef 0 def +/O 1 def +/R 2 def +end readonly def +/sfnts [ +<000100000009008000030010637674203eb9310800000268000002546670676d5b026bf00000 +04bc000000ac676c7966581f41560000009c000001cc68656164045e38fb0000056800000036 +686865610eaf0774000005a000000024686d747811c30188000005c40000000c6c6f63610000 +02f8000005d0000000106d6178700648062d000005e000000020707265707c61a2e700000600 +000007a700020066fe96046605a400030007001fbc00040126000000060126b6010805890204 +002fc4d4ec310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f27206 +2900000000020066ffe3066605f0000b00170032401306ae1200ae0c9c129818092d0f37032d +152b1810fcecfcec310010e4f4ec10ee30400b0019171310192f193f1905015d012202151412 +3332123534020320001110002120001110000366b0c2c2b0b1c2c2b101680198fe68fe98fe99 +fe67019904d9fefcecebfefc0104ebec01040117fe64fe95fe96fe64019c016a016b019c0000 +000200bc0000060005d50008001c008740321b1a021c191d161716181d1717162519160a1300 +ae0906ae0c8d170a16131803101c190600040d07031617100907160b031d10fcec32d4c4ec11 +39173911173931002f3cf4ecd4ec39123939304b5358071005ed071005ed1117395922b2181c +01015d401f1b181b191a1a1b1b1a1c361536164515451656155616501e65156516601e0f5d01 +32363534262b0119022111212004151406071e01171321032e012302df79696979a2fe7f024c +012701138f904f7d40d1fe66b637715e033f5a676658fe81fef6fdcb05d5c6d694be2d127f81 +fe5801737052000001660133016600bc00e90000013d00a200fa031f00020002006601660002 +000200ac015400ec00bc006201660181048501540166016d04a400020166007f04cd00000002 +0133006200710000002504a401bc00ba00e500660181018d0548055a0166016d000000000002 +000200f605c301f0053902390058046d043d04b2048104b2016601750466048100b004660439 +02d1049c047b04cf047b005801330166014c0166014c000200ac009a014a0123009a029a0144 +0119014402cd00c100000166013f019a013b05cb05cb00d500d5015000ac00ac0077020a01c7 +01f2012f015801b2012300f600f6011f012f0135023501ee01e70133009800d10358050a009a +008f0112009800bc00cd00e500e500f2007304000166008f05d5022b05d500c300e100d700e5 +0000006a01020000001d032d05d505d505f000a8006a00ec00e1010205d506140721046602f8 +00ec018302a602f80123010201020112011f031f005e03cd046004c7048900ec01bc00ba0102 +0333031f03420333035c0112011f05d5019a009a00e106660179046004600460047b000000ec +02c302b802cd00be00dd00d50000006a025c027b029a00dd01ae01ba01120000008501ae0460 +0762041b009a069a045800ee009a029a00d102cd019a015005cb05cb008b008b063100f60406 +00f0034c016004a800c10000002505c101000121074a06120096014a078300a800000337007b +0014000000c9010005c105c105c105c101000108061d00960427039e00ec0102027d01330098 +00d10358017900cd02390362009c009c009c009301b8009300b80073000014000326b7070605 +04030201002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c +20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d +7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b80128454459212d2cb0022545 +60442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0052549 +60b0206368208a108a233a8a10653a2d000100000002570aca280dd25f0f3cf5001f08000000 +0000cef5cb7000000000cef5cb70f772fcae0fcd096500010008000000010000000000010000 +076dfe1d00001021f772f9320fcd00010000000000000000000000000000000304cd006606cd +0066062900bc000000000000004c000000e0000001cc000100000003034e002b0078000c0002 +001000400008000005ed02210008000441840280012600fe000301250011000301240121003a +0005012400fa000301230016000301220121003a0005012200fe00030121003a0003012000fa +0003011f00bb0003011e00640003011d00fe0003011c00190003011b001e0003011a00fe0003 +011900fe0003011800fe0003011700fe0003011600fe000301150114000e0005011500fe0003 +0114000e0003011300fe0003011200fe0003010f010e007d0005010f00fe0003010e007d0003 +010d010c008c0005010d00fe0003010d00c00004010c010b00590005010c008c0003010c0080 +0004010b010a00260005010b00590003010b00400004010a00260003010900fe0003010800fe +00030107000c00030107008000040106b2972e054113010600fa0003010500fa0003010400fe +0003010300190003010200fa0003010100fa0003010040ff7d03ff3e03fefe03fcfb2c05fcfe +03fb2c03fafe03f9f84705f97d03f84703f7fa03f6fe03f5fe03f4fe03f3bb03f2fe03f1fe03 +f0fe03ef1e03eefe03edec0a05edfe03ec0a03ec4004ebea0a05eb3203ea0a03e9fa03e89116 +05e8fe03e7fa03e6fa03e5911605e5fe03e4fe03e3fe03e2fe03e1fe03e0fe03dffe03defa03 +dddc1805dd6403dc1803dba01e05db6403dad92505dafa03d92503d8d12505d8fa03d7d61405 +d71603d6d51005d61403d51003d4d30b05d42003d30b03d2d12505d2fa03d1911605d12503d0 +940c05d02303cfce1405cf2603cecd1205ce1403cd1203cc911605cc1d03cb1403cac9bb05ca +fe03c9c85d05c9bb03c98004c840ffc72505c85d03c84004c72503c6fe03c56403c4901005c4 +fe03c31c03c2fe03c1fe03c0bf3a05c0fa03bfad1b05bf3a03bebd1a05be3203bdbc1105bd1a +03bcbb0f05bc1103bbba0c05bb0f03ba0c03b9911605b9fe03b8fe03b71503b61203b5fe03b4 +fe03b3fe03b21703b11903b01603afad1b05affa03aead1b05aefa03ad911605ad1b03ac9116 +05ac7d03abfe03aa2603a9fe03a8fe03a7fe03a6fe03a50a03a4fe03a3a20e05a3fe03a20e03 +a24004a1a01e05a1fa03a0911605a01e039f9116059ffa039e940c059e1c039dfe039c9bbb05 +9cfe039b9a5d059bbb039b80049a8f25059a5d039a400499fe0398972e0598fe03972e039691 +1605961e40ff0395940c05952003940c0393911605934b039291160592fe0391901005911603 +9010038f25038efe038dfe038cfe038bfe038afe0389fe038887250588fe0387250386fe0385 +fe0384320383960382fe0381fe038019037f0a037efe037dfe037cfe037bfa037afa0379fe03 +7776a60577fe0376a60375741b0575fa03741b0373fa03727d0371fe03706f2c056f2c036efa +036dfa036cfa036bfe036afe0369fe0368630c0568320367fe0366320365640a0565fe03640a +0364400463620a05630c03620a0361601505619603600111056015035f0a035efe035dfe035c +0111055cfe035b5a1b055bfe035a0111055a1b0359fe0358fa0357fe035601110540ff56fe03 +55fe03541e035314035251190552fa0351011105511903504f190550fa034f4e11054f19034e +11034d1e034c4b14054c15034b4a11054b14034a490e054a1103490e0348fa03474614054715 +0346140345fa0344430e05440f03430e034241250542fa0341011105412503403f0f0540fe03 +3f3e0e053f0f033e0e033d3c0d053d16033c0d033b64033afe0339140338fe0337130336351a +0536250335341405351a0335c004340a0d0534140334800433320c05331403334004320c0331 +30a60531fe033001110530a6032f0c032e13032d2c3a052dfa032c1525052c3a032b64032a64 +0329fe0328150327171105271e03262003251e0324231105402b241e0323110322000d0522fa +03210f032140042014031f0a031e1e031d1c19051d25031c0f13051c19031cb801004091041b +0d031a194b051a7d0319011105194b0318fe031711031615250516fa03150111051525031464 +0313110312fe031101110511fe031064030f0e10050f13030fc0040e10030e80040d0111050d +fa030c32030b0a0d050b16030b80040a0d030a400409fe0308fe0307fe0306050a0506fe0305 +0a0305400404fa030364030201110502fe0301000d05011103000d0301b80164858d012b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d0000> +] def +/f-1-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 7 -1 559 434 +%%EndPageSetup +q 7 -1 552 435 rectclip q +0 g +BT +17.6 0 0 17.6 130.590635 355.418671 Tm +/f-0-0 1 Tf +[(Anchor)-3( A)]TJ +11.78352 -0.0324679 Td +[(Anchor)-3( B)]TJ +ET +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +122.449 55.629 96 32.574 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +170.449 87.059 m 170.449 167.059 l S Q +170.449 274.838 m 167.25 278.037 l 170.449 266.838 l 173.648 278.037 l +h +170.449 274.838 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-159.059 170.449 m -155.859 167.25 l -167.059 170.449 l -155.859 173.648 + l h +-159.059 170.449 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +329.305 55.629 96 33.715 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +377.305 88.203 m 377.305 168.203 l S Q +377.305 273.693 m 374.105 276.892 l 377.305 265.693 l 380.504 276.892 l + h +377.305 273.693 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-160.203 377.305 m -157.004 374.105 l -168.203 377.305 l -157.004 380.504 + l h +-160.203 377.305 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +170.164 216.844 m 170.449 256.203 l 265.957 256.105 l 265.387 297.246 l + S Q +265.496 144.65 m 262.344 147.892 l 265.387 136.65 l 268.742 147.803 l h +265.496 144.65 m f* +0.799923 w +q 0.0138888 1 1 -0.0138888 0 433.896301 cm +-285.504 269.461 m -282.306 266.265 l -293.504 269.463 l -282.307 272.663 + l h +-285.504 269.461 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +137.555 351.727 96 80 re S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +89.879 15.629 m 138.449 52.773 l S Q +132.094 385.982 m 127.609 385.385 l 138.449 381.123 l 131.496 390.467 l + h +132.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-106.472 33.506 m -103.931 30.965 l -112.827 33.506 l -103.931 36.047 l + h +-106.472 33.506 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +201.879 8.773 m 194.449 53.918 l S Q +195.746 387.873 m 193.109 391.553 l 194.449 379.978 l 199.426 390.513 l + h +195.746 387.873 m f* +0.789384 w +q 0.164557 1 1 -0.164557 0 433.896301 cm +-13.448 197.959 m -10.288 194.802 l -21.342 197.961 l -10.287 201.119 l + h +-13.448 197.959 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +297.879 15.629 m 346.449 52.773 l S Q +340.094 385.982 m 335.609 385.385 l 346.449 381.123 l 339.496 390.467 l + h +340.094 385.982 m f* +0.635486 w +q -1 0.764706 0.764706 1 0 433.896301 cm +-237.721 133.872 m -235.179 131.331 l -244.076 133.873 l -235.18 136.414 + l h +-237.721 133.872 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +457.305 16.203 m 409.305 54.488 l S Q +415.559 384.396 m 416.066 388.892 l 409.305 379.408 l 420.059 383.892 l + h +415.559 384.396 m f* +0.625421 w +q 1 0.797619 0.797619 -1 0 433.896301 cm +229.848 232.831 m 232.35 230.331 l 223.594 232.831 l 232.353 235.333 l +h +229.848 232.831 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +418.449 0.203 m 387.02 53.918 l S Q +391.059 386.885 m 389.914 391.263 l 387.02 379.978 l 395.438 388.029 l +h +391.059 386.885 m f* +0.69049 w +q 0.585107 1 1 -0.585107 0 433.896301 cm +135.434 311.816 m 138.197 309.054 l 128.528 311.817 l 138.195 314.579 l + h +135.434 311.816 m S Q +BT +17.6 0 0 17.6 150.69448 46.484589 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +27.348 174.184 96 32.574 re S Q +BT +17.6 0 0 17.6 34.346965 238.578938 Tm +/f-0-0 1 Tf +[(Esca)-3(pe A)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 310.918 m 178.293 310.348 l 178.293 350.348 l S Q +178.293 91.549 m 175.094 94.752 l 178.293 83.549 l 181.492 94.752 l h +178.293 91.549 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-342.348 178.293 m -339.144 175.094 l -350.348 178.293 l -339.144 181.492 + l h +-342.348 178.293 m S Q +BT +12 0 0 12 142.310385 332.286029 Tm +/f-0-0 1 Tf +(SIGA & SIGB)Tj +/f-1-0 1 Tf +2.288086 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.415039 -1.25 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)21(A)]TJ +ET +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +427.684 171.355 96 32.57 re S Q +BT +17.6 0 0 17.6 434.682052 241.407364 Tm +/f-0-0 1 Tf +[(Esca)-3(pe B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +315.172 352.695 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 45.514032 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 319.629 m 297.879 332.887 287.133 343.629 273.879 343.629 c 260.621 + 343.629 249.879 332.887 249.879 319.629 c 249.879 306.375 260.621 295.629 + 273.879 295.629 c 287.133 295.629 297.879 306.375 297.879 319.629 c h +297.879 319.629 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 295.629 m 273.879 343.629 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 319.629 m 297.879 319.629 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 326.918 m 194.293 326.918 l 194.293 350.348 l S Q +194.293 91.549 m 191.094 94.752 l 194.293 83.549 l 197.492 94.752 l h +194.293 91.549 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-342.348 194.293 m -339.144 191.094 l -350.348 194.293 l -339.144 197.492 + l h +-342.348 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 310.918 m 368.883 310.348 l 368.887 350.348 l S Q +368.887 91.549 m 365.684 94.752 l 368.887 83.549 l 372.086 94.752 l h +368.887 91.549 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-342.348 368.887 m -339.145 365.684 l -350.348 368.887 l -339.145 372.086 + l h +-342.348 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 326.918 m 352.883 326.918 l 352.887 350.348 l S Q +352.887 91.549 m 349.684 94.752 l 352.887 83.549 l 356.086 94.752 l h +352.887 91.549 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-342.348 352.887 m -339.145 349.683 l -350.348 352.887 l -339.145 356.086 + l h +-342.348 352.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +377.742 218.223 m 377.789 256.203 l 281.711 255.531 l 281.711 297.816 l + S Q +281.711 144.08 m 278.508 147.279 l 281.711 136.08 l 284.91 147.279 l h +281.711 144.08 m f* +0.8 w +q 0.000000189189 1 1 -0.000000189189 0 433.896301 cm +-289.816 281.711 m -286.617 278.508 l -297.816 281.711 l -286.617 284.91 + l h +-289.816 281.711 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +193.879 191.387 m 193.879 204.641 183.133 215.387 169.879 215.387 c 156.621 + 215.387 145.879 204.641 145.879 191.387 c 145.879 178.133 156.621 167.387 + 169.879 167.387 c 183.133 167.387 193.879 178.133 193.879 191.387 c h +193.879 191.387 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +169.879 167.387 m 169.879 215.387 l S Q +q 1 0 0 -1 0 433.896301 cm +145.879 191.387 m 193.879 191.387 l S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +402.199 193.73 m 402.199 206.988 391.453 217.73 378.199 217.73 c 364.945 + 217.73 354.199 206.988 354.199 193.73 c 354.199 180.477 364.945 169.73 +378.199 169.73 c 391.453 169.73 402.199 180.477 402.199 193.73 c h +402.199 193.73 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +378.199 169.73 m 378.199 217.73 l S Q +q 1 0 0 -1 0 433.896301 cm +354.199 193.73 m 402.199 193.73 l S Q +BT +12 0 0 12 154.199851 68.649481 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +q 1 0 0 -1 0 433.896301 cm +145.879 191.629 m 125.879 191.629 l S Q +133.879 242.267 m 137.078 245.467 l 125.879 242.267 l 137.078 239.064 l + h +133.879 242.267 m f* +0.8 w +q 1 0 0 -1 0 433.896301 cm +133.879 191.629 m 137.078 188.43 l 125.879 191.629 l 137.078 194.832 l +h +133.879 191.629 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.652 190.984 m 423.652 190.984 l S Q +415.652 242.912 m 412.453 239.713 l 423.652 242.912 l 412.453 246.115 l + h +415.652 242.912 m f* +0.8 w +q -1 0 0 1 0 433.896301 cm +-415.652 -190.984 m -412.453 -194.184 l -423.652 -190.984 l -412.453 -187.781 + l h +-415.652 -190.984 m S Q +BT +12 0 0 12 46.933432 206.540155 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGA)]TJ +/f-1-0 1 Tf +3.046875 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.569336 -1.25 Td +[(RIMA)17(GE-)20(A & SIGB)]TJ +-2.377081 7.679162 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)21(A)]TJ +32.565481 0.100846 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)35(B)]TJ +-4.384188 5.279695 Td +(SIGA & SIGB)Tj +/f-1-0 1 Tf +2.288086 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.40918 -1.25 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)35(B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +73.477 207.059 m 73.477 252.309 l S Q +73.477 189.588 m 70.277 192.787 l 73.477 181.588 l 76.68 192.787 l h +73.477 189.588 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-244.309 73.477 m -241.109 70.277 l -252.309 73.477 l -241.109 76.68 l +h +-244.309 73.477 m S Q +BT +12 0 0 12 447.973532 208.481293 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGB)]TJ +/f-1-0 1 Tf +3.047852 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.5625 -1.25 Td +[(RIMA)17(GE-)33(B & SIGA)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +474.531 205.117 m 474.531 250.367 l S Q +474.531 191.529 m 471.328 194.728 l 474.531 183.529 l 477.73 194.728 l +h +474.531 191.529 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-242.367 474.531 m -239.168 471.328 l -250.367 474.531 l -239.168 477.73 + l h +-242.367 474.531 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +21.852 300.488 96 32.57 re S Q +BT +17.6 0 0 17.6 26.110689 110.562123 Tm +/f-0-0 1 Tf +[(F)91(ast E)-3(sc A)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +153.312 208.836 m 153.012 311.469 l 120.383 311.469 l S Q +128.383 122.428 m 131.582 125.627 l 120.383 122.428 l 131.582 119.228 l + h +128.383 122.428 m f* +0.8 w +q 1 0 0 -1 0 433.896301 cm +128.383 311.469 m 131.582 308.27 l 120.383 311.469 l 131.582 314.668 l +h +128.383 311.469 m S Q +BT +12 0 0 12 29.305466 79.429511 Tm +/f-0-0 1 Tf +[(OP_CSV & SIGB)]TJ +/f-1-0 1 Tf +3.047852 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.505859 -1.25 Td +[(SECRE)-3(T)91(-)35(B & SIGA)]TJ +-1.430404 7.746507 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)21(A)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +67.984 333.363 m 67.984 378.613 l S Q +67.984 63.283 m 64.785 66.482 l 67.984 55.283 l 71.184 66.482 l h +67.984 63.283 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-370.613 67.984 m -367.414 64.785 l -378.613 67.984 l -367.414 71.184 l + h +-370.613 67.984 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +394.812 209 m 395.113 311.629 l 427.742 311.629 l S Q +419.742 122.267 m 416.539 119.064 l 427.742 122.267 l 416.539 125.467 l + h +419.742 122.267 m f* +0.8 w +q -1 0 0 1 0 433.896301 cm +-419.742 -311.629 m -416.539 -314.832 l -427.742 -311.629 l -416.539 -308.43 + l h +-419.742 -311.629 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +428.723 295.395 96 32.57 re S Q +BT +17.6 0 0 17.6 432.135626 115.925215 Tm +/f-0-0 1 Tf +[(F)91(ast E)-3(sc B)]TJ +12 0 0 12 436.188279 84.521894 Tm +[(OP_CSV & SIGA)]TJ +/f-1-0 1 Tf +3.046875 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.512695 -1.25 Td +[(SECRE)-3(T)91(-)21(A & SIGB)]TJ +-1.69294 7.746507 Td +[(SIGA & SIGB & SEC)-3(RET)90(-)35(B)]TJ +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +474.855 328.27 m 474.855 373.52 l S Q +474.855 68.377 m 471.656 71.576 l 474.855 60.377 l 478.055 71.576 l h +474.855 68.377 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-365.52 474.855 m -362.32 471.656 l -373.52 474.855 l -362.32 478.055 l + h +-365.52 474.855 m S Q +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/dual-anchor-final.svg b/doc/dual-anchor-final.svg new file mode 100644 index 000000000..94e23cb8e --- /dev/null +++ b/doc/dual-anchor-final.svg @@ -0,0 +1,1027 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + + SIGA & SIGBORSIGA & SIGB & SECRET-A + + + Escape B + + + CommitTx B + + + + + + + + + + + + + + + + + + SIG A & B + SIG A & B + + + OP_CSV & SIGAORRIMAGE-A & SIGB + SIGA & SIGB & SECRET-A + SIGA & SIGB & SECRET-B + SIGA & SIGBORSIGA & SIGB & SECRET-B + + OP_CSV & SIGBORRIMAGE-B & SIGA + + + + Fast Esc A + + + OP_CSV & SIGBORSECRET-B & SIGA + SIGA & SIGB & SECRET-A + + + + + Fast Esc B + + OP_CSV & SIGAORSECRET-A & SIGB + SIGA & SIGB & SECRET-B + + + diff --git a/doc/dual-anchor-take2.svg b/doc/dual-anchor-take2.svg new file mode 100644 index 000000000..4a43738d5 --- /dev/null +++ b/doc/dual-anchor-take2.svg @@ -0,0 +1,847 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + + SIGA & SIGBOR + + + Escape B + + + CommitTx B + + + + + + + + + + + + + + + + + + SIG A & B + SIG A & B + + + OP_CSV * 2 & SIGAOR + SIGA & SIGB & SECRET-A + SIGA & SIGB & SECRET-B + OP_CSV & RIMAGE-A & SIGB + ORSECRET-B & SIGA + SIGA & SIGB & H(SECRET-A) + SIGA & SIGBOR + SIGA & SIGB & H(SECRET-A) + OP_CSV * 2 & SIGBOR + OP_CSV & RIMAGE-B & SIGA + ORSECRET-A & SIGB + + diff --git a/doc/dual-anchor.svg b/doc/dual-anchor.svg new file mode 100644 index 000000000..1786f28c4 --- /dev/null +++ b/doc/dual-anchor.svg @@ -0,0 +1,592 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + Anchor A + Anchor B + + + + + + + + + + + + CommitTx A + + + Escape A + + SIGA & SIGBOROP_CSV & SIGA + + SIGA & SIGB + + + Escape B + + SIGA & SIGB + SIGA & SIGBOROP_CSV & SIGB + + CommitTx B + + + + + + + + + diff --git a/doc/htlc.eps b/doc/htlc.eps new file mode 100644 index 000000000..26be05fa8 --- /dev/null +++ b/doc/htlc.eps @@ -0,0 +1,667 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.14.2 (http://cairographics.org) +%%CreationDate: Fri Jul 17 17:07:14 2015 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 75 69 475 425 +%%EndComments +%%BeginProlog +save +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/pdfmark where { pop globaldict /?pdfmark /exec load put } + { globaldict begin /?pdfmark /pop load def /pdfmark + /cleartomark load def end } ifelse +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 32 /space put +Encoding 38 /ampersand put +Encoding 45 /hyphen put +Encoding 65 /A put +Encoding 66 /B put +Encoding 67 /C put +Encoding 69 /E put +Encoding 71 /G put +Encoding 72 /H put +Encoding 73 /I put +Encoding 76 /L put +Encoding 77 /M put +Encoding 78 /N put +Encoding 79 /O put +Encoding 80 /P put +Encoding 82 /R put +Encoding 83 /S put +Encoding 84 /T put +Encoding 85 /U put +Encoding 86 /V put +Encoding 89 /Y put +Encoding 95 /underscore put +Encoding 105 /i put +Encoding 109 /m put +Encoding 111 /o put +Encoding 116 /t put +Encoding 120 /x put +/CharStrings 28 dict dup begin +/.notdef 0 def +/C 1 def +/o 2 def +/m 3 def +/i 4 def +/t 5 def +/T 6 def +/x 7 def +/space 8 def +/A 9 def +/B 10 def +/S 11 def +/I 12 def +/G 13 def +/ampersand 14 def +/R 15 def +/E 16 def +/V 17 def +/O 18 def +/N 19 def +/hyphen 20 def +/P 21 def +/underscore 22 def +/L 23 def +/U 24 def +/Y 25 def +/H 26 def +/M 27 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d39000012e0000001fe6670676d7134766a0000 +14e0000000ab676c7966144ea5060000009c0000124468656164026638f70000158c00000036 +686865610cb8066d000015c400000024686d74788ba40d4e000015e8000000706c6f63610001 +0bc000001658000000746d61787004890671000016cc00000020707265703b07f100000016ec +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900010073 +ffe3052705f000190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a +10fcec32ec310010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e012320001110002132 +3637150e01232000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a01 +86015386ed0562d55f5efec7fed8fed9fec75e5fd34848019f01670168019f47000000020071 +ffe30475047b000b0017004a401306b91200b90cb8128c1809120f51031215451810fcecf4ec +310010e4f4ec10ee3040233f197b007b067f077f087f097f0a7f0b7b0c7f0d7f0e7f0f7f107f +117b12a019f01911015d012206151416333236353426273200111000232200111000027394ac +ab9593acac93f00112feeef0f1feef011103dfe7c9c9e7e8c8c7e99cfec8feecfeedfec70139 +0113011401380000000100ba0000071d047b0022005a4026061209180f00061d07150c871d20 +03b81bbc19100700110f0808065011080f501c18081a462310fcec32fcfcfcec11123931002f +3c3ce4f43cc4ec32111217393040133024502470249024a024a024bf24df24ff2409015d013e +013332161511231134262322061511231134262322061511231133153e01333216042945c082 +afbeb972758fa6b972778da6b9b93fb0797aab03897c76f5e2fd5c029ea19cbea4fd87029ea2 +9bbfa3fd870460ae67627c000000000200c100000179061400030007002b400e06be04b100bc +020501080400460810fc3cec3231002fe4fcec30400b1009400950096009700905015d133311 +2311331523c1b8b8b8b80460fba00614e90000010037000002f2059e0013003840190e05080f +03a9001101bc08870a0b08090204000810120e461410fc3cc4fc3cc432393931002fecf43cc4 +ec3211393930b2af1501015d01112115211114163b01152322263511233533110177017bfe85 +4b73bdbdd5a28787059efec28ffda0894e9a9fd202608f013e0000000001fffa000004e905d5 +0007004a400e0602950081040140031c0040050810d4e4fce431002ff4ec3230014bb00a5458 +bd00080040000100080008ffc03811373859401300091f00100110021f071009400970099f09 +095d03211521112311210604effdeecbfdee05d5aafad5052b000001003b000004790460000b +014340460511060706041103040707060411050401020103110202010b110001000a11090a01 +01000a110b0a0708070911080807420a070401040800bf05020a0704010408000208060c10d4 +4bb00a544bb00f545b4bb010545b4bb011545b58b90006004038594bb0145458b90006ffc038 +59c4d4c411173931002f3cec321739304b5358071005ed071008ed071008ed071005ed071005 +ed071008ed071008ed071005ed59220140980a04040a1a04150a260a3d04310a55045707580a +660a76017a047607740a8d04820a99049f049707920a900aa601a904af04a507a30aa00a1c0a +03040505090a0b1a03150515091a0b2903260525092a0b200d3a013903370534073609390b30 +0d4903460545094a0b400d590056015902590357055606590756085609590b500d6f0d78017f +0d9b019407ab01a407b00dcf0ddf0dff0d2f5d005d09022309012309013309010464fe6b01aa +d9febafebad901b3fe72d9012901290460fddffdc101b8fe48024a0216fe71018f0000020010 +0000056805d50002000a00c2404100110100040504021105050401110a030a0011020003030a +0711050406110505040911030a08110a030a4200030795010381090509080706040302010009 +050a0b10d4c4173931002f3ce4d4ec1239304b5358071005ed0705ed071005ed0705ed071008 +ed071005ed071005ed071008ed5922b2200c01015d40420f010f020f070f080f005800760070 +008c000907010802060309041601190256015802500c67016802780176027c03720477077808 +87018802800c980299039604175d005d090121013301230321032302bcfeee0225fe7be50239 +d288fd5f88d5050efd1903aefa2b017ffe810000000300c9000004ec05d50008001100200043 +40231900950a0995128101950aad1f110b080213191f05000e1c1605191c2e09001c12042110 +fcec32fcecd4ec111739393931002fececf4ec10ee3930b20f2201015d011121323635342623 +01112132363534262325213216151406071e01151404232101930144a39d9da3febc012b9491 +9194fe0b0204e7fa807c95a5fef0fbfde802c9fddd878b8c850266fe3e6f727170a6c0b189a2 +1420cb98c8da00010087ffe304a205f00027007e403c0d0c020e0b021e1f1e080902070a021f +1f1e420a0b1e1f0415010015a11494189511049500942591118c281e0a0b1f1b0700221b190e +2d071914222810dcc4ecfcece4111239393939310010e4f4e4ec10eef6ee10c6111739304b53 +5807100eed11173907100eed1117395922b20f2901015db61f292f294f29035d01152e012322 +061514161f011e0115140421222627351e013332363534262f012e01353424333216044873cc +5fa5b377a67ae2d7feddfee76aef807bec72adbc879a7be2ca0117f569da05a4c53736807663 +651f192bd9b6d9e0302fd04546887e6e7c1f182dc0abc6e42600000100c90000019305d50003 +002eb700af02011c00040410fc4bb0105458b9000000403859ec31002fec3001400d30054005 +500560058f059f05065d13331123c9caca05d5fa2b0000010073ffe3058b05f0001d00394020 +00051b0195031b950812a111ae15950e91088c1e02001c1134043318190b101e10fcecfce4fc +c4310010e4f4ecf4ec10fed4ee11393930251121352111060423200011100021320417152e01 +23200011100021323604c3feb6021275fee6a0fea2fe75018b015e9201076f70fc8bfeeefeed +011301126ba8d50191a6fd7f53550199016d016e01994846d75f60fecefed1fed2fece250000 +00020081ffe305fe05f00009003001cd40960d010e0c861112110b860a0b1212110986000915 +1615070106088616161502010301861d1e1d008609001e1e1d201f02211e110a130a17161503 +181411130a07080206091113130a0201020300110a130a171602181511130a141113130a4212 +0b090306000a1e0328150e0628270695182b9527942491188c0e130a2e0b0e09002e1215270e +1e032e1227210e110f132103121b103110fcecc4d4d4ec10c6ee113911123939113939113911 +3931002fc6e4f6e6ee10ee10c6111239111739111739304b5358071005ed0705ed1117390710 +05ed111739071005ed1117390705ed111739071005ed111739071008ed07100eed1117390710 +0eed111739071008ed071008ed07100eed1117395922b20f3201015d40b2070b052209291c00 +1c011f02170b2a002a0126123a003412440b5e0059015a0a55125a1a5a1f5930671e7b009b00 +9a0199029708950b931595169522992d1f090b090c08110c270c2818021b09190b190c19111c +141c15161d1f3227002701290923122a132a1428152f323b09341239133f324a094c144b1546 +194f3256015a09590c551259135c1f5f326a0c691160327501790c7a1193009301970295059c +079c089f089a099b0b9a0c9032a032b032395d005d010e011514163332363709013e01373306 +02070123270e01232200353436372e0135343633321617152e0123220615141601f25b55d4a0 +5fa649fe7b01fc3b4206ba0c685d0117fc8f68e483f1fece86863032deb853a555579e446983 +3b032351a15892c23f40028ffdf859cb7284fefe7efee39359570113d780e1633f7d3ca2c524 +24b62f316f583367000200c90000055405d50013001c00b14035090807030a06110304030511 +0404034206040015030415950914950d810b040506031109001c160e050a191904113f140a1c +0c041d10fcec32fcc4ec1117391139393931002f3cf4ecd4ec123912391239304b5358071005 +ed071005ed1117395922b2401e01015d40427a13010500050105020603070415001501140216 +03170425002501250226032706260726082609201e3601360246014602680575047505771388 +068807980698071f5d005d011e01171323032e012b0111231121201615140601113332363534 +2623038d417b3ecdd9bf4a8b78dcca01c80100fc83fd89fe9295959202bc16907efe68017f96 +62fd8905d5d6d88dba024ffdee8783838500000100c90000048b05d5000b002e401506950402 +950081089504ad0a05010907031c00040c10fcec32d4c4c431002fececf4ec10ee30b21f0d01 +015d132115211121152111211521c903b0fd1a02c7fd3902f8fc3e05d5aafe46aafde3aa0000 +000100100000056805d5000600b7402704110506050311020306060503110403000100021101 +010042030401af0006040302000505010710d4c4173931002fec3239304b5358071005ed0710 +08ed071008ed071005ed5922b2500801015d406200032a03470447055a037d03830307060007 +0208040906150114021a041a052a002601260229042905250620083800330133023c043c0537 +06480045014502490449054706590056066602690469057a0076017602790479057506800898 +009706295d005d21013309013301024afdc6d301d901dad2fdc705d5fb1704e9fa2b00020073 +ffe305d905f0000b00170023401306951200950c91128c1809190f33031915101810fcecfcec +310010e4f4ec10ee300122001110003332001110002720001110002120001110000327dcfefd +0103dcdc0101feffdc013a0178fe88fec6fec5fe870179054cfeb8fee5fee6feb80148011a01 +1b0148a4fe5bfe9efe9ffe5b01a40162016201a50000000100c90000053305d500090079401e +071101020102110607064207020300af0805060107021c0436071c00040a10fcecfcec113939 +31002f3cec323939304b5358071004ed071004ed5922b21f0b01015d40303602380748024707 +690266078002070601090615011a06460149065701580665016906790685018a0695019a069f +0b105d005d13210111331121011123c901100296c4fef0fd6ac405d5fb1f04e1fa2b04e1fb1f +0001006401df027f028300030011b6009c020401000410dccc310010d4ec301321152164021b +fde50283a400000200c90000048d05d500080013003a40180195100095098112100a08020400 +05190d3f11001c09041410fcec32fcec11173931002ff4ecd4ec30400b0f151f153f155f15af +1505015d011133323635342623252132041514042b0111230193fe8d9a9a8dfe3801c8fb0101 +fefffbfeca052ffdcf92878692a6e3dbdde2fda80001ffecfe1d0414feac0003000fb500a901 +00020410c4c43100d4ec30011521350414fbd8feac8f8f000000000100c90000046a05d50005 +0025400c0295008104011c033a00040610fcecec31002fe4ec30400930075007800380040401 +5d133311211521c9ca02d7fc5f05d5fad5aa000100b2ffe3052905d50011004040160802110b +0005950e8c09008112081c0a38011c00411210fc4bb0105458b90000ffc03859ecfcec310010 +e432f4ec11393939393001b61f138f139f13035d133311141633323635113311100021200011 +b2cbaec3c2aecbfedffee6fee5fedf05d5fc75f0d3d3f0038bfc5cfedcfed6012a0124000001 +fffc000004e705d5000800944028031104050402110102050504021103020800080111000008 +42020300af0602070440051c0040070910d4e4fce4123931002fec3239304b5358071005ed07 +1008ed071008ed071005ed5922b2000a01015d403c0502140235023002300530084602400240 +0540085102510551086502840293021016011a031f0a2601290337013803400a670168037803 +700a9f0a0d5d005d03330901330111231104d9019e019bd9fdf0cb05d5fd9a0266fcf2fd3902 +c7000000000100c90000053b05d5000b002c4014089502ad0400810a0607031c053809011c00 +040c10fcec32fcec3231002f3ce432fcec30b2500d01015d133311211133112311211123c9ca +02decacafd22ca05d5fd9c0264fa2b02c7fd3900000100c90000061f05d5000c00bf40340311 +0708070211010208080702110302090a0901110a0a09420a070203080300af080b0509080302 +01050a061c043e0a1c00040d10fcecfcec11173931002f3cc4ec32111739304b5358071005ed +071008ed071008ed071005ed5922b2700e01015d405603070f080f09020a15021407130a2602 +26072007260a200a3407350a69027c027b07790a80028207820a90021604010b0313011b0323 +012c032708280934013c035608590965086a097608790981018d0395019b03145d005d132109 +01211123110123011123c9012d017d017f012dc5fe7fcbfe7fc405d5fc0803f8fa2b051ffc00 +0400fae10000013500b800cb00cb00c100aa009c01a600b800660000007100cb00a002b20085 +007500b800c301cb0189022d00cb00a600f000d300aa008700cb03aa0400014a003300cb0000 +00d9050200f4015400b4009c01390114013907060400044e04b4045204b804e704cd00370473 +04cd04600473013303a2055605a60556053903c5021200c9001f00b801df007300ba03e90333 +03bc0444040e00df03cd03aa00e503aa0404000000cb008f00a4007b00b80014016f007f027b +0252008f00c705cd009a009a006f00cb00cd019e01d300f000ba018300d5009803040248009e +01d500c100cb00f600830354027f00000333026600d300c700a400cd008f009a0073040005d5 +010a00fe022b00a400b4009c00000062009c0000001d032d05d505d505d505f0007f007b0054 +00a406b80614072301d300b800cb00a601c301ec069300a000d3035c037103db0185042304a8 +0448008f0139011401390360008f05d5019a0614072306660179046004600460047b009c0000 +0277046001aa00e904600762007b00c5007f027b000000b4025205cd006600bc006600770610 +00cd013b01850389008f007b0000001d00cd074a042f009c009c0000077d006f0000006f0335 +006a006f007b00ae00b2002d0396008f027b00f600830354063705f6008f009c04e10266008f +018d02f600cd03440029006604ee00730000140000960000b707060504030201002c2010b002 +254964b040515820c859212d2cb002254964b040515820c859212d2c20100720b00050b00d79 +20b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d7920b8ffff5058041b05 +59b0051cb0032508e12d2c4b505820b0fd454459212d2cb002254560442d2c4b5358b00225b0 +022545445921212d2c45442d2cb00225b0022549b00525b005254960b0206368208a108a233a +8a10653a2d00000100000002570a3c50034a5f0f3cf5001f080000000000cef5cb7600000000 +cef5cb76f7d6fcae0d72095500000008000000010000000000010000076dfe1d00000de2f7d6 +fa510d7200010000000000000000000000000000001c04cd00660596007304e5007107cb00ba +023900c10323003704e3fffa04bc003b028b000005790010057d00c905140087025c00c90633 +0073063d0081058f00c9050e00c905790010064c007305fc00c902e3006404d300c90400ffec +047500c905db00b204e3fffc060400c906e700c90000000000000044000000dc000001800000 +0244000002940000031000000380000005040000050400000600000006b0000007a8000007f0 +0000089800000b0000000c1400000c7400000d5400000de000000e8800000eb400000f340000 +0f6000000fa400001028000010ec000011480000124400010000001c0354002b0068000c0002 +00100099000800000415021600080004b8028040fffbfe03fa1403f92503f83203f79603f60e +03f5fe03f4fe03f32503f20e03f19603f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03 +eafe03e93a03e84203e7fe03e63203e5e45305e59603e48a4105e45303e3e22f05e3fa03e22f +03e1fe03e0fe03df3203de1403dd9603dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03 +d5d44705d57d03d44703d3d21b05d3fe03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e +05ccfe03cb1e03ca3203c9fe03c6851105c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03 +bffe03befe03bdfe03bcfe03bbfe03ba1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb +03b78004b6b52505b65d40ff03b64004b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae +6403ad0e03acab2505ac6403abaa1205ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03 +a51203a4fe03a3a20e05a33203a20e03a16403a08a4105a096039ffe039e9d0c059efe039d0c +039c9b19059c64039b9a10059b19039a1003990a0398fe0397960d0597fe03960d03958a4105 +95960394930e05942803930e0392fa039190bb0591fe03908f5d0590bb039080048f8e25058f +5d038f40048e25038dfe038c8b2e058cfe038b2e038a8625058a410389880b05891403880b03 +878625058764038685110586250385110384fe038382110583fe0382110381fe0380fe037ffe +0340ff7e7d7d057efe037d7d037c64037b5415057b25037afe0379fe03780e03770c03760a03 +75fe0374fa0373fa0372fa0371fa0370fe036ffe036efe036c21036bfe036a1142056a530369 +fe03687d036711420566fe0365fe0364fe0363fe0362fe03613a0360fa035e0c035dfe035bfe +035afe0359580a0559fa03580a035716190557320356fe035554150555420354150353011005 +531803521403514a130551fe03500b034ffe034e4d10054efe034d10034cfe034b4a13054bfe +034a4910054a1303491d0d05491003480d0347fe0346960345960344fe0343022d0543fa0342 +bb03414b0340fe033ffe033e3d12053e14033d3c0f053d12033c3b0d053c40ff0f033b0d033a +fe0339fe033837140538fa033736100537140336350b05361003350b03341e03330d0332310b +0532fe03310b03302f0b05300d032f0b032e2d09052e10032d09032c32032b2a25052b64032a +2912052a25032912032827250528410327250326250b05260f03250b0324fe0323fe03220f03 +210110052112032064031ffa031e1d0d051e64031d0d031c1142051cfe031bfa031a42031911 +420519fe031864031716190517fe031601100516190315fe0314fe0313fe031211420512fe03 +11022d05114203107d030f64030efe030d0c16050dfe030c0110050c16030bfe030a100309fe +0308022d0508fe030714030664030401100504fe03401503022d0503fe0302011005022d0301 +100300fe0301b80164858d012b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%BeginResource: font DejaVuSans-Bold +11 dict begin +/FontType 42 def +/FontName /DejaVuSans-Bold def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 79 /O put +Encoding 82 /R put +/CharStrings 3 dict dup begin +/.notdef 0 def +/O 1 def +/R 2 def +end readonly def +/sfnts [ +<000100000009008000030010637674203eb9310800000268000002546670676d5b026bf00000 +04bc000000ac676c7966581f41560000009c000001cc68656164045e38fb0000056800000036 +686865610eaf0774000005a000000024686d747811c30188000005c40000000c6c6f63610000 +02f8000005d0000000106d6178700648062d000005e000000020707265707c61a2e700000600 +000007a700020066fe96046605a400030007001fbc00040126000000060126b6010805890204 +002fc4d4ec310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f27206 +2900000000020066ffe3066605f0000b00170032401306ae1200ae0c9c129818092d0f37032d +152b1810fcecfcec310010e4f4ec10ee30400b0019171310192f193f1905015d012202151412 +3332123534020320001110002120001110000366b0c2c2b0b1c2c2b101680198fe68fe98fe99 +fe67019904d9fefcecebfefc0104ebec01040117fe64fe95fe96fe64019c016a016b019c0000 +000200bc0000060005d50008001c008740321b1a021c191d161716181d1717162519160a1300 +ae0906ae0c8d170a16131803101c190600040d07031617100907160b031d10fcec32d4c4ec11 +39173911173931002f3cf4ecd4ec39123939304b5358071005ed071005ed1117395922b2181c +01015d401f1b181b191a1a1b1b1a1c361536164515451656155616501e65156516601e0f5d01 +32363534262b0119022111212004151406071e01171321032e012302df79696979a2fe7f024c +012701138f904f7d40d1fe66b637715e033f5a676658fe81fef6fdcb05d5c6d694be2d127f81 +fe5801737052000001660133016600bc00e90000013d00a200fa031f00020002006601660002 +000200ac015400ec00bc006201660181048501540166016d04a400020166007f04cd00000002 +0133006200710000002504a401bc00ba00e500660181018d0548055a0166016d000000000002 +000200f605c301f0053902390058046d043d04b2048104b2016601750466048100b004660439 +02d1049c047b04cf047b005801330166014c0166014c000200ac009a014a0123009a029a0144 +0119014402cd00c100000166013f019a013b05cb05cb00d500d5015000ac00ac0077020a01c7 +01f2012f015801b2012300f600f6011f012f0135023501ee01e70133009800d10358050a009a +008f0112009800bc00cd00e500e500f2007304000166008f05d5022b05d500c300e100d700e5 +0000006a01020000001d032d05d505d505f000a8006a00ec00e1010205d506140721046602f8 +00ec018302a602f80123010201020112011f031f005e03cd046004c7048900ec01bc00ba0102 +0333031f03420333035c0112011f05d5019a009a00e106660179046004600460047b000000ec +02c302b802cd00be00dd00d50000006a025c027b029a00dd01ae01ba01120000008501ae0460 +0762041b009a069a045800ee009a029a00d102cd019a015005cb05cb008b008b063100f60406 +00f0034c016004a800c10000002505c101000121074a06120096014a078300a800000337007b +0014000000c9010005c105c105c105c101000108061d00960427039e00ec0102027d01330098 +00d10358017900cd02390362009c009c009c009301b8009300b80073000014000326b7070605 +04030201002c2010b002254964b040515820c859212d2cb002254964b040515820c859212d2c +20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b00050b00d +7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b80128454459212d2cb0022545 +60442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0052549 +60b0206368208a108a233a8a10653a2d000100000002570aca280dd25f0f3cf5001f08000000 +0000cef5cb7000000000cef5cb70f772fcae0fcd096500010008000000010000000000010000 +076dfe1d00001021f772f9320fcd00010000000000000000000000000000000304cd006606cd +0066062900bc000000000000004c000000e0000001cc000100000003034e002b0078000c0002 +001000400008000005ed02210008000441840280012600fe000301250011000301240121003a +0005012400fa000301230016000301220121003a0005012200fe00030121003a0003012000fa +0003011f00bb0003011e00640003011d00fe0003011c00190003011b001e0003011a00fe0003 +011900fe0003011800fe0003011700fe0003011600fe000301150114000e0005011500fe0003 +0114000e0003011300fe0003011200fe0003010f010e007d0005010f00fe0003010e007d0003 +010d010c008c0005010d00fe0003010d00c00004010c010b00590005010c008c0003010c0080 +0004010b010a00260005010b00590003010b00400004010a00260003010900fe0003010800fe +00030107000c00030107008000040106b2972e054113010600fa0003010500fa0003010400fe +0003010300190003010200fa0003010100fa0003010040ff7d03ff3e03fefe03fcfb2c05fcfe +03fb2c03fafe03f9f84705f97d03f84703f7fa03f6fe03f5fe03f4fe03f3bb03f2fe03f1fe03 +f0fe03ef1e03eefe03edec0a05edfe03ec0a03ec4004ebea0a05eb3203ea0a03e9fa03e89116 +05e8fe03e7fa03e6fa03e5911605e5fe03e4fe03e3fe03e2fe03e1fe03e0fe03dffe03defa03 +dddc1805dd6403dc1803dba01e05db6403dad92505dafa03d92503d8d12505d8fa03d7d61405 +d71603d6d51005d61403d51003d4d30b05d42003d30b03d2d12505d2fa03d1911605d12503d0 +940c05d02303cfce1405cf2603cecd1205ce1403cd1203cc911605cc1d03cb1403cac9bb05ca +fe03c9c85d05c9bb03c98004c840ffc72505c85d03c84004c72503c6fe03c56403c4901005c4 +fe03c31c03c2fe03c1fe03c0bf3a05c0fa03bfad1b05bf3a03bebd1a05be3203bdbc1105bd1a +03bcbb0f05bc1103bbba0c05bb0f03ba0c03b9911605b9fe03b8fe03b71503b61203b5fe03b4 +fe03b3fe03b21703b11903b01603afad1b05affa03aead1b05aefa03ad911605ad1b03ac9116 +05ac7d03abfe03aa2603a9fe03a8fe03a7fe03a6fe03a50a03a4fe03a3a20e05a3fe03a20e03 +a24004a1a01e05a1fa03a0911605a01e039f9116059ffa039e940c059e1c039dfe039c9bbb05 +9cfe039b9a5d059bbb039b80049a8f25059a5d039a400499fe0398972e0598fe03972e039691 +1605961e40ff0395940c05952003940c0393911605934b039291160592fe0391901005911603 +9010038f25038efe038dfe038cfe038bfe038afe0389fe038887250588fe0387250386fe0385 +fe0384320383960382fe0381fe038019037f0a037efe037dfe037cfe037bfa037afa0379fe03 +7776a60577fe0376a60375741b0575fa03741b0373fa03727d0371fe03706f2c056f2c036efa +036dfa036cfa036bfe036afe0369fe0368630c0568320367fe0366320365640a0565fe03640a +0364400463620a05630c03620a0361601505619603600111056015035f0a035efe035dfe035c +0111055cfe035b5a1b055bfe035a0111055a1b0359fe0358fa0357fe035601110540ff56fe03 +55fe03541e035314035251190552fa0351011105511903504f190550fa034f4e11054f19034e +11034d1e034c4b14054c15034b4a11054b14034a490e054a1103490e0348fa03474614054715 +0346140345fa0344430e05440f03430e034241250542fa0341011105412503403f0f0540fe03 +3f3e0e053f0f033e0e033d3c0d053d16033c0d033b64033afe0339140338fe0337130336351a +0536250335341405351a0335c004340a0d0534140334800433320c05331403334004320c0331 +30a60531fe033001110530a6032f0c032e13032d2c3a052dfa032c1525052c3a032b64032a64 +0329fe0328150327171105271e03262003251e0324231105402b241e0323110322000d0522fa +03210f032140042014031f0a031e1e031d1c19051d25031c0f13051c19031cb801004091041b +0d031a194b051a7d0319011105194b0318fe031711031615250516fa03150111051525031464 +0313110312fe031101110511fe031064030f0e10050f13030fc0040e10030e80040d0111050d +fa030c32030b0a0d050b16030b80040a0d030a400409fe0308fe0307fe0306050a0506fe0305 +0a0305400404fa030364030201110502fe0301000d05011103000d0301b80164858d012b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d0000> +] def +/f-1-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 75 69 475 425 +%%EndPageSetup +q 75 69 400 356 rectclip q +0 g +2.4 w +1 J +1 j +[] 0.0 d +4 M q 1 0 0 -1 0 433.896301 cm +137.555 66.457 96 80 re S Q +BT +17.6 0 0 17.6 150.69448 331.751667 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.862305 -1.25 Td +(Tx A)Tj +ET +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +250.605 25.652 m 178.293 25.078 l 178.293 65.078 l S Q +178.293 376.818 m 175.094 380.017 l 178.293 368.818 l 181.492 380.017 l + h +178.293 376.818 m f* +0.8 w +q 0.0000002 1 1 -0.0000002 0 433.896301 cm +-57.078 178.293 m -53.879 175.094 l -65.078 178.293 l -53.879 181.492 l + h +-57.078 178.293 m S Q +2.4 w +1 J +1 j +q 1 0 0 -1 0 433.896301 cm +315.172 67.43 96 80 re S Q +BT +17.6 0 0 17.6 328.310715 330.78111 Tm +/f-0-0 1 Tf +[(Commit)]TJ +0.861328 -1.25 Td +(Tx B)Tj +ET +q 1 0 0 -1 0 433.896301 cm +297.879 34.363 m 297.879 47.617 287.133 58.363 273.879 58.363 c 260.621 + 58.363 249.879 47.617 249.879 34.363 c 249.879 21.109 260.621 10.363 273.879 + 10.363 c 287.133 10.363 297.879 21.109 297.879 34.363 c h +297.879 34.363 m S Q +0.8 w +0 J +0 j +q 1 0 0 -1 0 433.896301 cm +273.879 10.363 m 273.879 58.363 l S Q +q 1 0 0 -1 0 433.896301 cm +249.879 34.363 m 297.879 34.363 l S Q +q 1 0 0 -1 0 433.896301 cm +250.605 41.652 m 194.293 41.652 l 194.293 65.078 l S Q +194.293 376.818 m 191.094 380.017 l 194.293 368.818 l 197.492 380.017 l + h +194.293 376.818 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-57.078 194.293 m -53.879 191.094 l -65.078 194.293 l -53.879 197.492 l + h +-57.078 194.293 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 25.652 m 368.883 25.078 l 368.887 65.078 l S Q +368.887 376.818 m 365.684 380.017 l 368.887 368.818 l 372.086 380.017 l + h +368.887 376.818 m f* +0.8 w +q -0.0000002 1 1 0.0000002 0 433.896301 cm +-57.078 368.887 m -53.879 365.684 l -65.078 368.887 l -53.879 372.086 l + h +-57.078 368.887 m S Q +0.8 w +q 1 0 0 -1 0 433.896301 cm +296.574 41.652 m 352.883 41.652 l 352.887 65.078 l S Q +352.887 376.818 m 349.684 380.017 l 352.887 368.818 l 356.086 380.017 l + h +352.887 376.818 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-57.078 352.887 m -53.879 349.684 l -65.078 352.887 l -53.879 356.086 l + h +-57.078 352.887 m S Q +BT +12 0 0 12 154.199851 353.916559 Tm +/f-0-0 1 Tf +(SIG A & B)Tj +14.845178 -0.134686 Td +[(SIG A &)-319(B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +154.352 146.453 m 154.48 162.617 l 98.852 162.617 l 98.852 186.047 l S Q +98.852 255.849 m 95.648 259.053 l 98.852 247.849 l 102.051 259.053 l h +98.852 255.849 m f* +0.8 w +q 0.000000341463 1 1 -0.000000341463 0 433.896301 cm +-178.047 98.852 m -174.844 95.648 l -186.047 98.852 l -174.844 102.051 +l h +-178.047 98.852 m S Q +BT +12 0 0 12 74.360245 239.841376 Tm +/f-0-0 1 Tf +(SIG B)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +186.359 146.055 m 186.359 202.055 l S Q +186.359 239.842 m 183.16 243.041 l 186.359 231.842 l 189.559 243.041 l +h +186.359 239.842 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-194.055 186.359 m -190.855 183.16 l -202.055 186.359 l -190.855 189.559 + l h +-194.055 186.359 m S Q +BT +12 0 0 12 98.003489 217.457611 Tm +/f-0-0 1 Tf +[(REV)17(OCA)77(TION-)21(A & SIG B)]TJ +/f-1-0 1 Tf +5.02832 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.206055 -1.25 Td +[(OP_CSV & SIG A)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +403.176 146.453 m 403.047 162.617 l 458.676 162.617 l 458.676 186.047 l + S Q +458.676 255.849 m 455.477 259.053 l 458.676 247.849 l 461.879 259.053 l + h +458.676 255.849 m f* +0.8 w +q -0.000000341463 1 1 0.000000341463 0 433.896301 cm +-178.047 458.676 m -174.844 455.477 l -186.047 458.676 l -174.844 461.879 + l h +-178.047 458.676 m S Q +BT +12 0 0 12 441.962302 234.992646 Tm +/f-0-0 1 Tf +(SIG A)Tj +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +361.629 149.289 m 361.629 205.289 l S Q +361.629 236.607 m 358.43 239.81 l 361.629 228.607 l 364.828 239.81 l h +361.629 236.607 m f* +0.8 w +q 0 1 1 0 0 433.896301 cm +-197.289 361.629 m -194.086 358.43 l -205.289 361.629 l -194.086 364.828 + l h +-197.289 361.629 m S Q +BT +12 0 0 12 331.539304 213.416986 Tm +/f-0-0 1 Tf +[(REV)17(OCA)77(TION-)34(B & SIG A)]TJ +/f-1-0 1 Tf +5.021484 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-3.207031 -1.25 Td +[(OP_CSV & SIG B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +210.527 148.152 m 210.398 164.316 l 240.98 164.316 l 240.98 287.949 l S Q +240.98 153.947 m 237.781 157.146 l 240.98 145.947 l 244.18 157.146 l h +240.98 153.947 m f* +0.8 w +q -0.0000000647062 1 1 0.0000000647062 0 433.896301 cm +-279.949 240.98 m -276.75 237.781 l -287.949 240.98 l -276.75 244.18 l +h +-279.949 240.98 m S Q +BT +12 0 0 12 130.27529 130.667768 Tm +/f-0-0 1 Tf +[(R)41(-)58(V)65(AL)49(UE & SIG-)-3(P)64(A)79(YEE)]TJ +/f-1-0 1 Tf +4.508789 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-6.18457 -1.25 Td +[(HTLC-)90(TIMEOUT)-3( & SIG-P)63(A)79(YER)]TJ +/f-1-0 1 Tf +6.18457 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.02832 -1.25 Td +[(REV)17(OCA)77(TION-)21(A & SIG B)]TJ +ET +0.8 w +q 1 0 0 -1 0 433.896301 cm +345.309 147.668 m 345.438 163.832 l 314.859 163.832 l 314.859 287.469 l + S Q +314.859 154.428 m 311.656 157.631 l 314.859 146.428 l 318.059 157.631 l + h +314.859 154.428 m f* +0.8 w +q 0.0000000647062 1 1 -0.0000000647062 0 433.896301 cm +-279.469 314.859 m -276.266 311.656 l -287.469 314.859 l -276.266 318.059 + l h +-279.469 314.859 m S Q +BT +12 0 0 12 320.821482 132.279926 Tm +/f-0-0 1 Tf +[(R)41(-)58(V)65(AL)49(UE & SIG-)-3(P)64(A)79(YEE)]TJ +/f-1-0 1 Tf +4.508789 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-6.18457 -1.25 Td +[(HTLC-)90(TIMEOUT)-3( & SIG-P)63(A)79(YER)]TJ +/f-1-0 1 Tf +6.18457 -1.25 Td +(OR)Tj +/f-0-0 1 Tf +-5.021484 -1.25 Td +[(REV)17(OCA)77(TION-)34(B & SIG A)]TJ +ET +Q Q +showpage +%%Trailer +end restore +%%EOF diff --git a/doc/htlc.svg b/doc/htlc.svg new file mode 100644 index 000000000..a77ee6f91 --- /dev/null +++ b/doc/htlc.svg @@ -0,0 +1,596 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + CommitTx A + + + CommitTx B + + + + + + + SIG A & B + SIG A & B + + SIG B + + REVOCATION-A & SIG BOROP_CSV & SIG A + + SIG A + + REVOCATION-B & SIG AOROP_CSV & SIG B + + R-VALUE & SIG-PAYEEORHTLC-TIMEOUT & SIG-PAYERORREVOCATION-A & SIG B + + R-VALUE & SIG-PAYEEORHTLC-TIMEOUT & SIG-PAYERORREVOCATION-B & SIG A + +