gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r3736 - GNUnet-docs/WWW/download


From: grothoff
Subject: [GNUnet-SVN] r3736 - GNUnet-docs/WWW/download
Date: Sun, 12 Nov 2006 15:57:50 -0800 (PST)

Author: grothoff
Date: 2006-11-12 15:57:42 -0800 (Sun, 12 Nov 2006)
New Revision: 3736

Modified:
   GNUnet-docs/WWW/download/ecrs.pdf
   GNUnet-docs/WWW/download/ecrs.ps
Log:
syn

Modified: GNUnet-docs/WWW/download/ecrs.pdf
===================================================================
(Binary files differ)

Modified: GNUnet-docs/WWW/download/ecrs.ps
===================================================================
--- GNUnet-docs/WWW/download/ecrs.ps    2006-11-12 23:56:59 UTC (rev 3735)
+++ GNUnet-docs/WWW/download/ecrs.ps    2006-11-12 23:57:42 UTC (rev 3736)
@@ -1,18 +1,18 @@
 %!PS-Adobe-2.0
 %%Creator: dvips(k) 5.95a Copyright 2005 Radical Eye Software
 %%Title: main.dvi
-%%Pages: 22
+%%Pages: 15
 %%PageOrder: Ascend
 %%BoundingBox: 0 0 612 792
 %%DocumentFonts: CMBX12 CMR10 CMR7 CMR6 CMR9 CMTT9 CMBX9 CMTI10 CMMI10
-%%+ CMBX10 CMTI9 CMMI9 XYATIP10 XYBTIP10 CMSY6 XYDASH10 CMMI6 CMBXTI10
-%%+ CMMI7 CMMI5 CMTT8 CMR5 CMSY9 CMTT10 CMSY7 CMSY10 CMCSC10
+%%+ CMTI9 CMBX10 CMMI9 XYATIP10 XYBTIP10 CMSY6 XYDASH10 CMMI6 CMBXTI10
+%%+ CMMI7 CMMI5 CMTT8 CMR5 CMSY9 CMCSC10
 %%DocumentPaperSizes: Letter
 %%EndComments
 %DVIPSWebPage: (www.radicaleye.com)
 %DVIPSCommandLine: dvips main.dvi -o main.ps
 %DVIPSParameters: dpi=600
-%DVIPSSource:  TeX output 2006.09.26:1520
+%DVIPSSource:  TeX output 2006.11.12:1723
 %%BeginProcSet: tex.pro 0 0
 %!
 /TeXDict 300 dict def TeXDict begin/N{def}def/B{bind def}N/S{exch}N/X{S
@@ -283,263 +283,6 @@
 0000000000000000000000000000000000000000000000000000000000000000
 cleartomark
 %%EndFont 
-%%BeginFont: CMSY10
-%!PS-AdobeFont-1.1: CMSY10 1.0
-%%CreationDate: 1991 Aug 15 07:20:57
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
-/FullName (CMSY10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSY10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 25 /approxequal put
-dup 102 /braceleft put
-dup 103 /braceright put
-readonly def
-/FontBBox{-29 -960 1116 775}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D31FF2B87F97C73D63EECDDA4C49501773468A
-27D1663E0B62F461F6E40A5D6676D1D12B51E641C1D4E8E2771864FC104F8CBF
-5B78EC1D88228725F1C453A678F58A7E1B7BD7CA700717D288EB8DA1F57C4F09
-0ABF1D42C5DDD0C384C7E22F8F8047BE1D4C1CC8E33368FB1AC82B4E96146730
-DE3302B2E6B819CB6AE455B1AF3187FFE8071AA57EF8A6616B9CB7941D44EC7A
-71A7BB3DF755178D7D2E4BB69859EFA4BBC30BD6BB1531133FD4D9438FF99F09
-4ECC068A324D75B5F696B8688EEB2F17E5ED34CCD6D047A4E3806D000C199D7C
-515DB70A8D4F6146FE068DC1E5DE8BC570317AAEA74A842CFD26F9591866F5A0
-9B4EAD7FD9DD9C3A714D0F09E304CD13AE3D2E8625B858A0B2A613382BDC72A6
-0BC933E43544B3E490F91ED7A5187782CE81048608EBCD6AA9F837F0A73B4CB8
-569EA492EE779CC5A843D2565CA9035B0D11028F7056E4273970CC1EB5C4EC5B
-514D732BB6F74AA1D8E81C3884DDF5C6BDB50908E0B77C8A202254084587F45F
-169E9B580C083AB7A3320A7CE9F82F79DF736E2B577A45DFE8944E55ED3B2311
-5543CB5630141440550DB37070158247A5D5B3754EF98D94B0CDF8E0F675C4FB
-93893E56E3C1EC51F40A8D6559DAE55764A71829639713C0D8806190CB6A5E6F
-A3922DE826D0D35432E79727A6F879AB753281FAFBFD297CCD82810525873C6A
-5F4398CCFF2CC73A7B2D9C3A50EB890E202575590D835EBE068855EF6BFFF76E
-C6D974670B95BF9FF230AA1E2A14698C5A264C69D7BCD71FE19257161600C958
-A2DCBD27156791D3C05E65EA8F71AF451F2D8725022F8FFD84ABE5BFFF70D46E
-C7195288AC1B31D57D2480F548D74332A9EF83E41913EFCBED6A42CE21673751
-F5E28CB40CDF9F7153AF94A1CA6218D720461A8FCA060E1D019E4BB887B9A753
-52D097E036FEC85186C6E83EE02EB7F92DC5B4C390346F76743E41830F258B4D
-1B75007AF453D8B3A792AB26B5DAEF5B2B083FC66D3D74060D263E200AC3BDD1
-066552921D3D6DC06458A458FAEF1F5F899644584615127D00C31AD5D9F3423C
-E64508514C6C14635AE5FCDA178868430B31B2AFBCE8BF8133DB86C3E9F5BD6B
-D2F0632CD72A79EC3821EB29271F9C64CF31B0A3665A9936F8D8FC82C2C3985F
-DD8A37FA4C8C55D4EF212BC964F322EF1D715269AEDC02EBE01FA1AAFE3E8132
-15F331A58BD1E4A1EBC8B2F0CE7B0A89DC8DEA12034EEC8713EB1F3F83C17879
-1E5C16AF7760B34EE396B7EA253739DEFDADC7614DF95C3A36BA1C8EDE04CDEC
-1A2870FCBA526803FA4883363B7C3CBA71BA2970E14AC228A404A13B2191CBA8
-A118C20E64C16CF10C7F9275803B4322BCBC0A
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMSY7
-%!PS-AdobeFont-1.1: CMSY7 1.0
-%%CreationDate: 1991 Aug 15 07:21:52
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.0) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
-/FullName (CMSY7) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.035 def
-/isFixedPitch false def
-end readonly def
-/FontName /CMSY7 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 0 /minus put
-readonly def
-/FontBBox{-15 -951 1252 782}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052F09F9C8ADE9D907C058B87E9B6964
-7D53359E51216774A4EAA1E2B58EC3176BD1184A633B951372B4198D4E8C5EF4
-A213ACB58AA0A658908035BF2ED8531779838A960DFE2B27EA49C37156989C85
-E21B3ABF72E39A89232CD9F4237FC80C9E64E8425AA3BEF7DED60B122A52922A
-221A37D9A807DD01161779DDE7D251491EBF65A98C9FE2B1CF8D725A70281949
-8F4AFFE638BBA6B12386C7F32BA350D62EA218D5B24EE612C2C20F43CD3BFD0D
-F02B185B692D7B27BEC7290EEFDCF92F95DDEB507068DE0B0B0351E3ECB8E443
-E611BE0A41A1F8C89C3BC16B352C3443AB6F665EAC5E0CC4229DECFC58E15765
-424C919C273E7FA240BE7B2E951AB789D127625BBCB7033E005050EB2E12B1C8
-E5F3AD1F44A71957AD2CC53D917BFD09235601155886EE36D0C3DD6E7AA2EF9C
-C402C77FF1549E609A711FC3C211E64E8F263D60A57E9F2B47E3480B978AAF63
-868AEA25DA3D5413467B76D2F02F8097D2841EDA6677731A6ACFEC0BABF1016A
-089B2D24F47B9D66B677886B90AA787AD865B5F78EE434AA47B7B0F1244A4215
-251FDCC670FD01A92226E2C667C2344298D001575BDF782D969D836ECA11E229
-C7A17E28F70F9B17273FF243452DA885068A8BCB5165534F3996CBD8D97307DB
-593D606C197AFC259E691C242F6E1E651575B6852AAD54567905E6F542DCA109
-7F6DA24DC9112FBF7CE48B387953787B2BCB841873AED2DFA83339D39E14F4DD
-3A51584527AC3A93630D121E2AE0C89D9C3F2FFA767743B1276BE1E648041010
-0FD510F1A8
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
-%%BeginFont: CMTT10
-%!PS-AdobeFont-1.1: CMTT10 1.00B
-%%CreationDate: 1992 Apr 26 10:42:42
-% Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
-11 dict begin
-/FontInfo 7 dict dup begin
-/version (1.00B) readonly def
-/Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
-/FullName (CMTT10) readonly def
-/FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle 0 def
-/isFixedPitch true def
-end readonly def
-/FontName /CMTT10 def
-/PaintType 0 def
-/FontType 1 def
-/FontMatrix [0.001 0 0 0.001 0 0] readonly def
-/Encoding 256 array
-0 1 255 {1 index exch /.notdef put} for
-dup 97 /a put
-dup 98 /b put
-dup 99 /c put
-dup 101 /e put
-dup 105 /i put
-dup 108 /l put
-dup 111 /o put
-dup 114 /r put
-dup 116 /t put
-dup 120 /x put
-readonly def
-/FontBBox{-4 -235 731 800}readonly def
-currentdict end
-currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8232429ED8B7CF6A3D879A2D19
-38DD5C4467F9DD8C5D1A2000B3A6BF2F25629BAEC199AE8BD4BA6ED9BBF7DABF
-D0E153BAB1C17900D4FCE209622ACD19E7C74C2807D0397357ED07AB460D5204
-EB3A45B7AC4D106B7303AD8348853032A745F417943F9B4FED652B835AA49727
-A8B4117AFF1D4BCE831EB510B6851796D0BE6982B76620CB3CE0C22CACDD4593
-F244C14EEC0E5A7C4AC42392F81C01BC4257FE12AF33F4BFEA9108FF11CF9714
-4DD6EC70A2C4C1E4F328A1EB25E43525FB1E16C07E28CC359DF61F426B7D41EA
-6A0C84DD63275395A503AAE908E1C82D389FD12A21E86999799E7F24A994472E
-A10EAE77096709BE0D11AAD24A30D96E15A51D720AFB3B10D2E0AC8DC1A1204B
-E8725E00D7E3A96F9978BC19377034D93D080C4391E579C34FF9FC2379CB119F
-1E5BBEA91AE20F343C6420BE1E2BD0636B04FCCC0BEE0DC2D56D66F06DB22438
-452822CBEAF03EE9EAA8398F276EC0D92A7FB978C17805DB2F4A7DFBA56FD6AF
-8670EB364F01DE8FCAFBAF657D68C3A03112915736CEABAA8BA5C0AC25288369
-5D49BD891FABEFE8699A0AE3ED85B48ACB22229E15623399C93DE7D935734ADA
-DA7A1462C111D44AD53EA35B57E5D0B5FC0B481820E43222DB8EFCD5D30E15F9
-BA304FA879392EE0BCC1A77C8392948FE1B07931A19298FB60E443E198089A0A
-16D46095558E6DBAB7E03022F2A762470D545CE6B8D931FA66E63DDB04125D5E
-A2F86EC0944B0D160100C2DB33B92C400A8CCB715F68477177459BCD57C86D97
-449A25D63E9584EEF820A7AB919BC62D28434BFBA0EC53913CEB3BF4857057BB
-3FB43E95092D6DC0B7CE4E1D8C1FDD292F80E973E277C7FCC9878D2F97D0E3E9
-8DD466CCB4EEC3E16429C36FC9583A048A83F68049C707E5FC1473E7DF90125D
-BCC3489C04F227D170EA0C1E8E021294FBF894B19E966F94B1F3FF879474E9EA
-34D55A9EEB4459E5DBF801CDAB652D681BC673C26D3C73FE1AE6232638CB2582
-F75CA7F1BA6327B0A39B251E10606247224799C0B710586D3E3DDF28A5864D56
-6F5C532735511ECB7C52B7B6D47042B26B5C7B7D12DE631FE3BB27C41F4FB436
-5874CC0D1A182B42E4E0146BBECF156134C82BC2BE6F136D0439FF5B2585A53C
-7CB0DA52270915680C1610576D93988FC7CBCE8F8EEAD343E3ECE86CFC8D7D71
-D73F8FAB6D0BDCA8250D0E561E2A9F3A9ADCFCF2099128D1C3565C6F5FC2D898
-DF5FAA3E7F348F470074C814565E4159A859B8C0E0E7268FCD3893A97143C97D
-A6DEEEC5D09AA10EC8934E9DCC5E576FC9D07CA79B87E618EE99342CAD8F88D1
-AD71C35F81AE4B0670B9B7AB53756337C1B4140E17AA50A7E01776A21B427863
-7189D45A4CBFE2732A1C68594F1FC860D909E575E1ADCE69C01434BF4EA1D1F5
-E5754C857CEBD3BC5AE36CBB335677C3FB2AB5359C205A5A615C61E1FFA0ACDE
-9AA36F020869427242D783CF0D5CA4661A6578FA0C8FA8C86C0D95192C772C12
-9F71427E98CC2ECABE772F1E066CBCBA4B3FCF3BC8D6A3496230AAF1232518D3
-987752F69281A72D0FDD5334B63F8D214124A76F92D73E55AD0E1C9828A733F5
-2DF9FC916D18EF588D0B6E6B6DE5B2D9E2B982BA91481172FE7207DBCCA477C2
-C5D7668B90C5A53C0875343B13CB41E290D797B3D3B74F933044E6A0618DD343
-C4655B4BF50E196BFEEE9E90A5452E103E9908E5653DA518D9168AF6B92C0280
-EDFD492E80CFEA97F0D5A4C1297948781225EE4A1A221C84237E8CFDA97F3AE9
-817138D719AA3695092F577130DCE43536361B0B1913CE024BC6D7187DC5CBEC
-9944A379E06A30C3F7DF8AE14118F09914CFABA3663F487F40A6B7CE9CBF3603
-6FA586D172E208E1B64249C900750C97F9AC36DF9F01A21D4A7F66505C1A39F5
-6C3A979CA5C659138A19A0F921F41AB5DDF230CA7B25EC712C533BB5578654FE
-792A755E06C78C1C38591869BBCB4BA8E104C526874D7AB802ABF3AE11351246
-8FDBDF8442378B750791AA07B91C01601ED440A2A2AB297E9A391B63830554AC
-98D4F2BE58EA4971319809A9DD43105F862A32DCA1843E4ACAE674B0F7E564B6
-BD55CE71EFC0584CDF662838B2B5F07ACBCD89E310FD8A093E8A6F2D42896F00
-D1D790C36E8ED8ED14DC6A7016DA3958C8080197B9D7C6BECF132177B1952CAB
-BA8FD06723976A15C11EBFB8583D60A0419A1EC38AC27FF72E44C4FBC50E6678
-DE660F71EF05A62FF9B7E8DDAFBDFE0FA5AA5B5414B9B09C1D7FA5F341F667E6
-039761234611B4DF95C00F0F8E5E3B1E422BE64FB3CB9E9EB717013DCDA1B2FA
-C4EA1B50D44CCC52E2353E2093F6C6FFDA539EC1544AAE20BE69E2E1E9868CC6
-C75DEB5F11E76920A47EA036AD43A4A52E9FB63CD85460DDDD7DA245E473F963
-7828670F0500743777396F1D30F932E96264A698CD0F23159E27A09E713CB446
-5A4F3B4D0B673D49E46F78CC080C22E5AB98AF86AADFCF6552666ABDE794CAB7
-04CB0C8477D8B699E568FEB8327FC96B92AC0402EDE38862F87B11FCE423DD0B
-6C9CD068C7348B612C35808EB2CB1B2BD3400DD973EACE674CDA7C449AEBC103
-B043D17A0793255CC7A361795D577BC377283AC947AA0E59F81CDDE47701CE0D
-F5D3677B49077D0673639CF11B8DA93CA8A7A76F422CEE260EAB4DE19DAF9AC3
-C5741B32A9F97D0590F754F755C5A3402076BE172D351ECF628BEF003BC60B30
-C428A9D2122A20CD48FC9A0A2FE5A883A333A2FF118B277EE09983BFD1066D87
-CB0B3AD0D1F47DBE7C600C3F7DDC827D7B0FF261AF39C8DF0576FC59521F76BE
-B7AB7316FA464B7BA25BBE589B64802397308B8C8D3C561EF52B47BD8ABC08A9
-3DF05AF3B29EF3CCCC7DAB5BB8A3C79CCAC8F29C8203D0ADEA05B36BD6DD681D
-BB197AD6010DFE029D34E3296563F62BA490BED1C321AC530EE4BE67E4B56703
-7AADF7FBE1C8C4AC90B6B0A4A95ACE92682FE2F70B2B87DE23D78067330C0448
-DA9FC56D0CCC8726D4F653D85829FD173853C5F488F34E5FC00D8B94A11881C4
-E46EACA9F79A5DCB6324C0906426F1169EDF0F9B6AB05BAB4997BA3FDD694E94
-B21D5348CF1B9928A0027D9D9AACF90D4E7AC5400B232FC60116D10A373D5E1C
-4C4E1623DC16478591BD4F9AEB5686F5B310B3D73FEED927A123AEDE84CEFEE9
-FE91FD4B4F9FB6C346E08A9B67777FF1E22DE47CD95A2457BC7EC2A206250BD5
-AB2B9E95F106ABD8D282E7FD7A5FD7ACACF5EDACD560DE555E587BF09D5F7FCA
-980184C6C2A4C55B199929CBD0B5966ABBD4685AD2314082B4B5C33C7D94E3BE
-A570E0E264A8CCEAB0046EDAA36F2F6C798D23441CF9901F5D81B490149EFE0B
-C2481D197078E563BD9DB2DAE403AB11297F518948C140663BEE1778548E4B66
-218200CB791A933BC4D0AD8349EB071AD0FB9A6CFE2EF8CA7F7D5A1D340E967E
-4D8DA7B346F882893386BF345E53A767A18839E28CC3A2014DB90B1D59D06506
-FA3D1577BD57A29601180D42364844F0D05C8DEDCF8F458375C89A8B855325F2
-F0E8BF98FAA00E9BC69E1532124B7C30817C225D0F426A1105F3999FCCAF1F00
-1192897C5C8EB49578C71F99277B70EA0E34693C7F0E8624D9A5F80735F40130
-5CA8C072D7BB06EEEE2ED4C66C0DAFDC3C65336201AE29F9D01EEFA4693B38
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-0000000000000000000000000000000000000000000000000000000000000000
-cleartomark
-%%EndFont 
 %%BeginFont: CMSY9
 %!PS-AdobeFont-1.1: CMSY9 1.0
 %%CreationDate: 1991 Aug 15 07:22:27
@@ -1005,7 +748,6 @@
 dup 72 /H put
 dup 75 /K put
 dup 105 /i put
-dup 107 /k put
 readonly def
 /FontBBox{0 -250 1171 750}readonly def
 currentdict end
@@ -1034,47 +776,39 @@
 24F362B85A58D65A8E6DFD583EF9A79A428F2390A0B5398EEB78F4B5A89D9AD2
 A517E0361749554ABD6547072398FFDD863E40501C316F28FDDF8B550FF8D663
 9843D0BEA42289F85BD844891DB42EC7C51229D33EE7E83B1290404C799B8E8C
-889787CDC69C6F2AE63E19FB4633FEE6B85717F3486041E446508E60940A1A1E
-F460F8891A95747F9800D2230EA3242D8A5C16FE9B598A63516BBF01EC34284D
-1B1D17B874563C1B18328A73E0E7A38F2325C5EE85E8F4E33633A0006C01BA40
-9F4E6AE301E0E21483F75C5587FD3D3E59D163B8B8DBF2585F0F4F66112C18DD
-29564F7884314A678EA73BB3132CF1BF92441F78D18301AB664F6D41277821CE
-D20886BE9FE329B43EC7EFE6B659DF84B32AB0383004CA6ADB93F5F20DBA387C
-4BFDEBB506EB8C70526D75BB14A124F270F36A3FABF14BD04C55861FC3A170A1
-5F3D40628B6A30FAA7822597199A948EC64C94A60BC3275FB8CD316915170252
-DFF55169C5AE291F35BED9283099D31D442AE69F667B17842A4A21F2141416EA
-1883B0145FE56DC106AE1587E3F29EF4D7C3BDF00D5FAC5032364A27DF7A4C95
-93B8787B92C071A2181F42BFFD15F8B54525C4D7E62AA9935209288978D9FCB6
-49320BADA52CC8E1C1C408CD09980245C1BF21DC3CF5E325518B48042D220A36
-56C0CF3F957C2D7C89A08B1A8A664AAE858E15FEBB47EC35660B90995AD5F1E6
-A286BFBFC90898DDA4AEC582ED09F093CAE14EADD2907C04DE092E1FD5C95DB6
-8068964595B32A8B5F78EE71A7382118BBC42B3BA552B33C08721C3754061E1B
-8F650DE8D5C82CE622498D8276CD5C73C264E8907295AE9FB56FE2C95F2FB476
-EDB76416137C3A9E0BCD1851B38552CCE4E16EAD86D21EFB6CBFC54E828B80B9
-DFCC3DC676ACDF3BDE92655F223C494A7C2EB4A49A87B8BA51AA2EA432D79A44
-124709DB9B14A8E7BF9BE18E7C42F2F2C3A209E9C0DFD050EF33964C983002E2
-C8299F39770871757A5D024A9064F82DEE3B8F1AEFDC37639311F840ADAE56D3
-6D399220C59B8237AE73B49387AAB6C3484A848316D3175EE98745B466DE762E
-1BF6B0B8CF6C8116E01603CD956B70182D1483BFED09B74C731E77B2EA0658C0
-084D062B01E8FCC617932CCFC22D86D1A6CEFB79E8F24D9665BF3422B7ECCFC1
-B428AC2B2F7C2B3F023A5CE86801B922B2DEC6107EAD84EA75A15F1A2D06553B
-FCE9E9E44BDD970616F0614ABFF4F50D444A895524CA8ABB29CC8EA3A1BE24EE
-3CB0CACA7F56904FE953047C980C07854B00FE2FEC7D163A1FD25C0181842965
-E107212C68F8351196C731A0C6402AD247833D4FDE9755A9DE628BB6BA901ADB
-C10A33103C738550A7785060E7AE838D475FA431EDC03BB1E56E07D3219F934C
-7C8B80620B5E2E084FDB8DD50867D2D74690513413B3F40578DE8F18AD0F0E29
-D2F872684C394B2B459335A10B4AD1205FCD2CCE978D7968707A56CC37213185
-40B53648B389DEBACDA20A74DCA5B2D3DCDEF692E8E9BFD58E6A9E183C450774
-40E72DC3E2C5CB50638220F53E1A9630955CA24EC830913349C57C816B87ECD7
-F5C5AD47FCB0735D76D6E6BA0ED8AFBA383BA2C01D3CCDE81A31D32180991EA5
-CC83B912EE6521656396FCA209E241BBC12E4EBE668A6D2BEFC11762A4E3C378
-5B05A7DDF1FBD6ED2EE8061733CC947ABD7B065560CA4DE951606ED771A76B0E
-74F89C8784BBAEDB844B118C719D73432C7AF71C5C9DAFAD60D390E79C17FDC1
-033AA6BD6847A92538655DC8C8E8952CA605A5A8F913B4727890B8536B65A021
-85C7E72B9FBEFBB758A6D5E6EC97A7A35D57201AC9665283F8A77691F10AED32
-6927909DF0161F49C4E77731C2D54077D45DD080D4FDCCC9C12EE84FBD682478
-891C4DF618C07DCFC0E197CD841D19205BC9D707CE78BCB6FCE1097F38BA445B
-23FA0E33C7E4DB82CD2FFA8B5FF498B974
+889787CDC7AA8BEF7021B3C18A0A61A68CCEA80153A2CB230B939007CD86D2CF
+D70A543B1B94F5D1EC7BB7868861EF151083F93D5AEC012A1F33CE2581A796B8
+D16E956F8A78B726D53167F7370093267A1B5C1F75C1C690FFC9B2C79966801A
+F4955B0D72227F2F3D5565EFE1B2561F02A7DEEECA0C2297BD35D77D2BCE517A
+9AE117E66F5798E7C4FC61F9D783D0EF484F9008B60375D47B7EE14CD88DDA1B
+A1F8AFDB27FD6747331DAC6AED72F2C13990E39F3E941922C43DAF6E87FB548D
+3B78D501AD86A17934E6D71BC05A4EF49F7D7EA8486BFF719EA81A675AC49563
+FF255EE62A52B9308A017B1353F20D1BDE68675EBFFFF0E2520C517F92B6A61F
+93E69954D5604A032E3964A51FCC34CD4CD73372CD0DCC03D9EE3209D08C13FB
+45EFD226C68CF284D7B2A6CC48734317BD0B907233361A6E1D33BD2F2347D67D
+8C41C879911416DB5553B63F893C71F75CD5661ED9BC738C023CE9F6B4AA8B4C
+533DDC65F38B1928EAB6B8C0ED2F9F1ACB7491D2FD1FB56C9E30FF319F461712
+5EFC8DDD17809A11A390B7AEACC10349CF790654803CE1C199BDF0BC697F2501
+8CBAA3C3D8CAB28881BEE2B7F8FE17CE6C57EFE2D6098CE56EDC98B7A97B6F66
+B42F8B92BA2CCFC36D485A93CBFFC26B812747C3BDCAE6A687180F2091F6A563
+3C171AF1AED9503363CA9E1D6DE7877CD3680B433D2B9F324F25B9176904D44C
+30611FAC61A8D169485A4B79A5096077A6B7CED643870D6E4E3B29C2B3D15DDD
+B17326D10EFF57D2F5AEF9C26746EAD869549A45CA087DD464F6B1AA54111703
+0261D692BEFE10B85536A69A5FC62584EC0BC1F76AA77C1EB725ED66E818FDC5
+7038BC4BAF27BF4ADB38FF98699C7BC0B39695590DF752D5047BDAF341F5D46C
+ECDA3A276599AA31A7BB9C1811A5561392260DD18697917B5703156EDD79BE47
+7FF6AA7EE9102D797D659B04483B85DB3B96EF40D78F3B1C6AF933F5AA8DD1ED
+BA7AC59047563AD41736482E016B5F8F54F4906EAEBFD801FF15B088A1A49BAF
+936578030E1B9660CBEAC955AB7DB4D56F3068D1716D12782661842464F13934
+DFEB992A85A58A2779452DCDC7DA203A1C07533CC89E08C86C366E969A1EDB48
+D58C64831C529797817EF6F129692DA2FE185A6028486D7A900938D5E6B6B8C1
+B66561DA8F2459473B5EEE7B6BC3303DB972FF2328600DBB81B29883A66353E3
+226CDE90C79E09DF029FB3E150F5D0633A3BC77A905741C6358895485EFDD910
+26FEA0E45E7F6CD7B2CE3F10779904CD4307DB531DFE85CBC97A1B21CEB953FA
+96FF810B352080BC8AF0AE2D761AAAA2EAD0035E86FF5F0577F2C0392311453B
+3EF22948CCA12416579A3AC14482B8A42E2AB1CFA4CF138BD3B77EB73AC61E67
+A87EE58797F162E6CBDEFD236920A7A56BD403B30870833B9A2FBF4E201470C7
+0A95098EB7
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1108,7 +842,6 @@
 dup 66 /B put
 dup 68 /D put
 dup 73 /I put
-dup 75 /K put
 dup 99 /c put
 dup 107 /k put
 dup 108 /l put
@@ -1142,63 +875,55 @@
 165CE32F5349E857177D94AD6396570932E1657ADE4D3FF57A3419946CCD210E
 57E5A1D91CF708395942527D127606350924D71BC21C6F969288B1C8CA3404ED
 E6219985F7301A20621368F74747EAD38990A4C9F2B62913B8FDB93657409FF5
-178DAA7F1218B6F8EABB0BD9E0D61A82A79D6B4824BE756E96E643D04C4D419D
-EA5D7FD17218AE5BE43C7C7FCCA887291296CA23ACB6E4FDB42A8BCFAABF3A72
-47D903208E2A61AA58467F6393DF2406BA706F2DA58A99C3FBC64AFC3167A16A
-6E405C1CD0307EA12C6F59027DC38A9B51D72A0F0D4985EF8B4FF1B7734F34BF
-2225D04218C9E6D83FAFF4CAFE8053E548ABFA8A1B2F57E4497F122805BC7292
-8C07BD6ABEAAB7F3F29966B1F68341CABA319AF8D81E1687AE5A87BCD83B4ADD
-FC022D2493860742D73CC1484DC38D0A837915A2ACCB018A038765E43B731340
-843023B843BD5C3CEEC085763950DE7A2B5E1364B8C4284CE8A01B16C7EED548
-21F5D583779650EA0FAFE73D1214BDE7FF53BE6284FD793D1A5C9113E65EFF84
-C76436764F6672ADE2614F86BAAA6DADCF7623C791E45BFBF89B1D4E22F09BA2
-9BA14E76C6E246B7215815F402A89F0B0E0FC3256AD365D6CE74E11BDDEA8824
-A387B188B425BF5A00140CA9C057878D330B770FEF2C6DF873721BF826BFF862
-6047A2BCE7D6B096B553E180A9FCA15514B4FCB1CB2A2665A97C9FC01539D240
-EAA7178D33374781BFB1250C2194A486B4247812FA4996CE6CE4E501B93725C5
-2A37752C9FF5ABCD113C9047BD21BA088974D294445D19F751B5580D86ADC8E6
-93554394789A1E87236D69F191393AA59D8B9356DAC33926FB600AB62B7011B4
-F739507B8312C533C8357984FF5E0D9474D2B2B62FF736B4D3C8E8DAEC148831
-53606B8C245D4E93E9248D462EB3CAB53E89EADAE5ED1B739C803A65F061E242
-60FB9FDCA9AA84966E5BD0BA12D862F30DC38E6E26D37BB3D7F649B7A2606472
-C0D911FDD0C84E62952FB043AC0BAB1234079AF109156BAC11AA81E297B3E797
-13D16C553E0F2ABF37ADA7AAC4B54FEFD89E02B6F839B0D0EAE3200DF5EA5CA6
-ABF15982B2AEF9671BF5DA347BA1546514FECB4ECD915C04E94CEC5277F6B821
-819B183ACC312B5485862E91B3D6CCF5F6FFDDA261CFEF4167D5A09CF6E8C018
-A0CB32843AE14BC72459D65550AAF364384C9BE9278CFF75A34F6289466BFBEB
-0536C5179F8EB8EC0BA2DF992AEE5EC75CCEB4E7EBB88741DEE53813B7242D79
-59FCF06D4A7CB7A83D8725EC038DF2FE91481E51E48B7A54B908D8BBC04A95AF
-FB084F12476C44A28677D1FC9C18CB0CDB16C8F0CAA9D074CDB8E473BB7F2960
-9B0865CCBBC1179F799407D5F3058F34D99AC13F55957218FBE14231E14A4056
-82FCABE094118DB5248FB73B1F2184B3F38006FCD42FB9C1E0D6B4E9B65CECAB
-D72B57CE0DD32C8F2A35D804595086661018F91EECF98A50FB3D439F36F1BF30
-3944956E93B34900704256016F8D1D7674D1C2A4CC497536D28DB14C9446F2C2
-BD6A54AABCBC6F8902ABCD17CC078F9DABD1C9B8592591B395F87ED0383439F2
-5862B9B0C16E28C963424D8ACBE62C72BE08F3E265D0FA014827930F0831B129
-8E77B7FD86560C960BB238B68936467C748BD04E25F4A813E9B1EEA6E8862180
-F5E6F6E8DE3D35F41188F8392FBB329D0A509074AF88A74AB032ED2594DB44B0
-750A5FD5623202FC13FBA525BCEA5764F193B1C1874E37BF237CA5C762543C61
-33EE795E30A1BC6332D025339B29B55CF3141EA0C0CE7DBD9C10F4930ACA4C29
-623F634DCAE17DFBC9CDF7A49F34FE0FC43915CB29AE026D6B737DBFFEC75E99
-B86A8B2FE1898B1B8451995DCDC2226F2671F395EA7D2B15E57087867B4844DC
-22C350BB74BE1D90721109E5E2C622707EDA18637C9C997EE7153350F1C0AD19
-C52F31501847312C1DA437CE434CB6F763BCA482450AEDCE0DEA98551F6F7DF1
-596CA7C0A79A7CE9F9B8D427E8D3C5AA351D51E41E6E0E4F744EB9747B046633
-B9FD901F053CFEE8566C7A5E737839B777F4DC0545BD038E2B4E0B43D1331FCC
-D0CAB830E9B6C92572A24B8FE3567A87409981A028F120AA663AF63596A3EDEB
-5783A0A7E371D75D20949051B23676D12F9CD0AC8307403605A9777301D8AE13
-0817870BCAB1FCFC92BB6414E40F452C2C2F1174E47CEF667767D7D9957A5828
-18158D2878D334B92E3A5B14354D19014BFB68C21C2163B601AA43231559A908
-EC1E3A73B41B1F66AD1FBF2BB596F930CF96B9510D6C6BF2692F11AACDF9BADE
-176E4F8EF6A704BF4982D7B6A18C100F3204EAC427CDEE4DC8D4D552652BB423
-DE767FC85EA6D5240DEACA766F8B9478612B206DBFB67D96AEE2E06E0DA26976
-CDC085A28B0E0709A6BBE4D2DC539BCD0CD2FD8397E10D35F3C66DE53411B6B3
-19B67DFFC7FAD49355F1F0361193F1BB11461871473E2B009CAD0D60A243776D
-6FDE3D5086D772FDA88E282775ED357C59C2CE4F3330450BD2C75A0A2DEF5511
-47F01F0AA2FAB1B33EDD055AF3A722DF3632BB71B68348026A51C77AD046281A
-4A31934DAA12CBE4CB7482CABCE84FF893491E1F83E14DF4D61187F1FA3250BF
-A64BE9628247C2444FA69280EC177FBC0AD3FE7C56C4025FD390167ABA4B493B
-AF5DDF5AC37DF05FD9D53D1F5715C7E8352BF880
+178DAA778F54DA1673C1A812C50D58D6806FB895FDAD2A533C8414C80C79BF8B
+566AEF7CE58050977EB7BB021395B6FD4D6CFF82E374195D576C703B992375B8
+922EAA9FB83A18E88C285433CD8D88D0AFFEAE314662DE8113221E6AD501B28A
+201BA03D4A775C2A1E7DD76C1D3D17D0C7E2D1565B8F09D43301AB29E8CD3F7C
+0F5EE7CE456F65202DD3C4607E06C0804AFF73C3C48CDA8FCC099EE7B1D64BC2
+2E78CF03264CCD7DF953F7AEE296134D71FB739B54D698C5BD7DD51D132CADE7
+255DBC88CC10284575C9EA80C661E5BB77F523A9A9A9BA489273203BB7EDBE01
+0C80DD14060E9EDB8A3F738804C97E3B2F18C0102FFF9962338DF4731CFA7607
+24C06A1DAF643F4168FFCDA8248885DD6A1C852EC6D8FE53C43D367BE9964CC6
+24A1FCC9BDE400F01A786BC284F867D427AABDEA67F31AAF3E39FAD3AC3BCC00
+A827347F9C536923CC4EFF0E1719006193589F22951DD20CC3F03C7E77E0E81F
+EF7FADD6C19F7BB059E592FC2E7CE7AA4D8D2B6F562AAAFE79137508E9585C60
+57DC4B476E0CB2BD623ECC9E2816525BE58FD789A9807D1A72C96F6BFC3CB8B7
+751D7947A342C7D8FE81607C6CF072781833342108A2F55C87F19B63FB41269E
+2A4122F06C32B218E1D5420F8484C614C6D342EAFB376E7145C5DC72DBFCC106
+3D706138459F29FBB5D7E3C3A2D0AF7783F81AEF4FCE1279540C1B64DEE4A6F5
+5BECC187FFF241E428AA0F3EE73D15A1EC2E1196D2CD0A9C6B17954E98DABF4B
+BA0FE5833D4388D009823A3D76FC43E368D4A88290FCB6305F8CE0BE0B89C817
+ADE68BBEA4B0027DD3566698997C040A48024EDC952FD3EC2D3FC12ACDBB93D8
+7D630BABAC256F3A21E85B71DF64650278BFF24EA0FDEC28EEF2FD8F3C41BCA7
+368965EAB4560A281FDF4D8141217E258729C0258F985C61DEC3C0E152059206
+0DC16B49CE44450686A0FDC411FBC33BDE8BF633D66F0D5FD2B5A0B8D62A28DD
+DF3244BEF978DC1E7DDA36A47BDB49FEB773391463935E0010C12CA961DB7DBB
+5626C13314C6CA93628657B940D3D9708CA3BE1AF0CD52C13D8F567D12757B7D
+AE997C3EFA2E1B7CCD2CE0E7C79F832F4F553FC736D7ADC764F0DA55DB635EBE
+602796C9CC04C62AD97970DC967C734F6C334F3AB8C621B48F955216343F0852
+37696612253AF1D7A99235AD6355DA816FB61539596A1025ABDC39B20B8A70E2
+DFB16ADDE77E3D5D7D23474376FEDF8FFF26E8C609200ACA16934EA3FAEB1CDA
+0642F9B2022B0740D576BB94774543EBAC99D632C2A3D62DB7494F2CD615428C
+B0B1A15E5864329E89D78C1D7549618265D775D739729EBE63FA0D93C2A87F3E
+6B3DF29578D28688BDB36EAC63DB78E72F8DF9E7B37F7EE167781DD77D75C297
+611F6E1D8FFE666B122ECCBE36AC4FCD2353495DDC3FE80F2E3834F89E20C610
+BFD7C1797C2F6A294E87CE7ACE49C790BBF7BEDBF2FD17A9D0BE725BCA7725A6
+548D6FDC6A391E4C596862D47D487023ED42E64FD6D942DE9A4AF9113297D252
+69EF29A5EE64BA66FA501D73CDB22E1D287318A91B910952C8D13A5EE19BE9AC
+C711616B263DCEB50FAC76EE9519293179455CE6F618C3C8604E49596B5AF2AD
+A32460C8372C27BAADDF2F5906D0192C5A0568B5098E237E8A4677A9CB3CCF10
+9640EAA533948A6C90C818E2B1A6328633109504532F3D9408EA93858ACCD7AF
+3D7A2FC887A377ADB54ABE6308B8C1EA670FC46B2B65E0A4235BCDC991126BEE
+B46C9B17AAFE8571A01085F170AE61C899D482D59FD4F2FDC503D8D21F24B0B7
+CC1542AE2E9EFD18108B239B29AD0311C427F5D3D785B029572785CF92E9D31B
+A022B2C628425EEAA2B1C4207DFD3B33D1400798789CAA1100AFD4F84B52E4D4
+D447CC9B6FDE55A6BF623D0390A33379AABB367FF2C7D37B062E32C094B93E56
+46898A5020788BD480D10A9875633631FADD51368A9517102A65490C47531F68
+70A51274B94BECD109E5E6EDD533139B4B74CEA7791842E989C6C3A7610BB7F1
+35BC84BB6E3A426D5A534F19447066BF32CA89E122E6F2F95945FBE3442CDECA
+EFA44890BB7351F7266852203EE3BB428B09F5A9BDBD1E25A10DA75E6257896B
+89AE4EF1F8C874922819C760B36E1F583D6E7B1ED2CF0D74399997ED2D7B9B55
+
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1492,10 +1217,8 @@
 dup 56 /d56 put
 dup 81 /d81 put
 dup 83 /d83 put
-dup 84 /d84 put
 dup 90 /d90 put
 dup 100 /d100 put
-dup 106 /d106 put
 dup 107 /d107 put
 dup 109 /d109 put
 readonly def
@@ -1523,39 +1246,33 @@
 0730D8E62D9C931C372B31D1A810B12386ECE812FED18F006FAD29D28EA30D94
 D5164361F11238EADD1CF8CC21BFCA167D9D03AC61818DCDDD6A2AD7306C420F
 53B8DEB01E309F3F6DD0451836FFA20A22DCAD65D0026672F7EAE8C1DEB4FC3B
-1023B53F919693D926C30EE0E764D5F0718E1E6FF21E3D07317477AD31CED688
-2E0DA3D2DB4B1A3910CACE5E832E30A60DBEA92E0879C5DC6F0BA3E32A9B14D5
-C1F77B4C19A7932E7396879B5642FE4BA5E3FDF0EF9A1A4797F5405BC9B26D35
-50F93A90C205D90F40461BA55BAB73D509A61DF89B0BF9F6C4C275AF75884F89
-AAF2194C62E398C695EEB7BBAF0E9E92CC45DB232F66E730C3D55F23CD93F2BB
-C8221F35765D30A2B1F65222C33E4BFD9F4A7F8CAA7E4D21CD286FFAFA550257
-DBFB3B9E3D92946AE600E3C29FD48421889264EA160C526A78CB13E7CD602265
-ED3982CAF9C487EF0DD39270A0AB93A38F30FD56E69E7ACF868B40D84AFA0328
-C87BBE2A65151184DB7F35575011E10DC422D1747B3C356C7FE39AC5F3698062
-08C12BF7E860A9E14181110493145D8F1FE1FDBFEF2854C090A545C121D065F6
-58F8C2160485B5C678AA4AF91A411CB12E7B58B71889F9C0B2342B3404A01AD4
-41C82F74246B6DEBF9B4A46CC744D9F1D202FEB27241DEBFD5A73F828340AB92
-AF43B11B899F36569DC66A1EF19B342CBD21ED2FFDF75D178E8587A2258CC0A1
-64EDA21570ABC89FEC77273A281F27D8CF3DF89A3E6DF8802C6450F6343894AB
-B03821EF1C7ED685AF7205400FC5825A4A0C40D761D1A360856BEE4904972FF6
-D6802FD27CDA5CE8E19D19889130869CB22DF15171866C0542268FF8672F8081
-DD76C201E1838C20964DB5A440C9E8A9F128F631534B3F3F1CF901F4E03AB247
-6654C40290BF096067F7FC25D796EFE5EB562AC7EF9279CB74EF2164B1208714
-191A80357268817E3CA91A4C5925D3477C0BFC5032C563A0B021EBCB65417EA2
-5782C593550C457621B3F00C41338DE756E76C73BFA1B00F9BDE1A37424B9933
-57FC7B8DF11922D32EC24509F0511765EF7114D375F9BFE2B04F09FB1D0ED623
-3636A0495F919D97D79168B219053BD5CF93728139161BF678658F920429E549
-015AEC1A7E746C15FCA1DAE74A0BD6E28B8F7424D984CDD50D1FBE03DBD09EC4
-7976ED8B8DA1E5083CEC0941EBA1E2992A8ABABD9F461F78D59DDEC5A30ADA8C
-6486B971C7A9898E3EBED14C1286EE4A55822BB5E67F03172FCAF504415993BC
-999840ED64B9365383075C05BA656F530016F6EF6AA9F7F20906295092EFB7E7
-A6939C317FA58D6D80716D9308FEE2D3C8499CD186F156D46BB52B819A66933C
-1B4102912ABBF1B1D8131E20A63B56BBB999D9E031021530E51725BC4487AE07
-8E62A24CA671FF98F50810993D7E75BD44DB18AED0EFE016B411C3F44F7D5C0D
-8DA329C63ABA3AC1B7BC5DD0D0379E15D77526C6F9126A86C325B3DBBCCB7B57
-2FBB8BC787A333DFE94CAADCDBE676A28A30036D3FB433E1C34BD05EB16A7845
-E0CB2B3B0436003A180785C7D09DE3F6D9715EA8AA37DBF4FE9C6A1852136F6B
-4E92FDC7FC7F439A51566FA6FB128C5BF71B94AFFCAB955C0C20DE
+1023B53F919693D926C30EE0E764D5F0718E1E6FF21E3D0731747E62B4D1BC67
+A9595FDBB0AADF72F2673854F31217622471A5B3EE0EE3D878016CA2862F2E44
+E9C80B2CE5F38713B52829B2AB7F755FBC1D957CD2975FC4D7282A95533C4F74
+B0D5308C41A7AAE598F168A6095B4F6677A6975BAFB0BB7987F04AC74A2B81CC
+9B3CC5E3C69083913CEA6AC9A16308D7445EF563D146D77777A20AC80FB29126
+B4AC575D1EC6DBD99B4E1FA758A00B07A1B498981A84C58EA698E1756814B572
+08F49E8BA03A70EAA58C4F1CA0F03029CE6EB53B35A6F29F8E909067A7B45E8B
+4DEC6D6ABCBA4E65BD082B9569C1DC4CDC76A51B52F0D57FF0DDE89F285695EE
+2CEE16E66C51D541F2958F68C52A542AEA3DF09C767637ECA8D674C373E3AD85
+2201CEFFADC1E54F2CD24596268F310298B0D893D036819FE6538A57C76D7243
+864B812495CC0FB1D0DDCE3E5C537BB88594066228870E9B01BF1B0E51C8B077
+1C84AEEFD61B7D3BA794C8583B1FBAFC3DD21D567BC5C0576773C353F0257469
+B40CF08FDF25E8B223E67ABDBEA8A9CD6025FD8D249D1DCAF73FA28835DEC370
+2D0554FAF046323EF0DD853F86AD3D33CF92CA75A8F6F84050AD6564A337570B
+202C5B86516A6B90B01EF4A104655817320B28DAA723CBFB9B7F85E28D760DBC
+2571D19DA64EF8ABA248625450F0247B7E84ADC3A6D62F752A43B9B533AB5E10
+BACC25CEF58AB95F25FB31EE74FD20DE73314A5AA9189816FA26A2CE2372E6CA
+FD7BB5A0175D007D2E07EB15C06E91BFF1288B05DFD1BD3BB37532B37E0F1DE6
+5AB1306BD3142C107E3D55736416A154D466D5D7BFDE27E523F14722D752FFFA
+49EC563F38519540A136771F1FE8C822CB0AE79806F29AFE4F0EA5CD36E6BEE8
+74BA09AFE8A1127029037ED58F9DD4CC9A579A8BEDDB1A29E7C5BBB3E9C21FE1
+5C32F3CFC27089B6C2C9547392D929AC85F0A6277B8FBE8156024FE324ABBDFD
+52D2865E0027285785393B1DA168669A187C48996EC5E9F6A34BEB065D309160
+6FB3F5FE56B7C2F15ABA5570E5E15653E7941C233A77198A0160D625A1304C7F
+E6E01A94404229910B67A027CD8FD9A328CDEDBABFB5681FBCAFA729D6CCA65C
+9A76B4658614FDCD7406D4DA324A4D17AE1A50DC7FAF492AB388B13AFC95B010
+0BFD59B5DC07188B5306B003A1
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1672,14 +1389,9 @@
 dup 41 /d41 put
 dup 44 /d44 put
 dup 47 /d47 put
-dup 49 /d49 put
 dup 51 /d51 put
 dup 54 /d54 put
-dup 79 /d79 put
-dup 111 /d111 put
-dup 112 /d112 put
 dup 114 /d114 put
-dup 116 /d116 put
 dup 117 /d117 put
 dup 121 /d121 put
 readonly def
@@ -1708,66 +1420,51 @@
 967F12567DA35A9F58F59C298C9D8BB023B1AC9F705CA45B31A132C3BD2BF793
 71B1A4373E71606C132C05A88474875C3E3E963660814FC12497D7A39ABAD71E
 6F08A07F236B72277178119C9011DBE677E6F550F9392455C07518C027D23C5C
-1344CE300AAF4404A774D4A1F7768E8EEB045857C99020FB4524C1E566C2A39F
-5D8AA93A0C98424B7CC40B65E5B5170222BB3B89307EE957EC0874904B4A2030
-EA5A0676EC57BAA7150E1B2A18038498AAD8A710EE0FDACA7BF4476ECF516555
-33FFDC653E9DCB31328DA6FC0A513930376EC939DCF76D6BDA6D021DBCE76F46
-BCE5E4C1DC7DF3AF2FB7CA5255406FC735234376F805D158D02216CD29BBD07F
-5AD0CE1EF2C48995EDFE15DC56356F478364F70E0BFF173296B434A058D773F6
-F1B2E141F96875CD643E3068F86E7EFCCC2CA74999675E687989772763181F54
-90C6E7869D319E165B9591C9DD64D008568C7FD301D7332513DB239BF0BBBF50
-38F2138DC2A9403B18B52B85055EB1238416CEC393A943F23A8DE8DA4B182D37
-5342F93839739A9A4E1C2A50DE4EA82F0552DE8D8828112FC8AFEE99FCFD0362
-22E1BACC54F8D5E72E4B4FC6B6BDE928D7545E378BA99C7C4EAAD947485F9282
-61CCEBDB39E89D50EF9C8A1C3FB432D8FF43E42E7B52F4B4C2A63172AA6EE6B0
-11637C28554C58F70BD1F91E127762D55D656F9F3E3E8693745A4F1ED3E8B366
-72B443A974606C9CB91E61876DC149F8BBCE918684DC1310CEEF3153A177129D
-1A3E0213C9F13AD0C7DCE073680BDCADC22DE00DEAF4898022E59BCF4E5C137C
-A96F4984FB43064FFBAF341F585AA574F8CFE2EAAE4ECEADD79F1780EB7C0DA3
-4E10001213412CEC8EB62CCF14B21D5C3FAD4F8823A788CB2ADCDBEA1BB6010E
-302E08F0945CF58490219E3721AEE3ADCE087508D03CEF11E481AD7B3EC73148
-C4DD0274B0E8543DEAECC72A06718A847993698CB6A6741D4FBA4E5A8E41F4D1
-752747AB4A880040B0A33C08A78E02A18162F7635868A02D4AA923AB0F950C72
-6E8C11DABB0F7240951F473AADA237F3B230EF695F3FD5C31D9E4F37F9875957
-4F542B5605A006654E211463EF241FFBB9699F65499CB7B2CD974ACA4113961D
-9E652152D9B804CC06149CCCACE9BFA8950A3C031E5FEBF9A7CC9F1089547AAD
-F73945FBDB4FAE06A7D5500C3E14A10F81FD084C8D09EA7FDAFB56BF9B22E75C
-9639F38CB0630E1716AD349044C82F81B7DE7C8F736D49157FC2AAB2C01FE314
-A4AA8B39A7F1BB69D1A064AE69AB837E6555B73DF4C4CDAA370D0B21243D65B6
-7D2908A2EA9D0EEAF170B048831746FA1639CCBDE295057EC5AA5C58D3F9E8E2
-23A7E5F639B157D82FE384F4665B83D293E8A858FD6E01B6CC405AFF578F3435
-1E60FAC26683DA2ED8E31490DC0957C344DD3AF735FA68B51A349AA8D8878D55
-5E9CA2690C17930C64C825259F05114F5CD404A60274ADB5936C9600EEB6841C
-26474C6AEA654D92E3BD3B664C17ED07B78915073FAA82C446D71EFBDD4112AD
-18E5DBE4C13B97DC1EB9B368D6BBD7360C02F6C5225BDC41571D1D10E0616925
-B0B2BFC075D17AC4E277B58F19F99ACFC4DFF7E9507CCA6E1E9D66F6F1FC9DDF
-D9B3D7E057035C4282AE49E4A80B9CD9469842CFE0D695D6F380CED1FC300138
-BAF6B119D48CB46CB7169B694E69B37E3F451CC3DAAE8A95F3FF2314CC8F7C3F
-8404C650D6E26BEF8ED90A4A96AA7649BF3529B7B245F29512368297B63EC562
-DB8A5E7AF439C2D90A2DE286F90439DCE58188A253D71E2755E6165E4F72CFC9
-1486A0F7FE744FBAC167219B4725C11A9F55021E3706E195B51EB65D606C3D0D
-422EE154B7188D51080489F1301B242FCB629EC28F0563541D581E29268118D7
-8E4B3F04E34DC7FD54BD662223FB19F6BD83B2EB5F752E0B3C9B356DAB9597DB
-DAADE277257FE6E56DF0D0DED93167643A5450178445437CA4C85FB43DE609AB
-40D5A454D2E9429E67587138EF56F6A79667DC64313C29FC07EF4B66F7DE2151
-C1E025D111C411D34D47ABE9DA962366B7336344E630DA6DBE0C2C5328645E16
-0ED72C5ACA50ACC1186C936804EE07BAEDB6CDD803E6428E0F161BC7745BAB98
-3BCD0D07C7A012C21604C0CC1996055AAE68D27381840F4269045DB9421C94B8
-C21B8A947B06F52DD7EA56B64C008C1B12041D5345962D89E9335D3CC4545F26
-C40C8A00897465CCA23E5F1C84C696AE76D849AEB6FF46F77BDA4C489E42A07F
-01386290CBE542092D312EEE5680634426AB2BA7AD23A429B3E616FD150322C2
-CA1DAE5D1B002ED68E0B4F2BD265874A5B07527BC8C8FF3A467214A6A9530920
-144623CBAB5E8E17711ADDCEE1B4CB0B1042AB3E9100081515F460795D8D58C5
-058073D3C879280DACBB5CB86FA7603E0DCD56EC15AE02EF4BF070121D7FFBAA
-C2ADF1359BA9F9C1AF44E460461DBDB410AB04D220033720F12B9BC429BE98E8
-2984AAE1F5960DCABEA97426C07FE9994C0682C89ABA599F2A430A046645E877
-D87527FFBE9E86A6C83BE9DA8810E8D52EEC11E191172BBED812D52E0F518FF2
-C02F22CA14A4978ED50FDC4238A64257A4EE0DD0679D2AB59870660FE700BCC4
-1895A2B5ADFC1FD02EF65A6013FA28E35E3403766C36463F62AE90F12BBA9758
-193D0E35417670A923E010EFA4C610E277211E6C84E0ADA0973D99DD3AF00977
-4D94F6E09C74197DFEA9F2A33477DFBC4FE41410935C28E543D686C3660088B5
-78618A6BC0398427FB5A1CF463108178160E1C56E72495DB542A7B7C8B1AC889
-96BF3A1FEAC0CF92F74CF883C87429DF939B8AA578EC815C229DB15A3312
+1344CE300AAF4404A774D4A1F7768E8EEB045857C99020FB4524C1E566C2A394
+BEE7CD6764BCAAF73F066EBA5B9969F024E104DE0DC2962B3606869082972FEA
+A08D54FABB9043DCB41A505B3A4F3AE34593752B7A6383D370946C9A87F10036
+CC642EC95973B1162FB78BF4291EE253FF847CFDAAD2B855F4A37CCA0B798EAC
+453F61831CBB9A59DB7551AC3D922A2BE50DA4F592CECD7A3DADA0E0B4A07280
+FDCF52DC0C94833541023986BC97FDFCFBD439EF9CD5CB1DB9B7352FA30B6FDA
+0B4D649E5D122F5AD2305C7B71FFAB2D6966F8714B70CDE5A2B0EC31CCFBF032
+1A94309F5CB34720E01415CFBA2D716637E546D3080008EFBA134331A0442D48
+8D2AFA21E3AA0B958CA7C0A761EC702C4AF69735C7F7990F1CB8F692AFA289FC
+6580007E62B5489850D99153AFAB1E543004156B78819C672E9CDA06A750CA26
+65BEBD742203984620D7012AC14790825F647BE1A1D08DEA400901CC9DF678D6
+F90B12AAD36CC99A025C602EADA452F859ED3DCEAD549F70C00E39E9CAAC61ED
+7C8FADBFD8B6B9B762E0D38E09F83DD56E7FEEDA40ADA6A39E99762428498FDB
+A579ABEE9B96BDA8D80902C272776C9B567F17FF7C28C97CC2A2C2EFC0FB2810
+853D14344BBEEDAAF30D2305BEEC3ACFA2EB5BA0432D9A062C60356205210537
+8BACB50F1E31EB531B6B8DEFB668F9B44DC5AA4D60F5F276D3F8B3EFFE3B9F75
+01AAC03EBA44E55B9FC3376DB0CE97D89FC8E61E0BF5FDF1CD67BD2AF81C83F6
+BFA6E7A3F6A84A771E4C7224438F0F3530F492E7904B5E1AAE17D66AE2B676E1
+D42AFD07365C783C2CF8B22BD9170E29473329D4E01774EA03177E9B8D556EBB
+2F1A5916C8CC0083B6CD62ECFA702589AFE4EE6FD7567759D4601481BC128C69
+470B4888CE7AF334F5FC5A9D850EC8B1E0AD076C7165563A7DCB5699C360F35E
+2C1D78F9F1472D8C403AD336A3DC14913366AAD6026B0CCE6E4A7E7D3FC29A97
+511F246F8289E0D61A632B4C941F98FB30C29D033C824F433A0E195BBA5D552F
+42C5A0F04581F0AC4CE317CA83B78D55F7062643BA8F58456FFC1BA7CA7DDC28
+4DA562910284B858E8405C386C1772BC39E537FCE6D36D446644F995024CCD02
+D647412F39A20F2A618C1D663215C49D0BABE2E3AB00A862C6B88780B0F084F8
+F5B4CD3D3748421B71DADA1EBD6F897745C0A5090CEB3933852ECA883910B83C
+7F0DF266FD3D524D650DEE8EDED7CCB8C53EF1695E7E9ED417FD3D020ED187F3
+01FCAA8AFF233D52094AB69EBB895A14D5B53F7B5389188BEEC937E778200C91
+4FBD155C152C77204B5964F969D4FE8DBEFF0FD4D2C6B29E3A7DD0C724319E0C
+BBAFD05531A8420F0ABBBDBE4D4D6C32922351D90FBDD2587A8CFAE4D0D15B3A
+E0F5A1B0E13A780E92D5BF96828DBA77999054D7F0A8377576C82481484D45D3
+9B23AAC517802DAA8A744E90641576999F4A88323B199430C6C8CC3EAEBF9576
+4D10403768A7AA9AAE0DB85059FC32181727F4FFFEC9858336D52360E0B414BF
+7B06D1410E5EB6BD1155CC714AAEFA22E9BED7343A19448E1724C212E2EF13C2
+EDE1E0F49CA109EF88B00684405E54147E763D24A74F0920F91D4353BF6F58F8
+1A37E840D601F1DE3677FF004DA904BB51DCD32438935AAE7AE956CC6BB13CF2
+A3F01EE6020FA3FBBBCE93674C798BBEB75945A25C1C9A5FA301EC332025E5CA
+7816A7D8ABFC65ECF3D4EEAAFA7438B796696A62C7007DBE64D80526169F5D4B
+28311B38F21D13F8EF807811F9BA0D27BA5FC48FD5F3A9AA21F48C12D2DD8BCF
+6590ACCE55B0B06EDA661B0A0514C83FE75E8450D3EB5BCD6B836B7951CE86D4
+DB6F235CDAF5E071B47DE4032FB179862411B2D622291E0EDD057B7AA9580ACF
+6DC286ED271822CCE92CB8598E7C4F93E19578B3BB780DF89514C30F7272DD19
+A70829291D05F9A0044899E516160B78003A912419FCA5A15B7D648214DC8019
+4ADFD89FD5AF08D2DDF10241296F77
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1831,13 +1528,8 @@
 dup 43 /d43 put
 dup 44 /d44 put
 dup 47 /d47 put
-dup 49 /d49 put
 dup 54 /d54 put
-dup 79 /d79 put
-dup 111 /d111 put
-dup 112 /d112 put
 dup 114 /d114 put
-dup 116 /d116 put
 dup 117 /d117 put
 dup 121 /d121 put
 readonly def
@@ -1866,65 +1558,51 @@
 861B250DC3AC668CCAA5ECD8E58D2AF9499A5B822304FA2BEBA54D325363ED21
 814D5132E07D93D23D68F7366459D13762BD680FF9F4CD0F8361837F4FF9CE08
 477704DF03F1C879247FA5A3FFBAFD383F35D1033E400FA06EB43DE3BE149728
-E98DC609E89DC430440ACA19DF6660529E603C1F436D50169264DD4C1D4E9BFC
-7F8C55A5274B677060418BDC7438F32425ACB3F96656A1BBD5E073292BA41435
-6FBDF07389F4BDE1DEF333C4A49888E5A8E0D97B00F10B38EFD39FB880C16C17
-2F19A1525065C516538A6F393AEF6F549E72287A64DE399A243C78501CA4B138
-DEEB18428DA1D221F448CE3FDB2F666FF529B943808D4B45CC40436150AB0068
-5AF61FD28EC62F8EF2DD31EEAA3FD889801445B38158377C095696C2A8854373
-64C45D83DF936396024D7DF67315BB55AA6946776EBFBFAB85C7AADF837D2C29
-2AB94574F27FDB2F866E2F9BD283521B1FEA979A3FF518778D4F0A21DC35D24E
-8026F6AAFB30E96ED9F3B03569DE1E8C423FC5154434E20D560C0E6C60EBBFD7
-56B0CDBF6EE1F2BC860AC8429F1E1369C2040582F212CBCB449CF340A1EA5339
-20E75EDABEFE49D37FDF3BACFE6AD57E07B2830605B5C3B026A0DD80CBD39E89
-279CCDEF0217A66EF32D9973B50E7BD7965177682333F41BEC93472A53540948
-F686BE64B58AD5A2F95D007C4F542169A705F8555FE050EAF46D0C5F2209A0BD
-FC307F04300FD7002465D1B9D17C2FD065BA4B2A0E4A818347D2FC8C32FB18DD
-AF7CCF5BB8DD292AECBA2BBF5B63DF86EC2090F71AF419EE1766E4090DECFD4F
-EBA21FC3553F2D2F9EB2ADE0621FA2CB59E717FA5307DFF1E7C8C842BE6FB792
-CEBC808783C6F6DAD621F1B2324DB93685E3CAE0638F9E295152A3EE90A61704
-6740FD27241F01D026C4689D9BE8A46E03463BC00BB193FB44DD9F59E50D5E75
-454B3E85E2901F175DD33D66585EA3E15B28AD0C95F8CA5A40D1153F84CE425F
-1A0C3C9AF626C60DC35346EA209EC6170BF27BCA6FF446357607772EAC2F9D6E
-17E5462FA42EF172C8611897703DD92CDD8638A9E24529E5F68DECC3EDB53285
-A525BFAE30DE7983D97E9C1AB180AAE43649020033BF7D977BE7928E3E7C08F2
-C82A711255AD661455283549AD70AA469E7FAAAD55CA6FA0E3933B355EF73D2B
-3E5B224917F22F242FC3B02F34426849F66C7B0096F7A02674D27E65961213B7
-831C900452A0B1025436F3B097EA8650D0492773293866B67438AC79695A1834
-4ED6E723F43E94C25CB9368D50EA259271268CB749085A44842E084C2FD7B527
-BAD374AE6FDA7003FFCDDF6FBAD8EA1D2AE06FBE2CC77FC8ABDA27BAE2C3FA4A
-FBCA2318891903DBE5A9AFC4F5C7E6C6350392570912293758D4F2AF5CF3172E
-4CDF77BE833164CE639710F24277BBACF75BF33EFE8FF3CAD27F88489B938C02
-828888DB46B693FCA0DDDC0E3C984B769475ADC20D5838C6406FD1754EDDDDDA
-CA6FFF6B0BB72E3185A464CC3C46725204336F71357448E653023975ECEBDFE1
-9830D91D7F302B091D0C60A8D746CF9C077F6E0D6C7CF30BEAE1D2E91A19AC97
-8F3061D9032D1FBC0187E5CEABF76C9EC5281A1637A25B2F9C04859EE13DAC94
-91F1CBD7141BA69B360D8DE80CBACD42F9469D54FBF658B3CAA60FC19C76984D
-993678B297A3454E474B5D143480163469BDD5525636416CF32298EE50B77495
-48F81D1B15D249D148B3533F8F1B3646E1DA60FE4D310CB24271F2DDA32F2CA6
-C4403A257FB575FA0482830C5EAC479478F6E4E5E75C761E89D2066CBC63F251
-337007961767F5A911AA79A586E6C799AC54943F50E0B968B85437655DE4158A
-FD81F57E100B5D0BDC56FAE2BF6E007E858AF2DF540550C246AC0A1AFF3562B6
-B21EACCDB5A4394427A7895698E67052E382B5E0530B16AA6EDBDDBAB1766E08
-3D1F3CD1C48689FA80E2FAF71C5CD8065BD79B0D78A5231B07FB4BE093DCF458
-94D4D9259668ED14DA6D39FBB0856E199161A934E739E9BDC563C9140C70EC3E
-A5C883E86816B03AC018958A264107CE4D8A8C994C10E0FA73032E91349F3EEF
-64DAC055B703D1E7004366FB9776E72DDCC1C9E64C0B9981AA97279A82AEF40E
-5B5C41181F6D1D1A7F122C7580CBD34355C11236A6D991A9269BAC0121A67C34
-B8DAFB29E405F8B16EF6F3261E5517F32EC590EA830CD06AEA5C10F42A7BC77B
-3FDB9134B1089B0FEE64B84D9867F16060E2712D11C2F19543D79BA704544584
-F8724E0B2F2D0DAA40E1CDFBB1BB7B2C900281572B23A43D4D9B6A3051EB427C
-F6943C466D339D8DCED065AA08DA8233D47661FEF36CA56560BC5AC428BED016
-9B68A9DD1AFADECD17C3A253D7C7441A279417BFCAE95EF2FB5343D284AD8C10
-E70A8B11EB5846EC6FE53B7A731987AD3E6208583457E2830008CE705A0E3590
-7610F9C1B315CBFE9127C1D07AFD5D0E6C0898ACBEDABC7C33D92458976ADC68
-C09FD340AD5FEEAD779EDB923AE29FF66C5FA7B6A2231BAA3DF1EF5ADCF04F49
-3B9493D2156C5888ADF4687774BE058C2817A10AF2F62B27A252ECA6061F6548
-2942D756815AF559F89F2FA2F0A0414C3135417670A923E010EFA4C610E27721
-1E6C84E0ADA0973D99DD3AF009774D94F6E09C74197DFEA9F2A33477DFBC4FE4
-1410935C28E543D686C3660088B578618A6BC0398427FB5A1CF463108178160E
-1C56E72495DB542A7B7C8B1AC88996BF3A1FEAC0CF92F74CF883C87429DF939B
-8AA578EC815C229DB15A3312
+E98DC609E89DC430440ACA19DF6660529E603C1F436D50169264DD4C1D4E9BF7
+77141F1A2146B93D36F6683C8669896AD45E4B5D247AC18674717EF5F5F24168
+7163BF7732F8E2C1A45BAFACCF089E814C642F84C048D6BDA736E6D615F4C982
+2D9E6E70CACF0D4C73B73ECD6A2EDE42E576D55311BA346B8360087BFD7D6D5E
+164060E88992A9C211B561DD6E82A834776B485BC2E9A5ABF4655597F6468774
+614DC12FCDB2C29B71DBA7DC9E236D71620B995C2C413E53F9E0638EED8BDB69
+05E9BFB9D23CEB6052A6E1F525AB413AD275A4EB3663A6E606828B56A11098AF
+4C2BF3FE2B3FA84A2E377E34EAA3E911B84811DF1B58D6DACAC8676FAAD42B17
+1C5DBCF1649B4887413D90AEEF7074CF33A35A9E44BFEE54A679643883711B48
+298C43BE63D1FC69C6C7BFDCA40BA83E941D5153D2197E5201AF50EDD7452C83
+A7FEB5BC0236DB36923206C61DB460A6C2A96D95279682D6EA5A79640010161E
+68FC08C8BABDAC403D2FDB41D95C4F0E10EFF4F9D7EC1151A3FBC5CEC8A505C4
+496A95722FC2E098098333F9D112BF9649D19DED07FBF5D7FFF75AF399876D13
+22DC43CF6A2DF2A5FB0515BDFEBA02CDE83A2C15F16A6DC7E4CDDC023E1BA6D0
+86BD1140BDC6FDD506896530C4DA8C56A660AB0B5097C47A151EF5DC6F9278D8
+49C4A55FF934FB951DB782CCC801AC4E6694F3C9C9E5BF82D266C711D2BC785B
+2624E5C2A96ADC8996316310BF8472DFFBC453FCAEBE25C42F29667AA24C2830
+AA7F0A130B03CDF51902DED8A4DAEEFA7DDFE5744A70B7FDD0C164C1CDB631C7
+2178A4C9952BDF5B410F50F28F0F190627D96B1E1AB76BADD67DC2DE998B28ED
+D40AD5F093C608A70DB8181AD3680ECA5A73175EF0BBC983A6EB2AE461C09994
+F6289A234085C69C28B6B487CE2E2FBAB89FED40DCFAB1717FB0B7E6872176B0
+927739C0C0F0E64FEFCDAA6F5DB70F403C3E157C905D8407F0353A6119901135
+03590CE59CFDB8C970F5E5638CAF98EC4E62D8E48D32D4A883CE08EBA942FCB1
+FDA969BD1F75903EC05E3F271FC00E1751F16734BA21318BDC40F91627177B94
+4F262CC11A8B3606B2089BB8E3BE68EB594EE563710FBC0995475F36FDE1D16D
+1D04574965231090FF403FD262BEF943B0DB3956C4331CDD61A2AD468451DA85
+C2257F0E8B233CDBC90ED43601A4F1F54597F25BCEA325216CE484C79D7D0226
+2956B1D4B8D396A2101B671DEBF8EAAA36A30264B94EC95757FB202655782330
+1FAD65074169DCDC9F3D23EA9E4F1FB602F9C51951651F21B4EB6C9ECA154A63
+7BB81F3FE0695BE922B1DD6BC2D818DBD6396646B7EAE5E1AF6C7FEA60BBD0DC
+A78D739DD37FFB686481EA08884997FAC5FF30FE6600A9C1BD4C40A559BE847F
+1E6E4D4C34E7402536BA44532205B1C124264899C0E15E2D6CDE06FEDF1461F5
+0EB15A02A3F6C9B350C441287F609CD82FAAAC98306DBD30E5982CFE188DE4B4
+80B285ED20A047D0678F438FC84865687C5BC65027AAAF940D7BB98FE73A0732
+8B1B4F9475B558C3E7858888A37651707C65935386417DD2C9094A36D4388716
+0C8BC421BF1E4148C458F96C3579F4871792F6074E969318CBE450C6F41718C3
+07FDD8DD07594FB6808DC43C1236EB9C95C08428B9CF48E8F130AE8F95B8001D
+39BFABF29F94E69CB9629206D73E2491B6C6CE4D02235B4B31925435A51CB4F2
+EB6328405FABC179D7E33C8D2EA3D9D6751F164EEF39182C8DC09089A806D316
+E75BBFFAA811BC6EBE8E35FDE3972DF7BE23163FDABDFDFB53DD6CC2A957C1E1
+B2BC8F8594B4B6D29887108E15115CF8FDDD906987109BB782D9CE51A3E9A964
+94B5975EC235A23864B210BABC7E1163D3E8B039FD0FC023DE8E7BB098EBEC52
+DBBE70DB9751B220CF0966BBBF83585BFD090BDA1FF9B971258A22E85F969449
+9DA57C1383BDBC21A43F8E08A294A426E71E42983DB674B6079CB91D0ADB2E1E
+F82EF6
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -1974,12 +1652,10 @@
 dup 99 /c put
 dup 100 /d put
 dup 101 /e put
-dup 102 /f put
 dup 103 /g put
 dup 105 /i put
 dup 107 /k put
 dup 108 /l put
-dup 109 /m put
 dup 110 /n put
 dup 111 /o put
 dup 112 /p put
@@ -2017,235 +1693,218 @@
 759A6E7DC32B1D1632368D09A97039DF255B6492B1B2B7E2C1434E8306ECA7D3
 5A79B6D614B4979F10988BC76ED53A5F45315CD7DA216221F842FD0F3E050DD2
 BAC23C984D506D8F7D614BCB6B244F5F41321549BB0BD041FBF3053307168680
-3435E9C9457D31821224DBEA90BF144C1B129FF6D13D16AA827A26BB580687E3
-75116CA9F153D7F77B84289FB92A102EA55233FF5269EC626B4E5B0ACCBBE7A7
-613F82BEB87341A36F680816D2D67245602DFD47706C38FFFF78F667A3CBBBD6
-DBB711D0DB9F37A97439F474461FEABD47DD88A5112A27BF966055BC0AEBE10F
-B6C8936B75BB2D2F5ED63A524B9DB3B80EBC8D49C7E3C1578F3AD96C433B914E
-489C292CE27B2BC01E18E7EBBD4C3DDD11BBBBC5048C2880BF949E4779627D1A
-137D6F74858D5600B79A36277DC48C7125B5F36C03BF1E801CA9348D6FEF16E6
-EA0A2D431BC691188862193D044BF86C5065B7459E4027C2936903CBDC26861C
-D16443DE5936EEB02617B0E739720C19E4901B659D1E64F1EA1C14512C04EABC
-F46C70189C8A4E8DA81E22FC664C2DEA3A795DD6D8CED6797C7892DCE6E53F32
-36A5677DCE8CA51B2D8528963399B7D6584CB29EAA749ED22EDF0E0F41695569
-B7F5860921F9BBE867E7C4784CCEC7095D0A5169B5487C5A8C501B599C8533DC
-9B3762FB79C633FD87CD78E12C1B95BF354ADF357DABAF8F3EE3313C64E239ED
-E5DAFA8A4823E7CC3A08E25450B23EE4E135A781B9D991A63AF1DD99A0893BC4
-697A661B8B8FCA8C8A664AAC11C0A24354E4E6A1876D787118671FD9BA914B0C
-7115B9C619429E5117D087FBCF0B30C8E9BFDBA2CCC1E1B89D41BBE5D2A87718
-8846A1378D945507A60FDD43F52A4B89200F2930F216CCF9A00A76B25910E71A
-356CCF4033D359D2B68AE8C120626E99246E042A93D152E123FF8B21B68C00FD
-611F481C39EB2486F07FA2E7C0D51804507F9AF0294F2C2F769AB73B1E82B6C8
-BD29113B705C6B26741DC893BED435E7823B6AEE04B35182A7660ECD838C1CF2
-E28F231D2FC3816130A7770E387D6C565E359027D67D883D9FAD1A47685081DC
-F49AD27F9214E458E013768E661BA316E88FF8EF95CC28955164020C3251BDA3
-5E4D135F3D7B58DDA444B567C3A2EB456819E657E488A92BBF5670950FF30E6D
-600A9A1CDD6C7BA1C142BB69BA6898A3EAE6EBC7F5B24B5BF9C4D12B4637BC40
-0C2505E0E9CAEC51CB4BC1876F1E9FCFBBD8943E2FAD4C4CF06549546224BE73
-92481F4DE711E1250D8BF5B67C2083E2C0DE67853B39244E257167E5174A6E2C
-032B71C5E0345F337D2B0AEFBF0B75DE67C3B9700CB26BE73066702F690EA44F
-E86011CA9957A1964A0C96AC8231E622AE1E04E5A8023465834A6E38E85C8477
-375F193526FD11D5F3E18382A5EDB71D0A8F0C1C2AEAEFEEE51776679A5547AA
-5FE743D02402BB450B52564A5E065AAD4384369E900E95A62D938B56E685388E
-AC6C195A57F0BDFDD6561ABBCB53A08BF8248CB9C374B5FEA7A0518AD10A81E4
-595DCFA16CE5D37126DE9AAD35B2193830B9D4DB98B33ADDC285E9E258039055
-99A0DB04C63ED109D45FD139CAF5A96ACC6A3A68EB6899BB756F48B4058CC1FA
-111EFD9D07535768A3CC9BA2AB53C56633B8C9B912829294AF33A05EE3E16132
-6608674E4F3A81270E258569A919F5933461F8F141057012714D710E2E81C231
-EA8A921FA7A1AAED1EEE4F3A6AA5EAB198DDAD84730BEBDB2E26E1B3FA38EF2F
-F6E568403FBC81CA14382A2D0ED4670B2CF547021E5D3BA380F821F84A9050C0
-B1F6736515A194C63B6BC49B2FE0260ED002186B05DE4475360030FD548326AD
-D20DEE917A78B3C0E468FC516AFD6AB5908314D04AB2DD590EEB9B62B3AD6655
-5EAEF0112FC7A1D62948BC175A94D25F80060457610CFE517669B720A2806FE3
-5133AA6F0C094B749C6A9CD54D3B46E8B1ABC24A9E32EC4EB40F3E5A655978E2
-B0330898FB9EF31CBBE17BE0B6CB7DE3EE4930D13661A74B4A3BC19E94FC61AF
-F898667098397D0E2D1FF2630890DC712BE5E7AC2622D83568AD085815E2B234
-C6C2E03EB1E9A100A951CB40CC9CBE473B9521DBCD5981331F16956D3983F931
-CFC8F1C8538F4E6E7FFC4A94BD3BE7883B9D0577BA02611FA811D704B398381E
-B09F9D60EDC318BF8BFF5D95D21FD80FFD9D16C8E569C233E73548B3F25C7BDB
-972202FCA9D83D7B550D0BC49D4FBF4CEFBE07B07906E3F12566305CD1F929B7
-41748A78703E044B94C7503A85CEB9C21471F5897D75911A607574A91070D750
-41301682A2B047A45B20D41A806AD7484F43AEBDC927017E30AE5445DDA55D65
-161D9E29B9EF63516B61101070FBF37B7030E322765AB6F719F8979A306B17CB
-90ECDFC74117FD297333A4C8DE6AEC01E7B2D5C81870CC2D5A739929BEF850EA
-22FE70C28DA33A65FE6269DAC568B07B5847E0753C46F237B416B5C8283AD508
-898134798F69BEBA6C0DE6EDB0BE662B245FD6AE4CF8D3B86803081297D3FA74
-27549F33D8AE8135C237F17AF2F5A7AB66737B7D8B2D8EBAA20CE7E5069A436E
-8CF0063887C0702172E587CA5ACF3F3BD0BBBB8318F61E8B516F5FC2F2EA1B15
-240EFBDECFAA0BE6970E68D48058C641F956FF33D4F02717209728F45980B62B
-D3BBE4F30B7C3207C59153155D22BAA11358F835329B108F9E52C8F173A64585
-FC843F01099ED5254692BDA43A98CDAAC907481AD9843D9457A1D323B897F8FD
-28FFB5BFF3C4B605F625AC39F81D8143B43E03AAB55A094B1DE79FCD1AE47DA9
-442B8EF000567620557481D0E09375D0BEA69FE271910F3EB7AAB6062168CF5A
-6EED7D746A311493990E193939AE99B0C3578414BE7C4398346289B44A5808DE
-73242381A94602BCC283FA2F4E9975BBE90F0DDE7615BD6F3F7E0F93155A654E
-AC9A5497C40980579C60738475D7B202751C86D6AD05E7018306DE39FE83FBA2
-C3695033C261F2B57510198ED24DED27F0A786CA95691EFBFEED21B14D82A8BF
-58494B93194DA23E51C7D96C0F53BF8E0441305CD6C19ED39A5820DA23AC1BF2
-A4B94ABD45C3CDAD94E4CE32F1E36D34A8ECAF8FEE0AA508ED74560A4A2DE4D1
-CC71AF994E123273E8754C7F8569865C6D8C7B792AFB7CA5A6C4163628B37E52
-B91790DE9689A53776D4C0F6F628B1B38FB1C5F9E842102CA7B58B04F1981A51
-ED2520C02919D67658BC4E423823ACD48DBDF6DBFED8C5AB223058938F48BC95
-B1003880DAC0B26E1527602DEC41249E306EC8FE422239996B1A0743DDF1BF95
-4E3DAC0586E51C224D7666BC10765ADA4C8C6FE9F0159D1061CC1C82359392EF
-20F63B738608B6AB67BF32FD3F9F236A0DA91B037FFB7F5D56C75B6B6BAEA733
-95DC54214B0E6F30C3FDBF9D1BDCBE7A361EB6E1286B0FFFD248955A728608B3
-B70F91621701E27D5FD4A2F3566B7F7DC1D33051AD9BA442FF9BFD886A5A8635
-828D6AB4D3B965A14E5D6F3AF6E89838D2A06C057828CFAA22A7014310CC3A15
-0740FB9CDF7E99D27C58D20999AA6F929D8CD67FFCE5586231D8C71F923863A3
-C93E720144EF830DAE07F23380052E074940FD21F76539B3607D3FB4DD4AA8B6
-35A585DAA6F20783F4B6A46B0CF226158F9656A10BA0BB8E7D7CE501763A7903
-7EA0851595F4308398553FBB35DD4E97E6C75F510F81E5F6BC89D097790D5F99
-E3E1221F3CBB0F61BF9B8EED7D1279D7F92FBC1CC7AEAEA783F39475749756EF
-0843FAB373EC9DE6C018858E70546E1B9765CD73674D3CD273B86FF0291F23E4
-748261E1F257C73B4C9CFA6561FA5FBDCB7157AE6D2A16B18A21C310295B6505
-ECBABCC4940F4A14227CC71857436E0AAEBB4B3A119F5F4B724DDDE1CC916F8F
-8E492CF79047A5BD01C6187A8C4F07CE38DB44125F9931D71812EEEED3C75F05
-7F4FF0841D9F8491627ABF3668265E0136160C9084A3F9F1FFEBA7AA8F835EDC
-767536E7AE554C90AF6955F90E15F4C82DC233901E24F2D476FFDABD2B254E28
-7DEDB21E20E0792EAAE95AFCB1542046CBDEC2DBC5CCEA84C47604927339137F
-F324E1A6A7EF4AD9F27DB34952E972AEA2884720AF3D72DE2F3D83320C4F8C35
-0C33FD1E9C65997FD2E5743767786AF1EBF3BC91F6EC2E7B42346FB0F6BD4D70
-157601FBBFD512ACD70B60C671D7FFA52DFE90F74F1167688F3E84CD865D8F72
-C98E7B1240DB1445B039693A86A9A95AFE89356B19776BE3CF767B2FA3E116B1
-92C4A63660DDB280F5CD69B9683A0A45B8CF3D28F168AAB160F96933AFEB621C
-64D7C59F41CEE82038DAB324B484B45F7535DBAF49BA72E6DF762E5DADF0EBAF
-58BC50C550283978A01413C44C118865A671067B6B53D48E5628BEBE9E98C1AE
-2752DBA13B9B79D6166A267635079EB787183C6924F2CA042A5485EC562F8FBE
-7CDEE97105E46EE9137C68F694B064D2C75150D4C67B1A75DC721405C195336E
-A907AD469F982D05A9C7E54107665D79EE67BFF834DC77CB1BCE6EE35950B413
-7184AFA5FF6074D255B31BFA00595FCECD282FB58916FBC0EFA92BDF104D492E
-8B38CB7BA5E4B3B95AF2F3085E06ADA63FB66984ED009A40C8A39C10A8018D82
-315DEC2671C5DDC1E4D3CD6AF9FD0DB4D457EBB43C7DEDB3A5CCD9718EE36DA5
-4EB140017A757585486DB11F732CD0FC7E86795713D4AF1D6B9BB6C3486EEDE0
-EA91555E4F2F119CB06F50D56B6F0AF24E175582BC11B84A4965F893458DB5A5
-E7008B268E0278F6C1864015ECCA8A00B6763EC98D0083378FDEB0F8EB89E42E
-187152CB14802968659F8893A0A47FA8F5189B245C166E22C7B87AF53BFB06AE
-8D21649D4A82387C285DC2EBA449BB17776A6277808698E3F5B21661A4F96630
-669B8386C70633CB886A45164771BB3685B93F4FCEB5AD6FFB6EFED5BBF824AA
-73D1EB340EB96F5C70999154E093BE7325AF1C6AFA99A7B051A0AC0CA5ACFF7A
-4A116B02150EE4DE6D35B789815572B2025C4EBAF2EDBFCA3650E8BC8AAAE68D
-A47531831F6E62296E1CB1DD673BF5E5589A15A31CA77B4B2CF4A0B1BCEF901C
-54EF9346E04D20B64354C48F2C0E08BFA2920B56C48720A2B4F8EB1F9A38010F
-579523ED53631BF41F0CB5F05E8CB4624EAB2EE085F4FBBF1C540C7A48B65A0A
-C79CD426CD8971A409525276FA42C68280B591468D864E035589425E25EAD583
-4CF61D27694AD83E08B27FBFB6977747B4810BD35FE991EC647532601C3D22D1
-95A7C2F87F72372A39F5C77C070C259E5A19E9FBE85B9FEEED9B121C023A5CB4
-9D98E780E1A6B344409EBFFDB3BB7B476F18362663E5CC1BF304AFA8DA3B4B54
-36B46A127B378D4CB8DB9BD3F5D170BED4FE07B8A8690D6E817C3CBAFD28DC5A
-8DD2B5A2918F0EE7A28736951E13E2FAC21ACB83B8BAEA7796AE5CEAB4DE4EAC
-AD22FA38AEC1E7183821E42B254649B2CE421ACD06F51C957107E16C2E2806C0
-7C7803D904FA4282564BB2D9251FCD472B94472D0BD7F5D19174102544A1CA99
-4216CF83519C66F71404C5A16903FED76E331A93AFA1FD2E11BFE89A8F78B44E
-F1B0C04EFB3CFF2BA67B2A19E67DB9825541849CCE9E2DC8F19312D13B0A4369
-EF793AE4B1A870480D74D37E4873D085FFD68B77726A3FA567DD033A7BF1F8BF
-CC5D6F80C47B2C49C042BA17BBF8E3F6BB5B6E98EBF83ABF48443B2016026EEC
-EDA81B1FFD6F8557206AD4D7590AA0FC97C35EE29B3CA8DDF60A5B46550630FF
-00C833035A518CC0F5944AA9EA5DA2704F5C441AA23BE788FA315EE2B1E0751D
-84B92ACCC4EE9F5D1BB640161EE4F2BDA9111228BA1832BCD403E98B1A66A781
-C5F48141720611C1ABFDEBC9E27E05666872A354870B35D6C37F2955F77862A4
-C5FA193E0554D4F7C1778481648E7A450D46185824141A4C86C7984B4DB7694B
-49FB74F78C0D1EE913271AAA83C577B2664E15F24C2C3FA18E0AC2706B8089C6
-02AD2BA5A6FCDAA8E70D948B22C5AAC7E228A286FE9F38B63BF5083C680FC7F8
-92688CE226502C37E66D17C28DB56472924C9D4C2855CCA9B787ED6C332BAFBD
-9EDB20C1EEDAD4730F2022506F40797E0F0C2FE6877A4A96A2832302D8B84855
-A2A4C68B6B202E8FD8B47F3C8F68207DA52CDCFD255290F5143FB4463E389780
-3E61C9259C7A2440C10308C2166478C92185BD0F890203DBB652BDB526D46E7B
-18A8D6551B0FEF458EFF7524739914F85D799FD4AC45523F9359C4D3F4037424
-2A545F5693BC38F60D8558291561AAC412A7F61EFF17A0CC38732C65EE40D079
-221BBB500E97F85A7400EEF2EF0CD20B61CC62B9D75D5206E8C7D4A8DA8E981A
-A21EDF7D2117044E0F0EBFE9E9B69FE32FA741D797F418E426640D25CE3B84F1
-D93DA54D74E8A5BDFF0421F74F45D8C27456918A8C8B91A4B63EA1551CBB9E39
-D35456641F1319C5F6C7122F87B8C3DAA78192EF4518BF6992973B5F75794040
-205F37473E333A2B9448B08F5E154080DA0A6CB0DEF7E900FC207AF150993736
-46C60DC6E3515C88F07467393AE8DA3D016630F6E09BA0A3513876D52DB3218C
-4A55AE86BE04202D2DF973EF388CA15246C867D50229108874DD46C256388ABD
-DA6A346213457C07145226164EA8CF28B653F206831EE9C7BBDB75111C97ECB3
-F28153E888AF158EB8DEAC3AA6DDD294A67E8B599F3BC26926B9FD87467522DF
-897CEE5FACB6968FCDA07D3CCF02112B2966B633EC491EF11F340F8EE5E42E5B
-AA52AA92EA190E491C636C8813D6CE701E17FA565EDA35460EA840272255AA5C
-05F2E2B00B093121DEC628AE3E837C637A65E1BBA59360877EC32DDC25FE5951
-4CE891F8F5EDD81CB69195DD251504BE60CCEDFE5322491FCBB60BFEC1275123
-4B2C7802B717821DD4EA9CB2D20B2619CACBE8908AA1402B2229B0D4EB4A35EE
-F821876CF7FEC30B9023779AA99B89632A1B170264E888D5B5D71BB7515EC9F3
-A3B47F8E70548EFFD00464DEA14694DE8FA7A92151D373877025923E834E4026
-F5DDBB390B25C5CE2171C4D6CDB8A840BED26B0FAE6C475F99ED8A48F1E6FEE8
-C9F6ABC8AFEBB534F4E8C9D70E256BF146D6F27DF15F9C2673621A24591770CF
-F17C8754A37CA8B2F09E9482034C8C86D9F5016A71761B1DE0D194E2966B549A
-5CC20F5D1CED116BF9191D19137542232666BE6B47F974822D272118BECACEB9
-543FC4F87965B229A3786E0796BBB2096A50F3CF2219BA8B6EE1F6DE8434801B
-FFE114B6414624ECF85D0D964EFD07A70A1E04B275BE105FC4876F9DA75A0988
-6C985DAA50356A7686A02820883E5A191F2406F87357D9F5453D21ED3F7D2516
-264C55442481C102D20F0DCA1861040A7765E3913DC6BDD0E6DA66C9BE2B68D4
-E0229C141C3305B4F4C12A99CD44F4456C54B9243EC2805D91726395D1816852
-7845CAF629428E667E40A3B6C6022B688E036FF9B182C8DC6B0E6E6C51466110
-0744A32DB97705D28F41FDEDBADA325E249E206614F715DB92A1F37B4E22533B
-47B1CC7001AF90A29A11D2931DF76B7E273EAF6806807DEBB3D7E90EDE8F6492
-6B2ADAC45DDC8B4BF6247D0D46D80436CE3CF3552E93F5AC6FEF3D2CA8D7B95F
-3DAED7E23090515A37FA63C011B414F550D2527C9D4097077BDE613C4A59F7BB
-78EDA1AF2F8872C458CE2A6F5170CF8D166B974B2FE4A0ACB10ED632BBC3BF7F
-D32E5D3A3F486896735BBD6720E1438F2DE70B98ABED52C7731540AE38775176
-C8AA2128FFCAC88AB88E262A7549F11D12C47F9EBB3FDE3C6F0EF92C5374D7AC
-883B2F122E6C188076A5031C779E1A881C8384A486F5C1E82830AEB8B3228F41
-BF566D630A237B65715ACF26598B56AB96E02F95EDF5C0D91016A5359BA8A6EF
-1E18D5F2D2BE1CA30EA5C628E7B743E66719C0A7F8EC9EB7A6C542C26480FC32
-6EF025FC53BBF2BEBE1C7CAE9212AE95F577BFBEDA51F9E508C8B1650DC60BC3
-512CFD3E6BCA31D3E606B25DD7202DF31892333DCD15897E0D8A753D3E30D74D
-A24854670A46196C98A6F7132F3D17B5A34B16ABD4B14AFB74F119C6EA312907
-3B7746123AD4FE4A57CD9CCB2813AA9E59B10A145985F4D37D2F95DE73FAC036
-5339B6AD53279B7266BD45B5788D5A6F5FB0E3F5E1B158C0702E516879022FCD
-F5B5E0323FABE8C27361FC8FFD738869F9231B0EC47B622B5B3202510BA6A346
-AE584C7484510FBCFEBF8ABF567195CE18217C15B9A47DCEDD911ECB69BA1894
-6A48E7D0F86354F2E60B98B12011B9314C729F149D5C1CD3D414BD6A0EE2559A
-4EDB310E8C3E5B6CF1B5872BD52E0EC28393A79BB4A68BDFAD696D3ACC872299
-E4D1007BDDF5ED370E3D4E0F67662B5AF06477BA50C4C094B8516ECEC616E125
-59D7D6872C2353E6FEB456E6ECAB3BB22D6586FEE1ED5EC8D703FE6A9218EE5A
-2F5CEFCD3EBA790388F486F51082AB188B91CA44DE486A3FCD108351AA9CCF3A
-AF02B13C681E5A237061469646B3E2C57342C305D032575475DD5A9041A6ACA6
-9FE9FB185E914D733D67CDA75D8481ECA4BD3ED93BB0E3971C5B686DA60B6837
-130901D15A6106C18150A80DBEE8932E8B008DEBEDAC1A47A1483867AD0B4BBF
-DF452AFC4B226C5CF1D07019DA334C596FBDC29D2EAA4B57101F4EA636149806
-FE70DDDA8A9CFA605924C6B96F02A6CB6CDDFC4CF7484121ED48D888BC4A0D99
-AE9A3792084C87192F1DCDFBFEB71086A72566303174542D99AA526B8B2C05BE
-54F2663F274F2C9467AC57F1B135F08D0205C2E2F7C85FE4FD7EE25ED5685AD3
-D5F7AA5AC147733C48D2AA0253EDF1A047B5512103D9C4DD17BD85441F466020
-747044E43AEEA0DB078BEF688E336B9B43AB75BCF78D898BBECA2E5FE6FF2560
-479D0A3A51B2BEFB4D41FB5576589D2FF1EFD4EEE7F555666570AD7ABFC7E973
-882775CF75AC7F4C51F8C5E740D172493233B01D30FFC8778DE80438E3A020BA
-AD33E367FD4A7CAC5083BFCDAE2333F4A4A718A640628E9F3F88A33E31F23168
-209383CAE1AF0FF41CE32D33B6733782E4FC4E612821FF940F47675AA1124FE2
-59AC8C4CBA879073D964BAC21969C62287842F9FFA6776381A0F76D190C3F9B9
-81E29BBB7F977B273EA7743403178CD959DADE0462CA4ABE93B4AF232324D717
-8F084CADE6A3901771C2041D55E2F4BA893B86BD48D0325844EFAC347D5C466F
-CCC756BB1B9A4C530A61504C647CCD1B5E684450B0CCDA3DB2D6E8349B1F0039
-0530275C058DE1EB2A9218B795E0DD6336C086A829F78B22A6410C9717B2ABA6
-38228D4ED25FACF98653903307FE2276843C26546BF7F78A3E979664621A986A
-BE04E5E1DF8DE1000707EBCDCF4254254E95F261C62C05CDC928A4F1D0A4865B
-47C6CFAB7E2D3CF4360E193207C3AF2172F86A9F3455D476A0BB26956C4994A7
-56FFD46CA83DA5BB27BA53967B6030E32CF68343211CDBFA909F98E1F0B3651D
-68519F148D1A496E950A460E6B5CB84CFFABE4ED68163D125601A86EE289524D
-A946D10A67027A9E3666DC651E2D416BFB086BE7A6A4364EBB43959A45A9B5E3
-353B5F6384300E7103518B7019D211F39C92E69EB9E0B49C15B14C2140682FD4
-F85C1ED1926EBD08BB14D382A13DE2DD8873508596992DD4F487EF5644DC6B85
-F41D2F9AB315EECCAA1D2E76D16527133D05C02E4152AC78477DA7AEE5443833
-8FB1A5E3EF421B1BD5D6CE034E4B3DEA7D78C8C1B71BCB941009BC385307582E
-024637D4FC84C62577D8213119F59A792DE957D3C4BA9EF50DE9F9A5D6D42AAF
-BAFE0ABC8E698FA7CEF3B7332F5FE5C58B221E7D496543C85F6E16CD6FA1F09B
-01F4326F7A10267CA26B93D48A0E6C9F64C3B966A75D0990A6BB330CBC9A7A20
-FBF6FA0A5141F33914DF5AEC7587DA67D60DD73CCF78BEA73D13B113253BCFBC
-8F6FD171342F72B254BC015FB2AD888C817683D73B19FFE440B95DD81C84AAAE
-4B02B94ACF5B005D6522A08F9D153DF9162EDE30634324DB318F3572136344FE
-FF47E498C9DE68A530E57C8A58F8692A4A6C9AD3675AFCC5C04719A896ACB55D
-04E99F8B504E0061451E833E77092AD42535BED7F9289AF93C9E600708687EE8
-4C0C6231E0CCE910B9CF1AE75970176649EEC484057C0D89BA0C75D94EB64D30
-20E31505B65A24D3B6D3C553CDDDDA5A1E4EB9EF92EE012CC08C6817A8B5B9E8
-0437D11551E4D6A5F793982CDDD20814AD5DC59C99FB01C65DFDEC1E4FCA8679
-07503C6CF3FC6B028EDD67A9811AF158C8E5D789C8CA67FDD78D1B9DAC25C5E5
-EFA2574D7F12BEA5EA9BBC2DA372551A0C41C4E0C3BD267F7E8F2DC5C91B25DF
-3B2BDC29C67E614694393463666490116F301DC50B8E97F9A19E5E43F31CDB9F
-4BE0B525B456B1EFAE6F6ED059A9A94773BC15CC1A457A981E765037AA3A8516
-596FC0056099BDF3DBA6536FBB4FD785369516BE511CC4DDBD1509A7B86D754E
-2FD5AA51F33DD222EA0899BA3519BC
+3435E9C9457B548EA293C748B7CBA5C6F1B2FE09945BE1B3FED0B49321A20B08
+CD31AC277063442187140DBA3D11511E9B01D2D1AF6BD8B6A8D113BD0DA9BD6F
+D820356772D4C6570B976EE3CF9411CA0FCC29B2EDF55923695CAB2D3E0E7542
+6935AB339AD99AB28D22968A272D8EE7BEA2EF944FAF88CBEF9B02C3546B55C0
+9520B8D6984CCDC823622C6B0F04168C11A106E51636F1BEBFDA2785D81159AA
+ACC0B718E21A21B8CA475EEB054B761B572CFDB403E74CBA60B2BE2048A62293
+861996D22D3F3D2B914B1FF3BA70722D0D18165F6F65527602593C5BCAD2CC21
+5AD541D4EC92C8917EFCA15EC438D9DF5B69D3B9E54E9B72C42924EC39B42C62
+E03DA6E23AFF8D0856B774880B1951A1EF52DDDB0C0A0AE66D25CBBB85E7BB8B
+70BA7E3220C97D2E01D63F857C28678DE46FF3B17D202F9CBF61AEC2BD1D98EE
+1BB0F188E705DBCF31CC5C78ECF00B648AA01D59C6281262628872DEA102D6B2
+2B50D038BA1B8951AF07BA0DAA8BE1441978319DDFE8378506575D0AD638844D
+1F695DB636DA1A68D054846C380E8767E5BF3BBA63136245E50DBE5DC67B8921
+5C5A61A5373EC823FDCB53C49B0F40D5CC07690079968C9D72D6B8CEDD7EBD41
+A65616B031E7F449D8FC300772C48D2F615236B058577E534565F7E12E1F9D43
+1FC0CE28CD93D8C8DFB762D5780C49846669196E1BE345CB6799FE920329F8C2
+0777A9D2086BE4D1E0E12B98919FB4D7F7A766663DE79CD9B0C312B94063C766
+D2B98CCC5AC920CE0AAADF094FC2809401E899F9B91FC48E6EA206E5D448EED5
+C1CDBB38A298295B674B45099C3E3773D0608371E7046C436965582ECCD0F42C
+E7363C4ACDB902B576992EB80ABF11987E2B2809E24606BB5A1F19D8B9FA9C4C
+9D0A84CF40387D480B2B602D6FF2D594EB02EBD040C3CA557B052513F6F13CA6
+1DE768C64B8D16385B7B9478B2D42523AF8B0ECB0EC73F06092B969C873493BB
+3C936533C0076E1B6D158A52698AD6262BDB2A0ED74B24160174B7EE70D2D6D2
+C08C1E1B1B3EF322DF580DA8543B9003773A02369746D19BBE623940D50B3F83
+A45FCD4D039CF3A793F451D7F8C5E1D984D1AC033B82C43897AB4FBD17EF51B8
+D85A91FC6C00C5A8913FF116E165A1060EE1254361560CD536CCC1737D34FBB3
+8BA0EE81FAF9323F630D61FD368FAE97E72DB48190F1FF844CA03D0887D0F4A1
+FF36BE11EBCFF1537DD1784BE92BB783986E0E7BDEA554B84EE2A3E62B69839D
+DA6B251C2FA91A83237D3C0F95946FFD540730DE36D23B0492239AC45748CB90
+3DC4C7FD1ABE7D3B8D4FD7BFA533540CDDCA6862546096315F49B38DC2A84A46
+F3EBD2F598CF6582A59D350DC642F4790321B6372D5D4D255FA29371AF3C822F
+563169F132A01B4B100C8155EAB364549557C9697C9E8DBA07645370AD498414
+F8EF8CA6BC5999FDDA8F9025F6FFCBE09758E1B54189E0F77DA84F624A2597F9
+9F5CD680FECF26E44A66DD126E30DC1E88FFCCCF1B6B0D18AFEB56A0B26BEDDD
+5D72F76AEA8867D54BB3929E29FB92A9DFBF19039E836A1834647F008EBD4FB8
+2D5B275D84B1BFFD6F54CF4B6E381472664F858DD75C38417A719D4D83226AAB
+F717A4EF6D0ACAE35F3AF9606C19E1787159493F186ECF8E7D4E647E91DC752C
+16470F3CDF33E1F65396F40F410373A1654203E37771CCE49F742DEC2C909822
+E4B016DA783DF03CC03EC5FA49E99884BBD4C77CF37DC5255318365ED6F4B7AB
+F7DCE53B8A1A15B73469DD0CB185F08C3161F70C77BB73A8C410C12AF709F11E
+22420F6615588EF32094BF4C2AB73C2CBE8114BDDF0EF360D154C63CAC30BEA7
+9FD06034801476E4CBFE1F01513C639FB89CB24A6FA6475647828E54A72A70C1
+D2DA0FF4B12A33A16EDEE205FB4DCEBCA61D207CCFED715B775842C78D266033
+5FCBA86BBF186AD0ECB00C27AE7596FD0DE335A2917F1C215F2FA60836FE2458
+417CCAD7134A18D96A2F01DB13D5AE522C0B383AEEA1D6E100456C2D95ADA7F1
+A859C750606A02A534C6C1B6A8FB5AD3ACEBA34891EDFFE7CF4ED2DEE1CB8A8D
+C51F99712CFB9B0E08E637C214B98FDA959693F7885DF1387F18B5CAAA5132BD
+799152FC54B9117A9DFA9AD00AEB00D517EAF573228FEC21913565803D11415A
+6D9328E6376D959C7D804230480B2111F550AC04C84D73AE9FA2F630506D3E3D
+79BBD332404BB00323814944A4BCE80077CA5E0206FDBE4A57D6BFACF57305AD
+2AE56C6BD2BD9F3471CB384E72E41E39DC36347D48E873CF4601A7D4F86446B0
+10E3DE77158BFB3A09FB340EEE85C4E1EE9DF01B773970BB91F51FD6257D24DA
+DB2532F2692028F2E192F1EA0A19D5DF47E3C07464216AF23EAFC05DA81DD30C
+5BCE6A11146F901F5219A609E6A641059DE2932C77713972851B3C19AAD2A73D
+1D7014BF0D144EB17E3C0FAF9417539E9DDDE199E52813822BC739B55AA43F4C
+3AC4A8F156C91406AFAEAF0E9094AE1FFDEC76D6F7B9BB8D0A8DD8BAFDE213DB
+3B007ED04434B6D225F095BEC534292E27678662EC9B577176CC7CF491D05057
+7BBAE1AD29A82ECCE5BBCAB307855AF62D28E0EFBEC2A89CF04811729AD03401
+24AF0FAA109F317157B2866363975C4034DCC870C759B09E04592F99282FD03B
+8A759333FEB43FFEB7FB266B6DF4D70AD28BF267560832ABBD39084E6BEFCC20
+E0ECD7CED93B1E9095CE423EF8E71A608916F3C33E20E5B199B8A87DF1FD9995
+EF9DDFED5968ABDDD980EEC5037B5470FE53C31D3120BD787766870E310C2C8C
+51B1F2402257F06C905FAF942CF7936763D146D77758BB8253F9616FC434A2D8
+9B5C2C5F8C62B16009E5F5803F5CE71409CF9A61EC86665E76370C37FB4098A6
+ED13FE4342B5D0FC7BAE0FB9C3A18FECA4ACE33E051D9F5C485F39729E7771A3
+D0F59CE0C2EE01975FF28BA77FD2976D2BC9B8CBE808A300072542A420A7F5EE
+A55053CB62DFDD71B76DF91C5309139C168E051056B70817C5499BC025BE88B7
+6C3935A4187B3856CFEEAAA01E16BE87BBF19FBFCA6BE99ED86619DD36C6342C
+C4ECE9AE1A06C77BD4DF94B180F5FB1FBB0B6C90C90E122F353AA6A5A477DA14
+8C4000F5E4B505115061834290CC24BBE1D6A1A3D390AE555626F91EF03936AD
+1F5C09BDCDDE5CA801F786F417827858E33EF532B47A838DF6D8E63E0394AFC5
+83DE975BEDF5C779899F86C464E8F8F0AD8903B411109D322729C079303C3024
+B890DD38F7AA65A9D43C4338F1E813ADC05E79B9EA2B28B3E0A6A4542C7F4FF7
+A4306E9015AC3F73A59E753CBB2287EB1E354360655D2AD34FBB9AC6A57A8246
+0118754FFE2FCFA30ECD347E31A53A9A4B423D9D1637D2B6EC5ECF4F8F67D344
+C01FB9B2E53D0CE21C65B4D082CB231914CBB2B6EBEB51C4D7840D18B967142B
+21AE2680B2BAA6D3B27B8E5E33CD80B915633E05BDD78FADEB82E514B430F71E
+F6F097E451E38AFEE2F75C7AEB52B6FAC8E26586566F990CB427F6104DDF2566
+3205287EB96F3FF4CBE170168CB43F883A15F798C6D0AB5C87B30CA9F981918D
+A865E6570BC16C75C80B72A3626D58417337B125FF482AEF33297B6633B733DE
+D243E72CFBBA03654956A78FB9BF6141DC9A3A5D6E660D01450A6148902646A4
+56096EFEDFCD9C6DF345793040DC9F8CC3F9257E42AD5E888BE985FA050DEE13
+C69E20377EF314EB70D58732617F2800A015924DC4374621ADD703E0C1E3D520
+5FAAD9DAAE69D898945C593A8EB94176A43E11CE25C755EF8AE0F36EF3AD1ED0
+E41D51E57914E25CE323EC4FF37813EF79A1E341E98FC0E4D30D6E35BD4EBA85
+AD5591ADD0623147309FD7E1844324A5AC7F6E54D7BDEA7D16B51366A489EA9B
+41581D59FE0F96E273440F33A92A85E9AE5684B3AA5A08B6BD87A79A744D6926
+524943EC41416DD1CEDCCAE4C3F91510A1B510A0156B687C95D4F67EBA059505
+03C829B1348F36C5BAEBE1ED4B9EC4C63DDA02F9E8793B5269E2435520B3BB53
+23EDD7EB001AFE5EFB90DA6876E4D7B39CF8943D627363A61091BD3F0F36BA7B
+2694225D1B040F156B3B04B165F826A1D7BC183978ACA115F0F81BF657A46380
+D034082AFE552EDF8E28775BB59B81F1B36B7E16CE57ACC7FFA13A23D038FADE
+7F9D26833EE2C86D8C937E60C44C5AD6D7C02FDCC6DA96039179A4E4283BA0F5
+0FA28A668A65270BB6C62A946B7399639BCC0E1AB4013C28ED1067A570925078
+82A99E7F9367FB74F25AB74D3142745480887900E30D4B2F427E1651313A5FE9
+A1E7124C54093993326DF6E48569A42A67C9525B695827BD8A70B4EF7901C668
+1D41DB4B2ED4CBEC347A6E90E75F2D7FD84804987B5B459D2925D1BF1E738A9A
+B121A36FE2C931A4DDF01138D116BAE58F4B201B36E198270D06E59B6E08C9E3
+18466D790E84262B4F7626996EF71021CD80CAAF1624C1CC72557B1B3F96C616
+0894105E095724B5C3297088BA4A14D46CD2B7900841FB8F9866903C495C38C8
+4A8B305DCCACFCA06C58EA962DE0AB00F11A0AF7C5BDE26F49927D0D638D36CF
+3367CE6EBBCD6243E378E783B61F968F1E7F58C97A1F03A9E7CDB88FDED075CA
+472520D5BF4A35244C3DFF8D2813E34E03412F3C308F277A0B28DAE4C4772821
+A434FDAA0206A235FD83C540EE06C31949D3F7F48BF654026DCE949E518512F8
+BCE17280BE104E8B66489EA49C7B3CDC8A2057B1F3DB6BF3F0C651FF464625AC
+EBE976E904992640AF13CDBAB97A6B2E7780AB4F8778FB5FCFCABC4E19F91605
+123A901B1E700B4A83FF67595918D334595EBE92999B4ECBA83523D478597F68
+945E02C38B2F2E840E64C34895A45BFD9B85007E8A230F996C955DBB9680EF5B
+9EE947E6A490732D1D0D4AD33FA98864DFD4707B32FD5D70BEF74A34F5402998
+06D751866DAB7CA213EA6C84C27BECDEB52736C28ADCDB0816A3F65725A17DAC
+9FE4B9D4B2BE6C3F944430E29CB850E321B1F073BFE5395B4B80B281D75CB058
+AD9E1569F4EA0C46C462E6C27C039CB1C1453B59B76D73B943168566176D9C33
+74059EB3575654058ACEA3BC9E0CF2C054F4194E309F2AC348252F1DB642A65B
+57E123054E8EC24E26EFDC2AAF65987205A2FE63A9DA8E30A3AC292CED39DEAE
+B011658D8EDE17ADB556BBF08422B5CBCDE3E480556FB42B95D837C2C44E3883
+6D50FEBC12C3FB7030652DF5C6F8AFFAED878A0A075FF7E024009E85BCC0A9A6
+DA7A8DDF16E2AB2799C27A05536B73996447FF8DC2701726682B52DEC9507AB4
+8337BA4D2C4281596CDF9BEDA2ACB02A242476F8C5EC47762BE1E54C0E69D86A
+2F0C0228253C1A66949290F695D46F4F2A46AEB30C5233B009E67EA531DF071F
+CD6F5C222BD18BB86C0605A299D00A5436D42D65A247682346BF033CA610BE35
+E141ACEE370BBD48B1FA8250FBD996959E5407711BE194A870CB334A0376FCFC
+67FEC3451FE636366BDD9860972C9E4DD3DB73FC8285FA5DB7317F4BEF834C93
+D6179BA99D61FAB2B37070448429BCD332B05E49B8FA3D852D630CD39E17012E
+ACF06CFFB9CA99937950D7BC6D448B978274B59A14E82D2705705A8F805E934C
+23EA34E3D212CE080493C4D05A25A814F63279F270CFEA483EDA0E50AF5C72A4
+5A89D2C08CF41C5D41E9ED29F879893B26B9C6F13BE91A12652B28566ECDA988
+B40C2C403B5DDF983669734F5C9CA04867AE41725B599C8974A69F0F0CA7CA3F
+0BED4C299F57026079A3EAB9FDA8A6468FD77E89E4E1CBB5E3388450D4E68943
+7BA91778FA6F614D92DCE7984DEEE890B721E91D6382595C6C004EFF098468C1
+D797AFBB27D53DF06C11B4643B9FF3D59A2CB7C4585C6678238AC1835EE24701
+298A98D99F05A64A7B4F4FE1D85F7058FEE44C1493682D5DAA4F8CDA6C089C7F
+96FC35F21B505FA0D05FA6AC283C7885A15EFB9A0C31F5802F4F7ED0A06CD12D
+21B1AC442EE1A40D964150E6A0AD9F9A2314483A8EC826E4DDE5FBC2BB496227
+70FF852AB8F0FD0DAB0863553AAEC4D6FE2D38A2D5804740CE839D2CB9B03DBD
+EBEF5F8ABB550D7574DD5495F64EBEF1192162F9C6D48FE4977E6F8FF1E533B5
+E5E26138D3A07BACF9D89875DCCA167B5949202AAC5299C3162EA2C83D05843B
+30611FE06F1AEDF677B1CDCB30ECADA2B80C551A188DCA9C57C1EBCDEE76DDFE
+08AAC4103BF045BB811BF5243C711AF0742FB2FA0BE4239C22F70CD76429AAFD
+5C92718CB7987D62E6A3CE3DE15F239CFC313373236082FA97196B77A5E5AB39
+22092749FA76CD01CA57379F0AB0E9F64426A82AEA5C8835CEABD6C3B1DD81D0
+25E070DF1FA9D41FB1F8CF1B5E99A74657C370F22EAAE33469FFA4470A60FC94
+F79B71E9CBCDEC846E9B59845D9ECEA6FD6A998F5AA01A884CB3AF98B135B027
+A3155F177C3669758F56D47AA7BC3F344B3BAC14D0C2283DD33B8F87FA3F52B7
+1414D424747672C58D87AFEA5E1D613F87280E4FED38E0236BBC14563726499C
+974B1E9A5419763165B378CC96DF48A715C72AF6271D01266F7F1507015620D8
+05123637E87313E672608C9668CD52D4B8DC228E500089F82E2EA8D370D5383F
+8A9DF62669A85E2C2D5B8B415F550131BC3C48262FCD6956094D83B94C239473
+585A3926DEC516E38AD39D22482DC9B5C8FF8873213F453BB56F3B3076046067
+E4A2CF85E54F0F15C1599A7B58360CF1A45DAA8F43A139B8A4E5D41DFACE5FAF
+C4F6F99A214B162CC36FD6D13A795C9626F008A2346C79519291A47BA797B1D8
+199D7B95E0EA86E8EFE76F9AEC48F06D565061B2CCF59DEC7435650D183ACA4A
+DEEB0E4F2E1EC092DE103FE4F5F5746255472E465F1A7578C1B04CB61BAB2A1C
+40560893723689AFDDE3FE9F4A55908E26140AF801E1B9CC925BD3E6280B823E
+C25D9D5AD760A624A84C1785A0DDE8997F81F84743C290985F535239DE0111F2
+99F9EC268912310C6A9202CF5D905EF42842AD29E4C3A7DA12DF2E7B63B19C28
+B42D8F6E105F3AEDE58C19FB9128F877622F7624D2B79B2DA091141DBC40BA79
+BEFDA4BD015F797570FC93489906B5B0A62372E71421EDDA8AD8B1D503465E86
+E26A6DE9D8C4D353AE32A3BAF3369570A48FE3CF941CF84C5DD5FC85A6D8F4D7
+F48042EC40104D9BB6FA0BEC4E43B91CA7CF71E156BF265ACE86EBB3EF52D281
+FE835223ECCE693E94FBD964C53A9E07FBF26252C13450545451C1D4EAD5655D
+ED1206A0174A251738AA7ADBF85CB37BE454461C7151D9D310E17CB20F7BB0E1
+268C4631E1A156CE5CCBE974CE237300E19CEE9700250B2572D184EC43D653FC
+3FA358F9962C2633A0B96E912C9CEB406D5D16DC2329A8D736BE07FF48BB8A03
+19C53500E4DE79BC16EC7AC06DABFAD77CE1787677B3911D73EA4379C3A5E102
+39660863094DBDAD52747CC712C0D4D257C05718742DB59F05C9D80E46066C0F
+92543DBC93DA09172BAC57BF982A861D208754ABB92C85F18DC6E2AF4416D426
+421163D92A1DE96D63A17CB9BC57C9773EAB3C57E2D001AD2C90C4D943D52441
+859D4CEFEF24345C55685E82A57B41975470D3DCFE7426D2EF64F3C073D16E80
+B44127E808C26E7FED75CD24AF1D84913879B71BF2253D7467A8859AD5ED2788
+B030EFDA426509C965ED3A9AC9D95E5DAC1C6157F8D32F6543FD33AC3A068A4A
+29A9BD993335807835D27A67A373297130FEA95C2807A19718B7F0718836AB71
+5226CB826BB09CC39ABF6E7ED097E8D66E00927A2965970FD1CF333CD617DEFA
+F4AF7DB7612559E63A7A6010D584E272818C5C8B745559CB509CBA0F1A8FA225
+2C322DBED338C08B19CCE3FF13834F68E9BF552D61E4BDDC862E898257674E16
+B4FECFA24F1B184B481397C69D46954F224E2406EE75D348BB9B32121B6C8EE3
+61D9D619F1C1B4929BEB2D737DC2E603030A4364F6C9D5218847D23F346E5431
+F8EBB73E317332B658C9B041FBDC8EC69814A26E03EEF802F86904323AA2A836
+1B5B15ABC081E6C6D6B3D8C005D7F601330ECA34EAA7D7BE3F5D971ECDA35418
+DC29A0605A591AFE68E62E2A64D1224A2319ECC98B9BA67C3D1979D70998F768
+BA011E21040C828EAB1BFEE70B92E2F24C30C523DCFAFBC2BD5E6E6272E8F494
+BEDFCB05B79C19491FB8637F2C454C9813D704E3D03FBA8601F95BBCB99D95F8
+7E4B4EF1B1086FD47C0F1F76BD8B7AF66E3BBF4A1EB454C5AC86572156815541
+3D026B49430AC3B2929669537C5D63A39832083B0AFB89884F684DB31B5A817B
+C043D6D4B23028A09AFFBC0A967054DA5638CF9A9F5B41EF52A7B48D84DCF239
+9A466B90CBD9BDD6FEBA609A3E7664A611A7047F6B68B07FAD7956F3B9F1A59F
+A6C2EE5BF51A02FF5B578B9E914723CDF1E5AE7773897126085E34E586E05AEC
+6D07CC10EC5B7A4728A1316F607EFD0FAE8F7B31C89FDCFFD22797BE968B11EF
+B56CF7E89A80B023DAD5DBC7B15D0A08D9B5625A62FCEF86F713E7FFDB479887
+A1215D9DA2C064C5332C4A7462635FD09CC026F47F901480E10E5AC6CCE1C8EF
+894902EBA0ED9FC55632C8167D073F64AA6C2C0B8F40D38B8669D64E6F58C460
+1E8CA741C92988CD29CDB5B2C85E737AFE4FCCD9D900886A3560E972C9E237CA
+9BC756688B48CA42D5CB3307EA4A832285E3EAE7E6D4A4545C753F3DBBEC0697
+3264328753B8AACCEEF355E38B7CC84CC4811CEB834BC9533D12B3A8AE18B0B6
+85CF06D4300C7FC18B9528745A65FADE21967596125CEDC3BCA795647717BCA2
+BCD8F30E0F425F35CE8EB9CBC4E0B8F23B27174137EC7A66BF058E925238969B
+E364DCAA8DD633966492F4826A4A30E0AD6FA27C4918459C8CBF4BF30C0EF046
+7476227C3D5A8149B92536EEF75B049744D9619D5CCD7BD473565E010BD89ECB
+4F5434AD4B81877B4A242ED3842B4FBB3C5145D589FC44446FB6960DA81B3B9E
+04EC5BAE4ACB1890ADA715870ED843407D9283E379A6EBBD62B7518A136A9011
+5F0D2C23973CD7797A40CC5991C888011BE932410AA6550923414ADBB1050791
+2079B733D5B53AB060CF867D91236B3A1E00BF09CA07C30E1A1F7537FA196DD1
+E9AC4CAD995F5314DC4BFAC2EDDE81FCA325BEFA587986986E21AFFFBCCD52FC
+DB16CAE8031E74C5E7892A6B49D8D09D10D23534AD6402C1D1BD97A3FFDE2DC6
+419916A3C41D5039F39FE5599C5E25A779D073C75B814E97510C7B3BEC6A19C5
+8766FFF7BBAF976393C985EA6BF0D02BCF5DAD545FB74D29B728A697454F0888
+CB7ED67356C7CACCF2D37F622DB52115895BE68BDD254D77C12CC8BC929816A2
+55877F8425C5B282064F98010B75F5EFAACFFCEB25D4362313FCDC1BDFFF5BD3
+9855FCB6F5364DB3627961D98D65E3F3A4ACA15BEAEA029F883AE46E9A1C9206
+277AB80C4463B4CBE3E30A0EF04152911064E5E03524DD2764A5D6CBFB03C209
+904DC7B724ED51873D8FFF08F2C18792A02BA4610A5B24A9B5373E9A96BBA0A8
+74659212BB9E9AAF246A6193CA3B20B21FBFB800C1E6B743278BE6D9CCDEF9BA
+CDF460D85185982443CE5152EFC9D9D01D31C4086982BF6C08B372D3983A
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -2256,513 +1915,285 @@
 0000000000000000000000000000000000000000000000000000000000000000
 cleartomark
 %%EndFont 
-%%BeginFont: CMTI9
-%!PS-AdobeFont-1.1: CMTI9 1.0
-%%CreationDate: 1991 Aug 18 21:08:07
+%%BeginFont: CMBX10
+%!PS-AdobeFont-1.1: CMBX10 1.00B
+%%CreationDate: 1992 Feb 19 19:54:06
 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
 11 dict begin
 /FontInfo 7 dict dup begin
-/version (1.0) readonly def
+/version (1.00B) readonly def
 /Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
-/FullName (CMTI9) readonly def
+/FullName (CMBX10) readonly def
 /FamilyName (Computer Modern) readonly def
-/Weight (Medium) readonly def
-/ItalicAngle -14.04 def
+/Weight (Bold) readonly def
+/ItalicAngle 0 def
 /isFixedPitch false def
 end readonly def
-/FontName /CMTI9 def
+/FontName /CMBX10 def
 /PaintType 0 def
 /FontType 1 def
 /FontMatrix [0.001 0 0 0.001 0 0] readonly def
 /Encoding 256 array
 0 1 255 {1 index exch /.notdef put} for
 dup 12 /fi put
-dup 39 /quoteright put
-dup 40 /parenleft put
-dup 41 /parenright put
-dup 44 /comma put
-dup 45 /hyphen put
 dup 46 /period put
-dup 48 /zero put
 dup 49 /one put
 dup 50 /two put
+dup 51 /three put
+dup 52 /four put
 dup 53 /five put
-dup 54 /six put
-dup 55 /seven put
-dup 56 /eight put
-dup 57 /nine put
-dup 58 /colon put
 dup 65 /A put
-dup 66 /B put
-dup 67 /C put
 dup 68 /D put
-dup 69 /E put
 dup 70 /F put
 dup 71 /G put
-dup 72 /H put
-dup 73 /I put
-dup 74 /J put
-dup 75 /K put
-dup 76 /L put
-dup 77 /M put
-dup 78 /N put
 dup 79 /O put
-dup 80 /P put
-dup 82 /R put
 dup 83 /S put
 dup 84 /T put
-dup 85 /U put
-dup 87 /W put
-dup 88 /X put
-dup 89 /Y put
 dup 97 /a put
 dup 98 /b put
 dup 99 /c put
 dup 100 /d put
 dup 101 /e put
-dup 102 /f put
 dup 103 /g put
-dup 104 /h put
 dup 105 /i put
 dup 107 /k put
 dup 108 /l put
 dup 109 /m put
 dup 110 /n put
 dup 111 /o put
-dup 112 /p put
 dup 114 /r put
 dup 115 /s put
 dup 116 /t put
 dup 117 /u put
 dup 118 /v put
 dup 119 /w put
-dup 120 /x put
 dup 121 /y put
-dup 123 /endash put
-dup 124 /emdash put
 readonly def
-/FontBBox{-35 -250 1148 750}readonly def
+/FontBBox{-301 -250 1164 946}readonly def
 currentdict end
 currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
-3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
-532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
-B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
-986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
-D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
-9E3948FFB3DF7BFF10C9BDA4EFE5F68A8CB1526990D1357AE6D2F7C2D2EF8496
-4E47B39E6712EB8908A3265E5FAB40567E866C244814449F1E993AAB422C3F1D
-DFA8C7118584F2E5197FD4BFA3A8AE9E953C6CD4672C0FF51E41C3A919749C1A
-F06650DF4C5E17492164BDBCDF22609A74BFA7F69960A64B9F949FFC2A807458
-8579366C4F41BDE1FDFBCC4845FA19BBB6963D65EE8532549274BAEBDFF24FA6
-03235D1BE37C06B1938AF369DA75BF38DDBC87A1FF445EAA16E1895ABE9506B9
-211955753E447865D33CEF007391D2666A046277A30A49804FFCED3FEA5EB2C3
-E52EE14A9F75241EA10C91974CDA6236EB840FD44D6DDE4D9B3266C3B99BD38B
-D835BCA8CB819C073480FB972CC028D218F6A1D344CE1B63F4FBF2C826F412E1
-6E0B05A26125865A14FD7B7030B478BB8BC6BC395335C3BA940E1C348267F4F9
-0AF97BBEE253511940F1048E175D3569F7D05A28851B6F50765FEB6C9654FEDC
-1BF52F535DB5BB90C1BD5D2EBF75E0AEBE82B20507F3C28A03746781018D4EB2
-298E4F2C27ACF73FA73EBE43F014BB575AAD516C0407B29E1653375135ECB74D
-C91372F06FA8EF37C31AF3FA48AE65318EAA6C34830A5377ABB2DFA5DA53A574
-4266FD34C25C8025FD7DD45F44301DCF03F51335198F9EE71CBD72BB906F445D
-EE6AFBA2FA06A0A045D56CDE98A6F0DE807D81F26D017B74D1C7A5AE254B7705
-7D96CFB3C342DD38DB5730ED913639C2BF3CEBFA6F3D493DCE5F8218F8BD8035
-9E6CDFB95628F7198CFA2EBDE1905F051BFC4F835C5A787E3B43EAD947EC893D
-9D1B04A9A7EE7CF3E02A58BB0867AA7C77F30CFEBCB4B3E6EC68F6B234FB6B26
-7A9D88A3CBF7A29ADC0255F05EF984B70F4589575AAAAA34AAC95B51EF60F798
-266EE3AEE3C7D9C29FCCBB1DED25CB416FEDD546C0B2F17B8277F8EBDFB759EB
-C98ADDE9CF32EB93755AABA5B5B8849A0BD23CF09A77F510B78A5AF9AE24EE00
-1C04E66B333158917B89ABACAB10189092A229B5B88F742FF334D0F149DD1FA3
-E56403C4FA9D5DFC369AD33CBBDC33CFD08EE3A1F9923B93882A17C6F1CA57CD
-5F9A4675E561C99E51754A47580185D96DDC40FE6FCD6D887BF275CEF0C95840
-B67077687AFDEFCDA136BF7A36667BB3C192D5B99BC4B6E6CAA10AD665A546AE
-8F852D4F7537EEDD9F40BFBBBCB8704E7FF93431B1D1567F43F3F76578BBA0CB
-405AAC0FA12A1822671615E54D131C732C17D874257513FC96C26DC3CC8ABE8D
-5435D01908B7357FA4C3C2723C7273E7276015BC127380088984B935400812CB
-F14A7C5215655DF2FDFF76B81FBEE3A69138ABF20821BE1E8D63899D0B726EFD
-2FD03B121142997D2D65486902030B8FDF6817DFD3E5779BC64FCDAD11D50D9D
-CEF9288E1C1A3D552E681D87BC445942391726E9A68B283F1E169BEC3C911326
-8693B2F25850E2572BF747D50C6C64E89A86E5BD8192A4091F629123B15456BD
-61BB3C785D74FCB8338354A4035B13AD5F8E6C89F9B44B476C83015FD0E3BFA5
-B68B9A94F977038FF1F7FC7E36C15C6A606B5EF5E0B3AD4717F1687195C4B3A4
-A29CB45AB2005C11F552E69057FA872B89397E32D9EC8E2979CC310304A6AEB4
-F8DF102B1AA025133C08D6EC6EAC827E544C1C7A54C7CCCFF286064670BF9C27
-BAF6BDA6E3F3AA032517F517B82F65C7B8E64D3995A693C22EA843D0CAC2A695
-D7D8236C1555E42E666B91399CE7B475D03277CAD7C72731737E4BB42C089B00
-728A276C6C0E19C7F71A076007C5397CD5448B7E95E6EB55AE89E9E68EC0FF65
-D3D3524CAD38DC3CD82F0E0DAA990079A01590045FA420201013D8528770B11B
-A0DACBF6E56E83FFE6F9DCB683ADAE65C1B9CF7340E1845A8233CCF958340F26
-1044170955D0CDF84550DB03821661E880F5F6BDE8E2E797072CD19AD01F07C9
-F6213F37C4301D85B57733E4052071D826DF846E9DCE6321A10FBDAE5DB6CD94
-A09F9429587CD56AA4FCEE785AD5DB80EB3ACDEFCDA074BF3554293876A83C6C
-150AD0F99DAB4D0CDF2BF8D1EC26B1EBDE157B6E9C21F95CE060F4BC15931CA2
-08687CF7B48B4D990031704415C9BC88023448597CF400A84BE2FEC2CC44B5CF
-D554C9A684778770DE160FCB9D3ED9183402B8D613AF99705E35A3D39F9D2A01
-36B328AA1047E89DD4C91DA4289BFACA07F07018C5652D8407D3BC853C58F288
-0B7830DC58CFFFB33C7B8AFED7435A1E54463A781256A51EA8B8644B7584C097
-DDB452A3A0F3D8B6F3CB02ECFDBEEA6A5498F49F00788EC83128EEA678D72680
-1132BB5C193E4E4F0BEFA9A49F9E3A7A6D62D58AE7B6762E11509EA6656F14AB
-A4C7C5E9B6C1830E802A2853ACD9C000993AF52BB477D166EBF0A0FEE617C6F5
-DEEE23D1C842EAFD3D1CB581EF41507FF155ED016FA483A3377EC9BE8A245BD5
-05D59CABE5713212C634CAF2A58AE773F03FD2C02692E24A525A3525F082A71E
-5CCB186381605FD97C98246CC09DAC1A5A3E5B9AEAEA913D10DD9D205DF3D1D3
-F7BCDAA555E66E8E11576724B09A620F8B33D4A85E3067DE251C6436F68B639B
-6C6F1EDF31D9791F1B2043EF5044F8F650EF3FB57E1E9D7DD0AE1C55B507C332
-5297347C64BB0DDFF423AA6282B6334C4ADEA8038DB4FC631826F9B1FBA50530
-88419C09D29BF5AED1FE9AF25D9AA264272F433A781F132045F1D783EFA52CF4
-5CCA7661887CB3C44AAB5AE6020A9A246A6D0CF9A1306AAC5A40FE899CD682CB
-8194DB4CFE55149574789CB97EEDE5E645990FD152ABB662BCDCBB9B4CFD3396
-9BDFE5EAD9FEF281F789207F18F1A04317A0941E69D60211C7B0B4A5C0C362A0
-693EEBD10595CDEE6D9417CC21706A495BD54CCE03D24FC6804F3320E806F842
-D4FAFFB332030688AA63D646D75B56DA1C98134059EE7095B2CD86F079E589E3
-97C0338AF7088484CA117F13F78875DCA175915A3A4DEE77E03C4451E434E6B8
-E499FD0DC9EDA625F10177957FF0398E3331FB2A1F9BBC67AE547C2773A25727
-CFD0DB446F99A6B40B377D6AF928383521D32C4DCF9B1F99ED2005555CABA9E9
-7249A057C2CBB3026982FF0C424286922DE75959AF09A8695206FD400C669501
-38BF8F179665200420884C03E1EED0E8A1FAECAB89C5FBED9B2B635D53BD52FE
-581FEF76195DE41E781A7233FFC201BC98BA2484CA045AD690AA057CCCE05CBD
-645676003EF72C30DEFFBBCC7E17381746D85144EACC20D05732A8DDD6F46351
-6FEB249E06FB25DA530764777F2DEE8479A5F2CCE546302432D87D9D40C3A7C2
-2D5D2333F246EC7BC30E94EC4C4F6BE152B17D4F5A409FAED0EE04AA27DE47D8
-6667C9B1A396B5781BD44E5E26C1241B060C64FEE30EFBE83497157A98B1AD84
-4CDD77E2B6333B43C2F9CC7F2D148EA5703FEA4807641151CC2874760224B961
-044DC9FEE7D76BE5A4C788B49ACEBD0A01D1F228AD363B9C0A93AAF04DC5DBA0
-64A05712958931A87DEE3E5395E5BC1BFB13789C920BA4AB7F813B3BFC53F6FC
-0A38CC11493C471C92443277F56D93809D30FA72BEFB78F2DF7AFB0965136BC0
-7FF33C28A67797E29FEAABBEEE4B6B14D81A3640C0FEDBC25386D948515CB5D0
-4F2DF6640314985518EE3A4290CA4D4B276F159A2DC8EAD4210C876B85032EEE
-4F81488778CCC76CAC911CD23036B6CC5012E06EF05ED96D507CD99B8ABE0E94
-668377EAB63518E5C5C9FF9DD6A6147F50DB07A3106FFC7A9485B5160605BFBD
-20E76FD306EFA357E09EAB8DB186A6A2172E4182B7FE0D668B43AED61EAB8133
-D0F62F4B729E977994B95035C8767C497318ACF885541D892C8871FAE43A893E
-3E09DD65A9C2241624F0762C24F143B25C5794EB58B6F26A0E70C5FEB60DBB24
-D3F2E326A98CB1878ADFE51DDDEE8AC8C18E3219C8B2DABB3A42AD6D6B39798D
-9777DA03556FA056F1619A0F826501F0FC3147D0E87309D67121D3486DF06394
-0AF7A369649D43D154E5277B97780BF8893EDCE3701C08C6109CA8480E0E0215
-E2E651DDA10353584F4F871788EBFDED92661BC909B0798559B938D8B083CD82
-EC33FDED0C449D50CC844E0F58D947611CA0F7C03AABF3B49E962F3AEA74DE78
-152E0F4CB0B908D4982C1707CBBBB3D1411351A66CC5C70D18A0EE8C7CA81A3B
-32A5DB830FEB66F3E37A1A25AE7D10BE36E474FA7BFA43976E04B28CBF2F42EF
-470846905B2B7A85BC656E1103CD4DEA742FAF747FC9DBFF18D6952A3A37EBA4
-F74C76FE738F8949B5E38B3BD982BBABD1C1F1350DBC1C5AEBAD5667380EC3D8
-3B0467859B64F1BF30A3B66E229D67F3E3EED939B363AD0E7B7184FB3E0994F1
-2CC7AFA7B5A83BBBD1D64332687F6CBB355EDAC9005CD28827A07EFFEE4E5C29
-E72100B20466662C9AB77B429586C543A838A77CF69CC54F522EC10484318544
-38F322D34E60496A61750EC97C84D9D9A00A0893976A308F665A5EEB1C3E4E04
-5AFF10FEDA609ADC6D716888435D70BCBADAC389201D207E7A6773B217B2E97C
-5FB223459AF80C0ABF8C6B9C4FBB294B10E3AB41CC8F75B0E701E7E40D283497
-508047E3469E77DE06144CD095ACE824CBFC3A1E9D2A7D6E2599F0B3E6DC88AC
-A262CD492073B7A78461E17DBF71AE7F5E400321CD15A4CA91CEDE8BC813018D
-6D8443AB2359FEF0711ACAD40CAA7C07754D2A3C99A74F463F9FCB685A6ED51D
-A715A38F961C663B175DCD2F5C66A3AC1089E833F0E018601DF3DC03AAF932FA
-D06A7497B0BFD94282DE23A99AB18DCFC648DD4A4CD0FF356E3DBCF18A2D1820
-C1B9E98D3F95FD16F2974EED5EAFD2C921F4194ED1CEB7C6B1FB9CA33F3BBAE0
-72823A345849C534D1F4324D999A8494D8DBAC0EA8A510739D5C7D7B78D11C10
-15CB951A8724EF07096F6362C24111B0E864CF97CC9E856D00D145C7199BE346
-A0B641FBD4E6B118819129979AC4F9AC9CA1822C06D3BE8E314CF7E07D86D90E
-C60077F9867C3BBC3C8575AD9FD2E1936AEAFDDDD45964C918A11EAE97FF3E9E
-CB53EF3B9140C79A45D735C074C03472C14935522EADC9928241584B0886E1A3
-95BC94B5E8B26FE3B5EC44B68E5B6CCA8122B7C8C29A8E86384CE43DD3F69790
-D164896242ECF9EC682C496A75D8007577EC29297D34FC729FF4F0EE70221C65
-FEBBFC3B2E793F6CAFE7C2CD89901265CEB98A83749B964840E70CBADD300150
-E00A3D02D0FC40504A5F5A01FB5F12A180BD6147C72F22DDB664FA19A755CBDD
-FD673161820E6A319FE63A27EC6BE317C3ED518D0BF0A12ACCAA630A896B0CBD
-E8D1876DC3FC880BB4B43D79C4244CBCA5C3175F25D95FF7462AB386E7257596
-EBD2BCE27935672C0129CFE752AC052F14ECECC486CC9FA557D4CFBB59F2D1EB
-4662A0C2089DB7DC3BCC119D01B5DCEDEDA6CD223AF22076F4E8B3BC0F7FE10B
-D825EA600682C75169E293EB7140943981BA0CC03E7787E2890915BAA72FE8B1
-DD0B73CD4444E51A2B40D3418D91A115FD9FEF52B9D0845034359AC988BE5D58
-9F988B06A57D1E17FAE738B8D3CA0C75121D470AA6DB6DB90FC29241544BEF68
-BC63C2E01A0B1358D7ABC862C29A5B7E43FE05E9735E4DA8D4DB70C1026FB84D
-9095AC2112AEFE4D8E33934577B5CE4AF2C9C6B5CB8223AC8DE444519456B96A
-449FFB02A3D184EA3B4FA98067CC81019E0A49307CF6DF45F32AF095C2CEB851
-8713ECF4953E24F74CE60A04BAF520435930DC5B84B467D3855562DC3182D702
-6ADC3B2BE875959C30CBB723A56799977847F093EDF25063045DA69877473A16
-9078057E8A9184DDA3B4B828F4D2E2C3A235C2125F465F7111624D7160E03A48
-92C8317306ED00D0BCF234416DDC10B92FFEBBCF876F428BE57C2876F7AA2772
-8B66F1B2233E4E6842737475DD47C7DDAD4F2126387F4411FB841BC86C4219AA
-79340EFCF93D82E5AC211F49341E598776943AFD1A6DC1385D997430DA4C6F69
-C58410F8DB9CBBB9D39CEEFDC03BEAB1CC9DF7CDFD34A246407F9A327B290A0B
-627488E6C23F13F93BE9584B1596ABCC57C96BFC5606119902220CBE7E363ABB
-FFFE71197C3BFD3BE299A6703D90BB2840EB6C2423CE10AA5F15E97ADD8E030C
-B158A140064AA2FC0016F1F4CC7FD674755DCB2EC76A60DC577D0AC5CBAD7106
-34DC283DA742992063F6B70ACE8DB7DB59DF2F67F4EAEAA58AA7BB617DF93305
-1AAAB4A71AC48B7C0B90F1B5BE1B6E7063924DABDD07D9ED4821B4E9F3B789F8
-12A26DFF28E0371C51D7DFE0E819EEDCB604AB1B9C4AC4194A842DA405D67C9F
-8F95CD2E47C16E39D581AC17D5CD4530DDB30B7E405318DBD195995316ED89A3
-A8D088774064A77C4527B310C53830791A5DBC7494EB4C25AD3E36C0543CB854
-4EBD6FA80DEA8BCCE84AD5988F8198F918EC447D0422745EB58EB31201E7EEB8
-4BE8B801DA33C8C8B8741467151FDF745BBDF140F9102E2ABAF4C58C5AE917C6
-1BBD951539886A9B5BFB93DCAB6BD8379AA68B1C1708FE186C4C92BF6E3D6C5D
-7EFF665EB34B4068D0E8F95770EEBD6EF735D2A3A2297F5D94A52EADB1937BB5
-3037EAEC543150BDA27BF451F7D127F054FEA3A062D58F2368FF6AC658A22A45
-9DF637908FFE02800BC6F4333800541544CFE09E48270EB034FEFA5AD494BD94
-8D48EE7E4082C64204FD57F946D43CD68B270D5D784257C2439B4CFF6D394183
-B9D734A09BBCE8ADBBC427894FD02BA27FE1EA728A97E2D468E2A6169220441D
-231E6FF4F112D453353607432738835E8C3A1265A6C71C802E076A594484543A
-6FA5E6BEAB49104C616812F8A897848969222920B1E3A39F42A3C25DC710D702
-873F82FF81C785ED49C70B2E5F57328F85EAF818588597A99C721CEDFBD80BAD
-92D0C48F0C0A1E95D195049F92307BB378D1E62E363F40410C824F745A84BC6C
-2D076550A4228BD807C7F5148148B30E000FFDC9A4023AB9BFE5D56B643F18AC
-CC69F9B1BF225AECD4DD731089D8AB26D25EB9CC943E4FBD2A651F88DF540814
-F4FB019A82C566C134492CAFBF4934F23CFA7D228EE4022F10C412AA7EF8F368
-B22A0E2D7DEEDA49ABEA5A0120DEEE09D05C073958CCCC351785618905723CB6
-CDF67C0C7F76A6442A3AEEFFD47F45D9C6FE819AB1D8DA16DF4259CFD401B008
-88135A01760A32BFFF064FF58433F07C9B4200F592DEE9FA3379280BD7223579
-A0B7A3BB31E866859BD09BAFEB760820B27625D3FAFD83D68FE80858531105DA
-D02BD6BE502DDB3F9A36963D907AC1F4A439E9901721E1011354486D1C0D864A
-1214C850885F1AF567FE84F69721649230F4118345350BA1C467EB7214A97D78
-DC7F02001E6EEB66C4B29121723533350CABFED75067831701AE0C3824CCB802
-7114831200DD4DE4E9987AB06D2DF07BEE3EA8E4DEEB064621DA3434A1C8239E
-398ECACD068ABA4FC203E68DBF6B3763D3D553F9A1B0C0F4B20C6ECB764A3AA5
-49ECC50816E83DE33EE21176261B17B7E9596405F30DC3B276723E078D38C49F
-41D9D0A71E34A31C0409982166C5BE95B67E4CD6D6FD70F4C70FC47895F25763
-655C54F34D7DA7C3CFCEAB8E46CFA4FCAEA8269B99747061E63589D64FA14351
-5DBC747252F1D265EEF8007097D61B7FD1D04E86ABC245F4A755A63C3845CF23
-A21B61CCA81FEBEDC93BBD228CFE305C077DA5BF7E748470D49CFBBBA9EFF69D
-F931E93CA1939023AD8C1F70A8018D1F1AB30D6FBB9C112FA3E0F600A9B52DF6
-64850F7EE371BC2603EBCC7071D37909D10EB378D742A911DAE383D353FEB606
-5BE5B213A1ED2641A1E529E655705CB925714A225267AF3C198CF07FE5C3A375
-4BAEB5B0D828920E5C30E956DC1EF23B07BDDD11DB232CF40B9B075697493688
-1DF4EC5FF2254F3FA8694B5FC837CE471518E9E575AE94B784ED9E1B7B446826
-FE86ED65AC46303B83FAD01A4DAD37F6F34F26157B39626B574BA38CD50E4194
-A44BD7B6EC8686317993D613A855CC9EEB57A72D3242DB07BF301D3CF80D87A6
-054DE08F43B97B6FEC3A1BF6BF5F47DE5F94C923FDE7B37C10C034C4AFEE5CE4
-3E55CC23A572EF3799693BFA7B939B1474784FDDC0FC7680431AC79F5AE725FB
-226D796F62EAD3B93149847DC9FB9AA305B2EC9A2D864E65A42611F776282ADA
-60530142CD7B549C7221BC673297152A686885FB0DCCAD13B6135ED742C793DC
-6575877DA9DF7515809C264D2D602248902081AEA512477B373D148120154073
-AAEAF3A89E9C861601C4982664734445D867F42A9112A9E047C1CCB9251E2AE9
-687634B61951F9976BCC33428D514B19F89195694BD77D1EC446BC2C7BF3AABB
-A10D55C8CB0793D1A6DF3E5A9C75F2A296B53B7E00C1E9F825D6332DAC1842FC
-33FA0F043F8EF2EEAD453A18D971E649B009C18D3539FCCEE17DCBE93DE720E7
-5A7F89F8898E00B979C1924F8F4A0FC93B5EE80161BD9C6719AB273EA856FCE8
-B4ABD8CEC864F3F9F5558EEE5E738D923C6D4316A33220E45E34273F5754C1D5
-268B62884204A607341153D5DD6AF7EDFF51DBDB0D36A031C657A6B81B1A7CF2
-09B72C5DBDA8529772155B276AEE1E99285676B1F53F1F79DDE47DAAD49EC5D9
-6A37667E3227EB0DAF8CBB20630C34277AC17C2F42869D9C11B8BC36E997B05D
-4B9EA7C642D723976E1D9A2DED515B133B5A8F4AAB3D0B4D071CC7A28B87B8C4
-E12ABBCBD42F1D90AB730DD93F5BA5ED4B467F327B8DE8ECF0533796B12EFC33
-A79908B40573403F7025E4816EEA83BCA7088BB0B7400BAA2165695551BCBB0F
-491AB2171D86A9B7094D7548D296108D0D36D7B61EC2D515CFBFDEE3CEB084CC
-B885A10C48C87EC74B7996EB81EBCA1D19BBA3DB2B52CB06C408621FC1F82379
-A99B6F6201CFA73EAB55490D9F39B40DD1399013D872B23DA14E1EBE4AB903B1
-6B16A3E08BB2BF34197B9AB741617333257A617310BF5499AB9263EDF7EC6A21
-C358C2D645F3B3737A625D211A23ACD5A907BC63E406A670B84D43FE67375A02
-3BFB87E71178BA31B867BAD8C2AD15205F2007644D63062FE9ECD5DD655E2F4D
-39F602666D5AAD6F2C4FF835784EA45326AE430E94FE27F0DF88B6E969E82EA8
-3D5089560640BE70827C5D4FBE7F303DD724910801D0E51CBC7D90EAC32CEA64
-C1D81CE238F5B395B3B56E4ABFA671263859718B623823D24CA10C1DBF3FFF24
-49FA8F2F32B323D06BB27288E755A519AB6D35149882A625084772C82291CB6C
-9AE34D30B73F8897B6EF45BBC3AC35E246FDAF40B215808131D6A5DCB67C5503
-57E51F381836ADA6B41FB62C31CFC4AB2DE8BA39A9E3B866E52298305B40BC31
-C97358AC99943E3174D60E49D21E34FB919B06DCC1F42947EA24930C471311A9
-680E2EF190F916AA00180BE239257405A05EDBE19AC282C0210FE7B5D81ACE13
-93982E13E00BA23336485FA4B2CCE13362D0C7F65CC2C99F9A82A945EB67A4D0
-0698BD2B260F7DD40D30D13A40FC475D2E3A6EDCE1EC1AF3CB2D08D1B91D5878
-67ABD580208E3EDD86F23F4EBBC21368D46DA03F8A21C8D19231279F89360AA3
-C3FF63D913C4AE9CFD9DA3922D122DEB5122F2F04C01C789A319203072F1A189
-8F33A82A58A6C0D42F106D2DEF8B69E59E7D41EE4272D6A4C221CC07BCBAD3FC
-6F889DF510A8958E1C2437155E5CAF4DB42BF86C74F3556D7E4898E3B21FFA99
-D017BFC301607ABBA62B99A1C942DEDE9DDBBBB6EB87E753548F99C4ADAFCCB6
-9FD8E8B0E77FA90883ECAE836ED2A1A9FBD8D0914F6D827F9599E6C26C315985
-4C12083DB8BF5252E36110807567989B7138DF620A102E96224775C2CC42A6BC
-18B3F8060903C47FD3BE4C0A9F188DD26977DD5CCFEE61C6733C17D033791EB3
-2DC97C64A58FF999DC9513FE8EE2C8C0216EBDE566A9AA7EF04FFC8D4F1FA975
-AFBC039F54369DF007CAA6ECD84055AAC5C534AB84E4DA34E804F3EC4D631198
-474354CACA2B3919A7E2536147549D6422B5C8FB29AE315FBD94D5A20F64FB39
-C562FEC02E0877A9CFD5D1A1EDFA73B790C035F1510C2EE179652EF35F78EEE9
-11388518E7D3D732EFBC05B029DBB996432987A2FB0696BA515CACF806AA5431
-802C9C4DE23AFE8351652C2785A557C33E62148327E0F236235C5743719657ED
-3B6B2D88361EFDCE0917D9B0AE13F77FC602FAB7CEB02FD42B2AA54F56DB0CCF
-867A1BF0788E02D3263E928CDFAD1EBEEE058657972CD0F35615B7C6747E30BB
-4A441306FD5212D52149D161AF468A9F8A530161770D7D8F26B4EBA7EC934B9E
-73652293659E8958AF34EE1AF0A8B9318EFDE5510FBC8EF4B6F368995C1B9FA1
-B133343C2877283BC02818F9F05DF97A895AD968E72EBFCCB891311C1AA4F4CE
-BA1D17C4B3D22E6C9F198952FA013F921B65853FBBABD1CA82AB0E063C040FF1
-DB4D7B590A682350E183C9A797537049A1C0171EF85A331A180E18C949AC8DA9
-715DE217488AC59D6C1F3243DD9C020C30D93400F8F1CE419F28B125C3DD912E
-50A6FB610E3411908DED6540943FBF23FA73929CD549B7DAAEF4B7C99E12F194
-2B7756531CAD917881F5F2A0846944188BBDBD17E9B793883419729847E32027
-360284F7BE71A08DD7FFF9F493A901D993E65F64DC49DD5E1F68F09DB9AA83AE
-2BF61D7EF4F207AA3EFB48AF3827FFAF4CE782128C3F38D5205ED3BD3F73563E
-45366240D027B147E85659B157FC352035D80740E8CB6AA91DE19C51C28CAB49
-E161811BE844E339EB5A0D639C550D246047D5503CF0C292B39D60342839A492
-C17A0DAA977155C77CE37A58A9E4CB23197AC74974CF09866AFD80F15A267DC2
-A9FA7B2756F051F8D1AF60BAEFDD25F4B48BA39404D9A622605D4CDC129990B2
-F35A87B007BD55D0291E6519E55C50E347932820396AEEB878C109B4D5285C67
-4F6F803550406F8E941D0AE84077DDF44E337E53FD4B7D61127465E079EC7FB6
-2E2E9E3BE964CF4DEFE4A8593BD36B033AB8A3403EFA0D242D1802CFAC4CD4D2
-19ACCC1225E688AD2384FD6770BE656942C99FBF60BFB8A8924E3828EA9ABFDC
-FE86FEE391B9E831712D774ED8BE9D04636C05BCD079FCEB576F77B0657AD548
-76375C3E41F09EF3B31273F3C0EF72323E53AAB591C496D7D0B3CE551C76CD1A
-4899F7FF90C04DB3CB7B125064EC44ED35B014CE8970F0A2DFFA3331BF11BF0B
-15A40AA1F23E3AA8B87552BAC1FF85F1D6452E8B95E191459E87D7E75999645D
-72114CDA06025257AA41FF64524EBC1C5E8CFB02839F18131E3594408770A77B
-28F1CA19E5BD54005EC680F3C482602BF57FC2C4C380B200EA39739A60EF8E33
-30581945694D0E3F79771DF0773D6E86B1F6F6F606D64A67D77707F9A46F54FC
-25DB38DBA700155DF8986B08124989E2588C5A2C14A31EB6FEDD3507F645D832
-316DDDCE4DADDF594BCA56FDDFC71B81CBCAFD73E8F0085E1A13E62B097A5F54
-B78C1CA3172D00CB0627AA94428C7EFA3D45AD1181B1F7F834004368067DC90D
-8872364A7283958DA64A65E85D207CFDBF73A9B02C0EDEBFE01EF374FADFE157
-38D65BA54D48079CECC033CAE2CB34D1080FF4D78754240F3B0014836BD7D55E
-97579A1C60FAAF2D53847343BD1F4C17FC094BC73B4BDF03336B72B453B88870
-1B24713BBB4046358EBDB731402F8B75EAFF2414F4CCFF4FD0E57D615C8F803A
-572B8CD7EDAB39439AB24F85823BD30D490C9F0874FD696B1C768D25FC5B43E3
-ADC4ADF5F96CDBCE70E7601E2BEFCBB39C377C68A09EC933F023887AF4417FFC
-C876075372E571A6924959BC2EF5ED4618B5DD3F7E270707E6AC1BA43CB2ECCC
-25D4CEBC39A2C5C9CF2E8157FE3E8CF2B7F11AFD558F84731170CB8881EE9F94
-EB4E9826FE2DAD80006D082D1D38C3337BB9F0DD49B05FB7B9CA35BC3C66952B
-73909170C4DD925C7F00C5B821B6F181EDC35F820AF8B3053CDFF7C7D3B597B3
-76562DACA7E114B34618A4232A2743E06E4978C9AC67A3C6B9F5BA295DBD6130
-6716F450768D0556EB563E36A43DB8FED069F5BF428C94DCBF92B9592842E28F
-06225172B8861F20AE450CEAEB24B1CE6CBA4B397A9C6E08BAB3B5F53C131E5A
-C71F2190233BCB0B2BB333B7E26744F539EE5D3303DF1513E93CBB3303099347
-0441F2272180B3BAAF7415C9BC2987CBF50ED7B19EDDE7380BABCC44526A8DFF
-E016B406435BBB0C70881BB845ECF44078EA168018959BBFFF43C142A7E82434
-F416A3A9161DA07C901C5B92945CDCA3E3462C192D2939267B31D0C454B8D9EC
-B425A4F111A737A5879871810D07DAF9AC1731CB9B3B7AAFF39B6E0998CA76CA
-3850987DAF090B9839B42C0D2671A0791D52A4D0503560E58B99577B0E1D3433
-FC3490215BB25A05EA682A7066CE1EC7618C03EF19124D5ACE90D77B7BC2B992
-57C5C371B78C1C146C78A20262C51E2B680F08E53A66A6E2AA1F740887954ADD
-7EA75168E84A985F8B997F16B2C3D09D4DD30874C9EE43B1AE72FDAC1071AC85
-F08489FBC23E31F4949B6DDD59388A87A915018792CA7E948937AF9B92A3CE54
-14811E5CAE60DE20E0CD61F6155CF9744783D30992C191AEB2ADE4D4AC36436C
-EDDD7AB665759E92D01897C634E93BBB9414EABA1463A4C2920DACCB2ED590CD
-CCC565BE2DF01C57332ABF01EDBF7E7924955C1F9C19EB71D5DBF17FEA991AE2
-851ECCEB3029AF636B257285AD1595C21A4B843DAE55AB453F829EF3F9B1C4EE
-871220CCBC1F19EC964A66A9F985E01A2D0C8B78C08E9EE74CC4FD7673577920
-B70D38BEEF700A93F6120D0EDBB2698B8C952855BE38588A3C064CD35B1A87DE
-653DF6170D02D32682B2D653FA2E8E95CB10173B8E47FC4C0760344A99D8CBDA
-D5E9BC5FE269EEBE1F54B9191DBC48756697C3B2E18E790A233E7264CC6167FE
-9A9F123D53EF9DBEFAFA25F1CC6A74F37BDDBF38D3534DB9ADA535A73FDC5936
-4F18117DF1C4571B144C8DD9F165B518F28CE9323FA9D3286DB0FD6C6AA10715
-8E054F1B9E053216A7C7163A29BA92069CBE5EC5F09D07E12DDE6EC3723115F6
-DF096CE2518BEEFE60DB6CB87C8BF687C61650378547DAAE31C396E53631C168
-6CDBFF0AD3FFB80881277567B68989B058696383AD3197C43D89E14A59B9ABE4
-8C4216257C31184DEA7FCF4B207B5383F2F43AECA9EFD1DD0523513D1EA99947
-12B81E617EB73F4D2FDFB4214AE62DE7FBBE05354680DFDD6A67EC73DE1735C8
-AF6506FF2DD0EBD448E69A68FDC8D4EBE719367BF028891E57D47A24E863B44C
-EC9B2E8B5B5FEABC7A6FF84DAFFAC918C34652EB46289491A16A9B1A1BAB478C
-39336D49468D2FF666C93184AE32C5A797936EBAAFD3D37DF555F809809249B8
-1E92E3808DDBB6F9AF2EF70FB7520F227E7ABE7CA2D6EE15AECEC49012D66044
-2756BF75108EFEEF6992DE86BAEBE7F25094745E12FF5C174A4A26467B426998
-D8EE46CD0189EEEDC4577D2F9153C25D5DFF6E7E448A74A5FB2BB079E4E64B2E
-9F68838344993498495AEE1B7FC72DEFA000D788F239BEFD7E5A7595F15D2D70
-B11E3DE4BD51ECC4B6AA5D7219B55404EA95B08555C22B030BCEEAA77FB7C73F
-C7943D8F16EC907560CC647410E08B00D3CAF198CEB4F488518586D3BCE6A369
-F74379CACFD6BC1862422CC7F3E2E7C4C58F83B5BD46153C9BE5CD07B0F0E56D
-A80D40EDFFCD5F0A222DC3D6BC217A82C79AA99C2EE56F756CBF80D8D5D6CD45
-4B38A78CDDC58F34E922E2F98B2B0C86E4250C0A00494648B37EA5A4D29A8AAA
-37D343050CF5DF9EC748D8809F83EA9C583118CB2181416192AF316800295FF2
-EFF0FD5FBFB746690E5505AAAB193938DC4A2C8FDB94B4284E2330415D93C1B6
-BCC32910AA6C3584115C5525F7BA9FD68E5E7D5C2052B1827DCADB22A48B0C57
-15E8FE08FDB7D9F01BAEBEAAA701D4ADE8FB3E02CFC1EEA4F76A0ABDBDD7B2EB
-EE92F45161AEAFC5027BD9CB38189C939C168AD80A2ED09E2965630208E8DF4F
-26F0313B5D6170F47E8CEB7AF079EBDD9608DCBA5BA27DACCDBCA12326FFA7CD
-F9885D56F79F1D5C6766EE3B5274AE2B43589A9AE209ADF02CD241DACDA89F71
-9E25E72A233B3B5FC0A11B0BCE99A28669B7B98CAE5E919969225D1837B62E4F
-C2E84AA38D4AEA5756E673CB64EDA19D1E5569FAD02D378C8A560F5814B910DF
-D495994892D27C2AA9CFD61AFAF121F4C8E61106FB7753A6B7E48833A1BAC3EF
-2F91BA77009B8660023024884BA7915AC57F8AE1D05590798EFE27130212F5B7
-68613E5063255A24693189225E492686C7DCE375F7A6F7EBFE4DBB2B143B2C99
-6AAD94705593D75C5D573C4C60AAE0089DD5EB76AF0DE883331F35ABED721BDD
-D64D57D74B89DB9EA7C040E380E56F78D6FCFFF474FAE59C560EDCDFBDB081CB
-CC728B8F8F6E3AC866935E5DEE1A2777D41DB749DA987F41ED8F21FF9F0C9EE3
-EE6E4B552109C5749B64E80DFA793AE8D5363109C92C215E81BD2F46D63592AE
-7DD7F966704C4F0ECCF1F33B1DDEECEE752FD7E85EDD3DA29B722C1940553AE1
-B6BFE834332E9A42146AEF51B00768F180A078940AD11CB7195E1D6129C986AA
-BC1C2E3887D0254FA5AF6732C01DC4120BC71DEE30182C0278B3497ED2BBEFD2
-10367918730245BF3E0CB9D3FF15A7EE7933F2AA310921DE928C21503B07B007
-154B87748230A7F022B897D6F65A9BBF4755D6544783BA58AB0368C94620FE14
-2A6BBC08A1D98C67F8A1939FD2F3C04B951B9DEBABB6CD56514700205C4E80BD
-2BC6676984BAB241525D10BDF1A66E8AF218DF0B3B22FDF724B16B9DA539D21E
-123D45B44E19DCFBA244566609D3C75DE067F8BA770D40EF79C2EC83398B22F9
-851049306EE57E57389ECD483D8E4F23C1A7D928038C208D4B73185C97CCF2C9
-13D057C7ECDE0DE6A00299282A633607D1047EAF5FC2FFE0FD743DE9314E588D
-22B113FB18C7ED80EEE50D3AAD81603DF034F224D42CB791CE10A8B742B32605
-F3CB2236BDFE1CE04C78ABC96A85A0C0A058E385A1F59DDEBF69EC3F026524F0
-F2E8EC19FCA69EF69D31881FE73E51AC41EB3A47D3B5E9FC6B971A22E0E61ED3
-BBE51FB8DE2518BDAC45A6C2758D6D0F20C0FF9A9AA5B36BA4C07E414CA08B60
-0EE5F3935D723C35E50303179AA5C848830AFC044F2D114196EE6B45CF3EF21A
-14345BE8341EA55A452B82E36337D5CA4D4A35ACFFF728F83B1BBB81C1EE1125
-914FD842D0C85D8B4D25510565877901BCE9A0D194645D2A4D218A552D55DA8C
-9A7946F1EF340E1F166F74E7F8E5E7B6E2D361A6CB4D5CD3966AD88B2BA666B5
-D5E832F486F1305958B8F842B5EA644A2E2CB071C33C6C8339024495F1C38F84
-463E56A3BA3E1EB606F56C677699B80F0BA57D0F1EFF3EDA87F9D7FDE83C91D4
-A33CE5CDC43364430CA330CB48C2DBD666C60B0385D200F20CF75E34F02B2CC6
-B41B89A587C1D4391E2B2BE7B9E13350E2FF07D3820A90004323C29BC417EB94
-AC12EB1A5BE85B6C39E7E8272E6181308E72FD7E41E33D5EAF2CCD59D2A2FFE9
-6036CB218F257440B517E49E0C2235756EDC5324CA4880F81C441DBDA7AB9B4A
-8E2983834B6A697C174ACE33BCD2BAFC7EDA6C559EC64411115910FA3FA8BF23
-123AE7A372CA6F2DB3B351D8DB52C5DDE60EC873AB6D7318924FD0B5D7B0C7A5
-7A2D225B44A77DCE1EC686698BA2A9CDFA4B03D0D73FA7F611ED07618901A493
-9BDF6DE163D739785C6DA052D3B45434FD42405A52860EA68B93207C092B45B7
-3429AC8729BD92F84F493411EB4BB963041C1E272D697EC5515B6CF84E7D4794
-608755CA98E84C0E678A25FBFDFC9FAA21FCFD3437724E1C861A7295BE7AD6F3
-A48483F014FD31A2DBD29A70D68B097B35CBF902F31221BB291AB5216CA0CD34
-3359A42AA0B97A12348E9C3F5C80ED7EB2C8B53426DB7279F4F81F2DF1033517
-0307DF4A9F7C92C4FFAEE3AA8B48B8AF1FB21851169A88A8D64686848040CEA0
-ADC5C1E02D65CF5630281E13FBE6D3FFE4C1695EF7374E5A4C4613C2C47EA09A
-978758E03208489C7F1911EFB2E8D8207A1D73F5F31A64A25DB607350DF813AF
-74C030206ABB2967FF064B6898917A16AB7405D2081E1F2F7D5582D084E30BA1
-376D6D737BCB3EF9A02E42D657CF34F3FEA4E8CC7A1EC47A62890F01CA6AF2C8
-7B154DC8854C530BED8D668DBBDC399F98F68E7C35AE329D3061F576DF724FBB
-38B417DEA09BDE7B7B4332E9CA1D325B04420A279075037B982809742AA3465A
-3836024E501E746DD629973C1E90F11B4449C8616418958B44E53B46BC4D299C
-70D1136A77287D1A00EF22E663BB26C4F63F4EDEE61F1DBF62AC930E04825297
-88410200E28477EC66444BD097B446C678E48A14F142D3D763EA579B8F985B7D
-A081D8E36FD24651298097E7F0F21741D7DC0DC8F426619C132C56E77B86659C
-C39551992EF76230262ABE6616B0E4746DE46EE4BD493222AAC8A31BCCA0823E
-8498CE6F24D338F4ED166BAE1639BB6D1CE9F5AD7B848E9F49B731D1F22FADE1
-93241CBBAA332958639F38E1F470BA9C9C5574EB1B493D83FFC78B9239E3ABF8
-079B77380F47DDF544A812B12B4B83B3127C7DF65CAB1F45B238F2D4CA763296
-9CCCDC58581CBE6A29112911E54C8025B8C5A3224F004FD60ED26BFDA54F52C8
-6FED0043183E72D1FE6230B78CF92AF299D70C27078AA8713D4C418B66811FB9
-4715AF46BD11407EA6EC01B24DACF23BAF99B8190BA9A86E43B78A9B528C117A
-5C6CB343BFAEC172BAF91AF442ECEA40E58BE13A5A216C016DCBA6D69EC1FB4A
-C0BD457E6664D9F612020109B0950196BB9424A4CAD0720350FF63C69FE5730E
-C33616D07B9B7418A37500726C5F675DA9CE83D91BA8CD1CF9B4EB8A6AF20A1F
-71AFA4759A6460479A207BEF38EC839883CDF6C873E74EAE3AC1AB8660C1C7CB
-178F29BFFB6977C731DF8799C4B6BF9D096B03A3CA8DA080B6815F74131F0F1C
-54567E97BC70624A6BF98E12A537D73E98353BF729CF68329CFDCE8784A0B917
-9DC0678F27590247AA341E6D420852738E0B3B86EA3B2853AE91BE35D5EBCF5B
-9EB2793114FB41BBB0F09D9FCE52B5D3403E3B413565D257931572A445C7A857
-0E41CC8074C54FF209ED6E0F3EFD849729704DAA679153CD03E1CB64ECFED971
-FC3FDECCF39C320C3FEA0355A115A7D8C20910D9E9586372B0C990BA576C319D
-8766025246A64C653FA20E36F413C20EA077878D8E38F24CB698345CBCA5063D
-B72DECC798FB3F5C3C74E735BCB6DF5169D99CEBE00C2604ADC41B157C7BE677
-A4B615F6D622B589E3B0ACB4F784FA55E989DFC3CE7EBA6C2471FA68A3C19C5F
-01E1BB4E4F270AB69CA969508CB6371738E56A6F719D02FC6852A714DFCCA4F7
-234E80D82D16047088B56AD72F84A69CC0DFE0B66F3F4D70C32C2B4EFE803795
-B4EC39DA3428099CEC3B60832F5947E938C2FAEA925DBE92547D58D23C8C4FDB
-E21C700D5EC6B442F641338DA6221D7C66B54D431C6B8B4585ACDAEE25366DE0
-FD90D70444D824F581F0375F4D703A0E75E27C2A3AF714CF0BE119E8E4052D1D
-FB6AFDBC63928FE306B97A92748072304AD9E7C9315E8D4F0AD94F6AE2A09CCA
-6AC8FB4AE43BA20AC4DDD15C66C652C33EFC77AE59D0C58051C7DE1C6750B816
-CDE94465A4D93118893196842E84701BC9E7E0F811CACB8EC69D5475F46A233A
-62EA0D42DDBE244865DD7B4431DA6877E6A8F2CDB4D824E9C0203A40FEC72EF3
-B2C241EFB3DA5C3DEBF279448187CE755845861354060229D97DA56716716277
-3A3B79F3802CABF4B058A539A3A305A157E1659B7CA0197E81A5EABF56ED3F8E
-0CF93323FBDB8F407F4BAD0C74A0E9496EF4F6435483C05CFCF9CCE11AEC283C
-ACEF3FFB21B5DF905302EA42FC90A47FDB5D70173C04CD5CC0E6635469B659CE
-CDCF3BE2ACAC281BF16A9CC02CE97C5A135FE78FCD9F265403B8F3D7F5E38D12
-C349531C4C2E0AA1DA7A19465A135B21330667B9A043ED9131FEF172E8552EC5
-6631C69E8D5510C84FB086C0AD769F6668FB02CFCB6EA31A8769B8331A194A85
-B52562DB12380FBEA4413F89CA63701055C3AE7949DD6B56A0CE9B094885806F
-9B7F3B6C2879FBA9DFCD3BC8A88CC1E20BD8CDE9393C8A895337D6E27E2A5A6B
-72ECE2707E698EAB61B41B60936B99330A4246B4AC430222B988AA67849E590D
-32ED85138078C77BF48611601BEC254063457C7F10E701A824EC96763C698C79
-09D058BA6AF3AD769D95C9CC6DD1B8DB00E55370AA8D4143A1246B8C972AEE6D
-23DD9A2878F6B6160214A020C7A4D19D8A5BC2B77D8D72B9DF64FD941B2C605E
-41E70BC037FC51883293FCE32D4ED209159DA1B4ADBC5490C168EE40C0B54223
-C7B85942CF09CB46E482472DEDF4FC708EF232D4B3867014A9BDD833FC9D92F9
-6635449F157B2E8294DEB2C1B592709EE8317DDD9BA89357CC3751E7AF423E4C
-74A3466C359FB0A5828933A626C983A365236025098C79D4EC849ACBF6C0B859
-F1813E23E15265271E1CB291C335D0DDC158F8DB146DDD365B09AD60E2332DDE
-A2795C43AF1AEE7C1081A7D1FA98666EACEEAD000A3865AB7C6797B1D5A4FCB3
-B2FD10D03E60E1F0C35EDDD7A05855282E7998A3877DA3DCB35CBE4F6884789E
-41447CD7BDDE598518C7D29B3F5E38E0074955DC55D98079ACA908EAB37A
+D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
+016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
+9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
+D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
+469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
+2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
+7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
+77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
+2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
+FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
+DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
+7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
+9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
+CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
+6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
+E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
+8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
+3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
+EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
+0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
+4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
+1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
+757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
+0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
+6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
+E067598E1B8B78188FA4BCFB0B51692D07B0BEBB930C6F0997B437E2C51B876B
+61A563A2673932C2045833FAA35DB22ADE12102335D5DC734AE3AC5EEE6658D7
+92EB62131E1DFBA441F53EFF9021D9D4C491F26BE8F54C61165CAD778CE8695C
+EEAF70E3B20C64D4C2B34A084B5770BAB2A974E898F62BFE90F132A37E2DCA4F
+43E13DB13C94DFA8ECE2B7374827AE168634FA007F8981ADA046CED3448BF453
+FCD9A4F194FA648F9FC0971734BB69CB73439CB0DD021D44A7C11BF295E81733
+4DFBA460FF3D654F9FB337E99E6D66FBA87A817EB9CA1536C84833870E3626DA
+55D48DE850D3E6F6B29DA0E7C9D681283586F208DB8D58042E3A7CE55BE84822
+C98237911453E479EAB65AFEBA3F61A763B40E74535BE56C9D8D06DDF9441741
+5C9D9D917439368736619717FAB4F06E2C329AE0BA411F3FD355B1DE1D32145D
+39243D0590A90F1C4EC2C438FD92399C24EE8AC85E4D8C211613CE4DDA344F53
+1C85F8E759760BCF5D5152D45E91FAD6A3E7B3FE9BB701611E70ED5E18C5897C
+A59F354BD2ECF30C6D99EE733C0835161A710B181D772545B8A68FBF977CA7D4
+BF0CC70BF7FFB1F2BE159A252D77E79AD37BF642D570A744863FD8EA70589089
+0AC5BC2F0A068C7366C4017673C78E33FB53B8081AB6EC8060C4CB183263D089
+BFBFBA49BBD0F06550A7B03B34CD661E06B39B463393DED3950EA82B2B9117E6
+2DC7C9D8C4A7034BD03C227CB1A7D4DE3F9034B06B40F2FB4803A5F88B613ECA
+38DBDB90E754F6CB19C6F754F5C4CB7D3DDEE324443B48B3ABD6A9F817962B53
+94233CC3988A111B9A3A1D52293F09EA311F49295263C32B7485767C530CC233
+6E86EB972DB27D52C187787E77A2A64B0FFA30DA13B859A86D6541C9150BDC2F
+F97F498371BAEDB7B887A8C6479AECBDAD3753FD6EE28B2773482AFDBF0E023F
+C011260362040B3CA1B5087C474203D5969DF66DA3B3207DE619C17762B43E6C
+85C91FB8489CDEE8BC223C4281DDCA5F7DA80BD5C12D4A1EBB4434464C35695B
+6D740E500E4D2C76A5A122CFED79D059792315347DC7AF1347F5A01B15EA7476
+356F91248AB53FB92DB9DA8CCC5D4C8AFAF498E47FA2B9FD31DDD4C6EFA34936
+646F5FB93AA399CAE8B2DA1826A24F89930C9E2433989E056EAB7239227DFCB7
+E860CDA7287BDDE9FCEA54E155A2C6C4739D7EA31B8C55A9DD737F2069B8CD0B
+2ECA2C16F58BA578DFD36CB2660A182DA3C241B82920E73F6F1A1F81CADD7262
+FA3D6C491193BC4C7EE0C09F389FF828AA7585F9B7FAFA718CFE9DF6679D980E
+AAC6131940026E3C2297E197FB8DB2193DACA382972E7A12E5114CAB420555BE
+B5F3B0C91E24FD7FC0C998BF31306C49F3798B6B61B84D28932C527F8D160E92
+EE7FDF0A08835B785DBB272705C7711D0526B20FB55FBF16569670D47D34102A
+4B50F5047BA9EEC74FA572ACC5FEA851C8AF108C0646C84B3CDFC5FF4D98BD99
+C4D90DE0156FA1C40A60FC93B308D358ED423CF7DC02267D5A14A84F59778E92
+035B0126F3AABBAD0CB1B3E49E428840FF2A0C9A9C603BA986A64AAA8F13C159
+CAD2C0FF8F41149675F4CAB6B9DFF880A74CD302EF867A8BC1C56AFC83C54B6E
+8090871B7B35123622BE2F265D850E617B20FE9CCCB5A060F81432EA912EEE34
+B6AA5A00352C7A09B5D18290CB33172255507A75F69E05AED767EA56242D2D2E
+A4A973C4FDA8FD7920CC894C17489D3A781727A6EFF0DC57B2A615B2BE7F3F78
+E33A0AC82CF092645AACE6A00281CC53C51023F449F80FEF503D9423932CA834
+7261E703FC6483D1905E145A7693EE6B932E4592A98C6A4A4F99427A3D1B1D69
+A42297294DE6EA315F4C8D01ED14872FB20FE58A762C08D9779A13103DF64BEA
+DCA6D2E5202F759F88C0D400FAC342B8D4BDFA274121946DAA3CB827BCD45FC8
+159A2A52C43A34F21E03291A0036414D047FDE32975396A20F0D1CCAB827030F
+6669C0CF028C964BAC7626455533E1EB84EEA45A6A8D877507518536B16E8ECD
+C16CE73C424F7D0BABFA475A70D5AB4F2402BD06450958CBB37F5916CCC2AC2F
+30259276CD70D341427B5481C389D81E32F088356F9CF28687EA7D6373A46C70
+E5F8692D02339376A0AA060D943837CFCE35742123C3191FF0A843CD85BCB56D
+8332034AD81F26EAD67A4ED2E9EDAE20C1477A8AC61252572282744C3B5DEBEE
+263D19615A3A9B64F82383F7F09989D5AD8A963AA40B4565883D4398B911A0F2
+699053B0542F3FA56A0CBB10C1DC1F35BF56C39FA1E4CCCC553030CC35EADC4B
+184C5E5CFB4304137799D818E5AD13C81D71E969743AB39C0978059A22D1E1B3
+1154193AC0974058AD2EFCFEAB9C0A46C4E2A0DACAB02F5C8CACFFBFD2C0ACC2
+16C1D97798BC6E35E8ACB9F107798BDF8BA178393325584C6AFD9C20DDEA83BC
+CB5FD57CDCC01113DBFE169281BF00DEF675FD431E72A00C2C0E1C3D40386FC7
+DF830F6CB0A9B1C2B0B954461C2237D68A241CAD8D7FC61455AE3473E3885DB4
+02F49824526595481734CFB0164BA0A2F260499DA9BBE07262D325E381989F31
+0E9E8A4A26AB90A7B9362BD13B26F650F274250FFF5392F646984363FAC6C5B5
+0447D46E254C8E7B4093E55C1DE9A9CD2F557D3C17587089048D3D5729B08B0D
+8DBDA6A144B2A07F7BB637C56CC6E07E621CAE4AC1F741947CCD682B416CE02A
+60504F929046D51526E1A2859BAD7B43346D3AA6FC0FF37A33169B2148F08FFF
+65DBF3D9EBA28066896F7C4A33A509319DAA76C284FFF36EA7E3F84C1764F8D8
+088075741703E5C9350F8C7F8736CAC081B4EF7403D4B56599CDF09A55094546
+08155F72BE2B0EB004C08D74014C17278E8A857C6AAE7B3C6557D47FC732E9D1
+2F28443174D91FADFDDAA498D80E55C2AF55B523418E4BC082C519B05B950B80
+CE1C244EAA7CCA0AE94B02046E06A79A926147B09527A45CF66A717A48342F79
+73F6BEAE59AFAA255A7770F4383E8280F0B424AA0D2B13A76EBFD1F1A0141949
+9219F7492273E9AC4621391CB8C9DB363BC685E39EC991ACA4BBC5BFCC947F8E
+67F49CD30D0151E75AA7BD4F2ADEC3A99FDF643912FA34103F247822DC99DE21
+E95D9327E13C562BAB4FF0152B2F867D8E1F9F80C187ED70E92EE7C1A6B6E800
+C92D7FF45409CACE85E1B85A8233EF2757A507158BBBA8F5F6D9C08AB4EE39F3
+3A1C1A41F853EDD28375E40285979C657A76F55BB471E052694B73DA88909925
+90CEB4AFD1AFA5D2CFACFD9B7DFA57A43CA1FAD790036CC8C6793979EB738E89
+EB48EAFB788A6EB7AE930999C423B297275D9C03B94DFFEB7D35E66BA23B7DA7
+FAAF161DD832214B4A8CE8E67F8FCA510FC0D1E721EF860986297209419ECC37
+1633D71A0A7951DB035F2970DF34391E656DEE6E39C521464D65367EDB4E6E40
+833D5761F8536FC78AB901E79B95FAE6D271A58D9CBF4FFB68649369B63E0BCF
+1493C7FAADC881204CD6360E821FB0AA6B443C18FE40A66000E6448A4CCCE832
+D70E3FFFE2DBF25945D3C531F1EE9444749B83A9598B5F6A8624A0D0D98DBE60
+411DB32F69FE254FCFAC6500BA8BCD732940D2F1799122B49616BA2344033BA3
+9D0D1A62BAC08BF2E3FDEFCB229692933D4021DADD0147F5FD73EA5E0016D9EF
+10B1CC65A78DBF0F04A991EA6F41E2B9837EC22CD1A609C5A59D7C71BB1D0B31
+1F78CF79B56316F3A910EEB65027C5A37413A6089321A2DCED890463E40DEC84
+3075CE02FCFB0C889E402593B50FBBA1BAE0EBB99B58F57F4893A4C83A4D7A17
+30FCFF845B1E7D628F5DBC912DE723B3353E68566536D23406C2055E2F25B9FC
+7D9C341604087F10F0492045A771592DFEB5A17976276B31CE4B1AED2F3C7648
+0E2C6E3B39BF4BEF969E13531C22793EFC361F9426E4F03F31002AB37A10D303
+8688364035D130284767AF9BF736BA5FD99C7C70161731C07D2B79828590DC63
+4E53A8D773DBEB3B6241331200CEE1C2D01D5D3E3831FB9EC18AE5F51F1C1FC4
+41594AE8B709F89F91C573439BD3B3D1EA2339CD7F38E93A1B6ECF59697B35A8
+770403E6168B3BFDC724C551884956B2C63DED02386B240871D2C77A9E136684
+367C8DF6979FFAF13BA7227FF4D174769BDB6285EE42B631D4E76FA0DC395850
+528EFF94CAEFA3DD8608F1723489C3C2D620FCB1FD1D580B5BAF1BB687BEAF34
+F6EB1677B7C197628D7937BAD4105E8AF2D25998623A645E717B8917D1DFE6D7
+8010AF082E418CE9E05FFA744B614149AA8C3CA3CC8414E98FB9AF315ED834B3
+50CB750EDB9F0E94C6B08DDADE1B9926373252AEFE6300842BBD4717507633AD
+BB187A12A50AAFF437B9E25FCF3AE8AA3DB9B2C67473F97C077AE05A9689B416
+23DB7FF02E09D92E7AEDF5EB5FB9B9A874B92836327973E35A94BFC3559AD81A
+45DC96955B97C2A4913598880F19D2E5B6755FE6DBFA99E5FC0F1E3938B157F1
+239F6895E7A4F6E4DBF912A73768BB0FD703A5D1C480B6ED775A655CBB03EBCA
+85271DB561C7F32BBB72816533386A35648CBDC880E906D0F26B82750F8A910C
+9406E7B73D1727D6BDE001C2E086F46298D4B4DC1EAF9948B616435299EBB0BF
+5FE97AD3A49D0316FD0A2CCA340EF8C65D153486189989D4DB2B750567893E4E
+C73B0914EECE7E6E6D3AA27637CD2DD923D44C6ECDB3D5C1952C622818204B37
+13110FB974B5A36CBA0D1DD3B30D9EA2F11FDD36BA948C611BFAEFA3189D6973
+372A460170D8A232E1F11C2020652F226CE129AEE5B7C1CBCA4D923CD6A821B9
+1CD18C5593D9783D4D2AEBC3368DBC0440F5FA0DD84D20FCE9874247874EAC7B
+E8A30E5E4AF291BA5D2A482AE839D69A1F4BCCF66D930FD47433BD75E9401F18
+FA796A870D1F786AB0CC91C9B8D637C023F32DA1B583D98CD017DF6D9EEAD2F2
+7C2080E355DFE5E0BD5C2AEF06A57B6CF44F8C2B8D840CE99B994F5B9D5A9487
+3D36D3A5D567ED70185E1D2F3EA7115AD88C3E53B4E9A5FA598324CA163C15FA
+7910F2F7C98BD6801C827919FF807A27D34135F2F6567DA32440A143B4FAB5A7
+6B5A5DAFF65B31CF45C8ABD4E6D9ED018BF99E4C65C00676EEFF59E2BBA541BE
+6B8D4D68CCBCA3E88335964C74F7D4EEE19B7AC8B1F80AE104406D0B7B1CB27D
+C1F8C1E4579D6EFB0138E61B69F9B7B034CFCD699EDCAE2E429EDB876BC73A0D
+C2D3B2CFE2DFED91F6F401CAEA43794A4B18C4CD49BBA541E8F6BD39ADF1AC44
+FFA730C1FD8BE4423244B0086DC1A2C48AF68AC3210300358C37B0DD094072EA
+8D4825E86C8ACAD7101447506CEB7AE5FE9E716F92D866F58C8998F313E3579F
+990F49626F2484682919C85EF48856D619EF2AFE9285147E290DB85E8877311A
+01D281AB78ED867C879D02571134E2A079B6ED5BC1181736D2EB5E4C7243A570
+F72A5B0D08A9D5A219EB67F06F2AA52E4183923768305CF7D30EE17DD8AB78F9
+470B27789FC0CDCAAF92E4D93A5714D13157F6697939979B9DB92250581DC40B
+FA6340CA011B8BBB5D50D2C7C8A5E0CE8D3B668DE80EED4FBB712EB0E54BA471
+D641F84E86AC563D56471A98F2A6846EADDAB03D1850798FBAAA60CC4E7F17F3
+A2DA997B619A1B03020718194B5F48AC5D556901B38E361E1DA6A806D724CA8F
+38CD28721376C36747DA057350275952C0972726A08BDC0C303E48023F611234
+3908D247AB93E93E12C54DA1F2B570D569A48008410FCEF4CF08478C37693CEE
+E7093BAD71D833AE6B379B6A6BE158E61FEA043C555EC6E7B7CE35CBBACE5B0F
+004465EF3DFDCE0C9D519D8C15DB1F3EBAA9EE27CDFD25F2175A66CE48371239
+A2BAB6059A469FD64D80FDE60BEA6CA0AAB301F5C2C023EF5DE5759C0D406EC1
+FF067DAD5C5461CBF7AFF084FA2598954B03A5B6BFE72ED07CFF083209DC7FEB
+7EE26B0AD706156B4F7BDD038AEECBA6EA02A73497F90D243645CBD58901E743
+5FAACD41FFE2B143B0355584019AFDB667D004A240F55FBF496F1C5714B9CA85
+C9ED59CA9D584628895620866802AE4EDB2F11BA4FAAC0789128DC186BC5A0A8
+77E8E8304F7EBB693C44B55908E6D3E63DB3823161BCE22134E9D61064E19455
+7C36E667CA6FDD3C1D8659BDC6E15C1E39A0F2D56471947E6AEC14E3061A08CD
+39A1C578FC5416BA234055E47C86E0B58F543293ED8A3AA61465F305A504CB26
+69E010E2D91CEA3AF3139FDA3BD212FC3446D63845382D0D047891F87F113DBF
+D34BC6E24E645A14A6A90510B94EB526B2C695A7DB30277835CC4ABEDA136E3B
+A321CE35260789458E39CCBA32DB29B17FAE7CCD5BB2FFBFCB40001469D2A11E
+8DA225DB7A003CE59B9EEF75C67C32E396AFFF58EC2D98908E7AF69F301479BC
+88BFC4F5009FD8DBB7BC82B28C26A09E730D632A47B3B7C3D87806BC08416EC0
+907B2BD632B2DDC682D0C35A5BE08335463B1C05DDFD5842D362B025A685233E
+6DD7D81D7685190D29D774BF20044E7937A770DC9BAACB64131603FE83BED99B
+4F0BF05CB818A86A7EBF01241EB6A4E81ACE37DDA50550A820EB5015EE603964
+EC03875EA4D0B8E295F3967860255FDF223114DEC4475E98DCF697EFBC9A5438
+66015EE40112DE8A7C2AF0EB0B544EC245A851EC9E792C499BB7C4A3230E11A0
+DCB00926C6AE9759840C4B19C98E13366F8F43AE15984464A0EA826228802A61
+9C9AEBA998CADD7DE1C66E87E4D9B137E1951320576955867B03B7E8B049E014
+369C98D548C42E0627BC3932B0DA09B2BB098AD170B461350370BDA985E9297D
+EBA727D5F3EC7DBC3EFFC2BF1E9C69370D6C6DEB677F06E7C903EA429C932D64
+6A1C0914C84F626F778E659C36F882D33E3B79E23E12D0DBA05C1FB852B9D5E2
+8AC4163EF694EC98B63A539AB1999EFCFF36268EF0ED1ABB505E7C18CCD55E71
+7F7E351DFF37E60BF70E4A95CA8448777A83E1A604E965CC20AD1FBFF63B0A2C
+F4B88B782EEEB926230B9373E1F93604C40031734FCFF643112F94FCF3393225
+C0810CBDA0205A1730A84FCE15F596D4DBEF2DB310FB783444BFB1D2AC24C05A
+819A33F1F4C370FB18538A56CE2A9C69739457C38DC2CB1DD1156DF600E34037
+3EBD428B019FB759763997AB506E8ADB9F6AEA7FB461728F6E08FD876871E502
+99583ACC04D8D61FBA52D410F11DDD79685814797898C1A87BD4935718E3921F
+D25C4516DC54DBF4BE7375D4EE19BA0BD38C406B47A15556587A39B5A0BBBAE9
+20FD2385F689A68E20050CACB379691FA27F0201B3B8C28317E998495AEAF6D2
+60A1D0BAC9622BF083BFC0EC5F2340E11D3A254EE5CCB2B1737D88E963359049
+3D5980076BA56B7835D2E6D8A54D3EA4C3BC3C3B2581AC007BFCF2E9CC968590
+32D33880563518047F4BF0B2E1B1E191293E67925EA985CBA7D092D5441193C3
+2ECEE44CE0D3E9CF0EA0E9E84295709C2B42058C7B98EE1D8F55E7AC221E55C4
+5A30286F0AB36A579DE09BC922A09F4C844A8478AEAABBC297DF74CC657EF19E
+1E155FBB8C1BF606BA3741F330D460D50DC16C69EBB14D79C9ABB52FCB74087E
+79A34AC63DBDC34B14DC7A8EB3C2613D375988E3FBBF1929DF250756E04C3E18
+6D71BF762AD00D1D8478B036F934D05B6E54E78F69560925BC788A3CD1E584C4
+772B6B2BF62B791932596F22E3A0F773CB90506682563B4ADEF68A6CB4199F81
+D798E823FCEBEFAB0FAF8BB078C93683982FE0EDDDDD638CD3CDA26415ABB094
+5C64CA161C2211C563C7151A734BDF279BF70CF663CF72908558807A389FDF11
+0819A058CA155CE575143A5FF6C746289442EE1AE4FB4A3E279AE2CAF0F4DDD3
+31978DC373443ED13CAA24F601511CA40B9478643F260E3DFB698D7FC6E5E2C3
+FDEE685E02010D6E3D07AAAA0FF09453B165A058B563F5EC87D39E0FAA4EFF24
+05C2F4DFFCB11E033E14E14005A5938B8A73A9A01CE40B609680EF08117F6F84
+FDD5436B07D4C4313AE62CC5B27126A21257EA0A852B4B82C9A76A91154D3F67
+5EC32C951B345CE78382932993037E44956B3835C950B79F2D131132982444A7
+80C84410AEFB692A0EDA716C3A2AD6EEF1295A8CB91CB4D28292D50F49E926F1
+16563281ED257F14B6D9FB68E8B2923F86DAB74B3F30C69925F9BCFCF8DDAB20
+8EC5F83C81E5E3CBAA7DBEF856DFEC13F122E8E5A13FFC5B63CCDAF44665D3C5
+BEAE7DE18B2E6E72CA2C0ED37744EA6BD3CEE224DCF17BDC857F03A2C329034B
+062B41A7D36EC99FF527EA7669C5C433D813BF3AD97AE88BE351F1DA824991AF
+18FA0558AD1D375315065E5CB029992F031751F30510B43DBA3AC76AA1EB76A9
+C2210A666AFFDDCE8B722E7934DFDD97086A08900375A8CAEB7733E86F9699B0
+55A72E8C23F7A9A8697E9BE0E9200CBDADE2C36E0EE85C1020569E0FBA620750
+4AAE6283A63222BBD45A657B144E2917D2B0E6030B08FD2AFFA9A8D79DFA5B23
+7C417D5EE959F790E91736F7130719EB0054CAB72667C5453415583D8485A147
+7EA42D82E7D3902CDD9763470B858084FD53E707CE7B36FF12E13E6011745AA5
+FC081F7E40705FC77FA5B7E291EEA5F5DF915182F374791AFB0CD19CFC7BB600
+0A1FFE7123793C3E8C1472717C751B201C207C3F66155B0CD508BE9DE2D7C33B
+C3B05709BF76AEF245C3ECD99B5D0B7D5CB97DF148C697D07B0132ED94A1D7BF
+5B28A7185A710E52412BD10E3A40326E4BA5080B6285D660CCE24CEB2080CD78
+FAAB0557EEF7AB02F1C164BA6E1F3BF914E7206FE04AF01440488680D29983D6
+47028D5E7196848E3AC203245B2B650CD4EC5E8A32973B596D9995ABA0586B24
+752C46BEABD2462BAECBE2BDAFFB32CE850706EB4D423C5B789EAD934B8AD82D
+D12B6F99A55BB558BC1AD2FEDC1082B7F75ECBD36B5E51735547
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -2773,50 +2204,65 @@
 0000000000000000000000000000000000000000000000000000000000000000
 cleartomark
 %%EndFont 
-%%BeginFont: CMBX10
-%!PS-AdobeFont-1.1: CMBX10 1.00B
-%%CreationDate: 1992 Feb 19 19:54:06
+%%BeginFont: CMTI9
+%!PS-AdobeFont-1.1: CMTI9 1.0
+%%CreationDate: 1991 Aug 18 21:08:07
 % Copyright (C) 1997 American Mathematical Society. All Rights Reserved.
 11 dict begin
 /FontInfo 7 dict dup begin
-/version (1.00B) readonly def
+/version (1.0) readonly def
 /Notice (Copyright (C) 1997 American Mathematical Society. All Rights 
Reserved) readonly def
-/FullName (CMBX10) readonly def
+/FullName (CMTI9) readonly def
 /FamilyName (Computer Modern) readonly def
-/Weight (Bold) readonly def
-/ItalicAngle 0 def
+/Weight (Medium) readonly def
+/ItalicAngle -14.04 def
 /isFixedPitch false def
 end readonly def
-/FontName /CMBX10 def
+/FontName /CMTI9 def
 /PaintType 0 def
 /FontType 1 def
 /FontMatrix [0.001 0 0 0.001 0 0] readonly def
 /Encoding 256 array
 0 1 255 {1 index exch /.notdef put} for
 dup 12 /fi put
-dup 14 /ffi put
+dup 39 /quoteright put
+dup 40 /parenleft put
+dup 41 /parenright put
+dup 44 /comma put
 dup 45 /hyphen put
 dup 46 /period put
+dup 48 /zero put
 dup 49 /one put
 dup 50 /two put
-dup 51 /three put
-dup 52 /four put
 dup 53 /five put
 dup 54 /six put
 dup 55 /seven put
+dup 56 /eight put
+dup 57 /nine put
+dup 58 /colon put
 dup 65 /A put
+dup 66 /B put
+dup 67 /C put
 dup 68 /D put
 dup 69 /E put
 dup 70 /F put
 dup 71 /G put
 dup 72 /H put
+dup 73 /I put
+dup 74 /J put
 dup 75 /K put
+dup 76 /L put
 dup 77 /M put
 dup 78 /N put
 dup 79 /O put
 dup 80 /P put
+dup 82 /R put
 dup 83 /S put
 dup 84 /T put
+dup 85 /U put
+dup 87 /W put
+dup 88 /X put
+dup 89 /Y put
 dup 97 /a put
 dup 98 /b put
 dup 99 /c put
@@ -2826,7 +2272,6 @@
 dup 103 /g put
 dup 104 /h put
 dup 105 /i put
-dup 106 /j put
 dup 107 /k put
 dup 108 /l put
 dup 109 /m put
@@ -2840,309 +2285,424 @@
 dup 118 /v put
 dup 119 /w put
 dup 121 /y put
+dup 123 /endash put
+dup 124 /emdash put
 readonly def
-/FontBBox{-301 -250 1164 946}readonly def
+/FontBBox{-35 -250 1148 750}readonly def
 currentdict end
 currentfile eexec
-D9D66F633B846A97B686A97E45A3D0AA052A014267B7904EB3C0D3BD0B83D891
-016CA6CA4B712ADEB258FAAB9A130EE605E61F77FC1B738ABC7C51CD46EF8171
-9098D5FEE67660E69A7AB91B58F29A4D79E57022F783EB0FBBB6D4F4EC35014F
-D2DECBA99459A4C59DF0C6EBA150284454E707DC2100C15B76B4C19B84363758
-469A6C558785B226332152109871A9883487DD7710949204DDCF837E6A8708B8
-2BDBF16FBC7512FAA308A093FE5F00F963068B8B731A88D7740B0DDAED1B3F82
-7DB9DFB4372D3935C286E39EE7AC9FB6A9B5CE4D2FAE1BC0E55AE02BFC464378
-77B9F65C23E3BAB41EFAE344DDC9AB1B3CCBC0618290D83DC756F9D5BEFECB18
-2DB0E39997F264D408BD076F65A50E7E94C9C88D849AB2E92005CFA316ACCD91
-FF524AAD7262B10351C50EBAD08FB4CD55D2E369F6E836C82C591606E1E5C73F
-DE3FA3CAD272C67C6CBF43B66FE4B8677DAFEEA19288428D07FEB1F4001BAA68
-7AAD6DDBE432714E799CFA49D8A1A128F32E8B280524BC8041F1E64ECE4053C4
-9F0AEC699A75B827002E9F95826DB3F643338F858011008E338A899020962176
-CF66A62E3AEF046D91C88C87DEB03CE6CCDF4FB651990F0E86D17409F121773D
-6877DF0085DFB269A3C07AA6660419BD0F0EF3C53DA2318BA1860AB34E28BAC6
-E82DDB1C43E5203AC9DF9277098F2E42C0F7BD03C6D90B629DE97730245B8E8E
-8903B9225098079C55A37E4E59AE2A9E36B6349FA2C09BB1F5F4433E4EEFC75E
-3F9830EB085E7E6FBE2666AC5A398C2DF228062ACF9FCA5656390A15837C4A99
-EC3740D873CFEF2E248B44CA134693A782594DD0692B4DBF1F16C4CDECA692C4
-0E44FDBEF704101118BC53575BF22731E7F7717934AD715AC33B5D3679B784C9
-4046E6CD3C0AD80ED1F65626B14E33CFDA6EB2825DC444FA6209615BC08173FF
-1805BDFCCA4B11F50D6BD483FD8639F9E8D0245B463D65A0F12C26C8A8EE2910
-757696C3F13144D8EA5649816AAD61A949C3A723ABB585990593F20A35CD6B7E
-0FA0AD8551CEE41F61924DC36A464A10A1B14C33FAFB04862E30C66C1BC55665
-6D07D93B8C0D596E109EE2B1AAB479F7FAA35279ADB468A624BE26D527BFF5ED
-E067598E1B8B78188FA4BCFB0B51692D07B0BEBB930C6F0997B437E2C51B876B
-61A563A2673932C2045833FAA35DB22ADE12102335D36BEEC9D5B0E0CC51613F
-0561B0B802BB1E1111E959C7745653516A296E671784C8F9E06B892846BA33E3
-8AAE46D5DD487E56A90079CA7DA18D25F3681DD0131C46E14DCDF512FC14D9AC
-7341D5046C96E98C17C37FF5841CD42609A279E8E3D4698F925E037E82E12B02
-1B0B763596B1655E53AB42EBE4B24C3F2AD371F10BA0F922AE573BBB163DD66E
-89F2C4E2B1A15300BB08D9818E77F0AB16910AA98FFE60E4A8C7048962318896
-14FC51AC3AF1497ED9F43B8DA7FA23DE5DD815FBF20E1D9DE2223F4CBCDD0068
-884D90CF371C1A2709F44B556CDB7CB1A77C52F20DFD64D7F70A328B8C3D6107
-1868A4CE3AA3077101B3A36C552BA0F270EAE2638FF076060C4F37550A944C8B
-95B4EC1B9A7380E3A66208382AA3BA671B1E88E9AD54CC91B60FDA9109D30B51
-21D35D4755521650099378AECF718D9C52E3CFF47410574094AD902E89688D20
-129A629713E087DF8DD4B02241AB3B1541899171BC12C8AD659ACD0120F4830E
-FED86917C5CEFF9ADFD18C0FE8D4D6EC398CC60728D7C950215F7843FD99CB48
-4614FFAF54066F94B31AA0863E9934CE7C2EA2FB1CE63889E1526A93C1BCBF9F
-25BB7EC9D9675B2F7E4F671B5A17BF82CC947D20F662D0B48B056643CFE19206
-513A9FAD9A9EFFBE5E67FECDC681A6CEDCECFD566DD63D83EA001C76B681675F
-5E4400D758C423D376E2C160558324E097D62EC96E3A6CE9F402ED6B4B7ED5A5
-D8B764216BC9181802C0C0857483036192B3123723667CCBA5FD9457ED7EBEB5
-F93210ABB0BB624ADB3AC453F31C68317DBDA92F6F61640C711AA6C3AD5C2468
-B3257271C0FEFF3726CE5FEB881D996024C4E030BCCDAE670E9E6759C193D44C
-E02070CB55DE012322BF86A8D12C297099974D431D391601E2048AC31ED452AB
-98B4843FD5DD4244726E81B17F00D205E02A0EBAE822C323CE6872B45D735B8B
-8C334C58991EA7E57C686C4C2B16C21F0F952E0666AF999C90CF95FEDFB9752E
-BDD05251E26D027F423144945E786853C9BBF2A194F3440F5D87935F9E83CE14
-30E3E37A287ACA2BC2708A9BD95BC5E912B2F2A621A109633D9702DEED9C9EC6
-D1597C5E676D2D16E9493A2F844111216CECAE91F6C10C8A043E6C91020CCA5B
-FC71BDD1F773898882F63256D5372F6AA8E337D2E5EA68A14967970D215C8530
-4ACF0F6251627590154C61E3C44CC224376327709BAC1ED4DCAA4A65894CE3D5
-59CA000BF23A3BB89DDBC63F9DC14A3EA95A9F818679DC7E902C68F8CAE9E037
-28922060B8315E2E1C6335F9768DB4D55E3A90A7179AF65322691E027C5C1CC9
-0A887B19F9F316A935049BFADF5A85B454F4F1355F2B3CF94EA94BFA669E3838
-989D65D90AA1DA57DDA0F9ED33760E52C720C1214CCFC9B42C2184A045718DAD
-D506AE98E1D88CD4A69FC873831350B8DDDBA6B9E8EB51C53056C2DFB799D835
-7C68591875202613C59ED8B3F7EF5B1110074569B4215256CF805AD524585F57
-A04027FB3F47D63DAB57B0BEC59AD2DB0F8C6FF6FA866A12EBBB787CEC01D9D0
-37F75FA34E1BAA27183AF85C13DCC2617E7B6FF5A5A0C578162E7818097C7906
-43468790ABF883898728D3C6670A29A16D1BBFE4ABFD88BB3714C81975ED8C16
-EBE26F230C89EE345185FDA39726ECBF48AB4FC966A7A04A9F886D077E93AD54
-7927BD8F581C95550B4076F0F024EDA854BB1AD128B6991DDAB98F0C7061739F
-F5B0E2DB726CB1014C8FD93B2EC56539712649E6DBC75A1045ACE60AA4027DC2
-9D17F5E56AE4A59F5F18001E7133F539CA09EBBF8EC968D20A3ADA7741F89050
-7FA457857B8AC622A5248756F172011E601626A30895615C6025B760421603B8
-D2E70D6F385AA2D036829B29743AD33FE56FC0EBB35ACE5F786944DCC95F540B
-8C0D1E200F6777FDC0A90E78AB55FE18798393BB9F51545D31B5BF00300AAFF6
-5B59E551C8C69BFE0BCF6EB6A8CFA3C81783F9A26A3F87D8CE4406BC72770BAC
-01951A60196C91F5D614571F46CA969E03A06FB76B69274CCA6DB36649EDFD51
-A91A12AFFEB478E8CC1853E04A97251A46F82107FF53EE8DE220A62F3CB78366
-9A9786935BFF1B6F68E3B14C2380B48FC26B0E043783161702A449C1BD19932D
-47645477DC84A31317F09C9D58BB49C5E1A597B5B2661493348D5BA1E4329A5A
-A151998D9EA4419B4E1BDCFA55F2D95806BB802141A13F806CEB93CCD8F0685F
-69170569F1B7C2EAE90F2F610DA86304CD85B9AE5A110FE235EC0F531F8A8DF0
-71FD32C11FA5574BDEF4BC4EE5DF944F7408638E1ECB63763AD385C7140A29A9
-4CE1FFA2AFED0C2D0ACEE8BE8E68DA657E4AB533F8DC919538935FDF283A94CD
-A3FF2A71A143731294F1FFCE545FB15612120A193F182829C15100E545A927F9
-03ECB17FD4DC9745EAE806A832B48D75EA017A1196CE4975B1310080CDEB6F2D
-88D60599FE50FA30AAA85CBF8A77027953F4E931F7F101CEEF8C888361262B22
-9A796EADC9B393F10BE9F835460364BD59E318FA82CC14AF605F5F0C841A2F67
-829E351B14FB4F57B9F4A1EC8B5C201233EA9D90F4007E75A2622626144B00C6
-BC01DA4D64272BFCEC70B5B65CAD61535CEEEEDA1F9290470A9027B2295DB46B
-D840CEEE3B1A68B1CF3BD4765ED003F0C47EF037CD797602EA4FACE9963FC590
-3D17CCBED7AF3730A094AE4D85081525D483D1BAF4F01B6A92904EACC56BD384
-1BE8369FB7105203B974B08A8A33782B0AB6E67088DB0C5914B81AFE779F7727
-95EA367518F169F2CCEE12F8871C05CC5C5F200A8335BA967B5B5CBBBF38815E
-A1F6C5E713B95EB4F8327D2193EF117D8673456F8B7230DCEFEBA494595C9EBE
-D3A0E237809F969B489D85ACDEA6A99EBA0E5BB9C79C1C85597223D45D710980
-6DF2ABE4C0137817DFE71838E23F4AAA65C613291ADF1A13DE22A214E079ABF6
-4C9CA80A3C0E4749FF0B7F325DA7E212CE9D9BD68B21C39F2DD12D394171627E
-BDF2A28A8309D0A5B8F35605176BF60B646265F21108935CA1F8B4F3A6618220
-9DAF021272FC7311EBC47EE352F884F4CC4ABF0724E4ABF697D0494A416563A4
-F8F89CBD9B8BA3A268B08654172D14A4ECB2A91E286A3F1CB0C356C402275119
-CDC5079F9849E3D7DCA25D55365241B8D721F1559DDEA9741F80FA7489BCF520
-386ADBD8ADB2DB6EEB33CA0FDD9A066269ED6A0D48168BA6750154993DCB9145
-AC9E6104B9644505ACAA29F15050C1ACCA53E543F2620298CE252A8AA4D5A02C
-6F18F62C7FD48BD336FBBE42310812D712C6913880463DC0E7E6ED1B72705AAA
-7B531CEE4B782F220CEBE9DC90F91295D3C0EF7EB6D891B256F4B45F22604D5F
-CE6646826C5B3B56A6AB9FC0641946ED5ED61094679C829B9FB4E83F1ACC3CC9
-4075E13165B247ED18F6EC4BDBBB58757B0452DE5702ECBEB0715A41CB109022
-9F9B10C5FFDFBCF391D5AC309AA6361EA199D35BE968A872EF7E2555173E5342
-022498AB5AEAB181AA8B090C389060D8B09A6CC07F8410237800CA4B76BF7443
-2EB77D90C4BDEE39FAB40CBF6F973D1CF103EFBA9584A3E6C1610D3387C6106F
-A9B7C398629CD189D882EB07A3BC046502C82CE80BAEA5D98FEBDD85137682E2
-49F1F25FAD223D458C00B5A2049A508A6393112364078A75D031D7A753E56AA0
-74B35F538DC57776DC88B7F540FB7CF9231D71B80B7A0587CB91B6785BD176E5
-3F4117C7B0EB443A04A80EEAB10B93440AA69FA7182A55A9B76CD111E6E8E64C
-3E9A9EE21E82714688427E621E6F980B94A836DE248C052AC6D30D418E6CB785
-C19E5D97C2B0681FDC97ACD120423BADA07433B93BBC9662352610825B69B97E
-596A08BB190B50790398C9209891C418CC3AE3C5066158B852C5AA0E2136D282
-23200BF70C14135B6F0962FD732655930990E2B7647834EC1646C4B6DE12827A
-D70F4AF310174F6AD11DBE2D32D4C9D655E65AEEB06A1014357FBC8AFE6FA5D4
-886A8BA7FD6BE6C76EC41FB68FDC99919D70BCF19E5A39722D00CEDF231DC63A
-399CE887473CB2AF1F446C1DA837D177D73CFCCE7FC13451DF735835F7E5546D
-6B6D318830C707F22CFD84F3C6F55D68AF33F75A9A4F2CD2603E9216E30B2949
-1C2E01BAD8F944EB94506A0FCC5539B800A104797B55D65AAFCB4EE443EC21A6
-F91630F483D1E59B436B6BD82D453BABA1097230FB204DE5F903BCDFF63C02B4
-5DF9FA790129A565A3ECC1CDD17846EB9361ADBC69CB2BD6701E1E30C13EEA4D
-01C51337013EDC6B154AA64913DAE7212EFC0C5D226F9F85908B919EBA27231F
-863683819ADCC9EEB4F92DD707B48668337B0053652227DFE1957B4095B35A8F
-B7853FF6EDD9185CB64BC38798B4538566416C308CEFE19C98BAF00795D393F4
-A947C1737A8BDCCC3BC0ED9E2D444DE263116CA5D123F966180A9AA7AFDD9AFC
-46D0D02FC6A1E2D78BFDB1BA45939DCAC4E5FBE7813007C3365D25DF2E1F0477
-6A717DF3899A2242D9D15B5140F19C4CDB1F9C7EC58BCB455126D6CE58C78371
-5FFC16C48C6F935573BF1FA63C4FD9F8620CFE3BC7E70167A4F0725D1879F7A3
-14B89AA468C14F40AABE020A1DB2C38F09864D2E852A7EDCD637EEFF920A428D
-DC73392D3E6BA3DEAA8AB3F0BD6635AA1254AF53A588A81A6960489DCB2876C1
-1ED94458540133CF16CA8CBAECFC9FB929DEB721E4A7CF806168C9EA0C523D35
-159D4DD8BC39BC416758399A5E324039572F57B4B188B511B579612BE8068E3A
-E7374A6D42F191F2229787363799FD510015C0E013F6F0961C5E656A5D03F5D2
-2D28C978A5811BC82E49BA6A57A7390EBCC2EAF2452C7D46A82A478DE1B968AF
-3082D7A44540EFC555B6DC97D5EFF5769E46381DF8B225830F02AB30993E4CC7
-145C04AE2E8E7148A50AA08DB10DA8663CF4A7840C817EC5E9F8E1DDABA25DE8
-24128B83B71B480FEE06FB5F7D360E4ED6C4D772B7B080025BF9FB7CFBFDF2C1
-ECA2066BC16935646500BB97FA42D89A740187D95EC70811DB76DB82E9D5F8FF
-0E140AC413F07F2EEB49E1A8912FFE8AF50F18FD1C9BDC2EB84078CF54E92679
-B7BCBDCEBD8C914B4AC30F86F12492B8249CE4612ACA6076926AC3C789E2B579
-1E9F9132107DC87927FDE981D3128F1182AB329DE82A6BC4DFF2248A410A6263
-803A05F0FBAD1EA14DD99996D7CB9964B81B7B504AFEBDEEDBF2B504B474AB0B
-0871CAD376BDB0533D5DF7D40D2F2DF78B40CC6033BAC676B09FEBDE354197AF
-DDA7D3240A5D9544C402419C4609C6FEB1FA67DE68D835833B5BDE62814D8BD7
-AB8D76E5D3795B2CE4D86EB72655CE6EF4113E9F6FFBE13024BA6DA1292E47C3
-2E1FD246404A219C82EDDF2D64BDEF288526E5F0A07090F501BAE98C6F089FD1
-92D921A3222A376CAA1F92A7FD413EA6CE563013F68E8B34F69ED445E23254A5
-057F2455475B0A92646CF874249DB46F0D2D0001C729782B4D01C23D3F4CA097
-891205EB2E44BA08E1223A5B905746B3AEFA20D16DC49D3A2A973546B32FB6BC
-FF708A554B94D0D012A82BC0D621B042CF22AA77B5B80691BB17CEB14B34CA7B
-1F2A9D5A08740912C0FDDFF9B676D78B44D6A75AF5BCBFA0FEB60636FA82F634
-B843E8C7D53A088500CC2F79B533DC45935E46116BC0B81A0A4DB12DFF2CBB33
-879E1BB94CE7F36E122F527ADE2A2BD23434A94992B181A9256CD43C39518BC2
-BD7246230F81A788F101ABE9D68A635B5ED081220D950FEF8340939D95F7596F
-67F2263C73A5B5A94F6CA4925ED40F8E7E583E2E4B3F21DC4898CD7E5CEDFB0E
-65E9181B02473EEE5B0FB777077E9A5D8A58D6D314B535B7CF69C050337D813E
-EB713428EF426BD35DC7E25392E1B13D49E92CF4DE13F2F686CCE8E45F14C2CC
-0DD469B542DC16A4D63A3E8917BAF74A6B17B0524CD637F26DE89847FB03261E
-E157A477AEFFD4C5EAA63BF613E04993E5E06582B3E0A2877AE5AF3F556B0AFE
-CA3C667A6F70C7C441FE3B3D867E79FC6485A2298267485CA6744149175A2A62
-B30619CFF3CFA2C0C9F575784D34175E46D80351E0B282082F5A8876E9908D87
-62CC9FCAF336C10A8557673C541941EB2D4013ED21A5E0D70E2A6942DE94FD42
-C66AC928EECDDBEB1C8E1C3DBC87CC204547F80414F61F69144A00DD2D7BE195
-BCD3CBD2B7FC4735259237EB0B243E422C14F1666E4FD67B949A5F18DA24ECEE
-157A464B01CAFF4D8149FFFDDCFFA7D4748BED7DC16AC1E950D5D7EDA79D3C5B
-28AAB577618A48E7B367E9DD1F2F33CE107BAAE00CDF0D12A8DA557E8E267DB4
-4A642ADE6558403E2CE13568EF250C018FFD0937DF9DA6516398F48B471D5C7E
-521868517B34E81F16D2F992CB4BC9983DF9AA670C9DFC4C0F2DA3FC0A6BB8FE
-F992C0780512F82083C1BF4CF601F6D0E492C5D8E402BCDFA24DAD4D1AF902FB
-8AC667BF765BA02F036C7633EF495AF0E35C12DE7B9E031478337AD6F65027AF
-2F1F0C115818BE7E8CD3487621B74C77231BBDD873D6CA01B2612BCFEA59B005
-A5CD74209CFEEBA697C6400702CAF067DB65A6BF1D38370E341F52A9ACDA87D5
-CF1EE3BF78F0C555241D43584F6ED92C2B27D5023E68432BBFE7E972F2404401
-6CEDFBAA150AE84B5CE12D936B0E3048DA950DA9886880B797116B8D041CD97E
-A33B28CF39E977DCD5B060657636672D2F684ACCDCAFE5A443C1B324871C62E5
-B0A647C0E96B5E95396E2B2AD6E914A0873A0CAE556BBA906FF2961E0BA4040B
-20845D6D977BE110724F36624C07B0B3EFD919CFE569C471402256CF9DBD65B1
-A1858B8108794157F11906C58EFB5E0FA55083881410C8011FACBAFF851257DB
-856CD6EAB49DE8E672632A321FB2CFE294485524B34E6AC000F80A285B3F6DEC
-CCB59B0AAE1272E69DCA044BF49D997D38E2E159F03C253700F030C764781385
-8C4C1AEF067019D50FC8683A15BFC0B5C6B47CF49AEE7336F6B9FCD13EE2CFDE
-38EFAD7CA071432356655738FEF3F09FB21332B1E712D80884DC03C7E6429E71
-DBFCABE411112F5E45CAA9C7E06597E8FA793134E86230F8F6BFE876FFFCDA90
-11D86E28AABD34DBD3A90B343A8220E8340DC76EB96DAE856DE464DBA9F06516
-65E3441B8159FB1F25E6E0186C5FB35EA58761632B766742C6224234E05B3D4C
-B8F0F84EA4766EC708CB75D6AFAC41E64E1F0C76BB8C0FE4A5D2C6E8153B2AC5
-AF8170E82AE8E2390334AB8DFEC1A9A8A677233D96B341349711839187467959
-82F4B0442C4C39753EF6AF7A27239A665BAED85439518E98D9578500CDB3134B
-2BE5638F86C8118169B9CB8B301C33BC62C1DB167424401DDFEA15A70B11AE49
-DD9FC3677BB55C894F689DCAAC7EC66B4983C66510B9AB0FC30FBC0124A389EE
-4EE79A41938DD47B73A9862F92E804BCBE32590BEB487458B2DEDD83E9BF24E1
-3458AEDCBF202718B886C1D61CB8E034E7FA95D19925D4B3B63969D4F3E11923
-83747C4338DAFBC389DB7A5C52BDC25AE34C240B58F2D2678AFE5C6052A0E0AD
-51ADFC4B15492AD9060DAEB24DDD8B73315A17DE4F03CC17B95014E74683A375
-D4864CD3EAE5F2AB3BDB2BF7B0A2A7DB07ADC88AE63B528AA5286ECCA8A8E567
-CCA540251DB6A23F814DA79071956425B58A58745073A588604178B2DD1DF9EA
-0A6B97E8941CC96D515491532E2DD56496BA17931C1A3B0F11527029A940BD77
-2DD1580F6F82096FB766AAB27B0DAAA4395FC2DE3CD753A1341DF09CECDC7E35
-FD93E4C6CED141CA0D0EECD4082183D53A30FFA098E0A365890091CF00A54936
-495377E86A36BD3E5BF2E176B0208AE61732BF6E03ECBA8489B90D45458C6C17
-08340758605E9FCAFE7CC748512A78E47B36F20C79BA6EF572C4A2E4467731AB
-8340F338966807E9619E6D2130F050DE3F132CC4DBC57AF4A297ED553A11CC66
-0B85ACBFF40FE6363EC3F9F647544D9BC0BBD2EA890F48424F2F0C44C68BEC74
-24B19B6F198E192E7A381217DDC8642A5FDC2063986D2173E2D169FB130C6DCC
-521E23A7DB4CA08775987D2F58F748A03A43BBB4CF345B89171EEE0B7218635C
-CBE5EDDE42C532FB2A0CC6B4FC65F5B436AE690274AC97E8C1C3E82A64BFBCAA
-299ACD3E4F62ED6ACBCB7210810787241279FB90AE6E3E3B894993CE82736DC4
-2B4E10C97E1D557EBE25ABCAFCDB5C990D880321DB014431A52F36FEFA77970C
-3308074B679597943D1073CD1CB4138315CB0A74A014926DA36A888A1EFFEDA4
-999E5B25B1A5FE63CB5B1F55324876C6E7450C1713AFEDA559D4ED155A7FA909
-BF6F6B30270C93B23559B7EDD07FD7792031C536FF74E2FA32433FC2BDF74127
-62323A82F35EF707D37423B911F37E948F2174DF4D3FE1F8B787B9E896635F0A
-58595E77DE1B1D91520E8FFEA4F10488E50A840065BA633D155AAA746CF5FD23
-50D6754AE123A4B2AC4246CC1CF35EF0F82D9D46E18C33D9A6AA1E9E7FE1A74E
-A5FF30F870D916B47F9778AA7AB02EC4CB1AFE370466B8B718490AD0AF532617
-AE64A363A617E7E47BF48FAF88A5B1D9298ABA81926155DFE273746A52F3494D
-CD41A286A50E6AC254D2A6433DDFD9684916C8B25DECFB5A7D4B94D685DA425D
-C06136E9828E058F1C713B2D24A3710CE2233A20A9CB8EED0D3FC4C579D56033
-99A366A840282D9154ACA10707D8841DD4F5AF4990A26276DC085B8EC91A02EC
-F11A14AD8D700323AA2C8899B48554CC9E6F5AE0BDF2ABD466D6C53123AC706E
-53A96C7EF316773D87501FFB78BBF203A608051E6ABBCDD22E18B63DEFDBC5DF
-AF8241366BA0E01D7BBDFE684A9C9457942A0CE0C87EAA3788BD1092D1A9CEED
-1C03A4DF4D2925E28F002A5E7E4981867E449F5729087BA7E94C3BE0BCFFF147
-BDA227CC6FE66C28A02CFA09167F89BFF514684CB5CAE0EA6BB45C93532CD279
-E86DBBAB031DBEDC63E843EDCD2D16257865054FC97CD8F57B6792A5EEB5149C
-3AEF8D7F3D54B85401E588363F02583D1FCB81CFC8B45757AE9F78F3EAAD0EF2
-C5B73A50270AA183C1F5FBC27E0C1143DF39E972E7F7FC2C66517484317A9CCA
-1A39C7AC070094DAD681F2DCC3DDE8E5E0686D476F2B6640D6C10987F1F6EB34
-CC877FAA1F9AB3A6637D5C4D284615786A1094D06C931AEF485300872BF65533
-1BDDC21E560559550C96043FE3BFD9ABAC8B01F2CE08F55770113303BA2233AE
-A81CA5B4A4442D1B9DD01F0BEE7FA42F0FCD748C184AE8E0F6D228A5B3E6A667
-670BCFE3C7437E14C5A6B5B63CFDE1B26448998C011C47A3C59E53A5034B72AE
-63B265FC370F0C758366C356268E0B734B9370D4ACA7EA711E8B4B994055A6A6
-29CC62C34BDF0FD35AA78E667DE05646BB36BD57854C49BD69BFECEC5A7FD9EF
-05D0F7AD8619661E5D35C7071A690708C321171DA120E8495F5E8F36C13938E8
-BC63CA5144354AD6049DA467008514F69D470DA497C825CD0FC8B246C78EE747
-4B8602523D898F6FA637F8AA3DB3D8D2E27E7D06672075DA8135B90E976986EE
-F242A5490DCB536686C00FA826C027140F7F5D473B00DFA9761CE4D18E1879F2
-4BBD6A475FA560F5EC85240CE0D76299B9A40B03C51F21916DFFECEDE4567D41
-E188B89B310B1E33A6EA1D095F630074488F59A3BCC5450F39F655530E1A5B07
-39EA0FB3019245889E7BA9817F41EEBA22DC9B3095139981BD71BB874EBC01D0
-D52D1103EC5262A1FD6D2505E218CE130B0031A8FE0EA498309BB0474FA5A528
-DB00DA7BC41D90F2A66EB5668B00BA789AE15728A4D813F5F85182F6D16B2409
-197B40078371F9E6A6D3A4C771994FC4DF2503C7948B4E97DD0478E342152A2F
-5A91B2B72D04B6B05DF7B7F697A3127CB63988BB0ABC3827E2244021BC0F4405
-BB3DA3C12A471CB31F8151A66ED53C6AE4274B2D9A3C1CF88F8A0AB86B1BD3B6
-55CF316DD2EFD3EB36638DDAE9851C52ADDD8DEAA877CDD790A03042CC968099
-2AF7E1F0946B9FCE82FCB8C0D98FBAA25BB494E6F962069A6044BA933DEF10C0
-79F95FD66D129F7C2ACD578A490061BEB3CD4B1100ACDD96EE10A53C8DB1BCC2
-5DBB7AD4799DB01B0265B23C981FC9165F2FBE8C801E9A07F9040F6D6F58E098
-793A9C84E0B941F35BB74C82B6DF2E5D9702E898543876946449387738C67580
-B8D8CB8495AF951F84CD56982E8E2C55A2FC338E495C00F91785D118599D64AC
-488D7DBDB9E407517FFD3BDDCC075F7A641CABF8368CA6BFB788E00B4CFF0183
-6793F04601E214849C7AF34D2FDDB256671929B2BF0EE8B0E46383228BC3B87D
-AB15530FCC2121E9F891F74858457E789734D12F0909E1D21F5C3044CDB3F6ED
-1CA155D5765E2070DAB10DDEEAD9AAACF766A75582C1C20B9AD5ADFCF2D1E0B7
-7662B56B04D73F007F06869F10FBDD78E843D7BF741AA5A73ABDC393479FEAE7
-DAFB70005C81D387B960394AF016B12A8E73048D06A7A83039C3D53D43CA4A3D
-B1C0290A8502E3FE10D692428E2B5B5C3880457633D9B30DC69241D3162599CB
-0635C9D64C10E049AF2A04CBA28B0650FC356B78D666C041BEEA72A774D482EC
-ECD19AA25BA2ABBD41DF3FD1187B7D6867DCA8FBF2D60E728B48771E779F6CBB
-E6F4D35752FA4F0396C4167841DCBD1B0161A5BA019C9BB4CE4B4B010730CC20
-A92E2840CE301820C95F28E46E5FC4FE05C3BB23AE5965F010E48EACC2537C12
-D5521E5333ED7F3730442D654420F7F1B0F8B86CB4C3413208C43D91C357572F
-4FFF2890BBAE66679FE48D8EF935A3E50A0A2EE17B4DEAE2EA58A792E1FE887E
-16AED34F268BD50FD2A621301E3B4F22231FB1EF60A4BE64879E1F3348907217
-336AE7E609EC24C64276F61AE8146556A7E741AA198B297872364AD079CDDF38
-F99E76DF4EFAB0CEC030895562AA315CE8F3778609819E06284A26887FE0BF44
-440AA9530B1347290CE791377BC6D184D7FD6598201086BE3A2F4E9454D50AE5
-02B982D6E9DFEE244D794321D6CA46CD5D2BCBF5C40C63D958AA8A62A039E676
-FE7A6F57BEAF5F57F0E33BCF5745834D020CB4BEC82C4E901260261846A86534
-9BCF2196AE379880C40BFD58827CA049656F469FF2D4D5130CE0F976BECF2E1A
-08DB3C133B90DC8C378B2B2B621286D364941652A84C719E31744B44819B76C6
-C6B390B21BBE1064312D29661C46B3737B792B850526F6D26BB3CA39B831B3E5
-3780CB4524F948C7EC33A8E4499EA70C5947E97AD61329FD6A6C00719E602B35
-D565F0DAF6B0554AC168225C06C2DA0C1B71A51A9EF3E35A31E0CAE31248E893
-420E46A0EB13CAEDC853D85D82D5A69E3618BA2EB415FDBFD033788C368855DF
-0D86921FF800060D4EE3A8FC7C88A61F30FD2794822939AB8DB26DF937954906
-63D675638FAA01BB92AF2F98B28DCA1D336022A216927A6454D68041EC003338
-35AFD8E970E89A7B56B28D14F29AB0B937F7D6DE1235047DBA2FC59905F02BFA
-7146009A13814BD713DC78D64420BD3A90F791FDB5DA162B0D04BAFCA1ED375C
-659A5D383C8EE938653BCEB3E0CC80C72BFFBD46E4F16ADCCDAC6D36F28296F3
-5111917A11CE8B7A861B1E8548BE3049B8994D7B1C2222371772B42186731A5E
-0ADF67701B0923B87095CADF7033204D5F5241D677F017F7097C4DBEEC51BC8F
-CEE3197B733836B5CEB957BBB122F393A9EADDA051A26F5BBC0903F9273963BE
-CC6DDF021188A929660219D5F6E67EBB5AA342437D836685D894FA8F44E2C6FB
-F692720BC754D41B86467B68BF04E7723EF32BCBDE82F37824450CB9B3BE9296
-428EC5FFAD4FB49B74B57E25611B04DCFC1B980A617F6C514CF7DA0F66D6347F
-756AE39418BC2BDCBB0281BE4F46C2EFFDC1517948F7108937703B298B584168
-81C61A67A0094853C79A4064C5B012C5F41BAC8C29EBCFDDE5033C890EF4E158
-CB6CDF90AE33C088EEA96D944FA8AE5B850EEA2562AF5C5258D291025B8B8AE3
-EABEEADCD5F2D25ABB924BA87B4CCD99E8CF09FA18D613A375E9F7E032FCFFF5
-B51AB280A79139C3B2BA28BA2D089289FD9691EBA0AFA50C0EA8CCE00585386B
-3AD6CA6C612BF16472BAE5F1EA2F52EF923870E91BEBE59DCB7843F24D7E56EB
-D2936B10490F24A80ED7EB39A65B1681AA5EEC490C9FE444683C0C9A10D57DD5
-E2B17B90CF6BE85A86D783833814B56E7B9106C545F80A3284C3D3279100C0F8
-DEFAC90BB71695017377D5AD6918E1C74796F4B699AD5E74A52C07D8DAE2ADA9
-DF7429C8D8E9CCA2588DD2DF3855DAAF52C3152D49C2828FEC6C650200D6FA33
-E718FCCE5873325C9CFC4FAAD36302D07D3EB38C04A2
+D9D66F633B846A97B686A97E45A3D0AA0529731C99A784CCBE85B4993B2EEBDE
+3B12D472B7CF54651EF21185116A69AB1096ED4BAD2F646635E019B6417CC77B
+532F85D811C70D1429A19A5307EF63EB5C5E02C89FC6C20F6D9D89E7D91FE470
+B72BEFDA23F5DF76BE05AF4CE93137A219ED8A04A9D7D6FDF37E6B7FCDE0D90B
+986423E5960A5D9FBB4C956556E8DF90CBFAEC476FA36FD9A5C8175C9AF513FE
+D919C2DDD26BDC0D99398B9F4D03D5993DFC0930297866E1CD0A319B6B1FD958
+9E3948FFB3DF7BFF10C9BDA4EFE5F68A8CB1526990D1357AE6D2F7C2D2EF8496
+4E47B39E6712EB8908A3265E5FAB40567E866C244814449F1E993AAB422C3F1D
+DFA8C7118584F2E5197FD4BFA3A8AE9E953C6CD4672C0FF51E41C3A919749C1A
+F06650DF4C5E17492164BDBCDF22609A74BFA7F69960A64B9F949FFC2A807458
+8579366C4F41BDE1FDFBCC4845FA19BBB6963D65EE8532549274BAEBDFF24FA6
+03235D1BE37C06B1938AF369DA75BF38DDBC87A1FF445EAA16E1895ABE9506B9
+211955753E447865D33CEF007391D2666A046277A30A49804FFCED3FEA5EB2C3
+E52EE14A9F75241EA10C91974CDA6236EB840FD44D6DDE4D9B3266C3B99BD38B
+D835BCA8CB819C073480FB972CC028D218F6A1D344CE1B63F4FBF2C826F412E1
+6E0B05A26125865A14FD7B7030B478BB8BC6BC395335C3BA940E1C348267F4F9
+0AF97BBEE253511940F1048E175D3569F7D05A28851B6F50765FEB6C9654FEDC
+1BF52F535DB5BB90C1BD5D2EBF75E0AEBE82B20507F3C28A03746781018D4EB2
+298E4F2C27ACF73FA73EBE43F014BB575AAD516C0407B29E1653375135ECB74D
+C91372F06FA8EF37C31AF3FA48AE65318EAA6C34830A5377ABB2DFA5DA53A574
+4266FD34C25C8025FD7DD45F44301DCF03F51335198F9EE71CBD72BB906F445D
+EE6AFBA2FA06A0A045D56CDE98A6F0DE807D81F26D017B74D1C7A5AE254B7705
+7D96CFB3C342DD38DB5730ED913639C2BF3CEBFA6F3D493DCE5F8218F8BD8035
+9E6CDFB95628F7198CFA2EBDE1905F051BFC4F835C5A787E3B43EAD947EC893D
+9D1B04A9A7EE7CF3E02A58BB0867AA7C77F30CFEBCB4B3E6EC68F6B234FB6B26
+7A9D88A3CBF7A29ADDD1D212562AAE1F7506A592ACA0720C2FF4E162274961AE
+2595E81820B04A9E0695A13DDC27AAE1D1D4336D4A5EA976E627A55572B3354C
+9AE1D011E54B0FF279A63962341FC7B0E71B46855BD31F45CB80F02FA1005F14
+7D56C2DC7AB765E2C9BD3986ADC36D63373718B1564D72B4EE59A393C94B3C4B
+1ABB6A2D11E7324063259AA6ED1D3D4BEFCAF094189AAF89E17614117D6553D8
+97910E0091E130C8613B5EC556775B8B17D6F4B967EB1B7FE6C9A77AFB974B9E
+31CF0DAD81F6A6D87FF1F4F6FAF29EF67234DFA0C7A992BB8D727536BB3250B0
+C339FA0237D1A84877B856517ADE5E0C0CA58CA5D0C12070DCCF9EC1D28761C2
+4055936908ED8069B3899B6A449E15CCA6C2AC37596789060B7FAA0009211D27
+685B9573F4819CF21FE46ABB3B5B77F9D78137C27ED6FA744BD4865693786B0D
+94D0AADFF6E0F831DE843472766E323F5237F879194419341C9B049623BF42E4
+7EF714A0CA0416D18CFEC946B7373FCF6136A659A1C7A2C92029274D410C9208
+0F4B687E9FE212305D2A625813BFCABF8C5CE021F7922C7F5B2206E0398CD7C2
+573C59C6439F1263640D666F1EE274B3B519E4C1E6FF81C2D579525766F7DF45
+734877F8981160B061B0567F4420802523FCF31502819F55C9740A3FAD8BA78D
+0DE272B52766769CA2A98287BC0FD03AB564E3B7C1A43235A3A7E62EAB5CA2DE
+65CF83E3225181D2BA3D497D19F2231C6235A90DC324AE4D681C20E747B20198
+B57FEDECF477A9665F9E8558270977354BB3C87623F9F2A15049A77295426CE6
+7C76690DE6055CB7C33003E893348E5782DE7BBE208A1C9E4441CA1CF5C9EC4F
+93516122C798F73FA5D0E364F6CE25FD5137C72FBD9EDDD925A308B7DE8F1F0C
+DB01CD9056424424C468BB61CAF23D4801045CC6D8D925ACC6029904C00DD3F2
+7A330AA3B6FC633B1216B4F3BD6C5612209293FCE134F404B26C5ABBFE14FB2C
+AD93D49A5DC184A076C18A4DF83E358D253A9175B25EA39CDBE6B3F4A7F1AF23
+B7AB464C49B003307B0464AE810C65F8236B82E5A9C956949D9CE78180FBFF91
+0937C22368859355159C748D56A6AB0E31D8154766DABA6E29257D449D2B41B0
+2937E7CB77876810C326A0A53C12E01A612CC257F71E7E17819FCA1E76DFE920
+F40D6A40B7D53BEAFE531B2E9D1FEB3733B6A9EEC5F522ACBF74FB760B63D146
+D777631FFB12BA79DF04C04EB3E5BB99F7F3C9AAD1972B0DB5D73A8033E3A23D
+49391471DFDC5FF3B9C8AFCA3CBDAA74B05579623ECB5368C96552805616DEA7
+FDA854BA9325CD520F79E4A1C367DDE0210CF9133FE9F9C153904B40DEDFE7F1
+80A26DE9531A22A4F04308CF96B4CAC7CF6B9CBAAA53DECAC68BB900DF883427
+96AE34F762C4270FA8C167B32FA8831B0F1663B60630FF9F2C0DB9D7E6EE61B7
+98A1DAEE9410715013AAE33F0C2186BBB947E3A90BF922BF293704E362C9F0AD
+D69D4045F37040F3587B36522307F27A063DF405E21652E4E9D2D92CAF805C60
+7DCBA3EE2781DA9F3713A2E94AD1B55B957A90C023D9E4FDFAD8F9409C2067B0
+1437ECBE4F949054357693DA8C50C1E92AE7D54309D2D4B05A0F67E2C42C7E4B
+B84DBFAB3A69BF010F31A88B733345036F74424E801268B0EC63E1ECF03364D9
+036612A6B70A06071DF55532E9637F09D3AE7AB18276E8BF927705A4D71B75B6
+44237A899670A65429234E87C2F8582B3BB98E15D547F661B94E6DA581B4F98E
+BD4C0830AFBC663D03F86B666DC3482B83216B535D6C36569703374D62F4C3EF
+3D788235EBD98F3E37E61E053D3164FDD935FB2AC03743BFDF8C7378286A4202
+579EE55B822EF7547691BC1D637C32483B17D29B64C69F81E669046370011395
+9CE36732FE830498105200E56B96D3D08D6F1DCD319C681F1DB936D538C65BD3
+6705974F2C1EC86E695F3177FFAACCCCB6B985A5519E0436B54ECB40B0C7492D
+BF1FE6F7CEA5992370465667E90DA0DEE2C3279E9A9F056FAFFB6320F6326329
+82659E9521BA09312612061D14ED623D04F9CB6501C57E729B0D9D36B4E2B109
+35AAA4D6C8AF9D8D11588670BAAF92C559558F459F1B1E1BFD4B7CAA5233822E
+52BD7DD6663F97C63F50E14B534C3AD602D2563909D9F6774F4E254135426D8D
+FB9397D066140C8B35F2D4196C908DE3D55E883913E97C7C3961FB359C0D4DAA
+3D3E3F7DFD72BF2DE8F8FE7271FA2BA8A7EB9AC10467A358809C394BDE39B950
+1098FE0109F68A32B2D93D69DDEE6B3FBC5E344D83ADB377A0D2A7C6B15A19A3
+790F1275399F4318F83B7236D5C21B6457A1668CE163921C6B29C5B00C3C0C03
+29AE4D79B2BC1F3614D7AE77F49AF23F3B7D8229FE38DD06A7239BF0E6459C5E
+E5A375725678EE1312FBF20BF5564994383AD7D18F784B457D77002E206E973B
+2795255CD98870A908B7CBCB35D37DEF510229611F60F9F5545400CD9B187A36
+7BC2B4B130416D25327F50A19B8A851F48F4B35F784DE9DAE981D81D009B441D
+2A5331934980AF705D215A05D2578A5C412BAAB401ADC66F886823EEA7F0E64A
+42F3964A73F3CC57869661BF0FDF7AB7D8AA0106214932F557D80B4F9822FE80
+1964FA02B3EC18129D90A531C1C6D7AC1BAC57EEBA9A62E1FB8D22ECACE4F5A1
+7D15A77F5F8805A36DC79F5E640DF1FE2FC3A1F2EF957CEB9A5B033F1B9FDD42
+BEC12BBBF921681B676EB8A34389D515830236B77DEB27A9DD85DF883CE51714
+CAEBB07354451765CA6DBBCBE1F63E1B1C42A4AD23D2AD0186A13B65AE12E4EB
+93AAB5087C0BE853B31DF90FFA7BF5134520A5511294F16DA60CDCE07F646A6A
+E2B6C67E2E2ABA6DC4C167B2912B169FF26A11A6CC0A8A2C58B9C5A701369674
+546AAA3768444414FABCA86EB8C046ACDD65E990C9AE6DA11D7D9CD8C57255AC
+B2FAF52357443BD5BC0DDD5D394BBD598BBC13372A854D8D8BC5ACAC2C286953
+40194854DA67DD0A127C0AFE8331B8858C15F626ADB3BC402563DD23FB5F38CF
+4148CA008F08E2AB3B2147C46329DCBBA580451B1BDE2D7261B3C5730D58E82C
+C0AD76F06DCBF0D5B3DC24FE7FDF91F829C518210D3C7D43F85B67FCAAD7F3D5
+B938D5D3674573A401335FF79F641CE9F1E770592A71F83F1ED8F06EFEB69BFB
+379D55BBDB92815B9D5913A5194C319B60369E26FE9DF3CF12CDA905CABF94E1
+3039C6DED897B0D34923A1F443FFDC54CDBC02AF31CFCAAC4DF777C1F63164D0
+427CE2E08411F8F371B9A5C9D4C0CA6A000D7CC3DCBE9ACE04A9380707649700
+97E58C5EFCBA0392B8CFAECEBE0DD042EBCC2858D20D84CDA9B72E5F529892CA
+E72186BBEE1C248B184E43E8A30FD1ACBC025C0B2B2F165A2F536C7925116753
+FD264569B0329E2D1494B72C1DCB486AE61360BAC77AB883D4D4A5445C0B399F
+A11A7B1298C153F1C862FBF92F0B040F1A12D9FDA3D221DE6237D2E155D1FED9
+A5C5A2018CE5EE0440862FB749C69F72F9FF2EE7980F699BE501244BEC9EE94C
+89B0B226CF6581C546FA1AC9D31DA0C3DE9F17C142968D4C56654A2E2134421B
+A6D00FF62CC54B4D08706A3FE1256D195E2EB5CCA06479460B956DEB6EFCE00F
+5E8E6571AB8647A3339FA5F1A0C406C91037B39323493DCDDC0903FAACED873A
+BE0B10342E0998ED00134270770C5671B51B2CE8645FB7698E76EF85C90B9C26
+AF862AF82C602BE7A683E67A8A629CA60B2E1772059DDEBC6C1F4CAC74FEC2DA
+F182CFFB52D377C8C485EF838B9ED6F1F62781CD39B0B53350FF5D6B032945DC
+3AB0086808B07D65178506064F022851844E0D24F3BA9E372DBC490C9FC3C753
+F883B6E165E8EEC39933136058145311F54D725F968FA6B38C41D9968401EA43
+D3F66FC5BDDE85785C3A1F0B6B2811D51AE017066C27A87C8AA4CBF4E67F3BB4
+4140405A4313DE1396E6A605BB5AFBDDEEE40451FBF8CCCD576EE1C9D5166729
+E6FA45367F4FCD0339D60FA271DF0A18682EF111930685F459F2A568C29D545B
+352DEA8B75A744255D1AC6CD27260EAE7E47DC7EF88761781167D5BA23437F38
+AD1E0F1E8C329FBFA6EF941FB825F4E422D064E94ACB37A9C4B4379AB555D3D1
+8CCBC2B0FE59139C96A98688E8D0EBA5CED8C79C346747B8F00206D76EDBF6A9
+370553E18131D606AA28FEF9E310FBBDE66644F6181C39A38793489373039802
+3322DE077EB67E2234413A9C6B66B39440C64E926FB132ED4DDC2EDD8375D61B
+707409E409F0666DBBADB9CF29791D72E463201B560E62ED51C2668FA9873A6E
+75363B72BDCD6B6E0B88DE94BDBB08CB3195F183D695ABF0ACD56B6747F1E7B6
+CF49444430D681C754BD87C23132BD25758518B7416A8234F360D113311E0EDB
+D6D1963D511E441C94AEED80DC5C1C630269CD74502DED37FB2EE9137770DAEA
+F6FE1248FF41CD6552507608CD5D81E06CBA4E6A4334C199755EF5A528F8255D
+D3AEB9773C45E0DBB0DCC9FD21C3461D9A7F7B385BE6E38C53340B65B96AF4D7
+03CF9500A05827DF7E91734317EE02A64075AE1055315605CBDA4EAF149EA64A
+5FBC6464728B29BFBEA4FC4C9D8F7E8E02434AE2398A06980DB13CEBA8C244C1
+786345CA4FD765F0883BAC1E66C8517DDCD66E650F3B707AFF42F246BE1F92F8
+27C4EB26594CA6BD3D85AB0C16AE9C0332A55A5F3ADF7E7B04FE01CFDF07E280
+4F8B72E3829F8EB37C0B80C06467177BD43F04A7203778EF124E4482D6DD5BA0
+B2DA0AB43AF7D4D224D25F23A1F36C09EFC3B2287CD6C75D918471F9182A0681
+2F8BD94B6ED26A9DEDF4544A2FD92F947499F45FAEDC1A296803D41CA945E79D
+CDA3259A10DD95DF320A160599B5B40D6D4EC54156835531B5E0486F3F7A3C8A
+8A4F756507AE45C9397042C75E893848E841EF1B1A4AD0694A6F62CD3D56593E
+EBA472F0971B459F2150A756D2EEE1C40E7574DAD00486A10C5E5D26DF618701
+6BAF18C03F08E71D80207BE32212FC4E2AD31DE8B024DAFB8A917F8519443775
+0E840E81810874CA44D801D9EDF8FA49CDD502E09AC984DD53C5DA1022E1A8CB
+DC6A1D46F593D8EFBB25E4EA26168A1FE77710FF67AD5D173972C207FB55A429
+5AC3C767010EEEB91E84A130EB716ED97006F2D53D67B3920A6DD021A0311BCD
+BFCDE41DF8A58088CB31942ED86BF6DEC70CC80A5D5F205AD5077F4DDD458FA4
+B9EDA5DC5167775A6A29590103E7761E87561382928B2D7808F73DA41008FCCC
+478A175BBC553E3FE9E06A37A28852B765C5F92205807A7BBF718FF12483B925
+DE9958D443EB8D28CF77D6646E5DF98F7D5DD9B10EE3E167FE00588975FF8029
+378A859684E35D20CA3F121F86BFB0E973D329235613998271A14857C0C12201
+106D1ABBBDD9C40DFD6F99E9A800FB79BFBAB7EBEA45B32E58DB6C76B1894611
+093E6B892605A7B293C8791AF97B6C6D1C9BFF00816F7E5C59D29D84C21CD6D3
+6AE9EF946E9290F6530C53F49F882F775056C5BFFD62A1036765D7A7299FFA10
+BD78C6CFDAFEA1C1FD606B2FEC11ED3A74B2F839F318618D53069BED71A890B1
+5054EE225B2ECD0CA07E8F73A8A8F2E3CBCA5A1E6DB936FA1D498DD9631A3295
+2F87EBEE177ADF97D5275458F1E1920FBEC509578F7BFEDC29F68A69E63543BB
+8266FE9A2A56C17DC478A5B9DADAB96453E69A0F149D7881FE6BDDB85D7BF44A
+660FCBD760F9CE47856B5B8E6A0FAFBE84D7A5DD292E3F749C41D6003B8F503F
+A0EB6C690AA58CF91A0D6932E056BA6D7CAC4B4E3B0170CD062AA25DDECA5B90
+137D19188F212EE769EF7F1907BF1601C41A7A5DACDDD244B815E8CC1082C70A
+55265482C164659793EA5BE2EB42155664915280DD818425AF0BB822408AF74A
+FE716028383E553B0A63461501F0FB824995B45C03CE474C688D9B4E3F250276
+C501CF50EE0415B0BAF1EB6BC7946E1EA41B6DC2A88EAFCE106CD47C7BB55706
+A5690802563C78123E1918C4BE2153827E37711DFAC9F70D99AA17B720A09EAB
+1AF57783630A21C4484DB504358BA0791FD73F5EEA9E5AD7C47222E718536BB6
+5194C99490158DC4D317C757DA88AFF17BE37CC784489C8A1AD497BE0DFD5F78
+188B9763D6D5F86A21A0C04AE8E615D32CB6814C1C047CC76DA8B9A28305B6BE
+D1FC7A6C758271DA8EBC14A5BACAB3250A287F23A92D773052081479423D742E
+873DF31BE668A56047481EDF980B5364AD6C6838CCB5621C82C3F083928D877C
+DDC88B497CBDCE240C1594DF9C74776D65469911FAE2613889FED8DECEBBC905
+D25A3E8A32D3C3E3E7F5301343334FF2D95B7DBB0D81D5C9C1483940DD6AC53A
+34D96E75E9695CEEAF506A99AA6125198445143ECC38A1CEB36A69445B59EB88
+637717B2E4CF70A49B3E0E933892BDCD5118E0615E933164F5D26B9643E53791
+4B458A1F9A46FF0AC252744FD16834FFFFA823AB5647C080734858109885EF0D
+5B27B3DB68888BD155A3816A96BC5420FB8B11064BC62B2C2212D5A8C31FF5C4
+D63AF0CD523B10446B2382AF5922FFF462236905E5BCADAA6F05A2FACE7D8EA3
+B32C2F7A80FEE1DBEE79022F2197041C462D0D9D56958D8B4FE9C5F3830D416A
+4144060B3E76C935E6D666A9AAD10CBDCB005A8303DB42424918C7E22EEEE57A
+1D25A47E2EB4DDF61D5AF897AFF26B06FCF84AAF3901C02A7A7F1F6D7730E228
+21F10EDBC6C5078B0FAABF2EE3863040289CF00732DDA397B525BCC7A013EE50
+BDEFC037D17B47093E58E4671B0CA1DC9C2F78812232C4B9C9833F5C30A5E6E7
+88B5E307669C85CC7447DC2EC31D4FA2A32286C2265DB39AA563178D55B70EB8
+A1E85B47CEDA0FE2566B20946DC534805B8C1F09675A0E7938604667F26A3FEA
+EF02FE81F9D19B6C7C64B22FD43B2EA90F16588FCC3A4B13E9E1CB0AB403D85B
+4012CF350BE2AABB1D47E495E9D6943ACE4F7798BF71F7160B79CC2DFB1B4B4C
+339620E159B5AFFA0B3822F7A459EBAAD210B8FCB1C522AD3CB0996BE7991E4B
+6301220B4FCAA50E8B8DBA8EBDB547579A08ACF96C5EB1047B385ADCE47F199E
+4A3ED80F6DEAFBE6CE9C1FD186EBBE5E7A230A5778A788AEEE5D2E60C29C6BD1
+8EEB28FAF781CF9742EA660D681DF258F7E66AE6497A8A57E790DD7B628EF880
+E37767C878B2DA80023D76F121F82B4A20A1ECC26CB1589EDC2745399997D0D5
+26046E6FCFCC1CE7C8768C7C0A59C881368EFDE50B4388CC62A7FF1976EC67DA
+D31A4D1551670F925148E87D0C4D09DAD6C7302617EB30B5DFF0BE4CDBD2103A
+7B5D82DAA9BC015D27DCCACFE09AB7185BB110BE6D3E4ABC79CB9A7D932361A1
+22017673678CA07F45830483529F0CC126AC955A5F8F924595D2EDE6608E9D59
+EBC6E563F5C3312AA5AEC574293471ABCA800B56087AC248A23D1E3BDD4B0C27
+6C4E7454FE2FD64294BC74E7A6043AB4A530D9DB1E2B50C9F84F0A410C69195D
+D3D7D779C6A164C2B555CF1ACE4A51E74AAB40E95496B4208C5C1F50E46AF6FD
+6ED9B2899F21F29812ACFB15C5898ACE8CA099407C036ED520FB3B59690A85AF
+0EA34C1F3F7E8F3ACC5A5A291E61C0B6E99B5A2F20ECB96D88DD487C331D9A14
+52F4D45C0F89A1D66551F120942BD1315944190D421F8085179B138AA6D17974
+75BD2EBB39C052D990CB06B43CC659D575355C8E95059333FCB4FECC43ECC8C0
+8C3DE8A707ACC8DA2CAEAF9977693D948173A4F348F85E5D1BF6F43DB3EE542F
+E17CD0B9DCC36608A359BD4045A8A1AE1CA878AAEE6A8EB368D655A971DD2F6B
+8099933835FECAB23BD43A4A8572BA1D1DE6352FCE7531409576278D289D7FFE
+6E22ABF4F9655C3F91D7B26BBDCA34EA03F85F653E545692341A3A4836C8AAEA
+119F9D6EE67F019094F076EFEA9DE592394ABE5027A7F60EB5665FCA91AC1F49
+B17A69155831DEDC7B8EE627D405A4026330CC4A9504C8130FB557F267B0A682
+AD1E61F3D86F3DCDF0D15ACD1A8D01F2D4C86009A466BB1787F3F24C992EB48B
+9E7EB50A657F1E201290C4EAF4951C6B1CF8D52D7DEB8DE11A68D4C8342C0DBC
+670543BE70ADA4D11C3FC6DCD0F09156F5A9895368507D240EBB20FBE6770286
+668C8C22E1381F85C895A176A65DD16DBB8E9B352070A3E730B86124CFF89A57
+4027DB7F6FE41B7B2941EE61A16B97F70584CF0949269EF5D74A4B9350378B4A
+EC8DB7E3DD00A9D757BA007061E8D368E8C2A0CA183348B73F62839992CD2233
+ED8DEBF786FF1203E80FA8656B6ADDF8E0F328A9976F8E70158B35C797AC3C8B
+03CCE8215016649237C07139EFBB1C21C26166CF527BCCA5B12603543D6983C5
+B6E56F8BE7C6C25E02CE8A530CCE44625C12CFD7DD7A0795A6A4A691ED519DE2
+CEA7F11B8FE2673721A1C0C3DEAE6B018BCF9922FA5AAAF2131F47E959592408
+A3FB263E531E03CD9AE19911D3D52A854DA973CF2D588379F500E8012407FB2E
+F126D59AE14B4376D380C341D2B071B9D5827FE86DABA6B8ABCBCA5403D4E4B8
+A138F786F7446D0F246E6617F8D68C0E651795A208708A65E245D9D9C4EB2831
+7975C3984E0435ED8CDCCB8D46D73C441254636C453171A190CBBDD84AAC1388
+5B95E3242DF8C14B9CB31B098FA27D7A890B2CA896FC367694EC2BB946E023F6
+C43F0328D0BB414EDA3AC530CD65811F1DDB7CA7FB2F34CFCCC5DF66EBA304B7
+D629AFA3B8E18E57E11A38CA063D4E0BD191E165FE2C4C4DE23D95CE13E27E35
+FEC07B1D56D6661732E1038F52159684FB589379A2AEFA6751669F20FDFBCDBE
+9AD620DFFCB7F4E357916A8C2B81B16BA905A213748CC4B871E75981D061C925
+ABDD0A7CE0647B1737275F7D3B471ACC7DE8837CA285B5197771B0399CF1B724
+A4F254873D56B9CB30E1D92846546C753C5011F0C4DB03E65A1CFF6988831FAD
+C5638014FAF24BA333721CF6E17337B410DE6F6242F789D0BF563AB2F5ACC7EA
+C2A002A0781EB57E3CD88DA55ECDB61220F15F8F96D55AF031E1D66714B02EB1
+39977FF635EAD995C2D117CB32422285CCF08C7586F9DAE27BC066E1293AF458
+EC08D1458F49B2DB4B437806F6830BE94F7C940DBFB4A400836579B85FB603F0
+9C605DAB9BEB94C25F15DB5590304CC495D7C75FAAAAA64B94C55E10675ADBE9
+C573C08BA7E327AB1BE0EB0902F43A70659F40A65981563C1886188CA31C6422
+73EE56226FAF21C7F08C93572EF5EADBD56071145397F7336BC4357F2D618779
+FB5F01D4AAF340F1849C3446AB6E7ED2E0EF7E737B9243FF0F2387D1BE646AC1
+3FF678BDA341204CFBAFCD7EDC385804EC46DCC487FFB06D6DC3D582F84E0ACA
+7FE7CAA9D4DC2D634CDB831304FFA81887BCCA0ECC1B077D2060CC39695E278A
+B740862F44D76B4B03B36B5D3D460F5BD61BF3FC8B7EB88D8A3B1191EC836C29
+AC426828ACF7482AA0FBB6625BB68CDDD33DD5F9929783B3CC95F12FC0628EF9
+613EED20BE12AB8B9C0F4D821067925E44E0A076CA5053947DEEA88B5DAAA4C7
+09B84B0B8C3E91B7895018F7B5FA0A9B66B9A000BFC956523F3DFEEBEB11CFEC
+AA72783A789DEA8EEEFD5260B841B69B282AD0867E0B57EBE7A7249A3D4B1160
+A288D12C84F1AFED3C2E1F99A47843B9711FCE8168ECD715DCA859EC451E338C
+90FC0902F798C344197D2968D4D29742C25CE39C39F644C396B1C591159E48A5
+7504FDB350539F2F804EA6DEA15F53B5BEFE32D8157CDA9816FDB4F8892A9FC0
+625E62396F5D0A0BDB9DEB95D53F6AB3E6E82AA080D96ACE5DF8E07E0CF5C0E8
+09A6EC765265786B80790D72BFCB688A8AE939FF1EA5BDFFEF1E30FD035775B6
+1ECE425DB459E97D18D2979CBA44D6F1E2612F9F13BAD3348F0229550ACB06BF
+D297A41E73AAFCB9616D4EDE62D11708D6A5F43A944A1BFFAF023B946C289CE5
+FCDC0B13AE8E36ED7B4F3A73E8168B3D6141DC572CFF34569ABA4F2D1C17BBA3
+C6E93921B2079280F00A12F1F7485D6D267C1544B2F81CE72EEFDA4E1E7F2D88
+BE36BED6F652FF9FE3914A0ECF1F0C121C11A62DA1A26C57B2064EB29C5D5742
+C530274EF2B013D220E68EDBBD95B5BF9115C423F0194FCC601D92F70C1A202F
+C2EA0C525220DE32B31C1BDAE1DF49621B0C4F146554AC6C9E9592BC6A5DA3F8
+4CF299FA34228271918CAA61F415D796A061BEBF293804BF19698BE687D0FA2D
+303A8F7390BACD640F2AF9F8355E65B0E6238A6A3DB01AF6B45FB9E03337C3AF
+EF5C2EE53C6E215D4A446EFC92526027850B4974257CD8218E817ED417F6FE8E
+830DA78B5F2A9E4573467CB30F7B3AB1EA846AC1F037C973206E452554D08D6F
+4D3FAE1796ED267142F95D68F42445B76EE228DBE4AB9BB0E52214658CD0B9BF
+313B0C57DE75B5304C98792E12E10E66B44166FF982CC43988DC9E766C6BD0AE
+65A02C615E5D8578C507197A9D67790FE0693BC623EF8DDAF29350C0401AE28C
+2B413D4C7871575123B710F411502F539850B195BE112312625603FF79C8C64F
+91256377F7EEDDC2AE4A389BF77710060E66A23BA8C78D038C3E01A329E5F6B2
+F7216EDFEEE2A769FB42628E07501D9F9992B7704B38B60522D756B8236CE1BF
+DDEE2D5811940F65BA7A783622150FF5B2B50F8B574FA3DFA0FCEB9E6DA7F032
+97067CC9FEAC2F160FBA258B647AF8CB4328587FCB0CF553A37532A1FE945DA8
+93F598739943219C5B15C3C3EEE23C367C4ED4044CD7A36065A19E6920D6175A
+2D452D64C409C95C43837BC68366BAEE78FE9F0591F246779CFD15645B25B85D
+DD9A650F19C95803CEF0E1A0F8B9F529F3D1680E73ECDD9953B86C6377D7ED15
+18FFD5A09596F287DC9DB37E8B7EC402E8232C4056A314DE0AAC295C68460A24
+2FAD527CAF898ADE28726C7037EFA49E9D0E2921452D7DD0293E46B665CE05C1
+B715FB200A73F66D292BE489BEDE4880D8039D07B7FFDB93F8CD1407D3EDFC38
+388DAC0EAC5A57BA3D890485689AE1AC360D039F9637A74E645A851308B1A56F
+C1A0A11EA077DC1366D6AD3263D608F748D4551CAAD81DA675EE48948B79C6B6
+A1E51ED1EF1586893DDDFCC2A9FE4DE8B88042D6CB2F5EB5806503277D24CAD1
+FD887342196038D5E43E8F934F505368B49261BEBE94A0F5B8EAE4B2DBEF74C3
+9792A7901E77DC87E27C7BC387C4905651C0594DF304CD2E3C88003CF440C3C0
+0C824DED3E03076F8C40347EE9E936BBB7CF7BFDA719FE2D07946049605DE17C
+4C9153C912A470BEB4A89B615B9A6812B89E3FDC2F3D4EEF584284B7EE7133CB
+B238102D0F42C8EF749D9A0F520389117C8FB071A62BEB91F605A79FAAFA69F4
+E9F648DC66D97BD3436D5D1B60E4A3B90F362EFBDC897D627E35EE3A42E9EF80
+483825BE627171A3D4F7A233782A301EBBE63279712356CB55EE4EDA7DD37E36
+2A604D4C9E5BA8D7E33291FA827DEF19AB281704E1B961B44B7B09770955DA8A
+16866051A0118A75415079AC4071050F3973066C74A7B7E1DA63E6115E972760
+7B768738D2A68C4C91A6A1AAA51902B5D2278AE139F34999A41B52002343BA54
+E603B3CAA7DBFBA159FAA365B6E99F77184F9836D8E09503A2B13B30AC9A5F38
+429ABEB6D248CE10277EE94CC5BCBCDF14E4782E33A4FC62F2E10D004F924817
+EC418ACC2AAE2A038305D11B10DFFDA1C520BF3EAF74B261A4A576FD42283944
+E8337A8BB14818EB07834AA3F325F3208243A7E63CDC17E023F765260D6E639F
+3B3435C2831350E00D42886DD5F1AD9F27C9833802F371F2F3754583E4EE0E4F
+44A207912E0F1EA954CFC46B1049BD839DE2D5CBE89A63E7155098ABA7A11A21
+C437B7EB1F9DCC0C835E32A21BD0801D55DF76C7B5EA69D05DB551942CC88D56
+C40EB18559008249122A7CCB34958FBB652F4AC0861D3F876355AA6991967611
+83060CA69699B55291248CB1552F7FE5FFD3ED3588F355244F92E9739B19D63D
+602A626353B9FF981D753C4FAD459D4901398D6A0C90B1359BDA2B2415F907DE
+930BA7E6BE2965FB6F30B5F4A9E01B593165D449F4584AC74E3CE0F9992E5CC6
+CF0B0A29645FAB553EC921BA8299C3F9574F6D574924E73A459F9880D2380981
+48D8FBDF8C69E2C04255E5C703FF49FA0DA501C600790241BA80B054C9A9EE95
+0021FA24545488FE13A43BC525AC54A3C7174E70FE614B501011726762C363BC
+FB7FB7442E49C24EFC2776A62E614610B4C9AC1634083F24F6B1763BBCDC9B78
+88165636237F6F576BA18276F4C516D3DF2B5BBA86A5D1D95E4B3A1F1B08ACD4
+A95D3D60EBCC72D17915C79BF4B01B3F22E2906C7FBAFBE052E45847E636BA33
+C375282E10A3ED322D2A4448277DC6E753D7BAB4A3BB68A83F5EDB438409B1AF
+254DC0388192D25EBEF4C11C94F69D0B055DF9A0928485ACFF321B016C48DFBB
+99479AA5B10A36C45D821B6E1A32603BB16241323A75E2F0FC4259799C188E79
+4752A4B0E79D7E1FC942A9036CB5E2EA31347807FF0148D297F0798B15961C5A
+C5D69E92AE905E6DEA46847B77ACF8B58B4BE53607C3E7489A23B766878ED29C
+2A60BE2983FBC442335369E84B18AA354FFFA76CFD0DEEAB35805C5B6DDB7187
+C55124BFBE8AA0EF1BA8F2E1D19874665603C62308987889E2A27E6FC65A1D3A
+953CA2AD9077EBD0A2CE4A836C4B934606A5866F5E80ADE38B2E15F75DD580F7
+67034C65FCC20710D873EC9E156A6ADAD0C0C1C8F1376C3CABDD560B9DD5C88E
+DD4B0A9408582BC50A82994625A58C85A4A0865731C1EC6D12A17DC592B8FC13
+ABB9727AECE05640CC78C67C18670AE84AB9826E78AA5D24FE1E5DF2E1B5B5D0
+89ED95CE5FE021F106F9F7F721D30E748A36EB2816689CCFD666E99687DDBA73
+00652F852D59CF21F116562D29CAB6B6E6CF1190D0747680D20DB694E2805E47
+1DEE41F3A1867B146A5D8790D26375B7927DE102EDCD2588B814B3C71F6FC973
+7C5862035DAEE63F6FDB3278BA56CA4B83B6B36FFB533EE78E0F4BE91A1DE3F3
+F646C10C8ED0010C24603C3C338670B78DC72936E2E482ED6B4930436773D943
+1402260681597CDC3E082E1A9ADB9862C9340F331373E525D1417192EB92A61F
+143DCE192A9B43728535D2ED22B8C35D38DB5EB4F7103134FA1EEFEAE10BEDF3
+EBF65BC6D8AF10E3121D0559714DCDAF35D4B4D9355B3F58063F9FBF2867761B
+62E3C2669DB2F46131988C74224BFA6BF9499422DC700A660298BF587814AE98
+B14214DED8F280071DDA88BA67304F2F30937164E5B9C88C394D228E7BD436FB
+FBF420E8C4EFF5213669B8637B07CF7F8522FB6E5144CF5764253B1902712A5E
+07A2BA96CF9931343E9F0F41480D04A5262C48FBB228DF773BDA28C12339D43C
+4590FD1064986DB45BB32C67A6EC3BE5ACDA7814ABD545CD24CB4DC80A3B5847
+15257C80A7C0FE9540DF3B793C269B394DBA6F83F2A93FC7083F4F12D172CE17
+C5E0D3011DB8D476BA067D88FC7938B00CB2EB0A70C549F0946A7B5703889E51
+01DAA95D6E8EF127435D57B7E91EED9B2A259A470785B7FC7A0D4144899CC22D
+BCAD693E3F0783BDD11480233F55185B55D2687B8B870903CD2F57EC9BBC654F
+3FA31D5DABA51237B515B69D4955A1A698E1577BFF019C1AE01CAF46A9E8037C
+FF515C339473E00FF5A8FCCA1F145705B557A1AB7C9D031FC05251C5776C0F90
+D2A0FCE4F436618277069D9925B1CFA806804A5229FAC4BBB1C66DD2139680F7
+F39F93F6C500DC4C468B7D2A188942D64038EEA643AA3677DE8378006D7C2981
+E7F2E79D902DBA42805D88976368CE854A90D98470715864028679259CFFCE81
+83E4EC995959805DA2D16C39212B94CEA7DA858BE11AD53FC2C21AC2A53E773C
+A8A59727CD6A42F3D8C0943CE9D1297799FAD33D3D87BF8EA3495EC627189B44
+D26178D298CD581804B58844A9A50FD67AF268055A2A68BBA4D23868E271DF79
+4C0A9DF4BD8F5F10D193A3BC1EC30CD710E059F6AC35ED92433BF0036BCE632B
+9965661A1F5914231443773BF3F54111984A0A8DCB78356A521BB1EE3716F64C
+A84C4E46EEF3029C95AFF9C2793D03DE72A066F15D1828E8C264FE043D004E5C
+E573FA9BBC12B00AE467746E8B3A85FD60209A8DCDE0DED0212A62A7FA21E39A
+80B4787F0EC4E94BBF6030B11A9C11B755E4176B0875203FB64E339A69303FB7
+6758B7812A26D8AB6F3BEA548EE9181C9C041C054486877D57125A9A8F9B2F7B
+B3394D2D4F5FD0047AF88D4AB0C5E3319F9FFDB1FB3C1389C54057618BD2724D
+8952586290EE3E381C04EA12C4B0F3A19EA6A103356AE1FA77CF360067912131
+16626EF95D11E02D742598B93DEEBF44DB062E9D98FE3D82230E0F8005AD0842
+86DC28696FE0CF34ED8CD4CBAB304B6CB6BB0A7D4CC57CA8426031E0EFC7FAF7
+3CB8CED97A3DAE8AB8882035F5529504747776CB9572AD6F972A90ABD1E274CD
+6A9B55B1D761C3E9638983E82F477A384978659C0E16CB2E3F48ECEEF95BA69B
+51E776F0DE1A8CC197C454EADC36D72A800140A2D7244DD2F3FB72562B8939ED
+88C15B007F723784AFFED8477F1F42B9C02F3CE29418402DFDAAAFB37264E1FD
+7C263A150DB1361D39F1C11691F0963CC08BDCEC61F1E2AA2A2309CA27748513
+B6D7BA70C11933C9F53F5A0E45228F8BA265D2AB0B0DB77C2B038D931A1E1B37
+C9DEEA0ADF571F60DDFCBC3770FD8A71D69E58357583BE7A3BA8B89641A27E8D
+43FC961DDFD79A7FC5944C68659D60D194413D77C67B958DEE6B92C64B32D2BA
+456ED7A7258262EFBFA59309958BC37C34681CD7608CE7E3E30DA20E51E9E331
+D574734F35999E3FA0765BC3F1143EFF6BE1857AE5C1FC2C50DD76F30FE7C98D
+D491DD4AA98565042242997B405F199985DFA76F6DA8EA585E67420D2FE83F0E
+F4EA2958DC11F39C8CADF7B5466127A65263C6863732425CA50DD973D8508E6F
+CD254E64DEA75530711B82AC694B2D6681513A14CA5E513B9AB5BC7F541028C5
+431B73AD11E0016DA011B13A40C33E0791B6984286F3583DFA78D92A06886847
+47AD0EF50708D8BF5C1C394AD535AE72CE222608A0D11814EE2673B1222CCFB1
+50F821AD884F7C308F954457440780FF8DD59C2888C72A6070E5DB6147013F18
+75648A37ABF2B800BD49520BB7D4632AB654140F7E8E620BFB9E6385030AF265
+DCEE0A7F0BF9E6DCEF378FC764F113783B936C2145E620614F42148DCD6FDE2F
+C98FCC22ADA0BB59D882656534E6FD18BAEBBFBE2DB8398E7C9AF764A90B6B82
+8B8300D073D613CB2F19D0FC1ED87F7E3BA729A00810C23FC210864E750649D7
+466EB5E29473703E1B652DDD34E6C336982645FD99846FB61D472AF0EC7959D2
+A535FF0FEA16EC362268B28302179B7A2EA890FE93E953FFE56B8A50B983B29F
+E587B4A69C3FCAC848D6476D53CF514F4BC36C4C71FD4108BC85B9E8A6D4D274
+98368D4D076DCC03D256EA8EA76DF45E9AFC7B2B47B4E06DC416CC2CE02CBDAC
+B3B0861C4B304CA1D925DA5A369FB03E2E3865E4B9D8A1D8A01492874D1A14BE
+563C5833C0BEFB21ACD2AA4F7C14BA6B848C7326745A355B518313084AA6B5DB
+60AC188783892869D4E88B34DBB70DA343262E8A9301BC9DD8689DA9BE0ED828
+3D744071675BEB3504C7BC78B32C7144A43C657E9A8AE6E3316075EAFAD3A600
+4390214C19306535A35F77F4FA69A44977710022D4345E640B0CEC7ACDB4F297
+760138D144C01514C134615295A3B87C145A90790AF9A238ED3D06AC336608B0
+8EFC8F1251E28B5EEA553FEC9F4A38BA695833B16DDB796254DCC54DB2593055
+D6678D205A966514293FA7EDE3F028FAC216E696125ECE2013106FBC4008D02B
+3E62672761310D48829CB0FE55BF2FB1BA3E381BD5D480A23DD28A32AAE1BF1B
+5D8DC41D3C092C2813684C2A34FDE78EA2454CFD2E7FC9AE886982DF6FFFA12C
+9828784E035FD3A6B338ABC99CDEA5D2AF2AAC54374C066815F9C7511E207CDF
+E17EB1280F4E2A82EDD5F3599692EA79C2AB530D0B5091ACD9D85F18070738C0
+B12FC75F18EFDC84BE504FA57072CDA37E89206C72E181B10E37A596E29853BD
+8FA3B9346F4D58A9ACDDEF9AB59478573D596BBA3618780B49E464E5DAC664A7
+DB0CD23F1E8C4F30103FA42729567BCB3EF9BFF456E860FF36771231B3819DCE
+3E58DF4F3C8C342EB75E1E35881429E8F02F515DD272AA0184BD54A3694252D3
+4D6E7A7C884B1D3AD12DC76612B4A820871922571F05C8100103504EC1E2EB1C
+DE0491D9F2CE69E3BA120BF82B5B0792238370E26E976E3C030BBE7B7C3BC6AE
+95C4EFA8B112CCFF336CD402F79B3A4292F72024511E952436E15CC39E42939C
+3CE79AA40C48624F60710C72BD98D9F7303422A06F6681B822A05CF0D53CB2D4
+886E4D939997E0B3B133C2C2DFDE1036B86856C0903702C20D583B9C33EDE90A
+B1DC466C8A42D7EF13C0AE9943D8BB40146962C2BD1DBC442032B1F7A8A4AF07
+81266D0AD883AE6EB630BEE885EDA31EAAF12D20715A296937DA2C5E01409FE6
+92C622D4466AF51EE4A14318882CD2178061B3B4B3CFE6F2FF5175BF0904B2A4
+756247A731E3D22A5923E12A82CCA4F68E9B3C34995FC8B1A5CA123D8FC4849A
+D6287F8569CCCEAD9ADCB9A5FE074B51D98B76365839ADD00DC92C449344DC1A
+C0B40F87B70BFF7176C9B1CB36289E2DDB776A9CA65155CBDBCE9D1F69EE43D1
+3A049D7C9A9308D30AE80D9B580C4C9C399C5338EA6A6656D604216DE022A5A6
+06D56D8B7186DD81BCEB4F1D06A9C3ED7C98778E7F7B20576953ABD820F4CA78
+4316C7AA88AE34DFDBFEFFC4FD44FD52653A9446FD2AB458AABEA6FC654AB5EE
+FC432CB879FB9EB1F3AAA45B3B5FCB6C33865291133EB3AC6EDC20A664D25550
+186D76C86EEC67DCEC2EB847444ED5FBCD41EEA85C3598577AA192E02DEA1B92
+02E4E366EA826E2BCA13180F1DE65ACE3FCBADAA8A1CD985988596EE38773F09
+4A02744C83EE6F7181A1C0B910E5CE26DD0F8129E8C0CFBCAE0D4BE3093FD93E
+49C29D4100D7E781FB9B1D2C9B5AA2A7D122D0372CF8186925191BA99B674B96
+4C2313558EF26037F114533AC23F72822175A866D98528E057034499C62A0459
+4E13554CD6537F798B9761FC097EA3F4A924E4E6CF1037A4F5BB323CD64EF290
+0A615EBF082F87D5DB41BC6B9004DF497758D6BEA0EF74F551A600105491C809
+D0047FC373E4E9DD77AB79065E69D79511C352E0342C0C61AE1CEACDF1AE1DD5
+E8F7C049763A5DCF736ED1FF8A6429B49846D489A833E41694184BD9D24890FE
+783145521CCC54363CEC57D84E94BABA61B64E5DEA8DC06BED69AB1104EAD3F9
+BA630090AFA11A2B0CC51341D2691D6C4456847FC3B07A84FC33C77113198887
+82F5E9D0480AA236DC9DEA125F657AB6C81BF35A649873BC73AF20D77D0F3C26
+890E3C678547F630EFC01E206782608A94A9F765707231AAA6360DCE6D240035
+8E90E60C0E7C7D55369A150E2154FCC640A030914D7C928A81BA
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -3176,7 +2736,6 @@
 dup 58 /period put
 dup 59 /comma put
 dup 66 /B put
-dup 67 /C put
 dup 68 /D put
 dup 69 /E put
 dup 72 /H put
@@ -3185,21 +2744,16 @@
 dup 79 /O put
 dup 80 /P put
 dup 81 /Q put
-dup 82 /R put
-dup 88 /X put
 dup 98 /b put
 dup 99 /c put
-dup 101 /e put
 dup 105 /i put
 dup 107 /k put
 dup 108 /l put
 dup 110 /n put
 dup 111 /o put
 dup 114 /r put
-dup 115 /s put
 dup 117 /u put
 dup 118 /v put
-dup 122 /z put
 readonly def
 /FontBBox{-32 -250 1048 750}readonly def
 currentdict end
@@ -3224,187 +2778,143 @@
 74109050FBA2602E72593FBCBFC26E726EE4AEF97B7632BC4F5F353B5C67FED2
 3EA752A4A57B8F7FEFF1D7341D895F0A3A0BE1D8E3391970457A967EFF84F6D8
 47750B1145B8CC5BD96EE7AA99DDC9E06939E383BDA41175233D58AD263EBF19
-AFC27E4A7E07D09FB08355F6EA74E530B0743143F2A871732D62D80F35B19FD2
-C7FDF08105847F13D50934419AC647CBA71DF74F4531DC02BBDA22AEEA3FBBBB
-407E0ACC52BDC60D01A29407CC4F93EB8BF6D4813E9BA858D54F38918AC82720
-4956D50291F0546E50FCAFA6DBD0099123F5ECD4AB338DB310DB4CAE11337A89
-8ED99B6F483940C97544F888EAF0CBEB11094A13C073D0061808662A04A82BA0
-AD35E8782F854AF66C20C0FEF18D0ECDD1646321B93D327E53D88CA0E825FA95
-05AA57BD70E52EA0396B20ECDCB589689BC5EE0D3592A8DBD05AEB79ABE812D0
-3E46E3579EA7AADDE4791AC5B8AA565B8EE18AE15E42AC7AF099559AEE3BD2F9
-513940449AA4DE15BA4B10D4F05F44C9BE7AB2FE29F0B227B36A0F9E8252E69C
-DE135451FDAEB52B8AE11A8B331DA9E103128C5E514AD8A9C9FAECA16B4E9489
-B3C8E6D3983EC23006B39BA01E87579C671F9532E23584B7E33A8CC11B1D0AD2
-01939D97A84CB33FA6097F17A630C5C5F5BA63E6F819700A13CEE8F10924F0AF
-4A5CC405DC5308191F9E2EBF074CFAA720E242C497537FDD628E5249BB85A708
-281590D560A5BA8ECE8EB168E7DD6BDEE07101ACD4149F6332060817B3F1785C
-04BAF230BC9AE077F2196695D50D740B308F76F3A468826A718E3F8AD3770CB2
-F7F1D410BE2E74C953D13C699D7BAF8A7AE71FA0FC074F652E62E985FB1ADEE6
-18DDEC4F01FC3768BDCAFE2D62BCAB9C1365C6C27A819C5FD400B3FF858963E1
-919D9997CA721FDBDFB7D9B13061F4D8C4F73ACA8F0C5524AE3F23383D4E71DF
-6EDC3203DDE466D23024CD887F95E728F49FF8D064346080B4D1CBEA9C60EBCF
-BF9C2DB03F6678FECEBE86D51CEDBC84D574A03F96DD9E1B35A147C38CDD9209
-8DC645430634DF91BFD61520566D8055836C9BD8A747C64123A686ACDA3E1C98
-3AA6C3ECAEF4731A5F221D117C6956880AAFCABB1F155330F5717871D45AE094
-AAC55038CD0EC3E13B7B62E9EA7FCCFD5001363252140AE250A2D7569F00438F
-C84E7D6795E1440EE418009883503D0F02ADEAAB40A85A5D1D8593ED8D2E8D3A
-734DD7CB333A10F5E2E662F28E7E1BDEF297350C3C0115932A078F66BFDACCDE
-20C40928D487103167E7A8BE9811AF38B5643511107F6CE354755D31FF7FFF05
-30D8682871F78E120AE2A29ABEA76406767E01FE478383CA6B6C387385FD58A7
-8800F6EA3B583F6D4049C480242A8AD59049F09645F998DA33DAC8B47B81F6A7
-626A205BF0489081CF31627A3FF35963A9965BDEF737EE6AC1E9D790FD9BA033
-92CE1018EF4E616C64563845CE5FA88B65CC1AE51356BF859F4BD609349C989B
-D3C9A2A0690F2EC8DD022EDF03E69CC035A1786BBB385B60664222BB4E967516
-8D1F18A6F0CEF8FA4C32FA0930D28213A0EA85293F25D3F196507BC0338DD5DC
-2E10C0CF4010CB96CFC9B5EAFB13A0B6B6C77BF72AFCEC915A4382BA10FB42BD
-4CACB7597E2637AFFE6C0A46C4F7074DEAE4518676A5327177205EE4F6C1BEE7
-ABE5C53175DD52242F0EBA6959B6EBE2482B82CF882BD745AFC4C5DAF3DEB0C8
-8CBEF6E24240467C2664FFD2085A2BE7403BDFC2F95E8BB0830CDDE88AD24670
-F1E57245B8BF1E0E793475581F8B889733353E895B3064A76D7C4EF2B90C3B05
-8723AF14131FFD1B0C4E98A6CA16BF5698D58DD487EFF23C33249211A8CACBC1
-2B005D7176A1BFAE9BF628AAE9D369F25B5040A8828117CD74294C09A7EC4630
-809ED075853B81B60846122E0CF0494588F269A7BAF29C4EA73DAC39692B32C4
-6D743CE2A650CE90B0FF576EF4C565E8AB4901B580FAED154D80A235A6F866BD
-5D9C7D7267E904D0F5AEA04C0C09DF4ECD2085F4CF55F607E803B5AABC21CEAA
-5EBDBF95C6F86F6AB78E67AE37AEC25F85A9BC3151B1CDB1DD6EF2CC295BA77E
-6C3967352E995136F81C3F4D2C7B55BD8AA6A6E308BDB9BFBD36F606A007F671
-30719EB763CBEE152A3F5EBDBAB1116F1A7CB31BBF3CF98E226A14C4B3627E6B
-3B23B1121018FA98893EBBF18F593CF9FF8207204752C1F06419AFE557657030
-E84E7C15CA19757F6A0A0A2DAB497518F304597DAD6D0C3342DA2483642F8612
-536ECBDDC571B0923C77E0EA4F0B48CCEC6E942963CFB1221E746E38FC9DA58D
-BB08B3B8D80273EA6E05F572E7FD71D5A122C91A539C88FDB49AA1ECE9D66928
-F0978A3331CB8C052FBE600BB5D9058B8CD9BB02C907EEE81B947EAEE3A95B20
-ABFB7FD33D377798A16F7213426034B16B6CA5D279859E00AC102BEE36363F5F
-5D7852FF9D5508CBE3F3F65BB4F725F5F2FEE6A75AE6CB00865525FF64EE87C4
-D079A38DB5F194CF5E5F517FAEB157F9DB65E82EE2B6EF2102DB40C98ED3C9B7
-31C282FF23AE4194F900B4B8E3762C3A511E6461C3CE4711E4D61731A796181A
-8CD6D80607894AE00032EE6D040FAB53415BC3638712C88BF4EBBEA49462A32A
-AC71BD8DAE14796BFA5651A4286ABF7008C76724BD9A42B6DC9A3690FE5649D7
-369F6D1D0178D0C2C562B247262113AE020D614B5BB0D11DECC654B5F27F630E
-F1C51BD077CB08E71C0B57264156755C552D70602A51A16990553FAD0E6CB3B8
-2FF4D3C91722E5083703068AA616271B9D20DD18D516FF41A51560381422737C
-BC70C64ED68BA5AFD5AA063B528BCA2DA3F9C6FAEB1073010726412FE6BBBABF
-B09B05E2292B44B71557CF20EBD07FC70A76B85F0E9112CE4FE8167062D8A116
-872C2880C6D399DC39F5417A8FAF6BC08636E2012F681A144FCC868A21264595
-1011B6FF3BE9E8F82DC95979A30FA8B8ABFD719C78EAB1EFB55F0ED0A7BF00C0
-C9E36C40C141255C12958897F77839FD663627768D0992FAB0C06B4FD3BE046A
-C0C0F90C6EE8517F7C3B133A4545043959B9200CBFE457B0C6BB49CF3E46B702
-B5183590F8B1CD228BBA0FBB447DDC82F3C1403993469768737B7E893FF6734B
-CA6DBBFD568B0B6FD498D37BF0AAE926376EDE237D79FC6320816B5348DDC83B
-8E2ECF6C1D42AB1BF8B3AEF580899581C3D529BEE039B2DBF404D06B0789E122
-3464EF4CC15A623DACD5DEF1C9C8CDC7FE1B08DF39B3C4E105E9997897952DA2
-D059A1134ADB56576B1DBDD0742932DC8CDEEA40143C3E31CE9C1B6C2BB9BA70
-884811D3CE935FA7231721855201F84B31FE595883A7D132032020D2B166C940
-D368B03C2B4ACB65ADD39ACCCC505838AA474747E35F2419A2D0624B27AEF786
-12182C4A4DFB50D8E475650E37BF0F536A87571F3681D110A0649613D8167830
-A88038383FF79BE6E07ABE8ED0BA06B85D940DA9CB2D9A7FF65836440F652F01
-8F6CF011A3300CFF590DE73D7CB5C036BBEE3BEA975E25311F3684C864EDB33D
-88B0D7EC728B67851B452840E04CE0F188B89890861F4D3A75BCA721EAD8D19A
-FE1D8010446102D20D7F396BD91E7997AEFC8A8F08E3B210D3DA90B49B97A462
-CAD0575F550920A83A5C51D2AC9DF59A0150DC951DE53E8D5A78FEFA5C8A9FE7
-1292FD804E284D0C3C6B0D5549C401A8B59FC5E136E37022FA66150EC5C0D1CD
-8908E9B92C058210AED78868B6D11BDF2D5A389A5C8DF807D71467D4598124BF
-EE431AC98C57810B737BC95F375AED7F0D9989105B1E16C902DE1E9870D6E6E0
-8710EB4E0938D9F7BD3CF70C29AB8B244FECADCE88EA703B93E52013BBD3BBA0
-E4112CBF361D3FAD125E30FA33163AABCBE3F36F8B9B8F302DC6B52A8B0674B9
-2BEE34EAC80D31FC0D8BD0B67D303D9F1682569E5DB4A626A03FAFC6258F9AC8
-8CBBEB4045EE158D38BFAEF53C9193549AD408576D5FBFAD25244D26D783E76B
-AA97B5F56643DEAF52C90B9BDAF1A8460E85200988206C8FCE3B61A0094182B2
-A040A4CA3DD310D6F23A87469FF7EF50AF3252721C492A9E7944C816DDDB25A6
-1EABC4B1EDF41849E222960C771E1E94B9D147A0F8A2C8FE03526F949AF75445
-B9BEA253A517C000AD1498F8EF131B689D336ED5B50FB94387A561FDD69B4B94
-6B1AF617FD902B0418FD118F5418DC57C02BF01FFC9A4EB474B42B7731266E3E
-C381A1098B3BB1B4C19417A6A42C89310122461512435A94E6B42F580061E7B1
-69C9CB09B8A8C1F22CA11F6AD46531C6FBCAF093D9876D2E470F77AE74088C13
-E95A427188CA2FBE208E818E0B0A404BE18C02685163A67A515EFAC1E56931B4
-69B2228DCBBA96EE191CD8D098BC3A8A3EE6655BFD10296DE206A1FCF1DF7695
-9458058202C7C4CF9C63DFA88ADC438DB21C616973793C3EE42A21D7C9232EBA
-D25F8C8B3BB5BA39B6FE277C86C18747933AADC6D25E3B14547F88CEBEF0935B
-6F26411AF72A9C3E65D4D025C42EEB556CC388A774B2A88F2310CB07CDD0CD69
-45AA5303E97BFB3EC4AD24702E530F932016BFCD8151D4F1087EDCF6695B1F29
-B30CC14DDC304FD92A8974F724BC7BBB421B70ADB79361DC589A23A81DDCF43C
-1F5D586CB58123F97F25F0687CBE203CC4D1672DB0843B80E91C6420CA3A577D
-DABD4344746264F48273F52D7174977A0811E8CCFF0136C5EEB9D5E2705D7391
-1F133A72A108070BD8E038720CCC1760DB33B64F056952436F6169D13F2A8A9E
-DECBAA7880194B97E6E55E3E5E478121BD15ABF27EBD7CD12111A8723E0AB4CE
-3E404EA4F047E181239F33D501F44A288C1F43703DCC9DDBC5AFF9230BDB4913
-16C24F3C2DE86A715F3C268F63D14E3B02AF820403B04446A370F05D58D37D3F
-814CC88F65F1F394ACF90FA93E43E24015665AFF63818E39E54164ECDEA202D9
-1737AABCCC3EDE4DA406E2A1FB6FA68206EA204B48CFBD43171A83F59503BC1C
-2A3DB11DFE999DF4BDF3DBD0FBCEC291DF7C093E0D295519B0C0557BF8F46D19
-8CB239AD8271AC029F85460183507DAB1733115C29E914DA6CD6027685654703
-BEB83339D53D39B27E97943A6DC5DC205308F222350D9D436700B1E4BFB79FC1
-7E9C65100025A0594389F64638E225AD6B0AA69E4D51F339CA4CF0036438973E
-ECA4A772CC9424C584721B46343ABAD35EC50E9CA55086B2EF7D71CD1EDA5DD0
-20085592103BFD4CC90AB96BEA580AAC77D8F4C5CBFCE9479C17202195626499
-74E2AE8BB0684E238ED872057E74AEE7AF6563B6F41B2273FFECAF6A3F697F44
-CCD5288E286588799253FCCB28CA27352A673F13A511F5EE4EEF89D47297D6F2
-028B4B046F37D0B3F168CD0C89EBECC032B0340BDFF7A1AFB9E116115C7FD463
-EEAEE3104288D1C1EF7B1D18D9BBD1340675AE981508AE8F214C2EDCAC5039DE
-1655FBEFF4FF9599301F8FC80326F853166CD680CAFC5F3D598234933A21848B
-B6E1247DB00573D02CADD86203E51EF377BA3C902954403B0B063C1BDABA8740
-769E71DBD66FAF4A8B73B43A65BD5144B09EB77A8746006A45DB7E288027EE73
-679AB8587E3085A07432A3B82812107559FF7F2F4686A650B04866BECDD7032B
-F416D7BB3AB39FC039EC5D73FB9279686D191F6AF18E10999CBB3D4F2B79269A
-AA16C45D65939F16DCED60B1E265E528FC664B274331AC7170037C9E5ED81ED5
-4DF9554ECBDB10C35B9FBF3ED28A886C1BDE903D6F09308CB02F731EEE7FBE40
-6C274506CF56EA1AFDFA1BAAAF67C090C62C93B00C9F66E65C4EB19CF6CEF49C
-3B9E73A3F1CE804772C9989AC9E3AE7C361FD65255532E629E1B9B148A281CB5
-A0A2C1F8E586933F50AE3D5D3BDC8925AC261002B852F5D0A13E0926A4146FBF
-FDA6CEA3ABFA4BEA00A25F5138CDE9EE07A94CA2C47FEA3A313EF74AEB154FD6
-97F0516D5888CA99CD2AAED17D4104C5301C310A9BDC9131BDF44A3D45934D18
-33466ECD58E51C24FBF723179998737C236B8F516526034183E69EDEF3B1EBED
-CA3078DDA32D6AE047E8EA9EB15940111AF3FB129A9D064B6B3D42EAABBABA99
-EBAE9202C091F62DEA8F1D83ED65474986D09B44C3889D17FE34D489F142680E
-70AD0D34CA4D90F121EA520D2D24AB5A8713CD5DC97602E7C2AAA3D028DEFABE
-7D3A3657CB7B296C8FB2A08D35129D14E19BD3DB8EED6352EC58D50154489A01
-498B2293EE06C232A148C918449254E7FBCF15AC777C5726DE50331445BEF361
-6EADD39DC67327E030B8C6325E7F99124FFD07FA789205F179F720F75B094717
-6744C449A5C3B03614DBA5DA5668E7D5DB3FE84826DA2F6FA43F06DF67949616
-3464DDC30CAEF50F1CA901F4A5AAF5149378A92F111A8518FABA42A2CFC1043A
-E9B406EE5EDFC6E69D0BFC025DA274CDE5E3FF0292B84D628E2C0F4575ECAE69
-8D5298F6A2654301BC73367173F25E2F1418D39C69D2B8B38B5FD1C10CD98227
-451FBD34E57A9F51D0A2B566647F27E94432888D0EE95F8C2A6166384044EB89
-0C2B9AF3290B5AD03A39DD135CFFA00DB618F27BA5D3CA0249D64297ADBBC7E4
-B26BAEF3646061C27D6399BE45D936C98A7CF3B2AAC382C6DA831468ADAF0EAB
-ECE6F09D40E3FD5D2728033AEA8277D77F89938625C4A1E7164433EF7501E837
-BE86BE14B06B0945DA42BE9CBCE5AEC8514726494C29DFF0414E170F9B193DF5
-41768B8C927B131CCAF45554A24CC5C34F05B8FCC214778FC310D79F531DEC08
-B7552A0418CDF75394CBBEE461AE0595F40ABC738ECEA43E42975E8E4DC7C4E1
-F6A8E9C1E0E7F0228DA0BE44942F083974E0AEFE18A86F729442123795736C62
-9A7F50CD83A6BBF1B26F42BDABF3944F71C61323BAAD946E3143262EFF91E4E2
-2C14C04095983D2AB6FC1B5A9202ACCDC4CF3D69DAC9450CC3FFB3D36566DD3D
-18497411F6F8EBA62746DA015A1251D6205BC77E3DB297AEFDB71831A2527CA6
-0AA526AF7BFC20F5DD157AA1E07A45B2C12298895FD3409AB939B7909F1F19A7
-3CA916A8A0AE374A8FB0F39E3B15CDB9B34B8672DC53ACE778B4A30EB8CDB285
-E0CC83493AD90D973CD1A01F9978919CF5147BFFAD10796EDA5EE44E64C318A6
-0BDB31AF6ACE9388D17835389AA07B371838EACEE53750A3A1DF05D0D69D6303
-D2841C0F6AADF7090148D9FA9001DC909B4D1B2AD8656C1D0B33391894BAFC66
-03ABE2D07CB8567D7DE167BB520986AD7AFC361DE40409CE3012AF83F14C79EF
-DACDF6356CA9D9FC9FAE5D52652CE68CEC07B830B4FFF4C05F0A727FFC4FA4C1
-1E7D2879B0C7C50913B9C1DECE2E3093D675149D8514205387CD373CDE76630B
-FAD82707A15F56DB03E64031C326C920FF00308D9CAC9664A3F0FC6ADD2793B7
-5A760CA7DD7980223BF68BFC7B49C67BDFA08E4E552682B5A9F3B3264F435827
-C3A60AF89F135364EDFBC2C53A00206EA10B208839A571C10427852B15EDB9A1
-60178C25107D40B3052763DD49EDA25CA223821BA0D299403D60994079107311
-A1AE5328E8884F859536ECC1A27AC5028661709C92A16E8AD0659ADC71C62015
-8F2DE3813DE390C335AF909FADA0D79E6F0FECC884AECA543D9D859F68908E07
-B81479347229D9E1D18B21E995CE9A29D1B5391840CC2B5BF6259FF246577B78
-FC8DF71A0F3018EA7A44B5C3E91E7F7E5A4DD062EDF239CDED78462B63C72EE2
-BB0E8EC6AD5113DB8E179A8C17EF7FCB71978C3E6FBD80A17D24717E9289D2C3
-B56A66F636CD168B15DD8FE33D2A083EF2737EB917429A0C42B3AB6C8314F103
-666880B5E037B6A5D980D0BE8A8010D3C9B584F7022ABABFBFF1C8FEC3490A5C
-8C59EC8EB2B8E66411FDA8F36B94DF97EC7079A1F7C864A7039E142583E5674E
-9574D444693AB36D8A8B45BAA17CBDB29DD8E9EF600FC7895A6E5522345AAFC7
-9C11BFFD2A040FFECC90698F49D82A41BD92A6F0FC6B3999E83FB80C56EAB00D
-5001BF0BBC8DA0661E98FE4BAB6D6D1C24EF0FDC19E56BD0A6A261B1A1D5D7D5
-75C594F1691476ED302E32B8704E3AF7B62B4AFB6E00F9A6A229047356FCB401
-F34DC1B87EA961AB359D7D353CE5408D02421EAB04EB5B77251F164E7A05494E
-67A65C4D621A4CDB002160C360FEAB0BC043E99D882417B857240CDDFCF311E2
-74DA67B96E24BDC83F19BF351D2613BB546592B0373A1223B37DFA20CFED6A84
-27F0C793012334D4C70E29C4C21B17512904C01932D03F517A263FE6DE2A1C4E
-F955AAB62CF6D192138A5735907D12A0B51AA379F285454494618C57AB3110D5
-BF12B64D
+AFC0E2F840512D321166547B306C592B8A01E1FA2564B9A26DAC14256414E4C8
+42616728D918C74D13C349F4186EC7B9708B86467425A6FDB3A396562F7EE4D8
+40B43621744CF8A23A6E532649B66C2A0002DD04F8F39618E4F572819DD34837
+B5A08E643FDCA1505AF6A1FA3DDFD1FA758013CAED8ACDDBBB334D664DFF5B53
+9560176676B93DE01D2E5AA1A9151955DE79CEB9B13437B8E98701DEE20ABC79
+453320DC9C156F44822C2B275CDC3B2DA3A3AE5A2C777D0486345A72FC17232C
+A063B1D2A81DE8BCD3D4F3C3F083214EDC13D8BE360FBA440D0AA368017F2A8B
+7FDB0A4BD9B1ECF62DDB949E34E9709B91D3E88D711F7AC3601E2F1F79627F12
+820A49F98F1FE312DBE887B6DA76F03E36D12D42C892D2348040DE35B8BF4262
+882E3DDA9CD39C24F3275A2B4503289DC78BE29A97C213920E40E7E14D96BFF7
+7DC1BAF3B07F2EE55BCE872D03C8C8C1E8EBB2041408BF08D2EE1D611E5FF6C7
+D0B9E3F831125DFAE44FA0D0FA79D4B5716D4B681204358E909835DB0BCB949F
+55F1FA0003B9C04E2BEC36FB55E1B84D12B8220F625ED5BB5B9389EA2EE04204
+B020F3572BBA033A789A54B95C070A19D73D79A18F16F89B8A517D886CF07899
+4E986F8F62728E608C147476E016A4C3F269AF8EB8635E96C1B955A90D88653E
+9738AD8E9816B7FA3C3510E884B6F66CC1C1656383A83484C1099E718790B05D
+48E743BE0377F6168DC7A32F45DB5E2871A531FE45E57BBA855DB3184D096539
+1034FF5D5AEBCFCED04BC43F06FE5A290E7E89200231E6BC57B52EAC2BAC8A07
+EC0E440E9216E85D2FAB2BAD16451F2FF278F4B697C445A1F9DAA5AF45E1C6A1
+4F3C983E0CDFE5138488919A7513CB62AF48FFE94CD03245C145C60B67F27B33
+3BD114D0E4495498BFDCCC86DFB041595DF7F1648F4101BDC81CF1658ADECA8A
+71F61141A4543BBEFF42C4C350398DE2FCBEEC3578D5AE6291E1D2871A186E8F
+FB39A80D67B9DAB82B3DE7B549393DBB749C92D6453EBE8EC39451E8D13FE733
+33C9F5314CDD7D7B71AF62F3606B795A24747FE77280BC74A8505599ECA75611
+9333B180CB7E35C1930B66ADB1D272E7495EE814E0A4087E07185C1B6B54A781
+4AA286B3873A28EAF0942CE3A4CBCCFDFD2D398E4F231C6DF5A8F1D5C61A1088
+5D46C7FD36ED389B3C14356160993F533342DE1AFFF749435D9E06D942F2A725
+484553051F015544F841402577AEB9297724522BCDAF26899244ED72BE36FC68
+44B9BBEBE1CFFC4E0B8C0DE3592FEA9A32680A8B5E6FF4BE82184A874B20B63C
+0C944FB395934EFB2C9C94CC8FF5A683975B3023C0C74AB8304BDE5E3917DD82
+D0ED0CD41E1A6968B0088E4F07CD581D87E73927B35C4CCA7428EE53C1F5CD72
+E3F55DFAC7FDB5D0233287C443EB2803FA5CF2C7ACBD21B1327603FD50FD33CC
+C8FF3D6E9E068519865A6FD6C46AAE37CEB4674F755BE11CEB8B01E4A5948B9E
+89FB62A254D168D563AEF14533BACB377BD00769750CC5A000C53D35BDB62826
+AD935BF10093A8E4D626DA26DAF9B5B19364254016DA589AA58E649501C9EB60
+0504449BFBCA986DBBC506E100066A0CEA508AEC9B6ABF977EBA53815032BBC1
+7E3C4787F90642C9F9BE5CE02B595CED2B273DABCCBF63B7B90CC8516C326C42
+893EB28648D82CA76F887FA4EADDFE3D5F0AECCCCB726F9FCC9ABBBAC4ADC5ED
+01DA0BA9779990EA39D95FA64BE6B5B28BAFBDB44935B97ABC90C168FA8AF9B8
+A03B01D682795FBD947DB2EA9A123EC3D50C20AE6E41DC68FE870F1D6199D3E9
+D1441414AEBA6BAC898CFDAB66D0D30452677A1CEB4DE2EDC4CC3FC783B7B142
+42F04587BB25125A3B8CAEC12B0C5DC06A8CB302B36E75697A32CF7642C24F4D
+B6AF619138E244541F03AA119D8184DFD821EAE76063F085A050F1864105863A
+467A91945D90367AA7DD1F6B0190CED688CCF91CA8274E577F0A21C465844CC4
+D945B37F0A7D43133C3012493732375B46CD06366875F63C425CB953C6121610
+08D3E7725C29A7FA92E58E2BEF503CFD1136BA9782573F7B9F4D5097DA90D90E
+28610CDC10EEE200EFA58516D583199DD0EB6D56492856144E9F7CDC688D2797
+8352197A06AA0C7B78E430668E0DD58D0804E5AB9B5A61ECF6F7C2596B1E3B1C
+3259C9FDF9718E8D821E629F15F5B028E42675D57B657BA3962E411F90D8E866
+2D88EE0B8914079322299331BAF563D2818150CD1DF84CA21708DED2354B4B43
+C6CB07CF0EF79A090467CDEAC89BEFBA0D37744EFAFD5AD8C764A6CCDDEC54E1
+97846635F0C5E437F458F07DA50DF403B501788F8E8F6C90FCA33D2DDC203A9B
+8196E561410110D35C8F290A7B5CC6C17D541C9069E4BD341DD0E863385E22A6
+7A6CC1DE683ED53B483BA17DE96956D8CA29D60D748A6785E02C1C1FA5EE6B77
+D96DC43F0E95D3A5E536F20354B9526A1FE45A941CFA9B9D9FE194294E2B6CB1
+4D61E64A087ADC1FB62B2C60407279130A344FB369460737DEEAA53F4EEE471A
+580FFFA6C0820F89158E4BD3381FC8BE74299617F3BE7CD721B848673D984312
+EAA4A886148D0DDFB8902182BB6B05490F31177B19555844F6E95585468C10A1
+B8A64274976B5CCB840F0D6C69A2653C7601DF62ADEE738F60FD4A85E21EA10B
+2D01A3B624F19896257DB78DF275CB8B3BFA1A947A3FECB331029B46E45E4F31
+094FF057841D3D4073AA6C332902CA6FF12F9DC0628BB5A0AFB2314890A731D2
+C2671A16DE05C50ACD2BEF25854AC83B7472C44CA4934EBDE3E8FF4C5959F0A9
+2B9DC6C6B857BE7CA60280BD3D565E0047C3132F35D90E08E6258CCEDFEFF551
+BAD0C9C4765A5D4A2830D65146D6A5BAF77E410271768DF0DB7F53BE885E3817
+36804EB9092974B9C2ED627ECD5A1981002B6446D2F69761E032FFC76853B7DF
+AC80A13280A974BBF50659AA7BD92A5171A198A7C2018CC6056CBC3CCE54B6E8
+73F23A3C7EF580671EE4467C7E0DD5B38E14BC7EFD24B622E27E470610656317
+A96730F1B9915BC02B279B1FA289AB0C5870C039C9EB87EB717A9D429AE507E2
+82E98DC518F3EAE44290E37CEA39913C7CDE4E177399ED6F87B58EADD7938E85
+C82C8A57841CD28515787B7AB3D17354A2C4F8B95FBCB794A63EF25112958620
+9EFBAA21032588A515813BABD7899CD02825717E2B2A1BC3DB18EE52791B65DB
+2635A2C98494E504E517AF9670535AA52E2C11FAD438C4FB8343F717FF42F4AD
+6DD3105A8E2386FB14B8AF89A22DEA82C05DB70177B37E0C2EE8A835DA6D27C0
+4E5F6A0E1519C4FDC5F534AF48D590C730F4B988A6A30D305698B300BD78DAEB
+7C851AE86D8849C571A73EE12304880C1B2E238213862B8FE1EBEC1161D7F7B7
+3FD1FFBC571B1AFF049F1000E605B716B76E93E507F0D26D734018A6404B0152
+553E29006DB21524B22342DA4E1AEF765D18A24C2D17B613922C7BA29C9849B1
+873E521B04494F9B60C25AD0C1A154D68B3E34A9D8430F2CC753CF068AC1114A
+D8077DEC1CD63B566EE5EEB0D374ABEFD3780E4D3B815EE2F30810242A5B8829
+2F758D13E942B6F85FAC7809492E09CCE1586D00565CEFB908E9E27D5BC3672E
+D26667A869439DE96BDDEAABA7F5E86E9CDAAE9737C37B91B2C494B525188DDC
+F777BE6DD185ECCC347246965378EB10ADB58C1BE26AD9F5105C97A5CC554C0B
+56F1C1CF441EF53CFEB5A9C3E5CC8EB89C9FEA0924014596C6D04693A6B7F99F
+5F4644DF7BBC4857A119E5403F0B3BE2CE218DA33165DFD575F3E53E348D4C63
+3BE4C158940CAD5AB70A28CD9C936923FD78A7F5C14CE102F5E9BC3D7270E38A
+71085BDECF58F2A89CC0542AEE76BF7E70C5F63EF2FF00E2070AAB5E69F8A93A
+2B3CAA9E2BE561A77E77B3598095C6157D6C1337A354890A94774C82AEBCD78D
+F717FC15431C3A96336BD60532661F897A6DC397988B06D536B52FB85C3C3F07
+217C0CA401868F7B3D831D2874A1A0A83BDECFA754A180691FEB98CCE0F4039F
+5925DC9A9C6C4EDC54518BDC2D267FF9592222F7577D6D5F4CB9323AF77E5AA4
+7FBB22982B5387D24EFDF7000D260479DC9046E3D7A1C1BF443BBE3D3A563363
+EC3397721B1155B95B80F809A84F4D6FF838C058BF1A4E174E9BFC5199115262
+B40CDCD010B788D3903DD4C5A89CC4EB564A30A97A023EFD7ADE6DFDD8EFA1CF
+7F5103D70C9C675032C4E646D75B59ACC42EE315213265AB4F04F481146120BE
+B7FC8761FE381213A76C0C764F39A74402428D3FD98474FB5DC933FE74D475E1
+CDDCAAD3B52059774C73D82259B8E89DA64464D052F511E70B20026042068538
+5C4C0D0D0CC66F50E7A7A44E11B5064ADAF6EFDFAC56D0D10883B41930D81C67
+6095D3DA24F85BF38E3739FD8502D739C2F6512016A62F682DE92EEF0315E35D
+74DBD47997D68C0E615AD4A611D894341147B962639B441E890CE59BB124FED7
+4CD01904118EDBDA380A477F608404185FC2E10603F310F243E9D06841888C88
+0D6478CD92CDDA8C977B7C8C686D7D6AEAB8C71372A7CE2A5150BC4CEF32071E
+B1A8F079CB7694FA7F1E5085B05EFC63824218FDC364C22F42DAB0A37EF265B8
+7C652DDBE7BBB2B32423C1553609BEC0667E33804D6834C35A2A2510DF7F7562
+ABAC758638FEEC50F147CDCD744C36F47A1F544E1E60F7C17A83FA9886016E94
+E030D7B54B2675ECAD8A7912B534CC84B0B286FFCE08EBF44F5666C03704D8C3
+06A3DA6366CEFEF892520B61E06AACA49334B02825C4DB064A7884820CED7A4E
+2CCCCC540E46B28FB50D010A321EE6C630CC93BE328A8A1DF60EEF1BABFE7112
+B6481ADD325A28A31970B311B441ACEA9BA90FD083B91472ABF6A25841FE574F
+E8D283A5E9B9E5F37E086DAD8EE757B6BE645EB196AC8765895D5D939BAA92D3
+0490DF2AD46842A5191F0C8CFF3142E7B9467F9231251F925A342CC56565EE07
+A7BA0B156D5FBE6C758B1CE3E8E756CCF855FE01F5FEEDC7BAD0708B95B42AE3
+449B73F9FA6884463F0A667A02D253804795E7704127C8486D8312F8E8754D24
+5B20EC13BB05CCAA52AE08EEF618C62BF340D802D9615125149DB84ECE9D8DC1
+13079E6C84354C21E4E7D6812B7B9BC83FB12E23029F2275B303BC488E40C46B
+50B9FD884ED1B38C787EDD1CFE59C32C78EA18AEAF674FF5902003E3835D46DD
+EBCC70B35CBEEB48AE196E468C0C31C10D729CBC6608EB221469CB0E8D0E1464
+3FA94D75B5BE1171FF620FE5DAA2ADABF303194A4BC59F59000F3A83BFC77DD7
+1D0A7C43825E7A7CC4B57F82E258E8B494B868534F9616AD7A849F1968691F1B
+30E4996CF04CB14483B56D0C9FF8E4E1215F2B241BD0080ECAE254EA4E4F500F
+8CB5C11E649F3C940FE976B4835AB799FFA79567FAEA3205513EB80CE00A57EE
+EF7F6A91EB77061B754D0F907B7F54819CCD59B52C1E70EBD34F61C100894AC2
+6626F5A8CD04A0A00A504F77D77964FEB024D8C8CB4687531D2351FFA6B3EF4C
+EFDDF247E11A036149A385BB8087B4C552C601A2BBDC27EA602A48AE29520C3D
+3C4D7DCFA5852255EB9A37CFCD689DD5E8792244E9A95FDA32217891D0017064
+8E971FF96B558318D208145E9D1F36F6F2084EC876EC1DB4681B5432516F5B22
+D21EB39D9E5D74726731B1565DE4B4BCC98EC86397097ECD9A797CAC3F0BDAA5
+71245B553A10CA01C06E8CB498F9C25ADB369ED16D5EE7E20F6463E8B38EDFE5
+F610E07F80F9AA81771E32D356DC58E8C0852D9B299427CC6E2C71231A49A7BB
+0DED6B50DCADB633101AF6835417736C35A47F02DC7FB21D8024DEAC81B25F3C
+D65FF3CECAB38373D29478C30F5B93D02D0794D65F3036E28159DAAF93855B8D
+699F54742B51FD9497F78C61E98328925AFE65753EBCF1B78C6509C3565B266A
+590410D04934B8B12850BA35E5C61A37F6593312C7F8FE473EE04349FBC769E3
+F4E7D5E753828E832186F80C21C8FC3276FD3F6EDDB7EDE8ABB6DEEFE73D266C
+2D5B327DE47E0C74A0885A7A081FE421C4723D5E9898FF12662F3A8F1AAA68C0
+0690C6F808B6A551BF48CB5765361DCBC46140A761B436B8F1BF3624BD2B8B99
+2FF8B921CF71A02E6A75C1CB4685BFDA280940090C99E372C6CECECBD4F69AF4
+3F48B9BFBF
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -3437,12 +2947,10 @@
 0 1 255 {1 index exch /.notdef put} for
 dup 12 /fi put
 dup 45 /hyphen put
-dup 65 /A put
 dup 66 /B put
 dup 68 /D put
 dup 73 /I put
 dup 75 /K put
-dup 82 /R put
 dup 83 /S put
 dup 97 /a put
 dup 98 /b put
@@ -3459,7 +2967,6 @@
 dup 110 /n put
 dup 111 /o put
 dup 112 /p put
-dup 113 /q put
 dup 114 /r put
 dup 115 /s put
 dup 116 /t put
@@ -3502,227 +3009,206 @@
 3851CB3588E22936FBFB63A58300298B11C45D82385C083D07AF133BB1BC941A
 FDD9F34D5E0B8087EF2A58C54D8AB7580EE3ED58AEB83B72CB9028F472ADBF11
 05A77651F118824F6CD00209EFB60C1D32D46DF39770905D31D051FF2ACECBD0
-08911D3CC25B783103E4A26EFDD866414ED5F0DD28A4BBEB1461ADD6EC174A1E
-75AFFD283746EA8657E33B8872EA021C6875189718CA0E705F28A9792E71452A
-B89E04787CB1DE71CCC500EA765379AE119A4D5F99F68D41B9178C7C8ED352E0
-A1E6DC9DF53C5301100FA3234C1D8E2EB7D5E267C640158A7C16ED424F1F801E
-D49A6E55D88E47257C1FE6F4911A80F453FE60FAC91C0F1C634BC8303F889319
-2249F256E3D03ABCABBEF82548BE9EE4760D5AFEC07FBDEA52A0AD12BEC7726C
-C7A5EF714229940B17A6B638974A56D694D6F66A013BA2D8D4A60B81A2F0B8BD
-64D410F407E46F530C20E82EC071AA1A458E262E2253F566A721AEC77B45C6FB
-E8A75FDFB56E4AD57E8B4DE82354127A95480448B5A3CD3782D91669659C3E48
-2786CC34FE63AE4D1EC82500A6BEE04021508456A9151B657833BF67E0A4D138
-F863FF326D70E64B11294E78541DE8D10D0C6037F79C9E0AE641F93D94AB5E59
-C8E8B9F6A1EC99EF00F60A3AFE2E7806294FFDEC239A953634C3A253248BA86B
-9A739CA7AA6B4089806CDAD309D746120CC07EB5730B79D20B9DF148C0AECEC9
-D3E047399A19FECC88B7DB6466A9C78E6F83C5B277045B9E447C508966F876A8
-F2E7F7BABFCE61135E65AB9015C0A877917AAE8B02539FDA0DE7669B71A614FC
-A95937854EA7868FB4219CC8363BB3912F14BB4D7A7F970A3FE730C92D7F81EA
-D6EF892A8F9C92BBB68170F00A7CC0399B26B3A027BEA79A11A45511BAA2FB2E
-85749B8E30260B9702C504C6FC8CA72591B40DB365F088FA8C38D4CD97E22D72
-DCD8F550CDC091DED860D0697752366D641BD91288FF41995440432838FAD5D8
-EDCD5167D6A918450F9F9C7C89DA325AF3811B9DE030C545049019150C58AF39
-CF34A44DECA0565144CA40FE60DF801992A1AB27B563A13F01074EC69BB895C0
-7488953AC184B75AC1FD8B073CD5DD25C67275B1E123245813D415403F1E5339
-68F8A8BEEDD68CCFFB2F87F12C4750E0C8CB86C6DCFFC3ECB1523B5EC2C3F5A0
-2929E86E61D8847A24CB2B3496690FDCC4C41E54C972D59DC70330459B807F37
-7375FF4D2FBCF707A46E6DDF599C852254C3A1AE22F77B0CD91B439F9BAC227D
-BABF7509981BB89F85297CE234629456F282804D3C7072101E21BAA6A9C41FDA
-F3F5082709CF1930DF46F6F296FE76317F8DB5855E945274D7E7CCD73B8DB342
-CB6D405DE6694CC1FAEF674DEE1836772304C13D708A63071C2668F330D549B5
-C197D91A14F50D0824619D972E8257DDBF2B95160FF0DBD3AB8B25EA333EBA75
-085D7C86FBB1A9C65DCC4D1114E2C88B4637E68FDD6168DAF901C425B5340703
-8F0410B03BD9A3EA8550DC01FAF9E1951131C261B0F62911ACEA464A170F1746
-14BED6DCD655C5EA7B9A06E1726563AEBD74E8A768FBDD613E1ED94B6FA10BDB
-6A6BA655ACE6E1AAF9C6DB0B99AD55001D0502A3B78167140848EC3481003B7C
-CCADB0BB37E063C5EE58E75A12288FD2B8D1CD60876E867E9C81E0ECF3A99FFC
-B30A2529261616CCAC571C90C39D5B8E01ED476A262DA8711D22EA3E004493B9
-7D9246CF56917AD4AD3E2FD8EA64399508A1658E6D0D731E97021C1FD19C8BD1
-94859EFE3E15C7EE624F92E345FFFD89011DA93599B37795DC64DCC27F1FB72B
-8A063A96A4E9B8FA84473780D81482FC61E491C62DDBA658FBB9A9B94A106F7E
-EB0346F1363A11448A236328B0ED08001D55A2342B618816AAE767BB6711C51C
-03EF73E87E95F8AFD59D99132E7D40B5F190D6DC4C6E38DF763F1B25A7642A81
-C3FB1D804419378033FC2FE1C0C6C63316FE563C9A9A662419B7AC667280CF6A
-A72037E9741375F9914C83918954F24950C55D1CAA777E3FD9B72DE61D0C0565
-BC959C913FD6F080981D39432D8CD14A03E6B47C76DE30AED2747AEE21FACA7D
-307F159294803FC78908D42869D05B488C3EBD4EBDEAA407DEDE3C299790C8D7
-9DA89AC90CA82FE0F2AB144DBB54A356EB711AA89EE56C600C0127B9712DD759
-0F9E235A3A68671D80843B94DD28983BD8D6FA8561F85C07208F23611ECDB427
-EE4FB25EAF65D0D2DDA9D77D31627BD57098DA97E7335693F5F4D63C3C0D8AE4
-8D6777A7372BC19BA27CD43E97984D1DD307D4907FF910E328F5CECB5E92779D
-758EB9E3C68FA6DFDF8843F26982D53D27C1D68AE3CA3EE40C57BB56F97042DA
-D37D479CEEC4EB3CA73AE5C0262DC4FA56575F659053268422BA92BC5F7D687E
-46839260337644933248ACF82302597BA67F85AADBD7F3CBA91997EB675F0D3F
-3B816BA7B54D0C57708C88D92E3D71BCC5F840A106BB5CF9933815EFAA885794
-5DECB550BB444DFF21AECC51A25355ADD2D2FCD9A9CD9731EA8F68FCF22EC87F
-381F102F6FC9C867B18E0D5A64B29F0607ACB7E4C40B238D4FA7CD5CAFFB6980
-968D14A3DCA0BF9B08B347326517AD1AAC36FA2EBF627F4FBB14715E2C3D0A81
-B3E75FF03D45BE2356C1FBDEBC6FCB8AB34D0EFAB99E34BB0F7C0C6D4824E1A4
-A8CE1121D263FCCB34575B9C503BDAFDC9D5835C73D25126BFEAC282991AA7A4
-403D94F9EE9F373F77DD22DB4E85D495CC8CFB522CFC461067F16AD0D40680A0
-F190852251C73858F6533F56C2AA86448BB42E979A4047AA97F5E2E6CFE66CEB
-914D51DA8BCA3AD97F3BE0CCB4A80128C285A462474996D1CF2F00E92BA93916
-235E10AFAA3E7E4A00A3CF136E14B2C49BBED4B6E819CBC34AA4AFB6E4935DB8
-A97C67C44E211E765CECB4562252EF16F2412222AB386D560337505B4EA02280
-F0D8DE22EE274D246E6D1910E104AFD75E917AA736EB3C2CB6F00C9B8D1801AF
-3C9A9EAAECC917A73C5B39FF3CF9673D7236051FBF7F3BB900455061C1540B81
-DF4BA02B0A5EE6D2E558E844418B7B07DC6328A0D162B7F6C3AF0B473987E5E2
-2265FD8874A1ABD817AC9EDCF1CF69676297EA55F673BA3ED533ABD001BB7B74
-6F780F7B60A11E3A2555ED3CC9C3B77A2B6FBDE6F0A153683D72D4EE61FCD74A
-874AAD2BBCA5D8476584E184815117FDAE4B9B09114CB3C3F2B877991A97AADE
-409B4C93C940BA5846E4A6692DD9D3F39E48C255C903125BCDBB0B2C50A946CB
-24EE0208B64BE594017FC0CC51EB21D7C0CB0A87E0FC8E5ECAE81D26B46959D7
-775F8E59CE25E46F84C888A7FD669CCE26E62007016D7BFDE9977BFC762C5BFB
-67E4D06AD1CF9BE490523C8A5EB4B0778B80A19FA908B416D817C30624B8EA0E
-614ED954CE073C45D0753D17189890B813792CDE4797C66BA3AF818BDBA063C5
-40D44D2F0AC5429D8196F6CCAF57F82A5DADBA925758556B55B5D7F8E0F9CFE2
-46529537ACB145305E493F22E04E9E53006BF7FF7317180AC13C8960DA0886F0
-541D6FAE149F721ED22621BEB9C4C72B26690C8CE344F4ED64F28BE955379948
-A7D740B3424AA8DDC3FC03B7D81E38435CA7A7C318A8D66852493FFC62511ABE
-1836DBD501B92ABE48B104AB102233F7C8FEB17241474EFE22136BC24578260A
-D7538FD192D6383657CC79EA30B7C422B5F3B2BC18A8674AA5C7A425B92CC8DA
-C8CDBF59ADED76C26D082A6D460D1D6AC7E8671091756F5E68AA0AFE22005110
-386FFEABCA8E8688B74E43D5FD9188EC2B275F08E09A393D53A6F94E3017AB46
-D81A591540DE3BC56A1B52846108E91F6E7CE6AB86218B1EF45299DBF4E286F2
-4B2FB661AB9C13C7F650EA05D5C9A2D2E63383A89ECC38568A801699826FBC55
-DBD6248250CE6EAE910D2DCBD60852E9044A79B0F9E5C41CDF523C663BC54B59
-E0956AA08F7E5C6F0C270821A729491C3756BB066B65CDF2F18131A0DBF52750
-F365D6F39CA7BF1149BE03F2EC8DBDE684FEF3A280D8B7E5FBE0A07A5C252C43
-FD40F7C372B20A6DE66B57BA4F53E2C3001403BC9C7C7092CC038A95419AE4F0
-325CFAEF2C26201A6C0B71D350C5D1EC8103CC828B49BE81E06B06A792B337CC
-0A02EAAC152271CD4D432E12067A2693B5F1F510D7A65A13AAD534CA9272AC37
-C06A60C83768E12619D09714FC46F5A7DB145F9ED2EA19F5E4D66FAAFC089CB2
-DEA5752AAF92B57815D11843810723C2D46E94D67F78C1DB494F837639BE9DA2
-785997AE5AC95FF7D7BC5BB246168FB65CE98BADDDBAE0368B8FF3AD62825BEF
-B822D77B985510E6F7376B7B08886604E81B110318BE491F3A0759A0625C701B
-B8845EF170BA637177BFE6CDB43C84E303680E85B4CEAB6AF29118D36C7E45C6
-BCDDF9A7C68A567FCCAF9C4571D56690F7F17265A9FA149A50C7CE888221FA59
-C4444196C259D1A3143A73483980F91937BDC4E66A699CA2381CB1B31F7DF657
-20A4956DA24022AC6675C70C510284BCDE11653C899D6734618D0D7FA66813C3
-2113F26C8A2B7017672FBDD53C4DC3540EA823C3066221CD273F5C2BA2DEDF35
-AE880D0D9E56A6999021EE38F476EBA61B62EEB7E8B9671E49B6C0688AB9A888
-A451BD9FACDA716FC805D0D5595BEB9B20807CC6B5BCA439D353687F473D5B11
-9B981E501012732D42586B1B0F10C65E31A5B0ED2BA5BCEEBC260F2FB387A487
-48EC3DEEA18B46396A57D1F6A642162D15E8D2B01635701B04B8B6D32B303CDC
-770EE6D98A0B6D3EA3F3936F1A3EFE1296A1AD4303DE9A52796852333427C5A7
-77FEFBBEEE4434BD740948CC4CC1E91572A8E62F0615991AA2BD52B1A8DA7493
-88D0BB679B18B7595F4D1D84E937DE65B123B9205838000D0A426FEEDD97A36C
-0C5FE5EDB1F7D09A8D4DE9E8A2ABF89B3D8B4A85E23E7F9BB5F737494C2BF735
-EDAEEAB16D26799C68705D9907E6DEA78DA6B85E9E20A80B44ED2056EC0F3C40
-64A7413414080D36E6BEBAA0EC0B9D7AA2A91B3618405F0F9C16F2E93B2765D6
-361553148D7860B4DB534BA640DCCA6F78CE364713B720C5200E45B36DE390CF
-606345CD2785C8D1CF833E74FA18C1A7398AEE99A2F1B92CB7D32C8CF6014ED5
-B9B443BEDA28C4196FDF65437509C63EE533D73BC411BAD5B8B836F2E2BD87B9
-69CC1B192D2F4B9892188BCC868511D8F0A7AE2E1282E84D3619A88437A82E33
-A265A54D9F02DE534BC0BA1C64C7E6BC0F22E9E526D5B29EF14D3C7C17ECC378
-5AEF9D4F1A06700C6F0469A279D12092D20DE6C79C0056CBD06F760FA08F9635
-733C96A4D8B833A12F45E0D4E3470DD1F1110D10F2021B028BF8DC3A5D2BF646
-81237B7F8C3CF8B3481ADF5481484239D992C45196656E180528A7B785922073
-DF6B28B5F82F4087B88F712F5E74F5A50E2DB04729C66A63BA14593A01167E72
-166DD64624D50DC94C581CD901A8EBE7A0B0E6E2A06BE97F81E7678313F004FE
-BB5FB96E061428358FFFC551C171BDCA9725C0CE019890E02B7C6D2615257E86
-371296C6A3A3ADD137B376E7433F41B2A29D48984285FC2F9F6F57080D9F08B4
-D9FAA679243B84F8A288568E9837DE0D7C7F0A909358E6FB283D322AE6DE04CC
-BAAC229C177336ED007823817293CFD09CDA20026EF2183BC903F632D4BEE7E3
-BCE1CF758151F53E9068E55916C9C9C849B54CBB057F7D5186E615C030DD6B30
-FE0B089E526767D91F0337CEE20C8A26131FB869C3BDB928AABE885186DB667F
-7E97D33BA93C8FEDA47B64D8170BFFA6A6CAE93485C2865B237B62211DE9B5E4
-427E4EF2C22F8F9258556B278F941203A2D2288FA7E5E2818F80D872823ABE8B
-90A8EA84CA48DECA6F80DDAEEC20428B112B9661EE0E62832F350071B0CA16EA
-6E5DBAB8E9809C08032FA0257535E3D530CC5CE120144467356D8645A234A4F3
-D1C338FEECDDCDFB935AF03A8C4C937A119714AEA6A6F41F623FFF57FDA79885
-D1976AC4FEC0FA6D2B9F4F844BC136A353C0B6430690E6F76C03A6687AFFE280
-004ACC9CD8ED85ABE03A67C830BF30E3004C8DD45D1504A828A344B706637655
-C7607226ABCFB04281355B51181D07F52ACBFC9135A9F87E8E8D59DE95239A48
-EDC30B5CB54A33CDEDAF4D7A3B2F0513B3513977D252D5027C76B2D3E7CCC859
-64EE4061B1885B41448A9462C7B1FBD0395321E94E35736931AAD1934B4F3909
-4654EE14440DE1B29FEDF3B8B7C5F6ADF54367D8150FAC1AA33EE272BF731575
-88D46E9C8F62595E723D9AC1E82F3F953D46DC130D9CBAA14D4BF6D631FEAE7A
-B9F41F069F3B26C34CB8DE946628E972B1887B82B8BC02A2DE877EE7E1B9282B
-9FEDF702AEB78A99BC7D01E2B1B8BA40EDAF702D1393E3A4A8F79AE4023E17DE
-D56F12CD437E6CE1A0B02A3C4EFC2ED70DC4E2BD8A78C44624D943D8EB11F947
-06B72C63F6BFE4270D9950761EDE18967215AE0D9509C6B63B8170F6470C3AA4
-4A0B7538EF647BD28E6DAC1FF84260F18013F686F44E1E25DE9EE5D34E8ABBE3
-E4AD59C747D808C94D6C2E4648746563604B3053FF9198B0E382A0448123537C
-D572DEF80F5FDB6EBE67A936DB7C0250BFE260961D9A02B4258B1660B7B836C2
-1F832061CBF799FAF15E923CEB5A9AFFB6D090E58B2433BFBD950D080A7FE974
-067158D676603068F65788C3DE67F15A78AE8ADF441A25BCFBB5C43A6E8FC828
-32F0DCB45D4DEFC817663AC30913932AA059B3DA3598733EFBE725FCCA168986
-296ACE74EBDE74FF1850CEE5A169935EF0E725924F2D48F8C07A631A94D979A3
-A250BAF3C137AD1610DD0D9DD742E41EAA8D8B92FB7F52415CD5A45E1E89007E
-1682E34F69FF779107951EB8B2D9B2D815C2897ABCF117EA4CC9F7A8D87BCFCE
-410C0789CD1C6EE0C0DE1AF09FE11A02F4A324A9355AD85146E622D726995DB3
-52D6EC5BA1D6017F291FA57666A218EBD3BCA4B7D9488F5C97E5A6A4EB23EACF
-5975FF93173E806C2CFC279AE778615501532B53B14996A6D27156F497806664
-A670A695470571B09B01FACC0AF1EEBFDC527EC55188626ED70CC5EA82AF4D49
-B85677FC97E85201B2740E1FAF4996370686A0FDC40A16224527F212AEF775A5
-8657459D4194FD2AE5D360F21FEB98F974BE6A6559A2CD5234004C901FB68C17
-3DCAB1977BC678859A8AA831B24FDF95D9925324F4C3DE7C6593C36B3A255786
-D291EB042697B323B6E48EED39144609A8101D762CAB67396106CA42DF9B132E
-9DEBF3EC3948B949796DF2C017ECBE51EE50940EDE49BB18F4D03C2D8CBFCC31
-B00E81B1C926064CE3240256D3BE830F8619CDA6EF5DD68FF535BA837740201D
-70A453E521C3B795084BC69CFCB2ED488D5B6492F34EB7063135057F898DBE02
-EAE872BA77F73503963F0C33ED7E00B90F32108D1160682DDDCCF04796E094F1
-F66DE61CB07D71851171D29C00C47F642EDBC85B27D9A7454649283535A56FAA
-201D3FE2EEC5DAD5D64C77701F7234709AC1CB5BF37873A6578DC407A0551F34
-A1C06587B6C319574CA9CB4B4B01FB2FCFC9BE9D18882C138D9150F8490868D5
-7BE4457192CF699FEEAA2A8C458FC6A7102C1774A9079FDB50998359E6A8F3F3
-66BFA40F65889687DEF79CE235069E5CA7C13053E7E726C2F0EB1934B98CD3C2
-4139C6320995F88E624FB6AF2179094CD225DF90BBA1A9AE149DEE32ACA76B0D
-89E306A130774A11FCB0711D0C1D871BF8D56C00E88BFD6C68EFBB011C738E97
-5327ABE9F52F916B7E92A28E8BAE984938A6FC9984F655A98973D93F7718514E
-069F0F13664840DB822D724BF56F3D3016111620E4C6086E61E22737150CE75F
-9FF97D71A2F82AADCC7BDF9A6D386AEB56F02B40963ABFA81C50F9BE8EA78B6D
-B8AB5AE7EE670F59EEE8EE1C6EFB30AC457B8F300A8A891D68CE65F64ECC7321
-19AD6158887EB0055E9C3FBDCF18ED0ED4B8AA9A7444F6945961F1B43E69A4A3
-83BA61E4FE275CBAD512427B222B33ECA8B6CED39A216B19376AA56CB7983DCB
-8D25C7EC8234AAAB4DE41C60C22FAB5E9017F55674A1053918C7EA14F42C3F81
-2CD2B5D4D951BE0EDAE4FDAF981C31CA65714E2E95CF5F9386DA2BD3D75FC9DC
-8F94637566C50D6DCD9B278BDB43AA8A45CEB8C69B1646640DEBAB2F6A09BBA5
-2F4CBDF80B6C1E4F76C768324E54674CB16A9402716255355897FFF1E3200C25
-C4438CDCBB6E60242843383E75BCB25981FA9E33C1E85C77C6438161B9007506
-CBA3BF4BB65045BFABB62691EF0FFC0452877A15370F2930C340ECB109AD6F7C
-9BBCDFB4A0D6C7067F2909BBD45F3CF3F2811D3580BCE16020FFB6250D75CC6B
-9AFB9DF65AAC48348DC2CDC361239C1222E2F8796E934E863AC9078BCB1D1DA9
-A6C399D3C18DEF0E72EF2EDCB5B8A12CBB26FA110BBF66A788D229E8E5C74313
-59B17A0A6FFE1566E495B6F4A6D0CB6C2BCBCA4B32B1305C22B6875AF39F0A94
-4F16DAF977F12B3B9EC797D4D73FA5CCDF7891D06F9DFBB48248F4804DAA0356
-5D576093ED36D4AA120B5088A73FA861EBB7A8C9ACD181E15BB13D2D780B8BDC
-F730932195E691C79F1E52A1CC6F90A0D2856EBAF90BE4DFA660853E817969F8
-4829A96BF2F33A8CA3520C439D4A60A3EDCF8C91C9A06177BC867587548BA29F
-19E4CB7EC23833A187B0767F6666B972CDE89F4FF592E42E9CCB0E9B2A750A7C
-B931532A52D193FDC1F88CBA0FF97837BABFACACB0EEF99A4DDD81B673E75FD8
-2F45FBD4C2FD7270358E4E724A1DCE72900104A8DE00599A87AAD1148D49BF25
-B435917DB8C5801FA2E23769DAE88CC3D386B0BA16253C22F7E49BA636DE0C4B
-81B055003EADFC521AA7714340D07905DED8D1CEA42ACAE2C6EB84D1E2F8B4AD
-7191DF2A108AE08B570CE4776C5B5BD1EE35073F620BEFFCB8EEC31FC583EBA4
-B5F296A2D7CA15E88ACC893877AD3241B09134AD28BAA6E70ED08A436520901C
-49613473155FF43B6544B4E07ED1D1C300595675565FCB814FD5F97376B11B55
-497F1EE736ABA0357C108F88744190881E2724A06EDE2D17F044253BA4C6338F
-D5FFFEE33581507D34BB814936B54706EEDF4E225F662EFBCC613AEA23293979
-910BD6AFD473319CE9D42376F1B87DF7728C234242918A270B9E89B25C5B15A0
-D606021046F53AA79C2EB149226ECD789EB9A22B6CFA985BFD0870A61B1B6032
-6AFFD28682729599CF80FA34E38E1A824AD1CA281D665146E9CA8451A6B07DAB
-F05D7D8AB0907C0A8FA4C7081F421316F7B01EDEFBD136E1E50DE286A308E7B7
-F8B3AF6483D1058EA6D627263791D3E17A48C4B79DF95609F66FCF4F129C519D
-8CDF29F93C047BC5C48277F6F4F9F30352914815247493DB14C007D3EAD9C117
-F8470C65F5B533EA5C8CA60E0B9845AF71925FF85030B18052B5CD8622C914F7
-47BD64D5C3107783EDABFBE9CC0F4EF358153A9FC7E7CC82631C9991BB367B17
-BC3F48C76D6EFA68D67A03BED387D370EA4036C5D064545FA907E165C381386C
-EDB3B51C5274C53B7746DA5BF231A9EB5F5861071331691A96C9D4053ED78DAE
-E400353D291EABF92C7D40812E4418AD125C5799DBE2149370EB44ABAE366E56
-01CAF04E390379EF47086B54A0460A207A810698B45CA66127CF204E250A4B97
-CCB72B395B6419443CF7BEB054B36F63D6DDFB9693EC749F32D7D5CFFF8A4A93
-1E6B39B4E62203E50A9BBB88AD2A72B4EA1A0D69B0BC9A85D8FFCE379FFFA037
-754BD25F7DA01B647AB07DC3982B7BBAD4DA97E0E11134C68DB5453ADC3B4475
-B55243802B988BD8361D5C05FD0405989BF01BEA30E0313D45A1CFD4C7E24FDE
-FF9DF58A0BE83A1BA0557211F1394A24AAC909D2A205199FBBCC9C8BCDF0DC0C
-E5330ACB4DE8A89C3CBD99BAB2C6CCB1B3E4BD780D2F6AAAC5C15A29E899F89D
-5A589E6621EB4DC953E4E67905C751E4AD74A14DD029534B311D725EB5F1A1C2
-F6530E7090D545AD4DBC85A2DCD4F33BA4E3B3FF4F2ED77F83E94C0AA2A72D52
-A37E13849843288250C20D62762569292C45A12348DA855065EB6F9248057D82
-36FCA9B863A59C73D8CD5884CDB68E9EB3F1DBDEC5136683656659406AEAD8C9
-E73942D0D7E28F1EC6970F625AB99F993E5BFF95
+08911D3CC25B783103E4A26EFDD866414ED5F0DD28A4BBECD38DAFA3F6719584
+41085A247E4D927532D5F8146333FAF9EFA9194E1AD92E49F360A9D82DAF600B
+2F9977F75FDD809C155CFD9540F40E3918B5F87E4A80DC5FF5BE96991A2CC872
+3C6BF8604EF84B2A8DFAFA25AD0E5D539A57ED77E59C2A1D11BE79DBE7774828
+7874E7DB593866FB52EB9EF208B1E46AA05790245AC31BA19170D6CAC0596C79
+C53BAF12DA95057954A4CA2319941929B5B0DCD8BD916ED3ECFB3CBF210AB41F
+0E6F18A7994C298F99A28185DC59D34E5C4577A4B942FE46365E8A33642B62E1
+1A1CBAA3EC5B3C542F838271B21E1C76BAB425A2DE069536A307F583326AEB60
+C85CC65E4CC2B442EAA93406D100F0972C0295D6729A056C79DE2C9E43998988
+2235B0338DB2601751021B38C071F591FCE6F2B90799F1576B5FF61191A84BAD
+467973566F4F8B93A7CF0DF4131F0AB0E8C7B6C94760A63B70BBC1C25485AB23
+575C94704DCD2E2350DDD012DE794A02C701A572A2A3FC4AC7FF37AE3D9C4FB7
+472F8536D7028ADD104AABB6752F899BDA2A816ADCD456428B84190F4C3B4959
+4CED90907FDC966C7982762E2D5A6DD112030991930D9D83F5E6067EA9135F3E
+0AA314D3071F25AFE68B286B78A1E37A3B9BB8FCB45DD2CC989B5D773CA22C14
+1CB26FBFB12DE65D1427B3DC195E13B1842BC7D04D3F3DD49CC70EBBF4BFC7E0
+7E7527D53788EC37549B81E922CB1C4049B5DA94202A51282E3D91D5E75672AB
+68C0ADFB495C8DC32D810229B53F84641CDE6A769213AB68162FE2028E5A21A2
+48EC35CF9D9C7E43E52CA3BAC64382B16274E95122434F26738DDD95A87CD098
+5B4C09B839A3284818ECC730CB13B0ECE9DD47EFBB87CA55B41DBCC3B213B203
+C1D17E40FBA865336C2BAAA35F3BC391B19A4029B14C483CC006DD9D3F69BAD3
+8ED71EA51C2AC790D79C42E3863B1E3C9F864F94BE01343425BE7A3E51BBA828
+490235D4FE0805FB08B1CAC1FF636844E56080556E2DD9A02C7B226FA89FFA3D
+6C4118CBC59CC11FB0D2FFDC682E41B9DF2A830E900332F29E45E1E4A2278E56
+D25C7B213596AFF6A24C0720321D8FF6470C75B819CCFB5720ABFD92ABF996E7
+2458AD26D81AF14E380283F2079C2B83FE20583381D78CA6B3E85089E6F454D5
+88B570F4CE1D0800898ABEA7A287A96D5A3E869595036DD4D32D9A9FD0EEB821
+68A126A862EF64E2671C6F1CFB24D9F428314AD8E4AB0D604F2CAE0B1DB1DB39
+82045997066D28B26EE177BAF9236B60BE68FB5DB9339B8466D339A71F42B777
+BFF57B45D4CF77F8E9D5E471FD2D74FECBFF8645F0D98B4FC50BA7A8F6BE2995
+4A6102AD7F019CCA3E0BEEEF3BACE632C1E980E7B17D11CC800C812F1F7D7FC0
+FF5A0174BF8B4FEE90B5591D81190C8937642A0661780E4794BFF44740A30A80
+83DAB458196B93A209AC91272BA8087D6D3F21DFF0DDF1FCE3C4D99ACC0CBE51
+DDBEC7CE82F7EB344276F34D0B0C255207ECA6B9FB55F91B9B9B13AB0F486211
+E430A978179DF29BFD0EED4A0AD25E944DBDFCA92DF0DBEBDEE23C640A471E83
+BDE92BD027F8C1401464D7C955F88C71B17B84A616CA7E0B841B06C85CDE9691
+71D8C8E22150707B8C9F3D6D6DBB05095CFA679F39AABEF58BC6DE056E2A957C
+710CF025C0CAFF91C595650B11381D1F2C683A2CDFA5CC5CE0F684F60C345F48
+D12D41907E400CDA0B0B98E560FF61DF5E181046C83447C95F925174D7C6AB6F
+C3C50B3727AC9E248165E8D0F08B2891EBF00512E46CAE949F6BF29BAE092737
+BA279DA834CFBAF5E878AE5DDAE5C5A4B5BC1A7D0A8E8CE464D40627262B317B
+B73CA2FC1E25B468746A3F18CAA94F0852A50400DD6E500C6C159AB77EC54242
+BCD10E1EAD8782A82CDC80BFB3A54E9D214F2364FE02E60D7819FE61B100C6EB
+E4742E9DF337D968EC841616158BEB154220E6D70DCE13974E91BA496F82E1F7
+85BF0A214FA6F94DB5B5E401AC96AFDCA357ED753788E34401563D017DF1AA95
+8216EE30A834684F98670934C3CC99A21C94C0C83C63AA54619EE232353822D0
+A9532E2C75F89A1FAB69914C5C4802505DA154023A3337C9F67E37C80D1551CD
+64A642FD40BDF2E641C3DB6AC4BE6131ACD7F0301E938803E40DE2FC33992BBB
+CC8EE64948BF047CDCCE274960A1DEDB31CEAB07979DFEA289D8BE054630DC0B
+E67EC94E19254B135736FE40235ACB59EA9DFBC5105B65F1F666B0CB5DAE5888
+D142BC3747BECD156CB0707D7BE33BDB14FC4B184D0686306526B376F8F93063
+539970B8230CC8341D6C8B0B8C5B6979AD1E92FADC1C5F3523CA556E23FAEB28
+4A4ECC74138C7B8690BAE8D0A89DF70653E613B91CE572ACCD6604D576DA697C
+56CB644EB7C70C3D07AAC482183D2F401A6E2BAF3235322E3BBDA09157FDE8D4
+FC7333EF571DF9E30509CA222B30DF287A31FC67E7BBA74F2C90629C3544B19D
+F6F938830870C97FB19752F93B29403F044EF4953F91C53B88EFF9E6D0FE0687
+08285B38E000A762D7E5E15CCA9DB901BDBDA41E841004F08F30CB56E3DD2232
+C85A40CDD516DA4253237F1AA577D747053953518A92A287F569EE41A116A14D
+2084729EC88E46A34AAE1B537D28AB3C4D39BC0CBA02B368B577B3731111E0D3
+085494B55591D9E3449FC6A7C0F82B1BE38543F13479C1CA3EAE623BFFDE62DC
+432B40A46FA7BA8A582CD998544C4B33CDED6EC7F72479FCC42959FF7C37A3FB
+3A7072039D36958996551A71162AB480D433FF808327EC35DCEA1D01916BDA18
+5169EA26A83C5180BADA8B77B2C206E6624683B167A3A3B32D8695D7445A3594
+A26CD07A0179EDFCA89722C34BB2C3AA5B9B2A4350ACB500946ACB5B49D497C7
+B0AEE6B6079DF8C232CDE3E87CCA88B4282DF3895674D1E8136D9827E68D9378
+C7ADA1A896D11828EFF3FFF15A463EF16D3DF281DCB8976EB2C27022591A4887
+D120A214C54F95B9AFC44D434390B9A7F842C39B8DA499DDAA68587A6C2EDEFD
+E68EEA5BD32E93034C76F91FAACADB436BB88646A864D895F300A11ACF33C42A
+353F4ED281C2B7A260778DA76E7F1FF703C6D56EDBFCD9E986DE38646D50A590
+2991A338FA032BD94F974946DB743EBC203BDCAB1662B7D98B10EA440AE46F82
+5C66141620985485DD40979956633232EAE208DE3BE92D717316ADBEB1B769F8
+1F138DE8597556A87B22E41D70EAB31F11CAE7132D5B3C5E1F30F833DC43F9B1
+41AB7FC86F3F4BF4223566B6EA14C3A61E7D34AB6E6F217392A0BB4647248A26
+6C76FBA2FB028C81AB257998C07F48AB777E900647D11801378048E2E6565631
+81567E9B72CDE6EB67A9F63B5033FB6B9C7D505581C983C7664275CA3925E9D8
+F983E20A5233B5B3D03D23924FEDC0F98F6DF33E71D5D4FB00793E7C43342E35
+4E3981995B5392C30F396744FCA59F1818C51CAF479471104C20F13865D108C8
+F081BE06924587A6F722557A1A14C88958DBA63B6C77F1A13E7A78D6B7146722
+24A5517D63455778990D396B3912AE1C7B5825B7733C6E55888F48B5FB22834D
+F91370ABD35DBD0E75F7433A496E603E3D4DFEE8A4DC904C05C87225D9528BE4
+AECC14E53DFBE0937EF2D906523221187890E64410C75D788FC4AE3C17DC5179
+D60AB3EE1C1FC5155D7CB484BE2EDDAEC36609A96840863C55028A4D39FD4BA8
+87D44E76677E8673B32F6F85A3C48DAA7C7B2204060A164A3938FB25F3262241
+C972D1E1AAAF9319A7D23D9BA08A8FF901563D2CAD78C3243288DB2A23AC8821
+FF003D1E1BCACA8752251AA0826E05451EECE968F9A49A9C5EC0F0AD46675AFD
+6EE20DF8092FBF1070FB17D005A1B631509678F3B3E882E4AF291683F3DC6727
+D2460FD79D298ED4C806FC98D9DB3D1804A6895C60E125CB9C8545B801D0F505
+B40E16103E561B0521F9956A88CFC46FCB3B36FF3175538FD7CFC952E2004CF3
+48A3AED66858B74BDD85AB7D6B9BCDD3EBE921934AA82392471782CC03A47874
+97FC7DD1101C25B97458059A24BABBAB9EE6094D0669AFCF0CB0E273A4909CCF
+E1D350CF8D3069799152BB9011D564EAD62EF176E511EB534383DF1D19F35C6B
+8E6B1C0BA770472E61BBD0A2DA00707D16191A5487A1BF002D8DBD026FA7C851
+1D719CFE88EADB0586EECD8ACCB3EE032DDF6026C7E62DF9987E070533920373
+151DBCE3C04F654967322785A1BE80F6CE8C50D65E96863FD6CB4C31A652E6CE
+F38F03111CE36DCF9B6F64190CFBFCEA22FA8B5F6179E66B5994E5E9586ECC3C
+1ADCF916998760825BF12DE691AE296CC48078F1509ED765B15EC2ED8235ECC7
+D3DCCA5D5C9A27B7EE6FB3C78D79F6529A03C9D550759CA5F0BECD204EAB16DB
+BBD12D108D20706C1AC67858066C50BBA1576546AA606D37D8B12C0511A3EBB9
+63B7779CA5604A336A54A79C575C61045DD10F23D99D3877E522B194E7287614
+80CE0E298CABBDD40549F83CE46406D76CC07DD48384AF27ED808B7E3E2B81F8
+26C2749FF238F9C699BE79EA69965FA8A94B5A2875899D9F0FF72C78C753E5EC
+AD3458384E61C3E08524481794BD3DF2DC6206412C2DB9B86EE9155A4675F5FE
+2DC1FA09B754B9B7E3DA119C90C81430D5A533DC259D6516C3F8B992AB62632A
+5A6F475F3DB3E427B0570701E0D1AFF7B313FEBE0FC7322875CC45077C584337
+E3CBF4BBCE18EBCD14DADE1C1833190AA62EB62760A83AB78C60033071520FFB
+377CFE6CAFF3E7D8026DA92A15AD94981BB5D76CCA34FF1468E6BB02215FBDE4
+414C66D90152C9C8C780A373E01845F4D4FB9A7D2A97DC733FA59A581753EEB4
+5722708135F548BB4FBD2DD37C55E2F8D4C65AEBB300F2B05223C00AB304317A
+A803C7DC09C8CD1B23CDCDDC0F7E648B8142E46E908FE3CFE25A5C075FFB423D
+EE946A9BED61843F22A7231E737E1FB265E14C02776F35DA5D3BC36B8E6652C9
+E1944550950DC924F3030B4CD1FCEF2B5E6C0D9B58D34F7B2C29EF7139FF52AB
+498D5BA0CD55C9230B3B0CA266B790DE91869AC5B72577E4417B3F0D5D6A955E
+3E6A05B9444247ABB17AB3A288DBECF9C5B02BED7CA2D9F4A3A4F199E6D2922B
+5CCD025DB0D298BF97E5345AA680FD0023EC3F81DE7221AEBEC1770569D79EAC
+32C16379367AAACB56FCFB5F47CF47B780AD679CC8A9C305DD7A127EF0B394A5
+7E3159F1052C191D28FACD28D2F36B05DD0DB0644D8899048E6C5DD483C0127D
+1C006F9F9DFEC711EC89DD688BFABDA31A73300BFAAF90663FF84C5790B946C9
+452676F40D5F45354722CB1F740FD35010C27AD9121C3420BE66D784330207B2
+73C58EBAEB5A8304F71C295B2DE803B4A93EA1860EFDB160B3DB61E9D7708E7F
+140F356A0D6A3DC8486F81F4E9A4E1213FB75FD7497E7DB56100B54A55F37535
+6AC2C091DF7A03AB38A2DD24B0247A650A00E6669B0A078FEEBD54614CAA4ABC
+B05C7E2594EE85BA03FD8AAFB2C43536A26555564C275BCFFE7483B43E81F7AC
+36ED7A0991B7F8218D8F678F31930D7C600B9A47CCD790A6AD9C99D16518D3F7
+18D42268284097143E87D60D28BAA05BA9C9FA47DB0E3DA798ACA86E543BA2BF
+CA5E5F6730FAD3E1B1051F0718737F080A495BC91CE0E7774C442E66E331D09A
+73AFE0AC77DA38AD86A40FFABDF49BAD8AC91D7C31564233D7A9DDA0D9D27885
+AB92C4D2D3B14647C93511F6565BC1D4F03853283729C428F94703BC319C4FA5
+1478B61DE751E27380CC1076BFED2A8B31208F1BEB659C971DA6393CF0B0B33E
+282F93B0A501955378E7B546E6AEE13120661FE7C07491BABB7313557E4E5F29
+7B84CAB3F7370B935AB0AF27963DC6F60C8B2A0DD1E04C9E8911068ABDCD2E9C
+20EBCF58C5F2773B33D2AF4C4F122C5BF9321568076283A5F05B3FD2B16709D9
+C4FD911FDA67C7AA06B91D853F1858EF9660B5ADCD7B06DD0C8C1A12FC175735
+149BF9DFCEECD8D88FDDA94042F7FBA95E874E94A6C5AAAD3E0EA0DF13D6273A
+89CE6513EA5853E7875D15FD022E068E1392B894934685EFEBB9BE1490FE7A82
+67530BD9DDD43ACCF80E748EBB4DEB353D374B2DEB72EAD86466AE0CA235375B
+5FB1AC039FFF57B63EA537B36174E9A050DB70933BD05CD41AD49C0D04A2F313
+4063DAD445A5C612B82DADC6DC11D25CE9FA92ECB56D5F429AF2757F02EC689B
+DFB7464AB8A0CD8B72051F4A98614F4A6E7B15D43672EF5C33CA26E160DD5520
+25BF588577C2236D0D630DD0421B1ECA4CC007D0E64615095950020CDAD9D4DA
+8CE4661D24724C0AC0144A4889098FDAC337BD7C78B0F388A13F8137D2F18A53
+B0B0D8EC066FEDD8C8D54DD2135C3370F0FCABE024EB99AFAC70BDCDBE6BFC5D
+E23ABBE768E53E0DF8D7079B7DDE2442D730C0475C9A4048CF99E1C56728D565
+75A1F64281D14101D695E7DD5FA48C62C0B9B7827FC1854C021FE3CE870F70D5
+19535DCDBBBFCFE327F2A6CC7481AE53370FC08B62D8EC664DDF4B504D02502B
+042F9CEFDA8AF24B738FD3DFD34C9C692F9CB6342D8E8DA3B2A06108EC870531
+A8D1D62B7B7F097E9B2A5775E53173FF538056B03E9C875621AC4EE5EE9C4C21
+18A1906C61159D55BB7C7D109778F428F3DEEE1122469AAF9732718ADCDF9908
+253F74EAD450B68885AA57C5FFA0EB6F6B2EB891971B02FA7EC7C7203F298E31
+3A08A0B5180DFB10B34B66050F62463DE3C014E19D0398A72FDC11BE4EE00943
+36F6CB5C529EE3A19110D10823FE02D4EA5BE365EEFC18F3ECAD3E1101D8CE3D
+5AD44613CFEF9580C1D7FA9EDA7BDCD6155CE8EC6BE79D091AEF19BB89A13AFF
+388C26B70CF3758F86A76C3450844D46520AB16D01BC5F3915109D9BD1F78A64
+BE20556F5DCEFF847841F8365DB7EF06AFBBAB728190E616FB7D9370AA735490
+5C4B4409F3E34BE564FA88D1331CCC1A00BE9E8E186A5D0F1DCCD426B79A7F4D
+C39BD19AFA9C79B3B7A28C24A209D94F666C5837523BFD7D38E59D11E7F48560
+0FBABB5C610DBAE63D2E67A1F926EF4F5462D98D1405A431DB22C9DBC80F67B9
+01A819E3EDB22AC7D1FC748590CD9203F906445788D8820927BCDF1E0ABE204B
+E2A8B6755A17EF844DCA99F4738B26CBA284268675929583B8468A2C3DE9A5DB
+F366EA0C576BB7E10036CBCF86B0C3494228E10FDFDD59A0435E538BA79701E4
+8AA53871869180B0B060151A8F420656E0E2792637E832ED93D8532DC0814CDB
+6D7C7F53701ACE45AE294AC19EB97B5CDF5BCB1D865E62E4D9D1A151CB5970AD
+AFF87E1FC03853EE466390B597C0F6CF149EF9EFB42819CEC8092F67BB50237A
+C2868C36D72BCF0822E093E065635845D604B77C4E4C161DF0239FEE4BDC037F
+58007CE77A3CAB67AE631F29D4ED764A0A126976BB2194A666CF2BA5CA3EBF33
+D37FED40519A3E19DF4F9241F813DC9A555F38E7AF608C046D1C96A9C6DE6645
+B9627D4CFF084A3CF1254749F51B4961B2BCD29271E1A02E0E5B86EE509E8C8F
+26512D8AB22C4C5B6074AE577B86B478ED8291B136AF6113D671FACDC0023ED5
+D574D04A4AD74880707C20645A55F4AB5810ABC0B525F775B125EB7616E7831D
+0360648390D937542BE61662997C487419FFC9BE74D8F4A5DDC9699374D3AE30
+BC0F4E70EC08AAF807F67B1C68D70338093D09F17D2E8D008266C4368409E90E
+6E955E7B935BF5AB28065FE513342CB3A796BEE60F5E48958EE41C0471860EEE
+640C261E37316813473F9BA9200EDFBDFA496BF22ACFDDA70EADFFE257F89B67
+81A55A999CFB3B72F4ECD44E7B6ECB71AB3CF7AC777EA9834CE2998BBA2F8016
+4D3961B8729A4AAED8FAC6FE5EAE5C8DC097359B8C809CBE4B8B69F883CDB26E
+CDF480AE18E65B273B456FD582AA004C076CFFCC6978412CF2FA30142F2713B5
+3A605BA2E3546C4D5D29EF6190E7371F91C2399830369A1CA08592830A62901F
+195A6E57C031BDC678AD05BD31DB2852D817E730821F7FFE13510D698DBAE0E2
+DB801C9ABC5A8EA00F6115F7C9E8317676373F4AA7AECFBE35A1198E32261131
+B5A92F0575A7D965E47BED65E809941F01BA86AE154176FD50164ED22106C802
+5FACDE0EB8D4105EABC0D4638C2F7BBE1C52BC16809B88D982E560C76174DED1
+F313DC7E2D2EE61627D1454934720E54112AF367538A974809E77F7769A30346
+131F149A3FB0682A830E98BB734B67D22C44D06EAAE521B86FD1470471FF2AED
+2305E56B51B61E6B5610FA7B9C6502542B57674F427AD1665EEA2C13ED1A2814
+6C3A1CE2E7E72A0138D9FD8E66156B6907463A8CD97D90991EDCF3137D6BCD8B
+FEEE5C123BAC02289A9308FCB1EA87B4E1D59BB2B06B340B07349AB0C9FAAD7B
+8C480646AB2DD634F028940E0948045D1C694BBF3E5F3B8C83A385A916876DC6
+866551F7635EC87D928A77109804283F8B9A0920C8BD4C968BE08992C7936D2F
+A60435B048A297E10E682E8071327B524F8EEEBDF25DE72884F4E22920322871
+0283BC9D7357E12394AD82ECC92D3F3763B54FE60317B14DD2909F85218BFB34
+A56F1AF75039C022BE26AE2EF3C0CB4F6574BE90466044962071B54B411B6B13
+BC0F61CC32C5249D0517CC284C5D6E50A3AB40D7F46B6B8A610DD2E0A3E1066E
+C850EAFD33533576CDE5B73A2E2C8840C942A533F3E493F0E2C98D5CA5F13297
+9B8C8D5E5D90F8F3E733655FDF3F3A3E346DB306747F2CD5D1CEA31B1EE35835
+D433491B4A3FD5541E1A33448DC2B2256C3A907833D267438B317D3CAB959803
+E2C798F04D3AA06895FBECEFD238E25AC022803B5A9FC1F380ED13A023A802C0
+DE9AD218C0E1855E576DCE2F7941F4932FC5450B18B964FBA4E17E48C6532DA5
+B186659BBAC3FA7FB1A03A969EC8B017849E52ED063327AA8CA72520681D522E
+E0879CE48937AB3E65CC6FD76E56D4DFCADF695D4D869EF72F184F92BB0499B8
+30BAD65908C067BEB7A28344A595DCBEA133EA821873BCA95D26BEF5B5BB14C1
+A1
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -3759,7 +3245,6 @@
 dup 51 /three put
 dup 52 /four put
 dup 53 /five put
-dup 54 /six put
 dup 65 /A put
 dup 67 /C put
 dup 68 /D put
@@ -3785,7 +3270,6 @@
 dup 115 /s put
 dup 116 /t put
 dup 117 /u put
-dup 120 /x put
 readonly def
 /FontBBox{-53 -251 1139 750}readonly def
 currentdict end
@@ -3816,165 +3300,154 @@
 0E73843FC6619DE017C8473A6D1B2BE5142DEBA285B98FA1CC5E64D2ADB981E6
 472971848451A245DDF6AA3B8225E9AC8E4630B0FF32D679EC27ACAD85C6394E
 A6F71023B660EE883D8B676837E9EBA4E42BA8F365433A900F1DC3A9F0E88A26
-35FD4F5CD7C10D1AA982C30AF9DC9B3B22747B32FDE22742D5E370BF56DBB99E
-43F1ED8DB32DCA5995A24ED64B47DFCC63742DBE5F02F769D2C65ADC78730E10
-735FD6FEAA5D24044B6F8D1A114634BFDFB52020BA2A90461925EADBAC1FF4E2
-FFD8DE1AF359FB85747DDDBDF4577ACFE6254ED56BF78CDA007E0380A3CD8BDF
-B73FD2AD6AC46F6233592DD1CA06DACA2DFA63445C4EC9599489FE090FEE40EE
-9A9AA43E56E92B76926884F909F6A38DEDA3A1562F474CA2051A4E35146543AB
-78A34D8F917CE2D93A4A9D51B55DD2C9586F3949343090282988E8E0A7CF5651
-BD91EEF0DD71C6B1F4B0A9B21FC047729912FDB7DB8DB1E3331BC00A7D9A5AC6
-904B6B861202CD189A7EF310A9CA1D1488E189CC8E677A7287F841285C289DF7
-24021EC39B9E948C791233F3F74935B03EEEBD89C24C97717CB42E7668A399EF
-A6D8363F0AD023B7801C50BCBB28BAA7D6002DCF1BFA0AD0303D8837BC034D06
-E15989DA4D82AC30CBBEC5B66657C47EA427CD5CD9591C478678306ED9FFAC2E
-84B4BF48B6A089D1CDE2CA10EEE191FF2A3727A230E8FFF74C48C2706F2B41FE
-1D985B7B54676E411E75FC00DE787090BF39C49019CA771ED796C700074F2F35
-793DE3C19CF5E2AF8BBFE8835614D166E1E26AEF6B37C8E82BEFB1B1D76A1A91
-DA27EB887BF9E301DF919A020F6466A9DFD55BF35521F270349ADCCD13956957
-4EDE2D1F89116EBCE2A21193D14E70908CE9765BEDC3C5F1391D72B506AF153C
-DB2564BAAE504A9F406F551769D71E2F0DA7FB37A80936923A7A213DD8F539C6
-5AE1F1E880C7B3AAC75C5987407F41C1F3B67AF3AD2BA8553F7ED0C9504CE206
-F77B4FF91E65710F4DA0A1D278D27FF96A8466143D64D9173E511B1B1E96B671
-8610881E7933C4551AF61182A587D674848C85D49CEF70FBE50738C4D48A70EB
-1CAB00C5F13C6754CCC0C5ACD371D678AA03B4C05A096A0427F0575FA36EDBCF
-715AAAC454D71461165521C3400A2D91EBD54165EAAC6E12B9D841FFFD1E215A
-BC9A8E32423D86A01EEC7A28EE8D0F40242F543BA71657258A20BC85E5ABADA8
-42EBE6C015E5DB95CC683B5C41B531239C7A56DDBE46A563E42DA62FCABB22F0
-244F28194D98AFF1DA9F0147C43635488CDA4401BD3B31E1828846390F047D18
-34DAEF7E8E61B5FF5E3B5357EF93C1D5EF16B5556990ECB5E0D2967D4C6424C5
-2C8C5AE029850E5EC1B97DBCCDF0BC1ED1371BB087367342EDC2E2DF6469698A
-3C82B8ABECB9C1DC37E58625B9F76B2FAAF811460B93ED6EBAC7259DBDF4A008
-A2BB38416E43B5E6032364007AF9E4CB2FDC437697BDBC43C67AF4C2F8BC0E25
-0C5669D208D18F446D80FF4DED076E03F99D4959D5DC9A99C2F46823CE81B1F2
-0379B1641CDADF0D07CD6FD4AF25D2DC31A7864E797AB425269C0ADFAC8E8DDA
-E486515200DAFC454A5327D6B4B90CC16E30A6031A4D3F65A1E8A3BD89C21D68
-AF708831DF1343AE2A88A857AB60236B0033CB3712B4DD04563C51D992B3E563
-97DFC9834D4BFBCB4D210D91DC12F8ED66BEE657398C08D1B1724F06A480D23E
-6249FD708E1C4A0DF706681410BD20C29CBC89B276B90693F9139AF5671F4929
-017DAB8BC68131AB77231A8FABEF37F76FDB7FCE5000D7DEC185575FD8812FD3
-0A0BD9A4132BDFD986CF6331D235D4543EA704A3B5961C378A25541B9A1A8C3C
-944A10ABD89A0CC72FA7AB2EA4DB49E97E346615566A67732E38AA4299932E12
-E3606ABE3D2B2FA42C392DF6D9BBAC6CD51DF6AA2825C07779769CFAEDDEB706
-70ECE0B7209FBCEC3CDB71CEFAD3D220B53401FA69E5892B8B45CB24BBFC17A6
-7B0E316DE23B798F5B8BA07A6469117A3D5D6F0DBE971FAC0B52AA859250E157
-CC758C5C634E88474BDF5ED2B1E83DAB5DC4B7C0DA10D5D471083CC88F7696EC
-F4A9AF2A98206F1346A5F70BB6CACF654D2D9305D62E6A0EBAF22B833A4DA713
-E6F3ED176E47B1AE8C5594BD4A261323CF199C7C3A2E4E1964CA0219D3720A3A
-F753E7FFDC756BE5376486E1F0AEB9897A6065356586D218E2029575BE1780BE
-EED6B40B6EFAEBC77BBAD1D369010193A671BE12B9013AF4887BE21C7126C402
-6BEF1CF6EC3C7E0D02B2B1DFB577CBB5D9CE3236DED0B9CC01ED63928C0F540B
-15352F0ABDA3CEB33EB4E103F6FC7350A2494D71FEFF4143B870AE10CDEC3165
-BEDF382B6C10BD8EF0DEE3A55EFA86338492EA37891AF075617FC3E8F5079AB8
-9C7599F2C068961FA3BDBCA7298620E5352661B907B2D7144D6EBCCA6DC3E089
-35D8666F473B72BD7E7BDF0D8073458BEC15F1F6634DF1EC24A9EA8B07F8FF5C
-BF1EB93F18E14186815E8BAC357834665DC3E9F9D76FCAF72D5085E9C35A1546
-8B927AE0AF1A392B094A31E4126AEA7F75E4ACAB9B1925D8557D54A329F4ABFF
-20F8D2AAFC79BD7BF72FCECCED5761748372365C33A263CA1574E4EA87B421EF
-14EFA629D9E5FDDCEA399FDBAA7AFA14F867A5E8AD9EE7046D91E54A428FBC08
-EA946A6CE7D73694ACA1FC67B2F67BBA97AB58C528AACFD57C4A5AC802579EFA
-43A8B8A99AA542E8A2471609D02BEB92F2E51AF04E8DD61D20F938ED4C950A8F
-C466C0EA769EB8B46E265B06B543CA171395EAC0CA72ABE5E62DCA0440E4540F
-019933F59008DE51DD9271C81B395191DEF59AD97FCC60CC93E59FC126310D01
-A29457A1AAACAE19F91368387050BF7129AAAA6613C4829460B65E64C138A069
-2FCD5E0559A5A3AB1924D4FB22F3F5CA1519831F4E41C87678EFD2FA3CF3B335
-266BB07B6D5CF82D3D547BD9020DBE2BDEEEDE61F6FCDD35F896B63E7B1CB104
-C7D488B99B4A5643E1546AFD096C183098D7ACEEFFF84BE9F2FD02F98F90671F
-12A5CCB20A0A1269221280F8DF3CC33455AB3A8DC32380335F8E3E75D0DE1A1A
-83E4A7E7BFAA59BD0090F034C9FED7DC2E8C66814276FC99E6378E7BB0FF38BB
-B5A81DA91AB6474A4DC9A0E4FEB313FA885AB1E9BFBE8198417C5EEF90DDCE55
-453B3B153F4B8DB73683117B6C484D098F57B6DCA65E4C59C8B7050B080DB465
-1D07039B35DF1B3A8A4DC98A77F29DE13978D1854C4B73E8BB973AB40A4A38AE
-9325911E222702054C90DD14FB3B61289FFEDD6744F1E721A57F77D824838D9E
-333EBADED37D76CCF63CD736E5831E9C7D51EE570A8C9AD9717EEA95D42143A0
-048816FA23FAE10C54898998525AC14CD811B0765E6E658879AE7080FFB20D30
-9EAF2D838B3F1D96D51590A2A0F5D484F7548E33C549237576D5D82BC256D925
-E1138FE09B87FCB7540B3E2187FE2DE58D8FDAED0D75651C9BC188BACC56AB5B
-E7C7496C553B7714383ED3E70D6B92F14B05E26B6B0274E44C53C6A84B61CF22
-9273BF78466892B242F58AAA92C038E13258F3C2F9A57098B605C885991025CF
-9BBD909A6F93DB0DE07FBBEBAFC9CB1A87A6A6773A5A5FC417B9F31595750E60
-B50DC0A5CAECFE62543F59E96F51B0D338B7A0C44358C650553B296883CC573B
-C2DD43BC846EB197E852194A2C9835750D6524D63294BF6F4FD3CAE8D1EA16EF
-834B6801D1B081A56E405EE80900D0F6DC00E7800C396DFF63676EACD908608E
-4DDA1DC3A800B63E1368677A2B5EFD2530917BA1539BE6C648CFE0C2244FCC43
-2C1739FBFC39FC2E50875425BC64605B1FB6C37357AE11BEB8E499604036F51B
-52457B6FB29A9126838DFA068EC9D01FE8E69F113F57DC8BC3B52DE2A35CD032
-56F1096B6ACA46DF36F8CE45AEA357C1B7F6FA8AC3C4AA760BAF57B5128D6438
-21EF83DFED26E4144E16AEF1B841CA546B2C54A4EDACDD6D5EC5A6A4642A1955
-65313193EA7C499B168CE70EF13538C30C94DBE6F86FF103029A3A7CA8E0B5B8
-2D6B7B777FE1DBFB279B5E855E19FF08275FEA6A3B9A9D8E719D59CF7D3E151D
-63AC8B3436F913478D7B8E3EA85D7B73FE0DABB9D1EFE917580E2E6B6BC0EFF3
-9444C157805BAB4B00499C528476B2AEA8A98CF4A2530AEFF169786F9BF30B93
-DFD7CF3557CABB61280718C432D1EF9A4FE963B4DC8409B5B38852837ED1C01D
-E6C05FC403E99A5ED5F13E889173C17276142F20F2AA3D8F141BB5C460B41D19
-83C93DD5912F6DD150BDCDDEFC4A27B1A3764FF654FBF0A8CC9EA73F4EA270E4
-A0B7BA521AB41F8869826DF7F22074521F50F53690AD3321ABD7F5EF49545053
-F7F90E8940DF878A9308F5941680A25BD1119B2D003C02E9E271774334D6022B
-64F2A995C5EFA8AA8BF1D6E0BBEDCD698D6781E1C675E632EF7D6070EBD3A0EE
-DB0AA291E350EB1F221354CDB9B8536C2978FE6BB3B0BD6DA6B0B91EE683F6CA
-4621352BDABAEA6CC90B9FD9E94EAFB05E61B62DB5484748A7FF0D83E448DDB8
-9400308AD834C46502D605EB7E08FB5A2671E3FBEBA766CDCADA8B79A3CABB98
-195C456B136E92519068067BDEFD98F4FE4C4AD4294D5176AFCA73439EF93B03
-0BD966E6F1B2BE3B22373CDB626BBDBA1F17A78FF0900BE60BE4D5D39C4B8DE1
-686582842A732094E2F5B09D0E4C20849B103C8F2BE7DE926E5EB9280932336C
-845D9BE95F2C2A36AC3B309786A280A319070DA1FAAC6AD63F4F07971D85C474
-6897955C270CAE919F09E95E3F8C619409D01DDEC5EAB8B8C9CD1C23DB2AEA3C
-FD0E2A2BDECB96389BF0C426D9FD37ABE5F42B1E2C16D9FAD4CA60DA27078937
-108979AB5635BBD83A85AA1FA53ED7AE4E9F62836A405A47FDBB9EE9139E7EE9
-CFD7BE1F069EAC13181C205A4F31E84010727738E1AE9346B013B041DA251787
-DE232006A566ED887AC0DFC66D225FB30056A32BFF52E424F0FB5E7DE74D730A
-3B52A096A0C2C7C88ABE8487245DF995189031D2B83591B41312463C1BCA542F
-CB58F26B6C9C8E33DE5D46178F42B11B09C327B977D9BBF12D84F92C30B4F87D
-A2D656668ED80AA24DE48F60620E6FF319B2D033F228F7819BFB94461CB3D628
-FE05EF240D0A758752C0B841607140C1D8D4469AD4AB47E66B817B2D28115BE1
-57A82769E9530206EFAC4008C66DA918175ADEF5D862D10D0A27145B651053E7
-15042E5E68F771EE1C84B147FACCDD9CB249FD2505EBB3D3CA589A3E7B05E10D
-3EF0E7C2E5C620E68DF375AE4592FAAE964DB394B969ADE73CF9338AF65AA5AC
-04522F0F7054F7868CF38A54FDBC40F85E7804977E5D950F5AD1A2F66EC24608
-A685183DA6AFAAE7CF28B185EFF8F1A26814605CE4D223FD2CB6A079EB5CF7E5
-078E0AA5109C87B3EDCB1383ED7D3E47ED9C30D2AD85F150B9186B609A3DB4CF
-F79FA7BB093B8A243A5ADDD14DB4CCD8BEF6A53FEEE0FA9D300C0EFE06D7BA3F
-BC30F0F22CDE2C36F349A18759F88C7884AEEE21D06D7C02BCF93B3CD17CF374
-9C8C80FF0F29A954485ADCACFC9C45C86147CA65FC34D79161CB7C106711727F
-635D38DC5083506135238A4E750E63DED93E6935D4EB75CC149E6BC3973CF5E1
-60D4C9E8B5DC4F0A4E5B1A4910AC3AD727AA2A27DB3FB5A49A2829149A17B7EE
-AB7FC2C2B9F3E503BBDBDDD7F10BA1A12A2CB61408A23B7379FABB11624DD883
-7364AF01A37017F7D20C4DD20A32CAE20EC709972794AF7426F8CD5A92F68DD3
-C676872ED2CFC73AD91F207A355462923209B449ADDEA984CE93ED30BEBDDFBB
-EA514B2859CB8E6BEA3C259BE25E0E78B2373FD115D2DCB7DBFE1E9B967385F2
-3F784D96F6F9C6A6925BA7054E18F1753855BE9FC4390CE2A394A39E278DEF45
-5B26188A7B28F935FEF2EEEE809BA40250E17BF843E5694007C89010E24889F9
-761BB4D1FC3EDA64295F97AB77D916B02EA4BA866FE2AB03D7A0ACC59DF414DA
-8D3BAF84A16EAE1B42302A21EDC4D8AF38990B936086B399161DBDEA44CCBA44
-3DB4F66F20BDF07C9B28EFAD710186C241F716A69ACD6BBB2EA238B94A0002FB
-DA0B80801918F6E3E12A57E836614703B1D42DB35F27862E58B7CF4233B01288
-2AB48AE700C299C9DFFBA0060C07ACB8AC57031B3E853901844E63BFCB4698E4
-D1C01886850B615E42706FCC15C0A4326C26B78AAD1AA1A2DE32C655761E9E82
-E36EF7DEF7C11BA1D2FBD3085D0C79869C93775622B97BFFA8C88EC793F730C2
-3C7EDEBA218E2616F47448DA23E4B750DFD15D53A1809915EABF8953DC152B2C
-8126931CFA112E100F5F5196918A29C0BBE0D9B57B5311E408BAF5D4F69B22D4
-3330D936A375A7381E6E26166FEB108E719AACA906CF0564A621D5538F88DE5B
-EA8174D416DF5A5E4D6FF766229F6B2A13F6C99A3B813E30EC46BEF614BF7A4C
-88ECB0DE5324D806F63D755D73E000002CA833995AE1CC35951D363EB591A751
-C282B4BA536F4E5E475F32C669F2B40B30E133975A1B066B6F2E9DCCC4394E44
-0D6D73A5A1182BC6633D837432B54998EBC1B7C78F2C97ADCB68DE357609D018
-5DBFF60A15EDEC18AC62C6AF4B9084F6BD2805A3F1295BF9573F03D5F2717F49
-00E086F6E7948EFCD3F1329B874321FEB824E2757ED18DC8DB2CF6E4EC87C36B
-D9969FC3AE3040C0E7CA7B1D0FFE77F45503A52601C1FF22A88F7BFE87CDA6C8
-7F2010682A9D47D020584E1B0589CB3506F30AF338B24512DB82BBC543AA2F61
-7B3A2DF6F0F38BCBEC9CB8E514BC9EA0BE85BA65164EF438DFF8BF8431C04CF6
-EA6BCD20057E86DF0E2DBFB15FB2E8BCD11EDECC2EF55529CB9B8792DE210381
-089B90C19B117BF2B88E5FCA492BFE546D7515C25264DAD4C0C45F6483DCC05F
-5BAE731326420411E7F5773E673CB9A9A84DDC1899CA896F55486C096A4670B5
-633F76A24947654B465E65B1144F3D661B98F7BA2470154DE081588962BD16D4
-94FFDFAE48DC3CF727FED78C56419C328BDCD30FFA2BA50EFB2648D66A1518CA
-FCDE32B5626DF79E03BD7AFCC4EDCA05E2A4F17B7836810E11DD44BC14D48A98
-028A15A853DAFCC4DF862E08AA1C8423DB1EE1C6A5BBE90EAFA8BD72981E0A68
-8B687C155294491941DB5E05FABB7BA957701B448E92BF377DBE7FD6AF56EEB2
-8ABADA2FDDDC6105DC2EE8193D579DA71B2AE335A408C84258813B7F48512E3F
-F26232E759F5566E0B1A65ADB1D98EF2C1E699564E4E8808BDFFF17D2993C536
-FBFFE327AE60F81AEA77CDF2DB327BA884B72EBF28677A5767C74A359DBF2D4A
-5E5B86A99905B95B8A774189B89046BA78B484788DF8
+35FBF325BF62458E39F193E4A10E361FAC3954FEC14A8679D73A7063D5DDD4EA
+8F548856722326C91506873DCDCF0CC5997B377CF36D037A057B260D89EB1E9A
+D7D9A58B237F397341116E4D38A047E459420FB72A765A81917CC32A2A5527FA
+243CABC0E3AA8B8477353A6DB11D04D5FEE6DD4C55138441EA1EA68EE8550510
+0EEE0BDBC75658460BED750BE431B2BAB128513BE0C24D5C4A457F48FBEA8CA7
+69687ABED21BFE933C07B22E4E789C7558A7998FD1B0F9AFAB37AAEEB779C380
+B744261F4E926F58130AE6A0354FC1CF70470D8E1011385D32ACF10A6C4FBC41
+C07C845137D5775C14478C94D8E85E8C293F60DC9A484A96EA2C8A154A1779D7
+7C1353CEB567E0B668FA2E4DF43989497932E19335E291A9B269A177EBF003D5
+3BF2B73E0E6ED42A9810770501159C98335EA39118AF39874F06C53C487BD4E2
+1B588FB8B293694377F9DD2EE8C64A25AAFF32ECDE48D37E456981131A2CDE23
+02B8EFAAAFC28AE1B607EB85BE6BA575FC45AF17AFE385C7D767EFEAAE9694FC
+DBD7B6275D8F2E76EEFC164909B85FEEBE1AA5DDC2F965209C8FF07D951A10D7
+4DB9F497B9848A4A52DF00E6682E93D7CEDA073B35DCFF19FCB19F6605338421
+EDEC20DEEB55E91EDE37FB8938DFCB05261C3289E50D944763B6F87EA204DCDA
+46C435EA512002ACD35114E4BCD453479F1081FD80D3E4213CA726EAE80535BD
+D2E5084C5815EE9C3B2A0B58348014FBF7175E58AEE7320E3C283E97E91FC148
+D9CF4524BA51337B041EE1B66FFA8B9642A638B5E4C1879996B4E626549AFF8E
+A7006965B4CA494592E7561BF5983F193D4CD52430E29BA574CA281168CA7C2F
+7AAAE2C30C31EAA141087C46723B396345776CE4B40FF60832BEDA8B14A24074
+6A9C1900B7CC842E775D97D792A7710C008F4F92ABEE0CEF61472EAF40EA4A9E
+B07A083E7DADFF16F7ADAAFB1E24B1804444AD3AADA43547B7E6D5DE77D0754D
+3A6670574CE430905F622D0C15C82A40A264CDDA2F0723D69C4F8FA64831189C
+59591DD4DFCCBEA66F1849FEC8AC1B5DA22F72C9FB8C3D05CACE303631AF9D78
+2DE52A05A5186FB3A80672DA01223C1F443836BCB004A771CC3D75D0F97DF824
+24D56883525CA3925CD452F6E426DDB6FB79D67197126BA29A12CC14587BCA47
+AB9A7C7A4634A2248BFB972E48BA7A8AE9190AF1D26FB515F3EEE117CD50B514
+E39918133464A359C3C215895B29B1F43A25A983CA427F8A2A11C83B88A3F35E
+C0343E24988D21AC0CF2C38894B01821DC121ED03863F489FC3A4FA01C9FE082
+18E0FE3DA76E7DE983EAA6543E4C93A3A9EDBE11798DDBBD7521DCF0481813DA
+3A505C12324768BC6DD5C2167A399486E32B6CC15CEAE9DD103A01A2B4324BD5
+9A5F9D95CC2339B880A719758BE9A3220FD48539B4A333E6E2A0818AD836B66A
+9DBBD343F104952522158433E717A82BC6BA69170C8854BC7964E39A794C84D5
+0A0316D050BC8616C951AE56BD08BBA4A305E8A9944D0494A182C2221015C738
+BA9810E5ED8DCB6FACA475FAE035C3F77D82DC5B6794C5653323AFA648B79B2E
+39770A1108BBDB293FDD6DEA2886B161396135D0FE52000D07EAFE2DF26A251F
+A04B3531756DD103DA1C63A635573E0825027091D81071A3219ECBADE63733FC
+B04CF07B363A569BDE999F277A7FA3973D0EF1EFDA43E01EA03987135DF6231F
+8C1971A0180D1574479CCFA94B4918C77A0E737CD7D446BCA3D11060D34191E9
+1DB5FC9818C1F913C4BDBFBE1B1EA6114DDCE03B8F8C12899BE8F3F007C985FB
+960287F7094CEC165E95C48A002F4B3E16F9F19280EA17BBE323DC2B0C7F30D3
+7170009D1EE895BD47E63A7AC053407818B28A1849DC60CA313D5D4347E25B39
+39DD51333FA23903F9F4EED2D60B17E7BF66C3F24031F2CD777B1390E66431B5
+7F932ACC4D482C7300B4110D66826ECA1FEDB4424D4CC37057FEBEB1ECC6B1C9
+6F77E84B8644E2F0674B6E94CE96D80293B4786D976E1F769E6086DE7294EDB9
+C23A0466BEB7700247E176A96F11664A1556C0514B36666B7B4A982C192066B8
+81DCAFA0383A027AFDC259BA20AA82A989D2CCA4B7C2162B2F0AAAD5DDB46046
+BA1FB9E23D1C74BEC8BBB0E27A2698AFB1BAD368A644B97EC3581B9F186ACA42
+A9FE7D43F65D3BD5628E314E5ACF89070A87F957D5C540EDEE8B666469D634A8
+B340CB97655064C43C15CD42B60E46ADA75A845173ED3DF1E1FB238391162BC4
+3A252725BA5E2635CBD36E251C410CF5B06ECF7E27A57542648EFCA95A24B96B
+F9C9FF7F663BFE64A189C70C7BD50B2AB40FF22D72595EBA8848AF37C106129E
+C7FBB62BB1583681D2283B0DB5F12A1BC3C520CADAAB1294C9FD1C74CED61761
+A29F99175D1409344F441DDEAF3C56BBDFFED18694B4EB2FCF44DEB5BEA67C44
+4E773808E85407226909515126314BC27955EDE540C67FF5A6083904AF3AB975
+6D04DC2015851C552A04139490BC6BEAF21F1EC65E7BA5BBBDFB0454C3F08EA4
+74447F8D478E3D0760410BCDC47170114524095A32C0E59B68ED41792ECCAB17
+577044471EA3D4824A2439AAA3B9C5AAE4D415C410005B36B328222DE37D0286
+32CCCA9BB96F8F629F5A0DBEBFBD564CE0177A81A9F02BF32C8E2358E4C56A05
+4261DD306247C3111C222498114407F9299F8C28E4D35ED2A5A1133579119BBB
+C2FAB41761E02D116305EF71C5020D7C68CA24407FA0CD448EE9DF5597FC22D2
+B296EA0A1D3E3A59D13D202524E333B4E1BBCB1CB727FCF427D76A91D79B34E7
+15F608F71FF2AC137DDC2C3188CDF8E55646F5058B9DA83B60744BB3E77519A9
+299B5B687FC68B6E7B653C4579C3D9D12DD722A8AC489DDA0A088ADC1B562487
+B968E79851382DFB7E5FF9CB4F032915DB0AC22B48ECAFE58C022BAF0F2FDFE3
+069178057C8BF098A722548759BED0D18AD834CE455FB6A5C68FE5B1B5E4D6A5
+537A9342D958FB754A4B053E1706A84EF748327E6424D52734984300D0E077D8
+54ADDA92A5FEF6FB0B38974866A68831F1446AEAA602A37C88A3BC96E3F3AF1A
+2996138A6B872AC4A450D57E01AB694F622FEEC81E9C41E772D3F6352208D448
+24D321C3AE119E2E150CFEE3CE0A847D6E27980590CBE39B3E1A0378C9EBD7C3
+02C1D2D5ACDA028EE5A540E1B0041D408944505B514DC01C768DB194A386C0D4
+E0E1E2D8A36E3E8868BA6C8C907E0133368AA8022C7333C0DB415474D5966D12
+CB1E33F6EC198DED54601CE3DFA4DC08D378FD12617711756B4389CA644C4BE0
+E9D1792910C69443C01C47BC7533F011BE6DBB4F720739618428E56562E250B0
+6D43C089C6C78B400E379CC12AA15BD0B028947E7CC8AF85B3F7DED6ADCB0158
+AAAE71579F6213450E3AE46986F72489CF5C69E3027D8A294DBAC07207A8382F
+5770F62A400DD0EBF98930427772AD632D0171E5598AA51429DAC052C7E739F8
+804728FB0E36F5487969EC4C3444B9048B9D46DD32391223BA0AB3AE8F2A9A02
+AA6F35429A52A755BBE0148C3448421BAD09896C5BE7DB96149396B0B94B3070
+BE09D44F2C57162F9850C42B9CBA31F76DD4D41ECF927A7C05B999423A7EFC9B
+F6FA0750E94AB2AB65B7B32774E019A25221CC9C6F3984DD3E5C0CF4E2355F1C
+5FAC3D8605529A4D04DB3109B29CECE27829C99182E6959F7620EEFDE491DF3F
+3850A6FAC7D0E64BDC62046A442C57FE2D580E104869B53CB8797FD19B878698
+0B5499518DD25032E7337067DA62CE8B60F2955946C800B7E0B5255E4A591A5A
+2C4CBE12C9B6E82919013C94C99EBA2F2EA24F72F95BF86023E72ABAC8D35E4F
+587DE2CFF61AB6C74E60986F7F6C30546984AD6DBF5D675F7009AF570648000C
+E6C8100E9620910BDD2A09C3E47C895D50288FB2DDF0FFF5AF4B0712755C5520
+F9B2CDA54D09D2C741257FBF2DFAEA3276C54FC0FA912D1E592FFACC99EAA388
+AEB353502840946CF597904A4B31CA18FB2DC3260C9E440AB2C24DB3049D5040
+0740A3307A2D1C003E8470DA2FAF61BEF25B377C6E95C9B7D8C58362C3E32B6F
+5DF8FA84AF49063A7527DC7837F6730B175F4F1B062F78E1EFF326612CD82496
+19A9C21916486BEAB4A1A121EDA377735B50D31BC144C707D7151141A94EAB7C
+0229A951A9E24B4BF874D4424B9FB8DD913284F2F6961716586969C65D327F76
+A7DE6FC4A16BD7A38A7EBA46B233E816E9B9913849EB231F14E0CFB1E2E8F8A4
+D18887305EE6D381F7F9EC772B333772A056CD6F03E03AB9AC2808607E25BB6A
+2AEDB0FF0D61A6C4EC6E11C95135E947582B3AC4D45BBC9D5AE91B31AC10990B
+FB2CF86D1DA5C265967CF5BEF96BBA0EF536048D0EC6438BE2001B89EF47BBA5
+BC719CF14DA1B5B46BEC794BA6877851B8EFD743EA58737E3A79A220BED80411
+BC0D277D9D6B90389166E8AF38D1BD6FCAE22185648B9A507C351239A193F06C
+EB1BCFB97FDF113C00879EA12BDB8C5C4F28EB935CD09382FF8888EC03331E27
+9EB86CA0DE7C2953CDE0AEF67848B12CC9D8E5235341E5967FFA307473A536C4
+285F02007244EC6A2D7370413668A275AF4AE999355B4BBD6601428DB2FBD751
+1D60E35A9CCC764B455AD7C993768F297285B1B7C85DFA298C3C5627FC0D193B
+A71BB4D663857521894B294D8AAC9FB9EA9BE460A9CECDF998D2A960A95C8938
+1D40E635A9B8DFBAA50D10B9A5F90B10AC0EC09100A4A02373BDB448E68A1584
+CE9EEB39D0890E79372BDD73D454FEB2FFBCA80C456E67CDC254D1B48AA61397
+4EF8C41AA9E4ED13451F91E7C607D0724E890B32D0C17E727DEB502741FEEA8A
+A43B43AB9B74F7057CB2516B0ED72211BFA654365EA2BAC33A0A69F60DEE4E6E
+552B2FB05E51F6183B59389AB3845E2FC8D881CD30A16DD1988DA2497CF0A49E
+86C053EBABB80E3FD81C33E1C6E4FBD3D05D030B8A26FF2E979F6FAE58A57822
+8C2613F6D6A137CE1EFC60C6F9AECED6E879051A4220636DF5981EA5B851F80F
+614C95CC1896C7D0E26CC3DCD9F09484C0C3D99CDA5C479F7B5EE59829B2A7D6
+BBF3D06FAEBEE9C9B18BB8F8B6C6A8C63B3F84912832BFBD1910025901DE05F4
+47F3B9A8749465BD4EBEE22093DFED40A5300938E2260887C0AC656CF06008F8
+65C4CF3033969E12C0D39885C890920AB7A3EA9D5C13EAC70C25DF2E1FC7CC82
+388A297A12627A18E942BB27B02F7250EF2200B0711BD799818AFBFCCD4D9704
+89950CB5AD17506E2479B0DAFE312E55B5378F0EF2BA1DF2E0C43AF9EE253C56
+1B959BB8FEF3CF84823E0F19B4E78B45637994652CB9C4EACCA0FB2486AEDB74
+5B1B4C7A055291602BD9F70A19F724E3B3371FAE20AE10CB1D82CF2DF943A193
+07B9B57740D9B40CDC99CE34B490FF0A6CF8BD30926A2195A2E00C6CEFFEE40F
+43D31BFB082FEEEC16E06AE55AD8EB52D1AA56721DC7C60E1818F1C01F78C291
+E187BE3FA62C28118C21451841827AA035C608DF6134AED48A2CB6025E8F3670
+E555FB497FBE5C1A86171E7E9A3B9725319A91C12A397077D791F54ACE2C6E79
+749EEC025ECE1A657257A7314354CBBE04E299B12191F8DF4F4156EF29FC7576
+6CAFB8291486A46C04D3B2AE9CFA67CE3D042B9BBDEE2B694D8EF699F153DCA1
+944FA550A035C6CCEEEAF8EF318F7EB2AF22CC92F7993B414BE7D549B629371F
+6AB0F8E943E162914FC7BA3731B16718B0867DA82C6163BE127875F041C9A4EF
+2129764AA935AD53B8F8627565440EB7CB00F641CD76E9126DCE11AA9E01F999
+638A71BA58E252AFC44A88E01E39D4D401420D53FBCDC69F8452380203DE9E81
+0FE166D0BA3393429F957DB9BF35C97124D7E4C92C0D1E7AB18327C8B976A0EA
+2008625133D924CBA15307F8242405B707B9CB5FED5327564E97189B933D4442
+942F5351629E77A370054BFEB9321E797D00BBFBBEEAEF29E6DDAE0B447DE62B
+3D28503FC288611492CF20D1A2DE1CBFD5A53DABB6A7595B6A56C5923BDAB62D
+EE2D35B0A1DFAAF602051610A27A8677370B13D6EA4BB755FB26F981DAD8E49D
+743A5A4CE7C7300EFDE3B23F1A1840B259B811915D3F88F71C6A23D65E346222
+0D3CAA8DD97826C56FB66905E1DECA15CFF547C893C68CFCD90518CA299750FD
+66B95C5D11412CC91F1896C667C48B34708FB7E4409021AA2751BD85BDD57630
+670F5B72134B749933B0A748A0C3FDD58C159923744B4A1BCF835A187E9EF239
+938DF37904A3F55A18AEE725182C294C2C3DB4C94BCE4E3D1E295106A22648AE
+56EDA4DB08E3BE0C5319FB5F824B9546589F079E78BDE9BF43A4C9AA302A2BB9
+7D7B67FB385C2C5C3C703AC45240698B8D35C9E4131B9701BDAFE0BBDDEB18BA
+7F84348075B03B76C98CF48DD420A7B21C73EBAB5AC826D2AC10ACB69345B75B
+8ED9ECB70B76F90A95876A6B0EF50F015056E2BB203DB6239D7ED436DB69BFF2
+0E1BB9492E9B6A27530A9263B52A5ABECD963B400D81A2E9134E2CD095C18EF7
+A193FB72C33515460F95C495203D6DE8402E9BD7A96EB6BB36EE946D018BF5CF
+9CCEC15B72CAD9B6099875EB23D4B554C781A8B5050EF5BBE7391371BD34AE1F
+2863C79F901A0B7A8AD81A1E5D58AD075E4303D8470FFC72BA88618D7FF7E138
+199232D1BCFD1F9D0F
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -5035,7 +4508,6 @@
 dup 50 /two put
 dup 51 /three put
 dup 52 /four put
-dup 53 /five put
 readonly def
 /FontBBox{-27 -250 1122 750}readonly def
 currentdict end
@@ -5064,49 +4536,43 @@
 0BDDAC3B634AD4BA6A59720EA4749236CF0F79ABA4716C340F98517F6F06D9AB
 7ED8F46FC1868B5F3D3678DF71AA772CF1F7DD222C6BF19D8EF0CFB7A76FC6D1
 0AD323C176134907AB375F20CFCD667AB094E2C7CB2179C4283329C9E435E7A4
-1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A463E26637C66
-FAD3F83D6DF42D2272506260CB761DD59CB9AD24DE4A642D19C3AF997AA659B6
-8099E7D59BB44B111E1A932A8B579FD310191A56A0DB2CD18017C1366442F8DC
-EBA43FC3BD0DB552CA5251FCFE024E9A70E10BAFEEBFE0D2CF386448A9A80B11
-3F764B6481F3B4E93CAB7CFF2777A02A6FDF8B6055AAFF40437539D3A39A6829
-6981AC9443BF2E0F6FAD7C752E2176E6FC45B0E8DC832592C1945DFB758499D6
-229DCB9ACB6E60335DA76D7E1282CCA3885C0594820652D79BA578CA33A1D828
-4DFAB3F56394921DFD477C10748BB9E4DCF3279CC13D6ABA567E56B2EA89D929
-CB1CA27183C3CD093CF0161375F11A9F70EA649406A7FFC9BFA35FB89C203DB3
-7F3367F31BBEE814D47359332B3490ED4D04AA2E84D7BF1C93DA372B7A32C23A
-4BD98E14B474FB27AA66B42E0DA1ED9681B8C4A6B726A3DE686C99629981D466
-42E000942D3597C56AA438EA6F046E713A3EC3D181D156A57CD9C2A055891F1A
-C22DD4BD5D7921208D336CE5662646F4F8A6768E2ECA08E37E02D09BDB2F2077
-D1CB8839C299EEE9C953B7AEC052758C45B4CFA1A74755EA7FC80249EEACD4DC
-86B75B24ED43BF98618E370F26ACC6ADAA2D4F7F427517835DAEF5EE2ABD5A84
-57D0092DFDA0AFFEF903CDB34E7DB858479AA1FEBDE7F369461B6A24A9FA7142
-4030473DF089D64D93D4B8B2DFABD5FEEBB8875252F6E05D42D51179F9BF1408
-AE56525F82048991E87CE8CCF40EE635A4BA439EC68A3ED3529F746838CACCBF
-0B62334A2901889A7D741604E2B25325EA80B6AE34B98FC906ACCDF3D96F3060
-4B0DF7C5A23A46D05F8437C42B9F348B2EFC8C12B19711886EE6E52A7F6B4E98
-D55EAECAEF4931034BBD81A6E1BB8DD1AA2A9CBF1CBDB6241D3DBC2A81D84250
-34C268EC6F85852AAD8F8DF4EA70D04DAEB4972A242A71DFD71602744B0FB4A8
-9FDD759AECF668607F43F0EC0A2FBD07A0233177E4527FCD82FE807FA584D63A
-5971498C8247A0E02CA84D13D9E289BCFBDD929DC6722913616A5B0F9A3D0181
-F0C03BDB0B59EEF4E6D89489EA5B98E30C73F7183A279F743A02945D5739E85E
-78622F098E0A7D70454612C104A4294D9612D2E5DE37E8850774A2CDD9D91935
-804D771C7A75F86A3D691AF4891BD797445CE29E2CF45B12D60A7F9D51D6FFE2
-538C5F6A2A96F3B468F72A3914FE3E7A0F638C86D29785C75F4051FB8BF33019
-F97D86536A3F5DA81986BEA8CB6EA411C41BEB858CA709D000A3501A64C4EA55
-4FE551B75BA090065656B83D36AB2BBBF1E3631C9E3D86A0BD61184F50BB79B8
-DB217409D7F3D811BB52E6C59BAD723CCDDBB2C9A66834C225F1D5BF8D41DCB1
-9396418AEFC8737F1877DCF148A0217D17D3BA40893DB2E206326227973BB98A
-78B2F8EDB786049697FFE9616C8C6E76A939201B36DE3B6C6B575ACB8E684882
-D49F6EDC7651BD9CE3DC2A217770C45FD1E14699B0DFE4BACA749C4436C57FBE
-461C9872CD2F5CECE6991B68D2A27510701CE02C836AD642732F12DE734D8D01
-78A5621D85BE71ED5BF0538B96D648363C4400D3A85C9B2582EFD9C062EF299C
-DCC9EFEEE6D8A9940F15EBDA58393480154E8A4884DFB2BC1765F96BBC310159
-5ED53A2C2DFE653A292FD8F220DC933524CDCA81A736162BC9F8E858749A3BB4
-C6B309E72AAA1354C1B8176360DB77B10268FA583F47CDEFA4924546A8EE0B3A
-B9A26C480DCD7D8BDBB9AE955F211A5BEEBDB7CBAD33416D7B567E9AC6482EED
-D199A22CE0C4E16BE1F20CCC0B00362248F5740E9819D371BABABDCD011CFFEB
-E40E92EFDB89B3F3DB8BAAE326811F5928E60984DAD99B593BCAEF5F8FB9B841
-18229891C8F1C6B7565195ABB07B29B0635D3CAA602A3FC9C9C500E9
+1E042AD0BAA059B3F862236180B34D3FCED833472577BACD472A47CD4FFE5D78
+D8A2086B7832F31FAFBCE07449CF5470A3D7FA5BA40210C80E40D52A8168B6C4
+B8F79EF950E024857DDF476E6CF741FB8B7026A16BBCBFA4017BD626E957285F
+1AC975D116F281156EE2DB2FF487BE4F137D85A14C1E9AE33B3669C9ED414465
+C0985DE60A4AB1318E34630774EB043DC3DEC20CCE67A7CE92E812F6A91CE146
+5869866E3B9E54B9E0D48650F5B04CAD196E983EB006A971138FC343D39CEC85
+B9433A3ABFD1138D445B74F14ED5A740D014D9330DC6D871C42CA4538D662890
+7BE6E2BAE24A8BD7FEE1100C9F100A626868C6E158FD1BC21480C834D0C16F78
+E4F51BC9200B1AB357920BF9B1CCA4E3D949B5E07B32CBCC7724307B804549E3
+C7DABBBD57F9CC57F2CE4CF5342B2C20CE2D6690DCD1DDA7D44E4E24754B3E6A
+0665C51E66FCC182A3FA98506AE50AE475B62077877E3CEE245D3030D23AB8FF
+77EAE4E9C4CB6B7901DEF2C81F6CA3564D87AEE1C79DDE509D4E921F0C0725FF
+BDBF29CF744935250FE85C81DD5AB96E611E45D34C3F40B1DBCD291274FB5A41
+8579462705B32DDC1344C0E2B43BC93346216B22FBDDC801EA422E0C3BE5EE37
+AB8120B80D9102F904A8F1F176E51BA37DCB9CDA4F84001C8937CAE87FB130CB
+440B9B5FBCD405783E5A43C6785B0D0734B591BA2A88B48717791D8403385784
+3509B2EE4E8C79D7486DF1742ACD1D485EACE5AA51B7FE3AD088B217F82D8BCD
+1C9512845ADB6DA4CC9021E3BA8480972C8212FA35C6F3DE19144DE6C7AEEC3A
+8F2DE2D94D1E01E7FF5D04AE2906F27AFCB862DD5B84BEE1C199C4BCA3E57E25
+D5039E7A0FCA3F6D90171FA9A18DA65ACD8DEAC676D9AEBE201F0F88E462B0E2
+D0B11CBA0A57077D2ADF11ACA05E5A3E62FEF83A14557DC6420330533DA1888C
+3A31087D15E3E6758C86D2A593A73DB3F2A16D1C29DAA1E3D90ED592496C3A25
+D2FF2A373E29E20B6B0A9E0A662CCD361131693C17E4D9984A1E65C8638B08A5
+C12CE4CA01135C566F1D9F38E9E579A150D2AA948970C8FAB48A25CDB82B9F8B
+DEC063E3F423A1EC4F486373A6C759EE5E2B7E5A31E2EEB7B31008C3686B2E5B
+69D6D423EA191BAE706B344415690BBFF1049DD49612967B198719E4392565E8
+9415B54C0E3EADC14FDD83D3BF552DDBDE53FDDF6D9A4530D15C4555629FC863
+D87DA0B0429477C62AA56D01913F5C12F7A8F2DD813AF5F268C5C48A26FAD26C
+1CC5047E93762373B73D4CD33918114A5EDBBBB6B07F548D8ED741141202A7A3
+A1603A820C2E876882F624416B4024D7F455AFBF920BF7505A5D067382CC462C
+73B60CE47BB5195B95F1481F8FFC4EFA50EF3E6B59437D89E4924B21FB217A06
+BA982DED7865D26ACE859648BB38ED7CB37780C1C3E9911103A5646C114C5CDA
+6749E663A4BA39C195B83331A0254F1D4D782CCFD44C48A89C37323558634F54
+6FDBA3F8172331599B682B6DB2C1E5C04F0003F2A0AE3EC73EE32519EBA6EB3D
+C35B87DA853FA0CD74B34B9C6446128BAB825F5EF440917FC9246A18172209FB
+CE32F8492C2DAA56A80DDA566ADB5D5B1925001BAD90E552FEA358FD673C81BA
+E7F377D703A7B798
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -5163,7 +4629,6 @@
 dup 58 /colon put
 dup 59 /semicolon put
 dup 61 /equal put
-dup 63 /question put
 dup 65 /A put
 dup 66 /B put
 dup 67 /C put
@@ -5180,7 +4645,6 @@
 dup 78 /N put
 dup 79 /O put
 dup 80 /P put
-dup 81 /Q put
 dup 82 /R put
 dup 83 /S put
 dup 84 /T put
@@ -5265,445 +4729,432 @@
 B0E7A0686602568BC87422F32486CB50776C7EAAE7F1BF78B228CA3254510653
 3D6368A4985C5FF5A48AEF16E1AB71D7CE2C6649F2CF4B2879D4FA042239B504
 F988D2FBE87C3BC784E55B8EE36F1BB5EF14FD5836CA448E139EF8FE221E827D
-0608A6B90E08CBF44A30669AF4E20CD5C0C8051E5F86062204AF362DA690B74C
-B952C9F4799FB2535E47AC019175950A1F3A0D0937016148222B545B1E00A91B
-39D2121462F51F736802C523BCFBA894EC11C3353F9BCDF0892C00EB583A4D62
-247118996064991B816F9F490FA73861FA614FEC7FC23A5D45310527B6559781
-F1C805F0EC931D0C60E70FD5AC55F22E6379D369303F63A0E7069237118DA0A6
-5BB55FC6EA1797BC51C1D053401ACD4E9B5E724F4AEB149C38DB0E2BFEE811A9
-A94A7405422CDC911CDD97EC4976E27F766A9E3F84387C04C6367509157E4D91
-09A1F6DDB59AB9096FC43A6F9773ED9CE3DA6B56D10AEF99FD277F8666E72028
-807AEC6C26E5A142496CD41A80EC051E875DF9F547BEF060B969B197AF97608B
-F7A3740B3153621A680DAEAB0454706C65581255CA9B40078FA6D352737F0165
-D834359ABCFDF5C212F8AE9FD50BEE9683E7D5969D183C058E8BDA78F61B61AC
-98746B3A1750093A40C17EBD4AEF36BB2DFA1C9AC2A12834DE4623CCC76BF5A7
-92B2B2E368D1DF3471D83495B19154836569D2A30F9CB05C0EC499EA5D3184CD
-BAE8D2A2CF80C6359275B3894B4DAD7F92501BA9A6BD215256CF9F35C2BDD40A
-D1D949000633FF0B5FC7674BBED71294AD28FF25710E968E85C3FE71046BF0C1
-71EF48F8024C28959FBE6E896BD1AFE579764616672C724959FD66C8398ABB5D
-6C02C5619866453708E3FDCAC2754E9C333C1123A5F746DC5B2CA9D430263645
-A88C743EBEF8C82DA0236FB73D3DCDFF874A1A5928406838A81E40F34816EBEA
-0D7A89406A6F492E5E5E6C8C4D85A2B9A83B6A4304B05AB541041AE014C845B4
-283CE3F75DA22CB7CD78C67A1F067C79B209BDBA6705D80FBF08CD0FEB9D3293
-D9955BF6730BD59495A1F81B708292B509537089D8AC34A06DAE5E8BBB9B0A0D
-F09BA6723DEA964F06C0E1A6541656470E251F5AFC6677043DE7C6D85B60D3EB
-B8A4415DBFDE3F29D5FAA0B5CE4BE9559595265FA8BC24A172FBAF9B1AD0A4E1
-1CADABC2B71A43098146DBFDF7E126069259EB490CAAB07D5C9CE0AA888FF3F8
-6E7AE6C7E5A8A38CE61D5407B7D163846F8CAFEBF385257AEC1848DBBA60B7A6
-ED708C86C7E773802F491C636CEC4A15591428383D56204E70E383AE361F3E47
-4C7B9C5EDCC13E731F6B67BD79A09B7C29769D4D9DD71A21AF20D347193CE5F1
-BE70B010A0E02A49118A0E5B004D6C193C6BD5A392F360401AC1742546A60CF0
-3CCD14071C31DF91E84427DA969E42D357A3EBF440A3C5114B443162D8D4A968
-045BFD9762858BB82E98AA5012EF61EFB32A6EC4F8D3D0FF770F4EBD8CB47101
-BDAC234FE799494AAFC3322769332895AC076528768ECF4C69318F4C4287D30B
-09FD4DDE2436C0AABBAA14C9E4F4E1103FB17FCDE3F4BA395FE9950E700C6733
-C6E7C1CE9BE99D275DEEF49BFAB8EA926FB9EBBB5917B66E73161BBFC50CB621
-A33B4734FDA1EFBC5F6C0032F63C3C32631FADFCB9BFD2F7ACE080C16D1DF08E
-8FD4B291900016094586EAD0EBB75E3CBB0152DE572521EC96669A3983B13309
-5C3E8907744F25ED623F08849675A75D8BDACE3F86A988CDA9C1434E50D4E49D
-FDB354D7F43A9EA6AF6E45903ABCCFF2FB6A216E100755067FDBA531BD3A3A07
-CBA99ACC978A28D49C8D9F293DCA7BF4A63F48E775AC7320346C07BAC826DFE3
-DB999101CBEE0F6E729B40E6E2F6170D02D325B8545F39EE052A9E883DD40B90
-CBD1447EC852C226A5B3820A6C7329BEAB0831520BC96A966636AFA75914EC4D
-94AA9D027F5E9782EEFA1FC08BA671FB7CF3DFDE40A56275AA008FE44185FE3A
-20F8F75D5EC2ED8DAEC21737F08088E9A46E607E81D2123596E5917395B7961E
-B9BB98DCDAE063460FF2AA64845B4D2385D128EA79AF54DAAAAFDEF37E7171B5
-7F023CFC72D929BA153D24EFF7ACB9A01CF3C21495BC225698658EA7AE007343
-18D6CE00560DBFD216DBBE01EC999840437AE367E44EAC72AAB971D2C189CB6F
-2465619D1F26D7E1B790EE761D79FBF12504137134AFB745EFB606B843CE0CE7
-B50714E2B5A4C514260115FCF078002A777DD814E9B1670A4E00AA89AD5DB378
-1F3382DC2AFFB13A1EB945304863D34CBED5279EA6A062127A77BC4FB4C58CF9
-6C42EF3689986C7ECF800BA9A064C4BF26E57297FA0480CC593D0473C499B9B5
-07308F8C2E11FA0BA0FDE55D2277814FB0DC8FBE2B77E5D56E6249A95C58F024
-71A2186CAF2BE7AF5F742223BA650408BBEEEDBD93EAADC0B9AB63F6C63E0115
-E007265B85C144F97C00170DAC73D11B14DD6DCC8955EAF77FC5036ADC8D2A43
-7FED7BC3E9AC937E2BE081CF724B83142C0300C8467BB057AD1B652BA1A086D2
-0A6C40538AE24837924138CC67631F0FB1B8ED1D22765FCDCA819A23128D9AD7
-15BADADA5B2AAAC4CE7A3EA3A9C9C398365875B0424C6253CEEC826C50A1812C
-F8B8B2B11537F7CE554FADD8648885E8CD5C3BF8F9FA9D6D69BF3043F02D68D7
-2EE216F948A2B0EDB37001498A346B803D8D0B013830D219EEC534A1D779C7C2
-591470B7A6FDC337442538EB3422956EEF135315A3504B7D08162ED89791CE49
-27699C67C9D1F57FC66E110B02024410F0A5CB53A56622B63310C7D971ED2759
-16438B5EE81BBFE1B9A16C7356357B6E7E123546D0A46BE587032CFA86F541EE
-0CF088C6D4912647832EB31C85FE05F89DA37D7D0931EB19E382D08E26CAD346
-81A67034769F21F21273C52E0009962534F0A1994C984101136F731BDE489961
-A0992B7359BDA9C6C3C02FDD072F56F64DE2E1E973B48540BC4BC14FB0D27FE3
-516DD831A7FBAC02506154B7324F5EBD97EFFA8F58AAB00DEAFD2F0C21FE022F
-E3D62EBCD654EFC54C233EDDD39FEAD2EDE01A975F10A62B05578B0E1D553B60
-4A62DDDE020C53A759B2DFCE2C73FB6BA73F1256C8380C62803CEE16742DD7D0
-955A325812E7B2AE721F28D4AE711234867ACE54162DBA80E88C6113D4C6E7DD
-D7BED4A2EA232BB545691A0189CE1DE85F6944A37CF2B66683CFA322DA002553
-16921443A0A5E4F4F176F36D26BE08EC91A017ADE6C54CEB42F8F002AD97CCDC
-72C3A27B9B6E8D3E57B2C253CD9D26688C2DADE289DACB4323DE4C15A189C43E
-A6CB97703CF7ADE63405D877B2A8F91B87AD8D480BFC3A24EB8A908940A99DE3
-0269905EA8C922EE243B7E01A39CD0D151F16906626ADD9724BB77CC859EEF27
-09CC58E9E7E83A720C61E71A682C530A3CBCF5C99FB690B8319B5FEB9E58502B
-AE17D595E8EB2958894C46FB151D12E785631C03647B6406CB0CCE48FA78CEA0
-1E4511900523B88BA7F338A052AA6980BAF111ED55C2872D1B87E92497C07D64
-82D7663B93188AEE5D587878401119922B947E19A857F4E2132D90A1ACE58EA3
-E35CDD12BABC3F6BBB50D4324A299773CCC1A90ADAD8FE50539A141B3E12BAED
-909CDC998E815F6F2E837BB975DFF9389AE488D5B5535925DE707E9CF9881D80
-3A3F8AC81D97A685F3CA52738A87A921EEE0007E71473DEA037C3B4E7CF5F26D
-4E418687B7AAEFE2D5327C3F8ADE51D394CFA283083BC0FBAF122AA1678684B9
-21E8D998F70873F8170307908B4DF06D3D1D692411F8DD9BD6ABE89EFB7CDE42
-2A6633432636E65AC72D1B8ABF55CF9250A14120183080D2E95AFE5BB39AB713
-D31D251AF007CD8BC63E87BAB56C8588DAEE97309DEC367C25C60E7A06D5451B
-216809F9D23BB48598F4A677AA281B32F73D0842E7C16A35061C93B0421C5AA9
-0D24C2477B230804475BFA52F4426DA6F4DF979754A0F4DFA0792F76A710AA05
-3A14DB027A641CC11F24F821ABE5709FD8C860FE5D3C3164D6C906EB2848F2DB
-ECD5CE8CEBC52A427F432C618563FEC50FC35C51CF0C4C31DB05CBB8CFF2EBB9
-51DEAFA4E8D0F8100A91E8DD6FDC74D6A09092E4C5BE635D685C7D0B5D1B6A35
-AA1894CD13F1FCC2838BCE1C957143A340B96DC3B08484920958D25114C7DF8F
-DFE2D1A6E58DBE6668490E0A3F75A016EB40AAC8DC623EB008D9677FE604587F
-2CE0B16B06DF82B6BA800C1DB2CAF259A1007401B2CACFAC1F55053630152D0B
-9765A4D34BBCA0E531CA90A03EAAB5F5857BC3914D24E98076B2BD7701678EE1
-5B97A371FF084FDF64BDA12E708C4BABF6ADC776CC057121C84395504806962E
-02E31C1EB36F914B6463A390BEF4C35FE25916A1C51337325A97C450D3134C43
-94B3B14DDC11C933A813182206243D0EC32703DB33E76B181F12015BD987BD6D
-550D7779B4443F226522A3CD00229DE2E74A2C9B000C79770CB49C82266B9A40
-04218F81207FB109F16CDA49BF83F9EC21378A783F7F16B61D62F6D94F69B76B
-2239EA2F0E7DE13FA0411FBA5932FCD80E8F241AE46198A2C7B442AFF8EBBE19
-71264B66744E93ACB7DFAC8139372E818CFAB79297E316800FC5E8744757C5E5
-D23FB58CFF8370128CAF7EFA09C8906AC06D259193AF137E301CFD08FBC48F07
-BBD510269C70C03B9F511C755654FB3B23D4EA9DB3082DAF53613CCC08A63C91
-2C2AE73AD0F48BF44D9221281F3166919AB2EB1B251CF5C8BCC50FA9E9CF5D95
-5C039C42DDF3D00D829024B27F6C7F4EF80C55CE7FF888675FD69316AAD371E8
-8AFA37D087F5F3D7E38E74DE37BA359F49365267910272AE65CDEFD5624E3695
-03A5120E55B4F60DE25883CDF9C9F8AE6C5BE923B41BFF29729442A711B9A92C
-34D3BEECA65C06C31A45164A40572C06BC82FBCBE6C75461DF336207C25D2B96
-29682D5F782509220891F98B04A2489CBC9704B597D29109F099298E8F067423
-4C7AE016FAF83DA75D50E0D93CCC7B4ED67E80BE5C2F8FD40E869C61D32A5BDD
-1C5519DFEB07546B8C928078491D01A4CB8DA28FA516A76668F2A755E761C865
-FE949A5F1107D7A99DBB581AAE3D6332ACCC7930BDA7EB264FC152691D1ABAC5
-1E47BC5E5DD8E6FF1F80397683DF63C3655C064E243B9376E6882C9F4AD0E4B7
-473E3FD32D908C3B7B31E0FE6452A102F8BB24DAE554BD01D377862143E97BE8
-F1EE9D4747FC7076B52F633A33B9271D457B0DBC787867D4DF9CA587FBFF5F29
-2C0FA99CF6497062FBEB531CC148667DDA814A1A2569BCCA0A3A429E53463D18
-41268AEEEF94B3A6806747664F2B17AE3C12EBA5D53CFA8D22D7DB3A16DAC814
-C3EA18E2BF3A712F36815E9DBF973C7EFF59911B3C218BB9ACB5B1010CC9801A
-DBB7BE1CB60B10CC12B57DFA4E7F90033821383CA184F579B3176705D310F7A4
-E94A519C59237ABC27E6426748B0D089A2D389B58AFA872B2B85C5E980DF5E4D
-0944ABE5A954C928C82266E2037FC98137B068E34F4C59FB334019F8EB7535BC
-8BA352C2F77C1D90413B205E112AD3E4B983E6E0A54134F96ED09F72C5E6C43E
-CF951467988E87E795F1BD54382D45F1A903D76E7BAE608C99560C6E24387628
-0EE9F71C2619724759EFFF8A04151DF26176E14CC8A2F4062923F66B852673D1
-2FD86F20B1811E40125023C1B2389F63F87F1DAD3D578A2C1CFFA6E8DE85D8ED
-4B25FC597068648A2DAB6DA122B93DC5F3C8C74545DB7B0A728D2F359ECB05B2
-BD9C8A0F473C00BE655F9F114D662A6483484D1B08BC781E1FB4BFB489B7FFC5
-A16E3C2A5EF93AD571B60448FFA9A390A04D5246EF386AB02658A3229B0F4B29
-2065B73758EDEFA94108AAE9F4E9E8E1432340AF41BD7BBF18300D37BD442A15
-6B07B92AE7CE617F89CCFB7ABC99556FD467D771F218A30D6329921331608C7D
-DC34D348B612685113F8D1C9D8156986B7DD4DD252495E1CAF091DC43033E763
-847299EF4412169982CBC70A2B2BCCDF9A3B0468FD36B0315D0DAD08CC9CA302
-7A33F01D9558FD2A0D0D067F78841A3CAB2D3122E54DD5277BED97BE71411342
-1FADEE5374C1C4137491FFB729CD81C1C6C783803427BFF3B6C5B2B16FB92EF8
-70F6355305E89FDAE6C6C5A33B29C142A4250D19701E59B4FDFCD1F618D3C34E
-EE661E8658574020290E2C6D1C6551F29A1228D6CE402B618BD9CBFECBCB9AC3
-EB24B26DEC2F6B74778379F72F3EE3EA4E2B5EF258BF38FECDA5E30C2CF46C23
-FD05C8FC04D3F7C1CD776604316CD9FC65CAF1219E1E8BDB97C8C6D6303252D3
-57C549686B9FAE947C01003FEA242DA11CD50C18ADF9C41048C7A5B74C755AEF
-9D1624AE9835ED60838C7BCA29246FA5A9B13E30886022280B1223EA24F8251C
-EB134BCD8CDCB18CFC461672907EFF2C6A7D516CDEE63EAFCDDDDE3E85F9C0D8
-795A69ABAAABA2B18DA6366AAB4BD17E263D61D454C1A0FC3860BF29A7ED3214
-840CF222E1A880867D597354C54E542119405C6C2EEB54E6A4D6D04729E80042
-AA9B0B8B1D9DAD231F2B55B09BF7193207E6FF5AC533691BD919E423176D7A26
-30F80324D29DCDA2184238107504E07EBCEF343BA5C139CF85E5536B7AF8B7F4
-4260B36E99E81BE4709A5EE85B9807FA4F46FB72868E9AC422A48F3EAC86360B
-423DB302B84E5CE857FE0FEDBC3FB065DB523FAC7E3F6EF2CE959B273FBAE6EB
-4BF558583BA69E1008ADF8B38D8A84347285599CCF6B3E84AADB8AAC3ACA920B
-13D7D59565D908E98DFC94F5555031A78F252A5938F012BECD507C830B440750
-24F1A7D07856BCC2E6F0B590ADF962F11B2310B298203B1777102946E70F2575
-FE1A075A27A318B738015DD0C60F3B67CAB9B1D6190D065012134861160A4861
-5A806696D952CFD418719B3C18BF15CF6BC55FC15372B335137ADD437ABEA7B0
-53D1CF760CC084B531EF350A5AADC3E21981B9411941E326874462C77A90F22B
-AB60322289D5E05AFFBD0A1E843A50468DCC9F6A616FF066CC0D77637CD5AFB7
-0D17B55B21C50BC89529749B66AC2D1AD3710B4FDAD98A48C7E71B2418C25478
-365488EEB01886830B5119E30247462C9C36F225FD569F4B2ABEFA9687E61F23
-EC48EFC1501C2580F14B0F97C2FCFED1E9460343744DE472C9B8B8716BC60152
-15F777D23E3C67CA2D726103FD4324FA4E307A94244DDC3AC4FFE5D977A6FFB8
-E5A5C8047A9211B5B26EAF84D23AEEB2E6B08F88C9FBD82CBADFB64825227FDE
-C9DD19B06F844525AD631AF7D464CF1A314769FB30C4A8F2E564F32F656A113B
-8C610BD45209AB3F8C336BEA9CA6B2A6DA6096CB37CD20D713F9548E94284EF6
-404D5AB2E86E23DA2009D3E0A1AC9A3A325C95CA2982D070D9C528DC088DD605
-237E6636D8F63E40D0B183A90274398F517AED7FBEAFF1F06A1CA60AA23C71E7
-59702319F84DB3532A8C268A743434B66171DE5D000A96BD14831D44F9E027DA
-463F5951E1641BDF7B9F25B3A25C3B46327227FB61B1AF4D3BD6C1D68901B6EF
-23344A04BCAECCC56801EE609657D4EC9B3AA49A974F6A6C2D5ECF790CE6DD19
-D2F882BE5245167369E4570733ABA9D79D74F11A8283C320399B7D4FBF7575C5
-153307158C9C492B6F2A131C268C7A182D5230361174ECF404CD8A012CD731E6
-E770F4E5EFD25E7FB70B7A6078FD7B8471490AF9D0F733096DAA30B01A0EB250
-A9AF91CD16CC67235AE9DCDB7249B8C6FE3D81C1B9706F8D2674A6AFD13E5480
-9E6D7E87E0FC70A113ACDB7F765DADA0060821690456E4F0988AA0C65D78783D
-E3DF13FAAB8598902A2363BF0BB07A571826754738137F3AA89F08C2CB61B4CC
-8D0D93FB040FD17DB5509250259C62C70EB3EB3062591D5DB888482677ACED2B
-C1F4873A380CBD76885AA4732D5961178456ACE597058C034652951D1C5FAE6F
-4573082CB8B2C26D08205838ADC1391B5B66BCF142489825B6F76636B729E9FC
-17BE4C672AA919444CDEBF939E6C4E28F6ECC22C53C3A03A3C29966675311EFF
-10A9804B7BAFE3395ACA791CA6BEE8B3EB3AC50C988014C1443B6D9399597259
-D4D887B9BB7B74EAB86AC984F71D6AC804DA16C3220A1C8E3DAF65CC9458FEB4
-4D816C244A964DC1BC17562B85E4638F7EAAC3220DB56B04B33EFDE1E95ED640
-9C7DFEF6D8D9DF10A49161AD0E28CA9A789F499F789DBC6383A8E0E708AD49DF
-870F9561158DC629C27F4712B1CBD50C9E9BEFA4DEC0C4A524CFD675C6A79966
-47AA075831D51207D440186B5B26C6DFD102BF1FE943B63A936635F5855913F6
-C2F8F7C95BA09BE94C35B9639EDF7D470F259F1C478C4013383A012E8A5CDC98
-662B88B69C105C99C27369A02CBCC2EB0FA787F1119F3CF0C622D22ED801CBA7
-839BC1941E7B4806DC9812D66DA745EFC609F96820D29E0A3FBF4FE863461527
-A5EA491B95B469959F1702A227B5B67973E1F77058FBB40CEA89C9347F4D8A50
-BBB9B1BE716B880B1EF4B2134AA07A352C7DB177C5E8B09AC26E70A947A105A0
-31EDFB08C21DFB1AF969047B3F890EF22DF9749328D98E9A24CB717518F5E955
-7D3771005C602BBB9440C4F8C88F7AF1F8DC5F9D46E95407791ABFA4C9899D80
-519B8317709A4BE26E566837FFEF6867644049545F85556CBF47F1A9F1DE392D
-2796BE25C7E87036A719ACB6DFA1448A8E54DAE20C2B940CF598DF723BEB9899
-493DBCBE9523C0ECD4FDC5BA29E8DBE58CC930F7C42A67536573028777A716DE
-4A48F7183C03CC8A63D0C53856EEF5801B67CDB0FC80223D328D30E153C5F623
-71A8CFBCB12B69D5B568ED82A8EFF7591A0C9EE0CD4DF44F3B4F3B3F9D590BF9
-76895A0725E330A4070EADDFCD30DEF05A8AD92D4D3A2829E2B82616745BED98
-783CA03A0B056B86798EF20CA09FDCA263D48534E092D5237DCF9373F8D54D82
-82AD8C598233222BDC06FBAB7A27BAAADA72A1AB5F8CAE2C148B132D0BEF5352
-241818857BA7C4EE599C9BAC5B645C8164D9D234B343975C36209D8C4E07475B
-5225142147B5F869481A7BA9ED0162A27A11C12C581DCB7A4344EA37941214CD
-537F5DAB0F52F7745D1B8CB7BCA462DF516E3F1FC1D6E6C156CB3F230B3BB24E
-540B749058E4BEF20EC09D6BC2E4C8452B2A48B1CEAE146BC359D1735B5EBAFC
-7C2337974BD76951789ED282B6B98DB4C8A582B887BCA1DC9AB91B3454D3EA9E
-3B822E7FDF7D4CF64874544706B0D5CCA429C2CB5FAE1CBBDE8A2B2E1C1BE51E
-85E47A455FCA235242A0E2C335034D61B507B3030E5690DC636C726E2749F0ED
-3D6B56778B79D6110683A34C615CCECD0F80F4DE47DC05484750DE06DF3A49D2
-C8B4A9EF6B0E3F64F717E441FFF0D53A239348A6074372247DDCCEB6080FB50C
-EFDA0831DF29CB9561AC5F9B47175708BDA8A69F1EC0BC4E17E2C0951404AAD5
-F691E917CE40D0D7EA70C9C19B1817D21B6CF694CEDC7C7F3C2B99C40EE6A1C3
-B790A6A27DC6D12AE1524E7699F79D61061DFC4C7D2E7EDA2AAD01938E731D4B
-23EE052305D1BFDB6C0A804A8FAACC7341F511CBBBCC78AE7B7BE4FA3C8D149B
-1E6E78DC058F254E034B976E6F9033B58BBB4382C0C21DC5FABD92FC82EB2974
-90FE54ABEB9174656DBF8B98E5908DE55AA46CBDEC25F7A88CE6BAEB56299F2B
-01D7DC9ADA415055E3D5755306219A468C475B809A0FDC9007F1FF6E7AA041A9
-ECD7F0CBF222205878761151691BC63BAAC5B11FED047F336F4F4F4626C5B27B
-51987B37B4D9B0EE7C111B0E7157E6CC6CC05E871CC7EC0BA4EFE831BA1B3CA5
-6439BBB0D546EF01A3AE05D1855D1495F766084DCE3C2E85D6F224845F24C8B5
-70F1D2675A6FFCED8150930468FBAEDB86113271544690BD091DAAAA8AFB910B
-E4683935D47BA09A6235A981BA86DC8BB3237C802D2A224A8817EECD00DE8A2C
-ACE71321D5D6B04FFF4C05BE365D8409CE2A223BE59EA90D39F6CF7C243E57ED
-21B25A946A54450C3BC68CBF64B9261594B0A89403A10FE739F6000BB214C4E3
-6C632355CC35BE7F65242ACF87D9768DB04072D4928E34BCAEF1C29EF429B517
-22C14638854D4DC259D7CDC13947B8ADA051A0C0B84E5D486589DBC0CE0E3AF4
-2048CE778AF0BC3CEFF57FE4B3BF9BBF1A6DE676C83CD578DD39EEAF8E26FED8
-895078A2896A6FF6123E89346ADBD8ADB3D80BCFE21BFF8BACA038DB9B3FB51A
-B9307E067BFB7BEC6FE9C2D3F8660EAFD7CD79274E061AB390744100995DB0AF
-83A0D9C783C73C1F9FE1DB5629B0203961660A31D7874616C4EC1E63AD15B034
-5E3EBFE91A93329F635EBF9BDC93F413A38B0F9467BD292DBE2D72442F8C8E6E
-0A3BEF27D2D12198AD26C6277ADADCE99EE4569A0CFBAB625FF41AFAF724E533
-404AC0035A265FD62DC541541D58D0A97943338791408439B3E7D93E665A9A12
-1CF61691AD1C9A7F8628CA273991B514E525273605BA5E30D8B9E04F1888D04E
-458AA66B6C1588B29A1204B1A02301A200AE4A00BDF28A33D2EDC73CD5AB82DB
-547135A13BCB8E1E03B9FD9E13C95E0F6E38DFCE0A51999C5EBF7898199501F4
-AD52F2D5538E097E7E781065EE6D4A87A7F627EFF812071A67FCB19BDFCEEEE8
-10719FB31EFAD71CD4051CF1D38A808CD394CBA71E700B9AB4FED19F92B8438C
-3616C25A07A0B053223B5CBE4859450AF6773CE9157896EB5AA8E5CFF3ABB132
-8AB1170B6324C491F7CB9DDDF277C98FF261F8713F28444B159F481AC5735D5D
-343FC764D189709D3E61E30EBF197B14D882A3EC5CE4A67F5040676EE3DAFFA7
-822F8B8C0D77115EA82E98957EAE5355B2FC684C1AFF87BD7E01D34E2A1C483D
-43808138BB932221E1592BD40C28E2A3DDC904080B4043CFDF6E1BCEECB63F8A
-7921B196C2899B1A1D7E401E070AA38F2951E0E91E39EBCF9CF49B278A875F43
-408F7D9E1A9FD45F75DC8864F3E4362EC91FC89D32AB1500429CA6367F2EE6EC
-CC572CD9313EDD7449E30D6661D25062ACA2A8C3A2BFEA28B6D1440003474D32
-B67A644BCACBA7200292D3F7C7D4D15CEBFF6DA2C250C87F59E9A752565A6406
-9912455D7E0EBAC53D581FBE8D4AE467A19DB210149E641386890E9F2A52B0D9
-6515E9694820289FB20EF7EB89753F7C1E2C4F69F6FCB42D466E827D84C1332E
-5B9D115EDE73C1EA6AEF6511E73025391FE7416D8B5A9CC0748E83760DCA3852
-836A77E89A58299CBF9878DEFD74AC2DFF777FC5958D87678A4E2B630A240F59
-1C01FB19EAFACE097921B443547305832641B1399ACA75D53B910173B18F02EC
-3BE6C5DEFFA1F5E98FD79959EBB7E42CDDBA6B7976CEE5DD667C48B5F75E4DFE
-1C951330B27FE43B58E773C02AB53D7C904130B1C7ED8928DE339F8C803A095F
-954585EBB1F4018199A39631D8A9E6737499594A1C79D49A34D225BF4BE0A772
-D87C144EAE091B979535D78B1D095D3B34317BA78BE03E07C99598299BB485D8
-F9462A66038824EC833F9CA801402B46CEEB6E85EB7F85FDFE901BEDF14FF5AE
-76592C021B30AF59440F291029988900060FAB77AA1145383881B29F6FF5BBF1
-A6934AAD143F438F586580D52F53E4625BC7977B4054A3C78893DA1803890B18
-61D27D893B8B695E90922A051B0B253F908AA33BC79E9053873C5D1D8467969F
-952F66C90DA35D40D43CB7C4985A8C56C65562F8C973E09D8795EA47BC17D958
-6D6AD83D0773EA0FA2BD247C6C46A9D52ACF9A7A668A91B683E9659D0048D180
-492A03306515859295E4F0F6F37198428A561BD3CA11FFC68E8B25058B10F6E5
-1E5E6FF5D47CF21A8F16337F7B6A4E55B7CE740C903224B8106CE8BB9D75EBD5
-5CA31A43A539D23D06860DDEF0E1958832AF79F60C35E7A1B0E6007A4B33831C
-2E8B69B2529D141D7FAA70EAE528C64EAE26F2573ECD02C1EB53AF8933CC1C4C
-5AE760FF77A450D9B20F119A3C517C2731A66D77820533E5D1C50AB69C7543DC
-402DF620941AABCDD40C8A63662113475C85568AAEC4103A8A12AA6AAADB9F9C
-084740C19F9741030948C3A96ADA98BB0827DD92AE0D48A2AC354E4154A6BDB1
-F8C4004802E862260492EDC2D19323CEF2689253352022DA1FC4F819BF8C9AF2
-DBE7EC4B038F1F2457BD2DDBDFAF3E6D2664812621663F76F8FF5070742E2304
-C4290A34EEEBC442AC68479EA4867D9B1DEB8902A96968B86DB9A667BE6A21E3
-57FB5EC820191151EDE70D3BE5F8A46B7E58DA2CFF1BD8761C7A18D5DF52390D
-177C00DFAF3B75C839ADCB54C8D519DCEB5B4A69CC0AD480208F3659D55DF9CE
-34EA4F8F307E6253F093C5E5CE3FDFD81657EF753D7534B0790883652FFBA396
-BDF1A53FF28A6297838EE1576D6B785FE21A51FCD175486BC0255FDCEE3F98CD
-F1855B740023523E6339A234E5C193F639B729C0EFF1F47CE1D71DC8AE8FE223
-7092FABD45755CCF1AC2ADE932E501830310CE3288FD1918463FB6B5159DCD8B
-A5500932C00A7ED40E72B4F3E4DDC7B79556293D6E6A3B1757E2BE6E0BCF0569
-6FFA2A76A4BC9B63A7C7ECECCCA63E47EE230835945F77C044D7041885A1B4D9
-8AAAA9EFF655E9BB08A5FF9690A1DCC4278A936EBD01A4FEFBA23635F32370BC
-50E6B691CC6F6ECB885084CF1BF3159ECB00B12E9C4638CE63A734CC70388438
-71D3AA2764D7C640C9674CDBFA58CF0497B4A122E2BD413D6AB0E6D69450D7D7
-15890F1560A9BDF04E5AC7130BC74E174E4C1B26AE4F6529D28047CB3702E553
-04D3CE6568B08C741732674910456621D51E0AE9A8836A024ED1B84CC0B50F50
-B4E1486EB0DE384A4D38A8746068FABC7681586CECD15838ED6E2D4F83CD56F9
-288832775D02735DFCBE4DDA0D42A5777AABD381827B58F6A0E6F6592D6C589C
-08A9D77E318C9EBFBB2A6EC80A4D578A09C7AE51ACF6C98277B250C634D10BE0
-5090B000C2DEFA31CE5716051B373E0320DFB13617BFB851E2C2DE62F4F8D311
-8DEF6B1F3839BDAD34ACA5F9E7F284236A0B60BD32AA119E3BB52081A4573CEE
-32FCFBD6B69AC63ED5D9CD17C518D58F7C9BD965AECCB19D6D8B6D504DA48A68
-6085558D7B6D42A4EFB77437A8B58B981E4297150FE710E7F7AA5F87729FFF07
-87A7E807FAB33B1982E484A1C08E25658B714704905C37792F47A8B9EA781DF9
-369354C72368A472B296A6551E49CA5CFE02E3197BEE5A86ABAEE16E6F0F258A
-65A64DFCF7B3F0EE40080BB21CE1834F46A773802C5A708FEBF22574EA7C7198
-0D91532FA9CD3A786F7E1191E12FA5F7C20442A2D6FC0142AE58FC402EF1618F
-EA180FF78F5B93ACF3B9CE5AFC6F41A22AE94DC30022266B422F74CC7D570B6B
-64229DC34CF230826B231C85356C4837B9D6A6AD003D1BEA440886F514FC63E3
-50FE689586012C9CCDF5996521BF31C2185F6C65CFBC5584E4AE7D3C1A343A35
-142C0BB17312B44DF6740E0F9AF65386347DD8D69EBE379E18C6CF46D61C1B21
-35AB57BFE55A395113CBC4D41DFBF5185CB45E368A04787746D297F8CE1C0CEF
-FBD9584F6B2D1D61B733EE59DCEDE9F6BDB990CA0A669108C2A85B5665B03832
-28A3E560928059AE05B8E80571CD3610FFC8518B676C4AEF162372BE864FB8AB
-8015C6836465929BBCC2FEE3A0C613EC25650024FD13A289B82BA2B0BE696F13
-DBEA866EC680CD7E42C86BF80B45B5C5ECF342ABD136664CDAD92A422D49FFA7
-0FB47BEEB2FD4E3EA132AFEBCCD34F3E5E1CF51BAD2181D04E03B413C538B126
-7F217312064CCA21813D77DF616B30247E53D51BD248C80610E072323B89D5EA
-A8B9B163D512C08EFF57C99F6DEFBE91ED1CE7FA927C2389FF95810E2B8DF154
-0A30FE206F2F85B7DA182C0FDB71D0BD02F925978A42901AB831E570BBFD6C2C
-B4ED0E80FB6FB6B6293EE363ACDC2D1CDC243090531258D7AE90E1812A5F7557
-55366455F4BF66F9A4A57D49DF77DAABD116D36C2A5CD6E6C2A718267F14DEF0
-35A87C64E466CFDE1DC5DED7CE60AA47D59BB7BA71F362E8A9714DE908713E09
-27A0DF391BCBE797139E36FD84DD7306BF873DCCB6A64CCD6B023075E3747BBA
-E43FF3001FA79E1CC98C91BCA94258C3FE43E32C11F5A5CCA6A64974E0BD665A
-4DD80AD770E9295830405568C3248F49BC0D748C14BC16620FCF2FEDF6888007
-2AD2670F77CE5F1D440074687A204A2F6325890858CF205A57CFE1B8C363A19F
-2CE148F491BB9606CD1B2BC626D753E4D779C8F24105494EAE5B3E799ACB7F61
-7D3D7E0B5E1BBEC92BEAAA92FA6E1132E8846152B9F0615DCBC3271DCDCE1F6F
-29AE49C1A8B5E8770049610F82ACBBBA7B434C7E5B145D56AB8DE5D3473D3F07
-567C6E31E88B524A8C3ABA2C2D0C5545C024E2DFD430EAE576C1216E81B8DABE
-28C72EF57592CEC9EAFFA51EEE04341F0687FB07497E7AA4A7E575D683EFCF33
-BAECD7D71412F8DAFBE104E1D6087650622A5D239E1F4EAFFADB86D6794D4CCE
-7790456D430B6668A02DA597C70B61E03A4CD14D02A008B6D7D686ADB64A440E
-81AFD61FF2A9FC97376769A4326DB15A4FF5DDD0C0317297D0BD41F28BE0AC0C
-2259AB099372BA053904A027797DE20D640E877D298A01806E5DC46910F5D31E
-71A999B46B1A19C518CE681738BB2ED7093E9A74F60639D45EE2CD646A2807C6
-8530CBA45D116C6B980F2B211FC564F970CD5289C52B01EFAB75B57581E293C3
-066FCD2268889A3F47F329E7CDBB7F9019509D472169F1B00A62EF4F21424883
-728C03DDAD1FEB5198609C90F7027E8CCA5F100525D6E03A38684D650EB0CB2B
-7D22851B9B6F7EBDFA8D4A2335CE24691A49778D88C0D2680A231329ED745945
-3B86C2361D84D3C87100564BD9DEB35C90253E04C626BC2CBEDB3406A402F3ED
-6F67CEF05EF17CCDAC05F56A2333A2B5B2FC37C78F533CA3158FFEE04158E5CA
-8FA1387C315D3A4C8FA898986FF7AC12EDD96D4FEBD56F14189DC680933865F5
-4E0DC552158016DB9ED913E1F4879E5BF1C7DC56642D96589A91E000230F3842
-38949CA1D303100BF24F4918F777DC76282D942F200DF3B663B1DF1D933182B0
-EF1ED07DB6E07B88E36B864CE1B81FE81DDDBC2ABC4AD23051AEBCAD5EF7E7EA
-0DB2D397C2878B13D9330AC104C4A752DDA7652E5B0C35DC2D5091AFD7F90563
-D9D3D7BFE5AA4C637CF137A342D08679E064873A48C44FEA42F59E40D47C9C7C
-75530E47D997D76755255FB3367B4F864C34C2D64CB1C2984DA0094868D150A1
-C87195125B2DBC301BC089B6662658534549DCFCF850B5EAB954C7ABB39BD0EF
-FEA4254DB6B81D3AA70ED21E94817C2702B764EBC2BD495ABB05DE8502A007FB
-40AC7FA63E3E8045DF21E71A09FE6D13BA6B5476C062CF5A64F052067AD7C3F1
-1072644BA4EA5A360EC22C2F57FCBD125FB2B722E281CECC9291130A997A912F
-9BBB252A25FCC1BA9BFDD85B98FF459F07A1F70E027020076BF4BBDDDAB4A7B4
-7A2B8EEA2DF9FF5811925FF288F2CC482BC843B20D1ECEEF4C843B4172FA20C5
-428910D7A8F033808AD26CA716821F35C9E94A8FD1E06D0CAC2AA0BE762A15AC
-96E9ED29509054E335F0E8C842DA612F7A47D180414522C3F9F2E6DFDDEAFAEE
-DB9EE0E1A5B761A2805A5C385BC20722F8F015C7D2C5FAD395C12FEC73F418AC
-445B5B60068EDD382AD436F3AFA556C14655D021AA32A7264FEB6B1622094E9B
-A522BDC1A6BBB23B256A0ADE9BF8F8FF73AE65509D55161BBEE3E4FD358A45EF
-4F007288B94C83A1009AF476D4AA1FF45D2505D259DA50A13492F8012043900F
-84558C575C1407F0F7C6B9C6CE0FC0F54CB30073872B612332C0C7629275243A
-1FCE81BC6113C8A6FCA1AF89D92ECAAA98E26310BD49F1B8916CA89C1E07413F
-6379D309DB3B2E358DACBE0924E91C808596FC898CCD90D4F54DFB83E5343D4C
-CDC26A6A45690FC0489417A3E76782DCDE0D6A80F6E38F2922925F504E962F11
-6BE2F7EB05F92CDD840147E27CC3A06419525A96C3A3D422CFE0B89922F89BC7
-F0C894F9ECD3896BD841A367A0370E6269525B13EF6A3958C2819F1F22D8EC46
-E56A69E0C0D07973112650295BB4ADD9473C80BA28EC4882308B5EBE74566BB3
-9E74ECA0936354C5D7967A55FD27900DDE0847150CE4329BF8AC43280BEADA05
-D269F2B2B6A93A5C2291DC2A9404721DE03743F7DB35FBB2223ADE243D99059D
-D2EF4D2A54E292F5347391957832453A112FFF97CD601E95970555ADE0FCBA29
-FC251D807496E83B2A867214B4779C8FB2C609634581D37023FCA0CCE534603A
-620CEEAB7302288E10E128F9AB6979D8C7CC2320E5B9CC4B671109CD756E45AA
-B57ECE0BEE44E78896EE230E6BF9562D0268771094656521B0E730D6AF1B9A8F
-51EC6648A153432C4E64FA229BE91F14EC871E87C127C2EE463A3EBFAA5948A2
-68FD8440793B1546A66EC4A0C7B907728D4DFAD83A0ED7766F01EA8593538591
-C677B24128E763098513DB3B2FB81AA9486C976ED364FB5DAD6057AAFB7008C6
-E24D2E9C5E8D40F4488C5AF28F87344ECC0DC6DF7C9B4C3608EE48E6891691ED
-F836549F27378888FE6B2C2FC8F3CAC540A09A287824A41C8BDF7D40D65EDEF3
-3A8EED1B55C46AB1E948001A888A3A02400673DD32A184BD970DF4A98F3E0FBD
-055987E208E59B9FB51BC204E034E1567B44E31C0CB2055BE299ADFD1F6825E7
-168BB8D7605C3521BE873AA47E7839A3B1481954FF57F79ED07CB72719614BA2
-CF55BBF66F1FAA899C323E2503F434C4003D1D524F2BD294DBE0E05B32F4597D
-E345A45EDDD64ED5D67383BF05D1B4732C658A283412DF12F88B9BBC2A4394E1
-050FEC8676373E44EEE95A6AD2349964ABD773F0D9866D8ED6845A5F94810164
-BAD4F749863809443888D41B3BCC54FD3D525BEB352DFB9D30FB8E28390EC381
-5549A1CE9FA955815D7CAEC2AA91041DAAAD9141B0B65CC0DA9766A83921DD97
-8001E55C2D51E169E8AD9CB86B93787970D9B68AE9406A5FFA6857ECD7676F2E
-D5C825D41C0192F9A073608445A7385D8BEEC341E76252A39254D518DAD1B16A
-B60AAD1D68449381A2DFA852F762A75C507F175E4B7FF3E404910D8C39B28DD1
-39A74946A98BB8DCE335359B9CE8181334DB4A3C4224D70E4D6739B93871C88F
-5CB369A889B8EAEA00D56AEC596E3D5903D6416E054515D4C21A45CE0CF9FDB1
-C7AC3E60CDD7BBE49F7F47B8F14C00EFEE5F607205CA663B2A566B17F457958F
-AAB0C1E7CEA78197697B56FACCDE80DDC72373B8DBE8CDFBAD81C9170F503F09
-4D0373A7FC641C249989C210A9EB004302C2D79B0F4B1ACF3222FC9430905C39
-6F01EB2A5110E254AA6301EE362BA00B5CAFFF134A8A9793B34917006E7C66CF
-C13424DE88780F7D4F565A1B5EDB8E988795DA2792A3B2667137A622F358F000
-01C0C0006B0FE604EFBA1C51B8B75850535DA2F50E753550E231C2676D77417B
-2A22C3C60F462457B46F937BE1827DFCD2EE7A6048902AB1AC8BBEA599873604
-855DC992FD093CE3BCCBFD4ACF62C6235BF6A170A71EB9CDF3BED980B5CCD556
-7A30AEC1AE5E518CF25CF4862E485D2881094675CD81B0AEC174D9167BA4C4EB
-DD91CBD701CE5F5EF9BC460C2EBD28A2E751D4AD8D4B9D117631994340DF2942
-5DC7CAEC5EDCBCFF932C2D2CFB66A8C8441A997404899063F45A52CE7459FDCA
-8375C047024F0BFFD81346ACA95211224A1182731B413197A812CA78F7B78F47
-D7DD957693959A3E0250615C76602D4EC2B8F71A27EF1C349B8D2225BD3554CE
-250AE611A971A16592931C0D6D7B9573C44780411173815D436C79A945C42C23
-CEA659B2209C8A29F135781554CCA8A95F01FDB7411487ECBB0033DA95447534
-37986FBC4BB3827D57187F667EFF299562A8837B12BCB2E00ED91498EA8AED40
-D2963048D70DC442865B9BBCC383FACED8B5E5037513E4E0CE5AF90903BBC893
-3FDDFD1FB8D0D9605E0B13ECAD84B6351AEB8F2CE65680718198C7F01D1AD6E1
-FC0F30F95238FE4774320FFBFB502B4FC2C283F8D070444A9E64F0E93082308C
-4AB1EAF661A34E6F0052D0CBC66296E0A21AA83E1AA311D7D8D1BC2285AF574A
-EB2274222C3D7156CE001D1B95FC432B50E5AA83C67DC4F621D8CCA5EC7A2208
-5500C4303BD1E7B92A488C64E2E64FC53F7B1C3569C83A8373CC9CEB8E510FFF
-292BA72D91178330E126B41410AD8B2D6E2DA491DFF83DB53F78C5084614B5D8
-96FA2CCAAC2955B61B37E5C19F10FA5F21B0BC62A5EE30D484AC3E5E714D7DF3
-1E7DADCB845A13C11E091D60CD64C10398451A69ACFEC83FA83E1CB0DE506860
-A16F1C217D3F0020EDAAB524A92A30578724BCAFAC6E52164A6AED93AFEE2FFB
-67A390C8222AD7A024F100CAF4F698EF2FACA4164C9E4A0C229F205607BAA25B
-DC213430A2C0A5B12CFCDE601FD91CECE8102E0F3CECA0037327A9E4111E5A5C
-3D0204DD6CFB226308FDEE442F98B6952A447082A2A92E97EDB4A83859F5AB71
-599093FCA362CED5A2A52E8B23FCFF9264A9D5BADBF0FEBCD7348BD815965103
-6BE41D998C20531F289A4EDD859B72B83AE1B8FA22598FB96537CF035E0B4DBE
-8BD1B054B39276823704440CF83C812670B69DFF35892EBC00A6F04F028C70F2
-8CB07644D6216CBB94E864253D584553BFD38BD7C822D81F13CE287C6777F904
-65DB3A1FBA4CC7C2C2049139F4653B6AFD15126D1A9B5834F3FE175D56F8F626
-2AE11C5894A66F4B65CC7164DF33FF5EE0851F0D57DA7C969E51015ABB611F5F
-8DD09CB0035992AC74F043904D982F6272C66D804C86E50EDC2165697A25FCB0
-F92D814CE1B49AF4612AF6C8755F89762BB1A80196EDBB23608264970E66AF5B
-6551B21D349360944E5DCF923E5F6FA81751DA63F5A4A3C240A71492548830D8
-851DAF93D2CAA4E256B4C84B8EDDB59FBCB6F7100F131E73B33072767AE7A579
-DB379D0D359B257E424B57E1A09CA559C4454EC792814C49E12B086580438424
-05631FE7D717DA17B6F8CFC21516F0890A6D3E6DDAF61294F3C05D450DC3D00D
-B628A9C65A65F9BB3A0A2F9713ECC022F3EAAD56537E4DB8FFF97AB55B261405
-800171F4EE9D20E489802A55809FFD41A750CAD891396096E604F24F2E342AE7
-5F74CB49480C77B3FE13DA043651969A77E4A30A10C6DC00D2686EE11A9A0CBA
-4A4BDBFDF38FA82EEBED4F5FDDEA418A2FD90795D076394F31CC0888EFE1EE69
-2A679AE0E278E985FAA578734B25B697C54EE8A1E7890748FA4F72F70ABB6178
-602EDFEB42BD269825A745D008150ABDFED71ED9D45CCEBA6E7DC5C9FB3A2C5C
-F65C73C1E45100586ED2957DCDD38A56031D75F007E90F0759A6EB22491D8AA2
-2DDDA2507260F3B5B2F963D8572D457819DE915C07545006A363B21D5759AA48
-DE12D0A58C37E51712A7854678E3F90BDBE7E9871A7177751095D64C91D93BFF
-1865C5435C3C7F41812002DF6F33E22DEBBBC66FCCD68A2C7AC0FBEB126141FA
-A399B2DA947B67A437A829AAE5A978444BDF7C015E6F9D7E9E29556E0E699718
-1B241DB33D766E6E8AF229792E3219A1744D0FD78BACAAE5D0C45B1D8BF1D5CD
-058AF76E0DE5B062E1D8C0401C4BC29BA5E0C5BC854FC5CB6BAC40218BF00572
-136131412EC3522003DB4AA1F8FFE59268908AFC28DB4F345F8321AEA8200DBD
-BCB860FD60E841B5F13DAA51BC03189E533DF9A8127E4B031B99D270F600802F
-AA9756A102777A7C7A60328E5162B304B9DE6ADF694314E0E206F7BF8DACDF99
-B2EBF7AA2FE4F890AB200E7677C19BF5B3E9AADDB61DE2F7ADAD9D877429F0F1
-6CEB88E5F1DAAFF17074DA50FD6B3D98DBDD26D855001B0A42D4113E2B1F670B
-ECA23F1AA3591BCB2F0409706869191FE908B6DD296D592B4C8BE550DBBE3A7B
-323A2D5A9A59E3742B252E97244B1F7746CD97C6154C6BD96CEEB14DBD25A5D1
-0FED0700BDEB8A8202A377AD8BDC4008DA96C5BF3BA9FA617D418F8A376F5105
-44EFAA85413C8A657F84038E090C728D1C4506CE9306C1DB6032D747C8
+0608A6B90E08CBF44A30669AF4E20CD5C0C80518B7AF4FC2F56904C2849F7F05
+BD9E5029B6C79D25E34E18176A2755CA288597D1CC18D81511E93FE88B94DACB
+67F312A4986FDFD913164AD228F5201FE02EA6C5FF3F6B1BD792FB99819E2589
+7BFC7A527E99FD1C1163D10B83BD61D7CB962C4EA67E887FBA85DEA3B2A1698C
+6A896388E3CBA13AEB278D02354D5D40ED45A86BAE6F213806E9A598FB92FF2E
+8F498BA926D0DC8E167B32DDB47D5A71212CC63EE2BA1332B23C48433BF78C22
+E5A050397513C7B9A954B20801ADE837DC725EE53845DAA89D59C4CC24F9C849
+0A7DDD7808E5E31755CE6F8957C95FB68823B9F944BACC8E18307C10E9D566D1
+D6A4BEA8A230E5C3ED80B9BD0F2A30F39C905F11843A9C3B873F2050025DD297
+F61A7D44A58B63C18C16C4BDDEDBA73979AD1CC2C211E15E42F6AF3AFE4B686C
+9EA058B6A330AF99BB0673333FC04ED65CF45BAFE78F1899DF782FC2E0C10A45
+622720545FE9E04DC3703FF862999D20CD6BBC8944F7EF1EA84EE89A863FEFD2
+9C2E61C7A244AA254CB70319C57F7BC4E7EC1B7ED0E2E0BEFB7BABA64360690B
+32DE9FD9158DAE19BC5605AE0006A614D4E3D70321708BA09AF5774D4EF62EBF
+6CDFD17652326A6BFDEDC298BCAAB0B20209AFB82CD9E4AA63BE5CAD1455AA9D
+C5D6170F697E088ACB6FAAE3427B3A26E0D8D0E14968C973CA0D8BC90F4278B1
+BDB067AB3428719BEA95A88E93D13409A2A02A7EC0773CD94FD43625A90B2141
+2B341C59871983359614089B5292C2BB9C184A5F3F9187988A4F6627C63FE9BF
+1212A94D185FE803E6B9654524E569ADB223E8DE809E44DB791D1C46AFE2BD85
+2E5382B3968CB9762BF37A38626A385D5F03D69C90B1989EB0996CEE0E1C7AF3
+DD198CF50AC697B3489FBF119FC29242EA5A6F02B7041833027D327EB8A9AEE9
+28681EF627A2AAD81E6881C369D9C09FAFCFDF22C504167CD5C4869C1B13A1C0
+5114C83FF30BB4BF72E1D6B8495CC1460BA66BBD6E8DE75815F8D410B5D77A25
+9F05A9B5BFDAF5BA7AC1A8A94C1F616A83CEDE893E318D6FCB285FC1F899E2C3
+B98CD8627E2D04886868124A172896FD7968F0334F740B5D0EC5164435AB1F0D
+9EC8C2915AAC533B5636416B93F927C921BDA6CCC60D936E22204864DC7EDEB7
+EE3CCD6A0831C619C88BE2CADA252BB9020FF58F68C92B0505107BBA248BB496
+6ED801DDC778CCE3FB2566FB08AC653063D8181B0EEF17359F2A522B93C189E3
+96C011BA889A0E80DBDC1A033127196229673C85611949DB21D5861C4AA64B5E
+B2840063EA4FE76D692D02AD3E12BE05C3D8105C35DFC065470D94EB71DB354E
+1F25A74C5226D235B1A655564A4363B10788E36C49DE391472E8023BE4371853
+E987D02F2632AC597C15E4E6C4D83CE8550CC1A205C77F5137C5489AF3D94C61
+BFF963D2919ADCE9F0ABD9F1C1C3EC506D3DC560D16118ECC03997372D317902
+1D4008A6E8789BC70CBF43BBC3B76CACB286873E87173271BBFD15452034F697
+D3256D363DA9D3A7E444F771C92A8128967655C0940DBD814A8EF1C9C269F995
+AA8672A51989186523E39CFB6C0BC6C1973736992346BBEEB1A8CD72337AF836
+E6DAAB6608C5FE315041CDC36C0FF9BFBEFAEA0E96C7089DB3C78A290B4A666E
+DB4068DF4E3782EC8723DF10E23BDB95E8AE6A74099007E85E882D3FF20AF6DB
+145BC61707619CD6A12CA375071A03305BB94E0D75F2437F9070CC02B80621C3
+96E7E4F245CD91C996953A312D89B7E73BF19E99EC07A8650F6FEDE55FE847EB
+3807AFF920AC373CA29DF815EEF50EAE0C9B43DF224D31E73CE6716C74D3B05D
+F5BC74B9A067969DEFA2F846A04272DF2107F24C756D0222C5C07511A17B3F59
+A31CD82AD0D5D35CA491A2289BD1E81801B0AE81CDEA1522336D8F82B8A41BDB
+F6F9CCC837B6FF6502CD33E70014AC1B47950B7FF1DE01EC2CFDE8C49F70AA8E
+BFFBB5959B118640E012F089EA8A65EB50FD4299A54403A3CEAAF063C2E99322
+99A9299364B1F833EE3B7C9A98ACF8ACA4CD0F6E1C964E10F5DE781F6157BB02
+D7BD91A4BA08E1EE988D90B35E0C22C13F14E1ED522C65B16C3A80510DFDA6FB
+221CE6D6DC95BAEDBE97D3677103B78B352C247A0087475733E7A8D097FDE084
+A6D94F57C2BF8B2F35E0C700B72BB04F79EB35AB5DE1A3DB609B63773FAB6EDB
+E6CA587EF43309C59004D0B2D5DA23DA3F975831FCE21C8D642EFD6CFB2AEA1A
+A10C5BE458FE9D322A3AFD7340BBBF61D341282064B16B6D28C54B4AD98351B5
+A77E196D30261BFAADC461C724C1CD616B2E7906DD3BF08BD44DA6D81D75D804
+A037E5D2CA572DC1C187CA1F440AE412A0339105355546A66613AA8705CBC210
+5A2AB6094B5F839D900B253037E8297099CD6EF2964A4DD2176307E0DFEDA368
+9D2C19B7760AD73C406368E2125C27AB9AA0A81FAC1FBA81870C709722D8B5A1
+220FABB6891E4A908D5D662DA0CD8ADC7DB9CD14D096DA464532987013598353
+63DF6D590FB414BB31F4F542E46D7A47E9A0497C294CE8A6E9672C50D3E123EE
+90C28DF302A1F20A9FD40C63FF35447FC7ABCEB580FC5DE1A57377198C3C99F5
+CABA9F3758577325F5A13F08C9EF50A18014C083E37BD3244D972BC2F3E9079D
+B098B57681796764037E2667E941E8338021C47557B60389E4300764FCD078C3
+7115B18105A2F4A66511B2242DD8D9E77B9E33204817CE18C752CE2735CFCE37
+3FD8A96CB7CC3B983B989CF2B92569706D00121AE4A5F53276CD11A149FD5F9C
+1405AB2D41428AE62939A93703424F6637CF546ED5DF652F4B1ADC1D03F9557A
+B389997A1E3230482AEEEB27CFF5A21A6E68BEDF0E790705BEFEDA3B32EF5790
+497D468A631EEF4FFC8997795281D9A1E25E321182E3FFAA10FB3778EE1D0B69
+65CA86516C155C522293DA6342B2A208CA1B78549FF78DB30729C40EC1BFC1C0
+C4A4DA1E1ADD8588E2E18BB5E5ACF44FBCE81600C48CBB96FDB37678D7555A39
+FC55F0005C875EA01F2FD93E8EF5881243DE92203D918B9C69FE58AD838122BA
+CE6B963D6B5696AC4D8DFFF1A74BDEF9ABB45DBD0F991D5056A3FDF1B4A79AF9
+145AB0F3FD0AE81EDC92B3FE165AD6DA66BB023A4688ECC977E0BDF16721708C
+4CACA4BCAEE2E6FF1BD6C76E5E0B9EF7F21AD515607B76786DBCA3A72A6B1856
+95303AF370086F0E1CE1DE5BCF968C22DE09F56A47D5E7DE50A1E1801A014D5F
+BECFCB7C6D3FA390106BEB420B524007A7DBF8505C639517EDF8293490FF5F63
+42C4EB59FE76F90EC8F4E047E96F8EDDA86F8A3B829FC5B788AE7DD9B3CCAE94
+BF7B3FA5BFA554C16F183EBE43A31B17B80B07C2D1901CC7BFF8D0A70A966328
+ECED7F7E97A4C5EEE972B224FF2DD2F13B742E3D445A5E6C5A6D67C46125F7B8
+CC2324A94FE3906DDBEB723B583429C86D41B940CEB45F5992A113C315F0B49D
+FC7138529BF0E21EC0B69EFCFCAFC59A5414655C871FCE0EA10FAA465398FD11
+9779FB3C66DEFD748447FBE7123D7E66B5A8084B8BC3DA5BC6B5735735F9D942
+CEC3A26E008FAE6BDC5F0E7B3B8D6FB56C9CE4C502DD9777110B520F4A8E7095
+A9A5A7742B29CF46B9EB3FEFE516EB0F825C2DDCE1A639AD2932EE95184F4911
+FD1FCEBCABFBC74BBD62BEF3F061E72FA6832F1E93D6753FB9D48DED0FC7DA20
+97378A044EB47E272E40BCD4C05210954A6E30C6C29B442795DD360B7615F65C
+C207AE1744AE15386A4B35895D11C2E2D4B60CF1B2BB9EB0F2FB4EE5EDD53FF3
+97230E1F756AA82815CEB783F6CACAC8159654B069F66DF417437AA653BF2759
+7C65A5F9CA089D92BD38A91156ABC24F2739CEBB6F7C09F70E378A814536D39D
+A75429E7611E4B96CCFD8A337F6CB47532DBF182727C141F6F32590FF7FDE062
+36BFEEBBF23B1FF7013B6C6053822475A06B8E7B8717B4AFA162EA77753AF5D6
+0041878F458921E091ADC16723D6EB25836A59ED6F26BDC7917EECB7A2D94A39
+8967C074B7421D9DE22D8BB31C29C60B9A5765646A501EDBF6DBE731DFBE6FE3
+59F48FB5D9B56E9D0E56AA5ECF12A497D0CEC596B1007205B0E393CDFA9B500A
+420A717D84F0FAFEE9870262C8025438219EC025A67D02FAC51804A10F509631
+D19F76BAA63540C273D5344208A9CDE5721EF8E23E285F1F98191A2FDE6BA6E5
+3D7EE783B1E5EBD07D863733808A5610FC7C944BD3E39D09976017227E18D41F
+8FFD835B9B6E868A53D1F29C4161623255F8B772FA532A87929E2B03B74DBDFB
+D1880FF98AC8868BA3CB947412B2E2D643157F67EF7892B54543108D16CF9BFE
+BAEA5AF42A95D4FEA12C2E5C49659E6E80D0C574669D2BD7F747CA6407D2F40E
+5C616E5D3E596E74BD7F0A188EAADF7DBF1C2923590271C1DA1B196F03CE6B62
+B6FA306C3719F2AB8FD088C24F84EA673BFC2A19F870E055F26C21B2B9EBE7D9
+174B4E663F8A8E6BEB92D306F12603CF320413A570DAB96509800E13BECC5517
+01B8DB3BDE2D69D6260D5E06BA6F8B5FD674D6FDB83444CAA3EDD4242FE3D917
+B78A9D6EC12076CE6A16B32CBB8949F544ACF3861BA689697592A01C1AA1BC35
+26DCFC852D2E79EF1DCB0285D242561B322249A8D78552F973487F59C0D0DCB7
+80AC276D2B5DF818859197CDD20AE6FAB2C2FF51BE9FE08CCC0D7DF6F1DFEEFB
+37F450D8C3DE246E2BB40CD01BD870138B6BE355EE58990976A4BC6D2F42B715
+435513963B2722CF0C810984351407099F7DF288F821568F205919F8D1E459B8
+38E27399A62AE5A6EEF35C082EE5404965FCACB6FCD58DD6349E79B0E7986367
+3F4F2E1A3A46C71319A9B1FBBD576DFF236CE2DB3B91543D12D529545D70036C
+8DAB6EBB9DFBEC17F47770E6FD0C2216124D530A516EF189DB48293D4B134126
+72072827FEB2EC157DE68AB4C9F58C9C792C1D26851C86AF59F67E0B9B5EAF2C
+D0061318B7CA1AFA146F064841E47E7C7CFAC603E6C660D7570B9004B4813CB6
+7D7B399DBA374371E34D1DC6848B970A20B0DD62A004815161F47AB5C4672873
+8E5196251D13F7EB23B505A7372E0381B51E27E4D3ED3097F4021DAE4F0EA95F
+F234495DB83D8E55842DEE5D9B4B7378C215091EE00423B74EA60614528E19A9
+98061F15A36C35E223B6045E4CA324A5E3F8C2C4E7F9702D6293FA807587797A
+C14254C69CDA1BCDF6CFF7B24C0C7B2AE465E7B5119C09BDFB833851ABD1D67B
+DDEBE6AD8A439A67132CA131DC429D010D451188848B9684D449653310948B63
+3BCBF3E55FDEE736877957D607CC605679A4B24EA65CC1B3B1BC27F8766B3ECC
+776F2EDDD42054FD090715842C67A5D55209AB1CE96CA7B60A43D254FE172ECF
+346F077141D8F9DE48FC18D3A5F9097AC6741DCF2FDB2546880B7AE66F565B69
+539D85D99221B46212756724115EB9C1F03266D4E693821C57F35F61287DBAA5
+9069EE2952D8DD5B4AE77F73A3FB3FB0021E7271B948A314A21F3B6B2EB72A55
+ABEAC3BCC8D7EF0B654498E0B6FBF31564B9B1676117F3A7C60521D49B7F9C92
+1BA99CE95397900773B9213148EC59D00013329CB8B6BFF87A3E5F53E3E20B1A
+09994B2EFA35E4D3166265D37CD6AD6527B18993660D5D53983B82AE557E4B71
+F121437E379029F256343FCEB86D90C76130F75A9C987D0F8414ED12B80FB666
+240260BBCAABF6274739088B13FFA0E596F380F6D18F04F98C1A93EDC3C97376
+53139A5F95327D52BAEA3B789D096BB76D4BAA09940381480D9998FC379DE60F
+EA9CEF2C154A06BD12E8AEA2D7B2D06B31757BD997C6AF21DC1B8511A785D8B6
+9EA0213CD1AB4EDB7FE819D0B31904868AD127302796442168FF13C622C1EA81
+144BD1FCCD299815721D3A93F17B89C4554983330846CF24E2F12B512CD56B67
+43BE983B51BFF7355239BBA51318FBF9704D439D7EAAE073C3399D1B2FBB5342
+7116C1B33142999846388DDA69F9D8CDFB38DC642F6EE1D2E3FFA363230F070F
+7E3FDDC1DEDEC9A657EE09BE0AB17132B9AD236FE2F444CFECA125AABB10A24C
+40033BEDBEAA82C59039432CE1BCF64A07DFCE60DF611CA6E902D2E2479D7610
+AC2C2E91A01EBE0B00B456704A550C2EABDD8453C72AF0FFF533C4DDE23D8386
+C282DBE78322449AD91B864FF52E487167993910D0819B9326E0D17AD9AA1C14
+6705E96C65278A1B276298539C262FB4920CF2659BD48FEC636DD7E7C456D005
+FD630E208ED20D50491A3A392FEE2CE839BA2F675EF5EA4C6CF084ED86199730
+3EF6A18621D0C948CDD282C782CD4FE56C1460FFCD223F55AA9154EF7FF75220
+4BC7F3D18FA20B7CD850CE5B7603F1784CDF540830BB969EF6A4C6F113A5221B
+BE3E02E000002F4376E79C8069866C17CC5CB176791A3AB76052FCDEE557691E
+EE016735B5C59D3EF129AE6083DA3A25E40F97A8DBDA45A597983E1EAA282290
+29B0275ADA205A9F6584A8AADE92FEE35175D06A3699E12834CBEAF2CF8A2886
+FB816C4B8A1F5C0A340D5643DFD3C873A772365F4C08796E2B3DAB0F6B2CBE8B
+BA8D231542F9CD66DAA6B70AF72945AEBFAEDF458A85D473A6954F65736E77C9
+714E2BEFE5B1F73C5BEBC52BD084C0841E986FF09D44B020226AA465F4616F8A
+782661F78045BD179C7F0BE660B1EC7FCD5026D5AA4844D8B12D33140D488599
+D556A3D79EB5E5B7BFCB463EB9F7263D8F56427FD3C3F07914369177D02DC8F1
+F09E50412EB8E12E116851F68015313BF135D458860CBAA3AD6EF2AC4315BCCE
+C1A3261BC39E106EE01291C95ACC94FAD6B42EB939498A46EAEF7AFDA795405A
+7FCA75EDF4D672BCD33C9BDDA1D6788CBC81149BBD9880FCEA37F7EF047B5F99
+DE6B952948BA8C958ED736A584772D28FB9939859857EB3DE97D66DB8D701873
+7FC6DB2DDFCBF37600F0711E47EE9A89C034F422958525B8EAE5E691AF5FADCC
+500DB1114C54C830872A689AB44D2F669B96159DDF806530D15C552F7C8AD335
+C3F1077C1C690585572686233876BCDDCDACEF789DCDC4E609DCAFCB59F24DAE
+4C1164EB2E46D4F43DB8B58352A36A6A7EDE1C7F108C69EAC19E3D7718360164
+08C438CA7B1361930B392BC5032C4EA943BE74B07BBB3C1E026F6BFA5970F87D
+B989E391E34E9BCBC5A28FB44B7B0FC5E5F62CF2BBEC8339368C0176E3D5D7E1
+AACE1BA9E7F613D8B17877190CDB644A796089ECF4FFF325A2827500DA90D5F4
+C4070D91DA84C492153891F9173CF871E16F10C5B988CB63F294C976D136C6C9
+826E7440C9D157E2BF78E502F289B76A9C35B10F6761F84B337C5EFB378E68FB
+170804773B517E45E777C36E6E21A53DFA8B85CD22E603F6DC388C852AFE5F78
+AE3E4E0DCEBA3FD958EE95FB9FF0DBC3B0FAED611848061B0C58A7E7D185BE0D
+8A6E88D81B1194A9E2F6DE3A6C1A72A04540CE1E8EC84630789B7CF63FBA3321
+61356132AB4F72653D9A62CF238C47972BDDA213894255895DBD9A40E0B8B434
+93AE7A4C9E47E0859418B7B2E1E346FCF17293777914461A20B111CC03EBCB0D
+56ACB7E67530B986308E1A3404213B840A71059ADC5E74EA6648CFDA1E9211BD
+43FC7C6B69D4FABE495B7F97887999577566777D51287D4AFFFBA74A6FE9B7EF
+1331F9AB3ED7B28082CAC8367BAA5800B6097D8FF96CC89242FFE0403CAE2809
+695E58FE8CE682EB271E617B7934A0BB80CBE34600DBEFED53C5FC2AC6E1F9C6
+35A2266AE9914713486993B4E04CABC2DF0504A92F80AEA8280FC5D0D05A1B3F
+19365C89E67CAEDD7C45938C2DFD9FA5041D1ED96994FF6BE9BDFA831065F9EF
+586F102525E7B392D5D3AE2B9662F7C1C3F0D0A59472CFA9A59AEF80D0BEB7BC
+D3DF1E7B9DDCBA536B90A608FF5D4C96D93977B5471705DB44C3E0E43E54DEDC
+B6287089BD5A516736D44DC1E2305BF6BA0BD369922668D294F410D61899E707
+F6F9EF1662E97A41FB419BADD17755324D97ACAD25DF5E1A98DDC48087188527
+BBCEFAD8EDF6EFADB96493AAB96D1505EB2ADFF9D98E0E5CE89A754EC0DAE62D
+5597A195CD07688AB36C84869FEC67388D9C5E9D2A887A1FCE39F8F63364CAE1
+E95483170E2F07EA3787DE08624416362D25DBB16E140F3FC43261C9E7D0E9FA
+346DD0E1B829B0DDF75CC4C8357689B5D15B52367C5182F960567A7635D2F188
+DC27208AA1D50C070A7D69F99B0E728D7BED3E7A4E932579AB28CE8A4453AEF7
+87D0FAD35B8149E3C6DE16D8071F4A0C16D16D2FD000612427883C2892B19F56
+1E1DADA4583292557B0A046E405C01B8299606AB0CC957AC013670C72E2761B4
+493A413723B2EF00596223BE2C900EAFC82E1CD1BF5AA9A84CDDE77D615D970F
+E5E428386A5D2C1D0E52598F303B8281C616A5A8AA7CE942EFEDC5CD4E38F5F4
+1A28818C1B0FF3BED0E9D3F6D4A5C833AF6202C4C982FC8A23A328969DCA8CA2
+8BBACDE62C3B8F22B10F12C6ECB041C8682320C734696CAF1FD9452660686D1B
+8BB226DE32C77CDB3B64FA0798630444015460C21E61E552769A5E4A8DABF646
+3B147F6EFC19858AC17E377ABB883CF22CBE2BDC726E4048DD37F4F163C6715E
+C20249780BF823CBCFE6EF1347A8F09937D13937FDC85370AE5F22B3F048C729
+3A68F7FBE471036EC208571795FF2291A00460D44F83807C93D696E23636DF0F
+26829339427B24398D43CFB5C8B8A91E0D7547F1DEB9CE75A14C2D6F489B445C
+D5362A562175AF26DE4C51D1E1D40E487BD310D7DDE5B712F697C9C960BCCEEC
+537B807C5592826489C08DADA84D6940D03891CC68D71527148B95A0CDA1F098
+C0B55E1ED1D713830F49DC7781108A50A07B17A6BA388C2A451332B435B8A2D3
+F4EE4EB56B5641D0D09F85AD63559AD49B6C76C104F89CA6F568A3D650A642F2
+41F257301A272934C218CA49791C7630D3A0A79006BB47355A6539B6E0BC96E3
+BDA15F1F1DF322FE6037B10F6F6DE070C0B070F7FA67B77750973E725ECA612A
+57278F5E6B12D311E88457AAE0C2BAC209FA0097748F8E42555772465E24E876
+B6B10C0C4124BA32C085E6EF9885CD0E0ED54A8B584A5BC6B5251C670705FCDC
+7922D164A52A3E5D3DC6E2DB837DB1AEA383B3EEE440730B2535E501DEFED2FA
+2A10A43B2F6B78D68E084CA2858F42F21FC03CECDC80235888A014BB5A464EB5
+D15511D8D30BD3A28A427B4CF801DD74C36FC35A7A9AAAD810A1664D92060D9B
+CC75B9FAF50B634AC7EC82AEFCD9415D13A9317CC704DFC221F808415AC8369F
+F1D422C1B4009054249F168E8956BE2225CEA4635503BB5F723912ACEE1EDBC7
+32F80243BD779F6137BAA6B483CB2CD589DB5BC7F10E7DC1B9288D3554D18C0C
+BEAF0C09FE4222F450A89B944E1BEB72904A83E04FCF21DFCB54A501C1F487B1
+7F29A436BB30DEAB245BAA384CE17F1131DFD6FB1B02FAB60F60D8D0A1A9F279
+1564C806450857ADE4B523BA69BA589F9C909B0804458037445E92CCDA40699E
+63CA2FF45ADF1C9376A79E7EE18E229A7C2D6451126205D3377765BA8B20B819
+0D3A60FC6C736663E06A154B31249C2DE5D58FD17F741D9D9A338061C2FE3904
+8676BAB02AF8E5D5E29DFE90774B948EAF9775BE926F6DBA28ACB2B4FD6D4CA0
+E1515599C3A3A9BC1A061086B6A2EE27112475DB8F0DFA8B34E2B11C5E3F0D02
+66C7E18B5C6A9F3D3FA42EC692A8010C2B8A2CD4D06BC4B11D899305BDC54765
+D56E0810C07CEC9EDC12005347FF47500877D16BBB0BCD04B4200F9F0525EB41
+291215965AE6A4B6AF4B2FEF5A1F6E9E3FB402C7162B46E2DCF254BEE9CF5F3A
+286F48FCD8937E7C668E09AD0D619C674AB32C4A7536410641D5A68014D1A698
+07CAE5F3264AD902F4EE1A0C0E6D27FE84EABF6AB4C6FC962A77DBADB31EE526
+0A5695693BBD735B9A5F9DC3C316AF47FBB3A21DEB4E56F0D5EE43F9546FF5DF
+3F1FF86D3D7B07B4D55A0B361C33A84A3B9AEFDCF575898939DB95BC0880E89D
+8BA318F134012C8ADE74CC9AEA04E55EA9BA52F49F434D94BC9FC6DE2CC7F2BF
+25D553EA37460841B33F3FA75958E6C4419C88155AA874A85D3DB4842E522B32
+8DBDD03BFCCF67AE9593C5DAA2939D6F7E7732015ACF55F8D57E59ECB9ED1973
+F7C8637E018198DACA85B4A239999EDF552C1F8988A92590E05F2628D94EFE98
+F2714AF680663C2D7A0834F09EBCDB462719D7612AD5B27B897AB0A7056FAD3C
+0CAC592C66CFEECF2B5E99B3416D7A7D5F9B9D399CF3A02BEA3CA365EBE7C80A
+7667F349A7E7179F7D1F9041E68087DCBB19E96381906CB06B40F3632CCE51AF
+86E82296C01DAA2721DD5BD1C45D64FD598EFB98E25E795BD2876F3B849EFD96
+1284556D4042542E85B9AB8B39F35272CF8A79C8B70542BE40A2C6E026F11102
+129BCEE80F95AE7EA00DF4955B1356FF6FB1E518F27BA677534B6AD2964B4435
+3314E5B1B53994E99074D66D6DCF06922C74E8DE5589F8E75FAE3778F76BA690
+FB4155AE2D426ED9B41C388B70B07A3ABAC4727D541C86F15C864BF12F21BD40
+AF7E67797C1C84713C3485F8FA1556ADD5965D228935578BE5D8D91A1367156C
+3A59268562B0544C024438CF7DF1E0574B3B7D8EDA35210031CFB15916D81FB5
+A3E543DFA501D9AFC15C12D79116B4E893ED78FD2B572F00B2C3A6411C24563E
+625CFC0CCD9A1BF7BE5D634168E9F81B8F50FEF891D8447861A4A10A1C97C854
+DB1E848773E88AAD2A7661E208C811967ACE23808A38F182768ACF82D8D5BC2C
+837C21652EE47B9651A307FFB7EAF5C7C71E24CBC8183E0563F89C2C01E220BF
+81F0A6434783C016930283963CECDE5E8D1D4D3AC4CE405EB8E51304FDD68E18
+BBA7B058D22CB15F6CC2780617D0A3641ADAF889A645F2746B608A037B575463
+98642803BC3EBBD4C82BF3FFF11FAEB676D391DDEB0142FA9AA80F1E8BA5BFE0
+9B801FA05BE5F6E81ADF3BEDB1289720A5B8832838522072C6E4F463B1C90580
+116EC5C6A35A4EB4D6995F3A0EF17192F3BE9508791C4A717C5C42BA7F563C95
+C97E5ECAD5A3B0134BC37C79A9F922ADE764BCEFD265CDE99FA037A1DF1AA46F
+7D0A4370E15F6C2186B81297C6D5AD259385AD187D4FBDA96A227A8228F838AF
+A6B5D3167DE49B1BECC59AC798CFFE9C0577DD4579E7DD1A92F0061325E8D881
+8E920F452C7FE07AE19E9580BA5C888454842CF73CF7D160E65504264CC52172
+ACC09B18F8D7316395E403CB62B101F2A126EC0DD8BCFC4F8BAAED9181F4342B
+744DA2D4A96B1AC4529B8FDD8E59505A1769DC307D8CC9F1DE37ED39B362696E
+7DEEBAA327515967BA1B76E4862D611A47467DAD6F3ED5AB5ABEBF93123743EE
+5920771488F1DE813891F780F67C7AF2C6B5C4ED4115A4CF06AAF33395F424A7
+39DEF80AA4246CF4EC9AFACAE11061E04E9835D94E481B2893814DF000C86442
+416528C830E31278F16B0AEE501335FBD0618DBD441D0AC158D31CD29FCC696B
+5ADEC6994ADF5705D263DDE9B3348D0BD9931E4C1C675F960E3606B07D767C3D
+F9F1C1F6E4FA361D4DC9D7E6CBD7A0F574399C70652D8B1EB95592604DD3F1A9
+9980C9839E41B35131C743036436EFC9D39CDD072BA2B5F8970440467664B592
+057908E3C467F5901FA10FF7F84FADD39D0FAED3A5AB26DCAC0C102792B60B40
+18BC1AE22C5D6BFE5CE451DD7BB973FA0CE8D51E5C92565DD6FD993F3BE5EAD1
+0DA61A6416F3C53515336A5E5BBA9C01EA60CBFAE88CC639E77DF1F1C6F84764
+4CE12699FF7B2B894847DA6EAE51FEF861B5B2473CEDFC581DE1675A624CAE0D
+E9656E50D67AB8A18FB93DEEDC6FAA1EC6B72EB3A32FD5BAEF1DC1EB2D2050FD
+2A0853197D5DBA501AA30EC13FED962C491E337437761A7BF83185195A07A29C
+B44D3590F3D90E75DB051FDA90BC33D5BCD4D04532678FDC7BEDE64D19825205
+C00BE04BC1F4A0E42D433063DA14811F73AA3662CE8B9312E99F5EABC0511DE8
+3B2A2130F7B05A8144FC151388A2D77FD9337A77ECDB0032473CF428EEAA9CC3
+BDE8D1A33DC4A7FBBB671E502D6BAB9137010C62C0B2D53B0CC3B8223B16ADCF
+BB5C66DB96885932614934A236279D21AC0ABA1EAC44629A91974697BE1F4A4E
+5153F442E89A3845718BA21C61DDF64293F660DB1940211E65CA65D3E541F932
+3CD42DDACC8205EB8E7A5B60F47987A27053C8D38420DDC98085C0026F54F356
+4D06965C30CE66FCB1AC7DA8569BE294C66FA274E51C95FDDA10EDD1F3C71044
+49A95EB268107117F95AC958176307DDFC4E7ADB78F57674279E8DEB2FA1BBE4
+2BE2289F18A0AA76974EF43DD72468B43550561898EBAE14FE6C2A1A3FC0084A
+01215CA57897C78EAFCC360EFCBC6D8B9A87197427A58A6259EF01A1F92D0DC6
+942848ECDB0008BFB79F504328B74ECAE90D087589D12C93A3051E197C1D1DEC
+6B4B59A495998E9AA23C3BA12B0312EDD361007A88189449E8366F74390511E2
+1B94312B8C0D49A098321F8E8863FF6D722078CE23314D8BBCEB634049F7F2A1
+1AB0DC6F6800F2A3A37966F48AC6F25ADFFFC6D65B72F9E4113EA7F4164F5CD5
+003C8063FF3F6498602BB0D05FABA495EEEBD7CE0EAF4B9EF6E06E9B7B46BB79
+4B1BAA79B27906ECC5AD5492EE3D6862D5BF3985EF9A299BF3C7EB92D5E0B7A6
+E3B4CCB547B86C15E74F8114738618986183EFB2964FEC3633C257465E881738
+FE917BE6165E47599C9A96588A27B233E55FBC46EC426D95B75610C81305022C
+04D659187C3C426CA4CA4DEF4D29D4D159EE107F1E49DAED3AE9672493E0E4E6
+189DB2A66059E375608744067B321BE59627C7F6A411D762462D013860A0E00B
+92D54CD2F1CEC18E269AC7405327D182B28B7BF80185FF39DB6E7BA6116BF4F6
+3A767605FFEE1477DEB5671A886C6F477D89F757B579AFA4C0816D22FA5EC321
+A5916B86943E39A80018ABC6665A76C201DA0ADEBD9D340A62632AC076EA6138
+1A3AB5F1C4D5DAEB83B7E7268776A9DF839C3755048F9636B4738B2BE7A10A2A
+6EE234486D3ADC21B34F49EEAD88A0A53B06DB5B94C5B743BD094CFDC8D0249D
+9D750F862DFE406016A9DAAA951F5700DB79C3819B3F7B3E460755BC1617D2BB
+682D60307A13E25EBA4719143A25DD2A332FF0FE3623F1CA37EDDE1464BF5770
+9B06EB096B3EF528E4DE5B388E3F4531A9446A9870A8800F0282D0D26EA4DB13
+68D2F26F881B5241A159D4BEEB24891EFB76D305A7C0702479A941D5C7A57874
+CE446D22F81BE7DA7F461BAE40E71BFD0EF3FECAA0CBDCDAB51951AA98BDF73E
+312CF7794FE9C3994BC0C800B9D80E6A55FE53917EE4A3782C7895EA820CA192
+E0DB82D32F105656A0D9645B4107BCB7F30D0235AB79F871C92A6F31A009699A
+9738992AD82533921E49ADD41BAE823BA54DCFF4692EE61E4E065B201BD466A1
+A70B5B5A46D0374465BDBA521F67CD3CF58B18F00658B5065E1514079C6BBC54
+F789E2E80BC3C3CCB97D1AFA1EA3A2B5025322CCDE7D17BF5C986B4613326C58
+2AB57963C71028E2ED61E4FD683BE8167A425F4930650127B6EB6410BE7AD1B2
+FCC2D8EDC8BC93B07065E1F219C6D859BBD187E0727619CFCF2BA3B53B8DDE6E
+597745D22AE583FEF7E3C4EBB50F501BCD1AEDA38CA9E1CB69BBAAC09680717C
+988C05B869C340C83E9BD0A5B9F4C6E49C9F897052B2CFD0C974E181E0A1FA4B
+07D9C4F69DA6D5662CCD8A38FDE53BCE2AD0ED51427690D01DEAF59D32D5A012
+5ADD4D37928A9CA125B053A3F30E86DB537DD1B2B733A07E3F78EE28559468DA
+EC2ED0DA8550103FC1422BADC190FFD568064EAA5DCA1CFEA5EEF3B2EF013CAE
+CFB0C8E837B2F0E1C342E6DE6B455973A84421543B5813040FB909206DB35F74
+BD079E397D4B7DC3109FD1F82C055DD86DC654506EE354CAF1A9B37D4C90D320
+4657B65382FCE35E41FEA7666803F006466CCB8D8C766FE0ABE37D8001021B73
+9466F263AB61A71C2257276AA111A2A43BA503F7F4B5627AFE948D3C950EC020
+2AD8FCD3F3779CC83D2BAD918D47099B01CD04DD13DC14DBBD9262C838E74A5D
+B32E16EC16BFD020DFA218FC749FAB5177113900995944BE33FF2EB403BF78E4
+D628CA1AAA43DF5FD1A55795B5E784982373ADD2C24E41CED77BEEBF433100FB
+C7284C3087B7F482FAB55B04ED60E3C1EF26991784CE2FBF344B74A6278DB508
+FC6BD4B6608EA3C2FEBB17FA8C62D04FCDD096374ED308FD0D619A01870F063B
+FB48BFC3FDC972BC2FA7BD620AEA2EF2732CCF01DF3FA161D813B1E1F59A830E
+760E8A979B4733472C0AF3B78BF869D59CC03F8CBCC1E7A175B4003E7C705793
+F6DCB6021CE7D3D9FF561CDAC0E97B33ED68E96B52157EC32F8FC63EBE1B36EC
+5741DA32BD91DF5884FFAAF5C217837E88CCB0CAAE7D053DC2B516886BB2047D
+34F91AB227C1F45C4E96C49AC48AB9660256F73700367CEAB8231C7C0DF7A14D
+F75EAD88E0EC8765DC99CA983B3F570AAC0EB18DF5F6E29A7640109202680A7B
+CC3F5F6A7C53833CADA95EB0AF84A564A758D41B50E25D7DBAABF0430DDB564F
+1A63D3DCD8FAAB2F88BFA81EE431464076DF9F21BA71376BE9A4148DB90E1B3E
+DD3C74A51CC7B677B6D3CC480683C02B72E00F324C184E27FE8EDE0826CC894F
+EFA920A2BF377507627B333D83DF452ADEA1915A556AAF054B993159F1D78CC6
+4BA6AE5BE406B2F77C1611820F3F9246537EAEF5A4AFE381A60B93403F34E661
+3F03A2AFFA22874B5D2489C65E09016029C743A86FF381D7F2B2F385DCAE5B48
+BE3EC8BC2BDDD7509440ADA9CB5178059B6027A12156AD392E6C0228EE33DF2B
+0F37925ABE7997A4AE16FAFC63EBCF9706322A9F954BC945F1611668EFD0863A
+CE70E948B212BE1679964B46C7EF1E442E6B98725305EFE8ADF4B0F200179C41
+9E2C19F788F67C1519852A24BD69F45A0954CA3865E21906C3441622CD8004AC
+259235361163C93CA9885446E8CC38A5558E9B5BA00C79F587CB949865F58BE5
+AD2C05EC090AB4132F07162F9C36F122444440D60DB5ED134BA722971FF50CAE
+2FDF082B0BA77072CD1235DCE3413284F4B8ED474E7CE6C9B828ABACEAE96D89
+1CF3A71C93CF9BD61C5639E39ACA320571CE20E490F2C4B12CE69D862036C543
+3D34ADE2C62E1BE6081E3593C5D975A64121B92DB6DCF9808B433046C276B4A3
+7B466BD07BFFBF19A4973B7DE4B3779602A17BA259E992FDC7DB442794BCDED3
+04162C1C1FAFFE0F7641E1A41128C871F3B3DA5222BC5C42321FDFB7BBF1CEA0
+B646E09D746DDF3CA8347C2CF0DD4CA194D97266296B24B1CB954FAB6A2B5DB8
+BF63180512E8C7C8B1661A2285DA1CEF58CA0D9287136663B2A0037197887DD4
+DCFCD2F812184BE3CDD49003E5C8DDB0332493C6909DD0FC7240C8C040319C5C
+CD95115AF08C64889A7441FFA8038F533C800B19BF39AC3C937ED4E015B6C159
+937F2E7AE2456932EC87456761BF53D6EE34BF53132E2ED69E5E90B627317FAE
+F70C95F1522DC4774C10A8A57E6C56F9AA6BD0E3B1321074B02FD2FB6DD8291B
+CFAAB186196C1ACF6B3CF36C727611962713E72F93907B824E99CE9596061E9F
+AF6CBE77B92EED6AE1643269E1804F32AB2AD9B19ED940B1F1CA412BCE3A8284
+AE622DCC4D628A6A5C7518DA4C30CD8F803780BCDD76E57E0A0930A0484E5063
+9E8671A173903B3E2FA6C4099D530911F952AF2CB1B684BD604DCA964F000190
+B2A22D9DD3DAA1C1EFFD5069BD4D480272790CCBAC18129BC2DD30B43B864997
+C55042F798185B94A5A1B686C797DDD91AB776372225021BC424183177229D42
+D9AF2D351C6B29C7E28E60E5B5A5F7A1E43BA9A42351F4D8EFE97370C94A28C3
+9C242232B3DA7E01EE8F0B400BD2B52A04D1B0A15678D03AF0B8A58F518DB8D1
+13E82B4ADD069718805B99E4F09DC6380CA2946B7E973A3B4134DDC37F598632
+83ACA4F59AC6C83F195D6780630AD2D065C7444E0EA52DDF2C698AD2A73BBF0F
+2870558D45E7D271FCF54F26888818F337ED4D1BD6FB9063744E2992E7EFBF10
+919810E483CB88F4F1F115B07A88ABE9B9D31DEA8D07D05DEA863F9C615309D0
+3CFF63AFABA2887847574929E3940431A08A4F8BA576E0D4A5F962FC98D643FE
+6C83333A346FBDB24ED231774413482D56B81D4C5E6CED4A5D551DF282C120BB
+2547FD1F2BAF3833C49111EE3F7748483746E0CC02AF9D4A4861E57F191CC377
+7D32CBA2A07B4F2FC3AE9267B19D1E8EC4F5C2C95BD539FC2DF8512A68815A17
+58D6E367EB4D787C44DCA9D3E350D00765C4B74C809F76623B8E8894FA28E7FE
+C0C0D4885BBE5E4C1AF4F48660FD3E985D68A6DBD2854BA0C3A3714E9D2E3A07
+FFEB7D7B8AA1DDCD4EA5FF3D238065F0D1A4586CC26A0C794435ECDDB1BB212A
+273C4A2F5F8B34950DF3FE6B52A6940B1E7B9F6B3AA5301B515C23386B3B06BA
+1038AAD5EA72A3DE36509AA936C1B2F1BC90DCEEDDE20DB0DDBD1E7BEB19655E
+712C15CE752065CACD18FF85525EF11C2EC887CAE6E958D49669FDCDB295AE03
+390B0F7C0C15D19AA733BD65CD762CB9AF2265D21A7B686201BC3467E4F01915
+97FB9B69DEF4F01406A2FA4B10D7153174F2B757F544B20FF1F0BE594EE9C7AF
+124A39686C20F600B5178BD8828EF49EDC1B934C11B437601C586D510418CF21
+7CB6363B7354191964E874642878A7C2C38968440A9A0A0D60C31282153E49D1
+CC4DAA00BDD455D8CD0352F77E35CD8B4517E76A51E716E813EECE8161907FCE
+0084D3D3609B647AAFD3E89C88DBFCF9DC8950778CF69B69B8D9D8E1B267B05F
+1ED351E8339E712241473610C9CDB7981C6BCE5AF627E5524CBE9DD32936A144
+65CA5F53E8DE077CCE9CD943E58C9A141AE843642FB4B54085B9A0D3404F9F15
+71A8D2AD8D0A75F73029E70ADFFE2841C906F7D25789616801B2D55A00CF1300
+8528DFC29C96298557EBE1FA4834ED68A526380226DF633CC78A212F86EAC9FC
+5CB72A361402C961153AB100902E2E96D38CE185AB62DA6598D02222D9BBE239
+4E91E45537BF2FE35DA51D2FF406BC05A36582A3F2E506D6BBAF4CAFACEB5E40
+3E0732E051DDBB7D4CDDA853F369C1B1E83DA9D311F599B86DE5781D90567932
+59372A73EBFB50E16349D4A98C799372A40E44209F4B49F049280EEF20F2F15B
+F23C0BE0E4C7DF12CB3A26A6A51A768DEF2276F8170B01FE810200E45EDE1DEA
+D447494167F086B4A8E1F0358DCC7D89F32D7AFA977BAA8BA33ABDD36E0D499F
+E26D160BF8D0EE1E5ABA82C2D484F289153CB4ACBBD6C6BEF22E9EE723D0497A
+A0297FA37E82412EE0751FE6CD5A07D241FFFE35315DA65AC3C0C3FDD113EECE
+74DC56AEBDE651834C922994A43FCB24DC96E445098C396E04D1AF12C8451F97
+E365B54C21ED97E03DD908B9FFEA578186C223BF658DA8EFD1C07D9B3C8B0866
+1ED264B806EEF5BF239AA8392A344285AA84A74BA564B91601A9C8C223718994
+73112224C3EBC94C20CAD84E95C4F355C6EFEC3675F7F47338BCEC2A214E826D
+20DA9849ED82744532F4F296F0B4F6A045840F1D136FD7EA72A5E8E5B5659D3A
+6F581456CF0A1D5C847EF38B0351497111683190F3ACCBA435D54142E1CC4E27
+1CC22939F8CC61A14220DD4C1F894F9EFB7848C4AC980A28266C3BB50BE27D41
+E09E93BC8BBD9208010B740D5856758C499DA64968136809A0EFEB5993059C9F
+45C2E66E93D4B211F95AF7DFAD933282855731ADAF6579E605F7E8D01B758F3B
+CDF0C960A0626E29880FBA763F5656CAF7DCC3A0135B2EDB19307A640D1BFFBE
+AB543C3CD0EA5DBAFE25B442070B996E5EAAD8F3787BBE3560EB9284391D71A1
+445C4AB7951699732AADFE8082D22F863CCEA610B6088301AB723A60DBC46C41
+72E50405707D2E8E34693FD510585B3E5999E01E565809A5C8F8EC35908D2E9D
+914B884D8587441B4720BAC26172342B06C0C6BB4766DF4D981390CBE00169E9
+F0A47B5DAB7C3F2C2B17B51A4BC02EF478E30819C2D9324C2C9E2E94A3EFA5A5
+22C10DCA37F8B47070749BE6A458C82CB96A647451D778C619168BD8195FCA35
+67E5AD4643448A42574F685569AD48A91606223294CCC857A2080C71DB25F41C
+FC6EAA2D134CA6AF028D0E8D261CE741017125537AD28913EAB68FB59F51E8E6
+E7C5C1117A432671EB7AC52F3F6EA676C6B31C95FB85248988C150E07B94FB36
+2A08E1839598F0456E91133C26EFCAF2A0B52B73645F61ED5E670BB72232EB9E
+D8CE74C27781EC2C22E620B08529D1C086DEF08FAC7648642232C09C5F786ACF
+8D022471B8536083E20307275DE3CD05B0F7AF7762D4B2465BCD470B49CA8D86
+148B97877A74EDAED863611BEEDA9DD16E7CEE88DF6B223B5003F176B87EC6EE
+370ECFF2697DA8BCFDB5E0B2DF3639F2C291835B3E6BBD006655F88E1C28C796
+FC46F3C0B5E915AE9B0669176A9F9791E529F2E5449DDA5FA1BD984243D99801
+10F5C6B9D302B849C83FF96DDF957D9B691A8F0D14FF401B271E46E4EFAC90DA
+33AEE9E6FD19D5ECD028253A96CA67D8B89E22D50FC038ACCD8460FA2913E49A
+935FC62560D950784CCBA8B03F9671AD71C05BA7E236545912D2A253F1532192
+D981F04448647645100FB96BF3C2B1AFC1F7B5B5E7FF398E5AFC308750259885
+82BF820FC4ECD25EDDD22E7C41D3BAF2CF2699CDFCF6A2DAB0DEBF5093CC2D51
+48F014E5C69A77B679BF71E407E0CDB76F7E57E9558D58F4DEE8CEE9BD51C0B6
+1719485266F40DFACCA273DA2639366B058DCADE19FD2715EBFE25F50FB86319
+BB296E7F839F637BB1EAF9AC98F3E2D5E4B896FB548905BB969FE28B4B6DEA96
+CFCFD97D9C6C647C1E3455D3F7958C68B5E7C243FEC9BEF88AA3F6533C3AA2C2
+3EF647307853D04C2559F185CEF764094159FF559B0FD81D95EF7E36F5748DF1
+CB39EABAEA3A4C8EB08E03A56798F3BE4A3378EA86DAF0EC01C242E8AB3A7BCD
+F3EA1680AB53CC41C2774A9DC8B3EF8CA4EB907D027F7A2BAAAED65348F7A97F
+3C52C383B7617E3995C80E4CA7A82D97926C731331166DC8AF2712CA01647A8B
+4DBB00A1D87A5D957FC5952AE713EBA53CD5E2DDE96965F62653F58831009867
+EF7FC551FB7E2F22D368F483B9CB3F6FFF81436C80F2CE5FCD03CEEB211D88BE
+59021F4B0D1632763B8DCDB52C022487144E3653E8C8A490116FEB5E5298D132
+4746422888187900B47118FC36C9
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
 0000000000000000000000000000000000000000000000000000000000000000
@@ -5716,62 +5167,57 @@
 %%EndFont 
 TeXDict begin 40258437 52099151 1000 600 600 (main.dvi)
 @start /Fa 138[51 6[51 6[53 103[{}3 83.022 /CMCSC10 rf
-/Fb 152[42 42 76[65 25[{}3 83.022 /CMSY10 rf /Fc 255[52{}1
-58.1154 /CMSY7 rf /Fd 135[44 3[44 1[44 2[44 2[44 2[44
-3[44 1[44 44 44 97[{}10 83.022 /CMTT10 rf /Fe 152[38
-38 68[77 33[{}3 74.7198 /CMSY9 rf /Ff 163[28 41[28 28
-28 6[22 22 5[28 34[{}7 41.511 /CMR5 rf /Fg 134[26 5[26
-26 2[26 26 26 1[26 5[26 26 2[26 55[26 26 40[{}12 49.8132
-/CMTT8 rf /Fh 134[30 4[23 28 7[31 1[22 3[28 25[47 2[46
-72[{}8 41.511 /CMMI5 rf /Fi 148[35 1[23 29[56 2[54 72[{}4
-58.1154 /CMMI7 rf /Fj 140[40 3[49 2[25 44 7[44 23[74
-1[39 4[73 1[68 66[{}9 83.022 /CMBXTI10 rf /Fk 134[32
-2[31 37 24 29 29 28 2[38 54 20 33 25 22 3[29 32 1[27
-34 16[39 4[51 2[50 2[45 69[{}21 49.8132 /CMMI6 rf /Fl
-146[42 1[42 42 5[42 9[42 5[42 42 1[42 24[32 56[{}9 83.022
-/XYDASH10 rf /Fm 193[48 62[{}1 49.8132 /CMSY6 rf /Fn
-134[0 3[0 0 1[0 1[0 0 31[0 24[0 2[0 1[0 1[0 2[0 2[0 0
-2[0 8[0 12[0 15[{}17 83.022 /XYBTIP10 rf /Fo 134[0 3[0
-0 1[0 1[0 0 31[0 24[0 4[0 1[0 2[0 0 1[0 0 2[0 8[0 12[0
-15[{}17 83.022 /XYATIP10 rf /Fp 133[36 38 3[44 28 36
-35 1[39 37 46 68 23 40 1[26 1[37 37 36 40 33 33 41 13[47
-1[61 49 4[65 42 34 64 2[57 63 55 58 58 5[21 21 58[{}34
-74.7198 /CMMI9 rf /Fq 131[78 39 1[37 35 51 35 41 25 31
+/Fb 152[38 38 68[77 33[{}3 74.7198 /CMSY9 rf /Fc 163[28
+41[28 28 28 6[22 22 5[28 34[{}7 41.511 /CMR5 rf /Fd 134[26
+5[26 26 2[26 26 26 1[26 5[26 26 2[26 55[26 26 40[{}12
+49.8132 /CMTT8 rf /Fe 134[30 4[23 28 7[31 1[22 3[28 25[47
+2[46 72[{}8 41.511 /CMMI5 rf /Ff 150[23 29[56 2[54 72[{}3
+58.1154 /CMMI7 rf /Fg 140[40 3[49 2[25 44 7[44 25[39
+4[73 1[68 66[{}8 83.022 /CMBXTI10 rf /Fh 134[32 2[31
+37 24 29 29 28 2[38 54 20 33 25 22 3[29 32 1[27 34 16[39
+4[51 2[50 2[45 69[{}21 49.8132 /CMMI6 rf /Fi 146[42 1[42
+6[42 9[42 6[42 1[42 24[32 56[{}7 83.022 /XYDASH10 rf
+/Fj 193[48 62[{}1 49.8132 /CMSY6 rf /Fk 134[0 3[0 2[0
+59[0 2[0 3[0 2[0 2[0 0 2[0 8[0 12[0 15[{}12 83.022 /XYBTIP10
+rf /Fl 134[0 3[0 2[0 59[0 6[0 2[0 0 1[0 0 2[0 8[0 12[0
+15[{}12 83.022 /XYATIP10 rf /Fm 133[36 38 3[44 28 36
+35 1[39 37 46 1[23 40 1[26 1[37 1[36 40 33 33 41 13[47
+1[61 49 4[65 42 34 64 2[57 63 55 58 58 5[21 21 58[{}32
+74.7198 /CMMI9 rf /Fn 134[50 1[69 50 53 37 38 39 2[48
+53 80 27 50 1[27 1[48 1[44 53 42 53 46 12[66 53 3[72
+7[75 60 1[73 2[72 11[48 48 48 48 48 2[27 33[53 12[{}33
+83.022 /CMBX10 rf /Fo 131[78 39 1[37 1[51 35 41 25 31
 32 1[39 39 43 63 20 35 1[24 39 35 24 35 39 35 35 39 7[57
 57 77 1[57 55 43 56 1[52 59 57 69 48 59 40 30 57 59 50
 52 58 55 54 57 6[24 39 39 39 39 39 2[39 39 39 1[24 27
-24 2[31 31 24 26[43 12[{}64 74.7198 /CMTI9 rf /Fr 134[50
-1[69 50 53 37 38 39 1[53 48 53 80 27 50 29 27 53 48 29
-44 53 42 53 46 12[66 53 2[65 72 75 91 1[75 2[75 75 60
-63 73 2[72 9[48 48 48 48 48 48 48 2[27 32 30[80 1[53
-12[{}47 83.022 /CMBX10 rf /Fs 133[39 3[40 48 1[39 37
-2[40 50 1[25 43 1[29 3[39 1[36 36 9[69 5[63 66 53 63
-3[71 1[36 69 2[61 69 59 63 6[23 23 58[{}27 83.022 /CMMI10
-rf /Ft 133[34 40 1[55 38 45 28 34 35 38 42 42 47 68 21
-38 1[25 42 38 25 38 42 38 38 42 13[47 61 6[64 1[32 4[63
-1[58 62 19[30 32[47 12[{}33 83.022 /CMTI10 rf /Fu 135[59
-2[62 44 44 46 2[56 62 1[31 59 1[31 1[56 34 51 62 50 1[54
-9[116 3[62 84 8[42 3[74 86 81 12[56 56 56 56 56 56 49[{}29
-99.6264 /CMBX12 rf /Fv 139[34 35 36 14[39 49 43 31[67
-6[25 11[25 46[{}9 74.7198 /CMBX9 rf /Fw 133[39 3[39 39
-39 39 39 1[39 39 39 39 39 39 39 39 39 39 39 39 39 39
-1[39 12[39 39 39 1[39 39 2[39 39 4[39 2[39 1[39 39 5[39
-10[39 39 39 45[{}36 74.7198 /CMTT9 rf /Fx 132[38 34 41
-41 55 41 43 30 30 30 41 43 38 43 64 21 41 23 21 43 38
-23 34 43 34 43 38 3[21 38 21 1[58 58 79 58 58 55 43 57
-60 52 60 58 70 48 60 39 28 58 60 50 52 59 55 54 58 3[60
-2[21 38 38 38 38 38 38 38 38 38 38 38 21 26 21 2[30 30
-21 4[38 15[38 2[64 64 1[43 45 11[{}80 74.7198 /CMR9 rf
-/Fy 163[30 39[30 30 30 30 30 6[24 24 5[30 34[{}9 49.8132
-/CMR6 rf /Fz 202[33 33 33 33 33 33 6[26 26 40[{}8 58.1154
-/CMR7 rf /FA 132[42 37 44 44 60 44 46 32 33 33 44 46
-42 46 69 23 44 25 23 46 42 25 37 46 37 46 42 3[23 42
-23 1[62 62 85 62 62 60 46 61 65 57 65 62 76 52 65 43
-30 62 65 54 57 63 60 59 62 1[39 1[65 1[23 23 42 42 42
-42 42 42 42 42 42 42 1[23 28 23 2[32 32 23 1[69 2[42
-23 18[69 46 46 48 11[{}82 83.022 /CMR10 rf /FB 139[52
-53 55 1[75 67 75 4[37 75 67 41 61 75 60 1[65 13[75 100
-12[88 1[97 1[102 19[45 45[{}20 119.552 /CMBX12 rf end
+24 2[31 31 24 26[43 12[{}63 74.7198 /CMTI9 rf /Fp 137[40
+48 2[37 2[40 50 1[25 43 1[29 5[36 36 16[66 53 63 3[71
+1[36 69 2[61 69 1[63 6[23 23 58[{}21 83.022 /CMMI10 rf
+/Fq 133[34 40 1[55 38 45 28 34 35 1[42 42 47 68 21 38
+1[25 42 38 25 38 42 38 38 42 13[47 7[64 1[32 4[63 1[58
+20[30 32[47 12[{}30 83.022 /CMTI10 rf /Fr 138[62 44 44
+46 2[56 62 1[31 59 1[31 1[56 34 51 62 50 1[54 9[116 3[62
+84 8[42 3[74 86 81 13[56 56 56 56 56 49[{}27 99.6264
+/CMBX12 rf /Fs 139[34 35 36 14[39 49 43 31[67 6[25 11[25
+46[{}9 74.7198 /CMBX9 rf /Ft 133[39 3[39 39 39 39 39
+1[39 39 39 39 39 39 39 39 39 39 39 39 39 39 1[39 12[39
+39 39 1[39 39 2[39 39 4[39 2[39 1[39 39 5[39 10[39 39
+39 45[{}36 74.7198 /CMTT9 rf /Fu 132[38 34 41 41 55 41
+43 30 30 30 41 43 38 43 64 21 41 23 21 43 38 23 34 43
+34 43 38 3[21 38 21 1[58 58 79 58 58 55 43 57 60 52 60
+58 70 48 60 39 28 58 60 50 52 59 55 54 58 3[60 2[21 38
+38 38 38 38 38 38 38 38 38 38 21 26 21 2[30 30 21 4[38
+15[38 2[64 64 1[43 45 11[{}80 74.7198 /CMR9 rf /Fv 163[30
+39[30 30 30 30 30 6[24 24 5[30 34[{}9 49.8132 /CMR6 rf
+/Fw 203[33 33 33 33 33 6[26 26 40[{}7 58.1154 /CMR7 rf
+/Fx 132[42 37 44 44 60 44 46 32 33 33 44 46 42 46 69
+23 44 25 23 46 42 25 37 46 37 46 42 3[23 42 23 1[62 62
+85 62 62 60 46 61 1[57 65 62 76 52 65 43 30 62 65 54
+57 63 60 59 62 3[65 1[23 23 42 42 42 42 42 42 42 42 42
+42 1[23 28 23 2[32 32 23 1[69 2[42 23 18[69 46 46 48
+11[{}80 83.022 /CMR10 rf /Fy 139[52 53 55 1[75 67 75
+4[37 75 67 41 61 75 60 1[65 13[75 100 12[88 1[97 1[102
+19[45 45[{}20 119.552 /CMBX12 rf end
 %%EndProlog
 %%BeginSetup
 %%Feature: *Resolution 600dpi
@@ -5829,80 +5275,82 @@
 SDict begin [ /View [/XYZ H.V] /Dest (chapter.1) cvn H.B /DEST pdfmark
 end
  523 365 a Black Black 586 448 a
-FB(An)45 b(Enco)t(ding)f(for)h(Censorship-Resistan)l(t)i(Sharing)566
-740 y FA(Christian)27 b(Grotho\013)1239 710 y Fz(1)1276
-740 y FA(,)g(Krista)g(Grotho\013)1889 710 y Fz(2)1926
-740 y FA(,)g(Tzv)n(etan)g(Horozo)n(v)2599 710 y Fz(3)2634
-740 y FA(,)h(Jussi)f(T.)h(Lindgren)3326 710 y Fz(4)894
-882 y Fy(1)967 914 y Fx(Departmen)n(t)d(of)i(Computer)f(Science,)g
-(Univ)n(ersit)n(y)e(of)j(Den)n(v)n(er,)e(USA)1532 1005
-y Fw(address@hidden)606 1065 y Fy(2)679 1096
-y Fx(CERIAS)g(/)h(In)n(terdepartmen)n(tal)f(Program)i(in)f
+Fy(An)45 b(Enco)t(ding)f(for)h(Censorship-Resistan)l(t)i(Sharing)566
+737 y Fx(Christian)27 b(Grotho\013)1239 707 y Fw(1)1276
+737 y Fx(,)g(Krista)g(Grotho\013)1889 707 y Fw(2)1926
+737 y Fx(,)g(Tzv)n(etan)g(Horozo)n(v)2599 707 y Fw(3)2634
+737 y Fx(,)h(Jussi)f(T.)h(Lindgren)3326 707 y Fw(4)894
+879 y Fv(1)967 911 y Fu(Departmen)n(t)d(of)i(Computer)f(Science,)g
+(Univ)n(ersit)n(y)e(of)j(Den)n(v)n(er,)e(USA)1532 1002
+y Ft(address@hidden)606 1062 y Fv(2)679 1094
+y Fu(CERIAS)g(/)h(In)n(terdepartmen)n(tal)f(Program)i(in)f
 (Linguistics,)h(Purdue)e(Univ)n(ersit)n(y)-6 b(,)25 b(USA)1591
-1188 y Fw(address@hidden)1580 1247 y Fy(3)1653 1279
-y Fx(Motorola)j(Labs,)e(USA)1572 1370 y Fw(address@hidden)827
-1430 y Fy(4)900 1462 y Fx(Departmen)n(t)f(of)h(Computer)g(Science,)g
-(Univ)n(ersit)n(y)f(of)i(Helsinki,)f(Finland)1513 1553
-y Fw(address@hidden)p Black 759 1916 a Fv(Abstract.)p
-Black 43 w Fx(This)i(pap)r(er)g(describ)r(es)h(ECRS,)f(a)h(con)n(ten)n
-(t)e(enco)r(ding)i(sc)n(heme)f(for)759 2007 y(censorship-resistan)n(t)
+1185 y Ft(address@hidden)1580 1244 y Fv(3)1653 1276
+y Fu(Motorola)j(Labs,)e(USA)1572 1368 y Ft(address@hidden)827
+1427 y Fv(4)900 1459 y Fu(Departmen)n(t)f(of)h(Computer)g(Science,)g
+(Univ)n(ersit)n(y)f(of)i(Helsinki,)f(Finland)1513 1550
+y Ft(address@hidden)p Black 759 1865 a Fs(Abstract.)p
+Black 43 w Fu(This)i(pap)r(er)g(describ)r(es)h(ECRS,)f(a)h(con)n(ten)n
+(t)e(enco)r(ding)i(sc)n(heme)f(for)759 1956 y(censorship-resistan)n(t)
 18 b(p)r(eer-to-p)r(eer)f(net)n(w)n(orking.)h(The)f(prop)r(osed)h(enco)
-r(ding)f(mec)n(h-)759 2098 y(anism)36 b(supp)r(orts)e(b)r(oth)h
+r(ding)f(mec)n(h-)759 2048 y(anism)36 b(supp)r(orts)e(b)r(oth)h
 (e\016cien)n(t)f(dissemination)i(of)g(encrypted)d(data)i(as)h(w)n(ell)
-759 2190 y(as)f(encrypted)e(queries)h(o)n(v)n(er)g(this)g(data.)g(In)n
-(termediaries)h(can)f(v)n(erify)g(that)g(an)759 2281
+759 2139 y(as)f(encrypted)e(queries)h(o)n(v)n(er)g(this)g(data.)g(In)n
+(termediaries)h(can)f(v)n(erify)g(that)g(an)759 2230
 y(encrypted)c(resp)r(onse)h(matc)n(hes)g(an)g(encrypted)f(query)f
-(without)i(b)r(eing)g(able)g(to)759 2372 y(decrypt)24
+(without)i(b)r(eing)g(able)g(to)759 2322 y(decrypt)24
 b(either.)h(F)-6 b(urthermore,)24 b(ECRS)h(allo)n(ws)h(users)f(to)g
-(share)g(\014les)g(encrypted)759 2464 y(under)i(descriptiv)n(e)g(k)n
+(share)g(\014les)g(encrypted)759 2413 y(under)i(descriptiv)n(e)g(k)n
 (eys)g(whic)n(h)g(are)h(the)f(basis)i(for)f(querying)f(the)g(net)n(w)n
-(ork)g(for)759 2555 y(con)n(ten)n(t.)f(With)f(the)g(prop)r(osed)h(sc)n
+(ork)g(for)759 2504 y(con)n(ten)n(t.)f(With)f(the)g(prop)r(osed)h(sc)n
 (heme,)g(e\013ectiv)n(e)g(load)g(balancing)g(and)g(sw)n(arm)759
-2646 y(distribution)21 b(are)h(p)r(ossible.)h(The)e(enco)r(ding)h(mec)n
-(hanism)g(handles)f(data)g(in)g(small)759 2738 y(c)n(h)n(unks,)h(whic)n
+2596 y(distribution)21 b(are)h(p)r(ossible.)h(The)e(enco)r(ding)h(mec)n
+(hanism)g(handles)f(data)g(in)g(small)759 2687 y(c)n(h)n(unks,)h(whic)n
 (h)h(can)g(also)h(b)r(e)f(e\016cien)n(tly)g(enco)r(ded)g(on)g(demand)f
-(from)i(the)f(plain-)759 2829 y(text.)29 b(The)h(prop)r(osed)g(enco)r
+(from)i(the)f(plain-)759 2778 y(text.)29 b(The)h(prop)r(osed)g(enco)r
 (ding)g(is)g(conceptually)f(simple)h(and)f(easy)h(to)g(imple-)759
-2920 y(men)n(t.)523 3095 y
+2870 y(men)n(t.)523 3024 y
 SDict begin H.S end
- 523 3095 a 523 3095 a
+ 523 3024 a 523 3024 a
 SDict begin 12 H.A end
  523
-3095 a 523 3095 a
+3024 a 523 3024 a
 SDict begin [ /View [/XYZ H.V] /Dest (section.1.1) cvn H.B /DEST pdfmark
 end
- 523 3095 a 119 x Fu(1)112 b(In)m(tro)s(duction)523
-3427 y FA(In)n(ternet)40 b(censorship)f(is)i(a)f(p)r(o)n(w)n(erful)f(w)
+ 523 3024 a 116 x Fr(1)112 b(In)m(tro)s(duction)523
+3330 y Fx(In)n(ternet)40 b(censorship)f(is)i(a)f(p)r(o)n(w)n(erful)f(w)
 n(eap)r(on)h(for)g(oppressiv)n(e)e(go)n(v)n(ernmen)n(ts,)g(corp)r(o-)
-523 3527 y(rations)g(and)h(pressure)f(groups)g(in)i(sti\015ing)f
-(dissen)n(t)g(and)g(suppressing)f(dissemination)523 3626
+523 3430 y(rations)g(and)h(pressure)f(groups)g(in)i(sti\015ing)f
+(dissen)n(t)g(and)g(suppressing)f(dissemination)523 3530
 y(of)d(information.)f(A)h(v)-5 b(ariet)n(y)34 b(of)h(tec)n(hniques)f
 (can)h(b)r(e)g(used)g(to)g(censor)e(online)i(informa-)523
-3726 y(tion;)h(hard)f(driv)n(es)g(can)h(b)r(e)g(con\014scated)f(and)h
+3629 y(tion;)h(hard)f(driv)n(es)g(can)h(b)r(e)g(con\014scated)f(and)h
 (searc)n(hed,)f(tra\016c)g(can)h(b)r(e)g(\014ltered,)g(and)523
-3826 y(denial-of-service)28 b(attac)n(ks)h(can)g(b)r(e)h(p)r(erformed)g
+3729 y(denial-of-service)28 b(attac)n(ks)h(can)g(b)r(e)h(p)r(erformed)g
 (against)f(serv)n(ers.)e(In)j(addition)g(to)g(these)523
-3925 y(tec)n(hnical)25 b(measures,)f(individuals)h(can)f(b)r(e)i
+3828 y(tec)n(hnical)25 b(measures,)f(individuals)h(can)f(b)r(e)i
 (singled)e(out)h(and)g(sub)5 b(jected)26 b(to)f(harassmen)n(t.)523
-4025 y(A)h(common)e(requiremen)n(t)h(for)g(censorship)f(in)h(an)n(y)g
-(form)g(is)g(the)h(abilit)n(y)f(to)g Ft(r)l(e)l(c)l(o)l(gnize)h
-FA(the)523 4125 y(ob)5 b(jectionable)27 b(information.)648
-4227 y(The)21 b(goal)g(of)g(the)h(enco)r(ding)f(sc)n(heme)g(presen)n
+3928 y(A)h(common)e(requiremen)n(t)h(for)g(censorship)f(in)h(an)n(y)g
+(form)g(is)g(the)h(abilit)n(y)f(to)g Fq(r)l(e)l(c)l(o)l(gnize)h
+Fx(the)523 4028 y(ob)5 b(jectionable)27 b(information.)648
+4127 y(The)21 b(goal)g(of)g(the)h(enco)r(ding)f(sc)n(heme)g(presen)n
 (ted)g(in)h(this)g(pap)r(er)f(is)h(to)f(mak)n(e)g(it)h(di\016cult)523
-4327 y(to)31 b(iden)n(tify)g(information)f(stored)g(or)f(transmitted)i
-(in)g(a)f(op)r(en)h Ft(de)l(c)l(entr)l(alize)l(d)h FA(wide-area)523
-4426 y(net)n(w)n(ork)21 b(where)h(man)n(y)f Ft(untruste)l(d)g
-FA(p)r(eers)h(w)n(an)n(t)g(to)g(share)f(data.)h(The)g(prop)r(osed)f
-(enco)r(ding)523 4526 y(sc)n(heme,)36 b(called)g(ECRS,)g(allo)n(ws)f(b)
+4227 y(to)31 b(iden)n(tify)g(information)f(stored)g(or)f(transmitted)i
+(in)g(a)f(op)r(en)h Fq(de)l(c)l(entr)l(alize)l(d)h Fx(wide-area)523
+4327 y(net)n(w)n(ork)21 b(where)h(man)n(y)f Fq(untruste)l(d)g
+Fx(p)r(eers)h(w)n(an)n(t)g(to)g(share)f(data.)h(The)g(prop)r(osed)f
+(enco)r(ding)523 4426 y(sc)n(heme,)36 b(called)g(ECRS,)g(allo)n(ws)f(b)
 r(oth)i(con)n(ten)n(t)f(and)g(queries)g(to)g(b)r(e)h(encrypted)f(while)
-523 4625 y(b)r(eing)g(transmitted)g(or)g(stored)f(on)h(the)g(net)n(w)n
+523 4526 y(b)r(eing)g(transmitted)g(or)g(stored)f(on)h(the)g(net)n(w)n
 (ork.)f(This)h(ensures)f(that)h(in)n(termediaries)523
-4725 y(remain)31 b(oblivious)f(to)h(the)h(data)f(they)g(are)f
-(handling,)h(reducing)g(the)h(c)n(hance)e(that)i(they)523
-4825 y(can)d(b)r(e)g(singled)g(out)g(for)f(an)h(attac)n(k)f(or)g(held)i
-(liable.)e(It)i(is)f(imp)r(ortan)n(t)f(to)h(note)g(that)h(the)523
-4924 y(primary)19 b(goal)f(is)h Ft(deniability)k FA(for)c(the)h(p)r
-(eers)f(storing)g(and)g(transmitting)h(the)g(information.)p
+4625 y(remain)19 b(oblivious)f(to)h(the)h(data)f(they)g(are)f
+(handling,)i(reducing)e(the)i(c)n(hance)e(that)i(they)f(can)523
+4725 y(b)r(e)g(singled)g(out)f(for)h(an)f(attac)n(k)g(or)g(held)h
+(liable.)f(It)i(is)e(imp)r(ortan)n(t)h(to)f(note)h(that)g(the)g
+(primary)523 4825 y(goal)25 b(is)i Fq(deniability)i Fx(for)d(the)h(p)r
+(eers)f(storing)g(and)g(transmitting)g(the)h(information.)f(These)523
+4924 y(p)r(eers)37 b(m)n(ust)g(b)r(e)h(able)f(to)g(claim)g(that)g
+(decrypting)g(the)g(information)g(is)g(infeasible)g Fq(for)p
 Black Black eop end
 %%Page: 2 2
 TeXDict begin 2 1 bop 0 0 a
@@ -5919,160 +5367,181 @@
  523 232 a 523 232 a
 SDict begin [ /View [/XYZ H.V] /Dest (page.2) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(2)237 b(C.)27
+ 523 232 a Black Fu(2)237 b(C.)27
 b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(These)h(p)r(eers)f(m)n(ust)i(b)r(e)f(able)g(to)g
-(claim)g(that)g(decrypting)f(the)i(information)e(is)h(infeasible)523
-548 y Ft(for)j(them)p FA(.)648 678 y(W)-7 b(e)23 b(\014nd)g(it)f
-(acceptable)g(if)h(a)g(censor)e(who)h(kno)n(ws)g(precisely)f(whic)n(h)i
-(con)n(ten)n(t)f(to)g(censor)523 778 y(is)28 b(able)f(to)g(matc)n(h)h
-(a)f(request)g(or)f(resp)r(onse)h(against)f(that)i(particular)f(con)n
-(ten)n(t.)g(ECRS)g(is)523 878 y(supp)r(osed)33 b(to)f(protect)h(in)n
-(termediaries)e(that)i(merely)f(transmit)h(information)f(and)h(that)523
-977 y(need)f(to)f(b)r(e)h(able)f(to)h(sho)n(w)e(that)i(they)g(are)e
-(unable)i(to)f(recognize)f(ob)5 b(jectionable)31 b(infor-)523
-1077 y(mation)c(for)f(their)g(o)n(wn)g(protection.)h(The)f(ultimate)i
-(senders)d(and)i(receiv)n(ers)e(of)h(the)h(data)523 1177
-y(should)36 b(b)r(e)h(protected)f(b)n(y)g(other)f(means,)h(suc)n(h)g
-(as)g(anon)n(ymous)e(routing)i([)p 0 1 0 TeXcolorrgb
-3002 1177 a
+Black 523 448 a Fq(them)p Fx(.)g(F)-7 b(or)26 b(ECRS,)h(it)g(is)g
+(acceptable)f(if)h(a)g(censor)e(who)i(kno)n(ws)f(precisely)g(whic)n(h)g
+(con)n(ten)n(t)523 548 y(to)g(censor)f(is)g(able)h(to)g(matc)n(h)g(a)f
+(request)h(or)f(resp)r(onse)g(against)f(that)j(particular)d(con)n(ten)n
+(t.)523 648 y(ECRS)33 b(is)h(supp)r(osed)f(to)g(protect)g(in)n
+(termediaries)g(that)g(merely)g(transmit)h(information)523
+747 y(and)23 b(that)g(need)g(to)g(b)r(e)g(able)f(to)h(sho)n(w)f(that)h
+(they)g(are)f(unable)h(to)g(recognize)e(ob)5 b(jectionable)523
+847 y(information)27 b(for)g(their)h(o)n(wn)f(protection.)p
+1 0 0 TeXcolorrgb 1865 847 a
 SDict begin H.S end
- 3002 1177 a 0 1 0 TeXcolorrgb FA(8)p 0 1 0
-TeXcolorrgb 3043 1123 a
-SDict begin H.R end
- 3043 1123 a 3043 1177 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.dingledine02mixminion) cvn H.B /ANN pdfmark end
- 3043
-1177 a Black FA(,)p 0 1 0 TeXcolorrgb 3066 1177 a
+ 1865 847 a -30 x Fw(1)1901
+847 y
+SDict begin 12 H.L end
+ 1901 847 a 1901 847 a
+SDict begin [ /Subtype /Link /Dest (Hfootnote.1) cvn /H /I /Border
+[0 0 0] /Color [1 0 0] H.B /ANN pdfmark end
+ 1901 847 a Black 648 972
+a Fx(The)34 b(meaning)f(of)h(censorship)f(resistance)f(used)i(in)h
+(this)f(w)n(ork)e(is)i(a)g(v)-5 b(arian)n(t)33 b(of)h(the)523
+1072 y(formal)c(de\014nition)h(giv)n(en)f(b)n(y)g([)p
+0 1 0 TeXcolorrgb 1520 1072 a
 SDict begin H.S end
- 3066
-1177 a 0 1 0 TeXcolorrgb FA(30)p 0 1 0 TeXcolorrgb 3150
-1123 a
+ 1520 1072 a 0 1 0 TeXcolorrgb
+Fx(21)p 0 1 0 TeXcolorrgb 1603 1018 a
 SDict begin H.R end
- 3150 1123 a 3150 1177 a
+ 1603 1018 a 1603
+1072 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.syverson97anonymous) cvn H.B /ANN pdfmark end
- 3150 1177 a Black FA(].)g(As)g(a)523
-1276 y(con)n(ten)n(t)23 b(enco)r(ding)h(mec)n(hanism,)f(ECRS)g(could)h
-(b)r(e)g(in)n(tegrated)f(in)n(to)g(almost)g(an)n(y)g(generic)523
-1376 y(p)r(eer-to-p)r(eer)30 b(infrastructure)h(to)h(enhance)f(its)h
-(resistance)e(to)i(censorship.)e(Sp)r(eci\014c)i(de-)523
-1475 y(tails)26 b(on)f(ho)n(w)g(p)r(eers)h(comm)n(unicate)f(or)g(route)
-g(data)h(are)f(therefore)g(outside)g(of)h(the)g(scop)r(e)523
-1575 y(of)i(this)f(pap)r(er.)648 1705 y(The)37 b(de\014nition)h(of)f
-(censorship)f(resistance)g(used)i(in)f(this)h(w)n(ork)e(is)h(similar)f
-(to)i(the)523 1805 y(formal)30 b(de\014nition)h(giv)n(en)f(b)n(y)g([)p
-0 1 0 TeXcolorrgb 1520 1805 a
+(cite.perng2005csr) cvn H.B /ANN pdfmark end
+ 1603 1072 a Black Fx(],)h(in)g(whic)n(h)g(censorship)e
+(resistance)h(is)h(de\014ned)g(as)f(the)523 1171 y(inabilit)n(y)e(of)g
+(a)g(censor)e(to)i(restrict)g(a)f(targeted)h(do)r(cumen)n(t)g(while)g
+(allo)n(wing)f(at)h(least)f(one)523 1271 y(other)g(do)r(cumen)n(t)h(to)
+g(b)r(e)h(retriev)n(ed.)d(In)i(the)h(con)n(text)e(of)h([)p
+0 1 0 TeXcolorrgb 2369 1271 a
 SDict begin H.S end
- 1520 1805 a 0 1 0 TeXcolorrgb
-FA(24)p 0 1 0 TeXcolorrgb 1603 1752 a
+ 2369 1271 a 0 1 0 TeXcolorrgb
+Fx(21)p 0 1 0 TeXcolorrgb 2452 1217 a
 SDict begin H.R end
- 1603 1752 a 1603
-1805 a
+ 2452 1217 a 2452
+1271 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.perng2005csr) cvn H.B /ANN pdfmark end
- 1603 1805 a Black FA(],)h(in)g(whic)n(h)g(censorship)e
-(resistance)h(is)h(de\014ned)g(as)f(the)523 1905 y(inabilit)n(y)41
-b(of)f(a)h(censor)e(to)i(restrict)f(a)h(targeted)e(do)r(cumen)n(t)i
-(while)g(allo)n(wing)f(at)g(least)523 2004 y(one)f(other)g(do)r(cumen)n
-(t)h(to)f(b)r(e)h(retriev)n(ed.)e(In)i(the)f(con)n(text)h(of)f([)p
-0 1 0 TeXcolorrgb 2637 2004 a
+ 2452 1271 a Black Fx(],)g(the)g(adv)n(ersary)d(is)j(gran)n(ted)
+523 1370 y(extensiv)n(e)35 b(capabilities.)g(In)h(particular,)f(the)h
+(adv)n(ersary)d(is)i(allo)n(w)n(ed)f(to)i(insp)r(ect)g(ev)n(ery)523
+1470 y(request)g(or)f(resp)r(onse,)h(transcript)g(the)g(pro)r(cessing)f
+(steps)i(of)f(all)g(the)h(p)r(eers)f(and)g(then)523 1570
+y(decide)31 b(whether)f(to)h(\014lter)f(\(drop\))h(a)f(giv)n(en)g(resp)
+r(onse.)f(The)i(primary)e(di\013erence)i(in)g(the)523
+1669 y(adv)n(ersary)h(mo)r(del)j(for)g(ECRS)g(when)g(compared)f(to)g([)
+p 0 1 0 TeXcolorrgb 2296 1669 a
 SDict begin H.S end
- 2637 2004 a 0 1 0 TeXcolorrgb
-FA(24)p 0 1 0 TeXcolorrgb 2720 1951 a
+ 2296 1669 a 0 1 0 TeXcolorrgb
+Fx(21)p 0 1 0 TeXcolorrgb 2379 1616 a
 SDict begin H.R end
- 2720 1951 a 2720
-2004 a
+ 2379 1616 a 2379
+1669 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.perng2005csr) cvn H.B /ANN pdfmark end
- 2720 2004 a Black FA(],)h(the)f(adv)n(ersary)e(is)523
-2104 y(gran)n(ted)26 b(extensiv)n(e)h(capabilities.)g(In)g(particular,)
-g(the)g(adv)n(ersary)e(is)i(allo)n(w)n(ed)f(to)h(insp)r(ect)523
-2204 y(ev)n(ery)33 b(request)g(or)g(resp)r(onse,)g(transcript)g(the)h
-(pro)r(cessing)f(steps)h(of)g(all)f(the)i(p)r(eers)e(and)523
-2303 y(then)27 b(decide)g(whether)g(to)f(\014lter)h(\(drop\))g(a)f(giv)
-n(en)g(resp)r(onse.)g(Av)-5 b(ailabilit)n(y)26 b(of)h(the)g(service)523
-2403 y(and)38 b(anon)n(ymit)n(y)f(of)h(the)h(participan)n(ts)e(are)g
-(sp)r(eci\014cally)h(decoupled)g(from)g(censorship)523
-2502 y(resistance.)32 b(F)-7 b(or)33 b(ECRS,)g(an)g(almost)g(iden)n
-(tical)g(adv)n(ersary)e(mo)r(del)i(is)h(selected)f({)g(while)523
-2602 y(anon)n(ymit)n(y)j(and)h(a)n(v)-5 b(ailabilit)n(y)35
-b(can)i(certainly)f(b)r(e)h(additional)g(\(and)g(often)g(imp)r(ortan)n
-(t\))523 2702 y(goals,)27 b(ECRS)h(is)h(an)f(orthogonal)e(mec)n
-(hanism.)j(The)f(primary)f(di\013erence)i(in)g(the)g(adv)n(er-)523
-2801 y(sary)d(mo)r(del)i(for)f(ECRS)h(is)f(that)h(the)g(attac)n(k)n(er)
-e(is)i(not)f(allo)n(w)n(ed)f(to)i(b)r(e)g(able)f(to)h(guess)f(the)523
-2901 y(exact)c(con)n(ten)n(t)g(that)g(is)h(to)f(b)r(e)h(censored.)e
-(This)h(is)h(an)f(imp)r(ortan)n(t)g(restriction)f(in)i(practice.)523
-3001 y(In)d(the)g(absence)f(of)h(suc)n(h)f(a)g(restriction,)g([)p
-0 1 0 TeXcolorrgb 1821 3001 a
+ 2379 1669 a Black Fx(])i(is)e(that)i(the)f(attac)n(k)n(er)e(is)i
+(not)523 1769 y(allo)n(w)n(ed)28 b(to)g(b)r(e)i(able)e(to)h(guess)f
+(the)i(exact)e(con)n(ten)n(t)h(that)g(is)g(to)f(b)r(e)i(censored.)e
+(This)g(is)h(an)523 1869 y(imp)r(ortan)n(t)c(restriction)e(in)j
+(practice.)e(In)h(the)g(absence)f(of)h(suc)n(h)g(a)f(restriction,)g([)p
+0 1 0 TeXcolorrgb 3063 1869 a
 SDict begin H.S end
- 1821 3001 a 0 1 0 TeXcolorrgb
-FA(24)p 0 1 0 TeXcolorrgb 1904 2947 a
+ 3063 1869 a 0 1 0 TeXcolorrgb
+Fx(21)p 0 1 0 TeXcolorrgb 3146 1815 a
 SDict begin H.R end
- 1904 2947 a 1904
-3001 a
+ 3146 1815 a 3146
+1869 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.perng2005csr) cvn H.B /ANN pdfmark end
- 1904 3001 a Black FA(])h(sho)n(ws)e(that)i(censorship)f
-(resistance)f(requires)523 3100 y(a)27 b(form)h(of)f(priv)-5
-b(ate)28 b(information)f(retriev)-5 b(al)27 b(for)g(whic)n(h)h(eac)n(h)
-f(op)r(eration)f(has)i(complexit)n(y)523 3200 y Fs(O)r
-FA(\()p Fs(n)p FA(\),)h(where)e Fs(n)g FA(is)g(the)h(size)f(of)h(the)f
-(datastore.)f(In)i(return)f(for)g(restricting)f(the)i(guessing)523
-3300 y(capabilities)i(of)h(the)g(adv)n(ersary)-7 b(,)27
-b(ECRS)k(can)f(ac)n(hiev)n(e)f Fs(O)r FA(\(1\))j(complexit)n(y)e(for)g
-(its)g(op)r(era-)523 3399 y(tions.)24 b(Considering)f(that)h
-(scalabilit)n(y)g(is)g(also)f(an)h(imp)r(ortan)n(t)f(goal,)g(w)n(e)h(b)
-r(eliev)n(e)g(that)h(this)523 3499 y(is)j(a)f(reasonable)e
-(trade-o\013.)648 3629 y(As)35 b(an)h(enco)r(ding)f(sc)n(heme,)g(ECRS)g
-(has)g(to)h(address)e(t)n(w)n(o)h(imp)r(ortan)n(t)g(issues.)g(First)523
-3729 y(of)c(all,)g(users)f(m)n(ust)i(b)r(e)f(able)g(to)g(\014nd)h(con)n
-(ten)n(t,)f(preferably)f(b)n(y)h(searc)n(hing)e(with)j(simple,)523
-3828 y(natural)e(language)e(k)n(eyw)n(ords.)g(Metadata)i(related)g(to)g
-(the)g(con)n(ten)n(ts)g(of)g(the)h(\014le)f(should)523
-3928 y(b)r(e)39 b(made)g(a)n(v)-5 b(ailable)37 b(as)h(part)g(of)h(the)g
-(searc)n(h)e(result)i(and)f(prior)g(to)h(the)g(do)n(wnload)e(of)523
-4028 y(the)c(actual)g(\014le.)g(Metadata)f(can)h(include)g(an)n(ything)
-f(from)h(user-pro)n(vided)e(con)n(ten)n(t)h(de-)523 4127
-y(scriptions)i(to)g(th)n(um)n(bnails)g(\(for)g(images\))g(and)g
-(automatically)f(detected)i(mime-t)n(yp)r(es.)523 4227
-y(Secondly)-7 b(,)24 b(the)g(enco)r(ding)f(sc)n(heme)g(should)h(supp)r
-(ort)f(sw)n(arming)f({)i(that)g(is,)f(the)h(do)n(wnload)523
-4327 y(of)j(a)g(\014le)g(from)g(m)n(ultiple)h(p)r(eers.)f(Since)g(it)h
-(is)f(p)r(ossible)g(that)h(iden)n(tical)f(data)f(could)h(b)r(e)h(in-)
-523 4426 y(serted)h(b)n(y)h(man)n(y)f(indep)r(enden)n(t)h(parties,)f
-(the)h(enco)r(ding)g(sc)n(heme)f(should)h(alw)n(a)n(ys)d(result)523
-4526 y(in)j(iden)n(tical)g(enco)r(dings)g(for)g(iden)n(tical)g(source)f
-(\014les.)h(This)g(sp)r(ecial)g(form)f(of)i(encryption)523
-4625 y(w)n(as)d(probably)f(\014rst)i(describ)r(ed)f(in)h([)p
-0 1 0 TeXcolorrgb 1695 4625 a
+ 3146 1869 a Black Fx(])h(sho)n(ws)523 1968 y(that)37
+b(censorship)f(resistance)g(requires)f(a)i(form)g(of)g(priv)-5
+b(ate)36 b(information)h(retriev)-5 b(al)36 b(for)523
+2068 y(whic)n(h)26 b(eac)n(h)g(op)r(eration)g(has)g(complexit)n(y)g
+Fp(O)r Fx(\()p Fp(n)p Fx(\),)h(where)f Fp(n)h Fx(is)f(the)h(size)f(of)h
+(the)f(datastore.)523 2167 y(In)36 b(return)f(for)g(restricting)f(the)i
+(guessing)f(capabilities)g(of)g(the)h(adv)n(ersary)-7
+b(,)33 b(ECRS)i(can)523 2267 y(ac)n(hiev)n(e)c Fp(O)r
+Fx(\(1\))j(complexit)n(y)e(for)g(its)h(op)r(erations.)e(Considering)g
+(that)i(scalabilit)n(y)f(is)g(also)523 2367 y(an)26 b(imp)r(ortan)n(t)h
+(goal,)e(in)i(particular)f(since)g(censorship-resistance)e(for)i(small)
+h(collections)523 2466 y(w)n(ould)g(b)r(e)h(of)g(limited)g(utilit)n(y)
+-7 b(,)28 b(w)n(e)g(b)r(eliev)n(e)f(that)h(this)g(is)f(a)g(reasonable)f
+(trade-o\013.)648 2591 y(As)36 b(a)f(con)n(ten)n(t)h(enco)r(ding)f(mec)
+n(hanism,)g(ECRS)h(could)g(b)r(e)g(in)n(tegrated)f(in)n(to)h(almost)523
+2691 y(an)n(y)31 b(generic)g(p)r(eer-to-p)r(eer)g(infrastructure)f(to)i
+(enhance)g(its)g(resistance)e(to)i(censorship.)523 2791
+y(Sp)r(eci\014c)19 b(details)g(on)g(ho)n(w)f(p)r(eers)h(comm)n(unicate)
+f(or)g(route)g(data)h({)f(ev)n(en)h(though)f(imp)r(ortan)n(t)523
+2890 y(for)37 b(the)h(a)n(v)-5 b(ailabilit)n(y)36 b(of)h(the)h(service)
+e(and)h(the)h(priv)-5 b(acy)36 b(of)i(its)f(users)g({)g(are)f
+(therefore)523 2990 y(orthogonal)25 b(issues)i(outside)h(of)f(the)h
+(scop)r(e)g(of)f(this)h(pap)r(er.)648 3115 y(As)f(an)f(enco)r(ding)h
+(sc)n(heme,)g(ECRS)g(has)f(to)h(address)f(t)n(w)n(o)g(imp)r(ortan)n(t)h
+(issues.)f(First)h(of)523 3215 y(all,)e(users)f(m)n(ust)h(b)r(e)g(able)
+g(to)g(\014nd)g(con)n(ten)n(t,)g(preferably)f(b)n(y)h(searc)n(hing)e
+(with)i(simple,)g(nat-)523 3314 y(ural)30 b(language)f(k)n(eyw)n(ords.)
+f(Metadata)i(related)g(to)h(the)g(con)n(ten)n(ts)f(of)g(the)h(\014le)g
+(should)g(b)r(e)523 3414 y(made)19 b(a)n(v)-5 b(ailable)18
+b(as)h(part)g(of)g(the)h(searc)n(h)e(result)h(and)g(prior)f(to)i(the)f
+(do)n(wnload)f(of)i(the)g(actual)523 3514 y(\014le.)31
+b(Metadata)e(can)h(include)h(an)n(ything)e(from)h(user-pro)n(vided)f
+(con)n(ten)n(t)h(descriptions)f(to)523 3613 y(th)n(um)n(bnails)h(\(for)
+h(images\))e(and)i(automatically)e(detected)i(mime-t)n(yp)r(es.)f
+(Secondly)-7 b(,)31 b(the)523 3713 y(enco)r(ding)25 b(sc)n(heme)g
+(should)g(supp)r(ort)g(sw)n(arming)f({)h(that)h(is,)f(the)h(do)n
+(wnload)e(of)h(a)g(\014le)g(from)523 3812 y(m)n(ultiple)g(p)r(eers.)f
+(Since)g(it)h(is)f(p)r(ossible)g(that)h(iden)n(tical)f(data)g(could)g
+(b)r(e)h(inserted)f(b)n(y)g(man)n(y)523 3912 y(indep)r(enden)n(t)32
+b(parties,)f(the)h(enco)r(ding)f(sc)n(heme)g(should)g(alw)n(a)n(ys)e
+(result)i(in)h(iden)n(tical)f(en-)523 4012 y(co)r(dings)f(for)g(iden)n
+(tical)h(source)e(\014les.)i(This)g(sp)r(ecial)f(form)h(of)f
+(encryption)g(w)n(as)g(probably)523 4111 y(\014rst)21
+b(describ)r(ed)g(in)h([)p 0 1 0 TeXcolorrgb 1163 4111
+a
 SDict begin H.S end
- 1695 4625 a 0 1 0 TeXcolorrgb
-FA(5)p 0 1 0 TeXcolorrgb 1737 4572 a
+ 1163 4111 a 0 1 0 TeXcolorrgb Fx(5)p 0 1 0 TeXcolorrgb
+1205 4058 a
 SDict begin H.R end
- 1737 4572 a 1737
-4625 a
+ 1205 4058 a 1205 4111 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.clark99distributed) cvn H.B /ANN pdfmark end
- 1737 4625 a Black FA(])g(and)f(later)h(termed)f
-Ft(c)l(onver)l(gent)j(encryption)f FA([)p 0 1 0 TeXcolorrgb
-3276 4625 a
+ 1205 4111 a Black
+Fx(])f(and)g(later)g(termed)h Fq(c)l(onver)l(gent)h(encryption)g
+Fx([)p 0 1 0 TeXcolorrgb 2700 4111 a
 SDict begin H.S end
- 3276 4625 a 0 1 0 TeXcolorrgb FA(10)p 0 1 0
-TeXcolorrgb 3359 4572 a
+ 2700 4111 a 0 1 0
+TeXcolorrgb Fx(9)p 0 1 0 TeXcolorrgb 2741 4058 a
 SDict begin H.R end
- 3359 4572 a 3359 4625 a
+ 2741
+4058 a 2741 4111 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.farsite) cvn H.B /ANN pdfmark end
- 3359
-4625 a Black FA(].)523 4725 y(With)k(con)n(v)n(ergen)n(t)c(encryption,)
-j(the)g(existence)f(of)h(m)n(ultiple)g(copies)g(of)f(the)h(same)g(con-)
-523 4825 y(ten)n(t)21 b(can)g(b)r(e)g(detected;)g(this)g(kno)n(wledge)f
-(can)g(then)i(b)r(e)f(used)g(to)g(increase)e(fault-tolerance,)523
-4924 y(p)r(erformance)27 b(and)g(a)n(v)-5 b(ailabilit)n(y)e(.)p
-Black Black eop end
+ 2741 4111 a Black Fx(].)f(With)g(con)n(v)n(ergen)n
+(t)523 4211 y(encryption,)h(the)h(existence)f(of)h(m)n(ultiple)g
+(copies)f(of)g(the)h(same)f(con)n(ten)n(t)g(can)g(b)r(e)h(detected;)p
+Black 523 4382 473 4 v 546 4436 a Fv(1)p 0 TeXcolorgray
+606 4376 a
+SDict begin H.S end
+ 606 4376 a 0 TeXcolorgray 0 TeXcolorgray 606
+4376 a
+SDict begin H.R end
+ 606 4376 a 606 4376 a
+SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.1) cvn H.B /DEST pdfmark
+end
+ 606 4376 a Black 92 x Fu(If)19
+b(the)g(data)g(cannot)g(b)r(e)f(iden)n(ti\014ed,)h(editorial)h(con)n
+(trol)g(is)f(tec)n(hnically)g(imp)r(ossible.)i(In)d Fo(Str)l(atton)606
+4559 y(Oakmont)36 b(v.)g(Pr)l(o)l(digy)p Fu(,)g(an)e(In)n(ternet)f(pro)
+n(vider)h(w)n(as)i(found)e(liable)i(for)f(hosting)g(a)g(bulletin)606
+4650 y(b)r(oard)29 b(on)h(whic)n(h)f(o\013ensiv)n(e)g(messages)i(had)e
+(b)r(een)g(p)r(osted.)h(This)g(\014nding)e(resulted)h(b)r(ecause)606
+4742 y(the)g(pro)n(vider)g(had)g(hired)g(individuals)h(to)f(exercise)i
+(editorial)f(con)n(trol)g(o)n(v)n(er)g(con)n(ten)n(t.)f(If)g(the)606
+4833 y(pro)n(vider)17 b(had)g(merely)h(published)f(messages)j(from)e
+(users)g(without)g(in)n(terference,)g(the)f(pro)n(vider)606
+4924 y(w)n(ould)26 b(p)r(oten)n(tially)g(not)g(ha)n(v)n(e)f(b)r(een)g
+(held)h(accoun)n(table)g([)p 0 1 0 TeXcolorrgb 2319 4924
+a
+SDict begin H.S end
+ 2319 4924 a 0 1 0 TeXcolorrgb Fu(26)p 0 1 0 TeXcolorrgb
+2396 4876 a
+SDict begin H.R end
+ 2396 4876 a 2396 4924 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.stratton_oakmont) cvn H.B /ANN pdfmark end
+ 2396 4924 a Black
+Fu(].)p Black Black Black eop end
 %%Page: 3 3
 TeXDict begin 3 2 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
@@ -6088,382 +5557,352 @@
  523 232 a 523 232 a
 SDict begin [ /View [/XYZ H.V] /Dest (page.3) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
+ 523 232 a Black 1036 w Fu(An)25
 b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
-b(3)p Black 648 448 a FA(Unfortunately)-7 b(,)26 b(it)g(is)g(not)g
-(enough)g(to)g(just)g(meet)h(requiremen)n(ts)e(related)g(to)h
-(e\016cien)n(t)523 548 y(storage)c(and)h(retriev)-5 b(al)22
-b(of)i(the)g(con)n(ten)n(t.)f(A)h(public)g(\014lesharing)e(net)n(w)n
-(ork)g(should)h(b)r(e)h(op)r(en)523 648 y(to)33 b(new)g(participan)n
-(ts)g(without)g(an)n(y)g(restrictiv)n(e)f(form)h(of)g(access)f(con)n
-(trol.)g(This)h(op)r(ens)523 747 y(the)c(net)n(w)n(ork)f(to)g
-(malicious)g(participan)n(ts.)g(Th)n(us,)h(the)g(enco)r(ding)g(sc)n
-(heme)f(should)h(guar-)523 847 y(an)n(tee)24 b(the)g
-Ft(inte)l(grity)h FA(of)f(the)h(con)n(ten)n(t,)f(ev)n(en)g(in)g(the)h
-(presence)e(of)h(malicious)g(participan)n(ts.)523 946
-y(The)i(enco)r(ding)f(mec)n(hanism)h(m)n(ust)g(ensure)f(that)h(in)n(v)
--5 b(alid)26 b(replies)f(are)g(detected)h(and)g(that)523
-1046 y(p)r(eers)35 b(can)h(distinguish)g(v)-5 b(aluable)35
+b(3)p Black 523 448 a Fx(this)35 b(kno)n(wledge)f(can)h(then)h(b)r(e)f
+(used)g(to)g(increase)f(fault-tolerance,)g(p)r(erformance)g(and)523
+548 y(a)n(v)-5 b(ailabilit)n(y)e(.)648 770 y(Unfortunately)g(,)26
+b(it)g(is)g(not)g(enough)g(to)g(just)g(meet)h(requiremen)n(ts)e
+(related)g(to)h(e\016cien)n(t)523 870 y(storage)c(and)h(retriev)-5
+b(al)22 b(of)i(the)g(con)n(ten)n(t.)f(A)h(public)g(\014lesharing)e(net)
+n(w)n(ork)g(should)h(b)r(e)h(op)r(en)523 970 y(to)33
+b(new)g(participan)n(ts)g(without)g(an)n(y)g(restrictiv)n(e)f(form)h
+(of)g(access)f(con)n(trol.)g(This)h(op)r(ens)523 1069
+y(the)c(net)n(w)n(ork)f(to)g(malicious)g(participan)n(ts.)g(Th)n(us,)h
+(the)g(enco)r(ding)g(sc)n(heme)f(should)h(guar-)523 1169
+y(an)n(tee)24 b(the)g Fq(inte)l(grity)h Fx(of)f(the)h(con)n(ten)n(t,)f
+(ev)n(en)g(in)g(the)h(presence)e(of)h(malicious)g(participan)n(ts.)523
+1268 y(The)i(enco)r(ding)f(mec)n(hanism)h(m)n(ust)g(ensure)f(that)h(in)
+n(v)-5 b(alid)26 b(replies)f(are)g(detected)h(and)g(that)523
+1368 y(p)r(eers)35 b(can)h(distinguish)g(v)-5 b(aluable)35
 b(con)n(ten)n(t)h(from)f(maliciously)g(generated)g(noise.)g(This)523
-1146 y(is)30 b(particularly)e(imp)r(ortan)n(t)h(in)h(three)g(cases.)e
+1468 y(is)30 b(particularly)e(imp)r(ortan)n(t)h(in)h(three)g(cases.)e
 (First,)i(if)g(large)e(\014les)i(are)f(assem)n(bled)f(using)523
-1245 y(blo)r(c)n(ks)35 b(from)h(m)n(ultiple)h(p)r(eers,)f(some)f(of)h
+1567 y(blo)r(c)n(ks)35 b(from)h(m)n(ultiple)h(p)r(eers,)f(some)f(of)h
 (these)g(p)r(eers)g(ma)n(y)f(b)r(e)i(malicious)e(and)h(try)g(to)523
-1345 y(corrupt)g(the)g(\014le.)h(These)f(corruptions)f(should)h(b)r(e)h
-(detected)g(on)f(a)g(small)g(gran)n(ularit)n(y)523 1445
+1667 y(corrupt)g(the)g(\014le.)h(These)f(corruptions)f(should)h(b)r(e)h
+(detected)g(on)f(a)g(small)g(gran)n(ularit)n(y)523 1767
 y(lev)n(el)f(and)g(repaired)f(with)i(correct)e(data)h(from)g(other)f(p)
-r(eers.)h(Second,)g(for)g(searc)n(hes)f(it)523 1544 y(should)i(b)r(e)h
+r(eers.)h(Second,)g(for)g(searc)n(hes)f(it)523 1866 y(should)i(b)r(e)h
 (di\016cult)h(for)e(p)r(eers)g(to)g(spam)h(the)f(result)h(set;)f
-(otherwise,)g(the)h(users)f(ma)n(y)523 1644 y(dro)n(wn)i(in)h(useless)g
+(otherwise,)g(the)h(users)f(ma)n(y)523 1966 y(dro)n(wn)i(in)h(useless)g
 (information.)f(Finally)-7 b(,)39 b(in)n(termediaries)f(that)h(are)f
-(merely)h(routing)523 1743 y(the)32 b(con)n(ten)n(t)e(should)h(b)r(e)h
+(merely)h(routing)523 2065 y(the)32 b(con)n(ten)n(t)e(should)h(b)r(e)h
 (able)f(to)g(detect)g(in)n(v)-5 b(alid)31 b(replies.)g(This)g(enables)g
-(the)g(existence)523 1843 y(of)h(lo)r(cal)g(economies)f(\(suc)n(h)h(as)
-f(those)h(in)h([)p 0 1 0 TeXcolorrgb 1897 1843 a
+(the)g(existence)523 2165 y(of)h(lo)r(cal)g(economies)f(\(suc)n(h)h(as)
+f(those)h(in)h([)p 0 1 0 TeXcolorrgb 1897 2165 a
 SDict begin H.S end
  1897
-1843 a 0 1 0 TeXcolorrgb FA(13)p 0 1 0 TeXcolorrgb 1980
-1790 a
+2165 a 0 1 0 TeXcolorrgb Fx(11)p 0 1 0 TeXcolorrgb 1980
+2112 a
 SDict begin H.R end
- 1980 1790 a 1980 1843 a
+ 1980 2112 a 1980 2165 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.ebe2003) cvn H.B /ANN pdfmark end
- 1980 1843 a Black FA(]\))f(and)g(prev)n
-(en)n(ts)f(the)i(retransmission)d(and)523 1943 y(replication)d(of)g
+ 1980 2165 a Black Fx(]\))f(and)g(prev)n
+(en)n(ts)f(the)i(retransmission)d(and)523 2265 y(replication)d(of)g
 (corrupted)g(data)g(b)n(y)g(non-malicious)g(p)r(eers.)648
-2044 y(This)20 b(pap)r(er)h(in)n(tro)r(duces)f(the)h(primitiv)n(es)g
+2487 y(This)20 b(pap)r(er)h(in)n(tro)r(duces)f(the)h(primitiv)n(es)g
 (that)g(ECRS)f(uses)h(to)g(ac)n(hiev)n(e)e(these)i(goals:)e(a)523
-2144 y(sp)r(eci\014c)26 b(altered)e(v)-5 b(arian)n(t)25
+2587 y(sp)r(eci\014c)26 b(altered)e(v)-5 b(arian)n(t)25
 b(of)g(the)h(Con)n(ten)n(t)f(Hash)g(Key)g(\(CHK\),)h(a)f(primitiv)n(e)g
-(used)h(in)f([)p 0 1 0 TeXcolorrgb 3317 2144 a
+(used)h(in)f([)p 0 1 0 TeXcolorrgb 3317 2587 a
 SDict begin H.S end
- 3317 2144
-a 0 1 0 TeXcolorrgb FA(5)p 0 1 0 TeXcolorrgb 3359 2090
+ 3317 2587
+a 0 1 0 TeXcolorrgb Fx(5)p 0 1 0 TeXcolorrgb 3359 2533
 a
 SDict begin H.R end
- 3359 2090 a 3359 2144 a
+ 3359 2533 a 3359 2587 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.clark99distributed) cvn H.B /ANN pdfmark end
- 3359 2144 a Black FA(],)523
-2244 y(and)e Ft(KBlo)l(cks)p FA(,)h(a)e(no)n(v)n(el)g(construction)g
+ 3359 2587 a Black Fx(],)523
+2686 y(and)e Fq(KBlo)l(cks)p Fx(,)h(a)e(no)n(v)n(el)g(construction)g
 (whic)n(h)h(adds)f(functionalit)n(y)h(to)g(the)g(ECRS)f(sc)n(heme)523
-2343 y(while)27 b(a)n(v)n(oiding)e(a)i(prop)r(osed)f(attac)n(k)g(on)g
+2786 y(while)27 b(a)n(v)n(oiding)e(a)i(prop)r(osed)f(attac)n(k)g(on)g
 (the)i(triple-hash)e(primitiv)n(e)g(used)h(in)h([)p 0 1 0
-TeXcolorrgb 3078 2343 a
+TeXcolorrgb 3078 2786 a
 SDict begin H.S end
- 3078 2343 a 0 1 0 TeXcolorrgb
-FA(2)p 0 1 0 TeXcolorrgb 3119 2290 a
+ 3078 2786 a 0 1 0 TeXcolorrgb
+Fx(3)p 0 1 0 TeXcolorrgb 3119 2732 a
 SDict begin H.R end
- 3119 2290 a 3119
-2343 a
+ 3119 2732 a 3119
+2786 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.esed) cvn H.B /ANN pdfmark end
- 3119 2343 a Black FA(].)f(These)523 2443 y(primitiv)n(es)k(allo)
+ 3119 2786 a Black Fx(].)f(These)523 2886 y(primitiv)n(es)k(allo)
 n(w)f(data)g(to)h(b)r(e)h(inserted)e(under)h(m)n(ultiple)h
-(natural-language)c(k)n(eyw)n(ords)523 2542 y(at)g(minimal)h(cost)f(in)
+(natural-language)c(k)n(eyw)n(ords)523 2985 y(at)g(minimal)h(cost)f(in)
 h(space,)f(and)g(queried)g(using)g(natural)g(language)f(b)r(o)r(olean)h
-(searc)n(hes.)523 2642 y(F)-7 b(urthermore,)27 b(the)i(primitiv)n(es)f
+(searc)n(hes.)523 3085 y(F)-7 b(urthermore,)27 b(the)i(primitiv)n(es)f
 (giv)n(e)f(ECRS)h(the)h(means)f(to)g(iden)n(tify)-7 b(,)29
-b(encrypt,)f(decrypt)523 2742 y(and)33 b(v)n(erify)f(data,)g(all)h
+b(encrypt,)f(decrypt)523 3184 y(and)33 b(v)n(erify)f(data,)g(all)h
 (while)g(a)n(v)n(oiding)e(attac)n(ks)g(b)n(y)i(a)f(non-guessing)f(in)n
-(termediate)i(ad-)523 2841 y(v)n(ersary)-7 b(.)29 b(V)-7
+(termediate)i(ad-)523 3284 y(v)n(ersary)-7 b(.)29 b(V)-7
 b(eri\014cation)30 b(of)h(con)n(ten)n(t)g(b)n(y)g(in)n(termediate)f
-(hosts)h(is)g(made)g(p)r(ossible)g(without)523 2941 y(rev)n(ealing)i
+(hosts)h(is)g(made)g(p)r(ossible)g(without)523 3384 y(rev)n(ealing)i
 (the)i(k)n(eys)f(necessary)f(to)i(decrypt)f(con)n(ten)n(t,)h(and)g(the)
-g(amoun)n(t)f(of)h(data)f(cor-)523 3041 y(ruption)28
+g(amoun)n(t)f(of)h(data)f(cor-)523 3483 y(ruption)28
 b(an)f(adv)n(ersary)e(can)j(inject)g(b)r(efore)g(b)r(eing)g(detected)g
-(is)g(limited)h(to)e(a)h(small)f(size.)523 3140 y(Additionally)-7
+(is)g(limited)h(to)e(a)h(small)f(size.)523 3583 y(Additionally)-7
 b(,)34 b(the)g(construction)f(of)h(these)g(primitiv)n(es)g(mak)n(es)e
-(ECRS)i(quite)g(scalable,)523 3240 y(and)24 b(assists)f(the)h(enco)r
+(ECRS)i(quite)g(scalable,)523 3683 y(and)24 b(assists)f(the)h(enco)r
 (ding)g(sc)n(heme)g(in)g(encouraging)e(load-balancing,)g(distribution)i
-(and)523 3339 y(replication)i(of)g(con)n(ten)n(t,)g(and)h(sw)n(arming.)
+(and)523 3782 y(replication)i(of)g(con)n(ten)n(t,)g(and)h(sw)n(arming.)
 d(These)j(primitiv)n(es)f(\(and)g(their)h(functionalit)n(y\))523
-3439 y(are)g(describ)r(ed)g(in)h(greater)e(detail)h(later)g(in)h(the)g
-(pap)r(er.)648 3541 y(The)e(rest)f(of)i(the)f(pap)r(er)g(is)g
+3882 y(are)g(describ)r(ed)g(in)h(greater)e(detail)h(later)g(in)h(the)g
+(pap)r(er.)648 4104 y(The)e(rest)f(of)i(the)f(pap)r(er)g(is)g
 (organized)e(as)i(follo)n(ws.)f(Section)p 1 0 0 TeXcolorrgb
-2582 3541 a
+2582 4104 a
 SDict begin H.S end
- 2582 3541 a 1 0 0 TeXcolorrgb FA(2)p 1 0 0
-TeXcolorrgb 2624 3487 a
+ 2582 4104 a 1 0 0 TeXcolorrgb Fx(2)p 1 0 0
+TeXcolorrgb 2624 4051 a
 SDict begin H.R end
- 2624 3487 a 2624 3541 a
+ 2624 4051 a 2624 4104 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (section.1.2) cvn H.B /ANN pdfmark end
  2624
-3541 a Black 26 w FA(con)n(trasts)f(the)j(curren)n(t)523
-3640 y(w)n(ork)e(with)i(mec)n(hanisms)e(used)h(in)h(other)f
+4104 a Black 26 w Fx(con)n(trasts)f(the)j(curren)n(t)523
+4204 y(w)n(ork)e(with)i(mec)n(hanisms)e(used)h(in)h(other)f
 (censorship-resistan)n(t)d(systems.)j(Section)p 1 0 0
-TeXcolorrgb 3226 3640 a
+TeXcolorrgb 3226 4204 a
 SDict begin H.S end
- 3226 3640 a 1 0 0 TeXcolorrgb
-FA(3)p 1 0 0 TeXcolorrgb 3268 3587 a
+ 3226 4204 a 1 0 0 TeXcolorrgb
+Fx(3)p 1 0 0 TeXcolorrgb 3268 4150 a
 SDict begin H.R end
- 3268 3587 a 3268
-3640 a
+ 3268 4150 a 3268
+4204 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (section.1.3) cvn H.B /ANN pdfmark end
- 3268 3640 a Black 26 w FA(de-)523 3740 y(scrib)r(es)j(the)g
-(ECRS)h(enco)r(ding)e(sc)n(heme)h(in)h(detail.)f(Section)p
-1 0 0 TeXcolorrgb 2476 3740 a
+ 3268 4204 a Black 26 w Fx(de-)523 4303 y(scrib)r(es)e(the)h
+(ECRS)g(enco)r(ding)f(sc)n(heme)h(in)g(detail.)f(Finally)-7
+b(,)25 b(Section)p 1 0 0 TeXcolorrgb 2735 4303 a
 SDict begin H.S end
- 2476 3740 a 1 0 0 TeXcolorrgb
-FA(4)p 1 0 0 TeXcolorrgb 2517 3686 a
+ 2735
+4303 a 1 0 0 TeXcolorrgb Fx(4)p 1 0 0 TeXcolorrgb 2776
+4250 a
 SDict begin H.R end
- 2517 3686 a 2517
-3740 a
+ 2776 4250 a 2776 4303 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (section.1.4) cvn H.B /ANN pdfmark end
- 2517 3740 a Black 29 w FA(lists)h(some)f(extensions)f(to)523
-3840 y(the)f(basic)g(sc)n(heme.)g(Finally)-7 b(,)27 b(Section)p
-1 0 0 TeXcolorrgb 1768 3840 a
+ 2776 4303 a Black 25 w
+Fx(discusses)f(attac)n(ks)523 4403 y(on)j(ECRS)h(and)f(con)n(trasts)f
+(it)i(with)g(previous)f(w)n(ork.)648 4625 y(This)d(w)n(ork)f(builds)h
+(on)g(our)g(earlier)f(pap)r(er)h([)p 0 1 0 TeXcolorrgb
+2036 4625 a
 SDict begin H.S end
- 1768 3840 a 1 0 0 TeXcolorrgb
-FA(5)p 1 0 0 TeXcolorrgb 1809 3786 a
+ 2036 4625 a 0 1 0 TeXcolorrgb Fx(3)p 0 1 0
+TeXcolorrgb 2077 4572 a
 SDict begin H.R end
- 1809 3786 a 1809
-3840 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(section.1.5) cvn H.B /ANN pdfmark end
- 1809 3840 a Black 27 w FA(discusses)g(attac)n(ks)f(on)g(ECRS)h
-(and)g(con)n(trasts)f(it)523 3939 y(with)i(previous)f(w)n(ork.)648
-4041 y(This)d(w)n(ork)f(builds)h(on)g(our)g(earlier)f(pap)r(er)h([)p
-0 1 0 TeXcolorrgb 2036 4041 a
+ 2077 4572 a 2077 4625 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.esed) cvn H.B /ANN pdfmark end
+ 2077
+4625 a Black Fx(])h(whic)n(h)f(w)n(as)f(\014rst)h(published)h(at)f(A)n
+(CISP)523 4725 y(2001.)i(Ho)n(w)n(ev)n(er,)g(the)i(enco)r(ding)f(sc)n
+(heme)g(presen)n(ted)g(in)h(this)g(pap)r(er)f(is)h(signi\014can)n(tly)f
+(dif-)523 4825 y(feren)n(t)j(and)h(only)f(shares)f(the)i(use)f(of)g(a)g
+(Merkle)g(tree)g([)p 0 1 0 TeXcolorrgb 2297 4825 a
 SDict begin H.S end
- 2036 4041 a 0 1 0 TeXcolorrgb
-FA(2)p 0 1 0 TeXcolorrgb 2077 3987 a
+ 2297
+4825 a 0 1 0 TeXcolorrgb Fx(19)p 0 1 0 TeXcolorrgb 2380
+4771 a
 SDict begin H.R end
- 2077 3987 a 2077
-4041 a
+ 2380 4771 a 2380 4825 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.esed) cvn H.B /ANN pdfmark end
- 2077 4041 a Black FA(])h(whic)n(h)f(w)n(as)f(\014rst)h
-(published)h(at)f(A)n(CISP)523 4141 y(2001.)33 b(Since)h(then,)h(the)g
-(enco)r(ding)f(sc)n(heme)g(has)g(b)r(een)h(revised)e(to)h(address)g
-(additional)523 4240 y(requiremen)n(ts)29 b(an)h(to)h(impro)n(v)n(e)e
-(the)i(securit)n(y)e(in)i(v)-5 b(arious)29 b(asp)r(ects.)h(This)h(pap)r
-(er)f(re\015ects)523 4340 y(these)e(c)n(hanges.)523 4513
-y
+(cite.merkle89tree) cvn H.B /ANN pdfmark end
+ 2380 4825 a Black Fx(])h(with)g(the)g
+(original)d(prop)r(osal.)523 4924 y(The)g(c)n(hanges)e(impro)n(v)n(e)g
+(v)-5 b(arious)26 b(asp)r(ects)i(of)f(the)h(securit)n(y)f(of)g(the)h
+(enco)r(ding.)p Black Black eop end
+%%Page: 4 4
+TeXDict begin 4 3 bop 0 0 a
+SDict begin /product where{pop product(Distiller)search{pop pop pop
+version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
+closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
+grestore}if}{pop}ifelse}{pop}ifelse}if end
+ 0 0 a Black 0 TeXcolorgray
+523 232 a
 SDict begin H.S end
- 523 4513 a 523 4513 a
+ 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
+232 a
+SDict begin H.R end
+ 523 232 a 523 232 a
+SDict begin [ /View [/XYZ H.V] /Dest (page.4) cvn H.B /DEST pdfmark
+end
+ 523 232 a Black Fu(4)237 b(C.)27
+b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
+Black 523 365 a
+SDict begin H.S end
+ 523 365 a 523 365 a
 SDict begin 12 H.A end
- 523 4513 a 523 4513 a
+ 523 365 a 523 365
+a
 SDict begin [ /View [/XYZ H.V] /Dest (section.1.2) cvn H.B /DEST pdfmark
 end
- 523 4513
-a 102 x Fu(2)112 b(Related)38 b(W)-9 b(ork)523 4825 y
-FA(A)40 b(large)f(n)n(um)n(b)r(er)g(of)h(censorship-resistan)n(t)d
-(\(or)j(at)f(least)h(fault-toleran)n(t\))f(publishing)523
-4924 y(systems)30 b(ha)n(v)n(e)f(b)r(een)h(prop)r(osed)f(in)i(recen)n
-(t)e(y)n(ears)g([)p 0 1 0 TeXcolorrgb 2170 4924 a
+ 523 365 a 83 x Fr(2)112 b(Related)38 b(W)-9 b(ork)523
+668 y Fx(A)23 b(large)d(n)n(um)n(b)r(er)i(of)g(censorship-resistan)n(t)
+e(\(or)h(at)h(least)g(fault-toleran)n(t\))g(publishing)g(sys-)523
+767 y(tems)g(ha)n(v)n(e)f(b)r(een)i(prop)r(osed)e(in)h(recen)n(t)g(y)n
+(ears)e([)p 0 1 0 TeXcolorrgb 2004 767 a
 SDict begin H.S end
- 2170
-4924 a 0 1 0 TeXcolorrgb FA(1)p 0 1 0 TeXcolorrgb 2211
-4871 a
+ 2004 767 a 0 1 0
+TeXcolorrgb Fx(1)p 0 1 0 TeXcolorrgb 2046 714 a
 SDict begin H.R end
- 2211 4871 a 2211 4924 a
+ 2046
+714 a 2046 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.anderson96eternity) cvn H.B /ANN pdfmark end
- 2211 4924 a Black FA(,)p
-0 1 0 TeXcolorrgb 2234 4924 a
+ 2046 767 a Black Fx(,)p 0 1 0 TeXcolorrgb
+2069 767 a
 SDict begin H.S end
- 2234 4924 a 0 1 0 TeXcolorrgb
-FA(4)p 0 1 0 TeXcolorrgb 2276 4871 a
+ 2069 767 a 0 1 0 TeXcolorrgb Fx(4)p 0 1 0
+TeXcolorrgb 2110 714 a
 SDict begin H.R end
- 2276 4871 a 2276
-4924 a
+ 2110 714 a 2110 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.chen99prototype) cvn H.B /ANN pdfmark end
- 2276 4924 a Black FA(,)p 0 1 0 TeXcolorrgb 2299
-4924 a
+ 2110 767
+a Black Fx(,)p 0 1 0 TeXcolorrgb 2133 767 a
 SDict begin H.S end
- 2299 4924 a 0 1 0 TeXcolorrgb FA(5)p 0 1 0 TeXcolorrgb
-2341 4871 a
+ 2133 767
+a 0 1 0 TeXcolorrgb Fx(5)p 0 1 0 TeXcolorrgb 2175 714
+a
 SDict begin H.R end
- 2341 4871 a 2341 4924 a
+ 2175 714 a 2175 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.clark99distributed) cvn H.B /ANN pdfmark end
- 2341 4924 a Black
-FA(,)p 0 1 0 TeXcolorrgb 2364 4924 a
+ 2175 767 a Black Fx(,)p 0 1 0
+TeXcolorrgb 2198 767 a
 SDict begin H.S end
- 2364 4924 a 0 1 0
-TeXcolorrgb FA(9)p 0 1 0 TeXcolorrgb 2405 4871 a
+ 2198 767 a 0 1 0 TeXcolorrgb Fx(13)p
+0 1 0 TeXcolorrgb 2281 714 a
 SDict begin H.R end
- 2405
-4871 a 2405 4924 a
+ 2281 714 a 2281 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.freehaven-berk) cvn H.B /ANN pdfmark end
- 2405 4924 a Black FA(,)p 0 1 0 TeXcolorrgb
-2428 4924 a
-SDict begin H.S end
- 2428 4924 a 0 1 0 TeXcolorrgb FA(11)p 0 1 0
-TeXcolorrgb 2511 4871 a
-SDict begin H.R end
- 2511 4871 a 2511 4924 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.feamster-infranet) cvn H.B /ANN pdfmark end
- 2511
-4924 a Black FA(,)p 0 1 0 TeXcolorrgb 2534 4924 a
-SDict begin H.S end
- 2534
-4924 a 0 1 0 TeXcolorrgb FA(16)p 0 1 0 TeXcolorrgb 2617
-4871 a
-SDict begin H.R end
- 2617 4871 a 2617 4924 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.herlihy87how) cvn H.B /ANN pdfmark end
- 2617 4924 a Black FA(,)p
-0 1 0 TeXcolorrgb 2640 4924 a
+ 2281
+767 a Black Fx(,)p 0 1 0 TeXcolorrgb 2304 767 a
 SDict begin H.S end
- 2640 4924 a 0 1 0 TeXcolorrgb
-FA(31)p 0 1 0 TeXcolorrgb 2723 4871 a
+ 2304
+767 a 0 1 0 TeXcolorrgb Fx(27)p 0 1 0 TeXcolorrgb 2387
+714 a
 SDict begin H.R end
- 2723 4871 a 2723
-4924 a
+ 2387 714 a 2387 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.waldman2001tangler) cvn H.B /ANN pdfmark end
- 2723 4924 a Black FA(,)p 0 1 0 TeXcolorrgb 2746
-4924 a
+ 2387 767 a Black Fx(,)p 0 1 0
+TeXcolorrgb 2410 767 a
 SDict begin H.S end
- 2746 4924 a 0 1 0 TeXcolorrgb FA(32)p 0 1 0 TeXcolorrgb
-2829 4871 a
+ 2410 767 a 0 1 0 TeXcolorrgb Fx(28)p
+0 1 0 TeXcolorrgb 2493 714 a
 SDict begin H.R end
- 2829 4871 a 2829 4924 a
+ 2493 714 a 2493 767 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.pub00) cvn H.B /ANN pdfmark end
- 2829 4924 a Black
-FA(].)i(The)f(prop)r(osed)p Black Black eop end
-%%Page: 4 4
-TeXDict begin 4 3 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
+ 2493
+767 a Black Fx(].)i(The)g(prop)r(osed)f(proto)r(cols)523
+867 y(di\013er)33 b(in)f(v)-5 b(arious)32 b(asp)r(ects)g(unrelated)g
+(to)g(the)h(sp)r(eci\014cs)f(of)h(the)f(enco)r(ding)g(mec)n(hanism,)523
+966 y(suc)n(h)23 b(as)g(con)n(ten)n(t)f(replication)h(and)g(the)h(use)f
+(of)g(anon)n(ymous)f(or)g(steganographic)f(comm)n(u-)523
+1066 y(nication.)29 b(Characteristic)g(of)g(all)h(of)f(these)h(systems)
+f(is)h(the)g(use)g(of)f(replication)g(and)h(the)523 1166
+y(need)h(to)g(ensure)g(data)g(in)n(tegrit)n(y)-7 b(.)30
+b(F)-7 b(or)30 b(an)h(o)n(v)n(erview)e(of)i(con)n(ten)n(t)g
+(replication)f(strategies)523 1265 y(see)f([)p 0 1 0
+TeXcolorrgb 682 1265 a
 SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
+ 682 1265 a 0 1 0 TeXcolorrgb Fx(6)p
+0 1 0 TeXcolorrgb 724 1212 a
 SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.4) cvn H.B /DEST pdfmark
-end
- 523 232 a Black Fx(4)237 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(proto)r(cols)18 b(di\013er)i(in)g(v)-5
-b(arious)18 b(asp)r(ects)h(unrelated)g(to)h(the)f(sp)r(eci\014cs)h(of)f
-(the)h(enco)r(ding)f(mec)n(h-)523 548 y(anism,)28 b(suc)n(h)g(as)f(con)
-n(ten)n(t)h(replication)f(and)h(the)g(use)g(of)g(anon)n(ymous)e(or)i
-(steganographic)523 648 y(comm)n(unication.)33 b(Characteristic)g(of)h
-(all)g(of)g(these)g(systems)f(is)h(the)h(use)f(of)g(replication)523
-747 y(and)i(the)h(need)f(to)h(ensure)e(data)h(in)n(tegrit)n(y)-7
-b(.)36 b(F)-7 b(or)35 b(an)h(o)n(v)n(erview)f(of)h(con)n(ten)n(t)g
-(replication)523 847 y(strategies)26 b(see)h([)p 0 1 0
-TeXcolorrgb 1050 847 a
-SDict begin H.S end
- 1050 847 a 0 1 0 TeXcolorrgb FA(6)p
-0 1 0 TeXcolorrgb 1091 793 a
-SDict begin H.R end
- 1091 793 a 1091 847 a
+ 724 1212 a 724 1265 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.cohen02replication) cvn H.B /ANN pdfmark end
- 1091
-847 a Black FA(].)h(The)f(censorship-resistan)n(t)e(systems)i(all)g
-(use)g(some)g(form)g(of)g(con)n(ten)n(t)523 946 y(enco)r(ding)g(to)h
-(hide)g(the)g(sp)r(eci\014cs)f(of)h(the)g(con)n(ten)n(t)f(from)g(the)h
-(serv)n(ers.)523 1100 y
+ 724
+1265 a Black Fx(].)g(The)h(censorship-resistan)n(t)c(systems)j(all)g
+(use)g(some)g(form)g(of)g(con)n(ten)n(t)g(enco)r(ding)523
+1365 y(to)22 b(hide)h(the)f(sp)r(eci\014cs)g(of)h(the)f(con)n(ten)n(t)g
+(from)g(the)h(mac)n(hines)e(whic)n(h)h(are)g(storing)f(the)h(data.)523
+1546 y
 SDict begin H.S end
- 523 1100 a 523 1100 a
+ 523 1546 a 523 1546 a
 SDict begin 12 H.A end
- 523 1100
-a 523 1100 a
+ 523 1546 a 523 1546 a
 SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.1) cvn H.B /DEST
 pdfmark end
- 523 1100 a 84 x Fr(2.1)95 b(F)-8 b(reenet)523
-1338 y FA(The)30 b(main)f(con)n(ten)n(t)h(enco)r(ding)f(sc)n(heme)g
-(used)h(in)g(F)-7 b(reenet)30 b([)p 0 1 0 TeXcolorrgb
-2452 1338 a
+ 523
+1546 a 88 x Fn(2.1)95 b(F)-8 b(reenet)523 1820 y Fx(Con)n(ten)n(t)30
+b(hash)f(k)n(eys)g(\(CHK\),)h(the)g(use)g(of)g(the)g(hash)f(of)h(the)g
+(con)n(ten)n(t)g(as)f(an)h(encryption)523 1920 y(k)n(ey)-7
+b(,)30 b(are)f(the)i(main)f(con)n(ten)n(t)g(enco)r(ding)g(sc)n(heme)g
+(used)g(in)g(F)-7 b(reenet)31 b([)p 0 1 0 TeXcolorrgb
+2739 1920 a
 SDict begin H.S end
- 2452 1338 a 0 1 0 TeXcolorrgb FA(5)p 0 1 0
-TeXcolorrgb 2493 1284 a
+ 2739 1920 a 0 1 0 TeXcolorrgb Fx(5)p 0 1 0
+TeXcolorrgb 2780 1866 a
 SDict begin H.R end
- 2493 1284 a 2493 1338 a
+ 2780 1866 a 2780 1920 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.clark99distributed) cvn H.B /ANN pdfmark end
- 2493
-1338 a Black FA(])g(uses)f(CHKs:)h(the)g(hash)f(of)523
-1437 y(the)e(con)n(ten)n(t)f(is)g(used)g(as)g(the)g(k)n(ey)-7
-b(.)26 b(F)-7 b(reenet)26 b(has)g(sev)n(eral)e(other)i(t)n(yp)r(es)g
-(of)g(k)n(eys)g(whic)n(h)g(are)523 1537 y(used)e(to)f(refer)g(the)h
-(user)f(to)g(con)n(ten)n(t-hash)g(k)n(eys.)f(These)i(di\013eren)n(t)f
-(k)n(ey)g(t)n(yp)r(es)h(are)f(used)g(to)523 1637 y(allo)n(w)e
-(additional)h(features)g(suc)n(h)g(as)g(con)n(ten)n(t)g(signing,)g(p)r
-(ersonal)f(namespaces)h(and)g(split-)523 1736 y(ting)28
-b(of)g(con)n(ten)n(t.)f(F)-7 b(reenet's)28 b(CHK)g(yields)f(the)i(same)
-e(encrypted)g(data)h(for)f(indep)r(enden)n(t)523 1836
-y(encryptions.)g(Ho)n(w)n(ev)n(er,)f(it)i(has)f(sev)n(eral)e(disadv)-5
-b(an)n(tages.)648 1936 y(One)31 b(dra)n(wbac)n(k)g(of)h(F)-7
-b(reenet's)32 b(CHK)g(is)g(that)g(it)h(do)r(es)f(not)g(allo)n(w)f
-(direct)h(sharing)f(of)523 2035 y(\014les)c(from)f(the)h(lo)r(cal)g
-(driv)n(e)e(without)j(encrypting)e(and)g(inserting)h(them)g(\014rst.)g
-(Th)n(us,)f(if)h(a)523 2135 y(no)r(de)22 b(op)r(erator)f(wishes)h(to)g
-(k)n(eep)g(con)n(ten)n(t)g(directly)g(accessible)f(on)h(the)h(host,)f
-(a)g(lo)r(cal)g(cop)n(y)523 2234 y(of)h(the)g(plain)n(text)g(m)n(ust)g
-(b)r(e)g(k)n(ept)f(in)h(addition)g(to)g(the)g(encrypted)f(con)n(ten)n
-(t)h(in)g(the)g(F)-7 b(reenet)523 2334 y(database.)27
-b(Also,)h(F)-7 b(reenet)29 b(do)r(es)f(not)g(supp)r(ort)g(sw)n(arming.)
-f(One)h(reason)f(for)h(this)g(is)h(that)523 2434 y(F)-7
-b(reenet's)30 b(CHK)h(enco)r(ding)f(can)g(only)g(v)n(erify)g(a)g
-(\014le)h(in)f(its)h(en)n(tiret)n(y)f(and)g(not)h(pin-p)r(oin)n(t)523
-2533 y(corruptions)26 b(on)h(a)h(smaller)e(scale.)648
-2633 y(One)33 b(w)n(a)n(y)f(to)i(obtain)f(the)i(CHK)e(k)n(ey)g(of)h(a)f
-(\014le)h(in)g(F)-7 b(reenet)34 b(is)f(to)h(searc)n(h)e(a)h(priv)-5
-b(ate)523 2733 y(subspace.)27 b(A)h(subspace)f(con)n(tains)f(a)i(set)f
-(of)h(CHK)f(k)n(eys)g(that)h(ha)n(v)n(e)e(b)r(een)i(cryptographi-)523
-2832 y(cally)e(signed)h(b)n(y)g(the)g(o)n(wner)f(of)h(the)g(subspace)g
-(and)f(placed)h(in)n(to)g(the)g(subspace)g(under)f(a)523
-2932 y(certain)e(k)n(eyw)n(ord.)g(These)g(signed)h(references)f(are)f
-(called)i(subspace-signed)e(k)n(eys)h(\(SSK\).)523 3031
-y(Giv)n(en)i(the)g(subspace-pre\014x)e(and)h(the)i(k)n(eyw)n(ord,)c
-(users)i(can)h(obtain)f(the)h(CHK)g(k)n(ey)-7 b(.)25
-b(The)523 3131 y(form)d(of)g(the)g(k)n(eyw)n(ords)e(can)i(b)r(e)h
-(freely)e(c)n(hosen,)h(allo)n(wing)e(for)i(con)n(v)n(en)n(tions)e(suc)n
-(h)i(as)f(dates)523 3231 y(in)j(the)h(k)n(eyw)n(ord)d(to)i(b)r(e)h
-(used)f(for)g(up)r(dates)g(\(in)h(F)-7 b(reenet's)24
-b(terminology)-7 b(,)23 b(these)h(are)f(called)523 3330
-y Ft(date)30 b(b)l(ase)l(d)h(r)l(e)l(dir)l(e)l(cts)p
-FA(\).)648 3430 y(In)c(addition)h(to)f(CHK)g(and)g(SSK)h(k)n(eys,)e(F)
--7 b(reenet)28 b(supp)r(orts)f(KSK)g(k)n(eys.)f(A)i(KSK)f(k)n(ey)523
-3530 y(is)j(essen)n(tially)f(a)g(CHK)h(k)n(ey)g(stored)f(in)h(plain)n
-(text)g(\(!\))h(under)e(a)h(k)n(eyw)n(ord.)e(The)i(proto)r(col)523
-3629 y(attempts)25 b(to)f(ensure)g(that)g(there)h(cannot)e(b)r(e)i(t)n
-(w)n(o)f(di\013eren)n(t)g(CHK)h(k)n(eys)e(a)n(v)-5 b(ailable)23
-b(in)i(the)523 3729 y(net)n(w)n(ork)g(under)h(the)h(same)f(k)n(eyw)n
-(ord.)e(While)j(collisions)e(for)h(KSK)g(k)n(eys)f(are)g(supp)r(osedly)
-523 3828 y(not)36 b(allo)n(w)n(ed,)e(the)i(proto)r(col)e(cannot)h(prev)
-n(en)n(t)g(them)h(from)f(o)r(ccurring.)g(If)h(an)f(attac)n(k)n(er)523
-3928 y(inserts)27 b(meaningless)f(data)h(under)g(a)g(common)g(k)n(eyw)n
-(ord,)e(F)-7 b(reenet)27 b(will)h(try)f(to)g(preserv)n(e)523
-4028 y(that)g(con)n(ten)n(t)g(b)r(ecause)f(it)h(is)g(frequen)n(tly)f
-(requested.)h(Subsequen)n(tly)-7 b(,)26 b(that)h(k)n(eyw)n(ord)e(can)
-523 4127 y(no)h(longer)f(b)r(e)i(used)f(for)g(an)n(y)f(useful)i(data)f
-(since)g(the)g(p)r(eers)g(attempt)h(to)f(enforce)g(the)h(no-)523
-4227 y(collisions)j(rule.)h(Note)g(that)g(the)h(no-collision)d(rule)i
-(cannot)f(b)r(e)i(enforced)e(for)h(malicious)523 4327
-y(p)r(eers.)h(F)-7 b(or)32 b(these)h(reasons,)e(the)i(F)-7
-b(reenet)33 b(dev)n(elop)r(ers)e(consider)h(the)h(use)f(of)h(KSK)f(k)n
-(eys)523 4426 y(insecure)27 b(and)g(recommend)g(against)g(using)g
-(them.)648 4526 y(As)i(a)f(result,)h(F)-7 b(reenet)29
-b(e\013ectiv)n(ely)g(do)r(es)g(not)g(supp)r(ort)f(an)n(y)h(t)n(yp)r(e)g
-(of)g(k)n(eyw)n(ord-based)523 4625 y(searc)n(h.)22 b(The)i(CHK)g(k)n
-(eys)e(m)n(ust)i(b)r(e)g(found)g(b)n(y)g(using)f(k)n(eyserv)n(ers)e(or)
-i(ad-ho)r(c)g(applications)523 4725 y(built)h(up)r(on)g(the)f(basic)g
-(solution)g(b)n(y)g(using)g(incremen)n(tal)g(n)n(um)n(b)r(ers)g(as)f
-(parts)h(of)g(k)n(eyw)n(ords)523 4825 y(in)f(signed)f(namespaces.)f
-(The)i(disadv)-5 b(an)n(tage)20 b(of)i(k)n(eyserv)n(ers)c(is)k(that)g
-(they)g(m)n(ust)f(b)r(e)h(main-)523 4924 y(tained)31
-b(if)g(the)g(indexed)g(k)n(eys)f(are)g(to)h(b)r(e)g(k)n(ept)f
-(up-to-date.)h(F)-7 b(reenet)30 b(do)r(es)h(not)g(seem)f(to)p
-Black Black eop end
+ 2780
+1920 a Black Fx(].)g(Using)f(the)g(hash)523 2019 y(of)h(the)h(con)n
+(ten)n(t)e(as)h(the)g(k)n(ey)g(ensures)f(that)i(indep)r(enden)n(t)g
+(encryptions)e(yield)h(the)h(same)523 2119 y(encrypted)i(data.)h(This)f
+(is)h(useful)g(in)f(that)h(it)g(allo)n(ws)e(the)i(system)g(to)f(detect)
+h(iden)n(tical)523 2218 y(con)n(ten)n(t)26 b(ev)n(en)f(if)i(the)g(con)n
+(ten)n(t)e(originates)g(from)h(di\013eren)n(t)g(users.)f(In)i(order)d
+(to)i(do)n(wnload)523 2318 y(a)k(CHK-enco)r(ded)h(\014le,)g(the)g(user)
+f(m)n(ust)h(kno)n(w)f(b)r(oth)h(the)g(hash)f(of)h(the)g(original)e(con)
+n(ten)n(t)523 2418 y(and)g(the)h(hash)f(of)h(the)g(encrypted)f(con)n
+(ten)n(t.)g(The)h(hash)f(of)g(the)h(original)e(con)n(ten)n(t)h(allo)n
+(ws)523 2517 y(the)d(user)e(to)h(decrypt)g(the)g(data)g(and)g(to)g(v)n
+(erify)f(the)i(in)n(tegrit)n(y)e(of)h(the)h(decrypted)e(con)n(ten)n(t)
+523 2617 y(afterw)n(ards.)33 b(The)i(hash)g(of)g(the)g(encrypted)g(con)
+n(ten)n(t)f(is)h(used)g(as)f(the)h(query)f(b)n(y)h(whic)n(h)523
+2717 y(p)r(eers)27 b(\014nd)h(the)g(\(encrypted\))g(con)n(ten)n(t.)648
+2820 y(One)19 b(dra)n(wbac)n(k)e(of)i(F)-7 b(reenet's)19
+b(use)g(of)g(CHKs)g(is)h(that)f(it)h(do)r(es)f(not)g(allo)n(w)f(direct)
+h(sharing)523 2920 y(of)j(\014les)g(from)f(the)i(lo)r(cal)e(driv)n(e)g
+(without)i(hashing)e(and)h(encrypting)f(and)h(storing)e(a)i(cop)n(y)f
+(of)523 3019 y(the)h(en)n(tire)g(encrypted)f(\014le.)i(As)e(a)h
+(result,)g(a)f(no)r(de)h(op)r(erator)e(who)i(wishes)f(to)h(k)n(eep)f
+(con)n(ten)n(t)523 3119 y(directly)28 b(accessible)g(in)h(plain)n(text)
+g(is)f(forced)g(to)h(k)n(eep)f(b)r(oth)h(a)g(cop)n(y)e(of)i(the)g
+(plain)n(text)g(as)523 3219 y(w)n(ell)e(as)g(the)h(encrypted)g(data)f
+(whic)n(h)g(w)n(ould)g(b)r(e)h(stored)f(in)h(the)g(F)-7
+b(reenet)28 b(database.)648 3322 y(Another)35 b(problem)g(with)h(using)
+f(CHK-enco)r(ding)f(on)i(en)n(tire)f(\014les)g(is)g(that)h(suc)n(h)f
+(an)523 3422 y(enco)r(ding)27 b(do)r(es)g(not)h(supp)r(ort)f(secure)g
+(sw)n(arming.)f(The)i(reason)e(for)h(this)g(is)h(that)g(a)f(clien)n(t)
+523 3522 y(can)38 b(only)g(v)n(erify)g(a)g(do)n(wnload)f(in)i(its)g(en)
+n(tiret)n(y)-7 b(.)38 b(Ho)n(w)n(ev)n(er,)f(in)h(an)h(op)r(en)f(p)r
+(eer-to-p)r(eer)523 3621 y(net)n(w)n(ork)19 b(whic)n(h)i(ma)n(y)f(con)n
+(tain)g(malicious)g(participan)n(ts)g(a)h(m)n(ulti-source)e(do)n
+(wnload)h(m)n(ust)523 3721 y(b)r(e)39 b(able)f(to)g(pin-p)r(oin)n(t)g
+(corruptions)f(on)h(a)f(smaller)h(scale.)f(Using)h(CHK-enco)r(ding)f
+(on)523 3820 y(en)n(tire)22 b(\014les)h(in)g(com)n(bination)e(with)j
+(sw)n(arming)d(w)n(ould)h(allo)n(w)f(malicious)h(p)r(eers)g(to)h
+(corrupt)523 3920 y(large)37 b(do)n(wnloads)f(b)n(y)i(con)n(tributing)g
+(only)f(a)h(few)g(corrupt)g(p)r(ortions)f(of)h(the)h(\014le.)f(The)523
+4020 y(receiv)n(er)26 b(w)n(ould)i(b)r(e)g(able)g(to)g(detect)g(the)h
+(corruption,)e(but)h(could)g(not)g(determine)g(whic)n(h)523
+4119 y(p)r(ortions)f(of)g(the)h(\014le)g(are)f(defectiv)n(e.)648
+4223 y(Finally)-7 b(,)30 b(F)-7 b(reenet)31 b(users)f(need)h(to)f
+(someho)n(w)g(obtain)g(the)h(t)n(w)n(o)f(hash)h(co)r(des)f(that)h(are)
+523 4323 y(needed)h(to)g(searc)n(h)f(and)h(decrypt)g(the)h(CHK)f(enco)r
+(ded)g(con)n(ten)n(t.)g(The)g(main)g(c)n(hallenges)523
+4422 y(in)e(this)g(con)n(text)g(is)f(to)h(k)n(eep)f(the)h(searc)n(h)e
+(for)i(CHK)f(enco)r(ded)h(con)n(ten)n(t)f(as)h(secure)f(as)g(the)523
+4522 y(CHK-enco)r(ded)e(con)n(ten)n(t)h(itself.)g(Sp)r(eci\014cally)-7
+b(,)28 b(p)r(eers)f(should)h(not)g(b)r(e)g(able)f(to)h(determine)523
+4621 y(the)d(nature)g(of)g(the)g(query)g(or)f(the)h(resp)r(onse.)f
+(Ideally)-7 b(,)25 b(p)r(eers)f(should)h(also)f(not)h(b)r(e)g(able)g
+(to)523 4721 y(pro)r(duce)i(in)n(v)-5 b(alid)28 b(resp)r(onses.)648
+4825 y(F)-7 b(reenet)32 b(has)h(sev)n(eral)e(other)h(t)n(yp)r(es)h(of)g
+(k)n(eys)f(whic)n(h)h(are)f(used)h(to)f(refer)h(the)g(user)f(to)523
+4924 y(CHKs.)g(One)f(w)n(a)n(y)g(to)h(obtain)f(the)i(CHKs)e(of)h(a)g
+(\014le)g(in)g(F)-7 b(reenet)32 b(is)g(to)f(searc)n(h)g(a)g(priv)-5
+b(ate)p Black Black eop end
 %%Page: 5 5
 TeXDict begin 5 4 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
@@ -6479,155 +5918,126 @@
  523 232 a 523 232 a
 SDict begin [ /View [/XYZ H.V] /Dest (page.5) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
+ 523 232 a Black 1036 w Fu(An)25
 b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
-b(5)p Black 523 448 a FA(use)30 b(an)n(y)f(encryption)h(for)f(the)i
-(data)f(stored)f(in)h(KSK)g(or)f(SKS)h(k)n(eys)f(and)h(therefore)f
-(fails)523 548 y(to)36 b(prev)n(en)n(t)f(in)n(termediaries)g(from)g
-(learning)g(the)h(CHK)g(k)n(eys,)f(making)h(censorship)e(b)n(y)523
-648 y(in)n(termediaries)26 b(easier.)523 788 y
+b(5)p Black 523 448 a Fx(subspace.)27 b(A)h(subspace)f(con)n(tains)f(a)
+i(set)f(of)h(CHK)f(k)n(eys)g(that)h(ha)n(v)n(e)e(b)r(een)i
+(cryptographi-)523 548 y(cally)e(signed)h(b)n(y)g(the)g(o)n(wner)f(of)h
+(the)g(subspace)g(and)f(placed)h(in)n(to)g(the)g(subspace)g(under)f(a)
+523 648 y(certain)21 b(k)n(eyw)n(ord.)e(These)i(signed)g(references)f
+(are)h(called)g(subspace-signed)e(k)n(eys)i(\(SSKs\).)523
+747 y(Giv)n(en)27 b(the)h(subspace-pre\014x)e(and)h(the)h(k)n(eyw)n
+(ord,)e(users)g(can)h(obtain)g(the)h(CHK)f(k)n(ey)-7
+b(.)27 b(Us-)523 847 y(ing)f(SSKs)h(prev)n(en)n(ts)e(p)r(eers)h(form)h
+(pro)r(ducing)f(in)n(v)-5 b(alid)26 b(resp)r(onses)g(but)h(shifts)g
+(the)g(burden)523 946 y(on)g(the)h(user)f(to)h(disco)n(v)n(er)d(in)n
+(teresting)i(subspaces.)648 1060 y(In)18 b(addition)g(to)h(CHKs)f(and)g
+(SSKs,)g(F)-7 b(reenet)18 b(supp)r(orts)g(k)n(eyw)n(ord)f(signed)h(k)n
+(eys)f(\(KSKs\).)523 1159 y(A)29 b(KSK)f(k)n(ey)g(in)g(F)-7
+b(reenet)29 b(is)f(essen)n(tially)g(a)g(CHK)g(stored)g(in)h(plain)n
+(text)f(\(!\))i(under)e(a)g(k)n(ey-)523 1259 y(w)n(ord.)c(The)g(proto)r
+(col)g(attempts)h(to)f(ensure)g(that)h(there)g(cannot)f(b)r(e)h(t)n(w)n
+(o)f(di\013eren)n(t)g(CHKs)523 1358 y(a)n(v)-5 b(ailable)25
+b(in)h(the)g(net)n(w)n(ork)f(under)h(the)g(same)f(k)n(eyw)n(ord.)f
+(While)j(collisions)e(for)g(KSKs)g(are)523 1458 y(supp)r(osedly)j(not)h
+(allo)n(w)n(ed,)e(the)j(proto)r(col)d(cannot)h(prev)n(en)n(t)g(them)h
+(from)g(o)r(ccurring:)e(net-)523 1558 y(w)n(ork)h(splits)i(and)f
+(malicious)g(p)r(eers)g(mak)n(e)g(it)h(imp)r(ossible)f(to)g(enforce)g
+(this)h(rule.)f(On)h(the)523 1657 y(other)i(hand,)g(if)h(an)f(attac)n
+(k)n(er)e(inserts)i(meaningless)f(data)h(under)g(a)g(common)g(k)n(eyw)n
+(ord,)523 1757 y(F)-7 b(reenet)28 b(will)h(try)f(to)g(preserv)n(e)f
+(that)i(con)n(ten)n(t)f(b)r(ecause)g(it)g(is)h(frequen)n(tly)f
+(requested.)g(F)-7 b(or)523 1857 y(these)38 b(reasons,)f(the)i(F)-7
+b(reenet)38 b(dev)n(elop)r(ers)f(consider)g(the)i(use)f(of)g(KSKs)g
+(insecure)f(and)523 1956 y(recommend)27 b(against)f(using)i(them.)648
+2069 y(As)h(a)f(result,)h(F)-7 b(reenet)29 b(e\013ectiv)n(ely)g(do)r
+(es)g(not)g(supp)r(ort)f(an)n(y)h(t)n(yp)r(e)g(of)g(k)n(eyw)n
+(ord-based)523 2169 y(searc)n(h.)22 b(The)i(CHK)g(k)n(eys)f(m)n(ust)h
+(b)r(e)g(found)g(b)n(y)g(using)g(external)f(k)n(eyserv)n(ers)e(or)i
+(ad-ho)r(c)g(ap-)523 2269 y(plications)30 b(built)h(up)r(on)f(the)h
+(basic)f(solution)g(b)n(y)g(using)g(incremen)n(tal)f(n)n(um)n(b)r(ers)h
+(as)g(parts)523 2368 y(of)c(k)n(eyw)n(ords)f(in)h(signed)g(namespaces.)
+f(F)-7 b(reenet)27 b(do)r(es)f(not)g(use)g(encryption)g(for)g(the)g
+(data)523 2468 y(stored)d(in)h(KSKs)f(or)g(SSKs)h(and)g(therefore)f
+(fails)g(to)h(prev)n(en)n(t)f(in)n(termediaries)g(from)g(learn-)523
+2567 y(ing)k(the)h(CHKs,)g(making)f(censorship)f(b)n(y)h(in)n
+(termediaries)g(easier.)523 2787 y
 SDict begin H.S end
- 523 788
-a 523 788 a
+ 523 2787 a 523 2787
+a
 SDict begin 12 H.A end
- 523 788 a 523 788 a
+ 523 2787 a 523 2787 a
 SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.2) cvn H.B /DEST
 pdfmark end
- 523 788 a 99 x Fr(2.2)95
-b(F)-8 b(ree)31 b(Ha)m(v)m(en)523 1044 y FA(In)24 b(F)-7
-b(ree)24 b(Ha)n(v)n(en)f([)p 0 1 0 TeXcolorrgb 1074 1044
-a
+ 523 2787 a 97 x Fn(2.2)95 b(T)-8
+b(angler)523 3118 y Fx(The)31 b(T)-7 b(angler)30 b(net)n(w)n(ork)f([)p
+0 1 0 TeXcolorrgb 1345 3118 a
 SDict begin H.S end
- 1074 1044 a 0 1 0 TeXcolorrgb FA(9)p 0 1 0 TeXcolorrgb
-1115 990 a
+ 1345 3118 a 0 1 0 TeXcolorrgb
+Fx(27)p 0 1 0 TeXcolorrgb 1428 3064 a
 SDict begin H.R end
- 1115 990 a 1115 1044 a
+ 1428 3064 a 1428
+3118 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.freehaven-berk) cvn H.B /ANN pdfmark end
- 1115 1044 a Black FA(],)i(do)r(cumen)
-n(ts)f(are)e(split)j(in)n(to)f Fs(n)f FA(shares)g(whic)n(h)h(are)f
-(distributed)h(o)n(v)n(er)e(a)523 1143 y(n)n(um)n(b)r(er)27
-b(of)g(serv)n(ers.)f(An)n(y)h Fs(k)j FA(out)d(of)h Fs(n)f
-FA(shares)f(are)g(su\016cien)n(t)h(to)h(reconstruct)e(the)h(en)n(tire)
-523 1243 y(do)r(cumen)n(t)j([)p 0 1 0 TeXcolorrgb 931
-1243 a
+(cite.waldman2001tangler) cvn H.B /ANN pdfmark end
+ 1428 3118 a Black Fx(])i(is)g(a)f(system)h(where)f(new)h(con)n
+(ten)n(t)g(is)g(en)n(tangled)f(with)h(old)523 3217 y(con)n(ten)n(t.)26
+b(This)h(en)n(tanglemen)n(t)f(in)n(tro)r(duces)g(a)h(dep)r(endency)g
+(whic)n(h)f(mak)n(es)g(it)h(imp)r(ossible)523 3317 y(to)19
+b(retriev)n(e)e(a)h(piece)h(of)g(con)n(ten)n(t)f(if)i(the)f(other)f
+(con)n(ten)n(t)g(that)h(it)g(w)n(as)f(en)n(tangled)g(with)i(is)e(lost.)
+523 3416 y(While)i(this)h(mak)n(es)d(it)j(imp)r(ossible)e(to)h(censor)f
+(sp)r(eci\014c)h(con)n(ten)n(t)f(without)h(losing)f(unrelated)523
+3516 y(con)n(ten)n(t)j(\(since)h(the)g(en)n(tanglemen)n(t)e(pairs)h
+(are)g(c)n(hosen)f(randomly\),)h(this)h(pro)r(cess)e
+Fq(doubles)523 3616 y Fx(the)40 b(amoun)n(t)g(of)f(data)h(that)g(m)n
+(ust)g(b)r(e)g(transp)r(orted)f(b)n(y)h(the)g(net)n(w)n(ork.)e(The)i
+(primary)523 3715 y(problem)25 b(with)h(the)h(sc)n(heme)e(is)g(the)i
+(assumption)e(that)h(an)f(adv)n(ersary)e(w)n(ould)i(care)g(ab)r(out)523
+3815 y(the)34 b(loss)f(of)h(other)g(data)f(when)h(attempting)h(to)e
+(censor)g(con)n(ten)n(t.)h(This)g(assumption)f(is)523
+3915 y(particularly)26 b(unrealistic)i(since)f(an)h(adv)n(ersary)d
+(could)j(\014rst)f(mak)n(e)g(a)h(cop)n(y)f(of)g(imp)r(ortan)n(t)523
+4014 y(do)r(cumen)n(ts)h(and)f(re-insert)f(them)j(in)n(to)e(the)h
+(system)f(after)h(the)g(censorship)e(op)r(eration.)648
+4127 y(T)-7 b(angler)22 b(has)h(some)g(similarities)g(with)h(ECRS.)g
+(In)g(particular,)e(it)i(uses)f(hash)g(trees)h(for)523
+4227 y(in)n(tegrit)n(y)33 b(c)n(hec)n(ks)g(on)h(\014xed-size)f(blo)r(c)
+n(ks)h(of)g(data.)f(Ho)n(w)n(ev)n(er,)f(unlik)n(e)i(ECRS,)g(the)h(T)-7
+b(an-)523 4327 y(gler)25 b(enco)r(ding)g(uses)g(Shamir's)g(secret)g
+(sharing)f([)p 0 1 0 TeXcolorrgb 2089 4327 a
 SDict begin H.S end
- 931 1243 a 0 1 0 TeXcolorrgb FA(25)p 0 1 0 TeXcolorrgb
-1015 1189 a
+ 2089 4327
+a 0 1 0 TeXcolorrgb Fx(24)p 0 1 0 TeXcolorrgb 2172 4273
+a
 SDict begin H.R end
- 1015 1189 a 1015 1243 a
+ 2172 4273 a 2172 4327 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.rabin89efficient) cvn H.B /ANN pdfmark end
- 1015 1243 a Black
-FA(].)g(T)-7 b(o)30 b(retriev)n(e)f(a)g(do)r(cumen)n(t,)i(the)g(user)e
-(m)n(ust)h(obtain)g(the)h(k)n(ey)f(that)g(w)n(as)523
-1343 y(used)j(to)f(sign)g(the)h(do)r(cumen)n(t)g(from)f(some)g(source)f
-(outside)i(the)g(F)-7 b(ree)32 b(Ha)n(v)n(en)f(net)n(w)n(ork.)523
-1442 y(The)i(design)f(of)g(F)-7 b(ree)32 b(Ha)n(v)n(en)g(itself)h(do)r
-(es)f(not)h(discuss)f(an)n(y)f(searc)n(h)g(functionalit)n(y)-7
-b(.)33 b(The)523 1542 y(user)d(then)h(forw)n(ards)e(the)i(k)n(ey)g(to)f
-(the)h(serv)n(er)e(whic)n(h)i(encrypts)f(and)h(sends)f(its)h(share)f
-(of)523 1641 y(the)e(do)r(cumen)n(t.)648 1741 y(Shares)21
-b(are)g(enco)r(ded)i(with)g(an)f(information)g(disp)r(ersal)f
-(algorithm)g(\(ID)n(A\).)j(Hosts)e(are)523 1841 y(still)34
-b(able)f(to)h(exercise)e(editorial)h(con)n(trol)f(o)n(v)n(er)g(the)i
-(con)n(ten)n(t)f(since)h(the)g(ID)n(A)g(do)r(es)f(not)523
-1940 y(prev)n(en)n(t)f(hosts)f(from)h(deco)r(ding)g(parts)g(of)g(the)h
-(plain)n(text.)f(Also,)g(the)h Fs(k)i FA(out)e(of)f Fs(n)g
-FA(share)523 2040 y(reconstruction)f(sc)n(heme)g(do)r(es)h(not)g(allo)n
-(w)f(reconstruction)f(of)i(a)g(\014le)g(b)n(y)g(mixing)f(shares)523
-2140 y(from)c(indep)r(enden)n(t)i(insertions)e(with)h(di\013eren)n(t)f
-(v)-5 b(alues)28 b(for)f Fs(k)j FA(or)d Fs(n)p FA(.)523
-2296 y
+(cite.shamir) cvn H.B /ANN pdfmark end
+ 2172 4327 a Black Fx(])i(to)f(en)n(tangle)g
+(the)h(blo)r(c)n(k)f(with)h(other,)523 4426 y(pre-existing)35
+b(blo)r(c)n(ks.)h(Both)g(T)-7 b(angler)35 b(and)i(ECRS)f(\(as)g(w)n
+(ell)g(as)g(F)-7 b(reenet\))37 b(use)f(crypto-)523 4526
+y(graphically)f(signed)i(data,)f(whic)n(h)h(T)-7 b(angler)36
+b(calls)g(collections.)g(ECRS)h(has)f(analogous)523 4625
+y(constructions)31 b(to)g(T)-7 b(angler's)31 b(collections,)g(referred)
+f(to)i(in)g(our)f(tec)n(hnical)g(rep)r(ort)g([)p 0 1 0
+TeXcolorrgb 3234 4625 a
 SDict begin H.S end
- 523 2296 a 523 2296 a
-SDict begin 12 H.A end
- 523 2296 a 523 2296 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.3) cvn H.B /DEST
-pdfmark end
- 523
-2296 a 83 x Fr(2.3)95 b(Mnet)31 b(and)h(Mo)5 b(jo)32
-b(Nation)523 2536 y FA(Mnet)d(is)f(the)g(successor)f(of)h(Mo)5
-b(jo)27 b(Nation)h([)p 0 1 0 TeXcolorrgb 1938 2536 a
-SDict begin H.S end
-
-1938 2536 a 0 1 0 TeXcolorrgb FA(33)p 0 1 0 TeXcolorrgb
-2021 2482 a
+ 3234 4625 a 0 1 0 TeXcolorrgb
+Fx(2)p 0 1 0 TeXcolorrgb 3276 4572 a
 SDict begin H.R end
- 2021 2482 a 2021 2536 a
+ 3276 4572 a 3276
+4625 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.mojotech) cvn H.B /ANN pdfmark end
- 2021 2536 a Black
-FA(],)h(a)e(p)r(eer-to-p)r(eer)g(net)n(w)n(ork)g(that)h(w)n(as)g(the)
-523 2635 y(\014rst)d(to)g(fo)r(cus)g(on)f(using)h(economic)f(incen)n
-(tiv)n(es)g(when)h(trading)g(con)n(ten)n(t.)f(As)h(the)h(descen-)523
-2735 y(dan)n(t)g(of)g(a)g(commercial)f(pro)r(duct,)i(Mnet)f(fo)r(cuses)
-g(mostly)g(on)g(e\016ciency)h(and)f(reliabilit)n(y)-7
-b(.)523 2835 y(Nev)n(ertheless,)31 b(Mnet)i(encrypts)e(\014les)h(with)h
-(AES)f(using)g(a)f(user-supplied)h(k)n(ey)f(to)h(allo)n(w)523
-2934 y(for)e(priv)-5 b(acy)e(.)30 b(The)h(\014le)g(is)f(then)h(brok)n
-(en)f(in)n(to)g(shares)f(using)h(an)h(erasure)e(co)r(de.)h(Multiple)523
-3034 y(shares)23 b(are)h(iden)n(ti\014ed)g(with)h(an)g(SHA-1)f(hash)g
-(and)g(stored)g(in)h(an)f(ino)r(de.)g(The)h(\014le)g(can)f(b)r(e)523
-3133 y(retriev)n(ed)i(using)i(the)g(hash)f(of)g(the)h(ino)r(de)g(and)f
-(the)h(symmetric)g(encryption)f(k)n(ey)-7 b(.)648 3233
-y(The)30 b(use)g(of)g(whole-\014le)f(AES)h(encryption)g(and)g(the)g
-(use)g(of)g(an)g(erasure)e(co)r(de)i(forces)523 3333
-y(Mnet,)c(as)f(with)h(F)-7 b(reenet,)26 b(to)f(store)g(a)g(second)g
-(cop)n(y)g(of)h(the)g(en)n(tire)f(\014le)h(in)f(the)h(Mnet)g(data)523
-3432 y(store)f(ev)n(en)h(if)g(the)g(user)g(retains)f(a)h(cop)n(y)f(of)h
-(the)g(\014le)g(in)g(plain)n(text.)g(The)g(enco)r(ding)g(mak)n(es)523
-3532 y(it)h(infeasible)f(to)g(enco)r(de)g(parts)f(of)i(the)f(\014le)h
-(on)f(request.)f(The)h(free)g(selection)g(of)g(the)h(AES)523
-3632 y(k)n(ey)j(allo)n(ws)f(indep)r(enden)n(t)j(users)d(to)i(create)f
-(completely)g(di\013eren)n(t)h(shares)e(for)h(iden)n(tical)523
-3731 y(\014les.)35 b(Since)g(the)h(encryption)e(of)h(the)g(con)n(ten)n
-(t)g(is)g(a)f(p)r(erfectly)i(indep)r(enden)n(t)g(pass)e(o)n(v)n(er)523
-3831 y(the)e(\014le,)g(other)e(enco)r(dings)h(suc)n(h)g(as)g(ECRS)g
-(and)g(F)-7 b(reenet's)32 b(enco)r(ding)f(could)g(b)r(e)h(easily)523
-3930 y(extended)i(to)g(include)h(this)f(b)r(eha)n(vior)e(if)j(desired)e
-({)h(without)g(the)h(need)f(to)g(mandate)f(a)523 4030
-y(certain)27 b(st)n(yle)g(of)h(AES)f(encryption.)523
-4186 y
-SDict begin H.S end
- 523 4186 a 523 4186 a
-SDict begin 12 H.A end
- 523 4186 a 523 4186 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.4) cvn H.B /DEST
-pdfmark end
- 523
-4186 a 84 x Fr(2.4)95 b(Publius)523 4426 y FA(Publius)23
-b([)p 0 1 0 TeXcolorrgb 843 4426 a
-SDict begin H.S end
- 843 4426 a 0 1 0 TeXcolorrgb
-FA(32)p 0 1 0 TeXcolorrgb 926 4373 a
-SDict begin H.R end
- 926 4373 a 926 4426
-a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.pub00) cvn H.B /ANN pdfmark end
- 926 4426 a Black FA(])h(is)g(a)f(static)g(net)n(w)n(ork)f(that)i
-(uses)f(Shamir's)g(algorithm)g([)p 0 1 0 TeXcolorrgb
-2736 4426 a
-SDict begin H.S end
- 2736 4426 a 0 1 0 TeXcolorrgb FA(27)p 0 1 0
-TeXcolorrgb 2819 4373 a
-SDict begin H.R end
- 2819 4373 a 2819 4426 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.shamir) cvn H.B /ANN pdfmark end
- 2819
-4426 a Black FA(])g(to)h(split)g(the)g(k)n(ey)523 4526
-y(required)j(to)g(restore)g(stored)g(\014les)g(b)r(et)n(w)n(een)h(the)g
-(a)n(v)-5 b(ailable)27 b(serv)n(ers.)e(The)j(encrypted)g(\014le)523
-4625 y(is)33 b(then)h(stored)f(on)g(all)g(serv)n(ers.)e(The)j(serv)n
-(ers)d(cannot)i(decrypt)g(the)h(\014le)f(as)g(the)g(k)n(ey)g(is)523
-4725 y(nev)n(er)27 b(rev)n(ealed)f(to)h(them.)648 4825
-y(Publius)34 b(k)n(eys)g(are)g(random)g(strings.)g(The)h(system)g(do)r
-(es)g(not)g(pro)n(vide)e(an)n(y)i(searc)n(h)523 4924
-y(mec)n(hanism)c(and)h(exp)r(ects)f(the)h(users)f(to)h(obtain)f(the)h
-(k)n(eys)f(from)g(an)g(alternate)g(source.)p Black Black
-eop end
+(cite.ecrstechreport) cvn H.B /ANN pdfmark end
+ 3276 4625 a Black Fx(])h(as)523 4725 y Fq(dir)l(e)l(ctories)j
+Fx(and)f Fq(namesp)l(ac)l(es)p Fx(;)h(ho)n(w)n(ev)n(er,)d(unlik)n(e)h
+(ECRS,)h(a)f(T)-7 b(angler)33 b(collection)g(has)g(a)523
+4825 y(v)n(ersioned)21 b(ro)r(ot)h(whic)n(h)h(explicitly)g(lists)g(all)
+g(of)f(the)i(con)n(ten)n(ts)e(in)h(the)g(collection,)g(resulting)523
+4924 y(in)28 b(one)f(of)h(T)-7 b(angler's)26 b(global)g(sync)n
+(hronization)g(problems.)p Black Black eop end
 %%Page: 6 6
 TeXDict begin 6 5 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
@@ -6643,394 +6053,244 @@
  523 232 a 523 232 a
 SDict begin [ /View [/XYZ H.V] /Dest (page.6) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(6)237 b(C.)27
+ 523 232 a Black Fu(6)237 b(C.)27
 b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(Publius)h(nev)n(er)e(discards)h(an)n(y)g(con)n(ten)n
-(t)g(and)h(th)n(us)g(assumes)e(that)i(disk)g(space)f(is)h(nev)n(er)e(a)
-523 548 y(limitation.)523 698 y
+Black 523 365 a
 SDict begin H.S end
- 523 698 a 523 698 a
+ 523 365 a 523 365 a
 SDict begin 12 H.A end
- 523
-698 a 523 698 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.5) cvn H.B /DEST
-pdfmark end
- 523 698 a 99 x Fr(2.5)95 b(T)-8 b(angler)523
-964 y FA(The)31 b(T)-7 b(angler)30 b(net)n(w)n(ork)f([)p
-0 1 0 TeXcolorrgb 1345 964 a
-SDict begin H.S end
- 1345 964 a 0 1 0 TeXcolorrgb
-FA(31)p 0 1 0 TeXcolorrgb 1428 910 a
-SDict begin H.R end
- 1428 910 a 1428
-964 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.waldman2001tangler) cvn H.B /ANN pdfmark end
- 1428 964 a Black FA(])i(is)g(a)f(system)h(where)f(new)h(con)n
-(ten)n(t)g(is)g(en)n(tangled)f(with)h(old)523 1064 y(con)n(ten)n(t.)26
-b(This)h(en)n(tanglemen)n(t)f(in)n(tro)r(duces)g(a)h(dep)r(endency)g
-(whic)n(h)f(mak)n(es)g(it)h(imp)r(ossible)523 1163 y(to)19
-b(retriev)n(e)e(a)h(piece)h(of)g(con)n(ten)n(t)f(if)i(the)f(other)f
-(con)n(ten)n(t)g(that)h(it)g(w)n(as)f(en)n(tangled)g(with)i(is)e(lost.)
-523 1263 y(While)i(this)h(mak)n(es)d(it)j(imp)r(ossible)e(to)h(censor)f
-(sp)r(eci\014c)h(con)n(ten)n(t)f(without)h(losing)f(unrelated)523
-1362 y(con)n(ten)n(t)j(\(since)h(the)g(en)n(tanglemen)n(t)e(pairs)h
-(are)g(c)n(hosen)f(randomly\),)h(this)h(pro)r(cess)e
-Ft(doubles)523 1462 y FA(the)f(amoun)n(t)f(of)g(data)g(that)h(m)n(ust)f
-(b)r(e)h(transp)r(orted)f(b)n(y)g(the)h(net)n(w)n(ork.)e(This)h(sc)n
-(heme)g(fails)g(to)523 1562 y(address)29 b(the)i(fact)f(that)h(an)f
-(adv)n(ersary)d(ma)n(y)j(not)g(care)g(ab)r(out)g(losing)f(other)h(data)
-g(when)523 1661 y(attempting)35 b(to)g(censor)f(con)n(ten)n(t.)h(Also,)
-f(nothing)h(prev)n(en)n(ts)f(the)h(adv)n(ersary)e(from)h(\014rst)523
-1761 y(making)e(a)g(cop)n(y)f(of)h(imp)r(ortan)n(t)g(do)r(cumen)n(ts)h
-(and)f(re-inserting)f(them)h(in)n(to)h(the)f(system)523
-1861 y(after)27 b(the)h(censorship)f(op)r(eration.)648
-1960 y(T)-7 b(angler)33 b(has)h(some)h(similarities)f(with)h(ECRS.)g
-(In)g(particular,)e(it)j(uses)e(hash)h(trees)523 2060
-y(for)40 b(in)n(tegrit)n(y)f(c)n(hec)n(ks)g(on)h(\014xed-size)g(blo)r
-(c)n(ks)g(of)g(data.)g(Ho)n(w)n(ev)n(er,)e(unlik)n(e)i(ECRS,)h(the)523
-2160 y(T)-7 b(angler)33 b(enco)r(ding)h(uses)g(Shamir's)g(secret)g
-(sharing)f([)p 0 1 0 TeXcolorrgb 2283 2160 a
-SDict begin H.S end
- 2283 2160
-a 0 1 0 TeXcolorrgb FA(27)p 0 1 0 TeXcolorrgb 2366 2106
+ 523 365 a 523 365
 a
-SDict begin H.R end
- 2366 2106 a 2366 2160 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.shamir) cvn H.B /ANN pdfmark end
- 2366 2160 a Black FA(])h(to)g(en)n(tangle)g
-(the)h(blo)r(c)n(k)e(with)523 2259 y(other,)d(pre-existing)g(blo)r(c)n
-(ks,)g(preferably)g(from)h(other)f(do)r(cumen)n(ts.)h(Both)g(T)-7
-b(angler)29 b(and)523 2359 y(ECRS)21 b(\(as)g(w)n(ell)g(as)g(F)-7
-b(reenet\))21 b(use)g(cryptographically)e(signed)i(data,)f(whic)n(h)i
-(T)-7 b(angler)20 b(calls)523 2458 y(collections.)27
-b(ECRS)h(has)f(analogous)e(constructions)i(to)h(T)-7
-b(angler's)26 b(collections,)h(referred)523 2558 y(to)d(in)g(this)g
-(pap)r(er)f(as)g Ft(dir)l(e)l(ctories)i FA(and)f Ft(namesp)l(ac)l(es)p
-FA(;)g(ho)n(w)n(ev)n(er,)e(unlik)n(e)h(ECRS,)h(a)f(T)-7
-b(angler)523 2658 y(collection)34 b(has)g(a)g(v)n(ersioned)f(ro)r(ot)h
-(whic)n(h)h(explicitly)f(lists)h(all)f(of)h(the)g(con)n(ten)n(ts)f(in)h
-(the)523 2757 y(collection,)22 b(resulting)h(in)g(one)g(of)g(T)-7
-b(angler's)21 b(global)h(sync)n(hronization)f(problems.)h(Placing)523
-2857 y(a)28 b(do)r(cumen)n(t)g(in)h(a)f(F)-7 b(reenet)28
-b(subspace)g(or)f(ECRS)h(namespace)f(only)h(requires)f(that)i(it)g(b)r
-(e)523 2957 y(adequately)e(signed.)523 3122 y
-SDict begin H.S end
- 523 3122
-a 523 3122 a
-SDict begin 12 H.A end
- 523 3122 a 523 3122 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.6) cvn H.B /DEST
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.3) cvn H.B /DEST
 pdfmark end
- 523 3122 a 84 x Fr(2.6)95
-b(Gn)m(utella)31 b(and)h(F)-8 b(astT)g(rac)m(k)523 3372
-y FA(The)31 b(F)-7 b(astT)g(rac)n(k)28 b(net)n(w)n(ork)p
-1 0 0 TeXcolorrgb 1376 3372 a
+ 523 365 a 83 x Fn(2.3)95 b(Gn)m(utella)31 b(and)h(F)-8
+b(astT)g(rac)m(k)523 612 y Fx(The)31 b(F)-7 b(astT)g(rac)n(k)28
+b(net)n(w)n(ork)p 1 0 0 TeXcolorrgb 1376 612 a
 SDict begin H.S end
- 1376 3372 a -30 x Fz(1)1412
-3372 y
+ 1376 612
+a -30 x Fw(2)1412 612 y
 SDict begin 12 H.L end
- 1412 3372 a 1412 3372 a
-SDict begin [ /Subtype /Link /Dest (Hfootnote.1) cvn /H /I /Border
+ 1412 612 a 1412 612 a
+SDict begin [ /Subtype /Link /Dest (Hfootnote.2) cvn /H /I /Border
 [0 0 0] /Color [1 0 0] H.B /ANN pdfmark end
- 1412 3372 a Black 31 w
-FA(and)i(mo)r(dern)g(v)-5 b(arian)n(ts)29 b(of)i(the)g(Gn)n(utella)f
-(proto)r(col)f(use)i(the)523 3472 y(SHA-1)f(hash)f(co)r(de)g(of)h(the)g
-(shared)f(\014les)g(to)h(uniquely)f(iden)n(tify)i(\014les.)e(The)h
-(SHA-1)f(hash)523 3572 y(co)r(des)d(are)f(used)i(to)f(iden)n(tify)h
-(iden)n(tical)f(\014les)g(stored)g(on)g(di\013eren)n(t)g(p)r(eers.)g
-(The)g(p)r(eers)g(can)523 3671 y(then)d(use)g(this)g(information)f(to)h
-(do)n(wnload)f(the)h(\014le)g(from)f(m)n(ultiple)i(sources)d(\(sw)n
-(arming\).)523 3771 y(The)41 b(problem)f(with)h(this)f(approac)n(h)f
-(is)h(that)h(the)g(SHA-1)f(hash)g(co)r(des)g(can)h(only)f(b)r(e)523
-3871 y(v)n(eri\014ed)23 b(once)h(the)h(en)n(tire)f(\014le)g(has)g(b)r
-(een)g(retriev)n(ed.)f(T)-7 b(o)24 b(ruin)g(a)g(do)n(wnload,)f(it)i
-(su\016ces)f(for)523 3970 y(a)29 b(malicious)f(p)r(eer)i(to)f(con)n
-(tribute)g(just)h(one)e(single)h(in)n(v)-5 b(alid)29
-b(blo)r(c)n(k.)g(The)h(presence)e(of)h(an)523 4070 y(in)n(v)-5
-b(alid)22 b(blo)r(c)n(k)f(could)g(only)h(b)r(e)g(detected)g(after)f
-(the)h(en)n(tire)g(\014le)f(w)n(as)g(retriev)n(ed.)g(W)-7
-b(orse,)21 b(the)523 4169 y(simplistic)28 b(SHA-1)g(approac)n(h)f(do)r
-(es)g(not)i(giv)n(e)e(p)r(eers)g(an)n(y)h(w)n(a)n(y)f(to)h(iden)n(tify)
-g(the)h(lo)r(cation)523 4269 y(of)f(the)g(in)n(v)-5 b(alid)27
-b(blo)r(c)n(k)g(or)g(the)h(malicious)f(p)r(eer.)648 4369
-y(Neither)19 b(F)-7 b(astT)g(rac)n(k)18 b(nor)h(Gn)n(utella)g(use)h
-(\014le)f(encryption.)g(Consequen)n(tly)-7 b(,)19 b(they)h(do)f(not)523
-4468 y(pro)n(vide)h(an)n(y)h(protection)f(from)h(censorship)f(b)r(ey)n
-(ond)h(decen)n(tralized)f(routing)h(of)g(requests.)p
-Black 523 4538 473 4 v 546 4592 a Fy(1)p 0 TeXcolorgray
-606 4532 a
+ 1412 612
+a Black 31 w Fx(and)i(mo)r(dern)g(v)-5 b(arian)n(ts)29
+b(of)i(the)g(Gn)n(utella)f(proto)r(col)f(use)i(the)523
+711 y(SHA-1)f(hash)f(co)r(de)g(of)h(the)g(shared)f(\014les)g(to)h
+(uniquely)f(iden)n(tify)i(\014les.)e(The)h(SHA-1)f(hash)523
+811 y(co)r(des)d(are)f(used)i(to)f(iden)n(tify)h(iden)n(tical)f
+(\014les)g(stored)g(on)g(di\013eren)n(t)g(p)r(eers.)g(The)g(p)r(eers)g
+(can)523 911 y(then)d(use)g(this)g(information)f(to)h(do)n(wnload)f
+(the)h(\014le)g(from)f(m)n(ultiple)i(sources)d(\(sw)n(arming\).)523
+1010 y(The)e(problem)f(with)h(this)h(approac)n(h)c(is)j(that)g(the)g
+(SHA-1)g(hash)f(co)r(des)h(can)f(only)h(b)r(e)g(v)n(eri\014ed)523
+1110 y(once)40 b(the)h(en)n(tire)f(\014le)h(has)f(b)r(een)h(retriev)n
+(ed.)f(Just)g(lik)n(e)h(with)g(F)-7 b(reenet's)40 b(use)h(of)f(CHK)523
+1210 y(enco)r(ding,)d(it)g(su\016ces)g(for)g(a)f(malicious)h(p)r(eer)g
+(to)f(con)n(tribute)h(just)h(one)f(single)f(in)n(v)-5
+b(alid)523 1309 y(blo)r(c)n(k)24 b(in)i(order)d(to)i(ruin)g(a)f(do)n
+(wnload.)g(The)h(simplistic)g(SHA-1)g(approac)n(h)e(do)r(es)h(not)h
+(giv)n(e)523 1409 y(p)r(eers)g(an)n(y)f(w)n(a)n(y)g(to)i(iden)n(tify)f
+(the)h(lo)r(cation)f(of)g(the)h(in)n(v)-5 b(alid)25 b(blo)r(c)n(k)g(or)
+f(the)i(malicious)e(p)r(eer.)648 1508 y(Neither)19 b(F)-7
+b(astT)g(rac)n(k)18 b(nor)h(Gn)n(utella)g(use)h(\014le)f(encryption.)g
+(Consequen)n(tly)-7 b(,)19 b(they)h(do)f(not)523 1608
+y(pro)n(vide)h(an)n(y)h(protection)f(from)h(censorship)f(b)r(ey)n(ond)h
+(decen)n(tralized)f(routing)h(of)g(requests.)523 1771
+y
 SDict begin H.S end
- 606 4532 a 0 TeXcolorgray 0 TeXcolorgray 606
-4532 a
-SDict begin H.R end
- 606 4532 a 606 4532 a
-SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.1) cvn H.B /DEST pdfmark
-end
- 606 4532 a Black 92 x Fx(Proto)r(col)28
-b(description)e(from)g(the)g(giFT-F)-6 b(astT)g(rac)n(k)26
-b(pro)t(ject)h(is)f(a)n(v)l(ailable)h(at)p 0 1 0 0 TeXcolorcmyk
-689 4802 a
-SDict begin H.S end
- 689 4802 a 0 1 0 0 TeXcolorcmyk -16 x Fw
-(http://gnunet.org/papers/FAST)q(-)t(TR)q(ACK-)5 b(PROTO)q(COL)p
-0 1 0 0 TeXcolorcmyk 2423 4734 a
-SDict begin H.R end
- 2423 4734 a 2423 4786
-a
-SDict begin [ /H /I /Border [0 0 0] /Color [0 1 1] /Action << /Subtype
-/URI /URI (http://gnunet.org/papers/FAST-TRACK-PROTOCOL) >> /Subtype
-/Link H.B /ANN pdfmark end
- 2423 4786 a Black Fx(.)p Black Black Black eop end
-%%Page: 7 7
-TeXDict begin 7 6 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
-SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.7) cvn H.B /DEST pdfmark
-end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
-b(7)p Black 523 365 a
-SDict begin H.S end
- 523 365 a 523 365 a
+ 523 1771 a 523 1771 a
 SDict begin 12 H.A end
- 523 365 a 523
-365 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.7) cvn H.B /DEST
+ 523 1771 a 523 1771 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.2.4) cvn H.B /DEST
 pdfmark end
- 523 365 a 83 x Fr(2.7)95 b(Distributed)31 b(File)f(Systems)523
-626 y FA(V)-7 b(arious)21 b(distributed)i(\014le)g(systems)f(based)g
+ 523 1771
+a 83 x Fn(2.4)95 b(Distributed)31 b(File)f(Systems)523
+2018 y Fx(V)-7 b(arious)21 b(distributed)i(\014le)g(systems)f(based)g
 (on)g(a)g(p)r(eer-to-p)r(eer)f(infrastructure)g(ha)n(v)n(e)h(b)r(een)
-523 725 y(built)39 b(in)f(recen)n(t)f(y)n(ears)f([)p
-0 1 0 TeXcolorrgb 1342 725 a
+523 2118 y(built)32 b(in)g(recen)n(t)e(y)n(ears)g([)p
+0 1 0 TeXcolorrgb 1316 2118 a
 SDict begin H.S end
- 1342 725 a 0 1 0 TeXcolorrgb
-FA(7)p 0 1 0 TeXcolorrgb 1384 672 a
+ 1316 2118 a 0 1 0 TeXcolorrgb
+Fx(7)p 0 1 0 TeXcolorrgb 1357 2064 a
 SDict begin H.R end
- 1384 672 a 1384 725
-a
+ 1357 2064 a 1357
+2118 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.cfs:sosp01) cvn H.B /ANN pdfmark end
- 1384 725 a Black FA(,)p 0 1 0 TeXcolorrgb 1407 725
-a
+ 1357 2118 a Black Fx(,)p 0 1 0 TeXcolorrgb 1380
+2118 a
 SDict begin H.S end
- 1407 725 a 0 1 0 TeXcolorrgb FA(19)p 0 1 0 TeXcolorrgb
-1490 672 a
+ 1380 2118 a 0 1 0 TeXcolorrgb Fx(17)p 0 1 0 TeXcolorrgb
+1464 2064 a
 SDict begin H.R end
- 1490 672 a 1490 725 a
+ 1464 2064 a 1464 2118 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.mazires00sfs) cvn H.B /ANN pdfmark end
- 1490 725 a Black FA(,)p
-0 1 0 TeXcolorrgb 1513 725 a
-SDict begin H.S end
- 1513 725 a 0 1 0 TeXcolorrgb
-FA(20)p 0 1 0 TeXcolorrgb 1596 672 a
-SDict begin H.R end
- 1596 672 a 1596
-725 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.mazieres02building) cvn H.B /ANN pdfmark end
- 1596 725 a Black FA(,)p 0 1 0 TeXcolorrgb 1619
-725 a
+ 1464 2118 a Black
+Fx(,)p 0 1 0 TeXcolorrgb 1487 2118 a
 SDict begin H.S end
- 1619 725 a 0 1 0 TeXcolorrgb FA(23)p 0 1 0 TeXcolorrgb
-1702 672 a
+ 1487 2118 a 0 1 0
+TeXcolorrgb Fx(20)p 0 1 0 TeXcolorrgb 1570 2064 a
 SDict begin H.R end
- 1702 672 a 1702 725 a
+ 1570
+2064 a 1570 2118 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.muthitacharoen02ivy) cvn H.B /ANN pdfmark end
- 1702 725 a Black FA(,)p
-0 1 0 TeXcolorrgb 1725 725 a
+ 1570 2118 a Black Fx(,)p 0 1 0 TeXcolorrgb
+1593 2118 a
 SDict begin H.S end
- 1725 725 a 0 1 0 TeXcolorrgb
-FA(26)p 0 1 0 TeXcolorrgb 1808 672 a
+ 1593 2118 a 0 1 0 TeXcolorrgb Fx(23)p 0 1 0
+TeXcolorrgb 1676 2064 a
 SDict begin H.R end
- 1808 672 a 1808
-725 a
+ 1676 2064 a 1676 2118 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.rowstron01storage) cvn H.B /ANN pdfmark end
- 1808 725 a Black FA(].)i(These)g(systems)f(t)n(ypically)h(do)f
-(not)h(fo)r(cus)g(on)523 825 y(censorship)g(resistance)g(and)i
-(consequen)n(tly)e(do)h(not)h(encrypt)f(the)h(con)n(ten)n(ts.)e(Mo)r
-(dern)523 925 y(systems)26 b(lik)n(e)g([)p 0 1 0 TeXcolorrgb
-1004 925 a
+ 1676
+2118 a Black Fx(].)h(These)g(systems)g(t)n(ypically)g(do)g(not)g(fo)r
+(cus)g(on)g(cen-)523 2217 y(sorship)i(resistance)f(and)i(consequen)n
+(tly)f(do)g(not)h(encrypt)f(the)h(con)n(ten)n(ts.)g(Mo)r(dern)f(sys-)
+523 2317 y(tems)k(lik)n(e)e([)p 0 1 0 TeXcolorrgb 914
+2317 a
 SDict begin H.S end
- 1004 925 a 0 1 0 TeXcolorrgb FA(7)p 0 1 0
-TeXcolorrgb 1045 871 a
+ 914 2317 a 0 1 0 TeXcolorrgb Fx(7)p 0 1 0 TeXcolorrgb
+956 2263 a
 SDict begin H.R end
- 1045 871 a 1045 925 a
+ 956 2263 a 956 2317 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.cfs:sosp01) cvn H.B /ANN pdfmark end
- 1045 925
-a Black FA(,)p 0 1 0 TeXcolorrgb 1068 925 a
+ 956 2317 a Black Fx(,)p
+0 1 0 TeXcolorrgb 979 2317 a
 SDict begin H.S end
- 1068 925
-a 0 1 0 TeXcolorrgb FA(26)p 0 1 0 TeXcolorrgb 1152 871
-a
+ 979 2317 a 0 1 0 TeXcolorrgb
+Fx(23)p 0 1 0 TeXcolorrgb 1062 2263 a
 SDict begin H.R end
- 1152 871 a 1152 925 a
+ 1062 2263 a 1062
+2317 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.rowstron01storage) cvn H.B /ANN pdfmark end
- 1152 925 a Black FA(])g(route)g(con)n(ten)n(t)g
-(using)g(distributed)g(hash)g(tables)g([)p 0 1 0 TeXcolorrgb
-2805 925 a
+ 1062 2317 a Black Fx(])h(route)g(con)n(ten)n(t)g(using)g
+(distributed)h(hash)f(tables)g([)p 0 1 0 TeXcolorrgb
+2786 2317 a
 SDict begin H.S end
- 2805 925 a 0 1 0 TeXcolorrgb FA(18)p 0 1 0
-TeXcolorrgb 2889 871 a
+ 2786 2317 a 0 1 0 TeXcolorrgb Fx(15)p 0 1 0
+TeXcolorrgb 2869 2263 a
 SDict begin H.R end
- 2889 871 a 2889 925 a
+ 2869 2263 a 2869 2317 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.maymounkov02kademlia) cvn H.B /ANN pdfmark end
- 2889 925
-a Black FA(,)p 0 1 0 TeXcolorrgb 2912 925 a
+ 2869
+2317 a Black Fx(,)p 0 1 0 TeXcolorrgb 2892 2317 a
 SDict begin H.S end
- 2912 925
-a 0 1 0 TeXcolorrgb FA(28)p 0 1 0 TeXcolorrgb 2995 871
-a
+ 2892
+2317 a 0 1 0 TeXcolorrgb Fx(25)p 0 1 0 TeXcolorrgb 2975
+2263 a
 SDict begin H.R end
- 2995 871 a 2995 925 a
+ 2975 2263 a 2975 2317 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.stoica01chord) cvn H.B /ANN pdfmark end
- 2995 925 a Black FA(])g(to)g(ac)n(hiev)n(e)523
-1024 y Fs(O)r FA(\(log)15 b Fs(n)p FA(\))32 b(scalabilit)n(y)-7
+ 2975 2317 a Black Fx(])g(to)g(ac)n(hiev)
+n(e)523 2416 y Fp(O)r Fx(\(log)15 b Fp(n)p Fx(\))32 b(scalabilit)n(y)-7
 b(.)30 b(W)-7 b(ritable)32 b(distributed)g(\014le)f(systems)g(t)n
-(ypically)g(require)g(users)f(to)523 1124 y(authen)n(ticate)25
+(ypically)g(require)g(users)f(to)523 2516 y(authen)n(ticate)25
 b(themselv)n(es)g(b)r(efore)f(b)r(eing)i(gran)n(ted)e(access)f(to)i
-(the)h(system)f(b)n(y)g(one)g(of)g(the)523 1224 y(serv)n(ers)33
-b([)p 0 1 0 TeXcolorrgb 827 1224 a
+(the)h(system)f(b)n(y)g(one)g(of)g(the)523 2616 y(serv)n(ers)19
+b([)p 0 1 0 TeXcolorrgb 813 2616 a
 SDict begin H.S end
- 827 1224 a 0 1 0 TeXcolorrgb
-FA(19)p 0 1 0 TeXcolorrgb 910 1170 a
+ 813 2616 a 0 1 0 TeXcolorrgb
+Fx(16)p 0 1 0 TeXcolorrgb 896 2562 a
 SDict begin H.R end
- 910 1170 a 910 1224
+ 896 2562 a 896 2616
 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.mazires00sfs) cvn H.B /ANN pdfmark end
- 910 1224 a Black FA(].)j(ECRS)e(fo)r(cuses)h(on)g(encrypting)g
-(shared)f(data)g(while)i(allo)n(wing)d(p)r(eers)i(to)523
-1323 y(v)n(erify)21 b(the)h(in)n(tegrit)n(y)f(of)g(the)h(encrypted)g
-(data)f(that)h(they)g(are)f(routing.)g(In)h(SUNDR)h([)p
-0 1 0 TeXcolorrgb 3236 1323 a
+ 896 2616 a Black Fx(].)i(ECRS)f(fo)r(cuses)g(on)h(encrypting)f
+(shared)f(data)i(while)f(allo)n(wing)g(p)r(eers)g(to)g(v)n(er-)523
+2715 y(ify)30 b(the)g(in)n(tegrit)n(y)f(of)g(the)h(encrypted)g(data)f
+(that)h(they)f(are)g(routing.)g(In)h(SUNDR)h([)p 0 1 0
+TeXcolorrgb 3228 2715 a
 SDict begin H.S end
- 3236 1323 a 0 1 0 TeXcolorrgb
-FA(20)p 0 1 0 TeXcolorrgb 3319 1270 a
+ 3228 2715 a 0 1 0 TeXcolorrgb
+Fx(17)p 0 1 0 TeXcolorrgb 3311 2662 a
 SDict begin H.R end
- 3319 1270 a 3319
-1323 a
+ 3311 2662 a 3311
+2715 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.mazieres02building) cvn H.B /ANN pdfmark end
- 3319 1323 a Black FA(])e(a)523 1423 y(similar)g(problem)h(is)g
-(addressed;)f(here)g(users)g(can)h(detect)h(tamp)r(ering)e(b)n(y)h(the)
-g(\(un)n(trusted\))523 1522 y(serv)n(er)g(that)i(is)g(storing)f(the)h
-(data)g(in)g(a)g(setting)f(where)h(m)n(ultiple)g(users)f(are)g(up)r
-(dating)i(the)523 1622 y(same)h(data.)g(SUNDR)h(ac)n(hiev)n(es)e(what)h
-(is)g(called)g Ft(fork)k(c)l(onsistency)p FA(,)d(a)e(guaran)n(tee)g
-(that)h(if)523 1722 y(the)h(serv)n(er)e(passes)h(a)h(v)n(ersion)e(that)
-i(lac)n(ks)f(the)h(c)n(hanges)f(of)h(one)f(clien)n(t)h(to)g(another)f
-(clien)n(t)523 1821 y(at)g(one)f(p)r(oin)n(t)h(in)h(time,)f(it)g(can)g
-(nev)n(er)f(again)g(mak)n(e)g(the)h(c)n(hanges)e(of)i(either)g(clien)n
-(t)g(visible)523 1921 y(to)i(the)h(others.)f(This)g(is)g(a)g(w)n(eak)n
-(er)f(guaran)n(tee)f(than)j(the)g(optimal)f(situation)g(where)g(an)n(y)
-523 2021 y(misb)r(eha)n(vior)g(is)h(detected;)g(ho)n(w)n(ev)n(er,)e(it)
-j(is)e(the)i(strongest)e(p)r(ossible)g(prop)r(ert)n(y)g(that)h(can)523
-2120 y(b)r(e)39 b(ac)n(hiev)n(ed)f(giv)n(en)g(the)h(securit)n(y)f(mo)r
-(del)h(used.)g(ECRS)g(do)r(es)f(not)h(allo)n(w)f(users)f(with)523
-2220 y(distinct)h(pseudon)n(yms)f(to)h(up)r(date)g(the)g(same)f(con)n
-(ten)n(t)g(without)h(essen)n(tially)f(creating)523 2319
+ 3311 2715 a Black Fx(])e(a)523 2815 y(similar)21
+b(problem)h(is)g(addressed;)f(here)g(users)g(can)h(detect)h(tamp)r
+(ering)e(b)n(y)h(the)g(\(un)n(trusted\))523 2915 y(serv)n(er)g(that)i
+(is)g(storing)f(the)h(data)g(in)g(a)g(setting)f(where)h(m)n(ultiple)g
+(users)f(are)g(up)r(dating)i(the)523 3014 y(same)h(data.)g(SUNDR)h(ac)n
+(hiev)n(es)e(what)h(is)g(called)g Fq(fork)k(c)l(onsistency)p
+Fx(,)d(a)e(guaran)n(tee)g(that)h(if)523 3114 y(the)h(serv)n(er)e
+(passes)h(a)h(v)n(ersion)e(that)i(lac)n(ks)f(the)h(c)n(hanges)f(of)h
+(one)f(clien)n(t)h(to)g(another)f(clien)n(t)523 3213
+y(at)31 b(one)g(p)r(oin)n(t)g(in)h(time,)f(it)h(can)f(nev)n(er)f(again)
+g(mak)n(e)g(the)i(c)n(hanges)d(of)i(either)g(clien)n(t)h(visi-)523
+3313 y(ble)e(to)g(the)h(others.)e(This)h(is)g(a)g(w)n(eak)n(er)e
+(guaran)n(tee)h(than)h(the)h(optimal)f(situation)g(where)523
+3413 y(an)n(y)e(misb)r(eha)n(vior)f(is)i(detected;)g(ho)n(w)n(ev)n(er,)
+d(it)j(is)g(the)g(strongest)e(p)r(ossible)h(prop)r(ert)n(y)g(that)523
+3512 y(can)e(b)r(e)h(ac)n(hiev)n(ed)e(giv)n(en)g(the)i(securit)n(y)e
+(mo)r(del)i(used.)f(ECRS)g(do)r(es)g(not)g(allo)n(w)f(users)g(with)523
+3612 y(distinct)38 b(pseudon)n(yms)f(to)h(up)r(date)g(the)g(same)f(con)
+n(ten)n(t)g(without)h(essen)n(tially)f(creating)523 3712
 y(t)n(w)n(o)26 b(\014les.)g(This)h(allo)n(ws)e(ECRS)h(to)g(guaran)n
 (tee)f(that)h(p)r(eers)g(can)g(nev)n(er)g(return)g(an)g
-Ft(invalid)523 2419 y FA(result)h(since)h(ev)n(ery)e(cop)n(y)h(can)g(b)
+Fq(invalid)523 3811 y Fx(result)h(since)h(ev)n(ery)e(cop)n(y)h(can)g(b)
 r(e)h(uniquely)g(iden)n(ti\014ed)g(at)f(all)h(times.)523
-2594 y
+3974 y
 SDict begin H.S end
- 523 2594 a 523 2594 a
+ 523 3974 a 523 3974 a
 SDict begin 12 H.A end
- 523 2594 a 523 2594 a
+ 523 3974 a 523 3974 a
 SDict begin [ /View [/XYZ H.V] /Dest (section.1.3) cvn H.B /DEST pdfmark
 end
  523
-2594 a 102 x Fu(3)112 b(ECRS)37 b(enco)s(ding)523 2907
-y FA(The)30 b(primary)e(requiremen)n(ts)h(for)g(the)h(ECRS)f(enco)r
-(ding)g(are)g Ft(plausible)k(deniability)f FA(and)523
-3006 y Ft(r)l(obustness)p FA(.)22 b(Plausible)f(deniabilit)n(y)h
-(describ)r(es)g(the)g(abilit)n(y)g(of)g(the)h(participan)n(ts)e(to)h
-(claim)523 3106 y(ignorance)k(of)i(the)g(nature)f(of)h(transferred)e
-(con)n(ten)n(t.)h(The)h(idea)f(here)h(is)f(that)h(b)n(y)g(making)523
-3206 y(it)g(hard)f(for)g(in)n(termediaries)g(to)g(determine)h(the)g
-(con)n(ten)n(ts)f(that)h(they)g(are)f(routing,)g(they)523
-3305 y(are)h(less)h(lik)n(ely)f(to)i(casually)d(infringe)i(on)g(the)h
-(priv)-5 b(acy)28 b(of)h(other)g(users,)f(to)h(b)r(e)h(forced)e(to)523
-3405 y(do)k(so)f(b)n(y)h(an)g(adv)n(ersary)-7 b(,)30
-b(or)h(to)h(b)r(e)h(held)f(resp)r(onsible)g(for)f(the)i(actions)e(of)h
-(others)g(that)523 3505 y(they)c(w)n(ere)f(un)n(wittingly)h
-(facilitating.)p 1 0 0 TeXcolorrgb 1758 3505 a
+3974 a 100 x Fr(3)112 b(ECRS)37 b(enco)s(ding)523 4271
+y Fx(ECRS)j(uses)g(t)n(w)n(o)f(fundamen)n(tal)i(primitiv)n(es)e(in)i
+(the)f(o)n(v)n(erall)e(enco)r(ding)i(sc)n(heme.)g(The)523
+4370 y(ma)5 b(jorit)n(y)25 b(of)i(the)g(data)f(is)g(encrypted)h(with)g
+(a)f(v)-5 b(arian)n(t)26 b(of)g(F)-7 b(reenet's)27 b(CHK)f(enco)r(ding)
+g([)p 0 1 0 TeXcolorrgb 3317 4370 a
 SDict begin H.S end
- 1758 3505
-a -31 x Fz(2)1795 3505 y
-SDict begin 12 H.L end
- 1795 3505 a 1795 3505 a
-SDict begin [ /Subtype /Link /Dest (Hfootnote.2) cvn /H /I /Border
-[0 0 0] /Color [1 0 0] H.B /ANN pdfmark end
- 1795
-3505 a Black 28 w FA(Robustness)f(is)h(the)g(abilit)n(y)g(of)f(the)i
-(enco)r(ding)e(to)523 3604 y(resist)35 b(attac)n(ks)f(suc)n(h)h(as)f
-(data)h(corruption)f(and)h(spam.)g(Spam)g(is)g(di\013eren)n(t)h(from)e
-(data)523 3704 y(corruption)29 b(in)h(that)h(the)f(goal)f(of)h(the)g
-(spammer)g(is)g(to)g(direct)g(the)g(user)g(to)g(undesirable)523
-3803 y(con)n(ten)n(t,)d(p)r(ossibly)h(hiding)f(useful)i(information)e
-(in)h(a)f(sea)g(of)h(useless)f(results.)g(Naturally)523
-3903 y(the)h(enco)r(ding)e(should)h(not)g(signi\014can)n(tly)g
-(increase)f(the)h(amoun)n(t)g(of)g(data)g(that)g(needs)g(to)523
-4003 y(b)r(e)h(transferred.)648 4105 y(The)34 b(ECRS)g(enco)r(ding)g
-(sc)n(heme)g(addresses)f(these)i(requiremen)n(ts.)e(ECRS)h(pro)n(vides)
-523 4204 y(plausible)40 b(deniabilit)n(y)f(b)n(y)h(hiding)g(the)g
-(nature)f(of)h(the)g(queries)f(and)h(resp)r(onses)e(from)523
-4304 y(in)n(termediaries)29 b(through)h(encryption.)g(Despite)h(the)g
-(fact)g(that)f(queries)g(and)g(resp)r(onses)p Black 523
-4382 473 4 v 546 4436 a Fy(2)p 0 TeXcolorgray 606 4376
-a
+ 3317 4370 a 0 1 0
+TeXcolorrgb Fx(5)p 0 1 0 TeXcolorrgb 3359 4317 a
+SDict begin H.R end
+ 3359
+4317 a 3359 4370 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.clark99distributed) cvn H.B /ANN pdfmark end
+ 3359 4370 a Black Fx(].)523 4470 y(The)g(fundamen)n
+(tal)g(idea)g(b)r(ehind)h(CHK)f(is)g(that)g(con)n(ten)n(t)g(is)f
+(encrypted)h(with)h(a)e(k)n(ey)h(that)p Black 523 4538
+473 4 v 546 4592 a Fv(2)p 0 TeXcolorgray 606 4532 a
 SDict begin H.S end
- 606 4376 a 0 TeXcolorgray 0 TeXcolorgray 606 4376 a
+ 606
+4532 a 0 TeXcolorgray 0 TeXcolorgray 606 4532 a
 SDict begin H.R end
-
-606 4376 a 606 4376 a
+ 606 4532
+a 606 4532 a
 SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.2) cvn H.B /DEST pdfmark
 end
- 606 4376 a Black 92 x Fx(If)19
-b(the)g(data)g(cannot)g(b)r(e)f(iden)n(ti\014ed,)h(editorial)h(con)n
-(trol)g(is)f(tec)n(hnically)g(imp)r(ossible.)i(In)d Fq(Str)l(atton)606
-4559 y(Oakmont)36 b(v.)g(Pr)l(o)l(digy)p Fx(,)g(an)e(In)n(ternet)f(pro)
-n(vider)h(w)n(as)i(found)e(liable)i(for)f(hosting)g(a)g(bulletin)606
-4650 y(b)r(oard)29 b(on)h(whic)n(h)f(o\013ensiv)n(e)g(messages)i(had)e
-(b)r(een)g(p)r(osted.)h(This)g(\014nding)e(resulted)h(b)r(ecause)606
-4742 y(the)g(pro)n(vider)g(had)g(hired)g(individuals)h(to)f(exercise)i
-(editorial)f(con)n(trol)g(o)n(v)n(er)g(con)n(ten)n(t.)f(If)g(the)606
-4833 y(pro)n(vider)17 b(had)g(merely)h(published)f(messages)j(from)e
-(users)g(without)g(in)n(terference,)g(the)f(pro)n(vider)606
-4924 y(w)n(ould)26 b(p)r(oten)n(tially)g(not)g(ha)n(v)n(e)f(b)r(een)g
-(held)h(accoun)n(table)g([)p 0 1 0 TeXcolorrgb 2319 4924
-a
+ 606 4532 a Black 92 x Fu(Proto)r(col)i(description)e(from)
+g(the)g(giFT-F)-6 b(astT)g(rac)n(k)26 b(pro)t(ject)h(is)f(a)n(v)l
+(ailable)h(at)p 0 1 0 0 TeXcolorcmyk 689 4802 a
 SDict begin H.S end
- 2319 4924 a 0 1 0 TeXcolorrgb Fx(29)p 0 1 0 TeXcolorrgb
-2396 4876 a
+ 689 4802
+a 0 1 0 0 TeXcolorcmyk -16 x Ft(http://gnunet.org/papers/FAST)q(-)t(TR)
+q(ACK-)5 b(PROTO)q(COL)p 0 1 0 0 TeXcolorcmyk 2423 4734
+a
 SDict begin H.R end
- 2396 4876 a 2396 4924 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.stratton_oakmont) cvn H.B /ANN pdfmark end
- 2396 4924 a Black
-Fx(].)p Black Black Black eop end
-%%Page: 8 8
-TeXDict begin 8 7 bop 0 0 a
+ 2423 4734 a 2423 4786 a
+SDict begin [ /H /I /Border [0 0 0] /Color [0 1 1] /Action << /Subtype
+/URI /URI (http://gnunet.org/papers/FAST-TRACK-PROTOCOL) >> /Subtype
+/Link H.B /ANN pdfmark end
+ 2423 4786 a Black Fu(.)p Black
+Black Black eop end
+%%Page: 7 7
+TeXDict begin 7 6 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -7042,160 +6302,176 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.8) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.7) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(8)237 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(are)21 b(encrypted,)h(in)n(termediaries)e(can)i
-Ft(verify)i FA(that)e(the)g(resp)r(onses)f(are)g(v)-5
-b(alid)22 b(with)g(resp)r(ect)523 548 y(to)f(a)g(particular)e(query)-7
-b(.)21 b(Th)n(us,)g(the)g(enco)r(ding)g(mec)n(hanism)g(pro)n(vides)e
-(robustness)h(against)523 648 y(tamp)r(ering)g(and)g(false)h(replies.)e
-(Additional)i(robustness)e(is)i(gained)f(in)g(ECRS)g(b)n(y)h(splitting)
-523 747 y(\014les)j(in)n(to)g(blo)r(c)n(ks)f(that)i(can)f(b)r(e)g
-Ft(indep)l(endently)i FA(v)n(eri\014ed,)d(stored)g(and)h(distributed)h
-(across)523 847 y(the)c(net)n(w)n(ork.)e(This)h(mak)n(es)g(it)h(easy)e
-(for)h(proto)r(cols)f(using)h(ECRS)g(to)h(incorp)r(orate)e(features)523
-946 y(suc)n(h)27 b(as)f(sw)n(arm)g(distribution)h([)p
-0 1 0 TeXcolorrgb 1547 946 a
+ 523 232 a Black 1036 w Fu(An)25
+b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
+b(7)p Black 523 448 a Fx(is)28 b(deriv)n(ed)f(from)g(a)g(cryptographic)
+f(hash)h(of)h(the)g(plain)n(text.)g(The)f(encrypted)h(con)n(ten)n(t)f
+(is)523 548 y(hashed)22 b(again)g(to)g(obtain)h(the)g(query)f(hash)g
+(whic)n(h)h(is)f(used)h(to)g(request)f(the)h(con)n(ten)n(t.)f(This)523
+648 y(k)n(ey-query)j(pair)i(is)g(what)g(the)h(receiv)n(er)d(needs)i(to)
+g(do)n(wnload)f(and)h(decrypt)g(the)g(con)n(ten)n(t.)648
+747 y(The)38 b(primary)g(di\013erence)g(b)r(et)n(w)n(een)g(the)h(use)g
+(of)f(CHK)h(in)g(ECRS)f(and)g(that)h(used)523 847 y(in)29
+b([)p 0 1 0 TeXcolorrgb 644 847 a
 SDict begin H.S end
- 1547 946 a 0 1 0 TeXcolorrgb
-FA(15)p 0 1 0 TeXcolorrgb 1630 893 a
+ 644 847 a 0 1 0 TeXcolorrgb
+Fx(5)p 0 1 0 TeXcolorrgb 685 793 a
 SDict begin H.R end
- 1630 893 a 1630
-946 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.hartman99swarm) cvn H.B /ANN pdfmark end
- 1630 946 a Black FA(],)g(load)f(balancing)g(and)h(micro)r
-(economics)e([)p 0 1 0 TeXcolorrgb 3036 946 a
-SDict begin H.S end
- 3036 946
-a 0 1 0 TeXcolorrgb FA(13)p 0 1 0 TeXcolorrgb 3119 893
+ 685 793 a 685 847
 a
-SDict begin H.R end
- 3119 893 a 3119 946 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.ebe2003) cvn H.B /ANN pdfmark end
- 3119 946 a Black FA(].)i(These)523
-1046 y(features)g(are)g(also)g(signi\014can)n(t)g(from)h(the)g(viewp)r
-(oin)n(t)g(of)g(scalabilit)n(y)-7 b(.)27 b(When)h(all)g(handled)523
-1146 y(blo)r(c)n(ks)d(are)g(small,)h(no)r(des)g(can)f(participate)g(in)
-i(the)f(net)n(w)n(ork)e(activit)n(y)i(ev)n(en)f(if)i(their)f(o)n(wn)523
-1245 y(resources)36 b(are)h(limited.)i(Also,)f(storing)f(small,)h
-(individually)g(unin)n(telligible)g(pieces)g(of)523 1345
-y(p)r(oten)n(tially)19 b(ob)5 b(jectionable)18 b(con)n(ten)n(t)h(is)g
-(lik)n(ely)f(to)h(further)g(supp)r(ort)g(plausible)g(deniabilit)n(y)-7
-b(.)648 1468 y(ECRS)27 b(uses)g(t)n(w)n(o)g(fundamen)n(tal)h(primitiv)n
-(es)g(in)g(the)g(o)n(v)n(erall)d(enco)r(ding)j(sc)n(heme.)f(The)523
-1567 y(ma)5 b(jorit)n(y)25 b(of)i(the)g(data)f(is)g(encrypted)h(with)g
-(a)f(v)-5 b(arian)n(t)26 b(of)g(F)-7 b(reenet's)27 b(CHK)f(enco)r(ding)
-g([)p 0 1 0 TeXcolorrgb 3317 1567 a
-SDict begin H.S end
- 3317 1567 a 0 1 0
-TeXcolorrgb FA(5)p 0 1 0 TeXcolorrgb 3359 1514 a
-SDict begin H.R end
- 3359
-1514 a 3359 1567 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.clark99distributed) cvn H.B /ANN pdfmark end
- 3359 1567 a Black FA(],)523 1667 y(where)35
-b(CHK)h(stands)g(for)f(Con)n(ten)n(t)h(Hash)g(Key)-7
-b(.)35 b(In)h(other)g(w)n(ords,)e(the)j(con)n(ten)n(t)e(is)h(en-)523
-1767 y(crypted)31 b(with)g(a)g(k)n(ey)g(that)g(is)g(deriv)n(ed)f(from)h
-(a)g(cryptographic)e(hash)h(of)i(the)f(plain)n(text.)523
-1866 y(The)23 b(encrypted)g(con)n(ten)n(t)g(is)g(hashed)f(again)g(to)h
-(obtain)g(the)g(query)g(hash)f(whic)n(h)h(is)g(used)g(to)523
-1966 y(request)i(the)i(con)n(ten)n(t.)e(This)h(k)n(ey-query)e(pair)h
-(is)h(what)g(the)g(receiv)n(er)f(needs)h(to)f(do)n(wnload)523
-2065 y(and)i(decrypt)h(the)g(con)n(ten)n(t.)648 2188
-y(The)38 b(primary)g(di\013erence)g(b)r(et)n(w)n(een)g(the)h(use)g(of)f
-(CHK)h(in)g(ECRS)f(and)g(that)h(used)523 2288 y(in)29
-b([)p 0 1 0 TeXcolorrgb 644 2288 a
-SDict begin H.S end
- 644 2288 a 0 1 0 TeXcolorrgb
-FA(5)p 0 1 0 TeXcolorrgb 685 2234 a
-SDict begin H.R end
- 685 2234 a 685 2288
-a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.clark99distributed) cvn H.B /ANN pdfmark end
- 685 2288 a Black FA(])g(is)f(that)h(ECRS)g(do)r(es)f(not)g(sub)5
+ 685 847 a Black Fx(])g(is)f(that)h(ECRS)g(do)r(es)f(not)g(sub)5
 b(ject)29 b(en)n(tire)f(\014les)g(to)h(the)g(CHK)f(enco)r(ding.)g
-(Instead,)523 2387 y(\014les)f(are)g(split)h(in)n(to)f(\014xed-size)g
+(Instead,)523 946 y(\014les)f(are)g(split)h(in)n(to)f(\014xed-size)g
 (blo)r(c)n(ks)g(whic)n(h)g(could)g(then)h(b)r(e)g(individually)g
-(distributed)523 2487 y(\(and)34 b(replicated\))g(across)e(p)r(eers)i
+(distributed)523 1046 y(\(and)34 b(replicated\))g(across)e(p)r(eers)i
 (in)h(the)f(net)n(w)n(ork;)f(this)i(is)f(a)f(natural)h(w)n(a)n(y)f(to)h
-(balance)523 2587 y(the)f(load)e(and)i(to)f(enable)g(sw)n(arming.)f
+(balance)523 1146 y(the)f(load)e(and)i(to)f(enable)g(sw)n(arming.)f
 (These)h(\014xed-sized)g(blo)r(c)n(ks)f(can)h(b)r(e)h(individually)523
-2686 y(iden)n(ti\014ed,)d(encrypted,)e(decrypted)h(and)g(v)n
+1245 y(iden)n(ti\014ed,)d(encrypted,)e(decrypted)h(and)g(v)n
 (eri\014ed.)f(Eac)n(h)g(blo)r(c)n(k)g(is)h(iden)n(ti\014ed)h(b)n(y)e
-(one)h(or)523 2786 y(t)n(w)n(o)24 b(hash)h(co)r(des,)g(and)g(the)h(blo)
+(one)h(or)523 1345 y(t)n(w)n(o)24 b(hash)h(co)r(des,)g(and)g(the)h(blo)
 r(c)n(ks)e(are)g(encrypted)h(using)g(a)g(k)n(ey)f(that)i(is)f(indep)r
-(enden)n(t)h(of)523 2886 y(the)g(hashes)e(used)i(for)f(iden)n
+(enden)n(t)h(of)523 1445 y(the)g(hashes)e(used)i(for)f(iden)n
 (ti\014cation.)g(V)-7 b(eri\014cation)25 b(only)g(requires)f(the)h
-(encrypted)h(blo)r(c)n(k)523 2985 y(and)k(the)g(query;)g(it)g(do)r(es)g
+(encrypted)h(blo)r(c)n(k)523 1544 y(and)k(the)g(query;)g(it)g(do)r(es)g
 (not)g(rev)n(eal)f(the)h(k)n(ey)f(required)g(to)h(decrypt)g(the)h(blo)r
-(c)n(k.)e(ECRS)523 3085 y(guaran)n(tees)23 b(that)j(it)g(is)g(hard)f
+(c)n(k.)e(ECRS)523 1644 y(guaran)n(tees)23 b(that)j(it)g(is)g(hard)f
 (to)g(forge)g(a)g(resp)r(onse)f(that)i(passes)e(v)n(eri\014cation)h
-(for)g(a)g(giv)n(en)523 3184 y(query)-7 b(,)29 b(and)h(splitting)g
+(for)g(a)g(giv)n(en)523 1743 y(query)-7 b(,)29 b(and)h(splitting)g
 (\014les)g(in)n(to)f(blo)r(c)n(ks)g(allo)n(ws)g(ECRS)g(to)h(detect)g
-(data)g(corruption)e(on)523 3284 y(the)34 b(blo)r(c)n(k)f(lev)n(el.)g
+(data)g(corruption)e(on)523 1843 y(the)34 b(blo)r(c)n(k)f(lev)n(el.)g
 (Malicious)g(p)r(eers)g(cannot)g(transmit)h(more)e(than)i(the)g
-(selected)g(blo)r(c)n(k)523 3384 y(size)27 b(of)h(in)n(v)-5
+(selected)g(blo)r(c)n(k)523 1943 y(size)27 b(of)h(in)n(v)-5
 b(alid)27 b(data)g(b)r(efore)h(b)r(eing)f(detected.)648
-3506 y(The)18 b(second)h(primitiv)n(e)f(used)h(b)n(y)f(ECRS,)h(the)g
-Ft(KBlo)l(ck)p FA(,)h(is)f(completely)f(no)n(v)n(el.)g
-Ft(KBlo)l(ck)p FA(s)523 3606 y(allo)n(w)24 b(users)h(to)g(securely)f
+2042 y(The)18 b(second)h(primitiv)n(e)f(used)h(b)n(y)f(ECRS,)h(the)g
+Fq(KBlo)l(ck)p Fx(,)h(is)f(completely)f(no)n(v)n(el.)g
+Fq(KBlo)l(ck)p Fx(s)523 2142 y(allo)n(w)24 b(users)h(to)g(securely)f
 (obtain)i(the)f(k)n(ey-query)f(pair)g(b)n(y)i(en)n(tering)e(a)h
-(natural)g(language)523 3706 y(k)n(eyw)n(ord)35 b(selected)i(b)n(y)f
+(natural)g(language)523 2242 y(k)n(eyw)n(ord)35 b(selected)i(b)n(y)f
 (the)h(con)n(ten)n(t)f(pro)n(vider.)g(The)g(primitiv)n(e)h(used)g(to)f
-(ac)n(hiev)n(e)g(this)523 3805 y(in)e([)p 0 1 0 TeXcolorrgb
-649 3805 a
+(ac)n(hiev)n(e)g(this)523 2341 y(in)e([)p 0 1 0 TeXcolorrgb
+649 2341 a
 SDict begin H.S end
- 649 3805 a 0 1 0 TeXcolorrgb FA(2)p 0 1 0
-TeXcolorrgb 691 3752 a
+ 649 2341 a 0 1 0 TeXcolorrgb Fx(3)p 0 1 0
+TeXcolorrgb 691 2288 a
 SDict begin H.R end
- 691 3752 a 691 3805 a
+ 691 2288 a 691 2341 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.esed) cvn H.B /ANN pdfmark end
- 691 3805
-a Black FA(],)g(the)g(triple)g(hash,)f(is)h(impro)n(v)n(ed)f(on)g(in)h
-(this)h(w)n(ork)d(in)i(that)g Ft(KBlo)l(ck)p FA(s)h Ft(c)l(annot)f
-FA(b)r(e)523 3905 y(attac)n(k)n(ed)19 b(successfully)g(b)n(y)g(a)g
+ 691 2341
+a Black Fx(],)g(the)g(triple)g(hash,)f(is)h(impro)n(v)n(ed)f(on)g(in)h
+(this)h(w)n(ork)d(in)i(that)g Fq(KBlo)l(ck)p Fx(s)h Fq(c)l(annot)f
+Fx(b)r(e)523 2441 y(attac)n(k)n(ed)19 b(successfully)g(b)n(y)g(a)g
 (non-guessing)f(in)n(termediary)-7 b(.)19 b(The)h(triple)g(hash)f(sc)n
-(heme)g(w)n(as)523 4005 y(vulnerable)37 b(to)g(p)r(ossibile)g
+(heme)g(w)n(as)523 2540 y(vulnerable)37 b(to)g(p)r(ossibile)g
 (substitution)h(attac)n(ks)e(b)n(y)h(in)n(termediaries.)g
-Ft(KBlo)l(ck)p FA(s)h(defeat)523 4104 y(this)29 b(attac)n(k)f(b)n(y)h
+Fq(KBlo)l(ck)p Fx(s)h(defeat)523 2640 y(this)29 b(attac)n(k)f(b)n(y)h
 (signing)f(con)n(ten)n(t)g(adv)n(ertisemen)n(ts)f(using)i
-(deterministically)f(generated)523 4204 y(public)34 b(k)n(eys.)e
-(Additionally)-7 b(,)33 b(b)n(y)g(using)f Ft(KBlo)l(ck)p
-FA(s,)i(do)r(cumen)n(ts)f(can)g(b)r(e)g(inserted)g(under)523
-4303 y(m)n(ultiple)h(k)n(eys)e(at)g(a)h(minimal)g(cost)f(in)i(terms)e
+(deterministically)f(generated)523 2740 y(public)34 b(k)n(eys.)e
+(Additionally)-7 b(,)33 b(b)n(y)g(using)f Fq(KBlo)l(ck)p
+Fx(s,)i(do)r(cumen)n(ts)f(can)g(b)r(e)g(inserted)g(under)523
+2839 y(m)n(ultiple)h(k)n(eys)e(at)g(a)h(minimal)g(cost)f(in)i(terms)e
 (of)h(space.)f(Users)h(can)f(p)r(erform)h(b)r(o)r(olean)523
-4403 y(searc)n(hes)c(of)i(the)g(form)g(\\a)f(AND)i(b")f(whic)n(h)g
+2939 y(searc)n(hes)c(of)i(the)g(form)g(\\a)f(AND)i(b")f(whic)n(h)g
 (then)g(return)g(the)g(do)r(cumen)n(ts)g(whic)n(h)g(w)n(ere)523
-4503 y(inserted)h(under)g(a)f(matc)n(hing)h(set)g(of)g(k)n(eyw)n(ords.)
+3039 y(inserted)h(under)g(a)f(matc)n(hing)h(set)g(of)g(k)n(eyw)n(ords.)
 d(Before)j(the)g(do)n(wnload,)f(the)h(user)f(can)523
-4602 y(re\014ne)c(the)h(searc)n(h)e(results)h(using)h(the)g(metadata)f
-(asso)r(ciated)f(with)i(the)g(\014le.)648 4725 y(The)23
+3138 y(re\014ne)c(the)h(searc)n(h)e(results)h(using)h(the)g(metadata)f
+(asso)r(ciated)f(with)i(the)g(\014le.)648 3238 y(The)23
 b(rest)g(of)h(this)g(Section)f(giv)n(es)g(a)g(b)r(ottom-up)h
-(description)f(of)g(ECRS.)h(After)g(a)f(brief)523 4825
+(description)f(of)g(ECRS.)h(After)g(a)f(brief)523 3337
 y(o)n(v)n(erview,)29 b(P)n(art)p 1 0 0 TeXcolorrgb 1083
-4825 a
+3337 a
 SDict begin H.S end
- 1083 4825 a 1 0 0 TeXcolorrgb FA(3.2)p 1 0 0 TeXcolorrgb
-1189 4771 a
+ 1083 3337 a 1 0 0 TeXcolorrgb Fx(3.2)p 1 0 0 TeXcolorrgb
+1189 3284 a
 SDict begin H.R end
- 1189 4771 a 1189 4825 a
+ 1189 3284 a 1189 3337 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (subsection.1.3.2) cvn H.B /ANN pdfmark end
- 1189 4825 a Black
-31 w FA(sho)n(ws)h(ho)n(w)g(individual)h(data)g(blo)r(c)n(ks)f(are)g
-(encrypted)h(in)g(order)f(to)523 4924 y(mak)n(e)c(it)i(imp)r(ossible)f
+ 1189 3337 a Black
+31 w Fx(sho)n(ws)h(ho)n(w)g(individual)h(data)g(blo)r(c)n(ks)f(are)g
+(encrypted)h(in)g(order)f(to)523 3437 y(mak)n(e)c(it)i(imp)r(ossible)f
 (for)g(the)h(in)n(termediaries)e(to)h(determine)g(what)g(they)h(are)e
-(storing)g(or)p Black Black eop end
-%%Page: 9 9
-TeXDict begin 9 8 bop 0 0 a
+(storing)g(or)523 3537 y(transmitting.)k(P)n(art)p 1 0 0
+TeXcolorrgb 1219 3537 a
+SDict begin H.S end
+ 1219 3537 a 1 0 0 TeXcolorrgb
+Fx(3.3)p 1 0 0 TeXcolorrgb 1325 3483 a
+SDict begin H.R end
+ 1325 3483 a 1325
+3537 a
+SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(subsection.1.3.3) cvn H.B /ANN pdfmark end
+ 1325 3537 a Black 31 w Fx(then)g(describ)r(es)f(ho)n(w)h
+(\014les)g(are)f(split)h(in)n(to)g(those)f(data)h(blo)r(c)n(ks.)523
+3636 y(P)n(art)p 1 0 0 TeXcolorrgb 714 3636 a
+SDict begin H.S end
+ 714 3636
+a 1 0 0 TeXcolorrgb Fx(3.4)p 1 0 0 TeXcolorrgb 820 3583
+a
+SDict begin H.R end
+ 820 3583 a 820 3636 a
+SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(subsection.1.3.4) cvn H.B /ANN pdfmark end
+ 820 3636 a Black 30 w Fx(motiv)-5
+b(ates)30 b(and)f(explains)h(ho)n(w)f(ECRS)h(enables)f(users)h(to)f
+(searc)n(h)g(for)g(con)n(ten)n(t)523 3736 y(without)41
+b(exp)r(osing)e(the)i(plain)n(text)f(of)g(the)h(k)n(eyw)n(ord)d(or)h
+(the)i(corresp)r(onding)d(con)n(ten)n(t)523 3836 y(and)h(ho)n(w)g(in)n
+(termediaries)f(can)h(v)n(erify)f(that)i(a)f(giv)n(en)f(encrypted)h
+(reply)g(matc)n(hes)g(the)523 3935 y(\(encrypted\))30
+b(query)-7 b(.)30 b(Finally)-7 b(,)30 b(the)g(core)f(of)h(ECRS)f(is)h
+(summarized)g(in)g(the)g(form)g(of)g(the)523 4035 y(enco)r(ding)d
+(algorithm)g(and)g(a)g(proto)r(col)g(example.)523 4189
+y
+SDict begin H.S end
+ 523 4189 a 523 4189 a
+SDict begin 12 H.A end
+ 523 4189 a 523 4189 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.1) cvn H.B /DEST
+pdfmark end
+ 523 4189
+a 83 x Fn(3.1)95 b(Ov)m(erview)523 4426 y Fx(In)25 b(ECRS,)f(the)h
+(enco)r(ded)g(represen)n(tation)e(of)h(a)g(\014le)h(is)f(a)h
+(collection)f(of)g(blo)r(c)n(ks.)g(There)g(are)523 4526
+y(four)h(t)n(yp)r(es)g(of)g(blo)r(c)n(ks:)f Fq(DBlo)l(cks)p
+Fx(,)i Fq(IBlo)l(cks)p Fx(,)h Fq(SBlo)l(cks)f Fx(and)f
+Fq(KBlo)l(cks)p Fx(.)h(The)f(maxim)n(um)g(size)523 4625
+y(of)f(all)g(blo)r(c)n(ks)g(in)h(ECRS)f(is)g(supp)r(osed)g(to)h(b)r(e)f
+(\014xed)h(as)f(some)f(small)h(n)n(um)n(b)r(er)h(\(e.g.)f(32Kb\).)523
+4725 y(The)i(blo)r(c)n(ks)f(are)g(used)h(to)g(create)f(a)h(tree)g
+(structure)f(of)h(the)h(enco)r(ded)f(\014le)g(\(see)g(Figure)p
+1 0 0 TeXcolorrgb 3308 4725 a
+SDict begin H.S end
+ 3308 4725 a 1 0 0 TeXcolorrgb
+Fx(1)p 1 0 0 TeXcolorrgb 3350 4672 a
+SDict begin H.R end
+ 3350 4672 a 3350
+4725 a
+SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(figure.1.1) cvn H.B /ANN pdfmark end
+ 3350 4725 a Black Fx(\).)523 4825 y(The)39 b(actual)f(\014le)g
+(data)g(is)g(enco)r(ded)h(in)g Fq(DBlo)l(cks)g Fx(whic)n(h)f(are)g
+(organized)f(b)n(y)h(a)g(tree)g(of)523 4924 y Fq(IBlo)l(cks)p
+Fx(.)j(The)f Fq(IBlo)l(cks)p Fx(,)h(whic)n(h)e(are)g(similar)f(to)i
+(UNIX)g(ino)r(des)g([)p 0 1 0 TeXcolorrgb 2698 4924 a
+SDict begin H.S end
+
+2698 4924 a 0 1 0 TeXcolorrgb Fx(18)p 0 1 0 TeXcolorrgb
+2781 4871 a
+SDict begin H.R end
+ 2781 4871 a 2781 4924 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.mckusick84fast) cvn H.B /ANN pdfmark end
+ 2781 4924 a Black
+Fx(],)g(are)e(indirection)p Black Black eop end
+%%Page: 8 8
+TeXDict begin 8 7 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -7207,55 +6483,54 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.9) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.8) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
-b(9)p Black Black 1723 442 a Fp(K)5 b(B)t(l)q(ock)1858
-491 y Fo(\017)p Fn(\017)p 1856 491 4 24 v 1714 567 a
-Fp(I)h(B)t(l)q(ock)1950 576 y Fm(>)1233 653 y Fo(r)p
-Fn(r)1233 652 y Fl(d)1270 646 y(d)1308 639 y(d)1346 633
-y(d)1384 626 y(d)1421 620 y(d)1459 613 y(d)1497 607 y(d)1535
-601 y(d)1572 594 y(d)1610 588 y(d)1648 581 y(d)1858 651
-y Fo(\017)p Fn(\017)p 1856 651 4 4 v 1856 639 V 1856
-627 V 1856 615 V 1856 603 V 2518 654 a Fo(,)p Fn(,)2477
-647 y Fl(Z)2436 640 y(Z)2395 634 y(Z)2354 627 y(Z)2313
-620 y(Z)2272 614 y(Z)2231 607 y(Z)2190 600 y(Z)2149 593
-y(Z)2109 587 y(Z)2068 580 y(Z)2027 573 y(Z)937 702 y
-Fp(I)g(B)t(l)q(ock)1173 710 y Fy(1)862 759 y Fo(u)p Fn(u)p
-Fl(k)887 750 y(k)1072 785 y Fo(\017)p Fn(\017)p 1071
-785 V 1071 772 V 1071 759 V 1071 746 V 1071 733 V 1279
-759 a Fo(\))p Fn(\))1240 744 y Fl(S)1217 735 y(S)1813
-684 y Fp(:)13 b(:)g(:)1665 799 y Fo(y)p Fn(y)p 1664 801
-V 1677 792 V 1690 784 V 1703 776 V 1717 768 V 1730 760
-V 1743 752 V 1756 743 V 1770 735 V 1783 727 V 1796 719
-V 1809 711 V 1858 785 a Fo(\017)p Fn(\017)p 1856 787
-V 1856 771 V 1856 756 V 1856 741 V 1856 726 V 1856 710
-V 2050 799 a Fo(\045)p Fn(\045)p 2049 801 V 2035 792
-V 2022 784 V 2009 776 V 1996 768 V 1983 760 V 1969 752
-V 1956 743 V 1943 735 V 1930 727 V 1916 719 V 1903 711
-V 2543 702 a Fp(I)6 b(B)t(l)q(ock)2779 711 y Fk(k)2461
-759 y Fo(u)p Fn(u)2461 760 y Fl(k)2488 750 y(k)2680 785
-y Fo(\017)p Fn(\017)p 2678 785 V 2678 773 V 2678 761
-V 2678 749 V 2678 737 V 2894 759 a Fo(\))p Fn(\))2855
-745 y Fl(S)2829 735 y(S)567 836 y Fp(D)r(B)t(l)q(ock)828
-844 y Fy(1)716 932 y Fo(\017)p Fn(\017)p 714 932 4 64
-v 1028 818 a Fp(:)13 b(:)g(:)1072 932 y Fo(\017)p Fn(\017)p
+ 523 232 a Black Fu(8)237 b(C.)27
+b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
+Black Black 1723 442 a Fm(K)5 b(B)t(l)q(ock)1858 491
+y Fl(\017)p Fk(\017)p 1856 491 4 24 v 1714 567 a Fm(I)h(B)t(l)q(ock)
+1950 576 y Fj(>)1233 653 y Fl(r)p Fk(r)1233 652 y Fi(d)1270
+646 y(d)1308 639 y(d)1346 633 y(d)1384 626 y(d)1421 620
+y(d)1459 613 y(d)1497 607 y(d)1535 601 y(d)1572 594 y(d)1610
+588 y(d)1648 581 y(d)1858 651 y Fl(\017)p Fk(\017)p 1856
+651 4 4 v 1856 639 V 1856 627 V 1856 615 V 1856 603 V
+2518 654 a Fl(,)p Fk(,)2477 647 y Fi(Z)2436 640 y(Z)2395
+634 y(Z)2354 627 y(Z)2313 620 y(Z)2272 614 y(Z)2231 607
+y(Z)2190 600 y(Z)2149 593 y(Z)2109 587 y(Z)2068 580 y(Z)2027
+573 y(Z)937 702 y Fm(I)g(B)t(l)q(ock)1173 710 y Fv(1)862
+759 y Fl(u)p Fk(u)p Fi(k)887 750 y(k)1072 785 y Fl(\017)p
+Fk(\017)p 1071 785 V 1071 772 V 1071 759 V 1071 746 V
+1071 733 V 1279 759 a Fl(\))p Fk(\))1240 744 y Fi(S)1217
+735 y(S)1813 684 y Fm(:)13 b(:)g(:)1665 799 y Fl(y)p
+Fk(y)p 1664 801 V 1677 792 V 1690 784 V 1703 776 V 1717
+768 V 1730 760 V 1743 752 V 1756 743 V 1770 735 V 1783
+727 V 1796 719 V 1809 711 V 1858 785 a Fl(\017)p Fk(\017)p
+1856 787 V 1856 771 V 1856 756 V 1856 741 V 1856 726
+V 1856 710 V 2050 799 a Fl(\045)p Fk(\045)p 2049 801
+V 2035 792 V 2022 784 V 2009 776 V 1996 768 V 1983 760
+V 1969 752 V 1956 743 V 1943 735 V 1930 727 V 1916 719
+V 1903 711 V 2543 702 a Fm(I)6 b(B)t(l)q(ock)2779 711
+y Fh(k)2461 759 y Fl(u)p Fk(u)2461 760 y Fi(k)2488 750
+y(k)2680 785 y Fl(\017)p Fk(\017)p 2678 785 V 2678 773
+V 2678 761 V 2678 749 V 2678 737 V 2894 759 a Fl(\))p
+Fk(\))2855 745 y Fi(S)2829 735 y(S)567 836 y Fm(D)r(B)t(l)q(ock)828
+844 y Fv(1)716 932 y Fl(\017)p Fk(\017)p 714 932 4 64
+v 1028 818 a Fm(:)13 b(:)g(:)1072 932 y Fl(\017)p Fk(\017)p
 1071 934 4 4 v 1071 919 V 1071 904 V 1071 889 V 1071
-874 V 1071 859 V 1071 844 V 1281 836 a Fp(D)r(B)t(l)q(ock)1542
-845 y Fk(l)1424 932 y Fo(\017)p Fn(\017)p 1422 932 4
-63 v 1813 818 a Fp(:)g(:)g(:)1858 932 y Fo(\017)p Fn(\017)p
+874 V 1071 859 V 1071 844 V 1281 836 a Fm(D)r(B)t(l)q(ock)1542
+845 y Fh(l)1424 932 y Fl(\017)p Fk(\017)p 1422 932 4
+63 v 1813 818 a Fm(:)g(:)g(:)1858 932 y Fl(\017)p Fk(\017)p
 1856 934 4 4 v 1856 919 V 1856 904 V 1856 889 V 1856
-874 V 1856 859 V 1856 844 V 2149 836 a Fp(D)r(B)t(l)q(ock)2410
-844 y Fk(m)2309 932 y Fo(\017)p Fn(\017)p 2307 932 4
-64 v 2635 818 a Fp(:)g(:)g(:)2680 932 y Fo(\017)p Fn(\017)p
+874 V 1856 859 V 1856 844 V 2149 836 a Fm(D)r(B)t(l)q(ock)2410
+844 y Fh(m)2309 932 y Fl(\017)p Fk(\017)p 2307 932 4
+64 v 2635 818 a Fm(:)g(:)g(:)2680 932 y Fl(\017)p Fk(\017)p
 2678 934 4 4 v 2678 919 V 2678 904 V 2678 889 V 2678
-874 V 2678 859 V 2678 844 V 2890 836 a Fp(D)r(B)t(l)q(ock)3151
-844 y Fk(n)3042 932 y Fo(\017)p Fn(\017)p 3041 932 4
+874 V 2678 859 V 2678 844 V 2890 836 a Fm(D)r(B)t(l)q(ock)3151
+844 y Fh(n)3042 932 y Fl(\017)p Fk(\017)p 3041 932 4
 64 v 522 936 2 2 v 524 937 2667 4 v 3191 936 2 2 v 521
 1048 4 111 v 3193 1048 V 522 1051 2 2 v 524 1052 2667
-4 v 3191 1051 2 2 v 1603 1006 a Fw(Original)41 b(data)523
-1201 y Fr(Fig.)15 b(1.)p 0 TeXcolorgray 814 1102 a
+4 v 3191 1051 2 2 v 1603 1006 a Ft(Original)41 b(data)523
+1201 y Fn(Fig.)15 b(1.)p 0 TeXcolorgray 814 1102 a
 SDict begin H.S end
  814
 1102 a 0 TeXcolorgray 0 TeXcolorgray 814 1102 a
@@ -7264,150 +6539,122 @@
 a 814 1102 a
 SDict begin [ /View [/XYZ H.V] /Dest (figure.1.1) cvn H.B /DEST pdfmark
 end
- 814 1102 a Black 99 x FA(Simple)40 b(enco)r(ding)g(of)f(a)
+ 814 1102 a Black 99 x Fx(Simple)40 b(enco)r(ding)g(of)f(a)
 h(\014le)g(using)f(a)h(tree)f(of)h(CHK)g(blo)r(c)n(ks)f(\()p
-Fs(D)r(B)t(l)r(ock)s FA(s)g(and)523 1301 y Fs(I)7 b(B)t(l)r(ock)s
-FA(s)41 b(are)f(CHK)i(enco)r(ded\))f(with)h(one)g Fs(K)6
-b(B)t(l)r(ock)43 b FA(to)e(allo)n(w)g(for)g(a)g(k)n(eyw)n(ord-based)523
-1400 y(searc)n(h.)p Black Black Black 523 1838 a(transmitting.)30
-b(P)n(art)p 1 0 0 TeXcolorrgb 1219 1838 a
-SDict begin H.S end
- 1219 1838 a
-1 0 0 TeXcolorrgb FA(3.3)p 1 0 0 TeXcolorrgb 1325 1784
-a
-SDict begin H.R end
- 1325 1784 a 1325 1838 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(subsection.1.3.3) cvn H.B /ANN pdfmark end
- 1325 1838 a Black 31 w FA(then)g(describ)r
-(es)f(ho)n(w)h(\014les)g(are)f(split)h(in)n(to)g(those)f(data)h(blo)r
-(c)n(ks.)523 1938 y(P)n(arts)p 1 0 0 TeXcolorrgb 747
-1938 a
-SDict begin H.S end
- 747 1938 a 1 0 0 TeXcolorrgb FA(3.4)p 1 0 0 TeXcolorrgb
-853 1884 a
-SDict begin H.R end
- 853 1884 a 853 1938 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(subsection.1.3.4) cvn H.B /ANN pdfmark end
- 853 1938 a Black 31
-w FA(through)p 1 0 0 TeXcolorrgb 1201 1938 a
-SDict begin H.S end
- 1201 1938
-a 1 0 0 TeXcolorrgb FA(3.6)p 1 0 0 TeXcolorrgb 1307 1884
-a
-SDict begin H.R end
- 1307 1884 a 1307 1938 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(subsection.1.3.6) cvn H.B /ANN pdfmark end
- 1307 1938 a Black 30 w FA(motiv)-5
-b(ate)31 b(and)g(explain)f(ho)n(w)g(ECRS)g(enables)g(users)g(to)h
-(searc)n(h)523 2037 y(for)c(con)n(ten)n(t)g(without)h(exp)r(osing)f
-(the)h(plain)n(text)f(of)h(the)g(k)n(eyw)n(ord)d(or)i(the)h(corresp)r
-(onding)523 2137 y(con)n(ten)n(t)d(and)g(ho)n(w)g(in)n(termediaries)f
-(can)h(v)n(erify)g(that)h(a)f(giv)n(en)f(encrypted)i(reply)f(matc)n
-(hes)523 2236 y(the)30 b(\(encrypted\))h(query)-7 b(.)29
-b(Finally)-7 b(,)30 b(the)g(core)f(of)h(ECRS)g(is)g(summarized)f(in)h
-(the)g(form)g(of)523 2336 y(the)e(enco)r(ding)f(algorithm)g(and)g(a)g
-(proto)r(col)g(example.)523 2493 y
-SDict begin H.S end
- 523 2493 a 523 2493
-a
-SDict begin 12 H.A end
- 523 2493 a 523 2493 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.1) cvn H.B /DEST
-pdfmark end
- 523 2493 a 83 x Fr(3.1)95 b(Ov)m(erview)523
-2734 y FA(In)25 b(ECRS,)f(the)h(enco)r(ded)g(represen)n(tation)e(of)h
-(a)g(\014le)h(is)f(a)h(collection)f(of)g(blo)r(c)n(ks.)g(There)g(are)
-523 2833 y(four)h(t)n(yp)r(es)g(of)g(blo)r(c)n(ks:)f
-Ft(DBlo)l(cks)p FA(,)i Ft(IBlo)l(cks)p FA(,)h Ft(SBlo)l(cks)f
-FA(and)f Ft(KBlo)l(cks)p FA(.)h(The)f(maxim)n(um)g(size)523
-2933 y(of)f(all)g(blo)r(c)n(ks)g(in)h(ECRS)f(is)g(supp)r(osed)g(to)h(b)
-r(e)f(\014xed)h(as)f(some)f(small)h(n)n(um)n(b)r(er)h(\(e.g.)f(32Kb\).)
-523 3032 y(The)i(blo)r(c)n(ks)f(are)g(used)h(to)g(create)f(a)h(tree)g
-(structure)f(of)h(the)h(enco)r(ded)f(\014le)g(\(see)g(Figure)p
-1 0 0 TeXcolorrgb 3308 3032 a
-SDict begin H.S end
- 3308 3032 a 1 0 0 TeXcolorrgb
-FA(1)p 1 0 0 TeXcolorrgb 3350 2979 a
-SDict begin H.R end
- 3350 2979 a 3350
-3032 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(figure.1.1) cvn H.B /ANN pdfmark end
- 3350 3032 a Black FA(\).)523 3132 y(The)39 b(actual)f(\014le)g
-(data)g(is)g(enco)r(ded)h(in)g Ft(DBlo)l(cks)g FA(whic)n(h)f(are)g
-(organized)f(b)n(y)h(a)g(tree)g(of)523 3232 y Ft(IBlo)l(cks)p
-FA(.)j(The)f Ft(IBlo)l(cks)p FA(,)h(whic)n(h)e(are)g(similar)f(to)i
-(UNIX)g(ino)r(des)g([)p 0 1 0 TeXcolorrgb 2698 3232 a
-SDict begin H.S end
-
-2698 3232 a 0 1 0 TeXcolorrgb FA(21)p 0 1 0 TeXcolorrgb
-2781 3178 a
-SDict begin H.R end
- 2781 3178 a 2781 3232 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.mckusick84fast) cvn H.B /ANN pdfmark end
- 2781 3232 a Black
-FA(],)g(are)e(indirection)523 3331 y(blo)r(c)n(ks)27
+Fp(D)r(B)t(l)r(ock)s Fx(s)g(and)523 1301 y Fp(I)7 b(B)t(l)r(ock)s
+Fx(s)41 b(are)f(CHK)i(enco)r(ded\))f(with)h(one)g Fp(K)6
+b(B)t(l)r(ock)43 b Fx(to)e(allo)n(w)g(for)g(a)g(k)n(eyw)n(ord-based)523
+1400 y(searc)n(h.)p Black Black Black 523 1838 a(blo)r(c)n(ks)27
 b(whic)n(h)h(enco)r(de)f(ho)n(w)g(the)h(leaf)g(no)r(des)f(of)h(the)g
 (tree)g(can)f(b)r(e)h(reassem)n(bled)e(in)n(to)i(the)523
-3431 y(original)35 b(\014le.)h(Ev)n(ery)f Ft(IBlo)l(ck)j
-FA(pro)n(vides)d(the)i(data)f(required)f(to)h(request,)g(decrypt)g(and)
-523 3531 y(v)n(erify)c(the)h(con)n(ten)n(ts)f(of)h(its)g(direct)g(c)n
+1938 y(original)35 b(\014le.)h(Ev)n(ery)f Fq(IBlo)l(ck)j
+Fx(pro)n(vides)d(the)i(data)f(required)f(to)h(request,)g(decrypt)g(and)
+523 2037 y(v)n(erify)c(the)h(con)n(ten)n(ts)f(of)h(its)g(direct)g(c)n
 (hildren.)f(V)-7 b(eri\014cation)32 b(is)h(done)g(using)f(hash)g(co)r
-(des)523 3630 y(of)h(the)h(c)n(hildren,)f(similar)f(to)h(the)h(w)n(a)n
-(y)d(a)i(Merkle)g(tree)g([)p 0 1 0 TeXcolorrgb 2377 3630
+(des)523 2137 y(of)h(the)h(c)n(hildren,)f(similar)f(to)h(the)h(w)n(a)n
+(y)d(a)i(Merkle)g(tree)g([)p 0 1 0 TeXcolorrgb 2377 2137
 a
 SDict begin H.S end
- 2377 3630 a 0 1 0 TeXcolorrgb FA(22)p 0 1 0 TeXcolorrgb
-2460 3577 a
+ 2377 2137 a 0 1 0 TeXcolorrgb Fx(19)p 0 1 0 TeXcolorrgb
+2460 2083 a
 SDict begin H.R end
- 2460 3577 a 2460 3630 a
+ 2460 2083 a 2460 2137 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.merkle89tree) cvn H.B /ANN pdfmark end
- 2460 3630 a Black
-FA(])g(w)n(orks.)f(Giv)n(en)h(the)g(size)g(of)523 3730
-y(the)25 b(\014le,)g(the)g(top)g Ft(IBlo)l(ck)h FA(uniquely)e(iden)n
+ 2460 2137 a Black
+Fx(])g(w)n(orks.)f(Giv)n(en)h(the)g(size)g(of)523 2236
+y(the)25 b(\014le,)g(the)g(top)g Fq(IBlo)l(ck)h Fx(uniquely)e(iden)n
 (ti\014es)h(the)g(con)n(ten)n(ts)f(of)h(the)g(en)n(tire)f(\014le.)h
-Ft(KBlo)l(cks)523 3829 y FA(and)32 b Ft(SBlo)l(cks)i
-FA(facilitate)e(obtaining)g(the)g(k)n(ey)g(hash)g(\(to)h(decrypt\))f
-(and)g(query)g(hash)g(\(to)523 3929 y(request\))27 b(for)g(the)h(top)g
-Ft(IBlo)l(ck)p FA(.)523 4090 y
+Fq(KBlo)l(cks)523 2336 y Fx(and)32 b Fq(SBlo)l(cks)i
+Fx(facilitate)e(obtaining)g(the)g(k)n(ey)g(hash)g(\(to)h(decrypt\))f
+(and)g(query)g(hash)g(\(to)523 2436 y(request\))27 b(for)g(the)h(top)g
+Fq(IBlo)l(ck)p Fx(.)523 2597 y
 SDict begin H.S end
- 523 4090 a 523 4090 a
+ 523 2597 a 523 2597 a
 SDict begin 12 H.A end
 
-523 4090 a 523 4090 a
+523 2597 a 523 2597 a
 SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.2) cvn H.B /DEST
 pdfmark end
- 523 4090 a 79 x Fr(3.2)95 b Fj(DBlo)-5
-b(cks)523 4327 y FA(Ev)n(ery)33 b Ft(DBlo)l(ck)j FA(corresp)r(onds)c
+ 523 2597 a 79 x Fn(3.2)95 b Fg(DBlo)-5
+b(cks)523 2833 y Fx(Ev)n(ery)33 b Fq(DBlo)l(ck)j Fx(corresp)r(onds)c
 (to)j(32Kb)e(of)i(the)g(original)e(\014le)i(\(the)g(last)g(blo)r(c)n(k)
-f(ma)n(y)g(b)r(e)523 4426 y(padded)g(with)g(zeros)e(if)i(the)g(\014le)g
+f(ma)n(y)g(b)r(e)523 2933 y(padded)g(with)g(zeros)e(if)i(the)g(\014le)g
 (end)g(do)r(es)f(not)h(fall)f(on)h(a)f(32Kb)f(b)r(oundary\).)h
-Ft(DBlo)l(ck)p FA(s)523 4526 y(are)d(encrypted)h(using)f(a)h(symmetric)
-f(cipher.)h(F)-7 b(or)30 b(the)i Ft(DBlo)l(ck)f FA(that)h(corresp)r
-(onds)d(to)h(a)523 4625 y(plain)n(text)e(blo)r(c)n(k)f
-Fs(B)1156 4637 y Fi(i)1184 4625 y FA(,)h(the)h(k)n(ey)e(for)g(the)i
-(cipher)f(is)f Fs(K)2204 4637 y Fi(i)2255 4625 y FA(:=)d
-Fs(H)7 b FA(\()p Fs(B)2538 4637 y Fi(i)2565 4625 y FA(\).)29
-b(This)f(guaran)n(tees)e(that)523 4725 y(the)d(same)f(blo)r(c)n(k)g
+Fq(DBlo)l(ck)p Fx(s)523 3032 y(are)d(encrypted)h(using)f(a)h(symmetric)
+f(cipher.)h(F)-7 b(or)30 b(the)i Fq(DBlo)l(ck)f Fx(that)h(corresp)r
+(onds)d(to)h(a)523 3132 y(plain)n(text)e(blo)r(c)n(k)f
+Fp(B)1156 3144 y Ff(i)1184 3132 y Fx(,)h(the)h(k)n(ey)e(for)g(the)i
+(cipher)f(is)f Fp(K)2204 3144 y Ff(i)2255 3132 y Fx(:=)d
+Fp(H)7 b Fx(\()p Fp(B)2538 3144 y Ff(i)2565 3132 y Fx(\).)29
+b(This)f(guaran)n(tees)e(that)523 3232 y(the)d(same)f(blo)r(c)n(k)g
 (will)h(alw)n(a)n(ys)e(b)r(e)i(encrypted)f(with)h(the)g(same)f(k)n(ey)
--7 b(.)22 b(Also,)g(the)h(in)n(tegrit)n(y)f(of)523 4825
+-7 b(.)22 b(Also,)g(the)h(in)n(tegrit)n(y)f(of)523 3331
 y(the)g(decrypted)f(blo)r(c)n(k)f(can)h(b)r(e)h(v)n(eri\014ed)e(b)n(y)h
-(c)n(hec)n(king)f(that)i Fs(K)2470 4837 y Fi(i)2520 4825
-y FA(=)h Fs(H)7 b FA(\()p Fs(B)2779 4837 y Fi(i)2806
-4825 y FA(\).)22 b(The)f(encrypted)523 4924 y(blo)r(c)n(k)k
-Fs(E)801 4936 y Fi(K)857 4944 y Fh(i)888 4924 y FA(\()p
-Fs(B)983 4936 y Fi(i)1011 4924 y FA(\))g(can)h(b)r(e)g(uniquely)f(iden)
-n(ti\014ed)h(b)n(y)g(its)f(hash)g Fs(Q)2509 4936 y Fi(i)2560
-4924 y FA(:=)e Fs(H)7 b FA(\()p Fs(E)2840 4936 y Fi(K)2896
-4944 y Fh(i)2926 4924 y FA(\()p Fs(B)3021 4936 y Fi(i)3049
-4924 y FA(\)\).)26 b(A)g(p)r(eer)p Black Black eop end
-%%Page: 10 10
-TeXDict begin 10 9 bop 0 0 a
+(c)n(hec)n(king)f(that)i Fp(K)2470 3343 y Ff(i)2520 3331
+y Fx(=)h Fp(H)7 b Fx(\()p Fp(B)2779 3343 y Ff(i)2806
+3331 y Fx(\).)22 b(The)f(encrypted)523 3431 y(blo)r(c)n(k)k
+Fp(E)801 3443 y Ff(K)857 3451 y Fe(i)888 3431 y Fx(\()p
+Fp(B)983 3443 y Ff(i)1011 3431 y Fx(\))g(can)h(b)r(e)g(uniquely)f(iden)
+n(ti\014ed)h(b)n(y)g(its)f(hash)g Fp(Q)2509 3443 y Ff(i)2560
+3431 y Fx(:=)e Fp(H)7 b Fx(\()p Fp(E)2840 3443 y Ff(K)2896
+3451 y Fe(i)2926 3431 y Fx(\()p Fp(B)3021 3443 y Ff(i)3049
+3431 y Fx(\)\).)26 b(A)g(p)r(eer)523 3531 y(can)34 b(query)g(for)g
+Fp(E)1115 3543 y Ff(K)1171 3551 y Fe(i)1201 3531 y Fx(\()p
+Fp(B)1296 3543 y Ff(i)1324 3531 y Fx(\))h(using)f(the)h(query)e(hash)h
+Fp(Q)2269 3543 y Ff(i)2331 3531 y Fx(without)h(rev)n(ealing)d
+Fp(K)3075 3543 y Ff(i)3102 3531 y Fx(.)j(Conse-)523 3630
+y(quen)n(tly)-7 b(,)24 b(the)g(pair)f(\()p Fp(K)1242
+3642 y Ff(i)1270 3630 y Fp(;)14 b(Q)1373 3642 y Ff(i)1400
+3630 y Fx(\))24 b(can)f(b)r(e)i(used)e(to)h(retriev)n(e)f(and)g
+(decrypt)h Fp(B)2813 3642 y Ff(i)2840 3630 y Fx(.)g(In)n(termediaries)
+523 3730 y(can)30 b(v)n(erify)h(that)g(a)f(resp)r(onse)g
+Fp(E)1568 3742 y Ff(K)1624 3750 y Fe(i)1654 3730 y Fx(\()p
+Fp(B)1749 3742 y Ff(i)1777 3730 y Fx(\))i(matc)n(hes)e(a)g(query)g
+(hash)h Fp(Q)2735 3742 y Ff(i)2793 3730 y Fx(without)g(kno)n(wing)523
+3829 y Fp(K)594 3841 y Ff(i)621 3829 y Fx(.)24 b(F)-7
+b(reenet)24 b([)p 0 1 0 TeXcolorrgb 984 3829 a
+SDict begin H.S end
+ 984 3829
+a 0 1 0 TeXcolorrgb Fx(5)p 0 1 0 TeXcolorrgb 1025 3776
+a
+SDict begin H.R end
+ 1025 3776 a 1025 3829 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.clark99distributed) cvn H.B /ANN pdfmark end
+ 1025 3829 a Black Fx(])g(uses)f(the)h(same)f
+(sc)n(heme)g(to)h(encrypt)f(en)n(tire)g(\014les)h(\(not)g(just)g(blo)r
+(c)n(ks\))f(and)523 3929 y(the)28 b(authors)f(call)g(the)h(pair)f(\()p
+Fp(K)1536 3941 y Ff(i)1563 3929 y Fp(;)14 b(Q)1666 3941
+y Ff(i)1693 3929 y Fx(\))28 b(a)f(con)n(ten)n(t)h(hash)f(k)n(ey)g
+(\(CHK\).)523 4090 y
+SDict begin H.S end
+ 523 4090 a 523 4090 a
+SDict begin 12 H.A end
+ 523 4090 a
+523 4090 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.3) cvn H.B /DEST
+pdfmark end
+ 523 4090 a 79 x Fn(3.3)95 b Fg(IBlo)-5 b(cks)523
+4327 y Fx(F)e(or)32 b(\014les)h(larger)e(than)h(the)i(blo)r(c)n(ksize,)
+e(m)n(ultiple)h(CHK)f(k)n(eys)g(are)g(required)g(to)g(retriev)n(e)523
+4426 y(the)i(con)n(ten)n(t.)f(F)-7 b(or)33 b(example,)g(with)g(a)g(blo)
+r(c)n(ksize)g(of)g(32Kb)f(and)h(512-bit)g(hash)f(co)r(des,)h(a)523
+4526 y(32Mb)26 b(\014le)g(w)n(ould)g(b)r(e)h(split)f(in)n(to)h(1024)d
+Fq(DBlo)l(cks)p Fx(,)j Fp(B)2186 4538 y Fw(1)2223 4526
+y Fp(;)14 b(:)g(:)g(:)g(;)g(B)2471 4538 y Fw(1024)2607
+4526 y Fx(,)27 b(of)f(length)h(32Kb)e(eac)n(h.)523 4625
+y(Groups)e(of)g(up)h(to)f(256)f(CHKs)h(are)g(assem)n(bled)f(in)n(to)i
+(one)f(32Kb)f Fq(IBlo)l(ck)p Fx(,)j(resulting)e(in)g(four)523
+4725 y Fq(IBlo)l(ck)p Fx(s)j(for)f(the)g(32Mb)f(\014le.)i(The)f
+(resulting)f Fq(IBlo)l(ck)p Fx(s)i(are)e(CHK)h(encrypted)g(in)g(the)h
+(exact)523 4825 y(same)c(manner)h(as)f(the)h Fq(DBlo)l(cks)h
+Fx(and)f(their)g(CHK-k)n(eys)e(are)h(again)g(group)r(ed)g(in)n(to)h
+Fq(IBlo)l(cks)523 4924 y Fx(un)n(til)j(only)e(one)h(CHK)g(k)n(ey)g(is)g
+(left.)h(F)-7 b(or)24 b(the)i(32Mb)e(\014le,)i(the)f(CHKs)g(for)g(the)g
+(four)g Fq(IBlo)l(ck)p Fx(s)p Black Black eop end
+%%Page: 9 9
+TeXDict begin 9 8 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -7419,146 +6666,115 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.10) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.9) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(10)199 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(can)34 b(query)g(for)g Fs(E)1115 460
-y Fi(K)1171 468 y Fh(i)1201 448 y FA(\()p Fs(B)1296 460
-y Fi(i)1324 448 y FA(\))h(using)f(the)h(query)e(hash)h
-Fs(Q)2269 460 y Fi(i)2331 448 y FA(without)h(rev)n(ealing)d
-Fs(K)3075 460 y Fi(i)3102 448 y FA(.)j(Conse-)523 548
-y(quen)n(tly)-7 b(,)24 b(the)g(pair)f(\()p Fs(K)1242
-560 y Fi(i)1270 548 y Fs(;)14 b(Q)1373 560 y Fi(i)1400
-548 y FA(\))24 b(can)f(b)r(e)i(used)e(to)h(retriev)n(e)f(and)g(decrypt)
-h Fs(B)2813 560 y Fi(i)2840 548 y FA(.)g(In)n(termediaries)523
-648 y(can)30 b(v)n(erify)h(that)g(a)f(resp)r(onse)g Fs(E)1568
-660 y Fi(K)1624 668 y Fh(i)1654 648 y FA(\()p Fs(B)1749
-660 y Fi(i)1777 648 y FA(\))i(matc)n(hes)e(a)g(query)g(hash)h
-Fs(Q)2735 660 y Fi(i)2793 648 y FA(without)g(kno)n(wing)523
-747 y Fs(K)594 759 y Fi(i)621 747 y FA(.)24 b(F)-7 b(reenet)24
-b([)p 0 1 0 TeXcolorrgb 984 747 a
+ 523 232 a Black 1036 w Fu(An)25
+b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)238
+b(9)p Black 523 448 a Fx(are)25 b(th)n(us)h(collected)g(in)h(one)f
+(\014nal)g(top)g Fq(IBlo)l(ck)p Fx(.)h(The)f(additional)g(space)g
+(requiremen)n(ts)f(for)523 548 y(enco)r(ding)i(the)h(\014le)g(are)f(t)n
+(ypically)g(less)g(than)g(1\045)h(of)f(the)h(original)e(\014le)i(size.)
+523 739 y
 SDict begin H.S end
- 984 747 a 0 1 0 TeXcolorrgb
-FA(5)p 0 1 0 TeXcolorrgb 1025 694 a
-SDict begin H.R end
- 1025 694 a 1025 747
-a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.clark99distributed) cvn H.B /ANN pdfmark end
- 1025 747 a Black FA(])g(uses)f(the)h(same)f(sc)n(heme)g(to)h(encrypt)
-f(en)n(tire)g(\014les)h(\(not)g(just)g(blo)r(c)n(ks\))f(and)523
-847 y(the)28 b(authors)f(call)g(the)h(pair)f(\()p Fs(K)1536
-859 y Fi(i)1563 847 y Fs(;)14 b(Q)1666 859 y Fi(i)1693
-847 y FA(\))28 b(a)f(con)n(ten)n(t)h(hash)f(k)n(ey)g(\(CHK\).)523
-1028 y
-SDict begin H.S end
- 523 1028 a 523 1028 a
+ 523 739 a 523 739 a
 SDict begin 12 H.A end
- 523 1028 a 523 1028 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.3) cvn H.B /DEST
-pdfmark end
- 523
-1028 a 82 x Fr(3.3)95 b Fj(IBlo)-5 b(cks)523 1290 y FA(F)e(or)32
-b(\014les)h(larger)e(than)h(the)i(blo)r(c)n(ksize,)e(m)n(ultiple)h(CHK)
-f(k)n(eys)g(are)g(required)g(to)g(retriev)n(e)523 1390
-y(the)i(con)n(ten)n(t.)f(F)-7 b(or)33 b(example,)g(with)g(a)g(blo)r(c)n
-(ksize)g(of)g(32Kb)f(and)h(512-bit)g(hash)f(co)r(des,)h(a)523
-1489 y(32Mb)26 b(\014le)g(w)n(ould)g(b)r(e)h(split)f(in)n(to)h(1024)d
-Ft(DBlo)l(cks)p FA(,)j Fs(B)2186 1501 y Fz(1)2223 1489
-y Fs(;)14 b(:)g(:)g(:)g(;)g(B)2471 1501 y Fz(1024)2607
-1489 y FA(,)27 b(of)f(length)h(32Kb)e(eac)n(h.)523 1589
-y(Groups)e(of)g(up)h(to)f(256)f(CHKs)h(are)g(assem)n(bled)f(in)n(to)i
-(one)f(32Kb)f Ft(IBlo)l(ck)p FA(,)j(resulting)e(in)g(four)523
-1689 y Ft(IBlo)l(ck)p FA(s)j(for)f(the)g(32Mb)f(\014le.)i(The)f
-(resulting)f Ft(IBlo)l(ck)p FA(s)i(are)e(CHK)h(encrypted)g(in)g(the)h
-(exact)523 1788 y(same)c(manner)h(as)f(the)h Ft(DBlo)l(cks)h
-FA(and)f(their)g(CHK-k)n(eys)e(are)h(again)g(group)r(ed)g(in)n(to)h
-Ft(IBlo)l(cks)523 1888 y FA(un)n(til)j(only)e(one)h(CHK)g(k)n(ey)g(is)g
-(left.)h(F)-7 b(or)24 b(the)i(32Mb)e(\014le,)i(the)f(CHKs)g(for)g(the)g
-(four)g Ft(IBlo)l(ck)p FA(s)523 1988 y(are)g(th)n(us)h(collected)g(in)h
-(one)f(\014nal)g(top)g Ft(IBlo)l(ck)p FA(.)h(The)f(additional)g(space)g
-(requiremen)n(ts)f(for)523 2087 y(enco)r(ding)i(the)h(\014le)g(are)f(t)
-n(ypically)g(less)g(than)g(1\045)h(of)f(the)h(original)e(\014le)i
-(size.)523 2264 y
-SDict begin H.S end
- 523 2264 a 523 2264 a
-SDict begin 12 H.A end
- 523 2264 a 523
-2264 a
+ 523 739 a 523 739 a
 SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.4) cvn H.B /DEST
 pdfmark end
- 523 2264 a 86 x Fr(3.4)95 b(Finding)30 b(\014les)523
-2530 y FA(The)35 b(CHK)h(enco)r(ding)e(describ)r(ed)i(so)e(far)h(is)g
+ 523
+739 a 90 x Fn(3.4)95 b(Finding)30 b(\014les)523 1026
+y Fx(The)35 b(CHK)h(enco)r(ding)e(describ)r(ed)i(so)e(far)h(is)g
 (useful)h(for)f(transmitting)g(con)n(ten)n(t)g(that)g(is)523
-2630 y(enco)r(ded)e(and)h(y)n(et)f(v)n(eri\014able)f(for)h(in)n
+1126 y(enco)r(ded)e(and)h(y)n(et)f(v)n(eri\014able)f(for)h(in)n
 (termediaries.)f(Ho)n(w)n(ev)n(er,)f(a)i(practical)g(\014le-sharing)523
-2730 y(sc)n(heme)28 b(needs)h(to)f(pro)n(vide)g(functionalit)n(y)g(suc)
+1226 y(sc)n(heme)28 b(needs)h(to)f(pro)n(vide)g(functionalit)n(y)g(suc)
 n(h)h(that)f(the)h(users)f(can)g(obtain)h(the)g(query)523
-2829 y(hash)k(and)g(the)h(k)n(ey)e(that)i(are)e(no)n(w)h(necessary)e
+1325 y(hash)k(and)g(the)h(k)n(ey)e(that)i(are)e(no)n(w)h(necessary)e
 (in)j(order)d(to)j(retriev)n(e)e(and)h(decrypt)g(the)523
-2929 y(enco)r(ded)f(con)n(ten)n(t.)g(While)h(out-of-band)e(comm)n
+1425 y(enco)r(ded)f(con)n(ten)n(t.)g(While)h(out-of-band)e(comm)n
 (unication)h(of)g(those)g(CHK)g(k)n(eys)f(is)h(cer-)523
-3029 y(tainly)22 b(feasible,)g(an)g(in)n(tegrated)f(solution)g(is)h
+1524 y(tainly)22 b(feasible,)g(an)g(in)n(tegrated)f(solution)g(is)h
 (clearly)f(desirable.)g(Related)h(w)n(ork)f(on)h(secure)523
-3128 y(indexing)28 b([)p 0 1 0 TeXcolorrgb 881 3128 a
+1624 y(indexing)28 b([)p 0 1 0 TeXcolorrgb 881 1624 a
 SDict begin H.S end
 
-881 3128 a 0 1 0 TeXcolorrgb FA(12)p 0 1 0 TeXcolorrgb
-964 3075 a
+881 1624 a 0 1 0 TeXcolorrgb Fx(10)p 0 1 0 TeXcolorrgb
+964 1571 a
 SDict begin H.R end
- 964 3075 a 964 3128 a
+ 964 1571 a 964 1624 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.secure2004goh) cvn H.B /ANN pdfmark end
- 964 3128 a Black FA(])h(allo)n(ws)e
+ 964 1624 a Black Fx(])h(allo)n(ws)e
 (serv)n(ers)g(to)h(retriev)n(e)g(do)r(cumen)n(ts)g(b)n(y)g(k)n(eyw)n
-(ord)f(without)i(learning)523 3228 y(ab)r(out)23 b(the)g(rest)f(of)g
-(the)h(do)r(cumen)n(t.)g(The)g(sc)n(heme)f(that)h(will)g(b)r(e)g
-(describ)r(ed)f(in)h(Section)p 1 0 0 TeXcolorrgb 3299
-3228 a
-SDict begin H.S end
- 3299 3228 a 1 0 0 TeXcolorrgb FA(3.6)p 1 0 0 TeXcolorrgb
-3405 3174 a
-SDict begin H.R end
- 3405 3174 a 3405 3228 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(subsection.1.3.6) cvn H.B /ANN pdfmark end
- 3405 3228 a Black
-523 3328 a FA(impro)n(v)n(es)29 b(on)h(this)h(b)n(y)f(k)n(eeping)f(the)
-i(k)n(eyw)n(ord)e(itself)h(priv)-5 b(ate.)31 b(Additionally)-7
-b(,)30 b(it)h(still)g(al-)523 3427 y(lo)n(ws)20 b(in)n(termediaries)f
-(to)i(v)n(erify)f(the)h(correct)f(op)r(eration)g(of)g(the)i(serv)n(er.)
-d(It)i(also)f(a)n(v)n(oids)f(the)523 3527 y(need)26 b(for)g(the)g
-(publisher)g(to)g(encrypt)g(the)g(do)r(cumen)n(t)h(with)f(the)h(public)
-f(k)n(ey)g(of)g(a)f Ft(sp)l(e)l(ci\014c)523 3626 y FA(receiv)n(er,)k
-(thereb)n(y)h(theoretically)f(p)r(ermitting)i(arbitrary)e(participan)n
-(ts)g(to)h(access)g(same)523 3726 y(encrypted)37 b(con)n(ten)n(t)f
-(\(as)h(long)f(as)h(they)g(are)f(able)h(to)f(obtain)h(or)f(guess)g(the)
-i(necessary)523 3826 y(k)n(eyw)n(ord\).)648 3928 y(The)24
-b(k)n(ey)g(problem)g(for)g(the)h(searc)n(h)e(is)h(that)h(simply)f
-(publishing)h(CHK)f(k)n(eys)g(in)g(plain-)523 4028 y(text)36
-b(under)g(certain)f(k)n(eyw)n(ords)f(\(as)h(done)h(in)g(F)-7
-b(reenet)35 b(with)i(KSK)e(k)n(eys\))g(has)g(v)-5 b(arious)523
-4127 y(dra)n(wbac)n(ks.)24 b(First,)i(in)n(termediaries)f(w)n(ould)h
-(learn)g(ab)r(out)g(the)g(CHK)h(k)n(eys)e(that)i(they)f(are)523
-4227 y(storing)i(or)g(transmitting,)h(whic)n(h)h(could)f(allo)n(w)f
+(ord)f(without)i(learning)523 1724 y(ab)r(out)g(the)g(rest)g(of)g(the)g
+(do)r(cumen)n(t.)g(The)g(sc)n(heme)g(describ)r(ed)g(in)g(this)g
+(section)g(impro)n(v)n(es)523 1823 y(on)h(this)g(b)n(y)g(k)n(eeping)g
+(the)g(k)n(eyw)n(ord)f(itself)h(priv)-5 b(ate.)30 b(Additionally)-7
+b(,)31 b(it)f(still)h(allo)n(ws)e(in)n(ter-)523 1923
+y(mediaries)23 b(to)g(v)n(erify)g(the)h(correct)e(op)r(eration)g(of)i
+(the)f(serv)n(er.)f(It)i(also)e(a)n(v)n(oids)g(the)i(need)g(for)523
+2023 y(the)i(publisher)f(to)g(encrypt)h(the)f(do)r(cumen)n(t)h(with)g
+(the)g(public)g(k)n(ey)e(of)i(a)f Fq(sp)l(e)l(ci\014c)h
+Fx(receiv)n(er,)523 2122 y(thereb)n(y)d(theoretically)f(p)r(ermitting)i
+(arbitrary)d(participan)n(ts)h(to)h(access)g(same)f(encrypted)523
+2222 y(con)n(ten)n(t)27 b(\(as)g(long)g(as)g(they)h(are)f(able)g(to)g
+(obtain)h(or)e(guess)h(the)h(necessary)e(k)n(eyw)n(ord\).)648
+2328 y(The)e(k)n(ey)g(problem)g(for)g(the)h(searc)n(h)e(is)h(that)h
+(simply)f(publishing)h(CHK)f(k)n(eys)g(in)g(plain-)523
+2427 y(text)36 b(under)g(certain)f(k)n(eyw)n(ords)f(\(as)h(done)h(in)g
+(F)-7 b(reenet)35 b(with)i(KSK)e(k)n(eys\))g(has)g(v)-5
+b(arious)523 2527 y(dra)n(wbac)n(ks.)24 b(First,)i(in)n(termediaries)f
+(w)n(ould)h(learn)g(ab)r(out)g(the)g(CHK)h(k)n(eys)e(that)i(they)f(are)
+523 2627 y(storing)i(or)g(transmitting,)h(whic)n(h)h(could)f(allo)n(w)f
 (them)h(to)g(easily)g(censor)f(searc)n(h)f(results.)523
-4327 y(Second,)36 b(the)g(k)n(eyw)n(ords)d(are)i(directly)h(exp)r(osed)
+2726 y(Second,)36 b(the)g(k)n(eyw)n(ords)d(are)i(directly)h(exp)r(osed)
 f(to)h(the)g(in)n(termediaries,)e(whic)n(h)i(again)523
-4426 y(w)n(ould)31 b(facilitate)f(censorship.)g(Finally)-7
+2826 y(w)n(ould)31 b(facilitate)f(censorship.)g(Finally)-7
 b(,)31 b(p)r(eers)g(w)n(ould)f(b)r(e)i(able)e(to)h(send)g(in)n(v)-5
-b(alid)31 b(replies)523 4526 y(that)37 b(refer)f(to)h(inappropriate)e
+b(alid)31 b(replies)523 2926 y(that)37 b(refer)f(to)h(inappropriate)e
 (con)n(ten)n(t.)h(This)h(ma)n(y)f(b)r(e)h(just)g(a)g(n)n(uisance)f(if)h
-(malicious)523 4625 y(p)r(eers)c(use)g(this)h(for)f(adv)n(ertising)f
+(malicious)523 3025 y(p)r(eers)c(use)g(this)h(for)f(adv)n(ertising)f
 (\(a)h(kind)h(of)f(b)r(eha)n(vior)g(can)g(b)r(e)h(observ)n(ed)d(on)j
-(gn)n(utella)523 4725 y(from)c(time)h(to)g(time\).)h(P)n(ossibly)c(w)n
+(gn)n(utella)523 3125 y(from)c(time)h(to)g(time\).)h(P)n(ossibly)c(w)n
 (orse,)i(if)h(a)f(net)n(w)n(ork)f(w)n(an)n(ts)h(to)g(economically)g
-(rew)n(ard)523 4825 y(p)r(eers)24 b(for)f(returning)h(searc)n(h)e
+(rew)n(ard)523 3224 y(p)r(eers)24 b(for)f(returning)h(searc)n(h)e
 (results,)i(the)g(p)r(ossibilit)n(y)g(of)g(returning)g(arbitrary)e
-(nonsense)523 4924 y(migh)n(t)28 b(mak)n(e)e(suc)n(h)i(incen)n(tiv)n(e)
-f(sc)n(hemes)g(impractical.)p Black Black eop end
-%%Page: 11 11
-TeXDict begin 11 10 bop 0 0 a
+(nonsense)523 3324 y(migh)n(t)28 b(mak)n(e)e(suc)n(h)i(incen)n(tiv)n(e)
+f(sc)n(hemes)g(impractical.)648 3430 y(W)-7 b(e)32 b(will)g(no)n(w)f
+(describ)r(e)h(ho)n(w)f(information)g(ab)r(out)h(CHK)g(k)n(eys)f(that)h
+(are)f(necessary)523 3530 y(to)24 b(retriev)n(e)e(a)h(\014le)h(can)f(b)
+r(e)h(obtained)f(b)n(y)h(searc)n(hing)d(using)j(natural)e(language)g
+Fq(keywor)l(ds)j Fx({)523 3629 y(without)e(rev)n(ealing)e(the)i(k)n
+(eyw)n(ords)e(to)i(in)n(termediaries.)e(Searc)n(hing)h(requires)f(the)i
+(con)n(ten)n(t)523 3729 y(pro)n(vider)30 b(to)h(supply)g(metadata)f(ab)
+r(out)h(the)h(\014le;)f(in)h(particular,)d(the)j(con)n(ten)n(t)f(pro)n
+(vider)523 3828 y(m)n(ust)e(supply)g(a)g(list)g(of)g(k)n(eyw)n(ords.)e
+(While)j(the)g(metadata)e(is)h(published)h(as)e(part)h(of)g(the)523
+3928 y Fq(KBlo)l(ck)g Fx(and)e(made)g(a)n(v)-5 b(ailable)26
+b(to)i(the)f(recipien)n(t)g(the)h(k)n(eyw)n(ords)e(are)g(only)h(used)g
+(to)h(com-)523 4028 y(pute)j(the)g Fq(KBlo)l(ck)p Fx(s)g(and)f(not)g
+(made)g(a)n(v)-5 b(ailable)29 b(to)h(other)g(users)g(directly)-7
+b(.)30 b(It)g(is)h(assumed)523 4127 y(that)e(the)g(user)f(searc)n(hing)
+f(for)h(data)g(is)h(able)f(to)h Fq(guess)g Fx(at)f(least)g(one)h(of)f
+(these)h(k)n(eyw)n(ords.)523 4227 y(The)24 b(nature)g(of)g(the)h(searc)
+n(h)d(implies)j(that)f(there)g(is)g(no)g(direct,)h(cryptographically)c
+(v)n(eri\014-)523 4327 y(able)h(relation)f(b)r(et)n(w)n(een)h(the)g(k)n
+(eyw)n(ord)e(and)i(the)g(con)n(ten)n(t.)g(Man)n(y)f(\014les)h(can)g
+(matc)n(h)f(a)h(giv)n(en)523 4426 y(k)n(eyw)n(ord.)h(Di\013eren)n(t)j
+(users)e(ma)n(y)h(sometimes)g(ha)n(v)n(e)f(a)h(di\013eren)n(t)g(p)r
+(erception)g(of)g(what)g(is)g(a)523 4526 y(correct)i(seman)n(tic)g
+(matc)n(h.)h(Th)n(us,)g(a)f(k)n(eyw)n(ord)g(searc)n(h)f(alw)n(a)n(ys)g
+(has)i(the)g(p)r(oten)n(tial)g(of)g(re-)523 4625 y(sulting)21
+b(in)h(searc)n(h)e(results)h(that)g(a)g(user)g(ma)n(y)g(\014nd)h
+(inappropriate.)e(It)h(is)h(also)e(not)h(p)r(ossible)523
+4725 y(to)28 b(prev)n(en)n(t)g(a)f(user)h(from)g(supplying)g(k)n(eyw)n
+(ords)e(that)i(ha)n(v)n(e)g(no)f(seman)n(tic)h(relation)f(with)523
+4825 y(the)f(con)n(ten)n(t)e(and)h(thereb)n(y)g(increasing)f(the)h(c)n
+(hance)g(of)g(other)f(users)g(\014nding)i(undesirable)523
+4924 y(results)h(for)g(those)g(k)n(eyw)n(ords.)p Black
+Black eop end
+%%Page: 10 10
+TeXDict begin 10 9 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -7570,279 +6786,46 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.11) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.10) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(11)p Black 648 448 a FA(But)33 b(ho)n(w)g(can)g(a)g(system)g(prev)n
-(en)n(t)g(p)r(eers)g(from)g(returning)g(in)n(v)-5 b(alid)33
-b(resp)r(onses)f(to)h(a)523 548 y(k)n(eyw)n(ord-based)d(searc)n(h?)h
-(Since)i(it)g(is)f(inheren)n(t)h(in)g(the)g(nature)f(of)g(suc)n(h)g(a)h
-(searc)n(h)e(that)523 648 y(the)36 b(initiator)e(do)r(es)h(not)g(kno)n
-(w)f(precisely)g(what)h(con)n(ten)n(t)g(is)g(desired,)g(it)g(is)g(imp)r
-(ossible)523 747 y(for)e(the)h(query)f(to)g(completely)g(determine)h
-(the)g(reply)-7 b(.)33 b(F)-7 b(or)33 b(this)h(reason,)e(sc)n(hemes)g
-(lik)n(e)523 847 y(CHK)23 b(cannot)g(b)r(e)g(applied)g(to)g(the)h(k)n
-(eyw)n(ord-searc)n(h)19 b(problem:)k(in)g(CHK,)g(the)h(query)e(hash)523
-946 y(completely)g(determines)h(the)g(reply)-7 b(.)22
-b(As)g(a)g(result,)h(a)f(k)n(eyw)n(ord-based)e(searc)n(h)g(mec)n
-(hanism)523 1046 y(where)h(a)f(query)h(should)g(p)r(ossibly)g(ha)n(v)n
-(e)f(m)n(ultiple)h(v)-5 b(alid)21 b(results)g(cannot)g(b)r(e)g
-(implemen)n(ted)523 1146 y(based)k(on)h(CHK.)g(Since)g(for)f(this)i
-(kind)f(of)g(searc)n(h)e(there)i(cannot)f(b)r(e)h(an)n(y)g(completely)f
-(de-)523 1245 y(terministic)e(link)f(b)r(et)n(w)n(een)g(the)h(k)n(eyw)n
-(ord)d(and)i(the)h(con)n(ten)n(t,)f(ECRS)g(m)n(ust)h(trust)f(the)h
-(user)523 1345 y(who)i(is)g(uploading)g(the)h(con)n(ten)n(t)f(to)g(pro)
-n(vide)f(a)h(v)-5 b(alid)26 b(link.)f(That)h(user)e(m)n(ust)i(sp)r
-(ecify)g(ap-)523 1445 y(propriate)e(k)n(eyw)n(ords)f(\(and)i
-(metadata\))g(that)g(prop)r(erly)f(describ)r(es)h(the)g(con)n(ten)n(t.)
-g(Clearly)523 1544 y(this)30 b(trust)h(ma)n(y)e(b)r(e)i(misplaced.)f
-(The)g(uploader)f(ma)n(y)g(sp)r(ecify)i(k)n(eyw)n(ords)d(that)i(ha)n(v)
-n(e)f(no)523 1644 y(seman)n(tic)k(relation)f(with)h(the)g(con)n(ten)n
-(t.)g(One)g(solution)f(to)h(this)g(problem)g(is)g(the)g(use)g(of)523
-1743 y(namespaces,)c(whic)n(h)h(attac)n(k)f(the)i(issue)e(b)n(y)h
-(enabling)g(users)f(to)h(learn)f(whic)n(h)h(uploaders)523
-1843 y(are)d(trust)n(w)n(orth)n(y)-7 b(.)523 1997 y
-SDict begin H.S end
- 523
-1997 a 523 1997 a
-SDict begin 12 H.A end
- 523 1997 a 523 1997 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.5) cvn H.B /DEST
-pdfmark end
- 523 1997 a 83
-x Fr(3.5)95 b(Namespaces)523 2234 y FA(One)25 b(w)n(a)n(y)f(to)i(a)n(v)
-n(oid)d(searc)n(hing)h(in)i(an)f(un)n(trust)n(w)n(orth)n(y)f(global)g
-(k)n(eyw)n(ord)f(space)i(that)h(ma)n(y)523 2334 y(con)n(tain)e(mostly)f
-(inappropriately-lab)r(eled)g(con)n(ten)n(t)g(is)i(to)f(restrict)f(the)
-i(searc)n(h)d(to)j(name-)523 2434 y(spaces.)39 b(A)h(namespace)f(is)g
-(a)g(k)n(eyw)n(ord)f(space)h(that)h(con)n(tains)f(con)n(ten)n(t)g(that)
-h(is)g(cryp-)523 2533 y(tographically)32 b(signed)h(with)h(the)h(same)e
-(priv)-5 b(ate)33 b(k)n(ey)-7 b(.)33 b(The)h(concept)g(of)g(namespaces)
-e(is)523 2633 y(also)e(presen)n(t)h(in)g(F)-7 b(reenet)32
-b([)p 0 1 0 TeXcolorrgb 1410 2633 a
-SDict begin H.S end
- 1410 2633 a 0 1 0
-TeXcolorrgb FA(5)p 0 1 0 TeXcolorrgb 1451 2579 a
-SDict begin H.R end
- 1451
-2579 a 1451 2633 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.clark99distributed) cvn H.B /ANN pdfmark end
- 1451 2633 a Black FA(],)g(but)g(with)f(F)-7
-b(reenet)32 b(it)f(is)h(not)f(p)r(ossible)g(to)g(obtain)g(m)n(ulti-)523
-2733 y(ple)i(results)e(b)n(y)h(searc)n(hing)f(a)h(namespace.)f(F)-7
-b(ortunately)g(,)32 b(it)h(is)f(easy)g(to)g(add)g Ft(se)l(ar)l(chable)
-523 2832 y FA(namespaces)26 b(to)i(ECRS.)648 2932 y(In)22
-b(ECRS,)g(a)g(namespace)f(is)i(iden)n(ti\014ed)f(b)n(y)g(a)g
-(public-priv)-5 b(ate)22 b(k)n(ey)g(pair)g(\(also)f(referred)523
-3031 y(to)k(as)g(the)h(pseudon)n(ym\).)f(The)h(priv)-5
-b(ate)25 b(k)n(ey)g(is)g(used)h(to)f(sign)g(the)h(con)n(ten)n(t)f(that)
-h(is)f(placed)523 3131 y(in)n(to)e(the)g(namespace,)f(and)h(the)g
-(public)h(k)n(ey)e(\(or)g(more)g(precisely)-7 b(,)22
-b(the)i(hash)e(of)h(the)h(public)523 3231 y(k)n(ey\))38
-b(is)g(used)g(as)g(a)g(public)g(handle)g(that)h(is)f(used)g(to)g(refer)
-g(to)g(the)h(namespace.)e(An)n(y)523 3330 y(user)d(can)g(create)g(an)n
-(y)g(n)n(um)n(b)r(er)g(of)h(pseudon)n(yms.)f(Once)g(the)h(user)f
-(accesses)f(\014les)h(from)523 3430 y(a)41 b(particular)f(namespace)g
-(it)i(is)f(p)r(ossible)g(to)g(form)g(an)g(opinion)g(ab)r(out)g(a)g
-(particular)523 3530 y(pseudon)n(ym,)27 b(whic)n(h)h(can)f(then)h(b)r
-(e)g(used)g(to)f(target)g(the)h(searc)n(h.)648 3629 y(Adding)37
-b(namespaces)g(to)g(the)h(design)f(requires)f(a)h(new)h(t)n(yp)r(e)g
-(of)f(blo)r(c)n(k,)g(called)g(an)523 3729 y Ft(SBlo)l(ck)p
-FA(.)f(An)f Ft(SBlo)l(ck)g FA(con)n(tains)f(the)h(k)n(ey)e(and)i(query)
-f(hash)g(\(CHK\))h(of)f(the)h(top)g Ft(IBlo)l(ck)523
-3828 y FA(together)j(with)h(the)f(metadata)g(b)r(elonging)g(to)g(the)h
-(con)n(ten)n(t,)f(thereb)n(y)g(allo)n(wing)f(users)523
-3928 y(that)h(receiv)n(e)f(an)g Ft(SBlo)l(ck)i FA(to)f(do)n(wnload)f
-(the)h(\014le.)g(Ho)n(w)n(ev)n(er,)e(this)i(data)f(is)h(encrypted)523
-4028 y(suc)n(h)d(that)h(in)n(termediaries)e(do)h(not)g(learn)f(an)n
-(ything)h(ab)r(out)g(the)h(referenced)e(\014le.)i(The)523
-4127 y(encryption)23 b(k)n(ey)f(is)h(the)g(hash)g(of)g(an)g(iden)n
-(ti\014er)f(that)i(the)f(inserter)f(c)n(hose)g(for)h(the)g(con)n(ten)n
-(t.)523 4227 y(The)32 b(iden)n(ti\014er)f(do)r(es)h(not)g(ha)n(v)n(e)e
-(to)i(b)r(e)g(unique)g(and)f(can,)h(for)f(example,)g(b)r(e)i(a)e(k)n
-(eyw)n(ord)523 4327 y(\(to)39 b(allo)n(w)e(searc)n(hing)f(the)j
-(namespace\))f(or)f(a)h(passw)n(ord)e(\(for)j(priv)-5
-b(ate)38 b(con)n(ten)n(t\).)g(The)523 4426 y(encrypted)32
-b(p)r(ortion)g(of)g(the)g Ft(SBlo)l(ck)h FA(is)f(follo)n(w)n(ed)f(b)n
-(y)h(a)g(hash)f(co)r(de)h(whic)n(h)g(is)g(the)h Ft(query)523
-4526 y FA(iden)n(ti\014er)22 b(for)f(the)i Ft(SBlo)l(ck)p
-FA(.)g(The)f(query)f(iden)n(ti\014er)h(is)g(the)g(hash)g(of)g(the)g(k)n
-(ey)g(\(whic)n(h)g(mak)n(es)523 4625 y(it)j(the)g(hash)g(of)f(the)h
-(hash)g(of)f(the)h(iden)n(ti\014er\).)g(When)g(a)g(user)f(searc)n(hes)f
-(a)h(namespace,)g(the)523 4725 y(request)i(con)n(tains)g(the)h(hash)g
-(of)f(the)i(public)f(k)n(ey)f(of)h(the)g(pseudon)n(ym)f(together)g
-(with)i(the)523 4825 y(query)d(iden)n(ti\014er.)g(By)g(using)g(the)g
-(hash)g(of)g(the)h(k)n(ey)f(as)f(the)i(query)f(iden)n(ti\014er,)g(the)g
-(correct)523 4924 y Ft(SBlo)l(ck)h FA(can)f(b)r(e)g(iden)n(ti\014ed)h
-(b)n(y)e(in)n(termediaries)g(but)h(not)g(decrypted.)g(A)n(t)h(the)f
-(same)f(time,)p Black Black eop end
-%%Page: 12 12
-TeXDict begin 12 11 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
-SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.12) cvn H.B /DEST pdfmark
-end
- 523 232 a Black Fx(12)199 b(C.)27
+ 523 232 a Black Fu(10)199 b(C.)27
 b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(only)e(the)g(iden)n(ti\014er)g(and)g(the)h(hash)e
-(of)h(the)h(public)f(k)n(ey)g(of)g(the)g(pseudon)n(ym)g(are)f(required)
-523 548 y(to)30 b(construct)g(b)r(oth)g(the)h(query)f(iden)n(ti\014er)g
-(needed)g(to)g(searc)n(h)f(the)h(namespace)g(and)g(the)523
-648 y(k)n(ey)g(needed)i(to)f(decrypt)f(the)i Ft(SBlo)l(ck)p
-FA(.)g(Finally)-7 b(,)31 b Ft(SBlo)l(ck)p FA(s)h(con)n(tain)e(digital)h
-(signature)f(of)523 747 y(the)e(other)f(con)n(ten)n(ts.)f(This)i(allo)n
-(ws)e(in)n(termediaries)g(to)h(v)n(erify)g(that)g(a)g(giv)n(en)g
-Ft(SBlo)l(ck)h FA(w)n(as)523 847 y(created)f(b)n(y)g(the)h(o)n(wner)f
-(of)g(the)h(namespace.)648 946 y(Since)k Ft(SBlo)l(ck)p
-FA(s)i(are)d(signed,)h(it)h(is)g(p)r(ossible)f(to)h(allo)n(w)e(up)r
-(dates.)i(Without)g(a)f(digital)523 1046 y(signature,)26
-b(a)h(secure)f(up)r(date)i(mec)n(hanism)e(is)h(imp)r(ossible,)g(since)g
-(an)n(y)n(one)f(could)h(publish)523 1146 y(a)j(p)r(oten)n(tially)g
-(illegitimate)g(up)r(date.)g(If)h(the)f(up)r(date)h(requires)e(a)h
-(matc)n(hing)f(digital)h(sig-)523 1245 y(nature,)35 b(forged)f(up)r
-(dates)h(are)g(imp)r(ossible.)g(In)g(order)f(to)h(allo)n(w)f(con)n(ten)
-n(t)h(up)r(dates,)h(the)523 1345 y(metadata)e(of)h(an)f
-Ft(SBlo)l(ck)i FA(can)e(con)n(tain)g(information)g(ab)r(out)h(when)g
-(and)f(under)h(whic)n(h)523 1445 y(iden)n(ti\014ers)c(up)r(dates)g(ma)n
-(y)g(b)r(e)g(published.)h(If)f(suc)n(h)g(forw)n(ard)e(p)r(oin)n(ters)i
-(are)f(presen)n(t,)h(the)523 1544 y(o)n(wner)f(of)g(the)i(namespace)e
-(can)g(decide)h(to)g(publish)g(up)r(dates)g(to)g(a)f(particular)g
-(\014le)h(at)f(a)523 1644 y(later)35 b(time.)g(Since)h(the)g(priv)-5
-b(ate)35 b(k)n(ey)f(used)h(for)g(signing)g(is)g(o)n(wned)f(b)n(y)h(a)g
-(single)g(en)n(tit)n(y)-7 b(,)523 1743 y(consistency)33
-b(issues)h(from)g(parallel)f(up)r(dates)h(do)g(not)h(arise.)e(ECRS)h
-(do)r(es)g(not)g(prev)n(en)n(t)523 1843 y(the)28 b(o)n(wner)e(of)i(the)
-g(namespace)f(from)g(publishing)g(con\015icting)h(up)r(dates.)648
-1943 y(It)22 b(should)h(b)r(e)g(recognized)e(that)i(the)g(same)f
-(\014le)g(can)h(b)r(e)g(part)f(of)g(m)n(ultiple)h(namespaces)523
-2042 y(under)k(m)n(ultiple)h(iden)n(ti\014ers)f(without)h(the)g(need)f
-(for)g(storing)f(the)i(\014le)f(m)n(ultiple)h(times)g(in)523
-2142 y(the)37 b(net)n(w)n(ork.)e(The)i Ft(IBlo)l(cks)h
-FA(and)e Ft(DBlo)l(cks)i FA(of)e(the)h(\014le)g(do)f(not)h(need)g(to)f
-(b)r(e)h(c)n(hanged)523 2242 y(when)28 b(the)g(namespace)e(or)h
-(namespace)g(iden)n(ti\014er)g(c)n(hanges.)648 2341 y(Namespaces)f
-(cannot)h(completely)h(solv)n(e)e(the)i(searc)n(h)f(problem.)g(Most)g
-(imp)r(ortan)n(tly)-7 b(,)523 2441 y(users)33 b(w)n(ould)g(still)h(ha)n
-(v)n(e)f(to)h(\014nd)g(the)g(namespaces)f(themselv)n(es,)g(and)h(while)
-g(it)g(can)g(b)r(e)523 2540 y(assumed)g(that)h(users)e(can)h(guess)g(k)
-n(eyw)n(ords,)e(they)j(are)e(unlik)n(ely)h(to)h(b)r(e)f(able)h(to)f
-(guess)523 2640 y(public)h(k)n(eys)f(for)h(a)f(namespace)g(searc)n(h.)g
-(ECRS)g(alleviates)g(this)h(problem)g(b)n(y)g(also)e(of-)523
-2740 y(fering)i(a)g(pure)g(k)n(eyw)n(ord-based)d(searc)n(h)i(in)h(a)g
-Ft(glob)l(al)i FA(k)n(eyw)n(ord)c(space)i(where)f(an)n(y)h(user)523
-2839 y(can)g(adv)n(ertise)g(con)n(ten)n(t.)g(Here,)g(the)h(disadv)-5
-b(an)n(tage)34 b(is)i(clearly)f(that)h(it)g(is)f(p)r(ossible)h(for)523
-2939 y(malicious)h(users)g(to)h(p)r(ollute)g(the)g(global)f(k)n(eyw)n
-(ord)f(space)h(with)h(adv)n(ertisemen)n(ts)e(and)523
-3039 y(other)24 b(inappropriate)g(data.)g(Ho)n(w)n(ev)n(er,)f(it)i(is)g
-(assumed)g(that)g(in)g(that)g(case)f(users)g(will)h(use)523
-3138 y(k)n(eyw)n(ords)j(that)j(are)e(more)h(di\016cult)h(to)f(guess)f
-(or)h(only)f(use)i(the)f(global)f(k)n(eyw)n(ord)g(space)523
-3238 y(to)f(disco)n(v)n(er)d(trust)n(w)n(orth)n(y)h(namespaces,)g(th)n
-(us)i(a)n(v)n(oiding)e(spam)h(most)h(of)f(the)h(time.)523
-3392 y
-SDict begin H.S end
- 523 3392 a 523 3392 a
-SDict begin 12 H.A end
- 523 3392 a 523 3392 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.6) cvn H.B /DEST
-pdfmark end
- 523
-3392 a 83 x Fr(3.6)95 b(Keyw)m(ord)32 b(searc)m(h)523
-3629 y FA(This)41 b(section)g(describ)r(es)g(ho)n(w)g(information)g(ab)
-r(out)g(namespaces)f(or)h(the)h(CHK)f(k)n(eys)523 3729
-y(that)30 b(are)f(necessary)e(to)j(retriev)n(e)e(a)h(\014le)h(can)f(b)r
-(e)h(obtained)f(b)n(y)h(searc)n(hing)e(using)h(natural)523
-3828 y(language)20 b Ft(keywor)l(ds)i FA({)f(without)h(rev)n(ealing)d
-(the)j(k)n(eyw)n(ords)d(to)i(in)n(termediaries.)f(Searc)n(hing)523
-3928 y(requires)31 b(the)i(con)n(ten)n(t)f(pro)n(vider)f(to)i(supply)f
-(metadata)g(ab)r(out)h(the)g(\014le;)f(in)h(particular,)523
-4028 y(the)40 b(con)n(ten)n(t)g(pro)n(vider)e(m)n(ust)i(supply)g(a)g
-(list)g(of)g(k)n(eyw)n(ords.)e(While)i(the)h(metadata)e(is)523
-4127 y(published)22 b(as)f(part)f(of)i(the)f Ft(KBlo)l(ck)i
-FA(and)e(made)g(a)n(v)-5 b(ailable)20 b(to)i(the)f(recipien)n(t)g(the)h
-(k)n(eyw)n(ords)523 4227 y(are)34 b(only)h(used)h(to)f(compute)g(the)h
-Ft(KBlo)l(ck)p FA(s)g(and)f(not)h(made)f(a)n(v)-5 b(ailable)34
-b(to)h(other)g(users)523 4327 y(directly)-7 b(.)30 b(It)g(is)g(assumed)
-f(that)h(the)h(user)e(searc)n(hing)f(for)h(data)h(is)g(able)f(to)h
-Ft(guess)g FA(at)f(least)523 4426 y(one)f(of)g(these)h(k)n(eyw)n(ords.)
-d(The)j(nature)f(of)g(the)h(searc)n(h)e(implies)i(that)f(there)h(is)f
-(no)g(direct,)523 4526 y(cryptographically)19 b(v)n(eri\014able)h
-(relation)g(b)r(et)n(w)n(een)h(the)h(k)n(eyw)n(ord)d(and)i(the)h(con)n
-(ten)n(t.)f(Man)n(y)523 4625 y(\014les)26 b(can)f(matc)n(h)h(a)f(giv)n
-(en)g(k)n(eyw)n(ord.)f(Di\013eren)n(t)i(users)f(ma)n(y)g(sometimes)h
-(ha)n(v)n(e)e(a)i(di\013eren)n(t)523 4725 y(p)r(erception)i(of)f(what)h
-(is)g(a)f(correct)g(seman)n(tic)g(matc)n(h.)h(Th)n(us,)f(a)h(k)n(eyw)n
-(ord)e(searc)n(h)g(alw)n(a)n(ys)523 4825 y(has)20 b(the)h(p)r(oten)n
-(tial)f(of)h(resulting)f(in)g(searc)n(h)f(results)h(that)h(a)f(user)g
-(ma)n(y)g(\014nd)g(inappropriate.)523 4924 y(It)31 b(is)g(also)f(not)h
-(p)r(ossible)f(to)h(prev)n(en)n(t)f(a)g(user)h(from)f(supplying)h(k)n
-(eyw)n(ords)d(that)k(ha)n(v)n(e)d(no)p Black Black eop
-end
-%%Page: 13 13
-TeXDict begin 13 12 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
-SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.13) cvn H.B /DEST pdfmark
-end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(13)p Black Black 548 473 a Fp(H)6 b Fx(\()p Fp(K)f
-Fx(\))1068 425 y Fg(\(as)28 b(random)i(seed\))1754 454
-y Fo(/)p Fn(/)p 772 456 982 4 v 918 738 a Fg(\(as)e(key\))1093
-1016 y Fo(\034)p Fn(\034)1067 984 y Fl(8)1043 952 y(8)1018
+Black Black 548 473 a Fm(H)6 b Fu(\()p Fm(K)f Fu(\))1068
+425 y Fd(\(as)28 b(random)i(seed\))1754 454 y Fl(/)p
+Fk(/)p 772 456 982 4 v 918 738 a Fd(\(as)e(key\))1093
+1016 y Fl(\034)p Fk(\034)1067 984 y Fi(8)1043 952 y(8)1018
 921 y(8)993 890 y(8)969 859 y(8)944 828 y(8)919 797 y(8)895
 765 y(8)870 734 y(8)845 703 y(8)821 672 y(8)796 641 y(8)771
 610 y(8)747 578 y(8)722 547 y(8)697 516 y(8)p 1753 397
 2 2 v 1755 398 315 4 v 2070 397 2 2 v 1752 512 4 114
 v 2071 512 V 1753 515 2 2 v 1755 516 315 4 v 2070 515
-2 2 v 1779 472 a Fp(K)5 b(ey)s(g)s(en)1937 769 y Fk(P)j(r)r(v)2046
-783 y Fh(H)s Ff(\()p Fh(K)s Ff(\))1913 1016 y Fo(\017)p
-Fn(\017)p 1911 1016 4 505 v 2206 561 a Fk(P)g(ub)2317
-575 y Fh(H)s Ff(\()p Fh(K)s Ff(\))2520 720 y Fo(\()p
-Fn(\()2482 704 y Fl(Q)2445 688 y(Q)2409 672 y(Q)2372
+2 2 v 1779 472 a Fm(K)5 b(ey)s(g)s(en)1937 769 y Fh(P)j(r)r(v)2046
+783 y Fe(H)s Fc(\()p Fe(K)s Fc(\))1913 1016 y Fl(\017)p
+Fk(\017)p 1911 1016 4 505 v 2206 561 a Fh(P)g(ub)2317
+575 y Fe(H)s Fc(\()p Fe(K)s Fc(\))2520 720 y Fl(\()p
+Fk(\()2482 704 y Fi(Q)2445 688 y(Q)2409 672 y(Q)2372
 656 y(Q)2336 640 y(Q)2299 624 y(Q)2263 608 y(Q)2226 592
 y(Q)2190 576 y(Q)2153 560 y(Q)2117 544 y(Q)2080 528 y(Q)2044
 512 y(Q)p 2519 717 2 2 v 2521 718 206 4 v 2727 717 2
 2 v 2518 817 4 100 v 2729 817 V 2519 820 2 2 v 2521 821
-206 4 v 2727 820 2 2 v 2545 792 a Fp(J)f(oin)2928 766
-y Fo(+)p Fn(3)p 2729 760 179 4 v 2729 776 V 2953 792
-a Fp(K)e(B)t(l)q(ock)573 1100 y(data)972 1074 y Fo(/)p
-Fn(/)p 747 1076 225 4 v 971 1017 2 2 v 972 1018 331 4
+206 4 v 2727 820 2 2 v 2545 792 a Fm(J)f(oin)2928 766
+y Fl(+)p Fk(3)p 2729 760 179 4 v 2729 776 V 2953 792
+a Fm(K)e(B)t(l)q(ock)573 1100 y(data)972 1074 y Fl(/)p
+Fk(/)p 747 1076 225 4 v 971 1017 2 2 v 972 1018 331 4
 v 1303 1017 2 2 v 970 1132 4 114 v 1305 1132 V 971 1135
-2 2 v 972 1136 331 4 v 1303 1135 2 2 v 997 1092 a Fp(E)t(ncr)r(y)s(pt)
-1343 1136 y Fk(E)1388 1150 y Fh(H)s Ff(\()p Fh(K)s Ff(\))1537
-1136 y Fy(\()p Fk(data)p Fy(\))1806 1074 y Fo(/)p Fn(/)p
+2 2 v 972 1136 331 4 v 1303 1135 2 2 v 997 1092 a Fm(E)t(ncr)r(y)s(pt)
+1343 1136 y Fh(E)1388 1150 y Fe(H)s Fc(\()p Fe(K)s Fc(\))1537
+1136 y Fv(\()p Fh(data)p Fv(\))1806 1074 y Fl(/)p Fk(/)p
 1305 1076 501 4 v 1805 1017 2 2 v 1807 1018 210 4 v 2017
 1017 2 2 v 1804 1132 4 114 v 2019 1132 V 1805 1135 2
-2 v 1807 1136 210 4 v 2017 1135 2 2 v 1831 1092 a Fp(S)t(ig)s(n)2520
-811 y Fo(6)p Fn(6)2482 828 y Fl(m)2446 843 y(m)2410 859
+2 v 1807 1136 210 4 v 2017 1135 2 2 v 1831 1092 a Fm(S)t(ig)s(n)2520
+811 y Fl(6)p Fk(6)2482 828 y Fi(m)2446 843 y(m)2410 859
 y(m)2375 874 y(m)2339 889 y(m)2304 905 y(m)2268 920 y(m)2233
 936 y(m)2197 951 y(m)2161 966 y(m)2126 982 y(m)2090 997
-y(m)2055 1013 y(m)2019 1028 y(m)2280 991 y Fx([)p Fp(E)2358
-1003 y Fk(H)t Fy(\()p Fk(K)s Fy(\))2518 991 y Fx(\()p
-Fp(data)p Fx(\)])2749 999 y Fk(P)j(r)r(v)2858 1013 y
-Fh(H)s Ff(\()p Fh(K)s Ff(\))523 1339 y Fr(Fig.)15 b(2.)p
+y(m)2055 1013 y(m)2019 1028 y(m)2280 991 y Fu([)p Fm(E)2358
+1003 y Fh(H)t Fv(\()p Fh(K)s Fv(\))2518 991 y Fu(\()p
+Fm(data)p Fu(\)])2749 999 y Fh(P)j(r)r(v)2858 1013 y
+Fe(H)s Fc(\()p Fe(K)s Fc(\))523 1339 y Fn(Fig.)15 b(2.)p
 0 TeXcolorgray 799 1240 a
 SDict begin H.S end
  799 1240 a 0 TeXcolorgray 0
@@ -7852,90 +6835,97 @@
 SDict begin [ /View [/XYZ H.V] /Dest (figure.1.2) cvn H.B /DEST pdfmark
 end
  799 1240
-a Black 99 x FA(The)25 b(construction)f(of)g(a)h Ft(KBlo)l(ck)p
-FA(.)h(The)e(hash)h Fs(H)7 b FA(\()p Fs(K)f FA(\))24
-b(of)h(the)g(k)n(eyw)n(ord)e Fs(K)30 b FA(is)25 b(used)523
+a Black 99 x Fx(The)25 b(construction)f(of)g(a)h Fq(KBlo)l(ck)p
+Fx(.)h(The)e(hash)h Fp(H)7 b Fx(\()p Fp(K)f Fx(\))24
+b(of)h(the)g(k)n(eyw)n(ord)e Fp(K)30 b Fx(is)25 b(used)523
 1439 y(to)36 b(encrypt)f(the)h(data)f(and)g(to)h(seed)f(the)h(k)n(ey)f
 (generator.)e(The)j(obtained)f(priv)-5 b(ate)36 b(k)n(ey)523
-1538 y Fs(P)12 b(r)r(v)667 1553 y Fi(H)t Fz(\()p Fi(K)t
-Fz(\))867 1538 y FA(signs)24 b(the)h(encrypted)f(data,)g(but)h(is)f
+1538 y Fp(P)12 b(r)r(v)667 1553 y Ff(H)t Fw(\()p Ff(K)t
+Fw(\))867 1538 y Fx(signs)24 b(the)h(encrypted)f(data,)g(but)h(is)f
 (not)g(otherwise)g(used.)g(Finally)-7 b(,)25 b(the)g(public)523
-1638 y(k)n(ey)i Fs(P)12 b(ub)822 1653 y Fi(H)t Fz(\()p
-Fi(K)t Fz(\))1023 1638 y FA(is)28 b(app)r(ended)g(to)f(the)h(signed)f
-(data)g(to)h(form)f(the)h Ft(KBlo)l(ck)p FA(.)p Black
-Black Black 523 2159 a(seman)n(tic)33 b(relation)f(with)h(the)h(con)n
-(ten)n(t)e(and)h(thereb)n(y)f(increasing)g(the)h(c)n(hance)g(of)g
-(other)523 2259 y(users)27 b(\014nding)g(undesirable)g(results)g(for)g
-(those)h(k)n(eyw)n(ords.)648 2396 y(Despite)38 b(these)g(fundamen)n
-(tal)h(dra)n(wbac)n(ks,)c(ECRS)j(should)g(\(and)g(can\))g(giv)n(e)g
-(some)523 2496 y(un)n(usual)e Ft(guar)l(ante)l(es)f FA(for)h(k)n(eyw)n
-(ord-based)d(searc)n(hes.)h(First,)i(the)g(k)n(eyw)n(ord)e(used)i(for)f
-(a)523 2595 y(searc)n(h)28 b(is)h(not)g(exp)r(osed)f(to)h(in)n
-(termediaries)f(in)i(a)e(w)n(a)n(y)g(that)i(w)n(ould)e(allo)n(w)g(them)
-i(to)f(eas-)523 2695 y(ily)g(exercise)g(editorial)f(con)n(trol)g
-(\(i.e.)i(to)f(censor)f(queries\).)h(Note)g(again)g(that)g(a)g
-(guessing)523 2795 y(attac)n(k)35 b(in)h(whic)n(h)g(the)h(in)n
-(termediary)d(guesses)h(a)h(k)n(eyw)n(ord,)e(computes)h(the)i(resp)r
-(ectiv)n(e)523 2894 y(query)d(hash,)h(and)g(attempts)h(to)f(matc)n(h)g
-(the)g(query)g(hash)f(to)h(the)h(incoming)f(query)-7
-b(,)34 b(is)523 2994 y(considered)c(acceptable;)g(plausible)h
-(deniabilit)n(y)g(for)f(the)h(in)n(termediaries)f(is)h(una\013ected)523
-3094 y(b)n(y)c(this)g(attac)n(k.)f(Secondly)-7 b(,)26
-b(only)h(p)r(eers)f(that)h(ha)n(v)n(e)f(con)n(ten)n(t)g(a)n(v)-5
-b(ailable)26 b(under)h(the)g(giv)n(en)523 3193 y(k)n(eyw)n(ord)32
+1638 y(k)n(ey)i Fp(P)12 b(ub)822 1653 y Ff(H)t Fw(\()p
+Ff(K)t Fw(\))1023 1638 y Fx(is)28 b(app)r(ended)g(to)f(the)h(signed)f
+(data)g(to)h(form)f(the)h Fq(KBlo)l(ck)p Fx(.)p Black
+Black Black 648 2110 a(Despite)38 b(these)g(fundamen)n(tal)h(dra)n
+(wbac)n(ks,)c(ECRS)j(should)g(\(and)g(can\))g(giv)n(e)g(some)523
+2209 y(un)n(usual)e Fq(guar)l(ante)l(es)f Fx(for)h(k)n(eyw)n(ord-based)
+d(searc)n(hes.)h(First,)i(the)g(k)n(eyw)n(ord)e(used)i(for)f(a)523
+2309 y(searc)n(h)28 b(is)h(not)g(exp)r(osed)f(to)h(in)n(termediaries)f
+(in)i(a)e(w)n(a)n(y)g(that)i(w)n(ould)e(allo)n(w)g(them)i(to)f(eas-)523
+2408 y(ily)g(exercise)g(editorial)f(con)n(trol)g(\(i.e.)i(to)f(censor)f
+(queries\).)h(Note)g(again)g(that)g(a)g(guessing)523
+2508 y(attac)n(k)35 b(in)h(whic)n(h)g(the)h(in)n(termediary)d(guesses)h
+(a)h(k)n(eyw)n(ord,)e(computes)h(the)i(resp)r(ectiv)n(e)523
+2608 y(query)d(hash,)h(and)g(attempts)h(to)f(matc)n(h)g(the)g(query)g
+(hash)f(to)h(the)h(incoming)f(query)-7 b(,)34 b(is)523
+2707 y(considered)c(acceptable;)g(plausible)h(deniabilit)n(y)g(for)f
+(the)h(in)n(termediaries)f(is)h(una\013ected)523 2807
+y(b)n(y)c(this)g(attac)n(k.)f(Secondly)-7 b(,)26 b(only)h(p)r(eers)f
+(that)h(ha)n(v)n(e)f(con)n(ten)n(t)g(a)n(v)-5 b(ailable)26
+b(under)h(the)g(giv)n(en)523 2907 y(k)n(eyw)n(ord)32
 b(should)h(b)r(e)h(able)g(to)f(pro)r(duce)h(a)f(v)-5
 b(alid)34 b(resp)r(onse.)e(In)i(other)f(w)n(ords,)g(the)h(ulti-)523
-3293 y(mate)24 b(resp)r(onder)e(m)n(ust)i(ha)n(v)n(e)e(succeeded)h(in)h
+3006 y(mate)24 b(resp)r(onder)e(m)n(ust)i(ha)n(v)n(e)e(succeeded)h(in)h
 (guessing)f(the)h(k)n(eyw)n(ord.)d(This)j(is)f(imp)r(ortan)n(t)523
-3392 y(since)f(it)g(prev)n(en)n(ts)f(p)r(eers)g(from)h(making)f(up)i
+3106 y(since)f(it)g(prev)n(en)n(ts)f(p)r(eers)g(from)h(making)f(up)i
 (replies)e(for)g(arbitrary)f(requests)h(on-the-\015y)-7
-b(.)22 b(If)523 3492 y(p)r(eers)e(w)n(ere)g(able)h(to)g(resp)r(ond)f
+b(.)22 b(If)523 3205 y(p)r(eers)e(w)n(ere)g(able)h(to)g(resp)r(ond)f
 (to)h(an)n(y)f(k)n(eyw)n(ord)f(query)h(without)h(ha)n(ving)f(to)h(at)f
-(least)h(guess)523 3592 y(the)33 b(k)n(eyw)n(ord,)f(they)h(could)f(use)
+(least)h(guess)523 3305 y(the)33 b(k)n(eyw)n(ord,)f(they)h(could)f(use)
 h(this)h(to)e(spam)h(ev)n(ery)f(p)r(ossible)g(searc)n(h,)g(rendering)g
-(the)523 3691 y(k)n(eyw)n(ord)e(searc)n(h)g(mostly)i(useless.)f(F)-7
+(the)523 3405 y(k)n(eyw)n(ord)e(searc)n(h)g(mostly)i(useless.)f(F)-7
 b(orcing)31 b(resp)r(onders)f(to)i(guess)f(k)n(eyw)n(ords)f(do)r(es)h
-(not)523 3791 y(eliminate)c(the)g(problem)f(completely;)h(ho)n(w)n(ev)n
+(not)523 3504 y(eliminate)c(the)g(problem)f(completely;)h(ho)n(w)n(ev)n
 (er,)d(it)j(do)r(es)g(limit)g(the)g(attac)n(k)f(to)h(the)g(com-)523
-3891 y(mon,)33 b(easily-guessed)d(k)n(eyw)n(ords.)g(Finally)-7
+3604 y(mon,)33 b(easily-guessed)d(k)n(eyw)n(ords.)g(Finally)-7
 b(,)33 b(the)g(v)n(eri\014cation)e(that)i(a)f(resp)r(onse)g(is)g(v)-5
-b(alid)523 3990 y(should)27 b(b)r(e)h(p)r(ossible)g(not)f(only)g(for)h
+b(alid)523 3704 y(should)27 b(b)r(e)h(p)r(ossible)g(not)f(only)g(for)h
 (the)f(\014nal)h(recipien)n(t,)f(but)h(also)f(for)g(in)n(termediaries.)
-648 4127 y(ECRS)43 b(ac)n(hiev)n(es)g(all)h(of)g(this)g(with)h(a)f
-Ft(new)h(crypto)l(gr)l(aphic)i(primitive)f FA(called)e
-Fs(K)6 b Ft(-)523 4227 y(deterministic)40 b(keys)f FA(whic)n(h)f(is)g
-(a)g(k)n(ey)f(pair)g(\()p Fs(P)12 b(ub)2167 4242 y Fi(H)t
-Fz(\()p Fi(K)t Fz(\))2341 4227 y Fs(;)i(P)e(r)r(v)2522
-4242 y Fi(H)t Fz(\()p Fi(K)t Fz(\))2698 4227 y FA(\))38
-b(generated)f(from)g(a)523 4327 y(k)n(eyw)n(ord)32 b
-Fs(K)6 b FA(.)34 b(The)g(hash)f Fs(H)7 b FA(\()p Fs(K)f
-FA(\))34 b(of)g(the)g(k)n(eyw)n(ord)e(is)i(used)g(as)f(the)i(seed)e
-(and)h(the)g(only)523 4426 y(input)26 b(to)e(the)h(pseudo-random)e(n)n
+648 3816 y(ECRS)43 b(ac)n(hiev)n(es)g(all)h(of)g(this)g(with)h(a)f
+Fq(new)h(crypto)l(gr)l(aphic)i(primitive)f Fx(called)e
+Fp(K)6 b Fq(-)523 3915 y(deterministic)40 b(keys)f Fx(whic)n(h)f(is)g
+(a)g(k)n(ey)f(pair)g(\()p Fp(P)12 b(ub)2167 3930 y Ff(H)t
+Fw(\()p Ff(K)t Fw(\))2341 3915 y Fp(;)i(P)e(r)r(v)2522
+3930 y Ff(H)t Fw(\()p Ff(K)t Fw(\))2698 3915 y Fx(\))38
+b(generated)f(from)g(a)523 4015 y(k)n(eyw)n(ord)32 b
+Fp(K)6 b Fx(.)34 b(The)g(hash)f Fp(H)7 b Fx(\()p Fp(K)f
+Fx(\))34 b(of)g(the)g(k)n(eyw)n(ord)e(is)i(used)g(as)f(the)i(seed)e
+(and)h(the)g(only)523 4115 y(input)26 b(to)e(the)h(pseudo-random)e(n)n
 (um)n(b)r(er)i(generator)d(that)j(generates)e(the)i(public-priv)-5
-b(ate)523 4526 y(k)n(ey)23 b(pair.)f(The)i(authors)e(are)g(not)i(a)n(w)
-n(are)d(of)i(an)n(y)g(previous)f(use)h(of)g Fs(K)6 b
-FA(-deterministic)23 b(k)n(eys.)523 4625 y(Giv)n(en)g(suc)n(h)g(a)g(k)n
+b(ate)523 4214 y(k)n(ey)23 b(pair.)f(The)i(authors)e(are)g(not)i(a)n(w)
+n(are)d(of)i(an)n(y)g(previous)f(use)h(of)g Fp(K)6 b
+Fx(-deterministic)23 b(k)n(eys.)523 4314 y(Giv)n(en)g(suc)n(h)g(a)g(k)n
 (ey)f(pair,)h(the)g(inserting)g(p)r(eer)g(generates)e
-Ft(KBlo)l(ck)p FA(s)k(b)n(y)d(signing)h(the)g(meta-)523
-4725 y(data)30 b(necessary)g(to)h(do)n(wnload)e(the)i(\014le)h(with)f
-Fs(P)12 b(r)r(v)2186 4740 y Fi(H)t Fz(\()p Fi(K)t Fz(\))2362
-4725 y FA(.)31 b Ft(KBlo)l(ck)p FA(s)h(are)d(essen)n(tially)h(lik)n(e)
-523 4825 y Ft(SBlo)l(ck)p FA(s)k(with)g(the)g(di\013erence)f(that)h
-(the)f Fs(K)6 b FA(-determinate)33 b(k)n(ey)g(is)g(used)g(instead)g(of)
-h(the)523 4924 y(pseudon)n(ym.)27 b(The)h(construction)f(of)g(a)g
-Ft(KBlo)l(ck)i FA(is)e(sho)n(wn)g(in)h(Figure)p 1 0 0
-TeXcolorrgb 2770 4924 a
+Fq(KBlo)l(ck)p Fx(s)k(b)n(y)d(signing)h(the)g(meta-)523
+4414 y(data)30 b(necessary)g(to)h(do)n(wnload)e(the)i(\014le)h(with)f
+Fp(P)12 b(r)r(v)2186 4429 y Ff(H)t Fw(\()p Ff(K)t Fw(\))2362
+4414 y Fx(.)31 b Fq(KBlo)l(ck)p Fx(s)h(are)d(essen)n(tially)h(lik)n(e)
+523 4513 y Fq(SBlo)l(ck)p Fx(s)k(with)g(the)g(di\013erence)f(that)h
+(the)f Fp(K)6 b Fx(-determinate)33 b(k)n(ey)g(is)g(used)g(instead)g(of)
+h(the)523 4613 y(pseudon)n(ym.)27 b(The)h(construction)f(of)g(a)g
+Fq(KBlo)l(ck)i Fx(is)e(sho)n(wn)g(in)h(Figure)p 1 0 0
+TeXcolorrgb 2770 4613 a
 SDict begin H.S end
- 2770 4924 a 1 0 0 TeXcolorrgb
-FA(2)p 1 0 0 TeXcolorrgb 2812 4871 a
+ 2770 4613 a 1 0 0 TeXcolorrgb
+Fx(2)p 1 0 0 TeXcolorrgb 2812 4559 a
 SDict begin H.R end
- 2812 4871 a 2812
-4924 a
+ 2812 4559 a 2812
+4613 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (figure.1.2) cvn H.B /ANN pdfmark end
- 2812 4924 a Black FA(.)p Black Black eop end
-%%Page: 14 14
-TeXDict begin 14 13 bop 0 0 a
+ 2812 4613 a Black Fx(.)648 4725 y(A)c(p)r(eer)h(searc)n(hing)d
+(for)i Fp(K)30 b Fx(also)23 b(computes)i Fp(P)12 b(ub)2177
+4740 y Ff(H)t Fw(\()p Ff(K)t Fw(\))2375 4725 y Fx(using)24
+b(the)h(same)f(deterministic)523 4825 y(k)n(ey-generation)32
+b(algorithm)g(\()p Fp(P)12 b(r)r(v)1646 4840 y Ff(H)t
+Fw(\()p Ff(K)t Fw(\))1857 4825 y Fx(is)33 b(also)g(computed)i(but)g
+(not)f(used\).)g(The)g(p)r(eer)523 4924 y(then)k(uses)f
+Fp(H)7 b Fx(\()p Fp(P)12 b(ub)1165 4939 y Ff(H)t Fw(\()p
+Ff(K)t Fw(\))1339 4924 y Fx(\))38 b(as)f(the)h(query)f(hash.)g(In)n
+(termediaries)f(can)h(v)n(erify)g(that)h(the)p Black
+Black eop end
+%%Page: 11 11
+TeXDict begin 11 10 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -7947,23 +6937,23 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.14) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.11) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(14)199 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black Black 523 369 2882 4 v 523 439 a
+ 523 232 a Black 1036 w Fu(An)25
+b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
+b(11)p Black Black 523 369 2882 4 v 523 439 a
 SDict begin H.S end
- 523 439 a 523
-439 a
+ 523 439
+a 523 439 a
 SDict begin 11 H.A end
  523 439 a 523 439 a
 SDict begin [ /View [/XYZ H.V] /Dest (Item.1) cvn H.B /DEST pdfmark
 end
- 523 439 a Black 563 496 a Fx(1.)p
-Black 42 w(Input:)e(Con)n(ten)n(t)g Fp(C)5 b Fx(,)26
-b(a)g(list)h(of)f(k)n(eyw)n(ords)f Fe(f)p Fp(K)2014 504
-y Fy(1)2049 496 y Fp(;)14 b(:::)p Fe(g)27 b Fx(and)e(metadata)h
-Fp(D)r Fx(.)523 514 y
+ 523 439 a Black 563 496
+a Fu(1.)p Black 42 w(Input:)25 b(Con)n(ten)n(t)g Fm(C)5
+b Fu(,)26 b(a)g(list)h(of)f(k)n(eyw)n(ords)f Fb(f)p Fm(K)2014
+504 y Fv(1)2049 496 y Fm(;)14 b(:::)p Fb(g)27 b Fu(and)e(metadata)h
+Fm(D)r Fu(.)523 514 y
 SDict begin H.S end
  523 514 a 523 514 a
 SDict begin 11 H.A end
@@ -7971,10 +6961,10 @@
 514 a
 SDict begin [ /View [/XYZ H.V] /Dest (Item.2) cvn H.B /DEST pdfmark
 end
- 523 514 a Black 563 587 a Fx(2.)p Black 42 w(Split)g(con)n(ten)n
-(t)f Fp(C)30 b Fx(in)n(to)c(blo)r(c)n(ks)g Fp(B)1653
-595 y Fk(i)1680 587 y Fx(,)f(eac)n(h)h(of)h(size)f(32Kb.)g(Call)i
-(these)d Fq(DBlo)l(cks)p Fx(.)523 602 y
+ 523 514 a Black 563 587 a Fu(2.)p Black 42 w(Split)g(con)n(ten)n
+(t)f Fm(C)30 b Fu(in)n(to)c(blo)r(c)n(ks)g Fm(B)1653
+595 y Fh(i)1680 587 y Fu(,)f(eac)n(h)h(of)h(size)f(32Kb.)g(Call)i
+(these)d Fo(DBlo)l(cks)p Fu(.)523 602 y
 SDict begin H.S end
  523 602 a 523
 602 a
@@ -7982,18 +6972,18 @@
  523 602 a 523 602 a
 SDict begin [ /View [/XYZ H.V] /Dest (Item.3) cvn H.B /DEST pdfmark
 end
- 523 602 a Black 563 678 a Fx(3.)p
-Black 42 w(Compute)f(hash)f(v)l(alues)h Fp(H)1469 643
-y Fk(k)q(ey)1463 698 y(i)1590 678 y Fx(=)d Fp(H)6 b Fx(\()p
-Fp(B)1829 686 y Fk(i)1855 678 y Fx(\),)23 b Fp(E)1986
-686 y Fk(i)2034 678 y Fx(=)e Fp(E)2172 686 y Fk(H)2222
-698 y Fh(k)q(ey)2321 678 y Fx(\()p Fp(B)2409 686 y Fk(i)2436
-678 y Fx(\))i(and)g Fp(H)2706 643 y Fk(q)r(uer)r(y)2700
-698 y(i)2891 678 y Fx(=)e Fp(H)6 b Fx(\()p Fp(E)3129
-686 y Fk(i)3154 678 y Fx(\).)24 b(F)-6 b(orm)664 785
-y Fq(CHK)835 793 y Fk(i)887 785 y Fx(from)26 b(\()p Fp(H)1168
-749 y Fk(q)r(uer)r(y)1162 804 y(i)1332 785 y Fp(;)13
-b(H)1436 749 y Fk(k)q(ey)1430 804 y(i)1536 785 y Fx(\).)26
+ 523 602 a Black 563 678 a Fu(3.)p
+Black 42 w(Compute)f(hash)f(v)l(alues)h Fm(H)1469 643
+y Fh(k)q(ey)1463 698 y(i)1590 678 y Fu(=)d Fm(H)6 b Fu(\()p
+Fm(B)1829 686 y Fh(i)1855 678 y Fu(\),)23 b Fm(E)1986
+686 y Fh(i)2034 678 y Fu(=)e Fm(E)2172 686 y Fh(H)2222
+698 y Fe(k)q(ey)2321 678 y Fu(\()p Fm(B)2409 686 y Fh(i)2436
+678 y Fu(\))i(and)g Fm(H)2706 643 y Fh(q)r(uer)r(y)2700
+698 y(i)2891 678 y Fu(=)e Fm(H)6 b Fu(\()p Fm(E)3129
+686 y Fh(i)3154 678 y Fu(\).)24 b(F)-6 b(orm)664 785
+y Fo(CHK)835 793 y Fh(i)887 785 y Fu(from)26 b(\()p Fm(H)1168
+749 y Fh(q)r(uer)r(y)1162 804 y(i)1332 785 y Fm(;)13
+b(H)1436 749 y Fh(k)q(ey)1430 804 y(i)1536 785 y Fu(\).)26
 b(P)n(ad)g(con)n(ten)n(t)f(\(with)h(zeros\))g(if)h(needed.)523
 804 y
 SDict begin H.S end
@@ -8003,9 +6993,9 @@
 SDict begin [ /View [/XYZ H.V] /Dest (Item.4) cvn H.B /DEST pdfmark
 end
  523 804
-a Black 563 876 a Fx(4.)p Black 42 w(Store)f Fp(E)922
-884 y Fk(i)973 876 y Fx(under)f(the)g(name)h Fp(H)1598
-840 y Fk(q)r(uer)r(y)1592 896 y(i)1762 876 y Fx(.)523
+a Black 563 876 a Fu(4.)p Black 42 w(Store)f Fm(E)922
+884 y Fh(i)973 876 y Fu(under)f(the)g(name)h Fm(H)1598
+840 y Fh(q)r(uer)r(y)1592 896 y(i)1762 876 y Fu(.)523
 896 y
 SDict begin H.S end
  523 896 a 523 896 a
@@ -8014,25 +7004,25 @@
 SDict begin [ /View [/XYZ H.V] /Dest (Item.5) cvn H.B /DEST pdfmark
 end
  523 896
-a Black 563 967 a Fx(5.)p Black 42 w(If)g(there)f(is)g(more)h(than)f
+a Black 563 967 a Fu(5.)p Black 42 w(If)g(there)f(is)g(more)h(than)f
 (one)g(blo)r(c)n(k,)h(group)f(the)g(blo)r(c)n(ks)g(in)n(to)h(disjoin)n
-(t)g(sets)g Fp(I)2942 975 y Fk(j)2999 967 y Fx(of)g(up)e(to)i(256)664
-1059 y(mem)n(b)r(ers.)e(F)-6 b(or)23 b(eac)n(h)h Fp(I)1348
-1067 y Fk(j)1380 1059 y Fx(,)f(create)h Fq(Iblo)l(ck)1838
-1067 y Fk(j)1894 1059 y Fx(con)n(taining)g(the)f Fq(CHK)p
-Fx(s)g(of)h(the)f(blo)r(c)n(ks)g(in)g Fp(I)3185 1067
-y Fk(j)3218 1059 y Fx(.)g(Add)664 1150 y(zero)k(padding)e(if)h(needed.)
+(t)g(sets)g Fm(I)2942 975 y Fh(j)2999 967 y Fu(of)g(up)e(to)i(256)664
+1059 y(mem)n(b)r(ers.)e(F)-6 b(or)23 b(eac)n(h)h Fm(I)1348
+1067 y Fh(j)1380 1059 y Fu(,)f(create)h Fo(Iblo)l(ck)1838
+1067 y Fh(j)1894 1059 y Fu(con)n(taining)g(the)f Fo(CHK)p
+Fu(s)g(of)h(the)f(blo)r(c)n(ks)g(in)g Fm(I)3185 1067
+y Fh(j)3218 1059 y Fu(.)g(Add)664 1150 y(zero)k(padding)e(if)h(needed.)
 g(Pro)r(cess)h(eac)n(h)f(new)g(32Kb)f(blo)r(c)n(k)h(obtained)g(as)g(in)
 g(step)p 1 0 0 TeXcolorrgb 3146 1150 a
 SDict begin H.S end
  3146 1150 a 1 0 0
-TeXcolorrgb Fx(3)p 1 0 0 TeXcolorrgb 3185 1102 a
+TeXcolorrgb Fu(3)p 1 0 0 TeXcolorrgb 3185 1102 a
 SDict begin H.R end
  3185
 1102 a 3185 1150 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (Item.3) cvn H.B /ANN pdfmark end
- 3185 1150 a Black Fx(.)523 1165 y
+ 3185 1150 a Black Fu(.)523 1165 y
 SDict begin H.S end
 
 523 1165 a 523 1165 a
@@ -8041,17 +7031,17 @@
 SDict begin [ /View [/XYZ H.V] /Dest (Item.6) cvn H.B /DEST pdfmark
 end
  523 1165
-a Black 563 1241 a Fx(6.)p Black 42 w(If)20 b(the)g(size)h(of)g
-Fp(C)k Fx(w)n(as)c(smaller)g(than)f(32Kb)g(\(and)f(th)n(us)h(there)f
+a Black 563 1241 a Fu(6.)p Black 42 w(If)20 b(the)g(size)h(of)g
+Fm(C)k Fu(w)n(as)c(smaller)g(than)f(32Kb)g(\(and)f(th)n(us)h(there)f
 (is)i(only)f(one)g(pair)g(of)h(hashco)r(des)664 1332
-y Fq(CHK)835 1340 y Fy(0)870 1332 y Fx(\),)k(create)h
-Fq(SBlo)l(ck)p Fx(s)f(and)g Fq(KBlo)l(ck)p Fx(s)h(con)n(taining)g
-Fq(CHK)2436 1340 y Fy(0)2470 1332 y Fx(,)f(the)g(metadata)h
-Fp(D)h Fx(ab)r(out)e(the)664 1424 y(con)n(ten)n(t)i(and)g(the)g
-(original)i(length)f(of)g Fp(C)5 b Fx(.)28 b(Encrypt)f(and)g(sign)h
-(the)f(resulting)h Fq(SBlo)l(ck)p Fx(s)g(and)664 1515
-y Fq(KBlo)l(ck)p Fx(s.)p 523 1649 2882 4 v Black 1253
-1789 a Fr(Fig.)14 b(3.)p 0 TeXcolorgray 1531 1690 a
+y Fo(CHK)835 1340 y Fv(0)870 1332 y Fu(\),)k(create)h
+Fo(SBlo)l(ck)p Fu(s)f(and)g Fo(KBlo)l(ck)p Fu(s)h(con)n(taining)g
+Fo(CHK)2436 1340 y Fv(0)2470 1332 y Fu(,)f(the)g(metadata)h
+Fm(D)h Fu(ab)r(out)e(the)664 1424 y(con)n(ten)n(t)i(and)g(the)g
+(original)i(length)f(of)g Fm(C)5 b Fu(.)28 b(Encrypt)f(and)g(sign)h
+(the)f(resulting)h Fo(SBlo)l(ck)p Fu(s)g(and)664 1515
+y Fo(KBlo)l(ck)p Fu(s.)p 523 1649 2882 4 v Black 1253
+1789 a Fn(Fig.)14 b(3.)p 0 TeXcolorgray 1531 1690 a
 SDict begin H.S end
  1531
 1690 a 0 TeXcolorgray 0 TeXcolorgray 1531 1690 a
@@ -8060,93 +7050,108 @@
 1690 a 1531 1690 a
 SDict begin [ /View [/XYZ H.V] /Dest (figure.1.3) cvn H.B /DEST pdfmark
 end
- 1531 1690 a Black 99 x FA(The)28 b(ECRS)f(enco)r
-(ding)h(algorithm.)p Black Black 648 2072 a(A)c(p)r(eer)h(searc)n(hing)
-d(for)i Fs(K)30 b FA(also)23 b(computes)i Fs(P)12 b(ub)2177
-2087 y Fi(H)t Fz(\()p Fi(K)t Fz(\))2375 2072 y FA(using)24
-b(the)h(same)f(deterministic)523 2172 y(k)n(ey-generation)32
-b(algorithm)g(\()p Fs(P)12 b(r)r(v)1646 2187 y Fi(H)t
-Fz(\()p Fi(K)t Fz(\))1857 2172 y FA(is)33 b(also)g(computed)i(but)g
-(not)f(used\).)g(The)g(p)r(eer)523 2272 y(then)k(uses)f
-Fs(H)7 b FA(\()p Fs(P)12 b(ub)1165 2287 y Fi(H)t Fz(\()p
-Fi(K)t Fz(\))1339 2272 y FA(\))38 b(as)f(the)h(query)f(hash.)g(In)n
-(termediaries)f(can)h(v)n(erify)g(that)h(the)523 2371
-y(resp)r(onse)30 b(is)h(v)-5 b(alid)31 b(b)n(y)f(c)n(hec)n(king)g(the)h
-Ft(KBlo)l(ck)p FA(s)h(signature)e(against)f(its)i(public)h(k)n(ey)-7
-b(,)30 b(and)523 2471 y(c)n(hec)n(king)i(that)i(the)f(public)h(k)n(ey)f
+ 1531 1690 a Black 99 x Fx(The)28 b(ECRS)f(enco)r
+(ding)h(algorithm.)p Black Black Black 523 1922 2882
+4 v 523 2044 a Fm(B)h Fu(shares)e(\014le)f(whic)n(h)f(is)i(enco)r(ded)e
+(as)h Fm(B)1711 2052 y Fv(1)1746 2044 y Fm(;)13 b(B)1838
+2052 y Fv(2)1899 2044 y Fu(and)25 b(one)h Fo(IBlo)l(ck)f
+Fu(under)g(k)n(eyw)n(ord)g(\\test".)p Black 523 2202
+a Fm(A)c Fb(!)g Fm(B)t Fs(:)p Black 41 w Fu(Query:)k
+Fm(H)6 b Fu(\()p Fm(P)11 b(ub)1319 2214 y Fh(H)t Fv(\(\\)p
+Fh(test)p Fv("\))1591 2202 y Fu(\))p Black 523 2294 a
+Fm(B)25 b Fb(!)c Fm(A)p Fs(:)p Black 41 w Fu(Resp)r(onse:)26
+b(\([)p Fm(E)1294 2306 y Fh(H)t Fv(\(\\)p Fh(test)p Fv("\))1566
+2294 y Fu(\()p Fm(Q)1657 2302 y Fv(0)1691 2294 y Fm(;)14
+b(K)1791 2302 y Fv(0)1825 2294 y Fm(;)f(siz)s(e)p Fu(\)])2047
+2302 y Fh(P)8 b(r)r(v)2156 2316 y Fe(H)s Fc(\(\\)p Fe(test)p
+Fc("\))2417 2294 y Fm(;)14 b(P)d(ub)2589 2306 y Fh(H)t
+Fv(\(\\)p Fh(test)p Fv("\))2861 2294 y Fu(\))25 b(\(one)h
+Fo(KBlo)l(ck)p Fu(\))p Black 523 2385 a Fm(A)21 b Fb(!)g
+Fm(B)t Fs(:)p Black 41 w Fu(Query:)k Fm(Q)1143 2393 y
+Fv(0)1203 2385 y Fu(\(CHK-query\))p Black 523 2476 a
+Fm(B)g Fb(!)c Fm(A)p Fs(:)p Black 41 w Fu(Resp)r(onse:)26
+b Fm(E)1243 2484 y Fh(K)1294 2494 y Fc(0)1330 2476 y
+Fu(\()p Fm(Q)1421 2484 y Fv(1)1455 2476 y Fm(;)14 b(K)1555
+2484 y Fv(1)1589 2476 y Fm(;)f(Q)1684 2484 y Fv(2)1718
+2476 y Fm(;)h(K)1818 2484 y Fv(2)1852 2476 y Fu(\))26
+b(\(encrypted)e Fo(IBlo)l(ck)p Fu(\))p Black 523 2567
+a Fm(A)d Fb(!)g Fm(B)t Fs(:)p Black 41 w Fu(Query:)k
+Fm(Q)1143 2575 y Fv(1)1203 2567 y Fu(and)g Fm(Q)1413
+2575 y Fv(2)1473 2567 y Fu(\(CHK-query\))p Black 523
+2659 a Fm(B)g Fb(!)c Fm(A)p Fs(:)p Black 41 w Fu(Resp)r(onse:)26
+b Fm(E)1243 2667 y Fh(K)1294 2677 y Fc(1)1330 2659 y
+Fu(\()p Fm(B)1418 2667 y Fv(1)1453 2659 y Fu(\))f(and)h
+Fm(E)1715 2667 y Fh(K)1766 2677 y Fc(2)1802 2659 y Fu(\()p
+Fm(B)1890 2667 y Fv(2)1924 2659 y Fu(\))g(\(encrypted)e
+Fo(DBlo)l(ck)p Fu(s\))p 523 2794 V 523 2940 a Fn(Fig.)15
+b(4.)p 0 TeXcolorgray 811 2840 a
+SDict begin H.S end
+ 811 2840 a 0 TeXcolorgray
+0 TeXcolorgray 811 2840 a
+SDict begin H.R end
+ 811 2840 a 811 2840 a
+SDict begin [ /View [/XYZ H.V] /Dest (figure.1.4) cvn H.B /DEST pdfmark
+end
+ 811 2840
+a Black 100 x Fx(Example)36 b(proto)r(col)g(for)g(an)h(ECRS)g(do)n
+(wnload.)f(\()p Fp(Q)2524 2952 y Ff(i)2551 2940 y Fp(;)14
+b(K)2659 2952 y Ff(i)2686 2940 y Fx(\))38 b(is)e(a)h(CHK)g(pair)f(to)
+523 3039 y(request)27 b(and)g(decrypt)h(blo)r(c)n(k)f
+Fp(i)p Fx(.)p Black 523 3341 a(resp)r(onse)j(is)h(v)-5
+b(alid)31 b(b)n(y)f(c)n(hec)n(king)g(the)h Fq(KBlo)l(ck)p
+Fx(s)h(signature)e(against)f(its)i(public)h(k)n(ey)-7
+b(,)30 b(and)523 3440 y(c)n(hec)n(king)i(that)i(the)f(public)h(k)n(ey)f
 (hashes)f(to)h(the)h(query)e(hash.)h(Y)-7 b(et)34 b(in)n(termediaries)e
-(are)523 2571 y(unable)21 b(to)h(decrypt)f(the)g(resp)r(onse)g(or)f
-(learn)h(the)g(k)n(eyw)n(ord)f Fs(K)27 b FA(that)21 b(w)n(as)g(used)g
-(to)g(generate)523 2670 y(the)28 b(public)g(k)n(ey)f(without)h
-(guessing.)648 2770 y(In)20 b(conclusion,)g(using)g Ft(KBlo)l(ck)p
-FA(s)h(it)f(is)h(p)r(ossible)f(to)g(allo)n(w)f(in)n(termediaries)g(to)h
-(v)n(erify)g(the)523 2869 y(in)n(tegrit)n(y)h(of)h(replies)f(without)i
+(are)523 3540 y(unable)21 b(to)h(decrypt)f(the)g(resp)r(onse)g(or)f
+(learn)h(the)g(k)n(eyw)n(ord)f Fp(K)27 b Fx(that)21 b(w)n(as)g(used)g
+(to)g(generate)523 3640 y(the)28 b(public)g(k)n(ey)f(without)h
+(guessing.)648 3746 y(In)20 b(conclusion,)g(using)g Fq(KBlo)l(ck)p
+Fx(s)h(it)f(is)h(p)r(ossible)f(to)g(allo)n(w)f(in)n(termediaries)g(to)h
+(v)n(erify)g(the)523 3845 y(in)n(tegrit)n(y)h(of)h(replies)f(without)i
 (learning)d(the)j(plain)n(text)e(of)h(the)h(k)n(eyw)n(ord)d(or)h(the)h
-(resp)r(onse.)523 2969 y Ft(KBlo)l(ck)p FA(s)f(require)e(a)h(k)n(eyw)n
+(resp)r(onse.)523 3945 y Fq(KBlo)l(ck)p Fx(s)f(require)e(a)h(k)n(eyw)n
 (ord)f(guess,)g(making)h(it)h(it)f(harder)f(to)i(reply)e(to)i
-(arbitrary)d(queries)523 3069 y(with)36 b(random)f(data;)g(they)h
+(arbitrary)d(queries)523 4045 y(with)36 b(random)f(data;)g(they)h
 (cannot)f(prev)n(en)n(t)g(users)f(from)i(inserting)f(suc)n(h)g(data)g
-(under)523 3168 y(p)r(opular)f(k)n(eyw)n(ords.)f(The)h(receiv)n(er)f
-(of)i(the)g Ft(KBlo)l(ck)h FA(can)e(retriev)n(e)f(the)i(rest)f(of)h
-(the)g(\014le)523 3268 y(tree)27 b(using)h(CHK)f(queries)g(in)h(the)g
-(same)f(w)n(a)n(y)f(as)h(it)h(is)f(done)h(for)f Ft(SBlo)l(ck)p
-FA(s.)523 3428 y
+(under)523 4144 y(p)r(opular)f(k)n(eyw)n(ords.)f(The)h(receiv)n(er)f
+(of)i(the)g Fq(KBlo)l(ck)h Fx(can)e(retriev)n(e)f(the)i(rest)f(of)h
+(the)g(\014le)523 4244 y(tree)27 b(using)h(CHK)f(queries)g(in)h(the)g
+(same)f(w)n(a)n(y)f(as)h(it)h(is)f(done)h(for)f Fq(SBlo)l(ck)p
+Fx(s.)523 4436 y
 SDict begin H.S end
- 523 3428 a 523 3428 a
+ 523 4436 a 523 4436 a
 SDict begin 12 H.A end
- 523 3428 a 523
-3428 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.7) cvn H.B /DEST
+ 523 4436 a 523
+4436 a
+SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.3.5) cvn H.B /DEST
 pdfmark end
- 523 3428 a 84 x Fr(3.7)95 b(Summary)523 3673 y
-FA(The)32 b(ECRS)g(enco)r(ding)f(algorithm)g(is)h(summarized)f(in)h
-(Figure)p 1 0 0 TeXcolorrgb 2610 3673 a
+ 523 4436 a 90 x Fn(3.5)95 b(Summary)523 4725 y
+Fx(The)32 b(ECRS)g(enco)r(ding)f(algorithm)g(is)h(summarized)f(in)h
+(Figure)p 1 0 0 TeXcolorrgb 2610 4725 a
 SDict begin H.S end
- 2610 3673 a 1 0 0
-TeXcolorrgb FA(3)p 1 0 0 TeXcolorrgb 2652 3619 a
+ 2610 4725 a 1 0 0
+TeXcolorrgb Fx(3)p 1 0 0 TeXcolorrgb 2652 4672 a
 SDict begin H.R end
  2652
-3619 a 2652 3673 a
+4672 a 2652 4725 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (figure.1.3) cvn H.B /ANN pdfmark end
- 2652 3673 a Black FA(.)g(Figure)p
-1 0 0 TeXcolorrgb 2973 3673 a
+ 2652 4725 a Black Fx(.)g(Figure)p
+1 0 0 TeXcolorrgb 2973 4725 a
 SDict begin H.S end
- 2973 3673 a 1 0 0 TeXcolorrgb
-FA(4)p 1 0 0 TeXcolorrgb 3015 3619 a
+ 2973 4725 a 1 0 0 TeXcolorrgb
+Fx(4)p 1 0 0 TeXcolorrgb 3015 4672 a
 SDict begin H.R end
- 3015 3619 a 3015
-3673 a
+ 3015 4672 a 3015
+4725 a
 SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (figure.1.4) cvn H.B /ANN pdfmark end
- 3015 3673 a Black 32 w FA(sho)n(ws)f(the)523 3772
+ 3015 4725 a Black 32 w Fx(sho)n(ws)f(the)523 4825
 y(sequence)26 b(of)h(messages)e(exc)n(hanged)h(b)n(y)h(p)r(eers)f(to)h
 (do)n(wnload)e(a)i(64Kb)e(\014le)i(starting)f(with)523
-3872 y(a)h(k)n(eyw)n(ord.)523 4032 y
-SDict begin H.S end
- 523 4032 a 523 4032
-a
-SDict begin 12 H.A end
- 523 4032 a 523 4032 a
-SDict begin [ /View [/XYZ H.V] /Dest (section.1.4) cvn H.B /DEST pdfmark
-end
- 523 4032 a 100 x Fu(4)112 b(Extensions)523
-4327 y FA(The)38 b(v)-5 b(anilla)38 b(ECRS)g(enco)r(ding)f(sc)n(heme)h
-(still)g(lea)n(v)n(es)f(some)g(practical)g(problems)h(that)523
-4426 y(should)i(b)r(e)g(addressed)f(to)h(facilitate)g(real-life)f
-(usabilit)n(y)-7 b(.)40 b(F)-7 b(or)40 b(example,)f(the)i(man)n(ual)523
-4526 y(e\013ort)30 b(of)g(assigning)f(or)g(guessing)h(k)n(eyw)n(ords)e
-(should)i(b)r(e)g(minimized.)h(Also,)f(the)h(o)n(v)n(erall)523
-4625 y(system)i(should)g(b)r(e)h(e\016cien)n(t)f(in)g(practice.)g(In)g
-(particular,)f(the)i(system)f(requires)e(p)r(eers)523
-4725 y(to)k(frequen)n(tly)h(handle)f(small,)g(p)r(er-blo)r(c)n(k)g
-(queries,)f(man)n(y)h(of)h(whic)n(h)f(ma)n(y)g(not)g(ha)n(v)n(e)f(a)523
-4825 y(answ)n(er)23 b(that)i(is)g(lo)r(cally)f(a)n(v)-5
-b(ailable.)23 b(The)i(follo)n(wing)e(subsections)h(presen)n(t)g(some)g
-(ideas)g(on)523 4924 y(ho)n(w)j(these)h(issues)f(can)g(b)r(e)h
-(addressed.)p Black Black eop end
-%%Page: 15 15
-TeXDict begin 15 14 bop 0 0 a
+4924 y(a)h(k)n(eyw)n(ord.)p Black Black eop end
+%%Page: 12 12
+TeXDict begin 12 11 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -8158,579 +7163,139 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.15) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.12) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(15)p Black Black 523 369 2882 4 v 523 491 a Fp(B)29
-b Fx(shares)e(\014le)f(whic)n(h)f(is)i(enco)r(ded)e(as)h
-Fp(B)1711 499 y Fy(1)1746 491 y Fp(;)13 b(B)1838 499
-y Fy(2)1899 491 y Fx(and)25 b(one)h Fq(IBlo)l(ck)f Fx(under)g(k)n(eyw)n
-(ord)g(\\test".)p Black 523 649 a Fp(A)c Fe(!)g Fp(B)t
-Fv(:)p Black 41 w Fx(Query:)k Fp(H)6 b Fx(\()p Fp(P)11
-b(ub)1319 661 y Fk(H)t Fy(\(\\)p Fk(test)p Fy("\))1591
-649 y Fx(\))p Black 523 740 a Fp(B)25 b Fe(!)c Fp(A)p
-Fv(:)p Black 41 w Fx(Resp)r(onse:)26 b(\([)p Fp(E)1294
-752 y Fk(H)t Fy(\(\\)p Fk(test)p Fy("\))1566 740 y Fx(\()p
-Fp(Q)1657 748 y Fy(0)1691 740 y Fp(;)14 b(K)1791 748
-y Fy(0)1825 740 y Fp(;)f(siz)s(e)p Fx(\)])2047 748 y
-Fk(P)8 b(r)r(v)2156 762 y Fh(H)s Ff(\(\\)p Fh(test)p
-Ff("\))2417 740 y Fp(;)14 b(P)d(ub)2589 752 y Fk(H)t
-Fy(\(\\)p Fk(test)p Fy("\))2861 740 y Fx(\))25 b(\(one)h
-Fq(KBlo)l(ck)p Fx(\))p Black 523 832 a Fp(A)21 b Fe(!)g
-Fp(B)t Fv(:)p Black 41 w Fx(Query:)k Fp(Q)1143 840 y
-Fy(0)1203 832 y Fx(\(CHK-query\))p Black 523 923 a Fp(B)g
-Fe(!)c Fp(A)p Fv(:)p Black 41 w Fx(Resp)r(onse:)26 b
-Fp(E)1243 931 y Fk(K)1294 941 y Ff(0)1330 923 y Fx(\()p
-Fp(Q)1421 931 y Fy(1)1455 923 y Fp(;)14 b(K)1555 931
-y Fy(1)1589 923 y Fp(;)f(Q)1684 931 y Fy(2)1718 923 y
-Fp(;)h(K)1818 931 y Fy(2)1852 923 y Fx(\))26 b(\(encrypted)e
-Fq(IBlo)l(ck)p Fx(\))p Black 523 1014 a Fp(A)d Fe(!)g
-Fp(B)t Fv(:)p Black 41 w Fx(Query:)k Fp(Q)1143 1022 y
-Fy(1)1203 1014 y Fx(and)g Fp(Q)1413 1022 y Fy(2)1473
-1014 y Fx(\(CHK-query\))p Black 523 1106 a Fp(B)g Fe(!)c
-Fp(A)p Fv(:)p Black 41 w Fx(Resp)r(onse:)26 b Fp(E)1243
-1114 y Fk(K)1294 1124 y Ff(1)1330 1106 y Fx(\()p Fp(B)1418
-1114 y Fy(1)1453 1106 y Fx(\))f(and)h Fp(E)1715 1114
-y Fk(K)1766 1124 y Ff(2)1802 1106 y Fx(\()p Fp(B)1890
-1114 y Fy(2)1924 1106 y Fx(\))g(\(encrypted)e Fq(DBlo)l(ck)p
-Fx(s\))p 523 1241 V 523 1387 a Fr(Fig.)15 b(4.)p 0 TeXcolorgray
-811 1287 a
-SDict begin H.S end
- 811 1287 a 0 TeXcolorgray 0 TeXcolorgray 811
-1287 a
-SDict begin H.R end
- 811 1287 a 811 1287 a
-SDict begin [ /View [/XYZ H.V] /Dest (figure.1.4) cvn H.B /DEST pdfmark
-end
- 811 1287 a Black 100 x FA(Example)36
-b(proto)r(col)g(for)g(an)h(ECRS)g(do)n(wnload.)f(\()p
-Fs(Q)2524 1399 y Fi(i)2551 1387 y Fs(;)14 b(K)2659 1399
-y Fi(i)2686 1387 y FA(\))38 b(is)e(a)h(CHK)g(pair)f(to)523
-1486 y(request)27 b(and)g(decrypt)h(blo)r(c)n(k)f Fs(i)p
-FA(.)p Black 523 1686 a
-SDict begin H.S end
- 523 1686 a 523 1686 a
-SDict begin 12 H.A end
- 523 1686
-a 523 1686 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.4.1) cvn H.B /DEST
-pdfmark end
- 523 1686 a 83 x Fr(4.1)95 b(Keyw)m(ord)32
-b(inference)523 1930 y FA(One)40 b(problem)g(with)i(ECRS)e(is)g(that)h
-(the)g(con)n(ten)n(t)g(m)n(ust)f(often)h(b)r(e)g(asso)r(ciated)e(with)
-523 2029 y(k)n(eyw)n(ords.)23 b(Although)i(this)h(is)f(v)-5
-b(astly)25 b(b)r(etter)g(than)g(forcing)g(the)g(user)g(to)g(rely)f(on)h
-(\\mean-)523 2129 y(ingless")33 b(bitstrings)g(as)g(the)i(only)e(iden)n
-(ti\014er,)h(the)g(k)n(eys)f(m)n(ust)h(still)g(b)r(e)h(c)n(hosen)e(so)g
-(that)523 2229 y(the)25 b(target)f(audience)g(can)h(guess)f(them.)h
-(The)g(simplest)g(non-tec)n(hnical)e(solution)i(for)f(this)523
-2328 y(problem)g(is)g(for)f(a)h(group)f(of)h(users)g(to)g(agree)e(on)i
-(an)g(informal)g(standard)f(for)g(k)n(eyw)n(ords.)g(If)523
-2428 y(con)n(ten)n(t)28 b(pro)n(viders)e(w)n(an)n(t)i(to)g(mak)n(e)f
-(it)i(easy)e(for)h(others)f(to)h(guess)f(a)h(k)n(eyw)n(ord,)f(it)h(is)g
-(t)n(yp-)523 2527 y(ically)h(useful)h(to)g(follo)n(w)f(informal)g(con)n
-(v)n(en)n(tions)f(for)h(k)n(eyw)n(ord)f(selection.)h(F)-7
-b(or)29 b(example,)523 2627 y(a)e(reasonable)f(con)n(v)n(en)n(tion)g
-(ma)n(y)h(b)r(e)h(to)f(only)g(use)h(lo)n(w)n(er-case)d(letters.)648
-2727 y(A)j(larger)f(problem)h(for)g(a)g(k)n(eyw)n(ord-based)e(searc)n
-(h)h(is)h(that)h(users)f(ma)n(y)g(b)r(e)h(reluctan)n(t)523
-2826 y(to)e(put)g(in)g(the)g(e\013ort)f(to)g(pro)n(vide)g(go)r(o)r(d)g
-(k)n(eyw)n(ords)e(for)i(the)h(con)n(ten)n(t)f(that)h(they)g(pro)n
-(vide.)523 2926 y(A)g(solution)f(to)h(this)g(problem)f(is)g(the)h
-Fd(libextractor)22 b FA(library)j([)p 0 1 0 TeXcolorrgb
-2575 2926 a
-SDict begin H.S end
- 2575 2926 a 0 1 0 TeXcolorrgb FA(14)p 0 1 0
-TeXcolorrgb 2658 2872 a
-SDict begin H.R end
- 2658 2872 a 2658 2926 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.le2005) cvn H.B /ANN pdfmark end
- 2658
-2926 a Black FA(].)i Fd(libextractor)22 b FA(is)k(a)523
-3026 y(library)j(for)h(metadata)f(extraction)h(that)g(is)g(used)g(to)g
-(automatically)g(extract)f(k)n(eyw)n(ords)523 3125 y(and)f(other)g
-(metadata,)g(suc)n(h)g(as)g(descriptions,)g(commen)n(ts)g(and)g(mime-t)
-n(yp)r(es)h(from)f(\014les)523 3225 y(of)g(v)-5 b(arious)26
-b(formats.)523 3369 y
-SDict begin H.S end
- 523 3369 a 523 3369 a
-SDict begin 12 H.A end
- 523 3369
-a 523 3369 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.4.2) cvn H.B /DEST
-pdfmark end
- 523 3369 a 100 x Fr(4.2)95 b(Directories)523
-3629 y FA(Another)25 b(approac)n(h)e(to)i(a)n(v)n(oiding)e(searc)n(hes)
-g(is)i(to)g(group)e(\014les)i(in)n(to)g(directories.)f(Directo-)523
-3729 y(ries)k(can)g(help)h(with)h(the)f(searc)n(h)e(problem)h(since)h
-(they)f(reduce)h(the)g(need)g(for)f(searc)n(hing.)523
-3828 y(Also,)i(they)h(can)f(b)r(e)h(used)f(to)g(bundle)h(similar)f(con)
-n(ten)n(t)g(and)g(th)n(us)h(help)g(users)e(a)n(v)n(oid)g(in-)523
-3928 y(appropriately)g(lab)r(eled)h(data.)h(If)g(sev)n(eral)d(\014les)j
-(of)g(suc)n(h)f(a)g(directory)f(ha)n(v)n(e)h(appropriate)523
-4028 y(descriptions,)k(it)h(is)g(lik)n(ely)f(that)h(the)g(other)f
-(\014les)h(will)g(also)f(ha)n(v)n(e)f(b)r(een)i(pro)n(vided)f(b)n(y)g
-(a)523 4127 y(non-malicious)26 b(part)n(y)-7 b(.)648
-4227 y(In)n(tegrating)38 b(directories)g(in)n(to)i(the)g(ECRS)f(sc)n
-(heme)g(is)h(fairly)f(straigh)n(tforw)n(ard.)e(A)523
-4327 y(directory)f(is)h(simply)h(a)f(\014le)g(that)h(con)n(tains)e(an)n
-(y)h(n)n(um)n(b)r(er)g(of)g Ft(SBlo)l(ck)p FA(s)h(or)f
-Ft(KBlo)l(ck)p FA(s)h(in)523 4426 y(plain)n(text)25 b(\(!\).)h(Lik)n(e)
-f(\014les,)g(directories)f(are)g(imm)n(utable)i(and)f(are)f(sub)5
-b(jected)26 b(to)f(the)h(same)523 4526 y(enco)r(ding)h(for)g(sharing.)
-648 4625 y(Note)k(that)h(it)h(is)e(p)r(ossible)h(for)f(users)g(to)h
-(assem)n(ble)e(a)i(directory)e(that)i(refers)f(to)h(an)n(y)523
-4725 y(com)n(bination)d(of)h(\014les:)g(\014les)g(the)g(user)f
-(inserted)h(p)r(ersonally)-7 b(,)28 b(\014les)i(that)g(the)h(user)e(do)
-n(wn-)523 4825 y(loaded,)21 b(\014les)g(that)g(the)h(user)e(encoun)n
-(tered)h(as)f(searc)n(h)g(results)h(but)h(nev)n(er)e(do)n(wnloaded,)g
-(or)523 4924 y(ev)n(en)29 b(in)n(v)-5 b(alid)30 b(data)f(\(whic)n(h)h
-(w)n(ould)g(b)r(e)g(in)n(terpreted)f(as)g(references)g(that)h(corresp)r
-(ond)e(to)p Black Black eop end
-%%Page: 16 16
-TeXDict begin 16 15 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
-SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.16) cvn H.B /DEST pdfmark
-end
- 523 232 a Black Fx(16)199 b(C.)27
+ 523 232 a Black Fu(12)199 b(C.)27
 b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black Black 533 366 2 2 v 535 367 533 4 v 1068 366 2
-2 v 532 490 4 124 v 1070 490 V 533 493 2 2 v 535 494
-533 4 v 1068 493 2 2 v 559 446 a Fp(S)t(B)t(l)q(ock)r
-Fx(\()p Fp(Al)q(ice)p 838 459 177 4 v 1 w Fx(\))2020
-453 y Fo(1)p Fn(1)p 1071 460 4 4 v 1074 460 V 1077 460
-V 1079 461 V 1082 461 V 1085 461 V 1088 461 V 1091 461
-V 1093 462 V 1096 462 V 1099 462 V 1102 462 V 1105 463
-V 1107 463 V 1110 463 V 1113 463 V 1116 463 V 1119 464
-V 1121 464 V 1124 464 V 1127 464 V 1130 465 V 1132 465
-V 1135 465 V 1138 465 V 1141 465 V 1144 466 V 1146 466
-V 1149 466 V 1152 466 V 1155 466 V 1158 467 V 1160 467
-V 1163 467 V 1166 467 V 1169 467 V 1172 468 V 1174 468
-V 1177 468 V 1180 468 V 1183 468 V 1186 468 V 1188 469
-V 1191 469 V 1194 469 V 1197 469 V 1199 469 V 1202 470
-V 1205 470 V 1208 470 V 1211 470 V 1213 470 V 1216 470
-V 1219 470 V 1222 471 V 1225 471 V 1227 471 V 1230 471
-V 1233 471 V 1236 471 V 1239 472 V 1241 472 V 1244 472
-V 1247 472 V 1250 472 V 1252 472 V 1255 472 V 1258 473
-V 1261 473 V 1264 473 V 1266 473 V 1269 473 V 1272 473
-V 1275 473 V 1278 474 V 1280 474 V 1283 474 V 1286 474
-V 1289 474 V 1292 474 V 1294 474 V 1297 474 V 1300 475
-V 1303 475 V 1305 475 V 1308 475 V 1311 475 V 1314 475
-V 1317 475 V 1319 475 V 1322 475 V 1325 476 V 1328 476
-V 1331 476 V 1333 476 V 1336 476 V 1339 476 V 1342 476
-V 1345 476 V 1347 476 V 1350 476 V 1353 476 V 1356 477
-V 1358 477 V 1361 477 V 1364 477 V 1367 477 V 1370 477
-V 1372 477 V 1375 477 V 1378 477 V 1381 477 V 1384 477
-V 1386 477 V 1389 477 V 1392 478 V 1395 478 V 1398 478
-V 1400 478 V 1403 478 V 1406 478 V 1409 478 V 1411 478
-V 1414 478 V 1417 478 V 1420 478 V 1423 478 V 1425 478
-V 1428 478 V 1431 478 V 1434 478 V 1437 478 V 1439 478
-V 1442 479 V 1445 479 V 1448 479 V 1451 479 V 1453 479
-V 1456 479 V 1459 479 V 1462 479 V 1464 479 V 1467 479
-V 1470 479 V 1473 479 V 1476 479 V 1478 479 V 1481 479
-V 1484 479 V 1487 479 V 1490 479 V 1492 479 V 1495 479
-V 1498 479 V 1501 479 V 1504 479 V 1506 479 V 1509 479
-V 1512 479 V 1515 479 V 1517 479 V 1520 479 V 1523 479
-V 1526 479 V 1529 479 V 1531 479 V 1534 479 V 1537 479
-V 1540 479 V 1543 479 V 1545 479 V 1548 479 V 1551 479
-V 1554 479 V 1557 479 V 1559 479 V 1562 479 V 1565 479
-V 1568 479 V 1570 479 V 1573 479 V 1576 479 V 1579 479
-V 1582 479 V 1584 479 V 1587 479 V 1590 478 V 1593 478
-V 1596 478 V 1598 478 V 1601 478 V 1604 478 V 1607 478
-V 1610 478 V 1612 478 V 1615 478 V 1618 478 V 1621 478
-V 1624 478 V 1626 478 V 1629 478 V 1632 478 V 1635 478
-V 1637 478 V 1640 477 V 1643 477 V 1646 477 V 1649 477
-V 1651 477 V 1654 477 V 1657 477 V 1660 477 V 1663 477
-V 1665 477 V 1668 477 V 1671 477 V 1674 477 V 1677 476
-V 1679 476 V 1682 476 V 1685 476 V 1688 476 V 1690 476
-V 1693 476 V 1696 476 V 1699 476 V 1702 476 V 1704 476
-V 1707 475 V 1710 475 V 1713 475 V 1716 475 V 1718 475
-V 1721 475 V 1724 475 V 1727 475 V 1730 475 V 1732 474
-V 1735 474 V 1738 474 V 1741 474 V 1743 474 V 1746 474
-V 1749 474 V 1752 474 V 1755 473 V 1757 473 V 1760 473
-V 1763 473 V 1766 473 V 1769 473 V 1771 473 V 1774 472
-V 1777 472 V 1780 472 V 1783 472 V 1785 472 V 1788 472
-V 1791 472 V 1794 471 V 1796 471 V 1799 471 V 1802 471
-V 1805 471 V 1808 471 V 1810 470 V 1813 470 V 1816 470
-V 1819 470 V 1822 470 V 1824 470 V 1827 470 V 1830 469
-V 1833 469 V 1836 469 V 1838 469 V 1841 469 V 1844 468
-V 1847 468 V 1849 468 V 1852 468 V 1855 468 V 1858 468
-V 1861 467 V 1863 467 V 1866 467 V 1869 467 V 1872 467
-V 1875 466 V 1877 466 V 1880 466 V 1883 466 V 1886 466
-V 1889 465 V 1891 465 V 1894 465 V 1897 465 V 1900 465
-V 1902 464 V 1905 464 V 1908 464 V 1911 464 V 1914 463
-V 1916 463 V 1919 463 V 1922 463 V 1925 463 V 1928 462
-V 1930 462 V 1933 462 V 1936 462 V 1939 461 V 1942 461
-V 1944 461 V 1947 461 V 1950 461 V 1953 460 V 1955 460
-V 1958 460 V 1961 460 V 1964 459 V 1967 459 V 1969 459
-V 1972 459 V 1975 458 V 1978 458 V 1981 458 V 1983 458
-V 1986 457 V 1989 457 V 1992 457 V 1995 457 V 1997 456
-V 2000 456 V 2003 456 V 2006 455 V 2009 455 V 2011 455
-V 2014 455 V 2017 454 V 2045 446 a Fp(D)r(ir)r(ector)r(y)2382
-454 y Fy(1)1070 397 y Fo(p)p Fn(p)p 2017 404 V 2014 404
-V 2011 403 V 2009 403 V 2006 403 V 2003 403 V 2000 402
-V 1997 402 V 1995 402 V 1992 402 V 1989 401 V 1986 401
-V 1983 401 V 1981 401 V 1978 400 V 1975 400 V 1972 400
-V 1969 400 V 1967 399 V 1964 399 V 1961 399 V 1958 399
-V 1955 398 V 1953 398 V 1950 398 V 1947 398 V 1944 397
-V 1942 397 V 1939 397 V 1936 397 V 1933 397 V 1930 396
-V 1928 396 V 1925 396 V 1922 396 V 1919 395 V 1916 395
-V 1914 395 V 1911 395 V 1908 395 V 1905 394 V 1902 394
-V 1900 394 V 1897 394 V 1894 393 V 1891 393 V 1889 393
-V 1886 393 V 1883 393 V 1880 392 V 1877 392 V 1875 392
-V 1872 392 V 1869 392 V 1866 391 V 1863 391 V 1861 391
-V 1858 391 V 1855 391 V 1852 391 V 1849 390 V 1847 390
-V 1844 390 V 1841 390 V 1838 390 V 1836 389 V 1833 389
-V 1830 389 V 1827 389 V 1824 389 V 1822 389 V 1819 388
-V 1816 388 V 1813 388 V 1810 388 V 1808 388 V 1805 388
-V 1802 387 V 1799 387 V 1796 387 V 1794 387 V 1791 387
-V 1788 387 V 1785 387 V 1783 386 V 1780 386 V 1777 386
-V 1774 386 V 1771 386 V 1769 386 V 1766 386 V 1763 385
-V 1760 385 V 1757 385 V 1755 385 V 1752 385 V 1749 385
-V 1746 385 V 1743 385 V 1741 384 V 1738 384 V 1735 384
-V 1732 384 V 1730 384 V 1727 384 V 1724 384 V 1721 384
-V 1718 383 V 1716 383 V 1713 383 V 1710 383 V 1707 383
-V 1704 383 V 1702 383 V 1699 383 V 1696 383 V 1693 383
-V 1690 382 V 1688 382 V 1685 382 V 1682 382 V 1679 382
-V 1677 382 V 1674 382 V 1671 382 V 1668 382 V 1665 382
-V 1663 382 V 1660 381 V 1657 381 V 1654 381 V 1651 381
-V 1649 381 V 1646 381 V 1643 381 V 1640 381 V 1637 381
-V 1635 381 V 1632 381 V 1629 381 V 1626 381 V 1624 381
-V 1621 381 V 1618 380 V 1615 380 V 1612 380 V 1610 380
-V 1607 380 V 1604 380 V 1601 380 V 1598 380 V 1596 380
-V 1593 380 V 1590 380 V 1587 380 V 1584 380 V 1582 380
-V 1579 380 V 1576 380 V 1573 380 V 1570 380 V 1568 380
-V 1565 380 V 1562 380 V 1559 380 V 1557 380 V 1554 380
-V 1551 380 V 1548 380 V 1545 380 V 1543 379 V 1540 379
-V 1537 379 V 1534 379 V 1531 379 V 1529 379 V 1526 379
-V 1523 379 V 1520 379 V 1517 379 V 1515 379 V 1512 379
-V 1509 379 V 1506 379 V 1504 379 V 1501 379 V 1498 379
-V 1495 379 V 1492 379 V 1490 379 V 1487 379 V 1484 380
-V 1481 380 V 1478 380 V 1476 380 V 1473 380 V 1470 380
-V 1467 380 V 1464 380 V 1462 380 V 1459 380 V 1456 380
-V 1453 380 V 1451 380 V 1448 380 V 1445 380 V 1442 380
-V 1439 380 V 1437 380 V 1434 380 V 1431 380 V 1428 380
-V 1425 380 V 1423 380 V 1420 380 V 1417 380 V 1414 380
-V 1411 380 V 1409 381 V 1406 381 V 1403 381 V 1400 381
-V 1398 381 V 1395 381 V 1392 381 V 1389 381 V 1386 381
-V 1384 381 V 1381 381 V 1378 381 V 1375 381 V 1372 381
-V 1370 381 V 1367 382 V 1364 382 V 1361 382 V 1358 382
-V 1356 382 V 1353 382 V 1350 382 V 1347 382 V 1345 382
-V 1342 382 V 1339 382 V 1336 383 V 1333 383 V 1331 383
-V 1328 383 V 1325 383 V 1322 383 V 1319 383 V 1317 383
-V 1314 383 V 1311 383 V 1308 384 V 1305 384 V 1303 384
-V 1300 384 V 1297 384 V 1294 384 V 1292 384 V 1289 384
-V 1286 385 V 1283 385 V 1280 385 V 1278 385 V 1275 385
-V 1272 385 V 1269 385 V 1266 385 V 1264 386 V 1261 386
-V 1258 386 V 1255 386 V 1252 386 V 1250 386 V 1247 386
-V 1244 387 V 1241 387 V 1239 387 V 1236 387 V 1233 387
-V 1230 387 V 1227 387 V 1225 388 V 1222 388 V 1219 388
-V 1216 388 V 1213 388 V 1211 388 V 1208 389 V 1205 389
-V 1202 389 V 1199 389 V 1197 389 V 1194 389 V 1191 390
-V 1188 390 V 1186 390 V 1183 390 V 1180 390 V 1177 391
-V 1174 391 V 1172 391 V 1169 391 V 1166 391 V 1163 391
-V 1160 392 V 1158 392 V 1155 392 V 1152 392 V 1149 392
-V 1146 393 V 1144 393 V 1141 393 V 1138 393 V 1135 393
-V 1132 394 V 1130 394 V 1127 394 V 1124 394 V 1121 395
-V 1119 395 V 1116 395 V 1113 395 V 1110 395 V 1107 396
-V 1105 396 V 1102 396 V 1099 396 V 1096 397 V 1093 397
-V 1091 397 V 1088 397 V 1085 397 V 1082 398 V 1079 398
-V 1077 398 V 1074 398 V 1071 399 V 1048 628 a Fo(r)p
-Fn(r)p Fl(d)1088 621 y(d)1129 614 y(d)1169 607 y(d)1210
-600 y(d)1250 594 y(d)1291 587 y(d)1331 580 y(d)1372 573
-y(d)1412 566 y(d)1453 559 y(d)1493 552 y(d)1534 545 y(d)1574
-539 y(d)1615 532 y(d)1655 525 y(d)1695 518 y(d)1736 511
-y(d)1776 504 y(d)1817 497 y(d)1857 490 y(d)1898 484 y(d)1938
-477 y(d)1979 470 y(d)1690 608 y Fo(t)p Fn(t)p Fl(j)1727
-596 y(j)1763 584 y(j)1800 572 y(j)1836 560 y(j)1873 547
-y(j)1909 535 y(j)1946 523 y(j)1982 511 y(j)2018 499 y(j)2231
-608 y Fo(\017)p Fn(\017)p 2229 608 4 123 v 2652 366 2
-2 v 2654 367 612 4 v 3266 366 2 2 v 2651 490 4 124 v
-3268 490 V 2652 493 2 2 v 2654 494 612 4 v 3266 493 2
-2 v 2678 446 a Fp(K)5 b(B)t(l)q(ock)r Fx(\(\\)p Fp(f)j(ood)p
-Fx("\))2441 428 y Fo(o)p Fn(o)p 2441 430 212 4 v 556
-609 2 2 v 557 610 488 4 v 1045 609 2 2 v 555 733 4 124
-v 1048 733 V 556 736 2 2 v 557 737 488 4 v 1045 736 2
-2 v 581 689 a Fp(S)t(B)t(l)q(ock)r Fx(\()p Fp(B)t(ob)p
-860 702 132 4 v 1 w Fx(\))1346 858 y Fo(\))p Fn(\))1307
-845 y Fl(T)1271 832 y(T)1235 820 y(T)1199 807 y(T)1162
-795 y(T)1126 782 y(T)1090 770 y(T)1054 757 y(T)1018 745
-y(T)982 732 y(T)p 1199 609 2 2 v 1200 610 606 4 v 1806
-609 2 2 v 1198 733 4 124 v 1808 733 V 1199 736 2 2 v
-1200 737 606 4 v 1806 736 2 2 v 1224 689 a Fp(K)d(B)t(l)q(ock)r
-Fx(\(\\)p Fp(soda)p Fx("\))1504 858 y Fo(\017)p Fn(\017)p
-1502 858 4 126 v 1925 609 2 2 v 1927 610 606 4 v 2533
-609 2 2 v 1925 733 4 124 v 2535 733 V 1925 736 2 2 v
-1927 737 606 4 v 2533 736 2 2 v 1951 689 a Fp(K)g(B)t(l)q(ock)r
-Fx(\(\\)p Fp(soda)p Fx("\))2231 858 y Fo(\017)p Fn(\017)p
-2229 858 4 126 v 2664 609 2 2 v 2666 610 588 4 v 3254
-609 2 2 v 2663 733 4 124 v 3256 733 V 2664 736 2 2 v
-2666 737 588 4 v 3254 736 2 2 v 2690 689 a Fp(K)g(B)t(l)q(ock)r
-Fx(\(\\)p Fp(col)q(a)p Fx("\))2395 858 y Fo(t)p Fn(t)2395
-859 y Fl(j)2432 846 y(j)2470 834 y(j)2508 821 y(j)2545
-809 y(j)2583 796 y(j)2621 784 y(j)2659 771 y(j)2696 758
-y(j)2734 746 y(j)p 522 852 V 524 853 555 4 v 1079 852
-2 2 v 521 975 4 124 v 1081 975 V 522 978 2 2 v 524 979
-555 4 v 1079 978 2 2 v 548 932 a Fp(K)g(B)t(l)q(ock)r
-Fx(\(\\)p Fp(bob)p Fx("\))802 732 y Fo(O)p Fn(O)p 801
-851 4 119 v 1308 934 a Fp(D)r(ocument)1665 942 y Fy(1)2035
-934 y Fp(D)r(ocument)2392 942 y Fy(2)2764 934 y Fp(D)r(ocument)3121
-942 y Fy(3)523 1124 y Fr(Fig.)15 b(5.)p 0 TeXcolorgray
-805 1024 a
+Black 523 365 a
 SDict begin H.S end
- 805 1024 a 0 TeXcolorgray 0 TeXcolorgray 805
-1024 a
-SDict begin H.R end
- 805 1024 a 805 1024 a
-SDict begin [ /View [/XYZ H.V] /Dest (figure.1.5) cvn H.B /DEST pdfmark
-end
- 805 1024 a Black 835 1124
-a FA(ECRS)30 b(allo)n(ws)f(the)i(formation)f(of)g(complicated)g(net)n
-(w)n(ork)f(structures.)h(In)h(this)523 1224 y(example,)38
-b(the)h Ft(SBlo)l(ck)g FA(of)f(pseudon)n(ym)g Ft(A)n(lic)l(e)p
-1865 1237 179 4 v 39 w FA(ev)n(en)n(tually)f(allo)n(ws)g(to)h(retriev)n
-(e)f(t)n(w)n(o)h(of)523 1323 y(the)24 b(do)r(cumen)n(ts)f(enco)r(ded)h
-(in)g(the)f(system,)h(as)f(do)r(es)g Ft(Kblo)l(ck)h FA(for)f(k)n(eyw)n
-(ord)f(\\fo)r(o)r(d".)g(Bo)n(xes)523 1423 y(denote)d(simple)h(blo)r(c)n
-(ks)e(that)i(serv)n(e)d(as)i(en)n(try-p)r(oin)n(ts.)f(The)h(directory)f
-(and)h(the)h(do)r(cumen)n(ts)523 1523 y(consist)33 b(of)h(trees)f(of)h
-(p)r(ossibly)g(man)n(y)f(CHK-enco)r(ded)g(blo)r(c)n(ks.)g(Searc)n(hing)
-g(for)g(k)n(eyw)n(ord)523 1622 y(\\so)r(da")h(w)n(ould)h(return)g(t)n
-(w)n(o)f(results)h(p)r(oin)n(ting)g(to)g(di\013eren)n(t)h(resources.)d
-(Note)j(that)f(all)523 1722 y(the)d(enco)r(ded)f(resources,)f
-(including)h(the)h(one)f(do)r(cumen)n(t)h(with)f(no)h(p)r(oin)n(ters)e
-(to)i(it,)f(can)523 1821 y(b)r(e)d(retriev)n(ed)e(b)n(y)i(kno)n(wing)e
-(the)i(CHK)g(k)n(eys)e(of)i(their)f(ro)r(ot)g Ft(IBlo)l(ck)p
-FA(s.)p Black Black Black 523 2275 a(non-existen)n(t)h(\014les\).)h
-(Directories)e(can)h(also)g(refer)f(to)i(other)f(directories,)f(allo)n
-(wing)g(users)523 2375 y(to)g(build)h(na)n(vigable)d(structures)h
-(similar)h(to)g(\014le)g(systems)f(or)g(the)i(W)-7 b(orld)27
-b(Wide)g(W)-7 b(eb.)28 b(In)523 2474 y(particular)k(it)i(is)f(p)r
-(ossible)g(to)g(refer)f(to)h(con)n(ten)n(ts)g(of)g(other)g(users)f(and)
-h(ev)n(en)g(to)g(\014les)g(or)523 2574 y(directories)28
-b(that)h(are)f(supp)r(osed)h(to)g(b)r(e)g(published)h(in)f(the)g
-(future.)h(Figure)p 1 0 0 TeXcolorrgb 2978 2574 a
-SDict begin H.S end
- 2978
-2574 a 1 0 0 TeXcolorrgb FA(5)p 1 0 0 TeXcolorrgb 3020
-2520 a
-SDict begin H.R end
- 3020 2520 a 3020 2574 a
-SDict begin [ /Color [1 0 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(figure.1.5) cvn H.B /ANN pdfmark end
- 3020 2574 a Black 29 w
-FA(illustrates)523 2673 y(some)d(of)h(the)g(p)r(ossible)f(reference)g
-(relationships)f(b)r(et)n(w)n(een)i(the)g(v)-5 b(arious)26
-b(constructs.)523 2853 y
-SDict begin H.S end
- 523 2853 a 523 2853 a
+ 523 365 a 523 365 a
 SDict begin 12 H.A end
- 523 2853
-a 523 2853 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.4.3) cvn H.B /DEST
-pdfmark end
- 523 2853 a 87 x Fr(4.3)95 b(E\016cien)m(t)31
-b(lo)s(okups)f(with)i(blo)s(om)e(\014lters)523 3124 y
-FA(Giv)n(en)24 b(that)h(a)g(query)e(only)i(requires)e(the)i
-(transmission)e(of)i(a)f(hash)g(co)r(de,)h(the)g(n)n(um)n(b)r(er)f(of)
-523 3224 y(queries)29 b(that)i(an)n(y)e(giv)n(en)g(p)r(eer)h(ma)n(y)f
-(receiv)n(e)g(is)h(quite)g(high.)g(The)g(bandwidth)h(required)523
-3323 y(for)40 b(the)i(resp)r(onse)d(can)i(often)g(b)r(e)g(discoun)n
-(ted,)g(since)g(a)f(p)r(eer)h(ma)n(y)f(only)g(b)r(e)i(able)e(to)523
-3423 y(resp)r(ond)32 b(to)h(a)f(fraction)g(of)h(the)g(receiv)n(ed)e
-(queries.)h(Assuming)g(that)h(queries)f(dominate)523
-3522 y(the)d(tra\016c,)f(o)n(v)n(er)f(50)g(queries)h(p)r(er)g(second)g
-(could)h(b)r(e)g(transmitted)f(o)n(v)n(er)f(a)h(slo)n(w)g(mo)r(dem)523
-3622 y(line.)j(Man)n(y)f(p)r(eers)g(migh)n(t)g(not)h(b)r(e)g(able)f(to)
-g(p)r(erform)h(disk-based)e(database)g(lo)r(okups)h(at)523
-3722 y(suc)n(h)f(rates.)f(W)-7 b(orse,)28 b(if)h(p)r(eers)g(are)e
-(sharing)h(gigab)n(ytes)f(of)i(con)n(ten)n(t,)g(simply)g(k)n(eeping)f
-(the)523 3821 y(index)g(information)f(in)h(memory)e(is)i(also)e(often)i
-(no)f(longer)g(feasible.)648 3925 y(In)j(order)f(to)h(dramatically)e
-(reduce)i(the)g(necessary)f(n)n(um)n(b)r(er)h(of)g(database)f
-(accesses,)523 4024 y(ECRS)c(can)g(b)r(e)g(supplemen)n(ted)h(with)f(a)g
-(blo)r(om)g(\014lter)g([)p 0 1 0 TeXcolorrgb 2275 4024
+ 523 365 a 523 365
 a
-SDict begin H.S end
- 2275 4024 a 0 1 0 TeXcolorrgb FA(3)p 0 1 0 TeXcolorrgb
-2316 3971 a
-SDict begin H.R end
- 2316 3971 a 2316 4024 a
-SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.bloom) cvn H.B /ANN pdfmark end
- 2316 4024 a Black
-FA(],)h(whic)n(h)f(is)g(a)f(probabilistic)g(data)523
-4124 y(structure)39 b(that)h(uses)f(little)h(memory)f(and)g(can)g(b)r
-(e)h(used)g(to)f(\014lter)h(out)f(queries)g(that)523
-4223 y(de\014nitely)29 b(cannot)f(b)r(e)i(answ)n(ered)d(b)n(y)h(the)h
-(lo)r(cal)g(p)r(eer.)f(The)h(blo)r(om)f(\014lter)h(is)g(guaran)n(teed)
-523 4323 y(to)21 b(allo)n(w)f(all)g(queries)h(that)g(can)f(b)r(e)i(lo)r
-(cally)e(answ)n(ered)f(through)i(the)g(\014lter,)g(and)g(will)g(reject)
-523 4423 y(all)33 b(but)h(a)f(statistically)g(insigni\014can)n(t)f(n)n
-(um)n(b)r(er)h(of)h(queries)e(that)i(cannot)f(b)r(e)g(answ)n(ered)523
-4522 y(lo)r(cally)-7 b(.)648 4625 y(The)24 b(size)g(of)g(the)h(blo)r
-(om)f(\014lter)g(in)g(memory)g(that)g(is)g(required)g(to)g(reduce)g
-(the)g(n)n(um)n(b)r(er)523 4725 y(of)36 b(false-p)r(ositiv)n(es)e(to)h
-(appro)n(ximately)f(3\045)h(is)h(ab)r(out)f(one)g(b)n(yte)h(\(8)f(bit)h
-(with)g(5)f(blo)r(om)523 4825 y(tests,)24 b(2)779 4795
-y Fc(\000)p Fz(5)891 4825 y Fb(\031)f FA(3\045\))h(p)r(er)g(en)n(try)-7
-b(.)24 b(This)h(reduces)e(the)i(memory)e(requiremen)n(ts)g(for)h(the)h
-(index)523 4924 y(b)n(y)e(a)f(factor)g(of)h(16-64,)e(dep)r(ending)j(on)
-e(the)i(size)e(of)h(the)h(hash.)e(Since)h(a)g(no)r(de)g(o)r
-(ccasionally)p Black Black eop end
-%%Page: 17 17
-TeXDict begin 17 16 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
-SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.17) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (section.1.4) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(17)p Black 523 448 a FA(needs)26 b(to)f(remo)n(v)n(e)f(con)n(ten)n(t)
-h(from)g(the)h(lo)r(cal)f(database,)g(additional)g(bit)h(coun)n(ters)f
-(for)g(the)523 548 y(blo)r(om)f(\014lter)g(should)g(b)r(e)h(stored)f
-(on)g(the)g(disk.)h(The)f(assumption)g(is)g(that)h(c)n(hanges)d(to)j
-(the)523 648 y(\014lter)30 b(are)f(rare)g(compared)g(to)h(the)g
-(frequency)g(of)g(queries.)f(Queries)g(that)h(pass)g(through)523
-747 y(the)38 b(blo)r(om)f(\014lter)h(are)e(forw)n(arded)g(to)i(the)g
-(database)e(la)n(y)n(er)g(whic)n(h)h(then)h(attempts)g(to)523
-847 y(lo)r(cate)27 b(the)h(con)n(ten)n(t.)523 1017 y
-SDict begin H.S end
-
-523 1017 a 523 1017 a
-SDict begin 12 H.A end
- 523 1017 a 523 1017 a
-SDict begin [ /View [/XYZ H.V] /Dest (section.1.5) cvn H.B /DEST pdfmark
-end
- 523 1017
-a 121 x Fu(5)112 b(Discussion)523 1364 y FA(The)23 b(fact)g(that)h(eac)
-n(h)e Ft(DBlo)l(ck)i FA(can)f(b)r(e)g(enco)r(ded)h(indep)r(enden)n(tly)
-f(from)g(an)n(y)g(other)f Ft(DBlo)l(ck)523 1463 y FA(results)35
-b(in)g(an)g(imp)r(ortan)n(t)g(feature)f(of)h(ECRS)g(called)g
-Ft(on-demand)i(enc)l(o)l(ding)p FA(.)f(Giv)n(en)f(a)523
-1563 y(plain)n(text)c(\014le)h(and)f(an)f(index)i(that)f(maps)g(a)g
+ 523 365 a 83 x Fr(4)112 b(Discussion)523 640 y Fx(The)23
+b(fact)g(that)h(eac)n(h)e Fq(DBlo)l(ck)i Fx(can)f(b)r(e)g(enco)r(ded)h
+(indep)r(enden)n(tly)f(from)g(an)n(y)g(other)f Fq(DBlo)l(ck)523
+740 y Fx(results)35 b(in)g(an)g(imp)r(ortan)n(t)g(feature)f(of)h(ECRS)g
+(called)g Fq(on-demand)i(enc)l(o)l(ding)p Fx(.)f(Giv)n(en)f(a)523
+840 y(plain)n(text)c(\014le)h(and)f(an)f(index)i(that)f(maps)g(a)g
 (query)f(hash)h(to)g(an)g(o\013set)g(in)h(the)f(\014le,)h(the)523
-1663 y(resulting)f Ft(DBlo)l(ck)i FA(can)e(b)r(e)i(enco)r(ded)e
+939 y(resulting)f Fq(DBlo)l(ck)i Fx(can)e(b)r(e)i(enco)r(ded)e
 (on-the-\015y)-7 b(,)32 b(without)g(pro)r(cessing)e(an)n(y)h(other)g
-(part)523 1762 y(of)e(the)h(\014le.)g(This)f(can)g(b)r(e)g(an)g(imp)r
+(part)523 1039 y(of)e(the)h(\014le.)g(This)f(can)g(b)r(e)g(an)g(imp)r
 (ortan)n(t)g(b)r(ene\014t)i(if)e(the)h(user)f(in)n(tends)g(to)g(k)n
-(eep)g(the)h(\014le)523 1862 y(in)i(plain)n(text)g(on)f(the)h(lo)r(cal)
+(eep)g(the)h(\014le)523 1139 y(in)i(plain)n(text)g(on)f(the)h(lo)r(cal)
 f(driv)n(e.)g(In)h(this)g(case,)f(the)h(system)f(can)g(index)h(the)g
-Ft(DBlo)l(cks)523 1961 y FA(without)22 b(replicating)f(the)i(actual)e
+Fq(DBlo)l(cks)523 1238 y Fx(without)22 b(replicating)f(the)i(actual)e
 (data)g(completely)-7 b(,)22 b(storing)f(only)g(the)h(resulting)g
-Ft(IBlo)l(cks)523 2061 y FA(\(and)j Ft(SBlo)l(cks)g FA(and)f
-Ft(KBlo)l(cks)p FA(\))i(and)e(then)h(later)f(pro)r(ducing)f(the)i
-Ft(DBlo)l(cks)h FA(only)e(using)g(the)523 2161 y(index)31
+Fq(IBlo)l(cks)523 1338 y Fx(\(and)j Fq(SBlo)l(cks)g Fx(and)f
+Fq(KBlo)l(cks)p Fx(\))i(and)e(then)h(later)f(pro)r(ducing)f(the)i
+Fq(DBlo)l(cks)h Fx(only)e(using)g(the)523 1437 y(index)31
 b(and)h(the)f(original)f(\014le.)i(This)f(can)g(result)g(in)h(rather)e
-(dramatic)h(sa)n(vings)e(in)j(space)523 2260 y(\(no)c(replication)e(of)
-i(enco)r(ded)f(con)n(ten)n(t\).)648 2365 y(Splitting)k(\014les)g(in)n
+(dramatic)h(sa)n(vings)e(in)j(space)523 1537 y(\(no)c(replication)e(of)
+i(enco)r(ded)f(con)n(ten)n(t\).)648 1637 y(Splitting)k(\014les)g(in)n
 (to)g(blo)r(c)n(ks)f(migh)n(t)g(b)r(e)i(p)r(erceiv)n(ed)e(as)g(ha)n
-(ving)g(a)g(negativ)n(e)g(e\013ect)h(on)523 2465 y(the)38
+(ving)g(a)g(negativ)n(e)g(e\013ect)h(on)523 1736 y(the)38
 b(preserv)-5 b(ation)37 b(of)h(data.)f(If)i(only)e(one)h(of)g(the)g
 (blo)r(c)n(ks)f(is)h(lost,)g(the)g(larger)e(\014le)i(can)523
-2564 y(no)30 b(longer)g(b)r(e)h(reconstructed.)f(Man)n(y)g(other)g
-(systems)g([)p 0 1 0 TeXcolorrgb 2344 2564 a
+1836 y(no)30 b(longer)g(b)r(e)h(reconstructed.)f(Man)n(y)g(other)g
+(systems)g([)p 0 1 0 TeXcolorrgb 2344 1836 a
 SDict begin H.S end
- 2344 2564
-a 0 1 0 TeXcolorrgb FA(9)p 0 1 0 TeXcolorrgb 2385 2511
+ 2344 1836
+a 0 1 0 TeXcolorrgb Fx(8)p 0 1 0 TeXcolorrgb 2385 1782
 a
 SDict begin H.R end
- 2385 2511 a 2385 2564 a
+ 2385 1782 a 2385 1836 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.freehaven-berk) cvn H.B /ANN pdfmark end
- 2385 2564 a Black FA(,)p 0 1 0
-TeXcolorrgb 2408 2564 a
+ 2385 1836 a Black Fx(,)p 0 1 0
+TeXcolorrgb 2408 1836 a
 SDict begin H.S end
- 2408 2564 a 0 1 0 TeXcolorrgb
-FA(33)p 0 1 0 TeXcolorrgb 2492 2511 a
+ 2408 1836 a 0 1 0 TeXcolorrgb
+Fx(29)p 0 1 0 TeXcolorrgb 2492 1782 a
 SDict begin H.R end
- 2492 2511 a 2492
-2564 a
+ 2492 1782 a 2492
+1836 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.mojotech) cvn H.B /ANN pdfmark end
- 2492 2564 a Black FA(])g(attempt)i(to)e(address)g(this)523
-2664 y(problem)c(b)n(y)g(either)h(attempting)g(to)f(k)n(eep)g(\014les)h
+ 2492 1836 a Black Fx(])g(attempt)i(to)e(address)g(this)523
+1936 y(problem)c(b)n(y)g(either)h(attempting)g(to)f(k)n(eep)g(\014les)h
 (in)n(tact,)g(or)e(b)n(y)i(using)f(erasure)f(co)r(des)h([)p
-0 1 0 TeXcolorrgb 3299 2664 a
+0 1 0 TeXcolorrgb 3299 1936 a
 SDict begin H.S end
- 3299 2664 a 0 1 0 TeXcolorrgb
-FA(25)p 0 1 0 TeXcolorrgb 3382 2611 a
+ 3299 1936 a 0 1 0 TeXcolorrgb
+Fx(22)p 0 1 0 TeXcolorrgb 3382 1882 a
 SDict begin H.R end
- 3382 2611 a 3382
-2664 a
+ 3382 1882 a 3382
+1936 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.rabin89efficient) cvn H.B /ANN pdfmark end
- 3382 2664 a Black FA(])523 2764 y(to)e(patc)n(h)f(missing)g
+ 3382 1936 a Black Fx(])523 2035 y(to)e(patc)n(h)f(missing)g
 (pieces.)g(While)h(erasure)e(co)r(des)h(could)h(b)r(e)g(used)f
-(together)g(with)h(ECRS,)523 2863 y(they)i(w)n(ould)e(con\015ict)i
+(together)g(with)h(ECRS,)523 2135 y(they)i(w)n(ould)e(con\015ict)i
 (with)g(the)f(p)r(erformance)g(b)r(ene\014ts)h(of)f(on-demand)g(enco)r
-(ding.)g(Con-)523 2963 y(sequen)n(tly)-7 b(,)23 b(the)g(primary)f(mec)n
+(ding.)g(Con-)523 2234 y(sequen)n(tly)-7 b(,)23 b(the)g(primary)f(mec)n
 (hanism)g(to)h(guard)f(against)g(the)h(loss)g(of)g(\014les)g(enco)r
-(ded)f(with)523 3063 y(ECRS)31 b(should)f(b)r(e)i(data)e(replication.)g
+(ded)f(with)523 2334 y(ECRS)31 b(should)f(b)r(e)i(data)e(replication.)g
 (Since)h(ECRS)g(splits)g(\014les)g(in)n(to)g(blo)r(c)n(ks)f(it)h
-(should)523 3162 y(b)r(e)k(p)r(ossible)f(for)f(the)i(net)n(w)n(ork)e
+(should)523 2434 y(b)r(e)k(p)r(ossible)f(for)f(the)i(net)n(w)n(ork)e
 (to)h(duplicate)g(blo)r(c)n(ks)g(at)g(a)g(negligible)f(cost)h(p)r(er)g
-(blo)r(c)n(k.)523 3262 y(Duplicating)27 b(a)f(complete)h(\014le)g(of)f
+(blo)r(c)n(k.)523 2533 y(Duplicating)27 b(a)f(complete)h(\014le)g(of)f
 (sev)n(eral)f(gigab)n(ytes)g(w)n(ould)i(b)r(e)g(m)n(uc)n(h)f(more)g
-(costly)g(and)523 3361 y(more)e(lik)n(ely)h(to)g(fail.)g(F)-7
+(costly)g(and)523 2633 y(more)e(lik)n(ely)h(to)g(fail.)g(F)-7
 b(or)24 b(large)g(\014les,)h(it)h(ma)n(y)e(b)r(e)h(di\016cult)h(for)f
-(a)g(p)r(eer)f(to)h(\014nd)h(individual)523 3461 y(hosts)c(that)h(are)e
+(a)g(p)r(eer)f(to)h(\014nd)h(individual)523 2733 y(hosts)c(that)h(are)e
 (willing)h(\(or)g(able\))g(to)h(pro)n(vide)e(enough)h(space)f(to)i
-(replicate)e(the)i(complete)523 3561 y(\014le)30 b(in)g(its)g(en)n
+(replicate)e(the)i(complete)523 2832 y(\014le)30 b(in)g(its)g(en)n
 (tiret)n(y)-7 b(.)30 b(Also,)f(the)i(tra\016c)e(burst)h(that)g(a)g
-(large)e(transfer)h(w)n(ould)g(imp)r(ose)h(on)523 3660
+(large)e(transfer)h(w)n(ould)g(imp)r(ose)h(on)523 2932
 y(the)35 b(net)n(w)n(ork)d(migh)n(t)i(k)n(eep)g(the)h(participating)e
 (no)r(des)h(busy)g(for)g(to)r(o)g(long.)f(Blo)r(c)n(ks,)g(on)523
-3760 y(the)c(other)f(hand,)g(can)g(migrate)g(quic)n(kly)g(from)g(host)g
+3031 y(the)c(other)f(hand,)g(can)g(migrate)g(quic)n(kly)g(from)g(host)g
 (to)g(host.)h(Storing)e(a)i(large)e(\014le)h(on)g(a)523
-3860 y(single)f(host)g(also)g(fails)g(to)h(facilitate)f(distribution)h
-(of)g(load)f(for)g(do)n(wnloading)f(purp)r(oses.)523
-4046 y
-SDict begin H.S end
- 523 4046 a 523 4046 a
-SDict begin 12 H.A end
- 523 4046 a 523 4046 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.5.1) cvn H.B /DEST
-pdfmark end
- 523
-4046 a 89 x Fr(5.1)95 b(A)m(ttac)m(ks)523 4327 y FA(ECRS)34
-b(is)f(op)r(en)h(to)g(t)n(w)n(o)f(t)n(yp)r(es)h(of)f(attac)n(ks)g(from)
-h(censors.)e(The)i(most)f(ob)n(vious)g(attac)n(k)523
-4426 y(is)40 b(to)g(guess)f(k)n(eyw)n(ords)f(and)i(use)g(those)f(to)h
-(compute)g(queries)f(for)h(sp)r(eci\014c)g Ft(KBlo)l(ck)p
-FA(s.)523 4526 y(The)28 b(adv)n(ersary)c(can)j(then)h(try)f(to)h
+3131 y(single)f(host)g(also)g(fails)g(to)h(facilitate)f(distribution)h
+(of)g(load)f(for)g(do)n(wnloading)f(purp)r(oses.)648
+3231 y(ECRS)e(is)g(op)r(en)g(to)g(t)n(w)n(o)g(t)n(yp)r(es)g(of)g(attac)
+n(ks)f(from)h(censors.)f(The)h(most)g(ob)n(vious)f(attac)n(k)523
+3330 y(is)40 b(to)g(guess)f(k)n(eyw)n(ords)f(and)i(use)g(those)f(to)h
+(compute)g(queries)f(for)h(sp)r(eci\014c)g Fq(KBlo)l(ck)p
+Fx(s.)523 3430 y(The)28 b(adv)n(ersary)c(can)j(then)h(try)f(to)h
 (censor)e(these)h(queries.)g(Since)h(the)f(same)g(con)n(ten)n(t)g(can)
-523 4625 y(b)r(e)36 b(a)n(v)-5 b(ailable)33 b(under)i(man)n(y)g(k)n
+523 3530 y(b)r(e)36 b(a)n(v)-5 b(ailable)33 b(under)i(man)n(y)g(k)n
 (eyw)n(ords,)e(this)j(tec)n(hnique)f(is)g(not)g(necessary)e
-(successful.)523 4725 y(Ho)n(w)n(ev)n(er,)25 b(this)i(guessing)f(attac)
+(successful.)523 3629 y(Ho)n(w)n(ev)n(er,)25 b(this)i(guessing)f(attac)
 n(k)f(do)r(es)i(pro)n(vide)f(the)h(opp)r(ortunit)n(y)f(for)g(limited)i
-(forms)e(of)523 4825 y(censorship.)g(An)h(adv)n(ersary)c(could)k
+(forms)e(of)523 3729 y(censorship.)g(An)h(adv)n(ersary)c(could)k
 (create)e(a)i(\\blac)n(klist")e(of)h(k)n(eyw)n(ords)e(and)j(attempt)g
-(to)523 4924 y(legally)g(force)g(op)r(erators)e(to)j(\014lter)f(matc)n
-(hing)g(queries)g(or)g(replies.)p Black Black eop end
-%%Page: 18 18
-TeXDict begin 18 17 bop 0 0 a
+(to)523 3828 y(legally)g(force)g(op)r(erators)e(to)j(\014lter)f(matc)n
+(hing)g(queries)g(or)g(replies.)648 3928 y(Instead)e(of)h(predicting)g
+(k)n(eyw)n(ords,)e(the)i(attac)n(k)n(er)e(can)i(also)f(try)h(to)f
+(obtain)h(the)h(exact)523 4028 y(con)n(ten)n(ts)37 b(of)h(the)g(\014le)
+g(\(or)f(at)h(least)g(the)g(exact)f(con)n(ten)n(ts)g(of)h(an)g
+(incriminating)f(part\).)523 4127 y(This)d(ma)n(yb)r(e)f(ac)n(hiev)n
+(ed)g(b)n(y)g(searc)n(hing)f(the)i(net)n(w)n(ork)f(for)g(certain)g(k)n
+(eyw)n(ords)f(and)h(then)523 4227 y(do)n(wnloading)21
+b(the)j(resulting)e(con)n(ten)n(t.)h(This)g(w)n(a)n(y)f(the)h(attac)n
+(k)n(er)e(can)i(again)f(compute)h(the)523 4327 y(query)28
+b(hash)h(for)f(the)i Fq(DBlo)l(ck)p Fx(s)g(and)e Fq(IBlo)l(ck)p
+Fx(s)j(and)d(also)g(obtain)h(the)g(encrypted)g Fq(DBlo)l(ck)p
+Fx(s)523 4426 y(and)h Fq(IBlo)l(ck)p Fx(s)h(themselv)n(es.)f(Again,)f
+(the)i(adv)n(ersary)c(can)j(then)g(try)g(to)g(censor)f(this)h(data.)523
+4526 y(Note)25 b(that)g(this)h(attac)n(k)e(requires)g(the)h(adv)n
+(ersary)d(to)j(obtain)g(a)g(cop)n(y)f(of)h(the)h(con)n(ten)n(t)e(and)
+523 4625 y(then)g(exercise)f(a)g(certain)g(amoun)n(t)g(of)h(con)n(trol)
+e(o)n(v)n(er)g(the)i(p)r(eers)f(in)h(the)g(net)n(w)n(ork.)e(As)i(users)
+523 4725 y(m)n(ust)e(ha)n(v)n(e)f(a)h(w)n(a)n(y)f(to)h(decrypt)g(the)g
+(\014le)g(solely)g(b)n(y)f(means)h(of)g(guessing)f(the)h(k)n(eyw)n
+(ord,)f(this)523 4825 y(attac)n(k)j(cannot)g(b)r(e)i(a)n(v)n(oided.)d
+(A)i(fault-toleran)n(t)f(p)r(eer-to-p)r(eer)g(routing)g(proto)r(col)f
+(ma)n(y)i(b)r(e)523 4924 y(able)i(to)h(route)f(the)h(con)n(ten)n(t)f
+(around)g(the)h(censoring)e(p)r(eers.)p Black Black eop
+end
+%%Page: 13 13
+TeXDict begin 13 12 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -8742,268 +7307,157 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.18) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.13) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(18)199 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 648 448 a FA(Instead)e(of)h(predicting)g(k)n(eyw)n(ords,)e(the)i
-(attac)n(k)n(er)e(can)i(also)f(try)h(to)f(obtain)h(the)h(exact)523
-548 y(con)n(ten)n(ts)37 b(of)h(the)g(\014le)g(\(or)f(at)h(least)g(the)g
-(exact)f(con)n(ten)n(ts)g(of)h(an)g(incriminating)f(part\).)523
-648 y(This)d(ma)n(yb)r(e)f(ac)n(hiev)n(ed)g(b)n(y)g(searc)n(hing)f(the)
-i(net)n(w)n(ork)f(for)g(certain)g(k)n(eyw)n(ords)f(and)h(then)523
-747 y(do)n(wnloading)21 b(the)j(resulting)e(con)n(ten)n(t.)h(This)g(w)n
-(a)n(y)f(the)h(attac)n(k)n(er)e(can)i(again)f(compute)h(the)523
-847 y(query)28 b(hash)h(for)f(the)i Ft(DBlo)l(ck)p FA(s)g(and)e
-Ft(IBlo)l(ck)p FA(s)j(and)d(also)g(obtain)h(the)g(encrypted)g
-Ft(DBlo)l(ck)p FA(s)523 946 y(and)h Ft(IBlo)l(ck)p FA(s)h(themselv)n
-(es.)f(Again,)f(the)i(adv)n(ersary)c(can)j(then)g(try)g(to)g(censor)f
-(this)h(data.)523 1046 y(Note)25 b(that)g(this)h(attac)n(k)e(requires)g
-(the)h(adv)n(ersary)d(to)j(obtain)g(a)g(cop)n(y)f(of)h(the)h(con)n(ten)
-n(t)e(and)523 1146 y(then)g(exercise)f(a)g(certain)g(amoun)n(t)g(of)h
-(con)n(trol)e(o)n(v)n(er)g(the)i(p)r(eers)f(in)h(the)g(net)n(w)n(ork.)e
-(As)i(users)523 1245 y(m)n(ust)e(ha)n(v)n(e)f(a)h(w)n(a)n(y)f(to)h
-(decrypt)g(the)g(\014le)g(solely)g(b)n(y)f(means)h(of)g(guessing)f(the)
-h(k)n(eyw)n(ord,)f(this)523 1345 y(attac)n(k)j(cannot)g(b)r(e)i(a)n(v)n
-(oided.)d(A)i(fault-toleran)n(t)f(p)r(eer-to-p)r(eer)g(routing)g(proto)
-r(col)f(ma)n(y)i(b)r(e)523 1445 y(able)i(to)h(route)f(the)h(con)n(ten)n
-(t)f(around)g(the)h(censoring)e(p)r(eers.)648 1546 y(If)39
-b(suc)n(h)f(an)g(activ)n(e)g(censorship)f(attac)n(k)h(is)g(kno)n(wn)g
-(to)g(o)r(ccur)g(on)g(a)h(large)e(scale,)g(a)523 1645
-y(p)r(ossible)26 b(defense)g(w)n(ould)g(b)r(e)h(to)f(publish)h(the)g
-(con)n(ten)n(t)e(with)i(sligh)n(t)f(alterations)f(for)h(eac)n(h)523
-1745 y(k)n(eyw)n(ord.)20 b(A)h(single)g(space)g(inserted)g(at)g(the)h
-(b)r(eginning)f(of)g(a)g(text-do)r(cumen)n(t)h(is)f(su\016cien)n(t)523
-1844 y(to)34 b(c)n(hange)g Ft(al)t(l)h FA(blo)r(c)n(ks)f(of)g(the)h
-(ECRS)f(enco)r(ding.)p 1 0 0 TeXcolorrgb 2148 1844 a
+ 523 232 a Black 1036 w Fu(An)25
+b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
+b(13)p Black 648 448 a Fx(If)39 b(suc)n(h)f(an)g(activ)n(e)g
+(censorship)f(attac)n(k)h(is)g(kno)n(wn)g(to)g(o)r(ccur)g(on)g(a)h
+(large)e(scale,)g(a)523 548 y(p)r(ossible)26 b(defense)g(w)n(ould)g(b)r
+(e)h(to)f(publish)h(the)g(con)n(ten)n(t)e(with)i(sligh)n(t)f
+(alterations)f(for)h(eac)n(h)523 648 y(k)n(eyw)n(ord.)20
+b(A)h(single)g(space)g(inserted)g(at)g(the)h(b)r(eginning)f(of)g(a)g
+(text-do)r(cumen)n(t)h(is)f(su\016cien)n(t)523 747 y(to)34
+b(c)n(hange)g Fq(al)t(l)h Fx(blo)r(c)n(ks)f(of)g(the)h(ECRS)f(enco)r
+(ding.)p 1 0 0 TeXcolorrgb 2148 747 a
 SDict begin H.S end
-
-2148 1844 a -30 x Fz(3)2185 1844 y
+ 2148 747 a -30
+x Fw(3)2185 747 y
 SDict begin 12 H.L end
- 2185 1844 a 2185 1844
-a
+ 2185 747 a 2185 747 a
 SDict begin [ /Subtype /Link /Dest (Hfootnote.3) cvn /H /I /Border
 [0 0 0] /Color [1 0 0] H.B /ANN pdfmark end
- 2185 1844 a Black 34 w FA(While)h(this)g(w)n(ould)f(defeat)g(the)h
-(use)523 1944 y(of)26 b(con)n(v)n(ergen)n(t)e(encryption)i(and)g
-(increase)f(the)h(storage)e(and)i(bandwidth)h(requiremen)n(ts,)523
-2044 y(this)20 b(w)n(ould)f(mak)n(e)f(it)i(infeasible)f(for)g(the)h
-(censor)e(to)i(e\013ectiv)n(ely)f(censor)f(all)h(of)g(the)h(v)-5
-b(arian)n(ts.)523 2143 y(Since)33 b(suc)n(h)f(a)g(p)r(o)n(w)n(erful)g
+ 2185 747 a Black
+34 w Fx(While)h(this)g(w)n(ould)f(defeat)g(the)h(use)523
+847 y(of)26 b(con)n(v)n(ergen)n(t)e(encryption)i(and)g(increase)f(the)h
+(storage)e(and)i(bandwidth)h(requiremen)n(ts,)523 946
+y(this)20 b(w)n(ould)f(mak)n(e)f(it)i(infeasible)f(for)g(the)h(censor)e
+(to)i(e\013ectiv)n(ely)f(censor)f(all)h(of)g(the)h(v)-5
+b(arian)n(ts.)523 1046 y(Since)33 b(suc)n(h)f(a)g(p)r(o)n(w)n(erful)g
 (activ)n(e)g(attac)n(k)n(er)f(is)h(lik)n(ely)g(to)h(b)r(e)g(uncommon,)f
-(the)h Ft(default)h FA(in)523 2243 y(ECRS)27 b(is)h(to)f(use)h(con)n(v)
-n(ergen)n(t)d(encryption.)648 2344 y(Both)33 b(attac)n(ks)f(fail)i(to)f
+(the)h Fq(default)h Fx(in)523 1146 y(ECRS)27 b(is)h(to)f(use)h(con)n(v)
+n(ergen)n(t)d(encryption.)648 1250 y(Both)33 b(attac)n(ks)f(fail)i(to)f
 (enable)h(in)n(termediaries)e(to)h(exercise)g(editorial)g(con)n(trol)f
-(o)n(v)n(er)523 2444 y(con)n(ten)n(t)25 b(in)g(general.)f(While)i(p)r
+(o)n(v)n(er)523 1350 y(con)n(ten)n(t)25 b(in)g(general.)f(While)i(p)r
 (eers)f(can)g(theoretically)f(b)r(e)i(forced)e(to)h(censor)f(w)n
-(ell-kno)n(wn)523 2543 y(k)n(eyw)n(ords)d(and)h(\014les,)h(they)g(are)f
+(ell-kno)n(wn)523 1449 y(k)n(eyw)n(ords)d(and)h(\014les,)h(they)g(are)f
 (unable)h(to)g(censor)e(new)i(k)n(eyw)n(ords)e(or)h(unkno)n(wn)g(con)n
-(ten)n(t.)523 2643 y(As)38 b(small)g(c)n(hanges)f(to)h(the)h(con)n(ten)
+(ten)n(t.)523 1549 y(As)38 b(small)g(c)n(hanges)f(to)h(the)h(con)n(ten)
 n(t)f(or)f(k)n(eyw)n(ord)g(are)g(su\016cien)n(t)h(to)g(mak)n(e)g
-(detection)523 2742 y(imp)r(ossible,)28 b(these)f(t)n(yp)r(es)h(of)f
-(censorship)g(should)g(b)r(e)h(impractical.)648 2843
+(detection)523 1648 y(imp)r(ossible,)28 b(these)f(t)n(yp)r(es)h(of)f
+(censorship)g(should)g(b)r(e)h(impractical.)648 1753
 y(Another)j(serious)f(t)n(yp)r(e)i(of)g(attac)n(k)f(is)g(spamming)g
-(the)h(global)f(k)n(eyw)n(ord)f(space)g(with)523 2943
+(the)h(global)f(k)n(eyw)n(ord)f(space)g(with)523 1852
 y(useless)i(con)n(ten)n(t.)g(P)n(opular)f(k)n(eyw)n(ords)g(are)g(an)i
 (easy)e(target)h(since)h(they)f(are)g(b)n(y)g(nature)523
-3043 y(easily)k(guessed.)h(Namespaces)f(can)g(theoretically)h
-(eliminate)g(this)g(problem,)g(ho)n(w)n(ev)n(er)523 3142
-y(they)28 b(create)e(a)h(new)g(di\016cult)n(y)h(in)f(assessing)f(whic)n
-(h)h(pseudon)n(yms)f(represen)n(t)g(users)h(that)523
-3242 y(pro)n(vide)20 b(v)-5 b(aluable)20 b(con)n(ten)n(t.)h(A)g(secure)
-f(reputation)g(system,)h(lik)n(e)f(Adv)n(ogato)f([)p
-0 1 0 TeXcolorrgb 2996 3242 a
+1952 y(easily)g(guessed.)g(Directories)g(and)g(namespaces)g([)p
+0 1 0 TeXcolorrgb 2154 1952 a
 SDict begin H.S end
- 2996 3242 a 0 1 0 TeXcolorrgb
-FA(17)p 0 1 0 TeXcolorrgb 3079 3188 a
+ 2154 1952 a 0 1 0 TeXcolorrgb
+Fx(2)p 0 1 0 TeXcolorrgb 2195 1898 a
 SDict begin H.R end
- 3079 3188 a 3079
-3242 a
+ 2195 1898 a 2195
+1952 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.ecrstechreport) cvn H.B /ANN pdfmark end
+ 2195 1952 a Black Fx(])h(are)f(additional)g(constructs)g(whic)n
+(h)523 2052 y(can)k(help)h(with)h(this)f(problem,)f(esp)r(ecially)g(in)
+h(com)n(bination)f(with)i(secure)d(reputation)523 2151
+y(systems,)27 b(suc)n(h)g(as)g(Adv)n(ogato)f([)p 0 1 0
+TeXcolorrgb 1542 2151 a
+SDict begin H.S end
+ 1542 2151 a 0 1 0 TeXcolorrgb
+Fx(14)p 0 1 0 TeXcolorrgb 1625 2098 a
+SDict begin H.R end
+ 1625 2098 a 1625
+2151 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
 (cite.levien03advogato) cvn H.B /ANN pdfmark end
- 3079 3242 a Black FA(],)i(ma)n(y)g(b)r(e)523 3342
-y(a)k(step)h(to)n(w)n(ards)e(a)i(tec)n(hnical)f(solution)h(for)f(this)h
-(problem.)g(A)g(p)r(ossibly)f(more)g(imp)r(ortan)n(t)523
-3441 y(c)n(hallenge)i(for)h(future)h(w)n(ork)e(is)h(making)g(suc)n(h)g
-(complex)g(solutions)g(easily)f(accessible)h(for)523
-3541 y(the)g(a)n(v)n(erage)d(user.)523 3712 y
+ 1625 2151 a Black Fx(].)i(Ho)n(w)n(ev)n(er,)e(these)h(tec)n
+(hnical)h(solutions)e(lea)n(v)n(e)h(an)g(im-)523 2251
+y(p)r(ortan)n(t)c(c)n(hallenge)e(for)i(future)g(w)n(ork,)f(whic)n(h)h
+(is)g(making)f(suc)n(h)h(complex)g(solutions)f(easily)523
+2350 y(accessible)27 b(for)g(the)h(a)n(v)n(erage)c(user.)523
+2535 y
 SDict begin H.S end
- 523 3712
-a 523 3712 a
+ 523 2535 a 523 2535 a
 SDict begin 12 H.A end
- 523 3712 a 523 3712 a
-SDict begin [ /View [/XYZ H.V] /Dest (subsection.1.5.2) cvn H.B /DEST
-pdfmark end
- 523 3712 a 85 x Fr(5.2)95
-b Fj(KBlo)-5 b(cks)32 b Fr(or)g(triple-hash)523 3969
-y FA(The)c(triple-hash)f(that)h(w)n(as)f(used)g(instead)h(of)g
-Ft(KBlo)l(ck)p FA(s)g(in)g(our)f(earlier)g(w)n(ork)54
-b([)p 0 1 0 TeXcolorrgb 3093 3969 a
+ 523 2535 a 523 2535 a
+SDict begin [ /View [/XYZ H.V] /Dest (section.1.5) cvn H.B /DEST pdfmark
+end
+ 523
+2535 a 104 x Fr(5)112 b(Conclusion)523 2862 y Fx(The)32
+b(enco)r(ding)g(for)g(censorship-resistan)n(t)d(sharing)i(\(ECRS\))h
+(pro)n(vides)f(plausible)h(deni-)523 2961 y(abilit)n(y)k(b)n(y)g
+(hiding)g(the)h(nature)e(of)i(the)f(queries)g(and)g(resp)r(onses)e
+(from)i(in)n(termediaries)523 3061 y(through)d(encryption.)h(The)g
+(enco)r(ding)f(uses)h(con)n(v)n(ergen)n(t)d(encryption)i(and)h(pro)r
+(duces)f(a)523 3161 y(ciphertext)20 b(that)h(is)f(not)g(signi\014can)n
+(tly)f(larger)f(than)j(the)f(plain)n(text.)g(Despite)h(the)f(fact)h
+(that)523 3260 y(queries)g(and)g(resp)r(onses)g(are)g(encrypted,)g(in)n
+(termediaries)f(can)i Fq(verify)h Fx(that)f(the)g(resp)r(onses)523
+3360 y(are)i(v)-5 b(alid)25 b(with)h(resp)r(ect)e(to)h(a)g(particular)e
+(query)-7 b(.)25 b(Th)n(us,)g(the)g(enco)r(ding)g(mec)n(hanism)f(pro-)
+523 3460 y(vides)35 b(robustness)g(against)f(tamp)r(ering)h(and)h
+(false)f(replies.)g(Additional)h(robustness)e(is)523
+3559 y(gained)26 b(in)h(ECRS)g(b)n(y)f(splitting)h(\014les)g(in)n(to)f
+(blo)r(c)n(ks)g(that)h(can)g(b)r(e)g Fq(indep)l(endently)h
+Fx(v)n(eri\014ed,)523 3659 y(stored)22 b(and)g(distributed)h(across)d
+(the)j(net)n(w)n(ork.)e(This)i(mak)n(es)e(it)i(easy)e(for)h(proto)r
+(cols)f(using)523 3758 y(ECRS)34 b(to)g(incorp)r(orate)f(features)h
+(suc)n(h)g(as)f(sw)n(arm)g(distribution)i([)p 0 1 0 TeXcolorrgb
+2709 3758 a
 SDict begin H.S end
- 3093 3969 a 0 1 0
-TeXcolorrgb FA(2)p 0 1 0 TeXcolorrgb 3134 3916 a
+ 2709 3758 a 0 1 0 TeXcolorrgb Fx(12)p 0 1 0
+TeXcolorrgb 2792 3705 a
 SDict begin H.R end
- 3134
-3916 a 3134 3969 a
+ 2792 3705 a 2792 3758 a
 SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
-(cite.esed) cvn H.B /ANN pdfmark end
- 3134 3969 a Black FA(])28 b(allo)n(ws)523
-4069 y(for)19 b(an)g(attac)n(k)g(b)n(y)g(an)g(activ)n(e,)g
-(participating)g(adv)n(ersary)-7 b(.)17 b(The)i(follo)n(wing)f
-(paragraphs)f(\014rst)523 4169 y(brie\015y)28 b(presen)n(t)g(the)h
-(original)e(sc)n(heme)h(and)h(discuss)f(the)h(attac)n(k,)f(and)g(then)h
-(compare)f(it)523 4268 y(with)g(the)g Ft(KBlo)l(ck)h
-FA(approac)n(h)d(tak)n(en)h(in)g(this)h(pap)r(er.)648
-4369 y(Let)35 b(an)g Ft(RBlo)l(ck)h FA(b)r(e)g(a)e(new)i(kind)f(of)g
-(blo)r(c)n(k)g(that)g(also)g(con)n(tains)f(the)h(metadata)g(of)523
-4469 y(a)c(\014le)g(\(including)h(the)g(top)f(CHK)g(data\).)g(The)g
-(only)g(di\013erence)g(b)r(et)n(w)n(een)g Ft(RBlo)l(ck)p
-FA(s)h(and)523 4569 y Ft(KBlo)l(ck)p FA(s)c(is)f(that)h
-Ft(RBlo)l(ck)p FA(s)f(are)f(encrypted)h(and)g(requested)g(using)g(the)g
-(follo)n(wing)f(triple-)523 4668 y(hash)35 b(sc)n(heme.)f(F)-7
-b(or)35 b(eac)n(h)f(k)n(eyw)n(ord)g Fs(k)s FA(,)h(the)g
-Ft(RBlo)l(ck)h Fs(R)g FA(is)f(encrypted)g(with)h Fs(H)7
-b FA(\()p Fs(k)s FA(\))35 b(and)p Black 523 4748 473
-4 v 546 4801 a Fy(3)p 0 TeXcolorgray 606 4742 a
+(cite.hartman99swarm) cvn H.B /ANN pdfmark end
+ 2792
+3758 a Black Fx(],)f(load)g(balancing)523 3858 y(and)27
+b(micro)r(economics)f([)p 0 1 0 TeXcolorrgb 1305 3858
+a
 SDict begin H.S end
- 606 4742
-a 0 TeXcolorgray 0 TeXcolorgray 606 4742 a
+ 1305 3858 a 0 1 0 TeXcolorrgb Fx(11)p 0 1 0 TeXcolorrgb
+1389 3805 a
 SDict begin H.R end
- 606 4742 a
+ 1389 3805 a 1389 3858 a
+SDict begin [ /Color [0 1 0] /H /I /Border [0 0 0] /Subtype /Link /Dest
+(cite.ebe2003) cvn H.B /ANN pdfmark end
+ 1389 3858 a Black
+Fx(].)648 3962 y(Since)i(all)h(handled)g(blo)r(c)n(ks)f(are)f(small,)i
+(no)r(des)f(can)g(participate)h(in)f(the)i(net)n(w)n(ork)d(ac-)523
+4062 y(tivit)n(y)34 b(ev)n(en)f(if)h(their)f(o)n(wn)g(resources)e(are)i
+(limited.)h(Also,)f(storing)g(small,)g(individually)523
+4162 y(unin)n(telligible)27 b(pieces)g(of)g(p)r(oten)n(tially)f(ob)5
+b(jectionable)26 b(con)n(ten)n(t)h(is)f(lik)n(ely)h(to)f(further)h
+(sup-)523 4261 y(p)r(ort)32 b(plausible)g(deniabilit)n(y)-7
+b(.)33 b(While)g(dictionary)e(attac)n(ks)g(on)h(the)h(k)n(eyw)n(ords)d
+(or)i(kno)n(wn)523 4361 y(plain)n(text)23 b(attac)n(ks)e(on)i(the)g
+(con)n(ten)n(t)f(are)g(still)h(p)r(ossible,)g(they)g(are)e(harmless)h
+(with)h(resp)r(ect)523 4460 y(to)d(the)g(goal)f(of)h(deniabilit)n(y)g
+(for)f(in)n(termediaries.)g(Using)h Fp(K)6 b Fx(-deterministic)19
+b(public-priv)-5 b(ate)523 4560 y(k)n(eys)24 b(for)g(signing)f(con)n
+(ten)n(t)i(it)g(is)f(p)r(ossible)g(to)h(v)n(erify)e(searc)n(h)h
+(results)g(in)g(a)g(global)g(k)n(eyw)n(ord)523 4660 y(space.)p
+Black 523 4748 473 4 v 546 4801 a Fv(3)p 0 TeXcolorgray
 606 4742 a
-SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.3) cvn H.B /DEST pdfmark
-end
- 606 4742 a Black 91 x Fx(Note)27 b(that)f(only)g(op)r
-(erations)i(causing)g(global)g(shifts)f(in)g(the)f(data)h(ha)n(v)n(e)f
-(this)h(prop)r(ert)n(y)-6 b(.)25 b(One)606 4924 y(single-c)n(haracter)d
-(replacemen)n(t)g(c)n(hanges)f(only)g(one)g(ro)r(ot-to-leaf)i(path)d
-(in)h(the)g(enco)r(ding)g(tree.)p Black Black Black eop
-end
-%%Page: 19 19
-TeXDict begin 19 18 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
 SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
+ 606 4742 a 0 TeXcolorgray 0 TeXcolorgray 606
+4742 a
 SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.19) cvn H.B /DEST pdfmark
+ 606 4742 a 606 4742 a
+SDict begin [ /View [/XYZ H.V] /Dest (Hfootnote.3) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
-b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(19)p Black 523 448 a FA(stored)34 b(as)f(the)i(pair)f
-Fb(f)p Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\))p
-Fs(;)14 b(E)1682 463 y Fi(H)t Fz(\()p Fi(k)q Fz(\))1834
-448 y FA(\()p Fs(R)q FA(\))p Fb(g)p FA(.)34 b(Using)g(the)h(k)n(eyw)n
-(ord)e(as)g(the)i(source)f(for)523 548 y(the)28 b(k)n(ey)f(allo)n(ws)f
-(the)i(receiv)n(er)e(of)i(the)g(\014le)f(to)h(obtain)f(the)h(k)n(ey)f
-(b)n(y)g(guessing.)648 649 y(Querying)39 b(for)h(an)g
-Ft(RBlo)l(ck)h FA(is)f Fr(not)h FA(straigh)n(tforw)n(ard.)c(The)k
-(problem)f(is)g(that)h(the)523 749 y(in)n(tuitiv)n(e)32
-b(c)n(hoice)f(for)h(a)g(query)f(hash,)h Fs(H)7 b FA(\()p
-Fs(H)g FA(\()p Fs(k)s FA(\)\))32 b(do)r(es)g(not)g(giv)n(e)f(in)n
-(termediaries)g(a)g(w)n(a)n(y)523 849 y(to)37 b(v)n(erify)f(that)h(the)
-h(\(encrypted\))f(resp)r(onse)f(is)h(correct.)e(Instead)i(of)g(using)f
-Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\),)523 948
-y(the)27 b(initiator)e(sends)h(the)h(so-called)d Ft(triple-hash)k
-FA(query)e Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(H)g FA(\()p
-Fs(k)s FA(\)\)\).)27 b(A)f(p)r(eer)g(that)h(has)523 1048
-y(stored)32 b Fs(E)839 1063 y Fi(H)t Fz(\()p Fi(k)q Fz(\))991
-1048 y FA(\()p Fs(R)q FA(\))i(under)f Fs(H)7 b FA(\()p
-Fs(H)g FA(\()p Fs(k)s FA(\)\))34 b(can)f(matc)n(h)g(the)g(query)g(hash)
-g(with)g(the)h(resp)r(onse)523 1148 y(and)39 b(send)g(bac)n(k)g(the)g
-(pair)g Fb(f)p Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s
-FA(\)\))p Fs(;)14 b(E)1906 1163 y Fi(H)t Fz(\()p Fi(k)q
-Fz(\))2057 1148 y FA(\()p Fs(R)q FA(\))p Fb(g)p FA(.)40
-b(In)n(termediaries)d(can)i(v)n(erify)g(that)523 1247
-y(the)25 b(pro)r(of)f(of)g(authen)n(ticit)n(y)-7 b(,)25
-b Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\),)25
-b(hashes)f(to)h(the)g(query)e Fs(H)7 b FA(\()p Fs(H)g
-FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\)\).)26 b(Malicious)523
-1347 y(p)r(eers)31 b(cannot)f(construct)h(the)h(pro)r(of)e
-Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\))32 b(without)f(guessing)
-f Fs(k)k FA(or)d(in)n(v)n(erting)f(the)523 1446 y(hash)d(function.)648
-1548 y(The)41 b(problem)g(with)h(the)f(triple-hash)g(is)g(that)h(an)f
-(adv)n(ersary)d(that)k(is)f(routing)f(a)523 1648 y(resp)r(onse)35
-b(to)h(a)g(triple-hash)f(request)h(can)g(substitute)h(the)f(encrypted)g
-(con)n(ten)n(t)g(in)h(the)523 1747 y Fb(f)p Fs(H)7 b
-FA(\()p Fs(H)g FA(\()p Fs(k)s FA(\)\))p Fs(;)14 b(E)989
-1762 y Fi(H)t Fz(\()p Fi(k)q Fz(\))1141 1747 y FA(\()p
-Fs(C)6 b(H)h(K)q(;)14 b(siz)t(e)p FA(\))p Fb(g)26 b FA(resp)r(onse)h
-(while)h(main)n(taining)g(the)g Fs(H)7 b FA(\()p Fs(H)g
-FA(\()p Fs(k)s FA(\)\))29 b(tok)n(en.)523 1847 y(The)g(resulting)f
-(reply)g Fb(f)p Fs(H)7 b FA(\()p Fs(H)g FA(\()p Fs(k)s
-FA(\)\))p Fs(;)14 b(X)7 b Fb(g)27 b FA(still)i(lo)r(oks)e(lik)n(e)i(a)f
-(v)-5 b(alid)28 b(resp)r(onse)g(to)g(the)h(triple-)523
-1946 y(hash)h(query)g Fs(H)7 b FA(\()p Fs(H)g FA(\()p
-Fs(H)g FA(\()p Fs(k)s FA(\)\)\).)32 b(The)f(triple-hash)f(th)n(us)g(do)
-r(es)h(not)f(protect)h(against)e(suc)n(h)h(a)523 2046
-y(substitution)22 b(attac)n(k)f(b)n(y)h(an)g(in)n(termediary)-7
-b(.)20 b(The)i(impact)g(of)g(the)g(attac)n(k)f(is)h(suc)n(h)f(that)i
-(the)523 2146 y(net)n(w)n(ork)i(w)n(ould)h(propagate)e(and)i(p)r
-(ossibly)g(cac)n(he)f(the)i(in)n(v)-5 b(alid)26 b(replies.)g(The)g
-(attac)n(k)g(will)523 2245 y(not)i(prev)n(en)n(t)f(the)h(spread)f(of)h
-(v)-5 b(alid)28 b(replies)f(through)h(other)f(routes)g(in)h(the)h
-(system)e(since)523 2345 y(m)n(ultiple)e(results)f(to)g(the)g(same)g
-(query)f(are)h(p)r(ossible.)g(F)-7 b(urthermore,)23 b(an)n(y)g(user)h
-(searc)n(hing)523 2445 y(for)i Fs(K)32 b FA(will)27 b(not)f(see)h(the)f
-(in)n(v)-5 b(alid)27 b(results.)f(The)h(reason)e(is)h(that)h(the)g
-(attempt)g(to)f(decrypt)523 2544 y Fs(X)34 b FA(with)29
-b Fs(H)7 b FA(\()p Fs(K)f FA(\))28 b(will)g(\(with)h(high)e(probabilit)
-n(y\))h(result)f(in)h(a)g(malformed)f Ft(RBlo)l(ck)p
-FA(.)i(Th)n(us,)523 2644 y(the)21 b(end-user)f(is)h(still)g(protected)f
-(from)h(this)g(t)n(yp)r(e)g(of)f(spam.)h(Nev)n(ertheless,)f(the)h(adv)n
-(ersary)523 2743 y(can)29 b(abuse)g(net)n(w)n(ork)f(resources)f(in)i
-(the)h(form)f(of)g(transmission)f(and)i(cac)n(hing)e(of)h(in)n(v)-5
-b(alid)523 2843 y(data.)648 2945 y(Replacing)26 b(the)h(triple-hash)g
-(with)g Ft(KBlo)l(ck)p FA(s)h(for)f(ECRS)f(comes)h(at)g(a)f(relativ)n
-(ely)g(high)523 3044 y(price.)40 b(Where)g(the)h(triple-hash)e(only)h
-(requires)f(a)g(simple)i(hash)f(op)r(eration)f(to)h(v)n(erify)523
-3144 y(replies,)22 b Ft(KBlo)l(ck)p FA(s)i(need)e(to)h(p)r(erform)f(a)g
-(public)i(k)n(ey)d(op)r(eration.)h(W)-7 b(orse,)22 b(when)h(publishing)
-523 3243 y(con)n(ten)n(t)f(or)f(searc)n(hing,)g(the)h(triple-hash)g(sc)
-n(heme)g(again)f(only)g(requires)g(a)h(few)h(quic)n(k)e(hash)523
-3343 y(op)r(erations)e(to)h(compute)h(the)g(query)e(or)h(the)g(con)n
-(ten)n(t.)g(With)i Ft(KBlo)l(ck)p FA(s,)f(the)g(cost)f(increases)523
-3443 y(to)30 b(additionally)g(generating)e(a)i(public-priv)-5
-b(ate)30 b(k)n(ey)f(pair)h(in)g(addition)g(to)g(a)g(public)h(k)n(ey)523
-3542 y(op)r(eration)c(and)g(hash)g(op)r(erations.)648
-3644 y(Both)42 b Ft(KBlo)l(cks)h FA(and)f(the)h(triple-hash)e(are)h
-(vulnerable)f(to)h(the)h(guessing)e(attac)n(k.)523 3743
-y(Guessing)d(is)h(sligh)n(tly)f(easier)f(for)h(the)h(triple-hash)f
-(since)g(the)h(computation)g(for)f(eac)n(h)523 3843 y(guess)21
-b(is)h(m)n(uc)n(h)f(c)n(heap)r(er.)g(Ov)n(erall,)f Ft(KBlo)l(cks)j
-FA(w)n(ork)e(b)r(etter)h(than)g(the)g(triple-hash)f(against)523
-3943 y(adv)n(ersaries)f(that)j(indiscriminately)g(attempt)h(to)e(abuse)
-h(net)n(w)n(ork)e(resources,)g(but)j(at)f(the)523 4042
-y(exp)r(ense)j(of)g(higher)f(CPU)g(utilization)h(ev)n(en)g(in)g(the)g
-(absence)f(of)h(an)g(attac)n(k.)f(Th)n(us,)g(using)523
-4142 y(the)36 b(triple-hash)e(sc)n(heme)g(ma)n(y)h(still)g(b)r(e)h
-(reasonable)d(in)i(net)n(w)n(orks)f(with)h(limited)h(CPU)523
-4242 y(p)r(o)n(w)n(er)26 b(or)h(less)g(stringen)n(t)g(securit)n(y)g
-(requiremen)n(ts.)523 4415 y
-SDict begin H.S end
- 523 4415 a 523 4415 a
-SDict begin 12 H.A end
- 523
-4415 a 523 4415 a
-SDict begin [ /View [/XYZ H.V] /Dest (section.1.6) cvn H.B /DEST pdfmark
-end
- 523 4415 a 102 x Fu(6)112 b(Conclusion)523
-4725 y FA(This)39 b(pap)r(er)f(has)h(describ)r(ed)g(an)f(enco)r(ding)h
-(sc)n(heme)f(whic)n(h)h(hides)g(shared)f(data)g(from)523
-4825 y(in)n(termediaries.)29 b(The)h(enco)r(ding)g(uses)g(con)n(v)n
-(ergen)n(t)e(encryption,)i(allo)n(ws)f(sw)n(arming)f(and)523
-4924 y(pro)r(duces)34 b(a)g(ciphertext)h(that)g(is)f(not)h
-(signi\014can)n(tly)f(larger)f(than)h(the)h(plain)n(text.)g(Indi-)p
-Black Black eop end
-%%Page: 20 20
-TeXDict begin 20 19 bop 0 0 a
+ 606 4742 a Black 91 x Fu(Note)j(that)f
+(only)g(op)r(erations)i(causing)g(global)g(shifts)f(in)g(the)f(data)h
+(ha)n(v)n(e)f(this)h(prop)r(ert)n(y)-6 b(.)25 b(One)606
+4924 y(single-c)n(haracter)d(replacemen)n(t)g(c)n(hanges)f(only)g(one)g
+(ro)r(ot-to-leaf)i(path)d(in)h(the)g(enco)r(ding)g(tree.)p
+Black Black Black eop end
+%%Page: 14 14
+TeXDict begin 14 13 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -9015,180 +7469,207 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.20) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.14) cvn H.B /DEST pdfmark
 end
- 523 232 a Black Fx(20)199 b(C.)27
+ 523 232 a Black Fu(14)199 b(C.)27
 b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 448 a FA(vidual)f(blo)r(c)n(ks)e(of)i(the)g(ciphertext)g(can)
-f(b)r(e)h(generated)f(from)g(plain)n(text)h(without)g(reading)523
-548 y(unrelated)38 b(parts)h(of)f(the)h(original.)f(While)h(dictionary)
-f(attac)n(ks)g(on)g(the)h(k)n(eyw)n(ords)e(or)523 648
-y(kno)n(wn)24 b(plain)n(text)g(attac)n(ks)g(on)g(the)h(con)n(ten)n(t)f
-(are)g(still)h(p)r(ossible,)f(they)h(are)e(harmless)g(with)523
-747 y(resp)r(ect)k(to)h(the)g(goal)e(of)i(deniabilit)n(y)g(for)f(in)n
-(termediaries.)f(The)i(basic)f(enco)r(ding)g(sc)n(heme)523
-847 y(can)21 b(b)r(e)h(extended)g(with)g(directories)e(and)i
-(namespaces.)e(Namespaces)g(allo)n(w)h(for)g(\014les)g(and)523
-946 y(directories)k(to)h(b)r(e)h(up)r(dated.)g(Using)f
-Fs(K)6 b FA(-deterministic)26 b(public-priv)-5 b(ate)26
-b(k)n(eys)f(for)h(signing)523 1046 y(con)n(ten)n(t)h(it)h(is)g(p)r
-(ossible)f(to)g(v)n(erify)g(searc)n(h)f(results)h(in)h(a)f(global)g(k)n
-(eyw)n(ord)f(space.)648 1147 y(ECRS)35 b(is)g(implemen)n(ted)h(as)f(a)g
-(part)g(of)h Fa(gnu)p FA(net,)g(a)f(secure)g(platform)g(for)g(p)r
-(eer-to-)523 1247 y(p)r(eer)i(net)n(w)n(orking.)f(In)i
-Fa(gnu)p FA(net,)g(ECRS)f(w)n(orks)f(to)n(w)n(ards)g(implemen)n(ting)i
-(anon)n(ymous,)523 1347 y(censorship-resistan)n(t)31
-b(\014le-sharing.)h Fa(gnu)p FA(net)i(is)g(free)f(soft)n(w)n(are)f(and)
-i(part)f(of)g(the)h(GNU)523 1446 y(pro)5 b(ject.)25 b(The)g
-Fa(gnu)p FA(net)h(co)r(de)f(is)h(appro)n(ximately)d(100,000)g(lines)i
-(of)h(C)f(co)r(de.)g(ECRS)h(itself)523 1546 y(is)20 b(implemen)n(ted)h
-(in)g(ab)r(out)f(8,000)f(LOC.)h(The)g(co)r(de)g(is)h(freely)f(a)n(v)-5
-b(ailable)19 b(from)h(the)h Fa(gnu)p FA(net)523 1646
-y(w)n(ebpage)p 1 0 0 TeXcolorrgb 831 1646 a
+Black 648 448 a Fx(ECRS)35 b(is)g(implemen)n(ted)h(as)f(a)g(part)g(of)h
+Fa(gnu)p Fx(net,)g(a)f(secure)g(platform)g(for)g(p)r(eer-to-)523
+548 y(p)r(eer)i(net)n(w)n(orking.)f(In)i Fa(gnu)p Fx(net,)g(ECRS)f(w)n
+(orks)f(to)n(w)n(ards)g(implemen)n(ting)i(anon)n(ymous,)523
+648 y(censorship-resistan)n(t)31 b(\014le-sharing.)h
+Fa(gnu)p Fx(net)i(is)g(free)f(soft)n(w)n(are)f(and)i(part)f(of)g(the)h
+(GNU)523 747 y(pro)5 b(ject.)25 b(The)g Fa(gnu)p Fx(net)h(co)r(de)f(is)
+h(appro)n(ximately)d(100,000)g(lines)i(of)h(C)f(co)r(de.)g(ECRS)h
+(itself)523 847 y(is)20 b(implemen)n(ted)h(in)g(ab)r(out)f(8,000)f
+(LOC.)h(The)g(co)r(de)g(is)h(freely)f(a)n(v)-5 b(ailable)19
+b(from)h(the)h Fa(gnu)p Fx(net)523 946 y(w)n(ebpage)p
+1 0 0 TeXcolorrgb 831 946 a
 SDict begin H.S end
- 831 1646
-a -31 x Fz(4)867 1646 y
+ 831 946 a -30 x Fw(4)867
+946 y
 SDict begin 12 H.L end
- 867 1646 a 867 1646 a
+ 867 946 a 867 946 a
 SDict begin [ /Subtype /Link /Dest (Hfootnote.4) cvn /H /I /Border
 [0 0 0] /Color [1 0 0] H.B /ANN pdfmark end
- 867 1646
-a Black FA(.)523 1903 y Fr(Ac)m(kno)m(wledgemen)m(ts)523
-1993 y
+ 867 946 a Black Fx(.)523 1199
+y Fn(Ac)m(kno)m(wledgemen)m(ts)523 1284 y
 SDict begin H.S end
- 523 1993 a 523 1993 a
+ 523 1284 a
+523 1284 a
 SDict begin 12 H.A end
- 523 1993 a 523 1993 a
+ 523 1284 a 523 1284 a
 SDict begin [ /View [/XYZ H.V] /Dest (section*.1) cvn H.B /DEST pdfmark
 end
- 523
-1993 a 85 x FA(The)k(authors)f(thank)h(Roger)f(Dingledine)h(for)g
-(helpful)g(commen)n(ts)g(on)g(an)g(earlier)e(draft)i(of)523
-2178 y(this)j(pap)r(er.)523 2452 y Fu(References)523
-2559 y
+ 523 1284 a 84 x Fx(The)k(authors)f
+(thank)h(Roger)f(Dingledine)h(for)g(helpful)g(commen)n(ts)g(on)g(an)g
+(earlier)e(draft)i(of)523 1468 y(this)j(pap)r(er.)523
+1737 y Fr(References)523 1839 y
 SDict begin H.S end
- 523 2559 a 523 2559 a
+ 523 1839 a 523 1839 a
 SDict begin 11 H.A end
- 523 2559 a 523 2559 a
+
+523 1839 a 523 1839 a
 SDict begin [ /View [/XYZ H.V] /Dest (section*.2) cvn H.B /DEST pdfmark
 end
- 523
-2559 a 523 2559 a
+ 523 1839 a 523 1839 a
 SDict begin H.S end
- 523 2559 a 523 2559 a
+ 523 1839
+a 523 1839 a
 SDict begin 11 H.A end
- 523 2559 a 523
-2559 a
+ 523 1839 a 523 1839 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.anderson96eternity) cvn
 H.B /DEST pdfmark end
- 523 2559 a Black 561 2652 a Fx(1.)p Black 43 w(Ross)e(Anderson.)
-34 b(The)26 b(Eternit)n(y)f(Service.)34 b(In)25 b Fq(Pr)l(o)l(c)l(e)l
-(e)l(dings)30 b(of)d(Pr)l(ago)l(crypt)j(1996)p Fx(,)d(1996.)523
-2667 y
+ 523 1839 a Black 561
+1931 a Fu(1.)p Black 43 w(Ross)e(Anderson.)34 b(The)26
+b(Eternit)n(y)f(Service.)34 b(In)25 b Fo(Pr)l(o)l(c)l(e)l(e)l(dings)30
+b(of)d(Pr)l(ago)l(crypt)j(1996)p Fu(,)d(1996.)523 1946
+y
 SDict begin H.S end
- 523 2667 a 523 2667 a
+ 523 1946 a 523 1946 a
 SDict begin 11 H.A end
- 523 2667 a 523 2667 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.esed) cvn H.B /DEST pdfmark
-end
- 523
-2667 a Black 561 2745 a Fx(2.)p Black 43 w(Krista)34
-b(Bennett,)g(Christian)h(Grotho\013,)g(Tzv)n(etan)f(Horozo)n(v,)g(and)g
-(Ioana)h(P)n(atrascu.)60 b(Ef-)663 2836 y(\014cien)n(t)31
-b(Sharing)h(of)h(Encrypted)e(Data.)54 b(In)31 b Fq(ASCIP)p
-Fx(,)h(v)n(olume)g(2384)h(of)g Fq(L)l(e)l(ctur)l(e)j(Notes)e(in)663
-2927 y(Computer)28 b(Scienc)l(e)p Fx(,)f(pages)g(107{120.)i(Springer-V)
--6 b(erlag)25 b(Inc.,)h(2002.)523 2942 y
+ 523 1946 a 523 1946 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.ecrstechreport) cvn H.B
+/DEST pdfmark end
+ 523 1946
+a Black 561 2023 a Fu(2.)p Black 43 w(Krista)35 b(Bennett,)g(Christian)
+g(Grotho\013,)h(Tzv)n(etan)f(Horozo)n(v,)g(and)f(J.)i(T.)f(Lindgren.)62
+b(An)663 2114 y(Enco)r(ding)30 b(for)h(Censorship-Resistan)n(t)g
+(Sharing.)48 b(T)-6 b(ec)n(hnical)31 b(rep)r(ort,)g(2003.)49
+b(a)n(v)l(ailable)32 b(at)663 2206 y(h)n(ttp://gn)n(unet.org/do)n
+(wnload/ecrs.ps.)523 2224 y
 SDict begin H.S end
- 523 2942 a 523
-2942 a
+ 523 2224 a 523 2224 a
 SDict begin 11 H.A end
- 523 2942 a 523 2942 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.bloom) cvn H.B /DEST pdfmark
+ 523
+2224 a 523 2224 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.esed) cvn H.B /DEST pdfmark
 end
- 523 2942 a Black 561 3020
-a Fx(3.)p Black 43 w(Burton)g(Blo)r(om.)37 b(Space/time)26
-b(trade-o\013s)g(in)g(hash)g(co)r(ding)h(with)f(allo)n(w)n(able)i
-(errors.)37 b Fq(Com-)663 3112 y(munic)l(ations)28 b(of)f(the)i(A)n(CM)
-p Fx(,)c(13\(7\):422{426,)30 b(1970.)523 3130 y
+ 523 2224 a Black 561 2298 a Fu(3.)p
+Black 43 w(Krista)i(Bennett,)g(Christian)h(Grotho\013,)g(Tzv)n(etan)f
+(Horozo)n(v,)g(and)g(Ioana)h(P)n(atrascu.)60 b(Ef-)663
+2389 y(\014cien)n(t)31 b(Sharing)h(of)h(Encrypted)e(Data.)54
+b(In)31 b Fo(ASCIP)p Fu(,)h(v)n(olume)g(2384)h(of)g Fo(L)l(e)l(ctur)l
+(e)j(Notes)e(in)663 2480 y(Computer)28 b(Scienc)l(e)p
+Fu(,)f(pages)g(107{120.)i(Springer-V)-6 b(erlag)25 b(Inc.,)h(2002.)523
+2495 y
 SDict begin H.S end
- 523 3130
-a 523 3130 a
+ 523 2495 a 523 2495 a
 SDict begin 11 H.A end
- 523 3130 a 523 3130 a
+ 523 2495 a 523 2495 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.chen99prototype) cvn H.B
 /DEST pdfmark end
- 523 3130 a Black 561
-3205 a Fx(4.)p Black 43 w(Y)-6 b(uan)19 b(Chen,)i(Jan)h(Edler,)f
-(Andrew)g(Goldb)r(erg,)h(Allan)f(Gottlieb,)h(Sumeet)e(Sobti,)h(and)g(P)
-n(eter)663 3296 y(Yianilos.)39 b(A)26 b(protot)n(yp)r(e)g(implemen)n
-(tation)h(of)h(arc)n(hiv)l(al)f(in)n(termemory)-6 b(.)37
-b(In)26 b Fq(Pr)l(o)l(c)l(e)l(e)l(dings)31 b(of)663 3387
-y(the)d(F)-6 b(ourth)29 b(A)n(CM)e(International)i(Confer)l(enc)l(e)g
-(on)f(Digital)f(Libr)l(aries)p Fx(,)g(1999.)523 3402
-y
+ 523
+2495 a Black 561 2572 a Fu(4.)p Black 43 w(Y)-6 b(uan)19
+b(Chen,)i(Jan)h(Edler,)f(Andrew)g(Goldb)r(erg,)h(Allan)f(Gottlieb,)h
+(Sumeet)e(Sobti,)h(and)g(P)n(eter)663 2663 y(Yianilos.)39
+b(A)26 b(protot)n(yp)r(e)g(implemen)n(tation)h(of)h(arc)n(hiv)l(al)f
+(in)n(termemory)-6 b(.)37 b(In)26 b Fo(Pr)l(o)l(c)l(e)l(e)l(dings)31
+b(of)663 2755 y(the)d(F)-6 b(ourth)29 b(A)n(CM)e(International)i
+(Confer)l(enc)l(e)g(on)f(Digital)f(Libr)l(aries)p Fu(,)g(1999.)523
+2770 y
 SDict begin H.S end
- 523 3402 a 523 3402 a
+ 523 2770 a 523 2770 a
 SDict begin 11 H.A end
- 523 3402 a 523 3402 a
+ 523 2770 a 523 2770 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.clark99distributed) cvn
 H.B /DEST pdfmark end
- 523 3402
-a Black 561 3480 a Fx(5.)p Black 43 w(Ian)h(Clark)n(e,)h(Osk)l(ar)g
-(Sandb)r(erg,)f(Brandon)h(Wiley)-6 b(,)28 b(and)g(Theo)r(dorew)i(W.)f
-(Hong.)43 b(F)-6 b(reenet:)663 3572 y(A)35 b(distributed)f(anon)n
+ 523
+2770 a Black 561 2847 a Fu(5.)p Black 43 w(Ian)h(Clark)n(e,)h(Osk)l(ar)
+g(Sandb)r(erg,)f(Brandon)h(Wiley)-6 b(,)28 b(and)g(Theo)r(dorew)i(W.)f
+(Hong.)43 b(F)-6 b(reenet:)663 2938 y(A)35 b(distributed)f(anon)n
 (ymous)i(information)g(storage)h(and)e(retriev)l(al)h(system.)63
-b(In)35 b(Hannes)663 3663 y(F)-6 b(ederrath,)28 b(editor,)g
-Fq(Designing)i(privacy)h(enhancing)f(te)l(chnolo)l(gies:)h
-(International)g(Work-)663 3754 y(shop)38 b(on)f(Design)g(Issues)h(in)f
+b(In)35 b(Hannes)663 3029 y(F)-6 b(ederrath,)28 b(editor,)g
+Fo(Designing)i(privacy)h(enhancing)f(te)l(chnolo)l(gies:)h
+(International)g(Work-)663 3121 y(shop)38 b(on)f(Design)g(Issues)h(in)f
 (A)n(nonymity)g(and)h(Unobservability,)g(Berkeley,)g(CA,)e(USA,)663
-3846 y(July)25 b(25{26,)g(2000:)g(pr)l(o)l(c)l(e)l(e)l(dings)p
-Fx(,)h(v)n(olume)c(2009)j(of)e Fq(L)l(e)l(ctur)l(e)k(Notes)f(in)f
-(Computer)h(Scienc)l(e)p Fx(.)663 3937 y(Springer-V)-6
-b(erlag)25 b(Inc.,)h(2001.)523 3952 y
+3212 y(July)25 b(25{26,)g(2000:)g(pr)l(o)l(c)l(e)l(e)l(dings)p
+Fu(,)h(v)n(olume)c(2009)j(of)e Fo(L)l(e)l(ctur)l(e)k(Notes)f(in)f
+(Computer)h(Scienc)l(e)p Fu(.)663 3303 y(Springer-V)-6
+b(erlag)25 b(Inc.,)h(2001.)523 3318 y
 SDict begin H.S end
- 523 3952 a 523
-3952 a
+ 523 3318 a 523
+3318 a
 SDict begin 11 H.A end
- 523 3952 a 523 3952 a
+ 523 3318 a 523 3318 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.cohen02replication) cvn
 H.B /DEST pdfmark end
- 523 3952 a Black 561 4030
-a Fx(6.)p Black 43 w(Edith)31 b(Cohen)g(and)g(Scott)g(Shenk)n(er.)50
+ 523 3318 a Black 561 3395
+a Fu(6.)p Black 43 w(Edith)31 b(Cohen)g(and)g(Scott)g(Shenk)n(er.)50
 b(Replication)31 b(strategies)i(in)e(unstructured)f(p)r(eer-to-)663
-4121 y(p)r(eer)25 b(net)n(w)n(orks.)35 b(In)25 b Fq(The)j(A)n(CM)f
-(SIGCOMM'02)g(Confer)l(enc)l(e)p Fx(,)g(August)e(2002.)523
-4136 y
+3487 y(p)r(eer)25 b(net)n(w)n(orks.)35 b(In)25 b Fo(The)j(A)n(CM)f
+(SIGCOMM'02)g(Confer)l(enc)l(e)p Fu(,)g(August)e(2002.)523
+3502 y
 SDict begin H.S end
- 523 4136 a 523 4136 a
+ 523 3502 a 523 3502 a
 SDict begin 11 H.A end
- 523 4136 a 523 4136 a
+ 523 3502 a 523 3502 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.cfs:sosp01) cvn H.B /DEST
 pdfmark end
  523
-4136 a Black 561 4215 a Fx(7.)p Black 43 w(F)-6 b(rank)26
+3502 a Black 561 3579 a Fu(7.)p Black 43 w(F)-6 b(rank)26
 b(Dab)r(ek,)i(M.)g(F)-6 b(rans)27 b(Kaasho)r(ek,)h(Da)n(vid)f(Karger,)h
-(Rob)r(ert)g(Morris,)h(and)e(Ion)g(Stoica.)663 4306 y(Wide-area)j(co)r
+(Rob)r(ert)g(Morris,)h(and)e(Ion)g(Stoica.)663 3670 y(Wide-area)j(co)r
 (op)r(erativ)n(e)h(storage)g(with)e(CFS.)47 b(In)28 b
-Fq(Pr)l(o)l(c)l(e)l(e)l(dings)34 b(of)d(the)h(18th)g(A)n(CM)e(Sym-)663
-4397 y(p)l(osium)25 b(on)g(Op)l(er)l(ating)h(Systems)g(Principles)f
-(\(SOSP)g('01\))p Fx(,)f(Chateau)f(Lak)n(e)g(Louise,)g(Ban\013,)663
-4489 y(Canada,)k(Octob)r(er)e(2001.)523 4504 y
+Fo(Pr)l(o)l(c)l(e)l(e)l(dings)34 b(of)d(the)h(18th)g(A)n(CM)e(Sym-)663
+3761 y(p)l(osium)25 b(on)g(Op)l(er)l(ating)h(Systems)g(Principles)f
+(\(SOSP)g('01\))p Fu(,)f(Chateau)f(Lak)n(e)g(Louise,)g(Ban\013,)663
+3853 y(Canada,)k(Octob)r(er)e(2001.)523 3868 y
 SDict begin H.S end
- 523 4504
-a 523 4504 a
+ 523 3868
+a 523 3868 a
 SDict begin 11 H.A end
- 523 4504 a 523 4504 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.dingledine02mixminion) cvn
-H.B /DEST pdfmark end
- 523 4504 a Black 561
-4582 a Fx(8.)p Black 43 w(George)32 b(Danezis,)g(Roger)g(Dingledine,)g
-(and)f(Nic)n(k)f(Mathewson.)52 b(Mixminion:)32 b(Design)g(of)663
-4673 y(a)d(T)n(yp)r(e)f(I)r(I)r(I)g(Anon)n(ymous)g(Remailer)i(Proto)r
-(col.)45 b(In)28 b Fq(IEEE)i(Symp)l(osium)h(on)g(Se)l(curity)g(and)663
-4764 y(Privacy)p Fx(,)c(2003.)p Black 523 4839 473 4
-v 546 4893 a Fy(4)p 0 TeXcolorgray 606 4833 a
+ 523 3868 a 523 3868 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.freehaven-berk) cvn H.B
+/DEST pdfmark end
+ 523 3868 a Black 561
+3945 a Fu(8.)p Black 43 w(Roger)18 b(Dingledine,)h(Mic)n(hael)g(J.)g(F)
+-6 b(reedman,)18 b(and)g(Da)n(vid)f(Molnar.)23 b(The)c(free)f(ha)n(v)n
+(en)g(pro)t(ject:)663 4036 y(Distributed)37 b(anon)n(ymous)i(storage)g
+(service.)73 b(In)38 b(Hannes)g(F)-6 b(ederrath,)38 b(editor,)h
+Fo(Pr)l(o)l(c)l(e)l(e)l(d-)663 4127 y(ings)26 b(of)g(Designing)g
+(Privacy)h(Enhancing)g(T)-6 b(e)l(chnolo)l(gies:)27 b(Workshop)g(on)g
+(Design)f(Issues)h(in)663 4219 y(A)n(nonymity)h(and)g(Unobservability)p
+Fu(.)g(Springer-V)-6 b(erlag,)26 b(LNCS)f(2009,)i(July)f(2000.)523
+4234 y
 SDict begin H.S end
+ 523 4234 a 523 4234 a
+SDict begin 11 H.A end
+ 523 4234 a 523 4234 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.farsite) cvn H.B /DEST pdfmark
+end
+ 523
+4234 a Black 561 4311 a Fu(9.)p Black 43 w(John)19 b(R.)f(Douceur,)h(A)
+n(tul)f(Ady)n(a,)h(Wiliam)h(J.)g(Bolosky)-6 b(,)19 b(Dan)g(Simon,)g
+(and)g(Marvin)g(Theimer.)663 4402 y(Reclaiming)26 b(space)g(from)g
+(duplicate)f(\014les)g(in)g(a)h(serv)n(erless)g(distributed)f(\014le)g
+(system.)33 b(T)-6 b(ec)n(h-)663 4493 y(nical)26 b(rep)r(ort,)g
+(Microsoft)i(Researc)n(h,)e(2002.)523 4508 y
+SDict begin H.S end
+ 523 4508
+a 523 4508 a
+SDict begin 11 H.A end
+ 523 4508 a 523 4508 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.secure2004goh) cvn H.B /DEST
+pdfmark end
+ 523 4508 a Black 77
+x Fu(10.)p Black 43 w(Eu-Jin)f(Goh.)35 b(Secure)25 b(indexes.)35
+b(In)25 b Fo(Cryptolo)l(gy)k(ePrint)f(A)n(r)l(chive)p
+Fu(,)f(Oct)e(2003.)523 4600 y
+SDict begin H.S end
+ 523 4600 a 523 4600 a
+SDict begin 11 H.A end
+ 523
+4600 a 523 4600 a
+SDict begin [ /View [/XYZ H.V] /Dest (cite.ebe2003) cvn H.B /DEST pdfmark
+end
+ 523 4600 a Black 77 x Fu(11.)p Black
+43 w(Christian)i(Grotho\013.)35 b(An)25 b(Excess-Based)i(Economic)g(Mo)
+r(del)g(for)f(Resource)h(Allo)r(cation)g(in)663 4769
+y(P)n(eer-to-P)n(eer)f(Net)n(w)n(orks.)34 b Fo(Wirtschaftsinformatik)p
+Fu(,)27 b(3-2003,)h(June)d(2003.)p Black 523 4839 473
+4 v 546 4893 a Fv(4)p 0 TeXcolorgray 606 4833 a
+SDict begin H.S end
  606 4833
 a 0 TeXcolorgray 0 TeXcolorgray 606 4833 a
 SDict begin H.R end
@@ -9199,7 +7680,7 @@
  606 4833 a Black 0 1 0 0 TeXcolorcmyk 606
 4941 a
 SDict begin H.S end
- 606 4941 a 0 1 0 0 TeXcolorcmyk -17 x Fw(http://gnunet.org/)p
+ 606 4941 a 0 1 0 0 TeXcolorcmyk -17 x Ft(http://gnunet.org/)p
 0 1 0 0 TeXcolorcmyk 1312 4872 a
 SDict begin H.R end
  1312 4872 a 1312 4924
@@ -9207,8 +7688,8 @@
 SDict begin [ /H /I /Border [0 0 0] /Color [0 1 1] /Action << /Subtype
 /URI /URI (http://gnunet.org/) >> /Subtype /Link H.B /ANN pdfmark end
  1312 4924 a Black Black Black Black eop end
-%%Page: 21 21
-TeXDict begin 21 20 bop 0 0 a
+%%Page: 15 15
+TeXDict begin 15 14 bop 0 0 a
 SDict begin /product where{pop product(Distiller)search{pop pop pop
 version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
 closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
@@ -9220,356 +7701,248 @@
 232 a
 SDict begin H.R end
  523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.21) cvn H.B /DEST pdfmark
+SDict begin [ /View [/XYZ H.V] /Dest (page.15) cvn H.B /DEST pdfmark
 end
- 523 232 a Black 1036 w Fx(An)25
+ 523 232 a Black 1036 w Fu(An)25
 b(Enco)r(ding)h(for)h(Censorship-Resistan)n(t)f(Sharing)199
-b(21)p Black 523 365 a
+b(15)p Black 523 365 a
 SDict begin H.S end
  523 365 a 523 365 a
 SDict begin 11 H.A end
  523 365 a
 523 365 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.freehaven-berk) cvn H.B
-/DEST pdfmark end
- 523 365 a Black 561 448 a Fx(9.)p Black 43
-w(Roger)18 b(Dingledine,)h(Mic)n(hael)g(J.)g(F)-6 b(reedman,)18
-b(and)g(Da)n(vid)f(Molnar.)23 b(The)c(free)f(ha)n(v)n(en)g(pro)t(ject:)
-663 540 y(Distributed)37 b(anon)n(ymous)i(storage)g(service.)73
-b(In)38 b(Hannes)g(F)-6 b(ederrath,)38 b(editor,)h Fq(Pr)l(o)l(c)l(e)l
-(e)l(d-)663 631 y(ings)26 b(of)g(Designing)g(Privacy)h(Enhancing)g(T)-6
-b(e)l(chnolo)l(gies:)27 b(Workshop)g(on)g(Design)f(Issues)h(in)663
-722 y(A)n(nonymity)h(and)g(Unobservability)p Fx(.)g(Springer-V)-6
-b(erlag,)26 b(LNCS)f(2009,)i(July)f(2000.)523 737 y
-SDict begin H.S end
- 523
-737 a 523 737 a
-SDict begin 11 H.A end
- 523 737 a 523 737 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.farsite) cvn H.B /DEST pdfmark
-end
- 523 737 a Black 72
-x Fx(10.)p Black 43 w(John)19 b(R.)f(Douceur,)h(A)n(tul)f(Ady)n(a,)h
-(Wiliam)h(J.)g(Bolosky)-6 b(,)19 b(Dan)g(Simon,)g(and)g(Marvin)g
-(Theimer.)663 900 y(Reclaiming)26 b(space)g(from)g(duplicate)f(\014les)
-g(in)g(a)h(serv)n(erless)g(distributed)f(\014le)g(system.)33
-b(T)-6 b(ec)n(h-)663 992 y(nical)26 b(rep)r(ort,)g(Microsoft)i(Researc)
-n(h,)e(2002.)523 1007 y
-SDict begin H.S end
- 523 1007 a 523 1007 a
-SDict begin 11 H.A end
- 523 1007
-a 523 1007 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.feamster-infranet) cvn H.B
-/DEST pdfmark end
- 523 1007 a Black 71 x Fx(11.)p Black 43
-w(Nic)n(k)21 b(F)-6 b(eamster,)23 b(Magdalena)g(Balazinsk)l(a,)h(Greg)f
-(Harfst,)g(Hari)f(Balakrishnan,)h(and)e(Da)n(vid)663
-1169 y(Karger.)k(Infranet:)20 b(Circum)n(v)n(en)n(ting)g(w)n(eb)g
-(censorship)g(and)f(surv)n(eillance.)26 b(In)19 b Fq(11th)k(USENIX)663
-1261 y(Se)l(curity)29 b(Symp)l(osium)p Fx(,)d(2002.)523
-1276 y
-SDict begin H.S end
- 523 1276 a 523 1276 a
-SDict begin 11 H.A end
- 523 1276 a 523 1276 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.secure2004goh) cvn H.B /DEST
-pdfmark end
- 523
-1276 a Black 71 x Fx(12.)p Black 43 w(Eu-Jin)f(Goh.)35
-b(Secure)25 b(indexes.)35 b(In)25 b Fq(Cryptolo)l(gy)k(ePrint)f(A)n(r)l
-(chive)p Fx(,)f(Oct)e(2003.)523 1362 y
-SDict begin H.S end
- 523 1362 a 523
-1362 a
-SDict begin 11 H.A end
- 523 1362 a 523 1362 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.ebe2003) cvn H.B /DEST pdfmark
-end
- 523 1362 a Black 72 x Fx(13.)p
-Black 43 w(Christian)i(Grotho\013.)35 b(An)25 b(Excess-Based)i
-(Economic)g(Mo)r(del)g(for)f(Resource)h(Allo)r(cation)g(in)663
-1525 y(P)n(eer-to-P)n(eer)f(Net)n(w)n(orks.)34 b Fq
-(Wirtschaftsinformatik)p Fx(,)27 b(3-2003,)h(June)d(2003.)523
-1540 y
-SDict begin H.S end
- 523 1540 a 523 1540 a
-SDict begin 11 H.A end
- 523 1540 a 523 1540 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.le2005) cvn H.B /DEST pdfmark
-end
- 523
-1540 a Black 72 x Fx(14.)p Black 43 w(Christian)33 b(Grotho\013.)55
-b(Reading)32 b(File)i(Metadata)f(with)g(extract)f(and)g(lib)r
-(extractor.)56 b Fq(Lin-)663 1703 y(uxJournal)p Fx(,)27
-b(6-2005,)h(June)d(2005.)523 1718 y
-SDict begin H.S end
- 523 1718 a 523 1718
-a
-SDict begin 11 H.A end
- 523 1718 a 523 1718 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.hartman99swarm) cvn H.B
 /DEST pdfmark end
- 523 1718 a Black 72 x Fx(15.)p
-Black 43 w(John)d(H.)g(Hartman,)h(Ian)f(Murdo)r(c)n(k,)h(and)f(T)-6
-b(ammo)23 b(Spalink.)28 b(The)23 b(sw)n(arm)g(scalable)h(storage)663
-1881 y(system.)67 b(In)36 b Fq(International)j(Confer)l(enc)l(e)g(on)f
-(Distribute)l(d)h(Computing)f(Systems)p Fx(,)h(pages)663
-1972 y(74{81,)28 b(1999.)523 1987 y
+ 523 365 a Black 83 x Fu(12.)p Black 43 w(John)22
+b(H.)g(Hartman,)h(Ian)f(Murdo)r(c)n(k,)h(and)f(T)-6 b(ammo)23
+b(Spalink.)28 b(The)23 b(sw)n(arm)g(scalable)h(storage)663
+540 y(system.)67 b(In)36 b Fo(International)j(Confer)l(enc)l(e)g(on)f
+(Distribute)l(d)h(Computing)f(Systems)p Fu(,)h(pages)663
+631 y(74{81,)28 b(1999.)523 646 y
 SDict begin H.S end
- 523 1987 a 523 1987
-a
+ 523 646 a 523 646 a
 SDict begin 11 H.A end
- 523 1987 a 523 1987 a
+
+523 646 a 523 646 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.herlihy87how) cvn H.B /DEST
 pdfmark end
- 523 1987 a Black 72 x Fx(16.)p
-Black 43 w(Maurice)42 b(Herlih)n(y)e(and)h(J.)h(D.)f(T)n(ygar.)81
+ 523 646 a Black 76 x Fu(13.)p Black
+43 w(Maurice)42 b(Herlih)n(y)e(and)h(J.)h(D.)f(T)n(ygar.)81
 b(Ho)n(w)42 b(to)f(mak)n(e)g(replicated)h(data)g(secure.)81
-b(In)663 2150 y Fq(CR)-6 b(YPTO)p Fx(,)25 b(pages)i(379{391,)i(1987.)
-523 2165 y
+b(In)663 814 y Fo(CR)-6 b(YPTO)p Fu(,)25 b(pages)i(379{391,)i(1987.)523
+829 y
 SDict begin H.S end
- 523 2165 a 523 2165 a
+ 523 829 a 523 829 a
 SDict begin 11 H.A end
- 523 2165 a 523 2165
-a
+ 523 829 a 523 829 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.levien03advogato) cvn H.B
 /DEST pdfmark end
- 523 2165 a Black 72 x Fx(17.)p Black 43 w(Raph)76 b(Levien.)189
+ 523 829
+a Black 76 x Fu(14.)p Black 43 w(Raph)76 b(Levien.)189
 b(A)n(ttac)n(k)77 b(resistan)n(t)h(trust)f(metrics.)190
-b(Draft)78 b(a)n(v)l(ailable)h(at)663 2328 y(h)n
+b(Draft)78 b(a)n(v)l(ailable)h(at)663 996 y(h)n
 (ttp://www.levien.com/thesis/compact.p)r(df,)31 b(2003.)523
-2347 y
+1015 y
 SDict begin H.S end
- 523 2347 a 523 2347 a
+ 523 1015 a 523 1015 a
 SDict begin 11 H.A end
- 523 2347 a 523 2347 a
+ 523 1015 a 523 1015 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.maymounkov02kademlia) cvn
 H.B /DEST pdfmark end
  523
-2347 a Black 68 x Fx(18.)p Black 43 w(P)n(etar)h(Ma)n(ymounk)n(o)n(v)f
+1015 a Black 73 x Fu(15.)p Black 43 w(P)n(etar)h(Ma)n(ymounk)n(o)n(v)f
 (and)h(Da)n(vid)f(Mazi)n(\022)-36 b(eres.)56 b(Kademlia:)33
-b(A)f(p)r(eer-to-p)r(eer)f(information)663 2506 y(system)f(based)g(on)g
-(the)g(xor)g(metric.)48 b(In)29 b Fq(Pr)l(o)l(c)l(e)l(e)l(dings)34
-b(of)d(IPTPS02,)g(Cambridge)p Fx(,)g(Marc)n(h)663 2597
-y(2002.)523 2597 y
+b(A)f(p)r(eer-to-p)r(eer)f(information)663 1179 y(system)f(based)g(on)g
+(the)g(xor)g(metric.)48 b(In)29 b Fo(Pr)l(o)l(c)l(e)l(e)l(dings)34
+b(of)d(IPTPS02,)g(Cambridge)p Fu(,)g(Marc)n(h)663 1270
+y(2002.)523 1270 y
 SDict begin H.S end
- 523 2597 a 523 2597 a
+ 523 1270 a 523 1270 a
 SDict begin 11 H.A end
- 523 2597 a 523
-2597 a
+ 523 1270 a 523
+1270 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.mazires00sfs) cvn H.B /DEST
 pdfmark end
- 523 2597 a Black 87 x Fx(19.)p Black 43 w(Da)n(vid)25
-b(Mazi)n(\022)-36 b(eres.)36 b Fq(Self-c)l(ertifying)28
-b(\014le)g(system)p Fx(.)35 b(PhD)26 b(thesis,)g(MIT,)h(2000.)523
-2699 y
+ 523 1270 a Black 92 x Fu(16.)p Black 43 w(Da)n(vid)25
+b(Mazi)n(\022)-36 b(eres.)36 b Fo(Self-c)l(ertifying)28
+b(\014le)g(system)p Fu(.)35 b(PhD)26 b(thesis,)g(MIT,)h(2000.)523
+1377 y
 SDict begin H.S end
- 523 2699 a 523 2699 a
+ 523 1377 a 523 1377 a
 SDict begin 11 H.A end
- 523 2699 a 523 2699 a
+ 523 1377 a 523 1377 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.mazieres02building) cvn
 H.B /DEST pdfmark end
  523
-2699 a Black 72 x Fx(20.)p Black 43 w(Da)n(vid)e(Mazi)n(\022)-36
+1377 a Black 76 x Fu(17.)p Black 43 w(Da)n(vid)e(Mazi)n(\022)-36
 b(eres)28 b(and)e(Dennis)g(Shasha.)36 b(Building)27 b(secure)g(\014le)f
-(systems)h(out)f(of)h(b)n(yzan)n(tine)663 2862 y(storage.)66
-b(In)35 b Fq(Pr)l(o)l(c)l(e)l(e)l(dings)k(of)d(the)i(Twenty-First)h(A)n
-(CM)d(Symp)l(osium)h(on)g(Principles)g(of)663 2953 y(Distribute)l(d)29
-b(Computing)f(\(PODC)f(2002\))p Fx(,)g(2002.)523 2972
+(systems)h(out)f(of)h(b)n(yzan)n(tine)663 1544 y(storage.)66
+b(In)35 b Fo(Pr)l(o)l(c)l(e)l(e)l(dings)k(of)d(the)i(Twenty-First)h(A)n
+(CM)d(Symp)l(osium)h(on)g(Principles)g(of)663 1636 y(Distribute)l(d)29
+b(Computing)f(\(PODC)f(2002\))p Fu(,)g(2002.)523 1654
 y
 SDict begin H.S end
- 523 2972 a 523 2972 a
+ 523 1654 a 523 1654 a
 SDict begin 11 H.A end
- 523 2972 a 523 2972 a
+ 523 1654 a 523 1654 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.mckusick84fast) cvn H.B
 /DEST pdfmark end
- 523 2972
-a Black 68 x Fx(21.)p Black 43 w(Marshall)e(K.)f(McKusic)n(k,)g
+ 523 1654
+a Black 73 x Fu(18.)p Black 43 w(Marshall)e(K.)f(McKusic)n(k,)g
 (William)i(N.)d(Jo)n(y)-6 b(,)24 b(Sam)n(uel)g(J.)h(Le\017er,)f(and)g
-(Rob)r(ert)f(S.)h(F)-6 b(abry)g(.)30 b(A)663 3131 y(fast)c(\014le)g
-(system)g(for)g(UNIX.)33 b Fq(Computer)c(Systems)p Fx(,)e
-(2\(3\):181{197,)j(1984.)523 3150 y
+(Rob)r(ert)f(S.)h(F)-6 b(abry)g(.)30 b(A)663 1818 y(fast)c(\014le)g
+(system)g(for)g(UNIX.)33 b Fo(Computer)c(Systems)p Fu(,)e
+(2\(3\):181{197,)j(1984.)523 1837 y
 SDict begin H.S end
- 523 3150 a 523 3150
+ 523 1837 a 523 1837
 a
 SDict begin 11 H.A end
- 523 3150 a 523 3150 a
+ 523 1837 a 523 1837 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.merkle89tree) cvn H.B /DEST
 pdfmark end
- 523 3150 a Black 68 x Fx(22.)p
+ 523 1837 a Black 73 x Fu(19.)p
 Black 43 w(Ralph)e(C.)i(Merkle.)45 b(A)28 b(certi\014ed)h(digital)h
-(signature.)45 b(In)28 b Fq(G.)j(Br)l(assar)l(d,)h(e)l(ditor,)f(A)l
-(dvanc)l(es)663 3309 y(in)e(Cryptolo)l(gy|CR)-6 b(YPTO)32
-b('89)p Fx(,)d(pages)g(218{238.)j(Springer-V)-6 b(erlag,)29
-b(1990.)44 b(v)n(olume)29 b(435)663 3400 y(of)d(Lecture)g(Notes)g(in)f
-(Computer)h(Science.)523 3415 y
+(signature.)45 b(In)28 b Fo(G.)j(Br)l(assar)l(d,)h(e)l(ditor,)f(A)l
+(dvanc)l(es)663 2001 y(in)e(Cryptolo)l(gy|CR)-6 b(YPTO)32
+b('89)p Fu(,)d(pages)g(218{238.)j(Springer-V)-6 b(erlag,)29
+b(1990.)44 b(v)n(olume)29 b(435)663 2092 y(of)d(Lecture)g(Notes)g(in)f
+(Computer)h(Science.)523 2107 y
 SDict begin H.S end
- 523 3415 a 523 3415 a
+ 523 2107 a 523 2107 a
 SDict begin 11 H.A end
 
-523 3415 a 523 3415 a
+523 2107 a 523 2107 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.muthitacharoen02ivy) cvn
 H.B /DEST pdfmark end
- 523 3415 a Black 72 x Fx(23.)p
+ 523 2107 a Black 76 x Fu(20.)p
 Black 43 w(A)n(thic)n(ha)21 b(Muthitac)n(haro)r(en,)i(Rob)r(ert)f
 (Morris,)i(Thomer)f(M.)f(Gil,)i(and)d(Benjie)j(Chen.)k(Ivy:)21
-b(A)663 3578 y(read/write)i(p)r(eer-to-p)r(eer)e(\014le)g(system.)28
-b(In)21 b Fq(Pr)l(o)l(c)l(e)l(e)l(dings)26 b(of)d(5th)i(Symp)l(osium)f
-(on)g(Op)l(er)l(ating)663 3670 y(Systems)29 b(Design)f(and)g
-(Implementation)p Fx(,)e(2002.)523 3685 y
+b(A)663 2275 y(read/write)i(p)r(eer-to-p)r(eer)e(\014le)g(system.)28
+b(In)21 b Fo(Pr)l(o)l(c)l(e)l(e)l(dings)26 b(of)d(5th)i(Symp)l(osium)f
+(on)g(Op)l(er)l(ating)663 2366 y(Systems)29 b(Design)f(and)g
+(Implementation)p Fu(,)e(2002.)523 2381 y
 SDict begin H.S end
- 523 3685 a
-523 3685 a
+ 523 2381 a
+523 2381 a
 SDict begin 11 H.A end
- 523 3685 a 523 3685 a
+ 523 2381 a 523 2381 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.perng2005csr) cvn H.B /DEST
 pdfmark end
- 523 3685 a Black 71
-x Fx(24.)p Black 43 w(Ginger)h(P)n(erng,)h(Mic)n(hael)g(K.)f(Reiter,)h
+ 523 2381 a Black 76
+x Fu(21.)p Black 43 w(Ginger)h(P)n(erng,)h(Mic)n(hael)g(K.)f(Reiter,)h
 (and)f(Chenxi)f(W)-6 b(ang.)39 b(Censorship)28 b(resistance)g(revis-)
-663 3847 y(ited.)c(In)18 b(Jordi)i(Herrera-Joancomarti,)i(editor,)e
-Fq(Pr)l(e-Pr)l(o)l(c)l(e)l(e)l(dings)25 b(of)c(the)h(7th)h
-(International)663 3939 y(Workshop)29 b(on)e(Information)h(Hiding)p
-Fx(,)d(pages)i(279{293,)i(2005.)523 3954 y
+663 2549 y(ited.)c(In)18 b(Jordi)i(Herrera-Joancomarti,)i(editor,)e
+Fo(Pr)l(e-Pr)l(o)l(c)l(e)l(e)l(dings)25 b(of)c(the)h(7th)h
+(International)663 2640 y(Workshop)29 b(on)e(Information)h(Hiding)p
+Fu(,)d(pages)i(279{293,)i(2005.)523 2655 y
 SDict begin H.S end
- 523 3954 a
-523 3954 a
+ 523 2655 a
+523 2655 a
 SDict begin 11 H.A end
- 523 3954 a 523 3954 a
+ 523 2655 a 523 2655 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.rabin89efficient) cvn H.B
 /DEST pdfmark end
- 523 3954 a Black 71
-x Fx(25.)p Black 43 w(Mic)n(hael)h(O.)f(Rabin.)45 b(E\016cien)n(t)29
+ 523 2655 a Black 76
+x Fu(22.)p Black 43 w(Mic)n(hael)h(O.)f(Rabin.)45 b(E\016cien)n(t)29
 b(disp)r(ersal)h(of)g(information)h(for)f(securit)n(y)-6
-b(,)29 b(load)h(balancing,)663 4117 y(and)25 b(fault)h(tolerance.)36
-b Fq(Journal)28 b(of)f(the)i(A)n(CM)p Fx(,)c(36\(2\):335{348,)30
-b(1989.)523 4135 y
+b(,)29 b(load)h(balancing,)663 2823 y(and)25 b(fault)h(tolerance.)36
+b Fo(Journal)28 b(of)f(the)i(A)n(CM)p Fu(,)c(36\(2\):335{348,)30
+b(1989.)523 2841 y
 SDict begin H.S end
- 523 4135 a 523 4135 a
+ 523 2841 a 523 2841 a
 SDict begin 11 H.A end
- 523 4135 a 523
-4135 a
+ 523 2841 a 523
+2841 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.rowstron01storage) cvn H.B
 /DEST pdfmark end
- 523 4135 a Black 68 x Fx(26.)p Black 43 w(An)n(ton)n(y)k(I.)h
+ 523 2841 a Black 73 x Fu(23.)p Black 43 w(An)n(ton)n(y)k(I.)h
 (T.)i(Ro)n(wstron)f(and)f(P)n(eter)h(Drusc)n(hel.)64
-b(Storage)37 b(managemen)n(t)f(and)f(cac)n(hing)663 4295
+b(Storage)37 b(managemen)n(t)f(and)f(cac)n(hing)663 3005
 y(in)c(P)-6 b(AST,)30 b(a)i(large-scale,)h(p)r(ersisten)n(t)f(p)r
 (eer-to-p)r(eer)e(storage)j(utilit)n(y)-6 b(.)50 b(In)30
-b Fq(Symp)l(osium)j(on)663 4386 y(Op)l(er)l(ating)c(Systems)g
-(Principles)p Fx(,)d(pages)g(188{201,)j(2001.)523 4401
+b Fo(Symp)l(osium)j(on)663 3097 y(Op)l(er)l(ating)c(Systems)g
+(Principles)p Fu(,)d(pages)g(188{201,)j(2001.)523 3112
 y
 SDict begin H.S end
- 523 4401 a 523 4401 a
+ 523 3112 a 523 3112 a
 SDict begin 11 H.A end
- 523 4401 a 523 4401 a
+ 523 3112 a 523 3112 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.shamir) cvn H.B /DEST pdfmark
 end
- 523 4401
-a Black 71 x Fx(27.)p Black 43 w(A.)g(Shamir.)48 b(Ho)n(w)30
-b(to)g(share)g(a)h(secret.)47 b(In)30 b Fq(Communic)l(ations)i(of)f
-(the)h(A)n(CM)p Fx(,)e(v)n(olume)g(22,)663 4564 y(pages)c(612{613.)j(A)
-n(CM,)d(1979.)523 4579 y
+ 523 3112
+a Black 76 x Fu(24.)p Black 43 w(Adi)e(Shamir.)39 b(Ho)n(w)28
+b(to)f(share)h(a)g(secret.)40 b(In)27 b Fo(Communic)l(ations)i(of)g
+(the)h(A)n(CM)p Fu(,)e(v)n(olume)f(22,)663 3279 y(pages)f(612{613.)j(A)
+n(CM,)d(1979.)523 3294 y
 SDict begin H.S end
- 523 4579 a 523 4579 a
+ 523 3294 a 523 3294 a
 SDict begin 11 H.A end
- 523 4579
-a 523 4579 a
+ 523 3294
+a 523 3294 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.stoica01chord) cvn H.B /DEST
 pdfmark end
- 523 4579 a Black 71 x Fx(28.)p Black 43
+ 523 3294 a Black 77 x Fu(25.)p Black 43
 w(Ion)k(Stoica,)i(Rob)r(ert)e(Morris,)j(Da)n(vid)d(Karger,)i(M.)f(F)-6
-b(rans)31 b(Kaasho)r(ek,)h(and)e(Hari)h(Balakr-)663 4742
+b(rans)31 b(Kaasho)r(ek,)h(and)e(Hari)h(Balakr-)663 3462
 y(ishnan.)g(Chord:)24 b(A)f(scalable)i(p)r(eer-to-p)r(eer)f(lo)r(okup)f
 (service)h(for)h(in)n(ternet)e(applications.)33 b(In)663
-4833 y Fq(Pr)l(o)l(c)l(e)l(e)l(dings)26 b(of)d(the)i(2001)f(c)l(onfer)l
+3553 y Fo(Pr)l(o)l(c)l(e)l(e)l(dings)26 b(of)d(the)i(2001)f(c)l(onfer)l
 (enc)l(e)i(on)d(applic)l(ations,)i(te)l(chnolo)l(gies,)g(ar)l(chite)l
-(ctur)l(es,)h(and)663 4924 y(pr)l(oto)l(c)l(ols)j(for)f(c)l(omputer)h
-(c)l(ommunic)l(ations)p Fx(,)e(pages)g(149{160.)h(A)n(CM)e(Press,)h
-(2001.)p Black Black eop end
-%%Page: 22 22
-TeXDict begin 22 21 bop 0 0 a
-SDict begin /product where{pop product(Distiller)search{pop pop pop
-version(.)search{exch pop exch pop(3011)eq{gsave newpath 0 0 moveto
-closepath clip/Courier findfont 10 scalefont setfont 72 72 moveto(.)show
-grestore}if}{pop}ifelse}{pop}ifelse}if end
- 0 0 a Black 0 TeXcolorgray
-523 232 a
+(ctur)l(es,)h(and)663 3645 y(pr)l(oto)l(c)l(ols)j(for)f(c)l(omputer)h
+(c)l(ommunic)l(ations)p Fu(,)e(pages)g(149{160.)h(A)n(CM)e(Press,)h
+(2001.)523 3660 y
 SDict begin H.S end
- 523 232 a 0 TeXcolorgray 0 TeXcolorgray 523
-232 a
-SDict begin H.R end
- 523 232 a 523 232 a
-SDict begin [ /View [/XYZ H.V] /Dest (page.22) cvn H.B /DEST pdfmark
-end
- 523 232 a Black Fx(22)199 b(C.)27
-b(Grotho\013,)f(K.)g(Grotho\013,)g(T.)h(Horozo)n(v,)f(J.T.)h(Lindgren)p
-Black 523 365 a
-SDict begin H.S end
- 523 365 a 523 365 a
+ 523 3660 a 523 3660 a
 SDict begin 11 H.A end
- 523 365 a 523 365
-a
+ 523 3660 a 523
+3660 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.stratton_oakmont) cvn H.B
 /DEST pdfmark end
- 523 365 a Black 83 x Fx(29.)p Black 43 w(Stratton)19
+ 523 3660 a Black 76 x Fu(26.)p Black 43 w(Stratton)19
 b(Oakmon)n(t)g(vs)h(Pro)r(digy)g(Services)g(Compan)n(y,)g(1995)h(N.Y.)f
-(Misc.)h(Lexis)f(229,)h(\(N.Y.)663 540 y(Sup.)k(Ct.)h(Nassau)g(Co.,)h
-(1995\).)523 558 y
+(Misc.)h(Lexis)f(229,)h(\(N.Y.)663 3827 y(Sup.)k(Ct.)h(Nassau)g(Co.,)h
+(1995\).)523 3846 y
 SDict begin H.S end
- 523 558 a 523 558 a
+ 523 3846 a 523 3846 a
 SDict begin 11 H.A end
- 523 558 a 523
-558 a
-SDict begin [ /View [/XYZ H.V] /Dest (cite.syverson97anonymous) cvn
-H.B /DEST pdfmark end
- 523 558 a Black 73 x Fx(30.)p Black 43 w(P)n(aul)35
-b(Syv)n(erson,)g(Da)n(vid)f(Goldsc)n(hlag,)j(and)e(Mic)n(hael)h(Reed.)
-62 b(Anon)n(ymous)34 b(Connections)663 722 y(and)29 b(Onion)f(Routing.)
-45 b(In)29 b Fq(IEEE)h(Symp)l(osium)h(on)g(Se)l(curity)h(and)f(Privacy)
-p Fx(,)g(pages)f(44{54,)663 814 y(Oakland,)25 b(California,)k(4{7)e
-(1997.)523 829 y
-SDict begin H.S end
- 523 829 a 523 829 a
-SDict begin 11 H.A end
- 523 829 a 523 829
-a
+ 523 3846 a
+523 3846 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.waldman2001tangler) cvn
 H.B /DEST pdfmark end
- 523 829 a Black 76 x Fx(31.)p Black 43 w(Marc)36 b(W)-6
-b(aldman)34 b(and)h(Da)n(vid)f(Mazi)n(\022)-36 b(eres.)64
-b(T)-6 b(angler:)37 b(A)d(censorhip-resistan)n(t)i(publishing)663
-996 y(system)25 b(based)f(on)h(do)r(cumen)n(t)g(en)n(tanglemen)n(ts.)33
-b(In)24 b Fq(A)n(CM)i(Confer)l(enc)l(e)i(on)f(Computer)h(and)663
-1088 y(Communic)l(ations)g(Se)l(curity)p Fx(,)f(pages)g(126{135,)h
-(2001.)523 1103 y
+ 523 3846 a Black 73 x Fu(27.)p Black 43 w(Marc)36
+b(W)-6 b(aldman)34 b(and)h(Da)n(vid)f(Mazi)n(\022)-36
+b(eres.)64 b(T)-6 b(angler:)37 b(A)d(censorhip-resistan)n(t)i
+(publishing)663 4010 y(system)25 b(based)f(on)h(do)r(cumen)n(t)g(en)n
+(tanglemen)n(ts.)33 b(In)24 b Fo(A)n(CM)i(Confer)l(enc)l(e)i(on)f
+(Computer)h(and)663 4101 y(Communic)l(ations)g(Se)l(curity)p
+Fu(,)f(pages)g(126{135,)h(2001.)523 4116 y
 SDict begin H.S end
- 523 1103 a 523 1103 a
+ 523 4116 a
+523 4116 a
 SDict begin 11 H.A end
- 523 1103 a 523
-1103 a
+ 523 4116 a 523 4116 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.pub00) cvn H.B /DEST pdfmark
 end
- 523 1103 a Black 76 x Fx(32.)p Black 43 w(Marc)36
-b(W)-6 b(aldman,)36 b(Aviel)g(D.)f(Rubin,)g(and)h(Lorrie)g(F)-6
-b(aith)36 b(Cranor.)65 b(Publius:)36 b(A)g(robust,)663
-1270 y(tamp)r(er-eviden)n(t,)18 b(censorship-resistan)n(t,)i(w)n(eb)g
-(publishing)f(system.)24 b(In)18 b Fq(Pr)l(o)l(c.)k(9th)g(USENIX)663
-1362 y(Se)l(curity)29 b(Symp)l(osium)p Fx(,)d(pages)g(59{72,)i(August)d
-(2000.)523 1377 y
+ 523 4116 a Black 77
+x Fu(28.)p Black 43 w(Marc)36 b(W)-6 b(aldman,)36 b(Aviel)g(D.)f
+(Rubin,)g(and)h(Lorrie)g(F)-6 b(aith)36 b(Cranor.)65
+b(Publius:)36 b(A)g(robust,)663 4284 y(tamp)r(er-eviden)n(t,)18
+b(censorship-resistan)n(t,)i(w)n(eb)g(publishing)f(system.)24
+b(In)18 b Fo(Pr)l(o)l(c.)k(9th)g(USENIX)663 4375 y(Se)l(curity)29
+b(Symp)l(osium)p Fu(,)d(pages)g(59{72,)i(August)d(2000.)523
+4390 y
 SDict begin H.S end
- 523 1377 a 523 1377 a
+ 523 4390 a 523 4390 a
 SDict begin 11 H.A end
- 523 1377 a 523
-1377 a
+ 523 4390 a 523 4390 a
 SDict begin [ /View [/XYZ H.V] /Dest (cite.mojotech) cvn H.B /DEST
 pdfmark end
- 523 1377 a Black 76 x Fx(33.)p Black 43 w(Bryce)i(Wilco)n
-(x-O'Hearn.)39 b(Exp)r(eriences)27 b(Deplo)n(ying)h(a)f(Large-Scale)h
-(Emergen)n(t)g(Net)n(w)n(ork.)663 1544 y(In)e Fq(Pe)l(er-to-Pe)l(er)32
+ 523
+4390 a Black 77 x Fu(29.)p Black 43 w(Bryce)i(Wilco)n(x-O'Hearn.)39
+b(Exp)r(eriences)27 b(Deplo)n(ying)h(a)f(Large-Scale)h(Emergen)n(t)g
+(Net)n(w)n(ork.)663 4558 y(In)e Fo(Pe)l(er-to-Pe)l(er)32
 b(Systems:)e(First)g(International)g(Workshop,)f(ITPTS)f(2002)p
-Fx(,)g(pages)g(104{)663 1636 y(110.)f(Springer-V)-6 b(erlag)25
+Fu(,)g(pages)g(104{)663 4649 y(110.)f(Springer-V)-6 b(erlag)25
 b(Heidelb)r(erg,)i(Jan)n(uary)f(2002.)p Black Black eop
 end
 %%Trailer





reply via email to

[Prev in Thread] Current Thread [Next in Thread]