boost-examples-1.58.0-12.fc23$>{.d~#߈TD>7<?<d  L %+4 ,  BD  W  T     )$ _\  <P(89,:GO H{0 I XhYp\ ] ^^Ebdeflt u ( v8<<Cboost-examples1.58.012.fc23Source examples for the Boost C++ librariesThis package contains example source files distributed with boost.XJ=buildhw-04.phx2.fedoraproject.orgEFedora ProjectFedora ProjectBoost and MIT and PythonFedora ProjectDocumentationhttp://www.boost.orglinuxx86_64:#-a ; ]^~ IwNY = j#T O  J{) q| uZ ? 0 ot~ \ Yj?v -t~ \ Y o` w6~J Fj )a Z m R `(Z! &-'S  4/t9 S##J.'H E' z(, 5V~,|64,\5NkY Ig=OvV  |TqH Z $ r c AO  i 1 D m   |   J|hJ]n V0  5j{d}ҽl *'Y2*k;3$/ Qb{3i>t N1 .n%}f T|v\ 3k  F)5 W6@kf 3O < K ZPKl9 _b  G#{ & dmLu2!f <p7`  #jDOqEdyu<;?s57C %+%"I ej) u t1o/  R ! ^ kt >3   R(S  aCF+z _ #M # !@ "  <] D($  ofGf  % T k *ws 1 k30x 4` J?& C % 1a O- o_ H7x-Q*Oc0U  W)f z d @L 2 , _ 8M '  8 u u E&    YF e+ar q ka(,S c P3 5Q ~ |3Ym 8 +L X[/ H U!B  #<n  f 33D<b   y3%J gNZ5G \  LJ  Wr;M"~g|:d*-1X r+]tV o~0+@+k(k(iy8F pz  qz_ ]M ~ j 1  _w ? a r  Y U G Z  &   J+  })}zZx J 4f a  b    $ H  T vz8$+ # v>> k. 3OJ3q H]Ym44q,Xv"K]  9 - ]@   ; x N| a8 Ny1 g  f!A Q  e \,3  JL Z     ?    _  r~ 8  ,5 YnpGV# # %\ Ii @_G%h '1 %Ev< 5k5LLxVW f 0' !1tKUI M d % $ g42 gJbA% JO  @rK< I.#2~ sFB-", l's E? i k,b$X " H   `Pa:J1 ti0VWY%. RX ] %Bv  _9 OQMGKn+Q /.0L @< #!\I/c< U ? "%(+a"!3y:v) " I [***L7;4C-I;9F-S.GCHA*YI8UG%/ "6(0":,  - => %HB7, 0#3"#]7Z/;"7"lf)y A(*% /!}-7,G1+0L -661:)1{1!fk,kk"2'+*&Q&/:,/1 w%y.+/f%b%(%+[12W:} SBj.g %y 4t. ll _* <c(4~UQX4^j2'BE.z {9-S ,  Vh  dveee6C*z>{*{(,-_ jt#N  AR t \ "a }]i XU ,"d D  j s fCKF5Ki  (E  ]   I F X  \ ~ c 8[ E  D  h )pd Omb3jZ#K i ! $P){  ; L;K8V j!"'<u $ @t ~ (d*(D r 7(qmy/$u!(J$  v P!uP   ML{ 23!)H- s > M2 0N s- C M2 Q 0 (  2IA Q2 ,.0c q IhD@p(K o   8F] uP  q\y>$@p(K  I T  @ 7P 'x @ M2 _.0{  m j | sI6{75~ J} 5  K  v )2  QV~, $s| M  V( 4K#(#=!QYHJ | 4nd  j d Q! d- d jJYd Q 8O'y  po v[ YY 9_ v Ir EC!G2pR |Pd`k anz%T}d- } df,$ /cz = N 0q7 =!> g 2 }  )IQ}X p5vW~%w ^G @>J'Vw/ 9 C2(1J   GG$A큤AAAA큤AA큤AA큤AA큤AA큤AAAA큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤A큤AA큤A큤A큤AA큤AA큤AA큤AA큤AA큤A큤AAAA큤A큤AA큤A큤AA큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤A큤AA큤AA큤AA큤AA큤A큤AAA큤A큤A큤A큤AA큤A큤AAA큤A큤A큤AA큤AA큤AA큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤AA큤A큤AAA큤A큤AAA큤AA큤AA큤AA큤AA큤AA큤AA큤A큤A큤AA큤A큤A큤AA큤AA큤AA큤AA큤AA큤A큤A큤AA큤AA큤A큤A큤AA큤A큤A큤A큤AA큤AA큤AA큤AA큤AA큤AA큤AAA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AA큤AA큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤A큤AAA큤A큤AAA큤A큤A큤A큤A큤A큤A큤AA큤A큤A큤A큤A큤AA큤AA큤AA큤AA큤AA큤XJ/U"XXJXJXJXJUJUJUJXJXJU Q9U Q9U Q9XJXJU Q9U Q9U Q9XJXJU Q9U Q9U Q9U Q9U Q9U Q9U Q9U Q9U Q9XJXJT3`T3`T3`XJXJXJXJUvlUvlUvlXJUvlUvlUvlXJUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlXJXJUvlUvlUvlUvlXJUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlXJUvlUvlUvlXJUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlXJUvlUvlUvlXJUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlXJUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlXJUvlUvlUvlUvlXJUvlUvlXJUvlXJUvlXJUvlXJUvlXJUvlXJUvlXJUvlUvlUvlXJUvlXJUvlXJUvlXJUvlXJUvlUvlXJUvlUvlUvlXJXJUvlUvlUvlXJUvlUvlUvlXJUvlUvlUvlUvlUvlXJUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlUvlXJXJUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlUvlXJUvlUvlXJXJTGTGXJTGTGTGTGTGTGTGTGXJTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGTGXJXJU#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#U#XJXJU#U#XJXJTzT>zT>zT>zT>zT>zT>zT>zT>zXJXJU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhU"VhXJXJU+U+U+U+U+U+U+U+U+U+U+XJXJUUUUUUUUUUUUUUUUXJXJU U U U U U U XJXJU}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}U}XJXJXJTXJTTTTTTTXJTTTTTTTTTXJTTTTTTTTTTTXJTTTTTTTTTTTTTTXJTTTTTXJTTTTTXJTTTTXJTTTXJTTTTTTTXJXJTXJTTTTTTTTTTXJTXJTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTTXJTTTTTTTXJTTTTTTTXJTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTTTTTTTTXJTTTTTXJTTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTXJXJTXJXJTTTTXJTTTTXJTTXJTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTTXJTTTXJTTTTTXJTTTTTXJTTTTTXJTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTXJTTTTTTTTTTTTTTTTTXJXJXJTTTTTXJTTTTTTTTTTTTTXJXJXJT=T=T=T=XJT=T=T=T=T=T=T=T=T=T=XJT=T=T=XJT=T=XJT=T=T=XJT=T=T=T=T=XJT=T=T=XJXJPIXJPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIXJPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIXJPIPIPIPIPIPIXJPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIPIXJXJU U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U U XJXJR%R%XJXJTg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.Tg.XJXJT)XJT)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)T)XJXJS 1S 1S 1S 1c9bff75738922193e67fa726fa225535870d2aa1059f91452c411736284ad56689e71ef5feec5372a099fe5d58fcc1ca17ba5e29becdb5bb2a9023732afe4a6c8702eaec441dc5f7d6b3de103482d3a4de9b3ebe3aa096356ca27fa23ad26cd175c52e502e3b4efe50895977798d703260568bbdd586948ab483115fd952216c7b0f6294d93eca1d782db2ced4955dd88854f5b4d3f9fa4cbac6985ffd657f977eef9aff0e634b3cedf2a69e400f055d01e4ea645114fda772ab0c4704b87f2825bc40aad779ce5d0c5f21c13027d0f1772933f7ff97ed1ba86e42ae634cecccc488e77c7d93908e3fe654edec02766f679f79b381bc877d4806eb607b8e2e2ecde2c0aa6183c22d36e51c52a72830c488870661bde21781951180980dc7e3dcfd57889b9c50d00a6cfce6116331d03628e6ca3633aa9344d224eff6635e9ad62d1247f550bcbcf7873268216c0da69871c277b201eff2b12fbd5f119f6f8a032c0227d0468aaac4bf1226881ade3388dd2fd98dca4e3b5e78b7d3c7b5e88b739c80415086a8fc700b3ac1aac0d3066306db431f22a621da0774333b09bedd6fe25b81e1b762203efba4d4f1fcf07f49cc1d765e1e0a7f08c361fc817ddc4750fbd804266b4f7cb88b0838a3b406e432e7428a700e366672b4242e298669879e6e5a618c97f475484a1216e82f54e1125d4d606df9ae8846b7e361799ef6a1da5c8631afb690b1263034a313e7d1f12d728c6d81f0fe42533f1211229d59172aacc3fabede472fdc5ac11b4f1157da2d5c8d596590decd4b45938f20be63ec209fd9bf22197605025c8f950202fb390f7e57e5042186d5f19f2531c765fb828c707ed194f2d444ce6bdbdd2f46283804e873c984356173f14f645c5ca68bec33607721b3ad2fa63f0eb0c14ece949f66043b36055988145b090d416a0df4fb8cd09f71b1357e9b8d31fee09cfb2a56edea59b8b1324dd43c704ed8bd1124d01c52f28535cd4ca614ef9ab7aa0a710683e47a16b5688a5e8c7b18766118472c5afbb6c2940bb3e8cd8dc0ce1219333e36cd433dc662bf494145b62495a758fa7a5d92b99d1481d70173024379ab48571fbc4cbc12e990b33ac7e90813d2c2c5eb24a631e53a47b12f87064da0bb31f192baa06d94259be1190bf3f9b8638d344a36393922bc7bb2c7722b0823494a905291a57b17babfed278cbffdaacc8b0f7d6164cc1a88e51cc4b8abdc6db14550acbc160184c1f3e3e12d16e61d472dad413c1c417ad0c68dc7681e00d0facb2054a5599d7304d7474300322837c5e22e004a3a2b857dc93a2781b9543cb2f848edbc0c1f6e14c010fa05692adf1bbc2ebe25531f1ca871ca8ee613c52686c6886ee7c676294b3cbe6135366e3f64f5d366f5929f6863076fc151a162f4de3e247391d4a977bd48e64b222c699ec5bb66209a6de4f41c3ebbcc61bea811d45a0f1eef2fd3c0815229f2e698aa0ac6c658e81c896629edf43cf04db6f1ab7c03f20d08f80759fc7ae6747711c71f6c1d2d24f073a907066867d24d0d01d5c33f24e6a958e871a766c76ba208597628e8da5f09b22adaab93eaa0665a5a7e4d4192544f576e3440048e07530718ae379a223c5e58a33a834bf34a47eb6d6e0fa4b270cdf9738f25c713043d15f2979b9e689cec6783febe89c2315c7787d8e01f7599299719b8a8221ea582fbd94ce119d1afda239a767a596b57871a2c4fbb0c9296b36bd7244da01e8cf7f4b30c526ab2506ddd74bf835788f0e6a57430851ba6a0977c0fa7f2775799627e56a4e48594b518af7e9b8907245f76fb4838fe83452526303eacc81efffa1b2b94e8c3f2346579f498071b328626ff67c3b35bbc0fa9d6c0b1f8445dd7fb95233d58feaf451bf78750f090a393abead37a0a547765d22ac91da84b766ba9436434770cc28a7f502226bdc88fe9bd8c3d8ae3dccd8a7cd6a8f9095565a568fd8cbb4627cce34059c7aaf60eeb1ad2b0bbc778369aef6f590d887e17b4c6ef607b22a8733a6619482c0ad57718beffcde55c42b13d5f6497def9762d7dfd897ea948d886d07cf9987df190cc10dae7b5798c5378c97478f0b6f6505e75d4b69340f2bfa21867e07113e6e8ccc494a48c47d0046cc4145c127bdede3f9e363a6f0ad666f5dbd40fd369781b0cc5cdd2f0f193fddafc5047ec24b6bd17be3463d9812f2b56364a350e65e2e729b6f0c7f409e29f6917e3b25246bcfe6fac5d190d906cb8457057d9aea2c4e45f21a4cfae6d6b431d3a46132c0d6aad541cc92a01a22056fafd6f0a41edfd452279e8655fb232e5f66251600a2e9404de1c3de56f9fc4c54400be3909b66760537f2501632a8dbfada19b5d2d218b037fe26539517863915833ab3ae85f7b63aead5700deba4421b12d33cbf3119e83e5a1680b7a5df12dc2f096ee9df1133084bac92862a6d641441cec9b69d4d66cb583a84f7bba78a46067e485b37e99679d4b1a341512d85aa370508bcffd1e7540c1e91dc6360a415fa484c7a585eebfb772e570abf5dac4a00d599bf075cb2f6772790b3600dcca3b91f1f3df0a1a96f7459ff69b62aa66eab29daa529a9527c5d29faf0ac468685d117fe9451d43dc75567db9c178b99ee51afdb0bdb3309b2f6f44b404468bea33efe4093e16a9cf62139fdb9d7006b620af45f4c99cd4747b386f878b09392c4db7b3c1798fda05dbb8f755713c551fed7ce8056eff2413065dc95d22da5f04f2d700049482880fdbf847f5c145d07979e1e402fa7d0f4829e6b8189635db8cde0852afcac416ed557659ee1313eae254277688a94d59d571be9e329f999b73fe445272c48c1fe696ed3ff19a6c047b428005c7d7cea79e12d37b65f9aaceda2ef9a2f009a1701a3fcf1eaa3f1403f701d1d523712b96e89b89cf96d72ed9cf62eb8e522150026ff9d03d7ef861d0a73a12f5d335dbb7a0f9ab9ee643ef96ff471533454d04ca4d1a7511d4c3b02d2f05509952bb074680ef24ccc51d8fb16ea874fa9f417b77f2b1149cb4f5047b8209118a45a4ade3fdbd3278e844d3892a4ba77cbb7838985c212027b337036c9551c18a54ec8a4a3fc7fc28ba7a8ec970d7d5ab4ab67567077ea6c7f09f7f3481df679d6112bb72f1f671830531db1c22033455b7938a657d82b1331a201cbe5d12b27ec276fcdc02bcdbcac84c48f010eaec751b0e8ff1f52e549fd08a2f041bc7cab0b3125bb755215252d4d9baf7b2b2be3b983b18110628f84faa249ffc67aed7be6649d6d03d855bc7ed51781c08cb16dbeba665c3a33540c9dd4c65d68bc287dccfe950d5be65aad7765d9b632ffe72b8791ec595d1aaf9fb58c05d681a37bd3287423820e1ba7b6bdbbe59169170d1dde0093815072094182f368c34041ef3058ed29d2796fef0ed8ad640a61b765cb4f7d9fecd61dd0b79395cd31f4633de325403436416a8dae879ddb322cb370d4776edfc4b2408ca29364d04b1af5ace31e6e780c4b29f01179396a4c329b00013be35feb776e6813295152eb1735a64f0a61091eb0aeb00d4897c3e48f5f063c5bb16d6c70e1a7ec96f01eba7e2274e7955f9c9c2bcd4dada52af13b6b444e91b11f18a7ea12e499c487112bce8c47a5d718705579bc22fb2e7b885d936e8aa36204968383fef209f083d6238605415e60d1c9ea83c772f29ff6302edd818355b889f6dcddef4c3fd895efabc3bbddaac0aa9a908c90bde8d0fe33365f3d366530965ca67b90e484d00a93152a69f0451084124002907da6c739e99155f0a0796ce9d260c7f94b51d597209b6ca829a6998b8fdb6b863bda87a739eaba131adbf2d142ff2a37473975e625b33d49f4a434089ad300955f3a10aa6f8ff00b0629fbfff9c615ff6031c2094338e30fd999776cef3e4cc894ceb6a0eba186758e12a7bd68aaf3a66609c066c5e4446a91dbbc0ac8cabadc0b21568860d2176009389e9e9cf8878a8d4aa97b2dfeb9936fc1f1e5b8f6c41f0aeb8273a8897b834e07bbe6cb1b5dc15cc7de57eb483688a18695ecd6c9fcf49b96c2b0337d7da346884a8034459bf2fc4782b27907d8d232fad71875391965af063fa0c769c7608ab7785ac18ef8d9a41c196dbfac3f0e0949b8704fe2745380614ec17c45cbe8a6612908172b4ea78e86cababf5bc17429240ff3032d262025fea47cf1049fb9db35026a3d89529691da4ae91073654438b12c9fc2e81d7df08e198d92d5b25dd13e43e50c11e137b8bea330f2af0a817ad944606989726dfb10d1bc0d24dc9ecae07873bb948b178bb419501cebe0aadc6904e7ae702fbbb1103259a75aff324febe278209429a85a6eaeb0126da18a7f701897e759a8cfa700a2dcd01835daf7ff7bee81de4a95d099b5f2dfc80d52a57802670f1b4bbc120ea2e82bf23939f50573a2f0858af08ffef4043df4764eeabb13585c441745ae467fbdc92155a6e8deb159be0123994a410ccc5146b53a394d1890a01597214d7f701872c0e60e67997fa86291835059ab524208ef52024ae86aadb3105aa0348c101d74805bf17478bb39a53138a3f8e6ad70a07578918c520b983acdb26278b3bd7eeb0a053d03e66d0c5d3f54fcc96fc1646504429f596c80af7b5cf33fb2c8e57957da42fc32fc90ef651e48268735f22c9122cf9f7264a399c5e20ef7b936be1c4d8c7a8c21da63a05473fa6bd739d51a5609d6198eac5d62886a2dc98f0fe97230c54771031717ecad8b124284974b6efbaf1700a1bacef5484eac1a147cea66bc2a7327da21af33f20da0feb4d3879debc135ae85ed12ac11c0775914638de2b493b7a94622d810b241c78866b711d6b07ec53894548b36c0e8353ea295f0de09c0d45e318e54fc19aea2cad8ad471f33cd54f102b9908aa558535be6d41eefd38534b9418ef03d8fd60bdabf6ffac5c9d3d2ce03a9aefb9a553036e1c677b3fdb0ebfd3b4a774589b4d115d6444ea4efa43e26a9a4052fa1f90856a49538fe1626632daf8121e1e747191d15ffc0b79a3d8a27620ce2d04a5fad0880dad46fad896af4202d546bb59d9809afb024e97e6685da1fe292472e47760166231c08dbdfa29883f9eefd4422ed2f06e26fb5bfb0beebaaf2c6e0f77e3c208dedcd2cb53f200c88ff3214c38791060efdb1728a112a5b421ac2fa4a8eb156fb864db236ae0a7a003cdaee59c0e0e6a6b9dc071ecdfce721f43f0c00762d61937a54143e9bbd067662de0823e78adf68b344d13e2dc2c25be60b5e04bda7d6b6a9aa133668d467f68f44d073ce048d117f2f3175e0a1960b1b082eaee5951ae0a34cf222b2c48d207c9ebc1194d2fc7524a7981b50cb521ff627614a00a6bd8fa21abedcebf67835b536cfdb8ef8ceae444ef3e0cfb638f66143f82014d57c6ea07c1708053a62e55e0be33b0925b67a017187b20e58a8dfb761c636d8ddb864718b6e4dfad74f51257ac982bce764215c7ca9ac196f8c43bd92548b853b1d0d18107a4c45e103020587e0c022838d859af0feeead82d5b65230eb2f00b6e7e77d0bfff15f764a5378ac0a618e3910a3b0ad5c23d4b62347133dfb4c9114680d49c8c7025ff40a45a34f20424566479ac01516d0b334b3424b36500997177aa7e23146308e0c0ea902ca9d5ed87a464fa5d81c13f27e1f3f34bae4d6c75045f4fe7d5b06008e61024690ecae106ffe6e5112a6ebc2a3cd0c470a1c6f73d9b6c5543caf561d13a0df119655f967658e2e7d4f8dd2ecb2eaeda64fb1854188979983f4bb1fa1db89f46d8586486c2251e43200976474c52192cf50a5fbf8b24d3b599244c8afdbb4e5d64f54073beae968fcfbd5109b04e10a1de7fa0d263affbd20ccf2ab82c3ad21d5e67541454fa21f53cb201a54c3f7cacdf349c4537cfc0929aca3ae3dc880ec55d263cb0d8d20c749d486a462e486fb555ccdc2d6e8a3568a3c8ed9af0a4ab3e1fe151207676f601ce8d3ef360030ff1de9e357242f3102a8c62b1dc05d2d3cd28c02a4877bf66cfac182acb44a342ee93c1a9e076927351a3e8d6947c8aaeca45a81c1e609fbd3044d5739a1e09501d58402b0753ce3bea2293be3a07add637e8d3d36b8e5dcb9374c66452cb62a92f5c796af88b931100a09af804a83fb275066b50e98ebb955942bc4eb5b15ad8980485117a7132dae097c1c99db801c8d9215be4daf9e906b61a6f11b42a317576a233f19628dbf1dda503125092322f8452df30430ab7d6e159c7feaf473f69a66e6a512ff9ca57ab9f79cb84c4e7edc05608224aae8a15c1c45454eab684336cde86ca307c6f5eb9875873b1aeaee99a784e9e214a30f00f45f60169512f14a43195028e37d93b0b8bc2572f3c2365c317757b38baf4e93c84902220c3117bdd04e7b493742d44fd302c709b6b5b69a01ac0741052fda2fd776261100ce705b516154f20030b96617f93b9e8fae67f2025c6926ecfeb4ba9a327e885670103ac21a2206d58104d74dfc509fcb59f38a41ef0b624eeefe44bd0a0eed4a921f2ca87bed80a3c231964be6c576fc9ff972ffefd68671a770d426626cddc42caa835913582db1c23436f3b0a8014f780877c9f9209dc1628fe7c01e63199d585d303c07c7714b566b5f01a1cbdf94a5a6bf14a346ab5f7c5e23fe9464be091418391b79b8b4386df221edab8cdfa3a1ae6f69401bccc01c2e21e1c90864f11542421116c0d74026d5aed04adfea4f0f0853954ecd8a27b347d85a68d4f0dac5a6e867daca977e51d849547d163408a642b222b162b666b2ba3fd2cf62f051a88a5d386eff835c9855f4a58950688afdf2779a86147db83f5ca3d342caf154886bde654bd3387a1b2a299b1280228ce9808b43e4a22e9d164794a18f652327d5ef674eb0fe7bc1c25de26e9f3f8cdc28926595c73091c80dc2d275eadd1b73a157348bd0ff536d25ee997dd39659ae1df0852cfbce725b501cd2d60be27ccbc4ee3454d14a0bfe7d03673bdbd231f4e63b3d7335455023ce167c1a549166a7244151625fbf4490b1fc986da10665361e124de25607266d66b989e0f843f7b94dd7395c91e5407143399b34e770983ef1000cd20c5351e5be763506ada220506d1a92cd03b9b4e46f15e2149455a5f34f5bfbae43e9f944afcb265508352cdef12e708149bd5fffac4aad443b911ddd64b259a078a89685e5470c9e981452e34fa3ba99ab30e480ae4085dfcb3f34e117a25c13e6672a60f6deafa4ba80fef8b05e46dbc15ddc76a7e5db8bec2a25bc11fa839aa7fa30629fc50d7db55d2e9c4f54eb5d4b540a7d1bf6f96565f50acfc18f984ecd9f10e24a9f3870972cab129bd79654085decd84f5c11c645343c6910640fc5508df65258265d251e65f78b5c702ea6325d2fc941d26c49fc1998b4ce3420b88b3a4561afef56214180c52687480b17428ed1fd53b030d794ddf321e003fa27ad16bcca3d0cf953e8ff573ba719ee77e7a80925ccf3c1503f8fc24854f97ff193ef2412954823c94703b34062acfdccb23919884bf93b4943ac40cfe0f2960778961b643c7c6164a448d7b716c6707542fe5199f532dea43f8c07fa9b411c650b84f25091294e71b52b807b0acdba744f3fd716f2bae00a644ad2d035f8b412064bf0a5efc13e6368750175d70ce209f1faddb70e8e8e0e2038f1dfaddde1c5aed21c37bb2309c2d40a05befa40cbfd552c1674548cfceabd181b4503b3c20cda807aa1209f152ab9324828bd28533ff50e608f95dd8fb5dbc38eefcc76b9feaf196249d460f2d1217bb414f2c3cb380a12235478d074a3f693e1a37be6513940596040220ebdf7d1881bed7d88114afe9f944af1bd746207cf4e2c3552e94426c65b525eea0533a00c6fb833eae14e1701f9d8b1bea0d4936c5e97f681eda1826ef553de7a511dc4467a667024d1c7a9e68b18dd46e66e131f16a7c3e1a57f487c3ba5972dcd343caea7b4f81919e48755ef2fbbd072e2fe6fb4f99f50158f4bc35318a0f534daa96e4cefbe9da3381b5ba3fdef755bacd9a09d78d7956899fff7921c998c8e01e597580e4e69730bbf96706f5acccae4a4b25183e70d76fbee105e87da6ad9f0b00e8cd7aa909a42784e8cbfc592305bab638e8214d2202e8e8536e3dfdc33b238ff030f008cdb4d171770adad86a60527286e66d7e4b6da97b7c6f3e0d81b6a5389a44539782558167d170cd0dec8a800e3d36dbb53d874c3ed79310f7f762c6c6477ec567d320d693ba04e8b3d44d8c8cf10f144dbdf6407f11b578825c6b16f392e81c1e0e12e35bc1dd0a438936990db3aa22a62cc784dff0c90e4232730ff24e3604e2da471136377038e086463f98b207ea8f3054ac386732ea267f95927127ac95f6ab523753d57dfedd8bf66b1aa8529a596103247a6afe94b9dfd7f9683a4cf0d728bee720965c969291bb5e5695cc03c94c807851d5d1a85f47cad7f7043131ba42d1a4d08d18b24db9bbcf2a6d5d4240606aa8be007cfd3eca85856c115342c157695357b3a331a055febbff6fa3cd94505c524b6436159b2ba769cbc609bb832da62f99e3739bbee1346db2c45495027c25a0e2cc70766beb0384d2f924bf9fd53a9adcceb385ccf2af4f33beab848d8f2eab2e89b30267dd663a212b06c3cd739e973950b1468b2182547ab2c01c8373c3d80bbd6fd7b1f8de0895e4fb0a83d51feed5d13bb54aadf7d681dc0492b170940465084d6e003c63e58c9d6b1c74338d09765ab15c479351b9926a8a9706c2efec936b282bed847d275c1e7b785c8d237fe06862ee69babb6f36c796b17bb551bb8ee3a2ce032b97c90a0bb6b91feda30f15917d042d9ac357e9497b6809efd3969f1809d3b7d70a79c1d361502cfca7d8e6e3bf4a405365d542772bcd2c1de2e59ce9bec88e0f00e78e5023d0175a2a54416905af4773d7341ea26e8f78c3e0550c3e42edea3409342a40696dd540ad7909bd4c9e59c1f6c6e9ad211fef21a110eacf9f2611dbf7534a5be11b380686ee2358a8944a221091ffc84b2a8c4bd435beb9f02b545f2d4d2b913225da18fc4ea38552f317c41c1aa77f2cad8d34be2c1dadd0f22981432b357e22bdc4250310d240a5f6908c6703fe67b61a3b8bbb50d3c74e6657df80841b9e1fd9589ef883102b38a0f006f162fe275e229006b61a1c7f1208ebc2b97336fc23a68c13e4612abc341dd129996301fad237e42216e7d774a353347fef53e7ed33cf731ee9bddfb016e464ce0321883f6385b62b39c157cd295ee646e57b45c55352804be3a64e38b2e45c147e7b1de5e4b1f55267fb0011aec2b3cef7c1618c070173f416e141080a2c8bc1025704c43030d1cd6581b72b6dcce59af80dbb9e44f54745ea9322ac009c97f2e96b33d0cdf39724bdbaf400308cbaacaceac6539bedf6e6440bdd682f378c725fecc30cc3413ed023899502137df3a23c601a39170844624a0b8d7296251b4b3aba59f71a770476ba171a169e1219c53fb8c6422a4d4ca64a89132681c64a77b73f959ef23c2198c907320be0ab2ffa03d8348b12a349d886cc0a70ffd6506356085794f5da34e8250a3891dcbf46ee4ba8394951b809192e61e62facb3d55b37d841a5f270a445ff6e8152f28535cd4ca614ef9ab7aa0a710683e47a16b5688a5e8c7b18766118472c5afbb6c2940bb3e8cd8dc0ce1219333e36cd433dc662bf494145b62495a758fa7a5edefc830d2a150a44c2c8ab20f3ac7c4e9dcfde7c9a81c0ee60f3f40e76fa6024a631e53a47b12f87064da0bb31f192baa06d94259be1190bf3f9b8638d344a36393922bc7bb2c7722b0823494a905291a57b17babfed278cbffdaacc8b0f7de5c4ced3e90ab6c18e92d4bfb11cfc903a56d2c26e01c7c64c37a72c40a97cfa493195a726924db946c2c4bdeb01cf88fdfa110ee282a21a1f60a98388b71f72032e1d3836163499b676e85279e6b72cdcdbd455b3a55d0457495d01710c55e673d70d037dcd0304ee6cffaf9d144fa9e49e6e1fb9bdc401504cf6f084dbc23269cd6941286558324a393812c73dfc0485338859aa196c5a5bbdf23a7dbfd47d35f7a0f369740b769f430069575381e81245124d31a4d6bdd75ea348bf4b5342f073a907066867d24d0d01d5c33f24e6a958e871a766c76ba208597628e8da5f09b22adaab93eaa0665a5a7e4d4192544f576e3440048e07530718ae379a223cd93accc86a9683a51fdb0a5fa8af48a34c638a3ed3985524421baa6777630c59afea394bafa7920ae624b61ac6975f3275ab28730b3f5b78dcf5f22a6f3b7c9e89c2967204a0a48b0793d484e88a60306f4fbdcbbcc7d08fbb430f60507d1d9782a1ee973c037f7688185d847a1df983324f7d6668705c1f1260e5b62a7c90873c4fcbb2d6ba68c3ef957d15e1438d848724c12e03202f5b5522249964837cf4b4f728fb852f1dbec117c9773f33945b485e30bc46b491dd898a3e2bd01f7c3144dda78b155aa0a7d4a22bb8e1479b5c94e52b12b25228ddd5e782c521541d769831d3c5c7cd42b93195cd1451968d9ab1a0832e4c609d61a6e4a7b0f87cbbc39dcd79ef31a20d28f3e5875ed2abee5af7c2320426bde98da054a0d5708a7a129df1133084bac92862a6d641441cec9b69d4d66cb583a84f7bba78a46067e485b37e99679d4b1a341512d85aa370508bcffd1e7540c1e91dc6360a415fa484c7cd15bce214252f608374f901cda5a4736d99e3c19a713e77ea8e93445edefcc9d36514543e6493191e43086751ed1aa2f8b6c7223bf5ffe1c1d98b4ecf2f923e284ef4295b8f56e2bfd5c16fe4e03d15ee800c26e82d43f77332872eb2aef2fc03d5d649a43e788921872b2484972b46737723794ef43003d31e8213963c2408798fda05dbb8f755713c551fed7ce8056eff2413065dc95d22da5f04f2d70004175833553c81d9a946f5155232000b0a739580eb8f9faac5d98872aa46448e976ff4c4c7b1750bd9202efb00557aadf26b309244cfa1bd52f6e909de43416becc48c1fe696ed3ff19a6c047b428005c7d7cea79e12d37b65f9aaceda2ef9a2f0d7177ff6e115cfa025cb4173eecf44cf0e404d2126efce1385d05e6464cf95da2150026ff9d03d7ef861d0a73a12f5d335dbb7a0f9ab9ee643ef96ff471533454d04ca4d1a7511d4c3b02d2f05509952bb074680ef24ccc51d8fb16ea874fa9f3da5aede1563cd881de2342fdd32c939136eff1655951d6f4c3a63d254cc69d8b18cb8c9fb96811c15e3fc3f97adc126aac1395d9004e08a6e517e6fb59d8247ca0cf2fbfd6583b331e2fff0a417d3ea42803f3ffefb57dc775a0a1639a62f0bbe7a7ea575b0ac7c8a07807a7d710e8263dd94531e5615c61a6c92f4b1e444019eb56daac485e2cf669ddd5f7dc98e5997cfdf14d7153e3d7ccba5524e4959d644a8008f40f85ff7965b63e35cee98f77cf05b6ba988097f506892c08c37515296040220ebdf7d1881bed7d88114afe9f944af1bd746207cf4e2c3552e94426c3709e247d24b3ca05e78c4f493c70269f2e36bf96095c901bf58dfd4cc62277d1c45455bb343ffcf6a6498c4449b3300c90b3e73bf9c36a3fcd2703c67576bdf8667b2a51d9a22e27a5311c2370b6fa152f98ebcac81103b06704453d12fdfafd5f01cfb6617b01abf9265f64ebb8c4ce62b192d20523dec8ef05a9dfc8ec0331e1269706ceb8f11ca0571db90639b52e773f6917d5f55d2cd3554e22b7b6495dc70ee049441874b1f90bf9c337e094f9e528a79a216bd8585e791564bc0a2677a2337d211f571f094bde6f1aa477c84cdd80f4d4d2edefd283b605b8a5207bd0443b05bcf2974d495324bd8fcc3da7d5b86fa088c7341cdbc04a84ed8dce6ba681e2ebb8b023dc1d66d437a912a83f4074eeb4d6af164d08defdb0cb3a57424113922cdc43314c188159ed9c499b7fc0714397a733bdbd551620e462e0fa4bb5def22043e8f4c228001cfc8b22a9e8324f974e9e96edbeaaabbe03477fe7eadd85c34783e08e3b23a4946851a506e8804026e5f9fbd6b79e0f1139fc2f88313e9ec8f5d573052fb306436a0a13591fd4cf9a4f548f921db98b8ed2a3afc95558c8864b62b5f30da889ca60d2193560c894d7cbd3257e8abd2d55daef7b75b44e29a2b35705f1d6e89ae3271c8ccb7c14088b28a5635d2a2372489bacbc094e0a1f5c0ab1ebdffe032623aa85334f334e5eca113160a50592b5aa8a56c23ce6b3ecf28a779f69732ebf172aed75c70c6989b22e709daa4539ebc836c775a6adeba3d1301ddb05d43f86328757157853fcb167bfe25340efd9237c8a7724770a2e72f667c1729240119a061cfefec288d98d1fe698ef63ad4c1d08eee5c1a63104af3d5e70b00a06a66df6c7f2bf3262e47c30a1114a028898b9e1e47673c0e97600e87128ac00143c40279cb7c52ff22b66f5547b5c8071ea4df6095e689cec25772c4e7a7ca2aeb4ac819d1c2a45ad8ea303c7b3825da739feefb056d70be84e2004cca54fbe66bbb82487c4f868eedb1a0502bb454af6f6ca34502a7494dcd49b33032b2d62f1230c807b2c21069c8e159cc9635c3cb9080345295134bccb516b836586893fe82da4f9f1fd0d472c41f7b7ae7fa505d46bf72df710330b40f0f9c67769c90035715be7d05ad51d84ac71f48b1284cb13cc0f0730f7f844455433ea653b0a2c9cf6a0621ce2b79824be6a1263e5a34cee53b34e6752a72a998cfe21871f9fa7ded5124021a8f8ecfa71e86367cfb47d478d0d874e203bcfed00fe42b7f6925dc12c811e16b0df5dd41a4df954c44b278294d651e234c15e8ba9a0f57e6ccf4f96fea54c6804f3514523220928d1e3da63d2cf9f3c27b94a3e44ed5e053a3270cfc62ef9477629ef71b2f5a6c045f43e83d04ad33f0c6a010d19d6979658ef73f51358554fa70f74d2802e6d87d73d5f353352ebd00ac48c4ca3d00c3056922616b71f2e5e5af7666bc49e023b2c05012c8789092a9a675eb388332269645380ddd6852de8f5452c879e44df4e9eec0126c93a20e34636476b42345a121ca342d05d152c8de60496fb87015996916be21d4a8a8105b00dc549234b87b36cd3c668a92e3699b262dc735ddd2704564d78ecf85a8ea8b87d583f77d83b3b9d20a32537434dba2a593bf617064cd71a94c07f316127e519c511a40cada528910e34a3687814198e489cc5752dc4242858afaba1b88c965bf5a4b637959f8799a5c6fbe26640490b9b9fd563ab7b1b969ae0d223e82f78b6ef06dbdf9cebf59ac49b7228e4826970d5cf78f72ec59a039fc8d4f052508bfe41b1d0c7cceac87fa004e3edc65222787926a9103d1a318e42b53578c13c204e1eeb009cf5a74a1e07144a94125a6ec97b5a7c1b1cbb872a9765ac8f2dfbfa20f1fa6affe3b96eba6865159f6a1e0248854960bba2466f091d730251134fe1f349c9711691fef9a6b3c7a49b3727240a702129d5d9197694155f7b0cfe75f75af15668dfcc83253ca9dad8e115e8e55c2b96180c8a000d1d261d12f3eb3b7e2d6c6e7a29e14e78958efe0019bbafb6a29b746d449cd4b7544db94b37151d87f8cd186e6501c45afba2ecd813f071432c709d7674f5f7962fadf30895dd1bb5a2e4ea7cd6dfd03a4071cab8a6c17ad7e4ae23023f58ae99620d682f9f5a3c5a86d283fbdabf47cfc7fce06da26513a6c49d32cf30644c4584b04172f41510c224d5b6d3aaccca51dfd21023cda8627ef8e736979498d65570512822a067afbe80350db9bb27da018e02e4991a2421baba7bfa0561944f3234a62ae99aa8d93248361d9ec65e7ab05f6ec835b486d8c5776661d489c295bb513cdc2ce877089e30d1741dca846a2a2a2a944512af5d12e94413f8c8795c2db347083c3962dee832d9b122266e364ef7f16f5155caa654dcd4964595074151e4d78e98edb0a0162c2b4a02bf53485df477c8d04567505f9eb69f1f4d899641027349e018df4c1c86fffc02132a0cf6882a32f4856c6ae748f802afd0e01963c78fb7142ee01d6ccae67426e6c1af8756ac6c6fec30d04fa25f3dba70630cbd7d2e55692296db627879942e776741473e175cb01068271b340c48148677ac50efa85aca909efa81ec9aa5551d6f587d37be2739e971579ac736034f16bc9fd7b62c4fd1b7d8f8b6d38a6759bbe259457c2d8af5c717645e5ad8f5315ac3da8e134231023f74823f0f30d022e05af610731554b8d4b9c16251148a81de2fd9385b50a5c41969fd00fd89f27a28eda600cc1c9541a356da3a48a633ee3647b4f135dcf24dde246d10f0323bd5c72e3fb296b98142d78eaca6c9ce1a190e7a0f6fded44d67471e28da75e07028d2187dba2d76e8520adc7bf045ff2a67f7f976f70f477649a9e8b9ba68ee8fd70a1956189f02e8a7754ac15fd527d7b4102cde35c9f3854b78af0dae3f5d66fb845849dbb85e2267b96c60b9d202ed431091614e937b8ff7ac7f68298ec8ce2c4321206aa141d5c30166f3f51755c9b555ab90a73b8d76e17444071b6031ff9305be7860e03c7bb0ea93cfdb0f7b9ac71c24c26abac1a40fb5f68078feb09d8b50277cd2f32f0aad3e61be417a26d4950da2a7c8bb4a75bc88b90ff8f2816b0d4222a20c11110363057d1d6982c3cfe013b12b17f603f24ebf73daed04e93cd62a88d5654862374ca69d4ba7dc49531374eee86e657238a5dc98519baaf3c98a53e12b1bafb540650f572067bb96b1072b7434e72f615d8f3d9c44a7ff713d677bc72a769ab2562961129c1075e481e9adecf0a79d4a6ed6d9fa510f20ff9e2ea8611a655ce1e9ab8236688882df1d8206bd6abdd003b92f8cbb080c4cc4e3689048b2554ea285daa3416426c5644a1d8a18d9775084ca5a33a331b424ec3ee358de2a5c83a7672b5018576ad782f8517175d173a77ab63a612d7c5805d95be759b94f03fbf62853f936dafc42172c1b84af6a0c8832c5fdce98d280191bec6e867d5d347ce6dac0d71e2dd3e5f0063ac62abf6d5857d141df54ca0c49e5895bd26ad0811aeaeb24a174937d7f9bd88f8f94d559080bd8617edd45b2bb1b31cd31af88639cc38b1a5ebb5767be101f6879555485fdfe068e5e99c0159db5101816f92334dfb9851c3a2a05bcb6a9ecc6248b66058247959e6fe2a1892e4711ed41ea772afbee1307392a9a41dbe3b07066d06dbbaac87682968971e89e3480cd240fd29f6b00ad2d86c2ea2ea0d2563ad5ed37443544286931786cecd9b9a8ce5fcc55223aa944712542a63640084db2b7a2259ca8b7a406ccb70ac51e1884eee931f4cbe2c2c832514c7d512652ae9f0756b7bfddff6ad4a71f6e6c05a9796d3cd047bc302dc150c3232434273860fa70b498a8c55e8ccfbceb334fb491d01b5a3d4a807111d8f186041310a2cac24976edfb263b85c11d33c5804a089c7311bd44e8626229465972e5568dd49de032cb3d35de6046415a23a6195871bbff66bd44df8a8da04f90b182a9c5c9d90139c84291143a8a8d192a32757e75f27c3549a4dad731d8039cfd02f37831fa474707d779bbcdcf58f7106bc1a6a71a1ab9310c57390b6f81de926a12a1511c81363e9ddf91c00397eeb2de2259f564f6aae1b8097be194f897c068af392e023adb4e6a76e3aaa54faa635162861b25f42c778e118c8cd609b63cdcdd46005600ea2cc744e3aa1655a720f092d36ccf20b56199dbe451820da73bbce6f6b7914a056fdeb24d3cd9fd65c08df9eb2648ea0baad20982c24b15a7585939b3a3aad1187fab281279ce49ee8cbc9c990ff349d959fbf49a8ce9a03559edd827b5e802809e54780fe832073aa4b2231f222049d3cf4cc1dbd9d4ed2fc7f2867abb17f7f102061e1a81fe74db4897813367cc257238e0feb5f8b0475effce17a5ec0c189cafdcf58ba2fbd8f3754521dc6a490685fb47db3c6eccb6fdfacbeffac7e1dea1ef3d43de7a84481528ef3331906f601018e1ff358a548801514c7a266da3e5fe5a9c4dd59326e06f8c405a4b344a799b6e8346b5a0b03f0e3e0958d64efdab3eec9dd2aa7a5140f19b2a71f58ab28bb7d0a0d2b9a2d19617dc0f367e25c636ab1aace87b7529db0f239e4c2a34656ec62ba3809f44c5b1bf6e93c77ba5a2b63c1521cbe15c0a59d45d6ac72834ac443288644f9655ddebce4b40753be88c3495de0aff1a5a787063542a2ea4ea5f3b343abafb430a2728b25fa9adb3973a5ccedefa5b836d6c2f7fc5d7b2cad25366289f713a100fd1e8628a07e13a8257bc88eebef4ef537e656d3948c4230386b4361f90a593254dae09ec5e58131da423c3dfab0cefd7e6960ffd7c2def638b06ed82543e7ba0fc7a8c32c0dfcf31cc5c925b523e06c6ffc946d4914e6087d97cee8d09afab6e209cf74023d33fc2caaed38d36ba6cfccd10bcf21c5fdeec0e64bf4747816fe66b2efdff3a0f22c7842d2de9e5182384ae3bf5006b943de5da50203d61779cee61b664b4cb2fda3e1f428a543ad5251d6a958ca50b138fae9d72668caaba7ce6c4a857013c8867ae8a584a236e0d15a19efb76fd9b468bb83c8a58e70d7b4026fc0e16981398ab284c64abff1633355145df520dce4b9512cc99e2fe3e12f443e597962e3c1e52e83212b0ccfef0f5bed10e83d0e89c3c2eea751e21d22836ff47c506d6f0be3cd8753cd8cdc8985e8913dc7125f492dd884673d722d5ce9bebc58c746da8dcf5afda93be25dfc750da6f822c584f679331574978f419f207ece0a5607e6409ca1939fe81ae376e36eeaf0bce81b9b4a0bdb0439e2d9cb8e4774701bd5610395e4e905c08117c7bf5e1c1bfd16bc7180e4e85d5ada16fff8162c008f9da3c828a6158249a727cc4511522f97ffcce94f8f6b0586b9835632032ed6d11520f609d83f7665f7d88a236b3c598b07cdf49fc281c8a0edb5028ea9b0ca44cde1130fd9c173eb44fe1f421bdbf23c0aa33ed7ceaca2811c440968ff849e17cb851436b26299f44948c85bd766bd10852cfb4cf0addd6528d32a432a3e6039658f9a23121e19af6f835db15d50875490c3a822776080d664f3a55ba18984141070e76640768529e558304f049e461dc5bba9de7f877fde8a4d636f92890d50f58c738f34eb67f6c3d48931b682a6dc50494d4b0bace1b68b1d0cbfcddd6910f8465f8948036c28206522dd6a937adbc792dc3d0b52820dce1b2976c386ec64d434c273e9630f241b1df304e0412af2589cdf527f57741e7d06e3a36c46f3084b870c6bc69efb3b4760c0e53d0fda55e77c2251275c81b1d9562e3a75a315e9c85e6e334006e33a45ac1c3ea08cbf8c5fc9223bc5aeca35886c8bcbf1a0a15c2c9c4eb4b4fea8b9aff37be8aa9cb73a06c98aacde1d294ee19f1e0ecf3b7ce3e602457ae2b42f49c1695d45ba8e3fdd2a2bb50f260085a239355279b142364238b92ba0ff2bbcdbb52416ec6873aadcec85534dd67698c0398222a3a6ca01ca0bc31879f7cc46acaabd05a5a8d1a134a78c5dd638841973e5f1c872623ddfe9bc0f60baf9c0b4fe07c5609c0d7535572b7e534e6b26c1d804b079f3c3f10b5ca40bdec11babeebd03dbfd22ea4ee40613795b2aa8b4af11189d0fb485585da4d5c8a3639c0c6a9c119afc44179f546b11d1ff525711c7f9f82cf854c793ef621e2a240f5af3eb8a92fbef23d5efbb8168ab26b3ede0ea40f61fb9c4475064396e90a2ea7a54d793017389b83fafeea35cb6b13381f22939267cc3143d5dd8b0c6ce39a05425b36d0027af87ff27c795eb36e5aa5c9fbaebdba0c0fe4acb8ffa60e2ad463695c1876c43dd38ab21f4e59551c85fb0e64459cacf0bd6d221e6825e69657fa781a5dc3e86a9a15affdd3ea63e5ddfe8d3419dbc9fca31d8b254894fc3b6ddd00720703a1591b4effb90af1fa8f2fc448fdeea36db122d8625396586b2ce41e19c73dff1803badfd1a919418e96acf110982a9d4684f1b8b08a5fd02dd959caa3da9774fdad3ebe12ae0449076fbffab04214b8f8119c0e63500e14e88d991b20ff49a115233cf81b5f4e50627e6fd4c932fcb420ea11937f62a5b8f938f0a83423e1860feb554ce1144a59cca4c6ca940a663c88a3e1291e7c2757a696e9ae76d88a0a965f21f8301cf01c055edf734d2ef10b0655e7d8756cb6acb211d604d0cb700b4f2bf6f48eb658982ece5cf8eb1c0db8310e8f6c26683a577d28a05c55f0bb5a197bfee4fcf9cce9c6e3ac0f73eebf9299758c7d9ae9ac0e9a911b059773e6c5ce88b42fb66126cd37945dd976bda9abe16d6aef922563c9be01139763fe6df060dc0625240ba8af0b294fc93494ab4d330b6b6d4bafdc74c4c581aafc0cf7ac419ac9b72c7886ecefcf0535bbdfecbe470ba55fea549d6cb8e52580a3ccefad00ae8bd9dcaf651fd9d132332eb431e9b478b2361d20c52af0973dbf6b1a1ec7af9c486c45ca1d6034a4e9c43d1a9558bc0677caadf6051e7da985ec8ef4948660a9917bba99646c5eeade0471180209d08dc4ded921712fb723abc0bddd77c3dbf12512b1f78a1776f8d3de29f5ecc0479af156fc392afe26f7ef9a4f6725b206d96d58369c216aada7d7b4cbeca826182ddc5c5d91e619dace7681260dc97464ba05a7ed1d65ca449ab7554225493694bfda8818d7765f30e7fcc57818771b54a4ed02628fe1af9bab8f6ee125501a15b9e01ca8ffe704dcf2d914d3032365e9f6bd3e350a27e99fd58e0fbe9cd52990e8d4311e23d32b417dbc4aa6f21f961d5fbc80283716ae00c7a72518146446549a1e1141e39fcf5e60bc8c89bae55830dea20835738369679d7f62e0970d7d340f3956b96ee880e0a767e81d72b1e34fe0a56d7049bce4e29ee59e7bbf2ea43670b2acc65a6ced832f2fb8eadb6cc28584bb23f83426793a2014bb3f747b46d612de8202191e37f326ccb7a52aa151a91d2b559d43042c320e47937cf23a59fd80c4fcd46f57875e1caa1b2a126c75a87dda13b65002e614129816de56025f98ee66abd8722f8e0a309744ccdd2bdcdf94bbce5ec2aadf85a32c9492a6c4b320ae07570077bf2d80a233048e56283f8417a8a03a37a3fed823e9455b86e1cc75062d5d13d97d2c13a948a6628f6e6cb27492f1fe5c301e65b7e89005d3b6437b4714fd94705550f33729869ccc29eca8f9ad213ebe376d8db4e4e3fdab4ade195e0064c67b351c5aa0f1455df7234db9cc5e4cfe601e0aceab22347faa9a92be8fa91fe3cf78048a559d675e9445da06ddb60a6583df2f0b0c29af4c643dfaf4cb061bc41ff1f3bce44f0bd85a5f903c7b99efccb0e7e2d1c63f583633af1686a4fefaf60b5a783c787f819c6f777c9ea536aef5a40b87cbe66eec6754ddf76934a2a710019b8f316a2b9f7607faa23841ef4111e8b23d2ff4c0985885f35c7e852e3374153a35f8f521f3d05b8353a1648b5fc0f9b4feaf8ade936e9ddb0cf96e2a7b1790eeee45af3ca078b2818711ddfb95fd78af1c5b49b9077b4279aacf640325c5c3f08f495052abbbd4098ff4eeb9ce18bff08504ff9200028ffba505388d0e3bcc402cd0525a1c13053d3d88099e38106376b41f35f54e32f45fb7a4fd36b6449ce4a8de99ab704d1e5a97e5ccbfcea8447c9a49d5c5e7720c3f6105a8200f7135247b135620828721b02ff81ee7a91e1dda9a2c74c7077bb5ee2ebba323ee1e3b9d54dd55749a29ec200b434a663bdc8fbca3627861f732dfcce9735eca65eeeb5b7e842a1d89749cb3a83ffd44c54d58ec23950100d36ac51b8c7be6e0fb29a387bf939b6c5a843650a9e7d832819c5a13609d76f5207cae9220ffa67379f8efde107dbb63e65bb0bbecef99cbc0fd5f6173b918a7e8ab001aa36e194b3f1ca654ad32d370799bfa771991832d7624bbdde80fba23f438aa6dbfff7915abb2783372c2b4b1d8f6fdcce0bfe2aff1246400a1c454d89b39d02512adc71a10a2b1bc8c2523e01af85fd4ac27abe7d2128eca06d36110887016924507f16025d6e85a3a92aba08928056a4483918bfc371d89288c0752a1305b1a8cb90a9c1bd359d8910a35cf9b6460925e128854a6a1e6efbcc5dbcfd38fb31c2dff743a746d8ff42013f98d1ce8c7486de07308ef814d9ac242eba8e7d53cb512792a75a9f4e9c22fe8f9211df500535cc19367a82f3c01150c80cca041394d798f08ac1bf91dd064754a69c618fac2f76cab5ae9f3d3043e32b639868813cc51622a42ed087fae85b2e1f9e124c63096ada5205e31941f60f5e50cedcb3cf0b82b345268897ace2f9d91e86ab1979517fa594f365d41e78f15bb9629e1c46410673742c1d25914042bc38e029ed8d00b670603fa2609ee8f28f34ed255a72e94309e44db92c9b8c9785dc74735be13d2741fc56658783bf95097a8ddc4205b101852c6dac46d3ff68b9f89af58d9844aedfd58c8126895694bbe4a3d5008b28196ae8901918094e8a00b37913c42e414cd9106b19fec5a929b2c37700552f7de810936fba8c4e586812f8271ffd8fefa246a4ca008de9adee700dac9c290cbeacf639a26cb2f2af9a72bb77441b997e07a4e930c5524cf555865dda3b6a140c78b35383ff3ef434dad93f49b43cc00af6b9dd24c51e72b99d5c9b8ab4431a3773816af3abbc9c8597d9bc7ad0bbedc316b6c03337e6e031c8b4254a4a55b6a1e8452fe9d523189febd01a66e79b89526187d0373703c2c547f9f2c3ba5a779042ad26698e0f62b049472b1529bbaeebfb72c895552e5f463c2f9b9223344c89afee842f0d93b85d1517dd80fa4c295040941ab176308aebffa09c14c00ed2a24a877dc4ceaa166d3ee6bfb278db965719933d5fae1ff0736690fafdaf629260a69be01bbf6452d1a5ce290688e0c2de9e8d8ec54cdc13b4cf1c48295e43b3f635f66e565e4c3d7897a5d7311c28a3a7b073aec8b8c4828435e55cfd99a384ed42ddc11f0de5d9a5ae3b454d5035d57de40900208c27bea7e6715e9e652be3d070187447d4aac4b6485fa352a2d9c648dcbb3d882589072575d2e1fb62242ed6be2cfc3ae6454277f5899baed04729c6dcaa3705a3258e499d840725fcf3342f6d3511b326d670b599e041582a1f3bb47899a222cf88ae478a84ab260d226f798bdf7e5ee09a126d6eaa9a9c424179f1a6aeeb9d58ab3d8fbe609da7703d288b52bceb1d0da80bc87e8639fb1efcaed269cda54900e0f717c0a1e205ad106c5772a995d88ca4937cf65fc3b16627100bdfec6266e6273b27d569ff871005cc93d610ff61ddc0d0d8c40b16bf119dfc6825f188a12cac3d9462809bc2eb87d0107b1e0b4eaf3cd433dd4220696d8381518a33722071106f6ab041944ff4bb02cd229bd924a7c22181838ee255594abe13dde868cfc24f5613ce3c6099e65dad09381754ab939942b84cd33b8b7dcef5035ec0287e59c265d0f4348ef260ca505a14048607c5d2f5a243cede9bdec4de07af74ddcbc0a1330e2de0d52ccbe9afe0bf585ab68c69f1d6473f3517bed9d94c3a80dae31017c10fc10af87af3c5ba4ca0b9be4ba3e2141a3d2105257b5b293db4b9dd878b4c1c02b549cf11eb91afc318432882d12a00b09f4e3a3ad5f5ffc988a70e4c4a504e43e3d542b3ef279569d44bafa16ba1a2b7fc0e90b92b935fcd2320987a1f031d605d2082d175beafdcef3c180fdf6354209ba5bc02f08e7a32406495df16ec1eb21d243ee63d7d2c270f42b1cbc1f1d4f972ab851d5ac1a35fa824ed771b86c134c520dfe44efb13e2e93e3c1a03be094982b8a66efb6456c72d6c6c98144c885c23a437e0533f47a7004ea542ad4f97370f9254bf59463b60b645df1a9ef458b8d359e42d04ff87a1abc012147dd96584f47278485fe48748a2f8fff798eddd640b9a14141c9889788d9d9c78a6d8e4641a1a96f14075241171904dadf8cae67e307be3147124c4598ad00866c0e3205e26b3c91bf969bb05e73567923620082523e6569f06ba3fb93863f9b06a6020121edec063bd91ea0544399c685c8cb6a3faa6e4d9b8880fa4c5bb64bf2f6a7e5dc008e442377a606c4526fefd347367e91a200321d7ac144751b0cc3fdc2f887f6d16d1723367c4d778c2685519483c9bff8cf2c67f5be2e89c0929cc10567ec0c60e96bb0343d9e4abcca9394a8b74328bc97720bd61b39ed44509f372b23a346a320f6a84f61853e0dd6b1012f621beb009ab69918ef76e6ac71edeb78c6dd45105db6d9aa49259560dcf9263134153f36c619fa8b5eea654fc3bfc18b491b24b20ba5ec61acd3ac08343f2c7f71c6311edb0574f330e092d640728caf291213a5df0744c743f6f4fdd2e16a5c7811ab03b74bc8d9bd01e2c721fe87d00efc3fc25d7b1ce58ee844115e7a9019017d8cd9b2e602583bad728c354183e25b2cd593ee8cafc8f6248c1b178c9710d911ea2dc40ac50fe7fd0f68b309ffd5f35efb44e39d31b520aaae5772904a0f90068c56da273c7f1f346ffcf91b96da6f3c14fcbc8e3ff71d976587558c27e785f8cc909365e4e27078354a77d15a31d0f546d4925b3c211c05728cbf30867b50fd139d5e52fffd4ad29862d190a9b20c2bec8c4725db4b4d7fcba44615bc40a56d662af0d163b6b80f1417093d0d06680ef1fc56de2c667b070cf8d18c822cc00d6bbb4874d5f72223bff666deda51f95a287bce772699bac672a748b37f6915c7620dfca5f2e461d2a23bcf491cc244938d0ea4603124ab4dfb3cca88ff9be45bf9d034d9e347317ba257f39c8d105bbab34ff542e24c8f99fe067a03afefd585195dd132f4cbe320e1538d291e2cb9fddf24390137dabeb3f0c966775a6771d090da6e70d938fe982ca5284c089cfa2346de44183f1f6cd9315fb56ac96fc74808fa1e151880dde157b7925b703dbbbb9b611f1fa6dba53695f5a665cc099e85d9961021c5224f73143e8b60f63970c92e1f21df6d55650a99ff38fc5b1193f7aac617f5d8c5d3fa4bcd657bd4161794c03ac7eb204a43b16a11d356eb2df0d6fb94b02d1150ca72e24bd5dcc19e25452ae000525c9de54cfb33013062ff94983efbc661d1667017d730bc63fec3020de8bc43c8bcec67eb3f7c3064a32688d2cb58355e771e898a69ba453fde32948ac1a396f2abc5b0045c8f3f70191550bf8ef32312a7b384485f12279a0138e0870ccf4108ef865a61f7ec768d6a7067b7847a55f8a3397394d331d53bf6fc2ba4ea72058d8409704395445845580442a6f1115246c2cfe31d8b1c05b98ac9e2817dfe18c9584b2cf599c7bc059ac933622b6f85b5060bf025a7a2edc367effcb9dcfbc8a24d3a0b28fd4125db2b479d581084da353fe362fb1d9931ac482074598d5681dc183144515a9c329d76110b9161e2541c3b76187c5b368436ae9850818bd135a211c3a10dc7b7236277bdccec8fd6ca13276a1c6c813e870107c8c6bab53945cce02d7d8a56f317069977e4240696e0a028f567c8efd8ff13f16e57ea400231768251c8d53b46ff8f1b382074178f3e7d20c24c7a408e95240ed6331e14bbef69d967aad67ebe6fdb8b3af9e590158533ade2869e633e6f98f70823a386d1829253d04831d7052f0b5a17919994d41b31203be9b27030c7ec5ff2cf584898d6931db18804b8f1b500e4940fb96149cb118f172d26e06b7fbc01321eb0fec75b6c7c3e6ce9688fba0e0a0ebf36710822f1984f618b4566a07bcdee405340641f7888f27210b3f5340a5a28430c206b2cf0a425b24f37f61c7eac5ec9701f27c989893d82f6f1e31cc38697a47190632abb4cb0ee1ceaa9d8cd5b945c1f9434c166b23d762802aa35ee274baeeafe23b343f9cf5b98a4377487ef3f4fe772e63fec88b44f7ea0f577b524057325d42c59f8f8c26fb8d2ace89c7b2cc11880400f40e7b990c2cf724617e88d4fcff773e20bc7d723e3c9b6fdf27739ba51896d52b2fa456f0fe725ccf29907a3d1f74cebf9d7cbcb77cc8ac7ea01bec93962d0ea92e9ffefc2da490432cfb0dc0cde57b7eec5cec3936b16840bb68353d036234fa03835d6faf6d921c5fb16ed162bda55927b18f43f3ce3a345700c77e2f2de7417bbaf81941e2b9d841ff7f619793725170251c297102ea81c3a692a4a5d4cedd031e948a717a744c53f71909c4a51fccb3a997a8bd7a2d08b97a7ba85986298440ea6c7789d628497b64ef6e77359d55b41d18441b6246c80ad4e4523568a2d3c5cbbd47ac0365f8bd6bc37d2b23e4cfc5aef9e1a18601cae76798e02fbc79c9a46deab3e3391fbb976fef62b41d3f45ce32bc477c7f475fb060fc1c49ec9d0c38460c9249fefecd3de2ddf1d73b0d1be060aa0efa346f93547f40762c3d3263dcaa08af4749cc6173a95f97b35aad2abcfeccda287dc9374bd45f4412728a6abee24a96895c7145116de86905ac13637478904fe8883962d02eed93c93adbbd3643257971cb12db3527f5044086dc75260a3058cf05e786b6420b43a4a569da2e9c45ad5ecf5965980082e11a0b358e2e1255b5d8a8709d889b67eb6accda6a804a935c71fa3698a551b034cc06b8f2a200bf8a40664f3de719f7230ff9cd205cf00ee4f2504d641a1512bb51aa9c9b647caf74bccfdb1392daf05612cd99085c30b108d789d692d2f32b319428ecda202c1f9aade84fc125a70c5bb68f8e31ae13ffa9d7a759600e17e200908647052dadac3f70591fa9cd634eb2c5f9ffef920228ee23d6958b4d155fbcbafe96efbcc03055b05eecb52c70e04e3b26e3b623d388c018f3c9434db22a4ab4472056e575f9bdeefaa7bdd3a398921cae4523cbd3ff67adb868130e51d3d6ae0a9a6425871fa3ce388d6c19c16db14a5322815ee4758d26d1e462b8e9e62d046588261e8456bd638fbd8cbfa19b422f12c2f1b100303a3274fc39adba80b93bc36932ab6970ff523da9c9a32de443209deca32bbd6b40b857e3ba4a518956e9398138728cfeabf8e2c09c9df7e96d146177e5c9b349ded0b90e0f3293cf433c8335e1da5eacd369f6d8faf84983f7e9902e491389ad6ef35655edb52a54a47573a57f14022f14c8e07a9c8e5c367f408dff62a5352a15b211c560a8d5faace1fedab38ef3c17960dfaa6ed8eef8ea1eca21afa69b3f5425ab7b0cd169ed4dc4f95ed2a37826937eb7ecb72b5e79dc3c9a4baa843c3e8c7678e2b68a0ab349516b671b15ee14b5c0e64ad949e5964b552bd47645fc3454aee3781bd9882f30d0752d6f8da7e7f51e491eac727ffb31b4d6ebf9b76df3965a7b1f80fc4c0eef8e7e6238f87964d6771747d6bf1e4a5bab826f6929c8f58669288a84fb07a4f2f1ec6e3bda9c9cc1437c8904ac3f86b5c0486f84804957df1594723cd5304e53dd0d968a9fda3c27fec560412ff3b53c58853611aa6c196dde33b9a8039bad82e8fb5125cc9f6d5fda4fc6b32c8e42e748fb3d4224976135882d7ad4f91502312ef62db65522769514817d11f749f6921279603a8387caf462cd4ab4490eb3c6c6edccd5af1cbc6edae112c3f18b74c6e882ee4d9c5315f389f73a1c218eb718eed603b20e02b6176441ab092ca7ca5a4db853b1499406235bb7eb77e0ca0e6d748f63f01ed59b25381a85785037056b9e062afe149558c375d5d2cbb41d4494fe31afdfaca2afeaa14b93b0d1cd2e30a2b729b0a499b1fdd7ed77ce8a66d5611da5cdb34b3b0c92a9551111373de89e37fe13cc2f022d6e9a4e59536bd858765d5189778f0f8cda366600ccc64e6e286c9910dd9dad714853dd7dfe07edf7b8f06dd6d040e02b9533e3fc8aaa22938e94a81d4b9429fce64002f1036c67f433d5ed885cb3499b7f07a8a6f71addde501ce679ef51039a6e246d2054fa680a5cdfd290d79a30f221bd23af749aa1480e134268a5e96f4344dcceeda5c0d3fa1f174e6f3aa5c229e33aacae7ba4d42d142b1304f73aba7c4fad0ba783856e72baa09a31db21ee57745649e5f88404b927113177518911a50998e64b1bcdb495e5017809391cc3c5d9d4345e81896c76b332959ac3ebd333ae8f17150ab18c6f4f3909a0f0b22912893a5f61a2dc3c5e598010272e5491f84030bd2e25c31ad687434970eacb4decbe1da56e69eb0d38332758db28e758ad2575d056997775dd088436b6268f9bc2d4856f2c9481b23966db5bb2ea185e12362c3c021314ae357a813c7932154c3dfb9c5f1bad7537619f19f208c37a542df485d2bcad4dfecff43eac2971f1542e3176b46822eb08b42627aef3c19997ebe6b8c732167d57e33eafb98d38f6011ca8a745b8295c26ec6c926a53c7bb9b57d88f43b1c61ed2deb360dfc17c6341cb7d709725b601c60c2fe053494e5c738bc50d2dbbd48ffae87e19807934c2476e3ec449ef601506f863ce60d4a9c62ad24d21205e15daa400c91bb12ec771afe7b0ca500df69fabe7d38b3b41a5caacf47028b1464e58bb45f95da200dca52e05f0696ba4d6d5eaa99ada02db478043c38be0dd8127276c90d1c21a9ae8d01abefcd1bc1260cd8a54c35c33eb0fc6bab37b1c7c973cee78bde3403986ccd64bac14e0f720f588c54a14f293cdb2ada28cc17909967b8af41a4af9be2d4ee71d0c75191f069fabc7440467aa7b939e9836c4ba5b90de27dc7d7cfd35b52373518be39d28707bdb6b041e74435cbe69ddc5a6c513af2b61df5147b65009deb6731526873d8845e2a169756bcfbfa52b960a30401386d34fe46e0457a82426962312520dcae975ee1eb9692b88cc0a3875ffb9a90c26ef3909f7be7f9b5b267f42aa17579280ad388872107386e25ddaa569c040e3dd9b10bda55ac9df1b363e7b37cd317821f6129a65614774acc15dc321819f86d7b7a6ad1d3a5db517667ad7a86a717719ca2b5811c69e7ea61741909bc325e10c2c123f7794bca7298e1ad415fc5db7d1e7fe69dc1eb1f019e50c7b7cea9b91d89c8bf911118a4a7c1ca3894d29addc551027c3eab7f45fd25bb709d4c54c40596f6e1a3a20ebbc887c551cf069ba76b2564a7fc49c344394c0582ecb97a0ad1681b927b37875d662d57ed5e31da69424ac7e01bbc7abbf11de8575d21743345d6ca57ace977ab8fab46278c001ce2dc3a65a0ebd9b84c128a438f5995c014552e4798ab9fb31f2467afdd38563b76241998a3f99121212f602b5eacf90e7dff6a74f46a867903fecbe3a95497d5ae7b0aa995ac28a5e915fe1085dd1475c435719e7e198fa175c74da9347424a9922fed308dda7e5105858b489ae372599b94f4ff284f3ee0f520862cb5c73fa086511ff7821eb703cf3e36d653d7e56d481173e99b83b67a2f72ed9a6eda4269a67186e5c45773bcfb1927e7161c989dd6074d45bdc21653623dd0f65b47b8919be82470cc040048e9723c8928c4c0ca35180adb547e7fbb6c66815b64214d6da2d6a33f16d86c9f8e1cfde14c734a0a6922d13bcb7daf4bbad50ad2ef74f04850d0163fae3be165260107d7949193e499bcda193dd392cce86f326a955f769e292211a2d3ecd6d8a6a24ef0a19d8a5b2c35416ee1136f88521e0a1771f6fa6b5110a2ae1a29ac0685e868f81d47b6429ae8a3fa030d1b6954433d010e3f07cb6a041c0503958fc91ef66ecc85bcc5a561409320f11d1c900b9eb1487fe7a2d535ce45afde39c77f65ba33e5012c7c964d8fe606883e5fa9091ea69c3371fcf2cf33447f6877ad9f3a025630be20f1a0da6649a9551544a8cdf1cf955ec5d7ca49b235389b55a101d53ad19192a6eb59a3a875faf1d287062191828f0713fe9d44da751fa102887f17bdfec2bc376f85331b7abf535ec2be297a9ef3678a91287ee9f0b67717ed9a669df832500d550824425da62afab874abcc860d8ce5305336ede93baa7dd215b2af3963dc175ae6df9339d81af8e9e87ad208ab739911b6d00b96d5609ace12b4f4dca946c23f8585bce4ebc523c2b381be00f6007f3574728af097d899dd8e88fee457412d43ab747caeb2699419738ef5983be985618f70c611ad68e3fb29f65468edc9299248572f44a8baa69d94aabfc4c439ddfc4fc63b2192d117b6d341818a8a2dbd8a6bfa0d7fac2c66540f00e33d3673402a4c8142d16ba1409ee21edae089e58a1e93065cda40deecce21490fb42f9192fa1674437c093cff84fa72ab04f0842c79208201574d4d8b4e643e125dbce29ef243f5b1ceb8195b2cd41c3f75f0f58a1fcd91444486f8306e1c7dd470ead5a4e3591b58040fc5451f1d4e3eb5984378003367a85917b71452799ca705a3cc43480fcade4252570e798d1262483edb6301ee60e4253806db48c037da44ae1ea4e9e2f8d92e7d79595cc87b5fc7ad01d530dabc8774277f4fe3002bf15e3b22e93cb3a87be84cfe87246d9841f0b877b661e5dac448d7bb6f30c935d9db421b428da9e3a02e387cf49c6964b625f8be5197bf14dc6b7606eb8c405a46f015511c40e6e283ff9a6d5995739b388cbff89d1fe6132c3e99068acd98c4c2f270b8d20404471246686df6f65810e381b5ef1955bec204ad8f5f10452da96ddca6c38bc763b16b1532996b6fc29cc3f13b1090c52cedd8a5db4003b7b32fa23487175b1afd1d669ecf8e4076cc4acd19e489d7ac32a399ee307d233233c8b27a5af1eb99e4d7bdd059ffe7ee9de4acab0c8aefdc00f845a721ce99876e0b7ae29fc1ce20801959811a1312dc8c0e4856bdf3ad9dd07eed85480db2795fa6c7466ab5d7ae4f84e0026770e69a0dbb7b6b281092965c2bec90fa5fd0f68f3bdb6d984bfb049dc8c7a2fbbac969d42826cbe67ed6736c0cec1a3a5e461e85298b825782817271f8dd4d64d55793b9369a4e0b9478737efc7bda7a4f5c4a4b5259a91d4ea4f0cc5f2ae065d04e51f2bd75a800df3d1ce7033e2c68989d2ce3d44acb653934b8cf6128bcc43f33a0157b21f5252439328f0886bc3c3419aaa7a84d7f4947f078aa68211ba80b987b3460f19cd20eab834311be88ad7039467853ce214098acba1c8374db68a09d8392b22ea087589d32d75e4d4a14388ab3245871c2e342306f6fc098de606c666a78e8ad5f03e88aaae6027ec9a6aba6d3417e5933ee601f36c71937efa488725fcafcfbb4de9a26e1f79a490cd71be2b29703a3de9d6a38b93a1971663a223d7f05c515565bc9d21857849c7f3e1c35a4d553bc49c7813fc6b35e7f70595e3cbdff8f99155c38d6960509a27cd52882f641aa73464edfa799cd93f793d6b44c5c8b5368472c35a819a5606a421b60308417ed467b7765a21961dbaa66b47c868013bc98ca40a62ea9b1afc8042cc58d9fd6eb4437ac1b6161ead29d12c21ddd7149e7aa427d430d4a6cd75a4a5f4f7299aa89203613ab67f86609b26c789a66b8727213b05afc70cabd898b8d9adb9cb14912b6a211624c6087641217e46c2da6b3a73a46aaa323cb4cc160aa6a2b077ae0c08c652313d9aa6d90855cf2802952590af6a40b152c98a96c4935c2c20d96c92852b99f348477903a01043b758acc7764a9210881682daa8f7a77e8f77d83d6eaf7c92e8011dddc236958924368dc5abc7e084a3794108ea57e7432139251b1091d958407adc9502d99962087ddb331f321714a820a6a5e70a81db76ad9da03653499a0ac47726effdf9914f28169fd4decb8b6e11b3b46d16502115a05439f6c6b01c70f04e1a32503a7ef8069a9555ed8946136387b6183d075bcb0999fa5ed3650e673668c60fe2ff36d17e2ec15dec168676a2d6acdbfcd34e3d38584768e7be6f788541aa937b8f8fe052a5c45085d21579d379626ef2d800512326f78aa8b41f1b3936cfde2d26e785f2b6cc192c75262df861d60199ed2be415e243d82dad4e5305f9c92a85ebdd9d3596183c8d34824ec86d03dadc04b17523d7b4f576de1641acf48d6bdbb4ef5caf25a1fe516af782dd696527a8cb4bd9157a863fcb65a377a0e7d0fdb349a52296af100ae73c2d21e3f9f52d063c57ca43e7296a1f3244ebe7481f8a5f3a566a58e25be6561a7a25319cc36ee4957f0b7f01410bdda98471123d3d96c64e7cd64189fcf965e15e5ba07c0c3075ec946fa3024049b6465a937c1c9c77b6cb1bc346d5aaedf0c2a342839c75d3f835acf7d6f6ce11745e0b2b4410b464881dcacc08b615a31c5aa2fc19d45095fd77b68dacc7c34a81bc8375e865c4f87d57d819a3f1e52d336d64b0fa2957408dbc0bc929c61ab1e374dc2370e9d08f66ad7649590c952e48b07112004b7d3295875f15284cfade89b1ae896ba7e00ed144ac6a25e69675345f7b7c941fb21c4bb8a2f4130f96d90250b550f7528a1ce1358234c53f6259a177519863911fb28b28a9f8d278f18badd05b8f5042c8798d3528055b1273f38513d2651490a69f8e33676f9b5240683c99a14ace0288d7011ad07df98acef166bee7c0dec14b8047f6bb8f6669e0f31fa9dfbc1d395e758d609793faae2098d1ba890589b58f11fe4260b308cb8fec3efc726b5691a5b8e51fe19a7f2a8875a219ea8929f7f2b507a7be95ae6dd4cefbfc6ea3bac94d6380d32af10fb9821bc81ca41905daff16b1a64051e8baa4c68681c401f1b59c3a2733eb878c3fcd1a7915a00ef810d869214fb138c7fe610eced1877edac02ea3d3bcc5690311a75a55c9ea6822026efc2f4a1d7bf5b6ff946c693bb9058f3a9c211e337ddb02c6ad1aa58270c02902c00d052449c37bfcc61c5c229f24972705908d912f4a71ed26a8ef858f151579ad35f66f2447d7ea4b3c26c52af4e8cf9eb8f20d103e9a7c5a57d8e8c3780ab4f5d57a837625956161e9d3cddef52ba974cc73717a99e70386b3c933a440e5fa00467a2299425bf889b3638534683874362dfbfa8d05b11378acc0447c5adf2fa30ac8946a4b0142144edfa205ba43cf686e512941d1c452a62ba9d82e15e6ab293d17cd1fc8c90327b4fb3144d6e903d8ea47d86ebaae51731d09a1072e27e864052a4eacf655f79571fd383739bc6016afb09ada8ec4c2c41320fe77562afb33fe82699de16144af2df93a523c23599163d75c46b295663063b9aa8664c45f2907413d23e128cf9c4dd24807cb8d11b87dd0998a1bdd5abd2954ba445e25f42279482c0058c5971987edc23cc61efb4dae761ed64bffc44326b4247d23ace08ab972708521c9fc0231b73c66b1aee7f9e8a3615fe2c6afe2099c73a7b8aea03502f7f39777810a44c05a36cb9724011f185f70a20d3554f9f65bbf421748ad76d79aadcfac3f3a0a01a8d930e9d407926997e662a274472a0156ab7c80f6e6d3e42bdb97b813d32bf11034efbf7d47bd2c2917aa1fc815460801df023173b096374dd5197b69cca9fe976b1547e10b5105d6f50644c853594a5feaaa42b87a8128cffddaad8513c1a4d446a75536db825ea70101238c747c2965a8fba95ae0e1ac162b4f821414bed8cbb5ad65e6669de07ee268be59dd452805a0dc6458bf628f02afbe06bc0301f2e9a0d4fe9f64553e5de383463d0f0bebdbb857caec4bf818a5b9b6bc3e19a58ba000a0312f78091a44f084d5d5efe07572279054699814d777aed6cf1ea8c9830bd7b9459534be8a613654f736d8eca14d71722bfc7a62f36b83f58e63a875c47e3d382c0cd732dce1b71bf98c1f1916182d7c5053399886249157c63ff0291c9b0aa3fe6becab3845ceb59e4fbb69ee0b6d5f54d448ae50744a86537bc4ef1a511f1e9871ff7db2468fc604e80e5cb0dc6dea6a4b4aa6ef4667e12a89b2aab3e81c4dab10c66dbfa54684468175c53f6c02262479fde201c14d03a16c0814989a1ed3c11817af45b87d91e1e3f45f1cee63ae73b4f85f7aa0ca7f0a95114a976bd237781cd06f27cdb112f9574a98fe142dc5bb4aac9b9ace06a7cf405be000d743f3725364486a0fcb69a8ea1d37df154f9dc4442f499ad567835fd51391584279a55583be51af8cd400c858b1e557274af8833d0f8f86c75d7354138b12fff3f87eb6160c6d5c1680216591555f1a05655c4d530d333d49fa992679cd61007695c56b16e439f582c09dad575fd97e7db3fbed089cb9f72917346e8f17cac073466952817ac838a0709440a1c5a9394b02738f0ea353677d85e9510086a49968a64e5af1010e00e72b0f73a7dad6d27baffcc52700ba0110ed7050ade1d39cce30cf3884a20d2e7ad7550164269562a7f0267940810129bb45df2f3d8da5eaaddb3236d6367d311ec8e1897bc001f5df1d9ba604a680a6acdf42d2ae0060d661a4a5df8b007537b195b39df0ae392a6c30a8af0f416f427312cc765c932e13eee9b1dd1c9a71d8ad92db6bda2719afc3c252761cedcd0cffcff1bd720c22b7b53199cc5ee7b9ecdd3fb8ece3c7912bdb331d0b9cd9b577fdbec9c60a6406aa2271e26b87de4b3a6d11e66f87d70143a29c312157c93bfa11ae2d8a907d99b816e15babed36c51bb6fc141ec581285ee3ba361f797b408c8256689b52aed95419e7bb2b82a5164b59b0be279634e27064e1dcabf1279762a7af2e4472a16e163ec4dcab68530e8dc5c44434982520891cba4e2cba32abb1b2296e221c7eb63433393fc460e7a3995c6b69ffd76566faa73c48d98d72131f02027bce3d4cdb11a190aed94ad5355b22e6b50e88ea2392e86f4976fa521fac8eb2e5517740b1754f1526d5f0da34c9be71e388a77c1ae62733be9abcfafcbd9e2b77129b31d256fd964754fd6e2ce7337f3174fa34eec385204908305704e568777113676daee7743ce62bc7841cfcd8e740366ba41058356531e50677028a59b7813482e977e0a2e9fb931dc282e09256b8b50375271325a6c474367fe476d9afc290540d0e4c285a19120c6c318e4c6282c252c9fbefc250a052975f75bb66ed6fe014a58a32d2a88426446923b3b9bc72b346e5a401cb7e36ce88dd9b9d59abcc4d42ea85eac1c8204672465f295784ce9f543da0d16dcbabd1609aa26901009675c1a1247a3e40683e0e7c999ea8cee6bc158ab12e665307910a6e31dfa8e83e9066cc7436b96095817f35348d72636beef302ba4d50841ca27ed1352ff40b2f5a0871fbfea1ecbabf2bab51df802d25729043eb38354a4c00e0dbf88ff27982ead72c5aa2f2c139c6b36a0982c2ffb3e03c49f08f7e7c5377da0b19369395676070a7a32b761b5d415d4dac9fb729d58aa48640cdf107ee8f8814a3a903272f9222efab8b4f19c77ac2fd6e58bd11d70316ca3b432b76fa7d68550325d4e81094edf2a579f7f01c7444f360baffa1159e9fc99210060cec81a9060fccd86fb4afbf1fe572468c3332e2729711a917cc281b26759f04029b605392e5e037b754314f3e0d5039f41303443cecc862d81c0ba3d8a052fedb2975097069cba9d91b1acb2d91d71903e2acdd9e62254c1ea4dd86c8fec2674394c1b582ae29b5fb95476290f7a655357b4ad6aed4ffc93a8db27e967e0bdb1fd9ce3e430e4eadad4bb3df8d89bf78207397a80cf7e2c020f0b8de79a886b69ff37647e2dfffbf63f90b85186374b64ddaabf87b796797f5062a6d982e8ecbeca88e3496151d576d63ecf599a2bebadf101a6366063041d3a000eeaec82d4938932debbcfdadc0dedb241683c4bf666100fc4c05ee6b38e2e3c0b278ccd8c12a66df2fc5f4b6cb4b8a36a50b5f2d9af273fda4b6d9577c348a546eed81497109567d1e6397f32f00c65388bc363feb33d47b7157dd4c4933dcf30296792b6c67f146350e9f6dc7479b13544881b4cae7f790f031367e74c414a16a80c17afc0c0099b838a90de78ee15e30c37be64c80430e9e7fc0471986873644f56542bfe5a06381474cb36b9b3c8a8f2f0965cec0a3d162560cb61048452e32eddb3dab44e889f3b8c049f4846d25b872c0bdb2034193c2b2ec081c090a2e741e5479a4964f165817244776136ce61c694e03b94eceb6ba72408991756b39cf8ef56265c96ea2243cfb716b6acaa61b1ec8a63c87a6bdf590f7762f4776c710c519af3e0e7c3aa7b7820f9346beb86211469a1bf29df99f1e2a193814cc3bfccc302b775c19733265270c6f4af052370e9b88be0f1940343cce096b836cce60eaa8322897a789dfb1b08f09d9c6628ec59415364d13c12363fe743f49561a282e966ca627ea1944deda8d806952205937f1162c41c87eb6f493b14d3911d229c32ace8fa39ba6cd9ad0e6b0979f52f5a721f75df62f38b48a91cdf6e204b0aba55b956d62c88fe5eb51e76c349de1ca6f8bc5f9e4996b62b73f17bb77e3485b250e6d3b64d26ef94a946463599bd3b463d9d28f18c0dd21bf0bcfb006198ef13bfb4be4520cd98a59192de022e8f10bf6f01c4a82aa5236dc97fb9ace5a02005b8a3101cdb1e6f53070bddfd67a7feec3aeb0bc1de90ccb5fad35170fddf03ebd71f10d850208d82175241394efe663240f4ccb151229befab7780c02b83408653fe0a9fdc93bd895b287e9b29cb7d62a30792ca310c28e74b6452afd75e36891a584e8d2cfa291495b5f6504915805ec17efe336a84436b739e422207fae4520ad18e1f67d7133ed256bacafdd5658186864afc67ff57f01ae505fab754d93c46c8871188b3060a7caf0972e2dfb3ab6326933e1aa61548b73842b5f60b4673028d4fbf7664b8dd4683bbf3ab9489af75ea579d002f6f78c20787899ef2c6e8357ac5dbb9ce79f2979834e2559273e1e4df51ebb3df965d01416676f539b2b339e0f56448428722c579a8dfb848649f7b9f7c019dcf51c7be4fb634806d38f5500889da5c13e80f082cc6190b376dbf80f6bffa6cedf5fcdce87a6dc55326c74d462559d856c24fe9f975a14bc5709f281837c3f2e0dd29124d15976c2cbbfea8c05fb8f9925b3a85eab627cff820483b10d68a765535f31f8ffa06204455e527638cb2d6a2ff0e9f520820acf96ead1e6e8d4641d661e5d94e98717fb6a1dfd79f2a31e069d98dd561d39d976b4b250615bdd5d278d8625029c9f28fedae8b7a8c1c42b693452f672d07b44eb51578699bc38b9e1f47fa8e3ae8d5bcb52435baf0fabb5f2f7babe312fb3cc118c4cde8f2979380efa97055d313a215311c5c94be0136349ca7b468f013dcb8f82d271e1e97ada43714ae9d71b63813087c74bc93a1716a1a8d32687e965f42167694f9705127da0d882c888bb9a0309ad87a5abaed493a0656617e0a23aefd703c4cd1dd5e3cf8827da43c9c4b5e0120700960a4d6ab43bde7b7040b735c6daab8b0c42fe54b1621127fe78851f64828f21bef0ed679f65bfeacac1cddead00cc8a91d862fafc1af4424ed3d6894ee6bd1ae87707076c33864a542950bdd5d8aea4f172795743690e0a2abba2ea1c432f0041f78a170270b5fa739a2b74f719eb58e84313ab13398575ddf8294c7b668da3a844c20f2618ed247fb3dae6cb50ed71dde8b5558b3ed453fb0f5d67fd33b41c2d23bb4eefd583a8b9725fafdce3a8b03fa543665869f008f919fecee86a8e365519cc27a41d0dc44a62ce30f4e685ad2d185f66dd6987c1290895ca20f9a8454df872e18ce0cd5e332b5fc6131eb8b0a89691752a176029e7a082da826bd16be99ae8b9857e4884df915e84ffec868667532a4aaea2a66f7682901cd6ab9b19525502bef478ec8b8786cb304690d06230ed68c7627c370d2e68b4bc12f2ee61d0bfa2b1bb98770b5e8b97d6784497b7d4a86377100f4a97f5eed64d78ad5856d0a034e757470258f0cc1bfdda45149fc09d68b41901ab9a76f1bd983ba6425e8a73de974fbf28331e98e9f73c9d0d7d3978e0858038da840149b5f69f6afb8becbe226a8c3de9e9387dc71edeb1485d12935bd1622bb820ea7b4a7ba78f4784af602c4fac34b2f8b7564773691e136297c79b270138f47829f85709e9119b151ae89b7d8398492e5afef6953ed5bbced373b8ae87235431c1ad9b7b871a8e507bffcfd2ff7184c3dfaab31d049af0b015fcb6a73d5166e3e48a6e7bd228987fbb0189018235c5379f657a8b00426278edbb66775fdbcc7cfd812c4dce51abdbc900522c335e505897a8c94f9d76deebcb6309e1eb124100174ee381390286e0df72450b18466f8f5c2d784123870abaf4f7462154cb785bd8893ee03968ebe1a662b9a2d591d198ef691319d08f1b7472b73e07fe0f6a3806ce73923bb559a6c422d5451001857dd877596ab9e153e8524f39a7d0d691b9b7cc14b4a10d0333e15d05422ccc79d5aaf6926b23afa5ae8e62537e4c76b6b49d1192b3a198b718e00e21c7128f6b7d24871ff2aca8d3be295b7f58ce3479244d7d38a9c18503c2a295265b9a8195b8a5ef1fefcdd0ce910634db6877d7d8c867809b9d0bd1425b64ab49d23edba776a6f6c0458198fce5055b37ba6ef7f48b34acb8b7eda16f8c3c49e6ceec8452b0a0da21cbb839eaf37090867676b0dbd8087f526d4c0c076a2afeee6dc827c6c3f2861a347d0807828a8856b919d837cb5ffc72e03676fe8c0ed5d000f6e62079c0f723df8108c8da092b2fa053eef2dd60a54171ebe93c67192c4e7b9b4bed727b6fd25f006daa3cb5672e51255f7c99905f261a946b2fcd8fb6e34ba3732a956dbb79554c3467ab5bf97adbf65d7a43595b20ccb51a168c0c2c2f81a59bb35f545ea422bdea4daf09cc37d5102000733fe331586681caed6b724a43c7bd25cc69b7f194bb1d103b32011dad63eeb06d1ddcc0230074de4101582068eb1d21f474fadd4c52b2775c69a6b0c92e63c0f0f469ec71a82d46f0f10019564e1f990514694bfe84d0decbad0056993e3e2e53bd0afa3bed9088184372221bc0e94579b6ee0e44232f8e434729fd6ddc9da1fa91f3fb850179612fdb85658d4996ec16927f7660529d17f4250acd26e3c03e444f8ef45124e3478caaa9af215391b4ee6065f61b61455c2f779de4c2415872f487c15beb5edabdd2b703d0c677f97ee1a7113531aabb9eec3e5b23d57975d9354f965146f94e0748b1c065ad38e5faaf848bdd32faae8076b07e79626f5a141161efaa385510cc208e0488966f5909372173e23891fc3283c59962aeb14a614575739066be5eb5bce5afed872951eb37068a50e8f0c94212b8d6fcf1317386943750829216369259709ffd7a2a4d64459f7393f5b3b9284d3bc269eb05e289288713e19b41aaf4391e6a021e43f508d9f9f35af155bb75ecf0858cc2d113479449d29b045bf679743726343c09d7dd313bdc2d6ee1e5429f8b4f8ee919fcbea05f7348bdfcbb5ac3cf96c3a6c928d9524ae5f7e01c68b47d4713872c90ff7c9aa1af3a12966a1d551407bd5ba60d9433a6456167b47722ebd676ffbf7569b7ee80732ab28d3e79dcb9e015c845bf01cd46d38630b9edb4e2cb99792589ed69525ab09b84e094621a31afe3cfb0f50162a0264dfe2816bb79e31ae2294a31363822b488665ca5e46a5fb7fe9b7ed5b006862ed53fff70ee7227f311dfc6624789db7e76d5d8eb35b54c3d4fa22ceb56333336b32bc4c56464373a44e9bd6b6b256cc08d8878f06906fca87652d5b56852bc761fea9c0da91de62d1da25bd9b2a9cab31cd44857aa7f5054562dd1470a8b96d60c0f4e014878674ba5d32c03579a04269ddbb9b546d7e202daa99079e77a6a72b39226d8050f58e92690b8ba5ccddbf25a05c49b7cb346c7e51597f976254e105d7a5481d05af53699aa850250fa1e787c9139a01c4e538db56da2bc00dd9e341dcb06cd41a14c0d5cbe1aeedb63e4897f736e424a03227f93b7ea6efc4bd922a989089b76ca42698a6cf03cfbda2c64c8298d485b993bffd6bb17367b4c628614edf4eb52f869aaf80b99b9903a56030c7d168e4bbdbfdb6ca9adde8cf5b90c14991f7badcf26a0a13713dc873314322c30449160cb6c078ea2425f6c4df1ba04cd6ec9eacb7561e7d382a700b5faaad53a86109f4f92fbf5c801bb282cd7c183fa3ac21b281b753742956310f0abb54478aa7ce66ff9fa29deb2ec2523ee3b0646101145b2f2cc6c7a830da501b558ff5b8422dd08d68a4d8400061afb1bbc119373bc56f82482fa015255b8d1752d48bed735f6da1c872f0eedc8d4a27b464ec508faa78d051469bca7667892cbec3db7be7cc39c42efee53f568c08f51986a2e0716e29d4a8429f01647b923cae047c00a1a3b63281a0a211cdfc63b923900822ce6b521196b74dea07edb9621a3255141accecb7d6dc63441ab5a9b473896b31db2c1e2806f61048d1da82c9364a65ce0b65827b143d6d264bb8d9670a8d5051c0927740212104b91725c4d53f6ca7f113c426ee140ea331c737e2620cb751f449fa1e8ceec3f33340cc9325d5b0525929dc8e4d903a8f3976ad15411ef5b768f1f04ed434a2009d9fdf8685722a6b1d67ca178ef1cc876c2802d5418bee4e57d99649c8c28a3f8d5d3470700b27906df1630d83e2135873f10b01768289050ab94d6f1a6fb26a97b45081ecc2680c1af567269d76d4c2ae88dbf6287cd19e2d87d7d3f316f3851aaba709734b1fb5d4797b1a6e13b2c21b4bef9e3bd61aa21ea00e6137ee2d85ac80635b2d563dcc3ff8102eab4efb78ce454257552a543b95dccaad88718ed83e9954c9cc4c854d91d75a830accaf4a2d9e69d71418860ec355cec12b02c2a188602f30c9188a5488d3ab0b59e30c9215a943b592b82b42e209c86ae97b39bbd148bf23fd0b81adbb92244e4891228774d28b1f6c8207d095f0a05b2aec3a8c133cbca8aaa696379bd2cf4b2e65aa554b8851baf62e99f3c9894236ad180632f51e7f4506a8a6df786664b899307953dd158a18a592776125bb4a209f4717ff9959bba9e3401249197966d15988f91ba7ecad8e65b3d9581bc7f4e27a619d942c246225b7bea4d3d821efbaa78790d3ad6efed477b66cf1f2c7ec73dce52e7b42b4a6d68fe0cb2a21f79ecce4f84524619acacb0846932dbf42732c87d09dd5927ad193da7a8e8fe38a4d460eb2284cf5d16b6eb7d4e916554907c52a290983fe3c66e5ed8e9fdae6e7b93447d5b115cd8f5a9675853e4a6cde63cf9efced48797a44c4e6aeda9f58f617661af12785882fee77768144e94d35b22917ee37ef15767e19f244feafbae23e12be8c1f2eba476a26aa48b555334178c8bcf54a7848b17a5dfe513cb52430b11eb1dfb1dc7d9bf8e12686566fdea8478ddcdbaf13caad037019224ffc852c1b3536127b81dbb3802a83d083b4bc2e8ea81fb5826e29143b7bc63010824320ddc195eb1eff4d589f4881ddb467b5fc5e0ed2b02731f86f0938cba12201f5072986266533155a4dec9d1b119adba4cdac3e08b5c0f38ae999e1bb3f475c8ee4531ebf6e9247f1ef312be0c4ea8c3d6002f7db73f9872dff21a7909113e878c964a7b93c97740786272b5f214f4517ed918cc0ea0913441db7562175e8fd6396c00d8da558388dace48a790f7848695dbbfa5a70a7c22604738cfd16914893dc32dba134dd3b9b4ae2ee2a053b44dd2b48d6025f6d99e77db8cb2ad90a5edbcbcf06a1538131f91ef0f34e49782cd116a1fc33f961de5b058c1321c15bf9ab0765e28f300e5f7e1f1976c943aa2950843416f1baf53cfbc311e3132c082509a066ff7ddbe733bda77347be2d8f38ee1b89ea6dd6ff052ec4319f5f82cacced093dc6ff79e3d6e6e0b00b5d0ea557200187b903e0382016fc0e76237cf6a41d3136169b16b783a4d6bea58802df0a9c32157136a79faa4010d57ab350c3183b11ebb2dd65d1c38fc8045346fa13e00ccab6aeec0064706f772248406234010646e8a94965c9378419249a07ad6b0bd8d1eecb16a49c74181fa13911d8ec6c6dd871b221c01300180766d6c104c8cca286258c160225c6e9b3a6160d9c06d4d4df562bb1951e013b52636c4d40e1d5055f803eb76582c5665c49814e84e58c4ff9e463399056760b5276da0d3c04bec90a438d136a8bacd6f4b79d2d03288a43344b46007ec3c696340f1568edeb752d42d1018622af2dbd0053a8bf07ef60320d46ed3436818dae1e2bfa67a40182421fd4d70e0ff467e0e90aa6474a1f97cd8fffa03e941211b78eeec347e51d87e24c5dda37c63e1d999307fb67181d29e585d56e6db866f6c0bd327b20caa54362583f0635b89b796fb0a77fe9416495eb53c8694c7f477a1379551dbe6a16928c51bf94cda00193086adb60093335d31089865049ed404fb9d9cbc9bc59265c4370eb7c7ec929088cea57120e556cadd5d99f34653164ff8dd3d2c3654fc46af3eb9359929caf57456988d530cfcba09f2e2d7253ce8059329fbbff02a4ac1c5c4231c532fd04eede5daabd9afac0c8fd27b28ab37ff637168d51488c65927bd3ff0559ed1dc712d60e0dc637a6b952540b7dec5d2513155fb7c7f428002004c5d3bb111381d29cb8754d0cbef9bbc928eeb427a17f673a6a89d66a2a117423b478c95334577b44b418f1672967962098df448304bd7144b2b4a81c5722238f511a36464da9b5f31dcb50f91ed90c58847a8e7a778a1ca0ef3cfda098962737be1c2d0b551ee45a6699494b0bbb6c106af5ba107bc763c9daa78623d0c1c0d8a371229e3c9167172db3d946ce7f80defcd78e6c4308c2cf35b5b7dd5bc5c9b4d6eacfe50b5ad1a47cbac6eaf6d224d3bc9e65d2fe03724cf1e4d7de5b097ed8671c783e3341810f41fc0a056caa1b2807c347605c781fa140b2f722046da94688de371f80427ac299a1cdff6a3b3b53645756f4f930003e4dbdad2bcec773ddfa1a581da4e87be0e6bb3fedabe29c03d64b6b2781fedb5001a5c2e88dd361464828aa2ba3a336f8c5c3f5e3412c2a318120fc77ade892f6049b8c540d5e4dc8d8c6359c9b8cf21c5fa95e04483350e4bc48017d6599b0dbbf0c0319e15e1c0328a47f9df7d8cf164ea191242997c2295a26e6aa4b496a15199188d232f3d29c89d0442b37c91849d331849903def7c83f781f2454bf6a14ed4ef7768d88418eeae1312fae882247f01c4de5a538c15695c16979a6516f981b399a52c906624a96db70cd8f702fec8a4cb4c231d0868516d0c379a0a7e57df0fe86686724c03a18a908d992f573f980e1a981872ead40d0328f60d08a65920cdd141da47eb120e8e3b63efbf0308dd67fdab6616f50b4c070341092c75dfa730da1d57da35dfb4563cd84e6d5e52229141c5c9471ee38c51fb5c9bc38cb14582b6f7d22070b4dca6230a2e1a17c6bcb7ba02c343017b203d6a2449c81f3ead1d18c8da9e710f5222a884fef4e66990f99b30cc1edd35e00ddf606bcda27d0ed8ea7b121f19fd8c4e8348b61be32b210f38ebfbedca54b729c37ab53b8fe907f077f6c496d6d99c926986b1ad62abfe39c9ff408856dd64c43631b6653809d209b1a58732b7c2ff2b80ffb0dd9e87458d7aeafb095b944241875198c060d9e1b7a9e8e0cb56b939424e21b1d85bf47c3a12c611c602abd2deb195798675423c1be48b8e66eb4b764f3f31fce1c7dcc057800bb7d1a6baafebc02fffc5eb1e572e3f731258c3e1d9429a416156f985dfbe39c3a751626804681a3cd3ea86dff07f9d0d98d364e1c9ec46e62de76c662c62bd6beaa96121f11adc66f6f067b265db9d66f7d5758b9f2ebf4e8fecb0cba0a8d4fb2eba94e68e586f5a2960a7f29d6a7e4755ed0a4091854eee92fcc628e53c2df6dd4ff1a5eb9d5862e6e0f54d0a4e3c9978ba82d1a426e4b7d9889e9ac5eea9760ec21b5a452383e902ab6f45e41a3deb8b290f681d471fd69d2f3af970a1ff2b87c69484bfffa662ea4eab0920134da448ef3d3325a72ed2e817192e64c6927acf44441a1f2b963affd689f34417e75a21756fdc68737fe25da3dc2abeceebb33be4aca45c50eb45bc8bdb93be701624c052fb6873438773636a3784f5a59ca94448f865bd5ca8c1c0f8772c6c3f553bcb84eb624132988139ac82ebad56d4dea175c6bdc2af9f6a540928ced924fdb8e2d65a633655f003fb770e546584047f2e51c8d8dad054e2529e9b9282e425833d86070e8fca15f66266a322260a36582f78f3f6f285d59d4bbc008f7c143c387d62130177036f77cb43c060869f38529dc5a763700824df1fd8b4b54b17e92923d534aad87ed3f40b1c5820ffa55def8bf86e29ee3510582a3eff63ec9dfd84096d4dc422e2aef396633f495b5903bffd0887820d3a0cebf0fe5b837b37b58b0f12ddb3fae802ddec518c195d2f12b9c212852993146c7f248938b299ad15f6a0255ac555f91a81fdcd7595138e053bfe00e681cd13cac0e6ab5bae8e208dd2c5056bcf43bba240800733d8633738497c1f9dc415d74c0ada904c09da9e97e8ac7d1a2aaeae807c873a14787dd0f754211206008264bca466ec28180b0a2643cac9ef8b1656bb4ae185cc477ba1be61619c0ab682078f2ddd33022e0ee1081abdbe3c1561c0e53eee22a12e3f77169e74c3d0a6ae4c595fd6651134b9102fdbe921059a4bf8df925d4049961e5cabbb27a065834c3b10748c79561ab65f0901a2f20cc942bdc89b7edaa81986487670e85c937d6bbfad31f3e2da2b61d4d796424d599cf37da4d766ac6d1dd5d5294225e9211948a289a9c3b521092617a404cb9c4bda066b73cbcd980cd90b92dfbda9df7a9ffb584c89a7dc1b285d5cbe454ad834a6a67613f4f3b5ed12290ee08b2e979b9e8ea438ce13dba029987fd3ac48382eaac452d2e8c7d2446d2c2fefb21caadf847fc95508f4e1c566d25fc473f5afcea2b93fa3eb28473f203c55e86e5417dc9d2b07376ebcf526c75138d58a1be60a8306ecadfc964512c54223618ded1c8f99b724ac5003ca65a0b8cd6995479df9d45f8b2dfd9457ce5a5c7ebb02aa822c43952f9ca9c14c39172e7882644eb2dd9a5e7f7cd45a659726b7047fd3c0ca050bb1ae9649b923b95f313857e14ddf0f24cb789df6c2cb792581038b9772f5212f818e2fc66577c63a257aac27f2852296e78db993105638ccaab38f9c177a32d4e52ee321038cec8e2085e67ebcf7e514eacdf3c8cf06c5362193f072bbafb330f406bc26f43e94c39f48d787dec7690db9100c2d24a9a4b8e8f814d8dcd3d0cc74b9f3527272ba8ade17777798bebadf706d8327a936338af69c62cfb6f622bbd0a5526ad6e7d72575734b9c011d999e0512f3fe03ab832fc835dbc80c731ffccf5a2f753bc6ffaffe204021da27409a4f835909d0ab5c29142666ccb35f21ee42df40f854ef5657e88807fd5e324adb99a866980435ea8b58f384e373feabed6701c7897e15f971fd22e28a0a439c6ab5de9a3ac2600575b8e97077cfe2dcc924035827826addfd95663495125ddcbf901b2fce87bd250d4f71726254a86b758a5a469e4514754ddc216e29e1a81eb877df1f361b9ac8b29e3048407a5d7a24c73d63475198382f1534560edab3ae1dd184fcf8edcac0dd6bde1f666cf1a6bbb814593f3c3f620c778858e1a60295765691aba246390c8dab125a9e6068c748fae607498cab5c2c740d6daf4e38c9deaba86108e8815b848c1caf766ebe0e31d863862b735335a57e441ecfb7fb18d827f337d9eae7fedd6a7c831b3394b2d067aae18d5cd8829421719c1a417b583054a586d1c42c88f89b47b4062d0344e0d55d5914d60964a3a488ac61a90f012d76ceb34926eccb7e8a460e1d0d3dd8ec3ef353e97af2041b6bbfd66ac4611e37ec9867ffe94146c9db8c57f50f986939b39832075fbddcc0247acbe607c464d29b8ddf89ae314f4a3d0e340b5780f22c9f3139f59d45192827588ba2735af1ceaa3e98e8718d32e4674b8366d7c1de0569946fabeab89d10c4d2c43a0a6cde7f45be594c7ac32960bf593085d9586ed17804cbe8d899ba89be02c258ed535b479d35772be7ce281a095b8d6b846522c7fb5213ff254c5f9ba11dd10a67f2bf414916acfc14862f1fb4649e547a8874b5abdd9c46522eed6da89f978687e407eb6259d39b707fde2ead00494224153325caaafb308874cff809d4c8a601124f88c1ab164583b4ee8b989049fa36372a16776bae82a6741d30e275402756b2a489c2f62e336f5effd8e939ff1578a245014b238be8ef92649450ab42947424af4c42afa129857b7d78d7be925a829fa6c3d483a6a79a884182ba6501d8ca09736b7c3e4cb25ade0a684d843cd87a22f37c9fbe7dfa6b7b6712eba663f29ca745fbac4d7ee761474ee66351a3cc73acdd53a143cac4c2ada30755aa1a4380b21f87e6c96a1401d7a4425f77eb75144fe1cab703d29ed324534590c518062b40df56651906c424ac45660d2937abb33abde155438b6811664bd2c99c6dd95fbd8eb7e988f3bc4cdffea69cda5fc65730e6a221fd0fac9dfff6532b598d41e07f00393f4072bda5e64ca5ea2b62211dbf01ba1c14244354c0cc4b1c04d49bd357fd44e705fef3bf72f46cdf4ff70dc5dd4cac7c67a716037875c53606f6e310fae2f4dbbabe7513ba7b9edb7892f410d4578631598ea1e4d5134653e36c96b2840ecbf24dcc9eccfc942ba66d8a0e5dabce1334c7eb4e881ad805d3cbec7a887946b71645d7c72924018579242602b80cfcfd93870cd44a4bcd653a2866d942976f1597edecf92ae53e6a0c2b50499d8be1ff2372cec8ac0120e9e2decdfb3a525256404fed0d415841479b945d7efa63c60e07a5763efef8858c331e3b6bcf57852ca711575b874b288704fda19a0c9e2089905778793a8b1f43de5518c2b1d45de6bd3f937681a627cd3a1ba41e48c7b02291366f15b8167dd1f4b947b2e12a581174443b27cef3dc14cd68e44958ca915853a5f4752645fe100c0e9275bd0320d2c61d1c74d9a620fcf97582cfde996c9d3e1cc99c60eaa6d7c97d6c9b33f49516cd453e9303560e781bbb2d510c85989c1cd90acc0da291273e95fa6d2e2f599b0e7466068da9a10052b38cd65d486aefd1e95081c6923c0439a348d914ebdfb2b6cba675cfe381eaef982d03498c468caa792c436e7c13ce0505ada56a801712176942a906b794d6b24ca8a68d09213ee128316139cb337223c67c13f0d062b49a1bf3f35816c9684f1a3061ccb65137607504da995e8e41b5035cfbbe5e3c0cb0bc678e1b72694b3d2179a0565194cd380065198631e002a22c6110f1b9795f0e6a0b97987a77c2d8b7f8580e8675168fcf5b0bcd80febc657c7f2456ca5661a0d51260c1025e40a7dc9e5ef140e35be32ad91d48020eba6d1e3f7cc32eecf5c4e1c85f0909c6432a10d645858328748b6da5d0422592630cf41ec22d2b2666c2da88885591530817131f3ba76076e33a436ccc035b057469cd172d9cefdfeef1251091f92962dc44a7ff37759bd52d0adeeb8f657ed7814bbe6db0051b32263c2d428af25bf5e41526b155459e2ca799c022d397ab65a9c37fac7b68c5dc732253febbbb4ab99220b79da8d7795c2f00a809a73a35ab4486ef9ded98d83d40b96dcd06b4272a73baafdf07cce24b49c9a478e0f4787351cc94a900f9a4005af9cf6b352be4a0acd2c295c97f64080a8f336e1b736cfbbe865aa1644c9dd309c3f131d25e5e90b25ac7a092b98714cb43f10993a8374ffe6763b7ddd6cbad3d842fd75dff1a8a7763d9f7f342a0886a96feae5a7ccfd536eedab917c5affb1500714221abb214f38ebee1a18acbfcabf6fabcfe65a8707f8518dd124609ae1e1cb740604ef475e372b1f65d2ef78b27bef1d25bbc4ffdc68f753e75fa0dde09cb5ce9a2ce69590dd9d2eb0e3047509eee1a1ae76db5c93efefbd9787bed1a69ab2fc474e030b28c50cd44a0869af30fd73799670fd16ee0da394ff2bd0f4b3787a5cf7421c36691d65b4cf59f96b63e5543f81b5a4efe0db7b49999bebb5b591cd981346bc86698202ad1e17f16635c7a2d956979b21341651bd54ec7b34a65bc4a8733a134455cd58f93ce184dadd575c39fe961872fc0f937b49508bba673a820b3e151ae192fa66771bd350de1501a6724a19cb3ab807ee46ee8d8e6f88e1c61871349ef8fc6eb8362e75710bedab86535dac2e020ef8dd5c56a3037a34bb8e043c14e419bef7bdaf3e176531540ed5fcc46ca6ca61b3a1a4271d7bfbb66486dacd898a0291d2abbabf40accd2da0fae1bb0bd99b303cb3a8e826fbc66e9ed92ced7accdb1434d04ff53f3dd928cba041f8f2feb331ef8c851fd302f77c76f235961e3597cbcbc4f6bd0cec8041a6f8aa72ff6ae73a587aacf992a5d97986148dff49a9b72e18368197d070e93f5c736587dfae053ef5580a9ad033a867a14930d6dda013918ca87a793d98219ca2379a5d42461e20e796565e65b83bff04fde1e0354c0a767011e9c5340fed0db41ec571e3af37b63b56e86a67aa61c5756ba5989bf6938f0eec53b2ff2b7fc44d024d639d12a13f2c063f9bb4d715e275412d62bfdc34612ed4276417e5634763f974ff2b3abde903084fb04639a5cd7f0e90fc78dbf2394bd0df585dff18b15e6208d43d4e8b1855c7d17364e9d108b94b6d9c40e267a6f752d1680266d827ce66ca3f15f1043dea93d8f8caf11c1c122b489672e3f8bbb61cf99d0a2f378fb045f43100acc10259500c38c6534fb3fcc818ed4acaeb423ad659a7792aba5c69675c2efc786e4a0198ef0981ab591323493cb9c20cb8c162648dee851fa4497e3fb74405d311d34de1a91261003db12d6ce80f970dc83d4ca77885f896a37249266deb711f4f5249e8e408f5825bdd5544d4cc60fa7ce54c2aae62441da29181fdd1f30e2c022423204a1c18e3595a0fad6706ad247f57e4d035a55aabcdaa9202ca0efbf085a94903d17eaaff37bf7e6f39cdc5c0dc4ea167e4edb2690bf325b0df341f74cfe5b9b4fa18238fdf91cc8eb05cdcfad3cf5fb4ee2276b9e96ae0ae43ae6b6e4cef97a6d3219c6da8284ed99bf0d5ea5a283115a0f2ba5b336c79e9123ec8ad58c1bcccdee4f31d22b60ab7f6ec432f09ec758f9a021b5b14a1275e198d3b18a02de89d86762eabad07f766ca406550da447885ae6b62dba0696b304f6943e5f563e1fcff7dcf11feb5aa85fdaba335208ed038c5abb29332027dff68bf6e0492e313869f83d5a8f4fcc275e7de7679735ac635ecb5602bee9576e3d81ec3e57bf9ebe31a0f5d9589af7ccef1449f3458a6cf7db428b03c2acdd28c1820e3de33cb793f647d813718e9f8683be1b9d938f330d058be02f1a84d4c7c16e56fb31940cf144af46f4e5b72065273d8856de3fe2e3557c1418b3aa7600781f5c55a179bec990c7642020616f7fb28ff5d29db69553165b152bc68f0339017de311b4e25d7147d902f55ac6817aeb405045be650e6e65a302d09847d558f627a692041316185e02b5c4fc7a0a5d4b3c7eafeda7cf416b470957626de17eade3c75266a4720750374bfb0faa70fd19b6cf9d39f3ba1b52d5c3526ab0aec0a53a707a575e15b9f087bc9fca6d2d219957d1e712763ea32b6ff96318a9bc58b7bca3d897e7362e05dd3cd4b8d4ffd62a4665be3060f12e46cc0757291060bb78661ca505a8a58f6d46a1717dd367174e8d9ed37830ef10f03bb5a74df0ea8a322ecb9b1fd89f243c0c70ae0fb01f4069aa044985ba80a4a9a62e35fecb68409acf04e8ebdeace5aa4f5dffdc277422dc30945e721db28f653285a34743c0faf4bbbd3501bcde0b19bd3ef0525fcf018b47f5a54a6e349e292f2fb5a5a4004565f8d8b10b0863978c13de7a6b4ad37efb32b2f5b31a80b86127e39078aef5ea2e4bac94837b241059e17c1d2bdc64ca822b1cedf0077bf2069f4eb7357c9f2cb1c3f85523499aa6739c7cafde7d8cbb5d7180aae2ebf726f5bdd2922a1480b77fe3522215c7f5fe702ffdefefaf127c613a904ce27f1538e44bf2fcd95d8f58d4b68b5004df88dc2e0e23987bf1d87ff42fe589697ec39b700c495edf786e9d14931357fc9c96d48ebb5208f097a9b17a3ce9c611fe15e3ef1b872373b2b3b9be5bd52086ce22a6339fbea1927c12aa5288210164e7049ba5bf01372a92626c23fe7f768fbfff6d06dda4e6f72f35b29e193e2a0a0d5579e239ce6cdb3858657672f1db902340ef0cea4cae676a77743488423b33c11c59058cfb5ab466e4fcfcc190004a777d34b6d778ded5d55967855ed8851ec8ac12e969ebffea3cfc488026403a2e27b2e5ccafd1ad61f936825bd3e12c68136011e2674c7e039bf6fc2de180554f68331da2ed8c861290a2c736148ef036d20259ac50c484a8514af7a6be7ca05d7e3c258f554d053bb486b7009e10717f2c30dc7ee26787a2e8bab016a0d3edd7aa56717793f065f6cc2af0b87e4acee8784731f38390165199b9ae5fd9cc0df13959d5dd7f99a882da3fd161528a17c6cd75be9c17375c8d579807ca1a3c2f424a0b43f31f21bb20a441f39ed1a715fcd24962c6a5a0338d1c2407fae868455d4dae56d432bf31551efc0535d6f495f5dba03971989edecd9ba358f108e593055e49c693ff7b8057f8b03d4f433bac76e82cfaa34f811ac47e03d43610ffed7cfb5142bcdae80da88a519afd775e1d67e0bd8d78b7b68ecf386bf218a9d8dc278aa1e20f45b8c54d74bea9ce4c3ca1c18331665ba7257a58224a0a4383cd4b51ec931886ab1955982242381790dc21303ae8007444c4e47ffedec266e2712b8570040df0792147f601148e0343b7adc930e6661546aed30cf6bf0263fac592c5434f02e350e1cd25ae9b5f007e4fe00ffb45029c408df46ee01ff474466d04e9705ac6b85dfd43f3b156848bd61d66e7cb92d4a0fa7c9ce6a771eddb4b0b7a5c23a6503bfc3ef5765392287e1d761022aadcc26f398972642b3714538384ab633be0d4b8ea3a8a25525375f6a3fb142b33e5b175814c6de08368d0466ecc6ea26707e401aa490b1feaed5541cd2b2ea75b74ca87004b96472ec34e4662c282e2661c495bb70ab3b45f08f065606316d43c5604fe5a5d995c3e85bf63cb5449943825f19da0680b98625c4670675b48191fec49772d20a054828f7480e5adfb775bb80bcf14cea2b9990cb6dd31522463df2aee81e5858c63bb28a402fb43754dcb4c1ad1803ff923cfc9027820cb106477d50ec4a16ce687835e9dabf05953fb762191aa7853a1cf003642ade0080faf457d1b03f89b0e4062cb4bc50551797318068d8c63aae368b2075d509d3a388dc937d5618976f9ed90d15e6b541fcad0454eb904d37b085f49ad09546d90c292d1964e7609afcd2fdb9dda451649b96eedf089309e1e4dc26375f480a8423eadbdf6bc4955c1b1fec974d4141413308dc8a5aca1f964ee7a690a0e4bc52c6a89f2f300ecea9e325a045bf4fbef351e5f479aad17224cef1fbd7d1242d0be499be3748e1e2543cb0a426b716c8205309299d6258de232103ff62cac52798767a965dcb5173f0351e5a87b3233c38bec34b6554c553bbb489531f0be7bdee2a420d1a33df9a717219b0eb0d6d076c62363563cc7d2d7f7c71fbb3998105ea1574ba95575594e4675a9fad3ed11b040138bdea0f3b540e952579c914b5e84b2bf6745e57a8962a6a95bf2e00afd8e48471bd1a21a4cb3e156e1822b6d75961bf00e430313228fe3c08fa3fa73d5cfa232d525a2b44e712b7895ea094cb0c442069c6a6574ef073d5a907f3deed0f454306ff96e7b2f9c911e64e7252178d4eb8e929d69d6c1c663d68e0d112b89e67ca5ecc28e0fb28c9c5658da67a54352fc8d4416e1b1e21dff724f0f3305142b0c01268b2925bc188f8a21ddf4f265bc76e5cb47f36162be582ee0008b1b57096aab9d22d87db337a203a32b7472df8b15dd6433c727d7fd7e41103390b518c06458d7a4bc9ff38e0875942d2247ee04101812858de687b966ce1c58f345ad2b87d084ffeda618ebfa689c331eea24360e0d24e190261c4f34ecc769ba78ca851d0d2a3655cc09b3550ddf7c1c5f0afe95a553d5ab2855525406fef30bd90e1e20e6ef498185dfc85975768bdb9d7f4b3cab314d9615acda2df7604a62e4f51205c80319e3461616823f56ee152683da3e9d59479e63365980bb7348f6ab40a872596053406d99f68b922081943667b26b3926135bfcc06caa7e928283572667c3581736388beecc23e7c1c6248087d5c5a84f102c742e43f3b89f164c63e7cc5af6e12860cb7f3a94a39082bc2faec529c300a3b48613bd91deb9c573574281e441213a7f1aafc414a7ff5d86573aece39f755cd5f7b55232c13e98d55e1b8a1828fb90ede783fde2137b81a84286d792d9a6a8f8f3b9b0d67f11a5d0826683335ed594cfa0bb402a434c53ec3fb7bbaf8f1da50b32b37a95d0fbd9ce3e3a0a544306f2eb202036b85f3d2362c750cb790f56984e74930f805cde0dc7ce9d23fb51ab879cb081beb14f99d52067c13140ff907dfe56eb0343508b77a21fed7368a0eb1e3c0652e765b4e040f3723d4db3644879cd0e36b4192e1f4827fcc273f190884307060cbbde2bd6c7fee06c9334ba076782260e70c44999dda8a39a83406a7ef860e52babe0891b427ba42818d08ebc3cd60a5fec905a7744aa40a2279a3c4afe3f7075bfd0aff026fc9aa0e107fe41e05873a71fcce9e4077c7dba983177a4ab716e67056ad310d40b54062b9edd6c510ab3249fe92eeda3bb8099e8237562fd7861ed373e7b95e4d333a2ffae1c448533c6b3a40db7ba51d30f1cd19a6bb2b4eb315c19e7132fd4439dbacead207b6fcee4650200ce1e68defcb381cff41332555de66e1eba445d130291f9f06848b6c1376a7c87395973b175ecefd4163c99d48343e47e242eabc9e87cccaf435b2df1aabef321d953650d60cf8b5a59ead8eb549ac5771baaf2cea5dd4a76a791c9b84b1b641f3505aaa9552fad09c971114284a4a88828f3ad19f28c0ef311b137901fe712c6eb2cfd2af49192e10bb9d250a833f017b0d227fd0449b568f02578dd60e5e643c89f2483f3b49a2ac53f0a723d760dd1ad93882afbc9aefc38835432417818a2ae5202b669c6ea812a06c1aa0d1bb026f9c055050121b779f067bdd98f5826ef129260073a13e2fac745d6cd7bd63afa6b56bb44cf646725d093654f7f45a52ebd291dca33b054f93adb7b0bcfa68dd10eab889054afb28a9308cfdc34fbc8026ed613ee710f54aa9071cb482a4bbd40b37c5d92c7004908bc21f8a1af082c4b2d359637e3cc292eb45d150f2bce60becd3890134d87f6d18558f336b11afeb852b7fc6e79c6cc3078e95705c551ce5c8d39c011b70473cb1ad3e908624f74dea2dae1b9c73c9e5c396cbff1645c79781de12c43ef5ad2040a071ffa9a95dd517bd03a7ca5d169678b49c681d2e18c121118daf2651b332f6c521125a66f95896c615c808da9a4a32222943f64edcc6bc3ef47b8a9d36e8a6d2382851c10415b3b8a2cd895ca1ff67048002101e3fe0be3d454bbc181cabdda3ae2fbceceb537f68f273036feb80ffa3867cab24c68f863bfe07a3a6ae4ee91d0b677695fe52983ca2ba25858c95f51646871e5746b92bc69968d78068ef888d0a51258286b70178c1ea3bbfeaf293f6d740c38458247838fb6d803d07b343dff683ea918ac68deeee3743501412c252d5686d7a05ebd7fce3cb063451217bada0033e8147ac37c4ba1f2cd3fc609e5fe6b5b5ebc881a4be42e44b9b11be93fe3879c8111d221ea987207286ca7e376c404eabaa64662a434714b7c8086fa7bb9a81ab16d23fa2627e92314ea50c8d4b24ced48f7d4ec5a701dda7d0497fcdb290f0f9c9844724f849f74b319354701586cb2cb170b5a1c7fbc62c3297b81e4083723fbd48e217a75f3edf674939fb8e0688a148792a2d7a55247503f88a6342c6023a13e5b6b4d91c97ec3871a992a5989d33dc41f469b8df780ce71dc697c7442708a4c227f00a5c1cfb5ba7bd29341a7035580050850f33cddba3cf5d614caed211229cf8cc8e3cd823c61dfb565c7150015ab956a326f5cd0bbc5c52547faf31a7e79b4cad99565c678d88ec4d194756fe8b10d684895dbd0f150be19827fbb54332259143986d7706944e8b99b2d4c5c9201c5985cc0c392cabaca457263d58d492ef0ebc26547998399871175ced396e281e0f5fe66d7318663da0553653067f5678b4d5619a088b5a0418b12fd06014f2698c331bedad110ec027a772676910edecfc08ccb8e71e9de716381430e9d0d65c3768e6cafc8986ef99ceedeb5a32db2956f518e9281aa6e94f175bded6aef3802aec76e6b474dda779eb5e4d8de7eae16204bc15d1946dabec9ea3b3f052f1f1f3d6ba927de8ce86f4d04785e620740919f92b51a1a7d6fc3020bdd8623ad154aea9f4c75130ef203bac81eeaa1feafb428d5348538100faffe3777cf48ba1d9beea1dfc3bf02a51f5d822afe747372d8f1935d981a1ff9aaf116891a7eb9b1f81bc349e66fec9c1b8993876fe4a582dbffc4973baf49be0bde41458c99dcb1a68654c2aff955b67821d06073ecaac36f40ba89f2ee46291f8aaa7bc86eca83e9663433b725de8df494112bf01098a7668235703e7db3bad8ec03cbb21a350496fc02fc48e1c3c9f1e2906438dcd35bec6659d4a338ce5794b94673d25c5ef72c78e893bab7e19fa500cd57923f2421cedb4891bb95f4093df081e4d8a91e11ae88cc9f7ae066c8ed2a1baaeba083c2902bcae09573f8aaff38a6e3461ad0499ab18df0ea4f757d70390c3629c7cea8ea532455e71a32aba665a06f820efec25159bbd4eeaccdd236904fd4926991ac55d53c46d450a3623562fa39efac87c607a33043e9d9e846c92de95fda4e210f7ab88b3c76026c296c381c711940de274856d0392317e10ffdab82ccdcc9f089d2c96e1ca13d7581396373c34b80bd34cf8f038d65de3b14bb78f4403bed091b4376013ba6efe0c05dd4d942d681f78dfc62d334ac0a4af90400c4d8897fa55528e16b714a40da14a270d3ae2206af4de7975da0de0fa5fb9556ac84ed3efb8acf3b66d1311009e9bc8119a5492ec6f3682ece1adc51895caeba93d96b3f322aeda8a3d47ad0219d8f6123a2deff424b46fe2a50dcdd41838d1aa89317c1a96766403e5dbc80ce83277c192582bf44b81dc2023fb387024f01f9b96768effbed930d977639ad4e39fb854428b930a3babdab31ddb562e5dfad6a683aefc7127fccd4cf01c0d282b490b94de58a2a58edd5f1d15539e2f1352e90eee8ffa39059196b1129a5a5065b54362b93d8742f81f0f0aedb1a09d5065a0df601162a24c00910cecbeb877e57e75d9e33cba9e62c3ef7bb3346f48c82887da58177aa9d8932217c2e088bfa8a388b24a7a268bd2827f943c60d96a7ff0bc6d05d44439da645575551f5c700e47095ef5cb1e56344e3db3260521baa567d7d65925841470465fa49c83255d6efae60d08f12422ba6273d24fa53c7f27d2eb389117df2c399a28a07b89dd7bb182fdbea1906fd0fd7eb0093915feab274d1f4539d82f13f97d11964fe8f6f2a879a66d934d224abfffbc75b38ef5ee71f10fb14373f43d824e7d194746745eedcb30118cb34f950126465f3ebdec5da784f4d1953af304060754af60b49e9fb77fa84f4af0b99b948e92aba2694b22c59f4e805fb946309ad4cf9cbf40aba4f9bfd6846869b5b88ee8895e750ae65bb2774faa38e7e308f29e2776d546010d8d7f8b0d596fe6c0a83f114a2aba054611fa47869ca0d394c3c16c34648fee84cd7678c592f4fd7acf81fc85816dcf1224dc1cd09386a70a48d24d7b242eff1431130d0d69a8bfc15df70a88895bac2e9f652f024197422e225c63bb92c9390972f58dccedd23df40234d411018b6400c0136cde49849759943344c48b587d594c600d2223cbd16f529364e51742562815a87ad5d5c7a332f756311eb622332cfbe74f6d0c0211239acab8bd5a2062f90050f02d1d2e4ba144bf01502e52296c93c4afe303d1b08a46c1227b419cad05f34f565641f93eb51eacec615aed72dfd5ac43957ba27c777336ee2867898757cbf79c61310f1e5c49f6f46d2bdabe1db258d3aee80ad7e44f5eaff6606a5f8b26e2c2767c89238bf85d18c00b166791678b71b3ea6d5fe4c5bb5dfd4ea21d1f833da86b0f370dd09af22198b0fa02501bf809327a439479fcd3ab6f1e8e34f57a8a791ed6ff81011e7ae19e64d4413c9055182a80c929f2874221ec4c195bafa597715b9884063567ee43caa22a09cbfbdbfd065f9dc903307fcdc5d8f893d736a34d02da2743d294fe3fabefaf3b0e34fd599a742ef0e7830744d6d5473fd328b8749edffc6bf78060236702557c2789e6788828a8747acf35f9ceaa1868d7a712a39835e5e39534e73d3623c64b0b9c6f5a0af37af486a0f28bcb3d8bb12a7c2db2edab4066fe238c58b0545dbeb3b6890d5cec129074533c5eb1d8bb202806a0e4e116b815786b1fa377a17cd3bdfc5a53b3f5472f7ecdbdb509af3ec90a48fec3e3e5c32ef2cc2cc61450815e72daaf3d5e9307a3dc320a10e7a7fc54bfab4cea924c50164a94f9dfd038abe29d4f05ed312920089f6dcd091155967b6613608f88594a31f80a0397f891b3d03bcfc513c845ffe7f74f39dde92251543fadd6fd732c4ba0208ef2ccd82e31c0b7928c49a563549e8eed4687c12395544ce8fe3cbbc2c60b2680877fc54fb1ece5fc09459a740b339decc6c3d7fcb766d37061e7fd70311e93b8950d9d3d7009ebf47526842397c9c56c02630515dc35e7a396c9de210fc26f6f9abe3cbc9394e6ab410fd0a2345de3796bb409c84bdbc0a9759257fb56270df07b57c97601845fda92a09426a37f8453901b48c4a7a0794d5c622904e1f2acb3192b2e679bd78e26f1c492f80d8026604a9bb65a428a7abb72399a4661e509ebac9de9cee556e281484273bfa3c0a2324ac5cad9134068ec5a96bd61d6aac62367fbc0ea102245cd5be09ca9ac73a33c32035a3501d2990365363340e4ec7377a7ba51919e791c0c95767a8e59a252aa561275ee3374aea3c13a5f2ac51d43dd2fd53d55a64b5ffdd4dce21ff2ac36e5ed32cb491ea190b00c26dffdc6b7771568853ea574ea8aa277cf3e980ca790cb4af8eea09aab01c3804298bc04186ce966479401c435f5716565710e86cf6dd670ff34a144eba8396c216084aaa37f0531ef452b24eeae7cde11bb0ff710322427721b4e0386287784fb79d50e756e876fe1f5883b5ed34b4e7b7fb0103f9d410f0011dd06a901f5b4c9a0d0355345b9a8fd5a53526310c60de5262e6bbce94422afa8eca9af6b892d45eeed74196539b9ce8236c54de06e53ffe94847c1d31bb4670e8199b81a724a418b2181db369ca44fbbde2c2fd09c9a77a332dd3f39e864c2424f775d14114b3bc1d9218015827f4a7c47744b6df9d514fa0ac97b1a96607d78ed97975f98fe2630079d9262feac9dd71a2f12fa646660865a38d4bfd1d1ef671b267fde2bc8e5f63af0a6f62e87553d10d88682d629a4ea2d3ac85542b03676c538e4e848ff8eedb8ab44d8b3fc397a9fc9d11cf87867d84d40dac833c24fd7f7459817da75d61c2f1e7439656ab7e4eeec9ddeb240814e77655a213f15cabd20c7bc9bb68753669ea857384ef7a0ac47e85c3fcda39120f22636cb32e32aa9892169ad8fefd6660827a7b42b9545cface4971f7179c84d483efe7fc23865726160b4d3ab50cff0af0263a4feb41f32b01159ae9df993ef8a0413cb23d8caa4d3be8fa58c652597c2048871841f3657fbb9b7b7bc4bf172ceb4f6949170a2dc69ceb70328b53838d84e67cdcaf50aa50ea05aefa7238a543e7a4b7479cf451a19cf618e15f9ab7957ea500aeef17b0e0357305d01bed95195d0c1299c9c2520c9d578b18a73c42727afd76edf1e3194a3860b13ff9c4200b202b73b0f3a2ea03de1b8c3eeddf86f02923765b74cf126bf84509ea7b2979326d7373ffc82f8e5d1c77dfc772d935f8c8a5c01f8b489c26630d7a2f389875c2a5308fcfd648193ebcfd1bf393a4ab3fb04cdbcf0de5514be8ca48f3783a4c5bd5a059240f6420170ca62dcb5c0f1e19652f5d4195a91bdd12726aafaa38a1296688226211658e8b78daa078960ab7df7b518dc16c27359460aaf5eb3d37438659ed1a331279b538888d435e89bfd5e6f735d70ff4c18cfe324d61d7955507daced55759f3fbfc380e97174b7f42f1d0d9458d64cb8ff49e8fc03b1a7db7454ff8fb4b54eb326b95ed70ea7dc8adfba1ae20d5b64d43613e47f070d408f7b0c2e3455855feed699aa7900cd132c1a32062354b123120aa84b0936749ad27633dcca9a6d08bc3b8e7a46a32cac906d79083fb638ee504e3606fd6a80770b182ba6e191bb7dde80b660caaa4b7a1178aabb1fc92a7148274f0f2907dea69795d7b79ed515572b1fb7433b14e67e045a5325c71751f4ef33d3ca84ef92a57058b0bbfad429440e0de6edfc50b722a4f5e70d61614c24a94807bdd5857238eca9752ec16ee5ad29fb9ca825c2384ad5127d58aca054df648d5b71db5516456d50e84c7c53b12ad40dfe985c836180c46ffa570aa9dbd98d008123a912deac501e4c286e4a501aed8b891663106151062e9af272192f4fb7c53415b66db1987dc5c340c99efff19eebec95a036c9bedc58d02449335c452956adeaab8ac9945fd37c38ab38e643eb7ef9c24b4af04b59cc846912568167e178996b04a1f36fd8789322815f50be2b4e20b8de8f81165e9bf3062dd31aaf6c94c23cb02d1a899dac401edc5ed53790c2854f3a10ec919203fdfeca8edec2af1f2d0394ff6823874bc14324a922c63129d0522c7e2c1c738a350fd63a3c79d27f4c8fda921a2902d3f5e7c50a2572540064a1ec1b17492375d274b4d0876d86fb6ef1ae98ab23a597c127718dc9a964d0e0f9011499c308ed8b8bd384a1431af867eefa5dc965ce5c8d8bd79fa0898fc977a8ef6f3c6ad40ffbc72c9932dc88e06109a72e8a07e13bc4c4dbfb30e3f6bd0852981390c87e7a5b0adbafb6852c7609083f418e4af3888da8ef4c2ddb0aaebd597f1f0d3fa1cddff742c58320764c6b2809f546fce29521c14ae7d0181c08f46780ed483545e6566ad60458305cbdfd7fe3f123afb7b931c9dd4732bb146254468b85ac5896d833514112e22375efa3131e5317f1cdcb3f7edcf002884cba764db02cff01f2c9a973e11b3f944ff0de018b2c2691d2fb6b28359db876f51abdeff2fc603f099accbfd5d383f0e2145ba556f0c3846110b9cf07aaaf4efdf2022bcad1abe82ecec4e6aef6b246132b2d05ad2c0202573df0a2fed5d476c45cc0e491c3cf053bcaa777a0bde80f488e46143ef595471ee5e4533042e8407b6e0a868aeb5217841182d01d1471d06e8b60ab795632ac0f963a730611fcb4fb66c052273df8ffeaba6118b8eb5382cf91cb7ccf88a4c19ed5eb3f3f53ffeaa8443e64e16a40888c0d99c105abdebb7fd7713121bdb9921ed418dfc5bde36cf6cac29657c35a79d6f750e3f11b0a57bfb579447357bc96d867563e7700fc5254bc3737b1c49ac61f122c8342d29a3d5565623845111ee2ea6e77ed7ebaa32e3ae24190780cdd34a43b807b91400076111a951936130bb4446c4e142bef620646421fab89aa395be46cd3bbd0a9d58fe3416715d4bf43a3cb85b3c72f71ccc41b20bb19a1aa790d48de89392d8c7b146a3c77e2f349f0ff5b32b0481d7cf21b9c5053c21de59b8819c84495791dc60c4f8c166ac1409ac68f1c405df2f4c3ef5b0be58c8014f5bd5be662e1a9db05df81b3621962fdafc909e5c9377f0dccd543cba3512303c1370146666ce28880336eb13d64121d83108a2c95da2fdd0d680032789b9cacb9775111bf09275828e4d97285aac897ccba56d68c8d758ad5e8fe795e9138b133d89b7b4cd48ceae26dafeada0d19f41fc23eb95ab41462b0b5a6bb913ffcd46b51cfba0f7fad45c5c755ba41a23435979f042c19ba169a38fd5ca965cc90ec9058f516eecf164f7dff1059cca77a0b3d25fd69e0d197980f4b042bc4095ffe0f1648f4c333581252e58f47c1a62ea7bbd497b5e82bc31217ecf1ab9b963972596de56eb753c607a6cd66c899a021ca0b15e7c1ab410f35d6300a9a0b7c0b9216fce4077a8c0d3da2569595b7d0b882e84c3db774b7bd4bfe72b35bbe904d16a23873ec5543331c9884044e10ec785473b8ae7e348dbed0287ce6aabc3b3728bb3f9cbc005fdf4c9f06619ec91a7aacb757006150d9e66377be84334de3c58c0f9478b3d98ac5cb2a9cbc7acbd509d40e6f1a70a8b82f734152aec77cedef32c351b7d0379c0bc760f4b3bf57cd801faa6a36b40c574dd5b8f7fe4553349cc75f8dc0b76900929da6630d9cf3202dbdc36206f066326d5ad7349a99806e9d21656ebe60d037214338b339718d6c1581c05fa80d892228154f449d4eceaf4e7f77aacaf30a017d82ab0cd5104e55620152e671129a42382413638f0aa32b68a18ced1730140a99cb31c4cc605c08c7cfe093d0f488c31bde6009ef6147d328ef3faa7c71171365003cf6eae6a028d15b138d6a70534cc6427fa3869553b80fbfccc57e6af2d10f5313e13274e9ff5f432d94421115304450009f913fc2becf6adc38b70e9cc18377b6ee02c0e2a8db0305e7ac38e2cb4a7737fc07688f1211f6b2232b57c974540257dc7320ba5f8ab0319e4599217d74b1bec4135db630a888bbacbd7572c2ee8d0b913b738e8f5e5289ac0de73c30c878517fd63b3a3e78126dc31b55ec63323f5386a63459f16949906b7d8fea59dad76a4520be605fd0878391c026e92af4de13f13b4c170f03432187be81900a43c32bd81285a66c465a7b94b00effbd609e3b652122921c7def0dac938a78a9f020316e70aba238d50cffcb8253cbb47f710a0a756ef966b4fd3953a5ffe566b4f29d5fd845c16336223a81353913165bcf8d0865152829f902cd7fb5253ed528132346c96bdd29fb6c771475411d64a53d53e7edb2ee850e972687a257b281c074c5e3ffb191a4d202036228550764720faf6cb8c4798ae0a3eee8fe46efa419802de0b870238b218003c6f912b41e095929c88063b79ca56f2e7af776199b041ea9b6adc6640398ed2e689383b9bc61f0955615dc44a72c27c77485da5a54ea3c05607cab61c1e05fe97bf8177a38fd2be76bf967b74637318abc4fb2517eda8e467fa4791b9b421d1fd126d149534c0d0388fa93c8b1ae0c991bc7f76ed7ba0c1572f27d7f400cbba0e189683067ba4c7bb8a41b0a1c5a2665b5e5976935506343f0ed7707f5b83aeb253d378f8e4dfc63e3fff9729db94cb1b801c83df38d9a6ea8dd22abce8ba6f4ea46e0337ea47a96481ef955c6c7edf5a0975d99efebb5a2c8684467addb303c39aace232c9f307113c6eef5396f1fd89db18fda00bed3b38d415c5e1a2eb391b6ce61f3b97050917b631923113eeee6a4e0fc4fd72090ee2dff468483fa9bb9c87ca0d6d85b8c253bc78b6dd9f02c2711cee66e02805bf13186a791ccd4c6840a8ecc5599dfdfaae14ea8046086a6c0f38ef9bf3b7035f446f1c32a84e54f8921e0d8ca68f0f57ccce2d72f16fe4053a9e8723895a5df226cb477c44ff55226c05f47f7f646430a229ba46c352eb40ce11fce182aae6edd4e6fcbccc3dae9d5eaad50e0643b25e141c19cee5bfc09e071d372fe980be8a76c4f3c48be5a4cbac698dd95586c611c584dccfc7b6dce79111a5af14b0af0518d4377909781f377adcf56e674cd8729d3a1fcf8f588f157c1d4477438d596cfd9bf710857b8436be15dd540ce5705af3a0f2a108ded38500b3d65c0d89abaac8081ebd34ec8847c356c97af47d521a75950e9013afc3202a3dc7f661a431f1b1fea2550141bc3a2a3ade51fd731b9f705facfffabe0a024d5a25fb6fb0ec0513c40f1166cf490e1f780d2155bde8778f776425d6f3e3e30abc28eaf40009bfa3257ca40e035d85e9dd18c3e1b13b4d99f0e0859f95f97ca9296aa2688dd851bd2da9788c168b131a31d68a69dcb76399bcef7ac0e2f83b5df4ece0627f6042173b6bb4975bd9ab49f7d9117ff03b6f66d421d9bcf5986761e2e509b8696d07d43b9b38b5230a3a7f791235f8a0f343db7778c74a6ab61ac2f8d3b44462de5d99d75f8805d6eb95d036b7c2ddb55cf5b7880d94c0a9f6a57b2ce684b72c21f299d2163eebb78ffc87973fdaf99ef5cb46a9e122d4d2bada8d9a7e8100b61dca672932087c39710818432e08c9a88f1ae1394ecc8e6390294b7d09c639ef432c265ed5ef1ee4f26f609282cc180709aa2758f550ed3fcdd62d83d36a05915cf6d720b038171ea281aa29b2016be80c8a7452d448b42783658c492fd4c225343cb458cd4ac04bf8b6b40db30f177615d2a84d009636053cec3a2b5531eaaf5e51cc443858d3753dae1c096916883da8b6e17d838551421f1fc2864da9cc8e7d6c31b02458701ed0fe8680aa5f774267fa7356e5667eccd9eba5c1b6650ee2ae7b9de7f2d3790673129bfb1245a6b0f5964d25dc5b2a641cfd1d1d635846a5c48a9d9812b12f66afcffee76798d51f1878c1e09bd20e8ba2c0a1df1ac687638ddf39611d82252d30522d7a52b33f104937fc1f49ae776b3363fb15c257904166d20933b0a7a02b34d5f4bf2d72c709f841a8ba0f6d5c0517a4a71767a1ebaf194369c291b2a4f2448b148644eacfe8ffcb12b354c3ef1b7b25d68b52711d839a4a7e100dae009f7feaf5275e7994d024c3c764e094f02fc497cb22568ac267102efc84da673545f3b67676a5f2cac0e522ab5314becca81eb532246654db444482bc26e099e112923c0d1585221bdcb384b8a7787286d66e17d93768fe792aa7c0007787da3cdce42c21ed483ec7d116b8dbeb1129c33e8356a4068a1e2e02d7ab9f93c6a91c90d291369f2191717a31111e3a3af70e3858605fa08e0ae605a76982bf34d24827c102941f2deb5588dd1567f0f8e77580da4298112ffafff81db881376d3945b3f1f767f23b79f3d05f0fabd32be3c07f811eb28b90f44f555382f5565114d43c2f27dca960319406ad2cf8fbb6b788563126f6aa4d331b7f3f561f78df2db924c1c77bd35e82559811438bb69e2d5dbcc822dbcee176c2021c838f0ca95aacfda6a5eed8163cd85a52b3bfa4fdb04c817952017501ecd7434aaeaa7e1ad1f2d2492cf1f0e8df36b7f2e8b531ca1c96cef509e82046029af889d41b39994471ef4d883375f3329d685dc9ec4013c37269972878fc200d782c595edd1cbdabfa4f4f31862ae7c91fd0189fe071b380acef36d22ec55f657fcd609104b017888f1db5f2a5d1d4ceba184d87da9a87eb45a424620a19176eca4ec6cc5721c51a3a95ef6ff6ff05fb83ce5e7ae9caf42514724579ca93735b69bcb90da8cf38f93a66e8e11e5f0f6d85ead67d58f55563a2e807ff65c4095fcda2d8f3837b5d6d14ef1e6986b8d204200368f0dd54cdfa9bf5e12f75762a1a30b384912ac85635c1b0ea1530aa802ef2594382a6125fe86aa9da092ac2ac132925f2e0a82d0602dd374f0c5e6ce39dbfd8967786e1f08c8f24cea2d8759275236bf043a491666734c07ae4dcada5de6b2c648160b6cebc1d08846fe91d7dcff6a14144c0e9bff85f8b3ae89074277d63542a490a62e99f161a323aeaaa4cb9d25b8342e80b6ad72fc6ff1692cf35cb562fbd91bccb511166b65bd13831fb26feeee5746f302602147913442a10515a4b865f4010852d51a45f254dcf80a6943eebe96b92705e3801008b5a7ed208015676e56a1f6b13030b16c8c7202e5abaa94cf62ca48890a0655e85a9178d1a04fbaccf8738613499147aa42c45d81f76a5044298d0c370a8c9a83d563d1e0c3c1e2b4a3bffd158f8cdcd8097745db57a818187fe196d3e7f21d7728817ac3a4a35cb271080773f8aea1fa773aece944d089259454ca6d3d2d522d7307e5210baa94d272f65e7b78053e5bbb6945b2b769d565758465a870c9fb9c43a2c21bc0360cce06d59f0425d67244695add7fa9e91b0b8e5aa49d04543a0a221fd1f85f08c7be3189d281733e14b356bb02d2da1fa754937f20d800724d6525cf856786f28f54985286e6d1cff871fa97ea78a96b0ab7f7d9d7b242a9a55ec32af66ddd3a8bdeb4ca7b325ee77ee4d254ebf46910c671b73fed56c893563a94e62d8c64a440bdb9e61741183fe2e74a9cce10f21b3bebc4f94bc251d9355c913fde40812ea54c01be19e8c21dc13d7147d238a61d57d6cf9c750e5acf9da843ea9c687024eb97cc76fc9c9bb46747d047274a51bc94f0f9022b247728efb14ce866cf7bcfca2d0e6192048e2320160cad25c66107ac020fb73183911b43fa04e832509ebbc2b7b63021c14369a50bddcd8df8161ef65a781967e727c9d573d2c2a333cd5d950a1527d4acd2253ab49883230fd36e7b751b1d225bfc084ed04b8ab42aa9a05253d62aef1064fb3b0a62fe17a5e28dcdd2132851e2b02685ed4d372c90600b5aafcdb9db1a9b399b633198d7f0470168180efd87c5282512c953456307e7eb525e0d104262ce6229e258fc87f13b91af30752bb5512a607e642b3231bb2ff846388c624c0d34a03a9439d7b083d726518a74198e406ca38f38de083e439d03911970d2fdcd5d44730f614eb8a7dafec589ec0e75dc88dfb2d8e5d35fc3a3586dfe44854a2d9ada2c320ddfa3d35a3a52b1962c8fcc4577937d670c9f78345494bf90ed45fae0c61a3bedebcc1480e88e997407d7bf076753b852329a476b52b875428079db28940a166e4521570b7f60613c0d1c255b8ea28d347a77872ac1a941d14b1ac62b41bf6660b9944647960f44f1c0adb130da225743fc9b0ed9b1c5af3b0ced1b3505f528d77bf4459e6ed0cb20acc9221f37bfb6ed48d3f1382826db033601262c97fdb1396226fa6faf35e41a21f3a548c8df4e43597a574a97316c65a2114bc3fdb2e8329152e080f9ae1730d2eda419556cc518154ffdd00a8194c87863d50f07bde3ff25e41fa1916264431cc6b68a139cb8ce0715727f082c2cb1a63b53d07df2c20b1095944098e0f793670dcd26d7c275e0a61e9f1733ece3ba5719fcc51be1fe5d413777961a66c49301f156999dcc63b13b86e86483257282f9c5b69b77d63689b4571024a8531153236edf2e8a7e2ddd79eaa1973855a28e1dfc86502bae6ec603038d627b409780950654a16dceeee15d42d4633a8e12648055051bf933731bd44641ac59af5f3cb7e91bb344a888a2d326b734c681b81d80fe2a51133b522924c06c8cca8e6f977a28d1b959b18d58792f37e0141cb37efbc108442ce7cc92832b6075606ac3430baa18b0a1589bb56aed972536ab2294324e4636e7bfe25ca5a46100f4c73a5ec466483f937c69dd730c8341a6e182a58b3e9245e0ede270f441dcfd28b8b58ae10ed605875a947cc7276a5a20af2ef1f869d2f0bd6613f9f51e1739a0fd6fdecef2b3c108a63bba814c72d96b78a86b9dafbf9a5133c23d03c320575bc13c3e02b0151ac9eb1468b220974f8e9b6d6ce7c692d280f0bf2d9cac79090f1d2d6ab6b57b3f6205e83aa97bd77b8e061c3b09564995a2124282aca72fee82226791337468c712f0fc6dd6cc968219285f711d02ed91487d82779a128356b05acc9b515cc5d658081c87e9eb481f28babdce7da4e4255ec47dfc9e2904b038ae59d0fa0bbfe0365bc21f83753efaea743e3d7883e326520efbf9f4a6a839270f4b1a846feadb7741c131f5e455b589f12b216652eb8ad378ac3c0bf0a0a67d5a42d9c7454e48ac2bd6bf7edac37ff5a9dcaaae517feef440d076af496f951cc72181547cc58a1daf322533d29389490bd7c4147cb060ca1dddec203d2faf0c2fec70a18308abbe03df399b63c2d30ab36914b04ca1d25b7c018049a9ec23facf17363dd306350d04232692951d97299ea7489eec15c3a30e5f9b5f45641f1e58ffa72d698cdc876d942c88fbe23ba818dcfb836600d990ef7bc8c0c58ba471946cd77b400828a14ff0d1992abb0cde8720b7880c3e4dfa6edf62db80ab1b91816ce0063d391f3bd56db4f04bdb2a2925ceb57cef7500df5bf1e8e4bb565671a0d0fab2ba14efe25bbd62451ef8f14a8e74b6db797d93885de2420d9933a575bed0e795ab65a0c44ed475e43e4915d318e8c40ebb90e059658437ecc7da64ee9faa2236c104fe153818a5c57681620dce69cf1eb9f8cd6859dbe62230924579ba18fc1f2fdd61d82aba5476933f348e999bedb53f67c5596bd0242eb9e7ea389a01221c6aae10b7900f022001a99dcf47545d778c028a2bc547d53475cca61674783d572c43a72f971e1d67e99b8cc5dc846662ae06749cadacf44dbc27bf69eb5e448ae2064b1973cd8591f46910a5bd34e2a96472cbac017b95ee88cc88040b77d81410844be05b189e6b06e476bb4b173842a21474bbe04268b623410ee09b31bd4b678d6be021ea5efe0925e7ee7fd2ad63927c6f5ebdc7f9bcb68778e554e318725de48ca38031dc1cf951ced6706de7a26ffccc81f1ea9ec5bbcf67474ea4e00cc0bf6748efbcad2542ca880f794aa7cb3ced25c7b1cedb6e243598748a6c0901fcb4071c18bee847d51c732da0d95299a9b4f8638a72912d9ecaf78497b1b0cbe675fa34bb216bb8fd17ad1f4006acd1b5567a0bf577a6a7b3522a7f6995bae6ebb0c4be7970641d1b61903911aca72ce48f630991ddc37c1090b6b627947e450d4c31a0ac8c7d9beed9654af5e3aa872fa08058cd18675e38f7cb1cba973083fc405635dc1bed2a81e34d7b99dab77af282f052a6253112430d743931ea2cc526bbf6be3847e754514b482121e5b5d1d8862e19d03aa95a1da963303cf9652f2751f1cdae269c775715573fbcab3b36440f31a8e36010f7ffa53d8a39530f160ed5422725e4c5bf273dfd45b6425be149f02712a5c40818e905a12a3c4cbac0c0af0f17c753a5f28369227fa23965fbd211a5374c340486c4ac859f4d3e06adf028ea43a772ccf832135722680478429389e5da589948134899cefa3793f22019a4166ad0a7efa5dd4a502b9afa6b27dbb93490b3ac930e9fa2d1fd1c1e1fe6106f0f819c17556c8310a93436b663883c66818929e070b992aecbbffb608d6fb58c4169df49240eb3bbe8f88cfe52515c60c00aa2819d87b74ead8669a65a5471fb1dd7bb9269aa968b1413337284a4977c666a8dabf640a783586c3a875a272516a50939c95a2525facf078174932f75bb5e5fa0c42d91cacbe0a0d819404e60f2eeeb46e88423ad8fa69cdc19a8a1b05961d4377638e433a98f6d664d1870b2a44f2974220580f2c6f35b609d124fa5b4f2d8a34c964bb18ed7901ef5b746601df4b3588fbfc66e83d949bb67703256f6b366456c2a739c0a3765697420ad2bbadf608c298e0d64f7cc72a1c12b5effff4c4c48f0411661932bf623e1734554e9e8d6645c3cf07a4139f79a9a4bcbf1032c683f8e6138b8f1f038c503af2799a47801b7900875cc668f3f7f34de2a4799320cbaa0a637ee1873dd4f977f3efa00dd372e0a3ebf988b75c6fde7ab47a97f102f1d97c40df18300b8445940333e5f7b64965e85e815ce12de769986cb3ca106cb435bed86cc177d54480df0c54ceffe0f1b209596ec8170952f0da0f9037e201cddac869ee9eb98654a03cd10d969892aa7925e7a7a99a2fed23e1bd6b3d49e8d996bc6e13cffb3de2da5f5b424f777f052be635fcd1d0d590a0918f095e1f0b814dc0d630f22a0d1094c1bdd3884327d1face701d02e2faef53531d85e4a89a55e7288e8d33862c9a7edaf05647ace743574893ffff47dbced07d543d6f7a98cd5d89fe4e25630ca0ea865a44e99d35fdd27c2c11660bf7cb2ce4a629f9e93571c2e7173ceb6bc159435171426b11de3d47279f929abc4db6205d6c25151252872ae92c9d025c45deb5bf355e2eec29cf02f9329282a11298b5dcfde1a78f902987e456d117e26d75614735073438dfd04168692b19c0fb936d6ef3331d3305a3981c777267a7840c973c1c35d325b4706e32493f6a408d8eee89a3133050eca791bd522229d69f2c14105a0929b0291c889012a4aaf683f392462caa565d90d68370cc6f07af9303d86ec13e8876de846b8bed6f05a71653c3c8504f01e575610df255fedf17aeb396a121821d42dbc8154875abe86a447ed010224b1ecd5c342830974481c6596d0d8a0f524944bdc03ef7ac482346eaf68e73700b810d8ce8110e8130b7f5902700b454a0a6abe21141ae3dc387217e730399a79c2cebb21259caf5c91078d655ceec8c7f5c6b44ec5626299b755eab88fcc6f8d4be64ab9c2629a5792e8d6b816357c5f342d52f181d5d6d092d7894551342b2764a77d6df8d3aba9a74665f1d8e92576c0fda447d35dd5a519484a96133c0bfa5119053e0fb9504cf11352bb7f48625b52890746bf056c6f91ecb5ce4bbec4ea7804621fe501ea5a00c75e6ff4dfe6082b166abd294ea243562ef8d72759b8d6695f5cee713e00e5b8bce35a4a8962df0843d9750df09ff3ac1e512d94ffbe840f10da673d2c00108fe0d76a9b1d233cc0222695ff688d2a1c44dfba373ed02725b2dd5766b0671af94594767332c7fc5492ce2a4cbf2975eb0f34c0def13974f8abbc141aba9f65157e397cb6c301a834ac48dc2dfdc50d1ffd552990b7cb9bd322c7dff284b8eceb568910930692c27333573db4d381d1fb855131a2ad453dd04213704a9e5f059a2746655c22767a0dea4819ec98cd8ba547f8218c147902c4810d67a61abcad22fa861490fdaecec41c20801f537abdcaa3eb5d1702cb74506d8941383bac80ed40a7d2c483d7d1b6ed1cfb5867c732902ff408c47b0a115bb5fee28f7c4db3eb50c197597865c53360a7f27859907d9a22b609548d968f143a99a83047ac39a6afeaa9823b07de95eb2eceddafa2729b79b083c0f45bd85e6227bca4c858d0b013af48633961a455d7a6d1d254284b885d077c31ea1cb3d78b02c7ead345dbf8aa7f793e09525e1d2d8c626d094c0004ffb4e264a6d60c5e9326ee78b24e8a9c8fdf751ce5380b56db30855741473d852976e246e9e8e2359f7d2ed1100761ecacf733b6a26936bb6c232b8528bea720d70be938d4311e520fdb74b2e45add511227ea8077f8f9d15cfab43a76a798fae73cab48910fde5488e0eb1ec9272dabd56e9513ab507ef75559d514caa9459d71c5d22d8cc95301b299f05b3faedcda022b2910e3b2932545c610e0ff0b7c9434139fd46c2edbb58ef0c8b72c90b4754705b17c34be287a9f7e9641da15512e0fc37f78e3f551424567f8a468d7f9d6ea11dc2fa23b9eb2e670445b8085efd96005ae8ec0f7ce89854aee7acd1c6d427664fd9b1f5de5879a2c28931dae7e5340f60012a2fbe7677cac8ebdb60bb8841fefc14b6c8cc8551ceaca3d0657e65c2ee25530f2d131e98d872594eeeac4cc39e9ea4fdd4f66c22e4853d95f6148dedfe92824a1665687dfa4dff5f174412431847976e3c624c711de3d2229acd4367e15adfe0751931d0c437fa2b8146983c9ca974fe72f3bc008d67a042e6a98ccad123a7417cfd2074ebc101092ba1f4ca8b5d6597acdc459bf9924a44654a569167b7b54a17d6046840b8b72fab4bab588266c827cf6db208642ed2319d6f3d4049351a4cbda529362e3cb676ed6c42a261321fdee667d5fe922490d8fbcc3fe4d77b2861ce60ef6adf3637d4c1bd466be53db08ba3dd101cc79f150661ff9870ae4b6d9b54f794ac332e3183be1107460cc85d13d183602871450e1f70350453ea5217609dba2520bba5f6c03d0c84cf5db3c1b9d45607f883379a91c30c3db0670fe51677ccbf57a861ced1696290047255776e122544ac3abb4f7c9641e717dfd560223b83d00c00fdf36de27f43f9c16de92ebaed7ab4dac6f285631deeb0f0832fc2c649af294d21b11a5b7ecc9a10ea66bc30a76827b9ad9a1084860ca18890c0a419d8522c69ccc4469689ec223b9281f852611e0bf100223712b6c43c4e1af969532af761f07d52f92a64d2ef759da40f07b0dc1c248b93d80a8fc6b991a502ef221bc41567430d0098ffc84eefec0cec7eebb7d166ab2e1154f98f72ade734750b2dbd91a5765a55d7da3790699e0426eb4496132d20f53ced9ce7758b8eff3e01aa0847c6131ce8a61aaf4dc07511db951414c5d41b8efc99ef89f7cbc04b84a76d30eb61d8197d5f8c9f828c466063b4e9db333b2e4941d05c2b3238fe3059cf0fc611a5f443f6f79b1136da6e17ca1f1a5cdb438bfc924d7ba0a45df0c4f76e4cc2891e293406273153fb155a109c4f3e579435d2f12038d478a47dcc1a789bbdfd7c2bd06786af13ca33afef42cd1ca800fe5700f8b5be8a3a31f4b09f59d9d7edff3cc71af6d106f2858f8662b3f695172482ff406f6cf450a6fe2454f5d5c7a462a99ffc51ec1bfbe6803d9d4be66d6d8eef7309d64d8311086ef0e13cc9182e99dec52989d19cfc5bc10816023698545b8ce66bd6d5898f48f0905c85ac5a4c1eabf6743489fd95433252987f7cc097f553125d17b6b5a9de24e2eb937d2db6a0d157e8ec14f0dbbee76193e321534459124ba88c24a92a55787443c866c452bc3c966946aeaf32d914e253903b6b2595802ff76c6557820a429a318ebd471c840ce60997f2feec74e03df134ee95685bc4b87814a95686c4aff6b35879de48ce8ce35fe5000d09f57d95f8713fb63cf1301635a44bedcbec090f1a4fabce465789af0920fe24f81a3b5d754e0b84e0c561d2f9041479ccf29bd4d157e054c0259c4b31d862354505c652c1e5c6d13dd0b0794664e2a4c186847a9f6cee05ab103213fc4bd04e1a0db6e9f9f08a22ad3c7045faa93739451713af54eed294af4767742f2300508c6793a68c209719dc5f6627cb54746f31db145c6520cb2c0c16133045cb9dda295bf407d6bcd9b1678c3ad053c5c9e4a6246f55883e81c1252baa78511e766bc2894de29eb0d567a54642c7293f843f738f4ade2bd08458941dca7d604e1f39ec2961571d59d95f177bdd9561b1d9b9dc6baf7c03da34353175c1d20f6921537703d7f8c31812d27e4db90126bc596f77234e7147bcec55ad1c7aa855b9bfa2205b8194da190bf6dae4f31358fe5d03506d7771864b85e370b471695151e45ec2feec9c26b2c399eed7585b5fbdb4031dbc4687774525677ff807502bb4f0dcdd1986e07d30c7e05a8c3ce5d8679d381436802e45655ee460e2024a1d4f976f09871d232f5eff45d1f9715d6a61d88de1f563614532c80b4821d990785141a041022e950d722629fe8bce00046aa988e0d4d2eaf6d8bd1d2ef8d1a756c2c2707000a6aa59592bb1636eeeac024718d9828256d93463cbfc562fb01df0465c072bdfbb578bb92917746211d393aa945b253120a42a6b669fb2ae308abf29d66fd4c022565470503877ace07f2c5cc9c6f1dd5e5ce03360324c4fb18c0a3cc84afcf8e52418e89ab4b13cf8a4b1a004c1df865c468708e16d6e57e3ba768a5d71b4f7323545155e8b0529eeda54565082de92c0b576e75d7929255c9571b2c7a71de188f4499e63ec9e101ed061698ddc4a63138528aa60436ed44e8551121c77eb454f9318805589d4d9610342ac2b0cf4dc0b3681eeecff894a2479bdc4052208d0ad6423e6cf4983f16324b011593c31070c65d0d6ef9cb5cc4651d56f36c00e357a016dd399c63997021dcc51b4c40efd9dcf577460206349ad3952a5e56de336b5527fb636c741e90f91856148f9535259ab08a2a66bd2aba24617569b276501247c2aa8378ee33c6c13ff7b1eb4f5d62fe6596996da1d374ef2785efbdbe5dac85777638cd16281c3448afd2f5ba322f4e9d502ae6d3ac3665e7184b184b5c93d9390d3792065cd893b83fbf70a65a80548a83f07d4767235516e6b5f12045e80c089d588d0e09d2754362775400d51553ae5e26ebe80febb455103b7630e7b691ca9a1d1656bed5442a3c8e6356b9007c9af2a8eb51e0af96785217f0510c140faa005fd44548721a353a12d50da26f004346e6c69690fa4723758ff30195a3b15d57b0fa181368d413b703bb6b33d15e2ec42213ca4a12efb723619b266300f21297d84390fff8d40f1c93cb3a113d7273328e39c0b745dae2b10349df681c3cb7eee6282fb58e51030861d68783b56ce78dbf8fd7a41b299c25ce67cf9b3eda019d280bc44c4710cf8271f319416f3f39cbb0c159dd46423836645a35e93951e4fb6df85283fec01130b841eaf64741fa0c87b84c66b09a936066f800b98676ce0116cb5f06b1a10f24747958a8d08d014ecc880ef0ed9961ef50cb2194093d3784c8cdb4d26dc1ba56c19b1aa4046c60d9cf3d37d11c21661d7e401b6cfe4f8b421605a975ec525283275e366eaf519a17125b0b68252b2d8f0fefac4ac3166f098a9fbcf144a2b997fccccab0ae5cbb6b8c6ffb21f2e07797e8c542b1487523cd758c22b2dea32c4c02bafe90237c946d5c57a0894a6f093c20186e64b73c9cc0eb5a238b74640b6c7273639fecda9ff6bccd81ad9acf36c79a312445fb9268bd56d9257b5eaba6d2938c7aa01192292a4cd2fd4f7fa0f3fc4154a716b42054e9c1d16a29420f840328af236bc434b96392a88ad9e298719ed620dad291bdf7b3f9cdcbfc1c8595cee2b2131baf0dd002a05fc6cd4ef638c2dfe62f8d3289ab3273eb00b199ab48ead6c8096fdcf22dbe9bd8b710b8082a4fd4c290a4c982d4d88c1afb228c1b0491322ca7dcf92361d7582c4908d9279547057b4c435d2bd6f6b01101a267e3194c5fc2d943ccb32f8396f56df89884b2e726a0ac916b27aadcab77a84ce78ec304da8215059f631e33368273a77cc0482459c6ca4a532b9d4d3d124516b0794ce53450d7336f8e84a71330601747f158a3b494b12d2a3f90db22c7c1a3e0261ee6799616df51e872be3710171c5741dd641f3808d09ec11b4b20950f5318212086e67aa8fa1e5cb4919f0c6c5985ff5db51cc6c42043080b65116a6335577f7603de33388ed37a834f0b9ad74166178e26e15261e21d9f9b8a5e463321f7cbe87ff9d521eacfda37bc46d8ab91d41efa5efd705209b90d64fa02f2d32ab27dcab6066fe579f5bfb913db556635820280ec85b40d7b1647f5734c4095de74a567779409ab5361f4eb723ce579bfe52b44cb5f113476b10d26e3b9354e2591455ed33689eba86d105a3bc775cf37697da6a7df8bf5c40adac95a449f2797063366eb598039bbc18597cc4a9b24f18deee6a8bcd874c963d231931a04d6cb819d2463c65be01a2a3ec923b1f49469b9fbd2788718bc7f30bec5f6b8661c2d75536ad315c0ee24a397c2fa71f36d6b5c06d02fa3da1a046c6c801445ed3d02be70208706e8cde4ab79391ddfe6fde5c2523e14d40a93efb2d15ad9ce84693bb3520ede55fc03a6cc5014d0d61afa3c548fa037bfcc93efb2d15ad9ce84693bb3520ede55fc03a6cc5014d0d61afa3c548fa037bfcc965455df6bd2bb2efb3c8e732c59b0440a7501462564bbe551e73181b0f8970a031e6ad65578940e0d4fecd3cf9a04cbc814e58a1aef8e4e62e31674a1f2393131a4f4d87b02806bb70d453904ec7ee82e8cf01e01120159c65b8641aa810b3854f9d807ec2d6986242e3085527d20c9ab3a16e5fe9c6a0c6fee10460449330d3db2d3881812cfd2bbfc306100814659808c27d882daead019c5ce0315008a218fcf2256e0d994b461c830474113d52200a6275d91938335035cbe6bae26ef6994dea86081a560173faf8903f3d5fa67f9e096199d30122a9ceb67e48dc0f5af25f5e6b45a195c45bc7bd71214e07db3842c16ef6478d1fc30b4901868471a798841fa6cea57273c27eb2b42d121062a4d78d28517fe9135a6a444fad7f30b6429b0e73ef1abf6bcd2f518cc6370cd40728aab342f6db1dc121c56d45b6d6e41d1273bcb86e20fecc4f76b946e28ab9a9becd0e653bb7e14db1d08a2d4cb40bb9613f438ecab34470da14cecd6c794c88ae2a740394e98ffb63455aa9eb4ddd875b8ef264c6319f313c8fde269815a8edbec4a39f5c09b12b8df80edcf526ea428681111bf9dc856853f4d1d31ac7a08e237af021b1ebbb5862171180113bc56950adea3f932ca35ca63539129215c625235d8c00bd338791b1488c36c252eca2b1b18e8ae9d1bb3039e5c8383c391431b17d50360a78f3c63bcc1bcc8f10a197b1b18e8ae9d1bb3039e5c8383c391431b17d50360a78f3c63bcc1bcc8f10a197b38bad58025d4f75750016e5d7062c28e8a503a522b9e0cbd2aedbc1b39e546c8c757c16ae1a4da348a0a6579e192e9bcc9ecf23c1180ec964ffb52415b4910057a7fdbad3ac6f6408f5037ec1d60057f6874cc02c53cd762751bec7c621a2050b3d38d314b3cc2dda169a3e1d529ebf995902291320a0a5ecdecc58bdafcfea54ba4601b3a6ca4a5cd83853dc74a8fca8a53cc64d7b12edda142a8c6bfb80161ad7b87ac43322c1ea1a3c31f08f3521706c8c17168ec6053a1eb081dfe318ec3a04bb85594e14a4541904b7849b85ff2deb958d1cd2b95ab2deccb6a749e12e2b297b9f4c0c195c445e8997494218f36822b1e23c5341cdc094a693d2e9debc2d30f0ec022d065e511caf1bfcbee2a43759c8ea2c8b5d1493b51ad938bd5898c1aaf86b175a121850e0dfb5513fac543b8dcc9f83959b1ac201b35968a5b0a3f3e119a4600532f4f781bbb6fc9bc01268a7862b0ce2c5202c79f7cf17db2738d9f3000036b7f297650775ba8d1e7a816381fff365af74abea4f69b1b746e8839a97647e57d17aa038f930e911ee695d1b30ccb5e86806b53e6a968b783bcb12ae1b70259c1f8e5e8c5d438b65168e933d1a11623f88baa3b3bd80bcda3a31e217059816bdac75418ec0a5b0496a81d3421b99f75d4df30e4d775c26c7ba49caca10492f96addb17195617e7bcc690a5a684f6dfe0e8ed0cd46c7f963e083f5bc133110168746f7f4c2def4627859dc9a0e2186f8d5641f6e13272135d1ccd0dbc611905df1f23e05c02e9884511fa12f43ef22222c6d3ae202be17254729dd7a4ba10607dae1ceaeb6e14c5726f3733a0974561d9bff3ced080c61dfab35e5e88175ee695159feef9f77acd03ff6539843d11265adb177b47acefa6f1879592fd24d3db6027878ebdd113715d920e50a3d56396b57476bb7f955f0ed6aae0f8aae24a8ae1fc6b44a8a37362ff8cfdbb46bdfa33dbe93bd67515ece1dfd0144638c6272328141044b729a7eb33978814ece354d1982300521578400b3cdd57e25e656881cee3902542f6b039cf7f34b3bc6667c34b851a81e5369a19eb54a8fd660fd2fc693fe9b1c37dc5efcff17992bee27cdeff7cfe3b5b43453e31365d83db4ae204c70413935f2389982d85d89c785792510fb9a9b0c2f3d15f2032451893a0b27b6dddc5d9b31cfd7c4894fff516327f30d69ea87f662860a88d743034b97de87bb75a2378cce1e09c1f5b0eb9d3c239da52121dd44c07da9e49533f207d76657057328b5211585ddee108be63841df0f882342ad22824995f3883266bf551f13d8a11fcda8d5ab07c5a06876774fef408addfc98fbcd99e19331ec608a5ecdbaff2d690c8f1fa5f8838d22b7913d1f9c428335b5ac61bcdebbee6fc341111bbe6d256e0ba40e99d5061952214aee74b5c2989267ad8d0cd7468366d4162b09ed86b15026509326029c57fadc43aeea91d6a418322680dcb7e05593d4bf72d1b1c2167b0f0d2788b30b139365548956344b22bbce7b1a344af9899696de0ed6eaa835f284a3b6171776712e358428beffa14560e6b5c1667298e244e8c0fc21a4ee913009e75f57036ed3f7d47b8637088bc08b7268f595a4d5c780246a3736bd7744f9cc21c427dce4ec413006cb42c01b9ad74101051fbf4c10ede18a252667f571b6f53d960ef9ba88eb4b498e0974c63340f2882b1b69d7203a5271a9fad6a81d3b185a0eac46cc6274823824ff9d76b7974264f7897bdcefa3a2d6bd7c3e0aff2f687a800584532f9f28c1d6a385044e242a2bba728874d552b166845c25568083e05a85e7a6ba24962a746373c0849cbd49b2bb202ff01ba72687237b0856863b049bbd5fc212871a91b6dc43e32d340f338062cc69f702059ed937628b2e4d0fbf81e1bdf89c36b7b581bfbff3731474baab83d2eaf2cf659d467353a494d54c9aaa682d4966ff82ab509b8999ea9ef255a37aef21c90d0a36a608a98bb6178765284f36cdfc526624fad376eee48e5cd959411178219f010ebb2c133d8ed96dc04ecf7125cfc33e44d2fc17d8deacca3bdd0534a03c7d8012bfedd624fe8a2314f674e452a119d0d91767127e0cde3ac5e4ae9d3ba308b8e02edf7dbfd202b8cdb84412a8b3bb8d106ef500ef898b9fa6052523702aa17892cddbca721aa6e2333ad44991135e0bb3fb2f8fbb3e240cbf5cf6f4621f10f6b691a723f41c4325605e9aee9e6b2e1b8de8b439dbe45e145b7a6e19d70289d596efe456e9fa2e03962ca5336af6452a528c62e6b689f2e555de9d7c18787fb4c4ba7922c518ccecd7174b332f2696d84de06ab5894b7ff21c190a25ab980a0e17c74b8a0d7464d8dfa8fafc4d791eeac39d9f373062831e149f21481ae6a9cdb73498fb27ff7cdec44b25bd9f575688da3f969601380c6ac6ad1b4549bd9217d3fadd6bbcb1ade40c16e7387ef3f9921ab25db660dcd24f80a52667bf03d515d28f0b74bfb59cccac62f350c406f0ee883f0e3a4ae05ba81c5a10b0a87b5ef5cb073cd3b05623245f8fbb5071dd7af8ba386b5df7bc47168ed50037c4131b7b08992105f8f4fe249a7017969aeddad665e3691c5a33b90b0769f4492974b3cc1c35dd3d8ea38766cb861842dd6686eca69356d4c6120890a1623ba08282ecf05db01d7ae10fe0f4128d3706a19d5d771f0091d10c58e401af48b40091aac43bc22edb8d6e3c299d8c2220898fcf1b7534bb24554970bde8899d592109bc83bd5694141f9886e3b439c9b585d665b44c8bbdd6284ff116dbe6aaa17c6c9365b35ce61333353b0f6d8016ad5f34b3c1ac122ccebbfd767e7b46103d8fec9a679fe66d980e9d82f852d4b93de556234ec8b3f40627e0b127b00555025284f99147503f32f41067ec55b2fbd93c404f0ffcb993d0eb3a93efe9dd1a377574b156aa33dcacb280d33f16d6ce7e5beae220e880b4dd1b793f7d7d596361e1c244fe593034d3aadd21085efa39769d648199cfda8805de3413aca9ec3e888f78bd34b5a9e66f401991e6ca226692340c34adddffef124395ee1fbc3d79239bdef9599cdc91a83c2efe2549f16042d80f994fc6c6a25b620e64e31184bc85de5ac83f9674a87f94ddecd56c6b2d107d696134c01ad0f5b4dc4142765e4629b1d2e43c2df26f18c617e58c85cdb65ab6ab08ff40318d4c838a6ce4ccdb05b65a6286cdc53b00223e6d298566b3ec1d41e00f613344298e31208e4378fd41e578d26c910c47f58e9685b05d64061c707f734ae7f03907888a304f71a7fba53a215ad3ed21d42ffa76309893f190db1333e52c7a19edc1b829e545fcd37511b1bea29f2afd4f3911cc394e31c50bb930b566a1c3cf9a21c332dd7249cb8b1d5afc037e873139284b7fd74c7f996f640a4e4916fe7cf2ef273e778a34b55b5e180d78703121ba7459afcad8458a027eb631bb0fef3811ed952166e4b5b360f6a6c7147e83be877d24d17f695ab012d28e60e6e0b475bcc8e2c7a7fdb95e8e6cbc271e626de1b85d0a181f63835b26dcadaef7006840a324339d66137229c50d25d6ba29ecab7d98ecbe18709a7be5c65a8fd1f1cae30c63a6dda863197f3062bcc897686920271114bd4af6449f9acb88391de5ff25224d0ffcd793c5f3fa94973402a449a635c0b168035eb59f97e5585a23eaa36f3b4eae815e9269aadfd6750acc51bbc9b3cdd709306d84352d2eff1b303bbcd997f54d82b6035ce4bdaa84beb112fc11dcbfdab4b694b8e0885990fec0c83776f9f62f16778c6d1c1e44d7e15e19b1d5712d57fb0c2811b10913998b3a9a32bc334094c9145e160aa63c1f386e65da185f71c415969de6d4741ff54dda5b1f6935ba63e1c75328798826799227a79a2285b26132a4c533c5365aed0dbc3dee4b027d5fc096b22e1066fbdd76bb5bc0a0500580996e9a63480abaed9e5fea1d2029f58b26f646e9ea172297057b687166608793deef225b6365828c637da22fbef4381ee88e477de8a96f5586a00a1a93f061ecb9bfd7d7cea388fee9fad30245b2ea0a5d794197507f9ccd9efe6c42bb6b97997ff834ab10f93d4baa73dfd2ab6b03a574dcabd929d5b954889b7166487afd6e076302d83afcabe8429fef1a95013b5c4f339f55c4d0fac8d2f149abb46ee9cd5ef5092a52f7b3e50605334cd9ee9affb9ac17edc82b8043d594a8e86f4be5e5148cd05f768fdd486e9dad85655eaa415ad439d3c737d4056f07e77e272ecd122c6a8997cbb9938c49e9b76082c1ab43608d9feb280d69043d13ebae5297407c779612a3b1ffca3732f381ad46e9518a0573f8f67a4371d98d7e3f3d7c8a0b176709a37336baf77dbefb1b831fad1eacfa7cbe7497d448a6355e50ee1743f6880ea2b74eb05164ee8c0881ee6631e601d7fef757c0db39b768a3c510d9a3d0dcb0589777aff5d18d1228066ede6de50c34772417c617db3fa9375bed5c462865eb4620ac42be27d69362a151208586452f8dbadac350b6f3c6af3cfdebc978e0e633fd92025be76e18ce0b0067d8e4c672c1a665829a8cf3a872da194f388c0191e7061e4514d3b4747dd8757f3c5080905d26ed0c4abd914b3ff8f48a980b3ca5848186100db149a7ea45ef97742bf019e1b953b3f68cd63b6ce36c42fd3e1b08209eea0784347ab374e9b11e91c4b54610b3ae119baded00cdec120ab57443acb0c761ce762868dc29dd9b2ba3e4c480f4e3852cac14b3dadcc111b273065e1c4683a14fc3fa919de1a6323b6be08b3668d8010db7dc23cdde9e5ffbe659d27fa3c5b8fd77def37d31bab91a6a4d3f67fb424232a3f410b89ee4d6a785be207e5f5276869e383cfc3fff9e6b65ac21ae194e5971616d40bc530fa259394d0d8e4281017eb0f75da3b483c02e48fa87feb971342cb041d12ab3e60eb0ac2cb7c76271c53a3cb43f9af56d1ae03912e9d589eda4c23b1fb1070b60ef0052b5636c6b3c26a988ad55aa8ac4d8fcc87699c4b367b6d73062b2432f0e8056468d320a0f9f4fc81ab7d942858c263ccb339c3a55875e1a8379d21e54a4a3a78aa38e387418f298628ad6fe03ed4753f4af94dd85ad23d4e5d2921db447d80c6b596934017ab273d5ce4f34ee4527436832b4dbb5266ea26b324fd76d086f70f4b609a64dbabb344debd786779d93cdaf3519dc7a7395afe2eca89d6452817eb1b3b9fb670da286aebe90819fba1af29417e060e4f915c77bd86100634e5fe5aa6fe102622a6b5eb06dcd7c128f11b4eba3e0430bb0aa0008b8f2d630c46b3beaa47842b0e8cb6a494df75695a31f7c54d985fa9597f2fb5574db233bebe96fba6fe102622a6b5eb06dcd7c128f11b4eba3e0430bb0aa0008b8f2d630c46b3beaabc00e83284bdbddce4532e737ed83a9d29bdc9b974b3997f3bb06240e18b8ec6dd4d77282afab1dc84e0766375db8381f66db58c236fb961ba9c0ac97fffb83fc5197454890f0284b45e76d6df80a5482ce0c666f39c704ba750dc7740e4a0c0c1996b092dbdb3d69b2ed2ff24b76c32274d4fb70bf79298a93f0401be814a72cfb6523002c11dc615da27e9a938b66391913b19b245c7f53efc748078fd91812770a6e13fc0bd2ec2d09f9d9967c4344da1347734cd5412017874bd5759d15c7ebfcbcc6613b15163edc837f75a01f37d4167f3247abff0e564a32ee3d572f158d675dc35f881d7453684831507e85be4c4313331172c6e8a8817122841197edc636413439dccc4738a151ee9bf45c16e3fdcfe9ea8b4c91c739c308d83799086c7aa09372b5ed32f978bb10db5beb857c57f8469f6969b009273a237853106314d24f5e1aa93af2a8f61c622d1de9de6d67e1a7710ea3807b2cd46fa3e10b9e87648ae7d876703b73a76e3cde0a05c195c413e4f77b1c26429617b666471c729f2eb8f52b739609734455037ff85ae3bed33c340f8ab86798afeec6c5933374ce6deb3b2d9fe441b15addb2398c9161db8e75cb8e5df35da6f40cbb2dae00be9ffd30a4df2b9b7e9dfc523fcd8fcacf64d91d61b508ca450eef0b55a4d5269cfbf1fb21ee9e52dd1faf209190018b6c8ab9d01e1327ea709481bbf632b5a4e9a17ec5f528f1f9cd69805e4d9cfb460689d8f0857734a85bf37156e39250e7c467899b20154f84788c5f1565d1a4a4d73ebbb7323923c71bf83a4712656d519498b767fc2f3f5c17bba75f656ea1265d132e1d379d36ba73962f4fd1a1e4e6b19d8205b14bbf89052645e3659cde41794d58b05ade8f5d4580ccd3826b64f1a194b7ef1846022a007c05d88bc3de3cbbde7fcb64a1217ba572ccf8bd719d78c4127ad92123507b106d645c6afd00f9e8a7e4cded10e75ef4021c8718870df455db0ed1f5949611e887d23747ca516b39960b035d4fcdcddae1a69b143557f62e7ce0f443a8ea62d670c55979684a6149d14a89e8391da821b5d49244c734da9d02c586d574e7eb4155499f53600f7764e29a2df5e7fd83431744be2483bc9627b1b47352172690a5893436da9d416b962b9e53ffecaac981e7114d3460489203fd37975d0ed156d7460ef185e4aa9054a329d0f83c4b74dad9ac4fadd62d7735125f1203a1e733983c32fa0f49c56be1c25f169e2134ce46d6d7c5198f7c572f5a0a657b7f7aed64334fbb2e2d1fc69d1c0d19d999c86635435fa47ae98b532d2cc3bb4bf2f2995d2713c478735e82cd1ff91519248a2dc20b4d720cac2cfbd8affc684e40393d8198ce75d1f14167f4f9eb6e80b7810c1d9a2ac3521d95716d1a8d1b5a2a4a0f93093ba0f8138533340fb021f97f43d7580e31a013fe557c82c1abd64d3ba739624182337923db44ce43ad3a1a3dedaf4581e5a2889cbeafc1b78715fd789d64e56e02878617cb09f8a64299bd24885c0470b3ad2ad92632d7a878b7655cb3699241f68cdd409477ca8907e39376bc9ed68c8b8108d20f2db0a8e5ed34a648a99a3dd948b106c059b2af82f54796ea1a42abd2be187f0e453df7626804df830de5bb7f48e96295c1972cd5a66a977bd894cdb7dee7b1e82358df6ab9ebb24b99c69296d5e9585f628c5b009da6eecb1c4a188ee53c231e8f212879619baa071949b36810e75d64e86c1c93ad1d3f5165015b693778cede77ddfc064f6494c04a66320c38a4c4140efbfe5fd9402da28764ba0fdf40bacb4853205e23973603eabe0400fae672281655e692935b30ae701a4691aa89f2c91c15116d245706cca1e25481fb8ba9e995b77795925c43604102cc2c57b1bee3cb7e1346a9f0fd74f5939e1b315aa1efaed24ebf4fa496d961c1ace40f39554d574143a7ff11748c8d757ba0b81dd4a78d15b5cc16f46349ff81d0a95f876d927fe87193654bbfb43b569dc7364035ae19a14e17b897c593a329af3aa01a0ac037c75bdbd6e889a2df825aa9588ae1dd18ea6f905ca16fb74e9d7ba54bbd286b254e98e49bc721abcca472a9ae4674d4c6d867398fbb2862b04f1fd64450b7bdce67011d874429a2d27a21e4cfc6ae2932fe6abe2741880af7b91ee7350e34edc6fd5dd79f13afa8b36326e3f5906efcba714eea1de55edbb885216ccef9b393ff2ca7fae4b9e8afb2cd9bea23a0e1a4b85b140c07df0ade841a7d4d61d34d87af763597794e57f90ac7cd171706ac57c53ff9564a3a4ae7cac8ddd29885e41021eda1bae5ca9e54663ab7425b495e399c178c6a10b0c9ae958c79e648c109b839ddd5696905d4f0000d6a6a580e78f799094ae1c63ae7f5ace6ea324e63c67f84b3edc28bcfc10b62fd36f7055acf014bed36f4ad6b1311e7f91b15c957c73b82c88aeeca42ac2ed570059bc64db6780b2300a3322c5e5aed8ddf3055272d5f6f378f5b5bcc7ddbcc99ba9e708f063c7e85271239c6f0a5e598cefe6d1b08f33bf169e6fb2ee5b3ff60a6bf59fd36f704b1beee0098488e4b7af254cbd4206ff07ac4cce8e6c3b8937263e90d9f2b45cde6c6bbbaab6ff0e044edfd8f189ec61067786b274d861c5f0e5acf2084ec3bb98ca28fce1710e9d665e4e3f230178e0460e1e7d7702d62611e2959249ac1a2a4eb1993db9181dcbdd334689a2f7b8b96eb7311527734914b212e92c5a8f98d7563bc9e6e8e23c26376f9d2c066ed81d622a6087efe74895cbeb4fb5c899e0fea1c82417266971f6bb2d58060bca2b76cc08dd9a3ed301635a88305e7cf850d1de6aa2824d4cb78cc67a3a597829be9eef41dbc743cfe83ba2c1c3644e5343f7e7c619c566e641f7f8ad9c028de5290286cf5772fd2f5b8b1df4351f68ec7f9a6aea9009b9fe262bd0eb3445ec4f3c49c3e0d74fb41b3c96400e792eb5ca173871a648dbfcaae5e3b90177a3cef73045d37b6871727c973bf19d296f32d54a546a7f21b8d3c7e37d5ab4dd8df4eb8e43be9c51d6062fd4d0de0d2ada6c256e00b630924a7d699eaed46810d207f872edd6b68cf750f4c0187fa20c5032e05126436be8fd4aa67d0f1331acf5ef043571b10315d63c59cfe7f29d18a2c6585065f2774b507389cedb587bddd2438038531942dbf34792d98af93324a82f193713b148361f9674e9694fbfb526dc6f5eb416c671563ec445e741fa48e4b0ef90888b76913025ff3300843c39f418134aa41b0adab4bb9d85f432c27cee3720c67a9053fea0afdea39fa3927663bb27af8fac1fc863cd6e3a648ac1bb73db4ec323721981582543b62910cf1966f808635050875b67bd8d34933e9bfaeca961f7e2007abe7b103f996c7c0c5d7509256ca05f90115f3cde829641e89436eb3daf0f58cf6ff8993a738f76b8992c6160cae454c8769e5f2ff754e3c6ad20f7144e40d9ff4b2799b1de60a7fdf1272dacb17bbe1cdee70dc8499404e3bfa7e2415dd44bb27232d6b24af8b99e6fdcf420093891a986ead78a542cf59bd2d8f2c440f186ccb138d197511b10e665ac2656da6e2752e4b71b47e28e8539fed208fa56eaa565daadb748a6bd3edb5319f2ef2cd0d9222cabf28c776d361ab0d76fd1dec3fc9304c79ba39145796ef807ecbb8f6213682f297f42427aabe2d3954c95568dc284911bec8121207766d1bc43c28f579703565acc54acfe7bc5bbd290b5adc65cd3ab9b2bf2bb50682a878aa73220d193b0c3533fd7f591b9b586be1b46a70fcb4eaf730970489b2f2ef98668aac8bf571160409935eac1a2088a61cf47b81ff14ca24784807a12eb06baa735b02041d1d5bbb5b1eca3b61091fd31527eec48090f7841e744d3e820623c7d2acd98a70fa1cdfa706ba47aac24612f6d34e62f10ef778dc52be043ffa0d4eb6a36da954d3da16d059a82c8d73680d6c71024a1e9c766482247631d39a94024dd96e6ba7e3388aa069e6d4f2ece58ba275c619f5329f62c1de37fe1a0b32fcb8fdd1b1eb0b992726a318fe7c13d80e1541c2dda41c92b02b35d3a796d2ca71373041916f4c4d1eceb82eb9cdbc71f281c427543418eba7d97f6351c91c9b2f18b3a1a46c54a6f09f0ceb2e386829096a958a4f987d50c02795d289fdb929cf7df13b48a14256325a83ee925525251ccafb96dc70c98d7e6f0dbe1f2ecdc5714466f465937f09067c7b19c22368e68567728b68b42023f58d08fb6772bf3858a92ca453996c758273147d40e7ced1dd269ecdff4ce6e25142b6ad77b0ec60ec218a038f1f03ded8db61b41117b76cf3fc72d8c0d920003974c956fba0e6245f2eb9054be9b7cf1b46ebeaa4f4d1843e737b9d40066a73cf7e1cfe2870fa949c29d63638e67aa80e6bf0cf1ee260b2398a0dd52c1a0d63eb225a527ddc7d0de00a4beb238f53dbcd36a6003b5768e94a03ffcf19be61a99b81a12733906056bd56c694352672496b0311cf4d8daee0ae9dfa15c54873bd13a632b78dfc571de13a394aad01d8abf1d137d8e0e68cd075270137223caafd5f7067ab78aa20a157a74ba77a1f804f3861a42f5e96ddc148c893cb13d8826d3eec8d025854f4e35d683558a3f43e362045789496f1417e9a2356ed12a7844178a08bcd555486fdea6b91aa6459318d2ba679a14144ac3641e23a482839ed85c09c8eb5a3f032c3372519d446c1e4179f4cee146c4750fb55b4fcfdd820d2f74f26669d6812b7291b27b7283e11cbe5d5402179744ae91e5eb84c6ed3a1c7333beaf9f485f93782286f4d08c75ded08434f1cd1929d1c96ad0d0a42f3f2f3b982abbdb58adb8c0935587ececf446c204068ee4cbada485acfdc35332c9c8ddec9162e24981a0b6dd6ce6e3d38faa1fdee4ec42bf1e2b45466743a624c9661a15aaf979107a37ab3edf82d0ea38b0efdbe693931a46dbb14b1976980f8b1507c7b3a7470f8738c46b2c7282e86ea14023d8889007dda321210df5d4eed7360ae6db63e308135cac15854a90fdaf2444732a2bab75abd735008512ff3e7f03b4a9d70275d8c9df2f133b1dd2766cb515786e4b4d660eb8a6b158c500de107c5a66dcecf2d39ec8256e8ffebb729e47266eabfdcb4abe561c1c5df8704c1488484f72934ff69260ad0d5c8790951aca8134b8ed1ce349d3ae366aa27cc0d2236fdd86a6967df2e62e249592e1a75f46e3e69466d80fde646ec7173183747ca45cd4637e522e7b5ae4a31b20c3fb5e77a96ceaa3ec3d7c07544c85f35ad1804fe69532ba4e3a36d37c2f10d515fb13b52e070debb8b3715e4226572d12e466864fb428788bcb570f15f2c54cba0e312ff40b20635e1b4a965f76ec430ff416b9e3f49a085cc0e7e2280650fcf1c198c3cdf84ddde56cfb02a7eb0ae0382c43ca54e7f98eef50be9db59fa1209b796e1b20a675a69c24eca7a222ecfaf4f92afc0f2f16598e795f78e102fa0256e7c34d2d59532167aff99d3f59ddefba186ffcda9f6dcc2a617fd4594a0b74fc9a675ceaab22b7868c84ab4955b952a3872c9c316330aef269d72ba8d53bad3a8657363108736fe09ca8b6921a4ba0b73978c281299e6dba0086bc3aa271678fe385221de142fd43ca971f31e76c15cc5af5cc9c6ecea35f980b648831f34f37a94703a47d8ceeb782203365c2e7c91db8c89a06009c2f3819c04f9183c38b83e223811a0649a0de933bf2dce64b5e7d187f08836641b7e5ce3a380be6d8c6f91e49f38829584b1603ef520fff069b59ae3a59a0f0671d3f7503a096edd0f554649defd9aabec221bd9441b1cfd8ff5e5509ca91b295664954907d9f0f93de1f090820cfa2e0e30dfbcbc69894aebfee8d1e115370425ae3a01efa85be98d0fe7f22924a0e84d781048eb63604a0beb620583774606bf36c1e12435642ac7e5e6d431b3b4cf8bc31e840820b29e756c1817d3764331f218c031656372746009251183fa0404334688a7c56a36ae20cb4521f6c313459bf6b73413a8c8a2a44d919da95996b54ca4650f9defce06953c3b6188312409d997268a483ce40d7c405bd4d8bdd2f6ce44c54813ea7b1e3bee00c278ce016db78a805f46eafacdf7d8833351810f9d999edb36d3e5772531646301f229b8d1ecbb26200c274229a9f9cb6ff75ed3e379dc9d58ed946a5038d741b634d0fdeae0265f47406a2a9996188254ccae50623f4f2abab54b967cdee2f977f2a8e44778841fa6b5d6f97ec377cb53c92f486cfb1ac3b5dc79501215d71589b560f7871ade0b435b11e92c7b50fd1e7d33212f232cc8a023971d4038240fb00ed7a104a8ad55299ded9127de75ad9dead7d8e217e0fd5029cd912012a9aeb8d077aba072a01cea161f43bec4e2c032754cef47e712d3e1415cc1de3c655b5e4146f024ca931f50f5bbbc132743749d40cade97c1a09f4651d5ec8ff5a7c6ffe9aa81d0210c38d4ea04286348494b35e268bd2489946dcdd913d559a13da58a42f48ffcb58b28704dc42527cabe8ebda4c6288bd3b5e79c6dd3590236bddef30558ec537082687aa73dd3c96a5e3590e58350397554dd417c43535929c10d60b861e366fdca4f6095889db1384cd105fcbf76fc6fb2828dab3023b2cc44c833e52ae6ee5b8505cc3cb6513a3c0a940e8ec3894576e2f2a30146af09093a3e8836d7967073a833f2201f474798ee0e6114e0e0f1a9d36688208abb97ff8ec9d2ff93835593fd4dba34baea4f9340ace8dbf2d35347036de0f81df37a8cbe224251810f318b219b7d40e82a0397d6afde66718172f9641392593bccf067123f632bd4839830424609644ea66503f0bd415af6b7d24f308e9bd89baec5576cd3d4b6db6980dde8cc3f76ad70af4b441d8a24f4e185a75fb871a651422d6496dc23dca97e9f8a5ba57bb623fb19853c6294e301e4b7e5785daf9552cc22d67bb643acd2d111aafc67252fcb86e2ccc858750d7fe8de81d6b692b3e485af93142c9dbd7ea7fd16aa9d1eead4d29545a8597ef1958221b0ae5b456bbb1826abbe42059ab28a6a1947ca62546f6cadd23027ef43d4f0ae6fd6a55aa38e8c33ab0f3005bb865607eb7b7a2b7a4ccbaf7007b639e8e3eb249a78d816e3b9f6c450967d2e437dc9a2b358400cbf89840f6962eb0a2b42bf07d0e50e6a07bec049848548dd0bd529c49935d5fe3d59e71c454914b582b5efb73efe0ad0657907a67d4ed8131459ddcfb7c13f1341d79c240ee9b1e78b05848548f42818ee8f709ab757fe91e27f57fd0ee8296a637fc2b1e641e2d3db7c8436eca7ec2f182c6986fd7041fa6eebe07b3925e1c79e9ae55585535c4d36824735f8411460c43ebd122cacea875e899ab0930a6026606bf1fc029a0dec0bb298a8705549edf4d88d17fbbc648e2ebffad953d81c18989811f150fac71720c86c07cbfe0fd5ac723a5dad7ec276fffe76f45b8c24e893868dad33ed69b80cf405d329b7f0471b6226af51439230c188876bb53ff4a5a6f2b8c61e03aa848e7af38824fb6a46e02a02b0f53fb893488ec0bf9a20927baa41a98e2db7292150321321109c0b62da08ecb37e6c2c471e9efde2d16f75b12e1eda364dcaa2f68412f8c89cad5636a2d156662e99ce3e99f988cf44ee407f079bdb17d7faa357b0b36a039c717c815dbcfdbe2d34ee97f3714d3846425b4057cfc916a2154ca0e4a43a7946c6359c3b5d73de361c5877f1a2910ba4cb0959ffdc8b258b282bf205c93087c525bafddd98aae15bf134c9b6448a53af858ab6849b5d9d285036f0d1eb6bd1d6da6c7a7cf8ae697656c5963116b3108bbd70f261b16c7c0a01ad39cd2943e2ed86121c97eff29ef3e6c0bf2c4be44ebd6a1a3ed865780f5dce68047e7bf30f77ff3c97158370cc38e93128ac8ab5d409f9c33fcdbe7c0d1e3ff9b92d2825fe29be412805615dff48dd7942cae1a0ffa737f78606e1385fd2e3c6d84c355ce45477390bcf7fcfe4a9544a1d8e4147dcc5dd8308166d0d8c456fb869d7feacc9753506d78627f2c9c4e6cfbced91b81575805cf9a1f9b7ef02aeb26ce9d6165ae13cd855514867c5ceac53a3867d9ccd1c6cc00dd02f6224aac5303aae43573746aeaa180bb5c15ac88faca3430f793c73642005137789343b6b575d66ff664a095fa4bfb7776b1b09243e6ac4e76f9dff684d44a6a059385c5dab6b88f449f55971b0b1ed09db4c6b89572b99d30174d8357e1cf20dd9639a5d5d70676da65d1d1cf2451dd11c008db2db11815caba366e54ba959ef53749235104bed102f103c449f687005917455e34bc4dd322893f5335109e54f35554d00c3ad34d9d84ead35ff91b6eadcd0f7b17f1285eff861eee28fcbf89271db16efbcaee124dab4180b50aa5cfcbaa81ed4434cc475531bccfb9f97f4a43b74849a2da0ca9ab072fc99fb185569aeea240ae43e92cca57a149c53d8bc73ff48e715e84a70dac7ad0b9b99fb4be3f3bec88a0339d433111221b3ca235f0b93fa6d5ae980bb317bcfbbf139ee5bc8a370e03c462774baefc564a51813d56bcb298040c9f8dbbd4263562ba8c9395d37e3a06b0eb86907b93cc481b1264ed4d7199e3af782914a9dc64729382703f8ff122dbb6e32d1bfabdeb17214b84db58be669bf06b4cade0688b07c79f5a56529c923b034c7585721175f25e8d027b7c4b50c3617470da60cff5286645bcfa3b9ed83bdbe3aefad0749dbdaa76540c8f39f7548c376acb732e8d38a53342e43da05977d2e04e602ad388b207206fe38e655f02857d69d707dcae9ee8425d3ddb0799ee1501f4454c793bd6702508e7b385b819f369aab6eff447d76e8a1af9693df9263ca21172ae728c812ec38f06c79a67035b909fedb2ea01d2e6f319005d103229fb29143561e14b02dbda46ff3c92a74da590b5b2489213ea116e11ed0edb121e035242ceb001c65dffe200892bf3f8ed7bc6412b81643416d77c0e913f3e9f4a89848cbc684473de00e3513c14db38c84d591a36ee83b2184cbeffea76ceec2f95ea889a2e88f49b818d5d8e79e5fce29b01be3e5e3087a5f9c92419c76fea1b3432056be6c776b29183296e1d1858521bb1f86d6077bcec0ae8dde349dcd24e02f36d09da4eff15bd66e4b8f15c09ce5b75f1a21e27b493e6be9213bc24e2f4f7be01a122593ddfbc53cffc83643f43e8bfaf7db81176309c91f8f02413d24afc813d886dc0e984b3cbdfc547b9906ec4b15dbf89eac2ce38bddbf4ead5c6779b4e2aff4cc873431ccc1698bb06eb60df2f748848d519b2ecee6c77839705c5553994b55469001ac9318d717c51fcd175267ea6fc9abcc5ccd7b7151cc23ad88b525f32e865de960e7e426944f55434397697ee35c3a816b5f004ee7ff3788baa299acf5c8743e5d0383e51a01f99132ff786d61877c91ec28382fc0fef320de3695b01e67fb59635a190652506804dc11d4d9913f893e1f5115617ea2d718e13240c262e50dbdf2eac74d56022d8cfe7e41a5543ca9f788c94fe6a91524a2bf3b40aabc2073b1cf1f083945463fd70d4be75a8579f126718805f87c45a90de5d8d402b1489ad4c8b3fd0c1047fc4dfc703a7d6d6a5074a3f9aebe54459665627df91f9e10f551acfa74fbb612da92df22fbe40f3455e049133975233967f90c34fd5e592ffc8d6e3f84db8bc4f57ce30d03d63665f12a69a14ef32e7ff7e73e1cb0d742153ee099ca04a621fefd9e63799c48cdf3c2c9e3cc554cb484bfe879a7f39016c0563f46d24dfa3eb3af5e87b95500869cd8cd3dbd06da26da942f499ecef114dbb2067cadd801d3582f26f1d5fd54627588c83332145502183b0292cb6568df40a51e5b3facd373674e5425e1fb1faf721cea9b82676d43ce5573102f8ea7ea5cd33d0bff518b179c842d05e036e6edd8739d8dd63bbf86d3a908e7abe5cb77ba19c03103a1ee252164ca74f0448121d224a96726c4b8bbf4d6b7fcdf92269c7026916d6e3848b6a28d78284f4023687208516ed2c43fa1226e182c1d6b95b4779789598dea6a65388e9f578597e64a5c691e3b38e6bc7f192fcaf8cc550b217492ce0e3a067dac84e7960670685a8a7acc30bf9690028bb5905d7dc216c0aa7ee2f26b41440248d0703c62cd4d88c8c3dbbf2c691cad55ee58579954274dbad38488dd5b455c1c03c3f227e60514482a339f2a056bc5873f8479ea7afe56aff4da97d4f3354b41183445d09850a03d367c87c85f04fadab5ca44179999ec4f11439af5f9bab422d7b37917aabe5dfa07a7dc2e977688bbfb62b898ab4aff0200a57b9cbc551cf54b7548f4b905cd97a701d43d8a98eac1a2b0d796ac1d7bfb0781232b119bdc1c8d25834bd96414e6f502041482e78d023d7b64809d2885d2d5effbcbc454370640e0a4002aa5b8818319adc0dc3c83d0df0530b77904fe7855f563b4496bf714f75431fcf4e81d592e18f596f7ea50a8093dcd0e12fb0e8504bdbaea88de3854ac9ded3aa23e5c836f030b18caa74b9088700143d9a18c88264331344b47d57d749b3a189d32d2bbac94ccd2567407c8b0b4df742a4731a6ed3ec661937763ec94d84f29333c47af24fc4d3d11aa41f666b0e0d76bb08e9bc316095834fdc1e99b5406d6911a2ee5866104de1f59133a5ca1c57e54525c4dbc9b96c2e51ecb3a24605ebf43c4d6184f0687dc255b49962652afa7c9f330eec22169a7bc4f64aa32be835a6f6ab0d8288bccd9ad5f528b309a972c05dc6b465d9335a5bc05c3d3d5e2d424a578b9955618b4ebbbd12106844d81585effaf74af2a0d68222c17b05c379f112152dc942d6b6e2c74ac31e27a131926482e6222237f17f0da01e051df540d2b07c72209e0bcd92c37286790a86512be31b850ebe295e54d661c06405cc279f9f40253716509e28b63efcb448b89566a6bd981e2bd682c5a8a8f72b195946df4ada966555618b4ebbbd12106844d81585effaf74af2a0d68222c17b05c379f112152dc9ce0b01814c09dcb7c68588aa623f0e8145615577a4ed6c1df1d4325b77af016b89eda006265775b684cfbc5f78c92edff5bf3c0699d9ebead93df1d24b224b4418319adc0dc3c83d0df0530b77904fe7855f563b4496bf714f75431fcf4e81d54c6bcca167f84e542de825e5d906462c5f723b30eb9f5e8479880bec83e9d23c09e07e2a77d57b1516123f4ae88f42e2ab71748c38f5312534201ea1b0ff569f1e9592130fe5f5ff464bbf87bad0fe2e873479a5814ffc28e423287acfe0c6d8d16d85b318fcddc18850d4af9fb8883d709ac8d57312cd043820a3ed2ef4cf5e0951cf29266072822f8320889de585b0623f65c19b47cf53faf69be396d5a1945b5922aea0d3e3bd8fb928283e47109adc6d10385c5117d96ec273c95748b7443a5555615622b0597fa6f62aed7088983d5ec4671125f6e83a7d720ddc5ef8928b80e7eb56bc1efbadb9055abd0a9872b082c5cd01f78c4b0b8ff7179fdd31a4a3bf41c518471025ad2aa23e7f488e9f9d5cb86a1c0c4cf96436cb756108b0e6128195ff495d302c5c617a187ac719c5099ad31c02c011d68de4177d1c702e8914afdd53d505dfd5d94ab48dc67896201b0d7b9a505b84f2233720a6e8ca3a9d2a7c1c7a61285504fb342a8ecd257283999b8bb7977440d1b08b6324e1959b2618319adc0dc3c83d0df0530b77904fe7855f563b4496bf714f75431fcf4e81d55e6f58a2d8cd982e79ac1f9fa8115b3a30eca86851d36a339dfdfd79152e9b3725ac3af4b80f61be8979b666be61a733656403ba0d977b8758b5206a810aae962e6274eb9da5cd8cf5ccf172898493d4bedcee2758544d985b7acad6d54785ded8cc1f3e05eded8ac4fdeeb8049321b476ba639fb806fc3af9dbe5c568b32c76c44cfdac1a95c0a9b8a9ce7973e58eee866e76fe6f99b814076fd29c0c04c05cd49b429e5d90b7478b600cd4545057f14501b225566c0ffaea04d1800d5a28eeb7ba4dd82f82d32926f9f869b9374f5d045f5dc1b12e055621be8e328c784729a7794dde8f14bba4771b4cff8c235d483ee02a6666895c1cb014137b16fea99dc36abd33e3d586284c8bffac73f0f88a6bdf9cf6a3a0091625a95f54ce9a50798cb56843cfa9bd0d7e0a60f946ddb6811db77dbae112b1ad37e95a090f710cb7ad4eeb3158b98b0a144afe2cbe36a839ac5f02f0602df76016b2c85ae7291e59f8e4d41eca0169ced29076db95656d4614f8d1a7ad9fd95bd362bd7e07910322a1f6bb713a25cc096fdc4cc44239edc3bfb7ebfd0ea109eed4c7815e3ea6e778a1695aca68cf58c3ff94a69e54c55b99382e0c4065ebb004b79ab62234b471d25d04fbbd8d94e342d1c7e4fcceaefa96f2fc69429ea7f5f354704567de516b2b91b73948d9f84d2a7d656bd5db544b0b7e249dc6b3bca8216092c0605f455072af20c7ab922e42309b46b4d8c74053f16de4705eb1cf0b3d5f3f9fe1c7bb7a2f563dc4fd923a182b27139e914736e4166b26c2c7107a462799a268d438da3eb87378fcf5c72479dac106728576ec19b0342eb00296c137659bc96e372092c4e87972d83a75194571bafce5d08083e5b7591a314a37e2339279cf21481ec8909f517b817944c747b925d777e1ada2ed05ea21014c216da472bcbddef92c72dae504f5771a82a8c02d957feb42d19f899d5a381ad195f0ef7ef2eeba6f49944093d3bac6ac0262120cdc0ef99763c31b3150c84fe80040f393bc5d5f68681f715aa58f95030e13c00197de25328d3f4eb336ed2629c2dccef61f0c3c766fac1a53be0c90f26a449ff78811d199e210181f0024a6be75bd511d6673804a1d7562b02326cd3e3d32713769f2fa19780ef66d15905d52985eec77b57d00d7560cab890bca3609f0263dfb16b74aae1ec5d20a6213cba9b3fa7e2713a4bf79d16479088d951536e4028d375f439af36b4bf6a135d408e3e83a4e2be66855b315d6f65ea4487f6a5915fde43662e25d4bd57b51a4e87ef70848247f33ff9c276702cb3f0e98983547438f168803619efac87efce7b791d7d0704899d148367bddbfed863d293e003b359e913b0fdeb21f8be63d718cca7fb5a626778f72ca981e0af2f5b7e4f3666eeb67dd0ba5bd92e3cb54fc2c691527f0112425c44555c0b904f96631dee088dea8a482dee319b584a557f24d25b4375950b0a6c1c55e2091a73a43da14d9add5ea334c4a5627d00e255199f64d5046eec5a5782c6e9d598badcb3737b7065f84846a7a2a31366b0aa671d151dacdccfd59704a66452ab8bdea7b383176d6b1477d895562895c7b5e7adc55fc3ecb0c9d5b1454d8e3e00cda9928cbe99732cf8576078a2ca8e4cf27c046bedcfe9110b707b61003156825a7ffc31aa58f95030e13c00197de25328d3f4eb336ed2629c2dccef61f0c3c766fac1a535bc6e487cf67927ec4afb454c22b8ba36c57bf89d9853d2d07b81c67ff14b7d3640d259b0c523bf103dc5bff95ae777628cebd707078f4c51c4fc7d926dbcb268dfa2631e9abef0b1e6e4aacee474a25d87b9cc1923af22e2a1d0f1fc401907a8d951536e4028d375f439af36b4bf6a135d408e3e83a4e2be66855b315d6f65ecaa887dbdc463048cde4bdfe292f2011e9e70c653ebae367ba971e4136e1ab1854b7e2f1f7b34dc185438490b09bff61a77c5af8f8791df27a995fdf526f3a68837144610ed92983df740b63679dba4f4dd6a12c09aaaac4e28d9b1b7a5f05d28e0831086f4112290387451f23da69cdab5e806625b09432d912ef8135178d3ffd61d70826538b2bddf9d66901ef5b022a47b4aad3df70ce222734230ae866ddc406413e3a7eadc0ca4a62994e5dd00b2fb7d0ec088c5226cd0c98abeb222ec2cf12ba2e91dafa982975cbf01b12970f6dd7af55d2a29bab4a50c363b9adbf65f47b8aae224414db23fb34f21528371eb96dca04e926752d1d5cf3c569b3eedf020eb6c84b6ab31cd48f0b16eb34815c8c6eae5f4cde8da758a5d3a977781bd6a58f95030e13c00197de25328d3f4eb336ed2629c2dccef61f0c3c766fac1a537217f785db4256a7da329d62ac4e6f4d533ca4ddaabd474f42220eca97aa06ea5faa10779451c5d1966b53bd8a51416a013ef8bed2ce2081afb3609612396864b487af7cf124a3417d7c247b14e257b4bfa06066f80eb1caa0920850a11c3da3f19cbb87c16a2ceea2744c4e99c144be8527f1702d046361462f4d647f3ca855273f7f0d6ca91864f8e24adb05be44ea98720aed94052a0e9d58b08bb7b0a647beb7b285d67b1f50edef10ea93fe29efa716fddfee947c6059df29ed472683e717cd4875b71d8431cc0e90a3bdd5a04748a990b57d5bd2646159ebd9add839378d951536e4028d375f439af36b4bf6a135d408e3e83a4e2be66855b315d6f65ecdd0f2205964201169ff8f1fcd37c8b02046adcbb1fc01c7d8e6dd00d724a4e66c7d02cfa4d9b3f76c990c7100138d847cfdb99cdd0e5745bcbd9b673edee37d089be71df71947216ba9f92f376e24a2bd3d260c2fc51502fe89bbb86785cf433ba07676471710c4a553a2598f20498b2c48a8c96411a208af1c89a5879327befd61d70826538b2bddf9d66901ef5b022a47b4aad3df70ce222734230ae866ddee26064bfd8db978ebc443c9010e5087fa3070d870cb47ff05513402a103252ca549d1aa1fdea9b1be3f737eff53e24f47e520a3900f4e58d8c39469283e4cb2eefd0e4834abca65cca6e74de2d1eeb220fed0f39fe3a1a35c110a30bb868118f0281df3ae402300635a0001800072ec44b39acb7e6884533bb5552472412636d67a9bef3b899befe1fd69250940675c0fab3af685de788d16efca1538baa0c80ac403437605f14b464daed58fed397c93f02d6f53b136dd9944c1e165e33f31ee0814cf4ff656b6e7f8d42e2ff761a3f1143ad000e521cea7148892cc2dca7ed516e17592f2a701e419bcb88ba9da3ec72d0b6b071ca86f4413197cbfa17d84e7796d3d12b41f38ed7782fe7465ffb20d7d9f3b8fda2850dc99c5021072b7e686c6b356183ffd752e00b9738188d13c8955fe390ecd8dc77f6494278be63486c95e26fe493df0f117807c536c013f67f69aebba2389794b809dba139012543bc453333cb937063aa0d9e628b2788c9f8d13a5ef0da724b652fc63c66c80a3b544c4bc917de24cc1d824f9bdf713bb6b3b64986ed238ab1a7a7bc37cd5060f9e41b324ed3e9e7e4df4b150a9b85f41736c6cf395c269f61d71699225cd8b793ba0b5b106f39fca6f468d08d1a078400fe0d014ac3bee517f0cd53affea1317e140ec21062132bdb8b520c8c0f03ea3423ae75f1833b943244ac610823e1441e55084278f4945baa0f4b2d5fe59a1aa342089c51febec1ec8932742851fb530d9ca3b4aa2ec2803ebeab7d6772e8ae38811f9115a4af2aed3e5c7b3a4e8afa04fc67df19b9710d1e1eb0fe1b2196d02ed5ecbc4d58113db554a888a3c5669356c45bac41e3a17e6131bf017801d11adaaa0fdfaec00d5c81ecc7540754079fae554ba72927d2d08c25c1bea1a1749b9e8e64077b6690aca1ff746f3d9088d1c5145a1acab1bc64104b09a4212cef16f3ec470e8a19b8a9bf6c48f13f0b0b6e2ea45a3f63518397d112c50aa224ffa2226b8f87108fee6adaf8ada4fe36267ec903ba07676471710c4a553a2598f20498b2c48a8c96411a208af1c89a5879327be0c96a9eae2771eead876a5c720b00aaf3337de6b98bf929766170c7be6dde6be88cbd13772b828c68b10bead675b14bbe9ff3471df78879ed4446b2601be9aa7adaadce4ae9b5a72acb8b6bfccc8801379132b6a05353ebf54facf117d33e9d8d136eb34ef1878982a2990d3184655fb25f2a674c277d597d6b8914dd0c2dad2f0281df3ae402300635a0001800072ec44b39acb7e6884533bb5552472412636a9468c4967289b8013a9c5887aa142e376ee04755c08fd6c78a9052fb86184b20ac403437605f14b464daed58fed397c93f02d6f53b136dd9944c1e165e33f3156fc9b859f569613081b47bbda6c7e2a38e17d7db1976f62ba97a111b91496aad454f4d80a6f54657fb76f42d1d44d484f769bb808e783d206a44a101ca0639fe7796d3d12b41f38ed7782fe7465ffb20d7d9f3b8fda2850dc99c5021072b7e6d2c7cbb2c74b16267b455aa99f49a6a0dd1d0b3da6a4864844ac842d4de8cb3efb2370eaecbaece26538144a7b91efd19f3546317c853c0706309e85cc984eacc453333cb937063aa0d9e628b2788c9f8d13a5ef0da724b652fc63c66c80a3b544c4bc917de24cc1d824f9bdf713bb6b3b64986ed238ab1a7a7bc37cd5060f9e250ede18e9cccdc84b23b2106b9fd5cfa8182956d0c42d2a31b7b22bbb55cd81ae6c1d08af58a83e957279369a6e33bfd20445d04d1a1266289f0d31c1bb16abda95157fd5183a2035e8322d1a6c74d6fc84bfd1dcd188bc1b879305e9ff76feed3d3ec5d32f9315715eba58a8373d0f797564f5a7fcf444e8a2d2ce7c27b98600852ccd64b60116f9ea1c3f5aeec9ad120a54c6804153331b143134bd6686bd385d9e32167357f53440f77f0fd8ee45ce53a02ca6c0918fc340e8122ba6d9e745bac41e3a17e6131bf017801d11adaaa0fdfaec00d5c81ecc7540754079fae554ba72927d2d08c25c1bea1a1749b9e8e64077b6690aca1ff746f3d9088d1c5115f3063754030ee9ff322bb7478d0d96d26e1c3e8259ca92abc2263d4f6f055c3b88c779ae38a4f10b49880199cc8ae51d566908d9ddf9d936b3eb67fc1392f12d403ce212a665bed0daba7c17bb989245a61569d2212bdd1701c3ce1877033520cb1d9414aff6fbe2d5dfd96ec8040c066e924b2aaf435c9f4af6343ddc8788348f7a8f3dfd2fe1b22891360973352908235db4589dca9cee703a9842897a7be080dc86d389cf953af6336acd30af6e40e2ecd3bc84fe9f5c64da7f492f076e29e69431390c3c8f2aadf0429edfbceb83a5c086db226877acb12c6ac88d8c62881122e928aa43b3d2ca80a84b38edd5676b8bd9fb0c644bef344875bc91a7b64c3eb28f4aee21350c4a016783df34e812b727d4730ccbd13bfaf2baea3d13734aa3830854a48ef7042ad9e41fe42f1984f82fb0cc7ac66ad16b0f90474744f08b4fd807fa40cc4d52097fb01b704fab5085d65a91fb75caff797cb4129ca9e0da54d355b383eeb8121db31e73aa2b664e6dd903b97dcd30ab26249fc28882b1af543d5dc8231c4a2d4900be95d62ef87f9d2807a70eeca09ed4a9d3372ec968a58f95030e13c00197de25328d3f4eb336ed2629c2dccef61f0c3c766fac1a539179bfeb67d27c962c7618ce0884ab3ae8d8b608dbdf3107231e38354171b47629a0607131a66c9dcd6f84267bac7ac3dccf5c4ec2542a07e7738cd121035873b487af7cf124a3417d7c247b14e257b4bfa06066f80eb1caa0920850a11c3da35bcbc967c02c164893117ed11e50e9a54311c8374d8e3f697dce3ca427eb97d3273f7f0d6ca91864f8e24adb05be44ea98720aed94052a0e9d58b08bb7b0a647d42da70ffcd029b827dc5e564370d253e8b5b1c5a606129d9ce03ebfc6334797056c2c7812bc6405faa3da871daa2ef0d8b5cd037eba5977c616c79dbf19c0348d951536e4028d375f439af36b4bf6a135d408e3e83a4e2be66855b315d6f65eb894362d008cad328acf247d2780829c8956242726e2a8df17b8ae026357579d5ee5d48a1bb4ce9c8489751c40b402af997da5d2df06da584b416bd937b377ab089be71df71947216ba9f92f376e24a2bd3d260c2fc51502fe89bbb86785cf43e083766b9a0dc5a2ae4e18037d9088e2a88fb9a3e9b6843acf3a5db9b8ffeac81cf53745b921e0a500502e3a5a2a00dc7a77145cfd228a05c2b37f2c838d93b9348f7a8f3dfd2fe1b22891360973352908235db4589dca9cee703a9842897a7bac2fbfa0a9377c7c95bf914ba2dc17c13c19964dcccc90767e1b820ad81e987e14eb64ce40f363111df36dbe99fddd3a986abfa3ffbac937e3b87463ff44b3ab27ecfd09aef56062fab9d97631efb4e0c017a40dc7dd0298ef08c107fdb7d4303007fd0eb5049b9bd573ab6baaf7719f65854a5ccc0e41df7d22146873d762ee8ab01822e53412f7831986bab8789c34eb0d434f10d99a42b4b00005e98a7f577daad2f509a0ea077606c016848916bc713cda7f9faf7016fbb1d42e2c8796e505ba4590621861dd79d287073fc766bdb5bd1452cd6cc9933763c789a6e441033aec34a578ea99c517e5c7764bd92a4ee5f80e1b2d33dfd3eecc15b80e5524d6e3f0711594e416cfde5f30d9763dcebacdf292835beb8847c062211bacd09a2caccd7a14f18bbb7b480d36384ca32b2ea70ba488b10e1d18e000bb7f788acc732e43ee8c8d8d0dae02f6d91fd2ef2211348346f88491541ffd80a9612f2d1c8ee37209a8086d19983f68903791cd2c3947146e99b63b926bbdb844411e2b2c4bacd50c66d2d2c9ac72d595e10d08a94a660375ea380e95ddd52363045b0f0ff986e084b4e5bee973788a9b4046b9d596fec3dbb2ad2518886abc6a9f6dba3505e885a511246d5a986a3529451ac007c037b2ad1a94e20b79053b89c7e9443d2be8060b6ca4b04e72e315a4263c3dcca2a7653b0a464cbf6c16ec537a4a7628395e2f4dbe940e0e9d96e3ca2e7543a8e87009d7b528cd51f722a2002e164fc173b94558a60e1e605c6bb4d186e0747c70ec7ac171bbaf813453662dad96cafa1769be68b576059afff532a6051708c38edb2ab775e7a84f795bb844288028ccd5d2930931083c365caf292d5b97236c5663f1f6aaa55a715705916d486911c847e88960a7413f7d807846ed3ef3b42c99ee34455c97c494712046373045182f25a50c8e34a17052d4f604a9e7f7f820148285ec03aa5e50edd9f4c709feabd228965cf032dc893302d998bed577e84309ca21f210147ef92e362020b2b4a7a3cb3f39d287ab4a91279819320820b1288fefee590459dc9f8f3894df7e337f0b74fcbef1bde5f71b0be59c4f2e1c8b44528d783d1ef383a34cfc6cf4926365aad71c03b067eebe80756f34796da89d0694e560b13971aecc79cfac7901c60c637bab34a36f6cfb23c346820257ca4505a1fa99dbc2301689566cca344332f278c8edfb29c94d612936498f23440c82bafb7e6cb317015d4b00ce3fa9f115cd34d5e921e9eec6e8240ab042828f294662c30c44771fe5fe175772c1b4babb0dbdeea2622bb20128cf3ebaeb759cf3ba0cd47f0a8a516af1c9ef99c7b9a429c1f15b32d0116de8bc6245b96ad022031087c5992cfdb61fa61b6d99e29c4cfffa7bb7c18e778be12c89285d4ec9ddbd43539c078cf68d818e4cca595f515902113b6380e0742ffe94220d79a10fad5200f9260794963457ddce92a266bc0b08395735d0faf397277b40d1c733448444455d8825378b457e7b0ed6cc115de5e86a31cad2eab7e162c7522b0f1699b99b43c581ac7bcf14b83aa148ed171aee1961c2deb0a1b68433c41e23ebce9777400f0167478cccc6d210f3cc87d42a5e090fec2ba71838bf1ac1981b7a60c69ac772431c3b6733a05cafa4524d17edbf03cb7b3343d2bbbf1fe4a0735a95ca896ea695de2e66ba80b4a108077bd20a1cdba756b0578ad263e9b8f8eebdfc6c1a493dc7c9afeea4fa181590b6378496a8753e1b92ad46fcb2b8a15070b1383b8b243d2ea13cf12b96a016efb12d3e5ae19184ca57aa31751b3e83cc6130c6574ec100d4dc067f9604cf0c05b37de38ea8988f153b3e637810c37e03cb77fb499b17a26d46e3cbb3f5333bfcd01d6898203298cbbc812b2811fda06e3f5c34ac12f2d059306842e60798757067d83ad3d2862d657e2bc8c211e4328d1aa9d1e44297a15ed0b8dce5dfda3e824bc9cbedad6232484e25e50aaf5b79310f78121fce9335e6f04272a0f6b8102b0d1a49bd158f41cb47ac0f95878e0a13afa331077ba7c6b6dad6f68837dd0d995b75541f07a6427a7769b32cdf88ed01b34c8649a38edd61f86c8552cd8c81d81dc94db68dc06e6e997ae1b64940b046992eba438a867e0d1ac81b46bd91d00f171ba6fd674b899ba10ad23aa3b2fe10f2687a091971650e54dd9c39a473157644d1d9d34b00011f6f6e9bc142d9f538a562f9572a0104d77c638de8ecfd282eff77b512f07e4c18e2a134d65d37f0cf3f222ca65c573db38fb602bf1cba5160876b312236feb66ba79835797a7a93be7c92fbdae011f4fe181a6c2b42f51e525af02d50d1ef9c4e20ca5c406164145b78b34bc6e1cb919ecfcc2f20ca54dd5126a40d6ffab9c06efbac14f9260954be16b81835d090c822b9dcafd586f9a6ce3c88610a3a59817c417a8726feb72683fd896eaec4db59ded0e95d3256aa7a899f1e771f6e27d274590e961f725210cf269ee6eaa7dd0d8c90f78fcb92ede9c23d439ce11a5244f79ff952e5ccafe318c6e7a525277ec86feaba4bfd935f55e09866206025e97324dc7e28a183a1159f9ba1a1fe0aa7a8f7bf272149da9803a990640ae43c67b9a433dbdd94a61e11e58abba7963662babac9e992d7ad7a3d2ad81d271cd356ce31e075d1ba22e313ec6e84b3bfde891f7a005bc654b8e93bf9a6a18ea48425be39ad5842e16c338c231e6ffc1bd47a31582c09d870201b09a2855e246795c90235d19ef8790d8264ca62d17fddaabcd574e7120aca09ce4856315cbfdbf7ce0036cc1357e41ee9e26612f9e03eeba0d04e9a6f3fa32a50d227a2369172ef54dd1465c4adf23040a8be4fcbc1a4903c0e5a5376e2828d764720f004678f1bdeb1029c9bae846010bf2a24a9bce2cf4312b96127afa32a558a10836a89e0cf2c089e2b17e313f1792c6c725182d5d0efc2153cdad0915237b8203913279540804ec5ff62b22383ae2d6d0e90474c25e072da8144baa8130ebbe1a1344d6280291d4748c1c103033e3b600406ba45a7120506a9ffbe26ab733658945e73588cf022feb5840bd2aa740f105e0887ff9b8c058ceca5632c5701c3e4ec6029abf3e234a9baccf6face5c7be2b41d34828cd6575ec146c9855f738b0a4b61bfe5f67cea3448d7ec0467975154927660fd817d954388fe2b76f50d983874a24fd4b9393cfece1a81afce43f6f47a7b01c915e595229c6d5ab81d73e523927fc3242af65efcfb3fc59537d4906ef36aa4ca3394143f91de29c8b36089164bfa34e023cf22eb18c7bd1cebb6026d1c8c922341946a48e63826d0eed773ca05e565e1ba82c861bcd5e269deca2a9437c2607d9674f778d63a057cb2b6900782173f65a916910b7111db4269e4c200e3520e7fd71739d970fe2fc8a236a52079dad7e33a14bc956d4bb3269ef9451be659f6ef3010a3629f7cf5b6b71be88b08bfa6b996271cf3689f1288448ec70720744adab298773d434652a70fe74fc8a21b824bd757a52c6f527db977c5f527f14ebd8e8dfc2deb1b1ab2f3d204eca4f9c36fb723ba80fe0c83d0dc59dbe890ca90a7d899bda903d22c45c324489a734e611e5e53d2bbfbdec67a2231ee537c9f4f0f29d24e88bab3f1d91293c03e84fbc62bab92e06ecfe9df45707dd4e9fa14a1351a6c18458b9d847681ebcf93896986fe36ad4704550bfb19802e2c0bd2d695e7926b714d6fe902205984716ea29d6ec397a0f24a973c5b03f86c8413fb2cb95064d76c1c1f317bbf80d02bf0b95167b39d6f7d10211496870e978e9f758cdc66359ea414c19c83d169c2cdf08482b36fdc4e49d685221304df59c60dceede2b9c644e7db2bbeee73c20e4450fc1e5fb4bb0cc6795390afc61a8a48296a8bed5d64f8536f36e3694161e41116a82ee55e7a7e04af8b394e3e524f2490f36eec5401f57c69edcb22982b89f3274c4c8733c2ea092aff696b659d39a3ebb60ba2eee3b0328270f8abba6f260d4edbd16d5bbe118b843f04757f88ba11d2edf07c99690fdb9bfc66fc8cfaf6904f0f73a52f37a6aeef03b5e0274aa85dd873755869d989551f1499befb44f427d912ed2598d8cdcdce37d14e076c9add288a36774356d7d67bb21e62e3851e99d1fce97a9c2eff2bdc28d9215b8c73c973f6232bb6bcb9924b364fc02052247ddb0ae8b00a26a0c9fd4bf1b3b3a0c6e6fcd69b523962b18dab1cae5793fd7bb1dac8f2afc88cce2423427cfb832894ad434f0982baea0c1e951cfd14b830a749760b0f7c17e47aa145aa6c941694bab691a5861a044e116a25eeff46fe0c9624d531c982cf51fa934ae94b6d0e2dfdf82b68e0d8770090ea4f99670c699796a801383bf3f514cb8126d92d352aa63c3f59e0e33afa26446b0c9f3ea766922350cb2d01bed3c5945e738512e2319b5862a807cfb7548e3cd565cdf623556c45f14d50c30b736b4e9a8c7c0ce04fdb446fb3bce69d9e34044ba8d682018003a1a9bca4bad6c52e79faecc6d4fb9c5534b5c7a5daf65200b20821f0af4164044c976efde47cb6ff650a05cd878c77d887d412db4786d7db6f748dae0067bdcfc9d76e82909c47320dccec341498e0eddaace7951282722f730cdaac4047b9f11e8f84bd85899a5cfee8ecb00c331d10cb5182c2a539e1d09ea08af84dc4e0726976af53e6608eb282cafccf3fc48f0aa8413ec48276a84a841c96a9ecae3e9458c34b79d8902d121bdf593084ff45e325193166f5f7def119832ebf72b0f4e84650272001b68c3947d3229ea773351d8ed54b84ef8c0751ec1f98e338739736212a3bacbc7994a57a8b428ccce0274aa85dd873755869d989551f1499befb44f427d912ed2598d8cdcdce37d1a7368000b6475c55b10d7e000ab8364f90fa72de6019d01037ed4bdc8e1d787bb524f01388a23e6f48f3d5ca9e4002d6b449df849a0b5658d01ffdacd3d14e9edd81663e6ce0424740fc2a6e73388ba04d35253cc56d0a32e31392adcdf270e4fb832894ad434f0982baea0c1e951cfd14b830a749760b0f7c17e47aa145aa6c398adb2d3538db3868286310a3b4edda0554cddd14f6a1b5629ce0714e0b43a3e7fcc54267f54d82b56662446907c1417bfffa4829b9fe09f96eb3a6242e5b2dcd1f98cd10642f90581c033bc39f82ab34c5e69a29e9a3b7a382c29145dc7cfb8d70da7dc662b43be463f9b2d313bcba3ce7fcdeaebdbc843f5fe90470d1af94ad1df07d26dbcd46a691deb83c82d86aab0f5426433a0e35d34905fbeeadeeb26b75c6a88bc232202eb25a80d4ca44c499a104bbaa3a245a26892e9fe0db9f7e724d36105aa5bc827fcd61dd48b5edd0f8e72e53df7ccfff91d8989a139d8830efd9bf4a52f7fa012c782c5f324968b23774979e89b5a5564a832598b11be6a7d85932b994fa3cc5048700021c87138a74193ed11e83571676709359c7dfab50c8ff04755603a3efda419a2d2a3a64819ece78d7ff39170fc1ef163a0972708f7ec7f5b2d603e0b64cfc4c3fc8081d492b462ef8937e4b57948a778b17bc39e185086d3e51b754d72afb9a32f97d72b500cc1b6845f4d555640b1f71a55894905b91b7310e8bf202b0e96c8e442fe01cf8184abbaaeceffe249b0cf21e7505c4a701f5196757f09a64d65ba2027a51aff6f796cff9d09e52d95d6d7e309a6d6d3338b9a0d51aa173b06119d9e90b37d2d6978f84dfffe9eb46fb8167e53e57c848ebf40b57965cb7302170b854c49ad331294da6f019b9e2f110907060bd7142d93328f31446db5ae0cfe4ca1f16bfbbd9e3a7fea9ec71916dfff82d57ec77f76b7ec46c0b27d56e3f208378e3755abc851723ef5a98e475b8b94caabfac935d5e14e70637f2bb05317eb911770a5658d982daf6544af031be71f2c913528626b9e12dbf66736e523e6c29dd3370c4f294e4413e396ef1ec8e1dab6f0bdec4e5f5377c5c9a94c92802d8fdb8000d4f6f03e3c2795022e517c46b12291017f85b096a91bd7f04abc5f86a13b2af6bb569485500dd24756711a46083771062ddca121ca8b6e675a92d86f7e71df5e3f6808f128a4663a641181d9f0c9106835f99ef41fb4a52e4eb0662e9792b56e451a25154ba4b914c8df2fa715cd8381838c4f44d6b19fd79fe2d5aa7623c7dc7d31f01c69ac63606c3c8a8d9f20a734d6feb41f172f43569bd7c4f0dbc114dd52d4693bd915f1c4fc2dd0a83c0b4999f6f53223a4b68392d57e4f15f7e916bb5010b9a6b965d684ade6eedf83cbc277ac468160868b7798dbe08a9119f9901667d20c0230c93d5c44c6c3ae56b4ffd2ee7087164704d697f48ea7862a761d86be0a6d5b9c92129c09b9b8ef85e9f0da938e7dc04e31d1c72675009308e6c08a45646cd83addb45aa68fd53aa427eca52e0a34a075d77ad8390c525cd0f979921d11097e6ac328026195515ae2df92ac42cbeb037c38a1fbc7dd81590ede7ef05585940790fa2f1690b43ff1ec56b6a20ff00135c0c6c2f41095b7a4def211933aa19b2f7856d5c9b5f1d723d7511d3f450d72bd36a179afb19df75a187ef94c563e723cc47be27a4753d0bcd7c8bf4fad9f3c2ee109be60c0248fa9b111740201e6694184109f0dbd9c049dfb36ffc50d1db84779f34249608235d151a2dcd655ff517dc7ffd22d556e113fc408bf6c2e30e5da8ac098507e5162f9556f1e9b3944dcb256914dd6d6bdca0c1928a16ca45a91a66f8e348b9d0590cf373bf3403591178ce8207f57e4cd231a2c8bcc0525946fffbc0b7b793f04a9fb8f1879951a59d84fd868cb49088360b8e59e864a3be0e9f2dcd54f7f02ba3d8ff2d222597ea1ee5d86fea8ea848ceb9cf9c5de773ec464aff4e63977b5f2fabc5e5770f428d69048fb0ee6e48769bc45701949da82eb4e2970162174a33dc5a190abef09661839eba80faaa3c715f51a0086b21e77f8b8fc1851171d3048cc1faaede30d568b3f5057c393086c9095fcffde4f612deb78350bc69276fab21383ced4e3dde58a6903739c988af3b2fea954d0741e737e7face45a56bd75e26133405f57f24b1d63b37a59301fa61a5b4b500c9a5ccf1bc41ea5b551fe93999765c0837315777834ecf1fa97bf20dcb30eb736a4001950c15962b2a14fd3e5e989241c49e221b70255f5d1c1371ad5b06a583a0c6c414fc11198a8b4707a4c26ff409394ef76bf7b9859a8213747eb97de7d97ea27764dfad62cc5d000b549205fe0ed39518b499980ea8063698f6e32653137cc4984bfea7f17e94dfeff99fffb0f59adf8cd51b287b62f8c23a7717bb206f7f570ac0d93976bf81d12d28362035f2ef9e7f25640d812ae40292bf47314a89492ecc3bf30ab51ccbdc579aec725f841d3645a8b6e40ef854b83229595dbac6efd71647501b02305f15593787462c36875015a21b92e0b8aa6864a5b187a5a0ebe960d8c9ea08e87e6c3759c72b61636b920a4b37d139dd28eaf4fc6eaae3832967f3a3678fb3ceb5284a3db33957643f7d96ed4ea6c3f83dd86db8796e2dedda8b7151c8528f2553421226c705eb06827262fc7fabc9d2f72dabab1686dea67217747568ad55b531a38be853f0a1e7e118eee699f1f8adf9e386d90a73bb33cf1f6ab466b80d6f8bccef9f385bf17d3b3fe75cd828cd3ec157a300ff573e226dfeee26b912e93a1dffa81fd74124e067a8770c4f8e2c8cbcb9dee585481928fdadbec4603277bc9e5eb594523663c69e6da69a0d890c79b1086bba78fcc8125dcf2f87a2f23eab55e1986c2154ef85085e15a3cefb7fd1e4fe990065f2fe0f0c163fe77596e3140368f65da611e2c51aa69419ac8cf843c440cc2baff605a7487f77017498c7627ff771f8a4541998b808a44d8507f145d35912a8fbd89812b1277ebb664dfda5c7a046e4be5df7fcb9061081439ae765cfa33c543500a3c9de563bfa74dc66a7ddad05be71d1efc5ac9907a969836fc5962db837e56199fd3afd394bf35845530a760ef595b0688c7ca19d5460122bceb154a923b201d96371a818623f3e42d16c9aac01b231ee6302951fc86bf20a40a4c1e4b4a92ae31c730dd4e87478bad32f6dc4378f4eaa098d84cf305c83b9fef31d2b6207b69bce200dc9c873c1bd4892f3871c90f36b714ff442eee89c668937ec385b1ff0036e1747ec7da0d3277c37d6e4669355da43bd9448b91b24531fe702aa9047a9b33c11875b168e6a9a2ccd8042266d4a70824b4e7b6a4e45f0ed7159536c6e9cf1487b248b83cd4391ab23e367e876e6a2ed310a23b3a0451c348b1c8aa4ad83a5a47d52d97ea42d8974b84048d6c72ea31dc90700f99f82a7e747d8e79b3744b478bd25bd1328b42167c18fa9f04b51fd5f73cd8686627b6fa14fc5a53728812788abbc754d029060fd9ead2bd6073e4069642c414450462689ab9f89e5d3a2cc3588fcbc1d6c934aaab5dda095e11a50cf3b69f60a02c30d86effd1346e0301591e361de10289cfb42d0fa3d3aabf122ff26b801cd3f63ae0c07bc13644545a1f1b380636b6390fcc83a42f955aaf4d1331c274e6a7aa992cfe0b93f88ffeb3a4fcabeded5db89f79bfe6489e39a222e2a1c76aeb02e0decf3aa67bb8bf90bc81d1276dbce4d982fa7c9579f868428fb40009289e8c052c03cc804cf4377d1a3a79b2266af7e040bef4e982a65391f832aa6016e869c1173abd6c7178fbc9a0e7dfb82d175294da0e252325a30fa9e063798383eea5336d5b7177d2330e58d036a1a822f6b13e5a6e59d3e895510b3c67f90f6537e769da443c3d593090e6748badd4fd625f47f910b4aca363856b95434545eba2c3eee8d48c2597ddc899ba9a92c58bde123a7fc66ba7718739fd6bd1560f6b64d1fa8960a99561626b25c3f60ad352a4831d1068e30ec2baee83d79ab60b244503177b1272aa12ba5119a0da49f7c79239bea824cf3d377b24a9cecef738d7a9d48eae7f7c0d0f5c6f607d12b5369865c7297d7673fad4c53e904d71234beca88ad2e5553bb9cff63d7f4cb61fc91193dbe4fd13e3079f6eedd499d0b10a033b7fc2649f036c72170b983388c63487d7fbe4378cc4f7655e5082a0d784d9672460c7262ac03288d1595fc2d475cf551c62c8013475962dc76fc81e64bf01462f76a081936a5bb1fcb8a9667602b69d7eadedc549158429cd271a170230da9569db8ee6ef872c933ad7e5f1c49be3145a19dc45445a38494fa3ded80efc41fc784ebf10210abf6257f7f8d38a398d567c5e5533f08d236305993b9460a0c899af8b9219cee7b28408ada98cc458061f9ac67f06ac00da20e9b6ff9a77fbafedb100da2558fce725c2d8aa17a8f118e559e8fd0c96c23a0292b3da7d793e92c994785bec3e88e8f6dfebc3132953b484f6c4b641769b994f70c625b31e97e2cdac1fa45708d3e5e417553d445767fbd0530013dda1adc3d193f5858344bc8888c2cfcdadc11a11a5e210b66e40465fea712788d17ba625002bbde90a546a728e619d341c4be2bf44a2d2006ca2d7c22a1c37482668433dc50916c91c2c8aec48f23e62138fee351990094d9d37a16ae5e3373d2351ae8f1067146ca8b8c476000813c68fdb02a9c5272be0726923e71cd49c4bc3a14919ad9671e9c68a27724942fb1d4fc0d9708160d1873d15c07e549b5604146958ca1859f82534d5508a5c3384d98ee5951b55da79454111160e781ae35a02202a4fd55c36772e3fee41950b65806159df184cd54f86df49b019db3b65a1a3ad4c19581d165606fc3295aeaa47283f6ef5f036bbb641fb3095c02d6b245963cf3c948cb39c6769ddf7a7544516979b5c08d06bfd55c7ba9d15b638153220eba27863262d39b9ec22b50a7921ab41442ab742a78713aa328e499381e6e4a84bb9a100c80e220cb18c6e5ec19e11e84e2db71ff03c9556bafad7477ade430c7d3777d10e33ecfd35166d78755ef6420a419e00060810063f68d80c5a72a238dfd69865b760a258b4403e5f2232233f1b4727a44a7ae1f96795142f10df2137578ea9d66a54e58ff6dcfcead3504b5657f6e45f2b8fddce7369090f1e710dab9ec749c7a78cc45be95b70816b4c1bbe406a3830a45a6a273e628695a52b8750513258f4c018c87bd660f17210c888e7954ce71cc4150be1968085af45d5434e4b3c1b672afcd1ff7e146f223399396e6dabd5150ca68783fc04344506fe057a782b445a4e3a90ca83fe620571deb981109a3c5d1d66f8098e2bad18481c81f3845243c1f21bf18baeb3b8f32be2b523c65ed8e3616c248975c14bc4f0a7e708a0f398fcaa41091e14edc409ad9fde9e40acd9f42957da4cc89a81a2e5ca11a6871f5549d020eb2cd082ac9b96a5b807dc851024fbd47cf56e06607a4a32357fcd3d81e2aa7453f54d3842a78f231a9358cecb736d045cdf16dbe4cf3826f70942aa3a5a9dd14f2978f6934722568bbb50025dc56eab69e95a65969e0659adaccc9ca4d5d395560e11dc1a8ecca36d7417a9aa480ae92d37df7446fe6935ac7cc88a10f5c39fdc9c2a98048179ee2bdf6b2a996c3664fe9f96fbe1fc2a609e7411c85db8d1943781cc9777cd671ae63894d2f07f962cca31b9263d505197e72a5ec2d870ec334272085c6cd03f39544541560b711a2882e74f244c146f58f47c6a4d088cb240cb8c9fc51bc3cf62795b0e33f378e9ced23d4f17a9987bee0e26d7d61a89d6e8c408b0f5f6ad9bebf2cd30537e36a29a8c2d5726c73bbb0a1bdc40d3733297a5d741d4c0465b52fb278f683bad22529c7530f10e3c428bf719985dbccf05ec1c5f21d8e0a36ffda5fb077b19342589091d9e0e3226922b324c26c2daf5941a5c924faf0a3d20b8650bd49086391be5e82118ebf83a94135ea1f0d8913e166081a2a14d940e2a09431c041fb2c8c81b00cf4b102c32f3afcc3f509c96d6a34bfc2f54544929a33679a2787b761df07b16f5c859b6d25598d9bf49fa1fdbf0e9386bace827f40fb9207abb982292b9aea76761231cc3c8fed7027d14eccfd0dac5383daf56fc5eab42465a1d2ccc47610b71907c36a3c0228b99e226f04ebd0bfd6b5d494e4e97429af19a22aacf181c6f93d6b65de2f1d53c15a563c394dcdb59d9b9a7836a7bd6f373d7c4ccd92746b1252b5b1cf71d041ae2c667c52b6ed472b3f2a2103c79dce00b976c2b04e4e7b961e23ab01a110aabc4ffdced2472d77243f70cfd0783b4a89e0cf1341dacd4a35b6a4d1581c3c7af408af78e1255dc2396a192580ed94c271934711c24d24bf40e7b65a851dfde0ed389f13a2d0eb965e812abead7502a9aed111b167a3fcaf013cf0645a72e341aeefd374143b1b00168ff4a42f11898219e68fbe0bba0fb2de243af7d5a898ced6c3a8e169f848caaff994a0a188d945a0fafe352d6c509fe06b24fa357ebfb73b20f411b7e57c2a03f254d78d837c4c53fba4129354faf5c8dc636357b8c2f48572e795d3f076f2dbafa412ec0405dd024cd1171208efda08d5ccf46a515926c208878322b259ff135673c13f0a8e9a3368a634378df8dcbb819ad93c0e5d0c80dfd3c2f0df15cc716cdd8ef735c0fae4a3cbad10dcb447670ddd9c470990d183acc49009c375bcbcbb54a0c92c070e5233e0ccbd343781d013fd325eb362a1b64bba94bdbb743f618822bfedff97c317ef864f4bd36711b6d5b68c12edc740e36dea05deda6c4d1256beaa7a6bc563a9eaceee7e704d83213f27e846131ba83449bfe8b016b1b8496437b12bb8e6756700c8c3485066594657fa28f8c27b60a0f498ecb0316de262d228a74016d90b293d7f97ffadc910861c5f7f1455e032689b039981b2ee20954c0efdc1690419ff516e5620d01d2c6d045fdc10d04695aeb992a706e1faad739ae3b80f9c0b82ce21071368eacef8ae5230481eae055bdeadd0966375710ab5b904fc322d40b3c3b4e171291afab7f2f2dfe69ac7ac82d2b4f2bb14ed7141e2b2da6e45382f6c5419ebdcf0465e28c06dce22a3a6098a839c58253622e581243b00d367d10aed76d94be330c38eae6a04cf812670cbe3052520083357803597299f218a5c0d8b11e464c530334169043f806d1f6110ce71e46fba91171ef8484495f4c39b4aa4b25f9506a986f5cb1e9f26221bb27b23e0db48256755583b3c961065afbb328f64ddbdbf50ca6e33741a4c5a75386cdd41932ea7ec35dea31b7ed8ad51d2d7f21aec11bbcee95d9ad5d9b8d92bb1db2e78cd3a59ee5696d2f4810637f799f89d883e9766289a47bfb1d570b83f8a3d2b32697ebfa965ad3fd81c46aacac29582f0b930fa4add3726ee16309fabc08f66e3ff6020c1f263de8ffa9ec7da9167f033c3d7a624ad79ea5df98ac03a775fb71ce16075cde933b0de8946a284bd00bd35752da287b75a1c93c16b072a0850570c2148150274dc69aa3c766384c4875ff90af15dd163486fe89845c3a7849ea2e207be670b2268050b7e08423eb3611e70e81ee135f316f0abbeb39abebf4c08f55e791d32b02388aa8e26905e458de33e89dfe4c619a9ed703606fea73684a9b3dc628c7ea3682f76256e332fbbd5b530f1a746caa69b671334a2107e30a7f4b2856804b0fce888a8ef1c807758a975cdbed35971a6b0a9796cf67d8ed11b9856f6c25d9e62bf36f2a6932dd07d4cc02eee427a3c5209616908d29df0087c701190967dd7b215385976d3ee10aa96124bc957a1a114232f98e4765bc31c65b24975f384e4e0188c2bc1e0969038a79a0c1918a4558631682d5336bda1282ed6f32e0dc755343b4f295b5df2c7bbf147dded8efb10c58b7d1bc2634c20a71df75e37af8be4344b32d64c78dcdddc19f89e082f613a8350b05b62d5b82ec52fd6fe119bd69e407a0c108f3f397fc74fc89b6b8d907b066d44b6e621088e70280a1519ed91a2ec99d6a771d2fa0b2db032c8638907925937af0130715221e0e6b1391e6b6fe340730419f87171324a8f3301dc7d39bc380f9fd35ed3f5ec0586e2864b150942c1e635d303852a2515c209cf87a8bced19848cb63459f7265c9b997bdebc27be0dcbc0c6368844adc0c9b9eb07f5c00950f7a718dd5cc50f13681e5db36fd656d931ea7ca2e86ce0900613b3c7ab07022ebd8e42c0373ad8332e65acec7aacd403cdb7dd6ce7f04eecbe9a86b004cd04e59d5961f025cca97503e12a3220954936da4afbd0a1fb40d7d2cbcada5eea83b6a371482e0b8835b02c5f2042cb90ee970b0564f1c793372966fd1704b88298c42d8693b2dd312f2d25783d09b32055ea0e1addc062a250fbea33c1abc02c071873f3e224cb120fdc8b3b891e0f05ee75b3844611a83cefe11b53f30bd1ddb223538073157afc3adbc0c177de121e7351521719e5f265ddd4b940b73042c05ae6ed5a6a3ed7a181ee8c7dae7217555366d3c863d393fc72dd5f45265ccf522bc12d203cb216c265891fcd09c24d67c9d9965a95526b0ac690d6631b4d4d2bde84938cc2efee53825772d0b33117593be535134740519b1eb85e34266452fc8370dbcd9a02f3f90a511d4262475162c255e991f60d76406893910a1960dec215a652c7515da0535e5462fcddc098569c2ed8e18e46d124cac03fbc5c539df7764a1e30b3f0b0cb5c7a54f5e013e75af8fa17924b0cf3dc04c1feb165f27ea83541a43b08b2a752b241e1dc4f39c765f95670e7aca8162648e1585c98180181545bca245c81b8790555b0f0265deb4f388094b990118d59215fc86477c89fd75081e8df32bb40b069d6f084b0bacbba9d266c7a4fecbbe0ddf2e423ad60725b5ca70459a15d041e08311887a098c0c851e475987487062ce91e4cd608c98e427f5985de9ab68e71bbcd5a1ae8386e3ac8dc2c01f57161c68f9d92ef497f695c48e42eec4251262995faf42b7eb185b1acbf47307103ae70c993224f51eac500b754e424f406da79745df4098c022bc010ee9f68081f61d303e57394da048111d3cf67512b9fae99c2a8f4d813c896b7fa9f792c0a38daf7282c12cacb6b723560b529ed5cb95496f4ac5d1c3705ac16661b528d20a3e763380a72fd8b7734553de06177336b9a0bd54b57384025317587708c0322cb0d0c14d8fff565ad3adfac1ade8b601d865b74d47c8117563e0b1df2c1f166b14aa817997f88ac96e2dff51ddae079a805e3a9e8a4c09a7558d5361d73cf8c77be7926f89519d29ae55c5bc8f2d7c7c357bab63f17b3fa1b902c06a27caa77e025fa4443db5dfed875f2f75fd8fdc17cc141e6bf7fa4b638b533590ad941db7a252cf20cee2c2b39fab052503ce803745424c878120f1eaeedee6e41194755e83d2b9170c2f9cc585b4176d2944a494e173e4ed4a4ec6ff2c5570ef7b7eec89a5544c8d3070db019e64bb099eed676f404a3fe9df5f4cb99714975e3b1eb629c207092530b5afcc16b157feb163fad3881d39a59ae461a1a4ff36bf72f6080e2d1539377bfbe766de44584c6ef3adec70741a6ebad14010d543a8cac57c8176de3970d845190e7a79c407b4b001e01dc5134c2783c0f337cd93caa8d9770571dde601b141009ad87ab719960368e379c07b8d1aab13620945ac1206de1a9ef40c5fdb8fb665b7d66afed2cf8b994783d013c05ab68c189d0a0421e663b7ee62dbc2431c471bc18524efccbea76975b8b3bc55fd846e3e80c44034e75f72ce53246c11ffcfaaff437285ab7b5d86ca3a6068f871181b5d5c488ff9007078f6dc4eb7d91753775e6d6b1f6dc8923b4b5debe1adee3d20fa8e7510f4b425503bc0a95fb452a160f103ffbcc9d3e6b7a85df029f068cac8b68bea4029994d02faa3d0bfba82fdde76102fe2a4de8bcb8b9b39faa6638a293576a115ebad7f35cf9f071b9c9b126948353f7a7e10104dd7682438112a6037d7c8be038d838bf8897fee5b8f0daadf5bbc8ba708f19891d1c5836ac84925f45f8cc85bd3231ccf06603c4cea1f3979c22be71fd84dd0e3d75df942380398f4c7fdf9a159961ae0db59778f16a52766768fc02913b4374b633153ad0e74c108efcddbf2e44c92c4f96e05d7ff01500562bfc392fe1f68f73b8de9e03fe37061c2eferootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootrootboost-1.58.0-12.fc23.src.rpmboost-examplesboost-examples(x86-64)    boost-develrpmlib(CompressedFileNames)rpmlib(FileDigests)rpmlib(PayloadFilesHavePrefix)rpmlib(PayloadIsXz)1.58.0-12.fc233.0.4-14.6.0-14.0-15.2-14.13.0-rc1XJV@Vy;@Va@UAUU)UȒ@U@U@U@U@Ua@U+U*^@UT~Tء@T TC@TTq@T@TcKSvS@SSpS(5@S(5@S&Rb@RΏ@R@RR$RR7RNRQQdQdQdQ@QQp@QQ7/Q5@Q-@Q@QQQ@P@P,P+@P"TP!@P1@P@O OF@O"O!OOOOLOO@On@O3O?@O?@ON@Nǚ@N@NiN\N.@N)f@N@M@MM@M|MtMfH@MQ0@MOMJM*M%M!@Ls@LL@L@LoLi(@L[@LT@LN@LN@LI@LH2LLLGK@K]K@KqKhKf@KbK]KUKTM@KO@KLd@K,@K*@K(K>K>K>JJս@JJG@J#Ji@JL@J@J@J{J{J{IIyIIk0IKIG@I!\H@HH)HQH>G@G:G-@GG@GNF@FF@F@F$@FF@FFE@Ee@E[@EYEX^@D@DiCi@C@CC @CC@Cx|@CK@C B@B@B:B8AA@A@AQi@@@@@4@@b@@ia@@,@@'v@@@?]?\o@>@>@>Jonathan Wakely - 1.58.0-12Jonathan Wakely 1.58.0-11Jonathan Wakely 1.58.0-10Jonathan Wakely 1.58.0-9Jonathan Wakely 1.58.0-8Marcin Juszkiewicz - 1.58.0-7Zbigniew Jędrzejewski-Szmek - 1.58.0-6Sandro Mani - 1.58.0-5Jonathan Wakely 1.58.0-4Jonathan Wakely 1.58.0-3Jonathan Wakely 1.58.0-2Jonathan Wakely - 1.58.0-1Fedora Release Engineering - 1.57.0-8Marcin Juszkiewicz - 1.57.0-7David Tardon - 1.57.0-6Than Ngo 1.57.0-5Petr Machata - 1.57.0-4Petr Machata - 1.57.0-3Petr Machata - 1.57.0-2Petr Machata - 1.57.0-1Petr Machata - 1.55.0-8Petr Machata - 1.55.0-7Petr Machata - 1.55.0-6Petr Machata - 1.55.0-5David Tardon - 1.55.0-4Fedora Release Engineering - 1.55.0-3Fedora Release Engineering - 1.55.0-2Petr Machata - 1.55.0-1Petr Machata - 1.54.0-14Björn Esser - 1.54.0-13Peter Robinson 1.54.0-12Petr Machata - 1.54.0-11Petr Machata - 1.54.0-10Peter Robinson 1.54.0-9Petr Machata - 1.54.0-8Petr Machata - 1.54.0-7Petr Machata - 1.54.0-6Petr Machata - 1.54.0-5Petr Machata - 1.54.0-4Petr Machata - 1.54.0-3Petr Machata - 1.54.0-2Petr Machata - 1.54.0-1Petr Machata - 1.53.0-12Petr Machata - 1.53.0-11Deji Akingunola - 1.53.0-10Petr Machata - 1.53.0-9Petr Machata - 1.53.0-8Petr Machata - 1.53.0-7Petr Machata - 1.53.0-6Petr Machata - 1.53.0-5Petr Machata - 1.53.0-4Petr Machata - 1.53.0-3Denis Arnaud - 1.53.0-2Petr Machata - 1.53.0-1Peter Robinson 1.50.0-7Denis Arnaud - 1.50.0-6Petr Machata - 1.50.0-5Petr Machata - 1.50.0-4Petr Machata - 1.50.0-3Petr Machata - 1.50.0-2Petr Machata - 1.50.0-1Fedora Release Engineering - 1.48.0-17Petr Machata - 1.48.0-16Petr Machata - 1.48.0-15Petr Machata - 1.48.0-14Petr Machata - 1.48.0-13Robert Scheck - 1.48.0-12Petr Machata - 1.48.0-11Fedora Release Engineering - 1.48.0-10Petr Machata - 1.48.0-9Petr Machata - 1.48.0-8Denis Arnaud - 1.48.0-7Denis Arnaud - 1.48.0-6Denis Arnaud - 1.48.0-5Petr Machata - 1.48.0-4Petr Machata - 1.48.0-3Petr Machata - 1.48.0-2Denis Arnaud - 1.48.0-1Petr Machata - 1.47.0-7Petr Machata - 1.47.0-6Petr Machata - 1.47.0-4Petr Machata - 1.47.0-3Petr Machata - 1.47.0-2Denis Arnaud - 1.47.0-1Peter Robinson - 1.46.1-4Petr Machata - 1.46.1-3Deji Akingunola - 1.46.1-2Denis Arnaud - 1.46.1-1Caolán McNamara - 1.46.0-0.5Denis Arnaud - 1.46.0-0.4Petr Machata - 1.46.0-0.3.beta1Fedora Release Engineering - 1.46.0-0.2.beta1Petr Machata - 1.46.0-0.1.beta1Denis Arnaud - 1.44.0-7Petr Machata - 1.44.0-6Petr Machata - 1.44.0-5Petr Machata - 1.44.0-4Tom "spot" Callaway - 1.44.0-3Tom "spot" Callaway - 1.44.0-2Denis Arnaud - 1.44.0-1.1Denis Arnaud - 1.44.0-1Denis Arnaud - 1.44.0-0.6Denis Arnaud - 1.44.0-0.5Denis Arnaud - 1.44.0-0.4Orcan Ogetbil - 1.44.0-0.3Benjamin Kosnik - 1.44.0-0.2Denis Arnaud - 1.44.0-0.1David Malcolm - 1.41.0-13Petr Machata - 1.41.0-12Petr Machata - 1.41.0-12Dan Horák - 1.41.0-11Petr Machata - 1.41.0-10Rex Dieter - 1.41.0-9Caolán McNamara - 1.41.0-8Petr Machata - 1.41.0-7Petr Machata - 1.41.0-6Denis Arnaud - 1.41.0-5Petr Machata - 1.41.0-5Petr Machata - 1.41.0-4Petr Machata - 1.41.0-3Denis Arnaud - 1.41.0-2.2Petr Machata - 1.41.0-2Benjamin Kosnik - 1.41.0-1Denis Arnaud - 1.41.0-0.7Denis Arnaud - 1.41.0-0.6Benjamin Kosnik - 1.41.0-0.5Denis Arnaud - 1.40.0-1Petr Machata - 1.39.0-11Petr Machata - 1.39.0-10Petr Machata - 1.39.0-9Petr Machata - 1.39.0-8Jitesh Shah 1.39.0-7Karsten Hopp 1.39.0-6Tomas Mraz - 1.39.0-5Fedora Release Engineering - 1.39.0-4Petr Machata - 1.39.0-3Benjamin Kosnik - 1.39.0-2Benjamin Kosnik - 1.39.0-1Benjamin Kosnik - 1.39.0-0.3Petr Machata - 1.39.0-0.2Benjamin Kosnik - 1.39.0-0.1Benjamin Kosnik - 1.37.0-7Petr Machata - 1.37.0-6Fedora Release Engineering - 1.37.0-4Petr Machata - 1.37.0-3Petr Machata - 1.37.0-2Benjamin Kosnik - 1.37.0-1Benjamin Kosnik - 1.37.0-0.1Benjamin Kosnik - 1.36.0-1Petr Machata - 1.34.1-17Petr Machata - 1.36.0-0.1.beta1Petr Machata - 1.34.1-16Tom "spot" Callaway - 1.34.1-15Petr Machata - 1.34.1-14Petr Machata - 1.34.1-13Petr Machata - 1.34.1-12Petr Machata - 1.34.1-11Petr Machata - 1.34.1-10Benjamin Kosnik 1.34.1-7Benjamin Kosnik 1.34.1-5Benjamin Kosnik 1.34.1-4Benjamin Kosnik 1.34.1-3Benjamin Kosnik 1.34.1-2Benjamin Kosnik 1.34.1-1Benjamin Kosnik 1.34.1.rc1-0.1Benjamin Kosnik 1.33.1-13Benjamin Kosnik 1.33.1-12Benjamin Kosnik 1.33.1-11Benjamin Kosnik 1.34.0-0.5Benjamin Kosnik 1.33.1-10Benjamin Kosnik 1.33.1-9Benjamin Kosnik 1.33.1-8Benjamin Kosnik 1.33.1-7Jesse Keating - 1.33.1-6.1Karsten Hopp 1.33.1-6Florian La Roche - 1.33.1-5Jesse Keating - 1.33.1-4.2Jesse Keating - 1.33.1-4.1Benjamin Kosnik 1.33.1-4Benjamin Kosnik 1.33.1-3Jesse Keating 1.33.1-2Benjamin Kosnik 1.33.1-1Nils Philippsen 1.33.0-4Benjamin Kosnik 1.33.0-3Benjamin Kosnik 1.33.0-1Benjamin Kosnik 1.32.0-6Benjamin Kosnik 1.32.0-5Benjamin Kosnik 1.32.0-4Benjamin Kosnik 1.32.0-3Benjamin Kosnik 1.32.0-2Benjamin Kosnik 1.32.0-1Than Ngo 1.31.0-9Elliot Lee Warren Togami 1.31.0-7Benjamin Kosnik Warren Togami Benjamin Kosnik Elliot Lee Benjamin Kosnik 1.31.0-2Benjamin Kosnik 1.31.0-1Nalin Dahyabhai 1.30.2-2Benjamin Kosnik 1.30.2-1Elliot Lee Florian La Roche Tim Powers 1.30.0-3- Add patch for Boost.Asio to fix allocator usage (#1403165)- Add patch for binomial_heap::pop (#1294515)- Add boost-doctools subpackage (#1244268).- do not use arch-specific BuildRequires (#1268267)- Add patch for Boost.Fusion bug.- Re-enable boost::context on AArch64.- Rebuild for MPI provides- Rebuild for RPM MPI Requires Provides Change- Patch incorrect placement of BOOST_UBLAS_INLINE macros.- Patch to prevent address model being set by Boost.Build.- Patch for missing include (boost-1.58.0-variant-includes.patch).- Rebase to 1.58.0- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild- Add AArch64 support for boost::context - Numbered patches are cherry-picked from upstream repository. - partial-revert-of-0002 removes some build definitions which are defined in coroutine/ - last patch changes ABI names - taken from boost ML- rebuild for yet another C++ ABI break- rebuild against new gcc- Fix template class boost::rv, which for union T's inherits off them. (boost-1.57.0-move-is_class.patch)- Honor RPM_OPT_FLAGS (boost-1.57.0-build-optflags.patch) - And don't pass -ftemplate-depth at all. The intention there was to increase the default instantiation depth above the default 17, but GCC defaults to 900 anyway, and requesting 128 actually lowers the limit. (The same patch.) - Add a patch to fix incorrect operator< in Boost.UUID (boost-1.57.0-uuid-comparison.patch)- Change Provides: and Obosoletes: back to not use %{?_isa} - Enable Boost.Context on PowerPC, it should now be supported - Add a patch for Boost.Signal2 to include weak_ptr where it uses it (boost-1.57.0-signals2-weak_ptr.patch)- Rebase to 1.57.0 - Drop patches: boost-1.54.0-bind-static_assert.patch boost-1.54.0-concept-unused_typedef.patch boost-1.54.0-static_warning-unused_typedef.patch boost-1.54.0-tuple-unused_typedef.patch boost-1.54.0-random-unused_typedef.patch boost-1.54.0-date_time-unused_typedef.patch boost-1.54.0-date_time-unused_typedef-2.patch boost-1.54.0-spirit-unused_typedef.patch boost-1.54.0-numeric-unused_typedef.patch boost-1.54.0-property_tree-unused_typedef.patch boost-1.55.0-program_options-class_attribute.patch boost-1.55.0-archive-init_order.patch boost-1.55.0-xpressive-unused_typedefs.patch boost-1.55.0-spirit-unused_typedefs.patch boost-1.54.0-smart_ptr-shared_ptr_at.patch boost-1.55.0-atomic-int128_1.patch boost-1.55.0-atomic-int128_2.patch - Rebase patches: boost-1.54.0-mpl-print.patch -> boost-1.57.0-mpl-print.patch boost-1.54.0-spirit-unused_typedef-2.patch -> boost-1.57.0-spirit-unused_typedef.patch boost-1.54.0-pool-test_linking.patch -> boost-1.57.0-pool-test_linking.patch - Add new subpackages boost-container- Build libboost_python and libboost_python3 such that they depend on their respective libpython's. (boost-1.55.0-python-libpython_dep.patch, boost-1.55.0-python-abi_letters.patch) - Fix Boost.Python test suite so that PyImport_AppendInittab is called before PyInitialize, which broke the test suite with Python 3. (boost-1.55.0-python-test-PyImport_AppendInittab.patch)- Change Requires: and other package references to use %{?_isa}, so that dependencies are arch-aware. - Drop two obsolete conditions testing Fedora >= 10 (but leave RHEL >= 6 for potential EPEL deployment).- Boost.Atomic: Fixed incorrect initialization of 128-bit values, when no native support for 128-bit integers is available. (boost-1.55.0-atomic-int128_1.patch, boost-1.55.0-atomic-int128_2.patch)- Fix boost::shared_ptr::operator[], which was ill-formed for non-array T's. (boost-1.54.0-smart_ptr-shared_ptr_at.patch)- rebuild for ICU 53.1- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild- Add a new sub-package boost-coroutine - Annotate or drop some unused typedefs (boost-1.55.0-python-unused_typedefs.patch, boost-1.55.0-spirit-unused_typedefs.patch, boost-1.55.0-xpressive-unused_typedefs.patch) - Add a patch for wrong initialization order (boost-1.55.0-archive-init_order.patch) - Add a patch for misplaced attribute at class declaration (boost-1.55.0-program_options-class_attribute.patch) - Drop 001-coroutine.patch, 002-date-time.patch, 003-log.patch, boost-1.53.0-attribute.patch, boost-1.54.0-__GLIBC_HAVE_LONG_LONG.patch, boost-1.54.0-algorithm-unused_typedef.patch, boost-1.54.0-context-execstack.patch, boost-1.54.0-graph-unused_typedef.patch, boost-1.54.0-interprocess-atomic_cas32-ppc.patch, boost-1.54.0-lexical_cast-int128.patch, boost-1.54.0-math-unused_typedef-2.patch, boost-1.54.0-math-unused_typedef.patch, boost-1.54.0-mpi-unused_typedef.patch, boost-1.54.0-multiprecision-unused_typedef.patch, boost-1.54.0-thread-cond_variable_shadow.patch, boost-1.54.0-thread-link_atomic.patch, boost-1.54.0-unordered-unused_typedef.patch, boost-1.54.0-xpressive-unused_typedef.patch,- Fix a noexecstack patch for ARM, enable Boost.Context on ARM. (boost-1.54.0-context-execstack.patch)- rebuilt for mpich-3.1- Enable MPICH and OpenMPI support on aarch64- Rebuild for ICU soname bump.- Add ppc64le to the list of arches that OpenMPI and MPICH don't support.- Enable MPICH and OpenMPI support on ARM as it's long had them both- Add aarch64 into the list of arches that OpenMPI doesn't support.- Fix shameful blunders in implementation of the previous fix: don't hard-code path to has_atomic_flag_lockfree binary; use m4 instead of cpp, cpp in F19+ prefixes output with a bunch of comments.- Add libboost_atomic.so.* to the libboost_thread.so linker script on architectures that need it.- Fix atomic_cas32 (thanks Jaroslav Škarvada for figuring out where the problem is) (boost-1.54.0-interprocess-atomic_cas32-ppc.patch)- Fix compilation of Boost.Pool test cases (boost-1.54.0-pool-test_linking.patch) - Fix -Wshadow warnings in Boost.Pool (boost-1.54.0-pool-max_chunks_shadow.patch) - -Wshadow warnings in Boost.Thread (boost-1.54.0-thread-cond_variable_shadow.patch) - libboost_thread.so.* lacks DT_NEEDED on libboost_atomic.so.* on s390. (boost-1.54.0-thread-link_atomic.patch)- Bump odeint obsoletes and provides a notch to cover a build that sneaked into rawhide (bug 892850).- Fix detection of availability of 128-bit integers in Boost.LexicalCast (boost-1.54.0-lexical_cast-int128.patch)- Rebase to 1.54.0 - Add new sub-package boost-log - Boost.Coroutine is only enabled if Boost.Context is - Drop boost-1.53-context.patch (interesting parts now upstream) - Drop boost-1.50.0-foreach.patch (#define foreach now discouraged) - Drop several unused typedef patches that are now upstream. (boost-1.53.0-static_assert-unused_typedef.patch, boost-1.53.0-fpclassify-unused_typedef.patch, boost-1.53.0-math-unused_typedef-3.patch, boost-1.53.0-lexical_cast-unused_typedef.patch, boost-1.53.0-regex-unused_typedef.patch, boost-1.53.0-thread-unused_typedef.patch) - Add release notes patches (001-coroutine.patch, 002-date-time.patch, 003-log.patch) - Add additional unused typedefs in Boost.Math (boost-1.54.0-math-unused_typedef-2.patch) - Drop symlinks from libboost_{thread,locale,atomic}.so -> *-mt.so, which we don't need anymore, as we ditched the tagged layout.- There's no physical difference between single-threaded and multi-threaded builds, except some libraries are only built in multi-threaded mode. So build everything in multi-threaded mode, and ditch tagged layout, which we don't need anymore. https://bugzilla.redhat.com/show_bug.cgi?id=971956- Add Obsoletes for odeint (bug 892850)- Add Provides and Obsoletes for the mpich2->mpich renames- Add explicit dependencies between some of the boost sub-packages- MPICH2 became MPICH -- rename subpackages, dependencies and conditionals. - Install supporting files (images etc.) for documentation (courtesy Marcel Metz, bug 985593) - Add many patches for silencing unused local typedef warnings (boost-1.53.0-static_assert-unused_typedef.patch, boost-1.54.0-bind-static_assert.patch, boost-1.54.0-concept-unused_typedef.patch, boost-1.54.0-static_warning-unused_typedef.patch, boost-1.54.0-math-unused_typedef.patch, boost-1.54.0-math-unused_typedef-2.patch, boost-1.53.0-fpclassify-unused_typedef.patch, boost-1.54.0-math-unused_typedef-3.patch, boost-1.54.0-tuple-unused_typedef.patch, boost-1.54.0-random-unused_typedef.patch, boost-1.54.0-date_time-unused_typedef.patch, boost-1.54.0-date_time-unused_typedef-2.patch, boost-1.54.0-spirit-unused_typedef.patch, boost-1.54.0-spirit-unused_typedef-2.patch, boost-1.54.0-numeric-unused_typedef.patch, boost-1.54.0-multiprecision-unused_typedef.patch, boost-1.53.0-lexical_cast-unused_typedef.patch, boost-1.53.0-regex-unused_typedef.patch, boost-1.53.0-thread-unused_typedef.patch, boost-1.54.0-unordered-unused_typedef.patch, boost-1.54.0-algorithm-unused_typedef.patch, boost-1.53.0-graph-unused_typedef.patch, boost-1.54.0-locale-unused_typedef.patch, boost-1.54.0-property_tree-unused_typedef.patch, boost-1.54.0-xpressive-unused_typedef.patch, boost-1.54.0-mpi-unused_typedef.patch, boost-1.54.0-python-unused_typedef.patch) - Add a patch to turn off execstack in Boost.Context (boost-1.54.0-context-execstack.patch) - Fix boost::mpl::print on GCC (boost-1.54.0-mpl-print.patch) - Add symlinks for /usr/lib/libboost_{thread,locale}.so -> *-mt.so- Fix detection of availability of {,u}int64_t in glibc headers. (boost-1.53.0-__GLIBC_HAVE_LONG_LONG.patch)- libboost_context.so must be guarded by conditional in the expanded filelist at boost-devel.- Split off Python 3 DSO symlink to a separate subpackage boost-python3-devel. This makes it possible to install boost-devel separately, without Python 3 support. - Build with -fno-strict-aliasing- Make Boost.Context support conditional- Fix Boost.Context on ppc64 - Future-proof the linker script boost_thread-mt.so- Fixed the libboost_thread-mt.so script (which wrongly referred to Boost-1.50)- Upstream 1.53.0 beta1 - Drop boost-1.50.0-signals-erase.patch - Port boost-1.50.0-attribute.patch - Drop boost-1.50.0-polygon.patch - New sub-packages boost-atomic and boost-context- Rebuild for icu soname bump- Rebuild for the new MPICH2 (and libmpich2 soname bump)- Update %description to reflect current state of C++ standardization. Courtesy of Jonathan Wakely. (#837813)- Override boost_thread-mt.so with a linker script that brings in Boost.System DSO as well.- boost-python3 shouldn't be under the overall boost umbrella- Enable Python 3 builds. This is still disabled in Boost MPI, which doesn't seem to support Python 3- Upstream 1.50 - boost-cmake-soname.patch drop, upstream handles soname well, and we haven't been doing manual numbering for several years now - boost-1.48.0-cmakeify-full.patch drop, not necessary for bjam - Rebase many patches, port others, courtesy of Denis Arnaud: - boost-1.48.0-exceptions.patch drop - boost-1.48.0-lexical_cast-incomplete.patch drop - boost-1.48.0-gcc47-pthreads.patch drop - boost-1.48.0-long-double.patch drop - boost-1.48.0-xtime.patch drop - boost-1.48.0-locale.patch drop - boost-1.48.0-signals-erase.patch port - boost-1.48.0-fix-non-utf8-files.patch port - boost-1.48.0-foreach.patch port - boost-1.48.0-attribute.patch port - boost-1.48.0-long-double-1.patch port - boost-1.48.0-polygon.patch port - boost-1.48.0-pool.patch port- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild- Build Boost.Locale backends - Resolves: #832265- In Boost.Pool, be careful not to overflow allocated chunk size. - Resolves: #828857- Don't attempt to install Python 3 portions of boost when given --without python3 - glibc newly defines a macro TIME_UTC, which collides with boost::TIME_UTC. We can't avoid expanding that macro, but the value happens to be the same as that of boost::TIME_UTC. So drop enum xtime_clock_types. Update boost to use macro TIME_UTC instead of the scoped enum value. External clients will have to do the same. - Resolves: #824810 - BR on hwloc-devel shouldn't be required anymore (see #814798)- Support building boost-python against Python 3 - Resolves: #807780- Included -math subpackage into umbrella package - Added missing /sbin/ldconfig for -math subpackage- Add hwloc-devel BR to work around a probable bug in openmpi-devel which fails to pull it in- Rebuilt for c++ ABI breakage- Only build the long double math libraries on arches that support long double. - ARM was considered unsupporting, because libc defines __NO_LONG_DOUBLE_MATH. Ignore this setting, ARM has perfectly working long double that just happens to be only as long as double. - Resolves: #783660 - Add a missing sort adaptor include to boost polygon - Resolves: #784654- Add underscores around several uses of __attribute__((X)) to prevent interactions with user-defined macro X - Resolves: #781859- Added source source files for mingw cross-compilation of Boost.Locale. - Resolves: #781751- Added the Boost.Timer sub-package. Resolves: #772397- Integrated into "upstream" (CMake-ified Boost) the Boost.TR1/Math patch.- Build math portion of Boost.TR1, package DSOs in boost-math. - Resolves: #771370- Add an upstream patch for BOOST_ENABLE_THREADS- Add an upstream patch for BOOST_FOREACH declaration issue #756005 - Add a proposed patch for error in boost lexical_cast #757385- Upgrade to Boost-1.48.0, adding two new header-only components (Container and Move) and a new library (Locale). - Resolves: #754865 - Added a patch with a manual page for the bjam executable. - Added a patch to fix the non-UTF8-encoded example source file. - Re-worked a little bit the example section, so as to fix the DOS-formatted and the ISO-8859-encoded files.- Use instead of C++11 header in boost math. - Resolves: #751210- Rebuild for libicu soname bump - Hack /bin back to PATH after MPI module unload - Resolves: #736890- Drop BR bzip2-libs, which is brought it via bzip2-devel - Source->Source0 - Drop unnecessary BuildRoot tag - Update License tag to include all licenses that are found in sources. Python license is at the main package, not to the python sub-package, because python22_fixed.h is in -devel. - Related: #673839 - Resolves: #225622- Package examples - Resolves: #722844- Convert two throws in boost/numeric/conversion to boost::throw_exception to allow compilation with -fno-exception - Resolves: #724015- Upgrade to Boost-1.47.0, adding three new header-only components (Geometry, Phoenix, Ratio) and a new library (Chrono).- Fix compile on ARM platforms- Yet another way to pass -DBOOST_LIB_INSTALL_DIR to cmake. Passing via CMAKE_CXX_FLAGS for some reason breaks when rpm re-quotes the expression as a result of %{optflags} expansion. - Related: #667294- Rebuild for mpich2 soname bump- Merged the latest changes from the bug-fix release of Boost-1.46- rebuild for icu 4.6- Merged the latest changes from the now final release of Boost-1.46- spirit.patch: Fix a problem in using boost::spirit with utf-8 strings. Thanks to Hicham HAOUARI for digging up the fix.- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild- Package 1.46.0-beta1 - Reintroduce the soname patch - unordered-cctor.patch: Add copy constructors and assignment operators when using rvalue references - signals-erase.patch: Pass const_iterator to map::erase to avoid ambigous overload vs. templatized value_type ctor - Related: #656410- Integrated Petr's work to fix missing Boost.Filesystem V3 issue - Resolves: #667740- Don't override CXXFLAGS with -DBOOST_IOSTREAMS_USE_DEPRECATED - Resolves: #667294- Add boost-random DSOs - Resolves: #665679- Build with support for iostreams deprecated functions - Resolves: #654480- also package build-system.jam in boost-build- add boost-build, boost-jam subpackages- Rebuild.- Split the CMake-buildable tar-ball into pristine upstream tar-ball and CMake framework patch- Merged the latest changes from the now final release of Boost-1.44- Patched header file in boost/random/detail. Resolves: #621631- Added missing header files in boost/random/detail. Resolves: #619869- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild- Rebuild.- Upstream update: Boost-1.44 with CMake enabled - Resolves: #607615- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild- Turn on mpich2 on s390. Add arm to the list of arches that openmpi doesn't support.- Don't distribute cmake support files. - Related: #597020- don't build with mpich2/openmpi on s390/s390x- Add an upstream patch that fixes computation of CRC in zlib streams. - Resolves: #590205- -devel: own %{_datadir}/cmake/%{name}/ - -devel: Requires: cmake (for %{_datadir}/cmake ownership)- rebuild for icu- Add a patch for serialization of shared pointers to non polymorphic types- More subpackage interdependency adjustments - boost doesn't bring in the MPI stuff. Instead, $MPI-devel does. It needs to, so that the symbolic links don't dangle. - boost-graph-$MPI depends on boost-$MPI so that boost-mpich2 doesn't satisfy the SONAME dependency of boost-graph-openmpi. - Resolves: #559009- Various fixes on the specification - Resolves: #559009- Introduce support for both OpenMPI and MPICH2 - Resolves: #559009- Add a patch to build mapnik - Resolves: #558383- Generalize the soname selection- Further split the Boost.MPI sub-package into boost-mpi and boost-mpi-python - Changed the description of Boost.MPI according to the actual dependency (MPICH2 rather than OpenMPI) - Added a few details on the generation of the mpi.so library- Replace a boost-math subpackage with a stub - Drop _cmake_lib_suffix and CMAKE_INSTALL_PREFIX magic, the rpm macro does that for us - Drop LICENSE from the umbrella package - Drop obsolete Obsoletes: boost-python and boost-doc <= 1.30.2- Don't package generated debug libs, even with (-DCMAKE_BUILD_TYPE=RelWithDebInfo | Release). - Update and include boost-cmake-soname.patch. - Uncomment ctest. - Fix up --with tests to run tests.- Switched off the delivery into a versioned sub-directory- Boost-CMake upstream integration- Rebase to 1.41.0 - Set build type to RelWithDebInfo - Resolves: #533922- Add support for the Boost.MPI sub-package - Build with CMake (https://svn.boost.org/trac/boost/wiki/CMake) - Resolves: #529563- Move comment in Patch13 out of line- translate_exception.hpp misses a include - Related: #537612- Package index.html in the -doc subpackage - Resolves: #529030- Several fixes to support PySide - Resolves: #520087 - GCC 4.4 name resolution fixes for GIL - Resolves: #526834- Disable long double support for ARM- bump release and rebuild as the package was linked with an old libicu during the mass rebuild on s390x- Make it to be usable with openssl-1.0- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild- Drop file list for main "boost" package, which was inadvertently left in. - Add thread sub-package to capture omitted boost_thread. - Add upstream patch to make boost_filesystem compatible with C++0x. - Resolves: #496188 - Resolves: #509250- Apply patch from Caolan McNamara - Resolves: #500030 function_template bug is back...- Update release.- Fixes for rpmlint.- Split up boost package to sub-packages per library - Resolves: #496188- Rebase to 1.39.0. - Add --with docs_generated. - #225622: Substitute optflags at prep time instead of RPM_OPT_FLAGS.- Rebuild for libicu bump.- Apply a SMP patch from Stefan Ring - Apply a workaround for "cannot appear in a constant-expression" in dynamic_bitset library. - Resolves: #491537- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild- Apply a unneccessary_iostreams patch from Caolan McNamara - Fix soname patch so that it applies with fuzz=0. Use fuzz=0 option in spec file just like ordinary patches do. - Resolves: #479409- Apply a function_template patch from Caolan McNamara - Resolves: #477131- Fix rpmlint rpath errors. - Fix rpmlint warnings on tabs and spaces. - Bump SONAME to 4- Rebase to 1.37.0.- Rebase to 1.36.0.- Fix gcc43 patch to apply cleanly under --fuzz=0 - Resolves: #465003- Rebase to 1.36.0.beta1 - Drop boost-regex.patch and portions of boost-gcc43.patch, port the rest - Automate SONAME tracking and bump SONAME to 4 - Adjust boost-configure.patch to include threading=single,multi explicitly- Fix "changes meaning of keywords" in boost date_time - Related: #450718- fix license tag- Change devel-static back to static. - Related: #225622- Install library doc files - Revamp %install phase to speed up overall build time - Some cleanups per merge review - Resolves: #437032- Fix "changes meaning of keywords" in boost python - Resolves: #432694- Fix "changes meaning of special_values_parser" in boost date_time - Resolves: #432433- Fixes for GCC 4.3 - Resolves: #431609- Fixes for boost.regex (rev 42674).- (#283771: Linking against boost libraries fails).- Rebuild.- Rebuild for icu 3.8 bump.- SONAME to 3.- Update to boost_1_34_1. - Source via http. - Philipp Thomas fix for RPM_OPT_FLAGS - Philipp Thomas fix for .so sym links. - (#225622) Patrice Dumas review comments.- Update to boost_1_34_1_RC1.- (#225622: Merge Review: boost) Change static to devel-static.- (#233523: libboost_python needs rebuild against python 2.5) Use patch.- (#225622: Merge Review: boost) Source to http. BuildRoot to preferred value. PreReq to post/postun -p Clarified BSL as GPL-Compatible, Free Software License. Remove Obsoletes. Add Provides boost-python. Remove mkdir -p $RPM_BUILD_ROOT%{_docdir} Added periods for decription text. Fix Group field. Remove doc Requires boost. Preserve timestamps on install. Use %defattr(-, root, root, -) Added static package for .a libs. Install static libs with 0644 permissions. Use %doc for doc files.- Update to boost.RC_1_34_0 snapshot as of 2007-01-19. - Modify build procedures for boost build v2. - Add *-mt variants for libraries, or at least variants that use threads (regex and thread).- (#182414: boost: put tests in %check section) via Rex Dieter - Fix EVR with %{?dist} tag via Gianluca Sforna- (#154784: boost-debuginfo package is empty)- (#205866: Revert scanner.hpp change.)- (#205866: boost::spirit generates warnings with -Wshadow) - (#205863: serialization lib generates warnings) - (#204326: boost RPM missing dependencies) - (#193465: [SIGNAL/BIND] Regressions with GCC 4.1) - BUILD_FLAGS, add, to see actual compile line. - REGEX_FLAGS, add, to compile regex with ICU support.- rebuild- buildrequire python-devel for Python.h- use the real version number to point to the shared libs- bump again for double-long bug on ppc(64)- rebuilt for new gcc4.1 snapshot and glibc changes- Fix symbolic links.- Update to boost-1.33.1. - (#176485: Missing BuildRequires) - (#169271: /usr/lib/libboost*.so.? links missing in package)- rebuilt- Update to boost-1.33.1 beta. - Run testsuite, gather results.- build require bzip2-devel and zlib-devel- Create doc package again. - Parts of the above by Neal Becker .- Update to boost-1.33.0, update SONAME to 2 due to ABI changes. - Simplified PYTHON_VERSION by Philipp Thomas - (#153093: boost warns that gcc 4.0.0 is an unknown compiler) - (#152205: development .so symbolic links should be in -devel subpackage) - (#154783: linker .so symbolic links missing from boost-devel package)- Revert boost-base.patch to old behavior. - Use SONAMEVERSION instead of dllversion.- (#142612: Compiling Boost 1.32.0 Failed in RHEL 3.0 on Itanium2) - (#150069: libboost_python.so is missing) - (#141617: bad patch boost-base.patch) - (#122817: libboost_*.so symbolic links missing) - Re-add boost-thread.patch. - Change boost-base.patch to show thread tags. - Change boost-gcc-tools.patch to use SOTAG, compile with dllversion. - Add symbolic links to files. - Sanity check can compile with gcc-3.3.x, gcc-3.4.2, gcc-4.0.x., gcc-4.1.x.- (#122817: libboost_*.so symbolic links missing) - (#141574: half of the package is missing) - (#141617: bad patch boost-base.patch)- Remove bogus Obsoletes.- Update to 1.32.0- cleanup specfile - fix multiarch problem- rebuilt- missing Obsoletes boost-python- (#121630: gcc34 patch needed)- #121415 FC2 BLOCKER: Obsoletes boost-python-devel, boost-doc - other cleanups- Remove bjam dependency. (via Graydon). - Fix installed library names. - Fix SONAMEs in shared libraries. - Fix installed header location. - Fix installed permissions.- rebuilt- Update to boost-1.31.0- Update to boost-1.31.0.rc2 - (#109307: Compile Failure with boost libraries) - (#104831: Compile errors in apps using Boost.Python...) - Unify into boost, boost-devel rpms. - Simplify installation using bjam and prefix install.- require boost-devel instead of devel in subpackages which require boost-devel - remove stray Prefix: tag- change license to Freely distributable - verify installation of libboost_thread - more boost-devel removals - deal with lack of _REENTRANT on ia64/s390 - (#99458) rpm -e fixed via explict dir additions - (#103293) update to 1.30.2- rebuilt- remove packager, change to new Group:- add deffattr's so we don't have unknown users owning files  !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                           ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~                            ! " # $ % & ' ( ) * + , - . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ ` a b c d e f g h i j k l m n o p q r s t u v w x y z { | } ~  1.58.0-12.fc231.58.0-12.fc23    !!!"""""######$$$$$$$$%%%%&&''''''''(((((())))***+*,*-*.*/*0*1***2*3*4*5*6*77789998:::8;;;;;8<<<<<<<<8===8>???????????????????8@@ABBBCCCCCCCCBDDDDDBBBBBBBBBBBBBEFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEGHHIJJJJJJJKLLLLLLLMNNNNOOOOOONNNNNNPQRSSSSSSSSSSSSSSSRTTTTTTQUVVVVVVVUWWWXYYZZZZZZZZZZZZZZY[[[[[Y\\\\\Y]^_____`aaaaabccccccccccdeeeeeeeeeeeefffffeeeeeeeeeghhhhhhhhhijjjjjklllmnnonnnnnnnnnnpqrrqsstttttttttttttttttttttssssssquuuuuuuuuvwwwwwwwwwwwwwwwwwwwwwwwwxxxxwwwyz{z|z}yyyyyyyyyyyv~                                                                                  !!!!""""" ######$$$###%%%%%%%%%%%#&&&&&&&&&&&&&&&&&#'''''''''''''''''()*****)+++++++++++++,-....-//////////-00--11-222-33333-44456677777777777777777777777777777888888888888876669999999::966666666666666666666666666;<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<=>>?@@@@@@@@@@@@@@ABBBBBBBBBBBBBBBBBBBBBBBBBCDDDDboost-examplesLICENSE_1_0.txthtmllibsaccumulatorsexampleJamfile.v2example.vcprojmain.cppalgorithmexampleJamfile.v2clamp_example.cppsearch_example.cppminmaxexampleJamfileminmax_ex.cppminmax_timer.cppstringexampleJamfileconv_example.cppfind_example.cpppredicate_example.cppregex_example.cppreplace_example.cpprle_example.cppsplit_example.cpptrim_example.cppalignexamplealigned_ptr.hppaligned_vector.hppmake_aligned.hppasioexamplecpp03allocationJamfileJamfile.v2server.cppbuffersJamfileJamfile.v2reference_counted.cppchatJamfileJamfile.v2chat_client.cppchat_message.hppchat_server.cppposix_chat_client.cppechoJamfileJamfile.v2async_tcp_echo_server.cppasync_udp_echo_server.cppblocking_tcp_echo_client.cppblocking_tcp_echo_server.cppblocking_udp_echo_client.cppblocking_udp_echo_server.cppforkJamfileJamfile.v2daemon.cppprocess_per_connection.cpphttpclientJamfileJamfile.v2async_client.cppsync_client.cppdoc_rootdata_1K.htmldata_2K.htmldata_4K.htmldata_8K.htmlserverJamfileJamfile.v2connection.cppconnection.hppconnection_manager.cppconnection_manager.hppheader.hppmain.cppmime_types.cppmime_types.hppreply.cppreply.hpprequest.hpprequest_handler.cpprequest_handler.hpprequest_parser.cpprequest_parser.hppserver.cppserver.hppserver2JamfileJamfile.v2connection.cppconnection.hppheader.hppio_service_pool.cppio_service_pool.hppmain.cppmime_types.cppmime_types.hppreply.cppreply.hpprequest.hpprequest_handler.cpprequest_handler.hpprequest_parser.cpprequest_parser.hppserver.cppserver.hppserver3JamfileJamfile.v2connection.cppconnection.hppheader.hppmain.cppmime_types.cppmime_types.hppreply.cppreply.hpprequest.hpprequest_handler.cpprequest_handler.hpprequest_parser.cpprequest_parser.hppserver.cppserver.hppserver4JamfileJamfile.v2file_handler.cppfile_handler.hppheader.hppmain.cppmime_types.cppmime_types.hppreply.cppreply.hpprequest.hpprequest_parser.cpprequest_parser.hppserver.cppserver.hppicmpJamfileJamfile.v2icmp_header.hppipv4_header.hppping.cppinvocationJamfileJamfile.v2prioritised_handlers.cppiostreamsJamfileJamfile.v2daytime_client.cppdaytime_server.cpphttp_client.cpplocalJamfileJamfile.v2connect_pair.cppiostream_client.cppstream_client.cppstream_server.cppmulticastJamfileJamfile.v2receiver.cppsender.cppnonblockingJamfileJamfile.v2third_party_lib.cppporthopperJamfileJamfile.v2client.cppprotocol.hppserver.cppserializationJamfileJamfile.v2client.cppconnection.hppserver.cppstock.hppservicesJamfileJamfile.v2basic_logger.hppdaytime_client.cpplogger.hpplogger_service.cpplogger_service.hppstream_socket_service.hppsocks4JamfileJamfile.v2socks4.hppsync_client.cppspawnJamfile.v2echo_server.cppsslJamfileJamfile.v2READMEca.pemclient.cppdh512.pemserver.cppserver.pemtimeoutsJamfileJamfile.v2async_tcp_client.cppblocking_tcp_client.cppblocking_udp_client.cppserver.cpptimersJamfileJamfile.v2tick_count_timer.cpptime_t_timer.cpptutorialJamfileJamfile.v2daytime1client.cppdaytime2server.cppdaytime3server.cppdaytime4client.cppdaytime5server.cppdaytime6server.cppdaytime7server.cppdaytime_dox.txtindex_dox.txttimer1timer.cpptimer2timer.cpptimer3timer.cpptimer4timer.cpptimer5timer.cpptimer_dox.txtwindowsJamfileJamfile.v2transmit_file.cppcpp11allocationJamfileJamfile.v2server.cppbuffersJamfileJamfile.v2reference_counted.cppchatJamfileJamfile.v2chat_client.cppchat_message.hppchat_server.cppechoJamfileJamfile.v2async_tcp_echo_server.cppasync_udp_echo_server.cppblocking_tcp_echo_client.cppblocking_tcp_echo_server.cppblocking_udp_echo_client.cppblocking_udp_echo_server.cppfuturesJamfileJamfile.v2daytime_client.cpphttpserverJamfileJamfile.v2connection.cppconnection.hppconnection_manager.cppconnection_manager.hppheader.hppmain.cppmime_types.cppmime_types.hppreply.cppreply.hpprequest.hpprequest_handler.cpprequest_handler.hpprequest_parser.cpprequest_parser.hppserver.cppserver.hppspawnJamfile.v2echo_server.cppbimapexampleJamfile.v2at_function_examples.cppbimap_and_boostassign.cppforeach.cpplambda.cppproperty_map.cpprange.cppserialization.cpptypeof.cppxpressive.cppmi_to_b_pathbidirectional_map.cpphashed_indices.cppmi_bidirectional_map.cppmi_hashed_indices.cpptagged_bidirectional_map.cppmighty_bimap.cpppopulation_bimap.cppprojection.cpprepetitions_counter.cppsimple_bimap.cppstandard_map_comparison.cppstep_by_step.cpptagged_simple_bimap.cpptutorial_info_hook.cpptutorial_modify_and_replace.cpptutorial_range.cppunconstrained_collection.cppuser_defined_names.cppchronoexampleawait_keystroke.cppchrono_accuracy_test.cppchrono_unit_test.cppclock_name.cppclock_name.hppcycle_count.cppexplore_limits.cppfrench.cppi_dont_like_the_default_duration_behavior.cppio_ex1.cppio_ex2.cppio_ex3.cppio_ex4.cppio_ex5.cppmanipulate_clock_object.cppmin_time_point.cppmiscellaneous.cpprounding.cpprun_timer_example.cpprun_timer_example2.cppruntime_resolution.cppsaturating.cppsimulated_thread_interface_demo.cpptest_clock.cpptest_clock2.cpptest_duration.cpptest_minmax.cpptest_special_values.cpptest_thread_clock.cpptime2_demo.cpptime2_demo_output.txttimer.hpptimeval_demo.cppxtime.cppstopwatchesexamplestopwatch_example.cppstopwatch_reporter_example.cppcircular_bufferexamplebounded_buffer_comparison.cppcircular_buffer_bound_example.cppcircular_buffer_example.cppcircular_buffer_examples.batcircular_buffer_iter_example.cppcircular_buffer_sum_example.cppjamfile.v2containerexampleJamfile.v2doc_custom_tree.cppdoc_emplace.cppdoc_extended_allocators.cppdoc_move_containers.cppdoc_recursive_containers.cppdoc_type_erasure.cppcontextexampleJamfile.v2echosse.cppexception.cppexecution_contextJamfile.v2fibonacci.cppjump.cppparameter.cppparser.cppsegmented.cppexit.cppjump.cpprethrow.cppsimple_stack_allocator.hppstacked.cpptransfer.cppcoroutineexamplecpp03asymmetricJamfile.v2X.hchaining.cppecho.cppexception.cppfibonacci.cpplayout.cppparallel.cpppower.cppsame_fringe.cppsegmented_stack.cppsimple.cpptest.cpptree.hunwind.cppsymmetricJamfile.v2dice_game.cppmerge_arrays.cppsegmented_stack.cppsimple.cppunwind.cppcpp11asymmetricJamfile.v2await_emu.cppfibonacci.cppiterator_range.cpplayout.cppsame_fringe.cpptree.hsymmetricJamfile.v2merge_arrays.cppsimple.cppdate_timeexampleJamfilegregorianJamfile.v2date_serialization_demo.cppdates_as_strings.cppdays_alive.cppdays_between_new_years.cppdays_since_year_start.cppdays_till_new_year.cppend_of_month_day.cppfind_last_day_of_months.cpplocalization.cppmonth_add.cppperiod_calc.cppprint_holidays.cppprint_month.cpplocal_timecalc_rules.cppflight.cpplocal_date_time.cppseconds_since_epoch.cppsimple_time_zone.cppposix_timeJamfile.v2local_utc_conversion.cppprint_hours.cpptime_math.cpptime_periods.cpptutorialio_tutorial.cppdynamic_bitsetexampleJamfileexample1.cppexample2.cppexample3.cpptiming_tests.cppendianexampleconversion_use_case.cppendian_example.cppthird_party_format.hppudt_conversion_example.cppuse_cases.cppexceptionexampleJamfilecloning_1.cppcloning_2.cppenable_error_info.cpperrinfos.cpperror_info_1.cpperror_info_2.cppexample_io.cppinfo_tuple.cpplogging.cppfilesystemexampleJamfile.v2error_demo.cppfile_size.cppfile_status.cppmbcopy.cppmbpath.cppmbpath.hpppath_info.cppsimple_ls.cppstems.cpptchar.cpptestJamfile.v2bld.batbld.shsetup.batsetup.shtut0.cpptut1.cpptut2.cpptut3.cpptut4.cpptut5.cpptut6a.cpptut6b.cpptut6c.cppflyweightexampleJamfile.v2basic.cppcomposite.cppcustom_factory.cppfibonacci.cpphtml.cppkey_value.cppperf.cppserialization.cppformatexampleJamfilesample_advanced.cppsample_formats.cppsample_new_features.cppsample_userType.cppfunctionexamplebind1st.cppint_div.cppsum_avg.cppfunction_typesexampleJamfiledetailparam_type.hppfast_mem_fn.hppfast_mem_fn_example.cppinterface.hppinterface_example.cppinterpreter.hppinterpreter_example.cppmacro_type_args.hppmacro_type_args_example.cppresult_of.hppresult_of_example.cppfusionexamplecookbookdo_the_bind.cppfill_em_up.cppextensionJamfiledetailadvance_impl.hppat_impl.hppat_key_impl.hppbegin_impl.hppcategory_of_impl.hppderef_data_impl.hppderef_impl.hppdistance_impl.hppend_impl.hppequal_to_impl.hpphas_key_impl.hppis_sequence_impl.hppis_view_impl.hppkey_of_impl.hppnext_impl.hppprior_impl.hppsize_impl.hppvalue_at_impl.hppvalue_at_key_impl.hppvalue_of_data_impl.hppvalue_of_impl.hppexample_struct.hppexample_struct_iterator.hppexample_struct_type.hpptag_of.hpptest_example.cpptriple.cppperformanceJamfileaccumulate.cppfunctional.cppinner_product.cppinner_product2.cppmeasure.hppsequence_efficiency.cpptimings.txtzip_efficiency.cppgeometryexample01_point_example.cpp02_linestring_example.cpp03_polygon_example.cpp04_boost_example.cpp05_a_overlay_polygon_example.cpp05_b_overlay_linestring_polygon_example.cpp06_a_transformation_example.cpp06_b_transformation_example.cpp07_a_graph_route_example.cpp07_b_graph_route_example.cppJamfile.v2c01_custom_point_example.cppc02_custom_box_example.cppc03_custom_linestring_example.cppc04_a_custom_triangle_example.cppc04_b_custom_triangle_example.cppc05_custom_point_pointer_example.cppc06_custom_polygon_example.cppc07_custom_ring_pointer_example.cppc08_custom_non_std_example.cppc09_custom_fusion_example.cppc10_custom_cs_example.cppc11_custom_cs_transform_example.cppdatacities.sqlcities.wktroads.wktworld.wktml01_multipolygon_simplify.cppml02_distance_strategy.cppwith_external_libscontribgd-2.0.35boost_geometry_readme.txtshapelib-1.3.0b2boost_geometry_readme.txtsoci-3.1.0boost_geometry_readme.txtx01_qt_example.cppx02_gd_example.cppx03_a_soci_example.cppx03_b_soci_example.cppx03_c_soci_example.cppx03_d_soci_example.cppx04_wxwidgets_world_mapper.cppx04_wxwidgets_world_mapper_readme.txtx05_shapelib_example.cppx06_qt_world_mapper.cppx06_qt_world_mapper_readme.txtindexexample3d_benchmark.cppJamfile.v2benchmark.cppbenchmark2.cppbenchmark3.cppbenchmark_experimental.cppbenchmark_insert.cppglut_vis.cpprandom_test.cppserialize.cppgilexampleMakefileREADME.txtaffine.cppconvolution.cppdynamic_image.cpphistogram.cppinterleaved_ptr.cppinterleaved_ptr.hppinterleaved_ref.hppmandelbrot.cpppacked_pixel.cppresize.cpptest.jpgx_gradient.cppgraphexampleJamfile.v2accum-compile-times.cppactor_clustering.cppadj_list_ra_edgelist.cppadjacency_list.cppadjacency_list.expectedadjacency_list_io.cppadjacency_matrix.cppastar-cities.cppastar_maze.cppbcsstk01bcsstk01.rsabellman-example.cppbellman-ford-internet.cppbellman_ford.expectedbfs-example.cppbfs-example2.cppbfs-name-printer.cppbfs.cppbfs.expectedbfs_basics.expectedbfs_neighbor.cppbiconnected_components.cppbipartite_example.cppboost_web.datboost_web_graph.cppboost_web_graph.expectedboykov_kolmogorov-eg.cppbron_kerbosch_clique_number.cppbron_kerbosch_print_cliques.cppbucket_sorter.cppcanonical_ordering.cppcc-internet.cppcity_visitor.cppcloseness_centrality.cppclustering_coefficient.cppcomm_network.graphcomponents_on_edgelist.cppcomponents_on_edgelist.expectedconnected-components.cppconnected_components.cppconnected_components.expectedcontainer_gen.cppcopy-example.cppcsr-example.cppcuthill_mckee_ordering.cppcuthill_mckee_ordering.expectedcycle-file-dep.cppcycle-file-dep2.cppcycle_canceling_example.cppcycle_ratio_example.cppdag_shortest_paths.cppdata1.txtdata2.txtdata3.txtdave.cppdave.expecteddefault-constructor.cppdefault-constructor2.cppdegree_centrality.cppdfs-example.cppdfs-parenthesis.cppdfs.cppdfs.expecteddfs_basics.expecteddfs_parenthesis.cppdfs_parenthesis.expecteddijkstra-example-listS.cppdijkstra-example.cppdijkstra-no-color-map-example.cppdijkstra.expecteddirected_graph.cppeccentricity.cppedge-connectivity.cppedge-function.cppedge-iter-constructor.cppedge_basics.cppedge_basics.expectededge_coloring.cppedge_connectivity.cppedge_iterator_constructor.cppedge_iterator_constructor.datedge_property.cppedge_property.expectededmonds-karp-eg.cppexterior_properties.cppexterior_properties.expectedexterior_property_map.cppexterior_property_map.expectedfamily-tree-eg.cppfamily_tree.expectedfibonacci_heap.cppfibonacci_heap.expectedfigscc-internet.dotdfs-example.dotedge-connectivity.dotospf-graph.dotscc.dottelephone-network.dotfile_dependencies.cppfile_dependencies.expectedfiltered-copy-example.cppfiltered_graph.cppfiltered_graph.expectedfiltered_graph_edge_range.cppfiltered_vec_as_graph.cppfr_layout.cppgerdemann.cppgerdemann.expectedgirth.cppgraph-assoc-types.cppgraph-property-iter-eg.cppgraph-thingie.cppgraph.cppgraph_as_tree.cppgraph_property.cppgraphviz.cppgraphviz_example.dotgraphviz_test.dotgrid_graph_example.cppgrid_graph_properties.cpphawick_circuits.cpphelper.hppimplicit_graph.cppin_edges.cppin_edges.expectedinclusive_mean_geodesic.cppincremental-components-eg.cppincremental_components.cppincremental_components.expectedinfluence_prestige.cppinfo_network.graphinterior_pmap_bundled.cppinterior_property_map.cppinterior_property_map.expectediohb.ciohb.hisomorphism.cppiteration_macros.cppiterator-property-map-eg.cppjohnson-eg.cppjohnson.expectedkevin-bacon.cppkevin-bacon.datkevin-bacon2.cppkevin-bacon2.datkevin-bacon2.expectedkevin_bacon.expectedking_ordering.cppknights-tour.cppknights_tour.expectedkruskal-example.cppkruskal-telephone.cppkruskal.expectedkuratowski_subgraph.cpplabeled_graph.cpplast-mod-time.cppleda-concept-check.cppleda-graph-eg.cppleda-regression.cfgloops_dfs.cppmake_biconnected_planar.cppmake_connected.cppmake_maximal_planar.cppmakefile-dependencies.datmakefile-target-names.datmatching_example.cppmax_flow.cppmax_flow.datmax_flow.expectedmax_flow2.datmax_flow3.datmax_flow4.datmax_flow5.datmax_flow6.datmax_flow7.datmax_flow8.datmax_flow9.datmcgregor_subgraphs_example.cppmean_geodesic.cppmiles_span.cppmiles_span.expectedmin_max_paths.cppminimum_degree_ordering.cppmodify_graph.cppneighbor_bfs.cppordered_out_edges.cppordered_out_edges.expectedospf-example.cppparallel-compile-time.cppplanar_face_traversal.cppprim-example.cppprim-telephone.cppprim.expectedprint-adjacent-vertices.cppprint-edges.cppprint-in-edges.cppprint-out-edges.cppprism_3_2.graphprob_network.graphproperty-map-traits-eg.cppproperty_iterator.cpppush-relabel-eg.cppput-get-helper-eg.cppquick-tour.cppquick_tour.cppquick_tour.expectedr_c_shortest_paths_example.cppreachable-loop-head.cppreachable-loop-tail.cppread_graphviz.cppread_write_dimacs-eg.cppregression.cfgremove_edge_if_bidir.cppremove_edge_if_bidir.expectedremove_edge_if_dir.cppremove_edge_if_dir.expectedremove_edge_if_undir.cppremove_edge_if_undir.expectedreverse-graph-eg.cppreverse_graph.expectedroget_components.cppscaled_closeness_centrality.cppscc.cppscc.dotsgb-regression.cfgsimple_planarity_test.cppsloan_ordering.cppsocial_network.graphstoer_wagner.cppstraight_line_drawing.cppstrong-components.cppstrong_components.cppstrong_components.expectedsubgraph.cppsubgraph.expectedsubgraph_properties.cppsuccessive_shortest_path_nonnegative_weights_example.cpptarget-compile-costs.dattc.dottest-astar-cities.dottiernan_girth_circumference.cpptiernan_print_cycles.cpptopo-sort-file-dep.cpptopo-sort-file-dep2.cpptopo-sort-with-leda.cpptopo-sort-with-sgb.cpptopo-sort1.cpptopo-sort2.cpptopo_sort.cpptopo_sort.expectedtransitive_closure.cpptranspose-example.cpptwo_graphs_common_spanning_trees.cppundirected_adjacency_list.cppundirected_adjacency_list.expectedundirected_dfs.cppundirected_graph.cppvector-as-graph.cppvector_as_graph.expectedvertex-name-property.cppvertex_basics.cppvertex_basics.expectedvf2_sub_graph_iso_example.cppvf2_sub_graph_iso_multi_example.cppvisitor.cppvisitor.expectedwrite_graphviz.cppgraph_parallelexampleJamfile.v2breadth_first_search.cppdijkstra_shortest_paths.cppiclexampleJamfile.v2boost_party_Jamfile.v2boost_party.cppvc10_boost_party.vcxprojvc10_boost_party.vcxproj.filtersvc9_boost_party.vcprojcustom_interval_Jamfile.v2custom_interval.cppvc10_custom_interval.vcxprojvc10_custom_interval.vcxproj.filtersvc9_custom_interval.vcprojdynamic_interval_dynamic_interval.cppvc10_dynamic_interval.vcxprojvc10_dynamic_interval.vcxproj.filtersvc9_dynamic_interval.vcprojinterval_interval.cppvc10_interval.vcxprojvc10_interval.vcxproj.filtersvc9_interval.vcprojinterval_container_interval_container.cppvc10_interval_container.vcxprojvc10_interval_container.vcxproj.filtersvc9_interval_container.vcprojitvset_shell_itvset_shell.cppvc9_itvset_shell.vcprojlarge_bitset_bits.hpplarge_bitset.cpplarge_bitset.hppmeta_log.hppvc10_large_bitset.vcxprojvc10_large_bitset.vcxproj.filtersvc9_large_bitset.vcprojman_power_man_power.cppvc10_man_power.vcxprojvc10_man_power.vcxproj.filtersvc9_man_power.vcprojmonth_and_week_grid_month_and_week_grid.cppvc10_month_and_week_grid.vcxprojvc10_month_and_week_grid.vcxproj.filtersvc9_month_and_week_grid.vcprojoverlap_counter_overlap_counter.cppvc10_overlap_counter.vcxprojvc10_overlap_counter.vcxproj.filtersvc9_overlap_counter.vcprojparty_party.cppvc10_party.vcxprojvc10_party.vcxproj.filtersvc9_party.vcprojpartys_height_average_Jamfile.v2partys_height_average.cppvc10_partys_height_average.vcxprojvc10_partys_height_average.vcxproj.filtersvc9_partys_height_average.vcprojpartys_tallest_guests_Jamfile.v2partys_tallest_guests.cppvc10_partys_tallest_guests.vcxprojvc10_partys_tallest_guests.vcxproj.filtersvc9_partys_tallest_guests.vcprojsplititvmap_shell_splititvmap_shell.cppvc9_splititvmap_shell.vcprojstatic_interval_static_interval.cppvc10_static_interval.vcxprojvc10_static_interval.vcxproj.filtersvc9_static_interval.vcprojstd_copy_std_copy.cppvc10_std_copy.vcxprojvc10_std_copy.vcxproj.filtersvc9_std_copy.vcprojstd_transform_std_transform.cppvc10_std_transform.vcxprojvc10_std_transform.vcxproj.filtersvc9_std_transform.vcprojtoytime.hppuser_groups_user_groups.cppvc10_user_groups.vcxprojvc10_user_groups.vcxproj.filtersvc9_user_groups.vcprojvc10_icl_examples.slnvc9_icl_examples.slninterprocessexampleJamfile.v2comp_doc_anonymous_conditionA.cppcomp_doc_anonymous_conditionB.cppcomp_doc_anonymous_mutexA.cppcomp_doc_anonymous_mutexB.cppcomp_doc_anonymous_semaphoreA.cppcomp_doc_anonymous_semaphoreB.cppcomp_doc_anonymous_upgradable_mutexA.cppcomp_doc_anonymous_upgradable_mutexB.cppcomp_doc_message_queueA.cppcomp_doc_message_queueB.cppdoc_adaptive_pool.cppdoc_allocator.cppdoc_anonymous_condition_shared_data.hppdoc_anonymous_mutex_shared_data.hppdoc_anonymous_semaphore_shared_data.hppdoc_anonymous_shared_memory.cppdoc_bufferstream.cppdoc_cached_adaptive_pool.cppdoc_cached_node_allocator.cppdoc_complex_map.cppdoc_cont.cppdoc_file_mapping.cppdoc_intrusive.cppdoc_ipc_message.cppdoc_managed_aligned_allocation.cppdoc_managed_allocation_command.cppdoc_managed_construction_info.cppdoc_managed_copy_on_write.cppdoc_managed_external_buffer.cppdoc_managed_grow.cppdoc_managed_heap_memory.cppdoc_managed_mapped_file.cppdoc_managed_multiple_allocation.cppdoc_managed_raw_allocation.cppdoc_map.cppdoc_move_containers.cppdoc_multi_index.cppdoc_named_alloc.cppdoc_named_condition_shared_data.hppdoc_named_mutex.cppdoc_node_allocator.cppdoc_offset_ptr.cppdoc_private_adaptive_pool.cppdoc_private_node_allocator.cppdoc_scoped_ptr.cppdoc_shared_memory.cppdoc_shared_ptr.cppdoc_shared_ptr_explicit.cppdoc_spawn_vector.cppdoc_unique_ptr.cppdoc_unordered_map.cppdoc_upgradable_mutex_shared_data.hppdoc_vectorstream.cppdoc_where_allocate.cppdoc_windows_shared_memory.cppdoc_xsi_shared_memory.cppintrusiveexampleJamfile.v2doc_advanced_value_traits.cppdoc_any_hook.cppdoc_assoc_optimized_code.cppdoc_auto_unlink.cppdoc_avl_set.cppdoc_avltree_algorithms.cppdoc_bucket_traits.cppdoc_clone_from.cppdoc_derivation_value_traits.cppdoc_entity.cppdoc_erasing_and_disposing.cppdoc_function_hooks.cppdoc_how_to_use.cppdoc_iterator_from_value.cppdoc_list.cppdoc_list_algorithms.cppdoc_member_value_traits.cppdoc_offset_ptr.cppdoc_positional_insertion.cppdoc_rbtree_algorithms.cppdoc_recursive.cppdoc_recursive_member.cppdoc_set.cppdoc_sg_set.cppdoc_slist.cppdoc_slist_algorithms.cppdoc_splay_algorithms.cppdoc_splay_set.cppdoc_splaytree_algorithms.cppdoc_stateful_value_traits.cppdoc_treap_algorithms.cppdoc_treap_set.cppdoc_unordered_set.cppdoc_value_traits.cppdoc_window.cppiostreamsexampleboost_back_inserter_example.cppcontainer_device.hppcontainer_device_example.cppcontainer_sink_example.cppcontainer_source_example.cppdictionary_filter.hppfinite_state_filter.hppiterator_range_example.cppline_wrapping_filter.hppshell_comments_filter.hppstd_back_inserter_example.cpptab_expanding_filter.hppunix2dos_filter.hppiteratorexamplecounting_iterator_example.cppfilter_iterator_example.cppfunc_output_iter_example.cppindirect_iterator_example.cppnode.hppnode_iterator1.cppnode_iterator1.hppnode_iterator2.cppnode_iterator2.hppnode_iterator3.cppnode_iterator3.hpppermutation_iter_example.cppreverse_iterator.cppreverse_iterator_example.cpptransform_iterator_example.cpplexical_castexampleargs_to_numbers.cppgeneric_stringize.cppsmall_examples.cppvariant_to_long_double.cpplocal_functionexampleJamfile.v2add_cxx11_lambda.cppadd_global_functor.cppadd_local_functor.cppadd_phoenix.cppchrono.pyconst_block.cppconst_block.hppconst_block_error.cppconst_block_error_cxx11_lambda.cppexpensive_copy_cxx11_lambda.cppexpensive_copy_local_function.cppgcc_access.cppgcc_cxx11_lambda.cppgcc_lambda.cppgcc_lambda.hppgcc_square.cppgcc_store.cppimpl_pp_keyword.cppimpl_tparam_tricks.cppn2529_this.cppn2550_find_if.cppnoncopyable_cxx11_lambda_error.cppnoncopyable_local_function.cppphoenix_factorial.cppphoenix_factorial_local.cppprofile.xlsprofile_cxx11_lambda.cppprofile_gcc_cxx11_debug.pngprofile_gcc_cxx11_release.pngprofile_gcc_debug.pngprofile_gcc_release.pngprofile_global_functor.cppprofile_helpers.hppprofile_legend_cxx11_lambda.pngprofile_legend_global_functor.pngprofile_legend_local_function.pngprofile_legend_local_function_inline.pngprofile_legend_local_functor.pngprofile_legend_phoenix.pngprofile_local_function.cppprofile_local_function_inline.cppprofile_local_functor.cppprofile_msvc_debug.pngprofile_msvc_release.pngprofile_phoenix.cppscope_exit.cppscope_exit.hpplogexampleJamfile.v2advanced_usageJamfile.v2main.cppasync_logJamfile.v2main.cppbasic_usageJamfile.v2main.cppbounded_async_logJamfile.v2main.cppdocJamfile.v2attr_value_extraction.cppattr_value_visitation.cppcore_core_manual.cppcore_record.cppexception_handling.cppexpressions_attr_fmt_tag.cppexpressions_channel_severity_filter.cppexpressions_has_attr_stat_accum.cppexpressions_keyword_fmt_tag.cppextension_app_launcher.cppextension_filter_parser.cppextension_filter_parser_custom_rel.cppextension_formatter_parser.cppextension_record_tagger.cppextension_stat_collector.cppextension_stat_collector_settings.cppextension_system_uptime_attr.cppsinks_async.cppsinks_async_bounded.cppsinks_async_ordering.cppsinks_debugger.cppsinks_file.cppsinks_multifile.cppsinks_ostream.cppsinks_simple_event_log.cppsinks_sync.cppsinks_syslog.cppsinks_unlocked.cppsinks_xml_file.cppsources_net_connection.cppsources_net_connection_chan.cppsources_net_connection_dynamic_chan.cppsources_severity.cppsources_severity_channel.cpptutorial_attributes.cpptutorial_file.cpptutorial_file_manual.cpptutorial_filtering.cpptutorial_fmt_custom.cpptutorial_fmt_format.cpptutorial_fmt_stream.cpptutorial_fmt_stream_manual.cpptutorial_fmt_string.cpptutorial_logging.cpptutorial_trivial.cpptutorial_trivial_flt.cpputil_dynamic_type_disp.cpputil_manip_to_log.cpputil_static_type_disp.cppevent_logJamfile.v2event_log_messages.mcmain.cppkeywordsJamfile.v2main.cppmultiple_filesJamfile.v2main.cppmultiple_threadsJamfile.v2main.cppnative_syslogJamfile.v2main.cpprotating_fileJamfile.v2main.cppsettings_fileJamfile.v2main.cppsettings.txtsettings_file_formatter_factoryJamfile.v2main.cppsettings.txtsyslogJamfile.v2main.cpptrivialJamfile.v2main.cppwide_charJamfile.v2main.cppmathexampleJamfile.v2airy_zeros_example.cpparcsine_example.cppbernoulli_example.cppbessel_errors_example.cppbessel_zeros_example.cppbessel_zeros_example_1.cppbessel_zeros_interator_example.cppbig_seventh.cppbinomial_coinflip_example.cppbinomial_confidence_limits.cppbinomial_example_nag.cppbinomial_quiz_example.cppbinomial_sample_sizes.cppc_error_policy_example.cppchi_square_std_dev_test.cppconstants_eg1.cppcstdfloat_example.cppdistribution_construction.cpperror_handling_example.cpperror_policies_example.cpperror_policy_example.cppf_test.cppfactorial_example.cppfft_sines_table.cppfind_location_example.cppfind_mean_and_sd_normal.cppfind_root_example.cppfind_scale_example.cppgeometric_examples.cpphyperexponential_more_snips.cpphyperexponential_snips.cppinspect_fp.cppinverse_chi_squared_bayes_eg.cppinverse_chi_squared_example.cppinverse_chi_squared_find_df_example.cppinverse_gamma_distribution_example.cppinverse_gamma_example.cppinverse_gaussian_example.cpplaplace_example.cpplexical_cast_native.cpplexical_cast_nonfinite_facets.cppnc_chi_sq_example.cppneg_binom_confidence_limits.cppneg_binomial_sample_sizes.cppnegative_binomial_example1.cppnegative_binomial_example2.cppneumann_zeros_example_1.cppnonfinite_facet_simple.cppnonfinite_facet_sstream.cppnonfinite_legacy.cppnonfinite_loopback_ok.cppnonfinite_num_facet.cppnonfinite_num_facet_serialization.cppnonfinite_num_facet_trap.cppnonfinite_serialization_archives.cppnonfinite_signaling_NaN.cppnormal_misc_examples.cppnormal_tables.cppnumerical_derivative_example.cppowens_t_example.cpppolicy_eg_1.cpppolicy_eg_10.cpppolicy_eg_2.cpppolicy_eg_3.cpppolicy_eg_4.cpppolicy_eg_5.cpppolicy_eg_6.cpppolicy_eg_7.cpppolicy_eg_8.cpppolicy_eg_9.cpppolicy_ref_snip1.cpppolicy_ref_snip10.cpppolicy_ref_snip11.cpppolicy_ref_snip12.cpppolicy_ref_snip13.cpppolicy_ref_snip2.cpppolicy_ref_snip3.cpppolicy_ref_snip4.cpppolicy_ref_snip5.cpppolicy_ref_snip6.cpppolicy_ref_snip7.cpppolicy_ref_snip8.cpppolicy_ref_snip9.cpproot_finding_example.cppsines.hppskew_normal_example.cppspecial_data.cppstudents_t_example1.cppstudents_t_example2.cppstudents_t_example3.cppstudents_t_single_sample.cppstudents_t_two_samples.cpptest_cpp_float_close_fraction.cpptest_nonfinite_loopback.cppmoveexampleJamfile.v2copymovable.hppdoc_clone_ptr.cppdoc_construct_forward.cppdoc_file_descriptor.cppdoc_how_works.cppdoc_move_algorithms.cppdoc_move_inserter.cppdoc_move_iterator.cppdoc_move_return.cppmovable.hppmpiexamplegenerate_collect.cppgenerate_collect_optional.cppglobal_min.cpphello_world.cpphello_world_broadcast.cpphello_world_groups.cpphello_world_nonblocking.cppin_place_global_min.cppparallel_example.cpppythonhello_world.pyrandom_content.cpprandom_gather.cpprandom_min.cppreduce_performance_test.cppstring_cat.cppmplexamplefsmREADME.txtaux_STT_impl_gen.hppbase_event.hppevent.hppstate.hpptransition.hppplayer.cppplayer1.cppplayer2.cppstate_machine.hppinherit_linearly.cppinherit_multiply.cppinteger.cpptuple_from_list.cppmsmexamplempl_graphJamfile.v2adjacency_list_graph.cppbreadth_first_search.cppdepth_first_search.cppincidence_list_graph.cppmsm_adaptor.cppmulti_arrayexamplebasic1.cppbasic2.cppfor_each.hppforeach_test.cppforeach_test2.cppop_paren.cppprint_array.cppresize_from_other.cppsubview.cppsubview2.cppmulti_indexexampleJamfile.v2basic.cppbimap.cppcomplex_structs.cppcomposite_keys.cppfun_key.cpphashed.cppip_allocator.cppnon_default_ctor.cpprandom_access.cpprearrange.cppsequenced.cppserialization.cppmultiprecisionexampleJamfile.v2cpp_bin_float_snips.cppcpp_dec_float_snips.cppcpp_int_snips.cppdebug_adaptor_snips.cppfloat128_snips.cppfloating_point_examples.cppgauss_laguerre_quadrature.cppgmp_snips.cpphypergeometric_luke_algorithms.cppinteger_examples.cpplogged_adaptor.cppmixed_integer_arithmetic.cppmpfi_snips.cppmpfr_snips.cppnumeric_limits_snips.cpprandom_snips.cppsafe_prime.cpptommath_snips.cppphoenixexampleadapted_echo_server.cppall_odds.cpparguments.cppbind_goose.cppcallback.cppcontainer_actor.cppdefine_expression.cppfactorial.cppfind_if.cppfunction.cppgenerator.cppgenerator2.cppidentity_transform.cppif.cppinvert.cpplambda.cppparallel_for.cppreferences.cppvalues.cpppolygonexampleJamfile.v2gtl_custom_point.cppgtl_custom_polygon.cppgtl_custom_polygon_set.cppinput_datapolygonpolygon_001.txtpolygon_002.txtpolygon_003.txtpolygon_004.txtpolygon_005.txtpolygon_006.txtpolygon_007.txtpolygon_008.txtpolygon_009.txtpolygon_010.txtpolygon_011.txtpolygon_012.txtprimaryprimary_001.txtprimary_002.txtprimary_003.txtprimary_004.txtprimary_005.txtprimary_006.txtprimary_007.txtprimary_008.txtprimary_009.txtprimary_010.txtprimary_011.txtprimary_012.txtprimary_013.txtprimary_014.txtprimary_015.txtprimary_016.txtprimary_017.txtprimary_018.txtprimary_019.txtprimary_020.txtprimary_021.txtprimary_022.txtprimary_023.txtprimary_024.txtprimary_025.txtprimary_026.txtprimary_027.txtprimary_028.txtprimary_029.txtprimary_030.txtprimary_031.txtprimary_032.txtprimary_033.txtprimary_034.txtprimary_035.txtprimary_036.txtprimary_037.txtprimary_038.txtprimary_039.txtprimary_040.txtprimary_041.txtprimary_042.txtprimary_043.txtprimary_044.txtprimary_045.txtprimary_046.txtprimary_047.txtprimary_048.txtprimary_049.txtprimary_050.txtprimary_051.txtprimary_052.txtprimary_053.txtprimary_054.txtprimary_055.txtprimary_056.txtprimary_057.txtprimary_058.txtprimary_059.txtprimary_060.txtprimary_061.txtprimary_062.txtprimary_063.txtprimary_064.txtprimary_065.txtprimary_066.txtprimary_067.txtprimary_068.txtprimary_069.txtprimary_070.txtprimary_071.txtprimary_072.txtrandomrandom_001.txtrandom_002.txtrandom_003.txtrandom_004.txtrandom_005.txtrandom_006.txtrandom_007.txtrandom_008.txtrandom_009.txtrandom_010.txtrandom_011.txtrandom_012.txtrandom_013.txtrandom_014.txtrandom_015.txtrandom_016.txtrandom_017.txtrandom_018.txtrandom_019.txtrandom_020.txtrandom_021.txtrandom_022.txtrandom_023.txtrandom_024.txtrandom_025.txtrandom_026.txtrandom_027.txtrandom_028.txtoutput_datapolygonpolygon_001.pngpolygon_002.pngpolygon_003.pngpolygon_004.pngpolygon_005.pngpolygon_006.pngpolygon_007.pngpolygon_008.pngpolygon_009.pngpolygon_010.pngpolygon_011.pngpolygon_012.pngprimaryprimary_001.pngprimary_002.pngprimary_003.pngprimary_004.pngprimary_005.pngprimary_006.pngprimary_007.pngprimary_008.pngprimary_009.pngprimary_010.pngprimary_011.pngprimary_012.pngprimary_013.pngprimary_014.pngprimary_015.pngprimary_016.pngprimary_017.pngprimary_018.pngprimary_019.pngprimary_020.pngprimary_021.pngprimary_022.pngprimary_023.pngprimary_024.pngprimary_025.pngprimary_026.pngprimary_027.pngprimary_028.pngprimary_029.pngprimary_030.pngprimary_031.pngprimary_032.pngprimary_033.pngprimary_034.pngprimary_035.pngprimary_036.pngprimary_037.pngprimary_038.pngprimary_039.pngprimary_040.pngprimary_041.pngprimary_042.pngprimary_043.pngprimary_044.pngprimary_045.pngprimary_046.pngprimary_047.pngprimary_048.pngprimary_049.pngprimary_050.pngprimary_051.pngprimary_052.pngprimary_053.pngprimary_054.pngprimary_055.pngprimary_056.pngprimary_057.pngprimary_058.pngprimary_059.pngprimary_060.pngprimary_061.pngprimary_062.pngprimary_063.pngprimary_064.pngprimary_065.pngprimary_066.pngprimary_067.pngprimary_068.pngprimary_069.pngprimary_070.pngprimary_071.pngprimary_072.pngrandomrandom_001.pngrandom_002.pngrandom_003.pngrandom_004.pngrandom_005.pngrandom_006.pngrandom_007.pngrandom_008.pngrandom_009.pngrandom_010.pngrandom_011.pngrandom_012.pngrandom_013.pngrandom_014.pngrandom_015.pngrandom_016.pngrandom_017.pngrandom_018.pngrandom_019.pngrandom_020.pngrandom_021.pngrandom_022.pngrandom_023.pngrandom_024.pngrandom_025.pngrandom_026.pngrandom_027.pngrandom_028.pngvoronoi_advanced_tutorial.cppvoronoi_basic_tutorial.cppvoronoi_visual_utils.hppvoronoi_visualizer.cpppoolexamplesys_allocator.hpptime_pool_alloc.cppprogram_optionsexampleJamfile.v2custom_syntax.cppfirst.cppmultiple_sources.cfgmultiple_sources.cppoption_groups.cppoptions_description.cppreal.cppregex.cppresponse_file.cppresponse_file.rspproperty_mapexamplecompose_property_map_example.cppexample1.cppexample2.cppexample3.cppprotoexampleJamfile.v2calc1.cppcalc2.cppcalc3.cppexternal_transforms.cppfutures.cpphello.cpplambda.hpplazy_vector.cppmap_assign.cppmini_lambda.cppmixed.cpprgb.cpptarray.cppvec3.cppvector.cppvirtual_member.cpppythonexampleJamrootREADMEboost-build.jamgetting_started1.cppgetting_started2.cppproject.zipquickstartJamrootboost-build.jamembedding.cppextending.cppscript.pytest_extending.pystd_pair.cpptest_getting_started1.pytest_getting_started2.pytest_std_pair.pytutorialJamroothello.cpphello.pyrandomexampleJamfile.v2die.cpppassword.cpprandom_demo.cppweighted_die.cppratioexampleconfig.hppdisplay_ex.cppduration.hppsi_physics.cppstatic_assert.hpptype_traitsadd_rvalue_reference.hppcommon_type.hppdeclval.hppdetailcommon_type.hppregexexampleJamfile.v2grepgrep.cppsnippetscaptures_example.cppcredit_card_example.cppicu_example.cppmfc_example.cpppartial_regex_grep.cpppartial_regex_iterate.cpppartial_regex_match.cppregex_grep_example_1.cppregex_grep_example_2.cppregex_grep_example_3.cppregex_grep_example_4.cppregex_iterator_example.cppregex_match_example.cppregex_merge_example.cppregex_replace_example.cppregex_search_example.cppregex_split_example_1.cppregex_split_example_2.cppregex_token_iterator_eg_1.cppregex_token_iterator_eg_2.cpptimerbc55.makbcb4.makbcb5.makgcc.makinput_script.txtregex_timer.cppvc6-stlport.makvc6.makscope_exitexampleJamfile.v2nova.hppscope_guard.cppscope_guard_seq.cppscope_guard_seq_nova.cpptry_catch.cpptry_catch_seq.cpptry_catch_seq_nova.cppworld_cxx11_lambda.cppserializationexampleJamfile.v2demo.cppdemo_auto_ptr.cppdemo_dll.cppdemo_dll_a.hppdemo_dll_a.ippdemo_dll_b.hppdemo_dll_b.ippdemo_exception.cppdemo_fast_archive.cppdemo_gps.hppdemo_log.cppdemo_output.txtdemo_pimpl.cppdemo_pimpl_A.cppdemo_pimpl_A.hppdemo_polymorphic.cppdemo_polymorphic_A.cppdemo_polymorphic_A.hppdemo_portable_archive.cppdemo_save.xmldemo_shared_ptr.cppdemo_simple_log.cppdemo_trivial_archive.cppdemo_xml.cppdemo_xml.hppdemo_xml_load.cppdemo_xml_save.cppdemofile.txtfix_six.cpplog_archive.cpplog_archive.hpppolymorphic_portable_binary_iarchive.cpppolymorphic_portable_binary_iarchive.hpppolymorphic_portable_binary_oarchive.cpppolymorphic_portable_binary_oarchive.hppportable_binary_archive.hppportable_binary_iarchive.cppportable_binary_iarchive.hppportable_binary_oarchive.cppportable_binary_oarchive.hppsimple_log_archive.hppsignalsexampleJamfilebutton_click.cppdifference_connection.cppdisconnect_all.cppdoc_view.cppfirst_positive.cppmaximum.cppno_function.cppprint_sum_product.cppquotient_controlling.cppquotient_named.cppsignals2exampleJamfile.v2custom_combiners.cppdisconnect_and_block.cppdoc_view.cppdoc_view_acm.cppdoc_view_acm_deconstruct.cppextended_slot.cpphello_world_multi_slot.cpphello_world_slot.cppordering_slots.cpppassing_slots.cpppostconstructor_ex1.cpppostconstructor_ex2.cpppredestructor_example.cppsignal_return_value.cppslot_arguments.cppsmart_ptrexamplescoped_ptr_example.cppscoped_ptr_example.hppscoped_ptr_example_test.cppshared_ptr_example.cppshared_ptr_example2.cppshared_ptr_example2.hppshared_ptr_example2_test.cppsortexamplealrbreaker.cppalreadysorted.cppbinaryalrbreaker.cppboostrandomgen.cppcaseinsensitive.cppcharstringsample.cppdouble.cppfloatfunctorsample.cppfloatsample.cppgeneralizedstruct.cppint64.cppkeyplusdatasample.cppmostlysorted.cppparallelint.cppparallelstring.cpprandomgen.cppreverseintsample.cppreversestringfunctorsample.cppreversestringsample.cpprightshiftsample.cppsample.cppshiftfloatsample.cppstringfunctorsample.cppstringsample.cppwstringsample.cppspiritclassicexampleJamfilefundamentalast_calc.cppbind.cppboiler_plate.cppcalc_debug.cppcalc_plain.cppcomments.cppcomplex_number.cppdistinctdistinct_parser.cppdistinct_parser_dynamic.cpperror_handling.cpperror_reporting.cppfile_parser.cppfull_calc.cppfunctor_parser.cpplist_parser.cppmatching_tags.cppmore_calculatorsast_calc2.cppcalc_with_variables.cppphoenix_subrule_calc.cppprimitive_calc.cpprpn_calc.cppvmachine_calc.cppno_actions.cppnumber_list.cppparse_tree_calc1.cppparser_context.cppphoenix_calc.cppposition_iteratorposition_iterator.cppposition_iterator.err1position_iterator.err2position_iterator.err3position_iterator.okrefactoring.cppregular_expression.cpproman_numerals.cppstuff_vector.cppstuff_vector2.cppsubrule_calc.cppsum.cppthousand_separated.cpptree_calc_grammar.hppintermediateipv4.cppipv4_opt.cpplazy_parser.cppparameters.cppregex_convert.cppsimple_xmlactions.hppdriver.cpptag.cpptag.hppxml_g.hpptechniquesdynamic_rule.cppepsilon.cppmultiple_scanners.cppnabialek.cppno_rulesno_rule1.cppno_rule2.cppno_rule3.cppno_rules_with_typeofopaque_rule_parser.cpprule_parser_1_1.cpprule_parser_1_2.cpprule_parser_2_1.cpprule_parser_2_2.cppright_recursion.cpptypeof.cppphoenixexampleJamfilefundamentalclosures.cppsample10.cppsample2.cppsample3.cppsample4.cppsample5.cppsample6.cppsample7.cppsample8.cppsample9.cppexampleJamfilekarmaJamfileactions.cppauto_facilities.cppbasic_facilities.cppcalc2_ast.hppcalc2_ast_dump.cppcalc2_ast_rpn.cppcalc2_ast_vm.cppcalc2_ast_vm.hppclassify_char.cppcomplex_number.cppcomplex_number_adapt.cppcomplex_number_easier.cppcustomize_counter.cppcustomize_embedded_container.cppcustomize_use_as_container.cppescaped_string.cppgenerate_code.cppkey_value_sequence.cppmini_xml_karma.cppnum_list1.cppnum_list2.cppnum_list3.cppnum_matrix.cppprintf_style_double_format.cppquick_start1.cppquoted_strings.cppreference.cppreorder_struct.cppsimple_columns_directive.cppsimple_columns_directive.hpplexJamfilecustom_token_attribute.cppexample.hppexample1.cppexample1.inputexample2.cppexample2.inputexample3.cppexample3.inputexample4.cppexample4.inputexample5.cppexample5.inputexample6.cppexample6.inputlexer_debug_support.cppprint_number_tokenids.cppprint_numbers.cppprint_numbers.inputreference.cppstatic_lexerJamfileword_count.inputword_count_generate.cppword_count_lexer_generate.cppword_count_lexer_static.cppword_count_lexer_static.hppword_count_lexer_tokens.hppword_count_static.cppword_count_static.hppword_count_tokens.hppstrip_comments.cppstrip_comments.inputstrip_comments_lexer.cppword_count.cppword_count.inputword_count_functor.cppword_count_functor.flexword_count_functor_flex.cppword_count_lexer.cppqiJamfileactions.cppadapt_template_struct.cppboost_array.cppcalc_utree.cppcalc_utree_ast.cppcalc_utree_naive.cppcompiler_tutorialJamfilecalc1.cppcalc2.cppcalc3.cppcalc4.cppcalc5.cppcalc6.cppcalc7annotation.hppast.hppcompiler.cppcompiler.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppcalc8annotation.hppast.hppcompiler.cppcompiler.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppconjure1annotation.hppast.hppcompiler.cppcompiler.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppfunction.cppfunction.hppfunction_def.hppmain.cppskipper.hppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppconjure2annotation.hppast.hppcompiler.cppcompiler.hppconfig.hppconjure_static_lexer.hppconjure_static_lexer_generate.cppconjure_static_switch_lexer.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppfunction.cppfunction.hppfunction_def.hppids.hpplexer.cpplexer.hpplexer_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppconjure3annotation.hppast.hppcompiler.cppcompiler.hppconfig.hppconjure_static_lexer.hppconjure_static_lexer_generate.cppconjure_static_switch_lexer.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppfunction.cppfunction.hppfunction_def.hppids.hpplexer.cpplexer.hpplexer_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppconjure_sampleserror.cnjfactorial.cnjoperators.cnjpow2.cnjprecedence.cnjmini_cannotation.hppast.hppcompiler.cppcompiler.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppfunction.cppfunction.hppfunction_def.hppmain.cppskipper.hppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppmini_c_samples1.mini2.mini3.minicomplex_number.cppcustom_string.cppdisplay_attribute_type.cppdisplay_attribute_type.hppemployee.cppgerman_floating_point.cppiter_pos.hppiter_pos_parser.cppjsonbuildJamfilejsondetailio_impl.hpputil_impl.hppvalue_impl.hppio.hppparsergrammar.hppgrammar_def.hpputil.hppvalue.hppsrcio.cppvalue.cpptestJamfileget.cppget_as.cpptest.cppvalue_array.cppvalue_basic.cppvalue_construct.cppvalue_non_container.cppvalue_object.cppkey_value_sequence.cppkey_value_sequence_empty_value.cppkey_value_sequence_ordered.cppmini_xml1.cppmini_xml2.cppmini_xml3.cppmini_xml_samples1.toyxml2.toyxml3.toyxml4.toyxmlnabialek.cppnum_list1.cppnum_list2.cppnum_list3.cppnum_list4.cppparse_date.cppporting_guide_classic.cppporting_guide_qi.cppreference.cppreorder_struct.cpproman.cppsum.cpptypeof.cppunescaped_string.cppsupportJamfilemulti_pass.cppmulti_pass.txtutreeerror_handler.hppparse_sexpr.cppsexpr_generator.hppsexpr_parser.hpputf8_parser.hppx3Jamfilecalc1.cppcalc2.cppcalc4.cppcalc4b.cppcalc4ccalc4c.cppgrammar.cppgrammar.hppcalc5.cppcalc6.cppcalc7ast.hppast_adapted.hppcompiler.cppcompiler.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppmain.cppvm.cppvm.hppcalc8annotation.hppast.hppast_adapted.hppcommon.hppcompiler.cppcompiler.hppconfig.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hppcalc9annotation.hppast.hppast_adapted.hppcommon.hppcompiler.cppcompiler.hppconfig.hpperror_handler.hppexpression.cppexpression.hppexpression_def.hppmain.cppstatement.cppstatement.hppstatement_def.hppvm.cppvm.hpprepositoryexamplekarmaJamfilecalc2_ast.hppcalc2_ast_dump_sr.cppconfix.cppmini_xml_karma_sr.cppqiJamfileadvance.cppcalc1_sr.cppconfix.cppderived.cppdistinct.cppflush_multi_pass.cppflush_multi_pass.txtiter_pos_parser.cppkeywords.cppmini_xml2_sr.cppoptions.cppseek.cppstatechartexampleBitMachineBitMachine.cppBitMachine.vcprojUniqueObject.hppUniqueObjectAllocator.hppCameraCamera.cppCamera.hppCamera.vcprojConfiguring.cppConfiguring.hppMain.cppPrecompiled.cppPrecompiled.hppShooting.cppShooting.hppHandcraftedHandcrafted.cppHandcrafted.vcprojJamfile.v2KeyboardKeyboard.cppKeyboard.vcprojPerformancePerformance.cppPerformance.vcprojPerformance.xlsPingPongPingPong.cppPingPong.vcprojPlayer.cppPlayer.hppWaiting.hppStopWatchStopWatch.cppStopWatch.vcprojStopWatch2.cpptestexampleJamfile.v2claJamfileassign_to.cppbasic_float.cppbasic_int.cppbasic_list.cppbasic_string.cppbasic_udt.cppchar_parameter.cppcustom_handler.cppcustom_interpreter.cppcustom_parameter.cppdefault_value.cppdual_name.cppglobal.cppguess_name.cpphelp.cppignore_mismatch.cppinput_separator.cppmultiplicable.cppname.cppoptional.cppoptional_value.cpppositional.cppprefix.cppreference.cppremainder.cppseparator.cppusage.cppvalidationJamfileaccess_unknown.cppambiguous_access.cppambiguous_input.cppdefinition_conflict.cppinvalid_short_name.cppmultiple_generators.cppmultiple_value_handlers.cppopt_with_default_value.cppoptional_plus_multiplicable.cpprequired_missing.cppunexpected_input.cppunexpected_repetition.cppwide_string.cppconst_string.hppconst_string_test.cppenvJamfilecustom_interpreter_env.cppenv_var_default_value.cppenvironment_ex.cppglobal_id.cppmodifier_combination.cppvalidationJamfileneed_typed_access.cppvariable_ex.cppest_example1.cppest_example2.cppexec_mon_example.cppexternal_main_example_1.cppexternal_main_example_2.cppexternal_main_example_3.cpplogged_exp_example.cppnamed_param_example.cppprg_exec_example.cpptest_case_template_example.cppunit_test_example_01.cppunit_test_example_011.cppunit_test_example_012.cppunit_test_example_02.cppunit_test_example_03.cppunit_test_example_04.cppunit_test_example_05.cppunit_test_example_06.cppunit_test_example_07.cppunit_test_example_08.cppunit_test_example_09_1.cppunit_test_example_09_2.cppunit_test_example_10.cppunit_test_example_11.cppunit_test_example_12.cppunit_test_example_12.inputthreadexampleJamfile.v2ba_externallly_locked.cppcondition.cppdefault_executor.cppexecutor.cppfib_task_region.cppfuture_fallback_to.cppfuture_then.cppfuture_unwrap.cppfuture_when_all.cppgeneric_executor_ref.cpplambda_future.cppmake_future.cppmonitor.cppmutex.cppnot_interleaved.cppnot_interleaved2.cpponce.cppparallel_accumulate.cppparallel_quick_sort.cppperf_condition_variable.cppperf_shared_mutex.cppproducer_consumer.cppproducer_consumer2.cppproducer_consumer_bounded.cpprecursive_mutex.cppscoped_thread.cppserial_executor.cppserial_executor_cont.cppshared_monitor.cppshared_mutex.cppstarvephil.cppstrict_lock.cppsynchronized_person.cppsynchronized_value.cpptennis.cppthis_executor.cppthread.cppthread_group.cppthread_guard.cppthread_pool.cpptss.cppuser_scheduler.cppwith_lock_guard.cppxtime.cpptimerexampleauto_cpu_timer_example.cpptimex.cpptype_erasureexampleJamfile.jamassociated.cppbasic.cppcompose.cppconcept_map.cppconstruction.cppconvert.cppcustom.cppmulti.cppmultifunction.cppoverload.cppprint_sequence.cppprintf.cppreferences.cppunitsexampleJamfile.v2autoprefixes.cppcomplex.cppcomposite_output.cppconversion.cppconversion_factor.cppdimension.cppheterogeneous_unit.cppinformation.cppkitchen_sink.cpplambda.cppmeasurement.hppnon_base_dimension.cppperformance.cppquantity.cppquaternion.cppradar_beam_height.cppruntime_conversion_factor.cppruntime_unit.cppruntime_unit_input.txtsystems.cpptemperature.cpptest_system.hpptutorial.cppunit.cppxpressiveexampleJamfile.v2example.vcprojmain.cppnumbers.cpp/usr/share/doc//usr/share/doc/boost-examples//usr/share/doc/boost-examples/libs//usr/share/doc/boost-examples/libs/accumulators//usr/share/doc/boost-examples/libs/accumulators/example//usr/share/doc/boost-examples/libs/algorithm//usr/share/doc/boost-examples/libs/algorithm/example//usr/share/doc/boost-examples/libs/algorithm/minmax//usr/share/doc/boost-examples/libs/algorithm/minmax/example//usr/share/doc/boost-examples/libs/algorithm/string//usr/share/doc/boost-examples/libs/algorithm/string/example//usr/share/doc/boost-examples/libs/align//usr/share/doc/boost-examples/libs/align/example//usr/share/doc/boost-examples/libs/asio//usr/share/doc/boost-examples/libs/asio/example//usr/share/doc/boost-examples/libs/asio/example/cpp03//usr/share/doc/boost-examples/libs/asio/example/cpp03/allocation//usr/share/doc/boost-examples/libs/asio/example/cpp03/buffers//usr/share/doc/boost-examples/libs/asio/example/cpp03/chat//usr/share/doc/boost-examples/libs/asio/example/cpp03/echo//usr/share/doc/boost-examples/libs/asio/example/cpp03/fork//usr/share/doc/boost-examples/libs/asio/example/cpp03/http//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/client//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/doc_root//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/server//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/server2//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/server3//usr/share/doc/boost-examples/libs/asio/example/cpp03/http/server4//usr/share/doc/boost-examples/libs/asio/example/cpp03/icmp//usr/share/doc/boost-examples/libs/asio/example/cpp03/invocation//usr/share/doc/boost-examples/libs/asio/example/cpp03/iostreams//usr/share/doc/boost-examples/libs/asio/example/cpp03/local//usr/share/doc/boost-examples/libs/asio/example/cpp03/multicast//usr/share/doc/boost-examples/libs/asio/example/cpp03/nonblocking//usr/share/doc/boost-examples/libs/asio/example/cpp03/porthopper//usr/share/doc/boost-examples/libs/asio/example/cpp03/serialization//usr/share/doc/boost-examples/libs/asio/example/cpp03/services//usr/share/doc/boost-examples/libs/asio/example/cpp03/socks4//usr/share/doc/boost-examples/libs/asio/example/cpp03/spawn//usr/share/doc/boost-examples/libs/asio/example/cpp03/ssl//usr/share/doc/boost-examples/libs/asio/example/cpp03/timeouts//usr/share/doc/boost-examples/libs/asio/example/cpp03/timers//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime1//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime2//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime3//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime4//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime5//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime6//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/daytime7//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/timer1//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/timer2//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/timer3//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/timer4//usr/share/doc/boost-examples/libs/asio/example/cpp03/tutorial/timer5//usr/share/doc/boost-examples/libs/asio/example/cpp03/windows//usr/share/doc/boost-examples/libs/asio/example/cpp11//usr/share/doc/boost-examples/libs/asio/example/cpp11/allocation//usr/share/doc/boost-examples/libs/asio/example/cpp11/buffers//usr/share/doc/boost-examples/libs/asio/example/cpp11/chat//usr/share/doc/boost-examples/libs/asio/example/cpp11/echo//usr/share/doc/boost-examples/libs/asio/example/cpp11/futures//usr/share/doc/boost-examples/libs/asio/example/cpp11/http//usr/share/doc/boost-examples/libs/asio/example/cpp11/http/server//usr/share/doc/boost-examples/libs/asio/example/cpp11/spawn//usr/share/doc/boost-examples/libs/bimap//usr/share/doc/boost-examples/libs/bimap/example//usr/share/doc/boost-examples/libs/bimap/example/bimap_and_boost//usr/share/doc/boost-examples/libs/bimap/example/mi_to_b_path//usr/share/doc/boost-examples/libs/chrono//usr/share/doc/boost-examples/libs/chrono/example//usr/share/doc/boost-examples/libs/chrono/stopwatches//usr/share/doc/boost-examples/libs/chrono/stopwatches/example//usr/share/doc/boost-examples/libs/circular_buffer//usr/share/doc/boost-examples/libs/circular_buffer/example//usr/share/doc/boost-examples/libs/container//usr/share/doc/boost-examples/libs/container/example//usr/share/doc/boost-examples/libs/context//usr/share/doc/boost-examples/libs/context/example//usr/share/doc/boost-examples/libs/context/example/execution_context//usr/share/doc/boost-examples/libs/coroutine//usr/share/doc/boost-examples/libs/coroutine/example//usr/share/doc/boost-examples/libs/coroutine/example/cpp03//usr/share/doc/boost-examples/libs/coroutine/example/cpp03/asymmetric//usr/share/doc/boost-examples/libs/coroutine/example/cpp03/symmetric//usr/share/doc/boost-examples/libs/coroutine/example/cpp11//usr/share/doc/boost-examples/libs/coroutine/example/cpp11/asymmetric//usr/share/doc/boost-examples/libs/coroutine/example/cpp11/symmetric//usr/share/doc/boost-examples/libs/date_time//usr/share/doc/boost-examples/libs/date_time/example//usr/share/doc/boost-examples/libs/date_time/example/gregorian//usr/share/doc/boost-examples/libs/date_time/example/local_time//usr/share/doc/boost-examples/libs/date_time/example/posix_time//usr/share/doc/boost-examples/libs/date_time/example/tutorial//usr/share/doc/boost-examples/libs/dynamic_bitset//usr/share/doc/boost-examples/libs/dynamic_bitset/example//usr/share/doc/boost-examples/libs/endian//usr/share/doc/boost-examples/libs/endian/example//usr/share/doc/boost-examples/libs/exception//usr/share/doc/boost-examples/libs/exception/example//usr/share/doc/boost-examples/libs/filesystem//usr/share/doc/boost-examples/libs/filesystem/example//usr/share/doc/boost-examples/libs/filesystem/example/test//usr/share/doc/boost-examples/libs/flyweight//usr/share/doc/boost-examples/libs/flyweight/example//usr/share/doc/boost-examples/libs/format//usr/share/doc/boost-examples/libs/format/example//usr/share/doc/boost-examples/libs/function//usr/share/doc/boost-examples/libs/function/example//usr/share/doc/boost-examples/libs/function_types//usr/share/doc/boost-examples/libs/function_types/example//usr/share/doc/boost-examples/libs/function_types/example/detail//usr/share/doc/boost-examples/libs/fusion//usr/share/doc/boost-examples/libs/fusion/example//usr/share/doc/boost-examples/libs/fusion/example/cookbook//usr/share/doc/boost-examples/libs/fusion/example/extension//usr/share/doc/boost-examples/libs/fusion/example/extension/detail//usr/share/doc/boost-examples/libs/fusion/example/performance//usr/share/doc/boost-examples/libs/geometry//usr/share/doc/boost-examples/libs/geometry/example//usr/share/doc/boost-examples/libs/geometry/example/data//usr/share/doc/boost-examples/libs/geometry/example/with_external_libs//usr/share/doc/boost-examples/libs/geometry/example/with_external_libs/contrib//usr/share/doc/boost-examples/libs/geometry/example/with_external_libs/contrib/gd-2.0.35//usr/share/doc/boost-examples/libs/geometry/example/with_external_libs/contrib/shapelib-1.3.0b2//usr/share/doc/boost-examples/libs/geometry/example/with_external_libs/contrib/soci-3.1.0//usr/share/doc/boost-examples/libs/geometry/index//usr/share/doc/boost-examples/libs/geometry/index/example//usr/share/doc/boost-examples/libs/gil//usr/share/doc/boost-examples/libs/gil/example//usr/share/doc/boost-examples/libs/graph//usr/share/doc/boost-examples/libs/graph/example//usr/share/doc/boost-examples/libs/graph/example/figs//usr/share/doc/boost-examples/libs/graph_parallel//usr/share/doc/boost-examples/libs/graph_parallel/example//usr/share/doc/boost-examples/libs/icl//usr/share/doc/boost-examples/libs/icl/example//usr/share/doc/boost-examples/libs/icl/example/boost_party_//usr/share/doc/boost-examples/libs/icl/example/custom_interval_//usr/share/doc/boost-examples/libs/icl/example/dynamic_interval_//usr/share/doc/boost-examples/libs/icl/example/interval_//usr/share/doc/boost-examples/libs/icl/example/interval_container_//usr/share/doc/boost-examples/libs/icl/example/itvset_shell_//usr/share/doc/boost-examples/libs/icl/example/large_bitset_//usr/share/doc/boost-examples/libs/icl/example/man_power_//usr/share/doc/boost-examples/libs/icl/example/month_and_week_grid_//usr/share/doc/boost-examples/libs/icl/example/overlap_counter_//usr/share/doc/boost-examples/libs/icl/example/party_//usr/share/doc/boost-examples/libs/icl/example/partys_height_average_//usr/share/doc/boost-examples/libs/icl/example/partys_tallest_guests_//usr/share/doc/boost-examples/libs/icl/example/splititvmap_shell_//usr/share/doc/boost-examples/libs/icl/example/static_interval_//usr/share/doc/boost-examples/libs/icl/example/std_copy_//usr/share/doc/boost-examples/libs/icl/example/std_transform_//usr/share/doc/boost-examples/libs/icl/example/user_groups_//usr/share/doc/boost-examples/libs/interprocess//usr/share/doc/boost-examples/libs/interprocess/example//usr/share/doc/boost-examples/libs/intrusive//usr/share/doc/boost-examples/libs/intrusive/example//usr/share/doc/boost-examples/libs/iostreams//usr/share/doc/boost-examples/libs/iostreams/example//usr/share/doc/boost-examples/libs/iterator//usr/share/doc/boost-examples/libs/iterator/example//usr/share/doc/boost-examples/libs/lexical_cast//usr/share/doc/boost-examples/libs/lexical_cast/example//usr/share/doc/boost-examples/libs/local_function//usr/share/doc/boost-examples/libs/local_function/example//usr/share/doc/boost-examples/libs/log//usr/share/doc/boost-examples/libs/log/example//usr/share/doc/boost-examples/libs/log/example/advanced_usage//usr/share/doc/boost-examples/libs/log/example/async_log//usr/share/doc/boost-examples/libs/log/example/basic_usage//usr/share/doc/boost-examples/libs/log/example/bounded_async_log//usr/share/doc/boost-examples/libs/log/example/doc//usr/share/doc/boost-examples/libs/log/example/event_log//usr/share/doc/boost-examples/libs/log/example/keywords//usr/share/doc/boost-examples/libs/log/example/multiple_files//usr/share/doc/boost-examples/libs/log/example/multiple_threads//usr/share/doc/boost-examples/libs/log/example/native_syslog//usr/share/doc/boost-examples/libs/log/example/rotating_file//usr/share/doc/boost-examples/libs/log/example/settings_file//usr/share/doc/boost-examples/libs/log/example/settings_file_formatter_factory//usr/share/doc/boost-examples/libs/log/example/syslog//usr/share/doc/boost-examples/libs/log/example/trivial//usr/share/doc/boost-examples/libs/log/example/wide_char//usr/share/doc/boost-examples/libs/math//usr/share/doc/boost-examples/libs/math/example//usr/share/doc/boost-examples/libs/move//usr/share/doc/boost-examples/libs/move/example//usr/share/doc/boost-examples/libs/mpi//usr/share/doc/boost-examples/libs/mpi/example//usr/share/doc/boost-examples/libs/mpi/example/python//usr/share/doc/boost-examples/libs/mpl//usr/share/doc/boost-examples/libs/mpl/example//usr/share/doc/boost-examples/libs/mpl/example/fsm//usr/share/doc/boost-examples/libs/mpl/example/fsm/aux_//usr/share/doc/boost-examples/libs/msm//usr/share/doc/boost-examples/libs/msm/example//usr/share/doc/boost-examples/libs/msm/example/mpl_graph//usr/share/doc/boost-examples/libs/multi_array//usr/share/doc/boost-examples/libs/multi_array/example//usr/share/doc/boost-examples/libs/multi_index//usr/share/doc/boost-examples/libs/multi_index/example//usr/share/doc/boost-examples/libs/multiprecision//usr/share/doc/boost-examples/libs/multiprecision/example//usr/share/doc/boost-examples/libs/phoenix//usr/share/doc/boost-examples/libs/phoenix/example//usr/share/doc/boost-examples/libs/polygon//usr/share/doc/boost-examples/libs/polygon/example//usr/share/doc/boost-examples/libs/polygon/example/input_data//usr/share/doc/boost-examples/libs/polygon/example/input_data/polygon//usr/share/doc/boost-examples/libs/polygon/example/input_data/primary//usr/share/doc/boost-examples/libs/polygon/example/input_data/random//usr/share/doc/boost-examples/libs/polygon/example/output_data//usr/share/doc/boost-examples/libs/polygon/example/output_data/polygon//usr/share/doc/boost-examples/libs/polygon/example/output_data/primary//usr/share/doc/boost-examples/libs/polygon/example/output_data/random//usr/share/doc/boost-examples/libs/pool//usr/share/doc/boost-examples/libs/pool/example//usr/share/doc/boost-examples/libs/program_options//usr/share/doc/boost-examples/libs/program_options/example//usr/share/doc/boost-examples/libs/property_map//usr/share/doc/boost-examples/libs/property_map/example//usr/share/doc/boost-examples/libs/proto//usr/share/doc/boost-examples/libs/proto/example//usr/share/doc/boost-examples/libs/python//usr/share/doc/boost-examples/libs/python/example//usr/share/doc/boost-examples/libs/python/example/quickstart//usr/share/doc/boost-examples/libs/python/example/tutorial//usr/share/doc/boost-examples/libs/random//usr/share/doc/boost-examples/libs/random/example//usr/share/doc/boost-examples/libs/ratio//usr/share/doc/boost-examples/libs/ratio/example//usr/share/doc/boost-examples/libs/ratio/example/type_traits//usr/share/doc/boost-examples/libs/ratio/example/type_traits/detail//usr/share/doc/boost-examples/libs/regex//usr/share/doc/boost-examples/libs/regex/example//usr/share/doc/boost-examples/libs/regex/example/grep//usr/share/doc/boost-examples/libs/regex/example/snippets//usr/share/doc/boost-examples/libs/regex/example/timer//usr/share/doc/boost-examples/libs/scope_exit//usr/share/doc/boost-examples/libs/scope_exit/example//usr/share/doc/boost-examples/libs/serialization//usr/share/doc/boost-examples/libs/serialization/example//usr/share/doc/boost-examples/libs/signals//usr/share/doc/boost-examples/libs/signals/example//usr/share/doc/boost-examples/libs/signals2//usr/share/doc/boost-examples/libs/signals2/example//usr/share/doc/boost-examples/libs/smart_ptr//usr/share/doc/boost-examples/libs/smart_ptr/example//usr/share/doc/boost-examples/libs/sort//usr/share/doc/boost-examples/libs/sort/example//usr/share/doc/boost-examples/libs/spirit//usr/share/doc/boost-examples/libs/spirit/classic//usr/share/doc/boost-examples/libs/spirit/classic/example//usr/share/doc/boost-examples/libs/spirit/classic/example/fundamental//usr/share/doc/boost-examples/libs/spirit/classic/example/fundamental/distinct//usr/share/doc/boost-examples/libs/spirit/classic/example/fundamental/more_calculators//usr/share/doc/boost-examples/libs/spirit/classic/example/fundamental/position_iterator//usr/share/doc/boost-examples/libs/spirit/classic/example/intermediate//usr/share/doc/boost-examples/libs/spirit/classic/example/intermediate/simple_xml//usr/share/doc/boost-examples/libs/spirit/classic/example/techniques//usr/share/doc/boost-examples/libs/spirit/classic/example/techniques/no_rules//usr/share/doc/boost-examples/libs/spirit/classic/example/techniques/no_rules_with_typeof//usr/share/doc/boost-examples/libs/spirit/classic/phoenix//usr/share/doc/boost-examples/libs/spirit/classic/phoenix/example//usr/share/doc/boost-examples/libs/spirit/classic/phoenix/example/fundamental//usr/share/doc/boost-examples/libs/spirit/example//usr/share/doc/boost-examples/libs/spirit/example/karma//usr/share/doc/boost-examples/libs/spirit/example/lex//usr/share/doc/boost-examples/libs/spirit/example/lex/static_lexer//usr/share/doc/boost-examples/libs/spirit/example/qi//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/calc7//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/calc8//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/conjure1//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/conjure2//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/conjure3//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/conjure_samples//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/mini_c//usr/share/doc/boost-examples/libs/spirit/example/qi/compiler_tutorial/mini_c_samples//usr/share/doc/boost-examples/libs/spirit/example/qi/json//usr/share/doc/boost-examples/libs/spirit/example/qi/json/build//usr/share/doc/boost-examples/libs/spirit/example/qi/json/json//usr/share/doc/boost-examples/libs/spirit/example/qi/json/json/detail//usr/share/doc/boost-examples/libs/spirit/example/qi/json/json/parser//usr/share/doc/boost-examples/libs/spirit/example/qi/json/src//usr/share/doc/boost-examples/libs/spirit/example/qi/json/test//usr/share/doc/boost-examples/libs/spirit/example/qi/mini_xml_samples//usr/share/doc/boost-examples/libs/spirit/example/support//usr/share/doc/boost-examples/libs/spirit/example/support/utree//usr/share/doc/boost-examples/libs/spirit/example/x3//usr/share/doc/boost-examples/libs/spirit/example/x3/calc4c//usr/share/doc/boost-examples/libs/spirit/example/x3/calc7//usr/share/doc/boost-examples/libs/spirit/example/x3/calc8//usr/share/doc/boost-examples/libs/spirit/example/x3/calc9//usr/share/doc/boost-examples/libs/spirit/repository//usr/share/doc/boost-examples/libs/spirit/repository/example//usr/share/doc/boost-examples/libs/spirit/repository/example/karma//usr/share/doc/boost-examples/libs/spirit/repository/example/qi//usr/share/doc/boost-examples/libs/statechart//usr/share/doc/boost-examples/libs/statechart/example//usr/share/doc/boost-examples/libs/statechart/example/BitMachine//usr/share/doc/boost-examples/libs/statechart/example/Camera//usr/share/doc/boost-examples/libs/statechart/example/Handcrafted//usr/share/doc/boost-examples/libs/statechart/example/Keyboard//usr/share/doc/boost-examples/libs/statechart/example/Performance//usr/share/doc/boost-examples/libs/statechart/example/PingPong//usr/share/doc/boost-examples/libs/statechart/example/StopWatch//usr/share/doc/boost-examples/libs/test//usr/share/doc/boost-examples/libs/test/example//usr/share/doc/boost-examples/libs/test/example/cla//usr/share/doc/boost-examples/libs/test/example/cla/validation//usr/share/doc/boost-examples/libs/test/example/env//usr/share/doc/boost-examples/libs/test/example/env/validation//usr/share/doc/boost-examples/libs/thread//usr/share/doc/boost-examples/libs/thread/example//usr/share/doc/boost-examples/libs/timer//usr/share/doc/boost-examples/libs/timer/example//usr/share/doc/boost-examples/libs/type_erasure//usr/share/doc/boost-examples/libs/type_erasure/example//usr/share/doc/boost-examples/libs/units//usr/share/doc/boost-examples/libs/units/example//usr/share/doc/boost-examples/libs/xpressive//usr/share/doc/boost-examples/libs/xpressive/example/-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m64 -mtune=genericdrpmxz2x86_64-redhat-linux-gnu      directoryASCII textXML document textC source, ASCII textC++ source, ASCII textHTML document, ASCII textLaTeX document, ASCII textC source, UTF-8 Unicode textHTML document, UTF-8 Unicode textDOS batch file, ASCII texta /usr/bin/env bash script, ASCII text executableUTF-8 Unicode textASCII text, with very long linesC source, ASCII text, with very long linesmakefile script, ASCII textJPEG image data, JFIF standard 1.01, aspect ratio, density 1x1, segment length 16, baseline, precision 8, 136x98, frames 3FORTRAN program, ASCII textASCII text, with very long lines, with no line terminatorsXML 1.0 document, UTF-8 Unicode (with BOM) textUTF-8 Unicode (with BOM) textPNG image data, 2048 x 360, 8-bit/color RGB, non-interlacedPNG image data, 2048 x 361, 8-bit/color RGB, non-interlacedPNG image data, 65 x 18, 8-bit/color RGB, non-interlacedPNG image data, 600 x 600, 8-bit/color RGBA, non-interlacedASCII text, with CRLF line terminators (Zip archive data, at least v2.0 to extract)C source, ASCII text, with CRLF line terminatorsASCII text, with no line terminatorsutf-8?7zXZ !#,F:k]"k%zZ30`[K lTj-•nuzvuKO{+e6_aR 9O%fX9vhD"ErEQ1B D~M keLxzX<St?cQ~CYg3_E RӇs[cM(*ڛh2߆h-}*';m.cD’uw2/qDPXtX'0h D}X<, H5/ފ?qE  4܂5b= I=wuC@eZ$|}oY 3!Kp)j@[g M\@+!j:ab0w-77Ε"6E'RTxZ_;xv'v7b9tR p 8S-5>ޝD,yin2nGo'pO99P t'#5S0&W sY 0r(Vڳ23ued=La~`΃q ;:z4hI4GWPP6+IȢ>r̭/j JPkQI;Aȸ@}iKTr7%a9U)*IdFf@?y.DaoAI1EC}ScyLmHb J%iw&MW6J ANDui B>x0.W̓![x½fإ" TZ,4|J̋4aNLcb0ckoz]43E3(q +hw #4'%nE$+zdX -OjACQbou_ eOťl창VSv&nr#Zcғp&vvwwS5r4-,XY+}NR-L]Ee-1kHibE4&!;&5Mֵq:y_:HWj03X ܱ"!}G/_K؛!'7 PŃ:9Q24LG\m7b߾y]U<)L(-Ad徰Ճ%jPM~H@9Dvp&Evti-_Ú A 7 `l| =Y\I'tbjeMl,X-Wp*Q, Ytv3fr]gocl*,M8Hw%XD s:[ y1{6˄B쉀+ H r9{g{QFӼ_tIjU06hwհ :OD\1)hc uDqX2(:|PNmS)XV,-|GW&5^Gv2_p)sٓ("W/}|i)zxq,z/`UjT=(''aq}ͣFY[!suXNL)WR.)6+h<̃4z,1 r7M"B͊]s8Ɉ:~ʑ;!IÎifWH|fWni0uuTU2Zq6oi&pOְ[`T8Wu،zц߲Sx9⭆)zQUZ0XbVWPl@"9[n%'^)ۋ)aBG{3S PD$c7FM[26\~Qh8פgAh<s;ڢvјq#7:Ak|%&~pT] $/ҋ\6H2*(㵵 4XL<$:$`.yR4k YW95CteJP)Ί8wƨ`7%Li`%[k<+& ׵\K#Պk4aE9!i}Oӯ @ I9xv{Ԁ B7tya+""}ڱc"hɵVrѼA*KC1owRX~T6{5يڏlT,23/"fm0@ݚ^rWܭsKk7zrIq.d~aL {Eg*4zgh &89&!*ꃍLӿqksۍFRF` m*ݵ.QmxJB]> 1$Fy!mKv7I4pWG M7@/C@UA H1ySs= -g,򧘨LV?Q/T8pM7J;:MʨD,9׌N yMWs*$½;\Sn;$|a t;j?HVBTd'@`~3br/aE;yeXP4!05elza7|)Bűi./K[%odӟg-v"#Ox&;/+[JLiNSi2{qT|GW,͵Mw;5hcIk[8^K7DyFq|55H|!e([ x&̓&F` &HSL1I2IT1$4,j="Si{=;F;i(i9,= 4f{Ⱥ<йu M o'C_ ֔V>ጋK_ZQ(Q>58æwh ejp|_.\8k$Ḿ!_ʸ#p.Q0X#Fj]H؇]y 'rr0C<۰_)G}֔疩I_6=/|5[" C?1gwQ_5^7Us#t 4 4 (}q3;O`FgPBR|D`ƦU *`: y].E33y;m[Fᎁr™ZAm=r@e ѳòq3!7UÎ>nр[)A~E8KXԜbEo~Ѭ=EE憻TJЭE@ZGRr;Z0e02BDג_geДUw 㯘fcӾ>an:R`&r,fQ4mSZ]e´WvBE(hRVHϵ1iXbs6ϩnolXPm3`#UXvGsÙ?h!Ӿ=Kf;^Ee)/JDH}|8/X.pz̧k>/hffIޞv*f˰il&kIz%W0B`$EPX7Mw }joԝ*p) Dh70?=Gr*po"Qi2&IBrL%DYh&بm/j Λisb @^ u ˢXFm]d:fFn& 8 qmil◆3b4wk,"Cle{hWrXdD]X8ZPD$_Ye5"|ݧ.Mu|9I{$իqDpkP&zL<~5nW*a0FQn@ѻ' Ɖ\yP* #KNj獽 8EZ΅qs RXfr9!֒0~MAbLJx2k`7^2FL(p ]bZx^7vLen`XOZXD OV#+ O+~QdlTg*&3(˻EnV[M" Aș.3K6^ҪOgnf0gya^pu=T;9Ja7'' TBON$ _r) J'vQbPmEk!iM%\(llA[S MD9Z癋ׇcC61xX}*j]&5?EIb fcP3.}O'8Qο#7֘~sѤUI ÃJԕ464Dsë} y2x-7>Ric+ƻ!L )|>+U#sOE6{e/ v޹QB<l:\|۱_Pfd `uӡGyO.U۶9]ӗ?@hKsKtMS2Rt>]+_Ep] @8iޡ Db;WE _V~a= eS' nMF<{8}s HO]Iʹ {w V̓ܠ1L2J7je.h'$:rr`>s4@Kk@Ͽ>n{I0l-e5;MGWiEDӢwˀ_7kVKϋw#L y8eIlQ2P傦`1b>`N 7UJ-`P=תSW1 Ƀ-9bAU kXf{ߞAXcIosTwmѹ`n %T%6\%jABX5!O|@o]6:D(pv|-Ai0FLZrzrzksrFkdnF U[\KI;}=lDC2$zCGB ;5G^gJ怋 =gTvѿx ػ8 F/#!4rP:7.^h@b(pFӫߦ8kF>*au3+<ONUo d$è{+3QSh:t!Ax1+ SI# †FBҊb8}Tf]8H-298w z1OK}OL)ts7[@週T1'#Fa/aRh可:s8tRNʉa h0C%p]QFHS8]`vEQPST% h+REo +˜dS;0dg[BtVsfة vE7fשY΁fKZRoWVfpIvO..[QRF5 Æ2edMZI}`7+q;G' ;q(H]-#zz a$a :]ʨS@]uƞА9L{/¤"0 :8(S];Ξ-."M(fDdl>/Vn``JTλ݁<&^yCM V0C]+{jydb(*ԮC̫c@r\M^ h('GhVӋzٮ8_ɔ餼a:YhNH4r㲦+ZORmuHE x?t8X{aۺ&U6{>Cx:F1YgGpIjDyuk Y;&q?2c)7S_ܼE§#of~q/?Ac\]ƒ:֊{ɣ{0o1۞:ha6杯ByN==6pT/~X_saFD4yjg|y_sJGodۯSIhajTj暭\qј24ji1[HovOlJѓVx< fe+Ќ.ܧ7]N>-ϖnؓz3s55 ,s䋵ZX֚5,c u36^%_*@f{#jAzlGdҵDaXJ*nNҩ;Zѹ<ndoA^G =(o'0A~=]x \lD Y\ɈkZeK ,ĂϸFDSYCFBp4T۟"b CCDfgR5J Fߝ o:ݔyJ%3l9>:)}A$X0Y7wx:㳧 >17\P&axBNE`;T®) Ԣaa]7= OR -֒<}$uK,,=B:EE4{wB O_6Y_"tȐș%w:ibsQJ1EƬwĴ'a:Pa,9᪍isj%}i$qD(1\Qh ()H\+4+8^l5>); (kMTHj+)V;T#\rJO.iX`f+xC;IH \̽woНJ3qQ! -M"!Xȷ윆M_EfѸR1'N*/ԌW XQϒY)g +0]=I#V%͈c/R ЋަD%TG2bAԾT!Ҙ2^VqA9֝<}BwhӚC+c3OW@łT{&WnnJ~_K{Eꩺӧ!DEZ~a q<\h>.^ #'R]"v|ЅO`-fPzz8'0 G~/ t*'5YԬ4BО;d~9aLbQSʺ8j!}B|ĕ l@]}!z >7eGk* Ҩaָv+Vu>Q}ۉ&X#NߑXp&ԫ{0R'6?W*-?Qr}bE=.f,9t(ly->pR#[V=Z0 Sn4F!;0Lq:Ac 4 vT'xif>'yQrb~8d\Ӂn\=<3* 7L 9l.Bk 2 zj$3 Ao`h8;>a+wΫTa:\@w0Z1-~GTG$&fllu{7aJ.' 7ρYժU -.nFD)kaˣ,qR)T?*hf/xFA@87(S.)^MQ9R?c./;ɸp]QyE1rjx. T{ªqh'~G=Tlhi!!x4Y0 :ʯ!e)a>].Xqn raS1~̄Ad+{ՇC0[!WX6vd$\jjm\DP6E_9EN p" R%=цD_' (Wnd$Xj%Z3h=5U+TѨ?8]YHQTWC5}oܽ]%&be(R{19A(B.hԜ=B8>Q-tWP&r"DM5J7f2tsaiM{j{ ։:0 y X_ 9m6cE͡$k75<ѩJvh NvV# a!b7L"l:K)1-;A #_A4;y@>C'k(*5J0t]d':pUWHC>8?ݔq6+ݧ*هM^D }R#{L^R`$AxrnN,/!(n F>q_`Ӗ˰tyff:տ&g+ !PtM-dZFIc..J1$2\Ñ Z+a?4cHYQFKXeMneT' TN!ɛh5ؓV pJ΃H}}]s{;3Ņ?Ո(t遆-3&0wϧl9yUy\" O1{s#kf WxqƴgF}a>sj-otl'hBysR%wඑj$b4 m:|*^de?#"jqW3DYq{?Bq9?f-5 k΢Qd`pi{[oJ`YG0v0ѥVT~s@j31Z_ެKv߽3!rLJ2| 'K1P_{DFor^v8ޮ&+״Dyi%v ՛'@DQĀ zg9Tޣ>#8P~ ?UھӻKJy^y7 s ͎/'΁آ>'%}!-l:I:L-ĔF:ȱM8)y +2, L&$((4\ P.nd4bhinއ=Ɇ7?7W:H=jt{rxE(Z#.r$nܩ  -|aw$?ƒ [4ťUO-z~"[lHuX=kL]^Z4&u (C}Ǚ1rgOTTDŽ(^idNGhywk%حf9֣'[F >XX!oY.߀=0w LpM/߮֩~ ;&fFa=s$CջÁ)M14!s=d[㷕KrKB[҄Hbq2/:tq( x |X͞oֳS/*; K1L;s8ᾤЛ C@ЁrBCQ 2ݙa!Қhk~>l/hP(PB~ATH,e98_2^N;]ڝdOci!BL՞c5lǠ4!닎BJxL^o,`ewK(J[ Qn$9`EBs˱ 3A2P bv*a~vPvY~,e8=7RY4Wr,!7ӤOdp#uz qwV UA물OmJwwABɶxYlF0-I ʿ70& hUug+-$J GzjĕR!gYʥsske"U%Ϩ"86wc"֍]p pBйA ANa6'$mIL7+n[Ugex?*w9qzkn 1Y*9R'peAS‡ F{>3UܒZ>[Ya0$VoCP;[ZmT#\!66DHeOoWXF>o9 RZs3&`Xsmdm+.?MI[4mxrW-.IH wPX.RfzwcUnIhEߛ & TVc|_zhqW?)3aUEK2Jb>ʱtIO󈆊S0/࿵iXDL]PRJwja(!)t=!ib)nbCd |+IJ*v\w <8!_@0@@r4~(kSI 0O#AZǦ)ۢ_ytxO Y6`D&>#Qݢ***%bRDS%cʻ Mg^wF\m0A@SDhx( ov^M995S *}I *E +s7G)_P6 ^]L%?%;{idĸ̣]LR3ܣ1V"Ao!V>Z9mBF|h\ۧw)1M{>rb?Lӽ*/f\B,B aˠ^s0KXGaA#eWw|@Bs.8,$?{IyTy|apLn7/vs]/A}M =O! A,lGVClr-zoP8Ks/ڈiu-kYD&IYL9bƍ\[WI#bGcQsv v{gBTxCNJrn|e/1)Ǣ[]Y^ ]IdM(jCȉj{='L|NلT:^\8j6=" M0e AKnrZToҮd>c;оlSYiqW "x~A`ĕ.#ǦC$rRF^UgK=<8!VC4/Ӹ&0Wd$gw6{ky:aD\pYktr 9#+z?%{DòXb{>Pj#D[bdqaX*;lm0O=3 ~plq z1(hQ 9@=Cū##׆Xdܚ ={ZJL1l_$=&bTݜpT*hVQA4E$j:i+ȹ?;y <;<ؗK63ckhTlmLy:^VΦh'|h+Zn/βFE;s m,|^EC>e?}GZ00}Ƣⲏ{-uuۍ YZ