結果

問題 No.3050 64Kiエーカーの森ゴルフ
ユーザー 👑 hitonanodehitonanode
提出日時 2019-04-01 23:23:15
言語 C++14
(gcc 12.3.0 + boost 1.83.0)
結果
AC  
実行時間 2 ms / 2,000 ms
コード長 41,248 bytes
コンパイル時間 1,630 ms
コンパイル使用メモリ 166,332 KB
実行使用メモリ 4,380 KB
最終ジャッジ日時 2023-08-18 02:33:24
合計ジャッジ時間 3,778 ms
ジャッジサーバーID
(参考情報)
judge11 / judge12
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 2 ms
4,376 KB
testcase_01 AC 2 ms
4,380 KB
testcase_02 AC 1 ms
4,380 KB
testcase_03 AC 1 ms
4,380 KB
testcase_04 AC 1 ms
4,380 KB
testcase_05 AC 1 ms
4,380 KB
testcase_06 AC 2 ms
4,380 KB
testcase_07 AC 1 ms
4,376 KB
testcase_08 AC 2 ms
4,380 KB
testcase_09 AC 1 ms
4,376 KB
testcase_10 AC 2 ms
4,376 KB
testcase_11 AC 1 ms
4,376 KB
testcase_12 AC 2 ms
4,376 KB
testcase_13 AC 2 ms
4,376 KB
testcase_14 AC 2 ms
4,380 KB
testcase_15 AC 1 ms
4,376 KB
testcase_16 AC 1 ms
4,376 KB
testcase_17 AC 2 ms
4,380 KB
testcase_18 AC 2 ms
4,380 KB
testcase_19 AC 2 ms
4,376 KB
testcase_20 AC 2 ms
4,376 KB
testcase_21 AC 2 ms
4,380 KB
testcase_22 AC 2 ms
4,376 KB
testcase_23 AC 1 ms
4,380 KB
testcase_24 AC 2 ms
4,376 KB
testcase_25 AC 1 ms
4,376 KB
testcase_26 AC 1 ms
4,376 KB
testcase_27 AC 1 ms
4,376 KB
testcase_28 AC 2 ms
4,376 KB
testcase_29 AC 1 ms
4,380 KB
testcase_30 AC 2 ms
4,376 KB
testcase_31 AC 2 ms
4,376 KB
testcase_32 AC 1 ms
4,380 KB
testcase_33 AC 2 ms
4,376 KB
testcase_34 AC 1 ms
4,376 KB
testcase_35 AC 2 ms
4,376 KB
testcase_36 AC 1 ms
4,376 KB
testcase_37 AC 2 ms
4,380 KB
testcase_38 AC 2 ms
4,376 KB
testcase_39 AC 2 ms
4,376 KB
testcase_40 AC 1 ms
4,376 KB
testcase_41 AC 2 ms
4,376 KB
testcase_42 AC 1 ms
4,376 KB
testcase_43 AC 1 ms
4,380 KB
testcase_44 AC 2 ms
4,380 KB
testcase_45 AC 2 ms
4,380 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
using namespace std;
using lint = long long int;
using pint = pair<int, int>;
using plint = pair<lint, lint>;
struct fast_ios { fast_ios(){ cin.tie(0); ios::sync_with_stdio(false); cout << fixed << setprecision(20); }; } fast_ios_;
#define FOR(i, begin, end) for(int i=(begin),i##_end_=(end);i<i##_end_;i++)
#define IFOR(i, begin, end) for(int i=(end)-1,i##_begin_=(begin);i>=i##_begin_;i--)
#define REP(i, n) FOR(i,0,n)
#define IREP(i, n) IFOR(i,0,n)
template<typename T> istream &operator>>(istream &is, vector<T> &vec){ for (auto &v : vec) is >> v; return is; }
template<typename T> void ndarray(vector<T> &vec, int len) { vec.resize(len); }
template<typename T, typename... Args> void ndarray(vector<T> &vec, int len, Args... args) { vec.resize(len); for (auto &v : vec) ndarray(v, args...); }
template<typename T> bool mmax(T &m, const T q) { if (m < q) {m = q; return true;} else return false; }
template<typename T> bool mmin(T &m, const T q) { if (m > q) {m = q; return true;} else return false; }
template<typename T1, typename T2> pair<T1, T2> operator+(const pair<T1, T2> &l, const pair<T1, T2> &r) { return make_pair(l.first + r.first, l.second + r.second); }
template<typename T1, typename T2> pair<T1, T2> operator-(const pair<T1, T2> &l, const pair<T1, T2> &r) { return make_pair(l.first - r.first, l.second - r.second); }
#define dbg(x) cerr << #x << " = " << (x) << " (L" << __LINE__ << ") " << __FILE__ << endl;
#define FI first
#define SE second
#define ALL(x) (x).begin(), (x).end()
#define SZ(x) ((lint)(x).size())
#define POW2(n) (1LL << (n))

int toint(char c)
{
    if (c - '0' >= 0 and c - '0' < 10) return c - '0';
    else return c - 'A' + 10;
}

