脅威者は、通常、新しい技術を利用する必要に迫られるまで、同じ手法を利用し続けることがよくあります。Microsoft Officeに含まれる悪意あるマクロは、デバイスを最初に危険にさらすための「業界標準」として長い間利用されてきました。そのため、Microsoftがインターネットを経由するマクロをデフォルトでブロックしたことにより、攻撃者は被害者を感染させる新たな手法を見つけ、検索エンジン最適化(SEO)ポイズニングの台頭を招いていいます。このブログでは、SEOポイズニングの増加傾向を調査し、感染後にどのような手順が考えられるかについて説明します。その後、Trellix Advanced Research Centerの追跡調査に基づいて、Gootkitローダーのトレンド概要を説明します。
検索エンジン最適化とは
攻撃者の行動の変化を完全に理解するには、おとり文書に埋め込まれた悪意のあるマクロが、過去数十年の間に大量に拡散したことを理解する必要があります。フィッシング詐欺では、悪意のあるマクロが何百万通も何千万通も送信されていたため、地域的にも分野的にも世界規模であったことが、行為者を成功に導いたのです。私たちのメール遠隔測定では、悪意のあるマクロの使用はまだ減少していませんが、Microsoftの対策により、将来的には減少する可能性が高いと考えられます。結局のところ、攻撃者たちはマルウェアを被害者のマシンに侵入させる新しい方法を見つけなければなりません。これが SEO ポイズニングの出番です。
SEO対策は、検索エンジンで特定のキーワードセットに対し上位に表示させるためのものです。当初は検索結果の上位に表示されるための補助的な手段として使われていましたが、現在ではユーザーの目に留まるよう上位表示されるためには、少なくとも何らかのSEO対策が必要となっています。
SEOポイズニングとは、攻撃者が広告やランキング上位のウェブサイトを経由して、検索結果の上位に表示されるようにする手法のことです。HPは、最近、攻撃者が複数の異なるマルウェアファミリーを被害者に広める方法について自社の脅威リサーチブログで詳しく説明しました。最近、TwitterユーザーのNFT_GODが、このような悪質なサイト経由でOpen Broadcaster Software(OBS)の悪質なバージョンを誤ってダウンロードしてしまい、デジタルライフを根底から覆し、暗号通貨やNFTといったデジタル資産のほとんどを盗まれてしまったことで、この手法が話題になりました。NFT_GODは、この攻撃の影響について非常に明瞭に説明しており、情報セキュリティ・コミュニティ内で、こうした戦術、技術、手順(TTP)に関する議論が巻き起こっています。
マルウェアを含むSEOの結果がさらに増加の兆し
SEOポイズニングを利用するこのようなマルウェアファミリーの1つに、Gootkit loader(Gootloaderとも呼ばれる)があります。このマルウェアは、任意のマルウェアを拡散・起動するために使用され、多くの場合、Cobalt Strikeビーコンに誘導されます。マルウェアは、侵害された良性ウェブサイトを経由して拡散されるため、拡散は加速されます。乗っ取られたウェブサイトの既存の良性の評判に便乗することで、スパムや不正利用のフィルターは、評判のない新規登録のドメインや、ネガティブな評判を持つ既知のドメインよりも、そのようなウェブサイトを厳しく判断しないようにします。このマルウェアが取る最も興味深い手順は、以下の分析に示されています。
Hush Type | Value |
---|---|
MD-5 |
86c20347bc7ce3da141ffc42d59b7763 |
SHA-1 | e40271e893cdcb3e0454253782fb737f604f56c3 |
SHA-256 | 31002fda99def3259e8d1fc0c6647c0281442b80793eb7fedd9b199b6946e8f0 |
マルウェアのエントリポイントは関数「modernkj」にあり、エンコードされた主な変数は「speedk」です。「btkmym」関数を使用して「speedk」を復号すると、下図に示すように、最初に復号されたペイロードを取得できます。
次に「gmxes」関数が2番目のペイロードをデコードし、それが実行されます。2 番目のペイロードの内部構造は、「v」という名前の関数を使用して復元されるエンコードされた文字列に基づいています。この関数は、復元する文字列のインデックスを1つの引数として受け取り、その後、異なる文字列を分割するパイプに基づいて文字列配列に変換されます。必要な文字列は、指定された文字列を取得し、最初の文字をその文字列の末尾に移動することによって取得されます。これは、配列内の指定されたインデックスと同じ回数実行されます。例えば、下図のように、最初の文字列「sFileExist」は「FileExist」+「s」となり、「FileExists」となります。4 番目の文字列は4文字なので、この手順を4回繰り返したときと同じ順番ですでに表示されていることになります。
図 2 – 2 番目にデコードされたペイロードの文字列復元関数
配列の元の値は、「index:value」の形式で以下に示されます。
0:FileExists, 1:GetFile, 2:Network Expansion.log, 3:Quit, 4:SubFolders, 5:Schedule.Service, 6:GetFolder, 7:%USERDOMAIN%\%USERNAME%, 8:UserId, 9:moveNext, 10:OpenTextFile, 11:Actions, 12:settings, 13:WScript.Shell, 14:GetTask, 15:wscript, 16:Close, 17:ShortName, 18:Count, 19:WorkingDirectory, 20:StartWhenAvailable, 21:item, 22:Create, 23:NewTask, 24:RegisterTaskDefinition, 25:Connect, 26:name, 27:Scripting.FileSystemObject, 28:Path, 29:%APPDATA%, 30:triggers, 31:round, 32:LogonTriggerId, 33:floor, 34:ExpandEnvironmentStrings, 35:Title V Permitting.js, 36:abcdefghijklmnopqrstuvwxyz, 37:Write, 38:RunEx, 39:random, 40:CreateObject, 41:atEnd, 42:Arguments, 43:Product Specification, 44:Hidden, 45:split |
次に、3 番目のステージでWScriptを呼び出して、次のステージを実行します。難読化によって、以下のようにコードが読みづらくなっています。
しかし、(部分的に) 難読化が解除されると、コード自体がより明らかになります。次のステージは別のスクリプトで、この場合は PowerShell ベースですが、cscript を使用すると、他の言語も可能になり、ローダーの汎用性が示されます。
それ以降のステージは、異なるステップを実行しますが、このブログで詳しく説明するほどの関連性はありません。このマルウェアは、オペレーティング システム、実行中のプロセスに関する情報を収集し、開いているウィンドウのタイトル、空きディスク ストレージの量、およびユーザーのデフォルト フォルダーとそのコンテンツ (つまり、ユーザーのデスクトップ フォルダ) に関する情報を取得します。Command & Control (C&C) サーバーへの最後の接続は、C&Cドメインに立て続けに接続することを回避するための組み込みのスリープ タイマーと共に冗長性チェックが組み込まれているため、興味深いものです。
C&C URLは、配列内に10個存在し、すべてマルウェアによって使用される可能性があります。URLを取得するために生成されるインデックスは、指定された配列からのランダムなエントリであるため、それらが使用される特定の順序はありません。乱数は、配列を入力とする Get-Random コマンドレットに基づいて生成されます。1が “true “になる “while(1) “ループは決して壊れないので、この処理は無限に続きます。このサンプルで使用されているC&CのURLは、Gootkitローダーがおとりドメインも含んでいるため、共有されるものではありません。私たちの追跡メカニズムでは、どのドメインがペイロードを返したかを検証していないため、すべてのドメインをリストアップすると、良性のドメインが悪質と判定される可能性があります。指定されたドメインの詳細については、当社のInsightsプレビューページまたはTrellix Insightsのインスタンスを参照してください。Gootkit loaderに関するMandiantの詳細なレポートでは、技術的な考察とともに、おとりドメインの使用についても言及しています。
Gootkit ローダーの追跡
Gootkitローダーは、拡散するマルウェアに基づいて、異なるセクターをターゲットにしたマルウェアとして使用されます。当社のAdvanced Research Centerの追跡調査によると、特定のキーワードに基づいてマルウェアが拡散されていることが明らかとなりました。最も注目すべきは、下の表でわかるように、「agreement」というキーワードです。
categorical agreement ast 86554.js |
difference between collaboration agreement and development agreement 29322.js |
guidelines of the minimum sample size requirements for cohen’s kappa 71315.js |
how to fill t1-ovp form 91197.js |
how to start a vending machine business in Maryland 82025.js |
iIbew 258 master line agreement 2019 73653.js |
letter format of waiver of bank charges 23951.js |
lienholder payment agreement city of Chicago 98930.js |
master agreement between owner and contractor 74592.js |
mental health therapist contract agreement 74981.js |
nurse practitioner collaborative agreement template Missouri 54985.js |
nvca form of investors rights agreement 9054.js |
payroll bureau service level agreement 88277.js |
sample family mediation agreement 75983.js |
what is not contained in a collection agency agreement 59296.js |
what states allow domestic partnership 73068.js |
wholesale power agreements 19504.js |
wine purchase agreement 29128.js |
workplace agreement definition uk 1903.js |
表 1 – 最も注目すべきキーワード
図中の名称は、Gootkitのローダーファイル名に基づいており、このマルウェアが、契約書や類似の文書に関する情報を探している被害者を標的にしていることを示しています。これは、必ずしも金融分野が狙われているということではなく、このような契約から得られる金銭的な利益が攻撃者の関心事であることを示しています。TrendMicroによる最近の調査では、オーストラリアの医療業界が標的にされたことが示されています。
すべてのサンプルが同じ数のC&Cドメインを利用しているわけではありませんが(おとりドメインの有無にかかわらず)、それに基づいて興味深い傾向を見ることができます。まず、ローダー内の全ドメインの使用トップレベルドメインですが、その上位20個は以下の図に示すとおりです。
図 6 – 分析されたサンプル内で使用された上位 20 のドメイン
最も頻繁に使用されているドメインは「.com」で、与えられたデータセット内で2615回出現しています。このピークは他の結果を引き離しており、最もよく使われるトップレベルドメインを除いたグラフで見ると、以下のようになります。
国番号に縛られないトップレベルドメイン(非 ccTLD)が上位3つを占め、それ以降は一部の例外を除き、ほとんどのドメインがヨーロッパ系です。なお、米国にはccTLDがありますが、商用(.com)ドメインがよく使われています。このドメインは世界的に使用されているため、これらのドメインのどれがどの国に属しているかを、誤った結論を導き出さずに定義することは困難です。
下のグラフは、C&Cのドメインが再利用されているものと、そうでないものがあることを示しています。上位4つのドメインのうち3つは、”.com “TLDを使用しています。これは、上記の TLD 関連の結果を多少ゆがめる可能性がありますが、それらは多数のサンプルに存在するため、数字は依然としてサンプル自体に基づいています。
再利用されたドメインは、侵害の指標を探す際に有用ですが、これらのドメインは検証されていないため、良性の可能性があることに注意してください。サンプルにドメインが含まれているため、それらのドメインにたどり着く可能性があります。
最後に、持続性を実現するためのスケジュールされたタスクは、半ランダムに生成されているようです。それらの名前は、英数字からランダムに取られた文字ではなく、「Nuclear Pharmacy」や「Organic Geochemistry」といった単語を組み合わせたものです。特に技術的に未熟なユーザーにとっては、(一部の ITツールに奇妙な名前がついていることを考えると)ある程度は無害に見えるかもしれませんが、本質的に悪意があることは確かです。
まとめ
このマルウェア自体は、主に金銭的な利益を得ることに重点を置いて、数多くの方法で使用されています。定期的なアップデートは、開発者が顧客のためにマルウェアの保守とアップグレードに積極的に取り組んでいることを示しています。このような長期にわたる追跡作業により、マルウェアファミリーとその開発に関する独自の洞察が得られ、Trellixはこれを自社製品の改善と顧客の保護に役立てています。
攻撃者は、被害者を感染させるための技術を革新し続け、SEOポイズニングは最近のトレンドの1つとなっています。Trellix Advanced Research Centerでは、このことを認識し、新しい傾向、技術、およびその試みを注意深く追跡しています。
ハッシュ
以下、使用されたデータのハッシュを全て記載します。
a1d81c5b5e41aa1472064531801380b0270e57a78499b8c5fd20e632f141609d d476b05261a0c3a9b2be0c6caf64356ad4607c0a39b56033d6a8df7e1792c294 a125fcef83c92f80c8f843c45d498a4e9679a0c66ce6ae29de583449549fe04f 1cbf027dc6776bf62c947980f2260c481568b2880b2006558d017417184731cd 5298502157f73a40bd20456dce81e2d17abf5ee6335cba88e0c05a90f1808933 cb6a5a9ca16b86baa29ee9066de6ce261cff7cefe5b567a7c58ebccea2b70538 1e0979087048d854b43c61fb6d39c3609e006711de553499f2956a954003e664 195016878942700c92b13be3662b5208b745eb36e764c8f86cc7376eaa82bdea fe19448d045c3b3d00d1ec4d012bd19e756edbf2ed069b8fe94856bee0d465aa 389aa1fc648cf3f26f5371865c479f29c8374a4c3a82e583c9a591adcc 224666cd2f87f1f6c066ab318dd70d05eb58e433b8ac67a5eb1beadfec626e69 c48e46f300986bf3d7b26766c38879f0592859c71ca2ed5f6c6c8b379b377bbf 8f459ee9675ff74d685926fb7c70721bbcd768197308e8149409b291baa47a4b 7e31a35da57f64d992fc8f20c98b4c5a0a708de0505b6fe9a851291336e382c9 a7e95c81c170716ff9d5088fffbf996b61b52be4115e9fa32ae403ed1184ee29 78eff43dab85dbcc9d2879b363b0e635f37b69ce8bcaedbc05233c175ce37767 5b16669bc10e17e0db0d8185e225f7825ab552b9b80cd16d3f00826cebf31cc1 f107c867661057b3dc76228f3ae0a10e50356df15f670d8bfa905507ffb43b2e 8a03f04c6e1a4019c23c61f2ef7a8bf635e3aec9b7d6c97b4539d81b8e4b2388 d0c736b52bbb3974bfe35f0b1c15d4f239bf41c301ac8352f8e6c6d2af75c450 a6d943bdcfe05b8d5de14bcaf2bf1ce047975282273c141ebd507303281f0c73 3466fd616566ab222be3296aaed44fe493efe58cf5462e23c22bca22e2061b84 ffa91f26dbbeffe2e9aa9435271a4d4194eca58369a7104ec704c6baeba2b9a9 dad38ddb8b97808a110fa5e9e3f70b71f78ea4f1ba760dbe83fdc08f56b5aa6e 7899a7feb65fb95c577732e04351f51bdd8fcfc214fd25df65f6fca0c1d9c03d 6087dd690674aa4828bfd01d938ac6da3a48fe701b795b146fb3af2a84355a6d 8e25e1f8833b37c2b4cc7400666922f81e35cb28f8d2cd916342f7ae135bcb5b d3d369c3656c6e5c48e17b3b1b4f021aaf134b8ca12a34981ad7fb5d4d1dbccf 540ae9990b852e11e3227da5f729cce2e990995b62607429c31102c5e2d62d69 56ddea561c68d1c4c9a4ded70e9501d1caf478c20d12dc0ea457d6b8ef9c1b43 78a61413ddeeab06d915f298419aa5a96baec683ca756474668c7325de663c40 0344b90eff724ed7a4071ddaa5245624ad385300985c23c0899cfd441e221e64 e3f6a96fc0cc17f05be468ded23a1e6cb5b8f8050ca4a02a5473374f105d25ee 61b523e09391f638eb4358dbc11304480a7de03bb4c71e774788923a24919338 e815cc12b057f95f00ecbc10fd33ca4cabd2207b9ba150f6b5e6bfc1d76975b2 83a4725ae070df1dad4c9f257ac4819aee289e805cbc5e20ff1edf1e5590f5ea b26929d360cc6361935675c78543411f74032219919a74167b26cbb6fe01933e 2c2e5a6b7c8370ee51b0d45b6110d04c57ae2074ce6f11d2c4eda033a4b8b3d0 5b5d950200a46f70dba726ce3d782ded03fa1fc3ef81d1e7128fce7d706026a9 92d7736b4cfdf8ad5fbfffa1e5b81da0ee5469dbc75134d420eeca5b05228216 e13875fbb85cac7d3f4a447f3b9b85be31508bdd8dda7daf9590cbe19872e402 d9500bc04ed4a1c72e5a56c8b37a5a715541428319857187ff068d2a7bbff30b ff107101476ab6e64dbc8d154674868b6f0bf85167e9028b60e7902d5b2af0fb a6f889166efe4c64326f4fa0b92bbcdfa5b7494b7f2f8127118ee26a29f9d74c 6745b6c55cdbfa936ce837566541db481f3f1dfdc4068f320bb31cfe8d6990cb 4e34d5abe3e8c48a0390f639b793e1a3dcbb51a40df040cfc29298cfeec4c34a 3a101f89a90677e30c15aaa0d5d852a3af0187b76d7bc2c1938f2bb52d276280 2e75394a866330c7c141c70747aa05c5ab95c96bb191cad3dcd4cd6cc645c3d3 0af21788e5daa18530752b1aeeeaf0d2a1dbbe319680cf51e24b08ed65cb757d c634d46fc26a1b3b776abb78f1aa867bc475f666688101a5bd34b2cb759692f9 9e21e57a65fa6c4f08f837ff0252d8b44c373d0b864ce04b1e8a5242732f6c80 ff18df5e826109c16f0ab6bf17e84d418db71b9fcc617f8efe3efd09172c9d70 e11a6fbff69394c26805f23bb31061ef36e59f6e4edffc5f42f7523ccbf9daa8 7f53d5b9729a581c3ab471474f1fd4e4cf8a15ab613a563661104b531d87e1d6 6821acec0fb6bb417ea27acd814557a9243066358e56d5c6f8dcc2fab5a797bf 3e605b6ee9e874b8da9fd357c6d88d98c116fc393d2d520c03b16ce6e4ed8ed2 e6b40af9c6bffe869b4bcaeccd105484b6fd47ffec1a372be7021dc66c6bc39e a346a7f803ac94a3d122e143654bf25c5448e2c2946b1c8e3e8e243756b3bbc5 1a9d554fdde60867ca99d8d6d73eb19f925576993c397f24f7f315b146caebbc 9d9136ce41402712d711f122eb7c49b664dadd319ba4c967c2aa089df5746f8a 9e6c15f05f092edf021945de8f2f819110eae38b0918954e08cec164445996fc 6e76a7cb78692f4b95e400a696c314c58ac8e30260319126a234336d3b865f47 86d68ea7480ba9853a7cefe406f693e04e3b1115ff019c3ab707aa6e2e70d615 1a1c9040d76c9d3ed97202404fb82a0f94f91df12f193bfaa45891cecdbc828c 01d6723e4da557582d8d026d6c460f363b17382ba8843de53104438c88f9646b dede0f9f1bda09e11b356a24ed6cd3fcc97fd2e73c5412308f2834eb008d8bba 1c360fa6ccccdee47e09e64ed05cc4447cf2d25f3d7bc6e71879cb25660b4b67 2286d05b31d3d830602ec6c0b532c844fdc8986f5335ef7d25746e59ed51fd91 f07dd459eac7bdc68ea1b319c8060ba8744e25627d5d208ce5340dadd7132f6e fe437ce0c753e71bef343ecf2cdec92bdd8fe5be8b682aadc2ca32ae1f30c9c1 5832f9225048a5d29076def75bf0ed7e001aa2df2b879892b794288d1528d61b d6843c1666498507c62962a27d091331d97b8f8414557febea0d720747f101be 10eb3dd7ce98b0af78d0c0558730cc5f5e483e6e6b2628496bf3dcaca031e7e7 9fc21c623beb89b3dfcfd9f75e217eb35a7e1b0e8de9eaf61ced66f919921f5d 138a705bcd635b50dad717160f7e0137fadeb6210ce82ff13100927d8cd18e30 d64d9cb448ff7dfea1e641471beae99893637de21f7801b2b45b1495b90b3088 aca3ce625578b66a1e660a79059abc7924037902a6f3f4ca9061d56fd65af044 40a4c5db1fe2ed51ba824cb8a4491a6c87c388869419bc8876630d74a78d6ec3 c0c9aa8b9c72350b357cbda8fdb9a8e08cf2636f96f16a639c719ba60fb867dd 9ea0f874674f531ab01bef48de7126960e53e2e852d89fcb2e3a5222d8c397db b0a42f81b0e52b4adb546e0c6cc3b0cb60c2d328a24389aff3227ccd9563ae54 1519095f221106a5aa41cf9b1d9cfb7dc5aa1c83ff3c8b92d0207020cf512d10 c446b310d4c1aa3c1f08c49d2ae842773d1b7d95ad671840e2df9bc6430784f8 1c20f29b7ecf6c8015b058a2138fdcff1329931b32f239eca740601d1026407e a3a0e7bea2365c2ab8349cdf68d1f7b21d039d1f4f9cb1e5da8da89ff2260511 52c1813bb48575a94a560a687db8f084d61ffdba2c46a5c748b8ad42ef39e4fb 3a2e45307ea96bd5bfaaf438abab36079afd6addb73438fd9023822d73e2b9f7 4a437ffe4cb3a72cfb26b0015c8403334c4ac86355da4b0da7de949b9f8e2a41 d1bcf5f9112bccd2b66155a806f8838c85b16efda499786f6d6f3fe9f8ee7620 3087fb3987607e11c813d99e194e7b78a9594e358a1bc39fc5f593535d09a4db 6117dcdde21bbf4555e6f9e150c4f40710d81afea57d57362fd0f2ea4813f1ea 4cf7358e6e768d820bc23317947814bd8a0fa993755bba61887f9558e321c3ac cf9e4ccd74ead9eda86971d7a7485b1eb60a774ce40d14411fef64fb6420af7f b2bced9dffc41028a79ab3faf2a37e869a90c52fe4c478900871e9920feeaa9d c5a60ecb82aa4adb0c9981aa524a323181484a1a707367480057bbd3501c00aa cb931a6512d0cdce7b28e23b396eb082f1935993346b7d91a9338ff646655125 4a55b228a7d6d748241fb792189a2de0d02214cfa08b3a601c281f867d224c94 8e1e45b21a9d34fd894673b831d6c3a4e7116df96188eccdbee9e8d502fdba9f c951366f7562ac563b2145660c94425926649b77c8ab0ed4863a3c47e4479d0b f512127f3657f26c0a928858aa538b6a3dc70d92b5aad512f31749533b7bcd44 153904ed2f1391e9770fee65fadce3458d89fa1ae28ba17d4c95babdafa1eb97 4fc23afd78e34e4a76f68be584f4926ce3d749a0ffebe2b616b186a7ac61fddb 413fa62e40a2df72d561c13a9143ccddc4b749af2662773f6e0f7ad2b1d50995 49e5b18d9446b1809f8174813e852055c2d8a93c3295d4a35b0b1e8d55bec312 d54ee91ca202aa7bd3eb15c6f80b7082d221366efafe05873f1d457307cd51c2 d8deec5de1bba7be955fcae993cbb05d012d99b9538b399f3a2a8e6117665f61 8a8c70591f53f0925235e492200c6d3e067c75e0efcaaea7c961cc7d53afcf88 b3a011c9cb6f2c5b3d27629a5dd8bdbd6c6930e8f1d84487c971c906792bd8e2 e644131f95b8d86c0261650f358913d591a9a01f016b71d5cd5774cb5ff2c5ac f230071bc84d3ec6a0109a5eca34d22b68643985479246dba36199e1f8d11ab8 ee815f11bdd08b9a93a1fa923a8cb20fe3f41e4e771ce49bd0ac83f6a4fb571f 769b73e8f18f60884c5ec6dcdaef66546cc87407df560368903e447a768f87ed 4ce4af298665b4e210348ee76b5ded56d690f89c50e9c7dc83ffeba7d5037644 5dae842a50fb72c66b93d032b829241be6497b34e3199f430905745f07d267da 8121c8fdbaa7493a2314b51a5f1f516ff0cb4ae314a7b3d5a9c29ab54d9d3678 ce012ca1dbffe4a1525b6201f6d9531d6dccf18a5709285be8cb9195d045c63f 3045ce35b25881d27dd5e119e0f1ca8623fd270e4537217e5a56ab81e677a7fe b2f66059d905bb71b3c4320dee7ffc185bfd667851a051ebaa4e1f45e774c445 481ca047d6a9d96eb1dab2b273a95a695e518c5b50b56d55d03a3f6e29cf0d75 5aa611bcd22e15bc5814dfef81fa8e2f8045ee353831978658302c887db934e6 a7ade51cd6c4130db3b5a2e599a2574105936384177a595fb86200a18860a10f 00f08f180ee6744b5f1ca35670af4d22f83135d092ce45b15943c62ce544633d 177b57c530a4bca21c19d7822da8af37b47b1f9c6b235381924c226309845c12 0eb24973242cd32cb7471e93ab4ddda8b95071951a634597a6687c7e8f7a0759 496b0a6ea6c829561287b5f1b6fa4be3de2f1451a96b3a49afcc570bef4c562e 3a645984c5f470d7f112fa09e15132790d88362aca91184ca2a6362179995d52 4cb6f492a0a0d3bb4e6b4390ff948840550040acf79039558ade223d5ea87aec be5cb1e1e7a9d34d85c1f39b9081027ca66eaa7ed19b1b72ec1cdfb82313e6fc b0ba0924d6a7a80a8bf75aed06bfd46a4696b1ece93c8d3aa73a47af2136dc18 0f111e5f5dc8985755eac02702d428758f54f6ba42292fa8547fb3f0a717ea5d 106cdb7e8bb1709db4513099be91826a9484462b209220249cf54b9da019c7f2 ba101d56e6e18401b069358773a29d3c9998f323d24966453bdac97edac5fd4f a89775cebb7b9fbb79a9681ced0a64787f7d3e320a37af43951e9e38fdb86cfe 368697cedc1962da6e81535a1e035735944e9e2b2d6a5a188d89bad341b2d1a1 449719794f887984c1f29e44cd2d898c074e9f0a190b9dbabb1846d1bd54f0da 251551cff0b83e94db23389a68fbd3457e412221ac98d47c03b3b547ca0413bf e826df2ff2104f8fe4e968ce85ea3530f03236d28e3af0efe6f3dd4e28b4fb85 b3bcc99f4d3929ffd779de550be08e7eebbb5863a2e421bce38fea6d28415ca9 91a3700a7c3b4443ee6e3218e58770f2383f63fe9dc918c189f4ec92abe1b3ad 5599cf9c7f0c57df7f9ad6f1d528cbc496aee501d860b90f65bb856dfcc8933a 2ebe97f5109e51533579fe5b62c4e5d3db983ed89bdba7750dacd6c4d06979b9 a2dff15a4bf3d16dd917bc673e5e008a3c8ec5f3fb004ee2fd0f04f10a79fcf9 a3549f61ddb56d6e52eb5dd6e615815071e528ebc327bfb971609fc780a45b4a a7b2b4b55ff9e0761cdc57f5f4760fe509812ec73870b9846fc6d3cbe4e377ed a6edce24daafddd03bb209c141ea64ae10a886db7d46582feea4d8ef771de181 16c65cc25e654d8e534ea10c781f0df99ff955119f854e64fb0fa6b098d8131f 4450172b4046ba5abe37b2c92a71f35325081504c195980c49f382817f3f4b8f eaf690290635e3bc65dde11e4bdadf765ef91fe6d13e6d43ddcdb6787f035fff 15f1e25e52b9c9b0e6122ec6b15bfea90b5ec420308c1466297db52a8752f58b 86a410a996bc5ded2552c0c1755549117a170c2cceaf2b00e86a8dcaa158271e a20e4f7ac9527fb3bc00d969a133e2b6aa766f64af529ebb78c4821b135881f1 15aeda20045d83aee82a302b34bd3c5027becb6896d999f91dfead05eed626c6 4211440bd3688d6ccdf6e4fcf93dd966dc2c818daac35babab8278865c85525a 4e5aa73004790a3a4faf4153d50c084110c1b825dbafcfdf1595b5600865a969 639e3811a183f70c0fc3520a80b572158237f5d69eade528415a05b97829e7d7 856d54f1cfd030f60941f00cdfb21bdaa5c685374ff57bfc8c9acf7141da8afe 3e716846f06493eee1b0cb10874ede354c0b7472a2f955c972a0939941e84bf8 093b62da77f1cdc768a935f0ebc42f158d4dc0ffbc081367e7d74d9294639065 eac227a18a41c2721b4300fd767c39899d7215410cd2cabc7793bad392384549 c2c89db84c85122a34fe4e1ce21004f5316b6df581f2926627f1c28b522fb12b e00d3d7fa6e369bce5ad71e31db16c93984c0d32b2f49cdb3904d3bb559d571a c5e8d51ff64c33af8e2c282f78e11b050e8f9cd43cb9667fb147003edb63ce03 03643e3f951d811266d5d5300ecd0e885f34118d7e0d886098092abb702a1d77 4abcfd95ab42fd4b6c1bcc33f2b834d3623b9141cd198bf87ced2391b1 5e11349d762c56f7db89c145f0899cc789cbb6cc98777725ad16357157c44d51 318d076b5dffd3231774dd917dd72e4c0c86c0375e6aa702ebfa3a793f2fe726 027b02bb2b805e81efe3b57753bb96887b5a205e8ee440bfa68d6490946f679b e013261d79099b54025f4abda5e9ea03e5158b013bbf37e7c98c788047e55213 ff354e31a8541f59e484a9c9a4c08eaf5ee229fd6b824cf9eabdcdb9328c1ea9 a9b74b0ee515fcf0ef3374578c1eea6e1c5ed4c13e896d99b9418919a75ef0fd f59a3d1d3c1d1bdf8199d235d96ebbe774d461b448f3e5615b554059f3c4f8a1 52fbb7762f01d4d0f0ecc2d1fe37889b9baaaae42682d5088a5d3fdbd6b6533a cde42eb79b28e59fe6e72a56bf37007363f867dc57170526fc7bda7131ccd43b d1b408795956c64950976fc7bcab05190eaeeab511e9f308b94f34a458bebff9 788fe18730a293b0e0856b9100e920b663c30e3f4f8918728c6123369750fc90 4fe6239c938e92f1290c941a4286180c4b948a489f1bb4b1f43e8d85f64bf44c f863f9722e1c0b0ed73a2d13a9c317174c16759cdafb2c2d4bfec1303ef39e84 e0f9d80a97201a56b8a60e0c1415a70562036903f7ebbbd762a3437b3eb61327 5bc710baae42ffe23eb8b2e11ecca21b3009d043da9eddabb0f753937f52b88f 9106e064ada842d45cad3298841863b8d48f79fd5d498091364ef261e11f4e02 4e715021ebbb3b061b2109ea42c88727fdce5b4af7028846b83ff856fc405009 918d9a314ad989feabff3e969699ff79316d4508a659fd4cd73d7f94bf3c5961 f786b45472fc0bcbaf3fc82626faf771a3a43d481c0acb6b9669b0c75a802ad9 e77956707ee278baf302c921b86b075adfb987fdf81cf65aeb50f63ca7621921 1c68ebb043366ff143fe16300ccd27b85ad28b6f7219b1414881b16cf62c0e73 26da65d98a7dab56027dab294754c317c78649218bc98243da718037312dc996 4d9574138ba000460a94dae5d71b3672705c7f4631f54b6ab377e0491ba5fd19 4c59dd99f469eb90adf7a86da98a7a8f094c2a037e0e3e35c9981d409bec57f3 d0860c1b62032162178da4fc64c97e1c417fcc2dda6324010112f1b033d9a896 49badffcaec7a58abd02c9c871a955833086c8a62c158f886946b622859544fe 0c773fe20c767fd9224cd571448aca0b660b6e5c9ec9d0664b9c0e3a8853285e cabd40f24ec21f06d87d35f0fa7cbcf6678216e1113663d38744a2c97236e344 00e7d1faf80e314ec92d4b9c811c2486089b2eee4207aa8b200818d137561947 68e67d4ca5e8a281af04c8d894e2d42484213e8a0c48fb2b0ac3eeb3c46cffc1 51c35a2098d62e16b5f5027fd42e0d17b78bef123545c651eb15f8646436012d 993af3070efe30dac399a3387847190180423fa798194f63459cc37cf597e09c 3b23ee81eb0bd2233d79b96e14746eb59212ca5723393a4483fc03a39c4200ed b8c27f6b7aba63a059b5d63fafe897426c1468ffb7f48774ec78ef3d632f7c3b 526864389e2a9cf4636e7bc6d1e4e1f8dd85f7f247119330a72ac5acbb819d13 41dec4713d0a0801c140776ec0f8a4c5a23034cfe45ba0ed38b2c480590cf77b aa0c81129852ac78f4d4d1c4aa6b9e6795f5d77ce5b9b5cb99f0bb1bc03997bc 52e3942e0acf75f906e555fd5aa44f67b9f68d472727f39b077599a58f1c5a10 72d92ea3a0b478b5a0d94235e5335295cef3487a4df2539f61c2cabd0afde4fa 3f30351a608aa4b55984093d243bb91eb7955082c8dbea53169bb931f9045532 b33c0fc3e2a51ba936addf5c5cd119bb98484e171e05137e75fb9291760236ec a35fe57987cee27a3f1426605d01a4e9138b091130a4bbd4b65ebe019965d4bc 02fadb51c99db3afd0bd17c8350d31b1062882d78289320e69cbba2fafec816e 5965d01bff1de1d1e5930e1c3f101ca07113b86617c3deb79dd335393591f495 5a4b1d7c650d166165868d0979869a3bebdc373c3944f8cacb1b296e1fad5366 f112a40a790d8a66d0eeb5070a489b83ee1bad67d4b9062395d0af3d59d03761 162a8b9f7c7a42f5c7bd305e951f1f09b454292050a37b173db9995af4ae5922 6cd14de1d49e480c41246a91eb6a97f3982a9cf7674a7ce9fe7a929a78555b4a 5aab01041db17667fda2acc5c342876f5ae644984f3cbfe3f888b4f3e9043c89 40dcf6a3d97ce0dae16143c85ecfbd37d47bef1984f3ae96089f4349ef70e6f4 320f62b74b821f05d233c96cf5bc2c5d8a9b1ebeda63bb3f8d3a472da06e193e d36e01e54fdddc50c1ea14f57343a12c2199017cfa3e31932aeb284f39c10518 c8dc07fab680a3b63d06486b784ced39f63dfe6898e4a4dc17d10fbb21a80159 c6afcaa298cae04362e2352fa4044030675652955212d2712e0eb859f865a379 d818fef7a2d9337ce32932d5c0e06fd5ad2706a2aa3ce4e4c8ec5f492964a82d 6ecae29a7d466bd1573bb5d28c93cbd9f7721b8ac010143bc30bbc6bf2d2fce1 100392edc6b49dcd31647c2947d1f9c31531011be4ffa5bd5fc7705e228b06c4 3f874666bcff846c83de9194c5460acc5ddec2cae653e34ee52d4dfe6b6d1de2 bfde2c07a02639eac683c9acb30f24af9028a031f7455bc06b31eb84f8673f58 6b66320a19cfa0d6c2964efb62e711af3446ee3a7e2ed2771f7569de133f9495 80048a9a518f9a9db4b8ec01c90cac8d42e833a5649e2ad6b6dc7bd60df3eccd c71774ba41b4da91cf55c72c9a17d2aa5a81a94327256bdf931e1f8f5b8e89a8 c606703754ef90e65b2a223be654af920b3da321dfca28bcf0679e445a44a0f3 99456141727c71f1c5a400fe5e8c18acf54c59c4e2ce8e3a3aef0c4ba5905267 90220205b7dd67b0b475185c233d8abbf37c3005b0084996cd0f795adf072734 b00358ef47cdb1521d8781ce99656a9ee8d9cf1c8b807003c398ba0d30ebfade 3f3438198307c9aa1ff4dea1d22ec6b06471ba3c6a58a75071755ffaf20bde71 04143a4ddfbbef69f164ab55978fc824e4de55687ed5e0b432efc760460cc4b3 1af18261f68d4540e1ce934b95127accf45913bcbb8bd13422daf3a506 2781fd af9290ab99ca6cc25ca5967e4bf12728e60e89203b02888c76e3aa221b f45032 44b089d85f87c5e7ae99289a8717f4fd675044178945cab0b1531b692e 494d06 891b849997f783ce6e6c8720b4bd07f169b2eac4cbc11b78cfadd62ea5 c9442c 31a00cab632987aacdee9f7d122f3304891e692653d18cfad784668898 ab6927 12094c02a835d85ef9b071b3381da9b3471e4b3def9fc0d653f6af5f47 ef9f50 71230e7bf57859ad96a1dbcd1d133a5e37c42675db2a2d9cca5490dbaa ee3070 9292ebf98ae1f7a4d101de2e5997aa8ff846c1c50c542d10e33778ae17 08bfc7 0cb8eb84f0c3ce0d25a815ddbac42fc6f664c450658d9bd54036ca0a12 c7a7e69456565a940e8090daf613cc51ae3476c4f69ffd21cb37e84e25c17bb9 128fa0546d56d198bae49de728e0e42064ef3d71716a3bdb79b95976815e2291 e7af755388b58d83e8341c38ced8fca4df08b5a3937081335e104021e1cc67d9 0b55c64222496983e842a132e3084962c61637133d5de73cfb057902a5d62149 84b684dbfb8630b02b88b777744de7ae83b63b29ece89b24de5a4020d7e36722 02c859baab08bf5fe59f519f913fa400dddab031199111231551c5561f0f88b7 2ea08dab976535c425a8cbe445fafb3f1c20d3740a3a01b71bf04694443ea60c 360904322318c30f3ccee0d3f48755c88ea21228d00c4b6d72f428c63477a1d1 02ba0779ab4c6e146bfd04086e9389b118e3259a76fc5427ed4a5c14683a9635 7d9a3493f6ea6381474cebc1dd46fd9a9cf40f5f96cdfec545fa365078f4b3c1 9b264e0ca0fc71cd970bc88373bec2ed6723bdfaf519bd647b7a48f4da2b937b 9228181a67a48ca02f004d9ce083952c5026c583712222bdf67e4e3f52467dc9 e3e4048030dadc6fae6d40a84e35c3e02e1faa7f4ce71b97c0bbe61a60eb742f 7870dae3e1a3ff6c233c4bf51dfe82dd32a59c7ee07b738cb41ca37a0e0d6d1f 1a961766a3d932b57c143a35ffce833c242bef8317c75e8749eca84cc5598537 3a13ea868ae92877a699696ed566a6fa88f3938fe1af8d8a90d1a272bdbe4d58 2244857f09480a53b563b730618354ca3a96a6f7d4e445d5b0b6da6102c4ee96 ef1170555a64b02c3c19b298e21680ca96eabd9a7c74de174922debecc81b74c 526b01afb8df3fa4862f5096f4e8d555da4026aea9f7f2a76e747653f9933572 9f3999ce6d7db31054babaf41cbba2bde2f69c26f5d87c535ec5ed78dc219b9d 8b87a83b3024441eff90e45147be48d5ce06bc47784964cdfe2df787a24e46eb bb4ac2f331073c42d5d1418dffbae903e41c631462f949dbbc315bc6a0a010b3 9c1ac83bae9c038e8b7490b21284e62b6a9399f6d26e6b1205bfe495ecbb0680 64a540768ec6c470da930c9d8010b6ad87f205dbee75900b86eacae61926136f 9ed91dda6da8da42041d38bea9fa0f5ef73bf57bc61badc46f63131efa7669f5 8fdbbb35c9f265599148d2906f6fd8a05686b5b8424a3026e1f6a4cccf2dd2fa a2f81138922be6e1b8b6d4b1f5bf643a3589eb86e6f3f16288a0edf733e9f7f1 3140bfad91aafb1c9f2383dce16f0226a58a2337fa8f527f881fe9022bc3ddf9 d92083800ffdf5da332c504f23bfe7ad6411482b9f9c683d3eb3e8806ec4722d cd2e8d3db9d688c3d379580085a4ad81dcf7202bd03d378f5e196583f48a45c3 f4c851a46a095136c5ed2434f1efa2df6f57505ec228c741d792dad89c44f46f 7f2ebcc356d3d064110ea3a3f1f396efd27b6e85d39ef52f602d78513a8d1341 a218bfb9787b7c073303d59ac084d1abf587986854fdd6376f9510dbc32a9e7f 7b3b0891e522dd369a8ff66fcd759437a2a639b47c248c64ea268ffb15d1aab5 34d8edf4d0b1304244e5e586532f055125e1d7428cd60381acabb5bec923c6ff a5b58bc01852f54bccd5ce5d9f602f642d0b96b428943a085f6dfb04730a56d2 98146fd10c329e333d53c0299b81dc20e38a490942648be4d34847bd88ad57f7 a6e5dace30631eff897e86fd292cddea3920babac7ae06fba73955f466ed69bd 4bde08463494c912c171794647857e64ed5ec83a5b142a0b7fc91ea4e515cbcb 08e0b50b503f7eb31b46252899de61b4e8ec9b4ca3bc05213092af00aa1b9734 41825cce00737c72e27c7bef37bf22aa32e85d146c7bfc63df0a73ec07e567ca f005e3505053d122f4c5a37ae459d52f88afcc11323f2807628043c75778b68b c9c4e24fdbf9f6813f1f3b36bbb3f63a86e360393a2fd7a97255b70dfba5151f 348a2876a572e24b34a67b5bc738e3cdb9867afa06d6d27ee419d8c299aa6f66 5ab41b86a9cd83d49c386cffb52b01a5cc45be64f9d27269e6afeae86e5341b9 e33a6f3478a463476dccdd0aa34101309265efedc8a528ee8bb19853d606e05e ca55f20bde72cc1778925c98d03a95eec3319942f258d0e8ce6858d98fa1db36 b656c858359b1f1219fb563fafcbdbf117277e7334a3bbb34bbac890e32b9a4a ec6911a487a1cd5f056c27b27598056dd758dbf0fa20bf27b2b553a3a4b092a3 e9d563613f87d5d62c4dd4a3db7b7125f893aa17c033116cf7206b26da6531c3 70272c0338c6e8820681d552e7e6f694729188f623e9488f5590ea37a1444f60 9e07fb368463c0ca462a49fc7be6a83435d0dd0422fa9916f269cb2e5af30a01 2293248d3e49e3c402972ee201329861c3a2e6678c712f4ec49f0608a389ffd3 c2fe859e18a06bf75cbad65e06f630161df629aa77a3276ca8b90df52925da09 54f933a61fee455c42cfc11880efd7a2cb5305f3ad0a82719c7d103cd23160cd b6b3d6c79567be77f9f7073db08466caa50e13eb619a786e11a46ed8cf 2981f8 815211541cad7edf8afe9692bc7ad00eaff676524baa044d59651a5ee5 ab035c a96ab5eed99b8def3f20e3f1d4e4f60498a679f6823fa47dd1ee48eab0 e83f19 e658205b53522a6cb15ac1bff49e2f41c7b886a4c4b384a4974259729b e66c1d 91c2e27c987495174020e7fa10f95acfc8dd98ae687815996631a8e46b 0862c0 56bde901cdc4a7f496672a20dd058696862a2db46b49e802521cf7ec2b 60a120 02a8707bbd320ac72aed41380c3e7034c58d5e47a5379ed59135e9c4dc d35ed6 090ea4732702b7ede905c4e0913cfb0f07a8f037d2fa2f5cac3c7fab46 dfc402 d5c24d812f1d26cdf73f987e9f03bf2e794c0b273e63362f32db48d4f5 beffe9 b5e56e094042d529a97ca91c4c68f359294554543ab9e6517e114ec453 6a4339 4e3a568892d82732893ad45a52ca0d9fbbe2d0ec54cff1e369ffb45fd6 4ae4965874ed0a684ee4583f094ac067271a0c56474ce71c7c286bad6abc61be 9a89b3766d68cadf5d080213b475754989799b1b702295b011a917eefc67112b cdcae3f8ea9ba8aa0252d73e8354223de6384e01a8a0d094108773de71820b59 874cfd123e08dfdfe8f39a0f2693d141cf73b422d237d91cbc994a1adf3c2bce 2024c8ce04539189a36c169d0717f95f10c75826d5bcab28f9c8fe90233f9fa4 8aa178fdd62a118fab128adf439f4f7a7a35c8dabe65e19ec348ca81bef6b534 6ccf14a3f545fde3dd96d67bd78f2753e156065254973fe16696a289c8813cb3 b34c091d1ec651a7bb39ea9a415fe22d2c647bbf6c0ad15099fff361f77263df 9220e9a080f85f9b5da477c800b717a285edcfac83219b3477816411446495c0 3810615ec20972e38c10707daac70f0f05012fdab3888e015b260ca7afac4b8c 0555296ee972f6920767261524ff0830f76b8d5f081b5c42f302af63af1bdc2c d23c833328f84cabcc52b4a2d3c914d98e1566ceef3c1ea07b4f6a91a85d2760 d6323ced9dc63157ea1534482d2e2a3fcb2890ded44351f9bc3019c9ce96d857 5013b0c63424ee363f6a5aa4ce652e188587b0b45b851e1ef7d4587aed5914a9 6ccd1328db030af7aacdfcb52ac6946cd9295dba906fbddedeefa694527207a6 17b69448debd25f02d24b0840b440eb348141fe5a8df3372cc08142ff59eef02 734edf078c11b50164dfaece1af10a64eb365b6017ea08557ef47573fcd9328f e08e7d5f41f86269c50067caa73c7a89caaed94778102aebeb3a133f8d2cbb51 011caa8b3015374eaec3bd0df545ae5916c2e59f6670c4f6e636f7bf0fa9ab42 f84c7a103944b768985c755947f568fc0eecdfb4643ef13bb7610a702aa3f8c7 77517b4603394db4b4b49848bc58fa5b4fe719986e8294186649016f63888a3f cdc23354b3a49eb4c5dab51e78b666049fd392bf0af5ca7209f90140eb73b8b0 71e27f0f2ccfc3d4518d52931b7412cde3539abb84944be8c853cd1566a0940d 8861396c454c0fe5995467621f9a398ddf444c906f048b8e2d69a2970697c35a 6c4fd05d102c349545d6d1afd973158502aa8e3b39b327a84ed83183c3870762 9258258d0c6823a9866b31dfe46d2ccf142a9fe6444f567aea6e861daa8ad591 191792e71dc585612a257538b426d283e2ddd3fc6bc74eae64a7becbafd2637d ed89413862683014869aa545b133b618cb061e58635b2f8794f9eaca822c9260 d48d08231aced929d2330c784ff3dc24a75f0c5dca382e0efdd6aaa1f20047b5 984fd6e80479ea4deb0bbcf7dde913d6dd4ccd07049fc8dce8ae8d5ade4bfe72 f832303ad07cc4bdb8c941b38cdee294978ce555c625bf7208c9847280a470c8 398b798e3882bdf7718b09a375f283a22587b2f2916da2ae256e0423d3afacd5 b20c752a6c4e4c5fd03b96691e8acfaddb51255e8c00649ee7618056df28b936 7739993625b471feace7bab39901296664b241de96663411e6e3638549eadf50 95953a368d37af5eab7496219d25d04f19267d690ef4e943936bec737709a862 5e0f35b994781c2559cde83b8aa5c3935d8127518245ac58b84d530a4f20c7cf f11b3363e2b8eb9a4282d8c096f3508ac67cf9ab6a1b0cfd69b333a32d83d49b cc874cfb6f79239ee15d6ddc7e80253ec34b5455a4ec6037931ae22fdba8ac2d 23aa6dcf49bc69a8b7300f47d27744122f8dea044b3bddcb481b73fe47170184 20e48f539b6ae1ca1fab6d99eecb98af8fb12594f1135088c866a70b505a1d38 a07bba5af451368b6bbaaa0201e47435f3646c729c5102805065e0bc4320bce2 9dd7daa3bfe5152b25ab83195a80d61893e490e8de8e8a7ef86a7b66ad41f416 e080a2512a46ca275d8ebea33f3d5339ab82855dc1feaddc16b4cdbbab3c6e9d a7e693d1bfef33a22fdc902f60bc852dc949df3f95a5307ca7735ae8037fa060 07b67532e310c6b116efcc1ccc5ba882acd847f1376a5b60f36507679f15cee3 b699579bf41989517309e8478dbba29a8196099c4214b0edf1775888d243542c 708cda87ef933454f1296e212c89daa316a4b2162e226ef656154f5d4b157619 99c330f8ad7be14196af8a83297f4ab56c041ef6f5045a240cd3c48be3a796c5 309f3539e70318b43a91685b433a052136f84d97311fa85d01dac8eb5ee627c8 a3fc68d2865c3b0dd939876245a59678870da31389b39edc465334f63cd725a4 514e3c88169df8784f131c8fa4962035f32f559f1ebfb4cb0113835cdd4652c8 8cefed4501f14d597f7b4adce53454d51998cfe7966a5fe4d019801ffbbd83fc 387ba15f4cc6543f8b1c47dbf6902232b5ba566e1fd5643cce03ee5659d5308f c60da7e3d493a516b14a48bfe30f5a987582027e4a924cdcfd799120c037a51a 150a81547faa52465685dfc160d43247191ec766cd7e5f72c2ba6acbfb71d037 a65a47b334c281351da22437e3b4b98a13668df11fcaa7a2377bdd6aaa531769 914612bf2671ee1415066de5ff06f7b9cbd935e05ca192a4e9a3c0909a988bd3 f07acb7c642ba35ba5a5701b82e7773359c8cee4f7e6215af22ddea254c455ef f8ec2b8dad777051870e21fb3daae98b851883d730fc6fc2f2959628aefcbb1e 1fa2ec6106eedb9a3df56f3a80ec4d93b080efc691878eb5cb1f96de5773134f 5d20b669a0dfaa838cff9a44d3e1b56b25e4e3669598e21545b483e4838e0928 c3a67ae2b9c1b00693e9ae271a54de648345a55d5cab55625d6a970e3fad6d78 3bb267f5324705618766e4d208b90287fbc504911a86f3f2ba93a40b3ed7ea84 225a8ca24da1b135f85847e76cf50e7ae77046df8eb8b64f77ef28bbf0e2d0bb da1b3a362aa3629bed6a3d2f7e08b891df160920fceac1ae42ab2b9b8d4930af ad60b1216b91c043db2a9b287d14e7708959667d54f4c063e1841ec078f7e1b1 d468ce27c7859f83f07a50ae993b9e7f4ce82c2c7af5392ab3c6915b58115276 9f5835c3f0199754afff4d05ca8378240bfb745801ab18f14ac17d1ac1caa3a8 bdd7844d4cbb82121483e5701b49680842fc059d2cc2a62771541510d173fa99 80fc829d04bb8a4276730e0e0b5389e1bf7d0de1a65a3814d01135ead704d2eb 8ba862703420a15598dc39c659a4562acee36966059e62486a06722b04252215 1a67c67e2e3a3f435330c5bcca0188c5d347c4df2aff67ecf1c98ce25a097764 a9b620fc77ae7b77aec93dfa8311689e86b15315c9e6b78feee564fc5bcae518 1fe0e7ee44f37e01bc54ba2f90ef5b5c07f6686c79ced006e0694978b1c7f9f9 ecc1b4f55768d9aec7307b5c0706b412e24adb21e973d5b63679abb8794ffc79 21e67ee9d28a877826ce7e06150e7f1ff648472044a3abf4963679c110b61436 ce21bd23ce70632b6e711fe596777591e0aa9fe596a81d98105c656cb19f023e 75616c14cda866b9b39606f3e1c3ebc860ff25ecc5ffc5ed3db995109ced5a5d ee669f9f66ea3069578bcc57f3ad1b25b8db4472d291fc108e1608a7cff7feb4 a93cf675f70ea82822650fc3a1f32961cd2831085b2965217b866977c3028afd b6f8d612d73d9f917b20dbde0d1aaeab8c86e0be3a7d5fcd2e9e5f9e201e54d5 3de3e9f369f014fa0e032c2eed05badde2439340bb7eabc7cdcbbdb6a8be501e 5465be5c0221a03f5b5d130f46c2bc04802ac5bfd952e51993574d500f19718b 0f3551a4b740f5dde11ca1eac8fe5a3b1d424a1ebcc00932c49ee5f6345a8bb3 5034865bf2a088ab7dd32fe5fd79f3c2bbca06331c25a733721fc3b649a091e5 ad1ebab1f438d1481920b659808d740ff1b03bad4c79bbad2dc9723ebf97842c 291f6b971beb4821d839c8484abe3a645dbaead2fbc847703862709fe58863ee 359a247d0270f02192c5cfca8c47300c08a1fb099f3771986dcea85590054678 92b3d7c9b4c6e2e065c9350c7b686a5d6b7961b098b8ab5e932884f5978c46e2 c64e4329b14853028980b5c5087b53bd2e7fd441855d0b8ebdd9189b90a939b1 2c64b729c29e05e77cb3c620dd85392d1f65d0bc11f73b3d2473c12dd7e69235 d13739efa8a1eed85f953bb4f1c32a3dd59cdac5c6d665d54f26fe849c947c82 1783779e0133907554f593a8974f7286506f78421191d956eb4c6e120651ef1d 99d14baa9eda692a67f1a2012709472a652949aadb2e2548b16b150edfaeff52 0cf092d80be45973e2cd582bdd692680a56fd1d4e8aba19c75a3b0cd687d1aa6 9c49b2bc5152a24512889699360b1d9c26bd40616245f26d5e079930ed4025fd e4599c930a41262b624b965208a4803061882ff659dd3a891f6d090590 84d563 412c761ab99a283ed1ed35b23980c82310528568584363f509347d69ad c1f22b 7637d1afcebb40cc70b3f0d0e0229767d99f21d8cacba326c284d7ccd7 72d3209154d0c29d6aea7fe3c2be33c53f7aa2ad6cea9b4e1d46eae9b045ff89 700c049210b5896d1d85036c12200e3bc1e2bdd821f9ea704c43a7d6cfa999ae 43a5e1b01460e838cf8615b5837da15ed26c8da04e49889d136e7a7aaaaf539c 553e897f472964fb28bf4347b4e39698799a8a0d3ff1f0d7b1b4f89d68ea7f8b 580318d92562d6161ca19432e34ae8e43e83e3ae2959f2deca4661429369a472 857772de9e053d6f37cc006f67089702893c939cf0d28f58f02d8d4482bf6207 2574eb94efae97f9d4e84b21c65e2ea6fbf4fbd8af40f8243462e4ea3cad0ab1 951df9e26634ece6daedee396111f30dad60c2116ffba45019e6eb5fd4776aa8 a3b1728a74b49bc915d6cee949b2c84d9d0ea3d638e25a0a7a0876179e31b97d e96c6e5c9c149ac2f13ed17bf49ff71e26b05ba1efcddeca2ee2e94efc8de446 44b8359c61dc2221a2fd8d952a926e17be8bd1f8774e227b022c73047151b42b f4e7d25fa7375903a9d9d68911531dfa2f5e4affa81b7b9e8bfdb07b886acdc4 1c4a69d66ad6176d898204476ceaa4d68bfd4bf538f7782601cf055a556c007d a31a3badd7fd6b7ebc8d439c7b2fc762eb09ea3fe6083762cdeb49b70cb014ec 3150776cf6ba1ccfb9c00bf3d13903f288c737eadcf9b705ae973d5daee3557d e22b822f2676b6f77a247bbb01c6b7605d0af3ea47e102988e19a72bd9fb3b1b 5503b317895f3468626c14a06314e004bd9f7ceead4909251492371068278164 e426ba5069eab2f4f1d407f9e70438b3dd37b9281d7a9510053acb701376429c 950b6fa880198b6c090fcbba9ed043fbd2dbcec83a9d8aa85409016079bf5c41 eba6f17619f39e6d1615e774e75c3117146fbc2fe371032dc0013e7831d8eed5 75b7ed140f634138752fd1d5e0b259d3f9d7f0e1b1ecfad35bdcc6c4415a9879 cf15d111d78eb725476c43ad11fab23c9c0c7c0e269b100dc7317c93cea157fb 0d593bee0a44bc464b1731220c71194a3f6eddd185609a94535500f15e4f9442 c1ea48bd3e54953d510247ae3fb6dd5de6e00a6b0b35407b04ce7c1d708a086e 0bd83a8c58d42ed8c25f97f96479412fd871cdaa0d15f860b3d72e860e71ebb8 45fc2b1ffca62b5566116d6f820b55d47e6202c389355f501e685d90d5e252eb eb352f08661731eda1e1a0ed32ce04324418300ee641a78a202a46f13308836a 75900bdf94740f927be09cf75e3b6990af513c26c5d5434debb4db5a8162ee29 42831d9fd5a0a31b34bf386a7abd4318d8c48a1ebfe22827fc49f717e0fa192d 2bf671f0b204073a3b4e11f68f2f21e7af8c33be9a8a904e90fee3798d72aa1b d7987f8346169d8df9d00ff9b863f56ca47c0d2e411d9fdda2888e2d89c71faa bf17093ad12b84e302d2b608fd945fde75f7c79c0b50338fe231b3239168feed bb6962355535dea48625f5c4b9d41e962c3e683fb120eeef2348797a25 9a87f35f769d96930fa44efdecb94a3653c6e9e6a8d9a80f2c71b06c94e50f7c 4f0297ab1753d51909cacb30297b8156f01b9ae7cf961eb465c4ca6816481532 0f5a3c0fecc30ffb6c29f1607c0fde06743b1cb930409c775f6e7f2c831eb47d 7f96400df53e5c80751ec8b59b7536c96aa2a751f24cf71906a7204d0995a0b5 3d871cbe434ccd5605163f02858197b054b8c48e95aeababe604e205cfeb8370 6db4ca167d583ea1d7c9bd9373c7b286687e4f849b28ecfd7b3e2932063cbded a798414789e68d0cc504f9af1ae50e104b02ad3a7476070526b34d5a43949ec1 7a261b57958524660e9f1ed4d60dcfeea91a8a85cd4b50aefc56351685984189 6e0cee62c03c06530f7137b19f09b938588901204d67ee918c64281049ff5bbf 95ea7d5484292805ac544af6caea730f0dd5dc637bce543e3b575345ade716a5 362ad2e183bf1daa9aebd643bd19cd9db21864877dc908ec7761449bbb4e4d21 c5816903e2662d6879fb4a9e56742bd7c0ec5814282f3bc473b753b69d4625c6 87b9c95c71450ecf2a38b31ac82e2d46681bbe1ffa9163d24387f94f3e76d9ac c672dbb4ff90e681fc1253c2206a856f00b3946ca07997f045665b18ef9a3e84 5624339c9c42546dac75e91170173896937abad350042f66d860fbfbec8a8dbb 663c1aca29ae8676d7cd2883bba7d3295644aa5700935dffaf683d0e11461565 e5ad21eb828d3f613a8a37b7d57a4e48b96ea4133bd245ef3ff6d13c0d0ac0d2 f68ed012252be8283ebdd73b9c4acfad2053a1aa3e0b3518a2e1f7ff9f7351f5 a4585b35490d938449eb8b708b4048e069f50095eba5304028adfb2ce67347a8 0330181f64fb21559acfde71a0f296e93b04abfc7638427fbb56647aed50193b fdb606152b34fbbc8f0ecdb1f2431d3237a7fe2740f469fb9bd07cea10da14ac 025c83628a9c2aa30dc69c6a40b783d04fd88e36685fddb86ec9c48ae9da62fd 75e35ab93da62b827e0df3ae5409ed618b412d9c91d78d3c68ec256ee8c04e5e 7bd60176569425b10404f44d171bf93340afae20cc5e11e562a46f2965e866cb 04a82c63ebc11515546f0c067512625947f94bc2680439809d95384edf348e7b a84cdec002a5d0a49eab45f579a0c11df69b2bc905a9366cf65c0216cb4cb0c7 6487a678f97d7cd02dfb4c54139108ba7a0adcd4fe8bab3d099c47b550afb40c f617c018d9306ef5d3f52b37baf21308c4d33c3b1bde65b7a4711ca3ef594baf 88058b71bb1931bae9bcba72a82e0e1039320305bd8032029504be62fb6acc18 8e6c05ae5846fd90910e29ce3eb2ac2c08c83b5fb659b1a0b44ee6360ae5330c 1e2d6aa7ab397661780a11d99a0b805ffdb442506f9f0645e8d1fe1eb1b2816b c3a7f15d4afeb7f5f0d7012e95298d13229211da09ac8a7fa77f13094a7938f2 041418ae07328db6094022beec17e51f5e586718cb24c59cd795c3c72ee4d34b 4b6fddc2f20b96e14388bbb41281d1511b0387a809bbbf7d596af1b481fe9391 aea8618df53ec5377e7e7512364804fea1b8f1fa23315e3ae5b9a53dabde1b10 9788462f8f4013f305f7ae32254a359fe2af3f7bf33e76dfe5c8df018349333b e9696acad68be35c80785c50aa00de95896306f75c4eb13dc4dd2b10f0992585 78a2cf069062ccd1b6cf1606d6bc839c8842b278af76b63196dd1c7970aa135e e7dd7d867c684c68874a8b7a25b75e2f0a6117297f439c5e1f493c0a842de6e9 4e679fd6d5a81643322d6968a2e4984b3798960ae8651124c94791c0eda51f2f 74a501fe8127fd8e635c89be5d98eae420a2a2d29fdbd67d60c92bc62c1ab128 31002fda99def3259e8d1fc0c6647c0281442b80793eb7fedd9b199b6946e8f0 6b174a939d41bc7bf7daea545c223971124f38e79143c6f82d12a2a13993e05f 6a315b6b9e08cda0ed3564b3829d87f6d0e212e188246b9d305438b1ac6d42fd 29f395e3a93819e6a134f58d2223b6a856425467d9bfaf4ca79bc846acb356f2 5801bba49bb67c9e5887108df9786fd13096b6136d7193097e08cc37baaa7eb9 b381934afb7b3eea7d31b020f6499e0f38b64c48d076420aecfffe2e098e1698 4749b96eb68679fddd503428d74208f0ba4c54ac6f2938974cef9d5fabf2d4cd 9e7b2e4d2cf0aff705726045945e17cc04879cea2121070a3f95779d9c0f5ecd 2537bbea21d2f143fd36f123a4cf5d5ca4ac1cac2361916a9809eeea4e6f7688 c66acc4b24d3a44520835e782dd119d1be0bd92fa6bc2b4c89ea150a294c4d43 dc11f8ab1d70b0dc881da57b1f66df75573ade5018e518a3fe881983d389dea3 4c7df91aa04576517a5f890d54e4bd99b426452fce0d2480698fca0626227f98 1c1de2d77d5f82ed33ff1b7853a9c2886026fec031b2dc5819d0209eeacf63cc 1f339f4b5fdb96bb0c405f2f4ac373ea80ddc71b4d820a535081b762ab0a077f 29418c2f305082059295b6826fa8350325b62f6157e4fc5113ab5f1318c5588b b202ef1b601d79573fdd85c941c105e11f036f7150a0c0265f4b3b81d308c7f4 dcdfe23c1c347b8c50bef2d82528689681508b63827cd5d2ac87e728bd3212b2 d77308424dfdaca9178c07dd0e7c0349d4f9e6992e1dae82858584f50fe921e4 0bec9507591a67af4bbca89224e8b9e2b0e0d83dc793c4dba0cb5db4dc05c6bd d81f39dd74ddaa5b764e9cc8944883a177e2d52edd230f7b9967d03a1dc4abe6 8b927ee95be442bea7405f3591fb76742943a3936bdef33d4322ddf164f8ea97 63edb428f3f55dab3d8cc1a4bbb364ba7e282024ef4dff6914b185613d8c6d40 0300002257ce785b52001c4ae22035477b6cbf1dea12fecb72f52b91b3eb408a c82f55e28a571ea6bb5844e14bdcbe65c73b03c7f6bb7d033292e45e8ebd6da9 801c82838335f3531787c368fa593a96a26c3620fe6df7be0cf0729d21da2030 a678506eb6e2bd69d8c4a2126e8f7bec7b0279f6f6f5ef9f0e2228f5b2c9288e 6685ea14a2356b23b2c6b5c0b0f640b128dec555cc44a3672d8c5a8ead416ee6 24b70d44cd833a1560511e26f628e39c6c0870bf8403456c23cefe06aa6fb595 39755d362a0c6a01ce50e922cf891a5aca459fe48c76e376bb0e4f184db0550e 366876aef5c3747237f4397872b68fd29373500b9a5fd76123860a2ca5107a7c 2151d7b9fd09647bbbc0cc234c963b65b737fdddf27b05bb480beb5c5c716eff 230dd1b210cfcb23ba4168f09e3b919748061948d8102a04e7d7871753d32eba e8499263b6a059e00d4f5943fa885e74470ea493527aadc95433edc856919c29 3d9e0f15d7b0a113af1e0a4de7051a3fdb6a4bc478b5c14a7962dd9b22efbc49 b1c21cc6839ea6e883359315b6776dccb416a7a32ba0cc921e28a9be37658a8a edee70cd7c81d57f16195b46f6fac52be21eec34b70178e375062a89f8241fe4 2342111de77254ff94d5fda08e6e27531879f69affd1d383b8fd06021b82bb30 ff26b2ae69eeea6fee2b5ad2fd396abceaf09dbb2fbc1d9252b4481f9d0153cf dc2515a1a7e316736d741d0344d7e9b8a907230bb7f76e606447c015d12d7851 7d618c8e1902831d348642cc87ee4fc17b7124fd7ff1cd26cb6700c401832c13 92fd8b1539542b853d706dc4da31409511edb165ab94aee9b1df3d94d1ca32bd b1f9aa166fc48be023b1998e88d9a8b0cc86881de19fb2c3eece5c3a62b0aac2 c85282ddaeff48e9542a0d7c9566b010ca37647e0ed058317977af06614d52a3 576bc826313874ae24b371bd48ee72e61c370ddd072ccc10aa52fae11e2506d0 287e089595fcfdc6d7a61c910c147c4ffa3dc7bd6d144b06d93f4e5129ec0c73 0b3831b0e2efc0ce5382e3885b3def9bda7396d4678ffef798a003b201cdc032 c5ead1275a3fdd3ab2d6f55ae0d3a8a0581ef8c7629f1da7a7028a34cb8aeeb0 c77dfe1a97287494a4fbdb2bc3cebda6876c000e76bf454fa75b38e12f5112c8 a06cfc5d3fccfb05f3984140e0b54c38c47958f28f5147c1d9d8098fb0bfd4e8 a7f8c6703200e4ccd443286b7b2f13a642313a35b36ad8da51e50a47cad31d2b ff674832a6e32587778db5b8812060217c551af2900b3916f1611258f786c1e8 09cd5767aa5f2a376a0706d6490d35452b3b9912b62ccbe63e36f9e51b71a560 d420ab26866e171f96a1014fba9a210460f34c17966600475717868f7f5b7693 11b63b50e2146895fb6de60d9986c029cc47acf073be891efe108df7106fc9db fe93ab559dd75dadfe99fc945f4a0f45339268931be5a4f5b77270547ff326df a83ca3a21e32605840ecbe0ccfed7461602cc82f36a3dedf60cd3bdca1e9b89e b2b8608dac2c51b647d045a25dcba010ecc8a32bdae8cff4ed6720e76ca7adb0 5c325723984407037bff58f826b8992caa953ff7a460d6dfe91ed73b3d405eac c9c3a71e37b077d38652f8dd564fe92d5f5eac33a08843e863e804db70c91f21 4cf6204f1e7f48b4e53c089ac01d1918efd6f74d9fb7ac63ec040eb6d7be779a 5d7e394d1ccb965ce52d0947c811140e03abd03bd49758e2025f313af3545fc0 dde4398ddf7661ae8efe3be4034caba165491072377697a27f6d5d687486b55a d8332e9a5ef0bd3edcfe3439aa41dbed30427449926b2f989e8959e5fc5167f4 53bcf58c02a5c777f6f795496b4bd6c3cb2bb32028367cae609ee02b72805175 b8e77be2ca9013433b9d7764ae0970afc99805197433cb7fc0a7ffd38f94d760 d5f48d6d0da77de3bc85aeb620bda927447760912c8fa26b0f6da125512ea713 c300173430f832c0e6c6559f4f58b849f758a5ef0a261db0370f8a218fcbbb37 08115bbde0234ce63e06463d117d3558b7138b4fb94e28c6e7dec0e5f6ff6e58 0aad553da13f2a7cc197f5fa29f663c5ab357e24d8f71ac3872d784cc807c378 24b91394ede489c2bd1d87f6051afefa7867e63026ced315c4b5eb1e71aeac2d 3900ab4609a5beb31b302cf3c0b186e2ed9675b7a971d5a2ba3b05c8ae8cb1d0 1db67ed41d184aac8e10eb7f632b7f869e3e675cc294aacff8ac5709afcfa2ec 2dedc6d4b751616c439be820f549a1b3280d47c031ec2ccf06a9195ed3c59b20 0c2f1d1bf7cbc72d34e84c396d141ec4947c66bd09b37149ab253ba613e69bd2 6c9e9ebd54f94707d718c728f37f689517ce0979a7cdcc4f813f3188ded65f33 b12b67fb52fac3a6ffcdf1e8eaf62d91a4f45735afacf1bab6cea84ab4fa4925 867fe361f1da54c6c0ece33d1eb505aaa3a462f1a013f2fb68f5f8dce24becfb a251d85a1d0f748eb13010e3cf6357e432eb8d0ab6310c512468f06bedc946c1 04a739e2d197e452a1227c3f284795992d91721f592db624886ab6bc5105d7fd ebff0d52967312e57730c46db77e65a360052ca4958d27f9da0625d4767687b2 19ee1762436927c106070b9dc5bcf2383a72a2490ba5ab831144653100f63f71 07d873404366312ee72d3269b51813b12cf7f6cbc3a4487a601acbb66544b7b4 a63cd1cad53972cb48a9e5131e578d0486620532091ff10a75c228be1e6b8cac ab73da0a50420a81e02f0bf8c24acc22539ae273aff0dff2bba55fdc3a46e4ec 57a35e36a1f67f4cce13126c093562e5abcaf52401b58d9e76f41212ff42c4d6 9f52c50e14531f06d08bf24633131d8b119d3c58352d6d349c145abc9eb4fe31 a5aa4fb563ebc539478b338ae7b2bf49830c9557d89d5b9cf6a72e688e878d0c cf058007ba0a3f77234f2252815a29ddd31b7965d35aac5c6ba161ac824a500e c03842831e83c98cdecd409160cdc68b609ea9465b73c967b555aaad23484004 f72c97242263283e35755663627119337445537ef84ec56af26e478d83d770e7 1643d0e0d1f79fdb3e1ab035ff14c9192757bf588ff0bb922225e0f66c0ac756 add8707b4c83540e400be768eb58bfbee3e1073ada7de22bab9e0f2ccb9143bf f0df83509e8836d4052d0094cd525d8e18638705446bb84d1cefb138a07aa18c 1749df6aa608f9e0e08ef3f027c444df49ead1bc335502d828a3b73f9bfc894b 90e91ef3a398ddc2a36b0e87e170e7e7fc244785f6d523ef76be228b56c25ad0 bbebe76eb0baa983ca9d00b8bdf55ea9de5d354af9182f7f75737ec828a58ba8 8405f29953eefb23e23694a6eaa729c260969135407eac32e412e1e495e2567f f723c8aebc89927698728ce34989a3cc063c0c2d1216a1e9379196d1fe8f9975 84d59e40bd8cc015eb7edfd968633a62067597f30cac6132bfd52a5cb5dc6809 152a848e2b759209aeff06c02c9b909cf186c80a819b5cf7fbf0f2ef2453d6ec 44ef73e3a65b0a42e0d6d949fd833e26a3572a38d1eb73d50f0285eabed7f33b fcaec49652fe5e39a56ff6bf1459e91aa2be985465aa15e8be473c973a66828d 4ae25ad28a889cae96e885d1dccf4ab5e552fb4a633b5aad967fcc8eb858a54f b70cbe639f6ccab2568419c3fa29a25a2d2e677a744c13d328c075f5fc4a2f29 40c70ac063d55e6fa83fd4fcb80f079b6a30e1cc1d91e030c4c8347ba3d978de bcd891dcafb5db4dd29db7a859a3a854ecbe07df5368bd9b0965de36cd64821c 8d0192f762385efbaced4fddc36228d67e8bdb06e41554dbefa508128f1fdc3a b5cf4055b876d574750de01b76f36fb2379db994a24e24b196e40ff1248826c9 0fae06894bdc49e11b4a2f6a89fc9dd7a71591a61d2e8bb3c20ae10f0e4bc579 bcfebbbd844b83a2135896d5c93116b7c8e7081629c95ed837737bfd3735b364 d747d16b4a7a841bae9d9a253d0628fdc4f2d455f6efe6551faa3857c57e624d 2d334ee48d61eef4f20fe099cc47497bf35a623df1724f062a6f556d953f8bfd 185023edc3eb2684503ffd9adf270ec8652c6e1f2ffd33509c1cbc67dd6a79a9 dd140d80f56daf3b886fa891b06644cf01e5fe453ee5a8caf7384851a44dd654 b4348e0ec6b4bbd0d9b405bc9912bc25e175f98086ac5c35d0c6ee118ddf4728 48da66499c5c2f9525df655fa315487f5d330f63fe3c864f96b18af4bc1a44e7 44dc40c9b0dea9b2ba2c4442dbc16a7e4bd1828a62359e9d8a4043d8c687d977 b7c134ceb061b971427d12ca62df3231d9c02b6f3f4a430afc23170bbc2ed118 012feac64a2ecb85fe2b3ab8c798b917dc163ad55be5b21ba2327f97872540ed 72f5af004c29ac89224c01a2ad05a5278e5186afe9d21ce0e85d8fffb13973ed b2b81503809c57a5cd59b9998a00c01f8ddfce0c372a4447b14e9db50ddebfa6 c9d483e84e0bb77e6ebb18066b9509c22587d7d63ae5ca27a36c4729d639e3cd 5f149ef9dcd92bd58a3f0667898fd117cfa1c53f1fa49c1df4f698af8c663b74 7ff941ef597d32a0eb1c5be2ea3f431c5ecdfa1e7f8a0c7ef8fd43741a651176 c68c85abcbcb001c079a383872523e02fd5cacce7f81ae187497e132febf207c 48ceb8c67937f3df4e025a062766dbe8ccb45c6f4eb8e21fd5cabdadd39d449b 10b7d48bfed687e95bd78b8eeccadbf4549b37830da02211798af979d6ad1fcd 31972fd8458055a4d6ada0931a719ed50d283b237684a067badc59cb067adad7 58f8f28910cf820322ed968f16b607ec8dba3d1662c2a02ee3b1087e597c122f 2f927c5d526fe27410a7edf0fa65457a5bc6185dd4939ccef63cd15e36bb8908 e5b3ced09cf2969749eea5d3874de73cad8c96464be6dc9c68822188c2972393 096123b7caf39e2b085eb50420bddd37e42a0adf6aa7a17e2f807ada797ece8f c1197a767c4f8b28ed797b6892b42a7591fea0b61e234a2c5f7e6e639c0c5cec c1fb1c7cca803815be14b3048dfffb77ea5b1bfb2ae13754579f8d28b59cd513 4b188d30d436b08deb9701617eb5831d890444f889f46f6c8b2d817f57b7af20 ab1fa8e0455009c8fdbcff8c2a70b5541f6f2a152bc78cae565b333b559fac4d 7fad4c0faa84c47fca9d99954cb7f3a8fe150e00f38d8230fdf4d51e58edba92 c8df2d16075dcf2e6b1cc636f16ad8785ce822ae8c74db7ec061f3c1444b81da bc9f1d674aa3864113920279803f931ed492f2ebbb3897541aafcd7983955c2e 8a9a81ff2d9058cba575c9e95768f3d42742ccc7a1b5b7522a89a6bbde7b9741 bbf2eb218b578d7818f8bb1b24920f54457c048c1ca542c762e411ffa7bd6704 e976710bef9fde5c7d81006fc3b56aeece70505ac9d6e42193e09d9f9c2e680e a8eab3c21c490687604c0236261885eb91c3ab8883c9dc036e1d442965e0c34e 85e1f8ea412d13fb2d30df4ee2a5bde70e098b9747bc95e69145f6a4d3db177c 229ae50ea9742353849e668aef1d3d1c011f21b6756ada17c441e85b36c97ce4 62c78fa2db33234fa65c1847b72c3df1685b0395b5d9ad0e2e8366d0024bd9f9 ce95b35a8c946432fc84e07a3cefd2412f9e4a94b71e45056db908c5f9df27b7 d41ffb87a84fe7bd4ff269fe198c6ee85b0e7c8dd8300930de814407707bfe0a 567e3dec74aeaaa8b80cfd2ddef3f2c3cdb0039f23582586be2f486be0291ae7 49cccf1c25f8369e08b21636d6f832bdbcce963e04e82ff6f2fd28266c495afe f87822514e8056a3d8bcb061fdcf02814bbb874b4198b2f9bea6e8005bbfb0a1 8dcdd3b5ff30360c91ad8d173f7ddd3aba534bf1b4f87d1623ad8dd6cf1b2a3b 71b2ba68df711b5bec03bfdd52d6bc7c5b9590edcf25b04e0a27e42f6f9f2905 2ec726d6d92d61488c34a67afb9fabd24de1b1817f7a408697afcaf18b24b68d 0f7dd22a55fcc925482bb4e9ae07026ecff810254f76bbf95f8e9014d40d518e 5107b9be351d440907e5035e4eab23fe9f05a9cfb74dcd125e823ab57a384f45 1bc0b5b7424e1dc90f8db0fc36f2f0c96c099928781818312f3b529978809049 5da1e72ab8d0fbe6697e97578905f8ebcb39c0587d1301ddeab9e81506878101 a9acb2f0ad23c0db55c0c54962b3be812eced761c6eb51eb6c314a3580398e45 51ef919e039a1b5e87b7b4e5d0cb9ceb3c37820e97b56acebb8d771a883a6990 1e02c73af82dfa4277fd8e289e5f31dff391ddaae3470e95a31b68f0884e7cd2 ca4db291b56c360fbfc905886c87d467a95bf097c5d99ac703db8a10496e5036 921378e098c89ff2dcc106c3993e273ae9df6d633a7b24974377baf08450a667 841fc0455c65721cbd69896cecfc6e6e10bdc079131350093760cb0f70ac77c8 ee11975e34b40e2e785589b11c9f82852e7d7f6a5edeaf233a280bddf3af508c 93f0c05fa99d0203d0edf1a7f9d7668316c506ae1f8b43e4414c52676ba3dada 6f2faea91e67a0d8ef882ffc6d056412ae36cc1707d00c0dfb8c5d1b44c851c7 97b2d6a4d594f18e1cc0c0aff7a31c0b45bab51e4734fbdda155c5a5e4569350 8b0699ff515c1b486027d87577438306eeddf0bac45bf4d7585dcff019cddeb2 e39bf6c7220a82ed7f8dfcabcbd51459a1bd7adccc2dc1c84cc2522f8e3e7530 774aeaf9951bebcdcea3bc573929811a62ee453b3994c0088188535c2ea1c7a8 4901ca228238fd88ac5fbf0b98b0b3ab4af641003dc848e6a244d9ad08ee1a7c 0ed2d4f6f3470c9ab0892481c8315bfc4e5a939a57f179078f17009f8c385914 a5f2a1f7eed82bab0486517801b239c9335093de77d0d337692308295189aa20 58c6cc43ee7f2b21743366d8b32e1630ea8cec090494b4707a6346a539ccca72 a7ee1a07f31e909d126c1ad2c5b3d14384c862faa3931f505a32d2378044601d 196ec2576863b149d8565602aa21564965c7e5090f52a02f8749479f9f47a1da 748b1d619e7e637854388c5f6fb876d9c6acead5cec880903acb37564dfd46e2 c2a29e6b73a0a21eb1fac6a58c87a2522539934ee1d30b4df9a9afd014e58067 7f766e075e78229a998e51ddc1d524744960b5d67bc78aab1b898a910661e356 b60f5f2bd719d574c71a30bec81cd3c14611fe826b04a33bd580527e89260b6a 0eb7cbde59ece1ae067c8fcc4d2bf24d447ff88bb9c82e9a1cda6b943b6e931f 35bd85f7b69e41346982fed78622c9f6cdb985f723b1220fe1b4f9aca6ba2d95 80c508090949b14d5094aa9d76c99bfa1f13d300efb5eb97c8d905893e42fd56 50c07727d45261094104167ba9c34f52d73c353ecbc1d515177cffe0964b1a65 f15b65159d53ce42dab65f1d78a010308c43fa8b4d46b24ca3e757bbba3b2fa1 ec9e55f88392973a13701509b31c3e550dddb2b4a89800a94ed6caca96f99675 4930d8fa2fcba6ff93ce96c277185fb7effa76ab82682152a6b0e475af6ea7cc 3eb4fe1944c48ec451be2cc42f9a0088ed063395fba88e196cd957f366fdea62 dfe33b6edadbb860ec1d371af855af9910bf1450bde26cbda6a8debf3b761e79 ed0279e1753e29942df342ce946d83dca3d97fa66aac7e7627f8ad29e84611b1 |
原文:No More Macros? Better Watch Your Search Results!
著者:Pham Duy Phuc, Max Kersten