int main()
{
    string S = "9962A5545C16352C3DE73763286B087DD3ED53882BDC8C6263862F0437D8FDA3F5D41D98711701BAD19AED830DC0B3B4CD83D91CE5400F3A4FA6FEA0C3F0B7DD336D5E4376DF5FEB4D1869EA2E609D2AC56C83A8914E6F4E6DEE1956BF90A262CDDA0778897C0D98E77E476E7E94AE04B1CE1022784B02118F0AF5457E0B1888000681E4A6D26EC22F02D3723184555029DA2B1018521D1EA31A659AFB485D98F76C0DC255E4EC02E570596957518ACDD60FFBDB2BDC9F9C4CC687AE1F9C738897A1776059244B895F20F790DF5DFB0CF7702B25AFA43940531A2F06D68C93DC6347FF3BC85904914B714DEC958A4654C94A9DB8268AB39CA594AEF69935EBD502416D952370CC3A1F002DE4B4DE407570FC4AB0D2C16E53831F2ECC2CFD7FF5526B2E163CBEC847B8544422574E09D888263B9F11EF4887E3271D3C36AAAFD68DD8AAB6277FD96EA1860D6177C9347FBA371C513627A9D903C2BBBA8FBF49CA9E00D9C2AFE42CBE0A5F1E64777AFED7D2820C1C772871A83AE6F74F4D4A09BA590D679780E9540742176219999D67562B4E1B6F19142E9E2F8ACDC8CA22952B23A1DC65D14B5B5C24D64FAA1950C02A363B061ADA567C3788D5D97D441A02E3D567A801CC94148CAA25C2D0D0B65F1C357450DAD71119170EC73F094D40F29E43782514C272BF4A674C0CEE07BCBB0315DF6229B645D90DA1E8FD18C4BE95D6E56CE540E1717D345F005D6B11CA87A6110305D40D4855591D186BA46D16694AFA1475EC45C13DE93481408F392B3BC46B82F2D867CE73B6D9465F9C8584AFE05D28FBAE683059DC0BFE1F5EBBD6CDE8399C36E6FA229118F87C249FB47D4BD6A9E9C49784E6E8B845BA7A78BE48C504E9844F7E2F5E1D445F5E520049F8EF1CE3108912330629C64B922F58F81E8720C7F5D93DF81F38B7451B1984317C90CE81BEFD40511CE76BB3342B80532D6BF845DC0FF52FC469E82F9F878C5760A126B98626C40D5039DB9D67825B12E169119348AF26CE389326AB8BD4473796B30FC25B0273EAF97D81E2CB0E15D08DD1A4CDA566FD10B62E16EB58A6AEC0FC21BCEB038FFAE78A6E485C685DB6C804AAB91881F5406D199A29FAD1C61D558956F936FF94537F5E3F439EFF42C5985A3B2EB27B7C2D6997C74CDFA53327423DB444D390CA1FE81864E64142DB0E0214C1FC99D7426349B0352CA63A6FB8896E88144A43CC1C85F00E057CD5DBCF71F09DDDA9E79237303AC956C61D5883849727BE1373BEA77E45A617735B2E1D2289E021D904D59D82C55A0638B26F5880E6AAE66B125B65573819FC80EC06BC0D46EA600435A4C5F5B0FD29FA1162CF46E783F7B61F064F0813BF4EEFDF36BB72EB368469D4E2391265C50BC55A15490F8BD4BFD84C7104C071289F37FB8C00E0D73B4B6AF46ECC0B40DAE07AE16B999EA62631C351B0097092534678476495ADAF8DC2E5497BDF0655EE62BBDEB2872E3D38957433B0F1666DC45504077955C867000790EB7C9F04139243F6597C610E1BA81D0281BF43AD64572957C7AA0DD49FC649BC3582DF44675AE73E6352578413404DEB63CC8148ADD8C9B283F2F9BA19A4BF70A84160DC8144E1259B8B4E3789A79702C326FC19C44EB94651EB0D28AA7819AFCDAA8872B4FD1462641E2383E32E24224BAB13F6FDF66E9FE28EAFEA31F967230E7FA97F73B829B8BA2F5E5C5F20818CF1A7B25F7D2ABDF4A55047CFF3CC4D4C57BC7B9184C1BFC2838026729ACF1C2682BCBED1C255A3F1800BA4362C70EC0D72D8AC3E1788BB51F47537E2234CEB44CB4BEB28032411C0A94BA63FC5C2E578A956E8594C045396993367A1BC9D71C19F885D6A1E614AD4CBE2DE04300DCC9BB09672D9DEE58D9451199E2916EEE02FA2B51C8C8620930AD243567051466DF1DB4B2CE3ADA3A3A8DBD6CC17A8C035A2D550C5979A179DDAEDF4BBA8A91D11DCF35CE718F3A1542953BA4FDEC67072D71054E2FA68633851294DF68DFE348026B411BE069004AFC0F371E49D73EE8F085D008141F54C1DC04DC8CD73164FFDDE1589D4298C681239E215A7BB5B683538C11F317F7A93A8C07A03241B947794AB3FEBF86DE8B7B997944B5CE7452F349BCC23BB2FC4B5ECF334370AAA10130E8B910FB92E91868FD33BA5F21D0222DC41A0F5BA6B62D72A5D60152C633C11764238E778B1AA11EA976CC94CB7F89C107424B37216BE7E414657CB80851B7E99DAEC72D23BA4D05E90FCD788C9E2C75AF5E26330FD32409417848D58E5343538671A671AC590D964DCFEC15291F5E36DD6BB22BFE7C3F7FA0FC08CBE27F84380C7E8FDEDB5F045A069A3DDB6154EC96FCD94D32CA1FDB588C5685F50F77AE6144B56A727F34B2C73E81D0F5585823182C6685DAC15043C6EF5003B180402E3FD7141E469D76D812456D67D882F88A62A3CD5D08800BCE20D0A85D3F18E88C403AF33220BFAEEEAA6D42B18EC9A3A61EEB7D8D6F65D5F8737264B3DFF63040012ADD2DF90844E1121EF301FCC8FFB7D81EEAB548BCE49DC3B2F87B5F09554852D53647CDE85C643F68E2C6E4F56BCD91E7E5B6E441AAA1FA0D95A8C6CB9898368FF4CEB6F15CB6651CEE3ACCB4C99D7EBE9280D3C611DBBE83C12AD2A6FF4984E5763F97D7E5D7B5BE1880E62E90E87AC223672F39E561022B4837407C1E774C612212D5558A1208C92D4FE71A290AEAEA5A0EFFC865AB9F1B7873C53E1D91300FCA60DE8B3644C5ADBC4373424BA4792FF87D95BDAB7C6DDA5F5D9CA2134C49611ACAD0C6DD4B3E13738BFD8EFD15B34CD10B7C91B40E590D725DF2853306DC8EDE63ACCB19AB5D929A9743B6813CDAFDF6E3B82FABCA75CFF04F5201588EB96AB0E9F8685ACAC7EEBDA5DC083DCE55A57C61586141A68FE676866C02ABDE43B237CE5EF7875EE0ADA3093A6E404883289BAD7BC85241B902FCAA9B82E1A2B6671BAE78A8B3A2DC87D04479027F08C42A7FA23D52D7D94718CCB59A759CA75B8749EB5C885FCE53C813B852CBF4C85ABA55EBF82AD6B5D3C6D6C411B4930B30051DCD58A423CE912A12F29EB8EE1F6D1F5096FC64FDEFAFC6B88572DAD836EDBA071837B489AECA16E35740484E3416DB8411637872DEFB7393F8AEB33FDF99C5A6A641CCCFA62648191EBFF5A37390FF7ED514F469D8C1143CF6C4AE0512AD9540C8C237D699853E2E79F71FEC1FE8F782BB6A91A811E452B7307D1F23D5EDFD62320ABD20F76A8930C8128EB9E69F68F8E1553B88F4B9A396CB1783F00F5261316688FE093566BD877C441903581DF6DC970850875A89B1257CC55286F53E9CE3F4C1B91C9282CDC73AE7F687ED0FD7B0B04C9FE1141BBB393F1CD88019B6D4DE684307E6EC6345C32B9097FE58C8DADAB9FFF8325AAC13C33BD054470D81FA65FE0C270BD13871893BE69D557243B70ECDF8ADC0550778739923A70995DEF62FBDA6C1D2E12095288F356335C632A1BACDE49A079C59F6ADF7056B7F4EDB029E8AF82B6FB5EEE05DCCE997EE341710E426C9DF7C724BF184A63FC64314088A6E40A17E89C98F08ECC5AEED82A0EE6E6E80070FE7704309AB8E3E81584360287E01D80E2627F8E0390604A650EBF40C682B912B7380ED0524F14F09808863C6AF69AFE6EA22E4CF8508A2BAC680244626DE6BE65C43EB34A21DD571EF8881BD3C5D809B0B67B18E493848893C25DF84D8A477862F110157733C2FBD4BE8F687B2047808B067C710C1C0B8AA89B60D5DB27A6F0301F798D2AA1EE48F922E66FB2EFC3058A17C87B25BDF26EF2C73AFB66E86A618FF36C491E75591B1D4F1787881BB101D7B8A67686DC6266FAA89B3D1D27A87F93E7496BDB75724934A7E9D58E3E1E03DA13AEC81A3D1F63049B12B1B5134C99946D8C459831BCE7CA377B51832FDE0FB86FD87D0421A86FAC3EEB663BCE9D0C856871FECB7DD095AD6E6796F96E79BA17D0E7ACAA3F4A594A8DDE07DA7F641FD195A9C7A4C706453E6D76E5D6C592ED551FD64B40617F0F6EF846897EADD6DA6A0F7DED04D92263B7F565F77BE12A7D456D3FB6D860EC2AF83C843217A10DD15629534F55018187C295700DE7B722042A214AA146CEB20391B5102BEA1F073D6F60190CC4BC192ECBE71C2D4331AFF73EC19DAE431E4492BB44D900C64A5F8075B470FADC9A8011DC530C8A0CC04E62078AF50C30824D921F746C4C0730A9CFB82167E737A7162DA7D81D4EC8824DDE43A382334F1291F12E1170317E2CBDF4FC51968130D117C459BBF41BC9522BF5061DB938DB11948D703876B9B6E1879AE14F7EE3977C0127C4CF03DE01493C89182962A26F06F435BAFD6A456FBC45030A739184A770FC208F3285274819753985EBD281D3F21D56303ACD38574E8AECAD640B1AB00C7AE8C26DE843E2ACE60E16144962BFD28CA46BE261FC54CC99B0976BE85135BB094F4E4979081BD2E4AE0B4E3540F0CA3666D6FA1294C59D75D40374933BFFDEE2BC5808584C184A97C1A54912F3F307F942B870C3C9D1BAAE3C59A577F58263C5E3CBEE3E58A69CCE10B402270B9B30CB80E51D557CB8424882700AB248E5F6DFDD1A3FE5C66B72343432834A3CACCA09504F13E0753934E3209CAA915C198054869F429B7002CA739ED3BAE298AB5E778A966C1BCC9DC12C5F3F845DCCCA12A6B552BE262813762113823937FAE9B4825E90A0DC3258D4B9E7A1247DEC5781C316F41C12CAFE280EF6C9EDEB298483792BCBCA46946B3915423048B3E9D5C5905B1B874D2E8820241E68348AD6CBE1AF3C595CF9C711386A8E469CBA4A60008116DF46EC5E879865C11CD35723F3617A179300D5FC08D825521762A80437447D56629CFEF4F6C3406D261CE252A8FCBF66CD2E522423B0B10A84F2B9920F69340F3F3177D9A613E95A13E89C1CE32CC53D6C210348553B24972CCFFE7A437A249F7AEFF27BABAA75615A05CF1E0D75626987BC5D53168B5ECCE48BDC8F890A97FFBE77D1B45781C22D7B0039432ECFD04B8690DD74483F2263C8174F26BD71B4551736894614CE1100CB819897853B054DF6474D006BF8FC74AB5AB19860A679D487FC9EB68C1A988B40D15C1E4CF08486FD7A43FC3A868D6467760446D7CE61C52457998DF539E63F271ED5987884DDF8BB7DE3237805CEC1B55B34FA449DCA2D14C048D75301DEA318DBBDC19B7B015B2293477151F282247452A8D0DE76A11187DB761711FF63BD6F1F14038ED98D47505AF0715E8594F88037578D0AC950330D2D48A374A3EC3B488BC8936A6B99CDA54BF2C33079A42780134459640A4D32C7CAB96C43D06324B1F168E907D8353ABFFA8982E780B16C1AF536DB6A1FF255A28FA4CFE37D47872017DAE31E93AA33CEDB9E4BB1BD78F5A2F7CB0D6CDC3487467F707A343D9D13FAF7481117833BC75DE5801DD371A1B43402F280368A10749DC127CDA881F133EF037941E8ABB63F0FC9E0603867E6B3688E9455BDE73A3D9419539F768F5E1C7BFA569DC67D1D1B2A7A7027A7C1C4B388FCA5C6DCA53860373A4326A3A2CBF06829E2B123DB344B8AE61708E5EA49105B0EE8FB6C66294CA0B56C79CF539EF2C49369719E03AE521B346E41B652D0CA4CA776B65246FCAC50E24C02C8EEA8F26EE62CA38E3298A603E4B540367A83FCA934F68A6D9A2510504EADEE1FD4C6D2B53A1BAA8CF6C0136E128EFEC84C44EE86E2046ABC86FA1ECC1B8A5A0C6A808188BA01A804C3C4EFC349EEC40001F5C79EA12A7203744277B6A8BB961DD21DE2E3B48C1D3235694FA46BB6BE63B4E3EA77E0E3226AA12EC0C7FE864F8213C169BE5C707D2BE7C895C00CC97E94E7343FA96D1CA136ABF7A5DE4A9A87BA772EF8D6DD09D78A2BE0F117CF05C39317042FC9858B6E5E307AF6AADC769A07655DEF40D30F6FB1FB91ADA06FFE9FCBA542CA4EEF02EBD6D8969919174661E86553DFDEFB4A45F0D95243DAED9E190DDB659DC6D1B231A65D74550271CA88311C51647BFA23CA59344B87101B1DC487FC13900BF8919A899ADC1DF8BD766DE8ED106108F527135769842598932C4916A5C81B20511B33E0294E95D1A3E22C8E5992B90622269FBF9D9A8FB4F36D4599E35BC51E4D01A95F1CD85A5C988C5AC8ACB739B93D16791B87517DF7F3B8778A71B90B1E288A8D9649F6062E5B632D6A3D109F1D2D034AE3C81E82B3882FBBDF9FC6298EA95B21095825E08256350245D0358009391974C7EC25C57D749D8CDD91FD98B160699D15789718312A55A2686C396491552F9544451447D3631B68EBA61CD4B7A653B62D0E57AACDB453E049728350A4E2692A873207E25734810C71383400B43C976A0636CEA1123F4D623FD7627D7694668687B81C06FC7C15F849220702BFFA797E977C22E659EE8BD40F20ADE0F78E951E575ABB48922643ACB349CF19ECA78817738B0124F170B6524962FDB8D5501F4327A88740CF73CBAE6B6E178FA37C6144F3EB473087C8E5D20D923400D958551303877AEFE63D373DDB6C8FF648B0F3C6B3B09E9A8F34011C9A36CD6DD7A1F0798DA553F03CFA0FD4954450DEDE2F8A00F288383B00E715D70EF07495E1F9F0C1909ED0A2DEC522CC3012A3023D3848CEE7CFF543C667DB5F45FC02AAF75E45A032AEB1393BAEE912232BC5910497181BD209D6CF6F0F690297768975538C98C65B963142D69092C50E3A3BBCAE797AB46A8215E41FF668780DC173D6EDBACB5FE9EBE47DF6ABA43BCE9DB3DB09728BEEE94DDF34CE8E574AF530FE7AE98BA7610E91091B8BA4B4664BF63D40FC4238953446523E5EC106D1BBB5C00ADE6B2FF31A6792C4C8F0EC23A8006C36F72095E4802ADB017DD758C3B759AD18963ED730191CA2F279CEDDBC1636850405B7FD635C4F109929E1077C2F7832DEE70633907F9859AF7D44359C9D55D1D037A47DCDD9248734F5B39D241914470AEF2AFC741394FF9961A9E6FB228FED439190DD525840F9B691D0D3DC65D84B1235BA2168CBD6FE90F9582768D534ADC2C7DE2B6E388E0CBA53E46A1436A1942789F6C36FC0DDDE864A9057A67C0898AA13E2EFC49D2CB17801CCF71A385C79F4E34EFD0E136A9DDC4798CD0E25D04646BD40E185397D8E11B697AD5B77888324D20EEBAECB34D7842B5DEF7C6D24E393DB5A55FE83D33BBCC77C9B8D43C83970D37AAF3E6C44738813C731EBB8493085DDDD81CCA1EED8C0BD66690BE4FF8D003DC36E576473201FC103E043B851C4E92F3E6FBDA655D030569251D4BE1CA066EF6E3DCBD9887DA8FE7284BC27B298FA32797CA99B562F35B22D1CA564977DCF8CA5604B1C9F4584D1A36AEF30098E0A7B3EA4EFA64D231B819A4D5DC993F4BD3EC8DF4CA8CFEE6C164EC3A2C1FA900449925593D4BBF1AE61FCA406E1901FEE6A90946FC6AC65E8843912A9CD377BF263F997F7283716463D8290D5820F28532110311336A780814461336974996CE91049FB76BB39F6094AD028929108C07C1A3401287D7199729776181E4E9C1B3EAAC6E4611C81171EABE1CE19042F2C8D9F91248FE0FF0C3B415C5D9386D72A1D8A62C7EA8663022531DF21127D9DEF53D4B9E4EE5B3EEC43C06FDDF39CB25453853F90F2B87CF790488E8CF549F5B60C1A51C539E0ABFCE0B1540CF1A45D4DBBADAA7105571FD6E71A540D10E6713E4D440DD6BB0AEDF2019E7F8E3F0101BAC9529B0CE7B2533AB3A6CB54214AF1144BAAE1DCA527438DAE3B75C32F3409660368D562CDC8BB6C5318CFAC43A2D7DA41BEFD0F3762BFE67DD0892427EC1D92CD1CDD24CA83D2804FF4E9ADAFBBD29B2DCB775A911A2A6792F2F7E63115954CA820CDADD920628450A9A060B6C8275D2F22DEB223B9D32E733A4841745AA5B259BDFBA7FAF79DD7837877D470C55C90FD3025080D153CD9CD92B50E75BE918F31D2A52ECF44133FD6CBCBB64FA420C64651780A9800500374DF0F23163D424AEE5488D3B694121ADB08B73FFAA77F46E37E4F52A1E7F5DE8F9E196C01D1845929320996ED84985DDC6E4FC0352587BB2AF3BDAFCF72B5B46259E6A29B00826E609FA8115444F2C114112D9E85810475DED49C3966D33CDE3A8AF7ECBAA7C6BE15FCFDE38FF53ED11D6107D6DB7C2067BC6A257405381599BCD5B9D619769F660F69D3E257F6F364F7336E7753DA07FA3884B2ADD068088696FD96F3C98F1017C06852B27C93DE4AAEC04F6C636BC28B6736332295BE1BE1CB92C5C219985135DCE5D54A15BB08974CA6AAD772EFF7FFE37A035A79FB71051E85E00A825DECA15CB1700BE9BBF45BB0774BE776DB063B8FBB48A5CCCB49FF8C7B080528E5BA485071FE05E507BDF88310536BFF6BDE6FEA9CDC2B60CBA8DDE4BD6E83CA6BFAFB08654624D893A0B95827EC31902BCE213E565016CC61C6A05E30F7CA0579B8877546239CC4043221707A86EA8225C2F7325D64DF70C3EC012EF2886B54057E572EEFB041DC85401F34C7E4267E17C23BE1DF914C8D40D3CB9FF5B6C178B20E999849B08D1CB9DBA19C9F98D9D98D342D1CC57581A8C1DCB5CF51983FEC39ECC57A00BCE14E110FEB533251F655275D33BE931ADCF00FAC1B34540E15B00BB090FA0FB93525AEA9EF19B94CE696C1FC4BA82252B6DFDE983CE08C0758ED9DE52A0078E7792B246918EA0A1EB64186445E12B92207206E3E418B83BBD09B3D7BA354E4EAB12293502436E79345046B94495D978D8E6762A7A46D7C2FA11D4F7455CC334339369E2C33A6A9A420C6966556928D30BEB5E61EE090B1B00340526E53033540C7D09919DBD372B948DF26CBD039B5B9F75081F01B1B75E0BC82B9B2FB6CAC2E539F150DE449EB4FA9D87E82695ABFFC7E86E895C8AEAC96D205169F83038432024DF76D06C7CA3092ECC43F943032F659F46B249E6AD555C36FAA77D1756BF808DEFDA8139414EADD346D30B20EF55E11E7ED0BB8A5ECBD8985BFA28BD89E3AEB48BB0C838087C3BBB42978BB6FAF6A394E37DF5B9C9B20DB033BE07524A710FBFA48C0771EBF0D19355A6D867FE5936DF66DEEB400D97865DA474A4B0C392061FCD33EFDD43A0E73F689B65166377E7948D74C1286DE1E7154741410DF68F549BC4F4DB87354B6400015B2926836B8CF74C5DC5316BD267B52217454E6BB6A4D308974EDC257024B225968D5D406F6C54E6D31D109CE4386C79D132F6267042A828FF4EBD4BF60C1B955588D0CC1FD1958BB5C153DC5F84FFC9135D180919C3B347BE63C003FF66387916B880FB021A5E1DDB6595220D02DCCE5C9C1996A2EEAE10DC920140A2BFBA9F468A60B4D43EA723A4FBD970C07D2EE32CC66C598F2396A5867C8CE95E616A70466ECBC58195A5793CF38CA4CEB0F531284C831D1B70A4C70397BF9381E242923911CF6BE2F34CD7CEABEB44C1ECC89B400EA1E60A86EFF9EA9E424626CF9105F6AF3A6798E5EA69EE00CCE247C304AADEECBB8B78C9D0CB4F2CA2D6C5B48960EFE8800DCB3C44E0A842098028D967FA894FAFD6FB14CE67449738DFC24EA079B2168601E474BF380D6C06FE303B6B9405C7E16F87F2E1ADBEEB02D24AEABF27C01C6704C423EB34C27659B4EF6027791337A0C5C9D19DF1A4C0CE9B5A5BA2E1E058D81E65C6EADE1C59E7A465245166304E5C8CDF83CD898B70F5B101ECC424BFE8A9238DC11C8C42F5C73B63BC05DEC600F04266C50429986EA40E24B6193C29EAA6E6FA6F3B4053CA7709C141859DBB52812249338B9CF07C569F2BFD46F8CF1AD198EF54A6B3839DD8B7749623F39863FC38D39F3327DDEC01C7514D9241E3219C473FD733F174C9DAD14A3855B0FEF3E659611E229C3891CB37451385FE7FB65B392797CD890F7D1F74CC6B84CCD2CE718A9C6C5C2DEBCE6359FF99282E2A017A8CCA2BE22612A40D5EC03FACBF493ECB237B2E00C4E6CFDBCE86CC499F171B8DA7CD0075C1B8805A25F1A2E282EAB832F6AD692A5ED05B4D26815DD9DF4BA56AF1BB160429AA3699BC0D28CF7C58FAE9108FCEA26A013D66C6B4C547998E4678CD4058E88C422DE8BAC6BBBABCABE9AAF1BFF86E2AC1991CB16E68C69F31146BE06B177E1224210878C6936DA5C9626ECFE3716624C14DAB48C67320DAAFC647C5BD853C82B026FD210A83CB83E16AA32A26E3F5A3386E3746BDCEA7A24BDA8B79AA25C8C02E22AB1B204C4F66A4078E53E2B06683C69531536362A55A36114D65257935D8046C617279B2E8A5257A333C4D35A42FE689615284C3D6840B358F48DD89E1F5CAA2CD0309D128BA55F38DE20333DEFE2DE1C19892F827A7CB15DFDF8FA784D4959DE6F847DCE9178CB6249368FA05D960F860D1C0BCE4B504796F78CFD81C32CF6A27DD32B5213563D963DEE077ACBCD09340ECAF7F3AD884F964D3C25A643F83560637697483F20DD42AB2C1B8AF30857665A751A924F4CEC4D80C8CDA80C0A34DEF5768A170E0AEB6024871C4A5374711731FE7B48A8C280728CC2700448C807AE8B639F20378ED8A3D0F85DF66217E6DE91BEB64A3A7CFD2C24C19828FD920EE56E7485F207CC5B0AAD5C17F80D40F13AB964972E79F8212E454469B2638F45EAA6A85B29B5D675F68F7ECF32D102C9130B92AE50EDC13732717097B6CFCC994EA31A196ABFF0A99E7F98A54239E489CA0D58502D08F38A3F868D626C0DC68BF7559CEF867EB17AB1A2DDF8B5D0D55B997D847BF387DF93A9AB05C313990B197D959127C04D9B79B70C816CA716A30EA5EA747F9AC34B61A4913A4ADDBEDD2E69085D1047075D0CF66E5733ED2D1A7980E8309760DB1963C3BEAA706DB77F958E4B16EBCCC93C03D291E0A8D7CA16115457B489323F44CFBE459947075AE66C8D07AB2BC6570432EC4934A5CBEB0DC0EEAAA393ED7CDDC055A2C9A285CA5E858CF357B58207401EF54E0BA63F70A13C6DB3A98F4041232FFFA3E59B871BB1A5832525E5F109DC431BA16788492C8996F5DA2D3A0E0F40F3DF51B2F1143229A20FBA8BE869CCF231309D6A01FC6DEEA976F73099E62B42D90CD9AEBB68AF3695BC1DA9C7D658B4393B9B48D370E71013E0CBE05B1D1D8E88BCFB7BB598B9568584C5F6ED18E9A88F12A31417E4156601E8BBA6237C4DC21E89BE9053EE64ED102E5B5EC620F620FB28C2DF46F0E7CA502B8078BD86A365CF4869F67A828A042C64CA94920665D091A9014A199CE4AB64E655709223F6F83320442440228FEA0C3D883E95A4FA95DAF8377693986F1EE7A0A7D8C5CCC196B598D3964F083D06D10CB742EB9FF18858BE9F215DDC3190C1882D0CE950A16B4730F066397957E26BD8B3560BACEBE61722052A9720C1FA8704F39E6D78C5667314B14D7DE0CADCB57D49F8B0567D530B8C1872CB910F14CA786365470A3904E0000AB00BFE8E1B5A424596AEFBE22891E28026D2FE87E4F3AF978ACAEA6B47BFE65C887F2915EE1810C51FF1A60226B163852070D64DC07BD8D49EAED064BAB592368E283CA2F6218EE368E6520A1B4695DAE5F01FB8EAD256542CDE6410F460FBACE520C55ECF6E58048A8388C12428461894DEE63FB6943EC6FCCA92AFEE390C9E421D13658696C2C5735DECFC0615533F08E44A4FEFDFA6E2C2EB336338875E4E081466D1A0C68166A2C3E266ED8E9AE7788222B0706DEACB81F36C9A747F015F86D87C6FB9915614EC8D81FD4C863C559D95966822C39F7BF24AAE426F5243DEF5F00FAC649C1C9D3DB9C4267CB613F2EEA430F0552C900148B7CADF288374640B78DE029C5EC10216B042F523F59AE206EE31C283F205C41924301C889BB5F7301E28CFE6854D817B49001FD2A386879997D86D1883CE79936585CD801B8506E7B353C5E746FDEA80240BCEA7DC2A86F97837616DB7B73421D1429737D189D78CAD4059A00F4FE7FA3F3EA186C791B1C73F586D0894B0D15F41145E74986354431AADC2133A6258B62745036A5A56149F3CA828A666BD1EA05BD4AFBE87A885580603268816F298CD789074406FB3FF249E3C04B5BCDF1651460DFADEB05A213595560A2A19711DA6A6AE1D2589086E1679FB43FC5A82A705C3EE62C6A735A32CA332F2B4C8DA99144C6DB8BA470A40C5ACD6F784DEBAF434E19EC37F1720AE44933B2736BA104F11D9CEB248C98FB5E0429C65DF297EB8A0ED70DF22D0FC1886121453B450ECAEC6FA4411722FB6DA8CFEDDB29DA02190EDA000D4F028A25AAE466238A5DC4956ADEAAD12A658FC539C7D9650444E1A502CDD94A2F4B8660E480716C5B25EBCF5174D0C66ACE5534D8866EACD134B7C8246E36BF3A846608F53C746B170504C1234075224B304DE896A7017C01C5DD6505662629F88CB914BCAEAEE3FEDE7324A081381418A92D0094951D6DAEA4939D134FD64D5C0DFEE3F2ECDEDBF450D1FF5159F2ACD0ADD1A6FDCD7F487606BC8D406D5CAAD719F53142096ED4BCB67C23FDAD2F05D2881CA25F21F48AD948B4C9D17DB8BAFFD494F77AC71D4F7A6D54E57FEBF777120F0660345511E48B89577A1B648406D7F67B8B05AF5F5DB226D5A2A2A82F8E90C7134A1911767C9548D727D0E20A40C0419A43325E1AE683CDF5F21EE02503DD3E94E82A80925C71A0C24C1D7C3F29FDE9FBECD48F1D4E763ED4BD375DFFB6D80134C175CCD06859A538EB7BA449CF14869C35FD95A00346BEBE5030013D0CA02E1A63DA49FC061F613F295DEC3692D21E54B0F8939F60762B9F8FB94A5A8770FB36F61236D433D784D9290ECF2EA2FE0795329338373FF9B7324D4D4E7D07BCE94CAD4F88255EC63E4C43E3C088CDDFE7DEECC2A29DF9123A39F1BFBAF443DD65A0A589E2F4CBBB37FA3057BFD6B2D6D856B6ECFE2EB4F4D21A7D11AEECAAFFF43FB09115E2D2255AB5F7851ACE30409BA99A26D6D8B979047F1073B22F12A994AA74C2580C5A5B7D2153A0F839DF7B1EB32F46AD501555F9D01863F060DBB8BB1CBC10F652F034BDF1EB7ECCCEE46C09DE247B32B67F703A11F019234FEF152E1107470C0ACDED986A308F85AAE581A579CD37C4C3CE7AB5B4F27875D63854627844A08B8D0C5228DBBCD03F9270B87BFF4A114777CE162F7D297272997FDE9875F19565D060F7AC10C2BC495F46596801CEF922B8191D7B83EAEB549E749D6F54006EEBB98BB925D0A75E02B985FF0D7B17D7103C363C111F875A0BD72A33677C66325F1AE64A043F3D53416F69D43E148362A35095336C024F9474BD05D20D83E249E9522EFFCC33BB7DDAF6827FC81C06E5CD60651D6FFFF3920E4622F3125D060B22DF7D114E8AE619BC39C7CBA5D9D0B72ABAE911AD744E180B1CD3721AFF341D507EC53E881BCEF2EC9A251DEE1082C427B74D7DB89ED6236980B29C12D18D15E2258E7125F84A750B76E9916C9E22593171BA54541DB3BAA03D677F469BC5D5061DE957E7A9CF9EC09DDA3470D5261A199D7C778EF5CCABE170EBB98D18E4CDC0E0AE1A0C4DD2EF996AD4E27A49457A65A7EB4AE43C09B60F7E2FEE0F3921355F953973283813BE3B152298082A2C99495829298652E19468A6C4FA2795C0BC68DB29B9EE8A0371007923CBC3A0BD4B0A1648013DAE9D0E5296BC7D78CFF98E71A4C4374BA03CC9EA8CC596665EE506CFFD8294EC1F41594FBC6F2D897587FC656B027FCF3C85C2AE3AA8BC377C59B8A8F3389C16D3AA5DA300089700D98EBFA5E0A980E93B0E61308317EDD583DAE5CB952886082BA75004156F52854D235087D2F01EDE5FE51F7EFD9E7E4AFE2043023F61FE7D16FF7D06D819D21BB1F75607B809D81DF81ADAD71E03F83A9E71938F9B331FB19BA0930730444431068434CD93E61B1E3CDEDD03D99A7B13BD0E96F13FFA5DBD34E65928BA5113F8703B9A05735C3816FA42D0CE3822D926B94752041A067C0D94029BCE7FC21368F7E454EF6665F579D4AFE9A68F94E507AD44A51ECEE98D2436D054600BA31EA636E17608B3CFD1A630ACD54D7423BDEAB2A8D3ABD889DC0D73FADBBD92A8761ED6597FD995277D245E38F998561EB46419B65BB059C95D141751162F13A29F6284B8482C9F6F562B5D7EF37F5183D49975D29AE377FDF2B055D8BA0551C17AB45F70B2FAF72EDB5D3C57986F1342CDE81748DF5ABAB8904712D85B743ECE792D08083521BF4AB8E381E1A0A63046C999E4DDE2D3207981019A672187C6605FC4BF07B08D422A3B22F09956B23501BB1E37FA59609160C841DE8CD26847881748912A8F48D960FFA3DA02B5AF94E765C7F6A33C2CEE86C17E6A43F6426B3F8270E4F7B6B0D692695529314BC11F8F0231AAE320029A831FE6E4065DCB78C9F9633E4D922D0E8CB5EAFDA80E8E3E0D30EEEACAFBE83E77B7DB7803FB379FD0D12E11896AA79E8016015D666FC900275C802FF7C511E9198AD2EAC53860C2A868E3F48359A3D3E52B4291C6D3F21B9A930219B83C19F14F380661A9B76CBCE09867724D5D4A394BF2BB923CBB53327153809907F46A576B3BE4FE8C748B0E6AD3EA1ADAFB37222A45DBBB77332A79EAA34D14C49C43D3489D82B0A3372AF6D4595797F87A94D5AA15AA196F3883F78F90DE30C341E51B37F38B2D6DB27C3642EFAAF85A110DC16C32BA9420F9678B2A02C772405E039959F37C1B8C19ABFE20A0076F81FBC99E737DE10F8F159FB683C5683B7FB7CF8AA57CF551E94FCF3810DC007C45DEE5FB2516E49692FC9F1FBC555031A5B0E7514BF7C8DB0C79E67EE3088954CD153F38DC086AA9F4F757BE07FA86A02317239BAFB0E4FBA657461E0BD7F473B370DBDD347789BCC378C3D72B196DBE1AF4DF1958D51E5349BA28EEEE87609A8D9C141A903C5C38D4FD0469C39FE21AECAF6086AD67FD6212C9AB6789ABC274823963256ED313DC9CFF18B7977FC3B1A749C7AFEE9D0B3B9FFE9B1B5D9A551DB3F7548CBD05921CF61A9C536D8E6FB5553FD53EF543D5407AD6596E9BA0F7A5DD47514D54D4713DAFF51D7DF28C19851E86F9E39726BEB3118EDF4AD11670B6BC3DA92BA3D5751A11B8710B39C8741619985591579C93F110B52A52CFE9C581C4F0233519735A3FDB92169BA629A277053045EB8AC3E6A03306910EE82EE1EF6ED8EDD007EDCAF4D13BD87311991F14ECD00B896E6981F26B109B14141B98BB9EFA2156A41349FECDBACC54DB7E5A7EF59514B8009280932CF121F2A6DC8519E68CC9F1A87D11DF326C034E9B54FBDDAA57C0A82AFB8535845E8372C71CABF52751F6B2329AD056BB33A8D6ADF2669949FC46DBBEB0A60484101AB622CA0E3EB333248C84FC70DC63C48BFD5F930A7BC3A1A8692FB6AB7B01F8BFFC1AB54AFD48364EC2C743A777E45A967785CC65163673E7644334B13DE2A547715C1A07C22A7C775547B586F76D9F251BE07F30547A961938731C2CB569F88515079C4957A317CB456E78CA75F09AD483C26B3A92D1DDCA5D64ED0170A9BC6E32A05D68BD4ED306389EDB583E78B1D0DE0EF94C544FBFEE932C98F9134C0D099DFB93430DA9B7F05F8448E27039748EC5C23EFD316794086162CF0AF6628A9C0CC5D1098F52008993ACA4080AA8BE073DDB34204828F354FC6C0A0B9D57BE6C038E1550966A096A92119A8BC7667DEFDB8C4E602F2F0EE550ADE34D8440AE647B451B81AAAD09F140D04E9FAC3F262F02ACC98D6A86EDC82ABA6A19E4D7CA71CACE47ECDEADBE00C6244B25A12D7A60C38FE58AE9EBDC037F01E468D81F9C65892C129EDD078BA83ABA95C5436B3D52706A87213696F0C37A2C4226EE6BDD868C30430C760887394BA373004187E44715E1B8B271810B0C3D3D7E6189C61C9FF8ED09C299BCD408880DD37311A6E8E15B9316AD4AEFEF9C2618A13403510587630CFDBFF147C4C7C93584C7A963E290AC453B8936CCB4CA1C4BA2F0E00001E24C1688A8EF613DDA7D254FEC2DF6A199AC39463E834FEB4B1ABA120EC00E7DE2109B3B341A8A31CFB101B591716117693BE7DCB13F1E5E88F3D76ABA7F9A1771A616E7E80A928A9D058F2B1504B359F6BAFE8ADC9BAABDB7B1997AC613A5DA28F9BCB48775489D67BB1DF3B07A8B9584E58FF654BC02468A451AC896EA3FABD0E4ADEAE05572D968402FEC7B602F2982861E01C01B4DF907F84D74870D7D0AE907862D5A200CE00D991B5402498006F2495CEEF56C30676E60AF397F342841EEDEF6DC24CD26D2BC520CED6DB7FB114CE4ABFF357BA143AB3A36B90E76E84BA86BAE1443E1FAED4E33C9A9B12F63B343C74064861FA8F119F10A01C0395A33A6EBCADA5B36AF244B129C9A8F8ECA909B9F6FC708B7A8562E0E4904432CC6B90C42E8A7612FCF39419EE46ACEC11E0F53695A281AA2C72D8748E5EF6CC4E9A554E150075F88598622058A922B3AAA4F8A6448844ED40CEDAE4C26234296CA7565620C9E90504289C7555B1E8B22AC7EBD13C8ACE8B054FF0DCF00B8537F265446A7E106487920E39E20C9960F2F9DE4C29869E54FCBEEFECDFB7E39E481A87A3A3761AECE1D19BE626C4294F9502B4BE15E74164D7D67BB2CFDA8F3007E2CD9651F439DE87228F48250C613887A207955934F8BA5BBF050ECF463B28FF1E4B765501DF6C9CBAB5E7979A079CB7C0C774FF7A438CC10887DA21E87F6C075281E6D1EE4708A06774104FCEDE139EC851C4FCC2485AE16644A9BC00B3F202CDB668DF3E03D783C843F62EE282584214663CBA96DB885D8731EA074CDA51766E79E81829082EADD2EE96CE30E9DC9ADF92EE494C8067BCA239D469809DACDD22A578EB3A6524938851CC8922DF3AC3766500192FA78AECA02D79630EF952DDFC71B6BD42B7FBC5CAE808E7D19D3C65E6E5B2359A41B871CAE7B0BF4E0BC2D16A6D58E3584BE039A2328B2E4B085F0883E072C3D873CFD54E09B4E8EB08ED3479D2EF266FCF63C168AFF1678539E5B1C3292557D3078BBD2757F09D3555218E178A6318E79083C08A850CA75F4D4EA33084EFE46D3C79B2AF3EC3B1A59A22B443E125B5FC19D09E3CB3F68F250163588A2AD9D91F1F1421F4C166FB465966C1A04C69CA9A7564AD4AF3009D1ECDD87FC9257B5006529DE13F6BD4A748FC2C755681DB55593A4A3CA369A9C25BAA55C021A8331C8077AAB74FA1F0EDFA4C674007201B5E2BF6F3BBE72F1C0145230165D9CD65A903EF936F0FA19B6D540779815DE6EF06CDD84198439C08F126730379E00F3E18B3B4CFB09B6EDB0630ED4A7B0207D675B4D3C6495271D01106A742C1D87D3029D83942FF799D561A04572BBD30BF84D5CAB5C4BF68D5ED3B869EFC31C34FA2B5646F6C9FBC8D1203A00138CF7A95802BE0B13EB99EA1429154908BCCE6C7B02AE33ACE6FFA7A58EE440FF068B14876F374E2A12646391829BD2DBA19349CF2D036C292B41C3054C1A2879D7F7C090A1AA976445D121435ACE0B76C0850B0762BAA16EBCE646DC698671C2EE7A0755849B863EE9184D74AA1C44BC05174DB82B3362FFE9FF08983E3D80EE661BD83C88DF85FFE4F3CADD46FD7993042961B853D747BD6D18E2992EF78D1A617CC6B3ACF4A2D76F704EF60D73CDB5E016B1D86C4E66D9FE1046C5E696BE360F40AFF0FC3B634F6AFFF73A8177E204C523E0978987BCCAEF73EC4B3D086D7BC4C52DE0C954ED7694B401CC4B76D3BB268286B31CD6ADCA89D9169985484D1C99588AEFAD11A2710DEA2100EA26C01F078088EB4D422F59C0730745E76CD127F54DFE42D6C26A4227878861892080895940F4EC7867DA6DCEE3A5F6ECD687E4602DEA48453D8F6041C4880020BF82D48E0F215858DEC38248539AD38E0FE8D4FB35C18F2AB112BB0DCE08F01C7A2B9EC56D48C886B465869C842B9363C2DD474D996E6865C32AF00DFE78782B4D69B232BCA84542755855A48ACD56F85E648CA75CF75CE1ABE6F937322744266A34E516453D867DC8C3A58B135312414C0E8B3B4F094063A3D1648599CAB904B9C7B64D65B7A583602F821EC8AFE6229D3CD2EA8463AB1A609B8C3EC952434C6A8C7397F34E8D8DBA86D2FC51121AA6BDAC7E2F175A518C9B4E3E8DD297577C962B39D8E2F73B7B9F766D5BE3A7463C653B4C01AA50CCB2DA197CBC8F585E43F05412B5FAE513455E84DE7613E6B6E41C8D3238535E35A65A8CA249DBF710CECA0A05FECFD389F7E03864A5AE2C3490B9A0CDA9217BACE70286C5DD42C5B8C2F7497486D54E4A364863A84FE0D5E6C3648BB479760B8C414B59C714453122986F2AE0ACD0DD59A889A515BDDF830C4651B39A42AC6914BBFE8AEEA0BEFBF64BC08DBD3FF22953432ACB0F8EBBECA293E42653E2AC99EA481FEFAD2707A13A06F8D6BAA10E2FFDDEB8A0E9047A1457A260851A5D50EF476FD8159262234F5C61FB2AE583674B45A5FCE967690BE40E0C104FF66A4C00E773AE31677189B10FC5E246C726202C8DE9C0FE82710135EE32EE2CE1423961D9ADAC49C14D246B1EAB07AA2FAE8D01FFCD56E8C4C5D950DBE305A7D1D2D5C8A9299BF5B10FED6B709DF5628F2C3A513F897E678546A069538E297527AA37AF243A216333464263E5C65E69F5B87045C6433CB8356AE28BF9DC1265690F95B694CC4D4F91759671A3FF2F4609F543B6B636774311011F35981D0B5DA445CE5B61514B50C6DD38DB8338835AD25604D50193D71ACBDFCE5DB71142F9CD18695B422CA5124A1691B19FE0D327BB3DF0FC41F704A42D3E6E7BCC7E411FCA38AF16ED9E6376E084039F21B887128CD965BE2CFA660FE7868DF02A254BA5BB62DAF986D954AC752EADA420700D004008A8B26273C1130D1D051D61B9E0EC839CAF75A05C6477AF584C79CAF9A339AEC6C3B70E39D5FF54ED326338747653CA51A0458ED0E29AC3574D7D5670CABC43723AB1E170603F367183DD0ABB127B4179C211ED12CA29665D03133EBD7F84B905D032583182FA0429EEBCECBD6D4F8377EE966F010F74549D3EECB0FE96D22025C771E1522EE246CC52CEAE02AA6E952EF636734C2CE11A35582378658EA4C30F3788A2E88974CE16A66A0DD973B29B4E5A963A37E902C5BB8514E28C4F5D34FE4FF102FB95987F07D528B20FF8EE58705D100896CB14F6310FC0A31F48B4E4244D2F1B622334CE24516E412323FC615FE8068B977F788CFCC2FF15D15D0875C0766754607F335619CF96849436F5E24F8BBC08966A4F87BEB613FA0A7EB8F858A6A348744A14A6A3CBE77262C24ECEC83F0A549C93690400B699B348168725E1ECE5D86DA3AB0476695DA3E98C1D1F31902154D4DB356D4940F4E391EA8C4295A65329490AD04CD1B196FBEABDE5D81457320D3164CE8FB4E2730EB58F9954D4C159405190984DBF81935857CDF2C9DB5352CD59C737A1B90DEF6D7305BB10D61E4E76CFF752BA94055680EDA19A249CEAD5A177A51F89B1809705FB4FAA6E1F48B2E87DA73E4C9DCE9E448FC5C9E47ACDAB24EF3A81573EC896D789F26EC92BCDBC62C1670D861F08D9E4F52F3B691A0AB7C6496B18C0F1CE31C1504AB32B12629D271B6F090494075FDD97D2C39F81F19C387D4D38AC090CB16236CE3A4078B238C05EC5B1793B2B516876B3F04AF2CD7D747808DD09322A7841AB6E3C4A31B41EFD2018E31995185346D8CD2C231C22D77603BD3826FCFC67BA227FAC775F3CE6B1AB50CED2D74E1E9226948EE86061368F22A4C98C96C6F957BDAA7D6C230A0FC1D6A50D872A16031A55CA56D1ACD328D8ED36983CA69EA8B4CFF975607AB367F90CFFE8A27760CB11E1959EBE14C6D9D934F94EFA6909F3CD835D656AE90F790C16464E6CF22E76DD0BD47C21B5E9C6059CE03E0869A78B9D260E99430FF5615DBB713A8BB31B91B1CCDFADAA5DE149F5627C0D32F8E837BFA9F0255BAE51BC59691FAC9FC61B1788DB18681AA2EF0961FC4AC4ACEBE7FEEAB03F7341DB41CCCDA542DA632F44435ACDDB9D85165226D56D72A154FF1DE435E8B10EFDB920307A67B02B55EE8373416A36E9BB5D569684987EBDD74A9885457C0BC7314ED6F21A66E7289D7A5AE38AEC8F788BE480A534FD3CC04F48F73A7206B884A35AADC59F0EB5121719839B763E9FEFFA6BE55BE9619227D62E1FC13F005E41D24C3D453C78160D140AF0A0FDC77B4C760637C91525BAEBD92599C4F31316DB2BBB3A1D934C586FDDA97CA61C88F9A0B56ABE21F0CB728D53C5541DB08A7F4350E85E6B7E635B4392801DCA47BA81CCBDCFB59A12B84B7833F7D9E4D12942390CE6336372B2BA220CADB1BB74E404A5C9568D6D036AD3735645A78790379A22F4A36DD4636193A4BB91523C47F733B91245B945ECD860CE13095DCFD33E28BB592053C9D8801E3B19009B03754AB8528ED63DA9FF062D25EDB58EA2A908271FA6D65C13063300218CC0CC92A78CCDEDFB4BBC124DDFB86479CFB041DFB21745F5045042D9B622F75E63D7EF72CE475F0660D288DBFE38BA43391C55F829BBCAE0DBA9AED9054FACAD39241CE4C24EF885BFBC26B870C2FA0E81691C8E7B6368C3695605ABFBECAD7B0A5EDDBC5B461F9E79F7A25F078AB6CA60B90490851074E7F5572956027D46391170C3BAC9FF86B094CC1EF0213963A00521B20683AD6881F8CDD8729425926889C7230ED0A26081C27D4E38D50896762A344B1DC4B79FB8CC560B93499DFFE3345325567443B52C0B46BEAF3AF4F53A483E0313F19B52A1DAED82C2564491065BCFBAFFBE8FBECFBFBD3DAABC2AB9B032CAD182BB34F68AF6C35207580B622D92AD5D907F19E93428F7F139F6E534096F66714FF3A2F1E536CC554213427C885208CFAE74C414231DEB376C1107F50369E960075AE1044B8DDAA9F030E556772015C229426E57822649A44131C41F8235E09EA5758713C22BE7F0CD540DD28D50E9B1647BA2FE087FA6C98A7E28355436D6AE932D7E36351722D5E44C035E87DC4A1209DE1ED10772C9D11593CD13C8D890104D9F8E1A9151C0B30F5F459704AEE6D220D772F3B9C1D04C53F657B6E73983AF2E768A3D222FC81927F0A4EFC396507CFB4A3110933C6F478159E0F96588038617C0E22F6FE715661C7917C06F6776FABD2AB12D0549C943B90D22C4079244F3A4C2087D759B92EC16BBB61B6B2342934FBC60A1CC331A99AA1AA1D7FAB97564128CBB6CF5061296F5FDAC7B20B69111A4EE011E40B18E8A2F6B9D6BA95B05AF102F6C428FB5A59F886DE174DE9C2A16A559FDFD10A376A673CD1E4DFE54FF702079A7BED7D5AD264E988434A721C8D33A7DBF68FF55FBB9E14B889887F8E6C10DA03FE98E680AC636407D5ABF69CC8099D3104DD5CA2B896AA75EE12C870CD4AA7FA0410436951714C09FF35396EAEE471D6B79662B4EDD475EA74AC5D9249DB55F776C12E19BD715B122F32C4002FAC1FB473E8E345E734AD08775BDBA635AA97675B7CEFD007814750EDE4CB74DF4CDE1E333E83FD99659469A4EFD1FBCDA27D2816CE41A00594994C6912ABCA5FE687DAED160AD08F4EF1A063F8D90C77C25506D6044A625914D8CA449DC84F6B8A355F148950C4F43C255AA6866ADA15BEBFEA81E837D8375211AAD49CB766ED7A1FA68BD8A11C855C655081963C1C214231F1F5A10843CC7FADDB6F1AE7FEBCB83F68E364BF88A93B158099BC8519DDB8DBCC35759558E3C451936920516403000B304626F7769BDBED0F1E1F32354D7D49FA8D0CDE9E297461899FAFD2B1F441114BA4EA982316CF0C201CFF5F19C067F647411D898B9F8760ABC9553B482812184A0076945457052D931453AB4F05B5AB0F3627640D79D30CFAF06FDA57A07038E33341FC25464B417DE66B9EE7C847FAAF0E377243B719972312EFDE5586F7DC2B6EE1FADC7BF8373C559665CE7190E7DDD419E53C03D4CD480DB8AF024B0284BD84D3A28F2831E4BF00FBEDD54543244F04FF3437F26F7CABF02FD1A96A3DE08F437DD41880814ADD28DE58750D83047FAEBD0707B5036F65C261990197B242E04E98E680F6EA07218921D2C1E7AFB5D319719273640BF755643CE0C94A11843AACC1CDE37495A281E347C8FF04E057EAB44D2025ED478A1E78B37FC936C3D628E53E0A75BA8473F6013EC1868BC456D774CD27D7C241F4C64F403B4AD778D7163A635A5271E4DE75DE5DAFCB8A56A043D1ADA8F3CCCE47BCD419986EC6426AC110A6506A1C427096461A98C8781610E6EAA1E8728A3A9B968106CCAC439AC54E2CD81F86FF9672C8715C6FAAF88CF1DC3BE2C6F216E5B086082E94622812585A889CE8E6B0D2AA59946EEAAA9AF9DE1E39D8DA83AE97571D4A7C34D5B92F685148C6EF04485F58BC5FC223A21B9653883603A80911A33E1974C6DBF4B1EA95A01772A4714C2C7BF68CAF94F72D2936CCC8758703AA556E50B19E42B7469F0D6D8265386FCB198EF2363576596E78EA591D2368777A51D3DF23D7897FD2FB6B45BDACDC2EBAD24E1AAC4885ED43BBFE4B115B53AFD5992E53308F2FCD6E02D655165D2A20FED19D57F46DDAD99FEB348B34CDC0F9D4DF3891EAA14BBFF78D223530B5F06114C1F4710046E31E11AA5F58B19C4734D9C75877DBBCEDE2856A07AA79E08F0466A59E41B2490639520968F941839535A43D9AFF428982AD160BDA090B336601E0A1F967A200FAD3160F1ED6A2BBBFD188572E732D5D332B85A1B8F5A7CDED4A8EC0E454E8A0DE1A49B52BD5F8550977174957FF26C77CA9E103CA5C724FA29FD292AEE35345588D22438DF1694C27D04454F30A41AF7A113773931B4039B7222146D0E65DF8977C0052813CD7C4227E8EA62273445926A236BC00D261EA8FDC2A7EEF82CD70408489389F7F6A551B0143E344C51140739E50364FDE6973369303EAB565520DF6350CA28F7A5A097CB1AC49FFE0498FE0FF1318A5813CF54776E1FDA001169E0CF1C2D12520BFAF00D779EA5BBFF8F78F72E5F5808DF6F5E028C14432ED786D6E9D6FBC9507AE77F3A07528801429C6130F3A45096B910F8891FD06E38AD032D73435AA380C7F78C542B6407CB0F49B74C50C68E00AA4ECFBBA099AF2801DB2878C4480D3908D4B46FD39BD2DDBE8691B30F1EE38E64DE6A3ACFC6618BC10D61630F7275720975C7131ED9AFE9042BEF2C89CDE097D5BAFB209A933A32638F447D5A9526654770DA177765DC7BB59FAC6CCC0A6E0D4F4FEB9957DCCDF90B34B0360305632C44AD68244AFC8554D461FEB3C3DA4A8CA868BCA02A83C77B219D3C07DF3E2D91CA8CE0DE0F198DCEE7D20E1167E7C394439AA82E83FF667F612F08DC2332D84BB35A6B7CE9A0032695A8C36CA11A4B31F466D795C5F28FE02365AAAC6ECB8FB8DB3DCF958C56B21F27890682C44B47AAA9715FD07D459EBA3B15E42900BD121B2046095FD93D734AD618B8F7A78D41ABC86B8F222CDDF11BCA57827E1CF04322A347AD8DE80342FEA396E801A159CE735FE0B47514301C093996477A8D89063962902F2C021BCEF3234CCC40034E9DC77FC6C10221A705912BF8AEC6C89D0CB625C464F2AA1BD3AEF5FCF8FE988278F7A0DC4B81C81242FB5A4A1679C01579C43D6DF70589D586E336C87CA9383C24D1DD2599128172960B9751EEBCF9A0768FE2EF350D7E79CED37B053DB5E61990A3DEFD08DDF96BB9AB380464F126AD31463088797427D75C4B12D42934AAC9EEF44E5BD8E1FEDB175F510A3336CB5289098F1EEB398C6FA9B2CE9708C36D22266BDF05752426A301A726716ADA0C83E438CE92A084E95E653C1C6A7D15B6D3164133506AF3800709BB07D51190F0C97BAC94FFB00BA089B6A1BE4D4E0E3ED55264D40AB0B39793F830718B731F1DF2E24ECEC5C40D4C40EA35DEDCB406F7FCF658D6DBF5C91468DBFCB50DAE85BE64738140C27B93D5687448703C1142DB0FFECF3D0110899FE31655B8D45F2855C2788772C571C63FC0635D6D9221F54D758B94237E760079D7E6B0A8B72B3F69DBCF1285AE3C6FF6EAFA6FFBE25E4A5AF43573134D9F2C5BE4B627F8A79BAA3F3EDDC1716E3B9A1107038F9FA5990CA64253BC31249283D91A739270FB13A81FDED8F08DECAB666BAC6569CEFB1ADA5CE019F47D10F13CDF059761FB519B884003552011C86A899339B0613607175977E77CE182B5A3AB15A5BCFA9CEEEB4B145CB44FF88A0C516A85D6CD0FF2EAD4CAD8263DCE42B8A81AD4798610A4ABF4897309B643316080FECB215C404658863013D5656A439672736733EEE4F144A8DE264483460018A4C82ECDE2EF2D232A2F634A68CAEC8FCDDFED05824F3E239A65498B7D649CEEC5CBD0AC9FA76B019742F4230808D1C1F80F4741049CE34AE40C22606E2446E4A200AECFA9C38A9C65C1C3C342984CA1DF444A7345DF9072E5030B337D9D2856E220F2892977E30775A3FD837E2CF984CEB366D1BDB2455DADA8704CDB8B9D4970256A52A8067D2A6BFCA1D8763C2004C2B5D3564FD54A4B1C2045B143F0F8D340B2E7F61B98ADE26C126391E30566D6BD7266D24259D1317C37953EEA32F6965BAD02032105A60F49A95250F2F06BB319B472FC7D9A48DEAD7A595F27E0E8DCE596A588AF5FB5B5EBF20E509E73A9DB6798449D231229F3613554959CB927FD64F52AD04D91A1B42D001C41374193E3F76FB86B58DB4418F16F11837FCF5149F02A15ACC036879765594DF24DBF4E71F99B3CF2CCB28350471FA4124A94CFD1DEF08837E552F03DE6C82678AB7EEAE5663B581D699B01B9FDD0B4FF189CC4907295940C2CAB8C6701646BC857D3B5DB8E10D87B78539934C753ECD87CFFE8882CF9EF3820A62D3096DA213B06B9F71A122C566CAA44550ADE7DB236ED78ABDCB852F68BFFED6A8C75A3300BFACA90539086104318FA14E914621FF2184BFC0F1F9C5509D6C53C6E3F0D00ECF886B498F5168573C037F3FB51C216CE42ECD0A7DDA091E17E069B4F7F4D1C2834A327C15BA6BD627D2AFAAB57479145E0696207566E074D869E633B5A8A7BF567150527062D52C56E47E8899A095D497323B6EF192B756A8B83DDAF718E7C019FAE7FE9512517AE9F6364049C44545076D64AD94DBDF3FABF4BFA67AB477020770B3ACC783070C6DC043A9C7C00BB833D1FF102B348BDB0F88A1F42B1ECF8014EA6B848B87672306918689976991B891F440BA7DBA3176AC30C3966D5EEC800369A5C3180F9F4DC5FAEAE4EF2A3D8222D41EFF8A2A949E30BB68EFC92BE85A8A6D618D44550C5C0A8CEA11F6027A186B18A5A2A620215BCFF916C91137935E841CC380118EA8248F59A9205358154FFFCF881D9C23FA872E756DDF3FE4E97C7BB905B6A2B4B3F8A568003296E7BAD093EE3E5712122CC4557AC330D2EE3FD5F5D0E748D16FD731DCABBABF6C11D27BBDB77B2C05AC57355D86D4F03BD851AE28501F574D33EE4F3BD3A5CA12ACF3001D2AEE14CC89F0EC30088A9D6A9D8FBDE67410775F5BB2B77A2626C61CC3686A6630BFAA4D522E1005D5CF9510F58D39F34EC0245BCE9D2EB09C9BAEDB9ADA28DBDCEFAFD19B0C61842921D9C9FC9DDE3E2875E665F4A1F8E9EF0DBCCFB8C5EFA19EE3CA651B819C6D10753305F8BF9415FEE138FC96E5C8FD89097912F1F2B7C1536F446F50F892636217CC9F648D9E1FFAB1A645E0F7D8C802D1D837FC9594AD98C3C66B7A3278163E51B8E4DE8835E83FF134DB13EC65A0B0D43C4DE2AE2ABA0E27B26B063D14B5C4553053346A3EB9185B02258EFF541DBC7FDC0BA6AF4E4A1037884F3D5965CEA3CAA7B1C34DC8150296F8F5869948156C0B59B79C1B900B81EBB8C54CFB0D235441D073F97B84AB00259E959CACEED1D4DDD79D0BBC97B87D05EDAB486F84F0921BA2834FC08BE91851239227D81BACF925F168F7D891D819D30AB3094A49BCF08AD29DBC3640E062D78675F9E1F8BDBC66A2B4E87BB6CC969EF18CE92B566F814A79A08590E15DCDF469B05F04A325B0D91BE2BFEA53704AFB4EB295CC4D17A33B9A93618DF77AC70464CFD0C24D081E2CBC5DC8C3DC7E322B4047A1A61D33986B5A9E28370E5D646CEA6E8DE850ED44BACB707DC1B3B50A31898BD736BD24566D621A773C1344BF713CE103F267E8B5E4C3DF37A87188B1F45133E6FBBDE2C57E80AC0EDD1498A8D22CC51C612B65FE0B26B8A6FE54B716DE4268890C11F38A3F8D1EE5E44BF4D72F772017D4FB0437AD449963064FEA0FDAD6D5C2BAF596BB79A9CDFC01CB3335844B8C26F192684D14DD2DB1EE84A6A53951D882B418B7D8C0C2E85F2D3F5C060887E5BFC88D6470EBE87813F0CB8115F924F57B4FE1A6E1B2D84F7052C3E2B502415223E6497C19E61D66B3B735DAC32AE37AEB5693E66700CB12ADB0CF80D9C4C1CE9B05E1494C0BA78921D665F8ED18C7203DD623FE8FE09B44A710DFAEABFADDBD275EDD12C5626554937429C07D88F790D62D122861EC6B893D43A47BAF6BE51E933692B136FA09460F0DE3A6FACA77E14358AE38E0FD4CA826DC8111E9C848307171F13AC5E6189758A26F5A63BD497F8427B7E321C4B9F80CAB9480CF2849B8A9B930E5CD4AB5DA81D267C75B92353697E47B435E3F6F86EB48DC527A01DCDA10F8740B14935DE7E6DD469A1A5CD0D3BEB062FE7B3C6F17C6EF1362879A6346C73BCFAEBFC68DA09501DC51F1161950138E0C4DD04C41EEFDD5478D8AE959B78B48E3F28A89D69CAD92F450F6093643F60668F3DEE38B60CFDBF2979C020657A4C972DC1C34A9767A37DEB4AB828963938F6E0755F98F541DB2B43FB014D3F6A1F099C924E5D1AE2136CF7E9D595D3E035A2BAC8FC3CAEFC74AF3469C605A1DA0B8C01606F1124BA33F6C3BE0207E0AF88BB296A62CC7988367AA4FF3A25FEA5D6EF1D58D16113E6DC4E56950197D1E25E1A8C9B21224899A05CF73530271D6811BB9FBC687963EFC17D4FFE88BE06BC59394DD3C7B919BD8D328DF791770FBC003853790E1206FB41310C87A076A275DB73D4C55A8AB8F277552FDD80C1E095C155C414449E853223F06B74C4124BEEE83D4390417F465D21316412AA0CAF8505B026AC07A9B06F5299E37C97A7336B62E9E3BE4F4781CCEB12A874019CC3BBC2744552C1C169BC4F5EABF063FEEED3C0D14093C2D72AA48554A5DC12F69A4E3CC93A77F17EEFF1E66702728FB7CC364511B7964B534BDD3A1D6C916D95BBD60EB38FD2FF14491D41F68DF1878B6BBB297DF4F8B3E037605EF7D513AE5688CEAE9B8E162828C519A879A02DC0D655BCF92F7C971F3EE54D891424BCEF440D6FBBE8A8AE6CCD3A8050D41BC621EDF6DD7E8C16458A0E07AE172A2B82069788FA2FCD8635FF5F164DD7B4BB92ED614ED4C8736EA14B18F5F8221E69F8D353B3E5D526340EBB0E56379A96AB326210367D0B4A2BFC4A9D2E6D822C71220AD0ABE7326DCEE7A35227362584489339B7E25526B7555490E97403FDA61F8C71B71C5566F4A6D4F37F2EAA41DA04F2A6ED45933DBD7A03F3D4FC38ED4B8993CDF061848EC6DD45416D8A6C5023B53C3AA6C6CA9AB0D0EA3223A4C229CFB9C6A24A00126AB32B4C02F09D5ED96F96785310EFAC4290607E69AC4EFF4F3EEEE60837E3BF3293748377099C1B96972E91E12644980F514C53C1FF3FB604B60CB350F382994EF79FB88D958932383B83B70C56C65D868E2C1E28D89C111861386BB810753E21F4CD462B384E38E3B3AFF5E0188FDF8038A0D92F8B4370A4D1A71F6138809186FC0A4243062938826121ACFA4994122670DA4B74EC432FCCF4ECC7E00948B6C6592BF6E91B2232A098A727CBF5271047174DD4813CA2B8E6F006F2AE2186FEE1305190D6EF52A1BC1EFD502519A862441443934051CC9353DD42B1CB99F513EA712852B3DFC397491D169583BC0B560B1FCDC327DE2C56BADDF1CED5845458D073ADF10285A2388DF";
    vector<int> v(9);
    cin >> v;
    int d = 0;
    IREP(i, 9) d = d * 3 + v[i];

    cout << toint(S[d * 2]) * 16 + toint(S[d * 2 + 1]) << endl;
}
0